private static QMenu GetMenuItems(DynamicGroupAction group) { m_Log.Debug("Getting menu items for " + group.Text + "."); QMenu ctx = new QMenu(group.GetType().FullName); LinuxNativePool.Instance.Retain(ctx); foreach (Moai.Platform.Menus.Action a in group.Actions) { if (a is DynamicGroupAction) { m_Log.Debug("Recursive menu add for " + a.GetType().FullName + "."); ctx.AddMenu(ActionWrapper.GetMenuItems(a as DynamicGroupAction)); } else if (a is SeperatorAction) { ctx.AddSeparator(); } else { m_Log.Debug("Normal menu add for " + a.GetType().FullName + "."); ctx.AddAction(ActionWrapper.WrapAction(a)); } } ctx.Title = group.Text; return(ctx); }
internal static QMenuBar GetMainMenu(DynamicGroupAction group) { m_Log.Debug("Getting main menu for " + group.Text + "."); QMenuBar ms = new QMenuBar(); LinuxNativePool.Instance.Retain(ms); foreach (Moai.Platform.Menus.Action a in group.Actions) { if (a is DynamicGroupAction) { m_Log.Debug("Recursive menu add for " + a.GetType().FullName + "."); ms.AddMenu(ActionWrapper.GetMenuItems(a as DynamicGroupAction)); } else if (a is SeperatorAction) { ms.AddSeparator(); } else { m_Log.Debug("Normal menu add for " + a.GetType().FullName + "."); ms.AddAction(ActionWrapper.WrapAction(a)); } } return(ms); }
public static QMenu GetContextMenu(Moai.Platform.Menus.Action[] actions) { m_Log.Debug("Getting context menu."); QMenu ctx = new QMenu(); LinuxNativePool.Instance.Retain(ctx); foreach (Moai.Platform.Menus.Action a in actions) { if (a is DynamicGroupAction) { ctx.AddMenu(ActionWrapper.GetMenuItems(a as DynamicGroupAction)); } else if (a is SeperatorAction) { ctx.AddSeparator(); } else { ctx.AddAction(ActionWrapper.WrapAction(a)); } } return(ctx); }