[dasher] * Use GtkBuilder instead of Glade, removing last vestiges of
- From: Patrick Welche <pwelche src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [dasher] * Use GtkBuilder instead of Glade, removing last vestiges of
- Date: Thu, 6 Aug 2009 18:27:18 +0000 (UTC)
commit e13ab499c58f4ae35fd0e79fc4b416ea8b8dd8be
Author: Patrick Welche <prlw1 cam ac uk>
Date: Thu Aug 6 15:53:19 2009 +0200
* Use GtkBuilder instead of Glade, removing last vestiges of
GtkFileSelection.
* Use GtkActions. Callbacks are in dasher_main.
* Reduce / simplify number of creation functions of DasherEditorInternal.
ChangeLog | 7 +
Data/GUI/Makefile.am | 11 +
Data/GUI/dasher.compose.ui | 1078 +++++++++++++++++
Data/GUI/dasher.direct.ui | 472 ++++++++
Data/GUI/dasher.fullscreen.ui | 684 +++++++++++
Data/GUI/dasher.gameWIP.ui | 1008 ++++++++++++++++
.../dasher.preferences.ui} | 754 ++++++-------
Data/GUI/dasher.traditional.ui | 452 ++++++++
.../dashermaemo.preferences.ui} | 385 +++----
Data/GUI/dashermaemo.ui | 651 +++++++++++
Data/GUI/dashermaemofullscreen.ui | 589 ++++++++++
Data/Makefile.am | 2 +-
Data/glade/Makefile.am | 21 -
Data/glade/dasher.compose.glade | 1208 --------------------
Data/glade/dasher.direct.glade | 499 --------
Data/glade/dasher.fullscreen.glade | 735 ------------
Data/glade/dasher.gameWIP.glade | 1140 ------------------
Data/glade/dasher.traditional.glade | 924 ---------------
Data/glade/dashermaemo.glade | 703 ------------
Data/glade/dashermaemofullscreen.glade | 653 -----------
INSTALL | 53 +-
Makefile.am | 5 +-
Src/Common/Makefile.am | 2 +-
Src/DasherCore/Makefile.am | 2 +-
Src/DasherCore/NodeCreationManager.h | 2 +-
Src/Gtk2/GtkDasherControl.cpp | 8 +-
Src/Gtk2/GtkDasherControl.h | 10 +-
Src/Gtk2/Makefile.am | 27 +-
Src/Gtk2/Preferences.cpp | 338 +++---
Src/Gtk2/Preferences.h | 6 +-
Src/Gtk2/dasher_editor.cpp | 8 +-
Src/Gtk2/dasher_editor.h | 25 +-
Src/Gtk2/dasher_editor_external.cpp | 6 +-
Src/Gtk2/dasher_editor_internal.cpp | 113 +-
Src/Gtk2/dasher_editor_internal.h | 16 +-
Src/Gtk2/dasher_lock_dialogue.cpp | 32 +-
Src/Gtk2/dasher_lock_dialogue.h | 5 +-
Src/Gtk2/dasher_main.cpp | 553 ++++------
Src/Gtk2/dasher_main.h | 12 +-
Src/Gtk2/game_mode_helper.cpp | 26 +-
Src/Gtk2/game_mode_helper.h | 3 +-
Src/Makefile.am | 4 +-
Src/main.cc | 13 +-
configure.ac | 66 +-
44 files changed, 6093 insertions(+), 7218 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index 55be7f3..293c6b1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2009-08-06 Patrick Welche <prlw1 cam ac uk>
+
+ * Use GtkBuilder instead of Glade, removing last vestiges of
+ GtkFileSelection.
+ * Use GtkActions. Callbacks are in dasher_main.
+ * Reduce / simplify number of creation functions of DasherEditorInternal.
+
2009-07-09 Patrick Welche <prlw1 cam ac uk>
* Make the alphabet's dtd match the parser more closely.
diff --git a/Data/GUI/Makefile.am b/Data/GUI/Makefile.am
new file mode 100644
index 0000000..9a2e312
--- /dev/null
+++ b/Data/GUI/Makefile.am
@@ -0,0 +1,11 @@
+dist_pkgdata_DATA = \
+ Makefile.am \
+ dasher.compose.ui \
+ dasher.direct.ui \
+ dasher.fullscreen.ui \
+ dasher.gameWIP.ui \
+ dasher.preferences.ui \
+ dasher.traditional.ui \
+ dashermaemo.preferences.ui \
+ dashermaemo.ui \
+ dashermaemofullscreen.ui
diff --git a/Data/GUI/dasher.compose.ui b/Data/GUI/dasher.compose.ui
new file mode 100644
index 0000000..a0256f3
--- /dev/null
+++ b/Data/GUI/dasher.compose.ui
@@ -0,0 +1,1078 @@
+<?xml version="1.0"?>
+<!--*- mode: xml -*-->
+<interface>
+ <object class="GtkAdjustment" id="adjustment1">
+ <property name="upper">8</property>
+ <property name="lower">0.1</property>
+ <property name="page_increment">1</property>
+ <property name="step_increment">0.1</property>
+ <property name="page_size">0</property>
+ <property name="value">1</property>
+ </object>
+ <object class="GtkUIManager" id="uimanager1">
+ <child>
+ <object class="GtkActionGroup" id="actiongroup1">
+ <child>
+ <object class="GtkAction" id="menuitem4">
+ <property name="name">menuitem4</property>
+ <property name="label" translatable="yes">_File</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menunew">
+ <property name="stock_id">gtk-new</property>
+ <property name="name">menunew</property>
+ <signal handler="select_new_file" last_modification_time="Tue, 23 Sep 2003 11:16:26 GMT" name="activate"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menuopen">
+ <property name="stock_id">gtk-open</property>
+ <property name="name">menuopen</property>
+ <signal handler="select_open_file" last_modification_time="Tue, 23 Sep 2003 11:16:40 GMT" name="activate"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menusave">
+ <property name="stock_id">gtk-save</property>
+ <property name="name">menusave</property>
+ <signal handler="save_file" last_modification_time="Tue, 23 Sep 2003 11:16:59 GMT" name="activate"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menusaveas">
+ <property name="stock_id">gtk-save-as</property>
+ <property name="name">menusaveas</property>
+ <signal handler="select_save_file_as" last_modification_time="Tue, 23 Sep 2003 11:17:19 GMT" name="activate"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menuappend">
+ <property name="name">menuappend</property>
+ <property name="label" translatable="yes">_Append to file</property>
+ <signal handler="select_append_file" last_modification_time="Tue, 23 Sep 2003 11:19:29 GMT" name="activate"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menuimport">
+ <property name="name">menuimport</property>
+ <property name="label" translatable="yes">_Import Training Text</property>
+ <signal handler="select_import_file" last_modification_time="Tue, 23 Sep 2003 11:19:29 GMT" name="activate"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menuquit">
+ <property name="stock_id">gtk-quit</property>
+ <property name="name">menuquit</property>
+ <signal handler="ask_save_before_exit" last_modification_time="Tue, 23 Sep 2003 11:17:37 GMT" name="activate"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menuitem5">
+ <property name="name">menuitem5</property>
+ <property name="label" translatable="yes">_Edit</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menucut">
+ <property name="stock_id">gtk-cut</property>
+ <property name="name">menucut</property>
+ <signal handler="clipboard_cut" last_modification_time="Tue, 23 Sep 2003 11:19:57 GMT" name="activate"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menucopy">
+ <property name="stock_id">gtk-copy</property>
+ <property name="name">menucopy</property>
+ <signal handler="clipboard_copy" last_modification_time="Tue, 23 Sep 2003 11:20:12 GMT" name="activate"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menucopyall">
+ <property name="name">menucopyall</property>
+ <property name="label" translatable="yes">Copy _All</property>
+ <signal handler="clipboard_copy_all" last_modification_time="Tue, 23 Sep 2003 11:21:50 GMT" name="activate"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menupaste">
+ <property name="stock_id">gtk-paste</property>
+ <property name="name">menupaste</property>
+ <signal handler="clipboard_paste" last_modification_time="Tue, 23 Sep 2003 11:20:26 GMT" name="activate"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menupreferences">
+ <property name="stock_id">gtk-preferences</property>
+ <property name="name">menupreferences</property>
+ <property name="label" translatable="yes">Pr_eferences</property>
+ <signal handler="preferences_display" last_modification_time="Wed, 28 Jun 2006 14:18:15 GMT" name="activate"/>
+ </object>
+ <accelerator key="S" modifiers="GDK_CONTROL_MASK | GDK_SHIFT_MASK"/>
+ </child>
+ <child>
+ <object class="GtkAction" id="menuitem7">
+ <property name="name">menuitem7</property>
+ <property name="label" translatable="yes">_Help</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menututorial">
+ <property name="name">menututorial</property>
+ <property name="label" translatable="yes">Dasher _Tutorial</property>
+ <signal handler="on_menututorial_activate" last_modification_time="Fri, 30 Jun 2006 18:06:21 GMT" name="activate"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="help_contents">
+ <property name="stock_id">gtk-help</property>
+ <property name="name">help_contents</property>
+ <property name="label" translatable="yes">_Contents</property>
+ <signal handler="show_help" last_modification_time="Thu, 20 Apr 2006 18:51:53 GMT" name="activate"/>
+ </object>
+ <accelerator key="F1" modifiers="0"/>
+ </child>
+ <child>
+ <object class="GtkAction" id="menuabout">
+ <property name="stock_id">gtk-about</property>
+ <property name="name">menuabout</property>
+ <property name="label" translatable="yes">_About</property>
+ <signal handler="about_dasher" last_modification_time="Tue, 23 Sep 2003 11:21:50 GMT" name="activate"/>
+ </object>
+ </child>
+ </object>
+ </child>
+ <ui>
+ <menubar name="dasher_menu_bar">
+ <menu action="menuitem4">
+ <menuitem action="menunew"/>
+ <menuitem action="menuopen"/>
+ <menuitem action="menusave"/>
+ <menuitem action="menusaveas"/>
+ <menuitem action="menuappend"/>
+ <separator/>
+ <menuitem action="menuimport"/>
+ <menuitem action="menuquit"/>
+ </menu>
+ <menu action="menuitem5">
+ <menuitem action="menucut"/>
+ <menuitem action="menucopy"/>
+ <menuitem action="menucopyall"/>
+ <menuitem action="menupaste"/>
+ <separator/>
+ <menuitem action="menupreferences"/>
+ </menu>
+ <menu action="menuitem7">
+ <menuitem action="menututorial"/>
+ <separator/>
+ <menuitem action="help_contents"/>
+ <menuitem action="menuabout"/>
+ </menu>
+ </menubar>
+ </ui>
+ </object>
+ <object class="GtkWindow" id="window">
+ <property name="can_focus">True</property>
+ <property name="has_focus">True</property>
+ <property name="events">GDK_BUTTON_RELEASE_MASK</property>
+ <property name="title" translatable="yes">Dasher</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">False</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_NORMAL</property>
+ <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+ <property name="focus_on_map">True</property>
+ <property name="urgency_hint">False</property>
+ <signal handler="ask_save_before_exit" last_modification_time="Mon, 22 Sep 2003 19:53:44 GMT" name="delete_event"/>
+ <signal handler="on_window_map" last_modification_time="Sun, 05 Mar 2006 20:22:17 GMT" name="map"/>
+ <child>
+ <object class="GtkVBox" id="vbox1">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <child>
+ <object class="GtkMenuBar" constructor="uimanager1" id="dasher_menu_bar">
+ <property name="visible">True</property>
+ <property name="pack_direction">GTK_PACK_DIRECTION_LTR</property>
+ <property name="child_pack_direction">GTK_PACK_DIRECTION_LTR</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolbar" id="toolbar">
+ <property name="orientation">GTK_ORIENTATION_HORIZONTAL</property>
+ <property name="toolbar_style">GTK_TOOLBAR_ICONS</property>
+ <property name="tooltips">True</property>
+ <property name="show_arrow">True</property>
+ <child>
+ <object class="GtkToolButton" id="New">
+ <property name="visible">True</property>
+ <property name="tooltip-text" translatable="yes">New file</property>
+ <property name="stock_id">gtk-new</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ <signal handler="select_new_file" last_modification_time="Mon, 22 Sep 2003 23:40:14 GMT" name="clicked"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolButton" id="Open">
+ <property name="visible">True</property>
+ <property name="tooltip-text" translatable="yes">Open file</property>
+ <property name="stock_id">gtk-open</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ <signal handler="select_open_file" last_modification_time="Mon, 22 Sep 2003 23:40:28 GMT" name="clicked"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolButton" id="Save">
+ <property name="visible">True</property>
+ <property name="tooltip-text" translatable="yes">Save file</property>
+ <property name="stock_id">gtk-save</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ <signal handler="save_file" last_modification_time="Mon, 22 Sep 2003 23:40:42 GMT" name="clicked"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolButton" id="SaveAs">
+ <property name="visible">True</property>
+ <property name="tooltip-text" translatable="yes">Save file as</property>
+ <property name="stock_id">gtk-save-as</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ <signal handler="select_save_file_as" last_modification_time="Mon, 22 Sep 2003 23:40:58 GMT" name="clicked"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkSeparatorToolItem" id="separatortoolitem1">
+ <property name="visible">True</property>
+ <property name="draw">True</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolButton" id="Cut">
+ <property name="visible">True</property>
+ <property name="tooltip-text" translatable="yes">Cut</property>
+ <property name="stock_id">gtk-cut</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ <signal handler="clipboard_cut" last_modification_time="Mon, 22 Sep 2003 23:41:37 GMT" name="clicked"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolButton" id="Copy">
+ <property name="visible">True</property>
+ <property name="tooltip-text" translatable="yes">Copy</property>
+ <property name="stock_id">gtk-copy</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ <signal handler="clipboard_copy" last_modification_time="Mon, 22 Sep 2003 23:41:29 GMT" name="clicked"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolButton" id="Paste">
+ <property name="visible">True</property>
+ <property name="tooltip-text" translatable="yes">Paste</property>
+ <property name="stock_id">gtk-paste</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ <signal handler="clipboard_paste" last_modification_time="Mon, 22 Sep 2003 23:41:50 GMT" name="clicked"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkHBox" id="hbox7">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <child>
+ <object class="GtkVBox" id="SideMenu">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <signal handler="sidemenu_press" last_modification_time="Tue, 23 May 2006 16:54:50 GMT" name="button_press_event"/>
+ <signal handler="sidemenu_release" last_modification_time="Tue, 23 May 2006 16:55:21 GMT" name="button_release_event"/>
+ <child>
+ <object class="GtkButton" id="button32">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <signal handler="sidemenu_press" last_modification_time="Tue, 27 Jun 2006 10:31:48 GMT" name="button_press_event"/>
+ <signal handler="sidemenu_release" last_modification_time="Tue, 27 Jun 2006 10:31:55 GMT" name="button_release_event"/>
+ <signal handler="sidemenu_motion" last_modification_time="Tue, 27 Jun 2006 10:29:25 GMT" name="motion_notify_event"/>
+ <child>
+ <object class="GtkImage" id="image9">
+ <property name="visible">True</property>
+ <property name="stock">gtk-preferences</property>
+ <property name="icon_size">4</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="button31">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <signal handler="sidemenu_press" last_modification_time="Tue, 23 May 2006 17:38:41 GMT" name="button_press_event"/>
+ <signal handler="sidemenu_release" last_modification_time="Tue, 23 May 2006 17:38:54 GMT" name="button_release_event"/>
+ <signal handler="sidemenu_motion" last_modification_time="Tue, 23 May 2006 17:49:14 GMT" name="motion_notify_event"/>
+ <child>
+ <placeholder/>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="button33">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <signal handler="toggle_hidden" last_modification_time="Tue, 27 Jun 2006 09:01:43 GMT" name="clicked"/>
+ <child>
+ <object class="GtkArrow" id="hide_arrow">
+ <property name="visible">True</property>
+ <property name="arrow_type">GTK_ARROW_RIGHT</property>
+ <property name="shadow_type">GTK_SHADOW_OUT</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkVBox" id="vbox45">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <child>
+ <object class="GtkAlignment" id="alignment42">
+ <property name="visible">True</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xscale">1</property>
+ <property name="yscale">1</property>
+ <property name="top_padding">0</property>
+ <property name="bottom_padding">0</property>
+ <property name="left_padding">0</property>
+ <property name="right_padding">0</property>
+ <child>
+ <object class="GtkHPaned" id="hpaned1">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <child>
+ <object class="Custom" id="DasherControl">
+ <property name="width_request">200</property>
+ <property name="height_request">200</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="has_focus">True</property>
+ <property name="creation_function">create_dasher_control</property>
+ <property name="int1">0</property>
+ <property name="int2">0</property>
+ <property name="last_modification_time">Sun, 05 Mar 2006 19:33:03 GMT</property>
+ <signal handler="parameter_notification" last_modification_time="Sun, 05 Mar 2006 19:45:23 GMT" name="dasher_changed"/>
+ <signal handler="handle_start_event" last_modification_time="Sun, 05 Mar 2006 19:45:35 GMT" name="dasher_start"/>
+ <signal handler="handle_stop_event" last_modification_time="Sun, 05 Mar 2006 19:45:43 GMT" name="dasher_stop"/>
+ <signal handler="handle_control_event" last_modification_time="Sun, 05 Mar 2006 19:45:53 GMT" name="dasher_control"/>
+ <signal handler="gtk2_edit_output_callback" last_modification_time="Sun, 05 Mar 2006 19:46:13 GMT" name="dasher_edit_insert"/>
+ <signal handler="gtk2_edit_delete_callback" last_modification_time="Sun, 05 Mar 2006 19:46:32 GMT" name="dasher_edit_delete"/>
+ <signal handler="handle_context_request" last_modification_time="Sun, 05 Mar 2006 19:46:54 GMT" name="dasher_context_request"/>
+ <signal handler="handle_request_settings" last_modification_time="Sun, 05 Mar 2006 19:47:12 GMT" name="dasher_request_settings"/>
+ <signal handler="focus_in_event" last_modification_time="Sun, 05 Mar 2006 19:47:28 GMT" name="focus_in_event"/>
+ <signal handler="on_lock_info" last_modification_time="Wed, 22 Mar 2006 10:38:44 GMT" name="dasher_lock_info"/>
+ <signal handler="on_message" last_modification_time="Wed, 22 Mar 2006 14:24:04 GMT" name="dasher_message"/>
+ <signal handler="convert_cb" last_modification_time="Tue, 30 May 2006 14:21:15 GMT" name="dasher_edit_convert"/>
+ <signal handler="protect_cb" last_modification_time="Tue, 30 May 2006 14:21:26 GMT" name="dasher_edit_protect"/>
+ <signal handler="on_command" last_modification_time="Thu, 14 Sep 2006 12:13:36 GMT" name="dasher_command"/>
+ </object>
+ <packing>
+ <property name="shrink">True</property>
+ <property name="resize">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkHBox" id="vbox40">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <child>
+ <object class="GtkScrolledWindow" id="scrolledwindow5">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+ <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+ <property name="shadow_type">GTK_SHADOW_IN</property>
+ <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+ <child>
+ <object class="GtkTextView" id="the_text_view">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="events">GDK_BUTTON_PRESS_MASK | GDK_KEY_PRESS_MASK</property>
+ <property name="editable">True</property>
+ <property name="overwrite">False</property>
+ <property name="accepts_tab">True</property>
+ <property name="justification">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap_mode">GTK_WRAP_WORD</property>
+ <property name="cursor_visible">True</property>
+ <property name="pixels_above_lines">0</property>
+ <property name="pixels_below_lines">0</property>
+ <property name="pixels_inside_wrap">0</property>
+ <property name="left_margin">0</property>
+ <property name="right_margin">0</property>
+ <property name="indent">0</property>
+ <signal handler="edit_focus_in_event" last_modification_time="Fri, 21 Jul 2006 10:28:42 GMT" name="focus_in_event"/>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkVBox" id="vbox39">
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <child>
+ <placeholder/>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="shrink">True</property>
+ <property name="resize">True</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkHBox" id="hbox8">
+ <property name="border_width">2</property>
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">2</property>
+ <child>
+ <object class="GtkLabel" id="label109">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Speed:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">2</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>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkSpinButton" id="spinbutton1">
+ <property name="width_request">64</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="climb_rate">0.10000000149</property>
+ <property name="digits">1</property>
+ <property name="numeric">True</property>
+ <property name="update_policy">GTK_UPDATE_IF_VALID</property>
+ <property name="snap_to_ticks">False</property>
+ <property name="wrap">False</property>
+ <property name="adjustment">adjustment1</property>
+ <signal handler="speed_changed" name="value-changed"/>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label110">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Alphabet:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">2</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>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkComboBox" id="combobox1">
+ <property name="width_request">32</property>
+ <property name="visible">True</property>
+ <property name="add_tearoffs">False</property>
+ <property name="focus_on_click">True</property>
+ <signal handler="alphabet_combo_changed" last_modification_time="Tue, 27 Jun 2006 07:42:21 GMT" name="changed"/>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="open_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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">False</property>
+ <property name="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="cancel_button1">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="ok_button1">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFontSelectionDialog" id="dasher_fontselector">
+ <property name="border_width">4</property>
+ <property name="title" translatable="yes">Select Font</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">False</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">False</property>
+ <signal handler="dasher_font_cancel_cb" last_modification_time="Thu, 11 May 2006 15:22:16 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="dasher_font_cancel">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label">gtk-cancel</property>
+ <property name="use_stock">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <signal handler="dasher_font_cancel_cb" last_modification_time="Thu, 11 May 2006 15:21:14 GMT" name="clicked"/>
+ </object>
+ </child>
+ <child internal-child="apply_button">
+ <object class="GtkButton" id="dasher_font_apply">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label">gtk-apply</property>
+ <property name="use_stock">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <signal handler="dasher_font_apply_cb" last_modification_time="Thu, 11 May 2006 15:21:38 GMT" name="clicked"/>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="dasher_font_ok">
+ <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 handler="dasher_font_ok_cb" last_modification_time="Thu, 11 May 2006 15:22:03 GMT" name="clicked"/>
+ </object>
+ </child>
+ <child internal-child="font_selection">
+ <object class="GtkFontSelection" id="font_selection1">
+ <property name="border_width">4</property>
+ <property name="visible">True</property>
+ <property name="preview_text" translatable="yes">abcdefghijk ABCDEFGHIJK</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ <object class="GtkFontSelectionDialog" id="edit_fontselector">
+ <property name="border_width">4</property>
+ <property name="title" translatable="yes">Select Font</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">False</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">False</property>
+ <signal handler="edit_font_cancel_cb" last_modification_time="Thu, 11 May 2006 15:22:37 GMT" name="close"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="edit_font_cancel">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label">gtk-cancel</property>
+ <property name="use_stock">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <signal handler="edit_font_cancel_cb" last_modification_time="Thu, 11 May 2006 15:20:27 GMT" name="clicked"/>
+ </object>
+ </child>
+ <child internal-child="apply_button">
+ <object class="GtkButton" id="edit_font_apply">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label">gtk-apply</property>
+ <property name="use_stock">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <signal handler="edit_font_apply_cb" last_modification_time="Thu, 11 May 2006 15:20:19 GMT" name="clicked"/>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="edit_font_ok">
+ <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 handler="edit_font_ok_cb" last_modification_time="Thu, 11 May 2006 15:19:55 GMT" name="clicked"/>
+ </object>
+ </child>
+ <child internal-child="font_selection">
+ <object class="GtkFontSelection" id="font_selection_2">
+ <property name="border_width">4</property>
+ <property name="visible">True</property>
+ <property name="preview_text" translatable="yes">abcdefghijk ABCDEFGHIJK</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="save_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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">False</property>
+ <property name="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="button14">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="button15">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="append_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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">False</property>
+ <property name="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="button16">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="button17">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="import_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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">False</property>
+ <property name="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="button18">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="button19">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="save_and_quit_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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">False</property>
+ <property name="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="button20">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="button21">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkWindow" id="HiddenWindow">
+ <property name="width_request">128</property>
+ <property name="height_request">64</property>
+ <property name="title" translatable="yes">Dasher</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">False</property>
+ <property name="destroy_with_parent">False</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_NORMAL</property>
+ <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+ <property name="focus_on_map">True</property>
+ <property name="urgency_hint">False</property>
+ <child>
+ <object class="GtkButton" id="RestoreButton">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Dasher</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkWindow" id="lock_window">
+ <property name="visible">True</property>
+ <property name="title" translatable="yes">Please Wait...</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">False</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_NORMAL</property>
+ <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+ <property name="focus_on_map">True</property>
+ <property name="urgency_hint">False</property>
+ <child>
+ <object class="GtkVBox" id="vbox43">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <child>
+ <object class="GtkLabel" id="lock_message">
+ <property name="visible">True</property>
+ <property name="label"/>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</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>
+ </object>
+ <packing>
+ <property name="padding">8</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkAlignment" id="alignment38">
+ <property name="border_width">8</property>
+ <property name="visible">True</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xscale">1</property>
+ <property name="yscale">1</property>
+ <property name="top_padding">0</property>
+ <property name="bottom_padding">0</property>
+ <property name="left_padding">0</property>
+ <property name="right_padding">0</property>
+ <child>
+ <object class="GtkProgressBar" id="lock_progress">
+ <property name="visible">True</property>
+ <property name="orientation">GTK_PROGRESS_LEFT_TO_RIGHT</property>
+ <property name="fraction">0</property>
+ <property name="pulse_step">0.10000000149</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+</interface>
diff --git a/Data/GUI/dasher.direct.ui b/Data/GUI/dasher.direct.ui
new file mode 100644
index 0000000..d5d32e9
--- /dev/null
+++ b/Data/GUI/dasher.direct.ui
@@ -0,0 +1,472 @@
+<?xml version="1.0"?>
+<!--*- mode: xml -*-->
+<interface>
+ <object class="GtkAdjustment" id="adjustment1">
+ <property name="upper">8</property>
+ <property name="lower">0.1</property>
+ <property name="page_increment">1</property>
+ <property name="step_increment">0.1</property>
+ <property name="page_size">0</property>
+ <property name="value">1</property>
+ </object>
+ <object class="GtkWindow" id="window">
+ <property name="events">GDK_BUTTON_RELEASE_MASK</property>
+ <property name="title" translatable="yes">Dasher</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">False</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_NORMAL</property>
+ <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+ <property name="focus_on_map">False</property>
+ <property name="urgency_hint">False</property>
+ <signal handler="dasher_main_cb_window_close" last_modification_time="Mon, 22 Sep 2003 19:53:44 GMT" name="delete_event"/>
+ <signal handler="test_focus_handler" last_modification_time="Fri, 02 Feb 2007 14:30:40 GMT" name="focus-in-event"/>
+ <child>
+ <object class="GtkVBox" id="vbox1">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <child>
+ <object class="GtkVPaned" id="vpaned1">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <child>
+ <object class="Custom" id="DasherEditor">
+ <property name="visible">True</property>
+ <property name="creation_function">create_dasher_editor</property>
+ <property name="int1">0</property>
+ <property name="int2">0</property>
+ <property name="last_modification_time">Sat, 31 Mar 2007 14:56:08 GMT</property>
+ <signal handler="dasher_main_cb_filename_changed" last_modification_time="Sat, 31 Mar 2007 15:42:49 GMT" name="filename_changed"/>
+ <signal handler="dasher_main_cb_buffer_changed" last_modification_time="Sat, 31 Mar 2007 15:43:06 GMT" name="buffer_changed"/>
+ <signal handler="dasher_main_cb_context_changed" last_modification_time="Sat, 31 Mar 2007 15:43:20 GMT" name="context_changed"/>
+ </object>
+ <packing>
+ <property name="shrink">True</property>
+ <property name="resize">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="Custom" id="DasherControl">
+ <property name="width_request">200</property>
+ <property name="height_request">200</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="has_focus">True</property>
+ <property name="creation_function">create_dasher_control</property>
+ <property name="int1">0</property>
+ <property name="int2">0</property>
+ <property name="last_modification_time">Sun, 05 Mar 2006 19:33:03 GMT</property>
+ <signal handler="parameter_notification" last_modification_time="Sun, 05 Mar 2006 19:45:23 GMT" name="dasher_changed"/>
+ <signal handler="handle_start_event" last_modification_time="Sun, 05 Mar 2006 19:45:35 GMT" name="dasher_start"/>
+ <signal handler="handle_stop_event" last_modification_time="Sun, 05 Mar 2006 19:45:43 GMT" name="dasher_stop"/>
+ <signal handler="handle_control_event" last_modification_time="Sun, 05 Mar 2006 19:45:53 GMT" name="dasher_control"/>
+ <signal handler="gtk2_edit_output_callback" last_modification_time="Sun, 05 Mar 2006 19:46:13 GMT" name="dasher_edit_insert"/>
+ <signal handler="gtk2_edit_delete_callback" last_modification_time="Sun, 05 Mar 2006 19:46:32 GMT" name="dasher_edit_delete"/>
+ <signal handler="handle_context_request" last_modification_time="Sun, 05 Mar 2006 19:46:54 GMT" name="dasher_context_request"/>
+ <signal handler="handle_request_settings" last_modification_time="Sun, 05 Mar 2006 19:47:12 GMT" name="dasher_request_settings"/>
+ <signal handler="focus_in_event" last_modification_time="Sun, 05 Mar 2006 19:47:28 GMT" name="focus_in_event"/>
+ <signal handler="on_lock_info" last_modification_time="Wed, 22 Mar 2006 10:38:44 GMT" name="dasher_lock_info"/>
+ <signal handler="on_message" last_modification_time="Wed, 22 Mar 2006 14:24:04 GMT" name="dasher_message"/>
+ <signal handler="convert_cb" last_modification_time="Tue, 30 May 2006 14:21:15 GMT" name="dasher_edit_convert"/>
+ <signal handler="protect_cb" last_modification_time="Tue, 30 May 2006 14:21:26 GMT" name="dasher_edit_protect"/>
+ <signal handler="on_command" last_modification_time="Thu, 14 Sep 2006 12:13:36 GMT" name="dasher_command"/>
+ </object>
+ <packing>
+ <property name="shrink">True</property>
+ <property name="resize">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkHBox" id="hbox8">
+ <property name="border_width">2</property>
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">2</property>
+ <child>
+ <object class="GtkLabel" id="label109">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Speed:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">2</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>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkSpinButton" id="spinbutton1">
+ <property name="width_request">64</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="climb_rate">0.10000000149</property>
+ <property name="digits">1</property>
+ <property name="numeric">True</property>
+ <property name="update_policy">GTK_UPDATE_IF_VALID</property>
+ <property name="snap_to_ticks">False</property>
+ <property name="wrap">False</property>
+ <property name="adjustment">adjustment1</property>
+ <signal handler="speed_changed" name="value-changed"/>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label110">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Alphabet:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">2</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>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkComboBox" id="combobox1">
+ <property name="width_request">32</property>
+ <property name="visible">True</property>
+ <property name="add_tearoffs">False</property>
+ <property name="focus_on_click">True</property>
+ <signal handler="alphabet_combo_changed" last_modification_time="Tue, 27 Jun 2006 07:42:21 GMT" name="changed"/>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="open_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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">False</property>
+ <property name="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="cancel_button1">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="ok_button1">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="save_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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">False</property>
+ <property name="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="button14">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="button15">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="append_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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">False</property>
+ <property name="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="button16">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="button17">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="import_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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">False</property>
+ <property name="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="button18">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="button19">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="save_and_quit_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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">False</property>
+ <property name="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="button20">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="button21">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkWindow" id="HiddenWindow">
+ <property name="width_request">128</property>
+ <property name="height_request">64</property>
+ <property name="title" translatable="yes">Dasher</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">False</property>
+ <property name="destroy_with_parent">False</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_NORMAL</property>
+ <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+ <property name="focus_on_map">True</property>
+ <property name="urgency_hint">False</property>
+ <child>
+ <object class="GtkButton" id="RestoreButton">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Dasher</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkWindow" id="lock_window">
+ <property name="visible">True</property>
+ <property name="title" translatable="yes">Please Wait...</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">False</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_NORMAL</property>
+ <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+ <property name="focus_on_map">True</property>
+ <property name="urgency_hint">False</property>
+ <child>
+ <object class="GtkVBox" id="vbox43">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <child>
+ <object class="GtkLabel" id="lock_message">
+ <property name="visible">True</property>
+ <property name="label"/>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</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>
+ </object>
+ <packing>
+ <property name="padding">8</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkAlignment" id="alignment38">
+ <property name="border_width">8</property>
+ <property name="visible">True</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xscale">1</property>
+ <property name="yscale">1</property>
+ <property name="top_padding">0</property>
+ <property name="bottom_padding">0</property>
+ <property name="left_padding">0</property>
+ <property name="right_padding">0</property>
+ <child>
+ <object class="GtkProgressBar" id="lock_progress">
+ <property name="visible">True</property>
+ <property name="orientation">GTK_PROGRESS_LEFT_TO_RIGHT</property>
+ <property name="fraction">0</property>
+ <property name="pulse_step">0.10000000149</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+</interface>
diff --git a/Data/GUI/dasher.fullscreen.ui b/Data/GUI/dasher.fullscreen.ui
new file mode 100644
index 0000000..41513b7
--- /dev/null
+++ b/Data/GUI/dasher.fullscreen.ui
@@ -0,0 +1,684 @@
+<?xml version="1.0"?>
+<!--*- mode: xml -*-->
+<interface>
+ <object class="GtkWindow" id="window">
+ <property name="can_focus">True</property>
+ <property name="has_focus">True</property>
+ <property name="events">GDK_BUTTON_RELEASE_MASK</property>
+ <property name="title" translatable="yes">Dasher</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">False</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_NORMAL</property>
+ <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+ <property name="focus_on_map">True</property>
+ <property name="urgency_hint">False</property>
+ <signal handler="ask_save_before_exit" last_modification_time="Mon, 22 Sep 2003 19:53:44 GMT" name="delete_event"/>
+ <signal handler="on_window_map" last_modification_time="Sun, 05 Mar 2006 20:22:17 GMT" name="map"/>
+ <child>
+ <object class="GtkVBox" id="vbox1">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <child>
+ <object class="GtkAlignment" id="alignment61">
+ <property name="border_width">8</property>
+ <property name="visible">True</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xscale">1</property>
+ <property name="yscale">1</property>
+ <property name="top_padding">0</property>
+ <property name="bottom_padding">0</property>
+ <property name="left_padding">0</property>
+ <property name="right_padding">0</property>
+ <child>
+ <object class="GtkScrolledWindow" id="scrolledwindow5">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+ <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+ <property name="shadow_type">GTK_SHADOW_IN</property>
+ <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+ <child>
+ <object class="GtkTextView" id="the_text_view">
+ <property name="height_request">256</property>
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="events">GDK_BUTTON_PRESS_MASK | GDK_KEY_PRESS_MASK</property>
+ <property name="editable">True</property>
+ <property name="overwrite">False</property>
+ <property name="accepts_tab">True</property>
+ <property name="justification">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap_mode">GTK_WRAP_WORD</property>
+ <property name="cursor_visible">True</property>
+ <property name="pixels_above_lines">0</property>
+ <property name="pixels_below_lines">0</property>
+ <property name="pixels_inside_wrap">0</property>
+ <property name="left_margin">0</property>
+ <property name="right_margin">0</property>
+ <property name="indent">0</property>
+ <signal handler="edit_focus_in_event" last_modification_time="Fri, 21 Jul 2006 10:28:42 GMT" name="focus_in_event"/>
+ </object>
+ </child>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkHBox" id="hbox7">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <child>
+ <object class="GtkVBox" id="vbox59">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <child>
+ <object class="GtkButton" id="button38">
+ <property name="border_width">8</property>
+ <property name="width_request">128</property>
+ <property name="height_request">128</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="no">button38</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="button37">
+ <property name="border_width">8</property>
+ <property name="width_request">128</property>
+ <property name="height_request">128</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="no">button37</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="button36">
+ <property name="border_width">8</property>
+ <property name="width_request">128</property>
+ <property name="height_request">128</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="no">button36</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkAlignment" id="alignment60">
+ <property name="border_width">10</property>
+ <property name="visible">True</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xscale">1</property>
+ <property name="yscale">1</property>
+ <property name="top_padding">0</property>
+ <property name="bottom_padding">0</property>
+ <property name="left_padding">0</property>
+ <property name="right_padding">0</property>
+ <child>
+ <object class="Custom" id="DasherControl">
+ <property name="width_request">200</property>
+ <property name="height_request">200</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="has_focus">True</property>
+ <property name="creation_function">create_dasher_control</property>
+ <property name="int1">0</property>
+ <property name="int2">0</property>
+ <property name="last_modification_time">Sun, 05 Mar 2006 19:33:03 GMT</property>
+ <signal handler="parameter_notification" last_modification_time="Sun, 05 Mar 2006 19:45:23 GMT" name="dasher_changed"/>
+ <signal handler="handle_start_event" last_modification_time="Sun, 05 Mar 2006 19:45:35 GMT" name="dasher_start"/>
+ <signal handler="handle_stop_event" last_modification_time="Sun, 05 Mar 2006 19:45:43 GMT" name="dasher_stop"/>
+ <signal handler="handle_control_event" last_modification_time="Sun, 05 Mar 2006 19:45:53 GMT" name="dasher_control"/>
+ <signal handler="gtk2_edit_output_callback" last_modification_time="Sun, 05 Mar 2006 19:46:13 GMT" name="dasher_edit_insert"/>
+ <signal handler="gtk2_edit_delete_callback" last_modification_time="Sun, 05 Mar 2006 19:46:32 GMT" name="dasher_edit_delete"/>
+ <signal handler="handle_context_request" last_modification_time="Sun, 05 Mar 2006 19:46:54 GMT" name="dasher_context_request"/>
+ <signal handler="handle_request_settings" last_modification_time="Sun, 05 Mar 2006 19:47:12 GMT" name="dasher_request_settings"/>
+ <signal handler="focus_in_event" last_modification_time="Sun, 05 Mar 2006 19:47:28 GMT" name="focus_in_event"/>
+ <signal handler="on_lock_info" last_modification_time="Wed, 22 Mar 2006 10:38:44 GMT" name="dasher_lock_info"/>
+ <signal handler="on_message" last_modification_time="Wed, 22 Mar 2006 14:24:04 GMT" name="dasher_message"/>
+ <signal handler="convert_cb" last_modification_time="Tue, 30 May 2006 14:21:15 GMT" name="dasher_edit_convert"/>
+ <signal handler="protect_cb" last_modification_time="Tue, 30 May 2006 14:21:26 GMT" name="dasher_edit_protect"/>
+ <signal handler="on_command" last_modification_time="Thu, 14 Sep 2006 12:13:36 GMT" name="dasher_command"/>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkVBox" id="vbox60">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <child>
+ <object class="GtkButton" id="button33">
+ <property name="border_width">8</property>
+ <property name="width_request">128</property>
+ <property name="height_request">128</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="no">button33</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="button34">
+ <property name="border_width">8</property>
+ <property name="width_request">128</property>
+ <property name="height_request">128</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="no">button34</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="button35">
+ <property name="border_width">8</property>
+ <property name="width_request">128</property>
+ <property name="height_request">128</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="no">button35</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="open_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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">False</property>
+ <property name="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="cancel_button1">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="ok_button1">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFontSelectionDialog" id="dasher_fontselector">
+ <property name="border_width">4</property>
+ <property name="title" translatable="yes">Select Font</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">False</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">False</property>
+ <signal handler="dasher_font_cancel_cb" last_modification_time="Thu, 11 May 2006 15:22:16 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="dasher_font_cancel">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label">gtk-cancel</property>
+ <property name="use_stock">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <signal handler="dasher_font_cancel_cb" last_modification_time="Thu, 11 May 2006 15:21:14 GMT" name="clicked"/>
+ </object>
+ </child>
+ <child internal-child="apply_button">
+ <object class="GtkButton" id="dasher_font_apply">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label">gtk-apply</property>
+ <property name="use_stock">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <signal handler="dasher_font_apply_cb" last_modification_time="Thu, 11 May 2006 15:21:38 GMT" name="clicked"/>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="dasher_font_ok">
+ <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 handler="dasher_font_ok_cb" last_modification_time="Thu, 11 May 2006 15:22:03 GMT" name="clicked"/>
+ </object>
+ </child>
+ <child internal-child="font_selection">
+ <object class="GtkFontSelection" id="font_selection1">
+ <property name="border_width">4</property>
+ <property name="visible">True</property>
+ <property name="preview_text" translatable="yes">abcdefghijk ABCDEFGHIJK</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ <object class="GtkFontSelectionDialog" id="edit_fontselector">
+ <property name="border_width">4</property>
+ <property name="title" translatable="yes">Select Font</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">False</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">False</property>
+ <signal handler="edit_font_cancel_cb" last_modification_time="Thu, 11 May 2006 15:22:37 GMT" name="close"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="edit_font_cancel">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label">gtk-cancel</property>
+ <property name="use_stock">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <signal handler="edit_font_cancel_cb" last_modification_time="Thu, 11 May 2006 15:20:27 GMT" name="clicked"/>
+ </object>
+ </child>
+ <child internal-child="apply_button">
+ <object class="GtkButton" id="edit_font_apply">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label">gtk-apply</property>
+ <property name="use_stock">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <signal handler="edit_font_apply_cb" last_modification_time="Thu, 11 May 2006 15:20:19 GMT" name="clicked"/>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="edit_font_ok">
+ <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 handler="edit_font_ok_cb" last_modification_time="Thu, 11 May 2006 15:19:55 GMT" name="clicked"/>
+ </object>
+ </child>
+ <child internal-child="font_selection">
+ <object class="GtkFontSelection" id="font_selection_2">
+ <property name="border_width">4</property>
+ <property name="visible">True</property>
+ <property name="preview_text" translatable="yes">abcdefghijk ABCDEFGHIJK</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="save_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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">False</property>
+ <property name="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="button14">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="button15">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="append_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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">False</property>
+ <property name="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="button16">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="button17">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="import_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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">False</property>
+ <property name="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="button18">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="button19">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="save_and_quit_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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">False</property>
+ <property name="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="button20">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="button21">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkWindow" id="HiddenWindow">
+ <property name="width_request">128</property>
+ <property name="height_request">64</property>
+ <property name="title" translatable="yes">Dasher</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">False</property>
+ <property name="destroy_with_parent">False</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_NORMAL</property>
+ <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+ <property name="focus_on_map">True</property>
+ <property name="urgency_hint">False</property>
+ <child>
+ <object class="GtkButton" id="RestoreButton">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Dasher</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkWindow" id="lock_window">
+ <property name="visible">True</property>
+ <property name="title" translatable="yes">Please Wait...</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">False</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_NORMAL</property>
+ <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+ <property name="focus_on_map">True</property>
+ <property name="urgency_hint">False</property>
+ <child>
+ <object class="GtkVBox" id="vbox43">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <child>
+ <object class="GtkLabel" id="lock_message">
+ <property name="visible">True</property>
+ <property name="label"/>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</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>
+ </object>
+ <packing>
+ <property name="padding">8</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkAlignment" id="alignment38">
+ <property name="border_width">8</property>
+ <property name="visible">True</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xscale">1</property>
+ <property name="yscale">1</property>
+ <property name="top_padding">0</property>
+ <property name="bottom_padding">0</property>
+ <property name="left_padding">0</property>
+ <property name="right_padding">0</property>
+ <child>
+ <object class="GtkProgressBar" id="lock_progress">
+ <property name="visible">True</property>
+ <property name="orientation">GTK_PROGRESS_LEFT_TO_RIGHT</property>
+ <property name="fraction">0</property>
+ <property name="pulse_step">0.10000000149</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+</interface>
diff --git a/Data/GUI/dasher.gameWIP.ui b/Data/GUI/dasher.gameWIP.ui
new file mode 100644
index 0000000..e9d3ba7
--- /dev/null
+++ b/Data/GUI/dasher.gameWIP.ui
@@ -0,0 +1,1008 @@
+<?xml version="1.0"?>
+<!--*- mode: xml -*-->
+<interface>
+ <object class="GtkAdjustment" id="adjustment1">
+ <property name="upper">8</property>
+ <property name="lower">0.1</property>
+ <property name="page_increment">1</property>
+ <property name="step_increment">0.1</property>
+ <property name="page_size">0</property>
+ <property name="value">1</property>
+ </object>
+ <object class="GtkUIManager" id="uimanager1">
+ <child>
+ <object class="GtkActionGroup" id="actiongroup1">
+ <child>
+ <object class="GtkAction" id="menuitem4">
+ <property name="name">menuitem4</property>
+ <property name="label" translatable="yes">_File</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menu_command_new">
+ <property name="stock_id">gtk-new</property>
+ <property name="name">menu_command_new</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menu_command_open">
+ <property name="stock_id">gtk-open</property>
+ <property name="name">menu_command_open</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menu_command_save">
+ <property name="stock_id">gtk-save</property>
+ <property name="name">menu_command_save</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menu_command_saveas">
+ <property name="stock_id">gtk-save-as</property>
+ <property name="name">menu_command_saveas</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menu_command_append">
+ <property name="name">menu_command_append</property>
+ <property name="label" translatable="yes">A_ppend to file...</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menu_command_import">
+ <property name="name">menu_command_import</property>
+ <property name="label" translatable="yes">_Import Training Text...</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menu_command_quit">
+ <property name="stock_id">gtk-quit</property>
+ <property name="name">menu_command_quit</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menuitem5">
+ <property name="name">menuitem5</property>
+ <property name="label" translatable="yes">_Edit</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menu_command_cut">
+ <property name="stock_id">gtk-cut</property>
+ <property name="name">menu_command_cut</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menu_command_copy">
+ <property name="stock_id">gtk-copy</property>
+ <property name="name">menu_command_copy</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menu_command_copyall">
+ <property name="name">menu_command_copyall</property>
+ <property name="label" translatable="yes">Copy _All</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menu_command_paste">
+ <property name="stock_id">gtk-paste</property>
+ <property name="name">menu_command_paste</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menu_command_preferences">
+ <property name="stock_id">gtk-preferences</property>
+ <property name="name">menu_command_preferences</property>
+ <property name="label" translatable="yes">Pr_eferences...</property>
+ </object>
+ <accelerator key="S" modifiers="GDK_CONTROL_MASK | GDK_SHIFT_MASK"/>
+ </child>
+ <child>
+ <object class="GtkAction" id="menuitem7">
+ <property name="name">menuitem7</property>
+ <property name="label" translatable="yes">_Help</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menu_command_help">
+ <property name="stock_id">gtk-help</property>
+ <property name="name">menu_command_help</property>
+ <property name="label" translatable="yes">_Contents...</property>
+ </object>
+ <accelerator key="F1" modifiers="0"/>
+ </child>
+ <child>
+ <object class="GtkAction" id="menu_command_about">
+ <property name="stock_id">gtk-about</property>
+ <property name="name">menu_command_about</property>
+ <property name="label" translatable="yes">_About...</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="fulldemo">
+ <property name="name">fulldemo</property>
+ <property name="label" translatable="yes">Full Demo</property>
+ </object>
+ </child>
+ </object>
+ </child>
+ <ui>
+ <menubar name="dasher_menu_bar">
+ <menu action="menuitem4">
+ <menuitem action="menu_command_new"/>
+ <menuitem action="menu_command_open"/>
+ <menuitem action="menu_command_save"/>
+ <menuitem action="menu_command_saveas"/>
+ <menuitem action="menu_command_append"/>
+ <separator/>
+ <menuitem action="menu_command_import"/>
+ <menuitem action="menu_command_quit"/>
+ </menu>
+ <menu action="menuitem5">
+ <menuitem action="menu_command_cut"/>
+ <menuitem action="menu_command_copy"/>
+ <menuitem action="menu_command_copyall"/>
+ <menuitem action="menu_command_paste"/>
+ <separator/>
+ <menuitem action="menu_command_preferences"/>
+ </menu>
+ <menu action="menuitem7">
+ <menuitem action="menu_command_help"/>
+ <menuitem action="menu_command_about"/>
+ <menuitem action="fulldemo"/>
+ </menu>
+ </menubar>
+ </ui>
+ </object>
+ <object class="GtkWindow" id="window">
+ <property name="can_focus">True</property>
+ <property name="has_focus">True</property>
+ <property name="events">GDK_BUTTON_RELEASE_MASK</property>
+ <property name="title" translatable="yes">Dasher</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">False</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_NORMAL</property>
+ <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+ <signal handler="dasher_main_cb_window_close" last_modification_time="Tue, 06 Feb 2007 14:25:42 GMT" name="delete_event"/>
+ <signal handler="test_focus_handler" last_modification_time="Fri, 02 Feb 2007 14:30:40 GMT" name="focus-in-event"/>
+ <child>
+ <object class="GtkVBox" id="vbox1">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <signal handler="test_focus_handler" last_modification_time="Fri, 02 Feb 2007 14:30:40 GMT" name="focus-in-event"/>
+ <child>
+ <object class="GtkMenuBar" constructor="uimanager1" id="dasher_menu_bar">
+ <property name="visible">True</property>
+ <property name="tooltip-text" translatable="yes">Quit</property>
+ <signal handler="test_focus_handler" last_modification_time="Fri, 02 Feb 2007 14:30:40 GMT" name="focus-in-event"/>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolbar" id="toolbar">
+ <property name="orientation">GTK_ORIENTATION_HORIZONTAL</property>
+ <property name="toolbar_style">GTK_TOOLBAR_ICONS</property>
+ <property name="tooltips">True</property>
+ <property name="show_arrow">True</property>
+ <signal handler="test_focus_handler" last_modification_time="Fri, 02 Feb 2007 14:30:40 GMT" name="focus-in-event"/>
+ <child>
+ <object class="GtkToolButton" id="tb_command_new">
+ <property name="visible">True</property>
+ <property name="tooltip-text" translatable="yes">New file</property>
+ <property name="stock_id">gtk-new</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ <signal handler="test_focus_handler" last_modification_time="Fri, 02 Feb 2007 14:30:40 GMT" name="focus-in-event"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolButton" id="tb_command_open">
+ <property name="visible">True</property>
+ <property name="tooltip-text" translatable="yes">Open file</property>
+ <property name="stock_id">gtk-open</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ <signal handler="test_focus_handler" last_modification_time="Fri, 02 Feb 2007 14:30:40 GMT" name="focus-in-event"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolButton" id="tb_command_save">
+ <property name="visible">True</property>
+ <property name="tooltip-text" translatable="yes">Save file</property>
+ <property name="stock_id">gtk-save</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ <signal handler="test_focus_handler" last_modification_time="Fri, 02 Feb 2007 14:30:40 GMT" name="focus-in-event"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolButton" id="tb_command_saveas">
+ <property name="visible">True</property>
+ <property name="tooltip-text" translatable="yes">Save file as</property>
+ <property name="stock_id">gtk-save-as</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ <signal handler="test_focus_handler" last_modification_time="Fri, 02 Feb 2007 14:30:40 GMT" name="focus-in-event"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkSeparatorToolItem" id="separatortoolitem1">
+ <property name="visible">True</property>
+ <property name="draw">True</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <signal handler="test_focus_handler" last_modification_time="Fri, 02 Feb 2007 14:30:40 GMT" name="focus-in-event"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolButton" id="tb_command_cut">
+ <property name="visible">True</property>
+ <property name="tooltip-text" translatable="yes">Cut</property>
+ <property name="stock_id">gtk-cut</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ <signal handler="test_focus_handler" last_modification_time="Fri, 02 Feb 2007 14:30:40 GMT" name="focus-in-event"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolButton" id="tb_command_copy">
+ <property name="visible">True</property>
+ <property name="tooltip-text" translatable="yes">Copy</property>
+ <property name="stock_id">gtk-copy</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ <signal handler="test_focus_handler" last_modification_time="Fri, 02 Feb 2007 14:30:40 GMT" name="focus-in-event"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolButton" id="tb_command_paste">
+ <property name="visible">True</property>
+ <property name="tooltip-text" translatable="yes">Paste</property>
+ <property name="stock_id">gtk-paste</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ <signal handler="test_focus_handler" last_modification_time="Fri, 02 Feb 2007 14:30:40 GMT" name="focus-in-event"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkSeparatorToolItem" id="separatortoolitem2">
+ <property name="visible">True</property>
+ <property name="draw">True</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolButton" id="tb_command_preferences">
+ <property name="visible">True</property>
+ <property name="tooltip-text" translatable="yes">Preferences</property>
+ <property name="stock_id">gtk-preferences</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolButton" id="tb_command_help">
+ <property name="visible">True</property>
+ <property name="tooltip-text" translatable="yes">Help</property>
+ <property name="stock_id">gtk-help</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToggleToolButton" id="tb_command_game">
+ <property name="visible">True</property>
+ <property name="tooltip-text" translatable="yes">Launch Dasher Game & Demo mode!</property>
+ <property name="label" translatable="yes"/>
+ <property name="use_underline">True</property>
+ <property name="stock_id">gtk-about</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ <property name="active">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolItem" id="toolitem1">
+ <property name="visible">True</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ <child>
+ <object class="GtkVSeparator" id="vseparator1">
+ <property name="visible">True</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolButton" id="tb_command_quit">
+ <property name="visible">True</property>
+ <property name="tooltip-text" translatable="yes">Quit</property>
+ <property name="stock_id">gtk-quit</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkVPaned" id="main_divider">
+ <property name="visible">True</property>
+ <property name="position">0</property>
+ <signal handler="test_focus_handler" last_modification_time="Fri, 02 Feb 2007 14:30:40 GMT" name="focus-in-event"/>
+ <child>
+ <object class="GtkHBox" id="hbox13">
+ <property name="width_request">0</property>
+ <property name="height_request">65</property>
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <child>
+ <object class="GtkVBox" id="vbox59">
+ <property name="height_request">65</property>
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <child>
+ <object class="GtkLabel" id="game_info_label">
+ <property name="width_request">600</property>
+ <property name="label" translatable="yes"/>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_FILL</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0</property>
+ <property name="xpad">2</property>
+ <property name="ypad">0</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="Custom" id="DasherEditor">
+ <property name="height_request">48</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="creation_function">create_dasher_editor</property>
+ <property name="int1">0</property>
+ <property name="int2">0</property>
+ <property name="last_modification_time">Mon, 19 Mar 2007 15:25:57 GMT</property>
+ <signal handler="dasher_main_cb_filename_changed" last_modification_time="Mon, 16 Apr 2007 10:58:09 GMT" name="filename_changed"/>
+ <signal handler="dasher_main_cb_buffer_changed" last_modification_time="Mon, 16 Apr 2007 10:58:17 GMT" name="buffer_changed"/>
+ <signal handler="dasher_main_cb_context_changed" last_modification_time="Mon, 16 Apr 2007 10:58:27 GMT" name="context_changed"/>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkTable" id="game_group">
+ <property name="border_width">2</property>
+ <property name="width_request">140</property>
+ <property name="n_rows">2</property>
+ <property name="n_columns">3</property>
+ <property name="homogeneous">False</property>
+ <property name="row_spacing">2</property>
+ <property name="column_spacing">2</property>
+ <child>
+ <object class="GtkLabel" id="label130">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Level:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ </object>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">0</property>
+ <property name="bottom_attach">1</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"/>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label131">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Score:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ </object>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"/>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToggleButton" id="demo_toggle">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Demo!</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="active">False</property>
+ <property name="inconsistent">False</property>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"/>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkEntry" id="level_box">
+ <property name="width_request">32</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">False</property>
+ <property name="visibility">True</property>
+ <property name="max_length">0</property>
+ <property name="text" translatable="yes"/>
+ <property name="has_frame">True</property>
+ <property name="invisible_char">*</property>
+ <property name="activates_default">False</property>
+ </object>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="right_attach">3</property>
+ <property name="top_attach">0</property>
+ <property name="bottom_attach">1</property>
+ <property name="x_padding">2</property>
+ <property name="y_padding">2</property>
+ <property name="y_options"/>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkEntry" id="score_box">
+ <property name="width_request">32</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">True</property>
+ <property name="visibility">True</property>
+ <property name="max_length">0</property>
+ <property name="text" translatable="yes"/>
+ <property name="has_frame">True</property>
+ <property name="invisible_char">*</property>
+ <property name="activates_default">False</property>
+ </object>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="right_attach">3</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_padding">2</property>
+ <property name="y_padding">2</property>
+ <property name="y_options"/>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="game_new_sentence">
+ <property name="visible">True</property>
+ <property name="tooltip-text" translatable="yes">New sentence</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <child>
+ <object class="GtkImage" id="image25">
+ <property name="visible">True</property>
+ <property name="stock">gtk-refresh</property>
+ <property name="icon_size">4</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">0</property>
+ <property name="bottom_attach">1</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"/>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">4</property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="shrink">False</property>
+ <property name="resize">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="Custom" id="DasherControl">
+ <property name="width_request">200</property>
+ <property name="height_request">200</property>
+ <property name="visible">True</property>
+ <property name="creation_function">create_dasher_control</property>
+ <property name="int1">0</property>
+ <property name="int2">0</property>
+ <property name="last_modification_time">Sun, 05 Mar 2006 19:33:03 GMT</property>
+ <signal handler="parameter_notification" last_modification_time="Sun, 05 Mar 2006 19:45:23 GMT" name="dasher_changed"/>
+ <signal handler="handle_start_event" last_modification_time="Sun, 05 Mar 2006 19:45:35 GMT" name="dasher_start"/>
+ <signal handler="handle_stop_event" last_modification_time="Sun, 05 Mar 2006 19:45:43 GMT" name="dasher_stop"/>
+ <signal handler="handle_control_event" last_modification_time="Sun, 05 Mar 2006 19:45:53 GMT" name="dasher_control"/>
+ <signal handler="gtk2_edit_output_callback" last_modification_time="Sun, 05 Mar 2006 19:46:13 GMT" name="dasher_edit_insert"/>
+ <signal handler="gtk2_edit_delete_callback" last_modification_time="Sun, 05 Mar 2006 19:46:32 GMT" name="dasher_edit_delete"/>
+ <signal handler="handle_context_request" last_modification_time="Sun, 05 Mar 2006 19:46:54 GMT" name="dasher_context_request"/>
+ <signal handler="handle_request_settings" last_modification_time="Sun, 05 Mar 2006 19:47:12 GMT" name="dasher_request_settings"/>
+ <signal handler="focus_in_event" last_modification_time="Sun, 05 Mar 2006 19:47:28 GMT" name="focus_in_event"/>
+ <signal handler="on_lock_info" last_modification_time="Wed, 22 Mar 2006 10:38:44 GMT" name="dasher_lock_info"/>
+ <signal handler="on_message" last_modification_time="Wed, 22 Mar 2006 14:24:04 GMT" name="dasher_message"/>
+ <signal handler="convert_cb" last_modification_time="Tue, 30 May 2006 14:21:15 GMT" name="dasher_edit_convert"/>
+ <signal handler="protect_cb" last_modification_time="Tue, 30 May 2006 14:21:26 GMT" name="dasher_edit_protect"/>
+ <signal handler="on_command" last_modification_time="Thu, 14 Sep 2006 12:13:36 GMT" name="dasher_command"/>
+ <signal handler="test_focus_handler" last_modification_time="Fri, 02 Feb 2007 14:30:40 GMT" name="focus-in-event"/>
+ </object>
+ <packing>
+ <property name="shrink">True</property>
+ <property name="resize">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkHBox" id="hbox8">
+ <property name="border_width">2</property>
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">2</property>
+ <signal handler="test_focus_handler" last_modification_time="Fri, 02 Feb 2007 14:30:40 GMT" name="focus-in-event"/>
+ <child>
+ <object class="GtkLabel" id="label109">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Speed:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">2</property>
+ <property name="ypad">0</property>
+ <signal handler="test_focus_handler" last_modification_time="Fri, 02 Feb 2007 14:30:40 GMT" name="focus-in-event"/>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkSpinButton" id="spinbutton1">
+ <property name="width_request">64</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="climb_rate">0.10000000149</property>
+ <property name="digits">1</property>
+ <property name="numeric">True</property>
+ <property name="update_policy">GTK_UPDATE_IF_VALID</property>
+ <property name="snap_to_ticks">False</property>
+ <property name="wrap">False</property>
+ <property name="adjustment">adjustment1</property>
+ <signal handler="speed_changed" name="value-changed"/>
+ <signal handler="test_focus_handler" name="focus-in-event"/>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label110">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Alphabet:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">2</property>
+ <property name="ypad">0</property>
+ <signal handler="test_focus_handler" last_modification_time="Fri, 02 Feb 2007 14:30:40 GMT" name="focus-in-event"/>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkComboBox" id="combobox1">
+ <property name="width_request">32</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <signal handler="alphabet_combo_changed" last_modification_time="Tue, 27 Jun 2006 07:42:21 GMT" name="changed"/>
+ <signal handler="test_focus_handler" last_modification_time="Fri, 02 Feb 2007 14:30:40 GMT" name="focus-in-event"/>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="open_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="cancel_button1">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="ok_button1">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="save_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="button14">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="button15">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="append_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="button16">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="button17">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="import_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="button18">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="button19">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="save_and_quit_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="button20">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="button21">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkWindow" id="lock_window">
+ <property name="visible">True</property>
+ <property name="title" translatable="yes">Please Wait...</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">False</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_NORMAL</property>
+ <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+ <child>
+ <object class="GtkVBox" id="vbox43">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <child>
+ <object class="GtkLabel" id="lock_message">
+ <property name="visible">True</property>
+ <property name="label"/>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</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>
+ </object>
+ <packing>
+ <property name="padding">8</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkAlignment" id="alignment38">
+ <property name="border_width">8</property>
+ <property name="visible">True</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xscale">1</property>
+ <property name="yscale">1</property>
+ <property name="top_padding">0</property>
+ <property name="bottom_padding">0</property>
+ <property name="left_padding">0</property>
+ <property name="right_padding">0</property>
+ <child>
+ <object class="GtkProgressBar" id="lock_progress">
+ <property name="visible">True</property>
+ <property name="orientation">GTK_PROGRESS_LEFT_TO_RIGHT</property>
+ <property name="fraction">0</property>
+ <property name="pulse_step">0.10000000149</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+</interface>
diff --git a/Data/glade/dasher.preferences.glade b/Data/GUI/dasher.preferences.ui
similarity index 76%
rename from Data/glade/dasher.preferences.glade
rename to Data/GUI/dasher.preferences.ui
index 2732123..56d9710 100644
--- a/Data/glade/dasher.preferences.glade
+++ b/Data/GUI/dasher.preferences.ui
@@ -1,46 +1,74 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
+<?xml version="1.0"?>
<!--*- mode: xml -*-->
-<glade-interface>
- <widget class="GtkWindow" id="preferences">
+<interface>
+ <object class="GtkAdjustment" id="adjustment1">
+ <property name="upper">100</property>
+ <property name="lower">0</property>
+ <property name="page_increment">0.1</property>
+ <property name="step_increment">0.1</property>
+ <property name="page_size">0</property>
+ <property name="value">5</property>
+ </object>
+ <object class="GtkAdjustment" id="adjustment2">
+ <property name="upper">8</property>
+ <property name="lower">0.1</property>
+ <property name="page_increment">1</property>
+ <property name="step_increment">0.1</property>
+ <property name="page_size">0</property>
+ <property name="value">1</property>
+ </object>
+ <object class="GtkListStore" id="model1">
+ <columns>
+ <column type="gchararray"/>
+ </columns>
+ <data>
+ <row>
+ <col id="0" translatable="yes">Centre circle</col>
+ </row>
+ <row>
+ <col id="0" translatable="yes">Two box</col>
+ </row>
+ </data>
+ </object>
+ <object class="GtkWindow" id="preferences">
<property name="title" translatable="yes">Dasher Preferences</property>
- <signal name="delete_event" handler="preferences_hide"/>
+ <signal handler="preferences_hide" name="delete_event"/>
<child>
- <widget class="GtkVBox" id="vbox2">
+ <object class="GtkVBox" id="vbox2">
<property name="visible">True</property>
<child>
- <widget class="GtkAlignment" id="alignment15">
+ <object class="GtkAlignment" id="alignment15">
<property name="visible">True</property>
<child>
- <widget class="GtkNotebook" id="notebook1">
+ <object class="GtkNotebook" id="notebook1">
<property name="visible">True</property>
<property name="can_focus">True</property>
<child>
- <widget class="GtkHBox" id="hbox9">
+ <object class="GtkHBox" id="hbox9">
<property name="visible">True</property>
<property name="border_width">12</property>
<property name="spacing">18</property>
<child>
- <widget class="GtkVBox" id="frame3">
+ <object class="GtkVBox" id="frame3">
<property name="visible">True</property>
<child>
- <widget class="GtkLabel" id="label112">
+ <object class="GtkLabel" id="label112">
<property name="visible">True</property>
<property name="xalign">0</property>
<property name="label" translatable="yes"><b>Alphabet Selection</b></property>
<property name="use_markup">True</property>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment44">
+ <object class="GtkAlignment" id="alignment44">
<property name="visible">True</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
- <widget class="GtkScrolledWindow" id="scrolledwindow13">
+ <object class="GtkScrolledWindow" id="scrolledwindow13">
<property name="width_request">256</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
@@ -48,73 +76,71 @@
<property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
<property name="shadow_type">GTK_SHADOW_IN</property>
<child>
- <widget class="GtkTreeView" id="AlphabetTree">
+ <object class="GtkTreeView" id="AlphabetTree">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="headers_visible">False</property>
<property name="rules_hint">True</property>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
</child>
<child>
- <widget class="GtkVBox" id="vbox50">
+ <object class="GtkVBox" id="vbox50">
<property name="visible">True</property>
<property name="spacing">18</property>
<child>
- <widget class="GtkVBox" id="frame4">
+ <object class="GtkVBox" id="frame4">
<child>
- <widget class="GtkLabel" id="label113">
+ <object class="GtkLabel" id="label113">
<property name="visible">True</property>
<property name="xalign">0</property>
<property name="label" translatable="yes"><b>Language Model</b></property>
<property name="use_markup">True</property>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment45">
+ <object class="GtkAlignment" id="alignment45">
<property name="visible">True</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
- <widget class="GtkVBox" id="vbox24">
+ <object class="GtkVBox" id="vbox24">
<property name="visible">True</property>
<child>
- <widget class="GtkRadioButton" id="radiobutton6">
+ <object class="GtkRadioButton" id="radiobutton6">
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="label" translatable="yes" comments="PPM = Prediction by Partial Match, a statistical language model.">Standard letter-based PPM</property>
+ <property comments="PPM = Prediction by Partial Match, a statistical language model." name="label" translatable="yes">Standard letter-based PPM</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
- <signal name="clicked" handler="languagemodel"/>
- </widget>
+ <signal handler="languagemodel" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
<child>
- <widget class="GtkRadioButton" id="radiobutton7">
+ <object class="GtkRadioButton" id="radiobutton7">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">Word-based model</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
<property name="group">radiobutton6</property>
- <signal name="clicked" handler="languagemodel"/>
- </widget>
+ <signal handler="languagemodel" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
@@ -122,16 +148,15 @@
</packing>
</child>
<child>
- <widget class="GtkRadioButton" id="radiobutton8">
+ <object class="GtkRadioButton" id="radiobutton8">
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="label" translatable="yes" comments="PPM = Prediction by Partial Match, a styatistical language model.">Mixture model (PPM/dictionary)</property>
+ <property comments="PPM = Prediction by Partial Match, a styatistical language model." name="label" translatable="yes">Mixture model (PPM/dictionary)</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
<property name="group">radiobutton6</property>
- <signal name="clicked" handler="languagemodel"/>
- </widget>
+ <signal handler="languagemodel" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
@@ -139,109 +164,107 @@
</packing>
</child>
<child>
- <widget class="GtkRadioButton" id="radiobutton9">
+ <object class="GtkRadioButton" id="radiobutton9">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">Japanese</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
<property name="group">radiobutton6</property>
- <signal name="clicked" handler="languagemodel"/>
- </widget>
+ <signal handler="languagemodel" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">3</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
<child>
- <widget class="GtkVBox" id="frame21">
+ <object class="GtkVBox" id="frame21">
<property name="visible">True</property>
<child>
- <widget class="GtkLabel" id="label37">
+ <object class="GtkLabel" id="label37">
<property name="visible">True</property>
<property name="xalign">0</property>
<property name="label" translatable="yes"><b>Adaptation</b></property>
<property name="use_markup">True</property>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment9">
+ <object class="GtkAlignment" id="alignment9">
<property name="visible">True</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
- <widget class="GtkVBox" id="vbox9">
+ <object class="GtkVBox" id="vbox9">
<property name="visible">True</property>
<child>
- <widget class="GtkCheckButton" id="cb_adaptive">
+ <object class="GtkCheckButton" id="cb_adaptive">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">Language model adapts as you write.</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="active">True</property>
<property name="draw_indicator">True</property>
- <signal name="toggled" handler="generic_bool_changed"/>
- </widget>
+ <signal handler="generic_bool_changed" name="toggled"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
<property name="position">1</property>
</packing>
</child>
<child>
- <widget class="GtkVBox" id="frame23">
+ <object class="GtkVBox" id="frame23">
<property name="visible">True</property>
<child>
- <widget class="GtkLabel" id="label39">
+ <object class="GtkLabel" id="label39">
<property name="visible">True</property>
<property name="xalign">0</property>
<property name="label" translatable="yes"><b>Smoothing</b></property>
<property name="use_markup">True</property>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment11">
+ <object class="GtkAlignment" id="alignment11">
<property name="visible">True</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
- <widget class="GtkVBox" id="vbox11">
+ <object class="GtkVBox" id="vbox11">
<property name="visible">True</property>
<child>
- <widget class="GtkLabel" id="label38">
+ <object class="GtkLabel" id="label38">
<property name="visible">True</property>
<property name="xalign">0</property>
<property name="xpad">2</property>
@@ -250,88 +273,86 @@
letter boxes. Note that selecting high values will slow
your writing speed.</property>
<property name="wrap">True</property>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
<child>
- <widget class="GtkHScale" id="uniformhscale">
+ <object class="GtkHScale" id="uniformhscale">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="update_policy">GTK_UPDATE_DISCONTINUOUS</property>
- <property name="adjustment">5 0 100 0.1 0.1 0</property>
- <signal name="value-changed" handler="uniform_changed"/>
- </widget>
+ <property name="adjustment">adjustment1</property>
+ <signal handler="uniform_changed" name="value-changed"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
<property name="position">2</property>
</packing>
</child>
<child>
- <widget class="GtkVBox" id="frame8">
+ <object class="GtkVBox" id="frame8">
<property name="visible">True</property>
<child>
- <widget class="GtkLabel" id="label119">
+ <object class="GtkLabel" id="label119">
<property name="visible">True</property>
<property name="xalign">0</property>
<property name="label" translatable="yes"><b>Direction</b></property>
<property name="use_markup">True</property>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment50">
+ <object class="GtkAlignment" id="alignment50">
<property name="visible">True</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
- <widget class="GtkVBox" id="vbox15">
+ <object class="GtkVBox" id="vbox15">
<property name="visible">True</property>
<child>
- <widget class="GtkRadioButton" id="radiobutton1">
+ <object class="GtkRadioButton" id="radiobutton1">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
- <property name="label" translatable="yes" comments="The default display orientation for the selected alphabet, ie left to right for English, right to left for Arabic, etc.">Alphabet Default</property>
+ <property comments="The default display orientation for the selected alphabet, ie left to right for English, right to left for Arabic, etc." name="label" translatable="yes">Alphabet Default</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
- <signal name="clicked" handler="orientation"/>
- </widget>
+ <signal handler="orientation" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
<child>
- <widget class="GtkRadioButton" id="radiobutton12">
+ <object class="GtkRadioButton" id="radiobutton12">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Custom</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
<property name="group">radiobutton1</property>
- <signal name="clicked" handler="orientation"/>
- </widget>
+ <signal handler="orientation" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
@@ -339,40 +360,38 @@ your writing speed.</property>
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment19">
+ <object class="GtkAlignment" id="alignment19">
<property name="visible">True</property>
<property name="left_padding">16</property>
<child>
- <widget class="GtkVBox" id="vbox27">
+ <object class="GtkVBox" id="vbox27">
<property name="visible">True</property>
<child>
- <widget class="GtkRadioButton" id="radiobutton2">
+ <object class="GtkRadioButton" id="radiobutton2">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Left to Right</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
- <signal name="clicked" handler="orientation"/>
- </widget>
+ <signal handler="orientation" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
<child>
- <widget class="GtkRadioButton" id="radiobutton3">
+ <object class="GtkRadioButton" id="radiobutton3">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Right to Left</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
<property name="group">radiobutton2</property>
- <signal name="clicked" handler="orientation"/>
- </widget>
+ <signal handler="orientation" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
@@ -380,17 +399,16 @@ your writing speed.</property>
</packing>
</child>
<child>
- <widget class="GtkRadioButton" id="radiobutton4">
+ <object class="GtkRadioButton" id="radiobutton4">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Top to Bottom</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
<property name="group">radiobutton2</property>
- <signal name="clicked" handler="orientation"/>
- </widget>
+ <signal handler="orientation" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
@@ -398,89 +416,87 @@ your writing speed.</property>
</packing>
</child>
<child>
- <widget class="GtkRadioButton" id="radiobutton5">
+ <object class="GtkRadioButton" id="radiobutton5">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Bottom to Top</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
<property name="group">radiobutton2</property>
- <signal name="clicked" handler="orientation"/>
- </widget>
+ <signal handler="orientation" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">3</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="position">2</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
<packing>
<property name="position">3</property>
</packing>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- <child>
- <widget class="GtkLabel" id="label111">
+ <child type="tab">
+ <object class="GtkLabel" id="label111">
<property name="visible">True</property>
<property name="label" translatable="yes">Language</property>
- </widget>
+ </object>
<packing>
- <property name="type">tab</property>
<property name="tab_fill">False</property>
</packing>
</child>
<child>
- <widget class="GtkHBox" id="hbox10">
+ <object class="GtkHBox" id="hbox10">
<property name="visible">True</property>
<property name="border_width">12</property>
<property name="spacing">18</property>
<child>
- <widget class="GtkVBox" id="frame5">
+ <object class="GtkVBox" id="frame5">
<property name="visible">True</property>
<child>
- <widget class="GtkLabel" id="label115">
+ <object class="GtkLabel" id="label115">
<property name="visible">True</property>
<property name="xalign">0</property>
<property name="label" translatable="yes"><b>Control Style</b></property>
<property name="use_markup">True</property>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment46">
+ <object class="GtkAlignment" id="alignment46">
<property name="visible">True</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
- <widget class="GtkVBox" id="vbox46">
+ <object class="GtkVBox" id="vbox46">
<property name="visible">True</property>
<property name="spacing">4</property>
<child>
- <widget class="GtkScrolledWindow" id="scrolledwindow15">
+ <object class="GtkScrolledWindow" id="scrolledwindow15">
<property name="height_request">192</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
@@ -488,76 +504,75 @@ your writing speed.</property>
<property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
<property name="shadow_type">GTK_SHADOW_IN</property>
<child>
- <widget class="GtkTreeView" id="input_filter_tree_view">
+ <object class="GtkTreeView" id="input_filter_tree_view">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="headers_visible">False</property>
<property name="rules_hint">True</property>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
</child>
<child>
- <widget class="GtkAlignment" id="alignment39">
+ <object class="GtkAlignment" id="alignment39">
<property name="visible">True</property>
<property name="xalign">1</property>
<property name="xscale">0</property>
<property name="yscale">0</property>
<child>
- <widget class="GtkButton" id="button13">
+ <object class="GtkButton" id="button13">
<property name="width_request">96</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">Options</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
</child>
<child>
- <widget class="GtkVBox" id="vbox47">
+ <object class="GtkVBox" id="vbox47">
<property name="visible">True</property>
<property name="spacing">18</property>
<child>
- <widget class="GtkVBox" id="frame6">
+ <object class="GtkVBox" id="frame6">
<property name="visible">True</property>
<child>
- <widget class="GtkLabel" id="label116">
+ <object class="GtkLabel" id="label116">
<property name="visible">True</property>
<property name="xalign">0</property>
<property name="label" translatable="yes"><b>Input Device</b></property>
<property name="use_markup">True</property>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment47">
+ <object class="GtkAlignment" id="alignment47">
<property name="visible">True</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
- <widget class="GtkVBox" id="vbox48">
+ <object class="GtkVBox" id="vbox48">
<property name="visible">True</property>
<property name="spacing">4</property>
<child>
- <widget class="GtkScrolledWindow" id="scrolledwindow12">
+ <object class="GtkScrolledWindow" id="scrolledwindow12">
<property name="height_request">64</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
@@ -565,157 +580,153 @@ your writing speed.</property>
<property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
<property name="shadow_type">GTK_SHADOW_IN</property>
<child>
- <widget class="GtkTreeView" id="input_tree_view">
+ <object class="GtkTreeView" id="input_tree_view">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="headers_visible">False</property>
<property name="rules_hint">True</property>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
</child>
<child>
- <widget class="GtkAlignment" id="alignment48">
+ <object class="GtkAlignment" id="alignment48">
<property name="visible">True</property>
<property name="xalign">1</property>
<property name="xscale">0</property>
<property name="yscale">0</property>
<child>
- <widget class="GtkButton" id="button25">
+ <object class="GtkButton" id="button25">
<property name="width_request">96</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">Options</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
</child>
<child>
- <widget class="GtkVBox" id="frame13">
+ <object class="GtkVBox" id="frame13">
<property name="visible">True</property>
<child>
- <widget class="GtkLabel" id="label125">
+ <object class="GtkLabel" id="label125">
<property name="visible">True</property>
<property name="xalign">0</property>
<property name="label" translatable="yes"><b>Speed</b></property>
<property name="use_markup">True</property>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment55">
+ <object class="GtkAlignment" id="alignment55">
<property name="visible">True</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
- <widget class="GtkVBox" id="vbox54">
+ <object class="GtkVBox" id="vbox54">
<property name="visible">True</property>
<child>
- <widget class="GtkHScale" id="hscale1">
+ <object class="GtkHScale" id="hscale1">
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="adjustment">1 0.1 8 0.1 1 0</property>
- <signal name="value-changed" handler="PrefsSpeedSliderChanged"/>
- </widget>
+ <property name="adjustment">adjustment2</property>
+ <signal handler="PrefsSpeedSliderChanged" name="value-changed"/>
+ </object>
</child>
<child>
- <widget class="GtkCheckButton" id="adaptivebutton">
+ <object class="GtkCheckButton" id="adaptivebutton">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Adapt speed automatically</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="active">True</property>
<property name="draw_indicator">True</property>
- <signal name="clicked" handler="generic_bool_changed"/>
- </widget>
+ <signal handler="generic_bool_changed" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
<property name="position">1</property>
</packing>
</child>
<child>
- <widget class="GtkVBox" id="frame14">
+ <object class="GtkVBox" id="frame14">
<property name="visible">True</property>
<child>
- <widget class="GtkLabel" id="label126">
+ <object class="GtkLabel" id="label126">
<property name="visible">True</property>
<property name="xalign">0</property>
<property name="label" translatable="yes"><b>Starting And Stopping</b></property>
<property name="use_markup">True</property>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment56">
+ <object class="GtkAlignment" id="alignment56">
<property name="visible">True</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
- <widget class="GtkVBox" id="vbox12">
+ <object class="GtkVBox" id="vbox12">
<property name="visible">True</property>
<child>
- <widget class="GtkCheckButton" id="leftbutton">
+ <object class="GtkCheckButton" id="leftbutton">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Start on left mouse button</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
- <signal name="clicked" handler="generic_bool_changed"/>
- </widget>
+ <signal handler="generic_bool_changed" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
<child>
- <widget class="GtkCheckButton" id="spacebutton">
+ <object class="GtkCheckButton" id="spacebutton">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Start on space bar</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
- <signal name="clicked" handler="generic_bool_changed"/>
- </widget>
+ <signal handler="generic_bool_changed" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
@@ -723,16 +734,15 @@ your writing speed.</property>
</packing>
</child>
<child>
- <widget class="GtkCheckButton" id="mouseposbutton">
+ <object class="GtkCheckButton" id="mouseposbutton">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Start with mouse position:</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
- <signal name="clicked" handler="startonmousepos"/>
- </widget>
+ <signal handler="startonmousepos" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
@@ -740,23 +750,28 @@ your writing speed.</property>
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment5">
+ <object class="GtkAlignment" id="alignment5">
<property name="visible">True</property>
<property name="xalign">1</property>
<property name="left_padding">24</property>
<child>
- <widget class="GtkComboBoxEntry" id="MousePosStyle">
+ <object class="GtkComboBoxEntry" id="MousePosStyle">
<property name="visible">True</property>
- <property name="items" translatable="yes" comments="Centre circle = start and stop by dwelling over a circle in the centre of the window Two box = start and stop by dwelling in sequence over two boxes (both of these are methods for starting and stopping without pressing a mouse button)">Centre circle
-Two box</property>
- <signal name="changed" handler="OnMousePosStyleChanged"/>
+ <signal handler="OnMousePosStyleChanged" name="changed"/>
<child internal-child="entry">
- <widget class="GtkEntry" id="comboboxentry-entry1">
- </widget>
+ <object class="GtkEntry" id="comboboxentry-entry1">
+ </object>
+ </child>
+ <property name="model">model1</property>
+ <child>
+ <object class="GtkCellRendererText" id="renderer1"/>
+ <attributes>
+ <attribute name="text">0</attribute>
+ </attributes>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
@@ -764,100 +779,94 @@ Two box</property>
</packing>
</child>
<child>
- <widget class="GtkCheckButton" id="winpausebutton">
+ <object class="GtkCheckButton" id="winpausebutton">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Pause outside of canvas</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
- <signal name="clicked" handler="generic_bool_changed"/>
- </widget>
+ <signal handler="generic_bool_changed" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">4</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
<property name="position">2</property>
</packing>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
- <packing>
- <property name="position">1</property>
- </packing>
+ </object>
</child>
- <child>
- <widget class="GtkLabel" id="label114">
+ <child type="tab">
+ <object class="GtkLabel" id="label114">
<property name="visible">True</property>
<property name="label" translatable="yes">Control</property>
- </widget>
+ </object>
<packing>
- <property name="type">tab</property>
<property name="position">1</property>
<property name="tab_fill">False</property>
</packing>
</child>
<child>
- <widget class="GtkHBox" id="hbox11">
+ <object class="GtkHBox" id="hbox11">
<property name="visible">True</property>
<property name="border_width">12</property>
<property name="spacing">18</property>
<child>
- <widget class="GtkVBox" id="frame7">
+ <object class="GtkVBox" id="frame7">
<property name="visible">True</property>
<child>
- <widget class="GtkLabel" id="label118">
+ <object class="GtkLabel" id="label118">
<property name="visible">True</property>
<property name="xalign">0</property>
<property name="label" translatable="yes"><b>Colour Scheme</b></property>
<property name="use_markup">True</property>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment49">
+ <object class="GtkAlignment" id="alignment49">
<property name="visible">True</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
- <widget class="GtkVBox" id="vbox26">
+ <object class="GtkVBox" id="vbox26">
<property name="visible">True</property>
<child>
- <widget class="GtkCheckButton" id="manual_colour">
+ <object class="GtkCheckButton" id="manual_colour">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">Custom colour scheme:</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
- <signal name="toggled" handler="autocolour_clicked"/>
- </widget>
+ <signal handler="autocolour_clicked" name="toggled"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
<child>
- <widget class="GtkScrolledWindow" id="scrolledwindow14">
+ <object class="GtkScrolledWindow" id="scrolledwindow14">
<property name="height_request">128</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
@@ -865,81 +874,79 @@ Two box</property>
<property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
<property name="shadow_type">GTK_SHADOW_IN</property>
<child>
- <widget class="GtkTreeView" id="ColorTree">
+ <object class="GtkTreeView" id="ColorTree">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="headers_visible">False</property>
<property name="rules_hint">True</property>
<property name="enable_search">False</property>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
</child>
<child>
- <widget class="GtkVBox" id="vbox55">
+ <object class="GtkVBox" id="vbox55">
<property name="visible">True</property>
<property name="spacing">18</property>
<child>
- <widget class="GtkVBox" id="frame9">
+ <object class="GtkVBox" id="frame9">
<property name="visible">True</property>
<child>
- <widget class="GtkLabel" id="label120">
+ <object class="GtkLabel" id="label120">
<property name="visible">True</property>
<property name="xalign">0</property>
<property name="label" translatable="yes"><b>Appearance Options</b></property>
<property name="use_markup">True</property>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment51">
+ <object class="GtkAlignment" id="alignment51">
<property name="visible">True</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
- <widget class="GtkVBox" id="vbox16">
+ <object class="GtkVBox" id="vbox16">
<property name="visible">True</property>
<child>
- <widget class="GtkCheckButton" id="showmousebutton">
+ <object class="GtkCheckButton" id="showmousebutton">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Show mouse position</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
- <signal name="clicked" handler="generic_bool_changed"/>
- </widget>
+ <signal handler="generic_bool_changed" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
<child>
- <widget class="GtkCheckButton" id="showmouselinebutton">
+ <object class="GtkCheckButton" id="showmouselinebutton">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Draw line between crosshairs and mouse</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
- <signal name="clicked" handler="generic_bool_changed"/>
- </widget>
+ <signal handler="generic_bool_changed" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
@@ -947,22 +954,21 @@ Two box</property>
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment21">
+ <object class="GtkAlignment" id="alignment21">
<property name="visible">True</property>
<property name="left_padding">18</property>
<child>
- <widget class="GtkCheckButton" id="thicklinebutton">
+ <object class="GtkCheckButton" id="thicklinebutton">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Increase line thickness</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
- <signal name="clicked" handler="ThickLineClicked"/>
- </widget>
+ <signal handler="ThickLineClicked" name="clicked"/>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
@@ -970,82 +976,79 @@ Two box</property>
</packing>
</child>
<child>
- <widget class="GtkCheckButton" id="outlinebutton">
+ <object class="GtkCheckButton" id="outlinebutton">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Draw box outlines</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
- <signal name="clicked" handler="generic_bool_changed"/>
- </widget>
+ <signal handler="generic_bool_changed" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">3</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
<child>
- <widget class="GtkVBox" id="frame15">
+ <object class="GtkVBox" id="frame15">
<property name="visible">True</property>
<child>
- <widget class="GtkLabel" id="label128">
+ <object class="GtkLabel" id="label128">
<property name="visible">True</property>
<property name="xalign">0</property>
<property name="label" translatable="yes"><b>Dasher Font</b></property>
<property name="use_markup">True</property>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment57">
+ <object class="GtkAlignment" id="alignment57">
<property name="visible">True</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
- <widget class="GtkVBox" id="vbox56">
+ <object class="GtkVBox" id="vbox56">
<property name="visible">True</property>
<child>
- <widget class="GtkFontButton" id="dasher_fontbutton">
+ <object class="GtkFontButton" id="dasher_fontbutton">
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="response_id">0</property>
<property name="title" translatable="yes">Select Dasher Font</property>
<property name="use_font">True</property>
<property name="show_size">False</property>
- <signal name="font_set" handler="on_dasher_font_changed"/>
- </widget>
+ <signal handler="on_dasher_font_changed" name="font_set"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
<child>
- <widget class="GtkRadioButton" id="fontsizenormal">
+ <object class="GtkRadioButton" id="fontsizenormal">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Small font</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
- <signal name="toggled" handler="set_dasher_fontsize"/>
- </widget>
+ <signal handler="set_dasher_fontsize" name="toggled"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
@@ -1053,17 +1056,16 @@ Two box</property>
</packing>
</child>
<child>
- <widget class="GtkRadioButton" id="fontsizelarge">
+ <object class="GtkRadioButton" id="fontsizelarge">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Large font </property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
<property name="group">fontsizenormal</property>
- <signal name="toggled" handler="set_dasher_fontsize"/>
- </widget>
+ <signal handler="set_dasher_fontsize" name="toggled"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
@@ -1071,161 +1073,154 @@ Two box</property>
</packing>
</child>
<child>
- <widget class="GtkRadioButton" id="fontsizevlarge">
+ <object class="GtkRadioButton" id="fontsizevlarge">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Very large font</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
<property name="group">fontsizenormal</property>
- <signal name="toggled" handler="set_dasher_fontsize"/>
- </widget>
+ <signal handler="set_dasher_fontsize" name="toggled"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">3</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
- <packing>
- <property name="position">2</property>
- </packing>
+ </object>
</child>
- <child>
- <widget class="GtkLabel" id="label117">
+ <child type="tab">
+ <object class="GtkLabel" id="label117">
<property name="visible">True</property>
<property name="label" translatable="yes">Appearance</property>
- </widget>
+ </object>
<packing>
- <property name="type">tab</property>
<property name="position">2</property>
<property name="tab_fill">False</property>
</packing>
</child>
<child>
- <widget class="GtkVBox" id="vbox57">
+ <object class="GtkVBox" id="vbox57">
<property name="visible">True</property>
<property name="border_width">12</property>
<property name="spacing">18</property>
<child>
- <widget class="GtkVBox" id="frame10">
+ <object class="GtkVBox" id="frame10">
<property name="visible">True</property>
<child>
- <widget class="GtkLabel" id="label122">
+ <object class="GtkLabel" id="label122">
<property name="visible">True</property>
<property name="xalign">0</property>
<property name="label" translatable="yes"><b>Actions</b></property>
<property name="use_markup">True</property>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment52">
+ <object class="GtkAlignment" id="alignment52">
<property name="visible">True</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
- <widget class="GtkScrolledWindow" id="scrolledwindow10">
+ <object class="GtkScrolledWindow" id="scrolledwindow10">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
<property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
<property name="shadow_type">GTK_SHADOW_IN</property>
<child>
- <widget class="GtkTreeView" id="action_tree_view">
+ <object class="GtkTreeView" id="action_tree_view">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="rules_hint">True</property>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
</child>
<child>
- <widget class="GtkHBox" id="hbox12">
+ <object class="GtkHBox" id="hbox12">
<property name="visible">True</property>
<property name="spacing">18</property>
<child>
- <widget class="GtkVBox" id="vbox52">
+ <object class="GtkVBox" id="vbox52">
<property name="visible">True</property>
<property name="spacing">18</property>
<child>
- <widget class="GtkVBox" id="frame12">
+ <object class="GtkVBox" id="frame12">
<property name="visible">True</property>
<child>
- <widget class="GtkLabel" id="label124">
+ <object class="GtkLabel" id="label124">
<property name="visible">True</property>
<property name="xalign">0</property>
<property name="label" translatable="yes"><b>Application Options</b></property>
<property name="use_markup">True</property>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment54">
+ <object class="GtkAlignment" id="alignment54">
<property name="visible">True</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
- <widget class="GtkVBox" id="vbox53">
+ <object class="GtkVBox" id="vbox53">
<property name="visible">True</property>
<child>
- <widget class="GtkCheckButton" id="timestampbutton">
+ <object class="GtkCheckButton" id="timestampbutton">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Timestamp new files</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
- <signal name="clicked" handler="generic_bool_changed"/>
- </widget>
+ <signal handler="generic_bool_changed" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
<child>
- <widget class="GtkCheckButton" id="toolbarbutton">
+ <object class="GtkCheckButton" id="toolbarbutton">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Show toolbar</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
- <signal name="clicked" handler="generic_bool_changed"/>
- </widget>
+ <signal handler="generic_bool_changed" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
@@ -1233,16 +1228,15 @@ Two box</property>
</packing>
</child>
<child>
- <widget class="GtkCheckButton" id="speedsliderbutton">
+ <object class="GtkCheckButton" id="speedsliderbutton">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Show speed slider</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
- <signal name="clicked" handler="generic_bool_changed"/>
- </widget>
+ <signal handler="generic_bool_changed" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
@@ -1250,129 +1244,125 @@ Two box</property>
</packing>
</child>
<child>
- <widget class="GtkCheckButton" id="control_controlmode">
+ <object class="GtkCheckButton" id="control_controlmode">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Control mode</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
- <signal name="clicked" handler="generic_bool_changed"/>
- </widget>
+ <signal handler="generic_bool_changed" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">3</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
<child>
- <widget class="GtkVBox" id="frame16">
+ <object class="GtkVBox" id="frame16">
<property name="visible">True</property>
<child>
- <widget class="GtkLabel" id="label129">
+ <object class="GtkLabel" id="label129">
<property name="visible">True</property>
<property name="xalign">0</property>
<property name="label" translatable="yes"><b>Editor Font</b></property>
<property name="use_markup">True</property>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment58">
+ <object class="GtkAlignment" id="alignment58">
<property name="visible">True</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
- <widget class="GtkFontButton" id="edit_fontbutton">
+ <object class="GtkFontButton" id="edit_fontbutton">
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="response_id">0</property>
<property name="title" translatable="yes">Select Editor Font</property>
<property name="use_font">True</property>
- <signal name="font_set" handler="on_edit_font_changed"/>
- </widget>
+ <signal handler="on_edit_font_changed" name="font_set"/>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
</child>
<child>
- <widget class="GtkVBox" id="vbox58">
+ <object class="GtkVBox" id="vbox58">
<property name="visible">True</property>
<property name="spacing">18</property>
<child>
- <widget class="GtkVBox" id="frame11">
+ <object class="GtkVBox" id="frame11">
<child>
- <widget class="GtkLabel" id="label123">
+ <object class="GtkLabel" id="label123">
<property name="visible">True</property>
<property name="xalign">0</property>
<property name="label" translatable="yes"><b>Application Style</b></property>
<property name="use_markup">True</property>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment53">
+ <object class="GtkAlignment" id="alignment53">
<property name="visible">True</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
- <widget class="GtkVBox" id="vbox41">
+ <object class="GtkVBox" id="vbox41">
<property name="visible">True</property>
<child>
- <widget class="GtkRadioButton" id="appstyle_classic">
+ <object class="GtkRadioButton" id="appstyle_classic">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Stand-alone</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
- <signal name="toggled" handler="on_appstyle_changed"/>
- </widget>
+ <signal handler="on_appstyle_changed" name="toggled"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
<child>
- <widget class="GtkRadioButton" id="appstyle_compose">
+ <object class="GtkRadioButton" id="appstyle_compose">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Composition</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
<property name="group">appstyle_classic</property>
- <signal name="toggled" handler="on_appstyle_changed"/>
- </widget>
+ <signal handler="on_appstyle_changed" name="toggled"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
@@ -1380,17 +1370,16 @@ Two box</property>
</packing>
</child>
<child>
- <widget class="GtkRadioButton" id="appstyle_direct">
+ <object class="GtkRadioButton" id="appstyle_direct">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Direct entry</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
<property name="group">appstyle_classic</property>
- <signal name="toggled" handler="on_appstyle_changed"/>
- </widget>
+ <signal handler="on_appstyle_changed" name="toggled"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
@@ -1398,17 +1387,16 @@ Two box</property>
</packing>
</child>
<child>
- <widget class="GtkRadioButton" id="appstyle_fullscreen">
+ <object class="GtkRadioButton" id="appstyle_fullscreen">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Full Screen</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
<property name="group">appstyle_classic</property>
- <signal name="toggled" handler="on_appstyle_changed"/>
- </widget>
+ <signal handler="on_appstyle_changed" name="toggled"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
@@ -1416,93 +1404,87 @@ Two box</property>
</packing>
</child>
<child>
- <widget class="GtkCheckButton" id="dockbutton">
+ <object class="GtkCheckButton" id="dockbutton">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Dock application window</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
- <signal name="clicked" handler="generic_bool_changed"/>
- </widget>
+ <signal handler="generic_bool_changed" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">4</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
<property name="position">1</property>
</packing>
</child>
- </widget>
- <packing>
- <property name="position">3</property>
- </packing>
+ </object>
</child>
- <child>
- <widget class="GtkLabel" id="label121">
+ <child type="tab">
+ <object class="GtkLabel" id="label121">
<property name="visible">True</property>
<property name="label" translatable="yes">Application</property>
- </widget>
+ </object>
<packing>
- <property name="type">tab</property>
<property name="position">3</property>
<property name="tab_fill">False</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
</child>
<child>
- <widget class="GtkAlignment" id="alignment2">
+ <object class="GtkAlignment" id="alignment2">
<property name="visible">True</property>
<child>
- <widget class="GtkHButtonBox" id="hbuttonbox1">
+ <object class="GtkHButtonBox" id="hbuttonbox1">
<property name="visible">True</property>
<property name="layout_style">GTK_BUTTONBOX_END</property>
<child>
- <widget class="GtkButton" id="button11">
+ <object class="GtkButton" id="button11">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="can_default">True</property>
<property name="border_width">5</property>
<property name="label">gtk-close</property>
<property name="use_stock">True</property>
- <property name="response_id">0</property>
- <signal name="clicked" handler="preferences_hide"/>
- </widget>
+ <signal handler="preferences_hide" name="clicked"/>
+ </object>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- </widget>
-</glade-interface>
+ </object>
+</interface>
diff --git a/Data/GUI/dasher.traditional.ui b/Data/GUI/dasher.traditional.ui
new file mode 100644
index 0000000..024081b
--- /dev/null
+++ b/Data/GUI/dasher.traditional.ui
@@ -0,0 +1,452 @@
+<?xml version="1.0"?>
+<!--*- mode: xml -*-->
+<interface>
+ <object class="GtkAdjustment" id="adjustment1">
+ <property name="upper">8</property>
+ <property name="lower">0.1</property>
+ <property name="page_increment">1</property>
+ <property name="step_increment">0.1</property>
+ <property name="page_size">0</property>
+ <property name="value">1</property>
+ </object>
+ <object class="GtkUIManager" id="uimanager1">
+ <child>
+ <object class="GtkActionGroup" id="actiongroup1">
+ <child>
+ <object class="GtkAction" id="file_menu">
+ <property name="label" translatable="yes">_File</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="action_new">
+ <property name="stock_id">gtk-new</property>
+ <property name="tooltip" translatable="yes">New file</property>
+ <signal name="activate" handler="dasher_main_cb_editor"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="action_open">
+ <property name="stock_id">gtk-open</property>
+ <property name="tooltip" translatable="yes">Open file</property>
+ <signal name="activate" handler="dasher_main_cb_editor"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="action_save">
+ <property name="stock_id">gtk-save</property>
+ <property name="tooltip" translatable="yes">Save file</property>
+ <signal name="activate" handler="dasher_main_cb_editor"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="action_saveas">
+ <property name="stock_id">gtk-save-as</property>
+ <property name="tooltip" translatable="yes">Save file as</property>
+ <signal name="activate" handler="dasher_main_cb_editor"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="action_append">
+ <property name="name">action_append</property>
+ <property name="label" translatable="yes">A_ppend to file...</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="action_import">
+ <property name="label" translatable="yes">_Import Training Text...</property>
+ <signal name="activate" handler="dasher_main_cb_import"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="action_quit">
+ <property name="stock_id">gtk-quit</property>
+ <property name="tooltip" translatable="yes">Quit</property>
+ <signal name="activate" handler="dasher_main_cb_quit"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="edit_menu">
+ <property name="label" translatable="yes">_Edit</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="action_cut">
+ <property name="stock_id">gtk-cut</property>
+ <property name="tooltip" translatable="yes">Cut</property>
+ <signal name="activate" handler="dasher_main_cb_editor"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="action_copy">
+ <property name="stock_id">gtk-copy</property>
+ <property name="tooltip" translatable="yes">Copy</property>
+ <signal name="activate" handler="dasher_main_cb_editor"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="action_copyall">
+ <property name="label" translatable="yes">Copy _All</property>
+ <signal name="activate" handler="dasher_main_cb_editor"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="action_paste">
+ <property name="stock_id">gtk-paste</property>
+ <property name="tooltip" translatable="yes">Paste</property>
+ <signal name="activate" handler="dasher_main_cb_editor"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="action_preferences">
+ <property name="stock_id">gtk-preferences</property>
+ <property name="label" translatable="yes">Pr_eferences...</property>
+ <property name="tooltip" translatable="yes">Preferences</property>
+ <signal name="activate" handler="dasher_main_cb_preferences"/>
+ </object>
+ <accelerator key="S" modifiers="GDK_CONTROL_MASK | GDK_SHIFT_MASK"/>
+ </child>
+ <child>
+ <object class="GtkAction" id="help_menu">
+ <property name="label" translatable="yes">_Help</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="action_help">
+ <property name="stock_id">gtk-help</property>
+ <property name="label" translatable="yes">_Contents...</property>
+ <property name="tooltip" translatable="yes">Help</property>
+ <signal name="activate" handler="dasher_main_cb_help"/>
+ </object>
+ <accelerator key="F1" modifiers="0"/>
+ </child>
+ <child>
+ <object class="GtkAction" id="action_about">
+ <property name="stock_id">gtk-about</property>
+ <property name="label" translatable="yes">_About...</property>
+ <signal name="activate" handler="dasher_main_cb_about"/>
+ </object>
+ </child>
+ </object>
+ </child>
+ <ui>
+ <menubar name="dasher_menu_bar">
+ <menu action="file_menu">
+ <menuitem action="action_new"/>
+ <menuitem action="action_open"/>
+ <menuitem action="action_save"/>
+ <menuitem action="action_saveas"/>
+ <menuitem action="action_append"/>
+ <separator/>
+ <menuitem action="action_import"/>
+ <menuitem action="action_quit"/>
+ </menu>
+ <menu action="edit_menu">
+ <menuitem action="action_cut"/>
+ <menuitem action="action_copy"/>
+ <menuitem action="action_copyall"/>
+ <menuitem action="action_paste"/>
+ <separator/>
+ <menuitem action="action_preferences"/>
+ </menu>
+ <menu action="help_menu">
+ <menuitem action="action_help"/>
+ <menuitem action="action_about"/>
+ </menu>
+ </menubar>
+ <toolbar name="dasher_tool_bar">
+ <toolitem action="action_new"/>
+ <toolitem action="action_open"/>
+ <toolitem action="action_save"/>
+ <toolitem action="action_saveas"/>
+ <separator/>
+ <toolitem action="action_cut"/>
+ <toolitem action="action_copy"/>
+ <toolitem action="action_paste"/>
+ <separator/>
+ <toolitem action="action_preferences"/>
+ <toolitem action="action_help"/>
+ <separator/>
+ <toolitem action="action_quit"/>
+ </toolbar>
+ </ui>
+ </object>
+ <object class="GtkWindow" id="window">
+ <property name="can_focus">True</property>
+ <property name="has_focus">True</property>
+ <property name="events">GDK_BUTTON_RELEASE_MASK</property>
+ <property name="title" translatable="yes">Dasher</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">False</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_NORMAL</property>
+ <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+ <property name="focus_on_map">True</property>
+ <property name="urgency_hint">False</property>
+ <signal handler="dasher_main_cb_window_close" name="delete_event"/>
+ <signal handler="test_focus_handler" name="focus-in-event"/>
+ <child>
+ <object class="GtkVBox" id="vbox1">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <signal handler="test_focus_handler" name="focus-in-event"/>
+ <child>
+ <object class="GtkMenuBar" constructor="uimanager1" id="dasher_menu_bar">
+ <property name="visible">True</property>
+ <property name="tooltip-text" translatable="yes">Quit</property>
+ <property name="pack_direction">GTK_PACK_DIRECTION_LTR</property>
+ <property name="child_pack_direction">GTK_PACK_DIRECTION_LTR</property>
+ <signal handler="test_focus_handler" name="focus-in-event"/>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolbar" constructor="uimanager1" id="dasher_tool_bar">
+ <property name="toolbar_style">GTK_TOOLBAR_ICONS</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkVPaned" id="main_divider">
+ <property name="visible">True</property>
+ <property name="position">0</property>
+ <signal handler="test_focus_handler" name="focus-in-event"/>
+ <child>
+ <object class="DasherEditorInternal" id="DasherEditor">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <signal handler="dasher_main_cb_filename_changed" name="filename_changed"/>
+ <signal handler="dasher_main_cb_buffer_changed" name="buffer_changed"/>
+ <signal handler="dasher_main_cb_context_changed" name="context_changed"/>
+ </object>
+ <packing>
+ <property name="shrink">True</property>
+ <property name="resize">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkDasherControl" id="DasherControl">
+ <property name="width_request">200</property>
+ <property name="height_request">200</property>
+ <property name="visible">True</property>
+ <signal handler="parameter_notification" name="dasher_changed"/>
+ <signal handler="handle_start_event" name="dasher_start"/>
+ <signal handler="handle_stop_event" name="dasher_stop"/>
+ <signal handler="handle_control_event" name="dasher_control"/>
+ <signal handler="gtk2_edit_output_callback" name="dasher_edit_insert"/>
+ <signal handler="gtk2_edit_delete_callback" name="dasher_edit_delete"/>
+ <signal handler="handle_context_request" name="dasher_context_request"/>
+ <signal handler="handle_request_settings" name="dasher_request_settings"/>
+ <signal handler="focus_in_event" name="focus_in_event"/>
+ <signal handler="on_lock_info" name="dasher_lock_info"/>
+ <signal handler="on_message" name="dasher_message"/>
+ <signal handler="convert_cb" name="dasher_edit_convert"/>
+ <signal handler="protect_cb" name="dasher_edit_protect"/>
+ <signal handler="on_command" name="dasher_command"/>
+ <signal handler="test_focus_handler" name="focus-in-event"/>
+ </object>
+ <packing>
+ <property name="shrink">True</property>
+ <property name="resize">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkHBox" id="hbox8">
+ <property name="border_width">2</property>
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">2</property>
+ <signal handler="test_focus_handler" name="focus-in-event"/>
+ <child>
+ <object class="GtkLabel" id="label109">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Speed:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">2</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>
+ <signal handler="test_focus_handler" name="focus-in-event"/>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkSpinButton" id="spinbutton1">
+ <property name="width_request">64</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="climb_rate">0.10000000149</property>
+ <property name="digits">1</property>
+ <property name="numeric">True</property>
+ <property name="update_policy">GTK_UPDATE_IF_VALID</property>
+ <property name="snap_to_ticks">False</property>
+ <property name="wrap">False</property>
+ <property name="adjustment">adjustment1</property>
+ <signal handler="speed_changed" name="value-changed"/>
+ <signal handler="test_focus_handler" name="focus-in-event"/>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label110">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Alphabet:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">2</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>
+ <signal handler="test_focus_handler" name="focus-in-event"/>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkComboBox" id="combobox1">
+ <property name="width_request">32</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="add_tearoffs">False</property>
+ <property name="focus_on_click">True</property>
+ <signal handler="alphabet_combo_changed" name="changed"/>
+ <signal handler="test_focus_handler" name="focus-in-event"/>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ <object class="GtkWindow" id="lock_window">
+ <property name="visible">True</property>
+ <property name="title" translatable="yes">Please Wait...</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_CENTER_ON_PARENT</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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_NORMAL</property>
+ <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+ <property name="focus_on_map">True</property>
+ <property name="urgency_hint">False</property>
+ <child>
+ <object class="GtkVBox" id="vbox43">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <child>
+ <object class="GtkLabel" id="lock_message">
+ <property name="visible">True</property>
+ <property name="label"/>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</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>
+ </object>
+ <packing>
+ <property name="padding">8</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkAlignment" id="alignment38">
+ <property name="border_width">8</property>
+ <property name="visible">True</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xscale">1</property>
+ <property name="yscale">1</property>
+ <property name="top_padding">0</property>
+ <property name="bottom_padding">0</property>
+ <property name="left_padding">0</property>
+ <property name="right_padding">0</property>
+ <child>
+ <object class="GtkProgressBar" id="lock_progress">
+ <property name="visible">True</property>
+ <property name="orientation">GTK_PROGRESS_LEFT_TO_RIGHT</property>
+ <property name="fraction">0</property>
+ <property name="pulse_step">0.10000000149</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+</interface>
diff --git a/Data/glade/dashermaemo.preferences.glade b/Data/GUI/dashermaemo.preferences.ui
similarity index 77%
rename from Data/glade/dashermaemo.preferences.glade
rename to Data/GUI/dashermaemo.preferences.ui
index e66c1f5..941c656 100644
--- a/Data/glade/dashermaemo.preferences.glade
+++ b/Data/GUI/dashermaemo.preferences.ui
@@ -1,368 +1,373 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
+<?xml version="1.0"?>
<!--Generated with glade3 3.4.1 on Mon Mar 10 11:28:32 2008 -->
-<glade-interface>
- <widget class="GtkWindow" id="preferences">
+<interface>
+ <object class="GtkAdjustment" id="adjustment1">
+ <property name="upper">8</property>
+ <property name="lower">0.1</property>
+ <property name="page_increment">1</property>
+ <property name="step_increment">0.1</property>
+ <property name="page_size">0</property>
+ <property name="value">1</property>
+ </object>
+ <object class="GtkAdjustment" id="adjustment2">
+ <property name="upper">100</property>
+ <property name="lower">0</property>
+ <property name="page_increment">0.1</property>
+ <property name="step_increment">0.1</property>
+ <property name="page_size">0</property>
+ <property name="value">5</property>
+ </object>
+ <object class="GtkWindow" id="preferences">
<property name="title" translatable="yes">Dasher Preferences</property>
<property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
- <signal name="delete_event" handler="preferences_hide"/>
+ <signal handler="preferences_hide" name="delete_event"/>
<child>
- <widget class="GtkVBox" id="vbox2">
+ <object class="GtkVBox" id="vbox2">
<property name="visible">True</property>
<child>
- <widget class="GtkAlignment" id="alignment15">
+ <object class="GtkAlignment" id="alignment15">
<property name="visible">True</property>
<child>
- <widget class="GtkNotebook" id="notebook1">
+ <object class="GtkNotebook" id="notebook1">
<property name="visible">True</property>
<property name="can_focus">True</property>
<child>
- <widget class="GtkVBox" id="vbox9">
+ <object class="GtkVBox" id="vbox9">
<property name="visible">True</property>
<property name="border_width">12</property>
<property name="spacing">18</property>
<child>
- <widget class="GtkVBox" id="frame2">
+ <object class="GtkVBox" id="frame2">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<child>
- <widget class="GtkLabel" id="label2">
+ <object class="GtkLabel" id="label2">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<property name="xalign">0</property>
<property name="label" translatable="yes"><b>Alphabet Selection</b></property>
<property name="use_markup">True</property>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment1">
+ <object class="GtkAlignment" id="alignment1">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
- <widget class="GtkVBox" id="vbox6">
+ <object class="GtkVBox" id="vbox6">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<child>
- <widget class="GtkScrolledWindow" id="scrolledwindow8">
+ <object class="GtkScrolledWindow" id="scrolledwindow8">
<property name="height_request">360</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<child>
- <widget class="GtkViewport" id="viewport6">
+ <object class="GtkViewport" id="viewport6">
<property name="visible">True</property>
<child>
- <widget class="GtkTreeView" id="AlphabetTree">
+ <object class="GtkTreeView" id="AlphabetTree">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="headers_visible">False</property>
<property name="rules_hint">True</property>
<property name="enable_search">False</property>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
<child>
- <widget class="GtkVBox" id="vbox17">
+ <object class="GtkVBox" id="vbox17">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<child>
- <widget class="GtkLabel" id="label8">
+ <object class="GtkLabel" id="label8">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<property name="xalign">0</property>
<property name="label" translatable="yes"><b>Color Scheme</b></property>
<property name="use_markup">True</property>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment10">
+ <object class="GtkAlignment" id="alignment10">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
- <widget class="GtkVBox" id="vbox18">
+ <object class="GtkVBox" id="vbox18">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<child>
- <widget class="GtkCheckButton" id="manual_colour">
+ <object class="GtkCheckButton" id="manual_colour">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">Custom colour scheme:</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
- <signal name="toggled" handler="autocolour_clicked"/>
- </widget>
+ <signal handler="autocolour_clicked" name="toggled"/>
+ </object>
</child>
<child>
- <widget class="GtkScrolledWindow" id="scrolledwindow9">
+ <object class="GtkScrolledWindow" id="scrolledwindow9">
<property name="height_request">110</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<child>
- <widget class="GtkViewport" id="viewport7">
+ <object class="GtkViewport" id="viewport7">
<property name="visible">True</property>
<child>
- <widget class="GtkTreeView" id="ColorTree">
+ <object class="GtkTreeView" id="ColorTree">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="headers_visible">False</property>
<property name="rules_hint">True</property>
<property name="enable_search">False</property>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- <child>
- <widget class="GtkLabel" id="labelalpha">
+ <child type="tab">
+ <object class="GtkLabel" id="labelalpha">
<property name="visible">True</property>
<property name="label" translatable="yes">Alphabet</property>
- </widget>
+ </object>
<packing>
- <property name="type">tab</property>
<property name="tab_fill">False</property>
</packing>
</child>
<child>
- <widget class="GtkVBox" id="vbox1">
+ <object class="GtkVBox" id="vbox1">
<property name="visible">True</property>
<property name="border_width">12</property>
<property name="spacing">18</property>
<child>
- <widget class="GtkVBox" id="frame1">
+ <object class="GtkVBox" id="frame1">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<child>
- <widget class="GtkLabel" id="label1">
+ <object class="GtkLabel" id="label1">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<property name="xalign">0</property>
<property name="label" translatable="yes"><b>Speed</b></property>
<property name="use_markup">True</property>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment4">
+ <object class="GtkAlignment" id="alignment4">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
- <widget class="GtkVBox" id="vbox5">
+ <object class="GtkVBox" id="vbox5">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<child>
- <widget class="GtkCheckButton" id="adaptivebutton">
+ <object class="GtkCheckButton" id="adaptivebutton">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Adapt speed automatically</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="active">True</property>
<property name="draw_indicator">True</property>
- <signal name="clicked" handler="adaptive"/>
- </widget>
+ <signal handler="adaptive" name="clicked"/>
+ </object>
</child>
<child>
- <widget class="GtkHScale" id="hscale1">
+ <object class="GtkHScale" id="hscale1">
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="adjustment">1 0.1 8 0.1 1 0</property>
- <signal name="value-changed" handler="PrefsSpeedSliderChanged"/>
- </widget>
+ <property name="adjustment">adjustment1</property>
+ <signal handler="PrefsSpeedSliderChanged" name="value-changed"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
- </widget>
- <packing>
- <property name="position">1</property>
- </packing>
+ </object>
</child>
- <child>
- <widget class="GtkLabel" id="label17">
+ <child type="tab">
+ <object class="GtkLabel" id="label17">
<property name="visible">True</property>
<property name="label" translatable="yes">Control</property>
- </widget>
+ </object>
<packing>
- <property name="type">tab</property>
<property name="position">1</property>
<property name="tab_fill">False</property>
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment36">
+ <object class="GtkAlignment" id="alignment36">
<property name="visible">True</property>
<child>
- <widget class="GtkVBox" id="vbox14">
+ <object class="GtkVBox" id="vbox14">
<property name="visible">True</property>
<property name="border_width">12</property>
<property name="spacing">18</property>
<child>
- <widget class="GtkVBox" id="displaysizebox">
+ <object class="GtkVBox" id="displaysizebox">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<child>
- <widget class="GtkLabel" id="label3">
+ <object class="GtkLabel" id="label3">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<property name="xalign">0</property>
<property name="label" translatable="yes"><b>Display Size</b></property>
<property name="use_markup">True</property>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment3">
+ <object class="GtkAlignment" id="alignment3">
<property name="visible">True</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
- <widget class="GtkVBox" id="vbox3">
+ <object class="GtkVBox" id="vbox3">
<property name="visible">True</property>
<child>
- <widget class="GtkCheckButton" id="enlargewindow">
+ <object class="GtkCheckButton" id="enlargewindow">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Enlarge input window</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
- <signal name="toggled" handler="on_window_size_changed"/>
- </widget>
+ <signal handler="on_window_size_changed" name="toggled"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
<child>
- <widget class="GtkVBox" id="frame4">
+ <object class="GtkVBox" id="frame4">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<child>
- <widget class="GtkLabel" id="label4">
+ <object class="GtkLabel" id="label4">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<property name="xalign">0</property>
<property name="label" translatable="yes"><b>Orientation</b></property>
<property name="use_markup">True</property>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment5">
+ <object class="GtkAlignment" id="alignment5">
<property name="visible">True</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
- <widget class="GtkVBox" id="vbox4">
+ <object class="GtkVBox" id="vbox4">
<property name="visible">True</property>
<child>
- <widget class="GtkRadioButton" id="radiobutton1">
+ <object class="GtkRadioButton" id="radiobutton1">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Alphabet Default</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
- <signal name="clicked" handler="orientation"/>
- </widget>
+ <signal handler="orientation" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
<child>
- <widget class="GtkRadioButton" id="radiobutton12">
+ <object class="GtkRadioButton" id="radiobutton12">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Custom</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
<property name="group">radiobutton1</property>
- <signal name="clicked" handler="orientation"/>
- </widget>
+ <signal handler="orientation" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
@@ -370,40 +375,38 @@
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment6">
+ <object class="GtkAlignment" id="alignment6">
<property name="visible">True</property>
<property name="left_padding">12</property>
<child>
- <widget class="GtkVBox" id="vbox7">
+ <object class="GtkVBox" id="vbox7">
<property name="visible">True</property>
<child>
- <widget class="GtkRadioButton" id="radiobutton2">
+ <object class="GtkRadioButton" id="radiobutton2">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Left to Right</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
- <signal name="clicked" handler="orientation"/>
- </widget>
+ <signal handler="orientation" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
<child>
- <widget class="GtkRadioButton" id="radiobutton3">
+ <object class="GtkRadioButton" id="radiobutton3">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Right to Left</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
<property name="group">radiobutton2</property>
- <signal name="clicked" handler="orientation"/>
- </widget>
+ <signal handler="orientation" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
@@ -411,17 +414,16 @@
</packing>
</child>
<child>
- <widget class="GtkRadioButton" id="radiobutton4">
+ <object class="GtkRadioButton" id="radiobutton4">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Top to Bottom</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
<property name="group">radiobutton2</property>
- <signal name="clicked" handler="orientation"/>
- </widget>
+ <signal handler="orientation" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
@@ -429,117 +431,110 @@
</packing>
</child>
<child>
- <widget class="GtkRadioButton" id="radiobutton5">
+ <object class="GtkRadioButton" id="radiobutton5">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="border_width">2</property>
<property name="label" translatable="yes">Bottom to Top</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
<property name="group">radiobutton2</property>
- <signal name="clicked" handler="orientation"/>
- </widget>
+ <signal handler="orientation" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">3</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="position">2</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- </widget>
- <packing>
- <property name="position">2</property>
- </packing>
+ </object>
</child>
- <child>
- <widget class="GtkLabel" id="label20">
+ <child type="tab">
+ <object class="GtkLabel" id="label20">
<property name="visible">True</property>
<property name="label" translatable="yes">View</property>
- </widget>
+ </object>
<packing>
- <property name="type">tab</property>
<property name="position">2</property>
<property name="tab_fill">False</property>
</packing>
</child>
<child>
- <widget class="GtkVBox" id="vbox8">
+ <object class="GtkVBox" id="vbox8">
<property name="visible">True</property>
<property name="border_width">12</property>
<property name="spacing">18</property>
<child>
- <widget class="GtkVBox" id="vbox10">
+ <object class="GtkVBox" id="vbox10">
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<child>
- <widget class="GtkLabel" id="label5">
+ <object class="GtkLabel" id="label5">
<property name="visible">True</property>
<property name="xalign">0</property>
<property name="label" translatable="yes"><b>Language Model</b></property>
<property name="use_markup">True</property>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment7">
+ <object class="GtkAlignment" id="alignment7">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
- <widget class="GtkVBox" id="vbox11">
+ <object class="GtkVBox" id="vbox11">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<child>
- <widget class="GtkRadioButton" id="radiobutton6">
+ <object class="GtkRadioButton" id="radiobutton6">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">Standard letter-based PPM</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
- <signal name="clicked" handler="languagemodel"/>
- </widget>
+ <signal handler="languagemodel" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
<child>
- <widget class="GtkRadioButton" id="radiobutton7">
+ <object class="GtkRadioButton" id="radiobutton7">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">Word-based model</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
<property name="group">radiobutton6</property>
- <signal name="clicked" handler="languagemodel"/>
- </widget>
+ <signal handler="languagemodel" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
@@ -547,16 +542,15 @@
</packing>
</child>
<child>
- <widget class="GtkRadioButton" id="radiobutton8">
+ <object class="GtkRadioButton" id="radiobutton8">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">Mixture model (PPM/dictionary)</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
<property name="group">radiobutton6</property>
- <signal name="clicked" handler="languagemodel"/>
- </widget>
+ <signal handler="languagemodel" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
@@ -564,46 +558,45 @@
</packing>
</child>
<child>
- <widget class="GtkRadioButton" id="radiobutton9">
+ <object class="GtkRadioButton" id="radiobutton9">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">Japanese</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="draw_indicator">True</property>
<property name="group">radiobutton6</property>
- <signal name="clicked" handler="languagemodel"/>
- </widget>
+ <signal handler="languagemodel" name="clicked"/>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">3</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
<child>
- <widget class="GtkVBox" id="vbox12">
+ <object class="GtkVBox" id="vbox12">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<child>
- <widget class="GtkLabel" id="label6">
+ <object class="GtkLabel" id="label6">
<property name="visible">True</property>
<property name="xalign">0</property>
<property name="label" translatable="yes"><b>Adaptation</b></property>
<property name="use_markup">True</property>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
@@ -611,38 +604,37 @@
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment8">
+ <object class="GtkAlignment" id="alignment8">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
- <widget class="GtkVBox" id="vbox13">
+ <object class="GtkVBox" id="vbox13">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<child>
- <widget class="GtkCheckButton" id="cb_adaptive">
+ <object class="GtkCheckButton" id="cb_adaptive">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">Language model adapts as you write.</property>
<property name="use_underline">True</property>
- <property name="response_id">0</property>
<property name="active">True</property>
<property name="draw_indicator">True</property>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
@@ -650,105 +642,100 @@
</packing>
</child>
<child>
- <widget class="GtkVBox" id="vbox15">
+ <object class="GtkVBox" id="vbox15">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<child>
- <widget class="GtkLabel" id="label7">
+ <object class="GtkLabel" id="label7">
<property name="visible">True</property>
<property name="xalign">0</property>
<property name="label" translatable="yes"><b>Smoothing</b></property>
<property name="use_markup">True</property>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
<child>
- <widget class="GtkAlignment" id="alignment9">
+ <object class="GtkAlignment" id="alignment9">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
- <widget class="GtkVBox" id="vbox16">
+ <object class="GtkVBox" id="vbox16">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<child>
- <widget class="GtkHScale" id="uniformhscale">
+ <object class="GtkHScale" id="uniformhscale">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="update_policy">GTK_UPDATE_DISCONTINUOUS</property>
- <property name="adjustment">5 0 100 0.1 0.1 0</property>
- <signal name="value-changed" handler="uniform_changed"/>
- </widget>
+ <property name="adjustment">adjustment2</property>
+ <signal handler="uniform_changed" name="value-changed"/>
+ </object>
<packing>
<property name="expand">False</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">2</property>
</packing>
</child>
- </widget>
- <packing>
- <property name="position">3</property>
- </packing>
+ </object>
</child>
- <child>
- <widget class="GtkLabel" id="label47">
+ <child type="tab">
+ <object class="GtkLabel" id="label47">
<property name="visible">True</property>
<property name="label" translatable="yes">Prediction</property>
- </widget>
+ </object>
<packing>
- <property name="type">tab</property>
<property name="position">3</property>
<property name="tab_fill">False</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
</child>
<child>
- <widget class="GtkAlignment" id="alignment2">
+ <object class="GtkAlignment" id="alignment2">
<property name="visible">True</property>
<child>
- <widget class="GtkHButtonBox" id="hbuttonbox1">
+ <object class="GtkHButtonBox" id="hbuttonbox1">
<property name="visible">True</property>
<property name="layout_style">GTK_BUTTONBOX_END</property>
<child>
- <widget class="GtkButton" id="button11">
+ <object class="GtkButton" id="button11">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="can_default">True</property>
<property name="border_width">5</property>
<property name="label">gtk-close</property>
<property name="use_stock">True</property>
- <property name="response_id">0</property>
- <signal name="clicked" handler="preferences_hide"/>
- </widget>
+ <signal handler="preferences_hide" name="clicked"/>
+ </object>
</child>
- </widget>
+ </object>
</child>
- </widget>
+ </object>
<packing>
<property name="expand">False</property>
<property name="position">1</property>
</packing>
</child>
- </widget>
+ </object>
</child>
- </widget>
-</glade-interface>
+ </object>
+</interface>
diff --git a/Data/GUI/dashermaemo.ui b/Data/GUI/dashermaemo.ui
new file mode 100644
index 0000000..3494017
--- /dev/null
+++ b/Data/GUI/dashermaemo.ui
@@ -0,0 +1,651 @@
+<?xml version="1.0"?>
+<!--*- mode: xml -*-->
+<interface>
+ <object class="GtkWindow" id="window">
+ <property name="width_request">500</property>
+ <property name="height_request">150</property>
+ <property name="title" translatable="yes">Dasher</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">False</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_NORMAL</property>
+ <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+ <property name="focus_on_map">True</property>
+ <property name="urgency_hint">False</property>
+ <signal handler="ask_save_before_exit" last_modification_time="Mon, 22 Sep 2003 19:53:44 GMT" name="delete_event"/>
+ <signal handler="on_window_map" last_modification_time="Mon, 22 Sep 2003 19:53:44 GMT" name="realize"/>
+ <child>
+ <object class="GtkHBox" id="hbox1">
+ <property name="border_width">32</property>
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <child>
+ <object class="GtkVBox" id="vbox3">
+ <property name="width_request">50</property>
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <child>
+ <object class="GtkButton" id="button21">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes"/>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="button20">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes"/>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="button17">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">P</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <signal handler="preferences_display" last_modification_time="Tue, 23 Sep 2003 00:29:06 GMT" name="clicked"/>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="Custom" id="DasherControl">
+ <property name="width_request">175</property>
+ <property name="visible">True</property>
+ <property name="creation_function">create_dasher_control</property>
+ <property name="int1">0</property>
+ <property name="int2">0</property>
+ <property name="last_modification_time">Wed, 29 Mar 2006 17:31:58 GMT</property>
+ <signal handler="parameter_notification" last_modification_time="Sun, 05 Mar 2006 19:45:23 GMT" name="dasher_changed"/>
+ <signal handler="handle_start_event" last_modification_time="Sun, 05 Mar 2006 19:45:35 GMT" name="dasher_start"/>
+ <signal handler="handle_stop_event" last_modification_time="Sun, 05 Mar 2006 19:45:43 GMT" name="dasher_stop"/>
+ <signal handler="handle_control_event" last_modification_time="Sun, 05 Mar 2006 19:45:53 GMT" name="dasher_control"/>
+ <signal handler="gtk2_edit_output_callback" last_modification_time="Sun, 05 Mar 2006 19:46:13 GMT" name="dasher_edit_insert"/>
+ <signal handler="gtk2_edit_delete_callback" last_modification_time="Sun, 05 Mar 2006 19:46:32 GMT" name="dasher_edit_delete"/>
+ <signal handler="handle_context_request" last_modification_time="Sun, 05 Mar 2006 19:46:54 GMT" name="dasher_context_request"/>
+ <signal handler="handle_request_settings" last_modification_time="Sun, 05 Mar 2006 19:47:12 GMT" name="dasher_request_settings"/>
+ <signal handler="focus_in_event" last_modification_time="Sun, 05 Mar 2006 19:47:28 GMT" name="focus_in_event"/>
+ <signal handler="on_lock_info" last_modification_time="Wed, 22 Mar 2006 10:38:44 GMT" name="dasher_lock_info"/>
+ <signal handler="on_message" last_modification_time="Wed, 22 Mar 2006 14:24:04 GMT" name="dasher_message"/>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkVBox" id="vbox4">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <child>
+ <object class="GtkHBox" id="hbox3">
+ <property name="height_request">50</property>
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <child>
+ <object class="GtkButton" id="button22">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes"/>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="button23">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes"/>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="button24">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">
+</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="button25">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes"/>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkHBox" id="hbox2">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <child>
+ <object class="GtkScrolledWindow" id="scrolledwindow5">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+ <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+ <property name="shadow_type">GTK_SHADOW_IN</property>
+ <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+ <child>
+ <object class="GtkTextView" id="the_text_view">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">True</property>
+ <property name="overwrite">False</property>
+ <property name="accepts_tab">True</property>
+ <property name="justification">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap_mode">GTK_WRAP_NONE</property>
+ <property name="cursor_visible">True</property>
+ <property name="pixels_above_lines">0</property>
+ <property name="pixels_below_lines">0</property>
+ <property name="pixels_inside_wrap">0</property>
+ <property name="left_margin">0</property>
+ <property name="right_margin">0</property>
+ <property name="indent">0</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkVBox" id="vbox39">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <child>
+ <placeholder/>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="pack_type">GTK_PACK_END</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="open_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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">False</property>
+ <property name="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="cancel_button1">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="ok_button1">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFontSelectionDialog" id="dasher_fontselector">
+ <property name="border_width">4</property>
+ <property name="title" translatable="yes">Select Font</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">False</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">False</property>
+ <signal handler="dasher_font_cancel_cb" last_modification_time="Thu, 11 May 2006 15:22:16 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="dasher_font_cancel">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label">gtk-cancel</property>
+ <property name="use_stock">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <signal handler="dasher_font_cancel_cb" last_modification_time="Thu, 11 May 2006 15:21:14 GMT" name="clicked"/>
+ </object>
+ </child>
+ <child internal-child="apply_button">
+ <object class="GtkButton" id="dasher_font_apply">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label">gtk-apply</property>
+ <property name="use_stock">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <signal handler="dasher_font_apply_cb" last_modification_time="Thu, 11 May 2006 15:21:38 GMT" name="clicked"/>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="dasher_font_ok">
+ <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 handler="dasher_font_ok_cb" last_modification_time="Thu, 11 May 2006 15:22:03 GMT" name="clicked"/>
+ </object>
+ </child>
+ <child internal-child="font_selection">
+ <object class="GtkFontSelection" id="font_selection1">
+ <property name="border_width">4</property>
+ <property name="visible">True</property>
+ <property name="preview_text" translatable="yes">abcdefghijk ABCDEFGHIJK</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ <object class="GtkFontSelectionDialog" id="edit_fontselector">
+ <property name="border_width">4</property>
+ <property name="title" translatable="yes">Select Font</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">False</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">False</property>
+ <signal handler="edit_font_cancel_cb" last_modification_time="Thu, 11 May 2006 15:22:37 GMT" name="close"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="edit_font_cancel">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label">gtk-cancel</property>
+ <property name="use_stock">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <signal handler="edit_font_cancel_cb" last_modification_time="Thu, 11 May 2006 15:20:27 GMT" name="clicked"/>
+ </object>
+ </child>
+ <child internal-child="apply_button">
+ <object class="GtkButton" id="edit_font_apply">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label">gtk-apply</property>
+ <property name="use_stock">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <signal handler="edit_font_apply_cb" last_modification_time="Thu, 11 May 2006 15:20:19 GMT" name="clicked"/>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="edit_font_ok">
+ <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 handler="edit_font_ok_cb" last_modification_time="Thu, 11 May 2006 15:19:55 GMT" name="clicked"/>
+ </object>
+ </child>
+ <child internal-child="font_selection">
+ <object class="GtkFontSelection" id="font_selection_2">
+ <property name="border_width">4</property>
+ <property name="visible">True</property>
+ <property name="preview_text" translatable="yes">abcdefghijk ABCDEFGHIJK</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="save_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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">False</property>
+ <property name="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="button14">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="button15">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="append_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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">False</property>
+ <property name="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="button16">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="button17">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="import_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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">False</property>
+ <property name="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="button18">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="button19">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="save_and_quit_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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">False</property>
+ <property name="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="button20">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="button21">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkWindow" id="lock_window">
+ <property name="visible">True</property>
+ <property name="title" translatable="yes">Please Wait...</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">False</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_NORMAL</property>
+ <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+ <property name="focus_on_map">True</property>
+ <property name="urgency_hint">False</property>
+ <child>
+ <object class="GtkVBox" id="vbox43">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <child>
+ <object class="GtkLabel" id="lock_message">
+ <property name="visible">True</property>
+ <property name="label" translatable="no">(Message Placeholder - no need to translate)</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</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>
+ </object>
+ <packing>
+ <property name="padding">8</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkAlignment" id="alignment38">
+ <property name="border_width">8</property>
+ <property name="visible">True</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xscale">1</property>
+ <property name="yscale">1</property>
+ <property name="top_padding">0</property>
+ <property name="bottom_padding">0</property>
+ <property name="left_padding">0</property>
+ <property name="right_padding">0</property>
+ <child>
+ <object class="GtkProgressBar" id="lock_progress">
+ <property name="visible">True</property>
+ <property name="orientation">GTK_PROGRESS_LEFT_TO_RIGHT</property>
+ <property name="fraction">0</property>
+ <property name="pulse_step">0.10000000149</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+</interface>
diff --git a/Data/GUI/dashermaemofullscreen.ui b/Data/GUI/dashermaemofullscreen.ui
new file mode 100644
index 0000000..b12fc51
--- /dev/null
+++ b/Data/GUI/dashermaemofullscreen.ui
@@ -0,0 +1,589 @@
+<?xml version="1.0"?>
+<!--*- mode: xml -*-->
+<interface>
+ <object class="GtkUIManager" id="uimanager1">
+ <child>
+ <object class="GtkActionGroup" id="actiongroup1">
+ <child>
+ <object class="GtkAction" id="menuitem4">
+ <property name="name">menuitem4</property>
+ <property name="label" translatable="yes">_File</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menunew">
+ <property name="stock_id">gtk-new</property>
+ <property name="name">menunew</property>
+ <signal handler="select_new_file" last_modification_time="Tue, 23 Sep 2003 11:16:26 GMT" name="activate"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menuquit">
+ <property name="stock_id">gtk-quit</property>
+ <property name="name">menuquit</property>
+ <signal handler="ask_save_before_exit" last_modification_time="Tue, 23 Sep 2003 11:17:37 GMT" name="activate"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menuitem5">
+ <property name="name">menuitem5</property>
+ <property name="label" translatable="yes">_Edit</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menucut">
+ <property name="stock_id">gtk-cut</property>
+ <property name="name">menucut</property>
+ <signal handler="clipboard_cut" last_modification_time="Tue, 23 Sep 2003 11:19:57 GMT" name="activate"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menucopy">
+ <property name="stock_id">gtk-copy</property>
+ <property name="name">menucopy</property>
+ <signal handler="clipboard_copy" last_modification_time="Tue, 23 Sep 2003 11:20:12 GMT" name="activate"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menupaste">
+ <property name="stock_id">gtk-paste</property>
+ <property name="name">menupaste</property>
+ <signal handler="clipboard_paste" last_modification_time="Tue, 23 Sep 2003 11:20:26 GMT" name="activate"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menucopyall">
+ <property name="name">menucopyall</property>
+ <property name="label" translatable="yes">Copy _All</property>
+ <signal handler="clipboard_copy_all" last_modification_time="Tue, 23 Sep 2003 11:21:50 GMT" name="activate"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="options1">
+ <property name="name">options1</property>
+ <property name="label" translatable="yes">_Options</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menupreferences">
+ <property name="stock_id">gtk-preferences</property>
+ <property name="name">menupreferences</property>
+ <signal handler="preferences_display" last_modification_time="Tue, 23 Sep 2003 00:29:06 GMT" name="activate"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="edit_font1">
+ <property name="name">edit_font1</property>
+ <property name="label" translatable="yes">_Edit Font</property>
+ <signal handler="set_edit_font" last_modification_time="Tue, 23 Sep 2003 17:57:37 GMT" name="activate"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="dasher_font1">
+ <property name="name">dasher_font1</property>
+ <property name="label" translatable="yes">_Dasher Font</property>
+ <signal handler="set_dasher_font" last_modification_time="Tue, 23 Sep 2003 17:57:37 GMT" name="activate"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="dasher_font_size1">
+ <property name="name">dasher_font_size1</property>
+ <property name="label" translatable="yes">_Dasher Font Size</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkRadioAction" id="fontsizenormal">
+ <property name="active">True</property>
+ <property name="name">fontsizenormal</property>
+ <property name="label" translatable="yes">Normal</property>
+ <signal handler="set_dasher_fontsize" last_modification_time="Wed, 24 Sep 2003 12:21:00 GMT" name="activate"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkRadioAction" id="fontsizelarge">
+ <property name="active">True</property>
+ <property name="group">fontsizenormal</property>
+ <property name="name">fontsizelarge</property>
+ <property name="label" translatable="yes">Large</property>
+ <signal handler="set_dasher_fontsize" last_modification_time="Wed, 24 Sep 2003 12:21:00 GMT" name="activate"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkRadioAction" id="fontsizevlarge">
+ <property name="active">True</property>
+ <property name="group">fontsizenormal</property>
+ <property name="name">fontsizevlarge</property>
+ <property name="label" translatable="yes">Very Large</property>
+ <signal handler="set_dasher_fontsize" last_modification_time="Wed, 24 Sep 2003 12:21:00 GMT" name="activate"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="reset_fonts1">
+ <property name="name">reset_fonts1</property>
+ <property name="label" translatable="yes">_Reset fonts</property>
+ <signal handler="reset_fonts" last_modification_time="Tue, 23 Sep 2003 17:57:37 GMT" name="activate"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menuitem7">
+ <property name="name">menuitem7</property>
+ <property name="label" translatable="yes">_Help</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkAction" id="menuabout">
+ <property name="name">menuabout</property>
+ <property name="label" translatable="yes">_About</property>
+ <signal handler="about_dasher" last_modification_time="Tue, 23 Sep 2003 11:21:50 GMT" name="activate"/>
+ </object>
+ </child>
+ </object>
+ </child>
+ <ui>
+ <menubar name="dasher_menu_bar">
+ <menu action="menuitem4">
+ <menuitem action="menunew"/>
+ <menuitem action="menuquit"/>
+ </menu>
+ <menu action="menuitem5">
+ <menuitem action="menucut"/>
+ <menuitem action="menucopy"/>
+ <menuitem action="menupaste"/>
+ <menuitem action="menucopyall"/>
+ </menu>
+ <menu action="options1">
+ <menuitem action="menupreferences"/>
+ <menuitem action="edit_font1"/>
+ <menuitem action="dasher_font1"/>
+ <menu action="dasher_font_size1">
+ <menuitem action="fontsizenormal"/>
+ <menuitem action="fontsizelarge"/>
+ <menuitem action="fontsizevlarge"/>
+ </menu>
+ <menuitem action="reset_fonts1"/>
+ </menu>
+ <menu action="menuitem7">
+ <menuitem action="menuabout"/>
+ </menu>
+ </menubar>
+ </ui>
+ </object>
+ <object class="GtkWindow" id="window">
+ <property name="width_request">500</property>
+ <property name="height_request">150</property>
+ <property name="title" translatable="yes">Dasher</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">False</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_NORMAL</property>
+ <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+ <property name="focus_on_map">True</property>
+ <property name="urgency_hint">False</property>
+ <signal handler="ask_save_before_exit" last_modification_time="Mon, 22 Sep 2003 19:53:44 GMT" name="delete_event"/>
+ <signal handler="on_window_map" last_modification_time="Mon, 22 Sep 2003 19:53:44 GMT" name="realize"/>
+ <child>
+ <object class="GtkVBox" id="vbox45">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+ <child>
+ <object class="GtkMenuBar" constructor="uimanager1" id="dasher_menu_bar">
+ <property name="visible">True</property>
+ <property name="pack_direction">GTK_PACK_DIRECTION_LTR</property>
+ <property name="child_pack_direction">GTK_PACK_DIRECTION_LTR</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkHPaned" id="hpaned1">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <child>
+ <object class="Custom" id="DasherControl">
+ <property name="width_request">175</property>
+ <property name="visible">True</property>
+ <property name="creation_function">create_dasher_control</property>
+ <property name="int1">0</property>
+ <property name="int2">0</property>
+ <property name="last_modification_time">Wed, 29 Mar 2006 17:31:58 GMT</property>
+ <signal handler="parameter_notification" last_modification_time="Sun, 05 Mar 2006 19:45:23 GMT" name="dasher_changed"/>
+ <signal handler="handle_start_event" last_modification_time="Sun, 05 Mar 2006 19:45:35 GMT" name="dasher_start"/>
+ <signal handler="handle_stop_event" last_modification_time="Sun, 05 Mar 2006 19:45:43 GMT" name="dasher_stop"/>
+ <signal handler="handle_control_event" last_modification_time="Sun, 05 Mar 2006 19:45:53 GMT" name="dasher_control"/>
+ <signal handler="gtk2_edit_output_callback" last_modification_time="Sun, 05 Mar 2006 19:46:13 GMT" name="dasher_edit_insert"/>
+ <signal handler="gtk2_edit_delete_callback" last_modification_time="Sun, 05 Mar 2006 19:46:32 GMT" name="dasher_edit_delete"/>
+ <signal handler="handle_context_request" last_modification_time="Sun, 05 Mar 2006 19:46:54 GMT" name="dasher_context_request"/>
+ <signal handler="handle_request_settings" last_modification_time="Sun, 05 Mar 2006 19:47:12 GMT" name="dasher_request_settings"/>
+ <signal handler="focus_in_event" last_modification_time="Sun, 05 Mar 2006 19:47:28 GMT" name="focus_in_event"/>
+ <signal handler="on_lock_info" last_modification_time="Wed, 22 Mar 2006 10:38:44 GMT" name="dasher_lock_info"/>
+ <signal handler="on_message" last_modification_time="Wed, 22 Mar 2006 14:24:04 GMT" name="dasher_message"/>
+ <signal handler="convert_cb" last_modification_time="Tue, 30 May 2006 14:21:15 GMT" name="dasher_edit_convert"/>
+ <signal handler="protect_cb" last_modification_time="Tue, 30 May 2006 14:21:26 GMT" name="dasher_edit_protect"/>
+ </object>
+ <packing>
+ <property name="shrink">True</property>
+ <property name="resize">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkScrolledWindow" id="scrolledwindow5">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+ <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+ <property name="shadow_type">GTK_SHADOW_IN</property>
+ <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+ <child>
+ <object class="GtkTextView" id="the_text_view">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">True</property>
+ <property name="overwrite">False</property>
+ <property name="accepts_tab">True</property>
+ <property name="justification">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap_mode">GTK_WRAP_WORD</property>
+ <property name="cursor_visible">True</property>
+ <property name="pixels_above_lines">0</property>
+ <property name="pixels_below_lines">0</property>
+ <property name="pixels_inside_wrap">0</property>
+ <property name="left_margin">0</property>
+ <property name="right_margin">0</property>
+ <property name="indent">0</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="shrink">True</property>
+ <property name="resize">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="open_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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">False</property>
+ <property name="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="cancel_button1">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="ok_button1">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFontSelectionDialog" id="dasher_fontselector">
+ <property name="border_width">4</property>
+ <property name="title" translatable="yes">Select Font</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">False</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">False</property>
+ <signal handler="dasher_font_cancel_cb" last_modification_time="Thu, 11 May 2006 15:22:16 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="dasher_font_cancel">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label">gtk-cancel</property>
+ <property name="use_stock">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <signal handler="dasher_font_cancel_cb" last_modification_time="Thu, 11 May 2006 15:21:14 GMT" name="clicked"/>
+ </object>
+ </child>
+ <child internal-child="apply_button">
+ <object class="GtkButton" id="dasher_font_apply">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label">gtk-apply</property>
+ <property name="use_stock">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <signal handler="dasher_font_apply_cb" last_modification_time="Thu, 11 May 2006 15:21:38 GMT" name="clicked"/>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="dasher_font_ok">
+ <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 handler="dasher_font_ok_cb" last_modification_time="Thu, 11 May 2006 15:22:03 GMT" name="clicked"/>
+ </object>
+ </child>
+ <child internal-child="font_selection">
+ <object class="GtkFontSelection" id="font_selection1">
+ <property name="border_width">4</property>
+ <property name="visible">True</property>
+ <property name="preview_text" translatable="yes">abcdefghijk ABCDEFGHIJK</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ <object class="GtkFontSelectionDialog" id="edit_fontselector">
+ <property name="border_width">4</property>
+ <property name="title" translatable="yes">Select Font</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">False</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">False</property>
+ <signal handler="edit_font_cancel_cb" last_modification_time="Thu, 11 May 2006 15:22:37 GMT" name="close"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="edit_font_cancel">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label">gtk-cancel</property>
+ <property name="use_stock">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <signal handler="edit_font_cancel_cb" last_modification_time="Thu, 11 May 2006 15:20:27 GMT" name="clicked"/>
+ </object>
+ </child>
+ <child internal-child="apply_button">
+ <object class="GtkButton" id="edit_font_apply">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label">gtk-apply</property>
+ <property name="use_stock">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <signal handler="edit_font_apply_cb" last_modification_time="Thu, 11 May 2006 15:20:19 GMT" name="clicked"/>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="edit_font_ok">
+ <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 handler="edit_font_ok_cb" last_modification_time="Thu, 11 May 2006 15:19:55 GMT" name="clicked"/>
+ </object>
+ </child>
+ <child internal-child="font_selection">
+ <object class="GtkFontSelection" id="font_selection_2">
+ <property name="border_width">4</property>
+ <property name="visible">True</property>
+ <property name="preview_text" translatable="yes">abcdefghijk ABCDEFGHIJK</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="save_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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">False</property>
+ <property name="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="button14">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="button15">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="append_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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">False</property>
+ <property name="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="button16">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="button17">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="import_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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">False</property>
+ <property name="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="button18">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="button19">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkFileSelection" id="save_and_quit_fileselector">
+ <property name="border_width">10</property>
+ <property name="title" translatable="yes">Select File</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">True</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">False</property>
+ <property name="show_fileops">True</property>
+ <signal handler="gtk_widget_hide_on_delete" last_modification_time="Tue, 23 Sep 2003 13:19:39 GMT" name="delete_event"/>
+ <child internal-child="cancel_button">
+ <object class="GtkButton" id="button20">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child internal-child="ok_button">
+ <object class="GtkButton" id="button21">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ </object>
+</interface>
diff --git a/Data/Makefile.am b/Data/Makefile.am
index 055d579..91b1a90 100644
--- a/Data/Makefile.am
+++ b/Data/Makefile.am
@@ -1,4 +1,4 @@
-SUBDIRS = training alphabets colours controllabels glade Help
+SUBDIRS = training alphabets colours controllabels GUI Help
desktopdir = $(datadir)/applications
desktop_in_files = dasher.desktop.in
diff --git a/INSTALL b/INSTALL
index 23e5f25..d3c5b40 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,8 +1,8 @@
Installation Instructions
*************************
-Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free
-Software Foundation, Inc.
+Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005,
+2006, 2007 Free Software Foundation, Inc.
This file is free documentation; the Free Software Foundation gives
unlimited permission to copy, distribute and modify it.
@@ -10,7 +10,10 @@ unlimited permission to copy, distribute and modify it.
Basic Installation
==================
-These are generic installation instructions.
+Briefly, the shell commands `./configure; make; make install' should
+configure, build, and install this package. The following
+more-detailed instructions are generic; see the `README' file for
+instructions specific to this package.
The `configure' shell script attempts to guess correct values for
various system-dependent variables used during compilation. It uses
@@ -23,9 +26,9 @@ debugging `configure').
It can also use an optional file (typically called `config.cache'
and enabled with `--cache-file=config.cache' or simply `-C') that saves
-the results of its tests to speed up reconfiguring. (Caching is
+the results of its tests to speed up reconfiguring. Caching is
disabled by default to prevent problems with accidental use of stale
-cache files.)
+cache files.
If you need to do unusual things to compile the package, please try
to figure out how `configure' could check whether to do them, and mail
@@ -35,20 +38,17 @@ some point `config.cache' contains results you don't want to keep, you
may remove or edit it.
The file `configure.ac' (or `configure.in') is used to create
-`configure' by a program called `autoconf'. You only need
-`configure.ac' if you want to change it or regenerate `configure' using
-a newer version of `autoconf'.
+`configure' by a program called `autoconf'. You need `configure.ac' if
+you want to change it or regenerate `configure' using a newer version
+of `autoconf'.
The simplest way to compile this package is:
1. `cd' to the directory containing the package's source code and type
- `./configure' to configure the package for your system. If you're
- using `csh' on an old version of System V, you might need to type
- `sh ./configure' instead to prevent `csh' from trying to execute
- `configure' itself.
+ `./configure' to configure the package for your system.
- Running `configure' takes awhile. While running, it prints some
- messages telling which features it is checking for.
+ Running `configure' might take a while. While running, it prints
+ some messages telling which features it is checking for.
2. Type `make' to compile the package.
@@ -67,6 +67,9 @@ The simplest way to compile this package is:
all sorts of other programs in order to regenerate files that came
with the distribution.
+ 6. Often, you can also type `make uninstall' to remove the installed
+ files again.
+
Compilers and Options
=====================
@@ -78,7 +81,7 @@ details on some of the pertinent environment variables.
by setting variables in the command line or in the environment. Here
is an example:
- ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix
+ ./configure CC=c99 CFLAGS=-g LIBS=-lposix
*Note Defining Variables::, for more details.
@@ -87,17 +90,15 @@ Compiling For Multiple Architectures
You can compile the package for more than one kind of computer at the
same time, by placing the object files for each architecture in their
-own directory. To do this, you must use a version of `make' that
-supports the `VPATH' variable, such as GNU `make'. `cd' to the
+own directory. To do this, you can use GNU `make'. `cd' to the
directory where you want the object files and executables to go and run
the `configure' script. `configure' automatically checks for the
source code in the directory that `configure' is in and in `..'.
- If you have to use a `make' that does not support the `VPATH'
-variable, you have to compile the package for one architecture at a
-time in the source code directory. After you have installed the
-package for one architecture, use `make distclean' before reconfiguring
-for another architecture.
+ With a non-GNU `make', it is safer to compile the package for one
+architecture at a time in the source code directory. After you have
+installed the package for one architecture, use `make distclean' before
+reconfiguring for another architecture.
Installation Names
==================
@@ -190,12 +191,12 @@ them in the `configure' command line, using `VAR=value'. For example:
./configure CC=/usr/local2/bin/gcc
causes the specified `gcc' to be used as the C compiler (unless it is
-overridden in the site shell script). Here is a another example:
+overridden in the site shell script).
- /bin/bash ./configure CONFIG_SHELL=/bin/bash
+Unfortunately, this technique does not work for `CONFIG_SHELL' due to
+an Autoconf bug. Until the bug is fixed you can use this workaround:
-Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent
-configuration-related scripts to be executed by `/bin/bash'.
+ CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
`configure' Invocation
======================
diff --git a/Makefile.am b/Makefile.am
index 10f9db0..b2ca966 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -19,7 +19,6 @@ EXTRA_DIST = \
intltool-update.in
DISTCLEANFILES = \
- m4 \
intltool-merge \
intltool-extract \
intltool-update \
@@ -54,8 +53,8 @@ maemo-install: all
cp -a Data/maemo/* tmp_build
cp Src/dasher tmp_build/usr/bin/dasher
strip tmp_build/usr/bin/dasher
- cp Src/Gtk2/dashermaemo.glade Src/Gtk2/dashermaemofullscreen.glade tmp_build/usr/share/dasher
- cp Data/system.rc/training_english_GB.txt Data/system.rc/alphabet.english.xml Data/system.rc/colour.xml tmp_build/usr/share/dasher
+ cp Data/GUI/dashermaemo.ui Data/GUI/dashermaemofullscreen.ui tmp_build/usr/share/dasher
+ cp Data/training/training_english_GB.txt Data/alphabets/alphabet.english.xml Data/colours/colour.xml tmp_build/usr/share/dasher
ln -sf /usr/share/applications/hildon/dasher.desktop tmp_build/etc/others-menu/extra_applications/0301_dasher.desktop
- find tmp_build -name .git -exec rm -rf \{\} \;
dpkg-deb -b tmp_build dasher_4.10.1.0inferencemaemo1_armel.deb
diff --git a/Src/Common/Makefile.am b/Src/Common/Makefile.am
index 4ec7318..8333a96 100644
--- a/Src/Common/Makefile.am
+++ b/Src/Common/Makefile.am
@@ -24,6 +24,6 @@ libdashermisc_a_SOURCES = \
# IOstreamDasherEdit.cc I have no idea what this does, but it's broken now
# IOstreamDasherEdit.h
-AM_CXXFLAGS = -I$(srcdir)/../DasherCore -DPROGDATA=\"$(pkgdatadir)\" -I../../intl -I$(top_srcdir)/intl $(GTK2_CFLAGS) $(SETTINGS_CFLAGS) $(gnome_speech_CFLAGS) $(gnome_a11y_CFLAGS) $(glade_CFLAGS) $(gnome_CFLAGS) $(wnck_CFLAGS) -DWNCK_I_KNOW_THIS_IS_UNSTABLE
+AM_CXXFLAGS = -I$(srcdir)/../DasherCore -DPROGDATA=\"$(pkgdatadir)\" -I../../intl -I$(top_srcdir)/intl $(GTK2_CFLAGS) $(SETTINGS_CFLAGS) $(gnome_speech_CFLAGS) $(gnome_a11y_CFLAGS) $(gnome_CFLAGS) $(wnck_CFLAGS) -DWNCK_I_KNOW_THIS_IS_UNSTABLE
EXTRA_DIST = Common.vcproj Common_vc70.vcproj Common_vc71.vcproj Common_vc80.vcproj
diff --git a/Src/DasherCore/Makefile.am b/Src/DasherCore/Makefile.am
index 47cf62f..6ae670f 100644
--- a/Src/DasherCore/Makefile.am
+++ b/Src/DasherCore/Makefile.am
@@ -144,7 +144,7 @@ EXTRA_libdashercore_a_SOURCES = \
PinyinParser.cpp \
PinyinParser.h
-AM_CXXFLAGS = -I$(srcdir)/../DasherCore -DPROGDATA=\"$(pkgdatadir)\" -I../../intl -I$(top_srcdir)/intl $(GTK2_CFLAGS) $(SETTINGS_CFLAGS) $(gnome_speech_CFLAGS) $(gnome_a11y_CFLAGS) $(glade_CFLAGS) $(gnome_CFLAGS) $(wnck_CFLAGS) -DWNCK_I_KNOW_THIS_IS_UNSTABLE
+AM_CXXFLAGS = -I$(srcdir)/../DasherCore -DPROGDATA=\"$(pkgdatadir)\" -I../../intl -I$(top_srcdir)/intl $(GTK2_CFLAGS) $(SETTINGS_CFLAGS) $(gnome_speech_CFLAGS) $(gnome_a11y_CFLAGS) $(gnome_CFLAGS) $(wnck_CFLAGS) -DWNCK_I_KNOW_THIS_IS_UNSTABLE
EXTRA_DIST = \
LanguageModelling/BigramLanguageModel.cpp \
diff --git a/Src/DasherCore/NodeCreationManager.h b/Src/DasherCore/NodeCreationManager.h
index 3ad0a0b..8bed6fb 100644
--- a/Src/DasherCore/NodeCreationManager.h
+++ b/Src/DasherCore/NodeCreationManager.h
@@ -35,7 +35,7 @@ class CNodeCreationManager : public Dasher::CDasherComponent {
Dasher::CDasherNode *GetRoot(int iType, Dasher::CDasherNode *pParent, int iLower, int iUpper, void *pUserData);
///
- /// Register a control node
+ /// Register a control node
///
void RegisterNode( int iID, const std::string &strLabel, int iColour );
diff --git a/Src/Gtk2/GtkDasherControl.cpp b/Src/Gtk2/GtkDasherControl.cpp
index c48a871..fa0c503 100644
--- a/Src/Gtk2/GtkDasherControl.cpp
+++ b/Src/Gtk2/GtkDasherControl.cpp
@@ -53,7 +53,7 @@ enum {
SIGNAL_NUM
};
-#define GTK_DASHER_CONTROL_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE((o), TYPE_GTK_DASHER_CONTROL, GtkDasherControlPrivate));
+#define GTK_DASHER_CONTROL_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE((o), GTK_DASHER_TYPE_CONTROL, GtkDasherControlPrivate));
/* TODO: is it still sensible to derive from VBox, given that its just a cnavas now*/
G_DEFINE_TYPE(GtkDasherControl, gtk_dasher_control, GTK_TYPE_VBOX);
@@ -144,11 +144,7 @@ gtk_dasher_control_finalize(GObject *pObject) {
GtkWidget *
gtk_dasher_control_new() {
- GtkDasherControl *pDasherControl;
-
- pDasherControl = GTK_DASHER_CONTROL(g_object_new(gtk_dasher_control_get_type(), NULL));
-
- return GTK_WIDGET(pDasherControl);
+ return GTK_WIDGET(g_object_new(GTK_DASHER_TYPE_CONTROL, NULL));
}
void
diff --git a/Src/Gtk2/GtkDasherControl.h b/Src/Gtk2/GtkDasherControl.h
index 1d0716c..0a22c87 100644
--- a/Src/Gtk2/GtkDasherControl.h
+++ b/Src/Gtk2/GtkDasherControl.h
@@ -24,11 +24,11 @@ struct _DasherMessageInfo {
};
G_BEGIN_DECLS
-#define TYPE_GTK_DASHER_CONTROL (gtk_dasher_control_get_type())
-#define GTK_DASHER_CONTROL(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), TYPE_GTK_DASHER_CONTROL, GtkDasherControl ))
-#define GTK_DASHER_CONTROL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_GTK_DASHER_CONTROL, GtkDasherControlClass ))
-#define IS_GTK_DASHER_CONTROL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_GTK_DASHER_CONTROL))
-#define IS_GTK_DASHER_CONTROL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_GTK_DASHER_CONTROL))
+#define GTK_DASHER_TYPE_CONTROL (gtk_dasher_control_get_type())
+#define GTK_DASHER_CONTROL(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), GTK_DASHER_TYPE_CONTROL, GtkDasherControl ))
+#define GTK_DASHER_CONTROL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_DASHER_TYPE_CONTROL, GtkDasherControlClass ))
+#define GTK_DASHER_IS_CONTROL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_DASHER_TYPE_CONTROL))
+#define GTK_DASHER_IS_CONTROL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_DASHER_TYPE_CONTROL))
typedef struct _GtkDasherControl GtkDasherControl;
typedef struct _GtkDasherControlClass GtkDasherControlClass;
diff --git a/Src/Gtk2/Makefile.am b/Src/Gtk2/Makefile.am
index 9900858..2852c38 100644
--- a/Src/Gtk2/Makefile.am
+++ b/Src/Gtk2/Makefile.am
@@ -1,28 +1,13 @@
LIBS = @INTLLIBS@ @LIBS@
-noinst_LIBRARIES = libdashergtk.a libdashercontrol.a
+noinst_LTLIBRARIES = libdashergtk.la libdashercontrol.la
noinst_PROGRAMS = generate-schema
#bin_PROGRAMS = dasher-config
if WITH_GPE
-gladefile = dashergpe.glade
settings_store = gpesettings_store.cc gpesettings_store.h
-
else
-
-if WITH_MAEMO
-
-if WITH_MAEMOFULLSCREEN
-gladefile = dashermaemofullscreen.glade
-else
-gladefile = dashermaemo.glade
-endif
-
-else
-gladefile = dasher.glade
-endif
-
settings_store =
endif
@@ -40,7 +25,7 @@ generate_schema_SOURCES = GenerateSchema.cpp
#dasher_config_LDADD = \
# $(GTK2BUILD_LIBS)
-libdashercontrol_a_SOURCES = \
+libdashercontrol_la_SOURCES = \
Canvas.cpp \
Canvas.h \
DasherControl.cpp \
@@ -61,7 +46,7 @@ libdashercontrol_a_SOURCES = \
mouse_input.h \
$(settings_store)
-libdashergtk_a_SOURCES = \
+libdashergtk_la_SOURCES = \
DasherAppSettings.cpp \
DasherAppSettings.h \
GtkDasherControl.h \
@@ -97,10 +82,10 @@ libdashergtk_a_SOURCES = \
dasher_main.cpp \
dasher_main.h \
module_settings_window.cpp \
- module_settings_window.h
+ module_settings_window.h
-libdashergtk_a_LIBADD = @SPEECH_SOURCES@
-libdashergtk_a_DEPENDENCIES = @SPEECH_SOURCES@
+libdashergtk_la_LIBADD = @SPEECH_SOURCES@
+libdashergtk_la_DEPENDENCIES = @SPEECH_SOURCES@
AM_CXXFLAGS = -I$(srcdir)/../DasherCore -DPROGDATA=\"$(pkgdatadir)\" -I../../intl -I$(top_srcdir)/intl $(GTK2BUILD_CFLAGS)
diff --git a/Src/Gtk2/Preferences.cpp b/Src/Gtk2/Preferences.cpp
index ad1d0a8..27eea06 100644
--- a/Src/Gtk2/Preferences.cpp
+++ b/Src/Gtk2/Preferences.cpp
@@ -96,25 +96,25 @@ enum {
/// Newer, object based stuff
struct _DasherPreferencesDialoguePrivate {
- GtkWidget *pPreferencesWindow;
+ GtkWindow *pPreferencesWindow;
DasherEditor *pEditor;
DasherAppSettings *pAppSettings;
GtkWindow *pMainWindow;
// TODO: it really would be nice not to have to keep this arround
- GladeXML *pGladeXML;
+ GtkBuilder *pXML;
// TODO: check all of these are really needed
GtkListStore *pListStore;
- GtkWidget *pLRButton;
- GtkWidget *pRLButton;
- GtkWidget *pTBButton;
- GtkWidget *pBTButton;
- GtkWidget *pSpeedSlider;
- GtkWidget *pMousePosButton;
- GtkWidget *pMousePosStyle;
- GtkWidget *pActionTreeView;
- GtkWidget *pNotebook;
+ GtkToggleButton *pLRButton;
+ GtkToggleButton *pRLButton;
+ GtkToggleButton *pTBButton;
+ GtkToggleButton *pBTButton;
+ GtkRange *pSpeedSlider;
+ GtkToggleButton *pMousePosButton;
+ GtkComboBox *pMousePosStyle;
+ GtkTreeView *pActionTreeView;
+ GtkNotebook *pNotebook;
// Set this to ignore signals (ie loops coming back from setting widgets in response to parameters having changed)
bool bIgnoreSignals;
@@ -221,7 +221,7 @@ static void dasher_preferences_dialogue_destroy(GObject *pObject) {
DasherPreferencesDialogue *pSelf = (DasherPreferencesDialogue *)pObject;
DasherPreferencesDialoguePrivate *pPrivate = (DasherPreferencesDialoguePrivate *)(pSelf->private_data);
- g_object_unref(pPrivate->pGladeXML);
+ g_object_unref(pPrivate->pXML);
// FIXME - I think we need to chain up through the finalize methods
// of the parent classes here...
@@ -230,7 +230,7 @@ static void dasher_preferences_dialogue_destroy(GObject *pObject) {
// Public methods
-DasherPreferencesDialogue *dasher_preferences_dialogue_new(GladeXML *pGladeWidgets, DasherEditor *pEditor, DasherAppSettings *pAppSettings, GtkWindow *pMainWindow) {
+DasherPreferencesDialogue *dasher_preferences_dialogue_new(GtkBuilder *pXML, DasherEditor *pEditor, DasherAppSettings *pAppSettings, GtkWindow *pMainWindow) {
DasherPreferencesDialogue *pDasherControl;
pDasherControl = (DasherPreferencesDialogue *)(g_object_new(dasher_preferences_dialogue_get_type(), NULL));
@@ -243,35 +243,35 @@ DasherPreferencesDialogue *dasher_preferences_dialogue_new(GladeXML *pGladeWidge
pPrivate->pEditor = pEditor;
pPrivate->pAppSettings = pAppSettings;
- pPrivate->pGladeXML = (GladeXML *)g_object_ref(pGladeWidgets);
+ pPrivate->pXML = (GtkBuilder *)g_object_ref(pXML);
- pPrivate->pPreferencesWindow = glade_xml_get_widget(pGladeWidgets, "preferences");
+ pPrivate->pPreferencesWindow = GTK_WINDOW(gtk_builder_get_object(pXML, "preferences"));
- pPrivate->pActionTreeView =glade_xml_get_widget(pGladeWidgets, "action_tree_view");
- pPrivate->pNotebook = glade_xml_get_widget(pGladeWidgets, "notebook1");
+ pPrivate->pActionTreeView = GTK_TREE_VIEW(gtk_builder_get_object(pXML, "action_tree_view"));
+ pPrivate->pNotebook = GTK_NOTEBOOK(gtk_builder_get_object(pXML, "notebook1"));
- gtk_window_set_transient_for(GTK_WINDOW(pPrivate->pPreferencesWindow), pMainWindow);
+ gtk_window_set_transient_for(pPrivate->pPreferencesWindow, pMainWindow);
pPrivate->pMainWindow = pMainWindow;
- pPrivate->pSpeedSlider = glade_xml_get_widget(pGladeWidgets, "hscale1");
+ pPrivate->pSpeedSlider = GTK_RANGE(gtk_builder_get_object(pXML, "hscale1"));
dasher_preferences_dialogue_initialise_tables(pDasherControl);
dasher_preferences_dialogue_refresh_widget(pDasherControl, -1);
dasher_preferences_dialogue_update_special(pDasherControl, -1);
#ifdef WITH_MAEMO
#ifndef WITH_MAEMOFULLSCREEN
- gtk_widget_hide(glade_xml_get_widget(pGladeWidgets, "displaysizebox"));
+ gtk_widget_hide(gtk_builder_get_object(pXML, "displaysizebox"));
#endif
#endif
#ifndef JAPANESE
- gtk_widget_hide(glade_xml_get_widget(pGladeWidgets, "radiobutton9"));
+ gtk_widget_hide(GTK_WIDGET(gtk_builder_get_object(pXML, "radiobutton9")));
#endif
dasher_preferences_dialogue_populate_actions(pDasherControl);
- // InitialiseFontDialogues(pGladeWidgets, pAppSettings);
+ // InitialiseFontDialogues(pXML, pAppSettings);
return pDasherControl;
}
@@ -283,20 +283,20 @@ void dasher_preferences_dialogue_show(DasherPreferencesDialogue *pSelf, gint iPa
// Keep the preferences window in the correct position relative to the
// main Dasher window
- // gtk_window_set_transient_for(GTK_WINDOW(pPrivate->pPreferencesWindow),pPrivate->pMainWindow);
+ // gtk_window_set_transient_for(pPrivate->pPreferencesWindow,pPrivate->pMainWindow);
#ifdef WITH_MAEMO
#ifndef WITH_MAEMOFULLSCREEN
- // gtk_window_set_keep_above((pPrivate->pPreferencesWindow), true);
+ // gtk_window_set_keep_above(pPrivate->pPreferencesWindow, true);
#endif
#endif
// TODO: reimplement
- // gtk_window_set_keep_above(GTK_WINDOW(pPrivate->pPreferencesWindow), dasher_main_topmost(g_pDasherMain));
+ // gtk_window_set_keep_above(pPrivate->pPreferencesWindow, dasher_main_topmost(g_pDasherMain));
if(iPage > 0) {
- gtk_notebook_set_current_page(GTK_NOTEBOOK(pPrivate->pNotebook), iPage - 1);
+ gtk_notebook_set_current_page(pPrivate->pNotebook, iPage - 1);
}
- gtk_window_present(GTK_WINDOW(pPrivate->pPreferencesWindow));
+ gtk_window_present(pPrivate->pPreferencesWindow);
}
@@ -315,15 +315,15 @@ void dasher_preferences_dialogue_initialise_tables(DasherPreferencesDialogue *pS
#ifndef WITH_MAEMO
int iNumBoolEntries = sizeof(sBoolTranslationTable) / sizeof(BoolTranslation);
for(int i(0); i < iNumBoolEntries; ++i) {
- sBoolTranslationTable[i].pWidget = glade_xml_get_widget(pPrivate->pGladeXML, sBoolTranslationTable[i].szWidgetName);
+ sBoolTranslationTable[i].pWidget = GTK_WIDGET(gtk_builder_get_object(pPrivate->pXML, sBoolTranslationTable[i].szWidgetName));
}
#endif
int iNumStringEntries = sizeof(sStringTranslationTable) / sizeof(StringTranslation);
for(int i(0); i < iNumStringEntries; ++i) {
- sStringTranslationTable[i].pWidget = glade_xml_get_widget(pPrivate->pGladeXML, sStringTranslationTable[i].szWidgetName);
+ sStringTranslationTable[i].pWidget = GTK_WIDGET(gtk_builder_get_object(pPrivate->pXML, sStringTranslationTable[i].szWidgetName));
if(sStringTranslationTable[i].szHelperName)
- sStringTranslationTable[i].pHelper = glade_xml_get_widget(pPrivate->pGladeXML, sStringTranslationTable[i].szHelperName);
+ sStringTranslationTable[i].pHelper = GTK_WIDGET(gtk_builder_get_object(pPrivate->pXML, sStringTranslationTable[i].szHelperName));
dasher_preferences_dialogue_populate_list(pSelf, GTK_TREE_VIEW(sStringTranslationTable[i].pWidget), sStringTranslationTable[i].iParameter, sStringTranslationTable[i].pHelper);
g_signal_connect(sStringTranslationTable[i].pWidget, "realize", (GCallback)on_widget_realize, &sStringTranslationTable[i].iParameter);
@@ -381,7 +381,7 @@ void dasher_preferences_dialogue_refresh_widget(DasherPreferencesDialogue *pSelf
pUserData[2] = pSelf;
if(sStringTranslationTable[i].pWidget && GTK_WIDGET_REALIZED(sStringTranslationTable[i].pWidget))
- gtk_tree_model_foreach(pModel, dasher_preferences_refresh_foreach_function, pUserData);
+ gtk_tree_model_foreach(pModel, dasher_preferences_refresh_foreach_function, pUserData);
}
}
}
@@ -396,8 +396,8 @@ static void dasher_preferences_dialogue_refresh_parameter(DasherPreferencesDialo
if((pWidget == NULL) || (sBoolTranslationTable[i].pWidget == pWidget)) {
if(GTK_TOGGLE_BUTTON(sBoolTranslationTable[i].pWidget)->active != dasher_app_settings_get_bool(pPrivate->pAppSettings, sBoolTranslationTable[i].iParameter)) {
-
- dasher_app_settings_set_bool(pPrivate->pAppSettings, sBoolTranslationTable[i].iParameter, GTK_TOGGLE_BUTTON(sBoolTranslationTable[i].pWidget)->active);
+
+ dasher_app_settings_set_bool(pPrivate->pAppSettings, sBoolTranslationTable[i].iParameter, GTK_TOGGLE_BUTTON(sBoolTranslationTable[i].pWidget)->active);
}
}
}
@@ -466,8 +466,8 @@ void dasher_preferences_dialogue_populate_list(DasherPreferencesDialogue *pSelf,
if(!strcmp(szCurrentFilter, szCurrentValue)) {
gtk_tree_selection_select_iter(pSelection, &oIter);
if(pHelper) {
- gtk_widget_set_sensitive(GTK_WIDGET(pHelper), pHelperWindow != NULL);
- *pHelperWindowRef = pHelperWindow;
+ gtk_widget_set_sensitive(GTK_WIDGET(pHelper), pHelperWindow != NULL);
+ *pHelperWindowRef = pHelperWindow;
}
}
}
@@ -519,26 +519,26 @@ static void dasher_preferences_dialogue_populate_special_speed(DasherPreferences
DasherPreferencesDialoguePrivate *pPrivate = DASHER_PREFERENCES_DIALOGUE_PRIVATE(pSelf);
double dNewValue = dasher_app_settings_get_long(pPrivate->pAppSettings, LP_MAX_BITRATE) / 100.0;
- gtk_range_set_value(GTK_RANGE(pPrivate->pSpeedSlider), dNewValue);
+ gtk_range_set_value(pPrivate->pSpeedSlider, dNewValue);
}
static void dasher_preferences_dialogue_populate_special_mouse_start(DasherPreferencesDialogue *pSelf) {
#ifndef WITH_MAEMO
DasherPreferencesDialoguePrivate *pPrivate = DASHER_PREFERENCES_DIALOGUE_PRIVATE(pSelf);
- pPrivate->pMousePosButton = glade_xml_get_widget(pPrivate->pGladeXML, "mouseposbutton");
- pPrivate->pMousePosStyle = glade_xml_get_widget(pPrivate->pGladeXML, "MousePosStyle");
+ pPrivate->pMousePosButton = GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "mouseposbutton"));
+ pPrivate->pMousePosStyle = GTK_COMBO_BOX(gtk_builder_get_object(pPrivate->pXML, "MousePosStyle"));
if(dasher_app_settings_get_bool(pPrivate->pAppSettings, BP_MOUSEPOS_MODE)) {
- gtk_combo_box_set_active(GTK_COMBO_BOX(pPrivate->pMousePosStyle), 1);
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "mouseposbutton")), true);
+ gtk_combo_box_set_active(pPrivate->pMousePosStyle, 1);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "mouseposbutton")), true);
}
else if(dasher_app_settings_get_bool(pPrivate->pAppSettings, BP_CIRCLE_START)) {
- gtk_combo_box_set_active(GTK_COMBO_BOX(pPrivate->pMousePosStyle), 0);
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "mouseposbutton")), true);
+ gtk_combo_box_set_active(pPrivate->pMousePosStyle, 0);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "mouseposbutton")), true);
}
else {
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "mouseposbutton")), false);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "mouseposbutton")), false);
}
#endif
}
@@ -546,89 +546,91 @@ static void dasher_preferences_dialogue_populate_special_mouse_start(DasherPrefe
static void dasher_preferences_dialogue_populate_special_orientation(DasherPreferencesDialogue *pSelf) {
DasherPreferencesDialoguePrivate *pPrivate = DASHER_PREFERENCES_DIALOGUE_PRIVATE(pSelf);
- pPrivate->pLRButton = glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton2");
- pPrivate->pRLButton = glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton3");
- pPrivate->pTBButton = glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton4");
- pPrivate->pBTButton = glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton5");
+ pPrivate->pLRButton = GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton2"));
+ pPrivate->pRLButton = GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton3"));
+ pPrivate->pTBButton = GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton4"));
+ pPrivate->pBTButton = GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton5"));
switch (dasher_app_settings_get_long(pPrivate->pAppSettings, LP_ORIENTATION)) {
case Dasher::Opts::Alphabet:
- if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton1"))) != TRUE)
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton1")), TRUE);
+ if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton1"))) != TRUE)
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton1")), TRUE);
pPrivate->bIgnoreSignals = true;
switch (dasher_app_settings_get_long(pPrivate->pAppSettings, LP_REAL_ORIENTATION)) {
case Dasher::Opts::LeftToRight:
- if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(pPrivate->pLRButton)) != TRUE)
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(pPrivate->pLRButton), TRUE);
+ if(gtk_toggle_button_get_active(pPrivate->pLRButton) != TRUE)
+ gtk_toggle_button_set_active(pPrivate->pLRButton, TRUE);
break;
case Dasher::Opts::RightToLeft:
- if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(pPrivate->pRLButton)) != TRUE)
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(pPrivate->pRLButton), TRUE);
+ if(gtk_toggle_button_get_active(pPrivate->pRLButton) != TRUE)
+ gtk_toggle_button_set_active(pPrivate->pRLButton, TRUE);
break;
case Dasher::Opts::TopToBottom:
- if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(pPrivate->pTBButton)) != TRUE)
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(pPrivate->pTBButton), TRUE);
+ if(gtk_toggle_button_get_active(pPrivate->pTBButton) != TRUE)
+ gtk_toggle_button_set_active(pPrivate->pTBButton, TRUE);
break;
case Dasher::Opts::BottomToTop:
- if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(pPrivate->pTBButton)) != TRUE)
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(pPrivate->pTBButton), TRUE);
+ if(gtk_toggle_button_get_active(pPrivate->pTBButton) != TRUE)
+ gtk_toggle_button_set_active(pPrivate->pTBButton, TRUE);
break;
}
pPrivate->bIgnoreSignals = false;
- gtk_widget_set_sensitive(pPrivate->pLRButton, FALSE);
- gtk_widget_set_sensitive(pPrivate->pRLButton, FALSE);
- gtk_widget_set_sensitive(pPrivate->pTBButton, FALSE);
- gtk_widget_set_sensitive(pPrivate->pBTButton, FALSE);
-
-
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pLRButton), FALSE);
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pRLButton), FALSE);
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pTBButton), FALSE);
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pBTButton), FALSE);
break;
+
case Dasher::Opts::LeftToRight:
- if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton2"))) != TRUE)
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton2")), TRUE);
- if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton12"))) != TRUE)
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton12")), TRUE);
-
- gtk_widget_set_sensitive(pPrivate->pLRButton, TRUE);
- gtk_widget_set_sensitive(pPrivate->pRLButton, TRUE);
- gtk_widget_set_sensitive(pPrivate->pTBButton, TRUE);
- gtk_widget_set_sensitive(pPrivate->pBTButton, TRUE);
+ if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton2"))) != TRUE)
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton2")), TRUE);
+ if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton12"))) != TRUE)
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton12")), TRUE);
+
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pLRButton), TRUE);
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pRLButton), TRUE);
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pTBButton), TRUE);
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pBTButton), TRUE);
break;
+
case Dasher::Opts::RightToLeft:
- if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton3"))) != TRUE)
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton3")), TRUE);
- if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton12"))) != TRUE)
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton12")), TRUE);
-
- gtk_widget_set_sensitive(pPrivate->pLRButton, TRUE);
- gtk_widget_set_sensitive(pPrivate->pRLButton, TRUE);
- gtk_widget_set_sensitive(pPrivate->pTBButton, TRUE);
- gtk_widget_set_sensitive(pPrivate->pBTButton, TRUE);
+ if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton3"))) != TRUE)
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton3")), TRUE);
+ if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton12"))) != TRUE)
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton12")), TRUE);
+
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pLRButton), TRUE);
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pRLButton), TRUE);
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pTBButton), TRUE);
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pBTButton), TRUE);
break;
+
case Dasher::Opts::TopToBottom:
- if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton4"))) != TRUE)
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton4")), TRUE);
- if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton12"))) != TRUE)
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton12")), TRUE);
-
- gtk_widget_set_sensitive(pPrivate->pLRButton, TRUE);
- gtk_widget_set_sensitive(pPrivate->pRLButton, TRUE);
- gtk_widget_set_sensitive(pPrivate->pTBButton, TRUE);
- gtk_widget_set_sensitive(pPrivate->pBTButton, TRUE);
+ if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton4"))) != TRUE)
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton4")), TRUE);
+ if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton12"))) != TRUE)
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton12")), TRUE);
+
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pLRButton), TRUE);
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pRLButton), TRUE);
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pTBButton), TRUE);
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pBTButton), TRUE);
break;
+
case Dasher::Opts::BottomToTop:
- if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton5"))) != TRUE)
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton5")), TRUE);
- if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton12"))) != TRUE)
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton12")), TRUE);
-
- gtk_widget_set_sensitive(pPrivate->pLRButton, TRUE);
- gtk_widget_set_sensitive(pPrivate->pRLButton, TRUE);
- gtk_widget_set_sensitive(pPrivate->pTBButton, TRUE);
- gtk_widget_set_sensitive(pPrivate->pBTButton, TRUE);
+ if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton5"))) != TRUE)
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton5")), TRUE);
+ if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton12"))) != TRUE)
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton12")), TRUE);
+
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pLRButton), TRUE);
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pRLButton), TRUE);
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pTBButton), TRUE);
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pBTButton), TRUE);
break;
}
}
@@ -639,16 +641,16 @@ static void dasher_preferences_dialogue_populate_special_appstyle(DasherPreferen
switch(dasher_app_settings_get_long(pPrivate->pAppSettings, APP_LP_STYLE)) {
case 0:
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "appstyle_classic")), TRUE);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "appstyle_classic")), TRUE);
break;
case 1:
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "appstyle_compose")), TRUE);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "appstyle_compose")), TRUE);
break;
case 2:
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "appstyle_direct")), TRUE);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "appstyle_direct")), TRUE);
break;
case 3:
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "appstyle_fullscreen")), TRUE);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "appstyle_fullscreen")), TRUE);
break;
}
#endif
@@ -659,9 +661,9 @@ static void dasher_preferences_dialogue_populate_special_linewidth(DasherPrefere
DasherPreferencesDialoguePrivate *pPrivate = DASHER_PREFERENCES_DIALOGUE_PRIVATE(pSelf);
if(dasher_app_settings_get_long(pPrivate->pAppSettings, LP_LINE_WIDTH) > 1)
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "thicklinebutton")), true);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "thicklinebutton")), true);
else
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "thicklinebutton")), false);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "thicklinebutton")), false);
#endif
}
@@ -671,20 +673,20 @@ static void dasher_preferences_dialogue_populate_special_lm(DasherPreferencesDia
switch( dasher_app_settings_get_long(pPrivate->pAppSettings, LP_LANGUAGE_MODEL_ID )) {
case 0:
- if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton6"))) != TRUE)
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton6")), TRUE);
+ if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton6"))) != TRUE)
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton6")), TRUE);
break;
case 2:
- if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton7"))) != TRUE)
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton7")), TRUE);
+ if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton7"))) != TRUE)
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton7")), TRUE);
break;
case 3:
- if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton8"))) != TRUE)
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton8")), TRUE);
+ if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton8"))) != TRUE)
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton8")), TRUE);
break;
case 4:
- if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton9"))) != TRUE)
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "radiobutton9")), TRUE);
+ if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton9"))) != TRUE)
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "radiobutton9")), TRUE);
break;
default:
break;
@@ -694,41 +696,41 @@ static void dasher_preferences_dialogue_populate_special_lm(DasherPreferencesDia
static void dasher_preferences_dialogue_populate_special_uniform(DasherPreferencesDialogue *pSelf) {
DasherPreferencesDialoguePrivate *pPrivate = DASHER_PREFERENCES_DIALOGUE_PRIVATE(pSelf);
- gtk_range_set_value( GTK_RANGE(glade_xml_get_widget(pPrivate->pGladeXML, "uniformhscale")), dasher_app_settings_get_long(pPrivate->pAppSettings, LP_UNIFORM)/10.0);
+ gtk_range_set_value( GTK_RANGE(gtk_builder_get_object(pPrivate->pXML, "uniformhscale")), dasher_app_settings_get_long(pPrivate->pAppSettings, LP_UNIFORM)/10.0);
}
static void dasher_preferences_dialogue_populate_special_colour(DasherPreferencesDialogue *pSelf) {
DasherPreferencesDialoguePrivate *pPrivate = DASHER_PREFERENCES_DIALOGUE_PRIVATE(pSelf);
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "manual_colour")), !dasher_app_settings_get_bool(pPrivate->pAppSettings, BP_PALETTE_CHANGE));
- gtk_widget_set_sensitive(glade_xml_get_widget(pPrivate->pGladeXML, "ColorTree"), !dasher_app_settings_get_bool(pPrivate->pAppSettings, BP_PALETTE_CHANGE));
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "manual_colour")), !dasher_app_settings_get_bool(pPrivate->pAppSettings, BP_PALETTE_CHANGE));
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(pPrivate->pXML, "ColorTree")), !dasher_app_settings_get_bool(pPrivate->pAppSettings, BP_PALETTE_CHANGE));
}
static void dasher_preferences_dialogue_populate_special_dasher_font(DasherPreferencesDialogue *pSelf) {
DasherPreferencesDialoguePrivate *pPrivate = DASHER_PREFERENCES_DIALOGUE_PRIVATE(pSelf);
- GtkWidget *pDasherFontButton = glade_xml_get_widget(pPrivate->pGladeXML, "dasher_fontbutton");
+ GObject *pDasherFontButton = gtk_builder_get_object(pPrivate->pXML, "dasher_fontbutton");
gtk_font_button_set_font_name(GTK_FONT_BUTTON(pDasherFontButton),
- dasher_app_settings_get_string(pPrivate->pAppSettings, SP_DASHER_FONT));
+ dasher_app_settings_get_string(pPrivate->pAppSettings, SP_DASHER_FONT));
}
static void dasher_preferences_dialogue_populate_special_edit_font(DasherPreferencesDialogue *pSelf) {
DasherPreferencesDialoguePrivate *pPrivate = DASHER_PREFERENCES_DIALOGUE_PRIVATE(pSelf);
- GtkWidget *pEditFontButton = glade_xml_get_widget(pPrivate->pGladeXML, "edit_fontbutton");
+ GObject *pEditFontButton = gtk_builder_get_object(pPrivate->pXML, "edit_fontbutton");
gtk_font_button_set_font_name(GTK_FONT_BUTTON(pEditFontButton),
- dasher_app_settings_get_string(pPrivate->pAppSettings, APP_SP_EDIT_FONT));
+ dasher_app_settings_get_string(pPrivate->pAppSettings, APP_SP_EDIT_FONT));
}
static void dasher_preferences_dialogue_populate_special_fontsize(DasherPreferencesDialogue *pSelf) {
DasherPreferencesDialoguePrivate *pPrivate = DASHER_PREFERENCES_DIALOGUE_PRIVATE(pSelf);
int iValue = dasher_app_settings_get_long(pPrivate->pAppSettings, LP_DASHER_FONTSIZE);
- gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "fontsizenormal")), iValue == Opts::Normal);
- gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "fontsizelarge")), iValue == Opts::Big);
- gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "fontsizevlarge")), iValue == Opts::VBig);
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "fontsizenormal")), iValue == Opts::Normal);
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "fontsizelarge")), iValue == Opts::Big);
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "fontsizevlarge")), iValue == Opts::VBig);
}
static void dasher_preferences_dialogue_update_special(DasherPreferencesDialogue *pSelf, int iID) {
@@ -749,9 +751,9 @@ extern "C" void OnMousePosStyleChanged(GtkWidget *widget, gpointer user_data) {
DasherPreferencesDialoguePrivate *pPrivate = DASHER_PREFERENCES_DIALOGUE_PRIVATE(g_pPreferencesDialogue); // TODO: Fix NULL
// FIXME - duplicate code from extern "C" void startonmousepos
- if(GTK_TOGGLE_BUTTON(pPrivate->pMousePosButton)->active) {
+ if((pPrivate->pMousePosButton)->active) {
int iIndex;
- iIndex = gtk_combo_box_get_active(GTK_COMBO_BOX(pPrivate->pMousePosStyle));
+ iIndex = gtk_combo_box_get_active(pPrivate->pMousePosStyle);
if(iIndex == 1) {
dasher_app_settings_set_bool(pPrivate->pAppSettings, BP_MOUSEPOS_MODE, true);
@@ -770,7 +772,7 @@ extern "C" void startonmousepos(GtkWidget *widget, gpointer user_data) {
if(GTK_TOGGLE_BUTTON(widget)->active) {
int iIndex;
- iIndex = gtk_combo_box_get_active(GTK_COMBO_BOX(pPrivate->pMousePosStyle));
+ iIndex = gtk_combo_box_get_active(pPrivate->pMousePosStyle);
if(iIndex == 1) {
dasher_app_settings_set_bool(pPrivate->pAppSettings, BP_MOUSEPOS_MODE, true);
@@ -809,42 +811,42 @@ extern "C" void orientation(GtkRadioButton *widget, gpointer user_data) {
// FIXME - get rid of global variables here.
- gtk_widget_set_sensitive(pPrivate->pLRButton, FALSE);
- gtk_widget_set_sensitive(pPrivate->pRLButton, FALSE);
- gtk_widget_set_sensitive(pPrivate->pTBButton, FALSE);
- gtk_widget_set_sensitive(pPrivate->pBTButton, FALSE);
-
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pLRButton), FALSE);
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pRLButton), FALSE);
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pTBButton), FALSE);
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pBTButton), FALSE);
pPrivate->bIgnoreSignals = true;
switch (dasher_app_settings_get_long(pPrivate->pAppSettings, LP_REAL_ORIENTATION)) {
case Dasher::Opts::LeftToRight:
- if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(pPrivate->pLRButton)) != TRUE)
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(pPrivate->pLRButton), TRUE);
- break;
+ if(gtk_toggle_button_get_active(pPrivate->pLRButton) != TRUE)
+ gtk_toggle_button_set_active(pPrivate->pLRButton, TRUE);
+ break;
case Dasher::Opts::RightToLeft:
- if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(pPrivate->pRLButton)) != TRUE)
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(pPrivate->pRLButton), TRUE);
- break;
+ if(gtk_toggle_button_get_active(pPrivate->pRLButton) != TRUE)
+ gtk_toggle_button_set_active(pPrivate->pRLButton, TRUE);
+ break;
case Dasher::Opts::TopToBottom:
- if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(pPrivate->pTBButton)) != TRUE)
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(pPrivate->pTBButton), TRUE);
- break;
+ if(gtk_toggle_button_get_active(pPrivate->pTBButton) != TRUE)
+ gtk_toggle_button_set_active(pPrivate->pTBButton, TRUE);
+ break;
case Dasher::Opts::BottomToTop:
- if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(pPrivate->pTBButton)) != TRUE)
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(pPrivate->pTBButton), TRUE);
- break;
+ if(gtk_toggle_button_get_active(pPrivate->pTBButton) != TRUE)
+ gtk_toggle_button_set_active(pPrivate->pTBButton, TRUE);
+ break;
}
pPrivate->bIgnoreSignals = false;
}
else if(!strcmp(gtk_widget_get_name(GTK_WIDGET(widget)), "radiobutton12")) {
- gtk_widget_set_sensitive(pPrivate->pLRButton, TRUE);
- gtk_widget_set_sensitive(pPrivate->pRLButton, TRUE);
- gtk_widget_set_sensitive(pPrivate->pTBButton, TRUE);
- gtk_widget_set_sensitive(pPrivate->pBTButton, TRUE);
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pLRButton), TRUE);
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pRLButton), TRUE);
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pTBButton), TRUE);
+ gtk_widget_set_sensitive(GTK_WIDGET(pPrivate->pBTButton), TRUE);
- dasher_app_settings_set_long(pPrivate->pAppSettings, LP_ORIENTATION, dasher_app_settings_get_long(pPrivate->pAppSettings, LP_REAL_ORIENTATION));
+ dasher_app_settings_set_long(pPrivate->pAppSettings, LP_ORIENTATION,
+ dasher_app_settings_get_long(pPrivate->pAppSettings, LP_REAL_ORIENTATION));
}
else if(!strcmp(gtk_widget_get_name(GTK_WIDGET(widget)), "radiobutton2")) {
dasher_app_settings_set_long(pPrivate->pAppSettings, LP_ORIENTATION, Dasher::Opts::LeftToRight);
@@ -912,7 +914,7 @@ extern "C" void uniform_changed(GtkHScale *hscale) {
if(iValue < 50) {
iValue = 50;
- gtk_range_set_value(GTK_RANGE(glade_xml_get_widget(pPrivate->pGladeXML, "uniformhscale")), 5.0);
+ gtk_range_set_value(GTK_RANGE(gtk_builder_get_object(pPrivate->pXML, "uniformhscale")), 5.0);
}
dasher_app_settings_set_long(pPrivate->pAppSettings, LP_UNIFORM, iValue);
@@ -943,16 +945,16 @@ extern "C" void on_dasher_font_changed(GtkFontButton *pButton, gpointer pUserDat
DasherPreferencesDialoguePrivate *pPrivate = DASHER_PREFERENCES_DIALOGUE_PRIVATE(g_pPreferencesDialogue);
dasher_app_settings_set_string(pPrivate->pAppSettings,
- SP_DASHER_FONT,
- gtk_font_button_get_font_name(pButton));
+ SP_DASHER_FONT,
+ gtk_font_button_get_font_name(pButton));
}
extern "C" void on_edit_font_changed(GtkFontButton *pButton, gpointer pUserData) {
DasherPreferencesDialoguePrivate *pPrivate = DASHER_PREFERENCES_DIALOGUE_PRIVATE(g_pPreferencesDialogue);
dasher_app_settings_set_string(pPrivate->pAppSettings,
- APP_SP_EDIT_FONT,
- gtk_font_button_get_font_name(pButton));
+ APP_SP_EDIT_FONT,
+ gtk_font_button_get_font_name(pButton));
}
// --- Actions Selection ---
@@ -985,12 +987,12 @@ void dasher_preferences_dialogue_populate_actions(DasherPreferencesDialogue *pSe
// dasher_editor_actions_get_next(pPrivate->pEditor, &szName, &iID, &bShow, &bControl, &bAuto),
// gtk_list_store_set(pPrivate->pListStore, &oIter,
-// ACTIONS_ID_COLUMN, iID,
-// ACTIONS_NAME_COLUMN, szName,
-// ACTIONS_SHOW_COLUMN, bShow,
-// ACTIONS_CONTROL_COLUMN, bControl,
-// ACTIONS_AUTO_COLUMN, bAuto,
-// -1);
+// ACTIONS_ID_COLUMN, iID,
+// ACTIONS_NAME_COLUMN, szName,
+// ACTIONS_SHOW_COLUMN, bShow,
+// ACTIONS_CONTROL_COLUMN, bControl,
+// ACTIONS_AUTO_COLUMN, bAuto,
+// -1);
// }
GtkCellRenderer *pRenderer;
@@ -1005,26 +1007,26 @@ void dasher_preferences_dialogue_populate_actions(DasherPreferencesDialogue *pSe
pRenderer = gtk_cell_renderer_text_new();
pColumn = gtk_tree_view_column_new_with_attributes(_("Action"), pRenderer, "text", ACTIONS_NAME_COLUMN, NULL);
g_object_set(G_OBJECT(pColumn), "expand", true, NULL);
- gtk_tree_view_append_column(GTK_TREE_VIEW(pPrivate->pActionTreeView), pColumn);
+ gtk_tree_view_append_column(pPrivate->pActionTreeView, pColumn);
pRenderer = gtk_cell_renderer_toggle_new();
g_signal_connect(pRenderer, "toggled", (GCallback)on_action_toggle, pColumnIndex);
/* TRANSLATORS: Show a button for the selected action in the Dasher window. */
pColumn = gtk_tree_view_column_new_with_attributes(_("Show Button"), pRenderer, "active", ACTIONS_SHOW_COLUMN, NULL);
- gtk_tree_view_append_column(GTK_TREE_VIEW(pPrivate->pActionTreeView), pColumn);
+ gtk_tree_view_append_column(pPrivate->pActionTreeView, pColumn);
pRenderer = gtk_cell_renderer_toggle_new();
g_signal_connect(pRenderer, "toggled", (GCallback)on_action_toggle, pColumnIndex + 1);
pColumn = gtk_tree_view_column_new_with_attributes(_("Control Mode"), pRenderer, "active", ACTIONS_CONTROL_COLUMN, NULL);
- gtk_tree_view_append_column(GTK_TREE_VIEW(pPrivate->pActionTreeView), pColumn);
+ gtk_tree_view_append_column(pPrivate->pActionTreeView, pColumn);
pRenderer = gtk_cell_renderer_toggle_new();
g_signal_connect(pRenderer, "toggled", (GCallback)on_action_toggle, pColumnIndex + 2);
/* TRANSLATORS: Automatically perform the selected action when Dasher is stopped. */
pColumn = gtk_tree_view_column_new_with_attributes(_("Auto On Stop"), pRenderer, "active", ACTIONS_AUTO_COLUMN, NULL);
- gtk_tree_view_append_column(GTK_TREE_VIEW(pPrivate->pActionTreeView), pColumn);
+ gtk_tree_view_append_column(pPrivate->pActionTreeView, pColumn);
- gtk_tree_view_set_model(GTK_TREE_VIEW(pPrivate->pActionTreeView), GTK_TREE_MODEL(pPrivate->pListStore));
+ gtk_tree_view_set_model(pPrivate->pActionTreeView, GTK_TREE_MODEL(pPrivate->pListStore));
#endif
}
@@ -1063,11 +1065,11 @@ extern "C" void set_dasher_fontsize(GtkWidget *pWidget, gboolean pUserData) {
int iValue = dasher_app_settings_get_long(pPrivate->pAppSettings, LP_DASHER_FONTSIZE);
- if((iValue != Opts::Normal) && gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "fontsizenormal"))))
+ if((iValue != Opts::Normal) && gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "fontsizenormal"))))
dasher_app_settings_set_long(pPrivate->pAppSettings, LP_DASHER_FONTSIZE, Opts::Normal);
- else if((iValue != Opts::Big) && gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "fontsizelarge"))))
+ else if((iValue != Opts::Big) && gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "fontsizelarge"))))
dasher_app_settings_set_long(pPrivate->pAppSettings, LP_DASHER_FONTSIZE, Opts::Big);
- else if((iValue != Opts::VBig) && gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON(glade_xml_get_widget(pPrivate->pGladeXML, "fontsizevlarge"))))
+ else if((iValue != Opts::VBig) && gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON(gtk_builder_get_object(pPrivate->pXML, "fontsizevlarge"))))
dasher_app_settings_set_long(pPrivate->pAppSettings, LP_DASHER_FONTSIZE, Opts::VBig);
}
@@ -1081,7 +1083,7 @@ extern "C" gboolean preferences_hide(GtkWidget *widget, gpointer user_data) {
// DasherPreferencesDialoguePrivate *pPrivate = DASHER_PREFERENCES_DIALOGUE_PRIVATE(pSelf);
DasherPreferencesDialoguePrivate *pPrivate = DASHER_PREFERENCES_DIALOGUE_PRIVATE(g_pPreferencesDialogue); // TODO: Fix NULL
- gtk_widget_hide(pPrivate->pPreferencesWindow);
+ gtk_widget_hide(GTK_WIDGET(pPrivate->pPreferencesWindow));
return TRUE;
}
diff --git a/Src/Gtk2/Preferences.h b/Src/Gtk2/Preferences.h
index 13410e4..c552f04 100644
--- a/Src/Gtk2/Preferences.h
+++ b/Src/Gtk2/Preferences.h
@@ -1,10 +1,6 @@
#ifndef __dasher_preferences_dialogue_h__
#define __dasher_preferences_dialogue_h__
-//#include <gdk/gdk.h>
-#include <glade/glade.h>
-//#include <glib.h>
-//#include <glib-object.h>
#include <gtk/gtk.h>
#include "DasherAppSettings.h"
@@ -31,7 +27,7 @@ struct _DasherPreferencesDialogueClass {
GObjectClass parent_class;
};
-DasherPreferencesDialogue *dasher_preferences_dialogue_new(GladeXML *pGladeWidgets, DasherEditor *pEditor, DasherAppSettings *pAppSettings, GtkWindow *pMainWindow);
+DasherPreferencesDialogue *dasher_preferences_dialogue_new(GtkBuilder *, DasherEditor *, DasherAppSettings *, GtkWindow *);
GType dasher_preferences_dialogue_get_type();
void dasher_preferences_dialogue_show(DasherPreferencesDialogue *pSelf, gint iPage);
void dasher_preferences_dialogue_handle_parameter_change(DasherPreferencesDialogue *pSelf, int iParameter);
diff --git a/Src/Gtk2/dasher_editor.cpp b/Src/Gtk2/dasher_editor.cpp
index d9d55f2..2b250f3 100644
--- a/Src/Gtk2/dasher_editor.cpp
+++ b/Src/Gtk2/dasher_editor.cpp
@@ -82,7 +82,7 @@ struct _DasherEditorPrivate {
gboolean bFileModified; // TODO: Make this work properly, export to main for quit etc
};
-#define DASHER_EDITOR_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE((o), TYPE_DASHER_EDITOR, DasherEditorPrivate))
+#define DASHER_EDITOR_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE((o), DASHER_TYPE_EDITOR, DasherEditorPrivate))
/* Signals */
enum {
@@ -107,7 +107,7 @@ static void
dasher_editor_class_init(DasherEditorClass *pClass) {
g_type_class_add_private(pClass, sizeof(DasherEditorPrivate));
- GObjectClass *pObjectClass = (GObjectClass *) pClass;
+ GObjectClass *pObjectClass = G_OBJECT_CLASS(pClass);
pObjectClass->finalize = dasher_editor_finalize;
/* Setup signals */
@@ -202,9 +202,9 @@ dasher_editor_finalize(GObject *pObject) {
}
void
-dasher_editor_initialise(DasherEditor *pSelf, DasherAppSettings *pAppSettings, DasherMain *pDasherMain, GladeXML *pGladeXML, const gchar *szFullPath) {
+dasher_editor_initialise(DasherEditor *pSelf, DasherAppSettings *pAppSettings, DasherMain *pDasherMain, GtkBuilder *pXML, const gchar *szFullPath) {
if(DASHER_EDITOR_GET_CLASS(pSelf)->initialise)
- DASHER_EDITOR_GET_CLASS(pSelf)->initialise(pSelf, pAppSettings, pDasherMain, pGladeXML, szFullPath);
+ DASHER_EDITOR_GET_CLASS(pSelf)->initialise(pSelf, pAppSettings, pDasherMain, pXML, szFullPath);
}
void
diff --git a/Src/Gtk2/dasher_editor.h b/Src/Gtk2/dasher_editor.h
index fb6845e..a86eefa 100644
--- a/Src/Gtk2/dasher_editor.h
+++ b/Src/Gtk2/dasher_editor.h
@@ -1,7 +1,6 @@
#ifndef __dasher_editor_h__
#define __dasher_editor_h__
-#include <glade/glade.h>
#include <glib.h>
#include <glib-object.h>
#include <gtk/gtk.h>
@@ -15,12 +14,12 @@ typedef struct _DasherMain DasherMain;
struct _DasherMain;
G_BEGIN_DECLS
-#define TYPE_DASHER_EDITOR (dasher_editor_get_type())
-#define DASHER_EDITOR(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), TYPE_DASHER_EDITOR, DasherEditor ))
-#define DASHER_EDITOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DASHER_EDITOR, DasherEditorClass ))
-#define IS_DASHER_EDITOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), TYPE_DASHER_EDITOR))
-#define IS_DASHER_EDITOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DASHER_EDITOR))
-#define DASHER_EDITOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DASHER_EDITOR, DasherEditorClass))
+#define DASHER_TYPE_EDITOR (dasher_editor_get_type())
+#define DASHER_EDITOR(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), DASHER_TYPE_EDITOR, DasherEditor ))
+#define DASHER_EDITOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DASHER_TYPE_EDITOR, DasherEditorClass ))
+#define DASHER_IS_EDITOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), DASHER_TYPE_EDITOR))
+#define DASHER_IS_EDITOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DASHER_TYPE_EDITOR))
+#define DASHER_EDITOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DASHER_TYPE_EDITOR, DasherEditorClass))
typedef struct _DasherEditor DasherEditor;
typedef struct _DasherEditorClass DasherEditorClass;
@@ -33,7 +32,7 @@ struct _DasherEditorClass {
GtkVBoxClass parent_class;
/* VTable */
- void (*initialise)(DasherEditor *, DasherAppSettings *, DasherMain *, GladeXML *, const gchar *);
+ void (*initialise)(DasherEditor *, DasherAppSettings *, DasherMain *, GtkBuilder *, const gchar *);
gboolean (*command)(DasherEditor *, const gchar *);
void (*action_button)(DasherEditor *, DasherAction *);
void (*actions_start)(DasherEditor *);
@@ -68,11 +67,12 @@ struct _DasherEditorClass {
GType dasher_editor_get_type();
/* Functions for initialisation and takedown */
-void dasher_editor_initialise(DasherEditor *pSelf, DasherAppSettings *pAppSettings,
- DasherMain *pDasherMain, GladeXML *pGladeXML,
- const gchar *szFullPath);
+void dasher_editor_initialise(DasherEditor *pSelf,
+ DasherAppSettings *pAppSettings,
+ DasherMain *pDasherMain, GtkBuilder *pXML,
+ const gchar *szFullPath);
-/* Abstract commadn handler */
+/* Abstract command handler */
gboolean dasher_editor_command(DasherEditor *pSelf, const gchar *szCommand);
/* Action related methods */
@@ -113,4 +113,3 @@ const gchar *dasher_editor_get_filename(DasherEditor *pSelf);
G_END_DECLS
#endif
-
diff --git a/Src/Gtk2/dasher_editor_external.cpp b/Src/Gtk2/dasher_editor_external.cpp
index 639f9be..26857b8 100644
--- a/Src/Gtk2/dasher_editor_external.cpp
+++ b/Src/Gtk2/dasher_editor_external.cpp
@@ -23,7 +23,7 @@ struct _DasherEditorExternalPrivate {
static DasherEditorExternal *g_pEditor;
-G_DEFINE_TYPE(DasherEditorExternal, dasher_editor_external, TYPE_DASHER_EDITOR);
+G_DEFINE_TYPE(DasherEditorExternal, dasher_editor_external, DASHER_TYPE_EDITOR);
static void dasher_editor_external_finalize(GObject *pObject);
@@ -32,7 +32,7 @@ static void dasher_editor_external_finalize(GObject *pObject);
static gboolean dasher_editor_external_command(DasherEditor *pSelf, const gchar *szCommand);
static void dasher_editor_external_initialise(DasherEditor *pSelf, DasherAppSettings *pAppSettings,
- DasherMain *pDasherMain, GladeXML *pGladeXML,
+ DasherMain *pDasherMain, GtkBuilder *pXML,
const gchar *szFullPath);
static void dasher_editor_external_convert(DasherEditor *pSelf);
static void dasher_editor_external_protect(DasherEditor *pSelf);
@@ -110,7 +110,7 @@ dasher_editor_external_new() {
}
static void
-dasher_editor_external_initialise(DasherEditor *pSelf, DasherAppSettings *pAppSettings, DasherMain *pDasherMain, GladeXML *pGladeXML, const gchar *szFullPath) {
+dasher_editor_external_initialise(DasherEditor *pSelf, DasherAppSettings *pAppSettings, DasherMain *pDasherMain, GtkBuilder *pXML, const gchar *szFullPath) {
DasherEditorExternalPrivate *pPrivate = DASHER_EDITOR_EXTERNAL_GET_PRIVATE(pSelf);
diff --git a/Src/Gtk2/dasher_editor_internal.cpp b/Src/Gtk2/dasher_editor_internal.cpp
index 36a6694..3d576ac 100644
--- a/Src/Gtk2/dasher_editor_internal.cpp
+++ b/Src/Gtk2/dasher_editor_internal.cpp
@@ -96,7 +96,7 @@ struct _DasherEditorInternalPrivate {
gboolean bFileModified; // TODO: Make this work properly, export to main for quit etc
};
-#define DASHER_EDITOR_INTERNAL_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE((o), TYPE_DASHER_EDITOR_INTERNAL, DasherEditorInternalPrivate))
+#define DASHER_EDITOR_INTERNAL_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE((o), DASHER_TYPE_EDITOR_INTERNAL, DasherEditorInternalPrivate))
/* Signals */
enum {
@@ -110,7 +110,7 @@ enum {
static DasherEditorInternal *g_pEditor;
-G_DEFINE_TYPE(DasherEditorInternal, dasher_editor_internal, TYPE_DASHER_EDITOR);
+G_DEFINE_TYPE(DasherEditorInternal, dasher_editor_internal, DASHER_TYPE_EDITOR);
static void dasher_editor_internal_finalize(GObject *pObject);
@@ -118,7 +118,7 @@ static void dasher_editor_internal_finalize(GObject *pObject);
static void dasher_editor_internal_handle_font(DasherEditor *pSelf, const gchar *szFont);
gboolean dasher_editor_internal_command(DasherEditor *pSelf, const gchar *szCommand);
-void dasher_editor_internal_initialise(DasherEditor *pSelf, DasherAppSettings *pAppSettings, DasherMain *pDasherMain, GladeXML *pGladeXML, const gchar *szFullPath);
+void dasher_editor_internal_initialise(DasherEditor *pSelf, DasherAppSettings *pAppSettings, DasherMain *pDasherMain, GtkBuilder *pXML, const gchar *szFullPath);
/* Private methods */
static void dasher_editor_internal_select_all(DasherEditor *pSelf);
@@ -170,7 +170,7 @@ void dasher_editor_internal_handle_stop(DasherEditor *pSelf);
void dasher_editor_internal_handle_start(DasherEditor *pSelf);
void dasher_editor_internal_handle_control(DasherEditor *pSelf, int iNodeID);
-/* Action related methods - TODO: a lot of this should be moved to dasher_main (eg action on stop etc) - that way we get a better level of abstraction, and can incorporate commands from otehr modules too. Actions should only be externally visible as a list of string commands*/
+/* Action related methods - TODO: a lot of this should be moved to dasher_main (eg action on stop etc) - that way we get a better level of abstraction, and can incorporate commands from other modules too. Actions should only be externally visible as a list of string commands*/
void dasher_editor_internal_action_button(DasherEditor *pSelf, DasherAction *pAction);
void dasher_editor_internal_actions_start(DasherEditor *pSelf);
bool dasher_editor_internal_actions_more(DasherEditor *pSelf);
@@ -217,7 +217,6 @@ dasher_editor_internal_class_init(DasherEditorInternalClass *pClass) {
pObjectClass->finalize = dasher_editor_internal_finalize;
DasherEditorClass *pParentClass = (DasherEditorClass *)pClass;
-
pParentClass->initialise = dasher_editor_internal_initialise;
pParentClass->command = dasher_editor_internal_command;
pParentClass->output = dasher_editor_internal_output;
@@ -243,9 +242,13 @@ dasher_editor_internal_class_init(DasherEditorInternalClass *pClass) {
}
static void
-dasher_editor_internal_init(DasherEditorInternal *pDasherControl) {
- DasherEditorInternalPrivate *pPrivate = DASHER_EDITOR_INTERNAL_GET_PRIVATE(pDasherControl);
+dasher_editor_internal_init(DasherEditorInternal *pSelf) {
+ DasherEditorInternalPrivate *pPrivate =
+ DASHER_EDITOR_INTERNAL_GET_PRIVATE(pSelf);
+ pPrivate->pTextView = GTK_TEXT_VIEW(gtk_text_view_new());
+ gtk_text_view_set_wrap_mode(pPrivate->pTextView, GTK_WRAP_WORD);
+ pPrivate->pBuffer = gtk_text_view_get_buffer(pPrivate->pTextView);
pPrivate->pBufferSet = NULL;
pPrivate->pExternalBuffer = NULL;
pPrivate->szFilename = NULL;
@@ -254,7 +257,28 @@ dasher_editor_internal_init(DasherEditorInternal *pDasherControl) {
pPrivate->pActionRing = NULL;
pPrivate->iNextActionID = 0;
// pPrivate->pGameModeHelper = NULL;
+ GtkTextIter oStartIter;
+ gtk_text_buffer_get_start_iter(pPrivate->pBuffer, &oStartIter);
+ pPrivate->pNewMark =
+ gtk_text_buffer_create_mark(pPrivate->pBuffer, NULL, &oStartIter, TRUE);
pPrivate->bFileModified = FALSE;
+
+ GtkWidget *pScrolledWindow = gtk_scrolled_window_new(NULL, NULL);
+
+ gtk_container_add(GTK_CONTAINER(pScrolledWindow),
+ GTK_WIDGET(pPrivate->pTextView));
+
+ gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(pScrolledWindow),
+ GTK_POLICY_AUTOMATIC,
+ GTK_POLICY_AUTOMATIC);
+
+ gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(pScrolledWindow),
+ GTK_SHADOW_IN);
+
+ gtk_box_pack_start(GTK_BOX(&(pSelf->parent.box)),
+ pScrolledWindow, true, true, 0);
+
+ gtk_widget_show_all(GTK_WIDGET(&(pSelf->parent.box)));
}
static void
@@ -282,46 +306,15 @@ dasher_editor_internal_finalize(GObject *pObject) {
}
/* Public methods */
-DasherEditorInternal *
-dasher_editor_internal_new() {
- DasherEditorInternal *pDasherEditor;
- pDasherEditor = (DasherEditorInternal *)(g_object_new(dasher_editor_internal_get_type(), NULL));
-
- g_pEditor = pDasherEditor;
-
- DasherEditorInternalPrivate *pPrivate = DASHER_EDITOR_INTERNAL_GET_PRIVATE(pDasherEditor);
-
- GtkWidget *pScrolledWindow = gtk_scrolled_window_new(NULL, NULL);
-
- GtkWidget *pTextView = gtk_text_view_new();
- gtk_widget_grab_focus(pTextView);
-
-
- pPrivate->pTextView = GTK_TEXT_VIEW(pTextView);
-
- gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(pTextView),
- GTK_WRAP_WORD);
-
- gtk_container_add(GTK_CONTAINER(pScrolledWindow), pTextView);
-
- gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(pScrolledWindow),
- GTK_POLICY_AUTOMATIC,
- GTK_POLICY_AUTOMATIC);
-
- gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(pScrolledWindow),
- GTK_SHADOW_IN);
-
- gtk_box_pack_start(GTK_BOX(&(pDasherEditor->parent.box)), pScrolledWindow, true, true, 0);
-
-
- gtk_widget_show_all(GTK_WIDGET(&(pDasherEditor->parent.box)));
-
- return pDasherEditor;
+DasherEditorInternal*
+dasher_editor_internal_new(void)
+{
+ return
+ DASHER_EDITOR_INTERNAL(g_object_new(DASHER_TYPE_EDITOR_INTERNAL, NULL));
}
void
-dasher_editor_internal_initialise(DasherEditor *pSelf, DasherAppSettings *pAppSettings, DasherMain *pDasherMain, GladeXML *pGladeXML, const gchar *szFullPath) {
-
+dasher_editor_internal_initialise(DasherEditor *pSelf, DasherAppSettings *pAppSettings, DasherMain *pDasherMain, GtkBuilder *pXML, const gchar *szFullPath) {
DasherEditorInternalPrivate *pPrivate = DASHER_EDITOR_INTERNAL_GET_PRIVATE(pSelf);
pPrivate->pAppSettings = pAppSettings;
@@ -331,14 +324,8 @@ dasher_editor_internal_initialise(DasherEditor *pSelf, DasherAppSettings *pAppSe
dasher_app_settings_get_string(pPrivate->pAppSettings,
APP_SP_EDIT_FONT));
- GtkVBox *pActionPane = GTK_VBOX(glade_xml_get_widget(pGladeXML, "vbox39"));
- pPrivate->pBuffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(pPrivate->pTextView));
+ GtkVBox *pActionPane = GTK_VBOX(gtk_builder_get_object(pXML, "vbox39"));
- gtk_widget_show_all(GTK_WIDGET(pPrivate->pTextView));
-
- GtkTextIter oStartIter;
- gtk_text_buffer_get_start_iter(pPrivate->pBuffer, &oStartIter);
- pPrivate->pNewMark = gtk_text_buffer_create_mark(pPrivate->pBuffer, NULL, &oStartIter, TRUE);
pPrivate->pActionPane = pActionPane;
@@ -355,7 +342,7 @@ dasher_editor_internal_initialise(DasherEditor *pSelf, DasherAppSettings *pAppSe
dasher_editor_internal_clear(pSelf, false);
}
-// pPrivate->pGameModeHelper = GAME_MODE_HELPER(game_mode_helper_new(pGladeXML, (void*)pSelf));
+// pPrivate->pGameModeHelper = GAME_MODE_HELPER(game_mode_helper_new(pXML, (void*)pSelf));
}
static void
@@ -401,7 +388,6 @@ dasher_editor_internal_clipboard(DasherEditor *pSelf, clipboard_action act) {
void dasher_editor_internal_cleartext(DasherEditorInternal *pSelf)
{
dasher_editor_internal_clear((DasherEditor *)pSelf, true);
-
}
void
@@ -885,53 +871,53 @@ gboolean
dasher_editor_internal_command(DasherEditor *pSelf, const gchar *szCommand) {
DasherEditorInternalPrivate *pPrivate = DASHER_EDITOR_INTERNAL_GET_PRIVATE(pSelf);
- if(!strcmp(szCommand, "new")) { //select_new_file
+ if(!strcmp(szCommand, "action_new")) { //select_new_file
dasher_editor_internal_command_new(pSelf);
return TRUE;
}
- if(!strcmp(szCommand, "open")) { //select open file
+ if(!strcmp(szCommand, "action_open")) { //select open file
dasher_editor_internal_command_open(pSelf);
return TRUE;
}
- if(!strcmp(szCommand, "save")) { //save_file
+ if(!strcmp(szCommand, "action_save")) { //save_file
dasher_editor_internal_command_save(pSelf, FALSE, FALSE);
return TRUE;
}
- if(!strcmp(szCommand, "saveas")) { // select_save_file_as
+ if(!strcmp(szCommand, "action_saveas")) { // select_save_file_as
dasher_editor_internal_command_save(pSelf, TRUE, FALSE);
return TRUE;
}
- if(!strcmp(szCommand, "append")) { // select_append_file
+ if(!strcmp(szCommand, "action_append")) { // select_append_file
dasher_editor_internal_command_save(pSelf, TRUE, TRUE);
return TRUE;
}
- if(!strcmp(szCommand, "cut")) { // clipboard_cut
+ if(!strcmp(szCommand, "action_cut")) { // clipboard_cut
dasher_editor_internal_clipboard(pSelf, CLIPBOARD_CUT);
return TRUE;
}
- if(!strcmp(szCommand, "copy")) { // clipboard_copy
+ if(!strcmp(szCommand, "action_copy")) { // clipboard_copy
dasher_editor_internal_clipboard(pSelf, CLIPBOARD_COPY);
return TRUE;
}
- if(!strcmp(szCommand, "copyall")) { // clipboard_copyall
+ if(!strcmp(szCommand, "action_copyall")) { // clipboard_copyall
dasher_editor_internal_clipboard(pSelf, CLIPBOARD_COPYALL);
return TRUE;
}
- if(!strcmp(szCommand, "paste")) { // clipboard_paste
+ if(!strcmp(szCommand, "action_paste")) { // clipboard_paste
dasher_editor_internal_clipboard(pSelf, CLIPBOARD_PASTE);
return TRUE;
}
// TODO: This isn't actually accessible from anywhere
- if(!strcmp(szCommand, "selectall")) { // clipboard_paste
+ if(!strcmp(szCommand, "action_selectall")) { // clipboard_paste
dasher_editor_internal_clipboard(pSelf, CLIPBOARD_SELECTALL);
return TRUE;
}
@@ -1659,7 +1645,6 @@ dasher_editor_internal_new_buffer(DasherEditor *pSelf, const gchar *szFilename)
static void
dasher_editor_internal_handle_parameter_change(DasherEditor *pSelf, gint iParameter) {
DasherEditorInternalPrivate *pPrivate = DASHER_EDITOR_INTERNAL_GET_PRIVATE(pSelf);
-
switch(iParameter) {
case APP_SP_EDIT_FONT:
dasher_editor_internal_handle_font(pSelf,
diff --git a/Src/Gtk2/dasher_editor_internal.h b/Src/Gtk2/dasher_editor_internal.h
index 9a44437..4e610c6 100644
--- a/Src/Gtk2/dasher_editor_internal.h
+++ b/Src/Gtk2/dasher_editor_internal.h
@@ -1,7 +1,6 @@
#ifndef __dasher_editor_internal_h__
#define __dasher_editor_internal_h__
-#include <glade/glade.h>
#include <glib.h>
#include <glib-object.h>
#include <gtk/gtk.h>
@@ -25,12 +24,12 @@ typedef enum {
} clipboard_action;
G_BEGIN_DECLS
-#define TYPE_DASHER_EDITOR_INTERNAL (dasher_editor_internal_get_type())
-#define DASHER_EDITOR_INTERNAL(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), TYPE_DASHER_EDITOR_INTERNAL, DasherEditorInternal ))
-#define DASHER_EDITOR_INTERNAL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DASHER_EDITOR_INTERNAL, DasherEditorInternalClass ))
-#define IS_DASHER_EDITOR_INTERNAL(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), TYPE_DASHER_EDITOR_INTERNAL))
-#define IS_DASHER_EDITOR_INTERNAL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DASHER_EDITOR_INTERNAL))
-#define DASHER_EDITOR_INTERNAL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DASHER_EDITOR_INTERNAL, DasherEditorInternalClass))
+#define DASHER_TYPE_EDITOR_INTERNAL (dasher_editor_internal_get_type())
+#define DASHER_EDITOR_INTERNAL(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), DASHER_TYPE_EDITOR_INTERNAL, DasherEditorInternal ))
+#define DASHER_EDITOR_INTERNAL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DASHER_TYPE_EDITOR_INTERNAL, DasherEditorInternalClass ))
+#define DASHER_IS_EDITOR_INTERNAL(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), DASHER_TYPE_EDITOR_INTERNAL))
+#define DASHER_IS_EDITOR_INTERNAL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DASHER_TYPE_EDITOR_INTERNAL))
+#define DASHER_EDITOR_INTERNAL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DASHER_TYPE_EDITOR_INTERNAL, DasherEditorInternalClass))
typedef struct _DasherEditorInternal DasherEditorInternal;
typedef struct _DasherEditorInternalClass DasherEditorInternalClass;
@@ -48,7 +47,7 @@ struct _DasherEditorInternalClass {
};
DasherEditorInternal *dasher_editor_internal_new();
-void dasher_editor_internal_initialise(DasherEditorInternal *pSelf, DasherAppSettings *pAppSettings, DasherMain *pDasherMain, GladeXML *pGladeXML, const gchar *szFullPath);
+void dasher_editor_internal_initialise(DasherEditorInternal *pSelf, DasherAppSettings *pAppSettings, DasherMain *pDasherMain, GtkBuilder *pXML, const gchar *szFullPath);
void dasher_editor_internal_cleartext(DasherEditorInternal *pSelf);
GType dasher_editor_internal_get_type();
@@ -95,4 +94,3 @@ GType dasher_editor_internal_get_type();
G_END_DECLS
#endif
-
diff --git a/Src/Gtk2/dasher_lock_dialogue.cpp b/Src/Gtk2/dasher_lock_dialogue.cpp
index a7ff61a..ae49619 100644
--- a/Src/Gtk2/dasher_lock_dialogue.cpp
+++ b/Src/Gtk2/dasher_lock_dialogue.cpp
@@ -13,28 +13,24 @@
// TODO: Make this a real class
-GtkWidget *m_pLockWindow;
-GtkWidget *m_pLockProgress;
-GtkWidget *m_pLockMessage;
+GtkWindow *m_pLockWindow;
+GtkProgressBar *m_pLockProgress;
+GtkLabel *m_pLockMessage;
-void dasher_lock_dialogue_new(GladeXML *pGladeXML, GtkWindow *pMainWindow) {
+void dasher_lock_dialogue_new(GtkBuilder *pXML, GtkWindow *pMainWindow) {
#ifndef WITH_MAEMO
- m_pLockWindow = glade_xml_get_widget(pGladeXML, "lock_window");
- m_pLockProgress = glade_xml_get_widget(pGladeXML, "lock_progress");
- m_pLockMessage = glade_xml_get_widget(pGladeXML, "lock_message");
+ m_pLockWindow = GTK_WINDOW(gtk_builder_get_object(pXML, "lock_window"));
+ m_pLockProgress = GTK_PROGRESS_BAR(gtk_builder_get_object(pXML, "lock_progress"));
+ m_pLockMessage = GTK_LABEL(gtk_builder_get_object(pXML, "lock_message"));
- gtk_widget_hide(m_pLockWindow);
+ gtk_widget_hide(GTK_WIDGET(m_pLockWindow));
- dasher_lock_dialogue_set_transient(pMainWindow);
+ gtk_window_set_transient_for(m_pLockWindow, pMainWindow);
#else
m_pLockWindow = 0;
#endif
}
-void dasher_lock_dialogue_set_transient(GtkWindow *pMainWindow) {
- gtk_window_set_transient_for(GTK_WINDOW(m_pLockWindow), pMainWindow);
-}
-
extern "C" void on_lock_info(GtkDasherControl *pDasherControl, gpointer pLockInfo, gpointer pUserData) {
// TODO: signals are connected after the Dasher control is created,
// which is too late to receive notification about intial training
@@ -43,13 +39,13 @@ extern "C" void on_lock_info(GtkDasherControl *pDasherControl, gpointer pLockInf
DasherLockInfo *pInfo = (DasherLockInfo *)pLockInfo;
#ifndef WITH_MAEMO
- gtk_label_set_text(GTK_LABEL(m_pLockMessage), pInfo->szMessage);
- gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(m_pLockProgress), pInfo->iPercent / 100.0);
+ gtk_label_set_text(m_pLockMessage, pInfo->szMessage);
+ gtk_progress_bar_set_fraction(m_pLockProgress, pInfo->iPercent / 100.0);
if(pInfo->bLock)
- gtk_widget_show(m_pLockWindow);
+ gtk_widget_show(GTK_WIDGET(m_pLockWindow));
else
- gtk_widget_hide(m_pLockWindow);
+ gtk_widget_hide(GTK_WIDGET(m_pLockWindow));
#else
if(pInfo->bLock) {
if(!m_pLockWindow)
@@ -59,7 +55,7 @@ extern "C" void on_lock_info(GtkDasherControl *pDasherControl, gpointer pLockInf
}
else {
if(m_pLockWindow)
- gtk_widget_destroy(m_pLockWindow);
+ gtk_widget_destroy(GTK_WIDGET(m_pLockWindow));
m_pLockWindow = 0;
}
#endif
diff --git a/Src/Gtk2/dasher_lock_dialogue.h b/Src/Gtk2/dasher_lock_dialogue.h
index a1b79de..d28ca0a 100644
--- a/Src/Gtk2/dasher_lock_dialogue.h
+++ b/Src/Gtk2/dasher_lock_dialogue.h
@@ -1,4 +1 @@
-#include <glade/glade.h>
-
-void dasher_lock_dialogue_new(GladeXML *pGladeXML, GtkWindow *pMainWindow);
-void dasher_lock_dialogue_set_transient(GtkWindow *pMainWindow);
+void dasher_lock_dialogue_new(GtkBuilder *pXML, GtkWindow *pMainWindow);
diff --git a/Src/Gtk2/dasher_main.cpp b/Src/Gtk2/dasher_main.cpp
index 9a86270..1e8f53e 100644
--- a/Src/Gtk2/dasher_main.cpp
+++ b/Src/Gtk2/dasher_main.cpp
@@ -6,7 +6,6 @@
#include <gdk/gdk.h>
#include <gdk/gdkx.h>
-#include <glade/glade.h>
#include <glib/gi18n.h>
#include <gtk/gtk.h>
#ifdef WITH_MAEMOFULLSCREEN
@@ -35,8 +34,8 @@ static DasherMain *g_pDasherMain = NULL;
static gboolean g_bSend = true;
struct _DasherMainPrivate {
- GladeXML *pGladeXML;
- GladeXML *pPrefXML;
+ GtkBuilder *pXML;
+ GtkBuilder *pPrefXML;
// Child objects owned here
DasherAppSettings *pAppSettings;
@@ -46,11 +45,11 @@ struct _DasherMainPrivate {
CKeyboardHelper *pKeyboardHelper;
// Various widgets which need to be cached:
- GtkWidget *pBufferView;
- GtkWidget *pDivider;
- GtkWidget *pMainWindow;
+ // GtkWidget *pBufferView;
+ GtkPaned *pDivider;
+ GtkWindow *pMainWindow;
GtkWidget *pToolbar;
- GtkWidget *pSpeedBox;
+ GtkSpinButton *pSpeedBox;
GtkWidget *pAlphabetCombo;
GtkWidget *pStatusControl;
GtkWidget *pDasherWidget;
@@ -77,7 +76,7 @@ struct _DasherMainPrivate {
typedef struct _DasherMainPrivate DasherMainPrivate;
// TODO: Make sure this is actually used
-#define DASHER_MAIN_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE((o), TYPE_DASHER_MAIN, DasherMainPrivate))
+#define DASHER_MAIN_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE((o), DASHER_TYPE_MAIN, DasherMainPrivate))
enum {
REALIZED,
@@ -86,47 +85,6 @@ enum {
static guint dasher_main_signals[SIGNAL_NUM] = { 0 };
-/* Automatic command hookups */
-
-typedef struct _DasherMenuCommand DasherMenuCommand;
-
-struct _DasherMenuCommand {
- GtkWidget *pWidget;
- const gchar *szWidgetName;
- const gchar *szCommand;
-};
-
-static DasherMenuCommand MenuCommands[] = {
- /* Menus */
- {NULL, "menu_command_new", "new"},
- {NULL, "menu_command_open", "open"},
- {NULL, "menu_command_save", "save"},
- {NULL, "menu_command_saveas", "saveas"},
- {NULL, "menu_command_append", "append"},
- {NULL, "menu_command_import", "import"},
- {NULL, "menu_command_quit", "quit"},
- {NULL, "menu_command_cut", "cut"},
- {NULL, "menu_command_copy", "copy"},
- {NULL, "menu_command_copyall", "copyall"},
- {NULL, "menu_command_paste", "paste"},
- {NULL, "menu_command_preferences", "preferences"},
- {NULL, "menu_command_tutorial", "tutorial"},
- {NULL, "menu_command_help", "help"},
- {NULL, "menu_command_about", "about"},
-
- /* Toolbar */
- {NULL, "tb_command_new", "new"},
- {NULL, "tb_command_open", "open"},
- {NULL, "tb_command_save", "save"},
- {NULL, "tb_command_saveas", "saveas"},
- {NULL, "tb_command_cut", "cut"},
- {NULL, "tb_command_copy", "copy"},
- {NULL, "tb_command_paste", "paste"},
- {NULL, "tb_command_preferences", "preferences"},
- {NULL, "tb_command_help", "help"},
- {NULL, "tb_command_quit", "quit"}
-};
-
G_DEFINE_TYPE(DasherMain, dasher_main, G_TYPE_OBJECT);
static void dasher_main_finalize(GObject *pObject);
@@ -135,20 +93,24 @@ static void dasher_main_finalize(GObject *pObject);
static void dasher_main_setup_window_state(DasherMain *pSelf);
static void dasher_main_setup_window_style(DasherMain *pSelf);
static void dasher_main_setup_internal_layout(DasherMain *pSelf);
-//static void dasher_main_refresh_font(DasherMain *pSelf);
static void dasher_main_set_window_title(DasherMain *pSelf);
/* ... Table based menu/toolbar commands */
-static void dasher_main_connect_menus(DasherMain *pSelf);
-static void dasher_main_menu_command(DasherMain *pSelf, GtkWidget *pWidget);
-
static void dasher_main_command_import(DasherMain *pSelf);
static void dasher_main_command_quit(DasherMain *pSelf);
static void dasher_main_command_preferences(DasherMain *pSelf);
static void dasher_main_command_preferences_alphabet(DasherMain *pSelf);
static void dasher_main_command_tutorial(DasherMain *pSelf);
static void dasher_main_command_help(DasherMain *pSelf);
-static void dasher_main_command_about(DasherMain *pself);
+static void dasher_main_command_about(DasherMain *pSelf);
+
+/* c.f. WRAP_CPP_CB below */
+extern "C" void dasher_main_cb_import(GtkAction*, DasherMain*);
+extern "C" void dasher_main_cb_quit(GtkAction*, DasherMain*);
+extern "C" void dasher_main_cb_preferences(GtkAction*, DasherMain*);
+extern "C" void dasher_main_cb_help(GtkAction*, DasherMain*);
+extern "C" void dasher_main_cb_about(GtkAction*, DasherMain*);
+extern "C" void dasher_main_cb_editor(GtkAction*, DasherMain*);
static gboolean dasher_main_speed_changed(DasherMain *pSelf);
static void dasher_main_alphabet_combo_changed(DasherMain *pSelf);
@@ -156,7 +118,7 @@ static void dasher_main_alphabet_combo_changed(DasherMain *pSelf);
static void dasher_main_populate_alphabet_combo(DasherMain *pSelf);
/* TODO: order these in file */
-static GladeXML *dasher_main_open_glade_xml(const char *szGladeFilename);
+static GtkBuilder *dasher_main_open_gui_xml(DasherMain *, const char *);
static void dasher_main_load_interface(DasherMain *pSelf);
static void dasher_main_create_preferences(DasherMain *pSelf);
static void dasher_main_handle_parameter_change(DasherMain *pSelf, int iParameter);
@@ -171,14 +133,7 @@ static gint dasher_main_lookup_key(DasherMain *pSelf, guint iKeyVal);
/* TODO: Various functions which haven't yet been rationalised */
gboolean grab_focus();
-// TODO: Sort out callbacks - 1 rename, 2 check return values
-
-/* Callback functions */
-extern "C" GtkWidget *create_dasher_control(gchar *szName, gchar *szString1, gchar *szString2, gint iInt1, gint iInt2);
-extern "C" GtkWidget *create_dasher_editor(gchar *szName, gchar *szString1, gchar *szString2, gint iInt1, gint iInt2);
-
/* ... Message handling from main window widgets */
-extern "C" gboolean dasher_main_cb_menu_command(GtkWidget *pWidget, gpointer pUserData);
extern "C" void speed_changed(GtkWidget *pWidget, gpointer user_data);
extern "C" void alphabet_combo_changed(GtkWidget *pWidget, gpointer pUserData);
extern "C" void dasher_main_cb_filename_changed(DasherEditor *pEditor, gpointer pUserData);
@@ -208,11 +163,12 @@ static void
dasher_main_class_init(DasherMainClass *pClass) {
g_type_class_add_private(pClass, sizeof(DasherMainPrivate));
- dasher_main_signals[REALIZED] = g_signal_new("realized", G_TYPE_FROM_CLASS(pClass),
- (GSignalFlags)(G_SIGNAL_RUN_FIRST | G_SIGNAL_ACTION),
- G_STRUCT_OFFSET(DasherMainClass, realized),
- NULL, NULL, g_cclosure_marshal_VOID__VOID,
- G_TYPE_NONE, 0);
+ dasher_main_signals[REALIZED] =
+ g_signal_new("realized", G_TYPE_FROM_CLASS(pClass),
+ (GSignalFlags)(G_SIGNAL_RUN_FIRST | G_SIGNAL_ACTION),
+ G_STRUCT_OFFSET(DasherMainClass, realized),
+ NULL, NULL, g_cclosure_marshal_VOID__VOID,
+ G_TYPE_NONE, 0);
GObjectClass *pObjectClass = (GObjectClass *)pClass;
pObjectClass->finalize = dasher_main_finalize;
@@ -249,7 +205,7 @@ dasher_main_finalize(GObject *pObject) {
if(pPrivate->pAppSettings)
g_object_unref(pPrivate->pAppSettings);
- gtk_widget_destroy(pPrivate->pMainWindow);
+ gtk_widget_destroy(GTK_WIDGET(pPrivate->pMainWindow));
/* TODO: Do we need to take down anything else? */
}
@@ -268,19 +224,19 @@ dasher_main_new(int *argc, char ***argv, SCommandLine *pCommandLine) {
/* Create the app settings object */
pPrivate->pAppSettings = dasher_app_settings_new(*argc, *argv);
- /* Load the user interface from the glade file */
+ /* Load the user interface from the GUI file */
if(pCommandLine && pCommandLine->szAppStyle) {
if(!strcmp(pCommandLine->szAppStyle, "traditional")) {
- dasher_app_settings_set_long(pPrivate->pAppSettings, APP_LP_STYLE, APP_STYLE_TRAD);
+ dasher_app_settings_set_long(pPrivate->pAppSettings, APP_LP_STYLE, APP_STYLE_TRAD);
}
else if(!strcmp(pCommandLine->szAppStyle, "compose")) {
- dasher_app_settings_set_long(pPrivate->pAppSettings, APP_LP_STYLE, APP_STYLE_COMPOSE);
+ dasher_app_settings_set_long(pPrivate->pAppSettings, APP_LP_STYLE, APP_STYLE_COMPOSE);
}
else if(!strcmp(pCommandLine->szAppStyle, "direct")) {
- dasher_app_settings_set_long(pPrivate->pAppSettings, APP_LP_STYLE, APP_STYLE_DIRECT);
+ dasher_app_settings_set_long(pPrivate->pAppSettings, APP_LP_STYLE, APP_STYLE_DIRECT);
}
else if(!strcmp(pCommandLine->szAppStyle, "fullscreen")) {
- dasher_app_settings_set_long(pPrivate->pAppSettings, APP_LP_STYLE, APP_STYLE_FULLSCREEN);
+ dasher_app_settings_set_long(pPrivate->pAppSettings, APP_LP_STYLE, APP_STYLE_FULLSCREEN);
}
else {
g_critical("Application style %s is not supported", pCommandLine->szAppStyle);
@@ -305,29 +261,29 @@ dasher_main_new(int *argc, char ***argv, SCommandLine *pCommandLine) {
gchar **pszCurrent = pszOptionTerms;
while(*pszCurrent) {
- gchar *szJoin = g_strrstr(*pszCurrent, "=");
+ gchar *szJoin = g_strrstr(*pszCurrent, "=");
// Note to translators: This message will be output for command line errors when the "=" in --options=foo is missing.
const gchar *errorMessage = _("option setting is missing \"=\".");
- if(szJoin) {
- int iLength = szJoin - *pszCurrent;
-
- gchar *szKey = g_new(gchar, iLength + 1);
- memcpy(szKey, *pszCurrent, iLength);
- szKey[iLength] = '\0';
-
- errorMessage = dasher_app_settings_cl_set(pPrivate->pAppSettings, szKey, szJoin + 1);
-
- g_free(szKey);
- }
+ if(szJoin) {
+ int iLength = szJoin - *pszCurrent;
+
+ gchar *szKey = g_new(gchar, iLength + 1);
+ memcpy(szKey, *pszCurrent, iLength);
+ szKey[iLength] = '\0';
+
+ errorMessage = dasher_app_settings_cl_set(pPrivate->pAppSettings, szKey, szJoin + 1);
+
+ g_free(szKey);
+ }
- if (errorMessage) {
+ if (errorMessage) {
// Note to translators: This string will be output when --options= specifies an unknown option.
- g_critical("%s: '%s', %s", _("Invalid option string specified"), *pszCurrent, errorMessage);
+ g_critical("%s: '%s', %s", _("Invalid option string specified"), *pszCurrent, errorMessage);
return 0;
- }
+ }
- ++pszCurrent;
+ ++pszCurrent;
}
g_strfreev(pszOptionTerms);
@@ -335,8 +291,7 @@ dasher_main_new(int *argc, char ***argv, SCommandLine *pCommandLine) {
/* --- */
-
- dasher_editor_initialise(pPrivate->pEditor, pPrivate->pAppSettings, pDasherMain, pPrivate->pGladeXML, NULL);
+ dasher_editor_initialise(pPrivate->pEditor, pPrivate->pAppSettings, pDasherMain, pPrivate->pXML, NULL);
dasher_main_setup_window(pDasherMain);
@@ -346,15 +301,15 @@ dasher_main_new(int *argc, char ***argv, SCommandLine *pCommandLine) {
if(pCommandLine) {
if(pCommandLine->szFilename) {
- if(!g_path_is_absolute(pCommandLine->szFilename)) {
- char *cwd;
- cwd = (char *)malloc(1024 * sizeof(char));
- getcwd(cwd, 1024);
- szFullPath = g_build_path("/", cwd, pCommandLine->szFilename, NULL);
- }
- else {
- szFullPath = g_strdup(pCommandLine->szFilename);
- }
+ if(!g_path_is_absolute(pCommandLine->szFilename)) {
+ char *cwd;
+ cwd = (char *)malloc(1024 * sizeof(char));
+ getcwd(cwd, 1024);
+ szFullPath = g_build_path("/", cwd, pCommandLine->szFilename, NULL);
+ }
+ else {
+ szFullPath = g_strdup(pCommandLine->szFilename);
+ }
}
}
@@ -362,7 +317,7 @@ dasher_main_new(int *argc, char ***argv, SCommandLine *pCommandLine) {
// pPrivate->pEditor = GTK_EDITOR(
-// dasher_editor_initialise(pPrivate->pAppSettings, pDasherMain, pPrivate->pGladeXML, szFullPath);
+// dasher_editor_initialise(pPrivate->pAppSettings, pDasherMain, pPrivate->pXML, szFullPath);
g_free(szFullPath);
@@ -376,13 +331,13 @@ dasher_main_new(int *argc, char ***argv, SCommandLine *pCommandLine) {
/* Create the lock dialogue (to be removed in future versions) */
#ifndef WITH_MAEMO
- dasher_lock_dialogue_new(pPrivate->pGladeXML, GTK_WINDOW(pPrivate->pMainWindow));
+ dasher_lock_dialogue_new(pPrivate->pXML, pPrivate->pMainWindow);
#else
- dasher_lock_dialogue_new(pPrivate->pGladeXML, 0);
+ dasher_lock_dialogue_new(pPrivate->pXML, 0);
#endif
- g_object_unref(pPrivate->pGladeXML);
- pPrivate->pGladeXML = 0;
+ g_object_unref(pPrivate->pXML);
+ pPrivate->pXML = 0;
g_object_unref(pPrivate->pPrefXML);
pPrivate->pPrefXML = 0;
@@ -398,96 +353,117 @@ dasher_main_new(int *argc, char ***argv, SCommandLine *pCommandLine) {
}
}
-static GladeXML *
-dasher_main_open_glade_xml(const char *szGladeFilename) {
- g_message("Opening Glade file: %s", szGladeFilename);
+static GtkBuilder *
+dasher_main_open_gui_xml(DasherMain *pSelf, const char *szGUIFilename) {
+ GError *e = NULL;
+ GtkBuilder *xml = gtk_builder_new();
- GladeXML *xml = glade_xml_new(szGladeFilename, NULL, NULL);
+ g_message("Opening GUI file: %s", szGUIFilename);
- if (!xml) {
- g_error("Can't find Glade file: %s. Dasher is unlikely to be correctly installed.", szGladeFilename);
+ if (!gtk_builder_add_from_file(xml, szGUIFilename, &e)) {
+ g_message("Can't find GUI file: %s. Dasher is unlikely to be correctly "
+ "installed. (%s)", szGUIFilename, e->message);
+ exit(1);
}
- glade_xml_signal_autoconnect(xml);
+ gtk_builder_connect_signals(xml, pSelf);
return xml;
}
-/* Load the window interface from the glade file, and do various initialisation bits and pieces */
+
+#define WRAP_CPP_CB(item) \
+extern "C" void \
+dasher_main_cb_##item(GtkAction *obj, DasherMain *p)\
+{\
+ dasher_main_command_##item(p);\
+}
+
+/* XXX PRLW: There is mention of "tutorial", but no function, (and
+ * preferences_alphabet isn't called externally.)
+ * editor passes on the action strings to dasher_editor_command which
+ * land in dasher_editor_internal.
+ */
+WRAP_CPP_CB(import)
+WRAP_CPP_CB(quit)
+WRAP_CPP_CB(preferences)
+WRAP_CPP_CB(help)
+WRAP_CPP_CB(about)
+
+extern "C" void
+dasher_main_cb_editor(GtkAction *obj, DasherMain *pSelf)
+{
+ DasherMainPrivate *pPrivate = DASHER_MAIN_GET_PRIVATE(pSelf);
+ DASHER_ASSERT(pPrivate->pEditor != NULL);
+ const gchar *action = gtk_action_get_name(obj);
+ dasher_editor_command(pPrivate->pEditor, action);
+}
+
static void
dasher_main_load_interface(DasherMain *pSelf) {
DasherMainPrivate *pPrivate = DASHER_MAIN_GET_PRIVATE(pSelf);
-
- const char *szGladeFilename = NULL;
- const char *szPrefGladeFilename = NULL;
+ const char *szGUIFilename = NULL;
+ const char *szPrefGUIFilename = NULL;
-#ifdef WITH_GPE
- szGladeFilename = PROGDATA "/dashergpe.glade";
-#elif WITH_MAEMO
+#if WITH_MAEMO
#ifdef WITH_MAEMOFULLSCREEN
- // szGladeFilename = "/var/lib/install" PROGDATA "/dashermaemofullscreen.glade";
- szGladeFilename = PROGDATA "/dashermaemofullscreen.glade";
+ szGUIFilename = PROGDATA "/dashermaemofullscreen.ui";
#else
- //szGladeFilename = "/var/lib/install" PROGDATA "/dashermaemo.glade";
- szGladeFilename = PROGDATA "/dashermaemo.glade";
+ szGUIFilename = PROGDATA "/dashermaemo.ui";
#endif
- szPrefGladeFilename = PROGDATA "/dashermaemo.preferences.glade";
+ szPrefGUIFilename = PROGDATA "/dashermaemo.preferences.ui";
#else
switch(dasher_app_settings_get_long(pPrivate->pAppSettings, APP_LP_STYLE)) {
case APP_STYLE_TRAD:
- szGladeFilename = PROGDATA "/dasher.traditional.glade";
+ szGUIFilename = PROGDATA "/dasher.traditional.ui";
break;
case APP_STYLE_COMPOSE:
- szGladeFilename = PROGDATA "/dasher.compose.glade";
+ szGUIFilename = PROGDATA "/dasher.compose.ui";
break;
case APP_STYLE_DIRECT:
- szGladeFilename = PROGDATA "/dasher.direct.glade";
+ szGUIFilename = PROGDATA "/dasher.direct.ui";
break;
case APP_STYLE_FULLSCREEN:
- szGladeFilename = PROGDATA "/dasher.fullscreen.glade";
+ szGUIFilename = PROGDATA "/dasher.fullscreen.ui";
break;
default:
g_error("Inconsistent application style specified.");
}
- szPrefGladeFilename = PROGDATA "/dasher.preferences.glade";
+ szPrefGUIFilename = PROGDATA "/dasher.preferences.ui";
#endif
- if(!szGladeFilename) {
- g_error("Failure to determine glade filename");
+ if(!szGUIFilename) {
+ g_error("Failure to determine GUI filename");
}
- pPrivate->pGladeXML = dasher_main_open_glade_xml(szGladeFilename);
-
- if (szPrefGladeFilename) {
- pPrivate->pPrefXML = dasher_main_open_glade_xml(szPrefGladeFilename);
- }
- else {
- // If no separate preference file, preferences widget is in main glade xml
- pPrivate->pPrefXML = (GladeXML *) g_object_ref(pPrivate->pGladeXML);
- }
+ pPrivate->pXML = dasher_main_open_gui_xml(pSelf, szGUIFilename);
+ pPrivate->pPrefXML = dasher_main_open_gui_xml(pSelf, szPrefGUIFilename);
#ifndef HAVE_GTK_SHOW_URI
- gtk_widget_hide(glade_xml_get_widget(pPrivate->pGladeXML, "menu_command_help"));
+ GtkAction *helpact =
+ GTK_ACTION(gtk_builder_get_object(pPrivate->pXML, "action_help"));
+ gtk_action_set_sensitive(helpact, false);
+ gtk_action_set_visible(helpact, false);
#endif
// Save the details of some of the widgets for later
- // pPrivate->pActionPane = glade_xml_get_widget(pPrivate->pGladeXML, "vbox39");
- pPrivate->pBufferView = glade_xml_get_widget(pPrivate->pGladeXML, "the_text_view");
- pPrivate->pDivider = glade_xml_get_widget(pPrivate->pGladeXML, "main_divider");
- // pPrivate->pEditPane = glade_xml_get_widget(pPrivate->pGladeXML, "vbox40");
- pPrivate->pMainWindow = glade_xml_get_widget(pPrivate->pGladeXML, "window");
- pPrivate->pToolbar = glade_xml_get_widget(pPrivate->pGladeXML, "toolbar");
- // pPrivate->pMenuBar = glade_xml_get_widget(pPrivate->pGladeXML, "dasher_menu_bar");
- pPrivate->pDasherWidget = glade_xml_get_widget(pPrivate->pGladeXML, "DasherControl");
+ // pPrivate->pActionPane = gtk_builder_get_object(pPrivate->pXML, "vbox39");
+ // pPrivate->pBufferView = gtk_builder_get_object(pPrivate->pXML, "the_text_view");
+ pPrivate->pDivider = GTK_PANED(gtk_builder_get_object(pPrivate->pXML, "main_divider"));
+ // pPrivate->pEditPane = gtk_builder_get_object(pPrivate->pXML, "vbox40");
+ pPrivate->pMainWindow = GTK_WINDOW(gtk_builder_get_object(pPrivate->pXML, "window"));
+ pPrivate->pToolbar = GTK_WIDGET(gtk_builder_get_object(pPrivate->pXML, "toolbar"));
+ // pPrivate->pMenuBar = gtk_builder_get_object(pPrivate->pXML, "dasher_menu_bar");
+ pPrivate->pDasherWidget = GTK_WIDGET(gtk_builder_get_object(pPrivate->pXML, "DasherControl"));
#ifndef WITH_MAEMO
- pPrivate->pSpeedBox = glade_xml_get_widget(pPrivate->pGladeXML, "spinbutton1");
- pPrivate->pAlphabetCombo = glade_xml_get_widget(pPrivate->pGladeXML, "combobox1");
- pPrivate->pStatusControl = glade_xml_get_widget(pPrivate->pGladeXML, "hbox8");
+ pPrivate->pSpeedBox = GTK_SPIN_BUTTON(gtk_builder_get_object(pPrivate->pXML, "spinbutton1"));
+ pPrivate->pAlphabetCombo = GTK_WIDGET(gtk_builder_get_object(pPrivate->pXML, "combobox1"));
+ pPrivate->pStatusControl = GTK_WIDGET(gtk_builder_get_object(pPrivate->pXML, "hbox8"));
pPrivate->pAlphabetList = gtk_list_store_new(1, G_TYPE_STRING);
gtk_combo_box_set_model(GTK_COMBO_BOX(pPrivate->pAlphabetCombo),
- GTK_TREE_MODEL(pPrivate->pAlphabetList));
+ GTK_TREE_MODEL(pPrivate->pAlphabetList));
GtkCellRenderer *pRenderer;
pRenderer = gtk_cell_renderer_text_new();
@@ -524,9 +500,9 @@ dasher_main_load_interface(DasherMain *pSelf) {
// main_menu = hildon_appview_get_menu(appview);
main_menu = GTK_MENU(gtk_menu_new());
- file_menu = glade_xml_get_widget(pPrivate->pGladeXML, "menuitem4_menu");
- options_menu = glade_xml_get_widget(pPrivate->pGladeXML, "options1_menu");
- help_menu = glade_xml_get_widget(pPrivate->pGladeXML, "menuitem7_menu");
+ file_menu = gtk_builder_get_object(pPrivate->pXML, "file_menu");
+ options_menu = gtk_builder_get_object(pPrivate->pXML, "options1_menu");
+ help_menu = gtk_builder_get_object(pPrivate->pXML, "help_menu");
file_menu_item = gtk_menu_item_new_with_label ("File");
options_menu_item = gtk_menu_item_new_with_label ("Options");
help_menu_item = gtk_menu_item_new_with_label ("Help");
@@ -535,9 +511,9 @@ dasher_main_load_interface(DasherMain *pSelf) {
g_object_ref(options_menu);
g_object_ref(help_menu);
- gtk_menu_item_set_submenu(GTK_MENU_ITEM(glade_xml_get_widget(pPrivate->pGladeXML, "menuitem4")), NULL);
- gtk_menu_item_set_submenu(GTK_MENU_ITEM(glade_xml_get_widget(pPrivate->pGladeXML, "options1")), NULL);
- gtk_menu_item_set_submenu(GTK_MENU_ITEM(glade_xml_get_widget(pPrivate->pGladeXML, "menuitem7")), NULL);
+ gtk_menu_item_set_submenu(GTK_MENU_ITEM(gtk_builder_get_object(pPrivate->pXML, "file_menu")), NULL);
+ gtk_menu_item_set_submenu(GTK_MENU_ITEM(gtk_builder_get_object(pPrivate->pXML, "options1")), NULL);
+ gtk_menu_item_set_submenu(GTK_MENU_ITEM(gtk_builder_get_object(pPrivate->pXML, "help_menu")), NULL);
gtk_menu_item_set_submenu(GTK_MENU_ITEM(file_menu_item),file_menu);
gtk_menu_item_set_submenu(GTK_MENU_ITEM(options_menu_item),options_menu);
@@ -556,14 +532,14 @@ dasher_main_load_interface(DasherMain *pSelf) {
// /* And toolbar */
// GtkWidget *toolbar;
-// toolbar = glade_xml_get_widget(pPrivate->pGladeXML, "toolbar");
+// toolbar = gtk_builder_get_object(pPrivate->pXML, "toolbar");
// g_print("Got %p\n",toolbar);
// gtk_widget_reparent (toolbar, appview->vbox);
gtk_widget_show_all(GTK_WIDGET(pPrivate->pHWindow));
- gtk_widget_destroy(pPrivate->pMainWindow);
- pPrivate->pMainWindow = GTK_WIDGET(pPrivate->pHWindow);
+ gtk_widget_destroy(GTK_WIDGET(pPrivate->pMainWindow));
+ pPrivate->pMainWindow = pPrivate->pHWindow;
g_signal_connect(G_OBJECT(pPrivate->pHWindow), "delete_event", G_CALLBACK(ask_save_before_exit), NULL);
@@ -587,35 +563,33 @@ dasher_main_load_interface(DasherMain *pSelf) {
// Create a Maemo helper if necessary
#if defined WITH_MAEMO && !defined WITH_MAEMOFULLSCREEN
- pPrivate->pMaemoHelper = dasher_maemo_helper_new(GTK_WINDOW(pPrivate->pMainWindow));
+ pPrivate->pMaemoHelper = dasher_maemo_helper_new(pPrivate->pMainWindow);
#endif
// Set up any non-registry-dependent options
#ifdef WITH_GPE
- gtk_window_set_decorated(GTK_WINDOW(pPrivate->pMainWindow), false);
+ gtk_window_set_decorated(pPrivate->pMainWindow, false);
#endif
// Hide any widgets which aren't appropriate for this mode
+ // XXX PRLW: chances are these aren't defined in direct.ui anyway => we are
+ // hiding non-existent widgets.
if(dasher_app_settings_get_long(pPrivate->pAppSettings, APP_LP_STYLE) == APP_STYLE_DIRECT) {
- gtk_widget_hide(glade_xml_get_widget(pPrivate->pGladeXML, "dasher_menu_bar"));
+ gtk_widget_hide(GTK_WIDGET(gtk_builder_get_object(pPrivate->pXML, "dasher_menu_bar")));
- gtk_widget_hide(glade_xml_get_widget(pPrivate->pGladeXML, "tb_command_new"));
- gtk_widget_hide(glade_xml_get_widget(pPrivate->pGladeXML, "tb_command_open"));
- gtk_widget_hide(glade_xml_get_widget(pPrivate->pGladeXML, "tb_command_save"));
- gtk_widget_hide(glade_xml_get_widget(pPrivate->pGladeXML, "tb_command_saveas"));
- gtk_widget_hide(glade_xml_get_widget(pPrivate->pGladeXML, "separatortoolitem1"));
- gtk_widget_hide(glade_xml_get_widget(pPrivate->pGladeXML, "tb_command_cut"));
- gtk_widget_hide(glade_xml_get_widget(pPrivate->pGladeXML, "tb_command_copy"));
- gtk_widget_hide(glade_xml_get_widget(pPrivate->pGladeXML, "tb_command_paste"));
- gtk_widget_hide(glade_xml_get_widget(pPrivate->pGladeXML, "separatortoolitem2"));
+ gtk_widget_hide(GTK_WIDGET(gtk_builder_get_object(pPrivate->pXML, "tb_command_new")));
+ gtk_widget_hide(GTK_WIDGET(gtk_builder_get_object(pPrivate->pXML, "tb_command_open")));
+ gtk_widget_hide(GTK_WIDGET(gtk_builder_get_object(pPrivate->pXML, "tb_command_save")));
+ gtk_widget_hide(GTK_WIDGET(gtk_builder_get_object(pPrivate->pXML, "tb_command_saveas")));
+ gtk_widget_hide(GTK_WIDGET(gtk_builder_get_object(pPrivate->pXML, "separatortoolitem1")));
+ gtk_widget_hide(GTK_WIDGET(gtk_builder_get_object(pPrivate->pXML, "tb_command_cut")));
+ gtk_widget_hide(GTK_WIDGET(gtk_builder_get_object(pPrivate->pXML, "tb_command_copy")));
+ gtk_widget_hide(GTK_WIDGET(gtk_builder_get_object(pPrivate->pXML, "tb_command_paste")));
+ gtk_widget_hide(GTK_WIDGET(gtk_builder_get_object(pPrivate->pXML, "separatortoolitem2")));
}
-
- dasher_main_connect_menus(pSelf);
-
-
- pPrivate->pEditor = DASHER_EDITOR(glade_xml_get_widget(pPrivate->pGladeXML, "DasherEditor"));
+ pPrivate->pEditor = DASHER_EDITOR(gtk_builder_get_object(pPrivate->pXML, "DasherEditor"));
// TODO: szFullPath
pPrivate->bWidgetsInitialised = true;
}
@@ -623,7 +597,7 @@ dasher_main_load_interface(DasherMain *pSelf) {
static void
dasher_main_create_preferences(DasherMain *pSelf) {
DasherMainPrivate *pPrivate = DASHER_MAIN_GET_PRIVATE(pSelf);
- pPrivate->pPreferencesDialogue = dasher_preferences_dialogue_new(pPrivate->pPrefXML, pPrivate->pEditor, pPrivate->pAppSettings, GTK_WINDOW(pPrivate->pMainWindow));
+ pPrivate->pPreferencesDialogue = dasher_preferences_dialogue_new(pPrivate->pPrefXML, pPrivate->pEditor, pPrivate->pAppSettings, pPrivate->pMainWindow);
}
// DasherEditor *
@@ -649,13 +623,9 @@ dasher_main_handle_parameter_change(DasherMain *pSelf, int iParameter) {
else
gtk_widget_hide(pPrivate->pStatusControl);
break;
- // case APP_SP_EDIT_FONT:
- // TODO: Editor should handle this directly
- // dasher_main_refresh_font(pSelf);
- // break;
#ifndef WITH_MAEMO
case LP_MAX_BITRATE:
- gtk_spin_button_set_value(GTK_SPIN_BUTTON(pPrivate->pSpeedBox), dasher_app_settings_get_long(pPrivate->pAppSettings, LP_MAX_BITRATE) / 100.0);
+ gtk_spin_button_set_value(pPrivate->pSpeedBox, dasher_app_settings_get_long(pPrivate->pAppSettings, LP_MAX_BITRATE) / 100.0);
break;
#endif
case SP_ALPHABET_ID:
@@ -721,7 +691,7 @@ dasher_main_load_state(DasherMain *pSelf) {
gtk_window_resize(GTK_WINDOW(pPrivate->pMainWindow), iWindowWidth, iWindowHeight);
#endif
- gtk_paned_set_position(GTK_PANED(pPrivate->pDivider), iEditHeight);
+ gtk_paned_set_position(pPrivate->pDivider, iEditHeight);
pPrivate->iWidth = iWindowWidth;
pPrivate->iHeight = iWindowHeight;
@@ -751,7 +721,7 @@ dasher_main_save_state(DasherMain *pSelf) {
int iEditHeight;
gtk_window_get_size(GTK_WINDOW(pPrivate->pMainWindow), &iWindowWidth, &iWindowHeight);
- iEditHeight = gtk_paned_get_position(GTK_PANED(pPrivate->pDivider));
+ iEditHeight = gtk_paned_get_position(pPrivate->pDivider);
if(dasher_app_settings_get_long(pPrivate->pAppSettings, APP_LP_STYLE) != APP_STYLE_COMPOSE) {
// APP_STYLE_DIRECT doesn't have an edit window.
@@ -779,7 +749,7 @@ dasher_main_save_state(DasherMain *pSelf) {
void
dasher_main_show(DasherMain *pSelf) {
DasherMainPrivate *pPrivate = DASHER_MAIN_GET_PRIVATE(pSelf);
- gtk_widget_show(pPrivate->pMainWindow);
+ gtk_widget_show(GTK_WIDGET(pPrivate->pMainWindow));
}
static void
@@ -804,8 +774,8 @@ dasher_main_populate_controls(DasherMain *pSelf) {
dasher_main_populate_alphabet_combo(pSelf);
// Set the value of the speed spinner
- gtk_spin_button_set_value(GTK_SPIN_BUTTON(pPrivate->pSpeedBox),
- dasher_app_settings_get_long(pPrivate->pAppSettings, LP_MAX_BITRATE) / 100.0);
+ gtk_spin_button_set_value(pPrivate->pSpeedBox,
+ dasher_app_settings_get_long(pPrivate->pAppSettings, LP_MAX_BITRATE) / 100.0);
}
static void
@@ -816,49 +786,49 @@ dasher_main_connect_control(DasherMain *pSelf) {
DasherMainPrivate *pPrivate = DASHER_MAIN_GET_PRIVATE(pSelf);
gtk_dasher_control_register_node( GTK_DASHER_CONTROL(pPrivate->pDasherWidget),
- Dasher::CControlManager::CTL_USER,
- "Speak", -1 );
+ Dasher::CControlManager::CTL_USER,
+ "Speak", -1 );
gtk_dasher_control_connect_node( GTK_DASHER_CONTROL(pPrivate->pDasherWidget),
- Dasher::CControlManager::CTL_USER,
- Dasher::CControlManager::CTL_ROOT, -2);
+ Dasher::CControlManager::CTL_USER,
+ Dasher::CControlManager::CTL_ROOT, -2);
gtk_dasher_control_register_node( GTK_DASHER_CONTROL(pPrivate->pDasherWidget),
- Dasher::CControlManager::CTL_USER + 1,
- "All", -1 );
+ Dasher::CControlManager::CTL_USER + 1,
+ "All", -1 );
gtk_dasher_control_register_node( GTK_DASHER_CONTROL(pPrivate->pDasherWidget),
- Dasher::CControlManager::CTL_USER + 2,
- "Last", -1 );
+ Dasher::CControlManager::CTL_USER + 2,
+ "Last", -1 );
gtk_dasher_control_register_node( GTK_DASHER_CONTROL(pPrivate->pDasherWidget),
- Dasher::CControlManager::CTL_USER + 3,
- "Repeat", -1 );
+ Dasher::CControlManager::CTL_USER + 3,
+ "Repeat", -1 );
gtk_dasher_control_connect_node( GTK_DASHER_CONTROL(pPrivate->pDasherWidget),
- Dasher::CControlManager::CTL_USER + 1,
- Dasher::CControlManager::CTL_USER, -2);
+ Dasher::CControlManager::CTL_USER + 1,
+ Dasher::CControlManager::CTL_USER, -2);
gtk_dasher_control_connect_node( GTK_DASHER_CONTROL(pPrivate->pDasherWidget),
- -1,
- Dasher::CControlManager::CTL_USER + 1, -2);
+ -1,
+ Dasher::CControlManager::CTL_USER + 1, -2);
gtk_dasher_control_connect_node( GTK_DASHER_CONTROL(pPrivate->pDasherWidget),
- Dasher::CControlManager::CTL_USER + 2,
- Dasher::CControlManager::CTL_USER, -2);
+ Dasher::CControlManager::CTL_USER + 2,
+ Dasher::CControlManager::CTL_USER, -2);
gtk_dasher_control_connect_node( GTK_DASHER_CONTROL(pPrivate->pDasherWidget),
- -1,
- Dasher::CControlManager::CTL_USER + 2, -2);
+ -1,
+ Dasher::CControlManager::CTL_USER + 2, -2);
gtk_dasher_control_connect_node( GTK_DASHER_CONTROL(pPrivate->pDasherWidget),
- Dasher::CControlManager::CTL_USER + 3,
- Dasher::CControlManager::CTL_USER, -2);
+ Dasher::CControlManager::CTL_USER + 3,
+ Dasher::CControlManager::CTL_USER, -2);
gtk_dasher_control_connect_node( GTK_DASHER_CONTROL(pPrivate->pDasherWidget),
- -1,
- Dasher::CControlManager::CTL_USER + 3, -2);
+ -1,
+ Dasher::CControlManager::CTL_USER + 3, -2);
#endif
@@ -969,18 +939,8 @@ dasher_main_setup_internal_layout(DasherMain *pSelf) {
else
gtk_widget_hide(pPrivate->pStatusControl);
}
-
- // dasher_main_refresh_font(pSelf);
}
-// static void
-// dasher_main_refresh_font(DasherMain *pSelf) {
-// DasherMainPrivate *pPrivate = DASHER_MAIN_GET_PRIVATE(pSelf);
-
-// dasher_editor_handle_font(pPrivate->pEditor,
-// dasher_app_settings_get_string(pPrivate->pAppSettings, APP_SP_EDIT_FONT));
-// }
-
// TODO: Fold into setup controls?
static void
dasher_main_set_window_title(DasherMain *pSelf) {
@@ -1002,50 +962,15 @@ dasher_main_set_window_title(DasherMain *pSelf) {
}
static void
-dasher_main_connect_menus(DasherMain *pSelf) {
- DasherMainPrivate *pPrivate = DASHER_MAIN_GET_PRIVATE(pSelf);
-
- int iNumItems = sizeof(MenuCommands) / sizeof(DasherMenuCommand);
-
- for(int i(0); i < iNumItems; ++i) {
- GtkWidget *pWidget;
-
- pWidget = glade_xml_get_widget(pPrivate->pGladeXML, MenuCommands[i].szWidgetName);
-
- MenuCommands[i].pWidget = pWidget;
-
- // TODO: Check that these are the right signals to connect to
- if(pWidget)
- if(GTK_IS_MENU_ITEM(pWidget))
- g_signal_connect(G_OBJECT(pWidget), "activate", G_CALLBACK(dasher_main_cb_menu_command), pSelf);
- else
- g_signal_connect(G_OBJECT(pWidget), "clicked", G_CALLBACK(dasher_main_cb_menu_command), pSelf);
- }
-
-}
-
-static void
-dasher_main_menu_command(DasherMain *pSelf, GtkWidget *pWidget) {
- int iNumItems = sizeof(MenuCommands) / sizeof(DasherMenuCommand);
-
- for(int i(0); i < iNumItems; ++i) {
- if(MenuCommands[i].pWidget == pWidget) {
- dasher_main_command(pSelf, MenuCommands[i].szCommand);
- return;
- }
- }
-}
-
-static void
dasher_main_command_import(DasherMain *pSelf) {
DasherMainPrivate *pPrivate = DASHER_MAIN_GET_PRIVATE(pSelf);
GtkWidget *pFileSel = gtk_file_chooser_dialog_new(_("Select File"),
- GTK_WINDOW(pPrivate->pMainWindow),
- GTK_FILE_CHOOSER_ACTION_OPEN,
- GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT,
- GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
- NULL);
+ GTK_WINDOW(pPrivate->pMainWindow),
+ GTK_FILE_CHOOSER_ACTION_OPEN,
+ GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT,
+ GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
+ NULL);
#ifdef TEACH_TRAINING_HELPER_LOAD_FILE_ABOUT_URI
gtk_file_chooser_set_local_only(GTK_FILE_CHOOSER(pFileSel), FALSE);
@@ -1079,24 +1004,24 @@ static void dasher_main_command_quit(DasherMain *pSelf) {
if(szFilename) {
pDialogue = gtk_message_dialog_new(GTK_WINDOW(pPrivate->pMainWindow), GTK_DIALOG_MODAL,
- GTK_MESSAGE_QUESTION, GTK_BUTTONS_NONE,
- _("Do you want to save your changes to %s?\n\nYour changes will be lost if you don't save them."),
- szFilename);
+ GTK_MESSAGE_QUESTION, GTK_BUTTONS_NONE,
+ _("Do you want to save your changes to %s?\n\nYour changes will be lost if you don't save them."),
+ szFilename);
}
else {
#endif
pDialogue = gtk_message_dialog_new(GTK_WINDOW(pPrivate->pMainWindow), GTK_DIALOG_MODAL,
- GTK_MESSAGE_QUESTION, GTK_BUTTONS_NONE,
- _("Do you want to save your changes?\n\nYour changes will be lost if you don't save them."));
+ GTK_MESSAGE_QUESTION, GTK_BUTTONS_NONE,
+ _("Do you want to save your changes?\n\nYour changes will be lost if you don't save them."));
#if 0
}
#endif
gtk_dialog_add_buttons(GTK_DIALOG(pDialogue),
- _("Don't save"), GTK_RESPONSE_REJECT,
- _("Don't quit"), GTK_RESPONSE_CANCEL,
- _("Save and quit"), GTK_RESPONSE_ACCEPT,
- NULL);
+ _("Don't save"), GTK_RESPONSE_REJECT,
+ _("Don't quit"), GTK_RESPONSE_CANCEL,
+ _("Save and quit"), GTK_RESPONSE_ACCEPT,
+ NULL);
switch (gtk_dialog_run(GTK_DIALOG(pDialogue))) {
case GTK_RESPONSE_REJECT:
@@ -1112,18 +1037,18 @@ static void dasher_main_command_quit(DasherMain *pSelf) {
}
}
else {
- pDialogue = gtk_message_dialog_new(GTK_WINDOW(pPrivate->pMainWindow), GTK_DIALOG_MODAL,
- GTK_MESSAGE_QUESTION, GTK_BUTTONS_NONE,
- _("Are you sure you wish to quit?"));
+ pDialogue = gtk_message_dialog_new(GTK_WINDOW(pPrivate->pMainWindow), GTK_DIALOG_MODAL,
+ GTK_MESSAGE_QUESTION, GTK_BUTTONS_NONE,
+ _("Are you sure you wish to quit?"));
- gtk_dialog_add_buttons(GTK_DIALOG(pDialogue),
- _("Don't quit"), GTK_RESPONSE_REJECT,
- _("Quit"), GTK_RESPONSE_ACCEPT,
- NULL);
+ gtk_dialog_add_buttons(GTK_DIALOG(pDialogue),
+ _("Don't quit"), GTK_RESPONSE_REJECT,
+ _("Quit"), GTK_RESPONSE_ACCEPT,
+ NULL);
switch (gtk_dialog_run(GTK_DIALOG(pDialogue))) {
case GTK_RESPONSE_REJECT:
- gtk_widget_destroy(GTK_WIDGET(pDialogue));
+ gtk_widget_destroy(GTK_WIDGET(pDialogue));
break;
case GTK_RESPONSE_ACCEPT:
gtk_main_quit();
@@ -1155,7 +1080,7 @@ dasher_main_command_help(DasherMain *pSelf) {
GdkScreen *scr;
GError *err = NULL;
- scr = gtk_widget_get_screen(pPrivate->pMainWindow);
+ scr = gtk_widget_get_screen(GTK_WIDGET(pPrivate->pMainWindow));
if (!gtk_show_uri(scr, "ghelp:dasher", gtk_get_current_event_time(), &err)) {
GtkWidget *d;
d = gtk_message_dialog_new(GTK_WINDOW(pPrivate->pMainWindow),
@@ -1212,24 +1137,24 @@ dasher_main_command_about(DasherMain *pSelf) {
};
gtk_show_about_dialog(GTK_WINDOW(pPrivate->pMainWindow),
- "authors", authors,
- "comments", _("Dasher is a predictive text entry application"),
- "copyright", "Copyright \xC2\xA9 1998-2009 The Dasher Project",
- "documenters", documenters,
- "license", "GPL 2+",
- "logo-icon-name", "dasher",
- "translator-credits", _("translator-credits"),
- "version", VERSION,
- "website", "http://www.dasher.org.uk/",
- "wrap-license", true,
- NULL);
+ "authors", authors,
+ "comments", _("Dasher is a predictive text entry application"),
+ "copyright", "Copyright \xC2\xA9 1998-2009 The Dasher Project",
+ "documenters", documenters,
+ "license", "GPL 2+",
+ "logo-icon-name", "dasher",
+ "translator-credits", _("translator-credits"),
+ "version", VERSION,
+ "website", "http://www.dasher.org.uk/",
+ "wrap-license", true,
+ NULL);
}
static gboolean
dasher_main_speed_changed(DasherMain *pSelf) {
DasherMainPrivate *pPrivate = DASHER_MAIN_GET_PRIVATE(pSelf);
- int iNewValue( static_cast<int>(round(gtk_spin_button_get_value(GTK_SPIN_BUTTON(pPrivate->pSpeedBox)) * 100)));
+ int iNewValue( static_cast<int>(round(gtk_spin_button_get_value(pPrivate->pSpeedBox) * 100)));
if(dasher_app_settings_get_long(pPrivate->pAppSettings, LP_MAX_BITRATE) != iNewValue)
dasher_app_settings_set_long(pPrivate->pAppSettings, LP_MAX_BITRATE, iNewValue);
@@ -1337,38 +1262,6 @@ grab_focus() {
/* Callbacks */
-extern "C" GtkWidget *
-create_dasher_control(gchar *szName, gchar *szString1, gchar *szString2, gint iInt1, gint iInt2) {
- GtkWidget *pDasherControl = gtk_dasher_control_new();
-
-#ifdef WITH_MAEMO
- // TODO: Do this in glade file?
- gtk_widget_set_size_request(pDasherControl, 175, -1);
-#endif
-
- return pDasherControl;
-}
-
-extern "C" GtkWidget *
-create_dasher_editor(gchar *szName, gchar *szString1, gchar *szString2, gint iInt1, gint iInt2) {
- g_return_val_if_fail(g_pDasherMain != NULL, NULL);
-
- DasherMain *pDasherMain = DASHER_MAIN(g_pDasherMain);
- DasherMainPrivate *pPrivate = DASHER_MAIN_GET_PRIVATE(pDasherMain);
-
- if(dasher_app_settings_get_long(pPrivate->pAppSettings, APP_LP_STYLE) == APP_STYLE_DIRECT)
- return GTK_WIDGET(dasher_editor_external_new());
- else
- return GTK_WIDGET(dasher_editor_internal_new());
-}
-
-extern "C" gboolean
-dasher_main_cb_menu_command(GtkWidget *pWidget, gpointer pUserData) {
- dasher_main_menu_command((DasherMain *)pUserData, pWidget);
-
- return FALSE; // TODO: Scheck semantics of return value
-}
-
extern "C" void
speed_changed(GtkWidget *pWidget, gpointer user_data) {
if(g_pDasherMain)
@@ -1524,7 +1417,7 @@ handle_control_event(GtkDasherControl *pDasherControl, gint iEvent, gpointer dat
dasher_editor_handle_control(pPrivate->pEditor, iEvent);
gtk_dasher_control_set_control_offset(GTK_DASHER_CONTROL(pPrivate->pDasherWidget),
- dasher_editor_get_offset(pPrivate->pEditor));
+ dasher_editor_get_offset(pPrivate->pEditor));
g_bSend = true;
// ---
@@ -1552,12 +1445,12 @@ dasher_main_key_snooper(GtkWidget *pWidget, GdkEventKey *pEvent, gpointer pUserD
if(iButton != -1) {
DasherMainPrivate *pPrivate = DASHER_MAIN_GET_PRIVATE(pSelf);
- if(gdk_window_get_toplevel(pEvent->window) == pPrivate->pMainWindow->window) {
+ if(gtk_widget_is_ancestor(pWidget, GTK_WIDGET(pPrivate->pMainWindow))) {
if(pPrivate->pDasherWidget) {
- if(pEvent->type == GDK_KEY_PRESS)
- gtk_dasher_control_external_key_down(GTK_DASHER_CONTROL(pPrivate->pDasherWidget), iButton);
- else
- gtk_dasher_control_external_key_up(GTK_DASHER_CONTROL(pPrivate->pDasherWidget), iButton);
+ if(pEvent->type == GDK_KEY_PRESS)
+ gtk_dasher_control_external_key_down(GTK_DASHER_CONTROL(pPrivate->pDasherWidget), iButton);
+ else
+ gtk_dasher_control_external_key_up(GTK_DASHER_CONTROL(pPrivate->pDasherWidget), iButton);
}
return TRUE;
diff --git a/Src/Gtk2/dasher_main.h b/Src/Gtk2/dasher_main.h
index fbb14c9..29927f8 100644
--- a/Src/Gtk2/dasher_main.h
+++ b/Src/Gtk2/dasher_main.h
@@ -5,12 +5,12 @@
#include <glib-object.h>
G_BEGIN_DECLS
-#define TYPE_DASHER_MAIN (dasher_main_get_type())
-#define DASHER_MAIN(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), TYPE_DASHER_MAIN, DasherMain ))
-#define DASHER_MAIN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DASHER_MAIN, DasherMainClass ))
-#define IS_DASHER_MAIN(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), TYPE_DASHER_MAIN))
-#define IS_DASHER_MAIN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DASHER_MAIN))
-#define DASHER_MAIN_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DASHER_MAIN, DasherMainClass))
+#define DASHER_TYPE_MAIN (dasher_main_get_type())
+#define DASHER_MAIN(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), DASHER_TYPE_MAIN, DasherMain ))
+#define DASHER_MAIN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DASHER_TYPE_MAIN, DasherMainClass ))
+#define DASHER_IS_MAIN(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), DASHER_TYPE_MAIN))
+#define DASHER_IS_MAIN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DASHER_TYPE_MAIN))
+#define DASHER_MAIN_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DASHER_TYPE_MAIN, DasherMainClass))
typedef struct _DasherMain DasherMain;
typedef struct _DasherMainClass DasherMainClass;
diff --git a/Src/Gtk2/game_mode_helper.cpp b/Src/Gtk2/game_mode_helper.cpp
index 62b2f1d..d7f8be6 100644
--- a/Src/Gtk2/game_mode_helper.cpp
+++ b/Src/Gtk2/game_mode_helper.cpp
@@ -80,24 +80,24 @@ static void game_mode_helper_destroy(GObject *pObject) {
// of the parent classes here...
}
-GObject *game_mode_helper_new(GladeXML *pGladeXML, void* pDasherEditor) {
+GObject *game_mode_helper_new(GtkBuilder *pXML, void* pDasherEditor) {
GameModeHelper *pHelper;
pHelper = GAME_MODE_HELPER(g_object_new(game_mode_helper_get_type(), NULL));
GameModeHelperPrivate *pPrivate((GameModeHelperPrivate *)(pHelper->private_data));
- pPrivate->pControl = GTK_DASHER_CONTROL(glade_xml_get_widget(pGladeXML, "DasherControl"));
+ pPrivate->pControl = GTK_DASHER_CONTROL(gtk_builder_get_object(pXML, "DasherControl"));
// pPrivate->szOutput = 0;
pPrivate->pEditor = (DasherEditorInternal *)pDasherEditor;
- pPrivate->pGameGroup = glade_xml_get_widget(pGladeXML, "game_group");
- pPrivate->pGameInfoLabel = GTK_LABEL(glade_xml_get_widget(pGladeXML, "game_info_label"));
- pPrivate->pGameToggleButton = glade_xml_get_widget(pGladeXML, "tb_command_game");
- pPrivate->pNewSentence = glade_xml_get_widget(pGladeXML, "game_new_sentence");
- pPrivate->pDemoToggleButton = glade_xml_get_widget(pGladeXML, "demo_toggle");
- pPrivate->pFullDemo = glade_xml_get_widget(pGladeXML, "fulldemo");
- pPrivate->pScore = GTK_ENTRY(glade_xml_get_widget(pGladeXML, "score_box"));
- pPrivate->pLevel = GTK_ENTRY(glade_xml_get_widget(pGladeXML, "level_box"));
+ pPrivate->pGameGroup = GTK_WIDGET(gtk_builder_get_object(pXML, "game_group"));
+ pPrivate->pGameInfoLabel = GTK_LABEL(gtk_builder_get_object(pXML, "game_info_label"));
+ pPrivate->pGameToggleButton = GTK_WIDGET(gtk_builder_get_object(pXML, "tb_command_game"));
+ pPrivate->pNewSentence = GTK_WIDGET(gtk_builder_get_object(pXML, "game_new_sentence"));
+ pPrivate->pDemoToggleButton = GTK_WIDGET(gtk_builder_get_object(pXML, "demo_toggle"));
+ pPrivate->pFullDemo = GTK_WIDGET(gtk_builder_get_object(pXML, "fulldemo"));
+ pPrivate->pScore = GTK_ENTRY(gtk_builder_get_object(pXML, "score_box"));
+ pPrivate->pLevel = GTK_ENTRY(gtk_builder_get_object(pXML, "level_box"));
pPrivate->pstrTarget = new std::string;
pPrivate->pstrOutput = new std::string;
@@ -165,7 +165,8 @@ game_mode_helper_cb_gametoggle(GtkWidget *pWidget, gpointer pUserData) {
gtk_dasher_control_game_messagein(pPrivate->pControl, Dasher::GameMode::GAME_MESSAGE_GAME_ON, NULL);
}
- dasher_editor_internal_cleartext(pPrivate->pEditor);
+ // XXX PRLW: something like pPrivate->pEditor->clear() may be more apt
+ // dasher_editor_internal_cleartext(pPrivate->pEditor);
return FALSE; // TODO: Scheck semantics of return value
}
@@ -254,7 +255,8 @@ void game_mode_helper_message(GameModeHelper *pSelf, int message, const void * m
gtk_entry_set_text(pPrivate->pLevel, reinterpret_cast<const std::string*>(messagedata)->c_str());
break;
case GAME_MESSAGE_CLEAR_BUFFER:
- dasher_editor_internal_cleartext(pPrivate->pEditor);
+ // XXX PRLW: something like pPrivate->pEditor->clear() may be more apt
+ // dasher_editor_internal_cleartext(pPrivate->pEditor);
pPrivate->pstrOutput->clear();
break;
case GAME_MESSAGE_HELP_MESSAGE:
diff --git a/Src/Gtk2/game_mode_helper.h b/Src/Gtk2/game_mode_helper.h
index d9c2ff8..b37e598 100644
--- a/Src/Gtk2/game_mode_helper.h
+++ b/Src/Gtk2/game_mode_helper.h
@@ -5,7 +5,6 @@
#include "GameMessages.h"
#include <gdk/gdk.h>
-#include <glade/glade.h>
#include <glib.h>
#include <gtk/gtk.h>
@@ -28,7 +27,7 @@ struct _GameModeHelperClass {
GtkDialogClass parent_class;
};
-GObject *game_mode_helper_new(GladeXML *pGladeXML, void* pEditor);
+GObject *game_mode_helper_new(GtkBuilder *pXML, void* pEditor);
GType game_mode_helper_get_type();
void game_mode_helper_message(GameModeHelper *pSelf, int message, const void *messagedata);
diff --git a/Src/Makefile.am b/Src/Makefile.am
index 13f0b8a..860ed18 100644
--- a/Src/Makefile.am
+++ b/Src/Makefile.am
@@ -25,8 +25,8 @@ AM_CXXFLAGS = \
dasher_LDADD = \
Common/libdashermisc.a \
- Gtk2/libdashergtk.a \
- Gtk2/libdashercontrol.a \
+ Gtk2/libdashergtk.la \
+ Gtk2/libdashercontrol.la \
DasherCore/libdashercore.a \
DasherCore/libdasherprefs.a \
DasherCore/LanguageModelling/libdasherlm.a \
diff --git a/Src/main.cc b/Src/main.cc
index 0b8482c..06bdf95 100644
--- a/Src/main.cc
+++ b/Src/main.cc
@@ -8,9 +8,9 @@
#include <gdk/gdk.h>
#include <gtk/gtk.h>
#include <gdk/gdkx.h>
-#include <glade/glade.h>
#include <signal.h>
#include <Gtk2/DasherAppSettings.h>
+#include <Gtk2/dasher_editor_internal.h>
#ifdef WITH_MAEMO
#include <libosso.h>
@@ -25,15 +25,7 @@
#include <gpe/init.h>
#endif
-// #include <libintl.h>
-// #include <locale.h>
-// #include <stdio.h>
-// #include <stdlib.h>
-// #include <iostream>
-
#include "dasher.h"
-//#include "DasherControl.h"
-#include "dasher_lock_dialogue.h"
#include "dasher_main.h"
#ifdef WITH_GPE
@@ -238,6 +230,9 @@ int main(int argc, char *argv[]) {
dasher_main_show(g_pDasherMain);
+ // This call is just to force the linker to export the following symbol.
+ dasher_editor_internal_get_type();
+
// 10.
gtk_main();
diff --git a/configure.ac b/configure.ac
index 01d79c2..b0610b3 100644
--- a/configure.ac
+++ b/configure.ac
@@ -189,17 +189,6 @@ AC_ARG_WITH([cairo],
if test x"$WITHGTK2" = xtrue
then
PKG_CHECK_MODULES(GTK2, gtk+-2.0 >= 2.6.0,[GTK2HERE=true],[GTK2HERE=false])
- PKG_CHECK_MODULES(GCONF, gconf-2.0,[GCONF2HERE=true],[GCONF2HERE=false])
- if test x$GCONF2HERE = xfalse; then
- AC_MSG_WARN([GConf was not detected - user preferences will not be stored.])
- fi
- save_CFLAGS="$CFLAGS"
- save_LIBS="$LIBS"
- CFLAGS="$CFLAGS $GTK2_CFLAGS"
- LIBS="$LIBS $GTK2_LIBS"
- AC_CHECK_FUNCS([gtk_show_uri]) dnl which appeared in Gtk 2.13.1
- CFLAGS="$save_CFLAGS"
- LIBS="$save_LIBS"
fi
if test x"$GTK2HERE" = xtrue -a x"$WITHGTK2" = xtrue -a x"$WITHQTE" != xtrue
@@ -212,10 +201,34 @@ else
BUILDGTK2=false
fi
-if test x$BUILDGTK2 = xfalse -a x"$WITHQTE" != xtrue
+if test x$BUILDGTK2 = xtrue
then
- echo $WITHGTK2
- AC_ERROR("Unable to find GTK2 or another necessary library. See the previous line for more useful data.")
+# GtkBuilder's autoconnect feature requires dasher to be linked with
+# the --export-dynamic flag. pkg-config does not provide it, and libtool
+# knows what to do with -export-dynamic.
+# (We need this e.g., for <object class="DasherEditor">)
+ GTK2_LIBS="$GTK2_LIBS -export-dynamic"
+
+ PKG_CHECK_MODULES(GCONF, gconf-2.0,[GCONF2HERE=true],[GCONF2HERE=false])
+ if test x$GCONF2HERE = xfalse; then
+ AC_MSG_WARN([GConf was not detected - user preferences will not be stored.])
+ fi
+ save_CFLAGS="$CFLAGS"
+ save_LIBS="$LIBS"
+ CFLAGS="$CFLAGS $GTK2_CFLAGS"
+ LIBS="$LIBS $GTK2_LIBS"
+ AC_CHECK_FUNCS([gtk_builder_new gtk_show_uri], [],
+ [if test "x$ac_cv_func_gtk_builder_new" = "xno"; then
+ AC_MSG_ERROR([A version of GTK+ providing GtkBuilder is necessary.])
+ fi
+ if test "x$ac_cv_func_gtk_show_uri" = "xno"; then
+ AC_MSG_WARN([This version of GTK+ doesn't provide gtk_show_uri - help will not be displayed from within dasher.])
+ fi]
+ )
+ CFLAGS="$save_CFLAGS"
+ LIBS="$save_LIBS"
+else
+ AC_MSG_ERROR("Unable to find GTK2 or another necessary library.")
fi
if test x"$DEBUG" = xtrue; then
@@ -299,8 +312,6 @@ dnl fi
if test x"$WITHMAEMO" = xtrue; then
AC_DEFINE([WITH_MAEMO], 1, [Maemo is present])
- dnl Yes, this sucks
- glade_LIBS="/usr/lib/libglade-2.0.a"
PKG_CHECK_MODULES(hildon, hildon-libs)
AC_CHECK_LIB(osso, osso_initialize,, AC_MSG_ERROR([Osso library not found.]))
fi
@@ -315,13 +326,6 @@ if test x"$WITHCAIRO" = xtrue; then
fi
if test x"$BUILDGTK2" = xtrue; then
- PKG_CHECK_MODULES(glade, libglade-2.0)
- if test x"$WITHMAEMO" = xtrue; then
- dnl Yes, this sucks
- glade_LIBS=`echo $glade_LIBS | sed s/-lglade-2.0//`
- glade_LIBS="$glade_LIBS /usr/lib/libglade-2.0.a"
- fi
-
PKG_CHECK_MODULES(gthread, gthread-2.0)
@@ -331,13 +335,6 @@ dnl AC_DEFINE([HAVE_WNCK], 1, [wnck is present])
dnl fi
fi
-# libglade's autoconnect feature requires dasher to be linked with
-# the --export-dynamic flag. pkg-config does not provide it, and libtool
-# knows what to do with -export-dynamic.
-if test x"$glade_LIBS" != x ; then
- glade_LIBS="$glade_LIBS -export-dynamic"
-fi
-
if test x"$GCONF2HERE" = xtrue ; then
AM_GCONF_SOURCE_2
AC_DEFINE([WITH_GCONF], 1, [Use GConf])
@@ -354,9 +351,6 @@ AC_SUBST([A11Y_SOURCES])
AC_SUBST(gnome_LIBS)
AC_SUBST(gnome_CFLAGS)
-AC_SUBST(glade_LIBS)
-AC_SUBST(glade_CFLAGS)
-
AC_SUBST(gthread_LIBS)
AC_SUBST(gthread_CFLAGS)
@@ -396,9 +390,9 @@ fi
AC_SUBST(SETTINGS_CFLAGS)
AC_SUBST(SETTINGS_LIBS)
-GTK2BUILD_CFLAGS="$GTK2_CFLAGS $GIO_CFLAGS $SETTINGS_CFLAGS $gthread_CFLAGS $gnome_speech_CFLAGS $gnome_a11y_CFLAGS $glade_CFLAGS $gnome_CFLAGS $wnck_CFLAGS $hildon_CFLAGS"
+GTK2BUILD_CFLAGS="$GTK2_CFLAGS $GIO_CFLAGS $SETTINGS_CFLAGS $gthread_CFLAGS $gnome_speech_CFLAGS $gnome_a11y_CFLAGS $gnome_CFLAGS $wnck_CFLAGS $hildon_CFLAGS"
-GTK2BUILD_LIBS="$X_LIBS $GTK2_LIBS $GIO_LIBS $SETTINGS_LIBS $gthread_LIBS $gnome_speech_LIBS $gnome_a11y_LIBS $glade_LIBS $gnome_LIBS $wnck_LIBS $hildon_LIBS"
+GTK2BUILD_LIBS="$X_LIBS $GTK2_LIBS $GIO_LIBS $SETTINGS_LIBS $gthread_LIBS $gnome_speech_LIBS $gnome_a11y_LIBS $gnome_LIBS $wnck_LIBS $hildon_LIBS"
AC_SUBST(GTK2BUILD_CFLAGS)
AC_SUBST(GTK2BUILD_LIBS)
@@ -420,9 +414,9 @@ AC_CONFIG_FILES([Data/dasher.desktop.in
Data/Makefile
Data/training/Makefile
Data/alphabets/Makefile
- Data/glade/Makefile
Data/colours/Makefile
Data/controllabels/Makefile
+ Data/GUI/Makefile
Data/Help/Makefile
Data/Help/Gnome/Makefile
Doc/Makefile
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]