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.h280
1 files changed, 140 insertions, 140 deletions
diff --git a/indra/newview/llimpanel.h b/indra/newview/llimpanel.h
index c5930b56f7..01cd0c5861 100644
--- a/indra/newview/llimpanel.h
+++ b/indra/newview/llimpanel.h
@@ -1,25 +1,25 @@
-/**
+/**
* @file llimpanel.h
* @brief LLIMPanel class definition
*
* $LicenseInfo:firstyear=2001&license=viewerlgpl$
* Second Life Viewer Source Code
* Copyright (C) 2010, Linden Research, Inc.
- *
+ *
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation;
* version 2.1 of the License only.
- *
+ *
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
- *
+ *
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
+ *
* Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA
* $/LicenseInfo$
*/
@@ -47,166 +47,166 @@ class LLFloaterIMPanel : public LLFloater
{
public:
- // The session id is the id of the session this is for. The target
- // refers to the user (or group) that where this session serves as
- // 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& session_label,
- const LLUUID& session_id,
- const LLUUID& target_id,
- const std::vector<LLUUID>& ids,
- EInstantMessage dialog);
- virtual ~LLFloaterIMPanel();
-
- /*virtual*/ BOOL postBuild();
-
- // Check typing timeout timer.
- /*virtual*/ void draw();
-
- /*virtual*/ void onClose(bool app_quitting);
- void onVisibilityChange(const LLSD& new_visibility);
-
- // add target ids to the session.
- // Return TRUE if successful, otherwise FALSE.
- BOOL inviteToSession(const std::vector<LLUUID>& agent_ids);
-
- void addHistoryLine(const std::string &utf8msg,
- const LLColor4& color = LLColor4::white,
- bool log_to_file = true,
- const LLUUID& source = LLUUID::null,
- const std::string& name = LLStringUtil::null);
-
- void setInputFocus( BOOL b );
-
- void selectAll();
- void selectNone();
-
- S32 getNumUnreadMessages() { return mNumUnreadMessages; }
-
- BOOL handleKeyHere(KEY key, MASK mask);
- BOOL handleDragAndDrop(S32 x, S32 y, MASK mask,
- BOOL drop, EDragAndDropType cargo_type,
- void *cargo_data, EAcceptance *accept,
- std::string& tooltip_msg);
-
- static void onInputEditorFocusReceived( LLFocusableElement* caller, void* userdata );
- static void onInputEditorFocusLost(LLFocusableElement* caller, void* userdata);
- static void onInputEditorKeystroke(LLLineEditor* caller, void* userdata);
- static void onCommitChat(LLUICtrl* caller, void* userdata);
- static void onTabClick( void* userdata );
-
- static void onClickProfile( void* userdata );
- static void onClickGroupInfo( void* userdata );
- static void onClickClose( void* userdata );
- static void onClickStartCall( void* userdata );
- static void onClickEndCall( void* userdata );
- static void onClickSend( void* userdata );
- static void onClickToggleActiveSpeakers( void* userdata );
- static void* createSpeakersPanel(void* data);
- static void onKickSpeaker(void* user_data);
-
- //callbacks for P2P muting and volume control
- static void onClickMuteVoice(void* user_data);
- static void onVolumeChange(LLUICtrl* source, void* user_data);
-
- const LLUUID& getSessionID() const { return mSessionUUID; }
- const LLUUID& getOtherParticipantID() const { return mOtherParticipantUUID; }
- void processSessionUpdate(const LLSD& update);
- EInstantMessage getDialogType() const { return mDialog; }
- void setDialogType(EInstantMessage dialog) { mDialog = dialog; }
-
- void sessionInitReplyReceived(const LLUUID& im_session_id);
-
- // Handle other participant in the session typing.
- void processIMTyping(const LLIMInfo* im_info, BOOL typing);
+ // The session id is the id of the session this is for. The target
+ // refers to the user (or group) that where this session serves as
+ // 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& session_label,
+ const LLUUID& session_id,
+ const LLUUID& target_id,
+ const std::vector<LLUUID>& ids,
+ EInstantMessage dialog);
+ virtual ~LLFloaterIMPanel();
+
+ /*virtual*/ BOOL postBuild();
+
+ // Check typing timeout timer.
+ /*virtual*/ void draw();
+
+ /*virtual*/ void onClose(bool app_quitting);
+ void onVisibilityChange(const LLSD& new_visibility);
+
+ // add target ids to the session.
+ // Return TRUE if successful, otherwise FALSE.
+ BOOL inviteToSession(const std::vector<LLUUID>& agent_ids);
+
+ void addHistoryLine(const std::string &utf8msg,
+ const LLColor4& color = LLColor4::white,
+ bool log_to_file = true,
+ const LLUUID& source = LLUUID::null,
+ const std::string& name = LLStringUtil::null);
+
+ void setInputFocus( BOOL b );
+
+ void selectAll();
+ void selectNone();
+
+ S32 getNumUnreadMessages() { return mNumUnreadMessages; }
+
+ BOOL handleKeyHere(KEY key, MASK mask);
+ BOOL handleDragAndDrop(S32 x, S32 y, MASK mask,
+ BOOL drop, EDragAndDropType cargo_type,
+ void *cargo_data, EAcceptance *accept,
+ std::string& tooltip_msg);
+
+ static void onInputEditorFocusReceived( LLFocusableElement* caller, void* userdata );
+ static void onInputEditorFocusLost(LLFocusableElement* caller, void* userdata);
+ static void onInputEditorKeystroke(LLLineEditor* caller, void* userdata);
+ static void onCommitChat(LLUICtrl* caller, void* userdata);
+ static void onTabClick( void* userdata );
+
+ static void onClickProfile( void* userdata );
+ static void onClickGroupInfo( void* userdata );
+ static void onClickClose( void* userdata );
+ static void onClickStartCall( void* userdata );
+ static void onClickEndCall( void* userdata );
+ static void onClickSend( void* userdata );
+ static void onClickToggleActiveSpeakers( void* userdata );
+ static void* createSpeakersPanel(void* data);
+ static void onKickSpeaker(void* user_data);
+
+ //callbacks for P2P muting and volume control
+ static void onClickMuteVoice(void* user_data);
+ static void onVolumeChange(LLUICtrl* source, void* user_data);
+
+ const LLUUID& getSessionID() const { return mSessionUUID; }
+ const LLUUID& getOtherParticipantID() const { return mOtherParticipantUUID; }
+ void processSessionUpdate(const LLSD& update);
+ EInstantMessage getDialogType() const { return mDialog; }
+ void setDialogType(EInstantMessage dialog) { mDialog = dialog; }
+
+ void sessionInitReplyReceived(const LLUUID& im_session_id);
+
+ // Handle other participant in the session typing.
+ void processIMTyping(const LLIMInfo* im_info, BOOL typing);
private:
- // Called by UI methods.
- void sendMsg();
+ // Called by UI methods.
+ void sendMsg();
- // for adding agents via the UI. Return TRUE if possible, do it if
- BOOL dropCallingCard(LLInventoryItem* item, BOOL drop);
- BOOL dropCategory(LLInventoryCategory* category, BOOL drop);
+ // for adding agents via the UI. Return TRUE if possible, do it if
+ BOOL dropCallingCard(LLInventoryItem* item, BOOL drop);
+ BOOL dropCategory(LLInventoryCategory* category, BOOL drop);
- // test if local agent can add agents.
- BOOL isInviteAllowed() const;
+ // test if local agent can add agents.
+ BOOL isInviteAllowed() const;
- // Called whenever the user starts or stops typing.
- // Sends the typing state to the other user if necessary.
- void setTyping(BOOL typing);
+ // Called whenever the user starts or stops typing.
+ // Sends the typing state to the other user if necessary.
+ void setTyping(BOOL typing);
- // Add the "User is typing..." indicator.
- void addTypingIndicator(const std::string &name);
+ // Add the "User is typing..." indicator.
+ void addTypingIndicator(const std::string &name);
- // Remove the "User is typing..." indicator.
- void removeTypingIndicator(const LLIMInfo* im_info);
+ // Remove the "User is typing..." indicator.
+ void removeTypingIndicator(const LLIMInfo* im_info);
+
+ void sendTypingState(BOOL typing);
- void sendTypingState(BOOL typing);
-
private:
- LLLineEditor* mInputEditor;
- LLViewerTextEditor* mHistoryEditor;
+ LLLineEditor* mInputEditor;
+ LLViewerTextEditor* mHistoryEditor;
+
+ // The value of the mSessionUUID depends on how the IM session was started:
+ // one-on-one ==> random id
+ // group ==> group_id
+ // inventory folder ==> folder item_id
+ // 911 ==> Gaurdian_Angel_Group_ID ^ gAgent.getID()
+ LLUUID mSessionUUID;
+
+ std::string mSessionLabel;
- // The value of the mSessionUUID depends on how the IM session was started:
- // one-on-one ==> random id
- // group ==> group_id
- // inventory folder ==> folder item_id
- // 911 ==> Gaurdian_Angel_Group_ID ^ gAgent.getID()
- LLUUID mSessionUUID;
+ BOOL mSessionInitialized;
+ LLSD mQueuedMsgsForInit;
- std::string mSessionLabel;
+ // 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;
+ std::vector<LLUUID> mSessionInitialTargetIDs;
- BOOL mSessionInitialized;
- LLSD mQueuedMsgsForInit;
+ EInstantMessage mDialog;
- // 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;
- std::vector<LLUUID> mSessionInitialTargetIDs;
+ // Are you currently typing?
+ BOOL mTyping;
- EInstantMessage mDialog;
+ // Is other user currently typing?
+ BOOL mOtherTyping;
- // Are you currently typing?
- BOOL mTyping;
+ // name of other user who is currently typing
+ std::string mOtherTypingName;
- // Is other user currently typing?
- BOOL mOtherTyping;
+ // Where does the "User is typing..." line start?
+ S32 mTypingLineStartIndex;
+ // Where does the "Starting session..." line start?
+ S32 mSessionStartMsgPos;
- // name of other user who is currently typing
- std::string mOtherTypingName;
+ S32 mNumUnreadMessages;
- // Where does the "User is typing..." line start?
- S32 mTypingLineStartIndex;
- // Where does the "Starting session..." line start?
- S32 mSessionStartMsgPos;
-
- S32 mNumUnreadMessages;
+ BOOL mSentTypingState;
- BOOL mSentTypingState;
+ BOOL mShowSpeakersOnConnect;
- BOOL mShowSpeakersOnConnect;
+ BOOL mTextIMPossible;
+ BOOL mProfileButtonEnabled;
+ BOOL mCallBackEnabled;
- BOOL mTextIMPossible;
- BOOL mProfileButtonEnabled;
- BOOL mCallBackEnabled;
+ LLPanelActiveSpeakers* mSpeakerPanel;
- LLPanelActiveSpeakers* mSpeakerPanel;
-
- // Optimization: Don't send "User is typing..." until the
- // user has actually been typing for a little while. Prevents
- // extra IMs for brief "lol" type utterences.
- LLFrameTimer mFirstKeystrokeTimer;
+ // Optimization: Don't send "User is typing..." until the
+ // user has actually been typing for a little while. Prevents
+ // extra IMs for brief "lol" type utterences.
+ LLFrameTimer mFirstKeystrokeTimer;
- // Timer to detect when user has stopped typing.
- LLFrameTimer mLastKeystrokeTimer;
+ // Timer to detect when user has stopped typing.
+ LLFrameTimer mLastKeystrokeTimer;
- boost::signals2::connection mFocusCallbackConnection;
+ boost::signals2::connection mFocusCallbackConnection;
- void disableWhileSessionStarting();
+ void disableWhileSessionStarting();
};
#endif // LL_IMPANEL_H