ui and graphics changes

* implement draw clipping using opengl stencil buffers
* allow to create Widgets by style name with g_ui.createWidgetByStyle
* styles can now have children widgets
* make proper use of the isNotPathable in pathfinding
* add scrollbar skin
This commit is contained in:
Eduardo Bart
2012-03-24 12:22:40 -03:00
parent efa9811342
commit de0008caf1
34 changed files with 210 additions and 86 deletions

View File

@@ -0,0 +1,30 @@
UIScrollBar = extends(UIWidget)
function UIScrollBar.create()
local scrollbar = UIScrollBar.internalCreate()
scrollbar:setFocusable(false)
return scrollbar
end
function UIScrollBar:onSetup()
--self.getChildById('upButton').onClick = function() self.navigateUp() end
--self.getChildById('upButton').onClick = function() self.navigateDown() end
end
function UIScrollBar:attachWidget(widget)
self.attachedWidget = widget
end
function UIScrollBar:onStyleApply(styleName, styleNode)
if styleNode['attached-to'] then
local id = styleNode['attached-to']
local parent = self:getParent()
local widget
if id == 'parent' then
widget = parent
elseif parent then
widget = parent:getChildById(id)
end
self:attachWidget(widget)
end
end

View File

@@ -50,9 +50,10 @@ function UISplitter:onMouseRelease(mousePos, mouseButton)
end
function UISplitter:onStyleApply(styleName, styleNode)
if styleNode['relative-margin'] then
self.relativeMargin = styleNode['relative-margin']
end
--TODO: relative margins
--if styleNode['relative-margin'] then
--- self.relativeMargin = styleNode['relative-margin']
--end
end
function UISplitter:canUpdateMargin(newMargin)