summaryrefslogtreecommitdiff
path: root/indra/newview/lltoastnotifypanel.h
diff options
context:
space:
mode:
authorRichard Linden <none@none>2012-05-18 13:20:32 -0700
committerRichard Linden <none@none>2012-05-18 13:20:32 -0700
commit296e55c1b323c05b6544b69ace04afe19102396b (patch)
treea0d3a495061442b2adfb4342c5c490c039526489 /indra/newview/lltoastnotifypanel.h
parentcf86247b8c5e199447b7cd3dc645a42a6a645265 (diff)
CHUI-112 FIX Clicking Show or Discard in an inventory offer toast does not dismiss toast
removed special case logic for dealing with user online/offline collisions added ability to cancel old duplicate notifications
Diffstat (limited to 'indra/newview/lltoastnotifypanel.h')
-rw-r--r--indra/newview/lltoastnotifypanel.h28
1 files changed, 20 insertions, 8 deletions
diff --git a/indra/newview/lltoastnotifypanel.h b/indra/newview/lltoastnotifypanel.h
index db517ec858..f93c7745af 100644
--- a/indra/newview/lltoastnotifypanel.h
+++ b/indra/newview/lltoastnotifypanel.h
@@ -47,7 +47,7 @@ class LLNotificationForm;
* @deprecated this class will be removed after all toast panel types are
* implemented in separate classes.
*/
-class LLToastNotifyPanel: public LLToastPanel
+class LLToastNotifyPanel: public LLToastPanel, public LLInstanceTracker<LLToastNotifyPanel, LLUUID>
{
public:
/**
@@ -61,10 +61,14 @@ public:
* implement right class for desired toast panel. @see LLGenericTipPanel as example.
*/
LLToastNotifyPanel(const LLNotificationPtr& pNotification, const LLRect& rect = LLRect::null, bool show_images = true);
+
+ virtual void init( LLRect rect, bool show_images );
+
virtual ~LLToastNotifyPanel();
LLPanel * getControlPanel() { return mControlPanel; }
- void setCloseNotificationOnDestroy(bool close) { mCloseNotificationOnDestroy = close; }
+ virtual void updateNotification() {}
+
protected:
LLButton* createButton(const LLSD& form_element, BOOL is_option);
@@ -76,8 +80,6 @@ protected:
};
std::vector<InstanceAndS32*> mBtnCallbackData;
- bool mCloseNotificationOnDestroy;
-
typedef std::pair<int,LLButton*> index_button_pair_t;
void adjustPanelForScriptNotice(S32 max_width, S32 max_height);
void adjustPanelForTipNotice();
@@ -93,9 +95,9 @@ protected:
/**
* Disable specific button(s) based on notification name and clicked button
*/
- void disableButtons(const std::string& notification_name, const std::string& selected_button);
+ //void disableButtons(const std::string& notification_name, const std::string& selected_button);
- std::vector<index_button_pair_t> mButtons;
+ //std::vector<index_button_pair_t> mButtons;
// panel elements
LLTextBase* mTextBox;
@@ -118,7 +120,7 @@ protected:
/**
* Process response data. Will disable selected options
*/
- void disableRespondedOptions(const LLNotificationPtr& notification);
+ //void disableRespondedOptions(const LLNotificationPtr& notification);
bool mIsTip;
bool mAddedDefaultBtn;
@@ -137,13 +139,23 @@ class LLIMToastNotifyPanel : public LLToastNotifyPanel
{
public:
- LLIMToastNotifyPanel(LLNotificationPtr& pNotification, const LLUUID& session_id, const LLRect& rect = LLRect::null, bool show_images = true);
+ LLIMToastNotifyPanel(LLNotificationPtr& pNotification,
+ const LLUUID& session_id,
+ const LLRect& rect = LLRect::null,
+ bool show_images = true,
+ LLTextBase* parent_text = NULL);
+
+ void compactButtons();
+
+ virtual void updateNotification();
+ virtual void init( LLRect rect, bool show_images );
~LLIMToastNotifyPanel();
/*virtual*/ void reshape(S32 width, S32 height, BOOL called_from_parent = TRUE);
protected:
+ LLTextBase* mParentText;
LLUUID mSessionID;
};