llprefschat.cpp

Go to the documentation of this file.
00001 
00033 #include "llviewerprecompiledheaders.h"
00034 
00035 #include "llprefschat.h"
00036 #include "lltexteditor.h"
00037 #include "llviewercontrol.h"
00038 #include "lluictrlfactory.h"
00039 
00040 class LLPrefsChatImpl : public LLPanel
00041 {
00042 public:
00043         LLPrefsChatImpl();
00044         /*virtual*/ ~LLPrefsChatImpl(){};
00045         
00046         virtual void refresh();
00047 
00048         void apply();
00049         void cancel();
00050 
00051 protected:
00052         S32     mChatSize;
00053         F32     mChatPersist;
00054         S32     mChatMaxLines;
00055         LLColor4 mSystemChatColor;
00056         LLColor4 mAgentChatColor;
00057         LLColor4 mIMChatColor;
00058         LLColor4 mObjectChatColor;
00059         LLColor4 mOwnerSayChatColor;
00060         LLColor4 mBGChatColor;
00061         LLColor4 mScriptErrorColor;
00062         LLColor4 mHTMLLinkColor;
00063         BOOL mChatFullWidth;
00064         BOOL mCloseChatOnReturn;
00065         BOOL mArrowKeysMoveAvatar;
00066         BOOL mShowTimestamps;
00067         BOOL mPlayTypingAnim;
00068         BOOL mChatBubbles;
00069         BOOL mScriptErrorAsChat;
00070         F32     mConsoleOpacity;
00071         F32     mBubbleOpacity;
00072 };
00073 
00074 
00075 LLPrefsChatImpl::LLPrefsChatImpl()
00076 :       LLPanel("Chat Panel")
00077 {
00078         LLUICtrlFactory::getInstance()->buildPanel(this, "panel_preferences_chat.xml");
00079 
00080         refresh();
00081 }
00082  
00083 void LLPrefsChatImpl::refresh()
00084 {
00085         LLPanel::refresh();
00086 
00087         //set values
00088         mChatSize = gSavedSettings.getS32("ChatFontSize");
00089         mChatPersist = gSavedSettings.getF32("ChatPersistTime");
00090         mChatMaxLines = gSavedSettings.getS32("ConsoleMaxLines");
00091         mSystemChatColor = gSavedSettings.getColor4("SystemChatColor");
00092         mAgentChatColor = gSavedSettings.getColor4("AgentChatColor");
00093         mIMChatColor = gSavedSettings.getColor4("IMChatColor");
00094         mObjectChatColor = gSavedSettings.getColor4("ObjectChatColor");
00095         mOwnerSayChatColor = gSavedSettings.getColor4("llOwnerSayChatColor");
00096         mBGChatColor = gSavedSettings.getColor4("BackgroundChatColor");
00097         mScriptErrorColor = gSavedSettings.getColor4("ScriptErrorColor");
00098         mHTMLLinkColor = gSavedSettings.getColor4("HTMLLinkColor");
00099         mArrowKeysMoveAvatar = gSavedSettings.getBOOL("ArrowKeysMoveAvatar");
00100         mShowTimestamps = gSavedSettings.getBOOL("ChatShowTimestamps");
00101         mScriptErrorAsChat = gSavedSettings.getBOOL("ScriptErrorsAsChat");
00102         mChatBubbles = gSavedSettings.getBOOL("UseChatBubbles");
00103         mChatFullWidth = gSavedSettings.getBOOL("ChatFullWidth");
00104         mCloseChatOnReturn = gSavedSettings.getBOOL("CloseChatOnReturn");
00105         mConsoleOpacity = gSavedSettings.getF32("ConsoleBackgroundOpacity");
00106         mBubbleOpacity = gSavedSettings.getF32("ChatBubbleOpacity");
00107 }
00108 
00109 void LLPrefsChatImpl::cancel()
00110 {
00111         gSavedSettings.setS32("ChatFontSize", mChatSize);
00112         gSavedSettings.setF32("ChatPersistTime", mChatPersist);
00113         gSavedSettings.setS32("ConsoleMaxLines", mChatMaxLines);
00114         gSavedSettings.setColor4("SystemChatColor", mSystemChatColor);
00115         gSavedSettings.setColor4("AgentChatColor", mAgentChatColor);
00116         gSavedSettings.setColor4("IMChatColor", mIMChatColor);
00117         gSavedSettings.setColor4("ObjectChatColor", mObjectChatColor);
00118         gSavedSettings.setColor4("llOwnerSayChatColor", mOwnerSayChatColor);
00119         gSavedSettings.setColor4("BackgroundChatColor", mBGChatColor);
00120         gSavedSettings.setColor4("ScriptErrorColor", mScriptErrorColor);
00121         gSavedSettings.setColor4("HTMLLinkColor", mHTMLLinkColor);
00122         gSavedSettings.setBOOL("ArrowKeysMoveAvatar", mArrowKeysMoveAvatar);
00123         gSavedSettings.setBOOL("ChatShowTimestamps", mShowTimestamps);
00124         gSavedSettings.setBOOL("ScriptErrorsAsChat", mScriptErrorAsChat);
00125         gSavedSettings.setBOOL("UseChatBubbles", mChatBubbles);
00126         gSavedSettings.setBOOL("ChatFullWidth", mChatFullWidth);
00127         gSavedSettings.setBOOL("CloseChatOnReturn", mCloseChatOnReturn);
00128         gSavedSettings.setF32("ConsoleBackgroundOpacity", mConsoleOpacity);
00129         gSavedSettings.setF32("ChatBubbleOpacity", mBubbleOpacity);     
00130 }
00131 
00132 void LLPrefsChatImpl::apply()
00133 {
00134                 
00135 }
00136 
00137 //---------------------------------------------------------------------------
00138 
00139 LLPrefsChat::LLPrefsChat()
00140 :       impl( * new LLPrefsChatImpl() )
00141 { }
00142 
00143 LLPrefsChat::~LLPrefsChat()
00144 {
00145         delete &impl;
00146 }
00147 
00148 void LLPrefsChat::apply()
00149 {
00150         impl.apply();
00151         LLTextEditor::setLinkColor( gSavedSettings.getColor4("HTMLLinkColor") );
00152 }
00153 
00154 void LLPrefsChat::cancel()
00155 {
00156         impl.cancel();
00157 }
00158 
00159 LLPanel* LLPrefsChat::getPanel()
00160 {
00161         return &impl;
00162 }

Generated on Fri May 16 08:33:56 2008 for SecondLife by  doxygen 1.5.5