LLControlBase Class Reference

#include <llcontrol.h>

Inheritance diagram for LLControlBase:

Inheritance graph
[legend]
Collaboration diagram for LLControlBase:

Collaboration graph
[legend]
List of all members.

Public Member Functions

virtual void updateListeners ()=0
 LLControlBase (const LLString &name, eControlType type, const LLString &comment, BOOL persist)
virtual ~LLControlBase ()
const LLStringgetName () const
const LLStringgetComment () const
eControlType type ()
BOOL isType (eControlType tp)
virtual void resetToDefault ()
LLSD registerListener (LLSimpleListenerObservable *listener, LLSD userdata="")
virtual LLSD get () const =0
virtual LLSD getValue () const =0
virtual void setValue (LLSD value)=0
virtual void set (LLSD value)=0
virtual bool handleEvent (LLPointer< LLEvent > event, const LLSD &userdata)
void firePropertyChanged ()

Static Public Member Functions

static void releaseListenerID (S32 id)
static S32 allocateListenerID ()
static void updateAllListeners ()

Static Public Attributes

static U32 sMaxControlNameLength = 0

Protected Member Functions

const char * name ()
const char * comment ()

Protected Attributes

LLString mName
LLString mComment
eControlType mType
BOOL mHasRange
BOOL mPersist
BOOL mIsDefault

Static Protected Attributes

static std::set< LLControlBase * > mChangedControls
static std::list< S32mFreeIDs
static std::list< S32mUsedIDs
static S32 mTopID

Friends

class LLControlGroup

Detailed Description

Definition at line 64 of file llcontrol.h.


Constructor & Destructor Documentation

LLControlBase::LLControlBase ( const LLString name,
eControlType  type,
const LLString comment,
BOOL  persist 
) [inline]

Definition at line 86 of file llcontrol.h.

References llendl, llerrs, llmax(), mComment, mName, mPersist, and sMaxControlNameLength.

LLControlBase::~LLControlBase (  )  [virtual]

Definition at line 106 of file llcontrol.cpp.


Member Function Documentation

S32 LLControlBase::allocateListenerID (  )  [static]

Definition at line 1283 of file llcontrol.cpp.

References mFreeIDs, mTopID, mUsedIDs, S32, and t.

Referenced by LLControl::addListener().

const char* LLControlBase::comment (  )  [inline, protected]

Definition at line 128 of file llcontrol.h.

References mComment.

void LLControlBase::firePropertyChanged (  ) 

Definition at line 1308 of file llcontrol.cpp.

References LLObservable::fireEvent(), and getValue().

Referenced by LLViewerWindow::LLViewerWindow(), and LLControl::setValue().

virtual LLSD LLControlBase::get (  )  const [pure virtual]

Implemented in LLControl.

Referenced by LLControlGroup::findString(), LLControlGroup::getBOOL(), LLControlGroup::getColor3(), LLControlGroup::getColor4(), LLControlGroup::getColor4U(), LLControlGroup::getF32(), LLControlGroup::getRect(), LLControlGroup::getS32(), LLControlGroup::getString(), LLControlGroup::getU32(), LLControlGroup::getVector3(), LLControlGroup::getVector3d(), and LLFloaterSettingsDebug::updateControl().

const LLString& LLControlBase::getComment (  )  const [inline]

Definition at line 104 of file llcontrol.h.

References mComment.

Referenced by LLFloaterSettingsDebug::updateControl().

const LLString& LLControlBase::getName ( void   )  const [inline]

Definition at line 103 of file llcontrol.h.

References mName.

Referenced by control_insert_before().

virtual LLSD LLControlBase::getValue (  )  const [pure virtual]

Implemented in LLControl.

Referenced by firePropertyChanged(), and registerListener().

bool LLControlBase::handleEvent ( LLPointer< LLEvent event,
const LLSD userdata 
) [virtual]

Implements LLSimpleListenerObservable.

Definition at line 1298 of file llcontrol.cpp.

References mValue, setValue(), and TRUE.

BOOL LLControlBase::isType ( eControlType  tp  )  [inline]

Definition at line 107 of file llcontrol.h.

References mType.

Referenced by LLControlGroup::findString(), LLControlGroup::getBOOL(), LLControlGroup::getColor3(), LLControlGroup::getColor4(), LLControlGroup::getColor4U(), LLControlGroup::getF32(), LLControlGroup::getRect(), LLControlGroup::getS32(), LLControlGroup::getString(), LLControlGroup::getU32(), LLControlGroup::getVector3(), LLControlGroup::getVector3d(), LLControlGroup::setBOOL(), LLControlGroup::setColor4(), LLControlGroup::setColor4U(), LLControlGroup::setF32(), LLControlGroup::setRect(), LLControlGroup::setS32(), LLControlGroup::setString(), LLControlGroup::setU32(), LLControlGroup::setVector3(), and LLControlGroup::setVector3d().

const char* LLControlBase::name (  )  [inline, protected]

Definition at line 127 of file llcontrol.h.

References mName.

LLSD LLControlBase::registerListener ( LLSimpleListenerObservable listener,
LLSD  userdata = "" 
)

Definition at line 124 of file llcontrol.cpp.

References LLObservable::addListener(), and getValue().

Referenced by LLControlGroup::registerListener(), LLMenuItemCheckGL::setCheckedControl(), LLMenuItemCallGL::setEnabledControl(), and LLMenuItemCallGL::setVisibleControl().

void LLControlBase::releaseListenerID ( S32  id  )  [static]

Definition at line 1278 of file llcontrol.cpp.

References mFreeIDs.

Referenced by LLControl::~LLControl().

void LLControlBase::resetToDefault (  )  [virtual]

Reimplemented in LLControl.

Definition at line 111 of file llcontrol.cpp.

Referenced by LLFloaterSettingsDebug::onClickDefault().

virtual void LLControlBase::set ( LLSD  value  )  [pure virtual]

Implemented in LLControl.

Referenced by LLControlGroup::loadFromFile(), LLControlGroup::loadFromFileLegacy(), LLFloaterSettingsDebug::onCommitSettings(), LLControlGroup::setBOOL(), LLControlGroup::setColor4(), LLControlGroup::setColor4U(), LLControlGroup::setF32(), LLControlGroup::setRect(), LLControlGroup::setS32(), LLControlGroup::setString(), LLControlGroup::setU32(), LLControlGroup::setValue(), LLControlGroup::setVector3(), and LLControlGroup::setVector3d().

virtual void LLControlBase::setValue ( LLSD  value  )  [pure virtual]

Implemented in LLControl.

Referenced by LLFileEnableCloseWindow::handleEvent(), LLFileEnableUpload::handleEvent(), LLFileEnableSaveAs::handleEvent(), LLEditEnableTakeOff::handleEvent(), LLViewCheckHUDAttachments::handleEvent(), LLViewCheckRenderType::handleEvent(), LLViewCheckBeaconEnabled::handleEvent(), LLViewCheckHighlightTransparent::handleEvent(), LLViewCheckShowHoverTips::handleEvent(), LLWorldEnableTeleportHome::handleEvent(), LLWorldEnableSetHomeLocation::handleEvent(), LLWorldEnableCreateLandmark::handleEvent(), LLToolsEnableToolNotPie::handleEvent(), LLViewEnableMouselook::handleEvent(), LLToolsEnableSaveToObjectInventory::handleEvent(), LLToolsEnableSaveToInventory::handleEvent(), LLToolsEnableTakeCopy::handleEvent(), LLEditableSelected::handleEvent(), LLSomethingSelectedNoHUD::handleEvent(), LLSomethingSelected::handleEvent(), LLAttachmentEnableDetach::handleEvent(), LLAttachmentEnableDrop::handleEvent(), LLWorldEnableBuyLand::handleEvent(), LLFloaterVisible::handleEvent(), LLObjectEnableSitOrStand::handleEvent(), LLEnablePayObject::handleEvent(), LLWorldCheckAlwaysRun::handleEvent(), LLEditEnableRedo::handleEvent(), LLEditEnableUndo::handleEvent(), LLEditEnableSelectAll::handleEvent(), LLEditEnableDeselect::handleEvent(), LLViewEnableLastChatter::handleEvent(), LLObjectEnableDelete::handleEvent(), LLEditEnableDelete::handleEvent(), LLEditEnablePaste::handleEvent(), LLEditEnableCopy::handleEvent(), LLEditEnableCut::handleEvent(), LLToolsEnableUnlink::handleEvent(), LLToolsEnableLink::handleEvent(), LLToolsEnableBuyOrTake::handleEvent(), LLObjectEnableReturn::handleEvent(), LLEditEnableDuplicate::handleEvent(), LLEditEnableCustomizeAvatar::handleEvent(), LLAvatarEnableAddFriend::handleEvent(), LLSelfEnableStandUp::handleEvent(), LLObjectEnableBuy::handleEvent(), LLAvatarEnableFreezeEject::handleEvent(), LLAvatarEnableDebug::handleEvent(), LLAvatarVisibleDebug::handleEvent(), LLObjectEnableMute::handleEvent(), LLSelfEnableRemoveAllAttachments::handleEvent(), LLEnableEdit::handleEvent(), LLLandEnableBuyPass::handleEvent(), LLViewCheckBuildMode::handleEvent(), LLObjectEnableOpen::handleEvent(), LLObjectEnableTouch::handleEvent(), LLObjectEnableReportAbuse::handleEvent(), handleEvent(), and LLInventoryViewFinder::onClose().

eControlType LLControlBase::type (  )  [inline]

Definition at line 106 of file llcontrol.h.

References mType.

Referenced by LLFloaterSettingsDebug::onCommitSettings(), and LLFloaterSettingsDebug::updateControl().

void LLControlBase::updateAllListeners (  )  [static]

Definition at line 1336 of file llcontrol.cpp.

References mChangedControls.

Referenced by idle().

virtual void LLControlBase::updateListeners (  )  [pure virtual]

Implemented in LLControl.


Friends And Related Function Documentation

friend class LLControlGroup [friend]

Reimplemented in LLControl.

Definition at line 66 of file llcontrol.h.


Member Data Documentation

std::set< LLControlBase * > LLControlBase::mChangedControls [static, protected]

Definition at line 75 of file llcontrol.h.

Referenced by updateAllListeners().

LLString LLControlBase::mComment [protected]

Definition at line 69 of file llcontrol.h.

Referenced by comment(), getComment(), and LLControlBase().

std::list< S32 > LLControlBase::mFreeIDs [static, protected]

Definition at line 76 of file llcontrol.h.

Referenced by allocateListenerID(), and releaseListenerID().

BOOL LLControlBase::mHasRange [protected]

Definition at line 71 of file llcontrol.h.

BOOL LLControlBase::mIsDefault [protected]

Definition at line 73 of file llcontrol.h.

Referenced by LLControlGroup::saveToFile(), and LLControl::setValue().

LLString LLControlBase::mName [protected]

Definition at line 68 of file llcontrol.h.

Referenced by getName(), LLControlBase(), and name().

BOOL LLControlBase::mPersist [protected]

Definition at line 72 of file llcontrol.h.

Referenced by LLControlBase(), and LLControlGroup::saveToFile().

S32 LLControlBase::mTopID [static, protected]

Definition at line 78 of file llcontrol.h.

Referenced by allocateListenerID().

eControlType LLControlBase::mType [protected]

Definition at line 70 of file llcontrol.h.

Referenced by isType(), LLControl::llsd_compare(), LLControlGroup::loadFromFile(), LLControlGroup::loadFromFileLegacy(), and type().

std::list< S32 > LLControlBase::mUsedIDs [static, protected]

Definition at line 77 of file llcontrol.h.

Referenced by allocateListenerID().

U32 LLControlBase::sMaxControlNameLength = 0 [static]

Definition at line 124 of file llcontrol.h.

Referenced by LLControlBase().


The documentation for this class was generated from the following files:
Generated on Thu Jul 1 06:11:13 2010 for Second Life Viewer by  doxygen 1.4.7