aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden/indra/llui
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--linden/indra/llui/llalertdialog.cpp94
-rw-r--r--linden/indra/llui/llalertdialog.h5
-rw-r--r--linden/indra/llui/llbutton.cpp15
-rw-r--r--linden/indra/llui/llbutton.h29
-rw-r--r--linden/indra/llui/llcallbackmap.h3
-rw-r--r--linden/indra/llui/llcheckboxctrl.cpp7
-rw-r--r--linden/indra/llui/llcheckboxctrl.h7
-rw-r--r--linden/indra/llui/llclipboard.cpp3
-rw-r--r--linden/indra/llui/llclipboard.h3
-rw-r--r--linden/indra/llui/llcombobox.cpp21
-rw-r--r--linden/indra/llui/llcombobox.h9
-rw-r--r--linden/indra/llui/llctrlselectioninterface.cpp3
-rw-r--r--linden/indra/llui/llctrlselectioninterface.h3
-rw-r--r--linden/indra/llui/lldraghandle.cpp3
-rw-r--r--linden/indra/llui/lldraghandle.h3
-rw-r--r--linden/indra/llui/lleditmenuhandler.cpp43
-rw-r--r--linden/indra/llui/lleditmenuhandler.h43
-rw-r--r--linden/indra/llui/llfloater.cpp3
-rw-r--r--linden/indra/llui/llfloater.h3
-rw-r--r--linden/indra/llui/llfocusmgr.cpp3
-rw-r--r--linden/indra/llui/llfocusmgr.h3
-rw-r--r--linden/indra/llui/llhtmlhelp.h3
-rw-r--r--linden/indra/llui/lliconctrl.cpp3
-rw-r--r--linden/indra/llui/lliconctrl.h3
-rw-r--r--linden/indra/llui/llkeywords.cpp3
-rw-r--r--linden/indra/llui/llkeywords.h3
-rw-r--r--linden/indra/llui/lllineeditor.cpp50
-rw-r--r--linden/indra/llui/lllineeditor.h19
-rw-r--r--linden/indra/llui/llmemberlistener.h5
-rw-r--r--linden/indra/llui/llmenugl.cpp15
-rw-r--r--linden/indra/llui/llmenugl.h9
-rw-r--r--linden/indra/llui/llmodaldialog.cpp3
-rw-r--r--linden/indra/llui/llmodaldialog.h3
-rw-r--r--linden/indra/llui/llpanel.cpp13
-rw-r--r--linden/indra/llui/llpanel.h11
-rw-r--r--linden/indra/llui/llradiogroup.cpp3
-rw-r--r--linden/indra/llui/llradiogroup.h3
-rw-r--r--linden/indra/llui/llresizebar.cpp3
-rw-r--r--linden/indra/llui/llresizebar.h3
-rw-r--r--linden/indra/llui/llresizehandle.cpp3
-rw-r--r--linden/indra/llui/llresizehandle.h3
-rw-r--r--linden/indra/llui/llresmgr.cpp3
-rw-r--r--linden/indra/llui/llresmgr.h3
-rw-r--r--linden/indra/llui/llrootview.cpp3
-rw-r--r--linden/indra/llui/llrootview.h3
-rw-r--r--linden/indra/llui/llscrollbar.cpp3
-rw-r--r--linden/indra/llui/llscrollbar.h3
-rw-r--r--linden/indra/llui/llscrollcontainer.cpp3
-rw-r--r--linden/indra/llui/llscrollcontainer.h3
-rw-r--r--linden/indra/llui/llscrollingpanellist.cpp3
-rw-r--r--linden/indra/llui/llscrollingpanellist.h3
-rw-r--r--linden/indra/llui/llscrolllistctrl.cpp46
-rw-r--r--linden/indra/llui/llscrolllistctrl.h13
-rw-r--r--linden/indra/llui/llslider.cpp3
-rw-r--r--linden/indra/llui/llslider.h3
-rw-r--r--linden/indra/llui/llsliderctrl.cpp9
-rw-r--r--linden/indra/llui/llsliderctrl.h7
-rw-r--r--linden/indra/llui/llspinctrl.cpp5
-rw-r--r--linden/indra/llui/llspinctrl.h5
-rw-r--r--linden/indra/llui/llstyle.cpp3
-rw-r--r--linden/indra/llui/llstyle.h3
-rw-r--r--linden/indra/llui/lltabcontainer.cpp3
-rw-r--r--linden/indra/llui/lltabcontainer.h3
-rw-r--r--linden/indra/llui/lltabcontainervertical.cpp3
-rw-r--r--linden/indra/llui/lltabcontainervertical.h3
-rw-r--r--linden/indra/llui/lltextbox.cpp9
-rw-r--r--linden/indra/llui/lltextbox.h9
-rw-r--r--linden/indra/llui/lltexteditor.cpp25
-rw-r--r--linden/indra/llui/lltexteditor.h17
-rw-r--r--linden/indra/llui/llui.cpp3
-rw-r--r--linden/indra/llui/llui.h3
-rw-r--r--linden/indra/llui/lluiconstants.h3
-rw-r--r--linden/indra/llui/lluictrl.cpp7
-rw-r--r--linden/indra/llui/lluictrl.h7
-rw-r--r--linden/indra/llui/lluictrlfactory.cpp6
-rw-r--r--linden/indra/llui/lluictrlfactory.h3
-rw-r--r--linden/indra/llui/lluistring.cpp3
-rw-r--r--linden/indra/llui/lluistring.h3
-rw-r--r--linden/indra/llui/lluixmltags.h177
-rw-r--r--linden/indra/llui/llundo.cpp3
-rw-r--r--linden/indra/llui/llundo.h3
-rw-r--r--linden/indra/llui/llview.cpp26
-rw-r--r--linden/indra/llui/llview.h27
-rw-r--r--linden/indra/llui/llviewborder.cpp3
-rw-r--r--linden/indra/llui/llviewborder.h3
-rw-r--r--linden/indra/llui/llviewquery.cpp3
-rw-r--r--linden/indra/llui/llviewquery.h3
87 files changed, 612 insertions, 340 deletions
diff --git a/linden/indra/llui/llalertdialog.cpp b/linden/indra/llui/llalertdialog.cpp
index 8950fcd..0fa3585 100644
--- a/linden/indra/llui/llalertdialog.cpp
+++ b/linden/indra/llui/llalertdialog.cpp
@@ -2,6 +2,8 @@
2 * @file llalertdialog.cpp 2 * @file llalertdialog.cpp
3 * @brief LLAlertDialog base class 3 * @brief LLAlertDialog base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#include "linden_common.h" 32#include "linden_common.h"
@@ -255,11 +258,9 @@ void LLAlertDialog::createDialog(const std::vector<LLString>* optionsp, S32 defa
255 const S32 LINE_HEIGHT = llfloor(font->getLineHeight() + 0.99f); 258 const S32 LINE_HEIGHT = llfloor(font->getLineHeight() + 0.99f);
256 const S32 EDITOR_HEIGHT = 20; 259 const S32 EDITOR_HEIGHT = 20;
257 260
258 // buttons 261 // Buttons
259 std::vector<LLString> default_option_list; 262 std::vector<LLString> default_option_list;
260
261 mNumOptions = optionsp->size(); 263 mNumOptions = optionsp->size();
262
263 if( 0 == mNumOptions ) 264 if( 0 == mNumOptions )
264 { 265 {
265 default_option_list.push_back("Close"); 266 default_option_list.push_back("Close");
@@ -269,7 +270,6 @@ void LLAlertDialog::createDialog(const std::vector<LLString>* optionsp, S32 defa
269 } 270 }
270 271
271 const std::vector<LLString>& options = *optionsp; 272 const std::vector<LLString>& options = *optionsp;
272
273 mButtonData = new ButtonData[mNumOptions]; 273 mButtonData = new ButtonData[mNumOptions];
274 274
275 // Calc total width of buttons 275 // Calc total width of buttons
@@ -286,55 +286,16 @@ void LLAlertDialog::createDialog(const std::vector<LLString>* optionsp, S32 defa
286 btn_total_width = (mNumOptions * button_width) + ((mNumOptions - 1) * BTN_HPAD); 286 btn_total_width = (mNumOptions * button_width) + ((mNumOptions - 1) * BTN_HPAD);
287 } 287 }
288 288
289 // Split message into lines, separated by '\n' 289 // Message: create text box using raw string, as text has been structure deliberately
290 // Use size of created text box to generate dialog box size
290 LLString msg = msg_in; 291 LLString msg = msg_in;
291 LLAlertDialog::format(msg, args); 292 LLAlertDialog::format( msg, args );
292
293 llwarns << "Alert: " << msg << llendl; 293 llwarns << "Alert: " << msg << llendl;
294 LLTextBox* msg_box = new LLTextBox( "Alert message", msg, (F32)MAX_ALLOWED_MSG_WIDTH, font );
294 295
295 S32 max_msg_width = 0; 296 const LLRect& text_rect = msg_box->getRect();
296 std::vector<LLString> msg_lines; 297 S32 dialog_width = llmax( btn_total_width, text_rect.getWidth() ) + 2 * HPAD;
297 298 S32 dialog_height = text_rect.getHeight() + 3 * VPAD + BTN_HEIGHT;
298 boost_tokenizer tokens(msg, boost::char_separator<char>("\n"));
299 for (boost_tokenizer::iterator token_iter = tokens.begin(); token_iter != tokens.end(); ++token_iter)
300 {
301 LLString line(*token_iter);
302 boost_tokenizer line_toks(line, boost::char_separator<char>(" \t"));
303 LLString cur_line;
304 S32 cur_line_width = 0;
305 for (boost_tokenizer::iterator token_iter2 = line_toks.begin(); token_iter2 != line_toks.end(); ++token_iter2)
306 {
307 LLString tok(*token_iter2);
308 LLString word;
309 if (cur_line_width > 0)
310 {
311 word = " ";
312 }
313 word += tok;
314 S32 word_width = S32(font->getWidth( word ) + 0.99f);
315 if (cur_line_width > 0 && cur_line_width + word_width > MAX_ALLOWED_MSG_WIDTH)
316 {
317 max_msg_width = llmax( max_msg_width, cur_line_width + MSG_PAD);
318 msg_lines.push_back( cur_line );
319 cur_line.clear();
320 cur_line_width = 0;
321 word = tok; // no ' '
322 }
323 cur_line += word;
324 cur_line_width += word_width;
325 }
326 if (cur_line_width > 0)
327 {
328 max_msg_width = llmax( max_msg_width, cur_line_width );
329 msg_lines.push_back( cur_line );
330 }
331 }
332
333 // pad message box so we don't clip last character
334 max_msg_width += 2;
335
336 S32 dialog_width = llmax( btn_total_width, max_msg_width ) + 2 * HPAD;
337 S32 dialog_height = LINE_HEIGHT * msg_lines.size() + 3 * VPAD + BTN_HEIGHT;
338 299
339 if (hasTitleBar()) 300 if (hasTitleBar())
340 { 301 {
@@ -346,26 +307,20 @@ void LLAlertDialog::createDialog(const std::vector<LLString>* optionsp, S32 defa
346 dialog_width = llmax(dialog_width, S32(font->getWidth( edit_text ) + 0.99f)); 307 dialog_width = llmax(dialog_width, S32(font->getWidth( edit_text ) + 0.99f));
347 dialog_height += EDITOR_HEIGHT; 308 dialog_height += EDITOR_HEIGHT;
348 } 309 }
349 310
350 reshape( dialog_width, dialog_height, FALSE ); 311 reshape( dialog_width, dialog_height, FALSE );
351 312
352 // Message 313 S32 msg_y = mRect.getHeight() - VPAD;
353 S32 msg_x = (mRect.getWidth() - max_msg_width) / 2;
354 S32 msg_y = mRect.getHeight() - VPAD - LINE_HEIGHT;
355 if (hasTitleBar()) 314 if (hasTitleBar())
356 { 315 {
357 msg_y -= LINE_HEIGHT; // room for title 316 msg_y -= LINE_HEIGHT; // room for title
358 } 317 }
359 318
360 for( std::vector<LLString>::iterator iter = msg_lines.begin(); iter != msg_lines.end(); ++iter ) 319 LLRect rect;
361 { 320 rect.setLeftTopAndSize( HPAD, msg_y, text_rect.getWidth(), text_rect.getHeight() );
362 LLRect msg_rect; 321 msg_box->setRect( rect );
363 msg_rect.setOriginAndSize( msg_x, msg_y, max_msg_width, LINE_HEIGHT ); 322 msg_box->setColor( LLUI::sColorsGroup->getColor( "LabelTextColor" ) );
364 LLTextBox* label_box = new LLTextBox( "Alert message", msg_rect, iter->c_str(), font ); 323 addChild(msg_box);
365 label_box->setColor( LLUI::sColorsGroup->getColor( "LabelTextColor" ) );
366 addChild(label_box);
367 msg_y -= LINE_HEIGHT;
368 }
369 324
370 // Buttons 325 // Buttons
371 S32 button_left = (mRect.getWidth() - btn_total_width) / 2; 326 S32 button_left = (mRect.getWidth() - btn_total_width) / 2;
@@ -386,7 +341,7 @@ void LLAlertDialog::createDialog(const std::vector<LLString>* optionsp, S32 defa
386 mButtonData[i].mSelf = this; 341 mButtonData[i].mSelf = this;
387 mButtonData[i].mButton = btn; 342 mButtonData[i].mButton = btn;
388 mButtonData[i].mOption = i; 343 mButtonData[i].mOption = i;
389 344
390 addChild(btn); 345 addChild(btn);
391 346
392 if( i == default_option ) 347 if( i == default_option )
@@ -402,13 +357,12 @@ void LLAlertDialog::createDialog(const std::vector<LLString>* optionsp, S32 defa
402 { 357 {
403 S32 y = VPAD + BTN_HEIGHT + VPAD/2; 358 S32 y = VPAD + BTN_HEIGHT + VPAD/2;
404 mLineEditor = new LLLineEditor("lineeditor", 359 mLineEditor = new LLLineEditor("lineeditor",
405 LLRect( HPAD, y+EDITOR_HEIGHT, dialog_width-HPAD, y), 360 LLRect( HPAD, y+EDITOR_HEIGHT, dialog_width-HPAD, y),
406 edit_text, 361 edit_text,
407 LLFontGL::sSansSerif, 362 LLFontGL::sSansSerif,
408 STD_STRING_STR_LEN); 363 STD_STRING_STR_LEN);
409 addChild(mLineEditor); 364 addChild(mLineEditor);
410 } 365 }
411
412} 366}
413 367
414bool LLAlertDialog::setCheckBox( const LLString& check_title, const LLString& check_control ) 368bool LLAlertDialog::setCheckBox( const LLString& check_title, const LLString& check_control )
diff --git a/linden/indra/llui/llalertdialog.h b/linden/indra/llui/llalertdialog.h
index 1add4a4..acd0b7f 100644
--- a/linden/indra/llui/llalertdialog.h
+++ b/linden/indra/llui/llalertdialog.h
@@ -2,6 +2,8 @@
2 * @file llalertdialog.h 2 * @file llalertdialog.h
3 * @brief LLAlertDialog base class 3 * @brief LLAlertDialog base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#ifndef LL_ALERTDIALOG_H 32#ifndef LL_ALERTDIALOG_H
@@ -139,7 +142,7 @@ public:
139class LLAlertDialogTemplate : public LLRefCount 142class LLAlertDialogTemplate : public LLRefCount
140{ 143{
141public: 144public:
142 LLAlertDialogTemplate() : mTitle(""), mModal(FALSE), mUnique(FALSE), mIgnorable(0), mDefaultOption(0) {} 145 LLAlertDialogTemplate() : mTitle(), mModal(FALSE), mUnique(FALSE), mIgnorable(0), mDefaultOption(0) {}
143 146
144 void addOption(const LLString& label, const LLString& ignore_text, BOOL is_default = FALSE) 147 void addOption(const LLString& label, const LLString& ignore_text, BOOL is_default = FALSE)
145 { 148 {
diff --git a/linden/indra/llui/llbutton.cpp b/linden/indra/llui/llbutton.cpp
index 6ed6885..65cbcf3 100644
--- a/linden/indra/llui/llbutton.cpp
+++ b/linden/indra/llui/llbutton.cpp
@@ -2,6 +2,8 @@
2 * @file llbutton.cpp 2 * @file llbutton.cpp
3 * @brief LLButton base class 3 * @brief LLButton base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#include "linden_common.h" 32#include "linden_common.h"
@@ -773,36 +776,36 @@ LLSD LLButton::getValue() const
773 return mToggleState; 776 return mToggleState;
774} 777}
775 778
776void LLButton::setLabel( const LLString& label ) 779void LLButton::setLabel( const LLStringExplicit& label )
777{ 780{
778 setLabelUnselected(label); 781 setLabelUnselected(label);
779 setLabelSelected(label); 782 setLabelSelected(label);
780} 783}
781 784
782//virtual 785//virtual
783BOOL LLButton::setLabelArg( const LLString& key, const LLString& text ) 786BOOL LLButton::setLabelArg( const LLString& key, const LLStringExplicit& text )
784{ 787{
785 mUnselectedLabel.setArg(key, text); 788 mUnselectedLabel.setArg(key, text);
786 mSelectedLabel.setArg(key, text); 789 mSelectedLabel.setArg(key, text);
787 return TRUE; 790 return TRUE;
788} 791}
789 792
790void LLButton::setLabelUnselected( const LLString& label ) 793void LLButton::setLabelUnselected( const LLStringExplicit& label )
791{ 794{
792 mUnselectedLabel = label; 795 mUnselectedLabel = label;
793} 796}
794 797
795void LLButton::setLabelSelected( const LLString& label ) 798void LLButton::setLabelSelected( const LLStringExplicit& label )
796{ 799{
797 mSelectedLabel = label; 800 mSelectedLabel = label;
798} 801}
799 802
800void LLButton::setDisabledLabel( const LLString& label ) 803void LLButton::setDisabledLabel( const LLStringExplicit& label )
801{ 804{
802 mDisabledLabel = label; 805 mDisabledLabel = label;
803} 806}
804 807
805void LLButton::setDisabledSelectedLabel( const LLString& label ) 808void LLButton::setDisabledSelectedLabel( const LLStringExplicit& label )
806{ 809{
807 mDisabledSelectedLabel = label; 810 mDisabledSelectedLabel = label;
808} 811}
diff --git a/linden/indra/llui/llbutton.h b/linden/indra/llui/llbutton.h
index d26011b..5f7d917 100644
--- a/linden/indra/llui/llbutton.h
+++ b/linden/indra/llui/llbutton.h
@@ -2,6 +2,8 @@
2 * @file llbutton.h 2 * @file llbutton.h
3 * @brief Header for buttons 3 * @brief Header for buttons
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#ifndef LL_LLBUTTON_H 32#ifndef LL_LLBUTTON_H
@@ -65,7 +68,7 @@ class LLButton
65{ 68{
66public: 69public:
67 // simple button with text label 70 // simple button with text label
68 LLButton(const LLString& name, const LLRect &rect, const LLString& control_name = "", 71 LLButton(const LLString& name, const LLRect &rect, const LLString& control_name = LLString(),
69 void (*on_click)(void*) = NULL, void *data = NULL); 72 void (*on_click)(void*) = NULL, void *data = NULL);
70 73
71 LLButton(const LLString& name, const LLRect& rect, 74 LLButton(const LLString& name, const LLRect& rect,
@@ -149,12 +152,12 @@ public:
149 virtual void setValue(const LLSD& value ); 152 virtual void setValue(const LLSD& value );
150 virtual LLSD getValue() const; 153 virtual LLSD getValue() const;
151 154
152 void setLabel( const LLString& label); 155 void setLabel( const LLStringExplicit& label);
153 virtual BOOL setLabelArg( const LLString& key, const LLString& text ); 156 virtual BOOL setLabelArg( const LLString& key, const LLStringExplicit& text );
154 void setLabelUnselected(const LLString& label); 157 void setLabelUnselected(const LLStringExplicit& label);
155 void setLabelSelected(const LLString& label); 158 void setLabelSelected(const LLStringExplicit& label);
156 void setDisabledLabel(const LLString& disabled_label); 159 void setDisabledLabel(const LLStringExplicit& disabled_label);
157 void setDisabledSelectedLabel(const LLString& disabled_label); 160 void setDisabledSelectedLabel(const LLStringExplicit& disabled_label);
158 void setDisabledLabelColor( const LLColor4& c ) { mDisabledLabelColor = c; } 161 void setDisabledLabelColor( const LLColor4& c ) { mDisabledLabelColor = c; }
159 162
160 void setFont(const LLFontGL *font) 163 void setFont(const LLFontGL *font)
@@ -285,12 +288,12 @@ class LLSquareButton
285{ 288{
286public: 289public:
287 LLSquareButton(const LLString& name, const LLRect& rect, 290 LLSquareButton(const LLString& name, const LLRect& rect,
288 const LLString& label, 291 const LLString& label,
289 const LLFontGL *font = NULL, 292 const LLFontGL *font = NULL,
290 const LLString& control_name = "", 293 const LLString& control_name = LLString(),
291 void (*click_callback)(void*) = NULL, 294 void (*click_callback)(void*) = NULL,
292 void *callback_data = NULL, 295 void *callback_data = NULL,
293 const LLString& selected_label = LLString::null ); 296 const LLString& selected_label = LLString::null );
294}; 297};
295 298
296// Helpful functions 299// Helpful functions
diff --git a/linden/indra/llui/llcallbackmap.h b/linden/indra/llui/llcallbackmap.h
index 4a47f60..0efda5d 100644
--- a/linden/indra/llui/llcallbackmap.h
+++ b/linden/indra/llui/llcallbackmap.h
@@ -2,6 +2,8 @@
2 * @file llcallbackmap.h 2 * @file llcallbackmap.h
3 * @brief LLCallbackMap base class 3 * @brief LLCallbackMap base class
4 * 4 *
5 * $LicenseInfo:firstyear=2006&license=viewergpl$
6 *
5 * Copyright (c) 2006-2007, Linden Research, Inc. 7 * Copyright (c) 2006-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29// llcallbackmap.h 32// llcallbackmap.h
diff --git a/linden/indra/llui/llcheckboxctrl.cpp b/linden/indra/llui/llcheckboxctrl.cpp
index f49e220..504b342 100644
--- a/linden/indra/llui/llcheckboxctrl.cpp
+++ b/linden/indra/llui/llcheckboxctrl.cpp
@@ -2,6 +2,8 @@
2 * @file llcheckboxctrl.cpp 2 * @file llcheckboxctrl.cpp
3 * @brief LLCheckBoxCtrl base class 3 * @brief LLCheckBoxCtrl base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29// The mutants are coming! 32// The mutants are coming!
@@ -239,7 +242,7 @@ LLSD LLCheckBoxCtrl::getValue() const
239 return mButton->getToggleState(); 242 return mButton->getToggleState();
240} 243}
241 244
242void LLCheckBoxCtrl::setLabel( const LLString& label ) 245void LLCheckBoxCtrl::setLabel( const LLStringExplicit& label )
243{ 246{
244 mLabel->setText( label ); 247 mLabel->setText( label );
245 reshape(getRect().getWidth(), getRect().getHeight(), FALSE); 248 reshape(getRect().getWidth(), getRect().getHeight(), FALSE);
@@ -250,7 +253,7 @@ LLString LLCheckBoxCtrl::getLabel() const
250 return mLabel->getText(); 253 return mLabel->getText();
251} 254}
252 255
253BOOL LLCheckBoxCtrl::setLabelArg( const LLString& key, const LLString& text ) 256BOOL LLCheckBoxCtrl::setLabelArg( const LLString& key, const LLStringExplicit& text )
254{ 257{
255 BOOL res = mLabel->setTextArg(key, text); 258 BOOL res = mLabel->setTextArg(key, text);
256 reshape(getRect().getWidth(), getRect().getHeight(), FALSE); 259 reshape(getRect().getWidth(), getRect().getHeight(), FALSE);
diff --git a/linden/indra/llui/llcheckboxctrl.h b/linden/indra/llui/llcheckboxctrl.h
index 6aa7113..513b293 100644
--- a/linden/indra/llui/llcheckboxctrl.h
+++ b/linden/indra/llui/llcheckboxctrl.h
@@ -2,6 +2,8 @@
2 * @file llcheckboxctrl.h 2 * @file llcheckboxctrl.h
3 * @brief LLCheckBoxCtrl base class 3 * @brief LLCheckBoxCtrl base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#ifndef LL_LLCHECKBOXCTRL_H 32#ifndef LL_LLCHECKBOXCTRL_H
@@ -91,7 +94,7 @@ public:
91 virtual void setTentative(BOOL b) { mButton->setTentative(b); } 94 virtual void setTentative(BOOL b) { mButton->setTentative(b); }
92 virtual BOOL getTentative() const { return mButton->getTentative(); } 95 virtual BOOL getTentative() const { return mButton->getTentative(); }
93 96
94 virtual BOOL setLabelArg( const LLString& key, const LLString& text ); 97 virtual BOOL setLabelArg( const LLString& key, const LLStringExplicit& text );
95 98
96 virtual void clear(); 99 virtual void clear();
97 virtual void onCommit(); 100 virtual void onCommit();
@@ -102,7 +105,7 @@ public:
102 void setEnabledColor( const LLColor4 &color ) { mTextEnabledColor = color; } 105 void setEnabledColor( const LLColor4 &color ) { mTextEnabledColor = color; }
103 void setDisabledColor( const LLColor4 &color ) { mTextDisabledColor = color; } 106 void setDisabledColor( const LLColor4 &color ) { mTextDisabledColor = color; }
104 107
105 void setLabel( const LLString& label ); 108 void setLabel( const LLStringExplicit& label );
106 LLString getLabel() const; 109 LLString getLabel() const;
107 110
108 virtual void setControlName(const LLString& control_name, LLView* context); 111 virtual void setControlName(const LLString& control_name, LLView* context);
diff --git a/linden/indra/llui/llclipboard.cpp b/linden/indra/llui/llclipboard.cpp
index 19f0188..fc3967f 100644
--- a/linden/indra/llui/llclipboard.cpp
+++ b/linden/indra/llui/llclipboard.cpp
@@ -2,6 +2,8 @@
2 * @file llclipboard.cpp 2 * @file llclipboard.cpp
3 * @brief LLClipboard base class 3 * @brief LLClipboard base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#include "linden_common.h" 32#include "linden_common.h"
diff --git a/linden/indra/llui/llclipboard.h b/linden/indra/llui/llclipboard.h
index dc4cb32..999a17a 100644
--- a/linden/indra/llui/llclipboard.h
+++ b/linden/indra/llui/llclipboard.h
@@ -2,6 +2,8 @@
2 * @file llclipboard.h 2 * @file llclipboard.h
3 * @brief LLClipboard base class 3 * @brief LLClipboard base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#ifndef LL_LLCLIPBOARD_H 32#ifndef LL_LLCLIPBOARD_H
diff --git a/linden/indra/llui/llcombobox.cpp b/linden/indra/llui/llcombobox.cpp
index b71d88f..5f76cfc 100644
--- a/linden/indra/llui/llcombobox.cpp
+++ b/linden/indra/llui/llcombobox.cpp
@@ -2,6 +2,8 @@
2 * @file llcombobox.cpp 2 * @file llcombobox.cpp
3 * @brief LLComboBox base class 3 * @brief LLComboBox base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29// A control that displays the name of the chosen item, which when 32// A control that displays the name of the chosen item, which when
@@ -226,12 +229,12 @@ void LLComboBox::clear()
226{ 229{
227 if (mTextEntry) 230 if (mTextEntry)
228 { 231 {
229 mTextEntry->setText(""); 232 mTextEntry->setText(LLString::null);
230 } 233 }
231 mButton->setLabelSelected(""); 234 mButton->setLabelSelected(LLString::null);
232 mButton->setLabelUnselected(""); 235 mButton->setLabelUnselected(LLString::null);
233 mButton->setDisabledLabel(""); 236 mButton->setDisabledLabel(LLString::null);
234 mButton->setDisabledSelectedLabel(""); 237 mButton->setDisabledSelectedLabel(LLString::null);
235 mList->deselectAllItems(); 238 mList->deselectAllItems();
236} 239}
237 240
@@ -306,7 +309,7 @@ void LLComboBox::sortByName()
306 309
307// Choose an item with a given name in the menu. 310// Choose an item with a given name in the menu.
308// Returns TRUE if the item was found. 311// Returns TRUE if the item was found.
309BOOL LLComboBox::setSimple(const LLString& name) 312BOOL LLComboBox::setSimple(const LLStringExplicit& name)
310{ 313{
311 BOOL found = mList->selectSimpleItem(name, FALSE); 314 BOOL found = mList->selectSimpleItem(name, FALSE);
312 315
@@ -368,7 +371,7 @@ LLSD LLComboBox::getValue() const
368 } 371 }
369} 372}
370 373
371void LLComboBox::setLabel(const LLString& name) 374void LLComboBox::setLabel(const LLStringExplicit& name)
372{ 375{
373 if ( mAllowTextEntry ) 376 if ( mAllowTextEntry )
374 { 377 {
@@ -800,7 +803,7 @@ void LLComboBox::setAllowTextEntry(BOOL allow, S32 max_chars, BOOL set_tentative
800 803
801 // clear label on button 804 // clear label on button
802 LLString cur_label = mButton->getLabelSelected(); 805 LLString cur_label = mButton->getLabelSelected();
803 setLabel(""); 806 setLabel(LLString::null);
804 if (!mTextEntry) 807 if (!mTextEntry)
805 { 808 {
806 LLRect text_entry_rect(0, mRect.getHeight(), mRect.getWidth(), 0); 809 LLRect text_entry_rect(0, mRect.getHeight(), mRect.getWidth(), 0);
@@ -849,7 +852,7 @@ void LLComboBox::setAllowTextEntry(BOOL allow, S32 max_chars, BOOL set_tentative
849 mTextEntryTentative = set_tentative; 852 mTextEntryTentative = set_tentative;
850} 853}
851 854
852void LLComboBox::setTextEntry(const LLString& text) 855void LLComboBox::setTextEntry(const LLStringExplicit& text)
853{ 856{
854 if (mTextEntry) 857 if (mTextEntry)
855 { 858 {
diff --git a/linden/indra/llui/llcombobox.h b/linden/indra/llui/llcombobox.h
index 1589c30..ff17d28 100644
--- a/linden/indra/llui/llcombobox.h
+++ b/linden/indra/llui/llcombobox.h
@@ -2,6 +2,8 @@
2 * @file llcombobox.h 2 * @file llcombobox.h
3 * @brief LLComboBox base class 3 * @brief LLComboBox base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29// A control that displays the name of the chosen item, which when clicked 32// A control that displays the name of the chosen item, which when clicked
@@ -102,7 +105,7 @@ public:
102 virtual LLSD getValue() const; 105 virtual LLSD getValue() const;
103 106
104 void setAllowTextEntry(BOOL allow, S32 max_chars = 50, BOOL make_tentative = TRUE); 107 void setAllowTextEntry(BOOL allow, S32 max_chars = 50, BOOL make_tentative = TRUE);
105 void setTextEntry(const LLString& text); 108 void setTextEntry(const LLStringExplicit& text);
106 109
107 void add(const LLString& name, EAddPosition pos = ADD_BOTTOM, BOOL enabled = TRUE); // add item "name" to menu 110 void add(const LLString& name, EAddPosition pos = ADD_BOTTOM, BOOL enabled = TRUE); // add item "name" to menu
108 void add(const LLString& name, const LLUUID& id, EAddPosition pos = ADD_BOTTOM, BOOL enabled = TRUE); 111 void add(const LLString& name, const LLUUID& id, EAddPosition pos = ADD_BOTTOM, BOOL enabled = TRUE);
@@ -114,7 +117,7 @@ public:
114 void sortByName(); // Sort the entries in the combobox by name 117 void sortByName(); // Sort the entries in the combobox by name
115 118
116 // Select current item by name using selectSimpleItem. Returns FALSE if not found. 119 // Select current item by name using selectSimpleItem. Returns FALSE if not found.
117 BOOL setSimple(const LLString& name); 120 BOOL setSimple(const LLStringExplicit& name);
118 // Get name of current item. Returns an empty string if not found. 121 // Get name of current item. Returns an empty string if not found.
119 const LLString& getSimple() const; 122 const LLString& getSimple() const;
120 // Get contents of column x of selected row 123 // Get contents of column x of selected row
@@ -122,7 +125,7 @@ public:
122 125
123 // Sets the label, which doesn't have to exist in the label. 126 // Sets the label, which doesn't have to exist in the label.
124 // This is probably a UI abuse. 127 // This is probably a UI abuse.
125 void setLabel(const LLString& name); 128 void setLabel(const LLStringExplicit& name);
126 129
127 BOOL remove(const LLString& name); // remove item "name", return TRUE if found and removed 130 BOOL remove(const LLString& name); // remove item "name", return TRUE if found and removed
128 131
diff --git a/linden/indra/llui/llctrlselectioninterface.cpp b/linden/indra/llui/llctrlselectioninterface.cpp
index d3b83a2..3dd4019 100644
--- a/linden/indra/llui/llctrlselectioninterface.cpp
+++ b/linden/indra/llui/llctrlselectioninterface.cpp
@@ -2,6 +2,8 @@
2 * @file llctrlselectioninterface.cpp 2 * @file llctrlselectioninterface.cpp
3 * @brief Programmatic selection of items in a list. 3 * @brief Programmatic selection of items in a list.
4 * 4 *
5 * $LicenseInfo:firstyear=2006&license=viewergpl$
6 *
5 * Copyright (c) 2006-2007, Linden Research, Inc. 7 * Copyright (c) 2006-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28#include "linden_common.h" 31#include "linden_common.h"
29 32
diff --git a/linden/indra/llui/llctrlselectioninterface.h b/linden/indra/llui/llctrlselectioninterface.h
index 237aa94..688c0a2 100644
--- a/linden/indra/llui/llctrlselectioninterface.h
+++ b/linden/indra/llui/llctrlselectioninterface.h
@@ -2,6 +2,8 @@
2 * @file llctrlselectioninterface.h 2 * @file llctrlselectioninterface.h
3 * @brief Programmatic selection of items in a list. 3 * @brief Programmatic selection of items in a list.
4 * 4 *
5 * $LicenseInfo:firstyear=2006&license=viewergpl$
6 *
5 * Copyright (c) 2006-2007, Linden Research, Inc. 7 * Copyright (c) 2006-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#ifndef LLCTRLSELECTIONINTERFACE_H 32#ifndef LLCTRLSELECTIONINTERFACE_H
diff --git a/linden/indra/llui/lldraghandle.cpp b/linden/indra/llui/lldraghandle.cpp
index 3497f0d..ca536ea 100644
--- a/linden/indra/llui/lldraghandle.cpp
+++ b/linden/indra/llui/lldraghandle.cpp
@@ -2,6 +2,8 @@
2 * @file lldraghandle.cpp 2 * @file lldraghandle.cpp
3 * @brief LLDragHandle base class 3 * @brief LLDragHandle base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29// A widget for dragging a view around the screen using the mouse. 32// A widget for dragging a view around the screen using the mouse.
diff --git a/linden/indra/llui/lldraghandle.h b/linden/indra/llui/lldraghandle.h
index 691851d..50d199f 100644
--- a/linden/indra/llui/lldraghandle.h
+++ b/linden/indra/llui/lldraghandle.h
@@ -2,6 +2,8 @@
2 * @file lldraghandle.h 2 * @file lldraghandle.h
3 * @brief LLDragHandle base class 3 * @brief LLDragHandle base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29// A widget for dragging a view around the screen using the mouse. 32// A widget for dragging a view around the screen using the mouse.
diff --git a/linden/indra/llui/lleditmenuhandler.cpp b/linden/indra/llui/lleditmenuhandler.cpp
index 559cef4..9fb9cbe 100644
--- a/linden/indra/llui/lleditmenuhandler.cpp
+++ b/linden/indra/llui/lleditmenuhandler.cpp
@@ -2,28 +2,31 @@
2* @file lleditmenuhandler.cpp 2* @file lleditmenuhandler.cpp
3* @authors Aaron Yonas, James Cook 3* @authors Aaron Yonas, James Cook
4* 4*
5* $LicenseInfo:firstyear=2006&license=viewergpl$
6*
5* Copyright (c) 2006-2007, Linden Research, Inc. 7* Copyright (c) 2006-2007, Linden Research, Inc.
6* 8*
7 * Second Life Viewer Source Code 9* Second Life Viewer Source Code
8 * The source code in this file ("Source Code") is provided by Linden Lab 10* The source code in this file ("Source Code") is provided by Linden Lab
9 * to you under the terms of the GNU General Public License, version 2.0 11* to you under the terms of the GNU General Public License, version 2.0
10 * ("GPL"), unless you have obtained a separate licensing agreement 12* ("GPL"), unless you have obtained a separate licensing agreement
11 * ("Other License"), formally executed by you and Linden Lab. Terms of 13* ("Other License"), formally executed by you and Linden Lab. Terms of
12 * the GPL can be found in doc/GPL-license.txt in this distribution, or 14* the GPL can be found in doc/GPL-license.txt in this distribution, or
13 * online at http://secondlife.com/developers/opensource/gplv2 15* online at http://secondlife.com/developers/opensource/gplv2
14 * 16*
15 * There are special exceptions to the terms and conditions of the GPL as 17* There are special exceptions to the terms and conditions of the GPL as
16 * it is applied to this Source Code. View the full text of the exception 18* it is applied to this Source Code. View the full text of the exception
17 * in the file doc/FLOSS-exception.txt in this software distribution, or 19* in the file doc/FLOSS-exception.txt in this software distribution, or
18 * online at http://secondlife.com/developers/opensource/flossexception 20* online at http://secondlife.com/developers/opensource/flossexception
19 * 21*
20 * By copying, modifying or distributing this software, you acknowledge 22* By copying, modifying or distributing this software, you acknowledge
21 * that you have read and understood your obligations described above, 23* that you have read and understood your obligations described above,
22 * and agree to abide by those obligations. 24* and agree to abide by those obligations.
23 * 25*
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26* ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27* WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28* COMPLETENESS OR PERFORMANCE.
29* $/LicenseInfo$
27*/ 30*/
28 31
29#include "linden_common.h" 32#include "linden_common.h"
diff --git a/linden/indra/llui/lleditmenuhandler.h b/linden/indra/llui/lleditmenuhandler.h
index ec3d246..b035a29 100644
--- a/linden/indra/llui/lleditmenuhandler.h
+++ b/linden/indra/llui/lleditmenuhandler.h
@@ -2,28 +2,31 @@
2* @file lleditmenuhandler.h 2* @file lleditmenuhandler.h
3* @authors Aaron Yonas, James Cook 3* @authors Aaron Yonas, James Cook
4* 4*
5* $LicenseInfo:firstyear=2006&license=viewergpl$
6*
5* Copyright (c) 2006-2007, Linden Research, Inc. 7* Copyright (c) 2006-2007, Linden Research, Inc.
6* 8*
7 * Second Life Viewer Source Code 9* Second Life Viewer Source Code
8 * The source code in this file ("Source Code") is provided by Linden Lab 10* The source code in this file ("Source Code") is provided by Linden Lab
9 * to you under the terms of the GNU General Public License, version 2.0 11* to you under the terms of the GNU General Public License, version 2.0
10 * ("GPL"), unless you have obtained a separate licensing agreement 12* ("GPL"), unless you have obtained a separate licensing agreement
11 * ("Other License"), formally executed by you and Linden Lab. Terms of 13* ("Other License"), formally executed by you and Linden Lab. Terms of
12 * the GPL can be found in doc/GPL-license.txt in this distribution, or 14* the GPL can be found in doc/GPL-license.txt in this distribution, or
13 * online at http://secondlife.com/developers/opensource/gplv2 15* online at http://secondlife.com/developers/opensource/gplv2
14 * 16*
15 * There are special exceptions to the terms and conditions of the GPL as 17* There are special exceptions to the terms and conditions of the GPL as
16 * it is applied to this Source Code. View the full text of the exception 18* it is applied to this Source Code. View the full text of the exception
17 * in the file doc/FLOSS-exception.txt in this software distribution, or 19* in the file doc/FLOSS-exception.txt in this software distribution, or
18 * online at http://secondlife.com/developers/opensource/flossexception 20* online at http://secondlife.com/developers/opensource/flossexception
19 * 21*
20 * By copying, modifying or distributing this software, you acknowledge 22* By copying, modifying or distributing this software, you acknowledge
21 * that you have read and understood your obligations described above, 23* that you have read and understood your obligations described above,
22 * and agree to abide by those obligations. 24* and agree to abide by those obligations.
23 * 25*
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26* ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27* WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28* COMPLETENESS OR PERFORMANCE.
29* $/LicenseInfo$
27*/ 30*/
28 31
29#ifndef LLEDITMENUHANDLER_H 32#ifndef LLEDITMENUHANDLER_H
diff --git a/linden/indra/llui/llfloater.cpp b/linden/indra/llui/llfloater.cpp
index 77fddfb..41a67f2 100644
--- a/linden/indra/llui/llfloater.cpp
+++ b/linden/indra/llui/llfloater.cpp
@@ -2,6 +2,8 @@
2 * @file llfloater.cpp 2 * @file llfloater.cpp
3 * @brief LLFloater base class 3 * @brief LLFloater base class
4 * 4 *
5 * $LicenseInfo:firstyear=2002&license=viewergpl$
6 *
5 * Copyright (c) 2002-2007, Linden Research, Inc. 7 * Copyright (c) 2002-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29// Floating "windows" within the GL display, like the inventory floater, 32// Floating "windows" within the GL display, like the inventory floater,
diff --git a/linden/indra/llui/llfloater.h b/linden/indra/llui/llfloater.h
index baa192a..d0494ea 100644
--- a/linden/indra/llui/llfloater.h
+++ b/linden/indra/llui/llfloater.h
@@ -2,6 +2,8 @@
2 * @file llfloater.h 2 * @file llfloater.h
3 * @brief LLFloater base class 3 * @brief LLFloater base class
4 * 4 *
5 * $LicenseInfo:firstyear=2002&license=viewergpl$
6 *
5 * Copyright (c) 2002-2007, Linden Research, Inc. 7 * Copyright (c) 2002-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29// Floating "windows" within the GL display, like the inventory floater, 32// Floating "windows" within the GL display, like the inventory floater,
diff --git a/linden/indra/llui/llfocusmgr.cpp b/linden/indra/llui/llfocusmgr.cpp
index f9f3350..6358ccb 100644
--- a/linden/indra/llui/llfocusmgr.cpp
+++ b/linden/indra/llui/llfocusmgr.cpp
@@ -2,6 +2,8 @@
2 * @file llfocusmgr.cpp 2 * @file llfocusmgr.cpp
3 * @brief LLFocusMgr base class 3 * @brief LLFocusMgr base class
4 * 4 *
5 * $LicenseInfo:firstyear=2002&license=viewergpl$
6 *
5 * Copyright (c) 2002-2007, Linden Research, Inc. 7 * Copyright (c) 2002-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#include "linden_common.h" 32#include "linden_common.h"
diff --git a/linden/indra/llui/llfocusmgr.h b/linden/indra/llui/llfocusmgr.h
index 9b7a84e..1c25153 100644
--- a/linden/indra/llui/llfocusmgr.h
+++ b/linden/indra/llui/llfocusmgr.h
@@ -2,6 +2,8 @@
2 * @file llfocusmgr.h 2 * @file llfocusmgr.h
3 * @brief LLFocusMgr base class 3 * @brief LLFocusMgr base class
4 * 4 *
5 * $LicenseInfo:firstyear=2002&license=viewergpl$
6 *
5 * Copyright (c) 2002-2007, Linden Research, Inc. 7 * Copyright (c) 2002-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29// Singleton that manages keyboard and mouse focus 32// Singleton that manages keyboard and mouse focus
diff --git a/linden/indra/llui/llhtmlhelp.h b/linden/indra/llui/llhtmlhelp.h
index 4b2a43a..816d0dd 100644
--- a/linden/indra/llui/llhtmlhelp.h
+++ b/linden/indra/llui/llhtmlhelp.h
@@ -2,6 +2,8 @@
2 * @file llhtmlhelp.h 2 * @file llhtmlhelp.h
3 * @brief HTML Help floater interface 3 * @brief HTML Help floater interface
4 * 4 *
5 * $LicenseInfo:firstyear=2006&license=viewergpl$
6 *
5 * Copyright (c) 2006-2007, Linden Research, Inc. 7 * Copyright (c) 2006-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#ifndef LL_LLHTMLHELP_H 32#ifndef LL_LLHTMLHELP_H
diff --git a/linden/indra/llui/lliconctrl.cpp b/linden/indra/llui/lliconctrl.cpp
index 2d3071b..1e49210 100644
--- a/linden/indra/llui/lliconctrl.cpp
+++ b/linden/indra/llui/lliconctrl.cpp
@@ -2,6 +2,8 @@
2 * @file lliconctrl.cpp 2 * @file lliconctrl.cpp
3 * @brief LLIconCtrl base class 3 * @brief LLIconCtrl base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#include "linden_common.h" 32#include "linden_common.h"
diff --git a/linden/indra/llui/lliconctrl.h b/linden/indra/llui/lliconctrl.h
index 8dbe6db..b789269 100644
--- a/linden/indra/llui/lliconctrl.h
+++ b/linden/indra/llui/lliconctrl.h
@@ -2,6 +2,8 @@
2 * @file lliconctrl.h 2 * @file lliconctrl.h
3 * @brief LLIconCtrl base class 3 * @brief LLIconCtrl base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#ifndef LL_LLICONCTRL_H 32#ifndef LL_LLICONCTRL_H
diff --git a/linden/indra/llui/llkeywords.cpp b/linden/indra/llui/llkeywords.cpp
index 8997bd6..5efb8be 100644
--- a/linden/indra/llui/llkeywords.cpp
+++ b/linden/indra/llui/llkeywords.cpp
@@ -2,6 +2,8 @@
2 * @file llkeywords.cpp 2 * @file llkeywords.cpp
3 * @brief Keyword list for LSL 3 * @brief Keyword list for LSL
4 * 4 *
5 * $LicenseInfo:firstyear=2000&license=viewergpl$
6 *
5 * Copyright (c) 2000-2007, Linden Research, Inc. 7 * Copyright (c) 2000-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#include "linden_common.h" 32#include "linden_common.h"
diff --git a/linden/indra/llui/llkeywords.h b/linden/indra/llui/llkeywords.h
index 040df53..4309f16 100644
--- a/linden/indra/llui/llkeywords.h
+++ b/linden/indra/llui/llkeywords.h
@@ -2,6 +2,8 @@
2 * @file llkeywords.h 2 * @file llkeywords.h
3 * @brief Keyword list for LSL 3 * @brief Keyword list for LSL
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#ifndef LL_LLKEYWORDS_H 32#ifndef LL_LLKEYWORDS_H
diff --git a/linden/indra/llui/lllineeditor.cpp b/linden/indra/llui/lllineeditor.cpp
index dca62d7..9671065 100644
--- a/linden/indra/llui/lllineeditor.cpp
+++ b/linden/indra/llui/lllineeditor.cpp
@@ -2,6 +2,8 @@
2 * @file lllineeditor.cpp 2 * @file lllineeditor.cpp
3 * @brief LLLineEditor base class 3 * @brief LLLineEditor base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29// Text editor widget to let users enter a single line. 32// Text editor widget to let users enter a single line.
@@ -155,7 +158,8 @@ LLLineEditor::LLLineEditor(const LLString& name, const LLRect& rect,
155 mHandleEditKeysDirectly( FALSE ), 158 mHandleEditKeysDirectly( FALSE ),
156 mSelectAllonFocusReceived( FALSE ), 159 mSelectAllonFocusReceived( FALSE ),
157 mPassDelete(FALSE), 160 mPassDelete(FALSE),
158 mReadOnly(FALSE) 161 mReadOnly(FALSE),
162 mLastIMEPosition( -1, -1 )
159{ 163{
160 llassert( max_length_bytes > 0 ); 164 llassert( max_length_bytes > 0 );
161 165
@@ -316,12 +320,12 @@ void LLLineEditor::setBorderWidth(S32 left, S32 right)
316 mMaxHPixels = mRect.getWidth() - mMinHPixels - mBorderThickness - mBorderRight; 320 mMaxHPixels = mRect.getWidth() - mMinHPixels - mBorderThickness - mBorderRight;
317} 321}
318 322
319void LLLineEditor::setLabel(const LLString &new_label) 323void LLLineEditor::setLabel(const LLStringExplicit &new_label)
320{ 324{
321 mLabel = new_label; 325 mLabel = new_label;
322} 326}
323 327
324void LLLineEditor::setText(const LLString &new_text) 328void LLLineEditor::setText(const LLStringExplicit &new_text)
325{ 329{
326 // If new text is identical, don't copy and don't move insertion point 330 // If new text is identical, don't copy and don't move insertion point
327 if (mText.getString() == new_text) 331 if (mText.getString() == new_text)
@@ -1629,6 +1633,17 @@ void LLLineEditor::draw()
1629 LLFontGL::NORMAL, 1633 LLFontGL::NORMAL,
1630 1); 1634 1);
1631 } 1635 }
1636
1637 // Make sure the IME is in the right place
1638 S32 pixels_after_scroll = findPixelNearestPos(); // RCalculcate for IME position
1639 LLRect screen_pos = getScreenRect();
1640 LLCoordGL ime_pos( screen_pos.mLeft + pixels_after_scroll, screen_pos.mTop - UI_LINEEDITOR_V_PAD );
1641 if ( ime_pos.mX != mLastIMEPosition.mX || ime_pos.mY != mLastIMEPosition.mY )
1642 {
1643 mLastIMEPosition.mX = ime_pos.mX;
1644 mLastIMEPosition.mY = ime_pos.mY;
1645 getWindow()->setLanguageTextInput( ime_pos );
1646 }
1632 } 1647 }
1633 } 1648 }
1634 1649
@@ -1792,7 +1807,7 @@ BOOL LLLineEditor::prevalidateFloat(const LLWString &str)
1792 1807
1793 for( ; i < len; i++ ) 1808 for( ; i < len; i++ )
1794 { 1809 {
1795 if( (decimal_point != trimmed[i] ) && !isdigit( trimmed[i] ) ) 1810 if( (decimal_point != trimmed[i] ) && !LLStringOps::isDigit( trimmed[i] ) )
1796 { 1811 {
1797 success = FALSE; 1812 success = FALSE;
1798 break; 1813 break;
@@ -1847,7 +1862,7 @@ BOOL LLLineEditor::postvalidateFloat(const LLString &str)
1847 } 1862 }
1848 } 1863 }
1849 else 1864 else
1850 if( isdigit( trimmed[i] ) ) 1865 if( LLStringOps::isDigit( trimmed[i] ) )
1851 { 1866 {
1852 has_digit = TRUE; 1867 has_digit = TRUE;
1853 } 1868 }
@@ -1890,7 +1905,7 @@ BOOL LLLineEditor::prevalidateInt(const LLWString &str)
1890 1905
1891 for( ; i < len; i++ ) 1906 for( ; i < len; i++ )
1892 { 1907 {
1893 if( !isdigit( trimmed[i] ) ) 1908 if( !LLStringOps::isDigit( trimmed[i] ) )
1894 { 1909 {
1895 success = FALSE; 1910 success = FALSE;
1896 break; 1911 break;
@@ -1919,7 +1934,7 @@ BOOL LLLineEditor::prevalidatePositiveS32(const LLWString &str)
1919 S32 i = 0; 1934 S32 i = 0;
1920 while(success && (i < len)) 1935 while(success && (i < len))
1921 { 1936 {
1922 if(!isdigit(trimmed[i++])) 1937 if(!LLStringOps::isDigit(trimmed[i++]))
1923 { 1938 {
1924 success = FALSE; 1939 success = FALSE;
1925 } 1940 }
@@ -1953,7 +1968,7 @@ BOOL LLLineEditor::prevalidateNonNegativeS32(const LLWString &str)
1953 S32 i = 0; 1968 S32 i = 0;
1954 while(success && (i < len)) 1969 while(success && (i < len))
1955 { 1970 {
1956 if(!isdigit(trimmed[i++])) 1971 if(!LLStringOps::isDigit(trimmed[i++]))
1957 { 1972 {
1958 success = FALSE; 1973 success = FALSE;
1959 } 1974 }
@@ -2307,13 +2322,13 @@ LLSD LLLineEditor::getValue() const
2307 return ret; 2322 return ret;
2308} 2323}
2309 2324
2310BOOL LLLineEditor::setTextArg( const LLString& key, const LLString& text ) 2325BOOL LLLineEditor::setTextArg( const LLString& key, const LLStringExplicit& text )
2311{ 2326{
2312 mText.setArg(key, text); 2327 mText.setArg(key, text);
2313 return TRUE; 2328 return TRUE;
2314} 2329}
2315 2330
2316BOOL LLLineEditor::setLabelArg( const LLString& key, const LLString& text ) 2331BOOL LLLineEditor::setLabelArg( const LLString& key, const LLStringExplicit& text )
2317{ 2332{
2318 mLabel.setArg(key, text); 2333 mLabel.setArg(key, text);
2319 return TRUE; 2334 return TRUE;
@@ -2338,8 +2353,7 @@ LLSearchEditor::LLSearchEditor(const LLString& name,
2338 onSearchEdit, 2353 onSearchEdit,
2339 NULL, 2354 NULL,
2340 this); 2355 this);
2341 // TODO: this should be translatable 2356
2342 mSearchEdit->setLabel("Type here to search");
2343 mSearchEdit->setFollowsAll(); 2357 mSearchEdit->setFollowsAll();
2344 mSearchEdit->setSelectAllonFocusReceived(TRUE); 2358 mSearchEdit->setSelectAllonFocusReceived(TRUE);
2345 2359
@@ -2394,13 +2408,13 @@ LLSD LLSearchEditor::getValue() const
2394} 2408}
2395 2409
2396//virtual 2410//virtual
2397BOOL LLSearchEditor::setTextArg( const LLString& key, const LLString& text ) 2411BOOL LLSearchEditor::setTextArg( const LLString& key, const LLStringExplicit& text )
2398{ 2412{
2399 return mSearchEdit->setTextArg(key, text); 2413 return mSearchEdit->setTextArg(key, text);
2400} 2414}
2401 2415
2402//virtual 2416//virtual
2403BOOL LLSearchEditor::setLabelArg( const LLString& key, const LLString& text ) 2417BOOL LLSearchEditor::setLabelArg( const LLString& key, const LLStringExplicit& text )
2404{ 2418{
2405 return mSearchEdit->setLabelArg(key, text); 2419 return mSearchEdit->setLabelArg(key, text);
2406} 2420}
@@ -2422,7 +2436,7 @@ void LLSearchEditor::draw()
2422 LLUICtrl::draw(); 2436 LLUICtrl::draw();
2423} 2437}
2424 2438
2425void LLSearchEditor::setText(const LLString &new_text) 2439void LLSearchEditor::setText(const LLStringExplicit &new_text)
2426{ 2440{
2427 mSearchEdit->setText(new_text); 2441 mSearchEdit->setText(new_text);
2428} 2442}
@@ -2468,6 +2482,12 @@ LLView* LLSearchEditor::fromXML(LLXMLNodePtr node, LLView *parent, LLUICtrlFacto
2468 max_text_length, 2482 max_text_length,
2469 NULL, NULL); 2483 NULL, NULL);
2470 2484
2485 LLString label;
2486 if(node->getAttributeString("label", label))
2487 {
2488 search_editor->mSearchEdit->setLabel(label);
2489 }
2490
2471 search_editor->setText(text); 2491 search_editor->setText(text);
2472 2492
2473 search_editor->initFromXML(node, parent); 2493 search_editor->initFromXML(node, parent);
diff --git a/linden/indra/llui/lllineeditor.h b/linden/indra/llui/lllineeditor.h
index 04c53b4..2cd2ebf 100644
--- a/linden/indra/llui/lllineeditor.h
+++ b/linden/indra/llui/lllineeditor.h
@@ -2,6 +2,8 @@
2 * @file lllineeditor.h 2 * @file lllineeditor.h
3 * @brief LLLineEditor base class 3 * @brief LLLineEditor base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29// Text editor widget to let users enter/edit a single line. 32// Text editor widget to let users enter/edit a single line.
@@ -133,11 +136,11 @@ public:
133 // assumes UTF8 text 136 // assumes UTF8 text
134 virtual void setValue(const LLSD& value ); 137 virtual void setValue(const LLSD& value );
135 virtual LLSD getValue() const; 138 virtual LLSD getValue() const;
136 virtual BOOL setTextArg( const LLString& key, const LLString& text ); 139 virtual BOOL setTextArg( const LLString& key, const LLStringExplicit& text );
137 virtual BOOL setLabelArg( const LLString& key, const LLString& text ); 140 virtual BOOL setLabelArg( const LLString& key, const LLStringExplicit& text );
138 141
139 void setLabel(const LLString &new_label); 142 void setLabel(const LLStringExplicit &new_label);
140 void setText(const LLString &new_text); 143 void setText(const LLStringExplicit &new_text);
141 144
142 const LLString& getText() const { return mText.getString(); } 145 const LLString& getText() const { return mText.getString(); }
143 const LLWString& getWText() const { return mText.getWString(); } 146 const LLWString& getWText() const { return mText.getWString(); }
@@ -276,6 +279,8 @@ protected:
276 279
277 S32 mBorderThickness; 280 S32 mBorderThickness;
278 281
282 LLCoordGL mLastIMEPosition; // Last screen position used for the IME editor
283
279 BOOL mIgnoreArrowKeys; 284 BOOL mIgnoreArrowKeys;
280 BOOL mIgnoreTab; 285 BOOL mIgnoreTab;
281 BOOL mDrawAsterixes; 286 BOOL mDrawAsterixes;
@@ -307,15 +312,15 @@ public:
307 virtual LLString getWidgetTag() const; 312 virtual LLString getWidgetTag() const;
308 static LLView* fromXML(LLXMLNodePtr node, LLView *parent, LLUICtrlFactory *factory); 313 static LLView* fromXML(LLXMLNodePtr node, LLView *parent, LLUICtrlFactory *factory);
309 314
310 void setText(const LLString &new_text); 315 void setText(const LLStringExplicit &new_text);
311 316
312 void setSearchCallback(void (*search_callback)(const LLString& search_string, void* user_data), void* data) { mSearchCallback = search_callback; mCallbackUserData = data; } 317 void setSearchCallback(void (*search_callback)(const LLString& search_string, void* user_data), void* data) { mSearchCallback = search_callback; mCallbackUserData = data; }
313 318
314 // LLUICtrl interface 319 // LLUICtrl interface
315 virtual void setValue(const LLSD& value ); 320 virtual void setValue(const LLSD& value );
316 virtual LLSD getValue() const; 321 virtual LLSD getValue() const;
317 virtual BOOL setTextArg( const LLString& key, const LLString& text ); 322 virtual BOOL setTextArg( const LLString& key, const LLStringExplicit& text );
318 virtual BOOL setLabelArg( const LLString& key, const LLString& text ); 323 virtual BOOL setLabelArg( const LLString& key, const LLStringExplicit& text );
319 virtual void clear(); 324 virtual void clear();
320 325
321 326
diff --git a/linden/indra/llui/llmemberlistener.h b/linden/indra/llui/llmemberlistener.h
index bc67519..b6f6b3c 100644
--- a/linden/indra/llui/llmemberlistener.h
+++ b/linden/indra/llui/llmemberlistener.h
@@ -2,6 +2,8 @@
2 * @file llmemberlistener.h 2 * @file llmemberlistener.h
3 * @brief Listener class which registers itself with its parent view 3 * @brief Listener class which registers itself with its parent view
4 * 4 *
5 * $LicenseInfo:firstyear=2006&license=viewergpl$
6 *
5 * Copyright (c) 2006-2007, Linden Research, Inc. 7 * Copyright (c) 2006-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#ifndef LL_LLMEMBERLISTENER_H 32#ifndef LL_LLMEMBERLISTENER_H
@@ -36,7 +39,7 @@ template <class T>
36class LLMemberListener : public LLSimpleListener 39class LLMemberListener : public LLSimpleListener
37{ 40{
38public: 41public:
39 LLMemberListener() : mPtr(NULL), mRegisteredName("") { } 42 LLMemberListener() : mPtr(NULL), mRegisteredName() { }
40 43
41 void registerListener(T *pointer, const LLString& register_name) 44 void registerListener(T *pointer, const LLString& register_name)
42 { 45 {
diff --git a/linden/indra/llui/llmenugl.cpp b/linden/indra/llui/llmenugl.cpp
index b0d2d9f..5d2a052 100644
--- a/linden/indra/llui/llmenugl.cpp
+++ b/linden/indra/llui/llmenugl.cpp
@@ -2,6 +2,8 @@
2 * @file llmenugl.cpp 2 * @file llmenugl.cpp
3 * @brief LLMenuItemGL base class 3 * @brief LLMenuItemGL base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29//***************************************************************************** 32//*****************************************************************************
@@ -370,7 +373,7 @@ void LLMenuItemGL::setHighlightFGColor( const LLColor4& color )
370 373
371 374
372// change the label 375// change the label
373void LLMenuItemGL::setLabel( const LLString& label ) 376void LLMenuItemGL::setLabel( const LLStringExplicit& label )
374{ 377{
375 mLabel = label; 378 mLabel = label;
376} 379}
@@ -595,7 +598,7 @@ void LLMenuItemGL::draw( void )
595 mGotHover = FALSE; 598 mGotHover = FALSE;
596} 599}
597 600
598BOOL LLMenuItemGL::setLabelArg( const LLString& key, const LLString& text ) 601BOOL LLMenuItemGL::setLabelArg( const LLString& key, const LLStringExplicit& text )
599{ 602{
600 mLabel.setArg(key, text); 603 mLabel.setArg(key, text);
601 return TRUE; 604 return TRUE;
@@ -1236,6 +1239,7 @@ BOOL LLMenuItemBranchGL::handleMouseUp(S32 x, S32 y, MASK mask)
1236 1239
1237 doIt(); 1240 doIt();
1238 make_ui_sound("UISndClickRelease"); 1241 make_ui_sound("UISndClickRelease");
1242 return TRUE;
1239 } 1243 }
1240 return FALSE; 1244 return FALSE;
1241} 1245}
@@ -1547,7 +1551,7 @@ public:
1547 1551
1548 // LLView functionality 1552 // LLView functionality
1549 virtual BOOL handleMouseDown( S32 x, S32 y, MASK mask ); 1553 virtual BOOL handleMouseDown( S32 x, S32 y, MASK mask );
1550 virtual BOOL handleMouseUp( S32 x, S32 y, MASK mask ) {return FALSE; } 1554 virtual BOOL handleMouseUp( S32 x, S32 y, MASK mask );
1551 virtual void draw( void ); 1555 virtual void draw( void );
1552 virtual BOOL handleKeyHere(KEY key, MASK mask, BOOL called_from_parent); 1556 virtual BOOL handleKeyHere(KEY key, MASK mask, BOOL called_from_parent);
1553 1557
@@ -1671,6 +1675,11 @@ BOOL LLMenuItemBranchDownGL::handleMouseDown( S32 x, S32 y, MASK mask )
1671 return TRUE; 1675 return TRUE;
1672} 1676}
1673 1677
1678BOOL LLMenuItemBranchDownGL::handleMouseUp( S32 x, S32 y, MASK mask )
1679{
1680 return TRUE;
1681}
1682
1674 1683
1675BOOL LLMenuItemBranchDownGL::handleAcceleratorKey(KEY key, MASK mask) 1684BOOL LLMenuItemBranchDownGL::handleAcceleratorKey(KEY key, MASK mask)
1676{ 1685{
diff --git a/linden/indra/llui/llmenugl.h b/linden/indra/llui/llmenugl.h
index 6051a26..6dc9282 100644
--- a/linden/indra/llui/llmenugl.h
+++ b/linden/indra/llui/llmenugl.h
@@ -2,6 +2,8 @@
2 * @file llmenugl.h 2 * @file llmenugl.h
3 * @brief Declaration of the opengl based menu system. 3 * @brief Declaration of the opengl based menu system.
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#ifndef LL_LLMENUGL_H 32#ifndef LL_LLMENUGL_H
@@ -124,8 +127,8 @@ public:
124 LLString getLabel( void ) const { return mLabel.getString(); } 127 LLString getLabel( void ) const { return mLabel.getString(); }
125 128
126 // change the label 129 // change the label
127 void setLabel( const LLString& label ); 130 void setLabel( const LLStringExplicit& label );
128 virtual BOOL setLabelArg( const LLString& key, const LLString& text ); 131 virtual BOOL setLabelArg( const LLString& key, const LLStringExplicit& text );
129 132
130 // Get the parent menu for this item 133 // Get the parent menu for this item
131 virtual LLMenuGL* getMenu(); 134 virtual LLMenuGL* getMenu();
@@ -440,7 +443,7 @@ public:
440 443
441 // return the name label 444 // return the name label
442 const LLString& getLabel( void ) const { return mLabel.getString(); } 445 const LLString& getLabel( void ) const { return mLabel.getString(); }
443 void setLabel(const LLString& label) { mLabel = label; } 446 void setLabel(const LLStringExplicit& label) { mLabel = label; }
444 447
445 static void setDefaultBackgroundColor( const LLColor4& color ); 448 static void setDefaultBackgroundColor( const LLColor4& color );
446 void setBackgroundColor( const LLColor4& color ); 449 void setBackgroundColor( const LLColor4& color );
diff --git a/linden/indra/llui/llmodaldialog.cpp b/linden/indra/llui/llmodaldialog.cpp
index 788dead..b8b8bf9 100644
--- a/linden/indra/llui/llmodaldialog.cpp
+++ b/linden/indra/llui/llmodaldialog.cpp
@@ -2,6 +2,8 @@
2 * @file llmodaldialog.cpp 2 * @file llmodaldialog.cpp
3 * @brief LLModalDialog base class 3 * @brief LLModalDialog base class
4 * 4 *
5 * $LicenseInfo:firstyear=2002&license=viewergpl$
6 *
5 * Copyright (c) 2002-2007, Linden Research, Inc. 7 * Copyright (c) 2002-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#include "linden_common.h" 32#include "linden_common.h"
diff --git a/linden/indra/llui/llmodaldialog.h b/linden/indra/llui/llmodaldialog.h
index c2564af..2355861 100644
--- a/linden/indra/llui/llmodaldialog.h
+++ b/linden/indra/llui/llmodaldialog.h
@@ -2,6 +2,8 @@
2 * @file llmodaldialog.h 2 * @file llmodaldialog.h
3 * @brief LLModalDialog base class 3 * @brief LLModalDialog base class
4 * 4 *
5 * $LicenseInfo:firstyear=2002&license=viewergpl$
6 *
5 * Copyright (c) 2002-2007, Linden Research, Inc. 7 * Copyright (c) 2002-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#ifndef LL_LLMODALDIALOG_H 32#ifndef LL_LLMODALDIALOG_H
diff --git a/linden/indra/llui/llpanel.cpp b/linden/indra/llui/llpanel.cpp
index 91a327b..3a0ee9b 100644
--- a/linden/indra/llui/llpanel.cpp
+++ b/linden/indra/llui/llpanel.cpp
@@ -2,6 +2,8 @@
2 * @file llpanel.cpp 2 * @file llpanel.cpp
3 * @brief LLPanel base class 3 * @brief LLPanel base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29// Opaque view with a background and a border. Can contain LLUICtrls. 32// Opaque view with a background and a border. Can contain LLUICtrls.
@@ -959,7 +962,7 @@ LLSD LLPanel::childGetValue(const LLString& id) const
959 return LLSD(); 962 return LLSD();
960} 963}
961 964
962BOOL LLPanel::childSetTextArg(const LLString& id, const LLString& key, const LLString& text) 965BOOL LLPanel::childSetTextArg(const LLString& id, const LLString& key, const LLStringExplicit& text)
963{ 966{
964 LLUICtrl* child = (LLUICtrl*)getChildByName(id, true); 967 LLUICtrl* child = (LLUICtrl*)getChildByName(id, true);
965 if (child) 968 if (child)
@@ -969,7 +972,7 @@ BOOL LLPanel::childSetTextArg(const LLString& id, const LLString& key, const LLS
969 return FALSE; 972 return FALSE;
970} 973}
971 974
972BOOL LLPanel::childSetLabelArg(const LLString& id, const LLString& key, const LLString& text) 975BOOL LLPanel::childSetLabelArg(const LLString& id, const LLString& key, const LLStringExplicit& text)
973{ 976{
974 LLView* child = getChildByName(id, true); 977 LLView* child = getChildByName(id, true);
975 if (child) 978 if (child)
@@ -1030,7 +1033,7 @@ void LLPanel::childSetTabChangeCallback(const LLString& id, const LLString& tabn
1030 } 1033 }
1031} 1034}
1032 1035
1033void LLPanel::childSetText(const LLString& id, const LLString& text) 1036void LLPanel::childSetText(const LLString& id, const LLStringExplicit& text)
1034{ 1037{
1035 childSetValue(id, LLSD(text)); 1038 childSetValue(id, LLSD(text));
1036} 1039}
@@ -1103,7 +1106,7 @@ void LLPanel::childSetControlName(const LLString& id, const LLString& control_na
1103LLView* LLPanel::getChildByName(const LLString& name, BOOL recurse) const 1106LLView* LLPanel::getChildByName(const LLString& name, BOOL recurse) const
1104{ 1107{
1105 LLView* view = LLUICtrl::getChildByName(name, recurse); 1108 LLView* view = LLUICtrl::getChildByName(name, recurse);
1106 if (!view) 1109 if (!view && !recurse)
1107 { 1110 {
1108 childNotFound(name); 1111 childNotFound(name);
1109 } 1112 }
@@ -1293,9 +1296,9 @@ LLView* LLLayoutStack::fromXML(LLXMLNodePtr node, LLView *parent, LLUICtrlFactor
1293 child->getAttributeBOOL("auto_resize", auto_resize); 1296 child->getAttributeBOOL("auto_resize", auto_resize);
1294 1297
1295 LLPanel* panelp = (LLPanel*)LLPanel::fromXML(child, layout_stackp, factory); 1298 LLPanel* panelp = (LLPanel*)LLPanel::fromXML(child, layout_stackp, factory);
1296 panelp->setFollowsNone();
1297 if (panelp) 1299 if (panelp)
1298 { 1300 {
1301 panelp->setFollowsNone();
1299 layout_stackp->addPanel(panelp, min_width, min_height, auto_resize); 1302 layout_stackp->addPanel(panelp, min_width, min_height, auto_resize);
1300 } 1303 }
1301 } 1304 }
diff --git a/linden/indra/llui/llpanel.h b/linden/indra/llui/llpanel.h
index 28c56fa..dfd7a51 100644
--- a/linden/indra/llui/llpanel.h
+++ b/linden/indra/llui/llpanel.h
@@ -3,6 +3,8 @@
3 * @author James Cook, Tom Yedwab 3 * @author James Cook, Tom Yedwab
4 * @brief LLPanel base class 4 * @brief LLPanel base class
5 * 5 *
6 * $LicenseInfo:firstyear=2001&license=viewergpl$
7 *
6 * Copyright (c) 2001-2007, Linden Research, Inc. 8 * Copyright (c) 2001-2007, Linden Research, Inc.
7 * 9 *
8 * Second Life Viewer Source Code 10 * Second Life Viewer Source Code
@@ -25,6 +27,7 @@
25 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 27 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
26 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 28 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
27 * COMPLETENESS OR PERFORMANCE. 29 * COMPLETENESS OR PERFORMANCE.
30 * $/LicenseInfo$
28 */ 31 */
29 32
30#ifndef LL_LLPANEL_H 33#ifndef LL_LLPANEL_H
@@ -116,7 +119,7 @@ public:
116 void setBackgroundOpaque(BOOL b) { mBgOpaque = b; } 119 void setBackgroundOpaque(BOOL b) { mBgOpaque = b; }
117 void setDefaultBtn(LLButton* btn = NULL); 120 void setDefaultBtn(LLButton* btn = NULL);
118 void setDefaultBtn(const LLString& id); 121 void setDefaultBtn(const LLString& id);
119 void setLabel(LLString label) { mLabel = label; } 122 void setLabel(const LLStringExplicit& label) { mLabel = label; }
120 LLString getLabel() const { return mLabel; } 123 LLString getLabel() const { return mLabel; }
121 124
122 void setRectControl(const LLString& rect_control) { mRectControl.assign(rect_control); } 125 void setRectControl(const LLString& rect_control) { mRectControl.assign(rect_control); }
@@ -189,8 +192,8 @@ public:
189 192
190 // For setting text / label replacement params, e.g. "Hello [NAME]" 193 // For setting text / label replacement params, e.g. "Hello [NAME]"
191 // Not implemented for all types, defaults to noop, returns FALSE if not applicaple 194 // Not implemented for all types, defaults to noop, returns FALSE if not applicaple
192 BOOL childSetTextArg(const LLString& id, const LLString& key, const LLString& text); 195 BOOL childSetTextArg(const LLString& id, const LLString& key, const LLStringExplicit& text);
193 BOOL childSetLabelArg(const LLString& id, const LLString& key, const LLString& text); 196 BOOL childSetLabelArg(const LLString& id, const LLString& key, const LLStringExplicit& text);
194 197
195 // LLSlider / LLSpinCtrl 198 // LLSlider / LLSpinCtrl
196 void childSetMinValue(const LLString& id, LLSD min_value); 199 void childSetMinValue(const LLString& id, LLSD min_value);
@@ -205,7 +208,7 @@ public:
205 void childSetWrappedText(const LLString& id, const LLString& text, bool visible = true); 208 void childSetWrappedText(const LLString& id, const LLString& text, bool visible = true);
206 209
207 // LLTextBox/LLTextEditor/LLLineEditor 210 // LLTextBox/LLTextEditor/LLLineEditor
208 void childSetText(const LLString& id, const LLString& text); 211 void childSetText(const LLString& id, const LLStringExplicit& text);
209 LLString childGetText(const LLString& id); 212 LLString childGetText(const LLString& id);
210 213
211 // LLLineEditor 214 // LLLineEditor
diff --git a/linden/indra/llui/llradiogroup.cpp b/linden/indra/llui/llradiogroup.cpp
index 0104998..5b9a353 100644
--- a/linden/indra/llui/llradiogroup.cpp
+++ b/linden/indra/llui/llradiogroup.cpp
@@ -2,6 +2,8 @@
2 * @file llradiogroup.cpp 2 * @file llradiogroup.cpp
3 * @brief LLRadioGroup base class 3 * @brief LLRadioGroup base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29// An invisible view containing multiple mutually exclusive toggling 32// An invisible view containing multiple mutually exclusive toggling
diff --git a/linden/indra/llui/llradiogroup.h b/linden/indra/llui/llradiogroup.h
index 5b3e4db..aa19b3a 100644
--- a/linden/indra/llui/llradiogroup.h
+++ b/linden/indra/llui/llradiogroup.h
@@ -2,6 +2,8 @@
2 * @file llradiogroup.h 2 * @file llradiogroup.h
3 * @brief LLRadioGroup base class 3 * @brief LLRadioGroup base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29// An invisible view containing multiple mutually exclusive toggling 32// An invisible view containing multiple mutually exclusive toggling
diff --git a/linden/indra/llui/llresizebar.cpp b/linden/indra/llui/llresizebar.cpp
index f716e8e..ac8c47c 100644
--- a/linden/indra/llui/llresizebar.cpp
+++ b/linden/indra/llui/llresizebar.cpp
@@ -2,6 +2,8 @@
2 * @file llresizebar.cpp 2 * @file llresizebar.cpp
3 * @brief LLResizeBar base class 3 * @brief LLResizeBar base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#include "linden_common.h" 32#include "linden_common.h"
diff --git a/linden/indra/llui/llresizebar.h b/linden/indra/llui/llresizebar.h
index d3596ec..d040a8b 100644
--- a/linden/indra/llui/llresizebar.h
+++ b/linden/indra/llui/llresizebar.h
@@ -2,6 +2,8 @@
2 * @file llresizebar.h 2 * @file llresizebar.h
3 * @brief LLResizeBar base class 3 * @brief LLResizeBar base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#ifndef LL_RESIZEBAR_H 32#ifndef LL_RESIZEBAR_H
diff --git a/linden/indra/llui/llresizehandle.cpp b/linden/indra/llui/llresizehandle.cpp
index d9b8fac..17b76de 100644
--- a/linden/indra/llui/llresizehandle.cpp
+++ b/linden/indra/llui/llresizehandle.cpp
@@ -2,6 +2,8 @@
2 * @file llresizehandle.cpp 2 * @file llresizehandle.cpp
3 * @brief LLResizeHandle base class 3 * @brief LLResizeHandle base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#include "linden_common.h" 32#include "linden_common.h"
diff --git a/linden/indra/llui/llresizehandle.h b/linden/indra/llui/llresizehandle.h
index b091f1f..2701613 100644
--- a/linden/indra/llui/llresizehandle.h
+++ b/linden/indra/llui/llresizehandle.h
@@ -2,6 +2,8 @@
2 * @file llresizehandle.h 2 * @file llresizehandle.h
3 * @brief LLResizeHandle base class 3 * @brief LLResizeHandle base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#ifndef LL_RESIZEHANDLE_H 32#ifndef LL_RESIZEHANDLE_H
diff --git a/linden/indra/llui/llresmgr.cpp b/linden/indra/llui/llresmgr.cpp
index 5ed2cb3..e77faa9 100644
--- a/linden/indra/llui/llresmgr.cpp
+++ b/linden/indra/llui/llresmgr.cpp
@@ -2,6 +2,8 @@
2 * @file llresmgr.cpp 2 * @file llresmgr.cpp
3 * @brief Localized resource manager 3 * @brief Localized resource manager
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29// NOTE: this is a MINIMAL implementation. The interface will remain, but the implementation will 32// NOTE: this is a MINIMAL implementation. The interface will remain, but the implementation will
diff --git a/linden/indra/llui/llresmgr.h b/linden/indra/llui/llresmgr.h
index 836d352..d9e58bc 100644
--- a/linden/indra/llui/llresmgr.h
+++ b/linden/indra/llui/llresmgr.h
@@ -2,6 +2,8 @@
2 * @file llresmgr.h 2 * @file llresmgr.h
3 * @brief Localized resource manager 3 * @brief Localized resource manager
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29// NOTE: this is a MINIMAL implementation. The interface will remain, but the implementation will 32// NOTE: this is a MINIMAL implementation. The interface will remain, but the implementation will
diff --git a/linden/indra/llui/llrootview.cpp b/linden/indra/llui/llrootview.cpp
index bf231f1..5973e4c 100644
--- a/linden/indra/llui/llrootview.cpp
+++ b/linden/indra/llui/llrootview.cpp
@@ -2,6 +2,8 @@
2 * @file llrootview.cpp 2 * @file llrootview.cpp
3 * @brief Container for all other views in an application 3 * @brief Container for all other views in an application
4 * 4 *
5 * $LicenseInfo:firstyear=2006&license=viewergpl$
6 *
5 * Copyright (c) 2006-2007, Linden Research, Inc. 7 * Copyright (c) 2006-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28#include "linden_common.h" 31#include "linden_common.h"
29 32
diff --git a/linden/indra/llui/llrootview.h b/linden/indra/llui/llrootview.h
index ce98006..aedf02c 100644
--- a/linden/indra/llui/llrootview.h
+++ b/linden/indra/llui/llrootview.h
@@ -2,6 +2,8 @@
2 * @file llrootview.h 2 * @file llrootview.h
3 * @brief Container for all other views in an application 3 * @brief Container for all other views in an application
4 * 4 *
5 * $LicenseInfo:firstyear=2006&license=viewergpl$
6 *
5 * Copyright (c) 2006-2007, Linden Research, Inc. 7 * Copyright (c) 2006-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#ifndef LLROOTVIEW_H 32#ifndef LLROOTVIEW_H
diff --git a/linden/indra/llui/llscrollbar.cpp b/linden/indra/llui/llscrollbar.cpp
index 4edf81e..99908a6 100644
--- a/linden/indra/llui/llscrollbar.cpp
+++ b/linden/indra/llui/llscrollbar.cpp
@@ -2,6 +2,8 @@
2 * @file llscrollbar.cpp 2 * @file llscrollbar.cpp
3 * @brief Scrollbar UI widget 3 * @brief Scrollbar UI widget
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#include "linden_common.h" 32#include "linden_common.h"
diff --git a/linden/indra/llui/llscrollbar.h b/linden/indra/llui/llscrollbar.h
index f6ac17d..353935c 100644
--- a/linden/indra/llui/llscrollbar.h
+++ b/linden/indra/llui/llscrollbar.h
@@ -2,6 +2,8 @@
2 * @file llscrollbar.h 2 * @file llscrollbar.h
3 * @brief Scrollbar UI widget 3 * @brief Scrollbar UI widget
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#ifndef LL_SCROLLBAR_H 32#ifndef LL_SCROLLBAR_H
diff --git a/linden/indra/llui/llscrollcontainer.cpp b/linden/indra/llui/llscrollcontainer.cpp
index b910964..8b5d009 100644
--- a/linden/indra/llui/llscrollcontainer.cpp
+++ b/linden/indra/llui/llscrollcontainer.cpp
@@ -2,6 +2,8 @@
2 * @file llscrollcontainer.cpp 2 * @file llscrollcontainer.cpp
3 * @brief LLScrollableContainerView base class 3 * @brief LLScrollableContainerView base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29//***************************************************************************** 32//*****************************************************************************
diff --git a/linden/indra/llui/llscrollcontainer.h b/linden/indra/llui/llscrollcontainer.h
index 34fff9c..9f1978b 100644
--- a/linden/indra/llui/llscrollcontainer.h
+++ b/linden/indra/llui/llscrollcontainer.h
@@ -2,6 +2,8 @@
2 * @file llscrollcontainer.h 2 * @file llscrollcontainer.h
3 * @brief LLScrollableContainerView class header file. 3 * @brief LLScrollableContainerView class header file.
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#ifndef LL_LLSCROLLCONTAINER_H 32#ifndef LL_LLSCROLLCONTAINER_H
diff --git a/linden/indra/llui/llscrollingpanellist.cpp b/linden/indra/llui/llscrollingpanellist.cpp
index eb806e4..76389e1 100644
--- a/linden/indra/llui/llscrollingpanellist.cpp
+++ b/linden/indra/llui/llscrollingpanellist.cpp
@@ -2,6 +2,8 @@
2 * @file llscrollingpanellist.cpp 2 * @file llscrollingpanellist.cpp
3 * @brief 3 * @brief
4 * 4 *
5 * $LicenseInfo:firstyear=2006&license=viewergpl$
6 *
5 * Copyright (c) 2006-2007, Linden Research, Inc. 7 * Copyright (c) 2006-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#include "linden_common.h" 32#include "linden_common.h"
diff --git a/linden/indra/llui/llscrollingpanellist.h b/linden/indra/llui/llscrollingpanellist.h
index 29e3d41..f697a99 100644
--- a/linden/indra/llui/llscrollingpanellist.h
+++ b/linden/indra/llui/llscrollingpanellist.h
@@ -1,6 +1,8 @@
1/** 1/**
2 * @file llscrollingpanellist.h 2 * @file llscrollingpanellist.h
3 * 3 *
4 * $LicenseInfo:firstyear=2006&license=viewergpl$
5 *
4 * Copyright (c) 2006-2007, Linden Research, Inc. 6 * Copyright (c) 2006-2007, Linden Research, Inc.
5 * 7 *
6 * Second Life Viewer Source Code 8 * Second Life Viewer Source Code
@@ -23,6 +25,7 @@
23 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 25 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
24 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 26 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
25 * COMPLETENESS OR PERFORMANCE. 27 * COMPLETENESS OR PERFORMANCE.
28 * $/LicenseInfo$
26 */ 29 */
27 30
28#include <vector> 31#include <vector>
diff --git a/linden/indra/llui/llscrolllistctrl.cpp b/linden/indra/llui/llscrolllistctrl.cpp
index 9e1a573..f5eef29 100644
--- a/linden/indra/llui/llscrolllistctrl.cpp
+++ b/linden/indra/llui/llscrolllistctrl.cpp
@@ -2,6 +2,8 @@
2 * @file llscrolllistctrl.cpp 2 * @file llscrolllistctrl.cpp
3 * @brief LLScrollListCtrl base class 3 * @brief LLScrollListCtrl base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#include <algorithm> 32#include <algorithm>
@@ -229,7 +232,7 @@ void LLScrollListText::setColor(const LLColor4& color)
229 *mColor = color; 232 *mColor = color;
230} 233}
231 234
232void LLScrollListText::setText(const LLString& text) 235void LLScrollListText::setText(const LLStringExplicit& text)
233{ 236{
234 mText = text; 237 mText = text;
235} 238}
@@ -620,6 +623,7 @@ std::vector<LLScrollListItem*> LLScrollListCtrl::getAllData() const
620 623
621void LLScrollListCtrl::reshape( S32 width, S32 height, BOOL called_from_parent ) 624void LLScrollListCtrl::reshape( S32 width, S32 height, BOOL called_from_parent )
622{ 625{
626 S32 old_height = mRect.getHeight();
623 LLUICtrl::reshape( width, height, called_from_parent ); 627 LLUICtrl::reshape( width, height, called_from_parent );
624 628
625 S32 heading_size = (mDisplayColumnHeaders ? mHeadingHeight : 0); 629 S32 heading_size = (mDisplayColumnHeaders ? mHeadingHeight : 0);
@@ -631,9 +635,13 @@ void LLScrollListCtrl::reshape( S32 width, S32 height, BOOL called_from_parent )
631 mRect.getHeight() - 2*( mBorderThickness + LIST_BORDER_PAD ) - heading_size ); 635 mRect.getHeight() - 2*( mBorderThickness + LIST_BORDER_PAD ) - heading_size );
632 636
633 mPageLines = mLineHeight? mItemListRect.getHeight() / mLineHeight : 0; 637 mPageLines = mLineHeight? mItemListRect.getHeight() / mLineHeight : 0;
638 if(old_height < height && getScrollPos() == mScrollbar->getDocPosMax())
639 {
640 setScrollPos(mScrollbar->getDocPosMax());
641 }
634 mScrollbar->setVisible(mPageLines < getItemCount()); 642 mScrollbar->setVisible(mPageLines < getItemCount());
635 mScrollbar->setPageSize( mPageLines ); 643 mScrollbar->setPageSize( mPageLines );
636 644
637 updateColumns(); 645 updateColumns();
638} 646}
639 647
@@ -770,6 +778,7 @@ void LLScrollListCtrl::updateColumns()
770 mColumnsIndexed.resize(mColumns.size()); 778 mColumnsIndexed.resize(mColumns.size());
771 779
772 std::map<LLString, LLScrollListColumn>::iterator column_itor; 780 std::map<LLString, LLScrollListColumn>::iterator column_itor;
781 bool first_dynamic = true;
773 for (column_itor = mColumns.begin(); column_itor != mColumns.end(); ++column_itor) 782 for (column_itor = mColumns.begin(); column_itor != mColumns.end(); ++column_itor)
774 { 783 {
775 LLScrollListColumn *column = &column_itor->second; 784 LLScrollListColumn *column = &column_itor->second;
@@ -781,6 +790,11 @@ void LLScrollListCtrl::updateColumns()
781 else if (column->mDynamicWidth) 790 else if (column->mDynamicWidth)
782 { 791 {
783 new_width = (mItemListRect.getWidth() - mTotalStaticColumnWidth) / mNumDynamicWidthColumns; 792 new_width = (mItemListRect.getWidth() - mTotalStaticColumnWidth) / mNumDynamicWidthColumns;
793 if(first_dynamic)
794 {
795 first_dynamic = false;
796 new_width += (mScrollbar->getVisible() ? 0 : SCROLLBAR_SIZE);
797 }
784 } 798 }
785 799
786 if (new_width != column->mWidth) 800 if (new_width != column->mWidth)
@@ -810,9 +824,10 @@ void LLScrollListCtrl::updateColumns()
810 LLColumnHeader* last_header = NULL; 824 LLColumnHeader* last_header = NULL;
811 for (column_ordered_it = mColumnsIndexed.begin(); column_ordered_it != mColumnsIndexed.end(); ++column_ordered_it) 825 for (column_ordered_it = mColumnsIndexed.begin(); column_ordered_it != mColumnsIndexed.end(); ++column_ordered_it)
812 { 826 {
813 if ((*column_ordered_it)->mWidth <= 0) 827 if ((*column_ordered_it)->mWidth < 0)
814 { 828 {
815 // skip hidden columns 829 // skip hidden columns
830 continue;
816 } 831 }
817 LLScrollListColumn* column = *column_ordered_it; 832 LLScrollListColumn* column = *column_ordered_it;
818 833
@@ -827,9 +842,8 @@ void LLScrollListCtrl::updateColumns()
827 right += mColumnPadding; 842 right += mColumnPadding;
828 } 843 }
829 right = llmax(left, llmin(mItemListRect.getWidth(), right)); 844 right = llmax(left, llmin(mItemListRect.getWidth(), right));
830
831 S32 header_width = right - left; 845 S32 header_width = right - left;
832 846
833 last_header->reshape(header_width, mHeadingHeight); 847 last_header->reshape(header_width, mHeadingHeight);
834 last_header->translate(left - last_header->getRect().mLeft, top - last_header->getRect().mBottom); 848 last_header->translate(left - last_header->getRect().mLeft, top - last_header->getRect().mBottom);
835 last_header->setVisible(mDisplayColumnHeaders && header_width > 0); 849 last_header->setVisible(mDisplayColumnHeaders && header_width > 0);
@@ -838,12 +852,15 @@ void LLScrollListCtrl::updateColumns()
838 } 852 }
839 853
840 // expand last column header we encountered to full list width 854 // expand last column header we encountered to full list width
855
841 if (last_header) 856 if (last_header)
842 { 857 {
843 S32 header_strip_width = mItemListRect.getWidth() + (mScrollbar->getVisible() ? 0 : SCROLLBAR_SIZE); 858 S32 header_strip_width = mItemListRect.getWidth() + (mScrollbar->getVisible() ? 0 : SCROLLBAR_SIZE);
844 S32 new_width = llmax(0, mItemListRect.mLeft + header_strip_width - last_header->getRect().mLeft); 859 S32 new_width = llmax(0, mItemListRect.mLeft + header_strip_width - last_header->getRect().mLeft);
845 last_header->reshape(new_width, last_header->getRect().getHeight()); 860 last_header->reshape(new_width, last_header->getRect().getHeight());
861 last_header->setVisible(mDisplayColumnHeaders && new_width > 0);
846 } 862 }
863
847} 864}
848 865
849void LLScrollListCtrl::setDisplayHeading(BOOL display) 866void LLScrollListCtrl::setDisplayHeading(BOOL display)
@@ -1453,7 +1470,9 @@ void LLScrollListCtrl::drawItems()
1453 LLGLSUIDefault gls_ui; 1470 LLGLSUIDefault gls_ui;
1454 1471
1455 { 1472 {
1456 LLLocalClipRect clip(mItemListRect); 1473 LLRect clip_rect = mItemListRect;
1474 if(!mScrollbar->getVisible()) clip_rect.mRight += SCROLLBAR_SIZE;
1475 LLLocalClipRect clip(clip_rect);
1457 1476
1458 S32 cur_x = x; 1477 S32 cur_x = x;
1459 S32 cur_y = y; 1478 S32 cur_y = y;
@@ -1472,10 +1491,10 @@ void LLScrollListCtrl::drawItems()
1472 item_rect.setOriginAndSize( 1491 item_rect.setOriginAndSize(
1473 cur_x, 1492 cur_x,
1474 cur_y, 1493 cur_y,
1475 mScrollbar->getVisible() ? mItemListRect.getWidth() : mItemListRect.getWidth() + mScrollbar->getRect().getWidth(), 1494 mScrollbar->getVisible() ? mItemListRect.getWidth() : mItemListRect.getWidth() + SCROLLBAR_SIZE,
1476 mLineHeight ); 1495 mLineHeight );
1477 1496
1478 lldebugs << mItemListRect.getWidth() << llendl; 1497 //llinfos << item_rect.getWidth() << llendl;
1479 1498
1480 if (item->getSelected()) 1499 if (item->getSelected())
1481 { 1500 {
@@ -1523,22 +1542,31 @@ void LLScrollListCtrl::drawItems()
1523 S32 cur_col = 0; 1542 S32 cur_col = 0;
1524 S32 dynamic_width = 0; 1543 S32 dynamic_width = 0;
1525 S32 dynamic_remainder = 0; 1544 S32 dynamic_remainder = 0;
1545 bool first_dynamic = true;
1526 if(mNumDynamicWidthColumns > 0) 1546 if(mNumDynamicWidthColumns > 0)
1527 { 1547 {
1528 dynamic_width = (mItemListRect.getWidth() - mTotalStaticColumnWidth) / mNumDynamicWidthColumns; 1548 dynamic_width = (mItemListRect.getWidth() - mTotalStaticColumnWidth) / mNumDynamicWidthColumns;
1529 dynamic_remainder = (mItemListRect.getWidth() - mTotalStaticColumnWidth) % mNumDynamicWidthColumns; 1549 dynamic_remainder = (mItemListRect.getWidth() - mTotalStaticColumnWidth) % mNumDynamicWidthColumns;
1530 } 1550 }
1551
1531 for (LLScrollListCell* cell = item->getColumn(0); cur_col < num_cols; cell = item->getColumn(++cur_col)) 1552 for (LLScrollListCell* cell = item->getColumn(0); cur_col < num_cols; cell = item->getColumn(++cur_col))
1532 { 1553 {
1533 S32 cell_width = cell->getWidth(); 1554 S32 cell_width = cell->getWidth();
1555
1534 if(mColumnsIndexed.size() > (U32)cur_col && mColumnsIndexed[cur_col] && mColumnsIndexed[cur_col]->mDynamicWidth) 1556 if(mColumnsIndexed.size() > (U32)cur_col && mColumnsIndexed[cur_col] && mColumnsIndexed[cur_col]->mDynamicWidth)
1535 { 1557 {
1536 cell_width = dynamic_width + (--dynamic_remainder ? 1 : 0); 1558 cell_width = dynamic_width + (--dynamic_remainder ? 1 : 0);
1559 if(first_dynamic)
1560 {
1561 cell_width += mScrollbar->getVisible() ? 0 : SCROLLBAR_SIZE;
1562 first_dynamic = false;
1563 }
1537 cell->setWidth(cell_width); 1564 cell->setWidth(cell_width);
1538 } 1565 }
1539 // Two ways a cell could be hidden 1566 // Two ways a cell could be hidden
1540 if (cell_width < 0 1567 if (cell_width < 0
1541 || !cell->getVisible()) continue; 1568 || !cell->getVisible()) continue;
1569
1542 LLUI::pushMatrix(); 1570 LLUI::pushMatrix();
1543 LLUI::translate((F32) cur_x, (F32) cur_y, 0.0f); 1571 LLUI::translate((F32) cur_x, (F32) cur_y, 0.0f);
1544 S32 space_left = mItemListRect.mRight - cur_x; 1572 S32 space_left = mItemListRect.mRight - cur_x;
diff --git a/linden/indra/llui/llscrolllistctrl.h b/linden/indra/llui/llscrolllistctrl.h
index 2e4dad5..5ceee2e 100644
--- a/linden/indra/llui/llscrolllistctrl.h
+++ b/linden/indra/llui/llscrolllistctrl.h
@@ -2,6 +2,8 @@
2 * @file llscrolllistctrl.h 2 * @file llscrolllistctrl.h
3 * @brief LLScrollListCtrl base class 3 * @brief LLScrollListCtrl base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#ifndef LL_SCROLLLISTCTRL_H 32#ifndef LL_SCROLLLISTCTRL_H
@@ -98,7 +101,7 @@ public:
98 virtual const LLString& getText() const { return mText.getString(); } 101 virtual const LLString& getText() const { return mText.getString(); }
99 virtual BOOL getVisible() const { return mVisible; } 102 virtual BOOL getVisible() const { return mVisible; }
100 virtual void highlightText(S32 offset, S32 num_chars) {mHighlightOffset = offset; mHighlightCount = num_chars;} 103 virtual void highlightText(S32 offset, S32 num_chars) {mHighlightOffset = offset; mHighlightCount = num_chars;}
101 void setText(const LLString& text); 104 void setText(const LLStringExplicit& text);
102 virtual void setColor(const LLColor4&); 105 virtual void setColor(const LLColor4&);
103 virtual BOOL isText() { return TRUE; } 106 virtual BOOL isText() { return TRUE; }
104 107
@@ -166,10 +169,10 @@ class LLScrollListColumn
166public: 169public:
167 // Default constructor 170 // Default constructor
168 LLScrollListColumn() : 171 LLScrollListColumn() :
169 mName(""), 172 mName(),
170 mSortingColumn(""), 173 mSortingColumn(),
171 mSortAscending(TRUE), 174 mSortAscending(TRUE),
172 mLabel(""), 175 mLabel(),
173 mWidth(-1), 176 mWidth(-1),
174 mRelWidth(-1.0), 177 mRelWidth(-1.0),
175 mDynamicWidth(FALSE), 178 mDynamicWidth(FALSE),
diff --git a/linden/indra/llui/llslider.cpp b/linden/indra/llui/llslider.cpp
index e3a3153..29626c2 100644
--- a/linden/indra/llui/llslider.cpp
+++ b/linden/indra/llui/llslider.cpp
@@ -2,6 +2,8 @@
2 * @file llslider.cpp 2 * @file llslider.cpp
3 * @brief LLSlider base class 3 * @brief LLSlider base class
4 * 4 *
5 * $LicenseInfo:firstyear=2002&license=viewergpl$
6 *
5 * Copyright (c) 2002-2007, Linden Research, Inc. 7 * Copyright (c) 2002-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#include "linden_common.h" 32#include "linden_common.h"
diff --git a/linden/indra/llui/llslider.h b/linden/indra/llui/llslider.h
index 8fcd672..2641eaa 100644
--- a/linden/indra/llui/llslider.h
+++ b/linden/indra/llui/llslider.h
@@ -2,6 +2,8 @@
2 * @file llslider.h 2 * @file llslider.h
3 * @brief A simple slider with no label. 3 * @brief A simple slider with no label.
4 * 4 *
5 * $LicenseInfo:firstyear=2002&license=viewergpl$
6 *
5 * Copyright (c) 2002-2007, Linden Research, Inc. 7 * Copyright (c) 2002-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#ifndef LL_LLSLIDER_H 32#ifndef LL_LLSLIDER_H
diff --git a/linden/indra/llui/llsliderctrl.cpp b/linden/indra/llui/llsliderctrl.cpp
index dff27cc..dd4a994 100644
--- a/linden/indra/llui/llsliderctrl.cpp
+++ b/linden/indra/llui/llsliderctrl.cpp
@@ -2,6 +2,8 @@
2 * @file llsliderctrl.cpp 2 * @file llsliderctrl.cpp
3 * @brief LLSliderCtrl base class 3 * @brief LLSliderCtrl base class
4 * 4 *
5 * $LicenseInfo:firstyear=2002&license=viewergpl$
6 *
5 * Copyright (c) 2002-2007, Linden Research, Inc. 7 * Copyright (c) 2002-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#include "linden_common.h" 32#include "linden_common.h"
@@ -167,7 +170,7 @@ void LLSliderCtrl::setValue(F32 v, BOOL from_event)
167 updateText(); 170 updateText();
168} 171}
169 172
170BOOL LLSliderCtrl::setLabelArg( const LLString& key, const LLString& text ) 173BOOL LLSliderCtrl::setLabelArg( const LLString& key, const LLStringExplicit& text )
171{ 174{
172 BOOL res = FALSE; 175 BOOL res = FALSE;
173 if (mLabelBox) 176 if (mLabelBox)
@@ -197,11 +200,11 @@ void LLSliderCtrl::clear()
197 setValue(0.0f); 200 setValue(0.0f);
198 if( mEditor ) 201 if( mEditor )
199 { 202 {
200 mEditor->setText( "" ); 203 mEditor->setText( LLString::null );
201 } 204 }
202 if( mTextBox ) 205 if( mTextBox )
203 { 206 {
204 mTextBox->setText( "" ); 207 mTextBox->setText( LLString::null );
205 } 208 }
206 209
207} 210}
diff --git a/linden/indra/llui/llsliderctrl.h b/linden/indra/llui/llsliderctrl.h
index 6896360..fa6c0bc 100644
--- a/linden/indra/llui/llsliderctrl.h
+++ b/linden/indra/llui/llsliderctrl.h
@@ -2,6 +2,8 @@
2 * @file llsliderctrl.h 2 * @file llsliderctrl.h
3 * @brief LLSliderCtrl base class 3 * @brief LLSliderCtrl base class
4 * 4 *
5 * $LicenseInfo:firstyear=2002&license=viewergpl$
6 *
5 * Copyright (c) 2002-2007, Linden Research, Inc. 7 * Copyright (c) 2002-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#ifndef LL_LLSLIDERCTRL_H 32#ifndef LL_LLSLIDERCTRL_H
@@ -77,7 +80,7 @@ public:
77 80
78 virtual void setValue(const LLSD& value ) { setValue((F32)value.asReal(), TRUE); } 81 virtual void setValue(const LLSD& value ) { setValue((F32)value.asReal(), TRUE); }
79 virtual LLSD getValue() const { return LLSD(getValueF32()); } 82 virtual LLSD getValue() const { return LLSD(getValueF32()); }
80 virtual BOOL setLabelArg( const LLString& key, const LLString& text ); 83 virtual BOOL setLabelArg( const LLString& key, const LLStringExplicit& text );
81 84
82 virtual void setMinValue(LLSD min_value) { setMinValue((F32)min_value.asReal()); } 85 virtual void setMinValue(LLSD min_value) { setMinValue((F32)min_value.asReal()); }
83 virtual void setMaxValue(LLSD max_value) { setMaxValue((F32)max_value.asReal()); } 86 virtual void setMaxValue(LLSD max_value) { setMaxValue((F32)max_value.asReal()); }
@@ -94,7 +97,7 @@ public:
94 F32 getMinValue() { return mSlider->getMinValue(); } 97 F32 getMinValue() { return mSlider->getMinValue(); }
95 F32 getMaxValue() { return mSlider->getMaxValue(); } 98 F32 getMaxValue() { return mSlider->getMaxValue(); }
96 99
97 void setLabel(const LLString& label) { if (mLabelBox) mLabelBox->setText(label); } 100 void setLabel(const LLStringExplicit& label) { if (mLabelBox) mLabelBox->setText(label); }
98 void setLabelColor(const LLColor4& c) { mTextEnabledColor = c; } 101 void setLabelColor(const LLColor4& c) { mTextEnabledColor = c; }
99 void setDisabledLabelColor(const LLColor4& c) { mTextDisabledColor = c; } 102 void setDisabledLabelColor(const LLColor4& c) { mTextDisabledColor = c; }
100 103
diff --git a/linden/indra/llui/llspinctrl.cpp b/linden/indra/llui/llspinctrl.cpp
index f587c80..2be2814 100644
--- a/linden/indra/llui/llspinctrl.cpp
+++ b/linden/indra/llui/llspinctrl.cpp
@@ -2,6 +2,8 @@
2 * @file llspinctrl.cpp 2 * @file llspinctrl.cpp
3 * @brief LLSpinCtrl base class 3 * @brief LLSpinCtrl base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#include "linden_common.h" 32#include "linden_common.h"
@@ -382,7 +385,7 @@ void LLSpinCtrl::setPrecision(S32 precision)
382 updateEditor(); 385 updateEditor();
383} 386}
384 387
385void LLSpinCtrl::setLabel(const LLString& label) 388void LLSpinCtrl::setLabel(const LLStringExplicit& label)
386{ 389{
387 if (mLabelBox) 390 if (mLabelBox)
388 { 391 {
diff --git a/linden/indra/llui/llspinctrl.h b/linden/indra/llui/llspinctrl.h
index c854ff0..f2c7b40 100644
--- a/linden/indra/llui/llspinctrl.h
+++ b/linden/indra/llui/llspinctrl.h
@@ -2,6 +2,8 @@
2 * @file llspinctrl.h 2 * @file llspinctrl.h
3 * @brief LLSpinCtrl base class 3 * @brief LLSpinCtrl base class
4 * 4 *
5 * $LicenseInfo:firstyear=2002&license=viewergpl$
6 *
5 * Copyright (c) 2002-2007, Linden Research, Inc. 7 * Copyright (c) 2002-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#ifndef LL_LLSPINCTRL_H 32#ifndef LL_LLSPINCTRL_H
@@ -93,7 +96,7 @@ public:
93 virtual void setMaxValue(F32 max) { mMaxValue = max; } 96 virtual void setMaxValue(F32 max) { mMaxValue = max; }
94 virtual void setIncrement(F32 inc) { mIncrement = inc; } 97 virtual void setIncrement(F32 inc) { mIncrement = inc; }
95 98
96 void setLabel(const LLString& label); 99 void setLabel(const LLStringExplicit& label);
97 void setLabelColor(const LLColor4& c) { mTextEnabledColor = c; } 100 void setLabelColor(const LLColor4& c) { mTextEnabledColor = c; }
98 void setDisabledLabelColor(const LLColor4& c) { mTextDisabledColor = c; } 101 void setDisabledLabelColor(const LLColor4& c) { mTextDisabledColor = c; }
99 102
diff --git a/linden/indra/llui/llstyle.cpp b/linden/indra/llui/llstyle.cpp
index 1efb4cc..1f932f7 100644
--- a/linden/indra/llui/llstyle.cpp
+++ b/linden/indra/llui/llstyle.cpp
@@ -2,6 +2,8 @@
2 * @file llstyle.cpp 2 * @file llstyle.cpp
3 * @brief Text style class 3 * @brief Text style class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#include "linden_common.h" 32#include "linden_common.h"
diff --git a/linden/indra/llui/llstyle.h b/linden/indra/llui/llstyle.h
index e6e88e7..809253f 100644
--- a/linden/indra/llui/llstyle.h
+++ b/linden/indra/llui/llstyle.h
@@ -2,6 +2,8 @@
2 * @file llstyle.h 2 * @file llstyle.h
3 * @brief Text style class 3 * @brief Text style class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#ifndef LL_LLSTYLE_H 32#ifndef LL_LLSTYLE_H
diff --git a/linden/indra/llui/lltabcontainer.cpp b/linden/indra/llui/lltabcontainer.cpp
index 135931d..1ab11f3 100644
--- a/linden/indra/llui/lltabcontainer.cpp
+++ b/linden/indra/llui/lltabcontainer.cpp
@@ -2,6 +2,8 @@
2 * @file lltabcontainer.cpp 2 * @file lltabcontainer.cpp
3 * @brief LLTabContainerCommon base class 3 * @brief LLTabContainerCommon base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#include "linden_common.h" 32#include "linden_common.h"
diff --git a/linden/indra/llui/lltabcontainer.h b/linden/indra/llui/lltabcontainer.h
index 3056c0a..c77547a 100644
--- a/linden/indra/llui/lltabcontainer.h
+++ b/linden/indra/llui/lltabcontainer.h
@@ -2,6 +2,8 @@
2 * @file lltabcontainer.h 2 * @file lltabcontainer.h
3 * @brief LLTabContainerCommon base class 3 * @brief LLTabContainerCommon base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29// Fear my script-fu! 32// Fear my script-fu!
diff --git a/linden/indra/llui/lltabcontainervertical.cpp b/linden/indra/llui/lltabcontainervertical.cpp
index e2d84a5..adbca47 100644
--- a/linden/indra/llui/lltabcontainervertical.cpp
+++ b/linden/indra/llui/lltabcontainervertical.cpp
@@ -2,6 +2,8 @@
2 * @file lltabcontainervertical.cpp 2 * @file lltabcontainervertical.cpp
3 * @brief LLTabContainerVertical base class 3 * @brief LLTabContainerVertical base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29// Fear my script-fu! 32// Fear my script-fu!
diff --git a/linden/indra/llui/lltabcontainervertical.h b/linden/indra/llui/lltabcontainervertical.h
index 77817c2..a5d3c53 100644
--- a/linden/indra/llui/lltabcontainervertical.h
+++ b/linden/indra/llui/lltabcontainervertical.h
@@ -2,6 +2,8 @@
2 * @file lltabcontainervertical.h 2 * @file lltabcontainervertical.h
3 * @brief LLTabContainerVertical base class 3 * @brief LLTabContainerVertical base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29// Fear my script-fu! 32// Fear my script-fu!
diff --git a/linden/indra/llui/lltextbox.cpp b/linden/indra/llui/lltextbox.cpp
index ba0747f..c0b0788 100644
--- a/linden/indra/llui/lltextbox.cpp
+++ b/linden/indra/llui/lltextbox.cpp
@@ -2,6 +2,8 @@
2 * @file lltextbox.cpp 2 * @file lltextbox.cpp
3 * @brief A text display widget 3 * @brief A text display widget
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#include "linden_common.h" 32#include "linden_common.h"
@@ -158,7 +161,7 @@ BOOL LLTextBox::handleMouseUp(S32 x, S32 y, MASK mask)
158 return handled; 161 return handled;
159} 162}
160 163
161void LLTextBox::setText(const LLString& text) 164void LLTextBox::setText(const LLStringExplicit& text)
162{ 165{
163 mText.assign(text); 166 mText.assign(text);
164 setLineLengths(); 167 setLineLengths();
@@ -191,7 +194,7 @@ void LLTextBox::setLineLengths()
191 } 194 }
192} 195}
193 196
194void LLTextBox::setWrappedText(const LLString& in_text, F32 max_width) 197void LLTextBox::setWrappedText(const LLStringExplicit& in_text, F32 max_width)
195{ 198{
196 if (max_width < 0.0) 199 if (max_width < 0.0)
197 { 200 {
@@ -283,7 +286,7 @@ LLSD LLTextBox::getValue() const
283 return LLSD(getText()); 286 return LLSD(getText());
284} 287}
285 288
286BOOL LLTextBox::setTextArg( const LLString& key, const LLString& text ) 289BOOL LLTextBox::setTextArg( const LLString& key, const LLStringExplicit& text )
287{ 290{
288 mText.setArg(key, text); 291 mText.setArg(key, text);
289 setLineLengths(); 292 setLineLengths();
diff --git a/linden/indra/llui/lltextbox.h b/linden/indra/llui/lltextbox.h
index e8d4690..7e7018a 100644
--- a/linden/indra/llui/lltextbox.h
+++ b/linden/indra/llui/lltextbox.h
@@ -2,6 +2,8 @@
2 * @file lltextbox.h 2 * @file lltextbox.h
3 * @brief A single text item display 3 * @brief A single text item display
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#ifndef LL_LLTEXTBOX_H 32#ifndef LL_LLTEXTBOX_H
@@ -68,8 +71,8 @@ public:
68 void setDisabledColor( const LLColor4& c) { mDisabledColor = c; } 71 void setDisabledColor( const LLColor4& c) { mDisabledColor = c; }
69 void setBackgroundColor( const LLColor4& c) { mBackgroundColor = c; } 72 void setBackgroundColor( const LLColor4& c) { mBackgroundColor = c; }
70 void setBorderColor( const LLColor4& c) { mBorderColor = c; } 73 void setBorderColor( const LLColor4& c) { mBorderColor = c; }
71 void setText( const LLString& text ); 74 void setText( const LLStringExplicit& text );
72 void setWrappedText(const LLString& text, F32 max_width = -1.0); 75 void setWrappedText(const LLStringExplicit& text, F32 max_width = -1.0);
73 // default width means use existing control width 76 // default width means use existing control width
74 77
75 void setBackgroundVisible(BOOL visible) { mBackgroundVisible = visible; } 78 void setBackgroundVisible(BOOL visible) { mBackgroundVisible = visible; }
@@ -94,7 +97,7 @@ public:
94 97
95 virtual void setValue(const LLSD& value ); 98 virtual void setValue(const LLSD& value );
96 virtual LLSD getValue() const; 99 virtual LLSD getValue() const;
97 virtual BOOL setTextArg( const LLString& key, const LLString& text ); 100 virtual BOOL setTextArg( const LLString& key, const LLStringExplicit& text );
98 101
99protected: 102protected:
100 void setLineLengths(); 103 void setLineLengths();
diff --git a/linden/indra/llui/lltexteditor.cpp b/linden/indra/llui/lltexteditor.cpp
index 552a9c9..12ad339 100644
--- a/linden/indra/llui/lltexteditor.cpp
+++ b/linden/indra/llui/lltexteditor.cpp
@@ -2,6 +2,8 @@
2 * @file lltexteditor.cpp 2 * @file lltexteditor.cpp
3 * @brief LLTextEditor base class 3 * @brief LLTextEditor base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29// Text editor widget to let users enter a a multi-line ASCII document. 32// Text editor widget to let users enter a a multi-line ASCII document.
@@ -78,7 +81,8 @@ const S32 SPACES_PER_TAB = 4;
78 81
79LLColor4 LLTextEditor::mLinkColor = LLColor4::blue; 82LLColor4 LLTextEditor::mLinkColor = LLColor4::blue;
80void (* LLTextEditor::mURLcallback)(const char*) = NULL; 83void (* LLTextEditor::mURLcallback)(const char*) = NULL;
81BOOL (* LLTextEditor::mSecondlifeURLcallback)(LLString) = NULL; 84bool (* LLTextEditor::mSecondlifeURLcallback)(const std::string&) = NULL;
85bool (* LLTextEditor::mSecondlifeURLcallbackRightClick)(const std::string&) = NULL;
82 86
83/////////////////////////////////////////////////////////////////// 87///////////////////////////////////////////////////////////////////
84//virtuals 88//virtuals
@@ -306,7 +310,8 @@ LLTextEditor::LLTextEditor(
306 mMouseDownX(0), 310 mMouseDownX(0),
307 mMouseDownY(0), 311 mMouseDownY(0),
308 mLastSelectionX(-1), 312 mLastSelectionX(-1),
309 mLastSelectionY(-1) 313 mLastSelectionY(-1),
314 mLastIMEPosition(-1,-1)
310{ 315{
311 mSourceID.generate(); 316 mSourceID.generate();
312 317
@@ -515,7 +520,7 @@ void LLTextEditor::truncate()
515 } 520 }
516} 521}
517 522
518void LLTextEditor::setText(const LLString &utf8str) 523void LLTextEditor::setText(const LLStringExplicit &utf8str)
519{ 524{
520 // LLString::removeCRLF(utf8str); 525 // LLString::removeCRLF(utf8str);
521 mUTF8Text = utf8str_removeCRLF(utf8str); 526 mUTF8Text = utf8str_removeCRLF(utf8str);
@@ -2819,7 +2824,15 @@ void LLTextEditor::drawCursor()
2819 1); 2824 1);
2820 } 2825 }
2821 2826
2822 2827 // Make sure the IME is in the right place
2828 LLRect screen_pos = getScreenRect();
2829 LLCoordGL ime_pos( screen_pos.mLeft + llfloor(cursor_left), screen_pos.mBottom + llfloor(cursor_top) );
2830 if ( ime_pos.mX != mLastIMEPosition.mX || ime_pos.mY != mLastIMEPosition.mY )
2831 {
2832 mLastIMEPosition.mX = ime_pos.mX;
2833 mLastIMEPosition.mY = ime_pos.mY;
2834 getWindow()->setLanguageTextInput( ime_pos );
2835 }
2823 } 2836 }
2824 } 2837 }
2825 } 2838 }
@@ -3055,7 +3068,7 @@ void LLTextEditor::onTabInto()
3055 3068
3056void LLTextEditor::clear() 3069void LLTextEditor::clear()
3057{ 3070{
3058 setText(""); 3071 setText(LLString::null);
3059} 3072}
3060 3073
3061// Start or stop the editor from accepting text-editing keystrokes 3074// Start or stop the editor from accepting text-editing keystrokes
@@ -3936,7 +3949,7 @@ BOOL LLTextEditor::importBuffer(const LLString& buffer )
3936 if( success ) 3949 if( success )
3937 { 3950 {
3938 // Actually set the text 3951 // Actually set the text
3939 setText( text ); 3952 setText( LLStringExplicit(text) );
3940 } 3953 }
3941 3954
3942 delete[] text; 3955 delete[] text;
diff --git a/linden/indra/llui/lltexteditor.h b/linden/indra/llui/lltexteditor.h
index 4bcfcfc..55aba57 100644
--- a/linden/indra/llui/lltexteditor.h
+++ b/linden/indra/llui/lltexteditor.h
@@ -2,6 +2,8 @@
2 * @file lltexteditor.h 2 * @file lltexteditor.h
3 * @brief LLTextEditor base class 3 * @brief LLTextEditor base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29// Text editor widget to let users enter a a multi-line ASCII document// 32// Text editor widget to let users enter a a multi-line ASCII document//
@@ -214,9 +217,10 @@ public:
214 217
215 // Callbacks 218 // Callbacks
216 static void setLinkColor(LLColor4 color) { mLinkColor = color; } 219 static void setLinkColor(LLColor4 color) { mLinkColor = color; }
217 static void setURLCallbacks( void (*callback1) (const char* url), 220 static void setURLCallbacks(void (*callback1) (const char* url),
218 BOOL (*callback2) (LLString url) ) 221 bool (*callback2) (const std::string& url),
219 { mURLcallback = callback1; mSecondlifeURLcallback = callback2;} 222 bool (*callback3) (const std::string& url) )
223 { mURLcallback = callback1; mSecondlifeURLcallback = callback2; mSecondlifeURLcallbackRightClick = callback3;}
220 224
221 void setOnScrollEndCallback(void (*callback)(void*), void* userdata); 225 void setOnScrollEndCallback(void (*callback)(void*), void* userdata);
222 226
@@ -227,7 +231,7 @@ public:
227 const LLString& getText() const; 231 const LLString& getText() const;
228 232
229 // Non-undoable 233 // Non-undoable
230 void setText(const LLString &utf8str); 234 void setText(const LLStringExplicit &utf8str);
231 void setWText(const LLWString &wtext); 235 void setWText(const LLWString &wtext);
232 236
233 S32 getMaxLength() const { return mMaxTextLength; } 237 S32 getMaxLength() const { return mMaxTextLength; }
@@ -338,7 +342,8 @@ public:
338 LLKeywords mKeywords; 342 LLKeywords mKeywords;
339 static LLColor4 mLinkColor; 343 static LLColor4 mLinkColor;
340 static void (*mURLcallback) (const char* url); 344 static void (*mURLcallback) (const char* url);
341 static BOOL (*mSecondlifeURLcallback) (LLString url); 345 static bool (*mSecondlifeURLcallback) (const std::string& url);
346 static bool (*mSecondlifeURLcallbackRightClick) (const std::string& url);
342protected: 347protected:
343 LLWString mWText; 348 LLWString mWText;
344 mutable LLString mUTF8Text; 349 mutable LLString mUTF8Text;
@@ -434,6 +439,8 @@ protected:
434 439
435 BOOL mParseHTML; 440 BOOL mParseHTML;
436 LLString mHTML; 441 LLString mHTML;
442
443 LLCoordGL mLastIMEPosition; // Last position of the IME editor
437}; 444};
438 445
439class LLTextSegment 446class LLTextSegment
diff --git a/linden/indra/llui/llui.cpp b/linden/indra/llui/llui.cpp
index d0815a7..1d2d8a7 100644
--- a/linden/indra/llui/llui.cpp
+++ b/linden/indra/llui/llui.cpp
@@ -2,6 +2,8 @@
2 * @file llui.cpp 2 * @file llui.cpp
3 * @brief UI implementation 3 * @brief UI implementation
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29// Utilities functions the user interface needs 32// Utilities functions the user interface needs
diff --git a/linden/indra/llui/llui.h b/linden/indra/llui/llui.h
index 201d88f..4d831ca 100644
--- a/linden/indra/llui/llui.h
+++ b/linden/indra/llui/llui.h
@@ -2,6 +2,8 @@
2 * @file llui.h 2 * @file llui.h
3 * @brief UI implementation 3 * @brief UI implementation
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29// All immediate-mode gl drawing should happen here. 32// All immediate-mode gl drawing should happen here.
diff --git a/linden/indra/llui/lluiconstants.h b/linden/indra/llui/lluiconstants.h
index a51267a..9e50696 100644
--- a/linden/indra/llui/lluiconstants.h
+++ b/linden/indra/llui/lluiconstants.h
@@ -2,6 +2,8 @@
2 * @file lluiconstants.h 2 * @file lluiconstants.h
3 * @brief Compile-time configuration for UI 3 * @brief Compile-time configuration for UI
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#ifndef LL_LLUICONSTANTS_H 32#ifndef LL_LLUICONSTANTS_H
diff --git a/linden/indra/llui/lluictrl.cpp b/linden/indra/llui/lluictrl.cpp
index 0ac3916..7d35475 100644
--- a/linden/indra/llui/lluictrl.cpp
+++ b/linden/indra/llui/lluictrl.cpp
@@ -3,6 +3,8 @@
3 * @author James Cook, Richard Nelson, Tom Yedwab 3 * @author James Cook, Richard Nelson, Tom Yedwab
4 * @brief Abstract base class for UI controls 4 * @brief Abstract base class for UI controls
5 * 5 *
6 * $LicenseInfo:firstyear=2001&license=viewergpl$
7 *
6 * Copyright (c) 2001-2007, Linden Research, Inc. 8 * Copyright (c) 2001-2007, Linden Research, Inc.
7 * 9 *
8 * Second Life Viewer Source Code 10 * Second Life Viewer Source Code
@@ -25,6 +27,7 @@
25 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 27 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
26 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 28 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
27 * COMPLETENESS OR PERFORMANCE. 29 * COMPLETENESS OR PERFORMANCE.
30 * $/LicenseInfo$
28 */ 31 */
29 32
30//#include "llviewerprecompiledheaders.h" 33//#include "llviewerprecompiledheaders.h"
@@ -96,13 +99,13 @@ void LLUICtrl::onCommit()
96} 99}
97 100
98// virtual 101// virtual
99BOOL LLUICtrl::setTextArg( const LLString& key, const LLString& text ) 102BOOL LLUICtrl::setTextArg( const LLString& key, const LLStringExplicit& text )
100{ 103{
101 return FALSE; 104 return FALSE;
102} 105}
103 106
104// virtual 107// virtual
105BOOL LLUICtrl::setLabelArg( const LLString& key, const LLString& text ) 108BOOL LLUICtrl::setLabelArg( const LLString& key, const LLStringExplicit& text )
106{ 109{
107 return FALSE; 110 return FALSE;
108} 111}
diff --git a/linden/indra/llui/lluictrl.h b/linden/indra/llui/lluictrl.h
index 455a8c0..00f7874 100644
--- a/linden/indra/llui/lluictrl.h
+++ b/linden/indra/llui/lluictrl.h
@@ -3,6 +3,8 @@
3 * @author James Cook, Richard Nelson, Tom Yedwab 3 * @author James Cook, Richard Nelson, Tom Yedwab
4 * @brief Abstract base class for UI controls 4 * @brief Abstract base class for UI controls
5 * 5 *
6 * $LicenseInfo:firstyear=2001&license=viewergpl$
7 *
6 * Copyright (c) 2001-2007, Linden Research, Inc. 8 * Copyright (c) 2001-2007, Linden Research, Inc.
7 * 9 *
8 * Second Life Viewer Source Code 10 * Second Life Viewer Source Code
@@ -25,6 +27,7 @@
25 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 27 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
26 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 28 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
27 * COMPLETENESS OR PERFORMANCE. 29 * COMPLETENESS OR PERFORMANCE.
30 * $/LicenseInfo$
28 */ 31 */
29 32
30#ifndef LL_LLUICTRL_H 33#ifndef LL_LLUICTRL_H
@@ -69,10 +72,10 @@ public:
69 virtual LLSD getValue() const { return LLSD(); } 72 virtual LLSD getValue() const { return LLSD(); }
70 73
71 // Defaults to no-op 74 // Defaults to no-op
72 virtual BOOL setTextArg( const LLString& key, const LLString& text ); 75 virtual BOOL setTextArg( const LLString& key, const LLStringExplicit& text );
73 76
74 // Defaults to no-op 77 // Defaults to no-op
75 virtual BOOL setLabelArg( const LLString& key, const LLString& text ); 78 virtual BOOL setLabelArg( const LLString& key, const LLStringExplicit& text );
76 79
77 // Defaults to return NULL 80 // Defaults to return NULL
78 virtual LLCtrlSelectionInterface* getSelectionInterface(); 81 virtual LLCtrlSelectionInterface* getSelectionInterface();
diff --git a/linden/indra/llui/lluictrlfactory.cpp b/linden/indra/llui/lluictrlfactory.cpp
index 70f1e3e..4b4c463 100644
--- a/linden/indra/llui/lluictrlfactory.cpp
+++ b/linden/indra/llui/lluictrlfactory.cpp
@@ -2,6 +2,8 @@
2 * @file lluictrlfactory.cpp 2 * @file lluictrlfactory.cpp
3 * @brief Factory class for creating UI controls 3 * @brief Factory class for creating UI controls
4 * 4 *
5 * $LicenseInfo:firstyear=2003&license=viewergpl$
6 *
5 * Copyright (c) 2003-2007, Linden Research, Inc. 7 * Copyright (c) 2003-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#include "linden_common.h" 32#include "linden_common.h"
@@ -470,7 +473,7 @@ LLPieMenu *LLUICtrlFactory::buildPieMenu(const LLString &filename, LLView* paren
470 // root must be called panel 473 // root must be called panel
471 if( !root->hasName( LL_PIE_MENU_TAG )) 474 if( !root->hasName( LL_PIE_MENU_TAG ))
472 { 475 {
473 llwarns << "Root node should be named " LL_PIE_MENU_TAG " in : " << filename << llendl; 476 llwarns << "Root node should be named " << LL_PIE_MENU_TAG << " in : " << filename << llendl;
474 return NULL; 477 return NULL;
475 } 478 }
476 479
@@ -805,3 +808,4 @@ void LLUICtrlFactory::registerCreator(LLString ctrlname, creator_function_t func
805 mCreatorFunctions[ctrlname] = function; 808 mCreatorFunctions[ctrlname] = function;
806} 809}
807 810
811
diff --git a/linden/indra/llui/lluictrlfactory.h b/linden/indra/llui/lluictrlfactory.h
index e12017d..486ed12 100644
--- a/linden/indra/llui/lluictrlfactory.h
+++ b/linden/indra/llui/lluictrlfactory.h
@@ -2,6 +2,8 @@
2 * @file lluictrlfactory.h 2 * @file lluictrlfactory.h
3 * @brief Factory class for creating UI controls 3 * @brief Factory class for creating UI controls
4 * 4 *
5 * $LicenseInfo:firstyear=2003&license=viewergpl$
6 *
5 * Copyright (c) 2003-2007, Linden Research, Inc. 7 * Copyright (c) 2003-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#ifndef LLUICTRLFACTORY_H 32#ifndef LLUICTRLFACTORY_H
diff --git a/linden/indra/llui/lluistring.cpp b/linden/indra/llui/lluistring.cpp
index cf1b0e0..b0da5dd 100644
--- a/linden/indra/llui/lluistring.cpp
+++ b/linden/indra/llui/lluistring.cpp
@@ -2,6 +2,8 @@
2 * @file lluistring.cpp 2 * @file lluistring.cpp
3 * @brief LLUIString base class 3 * @brief LLUIString base class
4 * 4 *
5 * $LicenseInfo:firstyear=2006&license=viewergpl$
6 *
5 * Copyright (c) 2006-2007, Linden Research, Inc. 7 * Copyright (c) 2006-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#include "linden_common.h" 32#include "linden_common.h"
diff --git a/linden/indra/llui/lluistring.h b/linden/indra/llui/lluistring.h
index c5d9152..ede8aef 100644
--- a/linden/indra/llui/lluistring.h
+++ b/linden/indra/llui/lluistring.h
@@ -3,6 +3,8 @@
3 * @author: Steve Bennetts 3 * @author: Steve Bennetts
4 * @brief LLUIString base class 4 * @brief LLUIString base class
5 * 5 *
6 * $LicenseInfo:firstyear=2006&license=viewergpl$
7 *
6 * Copyright (c) 2006-2007, Linden Research, Inc. 8 * Copyright (c) 2006-2007, Linden Research, Inc.
7 * 9 *
8 * Second Life Viewer Source Code 10 * Second Life Viewer Source Code
@@ -25,6 +27,7 @@
25 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 27 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
26 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 28 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
27 * COMPLETENESS OR PERFORMANCE. 29 * COMPLETENESS OR PERFORMANCE.
30 * $/LicenseInfo$
28 */ 31 */
29 32
30#ifndef LL_LLUISTRING_H 33#ifndef LL_LLUISTRING_H
diff --git a/linden/indra/llui/lluixmltags.h b/linden/indra/llui/lluixmltags.h
index 7728d73..305223d 100644
--- a/linden/indra/llui/lluixmltags.h
+++ b/linden/indra/llui/lluixmltags.h
@@ -1,6 +1,8 @@
1/** 1/**
2 * @file lluixmltags.h 2 * @file lluixmltags.h
3 * 3 *
4 * $LicenseInfo:firstyear=2006&license=viewergpl$
5 *
4 * Copyright (c) 2006-2007, Linden Research, Inc. 6 * Copyright (c) 2006-2007, Linden Research, Inc.
5 * 7 *
6 * Second Life Viewer Source Code 8 * Second Life Viewer Source Code
@@ -23,98 +25,99 @@
23 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 25 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
24 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 26 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
25 * COMPLETENESS OR PERFORMANCE. 27 * COMPLETENESS OR PERFORMANCE.
28 * $/LicenseInfo$
26 */ 29 */
27 30
28#ifndef LL_UI_XML_TAGS_H 31#ifndef LL_UI_XML_TAGS_H
29#define LL_UI_XML_TAGS_H 32#define LL_UI_XML_TAGS_H
30 33
31#define LL_BUTTON_TAG "button" 34#define LL_BUTTON_TAG LLString("button")
32#define LL_UI_CTRL_LOCATE_TAG "locate" 35#define LL_UI_CTRL_LOCATE_TAG LLString("locate")
33#define LL_PAD_TAG "pad" 36#define LL_PAD_TAG LLString("pad")
34#define LL_CHECK_BOX_CTRL_TAG "check_box" 37#define LL_CHECK_BOX_CTRL_TAG LLString("check_box")
35#define LL_COMBO_BOX_TAG "combo_box" 38#define LL_COMBO_BOX_TAG LLString("combo_box")
36#define LL_DRAG_HANDLE_TOP_TAG "drag_handle_top" 39#define LL_DRAG_HANDLE_TOP_TAG LLString("drag_handle_top")
37#define LL_DRAG_HANDLE_LEFT_TAG "drag_handle_left" 40#define LL_DRAG_HANDLE_LEFT_TAG LLString("drag_handle_left")
38#define LL_FLOATER_TAG "floater" 41#define LL_FLOATER_TAG LLString("floater")
39#define LL_FLOATER_VIEW_TAG "floater_view" 42#define LL_FLOATER_VIEW_TAG LLString("floater_view")
40#define LL_MULTI_FLOATER_TAG "multi_floater" 43#define LL_MULTI_FLOATER_TAG LLString("multi_floater")
41#define LL_ICON_CTRL_TAG "icon" 44#define LL_ICON_CTRL_TAG LLString("icon")
42#define LL_LINE_EDITOR_TAG "line_editor" 45#define LL_LINE_EDITOR_TAG LLString("line_editor")
43#define LL_SEARCH_EDITOR_TAG "search_editor" 46#define LL_SEARCH_EDITOR_TAG LLString("search_editor")
44#define LL_MENU_ITEM_TAG "menu_item" 47#define LL_MENU_ITEM_TAG LLString("menu_item")
45#define LL_MENU_GL_TAG "menu" 48#define LL_MENU_GL_TAG LLString("menu")
46#define LL_MENU_BAR_GL_TAG "menu_bar" 49#define LL_MENU_BAR_GL_TAG LLString("menu_bar")
47#define LL_MENU_HOLDER_GL_TAG "menu_holder" 50#define LL_MENU_HOLDER_GL_TAG LLString("menu_holder")
48#define LL_PANEL_TAG "panel" 51#define LL_PANEL_TAG LLString("panel")
49#define LL_RADIO_GROUP_TAG "radio_group" 52#define LL_RADIO_GROUP_TAG LLString("radio_group")
50#define LL_RESIZE_BAR_TAG "resize_bar" 53#define LL_RESIZE_BAR_TAG LLString("resize_bar")
51#define LL_RESIZE_HANDLE_TAG "resize_handle" 54#define LL_RESIZE_HANDLE_TAG LLString("resize_handle")
52#define LL_SCROLLBAR_TAG "scrollbar" 55#define LL_SCROLLBAR_TAG LLString("scrollbar")
53#define LL_SCROLLABLE_CONTAINER_VIEW_TAG "scroll_container" 56#define LL_SCROLLABLE_CONTAINER_VIEW_TAG LLString("scroll_container")
54#define LL_SCROLL_LIST_CTRL_TAG "scroll_list" 57#define LL_SCROLL_LIST_CTRL_TAG LLString("scroll_list")
55#define LL_SLIDER_CTRL_TAG "slider" 58#define LL_SLIDER_CTRL_TAG LLString("slider")
56#define LL_SLIDER_TAG "slider_bar" 59#define LL_SLIDER_TAG LLString("slider_bar")
57#define LL_SPIN_CTRL_TAG "spinner" 60#define LL_SPIN_CTRL_TAG LLString("spinner")
58#define LL_TAB_CONTAINER_COMMON_TAG "tab_container" 61#define LL_TAB_CONTAINER_COMMON_TAG LLString("tab_container")
59#define LL_TEXT_BOX_TAG "text" 62#define LL_TEXT_BOX_TAG LLString("text")
60#define LL_TEXT_EDITOR_TAG "text_editor" 63#define LL_TEXT_EDITOR_TAG LLString("text_editor")
61#define LL_VIEW_BORDER_TAG "view_border" 64#define LL_VIEW_BORDER_TAG LLString("view_border")
62#define LL_COLOR_SWATCH_TAG "color_swatch" 65#define LL_COLOR_SWATCH_TAG LLString("color_swatch")
63#define LL_INVENTORY_PANEL_TAG "inventory_panel" 66#define LL_INVENTORY_PANEL_TAG LLString("inventory_panel")
64#define LL_NAME_EDITOR_TAG "name_editor" 67#define LL_NAME_EDITOR_TAG LLString("name_editor")
65#define LL_NAME_LIST_TAG "name_list" 68#define LL_NAME_LIST_TAG LLString("name_list")
66#define LL_TEXTURE_PICKER_TAG "texture_picker" 69#define LL_TEXTURE_PICKER_TAG LLString("texture_picker")
67#define LL_VOLUME_SLIDER_CTRL_TAG "volume_slider" 70#define LL_VOLUME_SLIDER_CTRL_TAG LLString("volume_slider")
68#define LL_WEB_BROWSER_CTRL_TAG "web_browser" 71#define LL_WEB_BROWSER_CTRL_TAG LLString("web_browser")
69#define LL_STAT_VIEW_TAG "stat_view" 72#define LL_STAT_VIEW_TAG LLString("stat_view")
70#define LL_INVENTORY_PANEL_TAG "inventory_panel" 73#define LL_INVENTORY_PANEL_TAG LLString("inventory_panel")
71#define LL_PROGRESS_VIEW_TAG "progress_view" 74#define LL_PROGRESS_VIEW_TAG LLString("progress_view")
72#define LL_STAT_BAR_TAG "stat_bar" 75#define LL_STAT_BAR_TAG LLString("stat_bar")
73#define LL_STATUS_BAR_TAG "status_bar" 76#define LL_STATUS_BAR_TAG LLString("status_bar")
74#define LL_VIEWER_TEXT_EDITOR_TAG "viewer_text_editor" 77#define LL_VIEWER_TEXT_EDITOR_TAG LLString("viewer_text_editor")
75#define LL_TALK_VIEW_TAG "talk_view" 78#define LL_TALK_VIEW_TAG LLString("talk_view")
76#define LL_COLOR_SWATCH_CTRL_TAG "color_swatch" 79#define LL_COLOR_SWATCH_CTRL_TAG LLString("color_swatch")
77#define LL_GL_TEX_MEM_BAR_TAG "tex_mem_bar" 80#define LL_GL_TEX_MEM_BAR_TAG LLString("tex_mem_bar")
78#define LL_TEXTURE_CTRL_TAG "texture_picker" 81#define LL_TEXTURE_CTRL_TAG LLString("texture_picker")
79#define LL_TEXTURE_VIEW_TAG "texture_view" 82#define LL_TEXTURE_VIEW_TAG LLString("texture_view")
80#define LL_NAME_LIST_CTRL_TAG "name_list" 83#define LL_NAME_LIST_CTRL_TAG LLString("name_list")
81#define LL_STAT_GRAPH_TAG "stat_graph" 84#define LL_STAT_GRAPH_TAG LLString("stat_graph")
82#define LL_NAME_EDITOR_TAG "name_editor" 85#define LL_NAME_EDITOR_TAG LLString("name_editor")
83#define LL_DROP_TARGET_TAG "drop_target" 86#define LL_DROP_TARGET_TAG LLString("drop_target")
84#define LL_OVERLAY_BAR_TAG "overlay_bar" 87#define LL_OVERLAY_BAR_TAG LLString("overlay_bar")
85#define LL_NET_MAP_TAG "net_map" 88#define LL_NET_MAP_TAG LLString("net_map")
86#define LL_HUD_VIEW_TAG "hud_view" 89#define LL_HUD_VIEW_TAG LLString("hud_view")
87#define LL_MEMORY_VIEW_TAG "memory_view" 90#define LL_MEMORY_VIEW_TAG LLString("memory_view")
88#define LL_MEDIA_REMOTE_CTRL_TAG "media_remote" 91#define LL_MEDIA_REMOTE_CTRL_TAG LLString("media_remote")
89#define LL_MORPH_VIEW_TAG "morph_view" 92#define LL_MORPH_VIEW_TAG LLString("morph_view")
90#define LL_FRAME_STAT_VIEW_TAG "frame_stat_view" 93#define LL_FRAME_STAT_VIEW_TAG LLString("frame_stat_view")
91#define LL_FOLDER_VIEW_TAG "folder_view"; 94#define LL_FOLDER_VIEW_TAG LLString("folder_view")
92#define LL_SNAPSHOT_LIVE_PREVIEW_TAG "snapshot_preview" 95#define LL_SNAPSHOT_LIVE_PREVIEW_TAG LLString("snapshot_preview")
93#define LL_HOVER_VIEW_TAG "hover_view" 96#define LL_HOVER_VIEW_TAG LLString("hover_view")
94#define LL_VELOCITY_BAR_TAG "velocity_bar" 97#define LL_VELOCITY_BAR_TAG LLString("velocity_bar")
95#define LL_PERMISSIONS_VIEW_TAG "permissions_view" 98#define LL_PERMISSIONS_VIEW_TAG LLString("permissions_view")
96#define LL_SCROLLING_PANEL_LIST_TAG "scrolling_panel_list" 99#define LL_SCROLLING_PANEL_LIST_TAG LLString("scrolling_panel_list")
97#define LL_CONTAINER_VIEW_TAG "container_view" 100#define LL_CONTAINER_VIEW_TAG LLString("container_view")
98#define LL_CONSOLE_TAG "console" 101#define LL_CONSOLE_TAG LLString("console")
99#define LL_DEBUG_VIEW_TAG "debug_view" 102#define LL_DEBUG_VIEW_TAG LLString("debug_view")
100#define LL_AUDIOSTATUS_TAG "audio_status" 103#define LL_AUDIOSTATUS_TAG LLString("audio_status")
101#define LL_FAST_TIMER_VIEW_TAG "fast_timer_view" 104#define LL_FAST_TIMER_VIEW_TAG LLString("fast_timer_view")
102#define LL_MENU_ITEM_TEAR_OFF_GL_TAG "tearoff_menu" 105#define LL_MENU_ITEM_TEAR_OFF_GL_TAG LLString("tearoff_menu")
103#define LL_MENU_ITEM_BLANK_GL_TAG "menu_item_blank" 106#define LL_MENU_ITEM_BLANK_GL_TAG LLString("menu_item_blank")
104#define LL_MENU_ITEM_CALL_GL_TAG "menu_item_call" 107#define LL_MENU_ITEM_CALL_GL_TAG LLString("menu_item_call")
105#define LL_MENU_ITEM_CHECK_GL_TAG "menu_item_check" 108#define LL_MENU_ITEM_CHECK_GL_TAG LLString("menu_item_check")
106#define LL_MENU_ITEM_BRANCH_GL_TAG "menu_item_branch" 109#define LL_MENU_ITEM_BRANCH_GL_TAG LLString("menu_item_branch")
107#define LL_MENU_ITEM_BRANCH_DOWN_GL_TAG "menu_item_branch_down" 110#define LL_MENU_ITEM_BRANCH_DOWN_GL_TAG LLString("menu_item_branch_down")
108#define LL_PIE_MENU_BRANCH_TAG "pie_menu_branch" 111#define LL_PIE_MENU_BRANCH_TAG LLString("pie_menu_branch")
109#define LL_PIE_MENU_TAG "pie_menu" 112#define LL_PIE_MENU_TAG LLString("pie_menu")
110#define LL_MENU_ITEM_SEPARATOR_GL_TAG "menu_item_separator" 113#define LL_MENU_ITEM_SEPARATOR_GL_TAG LLString("menu_item_separator")
111#define LL_MENU_ITEM_VERTICAL_SEPARATOR_GL_TAG "menu_item_vertical_separator" 114#define LL_MENU_ITEM_VERTICAL_SEPARATOR_GL_TAG LLString("menu_item_vertical_separator")
112#define LL_ROOT_VIEW_TAG "root_view" 115#define LL_ROOT_VIEW_TAG LLString("root_view")
113#define LL_FOLDER_VIEW_ITEM_TAG "folder_item" 116#define LL_FOLDER_VIEW_ITEM_TAG LLString("folder_item")
114#define LL_FOLDER_VIEW_FOLDER_TAG "folder" 117#define LL_FOLDER_VIEW_FOLDER_TAG LLString("folder")
115#define LL_TEXTURE_BAR_TAG "texture_bar" 118#define LL_TEXTURE_BAR_TAG LLString("texture_bar")
116#define LL_JOYSTICK_SLIDE "joystick_slide" 119#define LL_JOYSTICK_SLIDE "joystick_slide"
117#define LL_JOYSTICK_TURN "joystick_turn" 120#define LL_JOYSTICK_TURN "joystick_turn"
118#define LL_GROUP_DROP_TARGET_TAG "group_drop_target" 121#define LL_GROUP_DROP_TARGET_TAG LLString("group_drop_target")
119#define LL_LAYOUT_STACK_TAG "layout_stack" 122#define LL_LAYOUT_STACK_TAG LLString("layout_stack")
120#endif 123#endif
diff --git a/linden/indra/llui/llundo.cpp b/linden/indra/llui/llundo.cpp
index 4e62bad..6fd5d08 100644
--- a/linden/indra/llui/llundo.cpp
+++ b/linden/indra/llui/llundo.cpp
@@ -2,6 +2,8 @@
2 * @file llundo.cpp 2 * @file llundo.cpp
3 * @brief LLUndo class 3 * @brief LLUndo class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29// Generic interface for undo/redo circular buffer 32// Generic interface for undo/redo circular buffer
diff --git a/linden/indra/llui/llundo.h b/linden/indra/llui/llundo.h
index 9a4bece..8b98297 100644
--- a/linden/indra/llui/llundo.h
+++ b/linden/indra/llui/llundo.h
@@ -2,6 +2,8 @@
2 * @file llundo.h 2 * @file llundo.h
3 * @brief LLUndo class header file 3 * @brief LLUndo class header file
4 * 4 *
5 * $LicenseInfo:firstyear=2000&license=viewergpl$
6 *
5 * Copyright (c) 2000-2007, Linden Research, Inc. 7 * Copyright (c) 2000-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#ifndef LL_LLUNDO_H 32#ifndef LL_LLUNDO_H
diff --git a/linden/indra/llui/llview.cpp b/linden/indra/llui/llview.cpp
index 2a62602..ef91d9c 100644
--- a/linden/indra/llui/llview.cpp
+++ b/linden/indra/llui/llview.cpp
@@ -3,6 +3,8 @@
3 * @author James Cook 3 * @author James Cook
4 * @brief Container for other views, anything that draws. 4 * @brief Container for other views, anything that draws.
5 * 5 *
6 * $LicenseInfo:firstyear=2001&license=viewergpl$
7 *
6 * Copyright (c) 2001-2007, Linden Research, Inc. 8 * Copyright (c) 2001-2007, Linden Research, Inc.
7 * 9 *
8 * Second Life Viewer Source Code 10 * Second Life Viewer Source Code
@@ -25,29 +27,28 @@
25 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 27 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
26 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 28 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
27 * COMPLETENESS OR PERFORMANCE. 29 * COMPLETENESS OR PERFORMANCE.
30 * $/LicenseInfo$
28 */ 31 */
29 32
30#include "linden_common.h" 33#include "linden_common.h"
31 34
32#include "llview.h" 35#include "llview.h"
33 36
34#include "llstring.h" 37#include <cassert>
35#include "llrect.h" 38#include <boost/tokenizer.hpp>
36#include "llgl.h" 39
37#include "llevent.h" 40#include "llevent.h"
38#include "llfontgl.h" 41#include "llfontgl.h"
39#include "llfocusmgr.h" 42#include "llfocusmgr.h"
43#include "llgl.h"
40#include "llglheaders.h" 44#include "llglheaders.h"
41#include "llwindow.h" 45#include "llrect.h"
42#include "llstl.h" 46#include "llstl.h"
43#include "lluictrl.h"
44#include "llui.h" // colors saved settings 47#include "llui.h" // colors saved settings
48#include "lluictrl.h"
49#include "llwindow.h"
45#include "v3color.h" 50#include "v3color.h"
46#include "llstl.h"
47 51
48#include <boost/tokenizer.hpp>
49
50#include <assert.h>
51 52
52BOOL LLView::sDebugRects = FALSE; 53BOOL LLView::sDebugRects = FALSE;
53BOOL LLView::sDebugKeys = FALSE; 54BOOL LLView::sDebugKeys = FALSE;
@@ -785,7 +786,7 @@ void LLView::setHidden(BOOL hidden)
785} 786}
786 787
787// virtual 788// virtual
788BOOL LLView::setLabelArg(const LLString& key, const LLString& text) 789BOOL LLView::setLabelArg(const LLString& key, const LLStringExplicit& text)
789{ 790{
790 return FALSE; 791 return FALSE;
791} 792}
@@ -1711,7 +1712,8 @@ BOOL LLView::hasChild(const LLString& childname, BOOL recurse) const
1711//----------------------------------------------------------------------------- 1712//-----------------------------------------------------------------------------
1712LLView* LLView::getChildByName(const LLString& name, BOOL recurse) const 1713LLView* LLView::getChildByName(const LLString& name, BOOL recurse) const
1713{ 1714{
1714 if(name.empty()) return NULL; 1715 if(name.empty())
1716 return NULL;
1715 child_list_const_iter_t child_it; 1717 child_list_const_iter_t child_it;
1716 // Look for direct children *first* 1718 // Look for direct children *first*
1717 for ( child_it = mChildList.begin(); child_it != mChildList.end(); ++child_it) 1719 for ( child_it = mChildList.begin(); child_it != mChildList.end(); ++child_it)
@@ -1724,7 +1726,7 @@ LLView* LLView::getChildByName(const LLString& name, BOOL recurse) const
1724 } 1726 }
1725 if (recurse) 1727 if (recurse)
1726 { 1728 {
1727 // Look inside the child as well. 1729 // Look inside each child as well.
1728 for ( child_it = mChildList.begin(); child_it != mChildList.end(); ++child_it) 1730 for ( child_it = mChildList.begin(); child_it != mChildList.end(); ++child_it)
1729 { 1731 {
1730 LLView* childp = *child_it; 1732 LLView* childp = *child_it;
diff --git a/linden/indra/llui/llview.h b/linden/indra/llui/llview.h
index 053ef82..63c1efc 100644
--- a/linden/indra/llui/llview.h
+++ b/linden/indra/llui/llview.h
@@ -2,6 +2,8 @@
2 * @file llview.h 2 * @file llview.h
3 * @brief Container for other views, anything that draws. 3 * @brief Container for other views, anything that draws.
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#ifndef LL_LLVIEW_H 32#ifndef LL_LLVIEW_H
@@ -33,23 +36,19 @@
33// the HUD or a dialog box or a button. It can also contain sub-views 36// the HUD or a dialog box or a button. It can also contain sub-views
34// and child widgets 37// and child widgets
35 38
36#include <iosfwd> 39#include "llcoord.h"
37#include <list> 40#include "llfontgl.h"
38 41#include "llmortician.h"
39#include "lluixmltags.h"
40#include "llrect.h"
41#include "llmousehandler.h" 42#include "llmousehandler.h"
42#include "stdenums.h" 43#include "llnametable.h"
43#include "llsd.h" 44#include "llsd.h"
44#include "llstring.h" 45#include "llstring.h"
45#include "llnametable.h" 46#include "llrect.h"
46#include "llcoord.h"
47#include "llmortician.h"
48#include "llxmlnode.h"
49#include "llfontgl.h"
50#include "llviewquery.h"
51
52#include "llui.h" 47#include "llui.h"
48#include "lluixmltags.h"
49#include "llviewquery.h"
50#include "llxmlnode.h"
51#include "stdenums.h"
53 52
54class LLColor4; 53class LLColor4;
55class LLWindow; 54class LLWindow;
@@ -291,7 +290,7 @@ public:
291 virtual void setHidden(BOOL hidden); // Never show (replacement text) 290 virtual void setHidden(BOOL hidden); // Never show (replacement text)
292 291
293 // by default, does nothing and returns false 292 // by default, does nothing and returns false
294 virtual BOOL setLabelArg( const LLString& key, const LLString& text ); 293 virtual BOOL setLabelArg( const LLString& key, const LLStringExplicit& text );
295 294
296 virtual void onVisibilityChange ( BOOL curVisibilityIn ); 295 virtual void onVisibilityChange ( BOOL curVisibilityIn );
297 296
diff --git a/linden/indra/llui/llviewborder.cpp b/linden/indra/llui/llviewborder.cpp
index 84f396b..f6cbe3a 100644
--- a/linden/indra/llui/llviewborder.cpp
+++ b/linden/indra/llui/llviewborder.cpp
@@ -2,6 +2,8 @@
2 * @file llviewborder.cpp 2 * @file llviewborder.cpp
3 * @brief LLViewBorder base class 3 * @brief LLViewBorder base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29// A customizable decorative border. Does not interact with mouse events. 32// A customizable decorative border. Does not interact with mouse events.
diff --git a/linden/indra/llui/llviewborder.h b/linden/indra/llui/llviewborder.h
index 38d6c9f..6a91c5e 100644
--- a/linden/indra/llui/llviewborder.h
+++ b/linden/indra/llui/llviewborder.h
@@ -2,6 +2,8 @@
2 * @file llviewborder.h 2 * @file llviewborder.h
3 * @brief LLViewBorder base class 3 * @brief LLViewBorder base class
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29// A customizable decorative border. Does not interact with mouse events. 32// A customizable decorative border. Does not interact with mouse events.
diff --git a/linden/indra/llui/llviewquery.cpp b/linden/indra/llui/llviewquery.cpp
index 314a483..c07587f 100644
--- a/linden/indra/llui/llviewquery.cpp
+++ b/linden/indra/llui/llviewquery.cpp
@@ -2,6 +2,8 @@
2 * @file llviewquery.cpp 2 * @file llviewquery.cpp
3 * @brief Implementation of view query class. 3 * @brief Implementation of view query class.
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#include "linden_common.h" 32#include "linden_common.h"
diff --git a/linden/indra/llui/llviewquery.h b/linden/indra/llui/llviewquery.h
index a35726a..3919ba4 100644
--- a/linden/indra/llui/llviewquery.h
+++ b/linden/indra/llui/llviewquery.h
@@ -2,6 +2,8 @@
2 * @file llviewquery.h 2 * @file llviewquery.h
3 * @brief Query algorithm for flattening and filtering the view hierarchy. 3 * @brief Query algorithm for flattening and filtering the view hierarchy.
4 * 4 *
5 * $LicenseInfo:firstyear=2001&license=viewergpl$
6 *
5 * Copyright (c) 2001-2007, Linden Research, Inc. 7 * Copyright (c) 2001-2007, Linden Research, Inc.
6 * 8 *
7 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
@@ -24,6 +26,7 @@
24 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 26 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
25 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 27 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
26 * COMPLETENESS OR PERFORMANCE. 28 * COMPLETENESS OR PERFORMANCE.
29 * $/LicenseInfo$
27 */ 30 */
28 31
29#ifndef LL_LLVIEWQUERY_H 32#ifndef LL_LLVIEWQUERY_H