diff options
Diffstat (limited to 'indra/llui')
-rw-r--r-- | indra/llui/llnotifications.cpp | 7 | ||||
-rw-r--r-- | indra/llui/llnotifications.h | 1 | ||||
-rw-r--r-- | indra/llui/lltoolbar.cpp | 10 | ||||
-rw-r--r-- | indra/llui/lltoolbar.h | 3 |
4 files changed, 18 insertions, 3 deletions
diff --git a/indra/llui/llnotifications.cpp b/indra/llui/llnotifications.cpp index 137c6efc53..269cb4676a 100644 --- a/indra/llui/llnotifications.cpp +++ b/indra/llui/llnotifications.cpp @@ -1116,6 +1116,11 @@ bool LLNotificationChannel::isEmpty() const return mItems.empty(); } +S32 LLNotificationChannel::size() const +{ + return mItems.size(); +} + LLNotificationChannel::Iterator LLNotificationChannel::begin() { return mItems.begin(); @@ -1433,7 +1438,7 @@ bool LLNotifications::loadTemplates() std::string base_filename = search_paths.front(); LLXMLNodePtr root; BOOL success = LLXMLNode::getLayeredXMLNode(root, search_paths); - + if (!success || root.isNull() || !root->hasName( "notifications" )) { llerrs << "Problem reading XML from UI Notifications file: " << base_filename << llendl; diff --git a/indra/llui/llnotifications.h b/indra/llui/llnotifications.h index 4ae02b943f..d7534c416d 100644 --- a/indra/llui/llnotifications.h +++ b/indra/llui/llnotifications.h @@ -813,6 +813,7 @@ public: std::string getParentChannelName() { return mParent; } bool isEmpty() const; + S32 size() const; Iterator begin(); Iterator end(); diff --git a/indra/llui/lltoolbar.cpp b/indra/llui/lltoolbar.cpp index 2297285c39..13aa21b505 100644 --- a/indra/llui/lltoolbar.cpp +++ b/indra/llui/lltoolbar.cpp @@ -117,7 +117,8 @@ LLToolBar::LLToolBar(const LLToolBar::Params& p) mButtonEnterSignal(NULL), mButtonLeaveSignal(NULL), mButtonRemoveSignal(NULL), - mDragAndDropTarget(false) + mDragAndDropTarget(false), + mCaretIcon(NULL) { mButtonParams[LLToolBarEnums::BTNTYPE_ICONS_WITH_TEXT] = p.button_icon_and_text; mButtonParams[LLToolBarEnums::BTNTYPE_ICONS_ONLY] = p.button_icon; @@ -830,7 +831,12 @@ void LLToolBar::draw() LLUI::translate((F32)getRect().mLeft, (F32)getRect().mBottom); // Position the caret - LLIconCtrl* caret = getChild<LLIconCtrl>("caret"); + if (!mCaretIcon) + { + mCaretIcon = getChild<LLIconCtrl>("caret"); + } + + LLIconCtrl* caret = mCaretIcon; caret->setVisible(FALSE); if (mDragAndDropTarget && !mButtonCommands.empty()) { diff --git a/indra/llui/lltoolbar.h b/indra/llui/lltoolbar.h index 2ffcc8b574..6936cb37f7 100644 --- a/indra/llui/lltoolbar.h +++ b/indra/llui/lltoolbar.h @@ -37,6 +37,7 @@ class LLToolBar; class LLToolBarButton; +class LLIconCtrl; typedef boost::function<void (S32 x, S32 y, LLToolBarButton* button)> tool_startdrag_callback_t; typedef boost::function<BOOL (S32 x, S32 y, const LLUUID& uuid, LLAssetType::EType type)> tool_handledrag_callback_t; @@ -284,6 +285,8 @@ private: button_signal_t* mButtonRemoveSignal; std::string mButtonTooltipSuffix; + + LLIconCtrl* mCaretIcon; }; |