00001 00032 #ifndef LL_LLPANELGROUPVOTING_H 00033 #define LL_LLPANELGROUPVOTING_H 00034 00035 #include "llpanelgroup.h" 00036 00037 class LLPanelGroupVoting : public LLPanelGroupTab 00038 { 00039 public: 00040 enum ResponseType 00041 { 00042 START_VOTE, 00043 BALLOT 00044 }; 00045 00046 LLPanelGroupVoting(const std::string& name, const LLUUID& group_id); 00047 virtual ~LLPanelGroupVoting(); 00048 00049 static void* createTab(void* data); 00050 00051 virtual BOOL postBuild(); 00052 virtual BOOL isVisibleByAgent(LLAgent* agentp); 00053 00054 virtual void activate(); 00055 virtual bool needsApply(LLString& mesg); 00056 virtual bool apply(LLString& mesg); 00057 virtual void update(LLGroupChange gc); 00058 static void handleResponse( 00059 const LLUUID& group_id, 00060 ResponseType response, 00061 bool succes=true); 00062 static void handleFailure( const LLUUID& group_id); 00063 00064 protected: 00065 class impl; 00066 impl* mImpl; 00067 }; 00068 00069 00070 #endif // LL_LLPANELGROUPVOTING_H