summaryrefslogtreecommitdiff
path: root/indra/newview/llimconversation.h
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llimconversation.h')
-rw-r--r--indra/newview/llimconversation.h26
1 files changed, 23 insertions, 3 deletions
diff --git a/indra/newview/llimconversation.h b/indra/newview/llimconversation.h
index d31ae0808a..50663137ac 100644
--- a/indra/newview/llimconversation.h
+++ b/indra/newview/llimconversation.h
@@ -35,10 +35,11 @@
#include "lleventtimer.h"
class LLPanelChatControlPanel;
+class LLChatEntry;
+class LLChatHistory;
class LLIMConversation
: public LLTransientDockableFloater
- , public LLEventTimer
{
public:
@@ -56,9 +57,14 @@ public:
*/
static bool isChatMultiTab();
+ // show/hide the translation check box
+ void showTranslationCheckbox(const BOOL visible = FALSE);
+
// LLFloater overrides
/*virtual*/ void onOpen(const LLSD& key);
+ /*virtual*/ void onClose(bool app_quitting);
/*virtual*/ BOOL postBuild();
+ /*virtual*/ void draw();
protected:
@@ -83,8 +89,6 @@ protected:
void buildParticipantList();
void onSortMenuItemClicked(const LLSD& userdata);
- /*virtual*/ BOOL tick();
-
bool mIsNearbyChat;
bool mIsP2PChat;
@@ -97,8 +101,24 @@ protected:
LLButton* mCloseBtn;
private:
+ /// Refreshes the floater at a constant rate.
+ virtual void refresh() = 0;
+
/// Update floater header and toolbar buttons when hosted/torn off state is toggled.
void updateHeaderAndToolbar();
+
+ /**
+ * Adjusts chat history height to fit vertically with input chat field
+ * and avoid overlapping, since input chat field can be vertically expanded.
+ * Implementation: chat history bottom "follows" top+top_pad of input chat field
+ */
+ void reshapeChatHistory();
+
+ LLChatHistory* mChatHistory;
+ LLChatEntry* mInputEditor;
+ int mInputEditorTopPad; // padding between input field and chat history
+
+ LLTimer* mRefreshTimer; ///< Defines the rate at which refresh() is called.
};