Since NameBoxes are clickable, remove redundant profile buttons. Removes a ton of RLV logic, now centralized inside LLNameUI Removes excess functions that went largely unused May no longer show if parcel sale is pending under the owner field, this is weird and it's hard to keep this behavior Also includes the missing setValue and getValue so this compiles, that should've been committed way earlier, oops Also adds ability for name_box to have is_group attribute, too!
105 lines
3.5 KiB
C++
105 lines
3.5 KiB
C++
/**
|
|
* @file llpanelpermissions.h
|
|
* @brief LLPanelPermissions class header file
|
|
*
|
|
* $LicenseInfo:firstyear=2002&license=viewergpl$
|
|
* Second Life Viewer Source Code
|
|
* Copyright (c) 2002-2009, Linden Research, Inc.
|
|
*
|
|
* The source code in this file ("Source Code") is provided by Linden Lab
|
|
* to you under the terms of the GNU General Public License, version 2.0
|
|
* ("GPL"), unless you have obtained a separate licensing agreement
|
|
* ("Other License"), formally executed by you and Linden Lab. Terms of
|
|
* the GPL can be found in doc/GPL-license.txt in this distribution, or
|
|
* online at http://secondlifegrid.net/programs/open_source/licensing/gplv2
|
|
*
|
|
* There are special exceptions to the terms and conditions of the GPL as
|
|
* it is applied to this Source Code. View the full text of the exception
|
|
* in the file doc/FLOSS-exception.txt in this software distribution, or
|
|
* online at
|
|
* http://secondlifegrid.net/programs/open_source/licensing/flossexception
|
|
*
|
|
* By copying, modifying or distributing this software, you acknowledge
|
|
* that you have read and understood your obligations described above,
|
|
* and agree to abide by those obligations.
|
|
*
|
|
* ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
|
|
* WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
|
|
* COMPLETENESS OR PERFORMANCE.
|
|
* $/LicenseInfo$
|
|
*/
|
|
|
|
#ifndef LL_LLPANELPERMISSIONS_H
|
|
#define LL_LLPANELPERMISSIONS_H
|
|
|
|
#include "llpanel.h"
|
|
#include "lluuid.h"
|
|
|
|
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
// Class llpanelpermissions
|
|
//
|
|
// Panel for permissions of an object.
|
|
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
class LLNameBox;
|
|
|
|
class LLPanelPermissions : public LLPanel
|
|
{
|
|
public:
|
|
LLPanelPermissions(const std::string& title);
|
|
virtual ~LLPanelPermissions();
|
|
|
|
/*virtual*/ BOOL postBuild();
|
|
/*virtual*/ void handleVisibilityChange(BOOL new_visibility);
|
|
|
|
void refresh(); // refresh all labels as needed
|
|
|
|
protected:
|
|
// statics
|
|
static void onClickClaim(void*);
|
|
static void onClickRelease(void*);
|
|
void onClickGroup();
|
|
void cbGroupID(LLUUID group_id);
|
|
static void onClickDeedToGroup(void*);
|
|
static void onClickCopyObjKey();
|
|
|
|
static void onCommitPerm(LLUICtrl *ctrl, void *data, U8 field, U32 perm);
|
|
|
|
// static void onCommitGroupMove(LLUICtrl *ctrl, void *data);
|
|
// static void onCommitGroupCopy(LLUICtrl *ctrl, void *data);
|
|
// static void onCommitGroupModify(LLUICtrl *ctrl, void *data);
|
|
static void onCommitGroupShare(LLUICtrl *ctrl, void *data);
|
|
|
|
static void onCommitEveryoneMove(LLUICtrl *ctrl, void *data);
|
|
static void onCommitEveryoneCopy(LLUICtrl *ctrl, void *data);
|
|
//static void onCommitEveryoneModify(LLUICtrl *ctrl, void *data);
|
|
void onCommitExport(const LLSD& param);
|
|
|
|
static void onCommitNextOwnerModify(LLUICtrl* ctrl, void* data);
|
|
static void onCommitNextOwnerCopy(LLUICtrl* ctrl, void* data);
|
|
static void onCommitNextOwnerTransfer(LLUICtrl* ctrl, void* data);
|
|
|
|
static void onCommitName(LLUICtrl* ctrl, void* data);
|
|
static void onCommitDesc(LLUICtrl* ctrl, void* data);
|
|
|
|
static void onCommitSaleInfo(LLUICtrl* ctrl, void* data);
|
|
static void onCommitSaleType(LLUICtrl* ctrl, void* data);
|
|
void setAllSaleInfo();
|
|
|
|
static void onCommitClickAction(LLUICtrl* ctrl, void*);
|
|
static void onCommitIncludeInSearch(LLUICtrl* ctrl, void*);
|
|
|
|
protected:
|
|
void disableAll();
|
|
|
|
private:
|
|
LLNameBox* mLabelGroupName; // group name
|
|
|
|
LLUUID mCreatorID;
|
|
LLUUID mOwnerID;
|
|
LLUUID mLastOwnerID;
|
|
};
|
|
|
|
|
|
#endif // LL_LLPANELPERMISSIONS_H
|