diff options
Diffstat (limited to 'indra/newview/llpanelplaceinfo.h')
-rw-r--r-- | indra/newview/llpanelplaceinfo.h | 54 |
1 files changed, 42 insertions, 12 deletions
diff --git a/indra/newview/llpanelplaceinfo.h b/indra/newview/llpanelplaceinfo.h index f88e29bc91..f06a2d1fb7 100644 --- a/indra/newview/llpanelplaceinfo.h +++ b/indra/newview/llpanelplaceinfo.h @@ -1,5 +1,5 @@ /** - * @file llpanelplace.h + * @file llpanelplaceinfo.h * @brief Displays place information in Side Tray. * * $LicenseInfo:firstyear=2009&license=viewergpl$ @@ -40,50 +40,75 @@ #include "lliconctrl.h" +#include "llpanelmedia.h" #include "llremoteparcelrequest.h" class LLButton; -class LLTextBox; +class LLInventoryItem; class LLLineEditor; +class LLTextBox; class LLTextEditor; class LLTextureCtrl; -class LLInventoryItem; class LLPanelPlaceInfo : public LLPanel, LLRemoteParcelInfoObserver { public: + enum INFO_TYPE + { + CREATE_LANDMARK, + PLACE, + LANDMARK, + TELEPORT_HISTORY + }; + LLPanelPlaceInfo(); /*virtual*/ ~LLPanelPlaceInfo(); /*virtual*/ BOOL postBuild(); + // Ignore all old location information, useful if you are + // recycling an existing dialog and need to clear it. void resetLocation(); - // Ignore all old location information, useful if you are - // recycling an existing dialog and need to clear it. + // Sends a request for data about the given parcel, which will + // only update the location if there is none already available. /*virtual*/ void setParcelID(const LLUUID& parcel_id); - // Sends a request for data about the given parcel, which will - // only update the location if there is none already available. + // Depending on how the panel was triggered + // (from landmark or current location, or other) + // sets a corresponding title and contents. + void setInfoType(INFO_TYPE type); + + BOOL isMediaPanelVisible(); + void toggleMediaPanel(BOOL visible); void displayItemInfo(const LLInventoryItem* pItem); /*virtual*/ void setErrorStatus(U32 status, const std::string& reason); void sendParcelInfoRequest(); + + // Displays information about a remote parcel. + // Sends a request to the server. void displayParcelInfo(const LLVector3& pos_region, const LLUUID& region_id, const LLVector3d& pos_global); + + // Displays information about the parcel the agent is currently on + // without sending a request to the server. + void displayAgentParcelInfo(); + void nameUpdatedCallback(LLTextBox* text, const std::string& first, const std::string& last); /*virtual*/ void processParcelInfo(const LLParcelData& parcel_data); + /*virtual*/ void reshape(S32 width, S32 height, BOOL called_from_parent = TRUE); private: enum LANDMARK_INFO_TYPE - { - TITLE, - NOTE - }; + { + TITLE, + NOTE + }; void onCommitTitleOrNote(LANDMARK_INFO_TYPE type); @@ -91,7 +116,10 @@ private: LLUUID mRequestedID; LLUUID mLandmarkID; LLVector3 mPosRegion; + std::string mCurrentTitle; + S32 mMinHeight; + LLTextBox* mTitle; LLTextureCtrl* mSnapshotCtrl; LLTextBox* mRegionName; LLTextBox* mParcelName; @@ -102,8 +130,10 @@ private: LLTextBox* mCreated; LLLineEditor* mTitleEditor; LLTextEditor* mNotesEditor; - LLTextBox* mLocationEditor; + LLTextBox* mLocationEditor; + LLPanel* mScrollingPanel; LLPanel* mInfoPanel; + LLMediaPanel* mMediaPanel; }; #endif // LL_LLPANELPLACEINFO_H |