From b2afb8800bb033a04bb3ecdf0363068d56648ef1 Mon Sep 17 00:00:00 2001 From: Jacek Antonelli Date: Fri, 15 Aug 2008 23:44:54 -0500 Subject: Second Life viewer sources 1.15.0.2 --- linden/indra/newview/llimpanel.h | 42 +++++++++++++++++++++++++++------------- 1 file changed, 29 insertions(+), 13 deletions(-) (limited to 'linden/indra/newview/llimpanel.h') diff --git a/linden/indra/newview/llimpanel.h b/linden/indra/newview/llimpanel.h index 877fd88..e760513 100644 --- a/linden/indra/newview/llimpanel.h +++ b/linden/indra/newview/llimpanel.h @@ -4,6 +4,7 @@ * * Copyright (c) 2001-2007, Linden Research, Inc. * + * Second Life Viewer Source Code * 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 @@ -46,10 +47,20 @@ public: // the default. For example, if you open a session though a // calling card, a new session id will be generated, but the // target_id will be the agent referenced by the calling card. - LLFloaterIMPanel(const std::string& name, const LLRect& rect, - const std::string& session_label, - const LLUUID& session_id, const LLUUID& target_id, - EInstantMessage dialog); + LLFloaterIMPanel(const std::string& name, + const LLRect& rect, + const std::string& session_label, + const LLUUID& session_id, + const LLUUID& target_id, + EInstantMessage dialog); + LLFloaterIMPanel(const std::string& name, + const LLRect& rect, + const std::string& session_label, + const LLUUID& session_id, + const LLUUID& target_id, + const LLDynamicArray& ids, + EInstantMessage dialog); + /*virtual*/ BOOL postBuild(); @@ -78,21 +89,21 @@ public: LLString& tooltip_msg); static void onInputEditorFocusReceived( LLUICtrl* caller, void* userdata ); - static void onInputEditorFocusLost(LLLineEditor* caller, void* userdata); + static void onInputEditorFocusLost(LLUICtrl* caller, void* userdata); static void onInputEditorKeystroke(LLLineEditor* caller, void* userdata); static void onTabClick( void* userdata ); static void onClickProfile( void* userdata ); // Profile button pressed static void onClickClose( void* userdata ); - //const LLUUID& getItemUUID() const { return mItemUUID; } const LLUUID& getSessionID() const { return mSessionUUID; } const LLUUID& getOtherParticipantID() const { return mOtherParticipantUUID; } // HACK -- for enabling a teleport button for helpers static void onTeleport(void* userdata); - void addTeleportButton(const LLUUID& lure_id); - void removeTeleportButton(); + void addTeleportButton(); + + void sessionInitReplyReceived(const LLUUID& im_session_id); // Handle other participant in the session typing. void processIMTyping(const LLIMInfo* im_info, BOOL typing); @@ -100,7 +111,7 @@ public: private: // called by constructors - void init(); + void init(const LLString& session_label); // Called by UI methods. void sendMsg(); @@ -129,7 +140,6 @@ private: private: LLLineEditor* mInputEditor; LLViewerTextEditor* mHistoryEditor; - std::string mSessionLabel; // The value of the mSessionUUID depends on how the IM session was started: // one-on-one ==> random id @@ -138,15 +148,17 @@ private: // 911 ==> Gaurdian_Angel_Group_ID ^ gAgent.getID() LLUUID mSessionUUID; + BOOL mSessionInitRequested; + BOOL mSessionInitialized; + LLSD mQueuedMsgsForInit; + // The value mOtherParticipantUUID depends on how the IM session was started: // one-on-one = recipient's id // group ==> group_id // inventory folder ==> first target id in list // 911 ==> sender LLUUID mOtherParticipantUUID; - - // the lure ID for help IM sessions - LLUUID mLureID; + LLDynamicArray mSessionInitialTargetIDs; EInstantMessage mDialog; @@ -158,6 +170,8 @@ private: // Where does the "User is typing..." line start? S32 mTypingLineStartIndex; + //Where does the "Starting session..." line start? + S32 mSessionStartMsgPos; BOOL mSentTypingState; @@ -168,6 +182,8 @@ private: // Timer to detect when user has stopped typing. LLFrameTimer mLastKeystrokeTimer; + + void disableWhileSessionStarting(); }; -- cgit v1.1