~swem/ubuntu/vivid/lshw/lp1471983

« back to all changes in this revision

Viewing changes to src/gui/stock.c

  • Committer: Package Import Robot
  • Author(s): Ghe Rivero
  • Date: 2012-06-30 10:15:18 UTC
  • mfrom: (1.1.10) (2.1.7 sid)
  • Revision ID: package-import@ubuntu.com-20120630101518-xuzmzikehiuqzyep
Tags: 02.16-1
New upstream release

Show diffs side-by-side

added added

removed removed

Lines of Context:
3
3
#include <string.h>
4
4
#include <gtk/gtk.h>
5
5
 
6
 
static char *id = "@(#) $Id: stock.c 2336 2010-10-05 09:34:27Z lyonel $";
 
6
static char *id = "@(#) $Id: stock.c 2433 2012-01-10 22:01:30Z lyonel $";
 
7
 
 
8
#define UIFILE "gtk-lshw.ui"
 
9
 
 
10
GtkWidget *mainwindow = NULL;
 
11
GtkWidget *about = NULL;
 
12
GtkWidget *list1 = NULL;
 
13
GtkWidget *list2 = NULL;
 
14
GtkWidget *list3 = NULL;
 
15
GtkWidget *description = NULL;
 
16
GtkWidget *go_up_button = NULL;
 
17
GtkWidget *save_button = NULL;
 
18
GtkWidget *statusbar = NULL;
7
19
 
8
20
static struct StockIcon
9
21
{
48
60
};
49
61
 
50
62
static gchar *
51
 
find_file(const char *base)
 
63
find_file(const char *base, const char *dir)
52
64
{
53
65
  char *filename;
54
66
  char *basedir;
57
69
    return NULL;
58
70
 
59
71
  if((basedir = getenv("BASEDIR")))
60
 
    filename = g_build_filename(basedir, "artwork", base, NULL);
 
72
    filename = g_build_filename(basedir, dir, base, NULL);
61
73
  else
62
 
    filename = g_build_filename(DATADIR, "lshw", "artwork", base, NULL);
 
74
    filename = g_build_filename(DATADIR, "lshw", dir, base, NULL);
63
75
 
64
76
  if (!g_file_test(filename, G_FILE_TEST_EXISTS))
65
77
  {
99
111
    GtkIconSet *iconset;
100
112
    gchar *filename;
101
113
 
102
 
      filename = find_file(stock_icons[i].filename);
 
114
      filename = find_file(stock_icons[i].filename, "artwork");
103
115
 
104
116
      if (filename == NULL)
105
117
        continue;
125
137
 
126
138
  (void) &id;                                     /* avoid "id defined but not used" warning */
127
139
}
 
140
 
 
141
void lshw_ui_init(void)
 
142
{
 
143
  GError *error = NULL;
 
144
  GtkBuilder *builder = NULL;
 
145
  GdkPixbuf *icon = NULL;
 
146
  gchar *uiname = NULL;
 
147
 
 
148
  mainwindow = NULL;
 
149
 
 
150
  builder = gtk_builder_new();
 
151
  uiname = find_file(UIFILE, "ui");
 
152
  if(!uiname)
 
153
  {
 
154
    g_critical( "Could not find UI file: %s", UIFILE );
 
155
    return;
 
156
  }
 
157
  if(!gtk_builder_add_from_file(builder, uiname, &error))
 
158
  {
 
159
    g_critical( "Could not create UI: %s", error->message );
 
160
    g_free( error );
 
161
    g_object_unref( G_OBJECT( builder ) );
 
162
    return;
 
163
  }
 
164
  g_free(uiname);
 
165
 
 
166
  mainwindow = GTK_WIDGET( gtk_builder_get_object( builder, "mainwindow" ) );
 
167
  about = GTK_WIDGET( gtk_builder_get_object( builder, "aboutlshw" ) );
 
168
  list1 = GTK_WIDGET(gtk_builder_get_object( builder, "treeview1"));
 
169
  list2 = GTK_WIDGET(gtk_builder_get_object( builder, "treeview2"));
 
170
  list3 = GTK_WIDGET(gtk_builder_get_object( builder, "treeview3"));
 
171
  description = GTK_WIDGET(gtk_builder_get_object( builder, "description"));
 
172
  go_up_button = GTK_WIDGET(gtk_builder_get_object( builder, "upbutton"));
 
173
  save_button = GTK_WIDGET(gtk_builder_get_object( builder, "savebutton"));
 
174
  statusbar = GTK_WIDGET(gtk_builder_get_object( builder, "statusbar"));
 
175
  gtk_builder_connect_signals( builder, mainwindow );
 
176
  g_object_unref( G_OBJECT( builder ) );
 
177
 
 
178
  icon = gtk_widget_render_icon(GTK_WIDGET(mainwindow),
 
179
    "lshw-logo",
 
180
    GTK_ICON_SIZE_DIALOG,
 
181
    NULL);
 
182
  if(GDK_IS_PIXBUF(icon))
 
183
  {
 
184
    gtk_window_set_icon(GTK_WINDOW(mainwindow), icon);
 
185
    gtk_window_set_default_icon(icon);
 
186
  }
 
187
}