summaryrefslogtreecommitdiff
path: root/indra/newview/llimpanel.h
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llimpanel.h')
-rw-r--r--indra/newview/llimpanel.h27
1 files changed, 15 insertions, 12 deletions
diff --git a/indra/newview/llimpanel.h b/indra/newview/llimpanel.h
index e6bde5c93a..dcb0f2416f 100644
--- a/indra/newview/llimpanel.h
+++ b/indra/newview/llimpanel.h
@@ -47,7 +47,6 @@ class LLInventoryItem;
class LLInventoryCategory;
class LLIMSpeakerMgr;
class LLPanelActiveSpeakers;
-class LLIMChiclet;
class LLVoiceChannel : public LLVoiceClientStatusObserver
{
@@ -196,8 +195,9 @@ public:
// Check typing timeout timer.
/*virtual*/ void draw();
- /*virtual*/ void onClose(bool app_quitting = FALSE);
- /*virtual*/ void onVisibilityChange(BOOL new_visibility);
+
+ void onClose();
+ void onVisibilityChange(const LLSD& new_visibility);
// add target ids to the session.
// Return TRUE if successful, otherwise FALSE.
@@ -213,7 +213,6 @@ public:
void selectAll();
void selectNone();
- void setVisible(BOOL b);
S32 getNumUnreadMessages() { return mNumUnreadMessages; }
@@ -251,6 +250,7 @@ public:
void setSpeakers(const LLSD& speaker_list);
LLVoiceChannel* getVoiceChannel() { return mVoiceChannel; }
EInstantMessage getDialogType() const { return mDialog; }
+ void setDialogType(EInstantMessage dialog) { mDialog = dialog; }
void requestAutoConnect();
@@ -365,14 +365,16 @@ private:
class LLIMFloater : public LLFloater
{
public:
- LLIMFloater(const LLUUID& session_id,
- const std::string title,
- EInstantMessage dialog);
+ LLIMFloater(const LLUUID& session_id);
virtual ~LLIMFloater();
// LLView overrides
/*virtual*/ BOOL postBuild();
+
+ // LLView overrides for drawing dock tongue
+ /*virtual*/
+ void draw();
// Floater should close when user clicks away to other UI area,
// hence causing focus loss.
@@ -382,7 +384,6 @@ public:
/*virtual*/ void setDocked(bool docked, bool pop_on_undock = true);
static LLIMFloater* show(const LLUUID& session_id);
- void onClose(bool app_quitting);
// get new messages from LLIMModel
void updateMessages();
@@ -392,8 +393,10 @@ public:
// callback for LLIMModel on new messages
// route to specific floater if it is visible
static void newIMCallback(const LLSD& data);
-
- static std::map<LLUUID, LLIMFloater*> sIMFloaterMap;
+
+ // called when docked floater's position has been set by chiclet
+ void setPositioned(bool b) { mPositioned = b; };
+
private:
@@ -408,11 +411,11 @@ private:
LLUUID mSessionID;
S32 mLastMessageIndex;
EInstantMessage mDialog;
- LLIMChiclet* mChiclet;
LLUUID mOtherParticipantUUID;
LLViewerTextEditor* mHistoryEditor;
LLLineEditor* mInputEditor;
-
+ bool mPositioned;
+ LLUIImagePtr mDockTongue;
};