diff options
author | Rob Kendrick <rjek@netsurf-browser.org> | 2007-05-06 16:39:34 +0000 |
---|---|---|
committer | Rob Kendrick <rjek@netsurf-browser.org> | 2007-05-06 16:39:34 +0000 |
commit | dbf2c37f8976ea988eb2cd4d76130091879cb787 (patch) | |
tree | df5d55bf72124331e1373b953baf7330be2c483d /gtk | |
parent | 73281a7addc59a652860d2c0fb0c0c156b52ef3b (diff) | |
download | netsurf-dbf2c37f8976ea988eb2cd4d76130091879cb787.tar.gz netsurf-dbf2c37f8976ea988eb2cd4d76130091879cb787.tar.bz2 |
GTK warn_user() implementation
svn path=/trunk/netsurf/; revision=3269
Diffstat (limited to 'gtk')
-rw-r--r-- | gtk/gtk_gui.c | 17 | ||||
-rw-r--r-- | gtk/res/netsurf.glade | 120 |
2 files changed, 135 insertions, 2 deletions
diff --git a/gtk/gtk_gui.c b/gtk/gtk_gui.c index ec52d735e..b706b9d4a 100644 --- a/gtk/gtk_gui.c +++ b/gtk/gtk_gui.c @@ -57,7 +57,7 @@ char *glade_file_location; struct gui_window *search_current_window = 0; GtkWindow *wndAbout; - +GtkWindow *wndWarning; GladeXML *gladeWindows; GtkWindow *wndTooltip; GtkLabel *labelTooltip; @@ -234,6 +234,9 @@ void gui_init(int argc, char** argv) fontdesc = pango_font_description_from_string("Monospace 8"); gtk_widget_modify_font(GTK_WIDGET( glade_xml_get_widget(gladeWindows, "textviewGPL")), fontdesc); + + wndWarning = GTK_WINDOW(glade_xml_get_widget(gladeWindows, "wndWarning")); + nsgtk_history_init(); } @@ -382,6 +385,18 @@ bool gui_search_term_highlighted(struct gui_window *g, void warn_user(const char *warning, const char *detail) { + char buf[300]; /* 300 is the size the RISC OS GUI uses */ + + LOG(("%s %s", warning, detail)); + fflush(stderr); + + snprintf(buf, sizeof(buf), "%s %s", messages_get(warning), + detail ? detail : ""); + buf[sizeof(buf) - 1] = 0; + + gtk_label_set_text(GTK_LABEL(glade_xml_get_widget(gladeWindows, "labelWarning")), buf); + + gtk_widget_show_all(GTK_WIDGET(wndWarning)); } void die(const char * const error) diff --git a/gtk/res/netsurf.glade b/gtk/res/netsurf.glade index cf39f888e..6900cfad5 100644 --- a/gtk/res/netsurf.glade +++ b/gtk/res/netsurf.glade @@ -64,7 +64,6 @@ <child> <widget class="GtkMenuItem" id="open_location"> <property name="visible">True</property> - <property name="sensitive">True</property> <property name="tooltip" translatable="yes">Open an address into this browser window.</property> <property name="label" translatable="yes">Open _location...</property> <property name="use_underline">True</property> @@ -5328,4 +5327,123 @@ OF THE POSSIBILITY OF SUCH DAMAGES. </child> </widget> +<widget class="GtkWindow" id="wndWarning"> + <property name="title" translatable="yes">Warning from NetSurf</property> + <property name="type">GTK_WINDOW_TOPLEVEL</property> + <property name="window_position">GTK_WIN_POS_CENTER</property> + <property name="modal">False</property> + <property name="resizable">True</property> + <property name="destroy_with_parent">False</property> + <property name="icon_name">gtk-dialog-warning</property> + <property name="decorated">True</property> + <property name="skip_taskbar_hint">False</property> + <property name="skip_pager_hint">False</property> + <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property> + <property name="gravity">GDK_GRAVITY_NORTH_WEST</property> + <property name="focus_on_map">True</property> + <property name="urgency_hint">True</property> + + <child> + <widget class="GtkVBox" id="vbox32"> + <property name="border_width">2</property> + <property name="visible">True</property> + <property name="homogeneous">False</property> + <property name="spacing">0</property> + + <child> + <widget class="GtkHBox" id="hbox30"> + <property name="border_width">3</property> + <property name="visible">True</property> + <property name="homogeneous">False</property> + <property name="spacing">0</property> + + <child> + <widget class="GtkImage" id="image519"> + <property name="visible">True</property> + <property name="icon_size">6</property> + <property name="icon_name">gtk-dialog-warning</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xpad">12</property> + <property name="ypad">0</property> + </widget> + <packing> + <property name="padding">0</property> + <property name="expand">False</property> + <property name="fill">False</property> + </packing> + </child> + + <child> + <widget class="GtkLabel" id="labelWarning"> + <property name="visible">True</property> + <property name="label" translatable="yes">Help help help! I'm being held prisoner by a bunch of RISC OS zealots!</property> + <property name="use_underline">False</property> + <property name="use_markup">False</property> + <property name="justify">GTK_JUSTIFY_LEFT</property> + <property name="wrap">True</property> + <property name="selectable">False</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xpad">0</property> + <property name="ypad">0</property> + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> + <property name="width_chars">-1</property> + <property name="single_line_mode">False</property> + <property name="angle">0</property> + </widget> + <packing> + <property name="padding">1</property> + <property name="expand">True</property> + <property name="fill">True</property> + </packing> + </child> + </widget> + <packing> + <property name="padding">0</property> + <property name="expand">True</property> + <property name="fill">True</property> + </packing> + </child> + + <child> + <widget class="GtkHSeparator" id="hseparator2"> + <property name="visible">True</property> + </widget> + <packing> + <property name="padding">3</property> + <property name="expand">False</property> + <property name="fill">True</property> + </packing> + </child> + + <child> + <widget class="GtkHButtonBox" id="hbuttonbox2"> + <property name="visible">True</property> + <property name="layout_style">GTK_BUTTONBOX_END</property> + <property name="spacing">0</property> + + <child> + <widget class="GtkButton" id="button14"> + <property name="visible">True</property> + <property name="can_default">True</property> + <property name="can_focus">True</property> + <property name="label">gtk-ok</property> + <property name="use_stock">True</property> + <property name="relief">GTK_RELIEF_NORMAL</property> + <property name="focus_on_click">True</property> + <signal name="clicked" handler="gtk_widget_hide" object="wndWarning" last_modification_time="Sun, 06 May 2007 16:35:28 GMT"/> + </widget> + </child> + </widget> + <packing> + <property name="padding">0</property> + <property name="expand">False</property> + <property name="fill">False</property> + </packing> + </child> + </widget> + </child> +</widget> + </glade-interface> |