Bug #666709 - Migrate Tax tables dialog to Builder

Patch by Robert Fewell

git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@21798 57a11ea4-9604-0410-9ed3-97b8803252fd
This commit is contained in:
Geert Janssens 2011-12-30 14:18:34 +00:00
parent 3df235dc59
commit 239d2b1069
7 changed files with 440 additions and 353 deletions

View File

@ -277,7 +277,6 @@ src/gnome-utils/druid-gnc-xml-import.c
src/gnome-utils/druid-utils.c
src/gnome-utils/glade/druid-gnc-xml-import.glade
src/gnome-utils/glade/druid-provider-multifile.glade
src/gnome-utils/glade/tax-tables.glade
src/gnome-utils/gnc-account-sel.c
src/gnome-utils/gnc-amount-edit.c
src/gnome-utils/gnc-autosave.c
@ -342,6 +341,7 @@ src/gnome-utils/gtkbuilder/dialog-options.glade
src/gnome-utils/gtkbuilder/dialog-preferences.glade
src/gnome-utils/gtkbuilder/dialog-query-list.glade
src/gnome-utils/gtkbuilder/dialog-reset-warnings.glade
src/gnome-utils/gtkbuilder/dialog-tax-tables.glade
src/gnome-utils/gtkbuilder/dialog-totd.glade
src/gnome-utils/gtkbuilder/dialog-transfer.glade
src/gnome-utils/gtkbuilder/dialog-userpass.glade

View File

@ -67,7 +67,6 @@ void tax_table_delete_entry_cb (GtkButton *button, TaxTableWindow *ttw);
void tax_table_window_close (GtkWidget *widget, gpointer data);
void tax_table_window_destroy_cb (GtkWidget *widget, gpointer data);
struct _taxtable_window
{
GtkWidget * dialog;
@ -94,7 +93,6 @@ typedef struct _new_taxtable
gboolean new_table;
} NewTaxTable;
static gboolean
new_tax_table_ok_cb (NewTaxTable *ntt)
{
@ -211,7 +209,7 @@ new_tax_table_dialog (TaxTableWindow *ttw, gboolean new_table,
{
GncTaxTable *created_table = NULL;
NewTaxTable *ntt;
GladeXML *xml;
GtkBuilder *builder;
GtkWidget *box, *widget, *combo;
gboolean done;
gint response, index;
@ -229,27 +227,30 @@ new_tax_table_dialog (TaxTableWindow *ttw, gboolean new_table,
else
ntt->type = GNC_AMT_TYPE_PERCENT;
/* Open and read the XML */
xml = gnc_glade_xml_new ("tax-tables.glade", "New Tax Table Dialog");
ntt->dialog = glade_xml_get_widget (xml, "New Tax Table Dialog");
ntt->name_entry = glade_xml_get_widget (xml, "name_entry");
/* Open and read the Glade File */
builder = gtk_builder_new();
gnc_builder_add_from_file (builder, "dialog-tax-table.glade", "type_liststore");
gnc_builder_add_from_file (builder, "dialog-tax-table.glade", "New Tax Table Dialog");
ntt->dialog = GTK_WIDGET(gtk_builder_get_object (builder, "New Tax Table Dialog"));
ntt->name_entry = GTK_WIDGET(gtk_builder_get_object (builder, "name_entry"));
if (name)
gtk_entry_set_text (GTK_ENTRY (ntt->name_entry), name);
/* Create the menu */
combo = glade_xml_get_widget (xml, "type_combobox");
combo = GTK_WIDGET(gtk_builder_get_object (builder, "type_combobox"));
index = ntt->type ? ntt->type : GNC_AMT_TYPE_VALUE;
gtk_combo_box_set_active(GTK_COMBO_BOX(combo), index - 1);
g_signal_connect (combo, "changed", G_CALLBACK (combo_changed), ntt);
/* Attach our own widgets */
box = glade_xml_get_widget (xml, "amount_box");
box = GTK_WIDGET(gtk_builder_get_object (builder, "amount_box"));
ntt->amount_entry = widget = gnc_amount_edit_new ();
gnc_amount_edit_set_evaluate_on_enter (GNC_AMOUNT_EDIT (widget), TRUE);
gnc_amount_edit_set_fraction (GNC_AMOUNT_EDIT (widget), 100000);
gtk_box_pack_start (GTK_BOX (box), widget, TRUE, TRUE, 0);
box = glade_xml_get_widget (xml, "acct_window");
box = GTK_WIDGET(gtk_builder_get_object (builder, "acct_window"));
ntt->acct_tree = GTK_WIDGET(gnc_tree_view_account_new (FALSE));
gtk_container_add (GTK_CONTAINER (box), ntt->acct_tree);
gtk_tree_view_set_headers_visible (GTK_TREE_VIEW(ntt->acct_tree), FALSE);
@ -260,9 +261,9 @@ new_tax_table_dialog (TaxTableWindow *ttw, gboolean new_table,
TRUE);
/* Fix mnemonics for generated target widgets */
widget = glade_xml_get_widget (xml, "value_label");
widget = GTK_WIDGET(gtk_builder_get_object (builder, "value_label"));
gtk_label_set_mnemonic_widget (GTK_LABEL (widget), ntt->amount_entry);
widget = glade_xml_get_widget (xml, "account_label");
widget = GTK_WIDGET(gtk_builder_get_object (builder, "account_label"));
gtk_label_set_mnemonic_widget (GTK_LABEL (widget), ntt->acct_tree);
/* Fill in the widgets appropriately */
@ -278,20 +279,18 @@ new_tax_table_dialog (TaxTableWindow *ttw, gboolean new_table,
gtk_window_set_transient_for (GTK_WINDOW(ntt->dialog), GTK_WINDOW(ttw->dialog));
/* Setup signals */
glade_xml_signal_autoconnect_full( xml,
gnc_glade_autoconnect_full_func,
ntt);
gtk_builder_connect_signals_full (builder, gnc_builder_connect_full_func, ntt);
/* Show what we should */
gtk_widget_show_all (ntt->dialog);
if (new_table == FALSE)
{
gtk_widget_hide (glade_xml_get_widget (xml, "table_title"));
gtk_widget_hide (glade_xml_get_widget (xml, "table_name"));
gtk_widget_hide (glade_xml_get_widget (xml, "spacer"));
gtk_widget_hide (GTK_WIDGET(gtk_builder_get_object (builder, "table_title")));
gtk_widget_hide (GTK_WIDGET(gtk_builder_get_object (builder, "table_name")));
gtk_widget_hide (GTK_WIDGET(gtk_builder_get_object (builder, "spacer")));
gtk_widget_hide (ntt->name_entry);
/* Tables are great for layout, but a pain when you hide widgets */
widget = glade_xml_get_widget (xml, "ttd_table");
widget = GTK_WIDGET(gtk_builder_get_object (builder, "ttd_table"));
gtk_table_set_row_spacing (GTK_TABLE(widget), 0, 0);
gtk_table_set_row_spacing (GTK_TABLE(widget), 1, 0);
gtk_table_set_row_spacing (GTK_TABLE(widget), 2, 0);
@ -323,6 +322,8 @@ new_tax_table_dialog (TaxTableWindow *ttw, gboolean new_table,
}
}
g_object_unref(G_OBJECT(builder));
gtk_widget_destroy(ntt->dialog);
g_free(ntt);
@ -681,7 +682,7 @@ TaxTableWindow *
gnc_ui_tax_table_window_new (QofBook *book)
{
TaxTableWindow *ttw;
GladeXML *xml;
GtkBuilder *builder;
GtkTreeView *view;
GtkTreeViewColumn *column;
GtkCellRenderer *renderer;
@ -707,11 +708,12 @@ gnc_ui_tax_table_window_new (QofBook *book)
ttw = g_new0 (TaxTableWindow, 1);
ttw->book = book;
/* Open and read the XML */
xml = gnc_glade_xml_new ("tax-tables.glade", "Tax Table Window");
ttw->dialog = glade_xml_get_widget (xml, "Tax Table Window");
ttw->names_view = glade_xml_get_widget (xml, "tax_tables_view");
ttw->entries_view = glade_xml_get_widget (xml, "tax_table_entries");
/* Open and read the Glade File */
builder = gtk_builder_new();
gnc_builder_add_from_file (builder, "dialog-tax-table.glade", "Tax Table Window");
ttw->dialog = GTK_WIDGET(gtk_builder_get_object (builder, "Tax Table Window"));
ttw->names_view = GTK_WIDGET(gtk_builder_get_object (builder, "tax_tables_view"));
ttw->entries_view = GTK_WIDGET(gtk_builder_get_object (builder, "tax_table_entries"));
/* Create the tax tables view */
view = GTK_TREE_VIEW(ttw->names_view);
@ -730,7 +732,6 @@ gnc_ui_tax_table_window_new (QofBook *book)
g_signal_connect(selection, "changed",
G_CALLBACK(tax_table_selection_changed), ttw);
/* Create the tax table entries view */
view = GTK_TREE_VIEW(ttw->entries_view);
store = gtk_list_store_new (NUM_TAX_ENTRY_COLS, G_TYPE_STRING,
@ -750,11 +751,8 @@ gnc_ui_tax_table_window_new (QofBook *book)
g_signal_connect(view, "row-activated",
G_CALLBACK(tax_table_entry_row_activated), ttw);
/* Setup signals */
glade_xml_signal_autoconnect_full( xml,
gnc_glade_autoconnect_full_func,
ttw);
gtk_builder_connect_signals_full (builder, gnc_builder_connect_full_func, ttw);
/* register with component manager */
ttw->component_id =
@ -766,6 +764,9 @@ gnc_ui_tax_table_window_new (QofBook *book)
tax_table_window_refresh (ttw);
gnc_restore_window_size (GCONF_SECTION, GTK_WINDOW (ttw->dialog));
gtk_widget_show_all (ttw->dialog);
g_object_unref(G_OBJECT(builder));
return ttw;
}

View File

@ -22,6 +22,8 @@
\********************************************************************/
#include "config.h"
#include <gtk/gtk.h>
#include "dialog-utils.h"
#include "gnc-ui.h"
@ -34,26 +36,27 @@ gnc_get_username_password (GtkWidget *parent,
char **username,
char **password)
{
GtkWidget *dialog;
GtkWidget *heading_label;
GtkWidget *username_entry;
GtkWidget *password_entry;
GladeXML *xml;
GtkWidget *dialog;
GtkWidget *heading_label;
GtkWidget *username_entry;
GtkWidget *password_entry;
GtkBuilder *builder;
gint result;
g_return_val_if_fail (username != NULL, FALSE);
g_return_val_if_fail (password != NULL, FALSE);
xml = gnc_glade_xml_new ("userpass.glade", "Username Password Dialog");
builder = gtk_builder_new();
gnc_builder_add_from_file (builder, "dialog-userpass.glade", "Username Password Dialog");
dialog = glade_xml_get_widget (xml, "Username Password Dialog");
dialog = GTK_WIDGET(gtk_builder_get_object (builder, "Username Password Dialog"));
if (parent)
gtk_window_set_transient_for (GTK_WINDOW (dialog), GTK_WINDOW (parent));
heading_label = glade_xml_get_widget (xml, "heading_label");
username_entry = glade_xml_get_widget (xml, "username_entry");
password_entry = glade_xml_get_widget (xml, "password_entry");
heading_label = GTK_WIDGET(gtk_builder_get_object (builder, "heading_label"));
username_entry = GTK_WIDGET(gtk_builder_get_object (builder, "username_entry"));
password_entry = GTK_WIDGET(gtk_builder_get_object (builder, "password_entry"));
if (heading)
gtk_label_set_text (GTK_LABEL (heading_label), heading);
@ -80,6 +83,8 @@ gnc_get_username_password (GtkWidget *parent,
*username = NULL;
*password = NULL;
g_object_unref(G_OBJECT(builder));
gtk_widget_destroy(dialog);
return FALSE;
}

View File

@ -1,6 +1,5 @@
gladedir = $(GNC_GLADE_DIR)
glade_DATA = \
tax-tables.glade \
druid-provider-multifile.glade \
druid-gnc-xml-import.glade

View File

@ -10,6 +10,7 @@ gtkbuilder_DATA = \
dialog-preferences.glade \
dialog-query-list.glade \
dialog-reset-warnings.glade \
dialog-tax-table.glade \
dialog-totd.glade \
dialog-transfer.glade \
dialog-userpass.glade \

View File

@ -1,288 +1,84 @@
<?xml version="1.0"?>
<glade-interface>
<!-- interface-requires gtk+ 2.10 -->
<!-- interface-naming-policy toplevel-contextual -->
<widget class="GtkDialog" id="Tax Table Window">
<property name="visible">True</property>
<property name="title" translatable="yes">Tax Tables</property>
<property name="type_hint">normal</property>
<signal name="destroy" handler="tax_table_window_destroy_cb"/>
<interface>
<requires lib="gtk+" version="2.16"/>
<!-- interface-naming-policy project-wide -->
<object class="GtkDialog" id="New Tax Table Dialog">
<property name="can_focus">False</property>
<property name="border_width">6</property>
<property name="modal">True</property>
<property name="default_height">370</property>
<property name="type_hint">dialog</property>
<child internal-child="vbox">
<widget class="GtkVBox" id="dialog-vbox1">
<object class="GtkVBox" id="dialog-vbox6">
<property name="visible">True</property>
<property name="orientation">vertical</property>
<property name="can_focus">False</property>
<property name="spacing">8</property>
<child>
<widget class="GtkHBox" id="hbox4">
<property name="visible">True</property>
<property name="spacing">12</property>
<child>
<widget class="GtkVBox" id="vbox1">
<property name="visible">True</property>
<property name="border_width">6</property>
<property name="orientation">vertical</property>
<property name="spacing">6</property>
<child>
<widget class="GtkLabel" id="label1">
<property name="visible">True</property>
<property name="xalign">0</property>
<property name="label" translatable="yes">&lt;b&gt;Tax Tables&lt;/b&gt;</property>
<property name="use_markup">True</property>
</widget>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">0</property>
</packing>
</child>
<child>
<widget class="GtkAlignment" id="alignment5">
<property name="visible">True</property>
<property name="left_padding">12</property>
<child>
<widget class="GtkScrolledWindow" id="scrolledwindow1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="hscrollbar_policy">automatic</property>
<property name="vscrollbar_policy">automatic</property>
<property name="shadow_type">in</property>
<child>
<widget class="GtkTreeView" id="tax_tables_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>
</child>
</widget>
</child>
</widget>
<packing>
<property name="position">1</property>
</packing>
</child>
<child>
<widget class="GtkAlignment" id="alignment6">
<property name="visible">True</property>
<property name="left_padding">12</property>
<child>
<widget class="GtkHButtonBox" id="hbox2">
<property name="visible">True</property>
<property name="spacing">6</property>
<property name="layout_style">spread</property>
<child>
<widget class="GtkButton" id="delete_table_button">
<property name="label">gtk-delete</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
<property name="use_stock">True</property>
<signal name="clicked" handler="tax_table_delete_table_cb"/>
</widget>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">0</property>
</packing>
</child>
<child>
<widget class="GtkButton" id="new_table_button">
<property name="label">gtk-new</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
<property name="use_stock">True</property>
<signal name="clicked" handler="tax_table_new_table_cb"/>
</widget>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">1</property>
</packing>
</child>
</widget>
</child>
</widget>
<packing>
<property name="expand">False</property>
<property name="position">2</property>
</packing>
</child>
</widget>
<packing>
<property name="position">0</property>
</packing>
</child>
<child>
<widget class="GtkVBox" id="vbox2">
<property name="visible">True</property>
<property name="border_width">6</property>
<property name="orientation">vertical</property>
<property name="spacing">6</property>
<child>
<widget class="GtkLabel" id="label2">
<property name="visible">True</property>
<property name="xalign">0</property>
<property name="label" translatable="yes">&lt;b&gt;Tax Table Entries&lt;/b&gt;</property>
<property name="use_markup">True</property>
</widget>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">0</property>
</packing>
</child>
<child>
<widget class="GtkAlignment" id="alignment7">
<property name="visible">True</property>
<property name="left_padding">12</property>
<child>
<widget class="GtkScrolledWindow" id="scrolledwindow2">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="hscrollbar_policy">automatic</property>
<property name="vscrollbar_policy">automatic</property>
<property name="shadow_type">in</property>
<child>
<widget class="GtkTreeView" id="tax_table_entries">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="headers_visible">False</property>
<property name="rules_hint">True</property>
</widget>
</child>
</widget>
</child>
</widget>
<packing>
<property name="position">1</property>
</packing>
</child>
<child>
<widget class="GtkAlignment" id="alignment8">
<property name="visible">True</property>
<property name="left_padding">12</property>
<child>
<widget class="GtkHButtonBox" id="hbox3">
<property name="visible">True</property>
<property name="spacing">6</property>
<property name="layout_style">spread</property>
<child>
<widget class="GtkButton" id="edit_entry_button">
<property name="label" translatable="yes">_Edit</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
<property name="use_stock">True</property>
<signal name="clicked" handler="tax_table_edit_entry_cb"/>
</widget>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">0</property>
</packing>
</child>
<child>
<widget class="GtkButton" id="delete_entry_button">
<property name="label">gtk-delete</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
<property name="use_stock">True</property>
<signal name="clicked" handler="tax_table_delete_entry_cb"/>
</widget>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">1</property>
</packing>
</child>
<child>
<widget class="GtkButton" id="new_entry_button">
<property name="label">gtk-new</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
<property name="use_stock">True</property>
<signal name="clicked" handler="tax_table_new_entry_cb"/>
</widget>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">2</property>
</packing>
</child>
</widget>
</child>
</widget>
<packing>
<property name="expand">False</property>
<property name="position">2</property>
</packing>
</child>
</widget>
<packing>
<property name="position">1</property>
</packing>
</child>
</widget>
<packing>
<property name="position">2</property>
</packing>
</child>
<child internal-child="action_area">
<widget class="GtkHButtonBox" id="dialog-action_area1">
<object class="GtkHButtonBox" id="dialog-action_area6">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="layout_style">end</property>
<child>
<widget class="GtkButton" id="close_button">
<property name="label">gtk-close</property>
<property name="response_id">-6</property>
<object class="GtkButton" id="cancel_button">
<property name="label">gtk-cancel</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="can_default">True</property>
<property name="receives_default">False</property>
<property name="receives_default">True</property>
<property name="use_action_appearance">False</property>
<property name="use_stock">True</property>
<signal name="clicked" handler="tax_table_window_close"/>
</widget>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">0</property>
</packing>
</child>
</widget>
<child>
<object class="GtkButton" id="ok_button">
<property name="label">gtk-ok</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="can_default">True</property>
<property name="has_default">True</property>
<property name="receives_default">True</property>
<property name="use_action_appearance">False</property>
<property name="use_stock">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">1</property>
</packing>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="pack_type">end</property>
<property name="position">0</property>
</packing>
</child>
</widget>
</child>
</widget>
<widget class="GtkDialog" id="New Tax Table Dialog">
<property name="border_width">6</property>
<property name="modal">True</property>
<property name="type_hint">dialog</property>
<child internal-child="vbox">
<widget class="GtkVBox" id="dialog-vbox2">
<property name="visible">True</property>
<property name="orientation">vertical</property>
<property name="spacing">8</property>
<child>
<widget class="GtkTable" id="ttd_table">
<object class="GtkTable" id="ttd_table">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="n_rows">7</property>
<property name="n_columns">2</property>
<property name="column_spacing">12</property>
<property name="row_spacing">6</property>
<child>
<widget class="GtkEntry" id="name_entry">
<object class="GtkEntry" id="name_entry">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="invisible_char">&#x25CF;</property>
<property name="activates_default">True</property>
</widget>
<property name="invisible_char_set">True</property>
<property name="primary_icon_activatable">False</property>
<property name="secondary_icon_activatable">False</property>
<property name="primary_icon_sensitive">True</property>
<property name="secondary_icon_sensitive">True</property>
</object>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
@ -292,10 +88,11 @@
</packing>
</child>
<child>
<widget class="GtkLabel" id="spacer">
<object class="GtkLabel" id="spacer">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xalign">0</property>
</widget>
</object>
<packing>
<property name="top_attach">2</property>
<property name="bottom_attach">3</property>
@ -304,12 +101,13 @@
</packing>
</child>
<child>
<widget class="GtkLabel" id="label11">
<object class="GtkLabel" id="label11">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xalign">0</property>
<property name="label" translatable="yes">&lt;b&gt;Tax Table Entry&lt;/b&gt;</property>
<property name="use_markup">True</property>
</widget>
</object>
<packing>
<property name="right_attach">2</property>
<property name="top_attach">3</property>
@ -319,12 +117,13 @@
</packing>
</child>
<child>
<widget class="GtkLabel" id="table_title">
<object class="GtkLabel" id="table_title">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xalign">0</property>
<property name="label" translatable="yes">&lt;b&gt;Tax Table&lt;/b&gt;</property>
<property name="use_markup">True</property>
</widget>
</object>
<packing>
<property name="right_attach">2</property>
<property name="x_options">GTK_FILL</property>
@ -332,19 +131,21 @@
</packing>
</child>
<child>
<widget class="GtkAlignment" id="alignment4">
<object class="GtkAlignment" id="alignment4">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="left_padding">12</property>
<child>
<widget class="GtkLabel" id="account_label">
<object class="GtkLabel" id="account_label">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xalign">0</property>
<property name="yalign">0</property>
<property name="label" translatable="yes">_Account:</property>
<property name="use_underline">True</property>
</widget>
</object>
</child>
</widget>
</object>
<packing>
<property name="top_attach">6</property>
<property name="bottom_attach">7</property>
@ -353,19 +154,21 @@
</packing>
</child>
<child>
<widget class="GtkAlignment" id="alignment3">
<object class="GtkAlignment" id="alignment3">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="left_padding">12</property>
<child>
<widget class="GtkLabel" id="value_label">
<object class="GtkLabel" id="value_label">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xalign">0</property>
<property name="label" translatable="yes">_Value: </property>
<property name="use_underline">True</property>
<property name="justify">right</property>
</widget>
</object>
</child>
</widget>
</object>
<packing>
<property name="top_attach">5</property>
<property name="bottom_attach">6</property>
@ -374,20 +177,22 @@
</packing>
</child>
<child>
<widget class="GtkAlignment" id="alignment2">
<object class="GtkAlignment" id="alignment2">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="left_padding">12</property>
<child>
<widget class="GtkLabel" id="label6">
<object class="GtkLabel" id="label6">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xalign">0</property>
<property name="label" translatable="yes">_Type: </property>
<property name="use_underline">True</property>
<property name="justify">right</property>
<property name="mnemonic_widget">type_combobox</property>
</widget>
</object>
</child>
</widget>
</object>
<packing>
<property name="top_attach">4</property>
<property name="bottom_attach">5</property>
@ -396,15 +201,15 @@
</packing>
</child>
<child>
<widget class="GtkScrolledWindow" id="acct_window">
<object class="GtkScrolledWindow" id="acct_window">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="can_focus">True</property>
<property name="hscrollbar_policy">never</property>
<property name="vscrollbar_policy">automatic</property>
<child>
<placeholder/>
</child>
</widget>
</object>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
@ -413,12 +218,13 @@
</packing>
</child>
<child>
<widget class="GtkHBox" id="amount_box">
<object class="GtkHBox" id="amount_box">
<property name="visible">True</property>
<property name="can_focus">False</property>
<child>
<placeholder/>
</child>
</widget>
</object>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
@ -428,20 +234,22 @@
</packing>
</child>
<child>
<widget class="GtkAlignment" id="alignment1">
<object class="GtkAlignment" id="alignment1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="left_padding">12</property>
<child>
<widget class="GtkLabel" id="table_name">
<object class="GtkLabel" id="table_name">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xalign">0</property>
<property name="label" translatable="yes">_Name: </property>
<property name="use_underline">True</property>
<property name="justify">right</property>
<property name="mnemonic_widget">name_entry</property>
</widget>
</object>
</child>
</widget>
</object>
<packing>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
@ -450,11 +258,17 @@
</packing>
</child>
<child>
<widget class="GtkComboBox" id="type_combobox">
<object class="GtkComboBox" id="type_combobox">
<property name="visible">True</property>
<property name="items" translatable="yes">Value $
Percent %</property>
</widget>
<property name="can_focus">False</property>
<property name="model">type_liststore</property>
<child>
<object class="GtkCellRendererText" id="cellrenderertext1"/>
<attributes>
<attribute name="text">0</attribute>
</attributes>
</child>
</object>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
@ -467,56 +281,323 @@ Percent %</property>
<child>
<placeholder/>
</child>
</widget>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">2</property>
</packing>
</child>
</object>
</child>
<action-widgets>
<action-widget response="-6">cancel_button</action-widget>
<action-widget response="-5">ok_button</action-widget>
</action-widgets>
</object>
<object class="GtkDialog" id="Tax Table Window">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="title" translatable="yes">Tax Tables</property>
<property name="type_hint">normal</property>
<signal name="destroy" handler="tax_table_window_destroy_cb" swapped="no"/>
<child internal-child="vbox">
<object class="GtkVBox" id="dialog-vbox4">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="spacing">8</property>
<child internal-child="action_area">
<widget class="GtkHButtonBox" id="dialog-action_area2">
<object class="GtkHButtonBox" id="dialog-action_area4">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="layout_style">end</property>
<child>
<widget class="GtkButton" id="cancel_button">
<property name="label">gtk-cancel</property>
<property name="response_id">-6</property>
<object class="GtkButton" id="close_button">
<property name="label">gtk-close</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="can_default">True</property>
<property name="receives_default">False</property>
<property name="receives_default">True</property>
<property name="use_action_appearance">False</property>
<property name="use_stock">True</property>
</widget>
<signal name="clicked" handler="tax_table_window_close" swapped="no"/>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">0</property>
</packing>
</child>
<child>
<widget class="GtkButton" id="ok_button">
<property name="label">gtk-ok</property>
<property name="response_id">-5</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="can_default">True</property>
<property name="has_default">True</property>
<property name="receives_default">False</property>
<property name="use_stock">True</property>
</widget>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">1</property>
</packing>
</child>
</widget>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="pack_type">end</property>
<property name="position">0</property>
</packing>
</child>
</widget>
<child>
<object class="GtkHBox" id="hbox4">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="spacing">12</property>
<child>
<object class="GtkVBox" id="vbox1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="border_width">6</property>
<property name="spacing">6</property>
<child>
<object class="GtkLabel" id="label1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xalign">0</property>
<property name="label" translatable="yes">&lt;b&gt;Tax Tables&lt;/b&gt;</property>
<property name="use_markup">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkAlignment" id="alignment5">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="left_padding">12</property>
<child>
<object class="GtkScrolledWindow" id="scrolledwindow1">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="hscrollbar_policy">automatic</property>
<property name="vscrollbar_policy">automatic</property>
<property name="shadow_type">in</property>
<child>
<object class="GtkTreeView" id="tax_tables_view">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="headers_visible">False</property>
<property name="rules_hint">True</property>
</object>
</child>
</object>
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
<child>
<object class="GtkAlignment" id="alignment6">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="left_padding">12</property>
<child>
<object class="GtkHButtonBox" id="hbox2">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="spacing">6</property>
<property name="layout_style">spread</property>
<child>
<object class="GtkButton" id="delete_table_button">
<property name="label">gtk-delete</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="use_action_appearance">False</property>
<property name="use_stock">True</property>
<signal name="clicked" handler="tax_table_delete_table_cb" swapped="no"/>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkButton" id="new_table_button">
<property name="label">gtk-new</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="use_action_appearance">False</property>
<property name="use_stock">True</property>
<signal name="clicked" handler="tax_table_new_table_cb" swapped="no"/>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">1</property>
</packing>
</child>
</object>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">2</property>
</packing>
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkVBox" id="vbox2">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="border_width">6</property>
<property name="spacing">6</property>
<child>
<object class="GtkLabel" id="label2">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xalign">0</property>
<property name="label" translatable="yes">&lt;b&gt;Tax Table Entries&lt;/b&gt;</property>
<property name="use_markup">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkAlignment" id="alignment7">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="left_padding">12</property>
<child>
<object class="GtkScrolledWindow" id="scrolledwindow2">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="hscrollbar_policy">automatic</property>
<property name="vscrollbar_policy">automatic</property>
<property name="shadow_type">in</property>
<child>
<object class="GtkTreeView" id="tax_table_entries">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="headers_visible">False</property>
<property name="rules_hint">True</property>
</object>
</child>
</object>
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
<child>
<object class="GtkAlignment" id="alignment8">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="left_padding">12</property>
<child>
<object class="GtkHButtonBox" id="hbox3">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="spacing">6</property>
<property name="layout_style">spread</property>
<child>
<object class="GtkButton" id="edit_entry_button">
<property name="label">_Edit</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="use_action_appearance">False</property>
<property name="use_stock">True</property>
<signal name="clicked" handler="tax_table_edit_entry_cb" swapped="no"/>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkButton" id="delete_entry_button">
<property name="label">gtk-delete</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="use_action_appearance">False</property>
<property name="use_stock">True</property>
<signal name="clicked" handler="tax_table_delete_entry_cb" swapped="no"/>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">1</property>
</packing>
</child>
<child>
<object class="GtkButton" id="new_entry_button">
<property name="label">gtk-new</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="use_action_appearance">False</property>
<property name="use_stock">True</property>
<signal name="clicked" handler="tax_table_new_entry_cb" swapped="no"/>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">2</property>
</packing>
</child>
</object>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">2</property>
</packing>
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">2</property>
</packing>
</child>
</object>
</child>
</widget>
</glade-interface>
<action-widgets>
<action-widget response="-6">close_button</action-widget>
</action-widgets>
</object>
<object class="GtkListStore" id="type_liststore">
<columns>
<!-- column-name item -->
<column type="gchararray"/>
</columns>
<data>
<row>
<col id="0" translatable="yes">Value $</col>
</row>
<row>
<col id="0" translatable="yes">Percent %</col>
</row>
</data>
</object>
</interface>

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0"?>
<interface>
<requires lib="gtk+" version="2.16"/>
<!-- interface-naming-policy toplevel-contextual -->