llpanelgroupgeneral.h

Go to the documentation of this file.
00001 
00032 #ifndef LL_LLPANELGROUPGENERAL_H
00033 #define LL_LLPANELGROUPGENERAL_H
00034 
00035 #include "llpanelgroup.h"
00036 
00037 class LLLineEditor;
00038 class LLTextBox;
00039 class LLTextureCtrl;
00040 class LLTextEditor;
00041 class LLButton;
00042 class LLNameListCtrl;
00043 class LLCheckBoxCtrl;
00044 class LLComboBox;
00045 class LLNameBox;
00046 class LLSpinCtrl;
00047 
00048 class LLPanelGroupGeneral : public LLPanelGroupTab
00049 {
00050 public:
00051         LLPanelGroupGeneral(const std::string& name, const LLUUID& group_id);
00052         virtual ~LLPanelGroupGeneral();
00053 
00054         // LLPanelGroupTab
00055         static void* createTab(void* data);
00056         virtual void activate();
00057         virtual bool needsApply(LLString& mesg);
00058         virtual bool apply(LLString& mesg);
00059         virtual void cancel();
00060         static void createGroupCallback(S32 option, void* user_data);
00061         
00062         virtual void update(LLGroupChange gc);
00063         
00064         virtual BOOL postBuild();
00065         
00066         virtual void draw();
00067 
00068 private:
00069         static void onCommitAny(LLUICtrl* ctrl, void* data);
00070         static void onCommitUserOnly(LLUICtrl* ctrl, void* data);
00071         static void onCommitTitle(LLUICtrl* ctrl, void* data);
00072         static void onCommitEnrollment(LLUICtrl* ctrl, void* data);
00073         static void onClickJoin(void* userdata);
00074         static void onClickInfo(void* userdata);
00075         static void onReceiveNotices(LLUICtrl* ctrl, void* data);
00076         static void openProfile(void* data);
00077 
00078     static void joinDlgCB(S32 which, void *userdata);
00079 
00080         void updateMembers();
00081         void updateChanged();
00082 
00083         BOOL                    mPendingMemberUpdate;
00084         BOOL                    mChanged;
00085         BOOL                    mFirstUse;
00086         std::string             mIncompleteMemberDataStr;
00087         std::string             mConfirmGroupCreateStr;
00088         LLUUID                  mDefaultIconID;
00089 
00090         // Group information (include any updates in updateChanged)
00091         LLLineEditor            *mGroupNameEditor;
00092         LLTextBox                       *mGroupName;
00093         LLNameBox                       *mFounderName;
00094         LLTextureCtrl           *mInsignia;
00095         LLTextEditor            *mEditCharter;
00096         LLButton                        *mBtnJoinGroup;
00097         LLButton                        *mBtnInfo;
00098 
00099         LLNameListCtrl  *mListVisibleMembers;
00100 
00101         // Options (include any updates in updateChanged)
00102         LLCheckBoxCtrl  *mCtrlShowInGroupList;
00103         LLCheckBoxCtrl  *mCtrlMature;
00104         LLCheckBoxCtrl  *mCtrlOpenEnrollment;
00105         LLCheckBoxCtrl  *mCtrlEnrollmentFee;
00106         LLSpinCtrl      *mSpinEnrollmentFee;
00107         LLCheckBoxCtrl  *mCtrlReceiveNotices;
00108         LLCheckBoxCtrl  *mCtrlListGroup;
00109         LLTextBox       *mActiveTitleLabel;
00110         LLComboBox              *mComboActiveTitle;
00111 
00112         LLGroupMgrGroupData::member_iter mMemberProgress;
00113 };
00114 
00115 #endif

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