diff options
Diffstat (limited to 'indra/newview/llpanelgrouproles.h')
-rw-r--r-- | indra/newview/llpanelgrouproles.h | 446 |
1 files changed, 223 insertions, 223 deletions
diff --git a/indra/newview/llpanelgrouproles.h b/indra/newview/llpanelgrouproles.h index 459b77703f..da384032cf 100644 --- a/indra/newview/llpanelgrouproles.h +++ b/indra/newview/llpanelgrouproles.h @@ -1,25 +1,25 @@ -/** +/** * @file llpanelgrouproles.h * @brief Panel for roles information about a particular group. * * $LicenseInfo:firstyear=2006&license=viewerlgpl$ * Second Life Viewer Source Code * Copyright (C) 2010, Linden Research, Inc. - * + * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; * version 2.1 of the License only. - * + * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. - * + * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * + * * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA * $/LicenseInfo$ */ @@ -45,335 +45,335 @@ typedef std::map<std::string,std::string> icon_map_t; class LLPanelGroupRoles : public LLPanelGroupTab { public: - LLPanelGroupRoles(); - virtual ~LLPanelGroupRoles(); + LLPanelGroupRoles(); + virtual ~LLPanelGroupRoles(); + + // Allow sub tabs to ask for sibling controls. + friend class LLPanelGroupMembersSubTab; + friend class LLPanelGroupRolesSubTab; + friend class LLPanelGroupActionsSubTab; + + virtual BOOL postBuild(); + virtual BOOL isVisibleByAgent(LLAgent* agentp); - // Allow sub tabs to ask for sibling controls. - friend class LLPanelGroupMembersSubTab; - friend class LLPanelGroupRolesSubTab; - friend class LLPanelGroupActionsSubTab; - virtual BOOL postBuild(); - virtual BOOL isVisibleByAgent(LLAgent* agentp); + bool handleSubTabSwitch(const LLSD& data); - - bool handleSubTabSwitch(const LLSD& data); + // Checks if the current tab needs to be applied, and tries to switch to the requested tab. + BOOL attemptTransition(); - // Checks if the current tab needs to be applied, and tries to switch to the requested tab. - BOOL attemptTransition(); - - // Switches to the requested tab (will close() if requested is NULL) - void transitionToTab(); + // Switches to the requested tab (will close() if requested is NULL) + void transitionToTab(); - // Used by attemptTransition to query the user's response to a tab that needs to apply. - bool handleNotifyCallback(const LLSD& notification, const LLSD& response); - bool onModalClose(const LLSD& notification, const LLSD& response); + // Used by attemptTransition to query the user's response to a tab that needs to apply. + bool handleNotifyCallback(const LLSD& notification, const LLSD& response); + bool onModalClose(const LLSD& notification, const LLSD& response); - // Most of these messages are just passed on to the current sub-tab. - virtual void activate(); - virtual void deactivate(); - virtual bool needsApply(std::string& mesg); - virtual BOOL hasModal(); - virtual bool apply(std::string& mesg); - virtual void cancel(); - virtual void update(LLGroupChange gc); + // Most of these messages are just passed on to the current sub-tab. + virtual void activate(); + virtual void deactivate(); + virtual bool needsApply(std::string& mesg); + virtual BOOL hasModal(); + virtual bool apply(std::string& mesg); + virtual void cancel(); + virtual void update(LLGroupChange gc); - virtual void setGroupID(const LLUUID& id); + virtual void setGroupID(const LLUUID& id); protected: - LLPanelGroupTab* mCurrentTab; - LLPanelGroupTab* mRequestedTab; - LLTabContainer* mSubTabContainer; - BOOL mFirstUse; + LLPanelGroupTab* mCurrentTab; + LLPanelGroupTab* mRequestedTab; + LLTabContainer* mSubTabContainer; + BOOL mFirstUse; - std::string mDefaultNeedsApplyMesg; - std::string mWantApplyMesg; + std::string mDefaultNeedsApplyMesg; + std::string mWantApplyMesg; }; class LLPanelGroupSubTab : public LLPanelGroupTab { public: - LLPanelGroupSubTab(); - virtual ~LLPanelGroupSubTab(); + LLPanelGroupSubTab(); + virtual ~LLPanelGroupSubTab(); - virtual BOOL postBuild(); + virtual BOOL postBuild(); - // This allows sub-tabs to collect child widgets from a higher level in the view hierarchy. - virtual BOOL postBuildSubTab(LLView* root); + // This allows sub-tabs to collect child widgets from a higher level in the view hierarchy. + virtual BOOL postBuildSubTab(LLView* root); - virtual void setSearchFilter( const std::string& filter ); + virtual void setSearchFilter( const std::string& filter ); - virtual void activate(); - virtual void deactivate(); + virtual void activate(); + virtual void deactivate(); - // Helper functions - bool matchesActionSearchFilter(std::string action); + // Helper functions + bool matchesActionSearchFilter(std::string action); - void setFooterEnabled(BOOL enable); + void setFooterEnabled(BOOL enable); - virtual void setGroupID(const LLUUID& id); + virtual void setGroupID(const LLUUID& id); protected: - void buildActionsList(LLScrollListCtrl* ctrl, - U64 allowed_by_some, - U64 allowed_by_all, - LLUICtrl::commit_callback_t commit_callback, - BOOL show_all, - BOOL filter, - BOOL is_owner_role); - void buildActionCategory(LLScrollListCtrl* ctrl, - U64 allowed_by_some, - U64 allowed_by_all, - LLRoleActionSet* action_set, - LLUICtrl::commit_callback_t commit_callback, - BOOL show_all, - BOOL filter, - BOOL is_owner_role); + void buildActionsList(LLScrollListCtrl* ctrl, + U64 allowed_by_some, + U64 allowed_by_all, + LLUICtrl::commit_callback_t commit_callback, + BOOL show_all, + BOOL filter, + BOOL is_owner_role); + void buildActionCategory(LLScrollListCtrl* ctrl, + U64 allowed_by_some, + U64 allowed_by_all, + LLRoleActionSet* action_set, + LLUICtrl::commit_callback_t commit_callback, + BOOL show_all, + BOOL filter, + BOOL is_owner_role); protected: - LLPanel* mHeader; // Might not be present in xui of derived class (NULL) - LLPanel* mFooter; + LLPanel* mHeader; // Might not be present in xui of derived class (NULL) + LLPanel* mFooter; - LLFilterEditor* mSearchEditor; + LLFilterEditor* mSearchEditor; - std::string mSearchFilter; + std::string mSearchFilter; - icon_map_t mActionIcons; + icon_map_t mActionIcons; - bool mActivated; - - bool mHasGroupBanPower; // Used to communicate between action sets due to the dependency between - // GP_GROUP_BAN_ACCESS and GP_EJECT_MEMBER and GP_ROLE_REMOVE_MEMBER - - void setOthersVisible(BOOL b); + bool mActivated; + + bool mHasGroupBanPower; // Used to communicate between action sets due to the dependency between + // GP_GROUP_BAN_ACCESS and GP_EJECT_MEMBER and GP_ROLE_REMOVE_MEMBER + + void setOthersVisible(BOOL b); }; class LLPanelGroupMembersSubTab : public LLPanelGroupSubTab { public: - LLPanelGroupMembersSubTab(); - virtual ~LLPanelGroupMembersSubTab(); + LLPanelGroupMembersSubTab(); + virtual ~LLPanelGroupMembersSubTab(); - virtual BOOL postBuildSubTab(LLView* root); + virtual BOOL postBuildSubTab(LLView* root); - static void onMemberSelect(LLUICtrl*, void*); - void handleMemberSelect(); + static void onMemberSelect(LLUICtrl*, void*); + void handleMemberSelect(); - static void onMemberDoubleClick(void*); - void handleMemberDoubleClick(); + static void onMemberDoubleClick(void*); + void handleMemberDoubleClick(); - static void onInviteMember(void*); - void handleInviteMember(); + static void onInviteMember(void*); + void handleInviteMember(); - static void onEjectMembers(void*); - void handleEjectMembers(); - void sendEjectNotifications(const LLUUID& group_id, const uuid_vec_t& selected_members); - bool handleEjectCallback(const LLSD& notification, const LLSD& response); - void confirmEjectMembers(); + static void onEjectMembers(void*); + void handleEjectMembers(); + void sendEjectNotifications(const LLUUID& group_id, const uuid_vec_t& selected_members); + bool handleEjectCallback(const LLSD& notification, const LLSD& response); + void confirmEjectMembers(); - static void onRoleCheck(LLUICtrl* check, void* user_data); - void handleRoleCheck(const LLUUID& role_id, - LLRoleMemberChangeType type); + static void onRoleCheck(LLUICtrl* check, void* user_data); + void handleRoleCheck(const LLUUID& role_id, + LLRoleMemberChangeType type); - static void onBanMember(void* user_data); - void handleBanMember(); - bool handleBanCallback(const LLSD& notification, const LLSD& response); - void confirmBanMembers(); + static void onBanMember(void* user_data); + void handleBanMember(); + bool handleBanCallback(const LLSD& notification, const LLSD& response); + void confirmBanMembers(); - void updateActionDescription(); + void updateActionDescription(); - void applyMemberChanges(); - bool addOwnerCB(const LLSD& notification, const LLSD& response); + void applyMemberChanges(); + bool addOwnerCB(const LLSD& notification, const LLSD& response); - virtual void activate(); - virtual void deactivate(); - virtual void cancel(); - virtual bool needsApply(std::string& mesg); - virtual bool apply(std::string& mesg); - virtual void update(LLGroupChange gc); - void updateMembers(); + virtual void activate(); + virtual void deactivate(); + virtual void cancel(); + virtual bool needsApply(std::string& mesg); + virtual bool apply(std::string& mesg); + virtual void update(LLGroupChange gc); + void updateMembers(); - virtual void draw(); + virtual void draw(); - virtual void setGroupID(const LLUUID& id); + virtual void setGroupID(const LLUUID& id); - void addMemberToList(LLGroupMemberData* data); - void onNameCache(const LLUUID& update_id, LLGroupMemberData* member, const LLAvatarName& av_name, const LLUUID& av_id); + void addMemberToList(LLGroupMemberData* data); + void onNameCache(const LLUUID& update_id, LLGroupMemberData* member, const LLAvatarName& av_name, const LLUUID& av_id); protected: - typedef std::map<LLUUID, LLRoleMemberChangeType> role_change_data_map_t; - typedef std::map<LLUUID, role_change_data_map_t*> member_role_changes_map_t; + typedef std::map<LLUUID, LLRoleMemberChangeType> role_change_data_map_t; + typedef std::map<LLUUID, role_change_data_map_t*> member_role_changes_map_t; - bool matchesSearchFilter(const std::string& fullname); + bool matchesSearchFilter(const std::string& fullname); - U64 getAgentPowersBasedOnRoleChanges(const LLUUID& agent_id); - bool getRoleChangeType(const LLUUID& member_id, - const LLUUID& role_id, - LLRoleMemberChangeType& type); + U64 getAgentPowersBasedOnRoleChanges(const LLUUID& agent_id); + bool getRoleChangeType(const LLUUID& member_id, + const LLUUID& role_id, + LLRoleMemberChangeType& type); - LLNameListCtrl* mMembersList; - LLScrollListCtrl* mAssignedRolesList; - LLScrollListCtrl* mAllowedActionsList; - LLButton* mEjectBtn; - LLButton* mBanBtn; + LLNameListCtrl* mMembersList; + LLScrollListCtrl* mAssignedRolesList; + LLScrollListCtrl* mAllowedActionsList; + LLButton* mEjectBtn; + LLButton* mBanBtn; - BOOL mChanged; - BOOL mPendingMemberUpdate; - BOOL mHasMatch; + BOOL mChanged; + BOOL mPendingMemberUpdate; + BOOL mHasMatch; - LLTextEditor* mActionDescription; + LLTextEditor* mActionDescription; - member_role_changes_map_t mMemberRoleChangeData; - U32 mNumOwnerAdditions; + member_role_changes_map_t mMemberRoleChangeData; + U32 mNumOwnerAdditions; - LLGroupMgrGroupData::member_list_t::iterator mMemberProgress; - typedef std::map<LLUUID, boost::signals2::connection> avatar_name_cache_connection_map_t; - avatar_name_cache_connection_map_t mAvatarNameCacheConnections; + LLGroupMgrGroupData::member_list_t::iterator mMemberProgress; + typedef std::map<LLUUID, boost::signals2::connection> avatar_name_cache_connection_map_t; + avatar_name_cache_connection_map_t mAvatarNameCacheConnections; }; class LLPanelGroupRolesSubTab : public LLPanelGroupSubTab { public: - LLPanelGroupRolesSubTab(); - virtual ~LLPanelGroupRolesSubTab(); + LLPanelGroupRolesSubTab(); + virtual ~LLPanelGroupRolesSubTab(); + + virtual BOOL postBuildSubTab(LLView* root); - virtual BOOL postBuildSubTab(LLView* root); + virtual void activate(); + virtual void deactivate(); + virtual bool needsApply(std::string& mesg); + virtual bool apply(std::string& mesg); + virtual void cancel(); + bool matchesSearchFilter(std::string rolename, std::string roletitle); + virtual void update(LLGroupChange gc); - virtual void activate(); - virtual void deactivate(); - virtual bool needsApply(std::string& mesg); - virtual bool apply(std::string& mesg); - virtual void cancel(); - bool matchesSearchFilter(std::string rolename, std::string roletitle); - virtual void update(LLGroupChange gc); + static void onRoleSelect(LLUICtrl*, void*); + void handleRoleSelect(); + void buildMembersList(); - static void onRoleSelect(LLUICtrl*, void*); - void handleRoleSelect(); - void buildMembersList(); + static void onActionCheck(LLUICtrl*, void*); + bool addActionCB(const LLSD& notification, const LLSD& response, LLCheckBoxCtrl* check); - static void onActionCheck(LLUICtrl*, void*); - bool addActionCB(const LLSD& notification, const LLSD& response, LLCheckBoxCtrl* check); - - static void onPropertiesKey(LLLineEditor*, void*); + static void onPropertiesKey(LLLineEditor*, void*); - void onDescriptionKeyStroke(LLTextEditor* caller); + void onDescriptionKeyStroke(LLTextEditor* caller); - static void onDescriptionCommit(LLUICtrl*, void*); + static void onDescriptionCommit(LLUICtrl*, void*); - static void onMemberVisibilityChange(LLUICtrl*, void*); - void handleMemberVisibilityChange(bool value); + static void onMemberVisibilityChange(LLUICtrl*, void*); + void handleMemberVisibilityChange(bool value); - static void onCreateRole(void*); - void handleCreateRole(); + static void onCreateRole(void*); + void handleCreateRole(); - static void onCopyRole(void*); - void handleCopyRole(); + static void onCopyRole(void*); + void handleCopyRole(); - static void onDeleteRole(void*); - void handleDeleteRole(); + static void onDeleteRole(void*); + void handleDeleteRole(); - void updateActionDescription(); + void updateActionDescription(); - void saveRoleChanges(bool select_saved_role); + void saveRoleChanges(bool select_saved_role); - virtual void setGroupID(const LLUUID& id); + virtual void setGroupID(const LLUUID& id); - BOOL mFirstOpen; + BOOL mFirstOpen; protected: - void handleActionCheck(LLUICtrl* ctrl, bool force); - LLSD createRoleItem(const LLUUID& role_id, std::string name, std::string title, S32 members); - - LLScrollListCtrl* mRolesList; - LLNameListCtrl* mAssignedMembersList; - LLScrollListCtrl* mAllowedActionsList; - LLTextEditor* mActionDescription; - - LLLineEditor* mRoleName; - LLLineEditor* mRoleTitle; - LLTextEditor* mRoleDescription; - - LLCheckBoxCtrl* mMemberVisibleCheck; - LLButton* mDeleteRoleButton; - LLButton* mCreateRoleButton; - LLButton* mCopyRoleButton; - - LLUUID mSelectedRole; - BOOL mHasRoleChange; - std::string mRemoveEveryoneTxt; + void handleActionCheck(LLUICtrl* ctrl, bool force); + LLSD createRoleItem(const LLUUID& role_id, std::string name, std::string title, S32 members); + + LLScrollListCtrl* mRolesList; + LLNameListCtrl* mAssignedMembersList; + LLScrollListCtrl* mAllowedActionsList; + LLTextEditor* mActionDescription; + + LLLineEditor* mRoleName; + LLLineEditor* mRoleTitle; + LLTextEditor* mRoleDescription; + + LLCheckBoxCtrl* mMemberVisibleCheck; + LLButton* mDeleteRoleButton; + LLButton* mCreateRoleButton; + LLButton* mCopyRoleButton; + + LLUUID mSelectedRole; + BOOL mHasRoleChange; + std::string mRemoveEveryoneTxt; }; class LLPanelGroupActionsSubTab : public LLPanelGroupSubTab { public: - LLPanelGroupActionsSubTab(); - virtual ~LLPanelGroupActionsSubTab(); + LLPanelGroupActionsSubTab(); + virtual ~LLPanelGroupActionsSubTab(); - virtual BOOL postBuildSubTab(LLView* root); + virtual BOOL postBuildSubTab(LLView* root); - virtual void activate(); - virtual void deactivate(); - virtual bool needsApply(std::string& mesg); - virtual bool apply(std::string& mesg); - virtual void update(LLGroupChange gc); - virtual void onFilterChanged(); + virtual void activate(); + virtual void deactivate(); + virtual bool needsApply(std::string& mesg); + virtual bool apply(std::string& mesg); + virtual void update(LLGroupChange gc); + virtual void onFilterChanged(); - void handleActionSelect(); + void handleActionSelect(); - virtual void setGroupID(const LLUUID& id); + virtual void setGroupID(const LLUUID& id); protected: - LLScrollListCtrl* mActionList; - LLScrollListCtrl* mActionRoles; - LLNameListCtrl* mActionMembers; + LLScrollListCtrl* mActionList; + LLScrollListCtrl* mActionRoles; + LLNameListCtrl* mActionMembers; - LLTextEditor* mActionDescription; + LLTextEditor* mActionDescription; }; class LLPanelGroupBanListSubTab : public LLPanelGroupSubTab { public: - LLPanelGroupBanListSubTab(); - virtual ~LLPanelGroupBanListSubTab() {} + LLPanelGroupBanListSubTab(); + virtual ~LLPanelGroupBanListSubTab() {} + + virtual BOOL postBuildSubTab(LLView* root); + + virtual void activate(); + virtual void update(LLGroupChange gc); + virtual void draw(); - virtual BOOL postBuildSubTab(LLView* root); + static void onBanEntrySelect(LLUICtrl* ctrl, void* user_data); + void handleBanEntrySelect(); - virtual void activate(); - virtual void update(LLGroupChange gc); - virtual void draw(); + static void onCreateBanEntry(void* user_data); + void handleCreateBanEntry(); - static void onBanEntrySelect(LLUICtrl* ctrl, void* user_data); - void handleBanEntrySelect(); - - static void onCreateBanEntry(void* user_data); - void handleCreateBanEntry(); - - static void onDeleteBanEntry(void* user_data); - void handleDeleteBanEntry(); + static void onDeleteBanEntry(void* user_data); + void handleDeleteBanEntry(); - static void onRefreshBanList(void* user_data); - void handleRefreshBanList(); + static void onRefreshBanList(void* user_data); + void handleRefreshBanList(); - void onBanListCompleted(bool isComplete); + void onBanListCompleted(bool isComplete); protected: - void setBanCount(U32 ban_count); - void populateBanList(); + void setBanCount(U32 ban_count); + void populateBanList(); public: - virtual void setGroupID(const LLUUID& id); + virtual void setGroupID(const LLUUID& id); protected: - LLNameListCtrl* mBanList; - LLButton* mCreateBanButton; - LLButton* mDeleteBanButton; - LLButton* mRefreshBanListButton; - LLTextBase* mBanCountText; + LLNameListCtrl* mBanList; + LLButton* mCreateBanButton; + LLButton* mDeleteBanButton; + LLButton* mRefreshBanListButton; + LLTextBase* mBanCountText; }; |