diff options
-rw-r--r-- | linden/indra/newview/app_settings/settings.xml | 11 | ||||
-rw-r--r-- | linden/indra/newview/llfloaterchat.cpp | 22 | ||||
-rw-r--r-- | linden/indra/newview/llfloaterchat.h | 2 | ||||
-rw-r--r-- | linden/indra/newview/llprefschat.cpp | 4 | ||||
-rw-r--r-- | linden/indra/newview/llviewercontrol.cpp | 14 | ||||
-rwxr-xr-x | linden/indra/newview/llviewermessage.cpp | 71 | ||||
-rw-r--r-- | linden/indra/newview/llviewermessage.h | 1 | ||||
-rw-r--r-- | linden/indra/newview/llwldaycycle.cpp | 6 | ||||
-rw-r--r-- | linden/indra/newview/skins/default/xui/en-us/floater_chat_history.xml | 3 | ||||
-rw-r--r-- | linden/indra/newview/skins/default/xui/en-us/panel_preferences_chat.xml | 82 |
10 files changed, 7 insertions, 209 deletions
diff --git a/linden/indra/newview/app_settings/settings.xml b/linden/indra/newview/app_settings/settings.xml index 439459c..2ec4832 100644 --- a/linden/indra/newview/app_settings/settings.xml +++ b/linden/indra/newview/app_settings/settings.xml | |||
@@ -7901,17 +7901,6 @@ | |||
7901 | <key>Value</key> | 7901 | <key>Value</key> |
7902 | <string>default</string> | 7902 | <string>default</string> |
7903 | </map> | 7903 | </map> |
7904 | <key>TranslateChat</key> | ||
7905 | <map> | ||
7906 | <key>Comment</key> | ||
7907 | <string>Translate incoming chat messages</string> | ||
7908 | <key>Persist</key> | ||
7909 | <integer>1</integer> | ||
7910 | <key>Type</key> | ||
7911 | <string>Boolean</string> | ||
7912 | <key>Value</key> | ||
7913 | <integer>0</integer> | ||
7914 | </map> | ||
7915 | <key>LastFeatureVersion</key> | 7904 | <key>LastFeatureVersion</key> |
7916 | <map> | 7905 | <map> |
7917 | <key>Comment</key> | 7906 | <key>Comment</key> |
diff --git a/linden/indra/newview/llfloaterchat.cpp b/linden/indra/newview/llfloaterchat.cpp index 1142e5c..2cca8ce 100644 --- a/linden/indra/newview/llfloaterchat.cpp +++ b/linden/indra/newview/llfloaterchat.cpp | |||
@@ -115,8 +115,6 @@ LLFloaterChat::LLFloaterChat(const LLSD& seed) | |||
115 | LLUICtrlFactory::getInstance()->buildFloater(this,"floater_chat_history.xml",&getFactoryMap(),no_open); | 115 | LLUICtrlFactory::getInstance()->buildFloater(this,"floater_chat_history.xml",&getFactoryMap(),no_open); |
116 | 116 | ||
117 | childSetCommitCallback("show mutes",onClickToggleShowMute,this); //show mutes | 117 | childSetCommitCallback("show mutes",onClickToggleShowMute,this); //show mutes |
118 | childSetCommitCallback("translate chat",onClickToggleTranslateChat,this); | ||
119 | childSetValue("translate chat", gSavedSettings.getBOOL("TranslateChat")); | ||
120 | childSetVisible("Chat History Editor with mute",FALSE); | 118 | childSetVisible("Chat History Editor with mute",FALSE); |
121 | childSetAction("toggle_active_speakers_btn", onClickToggleActiveSpeakers, this); | 119 | childSetAction("toggle_active_speakers_btn", onClickToggleActiveSpeakers, this); |
122 | setDefaultBtn("Chat"); | 120 | setDefaultBtn("Chat"); |
@@ -446,26 +444,6 @@ void LLFloaterChat::onClickToggleShowMute(LLUICtrl* caller, void *data) | |||
446 | } | 444 | } |
447 | } | 445 | } |
448 | 446 | ||
449 | // Update the "TranslateChat" pref after "translate chat" checkbox is toggled in | ||
450 | // the "Local Chat" floater. | ||
451 | //static | ||
452 | void LLFloaterChat::onClickToggleTranslateChat(LLUICtrl* caller, void *data) | ||
453 | { | ||
454 | LLFloaterChat* floater = (LLFloaterChat*)data; | ||
455 | |||
456 | BOOL translate_chat = floater->getChild<LLCheckBoxCtrl>("translate chat")->get(); | ||
457 | gSavedSettings.setBOOL("TranslateChat", translate_chat); | ||
458 | } | ||
459 | |||
460 | // Update the "translate chat" checkbox after the "TranslateChat" pref is set in | ||
461 | // some other place (e.g. prefs dialog). | ||
462 | //static | ||
463 | void LLFloaterChat::updateSettings() | ||
464 | { | ||
465 | BOOL translate_chat = gSavedSettings.getBOOL("TranslateChat"); | ||
466 | LLFloaterChat::getInstance(LLSD())->getChild<LLCheckBoxCtrl>("translate chat")->set(translate_chat); | ||
467 | } | ||
468 | |||
469 | BOOL checkStringInText(const std::string &text_line, std::string textToMatch) | 447 | BOOL checkStringInText(const std::string &text_line, std::string textToMatch) |
470 | { | 448 | { |
471 | boost::smatch what; | 449 | boost::smatch what; |
diff --git a/linden/indra/newview/llfloaterchat.h b/linden/indra/newview/llfloaterchat.h index f8683b9..14c2242 100644 --- a/linden/indra/newview/llfloaterchat.h +++ b/linden/indra/newview/llfloaterchat.h | |||
@@ -66,7 +66,6 @@ public: | |||
66 | virtual void onVisibilityChange(BOOL cur_visibility); | 66 | virtual void onVisibilityChange(BOOL cur_visibility); |
67 | virtual void setMinimized(BOOL); | 67 | virtual void setMinimized(BOOL); |
68 | void updateConsoleVisibility(); | 68 | void updateConsoleVisibility(); |
69 | void updateSettings(); | ||
70 | 69 | ||
71 | static void setHistoryCursorAndScrollToEnd(); | 70 | static void setHistoryCursorAndScrollToEnd(); |
72 | 71 | ||
@@ -82,7 +81,6 @@ public: | |||
82 | 81 | ||
83 | static void onClickMute(void *data); | 82 | static void onClickMute(void *data); |
84 | static void onClickToggleShowMute(LLUICtrl* caller, void *data); | 83 | static void onClickToggleShowMute(LLUICtrl* caller, void *data); |
85 | static void onClickToggleTranslateChat(LLUICtrl* caller, void *data); | ||
86 | static void onClickToggleActiveSpeakers(void* userdata); | 84 | static void onClickToggleActiveSpeakers(void* userdata); |
87 | static void chatFromLogFile(LLLogChat::ELogLineType type,std::string line, void* userdata); | 85 | static void chatFromLogFile(LLLogChat::ELogLineType type,std::string line, void* userdata); |
88 | static void loadHistory(); | 86 | static void loadHistory(); |
diff --git a/linden/indra/newview/llprefschat.cpp b/linden/indra/newview/llprefschat.cpp index 1cdab46..dd4df42 100644 --- a/linden/indra/newview/llprefschat.cpp +++ b/linden/indra/newview/llprefschat.cpp | |||
@@ -111,8 +111,6 @@ BOOL LLPrefsChatImpl::postBuild() | |||
111 | childSetValue("toggle_channel_control", gSavedSettings.getBOOL("ChatChannelSelect")); | 111 | childSetValue("toggle_channel_control", gSavedSettings.getBOOL("ChatChannelSelect")); |
112 | childSetValue("console_opacity", gSavedSettings.getF32("ConsoleBackgroundOpacity")); | 112 | childSetValue("console_opacity", gSavedSettings.getF32("ConsoleBackgroundOpacity")); |
113 | childSetValue("bubble_chat_opacity", gSavedSettings.getF32("ChatBubbleOpacity")); | 113 | childSetValue("bubble_chat_opacity", gSavedSettings.getF32("ChatBubbleOpacity")); |
114 | childSetValue("translate_language_combobox", gSavedSettings.getString("TranslateLanguage")); | ||
115 | childSetValue("translate_chat", gSavedSettings.getBOOL("TranslateChat")); | ||
116 | 114 | ||
117 | mChatChannel = gSavedSettings.getBOOL("ChatChannelSelect"); | 115 | mChatChannel = gSavedSettings.getBOOL("ChatChannelSelect"); |
118 | 116 | ||
@@ -205,8 +203,6 @@ void LLPrefsChatImpl::apply() | |||
205 | gSavedSettings.setF32("ConsoleBackgroundOpacity", childGetValue("console_opacity").asReal()); | 203 | gSavedSettings.setF32("ConsoleBackgroundOpacity", childGetValue("console_opacity").asReal()); |
206 | gSavedSettings.setF32("ChatBubbleOpacity", childGetValue("bubble_chat_opacity").asReal()); | 204 | gSavedSettings.setF32("ChatBubbleOpacity", childGetValue("bubble_chat_opacity").asReal()); |
207 | 205 | ||
208 | gSavedSettings.setString("TranslateLanguage", childGetValue("translate_language_combobox")); | ||
209 | gSavedSettings.setBOOL("TranslateChat", childGetValue("translate_chat")); | ||
210 | 206 | ||
211 | bool chan_check = childGetValue("toggle_channel_control"); | 207 | bool chan_check = childGetValue("toggle_channel_control"); |
212 | gSavedSettings.setBOOL("ChatChannelSelect", chan_check); | 208 | gSavedSettings.setBOOL("ChatChannelSelect", chan_check); |
diff --git a/linden/indra/newview/llviewercontrol.cpp b/linden/indra/newview/llviewercontrol.cpp index 59d766f..016646e 100644 --- a/linden/indra/newview/llviewercontrol.cpp +++ b/linden/indra/newview/llviewercontrol.cpp | |||
@@ -511,19 +511,6 @@ bool handleVoiceClientPrefsChanged(const LLSD& newvalue) | |||
511 | return true; | 511 | return true; |
512 | } | 512 | } |
513 | 513 | ||
514 | bool handleTranslateChatPrefsChanged(const LLSD& newvalue) | ||
515 | { | ||
516 | LLFloaterChat* floaterp = LLFloaterChat::getInstance(); | ||
517 | |||
518 | if(floaterp) | ||
519 | { | ||
520 | // update "translate chat" pref in "Local Chat" floater | ||
521 | floaterp->updateSettings(); | ||
522 | } | ||
523 | return true; | ||
524 | } | ||
525 | |||
526 | |||
527 | bool handleSliderScrollWheelMultiplierChanged(const LLSD& newvalue) | 514 | bool handleSliderScrollWheelMultiplierChanged(const LLSD& newvalue) |
528 | { | 515 | { |
529 | LLSlider::setScrollWheelMultiplier( newvalue.asInteger() ); | 516 | LLSlider::setScrollWheelMultiplier( newvalue.asInteger() ); |
@@ -675,7 +662,6 @@ void settings_setup_listeners() | |||
675 | gSavedSettings.getControl("AudioLevelMic")->getSignal()->connect(boost::bind(&handleVoiceClientPrefsChanged, _1)); | 662 | gSavedSettings.getControl("AudioLevelMic")->getSignal()->connect(boost::bind(&handleVoiceClientPrefsChanged, _1)); |
676 | gSavedSettings.getControl("LipSyncEnabled")->getSignal()->connect(boost::bind(&handleVoiceClientPrefsChanged, _1)); | 663 | gSavedSettings.getControl("LipSyncEnabled")->getSignal()->connect(boost::bind(&handleVoiceClientPrefsChanged, _1)); |
677 | gSavedSettings.getControl("SliderScrollWheelMultiplier")->getSignal()->connect(boost::bind(&handleSliderScrollWheelMultiplierChanged, _1)); | 664 | gSavedSettings.getControl("SliderScrollWheelMultiplier")->getSignal()->connect(boost::bind(&handleSliderScrollWheelMultiplierChanged, _1)); |
678 | gSavedSettings.getControl("TranslateChat")->getSignal()->connect(boost::bind(&handleTranslateChatPrefsChanged, _1)); | ||
679 | } | 665 | } |
680 | 666 | ||
681 | template <> eControlType get_control_type<U32>(const U32& in, LLSD& out) | 667 | template <> eControlType get_control_type<U32>(const U32& in, LLSD& out) |
diff --git a/linden/indra/newview/llviewermessage.cpp b/linden/indra/newview/llviewermessage.cpp index cbcfb86..f0c7c0c 100755 --- a/linden/indra/newview/llviewermessage.cpp +++ b/linden/indra/newview/llviewermessage.cpp | |||
@@ -139,7 +139,6 @@ | |||
139 | #include "llfloaterworldmap.h" | 139 | #include "llfloaterworldmap.h" |
140 | #include "llviewerdisplay.h" | 140 | #include "llviewerdisplay.h" |
141 | #include "llkeythrottle.h" | 141 | #include "llkeythrottle.h" |
142 | #include "lltranslate.h" | ||
143 | 142 | ||
144 | #include "panelradarentry.h" | 143 | #include "panelradarentry.h" |
145 | 144 | ||
@@ -2805,52 +2804,6 @@ void process_decline_callingcard(LLMessageSystem* msg, void**) | |||
2805 | LLNotifications::instance().add("CallingCardDeclined"); | 2804 | LLNotifications::instance().add("CallingCardDeclined"); |
2806 | } | 2805 | } |
2807 | 2806 | ||
2808 | class ChatTranslationReceiver : public LLTranslate::TranslationReceiver | ||
2809 | { | ||
2810 | public : | ||
2811 | ChatTranslationReceiver(const std::string &fromLang, const std::string &toLang, const LLChat &chat, | ||
2812 | const std::string &orig_mesg, const BOOL history) | ||
2813 | : LLTranslate::TranslationReceiver(fromLang, toLang), | ||
2814 | m_chat(chat), | ||
2815 | m_origMesg(orig_mesg), | ||
2816 | m_history(history) | ||
2817 | { | ||
2818 | } | ||
2819 | |||
2820 | static boost::intrusive_ptr<ChatTranslationReceiver> build(const std::string &fromLang, const std::string &toLang, const LLChat &chat, const std::string &orig_mesg, const BOOL history) | ||
2821 | { | ||
2822 | return boost::intrusive_ptr<ChatTranslationReceiver>(new ChatTranslationReceiver(fromLang, toLang, chat, orig_mesg, history)); | ||
2823 | } | ||
2824 | |||
2825 | protected: | ||
2826 | void handleResponse(const std::string &translation, const std::string &detected_language) | ||
2827 | { | ||
2828 | // filter out non-interesting responeses | ||
2829 | if ( !translation.empty() | ||
2830 | && (m_toLang != detected_language) | ||
2831 | && (LLStringUtil::compareInsensitive(translation, m_origMesg) != 0) ) | ||
2832 | { | ||
2833 | m_chat.mText += " (" + translation + ")"; | ||
2834 | } | ||
2835 | |||
2836 | add_floater_chat(m_chat, m_history); | ||
2837 | } | ||
2838 | |||
2839 | void handleFailure() | ||
2840 | { | ||
2841 | LLTranslate::TranslationReceiver::handleFailure(); | ||
2842 | |||
2843 | m_chat.mText += " (?)"; | ||
2844 | |||
2845 | add_floater_chat(m_chat, m_history); | ||
2846 | } | ||
2847 | |||
2848 | private: | ||
2849 | LLChat m_chat; | ||
2850 | std::string m_origMesg; | ||
2851 | const BOOL m_history; | ||
2852 | }; | ||
2853 | |||
2854 | void add_floater_chat(const LLChat &chat, const BOOL history) | 2807 | void add_floater_chat(const LLChat &chat, const BOOL history) |
2855 | { | 2808 | { |
2856 | if (history) | 2809 | if (history) |
@@ -2865,26 +2818,6 @@ void add_floater_chat(const LLChat &chat, const BOOL history) | |||
2865 | } | 2818 | } |
2866 | } | 2819 | } |
2867 | 2820 | ||
2868 | void check_translate_chat(const std::string &mesg, const LLChat &chat, const BOOL history) | ||
2869 | { | ||
2870 | const bool translate = gSavedSettings.getBOOL("TranslateChat"); | ||
2871 | |||
2872 | if (translate && chat.mSourceType != CHAT_SOURCE_SYSTEM) | ||
2873 | { | ||
2874 | // fromLang hardcoded to "" (autodetection) pending implementation of | ||
2875 | // SVC-4879 | ||
2876 | const std::string &fromLang = ""; | ||
2877 | const std::string &toLang = LLTranslate::getTranslateLanguage(); | ||
2878 | |||
2879 | LLHTTPClient::ResponderPtr result = ChatTranslationReceiver::build(fromLang, toLang, chat, mesg, history); | ||
2880 | LLTranslate::translateMessage(result, fromLang, toLang, mesg); | ||
2881 | } | ||
2882 | else | ||
2883 | { | ||
2884 | add_floater_chat(chat, history); | ||
2885 | } | ||
2886 | } | ||
2887 | |||
2888 | void process_chat_from_simulator(LLMessageSystem *msg, void **user_data) | 2821 | void process_chat_from_simulator(LLMessageSystem *msg, void **user_data) |
2889 | { | 2822 | { |
2890 | LLChat chat; | 2823 | LLChat chat; |
@@ -3304,12 +3237,12 @@ void process_chat_from_simulator(LLMessageSystem *msg, void **user_data) | |||
3304 | && (is_linden || !is_busy || is_owned_by_me)) | 3237 | && (is_linden || !is_busy || is_owned_by_me)) |
3305 | { | 3238 | { |
3306 | // show on screen and add to history | 3239 | // show on screen and add to history |
3307 | check_translate_chat(mesg, chat, FALSE); | 3240 | add_floater_chat(chat, FALSE); |
3308 | } | 3241 | } |
3309 | else | 3242 | else |
3310 | { | 3243 | { |
3311 | // just add to chat history | 3244 | // just add to chat history |
3312 | check_translate_chat(mesg, chat, TRUE); | 3245 | add_floater_chat(chat, TRUE); |
3313 | } | 3246 | } |
3314 | } | 3247 | } |
3315 | } | 3248 | } |
diff --git a/linden/indra/newview/llviewermessage.h b/linden/indra/newview/llviewermessage.h index 11a3554..0201ce4 100644 --- a/linden/indra/newview/llviewermessage.h +++ b/linden/indra/newview/llviewermessage.h | |||
@@ -76,7 +76,6 @@ void process_script_question(LLMessageSystem *msg, void **user_data); | |||
76 | void process_chat_from_simulator(LLMessageSystem *mesgsys, void **user_data); | 76 | void process_chat_from_simulator(LLMessageSystem *mesgsys, void **user_data); |
77 | 77 | ||
78 | void add_floater_chat(const LLChat &chat, const BOOL history); | 78 | void add_floater_chat(const LLChat &chat, const BOOL history); |
79 | void check_translate_chat(const std::string &mesg, const LLChat &chat, const BOOL history); | ||
80 | 79 | ||
81 | //void process_agent_to_new_region(LLMessageSystem *mesgsys, void **user_data); | 80 | //void process_agent_to_new_region(LLMessageSystem *mesgsys, void **user_data); |
82 | void send_agent_update(BOOL force_send, BOOL send_reliable = FALSE); | 81 | void send_agent_update(BOOL force_send, BOOL send_reliable = FALSE); |
diff --git a/linden/indra/newview/llwldaycycle.cpp b/linden/indra/newview/llwldaycycle.cpp index 1d17c60..07ac2a4 100644 --- a/linden/indra/newview/llwldaycycle.cpp +++ b/linden/indra/newview/llwldaycycle.cpp | |||
@@ -51,9 +51,6 @@ LLWLDayCycle::~LLWLDayCycle() | |||
51 | 51 | ||
52 | void LLWLDayCycle::loadDayCycle(const std::string & fileName) | 52 | void LLWLDayCycle::loadDayCycle(const std::string & fileName) |
53 | { | 53 | { |
54 | // clear the first few things | ||
55 | mTimeMap.clear(); | ||
56 | |||
57 | // now load the file | 54 | // now load the file |
58 | std::string pathName(gDirUtilp->getExpandedFilename(LL_PATH_APP_SETTINGS, | 55 | std::string pathName(gDirUtilp->getExpandedFilename(LL_PATH_APP_SETTINGS, |
59 | "windlight/days", fileName)); | 56 | "windlight/days", fileName)); |
@@ -62,6 +59,9 @@ void LLWLDayCycle::loadDayCycle(const std::string & fileName) | |||
62 | llifstream day_cycle_xml(pathName); | 59 | llifstream day_cycle_xml(pathName); |
63 | if (day_cycle_xml.is_open()) | 60 | if (day_cycle_xml.is_open()) |
64 | { | 61 | { |
62 | // clear the first few things | ||
63 | mTimeMap.clear(); | ||
64 | |||
65 | // load and parse it | 65 | // load and parse it |
66 | LLSD day_data(LLSD::emptyArray()); | 66 | LLSD day_data(LLSD::emptyArray()); |
67 | LLPointer<LLSDParser> parser = new LLSDXMLParser(); | 67 | LLPointer<LLSDParser> parser = new LLSDXMLParser(); |
diff --git a/linden/indra/newview/skins/default/xui/en-us/floater_chat_history.xml b/linden/indra/newview/skins/default/xui/en-us/floater_chat_history.xml index e83a930..b0e70b7 100644 --- a/linden/indra/newview/skins/default/xui/en-us/floater_chat_history.xml +++ b/linden/indra/newview/skins/default/xui/en-us/floater_chat_history.xml | |||
@@ -78,9 +78,6 @@ | |||
78 | <check_box bottom_delta="7" enabled="true" follows="left|top" font="SansSerifSmall" | 78 | <check_box bottom_delta="7" enabled="true" follows="left|top" font="SansSerifSmall" |
79 | height="20" initial_value="false" label="Show muted text" left_delta="125" | 79 | height="20" initial_value="false" label="Show muted text" left_delta="125" |
80 | name="show mutes" radio_style="false" width="116" /> | 80 | name="show mutes" radio_style="false" width="116" /> |
81 | <check_box bottom_delta="-15" enabled="true" follows="left|top" font="SansSerifSmall" | ||
82 | height="20" initial_value="false" label="Translate chat (powered by Google)" left_delta="0" | ||
83 | name="translate chat" radio_style="false" width="100" /> | ||
84 | <button name="toggle_active_speakers_btn" | 81 | <button name="toggle_active_speakers_btn" |
85 | label="<<" label_selected=">>" follows="right|top" | 82 | label="<<" label_selected=">>" follows="right|top" |
86 | bottom_delta="0" left="262" right="305" height="20" | 83 | bottom_delta="0" left="262" right="305" height="20" |
diff --git a/linden/indra/newview/skins/default/xui/en-us/panel_preferences_chat.xml b/linden/indra/newview/skins/default/xui/en-us/panel_preferences_chat.xml index cf947ee..62a031c 100644 --- a/linden/indra/newview/skins/default/xui/en-us/panel_preferences_chat.xml +++ b/linden/indra/newview/skins/default/xui/en-us/panel_preferences_chat.xml | |||
@@ -192,10 +192,10 @@ USE left="270" FOR TABBING OPTIONS | |||
192 | </panel> | 192 | </panel> |
193 | 193 | ||
194 | 194 | ||
195 | <!-- SPELL CHECKING AND TRANSLATE PANEL --> | 195 | <!-- SPELL CHECKING PANEL --> |
196 | 196 | ||
197 | 197 | ||
198 | <panel border="true" bottom="-580" follows="left|top|right|bottom" height="525" label="Spell Checking & Translate" | 198 | <panel border="true" bottom="-580" follows="left|top|right|bottom" height="525" label="Spell Checking" |
199 | left="1" mouse_opaque="true" name="spell_check_tab" width="418"> | 199 | left="1" mouse_opaque="true" name="spell_check_tab" width="418"> |
200 | 200 | ||
201 | 201 | ||
@@ -258,84 +258,6 @@ USE left="270" FOR TABBING OPTIONS | |||
258 | height="1" left="55" name="border" width="380" /> | 258 | height="1" left="55" name="border" width="380" /> |
259 | 259 | ||
260 | 260 | ||
261 | <text type="string" length="1" bg_visible="false" border_drop_shadow_visible="false" border_visible="false" | ||
262 | bottom_delta="-20" drop_shadow_visible="true" enabled="true" follows="left|top" font-style="BOLD|SHADOW" | ||
263 | font="SansSerifSmall" h_pad="0" halign="left" height="10" left="20" | ||
264 | mouse_opaque="false" name="text_translate" v_pad="0" width="128"> | ||
265 | Translate Chat: | ||
266 | </text> | ||
267 | <check_box bottom_delta="-25" control_name="TranslateChat" enabled="true" follows="left|top" | ||
268 | font="SansSerifSmall" height="16" initial_value="false" | ||
269 | label="Use machine translation while chatting (powered by Google)" left_delta="30" mouse_opaque="true" | ||
270 | name="translate_chat" radio_style="false" width="237" /> | ||
271 | |||
272 | <text type="string" length="1" bg_visible="false" border_drop_shadow_visible="false" border_visible="false" | ||
273 | bottom_delta="-16" drop_shadow_visible="true" enabled="true" follows="left|top" | ||
274 | font="SansSerifSmall" h_pad="0" halign="left" height="10" left_delta="0" | ||
275 | mouse_opaque="false" name="text_translate_chat" v_pad="0" width="160"> | ||
276 | Translate into this language: | ||
277 | </text> | ||
278 | |||
279 | <combo_box allow_text_entry="false" bottom_delta="-5" enabled="true" | ||
280 | follows="left|top" height="16" left="270" max_chars="135" | ||
281 | mouse_opaque="true" name="translate_language_combobox" width="160"> | ||
282 | <combo_item type="string" length="1" enabled="true" name="System Default Language" value="default"> | ||
283 | System Default | ||
284 | </combo_item> | ||
285 | <combo_item type="string" length="1" enabled="true" name="English" value="en"> | ||
286 | English | ||
287 | </combo_item> | ||
288 | |||
289 | <!-- After "System Default" and "English", please keep the rest of these combo_items in alphabetical order by the first character in the string. --> | ||
290 | |||
291 | <combo_item type="string" length="1" enabled="true" name="Danish" value="da"> | ||
292 | Dansk (Danish) | ||
293 | </combo_item> | ||
294 | <combo_item type="string" length="1" enabled="true" name="Deutsch(German)" value="de"> | ||
295 | Deutsch (German) | ||
296 | </combo_item> | ||
297 | <combo_item type="string" length="1" enabled="true" name="Spanish" value="es"> | ||
298 | Español (Spanish) | ||
299 | </combo_item> | ||
300 | <combo_item type="string" length="1" enabled="true" name="French" value="fr"> | ||
301 | Français (French) | ||
302 | </combo_item> | ||
303 | <combo_item type="string" length="1" enabled="true" name="Italian" value="it"> | ||
304 | Italiano (Italian) | ||
305 | </combo_item> | ||
306 | <combo_item type="string" length="1" enabled="true" name="Hungarian" value="hu"> | ||
307 | Magyar (Hungarian) | ||
308 | </combo_item> | ||
309 | <combo_item type="string" length="1" enabled="true" name="Dutch" value="nl"> | ||
310 | Nederlands (Dutch) | ||
311 | </combo_item> | ||
312 | <combo_item type="string" length="1" enabled="true" name="Polish" value="pl"> | ||
313 | Polski (Polish) | ||
314 | </combo_item> | ||
315 | <combo_item type="string" length="1" enabled="true" name="Portugese" value="pt"> | ||
316 | Portugués (Portuguese) | ||
317 | </combo_item> | ||
318 | <combo_item type="string" length="1" enabled="true" name="Russian" value="ru"> | ||
319 | Русский (Russian) | ||
320 | </combo_item> | ||
321 | <combo_item type="string" length="1" enabled="true" name="Turkish" value="tr"> | ||
322 | Türkçe (Turkish) | ||
323 | </combo_item> | ||
324 | <combo_item type="string" length="1" enabled="true" name="Ukrainian" value="uk"> | ||
325 | Українська (Ukrainian) | ||
326 | </combo_item> | ||
327 | <combo_item type="string" length="1" enabled="true" name="Chinese" value="zh"> | ||
328 | 中文 (简体) (Chinese) | ||
329 | </combo_item> | ||
330 | <combo_item type="string" length="1" enabled="true" name="(Japanese)" value="ja"> | ||
331 | 日本語 (Japanese) | ||
332 | </combo_item> | ||
333 | <combo_item type="string" length="1" enabled="true" name="(Korean)" value="ko"> | ||
334 | 한국어 (Korean) | ||
335 | </combo_item> | ||
336 | </combo_box> | ||
337 | |||
338 | |||
339 | <button bottom="-20" follows="left|top" font="SansSerifSmall" height="18" label="?" | 261 | <button bottom="-20" follows="left|top" font="SansSerifSmall" height="18" label="?" |
340 | name="EmeraldHelp_SpellCheck" tool_tip="Click here for help regarding the settings in this page." | 262 | name="EmeraldHelp_SpellCheck" tool_tip="Click here for help regarding the settings in this page." |
341 | right="490" width="18"/> | 263 | right="490" width="18"/> |