Commit Graph

334 Commits

Author SHA1 Message Date
Inusaito Sayori
2642a1c3ff [Warnings] Fix class/struct inconsistency. 2013-12-14 00:00:52 -05:00
Inusaito Sayori
edabdcf724 log_sStringTemplates_accesses now spews lldebugs, not llinfos 2013-12-11 15:57:05 -05:00
Inusaito Sayori
be369b5500 Merge branch 'master' of https://github.com/singularity-viewer/SingularityViewer 2013-12-04 14:05:46 -05:00
Inusaito Sayori
8fb2812899 LLIconCtrl Params 2013-12-02 20:45:07 -05:00
Inusaito Sayori
4116ac75f6 LLUICtrl Params
Also adds support for requests_front boolean attribute to lluictrl from upstream
2013-12-02 20:17:48 -05:00
Inusaito Sayori
23958965aa LLInitParam/LLUI Params enhancement
Specialized param handling for common linden types
And pre-viewer-interesting modernized llinitparam.* (includes llsdparam.cpp update)
2013-12-02 00:27:50 -05:00
Inusaito Sayori
9723a45e72 Modernize LLIconCtrl
Adds min_height and min_width attributes
Adds mPriority for controlling priority with which to call LLUI::getUIImage*
Moves specialized setImage()s into setValue
Removes mImageName and mImageID, value is stored in base as LLSD now
2013-12-01 15:58:24 -05:00
Inusaito Sayori
bbb55b0b4d LLUICtrl support for "enabled_control" and "disabled_control" attributes from upstream. 2013-12-01 11:56:45 -05:00
Siana Gearz
faf5a8e694 Translation and debranding fixes 2013-11-29 08:47:25 +01:00
Siana Gearz
8a13599436 Merge branch 'master' of https://github.com/Lirusaito/SingularityViewer 2013-11-29 06:27:05 +01:00
Inusaito Sayori
7fd61c3bf1 Fix delete not working in text editors 2013-11-25 21:03:36 -05:00
Siana Gearz
c162b470b2 Merge branch 'master' of https://github.com/Shyotl/SingularityViewer 2013-11-20 01:09:10 +01:00
Shyotl
5d2511e39e More font cleanup and updating. 2013-11-19 17:56:27 -06:00
Latif Khalifa
594eacb480 Merge branch 'master' of git://github.com/Shyotl/SingularityViewer 2013-11-19 04:44:55 +01:00
Shyotl
b9d2ad3132 Merge branch 'master' of https://github.com/singularity-viewer/SingularityViewer.git 2013-11-18 10:38:39 -06:00
Shyotl
be249ac8a1 Font update. Minor refactor, and removed some pointless code that was leaking. 2013-11-18 09:56:49 -06:00
Aleric Inglewood
bddb1ba48c Merge remote-tracking branch 'singu/master' 2013-11-15 18:00:49 +01:00
Aleric Inglewood
a8cded0cf6 Allow calling LLNotificationsUtil::add from any thread.
This makes LLStringUtil thread-safe by removing a rather unnecessary
LLFastTimer from LLStringUtil::format.

Same thing for LLTrans::getString and LLTrans::findString, where
even a comment stated that the author wasn't interested in measuring
cpu time at all. In this case I added some code back to make sure
that we're not calling LLTrans::getString() in an inner loop, which
was the reason that the LLFastTimer was added.

Made one string static to avoid 45000 look ups during login, which
kinda triggered the above test.

Finally, LLNotificationsUtil::add is made thread-safe by making
LLNotificationChannelBase::mItems thread-safe and defering a call
to LLNotifications::updateItem to the main thread when called
from another thread (using a little statemachine).
2013-11-15 17:52:52 +01:00
Inusaito Sayori
2e7d80e9ba Let shift-left-clicking in the middle of subpiemenus move back to the parent piemenu! 2013-11-12 02:02:16 -05:00
Inusaito Sayori
d678735cf6 Code cleanup in pie menu
Cleaned up hover logic and slice from x and y code duplication
(Best viewed without space changes)
2013-11-12 02:00:21 -05:00
Latif Khalifa
c6a7ae51e6 Merge branch 'master' of git://github.com/AlericInglewood/SingularityViewer 2013-11-10 11:13:55 +01:00
Inusaito Sayori
be7c33e3c7 [LLScrollColumnHeader] Fix the ImageOverlay icons being overwritten every draw and thus destroying our image_overlay parameter!
Seriously, whose idea was that?
Ignore space changes and this will be a lot easier for all of us.
2013-11-10 02:49:10 -05:00
Inusaito Sayori
a510af9480 [LLScrollColumnHeader] Fix icons disappearing in certain states, such as click. 2013-11-10 02:46:23 -05:00
Aleric Inglewood
5f9c6f1b08 AIAlert fixup. 2013-11-09 15:43:58 +01:00
Latif Khalifa
a7a2b0c227 Merge branch 'master' of git://github.com/AlericInglewood/SingularityViewer 2013-11-07 01:07:21 +01:00
Inusaito Sayori
511b0cfb9c ContextMenu Support!
LLContextMenu functionality pulled out of LLPieMenu, PieMenu is now derived from LLContextMenu
- The more attribute boolean of pie_menu element determines whether or not to have an actual submenu if it's not a pie, defaults to false which means actual submenu..
-- in the future we may want to have more more="true" depending on feedback
- Pie menu labels now dynamically get " >" appended to them (avoids stupid looking context menus)
- Positioning logic combined in part, mostly conditional still, in the future we could probably combine it more.
- handleHoverOver function combines common functionality between context and pies given an item and hover mouse coords.

LiruUseContextMenus debug setting determines which to use, default is pie, of course
- Context(/Pie) Menus are rebuilt when the setting changes value
-- this is safe at any point because all startup states have been accounted for
- "Use context menus instead of pie menus" added to System->General preferences (it's close to the bottom)
2013-11-06 18:47:02 -05:00
Inusaito Sayori
f41c4dd273 Don't open disabled submenus! 2013-11-06 17:44:11 -05:00
Aleric Inglewood
c516a71804 Move AIAlert* into namespace AIAlert and rename classes.
Instead of having several AI* classes, it turned out to be easier to
have a namespace: this allows me to define the classes in llcommon but
add (new) 'add' and 'add_modal' functions to 'AIAlert' in llui.
This is needed to avoid a collision with the 'add' functions in
LLNotificationsUtil.

The new add/add_modal makes it a lot easier to just show a caught
alert, prepending or appending new text: it turns out that that is
way more common then a re-throw.

Adjusted code as appropriate.
2013-11-05 22:30:02 +01:00
Inusaito Sayori
31e2fdc16e Allow v3 xui alternative naming of combo_item as combo_box.item 2013-11-04 22:56:36 -05:00
Inusaito Sayori
f935453859 Allow v3 xui style strings for anything panel derived. <panel.string/> 2013-11-04 22:54:44 -05:00
Aleric Inglewood
193010e947 Add THROW_[MF]ALERT[EC] (AIArgs, AIAlert, AIAlertCode, AIAlertPrefix, AIAlertLine)
A system to throw errors that allow for easy error reporting to the user
by showing a translated pop-up alert box with the error message.

The messages use strings.xml for translation and allow the usual
replacement args (ie [FILE] is replaced with a filename).

The exceptions can be cascaded, by adding more (translated) text
when caught and then re-throwing the result.

Macros are being used to support adding a function name prefix
to a message of the current function that the exception is thrown
from.

The syntax is:

  <macro>(<line>);		to show 'line'
  <macro>(<alert>, <line>);	to append 'line' to a caught alert.
  <macro>(<line>, <alert>);	to prepend 'line' to a caught alert.

  where <macro> is one of:
  THROW_ALERT, THROW_MALERT, THROW_FALERT, THROW_FMALERT,
  THROW_ALERTE, THROW_MALERTE, THROW_FALERTE, THROW_FMALERTE, where
  M = modal, F = Function name.
  and where <line> is one of:

  <xmldesc>
  <xmldesc>, AIArgs<args>

  where <xmldesc> is a string literal that will be looked up
  in strings.xml, and <args> is:

  (<key>, <replacement>)[<args>]

  There are more variations of the macros to throw an arbitrary
  class (append _CLASS), include an int code (append C) or
  to store the current errno as code (append E).

  For example, THROW_MALERTC(code, ...), or THROW_FALERT_CLASS(Foobar, ...),
  where the ... is the same as for the macros above.

Documentation and example usage has been added to aialert.h.
2013-11-05 03:01:47 +01:00
Inusaito Sayori
ec4679c2a8 Fix the bug in which right click and then delete key would no longer work to delete objects
Navigation handling without a currently selected menu entry now only happens if key is up or down arrow
(mind the space changes)
2013-10-29 06:25:22 -04:00
Latif Khalifa
bdcc4189be Merge branch 'master' of git://github.com/Shyotl/SingularityViewer 2013-10-28 22:22:29 +01:00
Shyotl
edf75a7174 setCommitOnReturn moved to from llbutton to lluictrl, cleanup some focus/key handling, avoid needless reshape calls. 2013-10-26 18:12:56 -05:00
Inusaito Sayori
4821d02051 Sometimes UI get this syncing feeling... but then everything seems fine. 2013-10-22 23:59:50 -04:00
Inusaito Sayori
fd42029a61 LLViewerWindow::handleKey(): Partial Fix for Issue 704: Keyboard shortcuts that should be passed to focused text fields are instead passed to selected prims when building
All edit keys now work, but Ctrl-A still doesn't work right, it must be grabbed by something else...
Adds LLFocusMgr::keyboardFocusHasAccelerators()
Adds virtual bool LLView::hasAccelerators() which returns false by default, overrides returning true placed in LLPreviewScript and LLPreviewNotecard
Shortcut keys added to notecard and script menu xmls

I'm thinking Qarl's Align tool handling may be receiving the Ctrl-A, we do seem to handle it differently than Exodus and Firestorm something modern could have broken the old way..
Come to think of it, those two features(Align and Select all prims) have a longstanding shortcut conflict in shortcuts... that's pretty nasty
2013-10-22 23:35:53 -04:00
Inusaito Sayori
979d139af1 Address Issue 352: Ctrl-Backspace in editable text fields 2013-09-29 19:14:56 -04:00
Inusaito Sayori
892d224b9c [Issue 1105] Add Parameter "format" to scroll list cells to define how a date cell will format its displayed date
Defaults to use RFC1123 to maintain expected behavior
2013-09-19 23:29:36 -04:00
Inusaito Sayori
e5f2d5f76e Fix Save Preview As... for textures, now save as any type we can encode to!
Removes the previous method and condenses the menu entries back into one.
 - Translations have been updated except for German, German will need to update the translation for "Save Preview As..." since the name hasn't changed.
Adds FFSAVE_IMAGE to the filepicker enums
Crossplatformity:
 - The Windows version works nicely
 - The Linux version may not work or even compile but it should..
 - The Mac version hasn't been added, instead it will default to accept any(all filter), should the provided file extension be invalid a notification will display.
2013-09-14 21:21:36 -04:00
Inusaito Sayori
241b153aaf Restore Legacy Behavior: Display tooltips on scrolllisttext cells as long as there's text there, not just if that text is truncated 2013-08-19 22:59:57 -04:00
Inusaito Sayori
709c3ec877 Fix the crash upon opening Bumps, Pushes & Hits Floater
There are two types of font names, the camelcase and the all uppercase
Since mostly uppercase is used for scroll lists, this issue went undetected
but both types are used upstream, so we now look for camelcase if we couldn't get an uppercase one
The crash itself is avoided by falling back on SansSerifSmall if no known font has the name provided.
2013-08-14 14:25:59 -04:00
Inusaito Sayori
f4dc82784f Allow flyout button items to have the label attribute 2013-07-31 15:51:00 -04:00
Inusaito Sayori
c4610214fc Prevent that annoying issue where new scroll list menu flashes in the bottom left corner briefly when created.\ 2013-07-31 01:36:29 -04:00
Inusaito Sayori
2b2a6d5ea6 Touchups to scroll list building
Moved handling of mouse_wheel_opaque and menu_file to setScrollListParameters
Removed setToolTip block from LLScrollListCtrl::fromXML since setToolTip lives inside of LLView::initFromXML which is called by LLUICtrl::initFromXML which was already called at this point
Added support for building columns from xml with relative_width which is synonymous with relwidth
Fixed namelist columns not supporting dynamic_width in xml (dynamicwidth is only acceptable in older xmls)
2013-07-27 16:40:26 -04:00
Lirusaito
d82a2d0392 Add support for generic list menu listeners
This adds enablers/visiblers: "List.EnableAnySelected" "List.EnableMultipleSelected" "List.EnableSingleSelected" "List.EnableCall" "List.EnableIsFriend" "List.EnableIsNotFriend" "List.EnableMute" "List.EnableOfferTeleport"
This adds click callbacks: "List.CopyUUIDs" "List.OfferTeleport" "List.Pay" "List.RemoveFriend" "List.RequestFriendship" "List.ShowProfile" "List.StartAdhocCall" "List.StartCall" "List.StartConference" "List.StartIM" "List.AbuseReport" "List.ParcelEject" "List.Freeze" "List.EstateBan" "List.EstateEject" "List.ToggleMute"

Exposes LLRegionInfoModel::sendEstateOwnerMessage to the public to avoid further duplicated code
2013-07-26 16:29:28 -04:00
Lirusaito
b082bc5056 Support <string name="foobar" value="foobar "/> in panel classes, like upstream 2013-07-22 23:58:03 -04:00
Lirusaito
d64c9a343c Fix issue of columns not sorting in ascending order by default 2013-07-22 20:02:45 -04:00
Lirusaito
ceb9c99736 Allow right clicking anywhere on a scroll list for a menu, except the header buttons 2013-07-18 15:51:28 -04:00
Lirusaito
d631ae8072 Add support for scrolllists with menus
In xml menu_file attribute can point to the file
In code, setContextMenu can take a prebuilt menu
2013-07-18 06:04:17 -04:00
Lirusaito
8d87d3410e When the mouse leaves a scroll list, don't leave the mouse-over highlight shown 2013-07-18 04:58:29 -04:00