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)
This commit is contained in:
Inusaito Sayori
2013-11-06 18:47:02 -05:00
parent f41c4dd273
commit 511b0cfb9c
31 changed files with 656 additions and 411 deletions

View File

@@ -24,7 +24,7 @@
<on_click function="PayObject" />
<on_enable function="EnablePayObject" />
</menu_item_call>
<pie_menu label="More &gt;" name="More &gt;">
<pie_menu more="true" label="More" name="More">
<menu_item_call enabled="false" label="Delete" mouse_opaque="true" name="Delete">
<on_click function="Object.Delete" />
<on_enable function="Object.EnableDelete" />
@@ -37,15 +37,15 @@
<on_click function="Tools.TakeCopy" />
<on_enable function="Tools.EnableTakeCopy" />
</menu_item_call>
<pie_menu label="Attach HUD &gt;" name="Object Attach HUD" />
<pie_menu label="Attach &gt;" name="Object Attach" />
<pie_menu label="Attach HUD" name="Object Attach HUD" />
<pie_menu label="Attach" name="Object Attach" />
<menu_item_call enabled="false" label="Return..." mouse_opaque="true" name="Return...">
<on_click function="Object.Return" />
<on_enable function="Object.EnableReturn" />
</menu_item_call>
<pie_menu label="More &gt;" name="Rate Menu">
<pie_menu more="true" label="More" name="Rate Menu">
<menu_item_separator />
<pie_menu label="Tools &gt;" name="Rate Menu">
<pie_menu label="Tools" name="Rate Menu">
<menu_item_call enabled="false" label="Destroy" mouse_opaque="true" name="Destroy">
<on_click function="Object.Destroy" />
<on_enable function="Object.EnableDestroy" />
@@ -92,7 +92,7 @@
<on_click function="Object.ReportAbuse" />
<on_enable function="Object.EnableReportAbuse" />
</menu_item_call>
<pie_menu label="Pathfinding &gt;" name="PF Menu">
<pie_menu more="true" label="Pathfinding" name="PF Menu">
<menu_item_call label="Show in linksets" name="show_in_linksets">
<on_click function="Pathfinding.Linksets.Select" />
<on_enable function="EnableSelectInPathfindingLinksets"/>
@@ -102,7 +102,7 @@
<on_enable function="EnableSelectInPathfindingCharacters"/>
</menu_item_call>
</pie_menu>
<pie_menu label="Scripts &gt;" name="ScriptsMenu">
<pie_menu label="Scripts" name="ScriptsMenu">
<menu_item_call mouse_opaque="true" label="Make Mono" name="CompileMono">
<on_click function="Tools.SelectedScriptAction" userdata="compile mono" />
<on_enable function="EditableSelectedMono" />