llfloaterpermissionsmgr.h

Go to the documentation of this file.
00001 
00032 #ifndef LL_LLFLOATERPERMISSIONSMGR_H
00033 #define LL_LLFLOATERPERMISSIONSMGR_H
00034 
00035 #include "llfloater.h"
00036 #include <vector>
00037 
00038 class LLScrollableContainerView;
00039 class LLPermissionsView;
00040 
00041 class LLFloaterPermissionsMgr
00042 :       public LLFloater
00043 {
00044 public:
00045         static LLFloaterPermissionsMgr* show();
00046 
00047         // Message system callbacks
00048         static void processPermissionsList(LLMessageSystem* msg, void**);
00049 
00050         virtual void    onClose(bool app_quitting)              { setVisible(FALSE); }
00051 
00052 private:
00053         // Must construct by calling show().
00054         LLFloaterPermissionsMgr();
00055         virtual ~LLFloaterPermissionsMgr();
00056 
00057 public:
00058         LLPermissionsView*                              mPermissions;
00059 
00060 protected:
00061         LLScrollableContainerView*              mScroller;
00062 
00063         static LLFloaterPermissionsMgr* sInstance;
00064 };
00065 
00066 class LLPermissionsData
00067 {
00068 public:
00069         LLPermissionsData(const LLUUID& object_id, U32 permission_flags) : mObjectID(object_id), mPermFlags(permission_flags) {};
00070         
00071         LLUUID  mObjectID;
00072         U32             mPermFlags;
00073 };
00074 
00075 class LLPermissionsView : public LLView
00076 {
00077 public:
00078         LLPermissionsView(const LLRect& rect);
00079         virtual ~LLPermissionsView() {};
00080 
00081         virtual EWidgetType getWidgetType() const;
00082         virtual LLString getWidgetTag() const;
00083 
00084 public:
00085         void clearPermissionsData();
00086         void addPermissionsData(const LLString& object_name, const LLUUID& object_id, U32 permissions_flags);
00087 
00088         static void revokePermissions(void *userdata);
00089         static void findObject(void *userdata);
00090 
00091 protected:
00092         std::map<LLUUID, LLPermissionsData*> mPermData;
00093 };
00094 
00095 
00096 #endif

Generated on Thu Jul 1 06:08:35 2010 for Second Life Viewer by  doxygen 1.4.7