00001
00032 #ifndef LL_LLTOOLBAR_H
00033 #define LL_LLTOOLBAR_H
00034
00035 #include "llpanel.h"
00036
00037 #include "llframetimer.h"
00038
00039
00040 extern S32 TOOL_BAR_HEIGHT;
00041
00042 #if LL_DARWIN
00043 class LLFakeResizeHandle;
00044 #endif // LL_DARWIN
00045
00046 class LLToolBar
00047 : public LLPanel
00048 {
00049 public:
00050 LLToolBar(const std::string& name, const LLRect& rect );
00051 ~LLToolBar();
00052
00053 BOOL postBuild();
00054
00055 BOOL handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop,
00056 EDragAndDropType cargo_type,
00057 void* cargo_data,
00058 EAcceptance* accept,
00059 LLString& tooltip_msg);
00060
00061 void reshape(S32 width, S32 height, BOOL called_from_parent);
00062
00063 static void toggle(void*);
00064 static BOOL visible(void*);
00065
00066
00067 void layoutButtons();
00068
00069
00070 void refresh();
00071
00072
00073 static void onClickEventLog(void* data);
00074 static void onClickCommunicate(void*);
00075 static void onClickChat(void* data);
00076 static void onClickAppearance(void* data);
00077 static void onClickClothing(void* data);
00078 static void onClickFly(void*);
00079 static void onClickSit(void*);
00080 static void onClickSnapshot(void* data);
00081 static void onClickDirectory(void* data);
00082 static void onClickBuild(void* data);
00083 static void onClickRadar(void* data);
00084 static void onClickMap(void* data);
00085 static void onClickInventory(void* data);
00086 static void onClickAvatarList(void* data);
00087
00088 static F32 sInventoryAutoOpenTime;
00089
00090 private:
00091 BOOL mInventoryAutoOpen;
00092 LLFrameTimer mInventoryAutoOpenTimer;
00093 #if LL_DARWIN
00094 LLFakeResizeHandle *mResizeHandle;
00095 #endif // LL_DARWIN
00096 };
00097
00098 extern LLToolBar *gToolBar;
00099
00100 #endif