public object this[int index] { get { /*AdapterItem ai = values[index]; * LGView gui = (LGView)LuaEngine.Instance.OnGuiEvent(this, LuaEngine.GuiEvents.GUI_EVENT_ADAPTERVIEW, par, index, ai.data, lastCreatedUI, mLc); * ai.view = gui; #if !NETFX_CORE //We don't need to clone ui on winrt * lastCreatedUI = gui.Clone(); #endif * return ai.view.GetView();*/ AdapterItem ai = values[index]; #if !NETFX_CORE if (lastCreatedUI != null && lastCreatedIndex == index && ai.view != null) { return(ai.view.GetView()); } #endif LGView gui = (LGView)LuaEngine.Instance.OnGuiEvent(this, LuaEngine.GuiEvents.GUI_EVENT_ADAPTERVIEW, par, index, ai.data, lastCreatedUI, mLc); ai.view = gui; values[index] = ai; #if !NETFX_CORE lastCreatedUI = gui.Clone(); lastCreatedIndex = index; #endif return(ai.view.GetView()); } set { throw new NotImplementedException(); } }
protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e) { base.OnNavigatedTo(e); LuaForm.navService = NavigationService; LuaForm.activeForm = this; if (FirstInit) { FirstInit = false; } else if (!mainPage) { luaId = NavigationContext.QueryString["luaId"]; String initUI = NavigationContext.QueryString["ui"]; if (initUI != "") { LuaViewInflator inflater = new LuaViewInflator(luaContext); this.view = inflater.ParseFile(initUI, null); Content = view.GetView(); } else { LuaEngine.Instance.OnGuiEvent(this, LuaEngine.GuiEvents.GUI_EVENT_CREATE, luaContext); } } LuaEngine.Instance.OnGuiEvent(this, LuaEngine.GuiEvents.GUI_EVENT_RESUME, luaContext); }
public LuaForm() { InitializeComponent(); LuaEngine luaEngine = LuaEngine.Instance; if (FirstInit) { mainPage = true; luaContext = LuaContext.CreateLuaContext(this); luaEngine.Startup(); luaId = luaEngine.GetMainForm(); String initUI = luaEngine.GetMainUI(); if (initUI != "") { LuaViewInflator inflater = new LuaViewInflator(luaContext); this.view = inflater.ParseFile(initUI, null); Content = view.GetView(); } else { luaEngine.OnGuiEvent(this, LuaEngine.GuiEvents.GUI_EVENT_CREATE, luaContext); } } else { luaContext = ContextQueue.Dequeue(); } }
public void SetViewXML(String xml) { LuaViewInflator inflater = new LuaViewInflator(luaContext); view = inflater.ParseFile(xml, null); Content = view.GetView(); }
public override void Populate(LGView parent) { if (parent != null) { base.Populate(parent); } foreach (LGView w in subviews) { w.Populate(this); } }
public LGView GetViewById(String lId) { if (GetId() != null && GetId() == lId) { return(this); } else { foreach (LGView w in subviews) { LGView wFound = w.GetViewById(lId); if (wFound != null) { return(wFound); } } } return(null); }
public virtual void Populate(LGView parent) { if (parent is LGScrollView) { ((ScrollViewer)parent.view).Content = view; if (!parent.IsLoaded) { LuaEngine.Instance.OnGuiEvent(parent, LuaEngine.GuiEvents.GUI_EVENT_CREATE, lc); parent.IsLoaded = true; } } else if (parent is LGLinearLayout) { ((LinearLayout)parent.view).Add(view); if (!parent.IsLoaded) { LuaEngine.Instance.OnGuiEvent(parent, LuaEngine.GuiEvents.GUI_EVENT_CREATE, lc); parent.IsLoaded = true; } } }
public LGView Clone() { LGView ret = (LGView)MemberwiseClone(); ret.lc = lc; ret.luaId = luaId; ret.subviews = new List <LGView>(); foreach (LGView v in subviews) { ret.subviews.Add(v.Clone()); } ret.Setup(); ret.view = (FrameworkElement)LuaViewInflator.Clone(ret.view, view); if (ret.view.GetType() == typeof(LinearLayout)) { LinearLayout ll = (LinearLayout)ret.view; foreach (LGView cloned in ret.subviews) { ll.Add(cloned.view); } } return(ret); }
public void SetView(LGView v) { view = v; Content = v; }