Commit Graph

36 Commits (680194deaf7a35caaa629abc16e886d71baff636)

Author SHA1 Message Date
Graham Madarasz bf6182daa8 Update Mac and Windows breakpad builds to latest 2013-03-29 07:50:08 -07:00
Nat Goodspeed 3653727e7f Introduce new LLDir::findSkinnedFilenames() method. Use as needed.
In a number of different places, for different reasons, the viewer wants to
load a UI-related file that might be overridden by a non-default skin; and
within that skin, might further be overridden by a non-default language.
Apparently, for each of those use cases, every individual developer approached
it as an entirely new problem, solving it idiosyncratically for that one case.
Not only is this a maintenance problem, but it rubs one's nose in the fact
that most such solutions consider only a subset of the relevant skin
directories.
Richard and I evolved an API intended to address all such cases: a central
LLDir method returning a list of relevant pathnames, from most general to most
localized, filtered to present only existing files; plus a couple of
convenience methods to specifically obtain the most general and most localized
available file.
There were several load-skinned-file methods (LLFloater::buildFromFile(),
LLPanel::buildFromFile() and LLUICtrlFactory::createFromFile() -- apparently
cloned-and-modified from each other) that contained funky bolted-on logic to
output the loaded data to an optional passed LLXMLNodePtr param. The trouble
is that passing that param forced each of these methods to subvert its normal
search: specifically for that case, it needed to find the baseline XML file
instead of the localized one. Richard agreed that for the intended usage
(reformatting XML files) we should use XML schema instead, and that the hacky
functionality should be removed. Remove it. Also remove
LLUICtrlFactory::getLocalizedXMLNode(), only used for those three special cases.
Some callers explicitly passed the optional LLXMLNodePtr param as NULL. Remove
that.
Remove LLFloaterUIPreview::displayFloater(save) param, which relied on the
optional output LLXMLNodePtr param. Make onClickSaveFloater() and
onClickSaveAll() emit popupAndPrintWarning() about discontinued functionality.
Recast LLFloater::buildFromFile(), LLPanel::buildFromFile(),
LLUICtrlFactory::createFromFile(), LLNotifications::loadTemplates(),
LLUI::locateSkin(), LLFontRegistry::parseFontInfo(),
LLUIColorTable::loadFromSettings(), LLUICtrlFactory::loadWidgetTemplate(),
LLUICtrlFactory::getLayeredXMLNode(), LLUIImageList::initFromFile(),
LLAppViewer::launchUpdater() and LLMediaCtrl::navigateToLocalPage() to use
findSkinnedFilenames(). (Is LLAppViewer::launchUpdater() ever called any more?
Apparently so -- though the linux-updater.bin logic to process the relevant
command-line switch has been disabled. Shrug.) (Is
LLMediaCtrl::navigateToLocalPage() ever used?? If so, why?)
Remove LLUI::setupPaths(), getXUIPaths(), getSkinPath() and
getLocalizedSkinPath(). Remove the skins/paths.xml file read by setupPaths().
The only configuration it contained was the pair of partial paths "xui/en" and
"xui/[LANGUAGE]" -- hardly likely to change. getSkinPath() specifically
returned the first of these, while getLocalizedSkinPath() specifically
returned the second. This knowledge is now embedded in findSkinnedFilenames().
Also remove paths.xml from viewer_manifest.py.
Remove injected xui_paths from LLFontGL::initClass() and
LLFontRegistry::LLFontRegistry(). These are no longer needed since
LLFontRegistry can now directly consult LLDir for its path search. Stop
passing LLUI::getXUIPaths() to LLFontGL::initClass() in LLViewerWindow's
constructor and initFonts() method.
Add LLDir::append() and add() methods for the simple task of combining two
path components separated by getDirDelimiter() -- but only if they're both
non-empty. Amazing how often that logic is replicated. Replace some existing
concatenations with add() or append().
New LLDir::findSkinnedFilenames() method must know current language. Allow
injecting current language by adding an LLDir::setSkinFolder(language) param,
and pass it where LLAppViewer::init() and initConfiguration() currently call
setSkinFolder(). Also add LLDir::getSkinFolder() and getLanguage() methods.
Change LLFLoaterUIPreview's LLLocalizationResetForcer helper to "forcibly
reset language" using LLDir::setSkinFolder() instead of LLUI::setupPaths().
Update LLDir stubs in lldir_stub.cpp and llupdaterservice_test.cpp.
Add LLDir::getUserDefaultSkinDir() to obtain often-overlooked possible skin
directory -- like getUserSkinDir() but with "default" in place of the current
skin name as the last path component. (However, we hope findSkinnedFilenames()
obviates most explicit use of such individual skin directory pathnames.)
Add LLDir unit tests for new findSkinnedFilenames() and add() methods -- the
latter exercises append() as well.
Tweak indra/integration_tests/llui_libtest/llui_libtest.cpp for all the above.
Notably, comment out its export_test_floaters() function, since the essential
LLFloater::buildFromFile(optional LLXMLNodePtr) functionality has been
removed. This may mean that llui_libtest.cpp has little remaining value, not
sure.
2012-10-10 14:57:43 -04:00
Kitty Barnett 34e7226ac8 STORM-276 FIXED Squiggles overflow line editor height when font size is set to large
- Also reduced squiggle width from 6 to 4 and prevented running past the end of a word
2012-05-15 13:13:44 +02:00
Richard Linden d56be1f175 EXP-1181 WIP as a designer I would like to specify default floater positions using realtive coordinates
refactored LLCoord code to be templated, ultimately to support arbitrary conversions
2012-02-07 12:31:48 -08:00
Richard Linden c47c31fdbf EXP-1513 FIX Underscore ( _ ) fails to show in first chat entry in Local Chat 2012-01-31 17:51:43 -08:00
Tofu Linden e416840f85 Backed out changeset c3d41f18ce2b
back-out the back-out for this branch.  yay.
2010-08-24 19:22:00 +01:00
Tofu Linden 98cc236503 Backed out changeset a62bf7c0af21
Backing out this merge that I pushed (prematurely) to the wrong place.
2010-08-24 18:44:39 +01:00
Tofu Linden 6ba23344c9 merge heads. whew. 2010-08-24 18:37:53 +01:00
Oz Linden 06b0d72efa Change license from GPL to LGPL (version 2.1) 2010-08-13 07:24:57 -04:00
Richard Linden 50d8cc6d37 first pass ui rendering performance improvements 2010-07-23 22:07:15 -07:00
Richard Linden 187a4b638d EXT-7654 - About Land Floater> Icons missing
fixed layout of embedded icons in text labels
2010-07-01 19:48:39 -07:00
richard 4966073030 moved clipping logic inside LLFontGL::maxDrawableChars controlled by EWordWrapStyle
fixes regression introduced in 3eef5ce9ae1e6fc62b9b52ce859501dd4e70fadf

reviewed by Brad
2010-01-06 12:23:56 -08:00
richard 9ff869a6b2 Backed out changeset: 4d482c1ed041 2009-12-17 10:01:55 -08:00
James Cook e8fe81c4fc Backed out changeset: cfa60aef8061, added setBlockFromValue so setting a LLRect param in code will set the individua 2009-12-16 16:04:09 -08:00
richard 3a02b9ec88 added setBlockFromValue so setting a LLRect param in code will set the individual left, right, top, bottom values, for example
don't call setupParams when creating widgets from code
moved Multiple param constraints into BaseBlock to remove extra scoping
2009-12-15 19:33:18 -08:00
angela 0098bf40ea undo the changes for LLStyle params; add sizeFromFont in LLFontGL ; use font.style, font.name and font.size params for font creating 2009-11-17 16:33:49 +08:00
Mark Palange (Mani) b4275c5d48 merge 2009-10-16 18:13:53 -07:00
Steve Bennetts 590d3b9e3a EXT-1279 Crash if font file not found.
Added getFontDefault() to llfontgl.h

--HG--
branch : branch-test
2009-10-15 14:14:46 -07:00
Richard Nelson fd312d1929 improved metrics for llfontgl::getWidth (use greater of character width/xadvance)
llfontgl::Addchar now called consistently when requesting font metrics
no longer possible to have font glyph info without rendered font

EXT-1294 - LLExpandableTextBox: wrong ellipses

reviewed by James and Mani
2009-10-14 20:16:18 +00:00
Adam Moss 8b8dfa2e2b EXT-1224 Inventory list uses ugly fake-italics
Reviewed by Richard.
2009-10-04 11:04:19 +00:00
Richard Nelson 138bf11322 merge -r 130399-131510 skinning-21 -> viewer-2.0.0-3
DEV-11254 DEV-11254 DEV-2003: DEV-21567 DEV-37301 EXT-104 EXT-138 EXT-217 EXT-256 EXT-259 EXT-259 EXT-328 EXT-348 EXT-386 EXT-399 EXT-403 EXT-460 EXT-492 EXT-492 EXT-531 EXT-537 EXT-684

improved text editor (handles multiple fonts simultaneously as well as inline widgets)
2009-08-24 20:04:52 +00:00
James Cook 8f7ec64899 Merged skinning-17 into viewer-2 for bug fixes. Commented out new IM window for now, not complete.
Merging revisions 127913-128319 of svn+ssh://svn.lindenlab.com/svn/linden/branches/skinning/skinning-17 into D:\viewer-2.0.0-3, respecting ancestry
2009-07-27 17:56:26 +00:00
Xiaohong Bao 77f56a3f3d merge QAR-1579: texture-cleanup-1. 2009-07-10 22:02:26 +00:00
James Cook 52aeaa3284 Merge skinning-14 to viewer-2, including refactoring many floaters to register them with LLFloaterReg, support for introspection of ParamBlock based UI widgets to dump XML schema, splitting llfolderview.cpp into three separate files to unravel dependencies and skeleton for for LLListView widget. Resolved conflicts in these files:
lldraghandle.h, lluictrl.h, llchiclet.cpp, llfolderview.h/cpp, lliinventorybridge.cpp, llpanelpicks.cpp, llviewermenu.cpp, floater_mute.xml, floater_preferences.xml, notifications.xml, panel_preferences_audio.xml, panel_preferences_graphics1.xml, panel_region_general.xml
svn merge -r124961:126284 svn+ssh://svn.lindenlab.com/svn/linden/branches/skinning/skinning-14
2009-07-07 00:53:05 +00:00
Steven Bennetts 9ec432034d merge -r 122421-124917 viewer-2.0.0-2 -> viewer-2.0.0-3
ignore-dead-branch
2009-06-21 08:04:56 +00:00
Christian Goetze 1aa0416aef svn merge -r114093:114412 svn+ssh://svn.lindenlab.com/svn/linden/branches/featurettes/featurettes-batch5-merge
Melinda (coco): 5th and final batch of featurettes. My work here is done.
2009-03-13 21:28:40 +00:00
Brad Kittenbrink abdc99f21b Merge of QAR-1267 to trunk. This was a combo merge of QAR-1175 (maint-render-9) and QAR-1236 (dll-msvcrt-2)
svn merge -r 109838:112264 svn+ssh://svn.lindenlab.com/svn/linden/branches/maint-render/maint-render-9-merge-r109833
2009-02-18 21:10:16 +00:00
Aaron Brashears e3cf284388 Result of svn merge -r107256:107258 svn+ssh://svn/svn/user/phoenix/license_2009_merge into trunk. QAR-1165 2009-01-08 00:05:06 +00:00
Steven Bennetts 25c10ed028 QAR-628 merge string-cleanup-5 -r 90476:90508 -> release
dataserver-is-deprecated
2008-06-26 00:39:00 +00:00
Josh Bell 5c51ae5a7b svn merge -r 85582:85586 svn+ssh://svn.lindenlab.com/svn/linden/branches/maint-viewer-5-merge
QAR-500 maint-viewer-5 merge
2008-04-24 18:38:17 +00:00
Steven Bennetts b5936a4b1d 1.19.1 Viewer merge: QAR_367, QAR-374, QAR-408, QAR-426
QAR_367 (RC1) - merge Branch_1-19-1-Viewer -r 81609 : 81993 -> release
QAR-374 (RC2) - merge Branch_1-19-1-Viewer -r 81993 : 82589 -> release
QAR-408 (RC3) - merge Branch_1-19-1-Viewer -r 82589 : 83128 -> release
QAR-426 (rc4) - merge Branch_1-19-1-Viewer -r 83125 : 83719 -> release
(Actual merge: release@83793 Branch_1-19-1-Viewer-merge@83953 -> release)
2008-04-03 19:21:14 +00:00
Steven Bennetts 6fcf38217e merge release@82858 maint-render-2-merge@83010 -> release
QAR-389
2008-03-25 22:50:26 +00:00
Aaron Brashears 5595a99623 Result of svn merge -r71162:71205 svn+ssh://svn/svn/linden/branches/new-license into release. only changes files which are not deployed or the comments section of code. 2007-10-04 23:19:43 +00:00
Don Kjer 70aaa3e444 svn merge -r 61148:61343 svn+ssh://svn/svn/linden/branches/maintenance into release 2007-05-04 21:57:06 +00:00
Richard Nelson 2ce0fc5f18 svn merge -r 59234:60086 svn+ssh://svn/svn/linden/branches/live_lsl_help2 -> release 2007-04-05 00:59:55 +00:00
James Cook 420b91db29 Print done when done. 2007-01-02 08:33:20 +00:00