private Gtk.Image GetIcon(MenuIcons icon) { if (Duplicati.Library.Utility.Utility.IsClientOSX) return null; if (!_icons.ContainsKey(icon)) { switch(icon) { case MenuIcons.None: _icons[icon] = null; break; case MenuIcons.Pause: _icons[icon] = ImageToGtk(ImageLoader.Pause); break; case MenuIcons.Quit: _icons[icon] = ImageToGtk(ImageLoader.CloseMenuIcon); break; case MenuIcons.Resume: _icons[icon] = ImageToGtk(ImageLoader.Play); break; case MenuIcons.Status: _icons[icon] = ImageToGtk(ImageLoader.StatusMenuIcon); break; default: _icons[icon] = null; break; } } return _icons[icon]; }
public MenuItemWrapper(string text, MenuIcons icon, Action callback, IList <IMenuItem> subitems) { if (text == "-") { m_menu = new ToolStripSeparator(); } else { m_menu = new ToolStripMenuItem(text); if (icon != MenuIcons.None) { m_menu.Image = GetIcon(icon); } if (callback != null) { m_callback = callback; m_menu.Click += OnMenuClick; } if (subitems != null && subitems.Count > 0) { foreach (var itm in subitems) { ((ToolStripMenuItem)m_menu).DropDownItems.Add(((MenuItemWrapper)itm).MenuItem); } } } }
public MenuItemWrapper(string text, MenuIcons icon, System.Action callback, IList<IMenuItem> subitems) { if (text == "-") m_item = new SeparatorMenuItem(); else { m_item = new ImageMenuItem(text); if (!Duplicati.Library.Utility.Utility.IsClientOSX) if (icon != MenuIcons.None) { ((ImageMenuItem)m_item).Image = GetIcon(icon); //TODO: Not sure we should do this, it overrides policy? m_item.ExposeEvent += DrawImageMenuItemImage; } if (subitems != null && subitems.Count > 0) { Menu s = new Menu(); foreach(var sm in subitems) s.Add(((MenuItemWrapper)sm).m_item); m_item.Submenu = s; } if (callback != null) { m_item.Activated += ClickHandler; m_callback = callback; } } }
public void SetIcon(MenuIcons icon) { if (this.Icon != icon) { this.Icon = icon; m_parent.UpdateMenu(this); } }
private System.Drawing.Image GetIcon(MenuIcons icon) { switch(icon) { case MenuIcons.Pause: return ImageLoader.Pause; case MenuIcons.Quit: return ImageLoader.CloseMenuIcon; case MenuIcons.Resume: return ImageLoader.Play; case MenuIcons.Status: return ImageLoader.StatusMenuIcon; case MenuIcons.None: default: return null; } }
private Gtk.Image GetIcon(MenuIcons icon) { if (!_icons.ContainsKey(icon)) { _icons[icon] = null; var filename = GetFilenameForIcon(icon); if (filename != null) { filename = System.IO.Path.Combine(m_svgfolder, System.IO.Path.ChangeExtension(filename, ".svg")); if (System.IO.File.Exists(filename)) { _icons[icon] = new Gtk.Image(filename); } } } return(_icons[icon]); }
private string GetFilenameForIcon(MenuIcons icon) { switch (icon) { case MenuIcons.Pause: return("context_menu_pause"); case MenuIcons.Quit: return("context_menu_quit"); case MenuIcons.Resume: return("context_menu_resume"); case MenuIcons.Status: return("context_menu_open"); default: return(null); } }
public MenuItemWrapper(string text, MenuIcons icon, Action callback, IList<IMenuItem> subitems) { if (text == "-") m_menu = new ToolStripSeparator(); else { m_menu = new ToolStripMenuItem(text); if (icon != MenuIcons.None) m_menu.Image = GetIcon(icon); if (callback != null) { m_callback = callback; m_menu.Click += OnMenuClick; } if (subitems != null && subitems.Count > 0) foreach(var itm in subitems) ((ToolStripMenuItem)m_menu).DropDownItems.Add(((MenuItemWrapper)itm).MenuItem); } }
private Gtk.Image GetIcon(MenuIcons icon) { if (Duplicati.Library.Utility.Utility.IsClientOSX) { return(null); } if (!_icons.ContainsKey(icon)) { switch (icon) { case MenuIcons.None: _icons[icon] = null; break; case MenuIcons.Pause: _icons[icon] = ImageToGtk(ImageLoader.Pause); break; case MenuIcons.Quit: _icons[icon] = ImageToGtk(ImageLoader.CloseMenuIcon); break; case MenuIcons.Resume: _icons[icon] = ImageToGtk(ImageLoader.Play); break; case MenuIcons.Status: _icons[icon] = ImageToGtk(ImageLoader.StatusMenuIcon); break; default: _icons[icon] = null; break; } } return(_icons[icon]); }
public MenuItemWrapper(string text, MenuIcons icon, System.Action callback, IList <IMenuItem> subitems) { if (text == "-") { m_item = new SeparatorMenuItem(); } else { m_item = new ImageMenuItem(text); if (!Platform.IsClientOSX) { if (icon != MenuIcons.None) { ((ImageMenuItem)m_item).Image = GetIcon(icon); // On some (older versions) of GDK, this hack is required //m_item.ExposeEvent += DrawImageMenuItemImage; } } if (subitems != null && subitems.Count > 0) { Menu s = new Menu(); foreach (var sm in subitems) { s.Add(((MenuItemWrapper)sm).m_item); } m_item.Submenu = s; } if (callback != null) { m_item.Activated += ClickHandler; m_callback = callback; } } }
public MenuItemWrapper(string text, MenuIcons icon, System.Action callback, IList <IMenuItem> subitems) { if (text == "-") { m_item = new SeparatorMenuItem(); } else { m_item = new ImageMenuItem(text); if (!Duplicati.Library.Utility.Utility.IsClientOSX) { if (icon != MenuIcons.None) { ((ImageMenuItem)m_item).Image = GetIcon(icon); //TODO: Not sure we should do this, it overrides policy? m_item.ExposeEvent += DrawImageMenuItemImage; } } if (subitems != null && subitems.Count > 0) { Menu s = new Menu(); foreach (var sm in subitems) { s.Add(((MenuItemWrapper)sm).m_item); } m_item.Submenu = s; } if (callback != null) { m_item.Activated += ClickHandler; m_callback = callback; } } }
public void SetIcon(MenuIcons icon) { ((ImageMenuItem)m_item).Image = GetIcon(icon); }
protected override IMenuItem CreateMenuItem(string text, MenuIcons icon, System.Action callback, IList <IMenuItem> subitems) { return(new MenuItemWrapper(text, icon, callback, subitems)); }
public MenuViewModel() { Icons = new MenuIcons(); }
protected override IMenuItem CreateMenuItem (string text, MenuIcons icon, System.Action callback, IList<IMenuItem> subitems) { return new MenuItemWrapper(text, icon, callback, subitems); }
public void SetIcon(MenuIcons icons) { // Do nothing. Implementation needed for IMenuItem interface. }
protected abstract IMenuItem CreateMenuItem(string text, MenuIcons icon, Action callback, IList <IMenuItem> subitems);
protected abstract IMenuItem CreateMenuItem(string text, MenuIcons icon, Action callback, IList<IMenuItem> subitems);
public void SetIcon(MenuIcons icon) { m_menu.Image = GetIcon(icon); }