[longomatch] Replace LoadIcon calls by a helper function. This helper function has a fallback for missing icons a
- From: Andoni Morales Alastruey <amorales src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [longomatch] Replace LoadIcon calls by a helper function. This helper function has a fallback for missing icons a
- Date: Wed, 24 Sep 2014 20:21:30 +0000 (UTC)
commit 9f5f25918d2b3ca70f2729d3806aaeef3b7d98ff
Author: Julien Moutte <julien fluendo com>
Date: Mon Sep 1 20:12:43 2014 +0200
Replace LoadIcon calls by a helper function. This helper function has a fallback for missing icons and
can be used later on to improve icon loading wrt to cross platform support, scaling, etc...
LongoMatch.GUI.Helpers/MessagesHelpers.cs | 6 +-
LongoMatch.GUI.Helpers/Misc.cs | 102 +++++++++++++++-----
LongoMatch.GUI/Gui/Component/CodingWidget.cs | 12 +-
LongoMatch.GUI/Gui/Component/DashboardWidget.cs | 13 ++-
.../Gui/Component/PlaysSelectionWidget.cs | 13 ++-
LongoMatch.GUI/Gui/Component/TeamTemplateEditor.cs | 6 +-
LongoMatch.GUI/Gui/Component/TeamsComboBox.cs | 2 +-
LongoMatch.GUI/Gui/Panel/NewProjectPanel.cs | 8 +-
LongoMatch.GUI/Gui/Panel/PanelHeader.cs | 4 +-
LongoMatch.GUI/Gui/Panel/SportsTemplatesPanel.cs | 24 +++---
LongoMatch.GUI/Gui/Panel/TeamsTemplatesPanel.cs | 18 ++--
LongoMatch.GUI/Gui/Panel/WelcomePanel.cs | 4 +-
.../gtk-gui/LongoMatch.Gui.Panel.PanelHeader.cs | 29 ++----
LongoMatch.GUI/gtk-gui/gui.stetic | 10 +-
14 files changed, 151 insertions(+), 100 deletions(-)
---
diff --git a/LongoMatch.GUI.Helpers/MessagesHelpers.cs b/LongoMatch.GUI.Helpers/MessagesHelpers.cs
index 8452752..d9b3e09 100644
--- a/LongoMatch.GUI.Helpers/MessagesHelpers.cs
+++ b/LongoMatch.GUI.Helpers/MessagesHelpers.cs
@@ -52,7 +52,7 @@ namespace LongoMatch.Gui.Helpers
MessageType.Question, ButtonsType.YesNo,
question);
- md.Icon = Misc.LoadIcon(md, "longomatch", IconSize.Button);
+ md.Icon = Misc.LoadIcon("longomatch", IconSize.Button, 0);
md.Title = title;
var res = md.Run();
md.Destroy();
@@ -73,7 +73,7 @@ namespace LongoMatch.Gui.Helpers
type,
ButtonsType.Ok,
errorMessage);
- md.Icon = Misc.LoadIcon(md, "longomatch", Gtk.IconSize.Dialog);
+ md.Icon = Misc.LoadIcon("longomatch", Gtk.IconSize.Dialog, 0);
ret = md.Run();
md.Destroy();
return ret;
@@ -95,7 +95,7 @@ namespace LongoMatch.Gui.Helpers
dialog.AddButton (Catalog.GetString("Add"), ResponseType.Ok);
dialog.VBox.PackStart (label, false, false, 0);
dialog.VBox.PackStart (entry, true, true, 0);
- dialog.Icon = Misc.LoadIcon (parent, "longomatch", Gtk.IconSize.Dialog);
+ dialog.Icon = Misc.LoadIcon ("longomatch", Gtk.IconSize.Dialog, 0);
dialog.ShowAll ();
if (dialog.Run () == (int) ResponseType.Ok) {
ret = entry.Text;
diff --git a/LongoMatch.GUI.Helpers/Misc.cs b/LongoMatch.GUI.Helpers/Misc.cs
index a9c8c5c..205c93b 100644
--- a/LongoMatch.GUI.Helpers/Misc.cs
+++ b/LongoMatch.GUI.Helpers/Misc.cs
@@ -17,6 +17,7 @@
//
using System;
using System.Linq;
+using System.Collections;
using System.IO;
using Gtk;
using Gdk;
@@ -35,6 +36,8 @@ namespace LongoMatch.Gui.Helpers
public class Misc
{
public static string lastFilename;
+
+ public static Hashtable missingIcons = new Hashtable ();
public static FileFilter GetFileFilter() {
FileFilter filter = new FileFilter();
@@ -167,35 +170,86 @@ namespace LongoMatch.Gui.Helpers
qualityBox.Active = active;
return qualityStore;
}
-
- public static Gdk.Pixbuf LoadIcon (Gtk.Widget widget, string name, Gtk.IconSize size)
+
+ /// <summary>
+ /// Loads the missing icon for a given Gtk.IconSize.
+ /// </summary>
+ /// <returns>The missing icon. This function uses a cache internally.</returns>
+ /// <param name="size">Size as a Gtk.IconSize.</param>
+ public static Gdk.Pixbuf LoadMissingIcon (Gtk.IconSize size)
+ {
+ int sz, sy;
+ global::Gtk.Icon.SizeLookup (size, out sz, out sy);
+ return LoadMissingIcon (sz);
+ }
+
+ /// <summary>
+ /// Loads the missing icon for a given size in pixels.
+ /// </summary>
+ /// <returns>The missing icon. This function uses a cache internally.</returns>
+ /// <param name="sz">Size in pixels.</param>
+ public static Gdk.Pixbuf LoadMissingIcon (int sz)
+ {
+ if (!missingIcons.ContainsKey (sz)) {
+ Gdk.Pixmap pmap = new Gdk.Pixmap (Gdk.Screen.Default.RootWindow, sz, sz);
+ Gdk.GC gc = new Gdk.GC (pmap);
+ gc.RgbFgColor = new Gdk.Color (255, 255, 255);
+ pmap.DrawRectangle (gc, true, 0, 0, sz, sz);
+ gc.RgbFgColor = new Gdk.Color (0, 0, 0);
+ pmap.DrawRectangle (gc, false, 0, 0, (sz - 1), (sz - 1));
+ gc.SetLineAttributes (3, Gdk.LineStyle.Solid, Gdk.CapStyle.Round,
Gdk.JoinStyle.Round);
+ gc.RgbFgColor = new Gdk.Color (255, 0, 0);
+ pmap.DrawLine (gc, (sz / 4), (sz / 4), ((sz - 1) - (sz / 4)), ((sz - 1) - (sz
/ 4)));
+ pmap.DrawLine (gc, ((sz - 1) - (sz / 4)), (sz / 4), (sz / 4), ((sz - 1) - (sz
/ 4)));
+ missingIcons[sz] = Gdk.Pixbuf.FromDrawable (pmap, pmap.Colormap, 0, 0, 0, 0,
sz, sz);
+ }
+ return (Gdk.Pixbuf) missingIcons [sz];
+ }
+
+ /// <summary>
+ /// Loads the icon for a given name and size.
+ /// </summary>
+ /// <returns>The icon as a Gdk.Pixbuf or missing image icon if not found.</returns>
+ /// <param name="name">Icon Name.</param>
+ /// <param name="size">Icon Size in pixels.</param>
+ /// <param name="flags">Lookup Flags like ForceSVG.</param>
+ public static Gdk.Pixbuf LoadIcon (string name, int size, IconLookupFlags flags)
+ {
+ try {
+ return IconTheme.Default.LoadIcon (name, size, flags);
+ } catch (System.Exception) {
+ return LoadMissingIcon (size);
+ }
+ }
+
+ /// <summary>
+ /// Loads the icon for a given name and size.
+ /// </summary>
+ /// <returns>The icon as a Gdk.Pixbuf or missing image icon if not found.</returns>
+ /// <param name="name">Icon Name.</param>
+ /// <param name="size">Icon Size as a Gtk.IconSize.</param>
+ /// <param name="flags">Lookup Flags like ForceSVG.</param>
+ public static Gdk.Pixbuf LoadIcon (string name, Gtk.IconSize size, IconLookupFlags flags)
+ {
+ int sz, sy;
+ global::Gtk.Icon.SizeLookup (size, out sz, out sy);
+ return LoadIcon (name, sz, flags);
+ }
+
+ /// <summary>
+ /// Loads the stock icon for a given name and size.
+ /// </summary>
+ /// <returns>The stock icon.</returns>
+ /// <param name="widget">Widget to get the icon for. Themes can modify the stock icon for a
specific widget.</param>
+ /// <param name="name">Name.</param>
+ /// <param name="size">Size as Gtk.IconSize.</param>
+ public static Gdk.Pixbuf LoadStockIcon (Gtk.Widget widget, string name, Gtk.IconSize size)
{
Gdk.Pixbuf res = widget.RenderIcon (name, size, null);
if ((res != null)) {
return res;
} else {
- int sz;
- int sy;
- global::Gtk.Icon.SizeLookup (size, out sz, out sy);
- try {
- return Gtk.IconTheme.Default.LoadIcon (name, sz, 0);
- } catch (System.Exception) {
- if ((name != "gtk-missing-image")) {
- return LoadIcon (widget, "gtk-missing-image", size);
- } else {
- Gdk.Pixmap pmap = new Gdk.Pixmap
(Gdk.Screen.Default.RootWindow, sz, sz);
- Gdk.GC gc = new Gdk.GC (pmap);
- gc.RgbFgColor = new Gdk.Color (255, 255, 255);
- pmap.DrawRectangle (gc, true, 0, 0, sz, sz);
- gc.RgbFgColor = new Gdk.Color (0, 0, 0);
- pmap.DrawRectangle (gc, false, 0, 0, (sz - 1), (sz - 1));
- gc.SetLineAttributes (3, Gdk.LineStyle.Solid,
Gdk.CapStyle.Round, Gdk.JoinStyle.Round);
- gc.RgbFgColor = new Gdk.Color (255, 0, 0);
- pmap.DrawLine (gc, (sz / 4), (sz / 4), ((sz - 1) - (sz / 4)),
((sz - 1) - (sz / 4)));
- pmap.DrawLine (gc, ((sz - 1) - (sz / 4)), (sz / 4), (sz / 4),
((sz - 1) - (sz / 4)));
- return Gdk.Pixbuf.FromDrawable (pmap, pmap.Colormap, 0, 0, 0,
0, sz, sz);
- }
- }
+ return LoadMissingIcon (size);
}
}
diff --git a/LongoMatch.GUI/Gui/Component/CodingWidget.cs b/LongoMatch.GUI/Gui/Component/CodingWidget.cs
index ab93a30..e49a827 100644
--- a/LongoMatch.GUI/Gui/Component/CodingWidget.cs
+++ b/LongoMatch.GUI/Gui/Component/CodingWidget.cs
@@ -135,12 +135,12 @@ namespace LongoMatch.Gui.Component
int s = StyleConf.NotebookTabIconSize;
IconLookupFlags f = IconLookupFlags.ForceSvg;
- timelineIco = IconTheme.Default.LoadIcon ("longomatch-tab-timeline", s, f);
- timelineActiveIco = IconTheme.Default.LoadIcon ("longomatch-tab-active-timeline", s,
f);
- dashboardIco = IconTheme.Default.LoadIcon ("longomatch-tab-dashboard", s, f);
- dashboardActiveIco = IconTheme.Default.LoadIcon ("longomatch-tab-active-dashboard",
s, f);
- posIco = IconTheme.Default.LoadIcon ("longomatch-tab-position", s, f);
- posAtiveIco = IconTheme.Default.LoadIcon ("longomatch-tab-active-position", s, f);
+ timelineIco = Helpers.Misc.LoadIcon ("longomatch-tab-timeline", s, f);
+ timelineActiveIco = Helpers.Misc.LoadIcon ("longomatch-tab-active-timeline", s, f);
+ dashboardIco = Helpers.Misc.LoadIcon ("longomatch-tab-dashboard", s, f);
+ dashboardActiveIco = Helpers.Misc.LoadIcon ("longomatch-tab-active-dashboard", s, f);
+ posIco = Helpers.Misc.LoadIcon ("longomatch-tab-position", s, f);
+ posAtiveIco = Helpers.Misc.LoadIcon ("longomatch-tab-active-position", s, f);
}
void SetTabProps (Widget widget, bool active)
diff --git a/LongoMatch.GUI/Gui/Component/DashboardWidget.cs b/LongoMatch.GUI/Gui/Component/DashboardWidget.cs
index d7f34b7..aa7cb7d 100644
--- a/LongoMatch.GUI/Gui/Component/DashboardWidget.cs
+++ b/LongoMatch.GUI/Gui/Component/DashboardWidget.cs
@@ -26,6 +26,7 @@ using LongoMatch.Handlers;
using LongoMatch.Store;
using LongoMatch.Store.Templates;
using LongoMatch.Gui;
+using Helpers = LongoMatch.Gui.Helpers;
using LongoMatch.Drawing.Widgets;
using LongoMatch.Drawing.Cairo;
using Mono.Unix;
@@ -150,11 +151,11 @@ namespace LongoMatch.Gui.Component
hbuttonbox2.Visible = tagMode == TagMode.Edit && internalButtons;
editbutton.Active = value == TagMode.Edit;
if (value == TagMode.Edit) {
- editimage.Pixbuf = IconTheme.Default.LoadIcon
("longomatch-dash-edit_active",
- 22,
IconLookupFlags.ForceSvg);
+ editimage.Pixbuf = Helpers.Misc.LoadIcon
("longomatch-dash-edit_active",
+ 22, IconLookupFlags.ForceSvg);
} else {
- editimage.Pixbuf = IconTheme.Default.LoadIcon ("longomatch-dash-edit",
- 22,
IconLookupFlags.ForceSvg);
+ editimage.Pixbuf = Helpers.Misc.LoadIcon ("longomatch-dash-edit",
+ 22, IconLookupFlags.ForceSvg);
}
ignoreChanges = false;
}
@@ -212,8 +213,8 @@ namespace LongoMatch.Gui.Component
toolbar.Orientation = Orientation.Vertical;
toolbar.ToolbarStyle = ToolbarStyle.Icons;
- editimage = new Gtk.Image (IconTheme.Default.LoadIcon ("longomatch-dash-edit_active",
- 22, IconLookupFlags.ForceSvg));
+ editimage = new Gtk.Image (Helpers.Misc.LoadIcon ("longomatch-dash-edit_active",
+ 22, IconLookupFlags.ForceSvg));
editbutton = new ToggleToolButton ();
editbutton.IconWidget = editimage;
editbutton.Active = true;
diff --git a/LongoMatch.GUI/Gui/Component/PlaysSelectionWidget.cs
b/LongoMatch.GUI/Gui/Component/PlaysSelectionWidget.cs
index bfcbf5a..8ad7e28 100644
--- a/LongoMatch.GUI/Gui/Component/PlaysSelectionWidget.cs
+++ b/LongoMatch.GUI/Gui/Component/PlaysSelectionWidget.cs
@@ -24,6 +24,7 @@ using LongoMatch.Common;
using LongoMatch.Handlers;
using LongoMatch.Interfaces;
using LongoMatch.Store;
+using Helpers = LongoMatch.Gui.Helpers;
using Gdk;
namespace LongoMatch.Gui.Component
@@ -107,12 +108,12 @@ namespace LongoMatch.Gui.Component
int s = StyleConf.NotebookTabIconSize;
IconLookupFlags f = IconLookupFlags.ForceSvg;
- listIco = IconTheme.Default.LoadIcon ("longomatch-tab-dashboard", s, f);
- listActiveIco = IconTheme.Default.LoadIcon ("longomatch-tab-active-dashboard", s, f);
- filtersIco = IconTheme.Default.LoadIcon ("longomatch-tab-filter", s, f);
- filtersActiveIco = IconTheme.Default.LoadIcon ("longomatch-tab-active-filter", s, f);
- playlistIco = IconTheme.Default.LoadIcon ("longomatch-tab-playlist", s, f);
- playlistActiveIco = IconTheme.Default.LoadIcon ("longomatch-tab-active-playlist", s,
f);
+ listIco = Helpers.Misc.LoadIcon ("longomatch-tab-dashboard", s, f);
+ listActiveIco = Helpers.Misc.LoadIcon ("longomatch-tab-active-dashboard", s, f);
+ filtersIco = Helpers.Misc.LoadIcon ("longomatch-tab-filter", s, f);
+ filtersActiveIco = Helpers.Misc.LoadIcon ("longomatch-tab-active-filter", s, f);
+ playlistIco = Helpers.Misc.LoadIcon ("longomatch-tab-playlist", s, f);
+ playlistActiveIco = Helpers.Misc.LoadIcon ("longomatch-tab-active-playlist", s, f);
}
void SetTabProps (Widget widget, bool active)
diff --git a/LongoMatch.GUI/Gui/Component/TeamTemplateEditor.cs
b/LongoMatch.GUI/Gui/Component/TeamTemplateEditor.cs
index e0b385f..da99c6f 100644
--- a/LongoMatch.GUI/Gui/Component/TeamTemplateEditor.cs
+++ b/LongoMatch.GUI/Gui/Component/TeamTemplateEditor.cs
@@ -80,7 +80,7 @@ namespace LongoMatch.Gui.Component
if (template.Shield != null) {
shieldimage.Pixbuf = template.Shield.Value;
} else {
- shieldimage.Pixbuf = IconTheme.Default.LoadIcon (Constants.LOGO_ICON,
+ shieldimage.Pixbuf = Helpers.Misc.LoadIcon (Constants.LOGO_ICON,
Constants.MAX_SHIELD_ICON_SIZE,
IconLookupFlags.ForceSvg);
}
@@ -225,7 +225,7 @@ namespace LongoMatch.Gui.Component
nationalityentry.Text = "";
bdaydatepicker.Date = new DateTime ();
mailentry.Text = "";
- playerimage.Pixbuf = playerimage.Pixbuf = IconTheme.Default.LoadIcon
("longomatch-player-pic", 45, IconLookupFlags.ForceSvg);
+ playerimage.Pixbuf = playerimage.Pixbuf = Helpers.Misc.LoadIcon
("longomatch-player-pic", 45, IconLookupFlags.ForceSvg);
ignoreChanges = false;
}
@@ -249,7 +249,7 @@ namespace LongoMatch.Gui.Component
playerImage = p.Photo.Value;
} else {
//playerImage = Stetic.IconLoader.LoadIcon (this, "stock_person",
IconSize.Dialog);
- playerImage = IconTheme.Default.LoadIcon ("longomatch-player-pic", 45,
IconLookupFlags.ForceSvg);
+ playerImage = Helpers.Misc.LoadIcon ("longomatch-player-pic", 45,
IconLookupFlags.ForceSvg);
}
return playerImage;
}
diff --git a/LongoMatch.GUI/Gui/Component/TeamsComboBox.cs b/LongoMatch.GUI/Gui/Component/TeamsComboBox.cs
index 3e0288f..6da1d73 100644
--- a/LongoMatch.GUI/Gui/Component/TeamsComboBox.cs
+++ b/LongoMatch.GUI/Gui/Component/TeamsComboBox.cs
@@ -59,7 +59,7 @@ namespace LongoMatch.Gui.Component
int size = StyleConf.NewTeamsIconSize;
if (t.Shield == null) {
- shield = IconTheme.Default.LoadIcon (Constants.LOGO_ICON, size,
+ shield = Helpers.Misc.LoadIcon (Constants.LOGO_ICON, size,
IconLookupFlags.ForceSvg);
} else {
shield = t.Shield.Scale (size, size).Value;
diff --git a/LongoMatch.GUI/Gui/Panel/NewProjectPanel.cs b/LongoMatch.GUI/Gui/Panel/NewProjectPanel.cs
index a0817b8..e65c5cb 100644
--- a/LongoMatch.GUI/Gui/Panel/NewProjectPanel.cs
+++ b/LongoMatch.GUI/Gui/Panel/NewProjectPanel.cs
@@ -121,10 +121,10 @@ namespace LongoMatch.Gui.Panel
int s = StyleConf.ProjectTypeIconSize;
IconLookupFlags f = IconLookupFlags.ForceSvg;
- fileimage.Pixbuf = IconTheme.Default.LoadIcon ("longomatch-video-file", s, f);
- captureimage.Pixbuf = IconTheme.Default.LoadIcon ("longomatch-video-device", s, f);
- fakeimage.Pixbuf = IconTheme.Default.LoadIcon ("longomatch-video-device-fake", s, f);
- ipimage.Pixbuf = IconTheme.Default.LoadIcon ("longomatch-video-device-ip", s, f);
+ fileimage.Pixbuf = Helpers.Misc.LoadIcon ("longomatch-video-file", s, f);
+ captureimage.Pixbuf = Helpers.Misc.LoadIcon ("longomatch-video-device", s, f);
+ fakeimage.Pixbuf = Helpers.Misc.LoadIcon ("longomatch-video-device-fake", s, f);
+ ipimage.Pixbuf = Helpers.Misc.LoadIcon ("longomatch-video-device-ip", s, f);
filebutton.Clicked += HandleProjectTypeSet;
capturebutton.Clicked += HandleProjectTypeSet;
diff --git a/LongoMatch.GUI/Gui/Panel/PanelHeader.cs b/LongoMatch.GUI/Gui/Panel/PanelHeader.cs
index 367c017..a4f4c68 100644
--- a/LongoMatch.GUI/Gui/Panel/PanelHeader.cs
+++ b/LongoMatch.GUI/Gui/Panel/PanelHeader.cs
@@ -41,7 +41,9 @@ namespace LongoMatch.Gui.Panel
BackClicked (this, null);
}
};
- logoimage.Pixbuf = IconTheme.Default.LoadIcon ("longomatch", StyleConf.HeaderHeight -
10,
+ logoimage.Pixbuf = Helpers.Misc.LoadIcon ("longomatch", 45,
+ IconLookupFlags.ForceSvg);
+ backrectbuttonimage.Pixbuf = Helpers.Misc.LoadIcon ("longomatch-back", 40,
IconLookupFlags.ForceSvg);
headerhbox.HeightRequest = StyleConf.HeaderHeight;
}
diff --git a/LongoMatch.GUI/Gui/Panel/SportsTemplatesPanel.cs
b/LongoMatch.GUI/Gui/Panel/SportsTemplatesPanel.cs
index 5a7dc31..9c7039c 100644
--- a/LongoMatch.GUI/Gui/Panel/SportsTemplatesPanel.cs
+++ b/LongoMatch.GUI/Gui/Panel/SportsTemplatesPanel.cs
@@ -54,17 +54,17 @@ namespace LongoMatch.Gui.Panel
BackEvent();
};
- templateimage.Pixbuf = IconTheme.Default.LoadIcon ("longomatch-template-header", 54,
IconLookupFlags.ForceSvg);
- categoryheaderimage.Pixbuf = IconTheme.Default.LoadIcon
("longomatch-category-header", 47, IconLookupFlags.ForceSvg);
- newtemplateimage.Pixbuf = IconTheme.Default.LoadIcon ("longomatch-template-add", 36,
IconLookupFlags.ForceSvg);
- deletetemplateimage.Pixbuf = IconTheme.Default.LoadIcon
("longomatch-template-delete", 36, IconLookupFlags.ForceSvg);
- savetemplateimage.Pixbuf = IconTheme.Default.LoadIcon ("longomatch-template-save",
36, IconLookupFlags.ForceSvg);
- addcategoryimage.Pixbuf = IconTheme.Default.LoadIcon ("longomatch-tag-category", 36,
IconLookupFlags.ForceSvg);
- addtagimage.Pixbuf = IconTheme.Default.LoadIcon ("longomatch-tag-tag", 36,
IconLookupFlags.ForceSvg);
- scoreimage.Pixbuf = IconTheme.Default.LoadIcon ("longomatch-tag-score", 36,
IconLookupFlags.ForceSvg);
- cardimage.Pixbuf = IconTheme.Default.LoadIcon ("longomatch-tag-card", 36,
IconLookupFlags.ForceSvg);
- timerimage.Pixbuf = IconTheme.Default.LoadIcon ("longomatch-tag-timer", 36,
IconLookupFlags.ForceSvg);
- vseparatorimage.Pixbuf = IconTheme.Default.LoadIcon ("vertical-separator", 54,
IconLookupFlags.ForceSvg);
+ templateimage.Pixbuf = Helpers.Misc.LoadIcon ("longomatch-template-header", 54,
IconLookupFlags.ForceSvg);
+ categoryheaderimage.Pixbuf = Helpers.Misc.LoadIcon ("longomatch-category-header", 47,
IconLookupFlags.ForceSvg);
+ newtemplateimage.Pixbuf = Helpers.Misc.LoadIcon ("longomatch-template-add", 36,
IconLookupFlags.ForceSvg);
+ deletetemplateimage.Pixbuf = Helpers.Misc.LoadIcon ("longomatch-template-delete", 36,
IconLookupFlags.ForceSvg);
+ savetemplateimage.Pixbuf = Helpers.Misc.LoadIcon ("longomatch-template-save", 36,
IconLookupFlags.ForceSvg);
+ addcategoryimage.Pixbuf = Helpers.Misc.LoadIcon ("longomatch-tag-category", 36,
IconLookupFlags.ForceSvg);
+ addtagimage.Pixbuf = Helpers.Misc.LoadIcon ("longomatch-tag-tag", 36,
IconLookupFlags.ForceSvg);
+ scoreimage.Pixbuf = Helpers.Misc.LoadIcon ("longomatch-tag-score", 36,
IconLookupFlags.ForceSvg);
+ cardimage.Pixbuf = Helpers.Misc.LoadIcon ("longomatch-tag-card", 36,
IconLookupFlags.ForceSvg);
+ timerimage.Pixbuf = Helpers.Misc.LoadIcon ("longomatch-tag-timer", 36,
IconLookupFlags.ForceSvg);
+ vseparatorimage.Pixbuf = Helpers.Misc.LoadIcon ("vertical-separator", 54,
IconLookupFlags.ForceSvg);
// Connect buttons from the bar
newtemplatebutton.Entered += HandleEnterTemplateButton;
@@ -134,7 +134,7 @@ namespace LongoMatch.Gui.Panel
if (template.Image != null)
img = template.Image.Value;
else
- img = IconTheme.Default.LoadIcon ("longomatch", 20,
IconLookupFlags.ForceSvg);
+ img = Helpers.Misc.LoadIcon ("longomatch", 20,
IconLookupFlags.ForceSvg);
iter = templates.AppendValues (img, template.Name);
if (first || template.Name == templateName) {
diff --git a/LongoMatch.GUI/Gui/Panel/TeamsTemplatesPanel.cs b/LongoMatch.GUI/Gui/Panel/TeamsTemplatesPanel.cs
index 31124aa..52d66b5 100644
--- a/LongoMatch.GUI/Gui/Panel/TeamsTemplatesPanel.cs
+++ b/LongoMatch.GUI/Gui/Panel/TeamsTemplatesPanel.cs
@@ -50,14 +50,14 @@ namespace LongoMatch.Gui.Panel
{
this.Build ();
provider = Config.TeamTemplatesProvider;
- teamimage.Pixbuf = IconTheme.Default.LoadIcon ("longomatch-team-header", 45,
IconLookupFlags.ForceSvg);
- playerheaderimage.Pixbuf = IconTheme.Default.LoadIcon ("longomatch-player-header",
45, IconLookupFlags.ForceSvg);
- newteamimage.Pixbuf = IconTheme.Default.LoadIcon ("longomatch-team-add", 34,
IconLookupFlags.ForceSvg);
- deleteteamimage.Pixbuf = IconTheme.Default.LoadIcon ("longomatch-team-delete", 34,
IconLookupFlags.ForceSvg);
- saveteamimage.Pixbuf = IconTheme.Default.LoadIcon ("longomatch-team-save", 34,
IconLookupFlags.ForceSvg);
- newplayerimage.Pixbuf = IconTheme.Default.LoadIcon ("longomatch-player-add", 34,
IconLookupFlags.ForceSvg);
- deleteplayerimage.Pixbuf = IconTheme.Default.LoadIcon ("longomatch-player-delete",
34, IconLookupFlags.ForceSvg);
- vseparatorimage.Pixbuf = IconTheme.Default.LoadIcon ("vertical-separator", 34,
IconLookupFlags.ForceSvg);
+ teamimage.Pixbuf = Helpers.Misc.LoadIcon ("longomatch-team-header", 45,
IconLookupFlags.ForceSvg);
+ playerheaderimage.Pixbuf = Helpers.Misc.LoadIcon ("longomatch-player-header", 45,
IconLookupFlags.ForceSvg);
+ newteamimage.Pixbuf = Helpers.Misc.LoadIcon ("longomatch-team-add", 34,
IconLookupFlags.ForceSvg);
+ deleteteamimage.Pixbuf = Helpers.Misc.LoadIcon ("longomatch-team-delete", 34,
IconLookupFlags.ForceSvg);
+ saveteamimage.Pixbuf = Helpers.Misc.LoadIcon ("longomatch-team-save", 34,
IconLookupFlags.ForceSvg);
+ newplayerimage.Pixbuf = Helpers.Misc.LoadIcon ("longomatch-player-add", 34,
IconLookupFlags.ForceSvg);
+ deleteplayerimage.Pixbuf = Helpers.Misc.LoadIcon ("longomatch-player-delete", 34,
IconLookupFlags.ForceSvg);
+ vseparatorimage.Pixbuf = Helpers.Misc.LoadIcon ("vertical-separator", 34,
IconLookupFlags.ForceSvg);
newteambutton.Entered += HandleEnterTeamButton;
newteambutton.Left += HandleLeftTeamButton;
@@ -127,7 +127,7 @@ namespace LongoMatch.Gui.Panel
if (template.Shield != null) {
img = template.Shield.Scale (StyleConf.TeamsShieldIconSize,
StyleConf.TeamsShieldIconSize).Value;
} else {
- img = IconTheme.Default.LoadIcon (Constants.LOGO_ICON,
+ img = Helpers.Misc.LoadIcon (Constants.LOGO_ICON,
StyleConf.TeamsShieldIconSize,
IconLookupFlags.ForceSvg);
}
diff --git a/LongoMatch.GUI/Gui/Panel/WelcomePanel.cs b/LongoMatch.GUI/Gui/Panel/WelcomePanel.cs
index e4a776b..a6be675 100644
--- a/LongoMatch.GUI/Gui/Panel/WelcomePanel.cs
+++ b/LongoMatch.GUI/Gui/Panel/WelcomePanel.cs
@@ -104,7 +104,7 @@ namespace LongoMatch.Gui.Panel
int padding;
Gtk.Image prefImage = new Gtk.Image (
- IconTheme.Default.LoadIcon ("longomatch-preferences",
+ Helpers.Misc.LoadIcon ("longomatch-preferences",
StyleConf.WelcomeIconSize, 0));
preferencesbutton.Add (prefImage);
preferencesbutton.WidthRequest = StyleConf.WelcomeIconSize;
@@ -141,7 +141,7 @@ namespace LongoMatch.Gui.Panel
Label label;
image = new Gtk.Image (
- IconTheme.Default.LoadIcon (b.name, StyleConf.WelcomeIconImageSize, 0));
+ Helpers.Misc.LoadIcon (b.name, StyleConf.WelcomeIconImageSize, 0));
button = new Button ();
button.Clicked += (sender, e) => (b.func());
diff --git a/LongoMatch.GUI/gtk-gui/LongoMatch.Gui.Panel.PanelHeader.cs
b/LongoMatch.GUI/gtk-gui/LongoMatch.Gui.Panel.PanelHeader.cs
index 2254ee0..e8f0f98 100644
--- a/LongoMatch.GUI/gtk-gui/LongoMatch.Gui.Panel.PanelHeader.cs
+++ b/LongoMatch.GUI/gtk-gui/LongoMatch.Gui.Panel.PanelHeader.cs
@@ -10,6 +10,7 @@ namespace LongoMatch.Gui.Panel
private global::Gtk.Label titlelabel;
private global::Gtk.Button applyroundedbutton;
private global::Gtk.Button backrectbutton;
+ private global::Gtk.Image backrectbuttonimage;
protected virtual void Build ()
{
@@ -77,28 +78,18 @@ namespace LongoMatch.Gui.Panel
this.backrectbutton.HeightRequest = 40;
this.backrectbutton.CanFocus = true;
this.backrectbutton.Name = "backrectbutton";
- this.backrectbutton.UseUnderline = true;
this.backrectbutton.BorderWidth = ((uint)(10));
// Container child backrectbutton.Gtk.Container+ContainerChild
- global::Gtk.Alignment w12 = new global::Gtk.Alignment (0.5F, 0.5F, 0F, 0F);
- // Container child GtkAlignment.Gtk.Container+ContainerChild
- global::Gtk.HBox w13 = new global::Gtk.HBox ();
- w13.Spacing = 2;
- // Container child GtkHBox.Gtk.Container+ContainerChild
- global::Gtk.Image w14 = new global::Gtk.Image ();
- w14.Pixbuf = global::Stetic.IconLoader.LoadIcon (this, "longomatch-back",
global::Gtk.IconSize.Dialog);
- w13.Add (w14);
- // Container child GtkHBox.Gtk.Container+ContainerChild
- global::Gtk.Label w16 = new global::Gtk.Label ();
- w13.Add (w16);
- w12.Add (w13);
- this.backrectbutton.Add (w12);
+ this.backrectbuttonimage = new global::Gtk.Image ();
+ this.backrectbuttonimage.Name = "backrectbuttonimage";
+ this.backrectbutton.Add (this.backrectbuttonimage);
+ this.backrectbutton.Label = null;
this.headerhbox.Add (this.backrectbutton);
- global::Gtk.Box.BoxChild w20 = ((global::Gtk.Box.BoxChild)(this.headerhbox
[this.backrectbutton]));
- w20.PackType = ((global::Gtk.PackType)(1));
- w20.Position = 3;
- w20.Expand = false;
- w20.Fill = false;
+ global::Gtk.Box.BoxChild w13 = ((global::Gtk.Box.BoxChild)(this.headerhbox
[this.backrectbutton]));
+ w13.PackType = ((global::Gtk.PackType)(1));
+ w13.Position = 3;
+ w13.Expand = false;
+ w13.Fill = false;
this.headereventbox.Add (this.headerhbox);
this.Add (this.headereventbox);
if ((this.Child != null)) {
diff --git a/LongoMatch.GUI/gtk-gui/gui.stetic b/LongoMatch.GUI/gtk-gui/gui.stetic
index 279638e..856601b 100644
--- a/LongoMatch.GUI/gtk-gui/gui.stetic
+++ b/LongoMatch.GUI/gtk-gui/gui.stetic
@@ -10374,11 +10374,13 @@ You can continue with the current capture, cancel it or save your project.
<property name="WidthRequest">80</property>
<property name="HeightRequest">40</property>
<property name="CanFocus">True</property>
- <property name="Type">TextAndIcon</property>
- <property name="Icon">stock:longomatch-back Dialog</property>
- <property name="Label" translatable="yes" />
- <property name="UseUnderline">True</property>
+ <property name="Type">Custom</property>
<property name="BorderWidth">10</property>
+ <child>
+ <widget class="Gtk.Image" id="backrectbuttonimage">
+ <property name="MemberName" />
+ </widget>
+ </child>
</widget>
<packing>
<property name="PackType">End</property>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]