public UIScreenRenderer(outki.UIScreen screen, UIWidgetHandler handler) { m_screen = screen; m_widgetHandler = handler; CreateAndInit(); }
public static UIWidgetRenderer CreateWidgetRenderer(outki.UIWidget widget, UIWidgetHandler handler) { // special case for dialogs system. if (widget.handler == "dialog-container") return new UIDialogContainerRenderer(widget, handler); return new UIWidgetRenderer(widget, handler); }
public static UIElementRenderer CreateElementRenderer(outki.UIElement element, UIWidgetHandler handler) { switch (element._rtti_type) { case outki.UIWidgetElement.TYPE: return handler.CreateWidgetRenderer(((outki.UIWidgetElement)element).widget); case outki.UIBitmapElement.TYPE: return new UIBitmapElementRenderer((outki.UIBitmapElement)element); case outki.UITextElement.TYPE: return new UITextElementRenderer((outki.UITextElement)element); case outki.UIFillElement.TYPE: return new UIFillElementRenderer((outki.UIFillElement)element); case outki.UIButtonElement.TYPE: return new UIButtonElementRenderer((outki.UIButtonElement)element); case outki.UISliderElement.TYPE: return new UISliderElementRenderer((outki.UISliderElement)element); default: return new UIDoNothingRenderer(); } }
// public UIDialogContainerRenderer(outki.UIWidget widget, UIWidgetHandler handler) : base(widget, handler) { m_handler = handler; }
public void Setup(outki.UIWidget widget, UIWidgetHandler handler) { int elements = 0; int layers = m_data.layers.Length; for (int l = 0; l < layers; l++) { outki.UIElementLayer layer = m_data.layers[l]; if (layer == null) continue; elements += layer.elements.Length; } // int count = 0; m_rtData = new ElementList[elements]; for (int l = 0; l < layers; l++) { outki.UIElementLayer layer = m_data.layers[l]; if (layer == null) continue; for (int i = 0; i < layer.elements.Length; i++) { m_rtData[count].element = layer.elements[i]; // can happen during live update. if (m_rtData[count].element != null) { m_rtData[count].renderer = handler.CreateRenderer(layer.elements[i]); } count++; } } }
public UIWidgetRenderer(outki.UIWidget widget, UIWidgetHandler handler) { m_data = widget; m_handler = handler; Setup(m_data, m_handler); }