1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 |
------------------------
-- ZO_Horizontal_Menu
------------------------
ZO_HORIZONAL_MENU_ALIGN_LEFT = 1
ZO_HORIZONAL_MENU_ALIGN_CENTER = 2
ZO_HORIZONAL_MENU_ALIGN_RIGHT = 3
local HORIZONTAL_MENU_DEFAULT_SPACING = 30
return object
end
self . anchorStyle = anchorStyle or ZO_HORIZONAL_MENU_ALIGN_LEFT
self . menuControls = { }
end
self . template =
{
templateName = templateName ,
spacing = spacing or HORIZONTAL_MENU_DEFAULT_SPACING
}
end
function ZO_Horizontal_Menu : AddMenuItem ( controlName , name , onSelectedCallback , onUnselectedCallback , onMouseEnterCallback , onMouseExitCallback )
local menuItemControl = CreateControlFromVirtual ( "$(parent)" .. controlName , self . control , self . template . templateName )
{
index = # self . menuControls + 1 ,
}
end
if onMouseEnterCallback then
end
if onMouseExitCallback then
end
-- Anchor new control
local previousControl = self . menuControls [ # self . menuControls ]
if previousControl then
if isValid then
if self . anchorStyle == ZO_HORIZONAL_MENU_ALIGN_LEFT then
elseif self . anchorStyle == ZO_HORIZONAL_MENU_ALIGN_CENTER then
local firstControl = self . menuControls [ 1 ]
else -- Align Right
end
else
end
else
if self . anchorStyle == ZO_HORIZONAL_MENU_ALIGN_LEFT then
elseif self . anchorStyle == ZO_HORIZONAL_MENU_ALIGN_CENTER then
else -- Anchored Right
end
end
return menuItemControl
end
if index and index > 0 and index <= # self . menuControls then
if self . selectedIndex ~= index then
if self . selectedIndex then
end
self . selectedIndex = index
self . menuControls [ self . selectedIndex ] . data . onSelectedCallback ( self . menuControls [ self . selectedIndex ] )
end
end
elseif not index then
if self . selectedIndex and self . selectedIndex <= # self . menuControls then
end
end
self . selectedIndex = nil
else
end
end
end
end
end
self . menuControls = { }
end
--Global XML
end
end |