mirror of
https://github.com/Gnucash/gnucash.git
synced 2025-02-25 18:55:30 -06:00
* src/report/report-gnome/report.glade: add
* src/report/report-gnome/report-gnome.scm: handle options-editors here instead of in other report modules * src/report/report-gnome/gw-report-gnome-spec.scm: g-wrap more report api * src/report/report-gnome/dialog-style-sheet.h: add * src/report/report-gnome/dialog-style-sheet.c: add * src/report/report-gnome/dialog-column-view.h: add * src/report/report-gnome/dialog-column-view.c: add * src/report/report-gnome/Makefile.am: add new files. fix .scm-links git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@6307 57a11ea4-9604-0410-9ed3-97b8803252fd
This commit is contained in:
parent
a0134882f7
commit
b6f33f8d22
@ -15,11 +15,15 @@ AM_CFLAGS = \
|
||||
${GNOME_PRINT_CFLAGS}
|
||||
|
||||
libgncmod_report_gnome_la_SOURCES = \
|
||||
dialog-column-view.c \
|
||||
dialog-style-sheet.c \
|
||||
gncmod-report-gnome.c \
|
||||
window-report.c
|
||||
|
||||
gncincludedir = ${GNC_INCLUDE_DIR}
|
||||
gncinclude_HEADERS = \
|
||||
dialog-column-view.h \
|
||||
dialog-style-sheet.h \
|
||||
window-report.h
|
||||
|
||||
libgncmod_report_gnome_la_LDFLAGS = -module
|
||||
@ -44,8 +48,12 @@ gncmod_DATA = report-gnome.scm
|
||||
|
||||
noinst_DATA = .scm-links
|
||||
|
||||
gladedir = $(GNC_GLADE_DIR)
|
||||
glade_DATA = report.glade
|
||||
|
||||
EXTRA_DIST = \
|
||||
.cvsignore \
|
||||
${glade_DATA} \
|
||||
${gwmod_DATA} \
|
||||
${gncmod_DATA}
|
||||
|
||||
@ -53,6 +61,7 @@ EXTRA_DIST = \
|
||||
rm -f gnucash g-wrapped
|
||||
ln -sf . gnucash
|
||||
ln -sf . g-wrapped
|
||||
ln -sf . report
|
||||
touch .scm-links
|
||||
|
||||
gw-report-gnome.scm gw-report-gnome.c gw-report-gnome.h: .scm-links gw-report-gnome-spec.scm
|
||||
@ -66,4 +75,4 @@ gw-report-gnome.scm gw-report-gnome.c gw-report-gnome.h: .scm-links gw-report-gn
|
||||
|
||||
BUILT_SOURCES = gw-report-gnome.scm gw-report-gnome.c gw-report-gnome.h
|
||||
CLEANFILES = gw-report-gnome.scm gw-report-gnome.c gw-report-gnome.h \
|
||||
gw-report-gnome.html gnucash g-wrapped .scm-links
|
||||
gw-report-gnome.html gnucash g-wrapped report .scm-links
|
||||
|
504
src/report/report-gnome/dialog-column-view.c
Normal file
504
src/report/report-gnome/dialog-column-view.c
Normal file
@ -0,0 +1,504 @@
|
||||
/********************************************************************
|
||||
* dialog-column-view.c -- editor for simple column view of reports *
|
||||
* Copyright (C) 2001 Bill Gribble <grib@billgribble.com> *
|
||||
* *
|
||||
* This program is free software; you can redistribute it and/or *
|
||||
* modify it under the terms of the GNU General Public License as *
|
||||
* published by the Free Software Foundation; either version 2 of *
|
||||
* the License, or (at your option) any later version. *
|
||||
* *
|
||||
* This program is distributed in the hope that it will be useful, *
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
||||
* GNU General Public License for more details. *
|
||||
* *
|
||||
* You should have received a copy of the GNU General Public License*
|
||||
* along with this program; if not, contact: *
|
||||
* *
|
||||
* Free Software Foundation Voice: +1-617-542-5942 *
|
||||
* 59 Temple Place - Suite 330 Fax: +1-617-542-2652 *
|
||||
* Boston, MA 02111-1307, USA gnu@gnu.org *
|
||||
********************************************************************/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <gnome.h>
|
||||
#include <guile/gh.h>
|
||||
#include <g-wrap-runtime-guile.h>
|
||||
|
||||
#include "dialog-column-view.h"
|
||||
#include "dialog-options.h"
|
||||
#include "dialog-utils.h"
|
||||
#include "messages.h"
|
||||
#include "option-util.h"
|
||||
#include "window-report.h"
|
||||
|
||||
struct gncp_column_view_edit {
|
||||
GNCOptionWin * optwin;
|
||||
GtkCList * available;
|
||||
GtkCList * contents;
|
||||
|
||||
SCM options;
|
||||
SCM view;
|
||||
GNCOptionDB * odb;
|
||||
|
||||
SCM available_list;
|
||||
int available_selected;
|
||||
|
||||
SCM contents_list;
|
||||
int contents_selected;
|
||||
};
|
||||
|
||||
|
||||
static void gnc_column_view_edit_add_cb(GtkButton * button,
|
||||
gpointer user_data);
|
||||
static void gnc_column_view_edit_remove_cb(GtkButton * button,
|
||||
gpointer user_data);
|
||||
static void gnc_edit_column_view_move_up_cb(GtkButton * button,
|
||||
gpointer user_data);
|
||||
static void gnc_edit_column_view_move_down_cb(GtkButton * button,
|
||||
gpointer user_data);
|
||||
static void gnc_column_view_edit_size_cb(GtkButton * button,
|
||||
gpointer user_data);
|
||||
|
||||
|
||||
static void
|
||||
gnc_column_view_set_option(GNCOptionDB * odb, char * section, char * name,
|
||||
SCM new_value) {
|
||||
GNCOption * option =
|
||||
gnc_option_db_get_option_by_name(odb, section, name);
|
||||
|
||||
if(option)
|
||||
{
|
||||
gnc_option_db_set_option(odb, section, name, new_value);
|
||||
|
||||
/* set_option doesn't do this */
|
||||
gnc_option_set_changed (option, TRUE);
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
gnc_column_view_edit_destroy(gnc_column_view_edit * view) {
|
||||
gnc_options_dialog_destroy(view->optwin);
|
||||
scm_unprotect_object(view->options);
|
||||
scm_unprotect_object(view->view);
|
||||
gnc_option_db_destroy(view->odb);
|
||||
g_free(view);
|
||||
}
|
||||
|
||||
static void
|
||||
update_display_lists(gnc_column_view_edit * view) {
|
||||
SCM get_names = gh_eval_str("gnc:all-report-template-names");
|
||||
SCM template_menu_name = gh_eval_str("gnc:report-template-menu-name/name");
|
||||
SCM report_menu_name = gh_eval_str("gnc:report-menu-name");
|
||||
SCM find_report = gh_eval_str("gnc:find-report");
|
||||
SCM names = gh_call0(get_names);
|
||||
SCM contents =
|
||||
gnc_option_db_lookup_option(view->odb, "__general", "report-list",
|
||||
SCM_BOOL_F);
|
||||
SCM this_report, this_name;
|
||||
SCM selection;
|
||||
char * name[3];
|
||||
int row, i;
|
||||
|
||||
/* Update the list of available reports (left selection box). */
|
||||
row = view->available_selected;
|
||||
|
||||
if(gh_list_p(view->available_list) && !gh_null_p (view->available_list)) {
|
||||
row = MIN (row, gh_length (view->available_list) - 1);
|
||||
selection = gh_list_ref (view->available_list, gh_int2scm (row));
|
||||
}
|
||||
else {
|
||||
selection = SCM_UNDEFINED;
|
||||
}
|
||||
|
||||
scm_unprotect_object(view->available_list);
|
||||
view->available_list = names;
|
||||
scm_protect_object(view->available_list);
|
||||
|
||||
gtk_clist_freeze(view->available);
|
||||
gtk_clist_clear(view->available);
|
||||
if(gh_list_p(names)) {
|
||||
for(i = 0; !gh_null_p(names); names = gh_cdr(names), i++) {
|
||||
if (gh_equal_p (gh_car(names), selection))
|
||||
row = i;
|
||||
name[0] = gh_scm2newstr(gh_call1(template_menu_name, gh_car(names)),
|
||||
NULL);
|
||||
gtk_clist_append(view->available, name);
|
||||
free(name[0]);
|
||||
}
|
||||
}
|
||||
gtk_clist_select_row(view->available, row, 0);
|
||||
gtk_clist_thaw(view->available);
|
||||
|
||||
|
||||
/* Update the list of selected reports (right selection box). */
|
||||
row = view->contents_selected;
|
||||
|
||||
if(gh_list_p(view->contents_list) && !gh_null_p (view->contents_list)) {
|
||||
row = MIN (row, gh_length (view->contents_list) - 1);
|
||||
selection = gh_list_ref (view->contents_list, gh_int2scm (row));
|
||||
}
|
||||
else {
|
||||
selection = SCM_UNDEFINED;
|
||||
}
|
||||
|
||||
scm_unprotect_object(view->contents_list);
|
||||
view->contents_list = contents;
|
||||
scm_protect_object(view->contents_list);
|
||||
|
||||
gtk_clist_freeze(view->contents);
|
||||
gtk_clist_clear(view->contents);
|
||||
if(gh_list_p(contents)) {
|
||||
for(i = 0; !gh_null_p(contents); contents = gh_cdr(contents), i++) {
|
||||
if (gh_equal_p (gh_car(contents), selection))
|
||||
row = i;
|
||||
|
||||
this_report = gh_call1(find_report, gh_caar(contents));
|
||||
/* this_name = gh_call1(report_name, this_report); */
|
||||
this_name = gh_call1(report_menu_name, this_report);
|
||||
name[0] = gh_scm2newstr(this_name, NULL);
|
||||
name[1] = g_strdup_printf("%d", gh_scm2int(gh_cadr(gh_car(contents))));
|
||||
name[2] = g_strdup_printf("%d", gh_scm2int(gh_caddr(gh_car(contents))));
|
||||
gtk_clist_append(view->contents, name);
|
||||
free(name[0]);
|
||||
g_free(name[1]);
|
||||
g_free(name[2]);
|
||||
}
|
||||
}
|
||||
gtk_clist_select_row(view->contents, row, 0);
|
||||
gtk_clist_thaw(view->contents);
|
||||
|
||||
gnc_clist_columns_autosize (view->available);
|
||||
gnc_clist_columns_autosize (view->contents);
|
||||
}
|
||||
|
||||
static void
|
||||
gnc_column_view_select_avail_cb(GtkCList * clist, gint row, gint col,
|
||||
GdkEvent * ev, gpointer data) {
|
||||
gnc_column_view_edit * r = data;
|
||||
r->available_selected = row;
|
||||
}
|
||||
|
||||
static void
|
||||
gnc_column_view_select_contents_cb(GtkCList * clist, gint row, gint col,
|
||||
GdkEvent * ev, gpointer data) {
|
||||
gnc_column_view_edit * r = data;
|
||||
r->contents_selected = row;
|
||||
}
|
||||
|
||||
static void
|
||||
gnc_column_view_edit_apply_cb(GNCOptionWin * w, gpointer user_data) {
|
||||
SCM dirty_report = gh_eval_str("gnc:report-set-dirty?!");
|
||||
gnc_column_view_edit * win = user_data;
|
||||
|
||||
if(!win) return;
|
||||
gnc_option_db_commit(win->odb);
|
||||
gh_call2(dirty_report, win->view, SCM_BOOL_T);
|
||||
}
|
||||
|
||||
static void
|
||||
gnc_column_view_edit_close_cb(GNCOptionWin * win, gpointer user_data) {
|
||||
gnc_column_view_edit * r = user_data;
|
||||
SCM set_editor = gh_eval_str("gnc:report-set-editor-widget!");
|
||||
|
||||
gh_call2(set_editor, r->view, SCM_BOOL_F);
|
||||
gnc_column_view_edit_destroy(r);
|
||||
}
|
||||
|
||||
|
||||
/********************************************************************
|
||||
* gnc_column_view_edit_options
|
||||
* create the editor.
|
||||
********************************************************************/
|
||||
|
||||
GtkWidget *
|
||||
gnc_column_view_edit_options(SCM options, SCM view) {
|
||||
SCM get_editor = gh_eval_str("gnc:report-editor-widget");
|
||||
SCM ptr;
|
||||
GtkWidget * editor;
|
||||
|
||||
ptr = gh_call1(get_editor, view);
|
||||
if(ptr != SCM_BOOL_F) {
|
||||
GtkWidget * w = gw_wcp_get_ptr(ptr);
|
||||
gdk_window_raise(GTK_WIDGET(w)->window);
|
||||
return NULL;
|
||||
}
|
||||
else {
|
||||
gnc_column_view_edit * r = g_new0(gnc_column_view_edit, 1);
|
||||
GladeXML *xml;
|
||||
|
||||
r->optwin = gnc_options_dialog_new(TRUE, NULL);
|
||||
|
||||
xml = gnc_glade_xml_new ("report.glade", "view_contents_hbox");
|
||||
|
||||
glade_xml_signal_connect_data
|
||||
(xml, "gnc_column_view_edit_add_cb",
|
||||
GTK_SIGNAL_FUNC (gnc_column_view_edit_add_cb), r);
|
||||
|
||||
glade_xml_signal_connect_data
|
||||
(xml, "gnc_column_view_edit_remove_cb",
|
||||
GTK_SIGNAL_FUNC (gnc_column_view_edit_remove_cb), r);
|
||||
|
||||
glade_xml_signal_connect_data
|
||||
(xml, "gnc_edit_column_view_move_up_cb",
|
||||
GTK_SIGNAL_FUNC (gnc_edit_column_view_move_up_cb), r);
|
||||
|
||||
glade_xml_signal_connect_data
|
||||
(xml, "gnc_edit_column_view_move_down_cb",
|
||||
GTK_SIGNAL_FUNC (gnc_edit_column_view_move_down_cb), r);
|
||||
|
||||
glade_xml_signal_connect_data
|
||||
(xml, "gnc_column_view_edit_size_cb",
|
||||
GTK_SIGNAL_FUNC (gnc_column_view_edit_size_cb), r);
|
||||
|
||||
editor = glade_xml_get_widget (xml, "view_contents_hbox");
|
||||
r->available = GTK_CLIST (glade_xml_get_widget (xml, "available_list"));
|
||||
r->contents = GTK_CLIST (glade_xml_get_widget (xml, "contents_list"));
|
||||
r->options = options;
|
||||
r->view = view;
|
||||
r->available_selected = 0;
|
||||
r->available_list = SCM_EOL;
|
||||
r->contents_selected = 0;
|
||||
r->contents_list = SCM_EOL;
|
||||
r->odb = gnc_option_db_new(r->options);
|
||||
|
||||
gnc_build_options_dialog_contents(r->optwin, r->odb);
|
||||
|
||||
gtk_notebook_append_page(GTK_NOTEBOOK(gnc_options_dialog_notebook
|
||||
(r->optwin)),
|
||||
editor,
|
||||
gtk_label_new(_("Contents")));
|
||||
|
||||
scm_protect_object(r->options);
|
||||
scm_protect_object(r->view);
|
||||
scm_protect_object(r->available_list);
|
||||
scm_protect_object(r->contents_list);
|
||||
|
||||
gtk_signal_connect(GTK_OBJECT(r->available), "select_row",
|
||||
gnc_column_view_select_avail_cb, (gpointer)r);
|
||||
gtk_signal_connect(GTK_OBJECT(r->contents), "select_row",
|
||||
gnc_column_view_select_contents_cb, (gpointer)r);
|
||||
|
||||
update_display_lists(r);
|
||||
|
||||
gtk_clist_column_titles_passive (r->available);
|
||||
gtk_clist_column_titles_passive (r->contents);
|
||||
|
||||
gnc_options_dialog_set_apply_cb(r->optwin,
|
||||
gnc_column_view_edit_apply_cb, r);
|
||||
gnc_options_dialog_set_close_cb(r->optwin,
|
||||
gnc_column_view_edit_close_cb, r);
|
||||
|
||||
gtk_widget_show_all(gnc_options_dialog_widget(r->optwin));
|
||||
return gnc_options_dialog_widget(r->optwin);
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
gnc_column_view_edit_add_cb(GtkButton * button, gpointer user_data) {
|
||||
gnc_column_view_edit * r = user_data;
|
||||
SCM make_report = gh_eval_str("gnc:make-report");
|
||||
SCM mark_report = gh_eval_str("gnc:report-set-needs-save?!");
|
||||
SCM find_report = gh_eval_str("gnc:find-report");
|
||||
SCM template_name;
|
||||
SCM new_report;
|
||||
SCM newlist = SCM_EOL;
|
||||
SCM oldlist = r->contents_list;
|
||||
int count;
|
||||
int oldlength;
|
||||
|
||||
if(gh_list_p(r->available_list) &&
|
||||
(gh_length(r->available_list) > r->available_selected)) {
|
||||
template_name = gh_list_ref(r->available_list,
|
||||
gh_int2scm(r->available_selected));
|
||||
new_report = gh_call1(make_report, template_name);
|
||||
gh_call2(mark_report, gh_call1(find_report, new_report), SCM_BOOL_T);
|
||||
oldlength = gh_length(r->contents_list);
|
||||
|
||||
if(oldlength > r->contents_selected) {
|
||||
for(count = 0; count < r->contents_selected; count++) {
|
||||
newlist = gh_cons(gh_car(oldlist), newlist);
|
||||
oldlist = gh_cdr(oldlist);
|
||||
}
|
||||
newlist = gh_append2(gh_reverse(gh_cons(SCM_LIST4(new_report,
|
||||
gh_int2scm(1),
|
||||
gh_int2scm(1),
|
||||
SCM_BOOL_F),
|
||||
newlist)),
|
||||
oldlist);
|
||||
}
|
||||
else {
|
||||
newlist = gh_append2(oldlist,
|
||||
SCM_LIST1(SCM_LIST4(new_report,
|
||||
gh_int2scm(1),
|
||||
gh_int2scm(1),
|
||||
SCM_BOOL_F)));
|
||||
r->contents_selected = oldlength;
|
||||
}
|
||||
|
||||
scm_unprotect_object(r->contents_list);
|
||||
r->contents_list = newlist;
|
||||
scm_protect_object(r->contents_list);
|
||||
|
||||
gnc_column_view_set_option(r->odb, "__general", "report-list",
|
||||
r->contents_list);
|
||||
gnc_options_dialog_changed (r->optwin);
|
||||
}
|
||||
|
||||
update_display_lists(r);
|
||||
}
|
||||
|
||||
static void
|
||||
gnc_column_view_edit_remove_cb(GtkButton * button, gpointer user_data) {
|
||||
gnc_column_view_edit * r = user_data;
|
||||
SCM newlist = SCM_EOL;
|
||||
SCM oldlist = r->contents_list;
|
||||
int count;
|
||||
int oldlength;
|
||||
|
||||
if(gh_list_p(r->contents_list)) {
|
||||
oldlength = gh_length(r->contents_list);
|
||||
if(oldlength > r->contents_selected) {
|
||||
for(count=0; count < r->contents_selected; count++) {
|
||||
newlist = gh_cons(gh_car(oldlist), newlist);
|
||||
oldlist = gh_cdr(oldlist);
|
||||
}
|
||||
if(count <= oldlength) {
|
||||
newlist = gh_append2(gh_reverse(newlist), gh_cdr(oldlist));
|
||||
}
|
||||
}
|
||||
|
||||
if(oldlength == r->contents_selected + 1) {
|
||||
r->contents_selected --;
|
||||
}
|
||||
|
||||
scm_unprotect_object(r->contents_list);
|
||||
r->contents_list = newlist;
|
||||
scm_protect_object(r->contents_list);
|
||||
|
||||
gnc_column_view_set_option(r->odb, "__general", "report-list",
|
||||
r->contents_list);
|
||||
|
||||
gnc_options_dialog_changed (r->optwin);
|
||||
}
|
||||
|
||||
update_display_lists(r);
|
||||
}
|
||||
|
||||
static void
|
||||
gnc_edit_column_view_move_up_cb(GtkButton * button, gpointer user_data) {
|
||||
gnc_column_view_edit * r = user_data;
|
||||
SCM oldlist = r->contents_list;
|
||||
SCM newlist = SCM_EOL;
|
||||
SCM temp;
|
||||
int oldlength;
|
||||
int count;
|
||||
|
||||
oldlength = gh_length(r->contents_list);
|
||||
if((r->contents_selected > 0) && (oldlength > r->contents_selected)) {
|
||||
for(count = 1; count < r->contents_selected; count++) {
|
||||
newlist = gh_cons(gh_car(oldlist), newlist);
|
||||
oldlist = gh_cdr(oldlist);
|
||||
}
|
||||
temp = gh_car(oldlist);
|
||||
oldlist = gh_cdr(oldlist);
|
||||
newlist = gh_cons(temp, gh_cons(gh_car(oldlist), newlist));
|
||||
newlist = gh_append2(gh_reverse(newlist), gh_cdr(oldlist));
|
||||
|
||||
scm_unprotect_object(r->contents_list);
|
||||
r->contents_list = newlist;
|
||||
scm_protect_object(r->contents_list);
|
||||
|
||||
r->contents_selected = r->contents_selected - 1;
|
||||
|
||||
gnc_column_view_set_option(r->odb, "__general", "report-list",
|
||||
r->contents_list);
|
||||
|
||||
gnc_options_dialog_changed (r->optwin);
|
||||
|
||||
update_display_lists(r);
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
gnc_edit_column_view_move_down_cb(GtkButton * button, gpointer user_data) {
|
||||
gnc_column_view_edit * r = user_data;
|
||||
SCM oldlist = r->contents_list;
|
||||
SCM newlist = SCM_EOL;
|
||||
SCM temp;
|
||||
int oldlength;
|
||||
int count;
|
||||
|
||||
oldlength = gh_length(r->contents_list);
|
||||
if(oldlength > (r->contents_selected + 1)) {
|
||||
for(count = 0; count < r->contents_selected; count++) {
|
||||
newlist = gh_cons(gh_car(oldlist), newlist);
|
||||
oldlist = gh_cdr(oldlist);
|
||||
}
|
||||
temp = gh_car(oldlist);
|
||||
oldlist = gh_cdr(oldlist);
|
||||
newlist = gh_cons(temp, gh_cons(gh_car(oldlist), newlist));
|
||||
newlist = gh_append2(gh_reverse(newlist), gh_cdr(oldlist));
|
||||
|
||||
scm_unprotect_object(r->contents_list);
|
||||
r->contents_list = newlist;
|
||||
scm_protect_object(r->contents_list);
|
||||
|
||||
r->contents_selected = r->contents_selected + 1;
|
||||
|
||||
gnc_column_view_set_option(r->odb, "__general", "report-list",
|
||||
r->contents_list);
|
||||
|
||||
gnc_options_dialog_changed (r->optwin);
|
||||
|
||||
update_display_lists(r);
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
gnc_column_view_edit_size_cb(GtkButton * button, gpointer user_data) {
|
||||
gnc_column_view_edit * r = user_data;
|
||||
GtkWidget * rowspin;
|
||||
GtkWidget * colspin;
|
||||
GtkWidget * dlg;
|
||||
GladeXML *xml;
|
||||
SCM current;
|
||||
int length;
|
||||
int dlg_ret;
|
||||
|
||||
xml = gnc_glade_xml_new ("report.glade", "Edit Report Size");
|
||||
dlg = glade_xml_get_widget (xml, "Edit Report Size");
|
||||
|
||||
/* get the spinner widgets */
|
||||
rowspin = glade_xml_get_widget (xml, "row_spin");
|
||||
colspin = glade_xml_get_widget (xml, "col_spin");
|
||||
|
||||
length = gh_length(r->contents_list);
|
||||
if(length > r->contents_selected) {
|
||||
current = gh_list_ref(r->contents_list,
|
||||
gh_int2scm(r->contents_selected));
|
||||
gtk_spin_button_set_value(GTK_SPIN_BUTTON(colspin),
|
||||
(float)gh_scm2int(gh_cadr(current)));
|
||||
gtk_spin_button_set_value(GTK_SPIN_BUTTON(rowspin),
|
||||
(float)gh_scm2int(gh_caddr(current)));
|
||||
|
||||
dlg_ret = gnome_dialog_run_and_close(GNOME_DIALOG(dlg));
|
||||
|
||||
if(dlg_ret == 0) {
|
||||
current = SCM_LIST4(gh_car(current),
|
||||
gh_int2scm(gtk_spin_button_get_value_as_int
|
||||
(GTK_SPIN_BUTTON(colspin))),
|
||||
gh_int2scm(gtk_spin_button_get_value_as_int
|
||||
(GTK_SPIN_BUTTON(rowspin))),
|
||||
SCM_BOOL_F);
|
||||
scm_unprotect_object(r->contents_list);
|
||||
r->contents_list = scm_list_set_x(r->contents_list,
|
||||
gh_int2scm(r->contents_selected),
|
||||
current);
|
||||
scm_protect_object(r->contents_list);
|
||||
gnc_options_dialog_changed (r->optwin);
|
||||
update_display_lists(r);
|
||||
}
|
||||
}
|
||||
}
|
27
src/report/report-gnome/dialog-column-view.h
Normal file
27
src/report/report-gnome/dialog-column-view.h
Normal file
@ -0,0 +1,27 @@
|
||||
/********************************************************************
|
||||
* dialog-column-view.h -- editor for simple column view *
|
||||
* Copyright (C) 2001 Bill Gribble <grib@billgribble.com> *
|
||||
* *
|
||||
* This program is free software; you can redistribute it and/or *
|
||||
* modify it under the terms of the GNU General Public License as *
|
||||
* published by the Free Software Foundation; either version 2 of *
|
||||
* the License, or (at your option) any later version. *
|
||||
* *
|
||||
* This program is distributed in the hope that it will be useful, *
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
||||
* GNU General Public License for more details. *
|
||||
* *
|
||||
* You should have received a copy of the GNU General Public License*
|
||||
* along with this program; if not, contact: *
|
||||
* *
|
||||
* Free Software Foundation Voice: +1-617-542-5942 *
|
||||
* 59 Temple Place - Suite 330 Fax: +1-617-542-2652 *
|
||||
* Boston, MA 02111-1307, USA gnu@gnu.org *
|
||||
********************************************************************/
|
||||
|
||||
#include <guile/gh.h>
|
||||
|
||||
typedef struct gncp_column_view_edit gnc_column_view_edit;
|
||||
|
||||
GtkWidget * gnc_column_view_edit_options(SCM options, SCM view);
|
272
src/report/report-gnome/dialog-style-sheet.c
Normal file
272
src/report/report-gnome/dialog-style-sheet.c
Normal file
@ -0,0 +1,272 @@
|
||||
/********************************************************************
|
||||
* dialog-style-sheet.c -- window for configuring HTML style *
|
||||
* sheets in GnuCash *
|
||||
* Copyright (C) 2000 Bill Gribble <grib@billgribble.com> *
|
||||
* *
|
||||
* This program is free software; you can redistribute it and/or *
|
||||
* modify it under the terms of the GNU General Public License as *
|
||||
* published by the Free Software Foundation; either version 2 of *
|
||||
* the License, or (at your option) any later version. *
|
||||
* *
|
||||
* This program is distributed in the hope that it will be useful, *
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
||||
* GNU General Public License for more details. *
|
||||
* *
|
||||
* You should have received a copy of the GNU General Public License*
|
||||
* along with this program; if not, contact: *
|
||||
* *
|
||||
* Free Software Foundation Voice: +1-617-542-5942 *
|
||||
* 59 Temple Place - Suite 330 Fax: +1-617-542-2652 *
|
||||
* Boston, MA 02111-1307, USA gnu@gnu.org *
|
||||
********************************************************************/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <gnome.h>
|
||||
|
||||
#include "dialog-style-sheet.h"
|
||||
#include "dialog-options.h"
|
||||
#include "dialog-utils.h"
|
||||
#include "messages.h"
|
||||
|
||||
StyleSheetDialog * gnc_style_sheet_dialog = NULL;
|
||||
|
||||
struct _stylesheetdialog {
|
||||
GtkWidget * toplevel;
|
||||
GtkWidget * list;
|
||||
GtkWidget * options_frame;
|
||||
struct ss_info * selection;
|
||||
};
|
||||
|
||||
struct ss_info {
|
||||
GNCOptionWin * odialog;
|
||||
GNCOptionDB * odb;
|
||||
SCM stylesheet;
|
||||
};
|
||||
|
||||
|
||||
static void
|
||||
gnc_style_sheet_options_apply_cb(GNCOptionWin * propertybox,
|
||||
gpointer user_data) {
|
||||
struct ss_info * ssi = (struct ss_info *)user_data;
|
||||
SCM apply_changes = gh_eval_str("gnc:html-style-sheet-apply-changes");
|
||||
gnc_option_db_commit(ssi->odb);
|
||||
gh_call1(apply_changes, ssi->stylesheet);
|
||||
}
|
||||
|
||||
|
||||
static void
|
||||
gnc_style_sheet_options_close_cb(GNCOptionWin * propertybox,
|
||||
gpointer user_data) {
|
||||
StyleSheetDialog * ss = user_data;
|
||||
gtk_widget_hide(GTK_WIDGET(ss->toplevel));
|
||||
}
|
||||
|
||||
|
||||
static void
|
||||
gnc_style_sheet_dialog_select_cb(GtkCList * list, gint row, gint col,
|
||||
GdkEvent * ev, gpointer user_data) {
|
||||
StyleSheetDialog * ssd = (StyleSheetDialog *)user_data;
|
||||
struct ss_info * ssinfo = gtk_clist_get_row_data(list, row);
|
||||
GList * children = gtk_container_children(GTK_CONTAINER(ssd->options_frame));
|
||||
|
||||
if(children) {
|
||||
gtk_container_remove(GTK_CONTAINER(ssd->options_frame),
|
||||
GTK_WIDGET(children->data));
|
||||
}
|
||||
gtk_container_add(GTK_CONTAINER(ssd->options_frame),
|
||||
gnc_options_dialog_widget(ssinfo->odialog));
|
||||
gtk_widget_show(gnc_options_dialog_widget(ssinfo->odialog));
|
||||
gtk_widget_show(ssd->options_frame);
|
||||
ssd->selection = ssinfo;
|
||||
}
|
||||
|
||||
static void
|
||||
row_data_destroy_cb(gpointer data) {
|
||||
struct ss_info * ss = data;
|
||||
gnc_option_db_destroy(ss->odb);
|
||||
gnc_options_dialog_destroy(ss->odialog);
|
||||
scm_unprotect_object(ss->stylesheet);
|
||||
g_free(ss);
|
||||
}
|
||||
|
||||
|
||||
static void
|
||||
gnc_style_sheet_dialog_fill(StyleSheetDialog * ss, SCM selected) {
|
||||
SCM stylesheets = gh_eval_str("(gnc:get-html-style-sheets)");
|
||||
SCM get_options = gh_eval_str("gnc:html-style-sheet-options");
|
||||
SCM get_name = gh_eval_str("gnc:html-style-sheet-name");
|
||||
int sel_row = 0;
|
||||
|
||||
/* pack it full of content */
|
||||
for(; !gh_null_p(stylesheets); stylesheets=gh_cdr(stylesheets)) {
|
||||
SCM scm_name = gh_call1(get_name, gh_car(stylesheets));
|
||||
SCM scm_options = gh_call1(get_options, gh_car(stylesheets));
|
||||
struct ss_info * ssinfo = g_new0(struct ss_info, 1);
|
||||
int this_row;
|
||||
char * c_names[1];
|
||||
char * c_name;
|
||||
|
||||
/* make the options DB and dialog, but don't parent it yet */
|
||||
ssinfo->odialog = gnc_options_dialog_new(FALSE, NULL);
|
||||
ssinfo->odb = gnc_option_db_new(scm_options);
|
||||
ssinfo->stylesheet = gh_car(stylesheets);
|
||||
|
||||
scm_protect_object(ssinfo->stylesheet);
|
||||
gtk_widget_ref(gnc_options_dialog_widget(ssinfo->odialog));
|
||||
|
||||
gnc_build_options_dialog_contents(ssinfo->odialog,
|
||||
ssinfo->odb);
|
||||
gnc_options_dialog_set_apply_cb(ssinfo->odialog,
|
||||
gnc_style_sheet_options_apply_cb,
|
||||
ssinfo);
|
||||
gnc_options_dialog_set_close_cb(ssinfo->odialog,
|
||||
gnc_style_sheet_options_close_cb,
|
||||
ss);
|
||||
|
||||
/* add the column name */
|
||||
c_name = gh_scm2newstr(scm_name, NULL);
|
||||
if (!c_name)
|
||||
continue;
|
||||
|
||||
c_names[0] = _(c_name);
|
||||
this_row = gtk_clist_append(GTK_CLIST(ss->list), c_names);
|
||||
free (c_name);
|
||||
|
||||
gtk_clist_set_row_data_full(GTK_CLIST(ss->list), this_row,
|
||||
(gpointer)ssinfo,
|
||||
row_data_destroy_cb);
|
||||
if(gh_eq_p(selected, gh_car(stylesheets))) {
|
||||
sel_row = this_row;
|
||||
}
|
||||
}
|
||||
|
||||
gtk_clist_select_row(GTK_CLIST(ss->list), sel_row, 0);
|
||||
}
|
||||
|
||||
|
||||
static void
|
||||
gnc_style_sheet_new_cb(GtkWidget * w, gpointer user_data) {
|
||||
StyleSheetDialog * ssd = user_data;
|
||||
SCM make_ss = gh_eval_str("gnc:make-html-style-sheet");
|
||||
SCM templates = gh_eval_str("(gnc:get-html-templates)");
|
||||
SCM t_name = gh_eval_str("gnc:html-style-sheet-template-name");
|
||||
GtkWidget * template_entry;
|
||||
GtkWidget * name_entry;
|
||||
GtkWidget * template_combo;
|
||||
GList * strings=NULL;
|
||||
GList * lptr;
|
||||
gint dialog_retval;
|
||||
char * template_str = NULL;
|
||||
char * name_str = NULL;
|
||||
|
||||
/* get the new name for the style sheet */
|
||||
GladeXML *xml = gnc_glade_xml_new ("report.glade",
|
||||
"New Style Sheet Dialog");
|
||||
GtkWidget * dlg = glade_xml_get_widget (xml, "New Style Sheet Dialog");
|
||||
template_entry = glade_xml_get_widget (xml, "template_entry");
|
||||
template_combo = glade_xml_get_widget (xml, "template_combo");
|
||||
name_entry = glade_xml_get_widget (xml, "name_entry");
|
||||
|
||||
/* put in the list of style sheet type names */
|
||||
for(; !gh_null_p(templates); templates=gh_cdr(templates)) {
|
||||
SCM t = gh_car(templates);
|
||||
strings = g_list_append(strings, gh_scm2newstr(gh_call1(t_name, t),
|
||||
NULL));
|
||||
}
|
||||
|
||||
gtk_combo_set_popdown_strings(GTK_COMBO(template_combo), strings);
|
||||
|
||||
/* free the strings list */
|
||||
for(lptr = strings; lptr; lptr = lptr->next) {
|
||||
free(lptr->data);
|
||||
}
|
||||
g_list_free(strings);
|
||||
|
||||
/* get the name */
|
||||
dialog_retval = gnome_dialog_run(GNOME_DIALOG(dlg));
|
||||
|
||||
if(dialog_retval == 0) {
|
||||
template_str = gtk_entry_get_text(GTK_ENTRY(template_entry));
|
||||
name_str = gtk_entry_get_text(GTK_ENTRY(name_entry));
|
||||
if(template_str && name_str) {
|
||||
SCM new_ss = gh_call2(make_ss,
|
||||
gh_str02scm(template_str),
|
||||
gh_str02scm(name_str));
|
||||
gtk_clist_clear(GTK_CLIST(ssd->list));
|
||||
gnc_style_sheet_dialog_fill(ssd, new_ss);
|
||||
}
|
||||
}
|
||||
|
||||
gnome_dialog_close(GNOME_DIALOG(dlg));
|
||||
}
|
||||
|
||||
|
||||
static void
|
||||
gnc_style_sheet_delete_cb(GtkWidget * w, gpointer user_data) {
|
||||
StyleSheetDialog * ssd = user_data;
|
||||
struct ss_info * ssi = ssd->selection;
|
||||
SCM remover = gh_eval_str("gnc:html-style-sheet-remove");
|
||||
gh_call1(remover, ssi->stylesheet);
|
||||
gtk_clist_clear(GTK_CLIST(ssd->list));
|
||||
gnc_style_sheet_dialog_fill(ssd, SCM_BOOL_F);
|
||||
}
|
||||
|
||||
|
||||
static int
|
||||
gnc_style_sheet_dialog_close_cb(GtkWidget * w, GdkEventAny * ev,
|
||||
gpointer user_data) {
|
||||
StyleSheetDialog * ss = user_data;
|
||||
gtk_widget_hide(GTK_WIDGET(ss->toplevel));
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static StyleSheetDialog *
|
||||
gnc_style_sheet_dialog_create() {
|
||||
StyleSheetDialog * ss = g_new0(StyleSheetDialog, 1);
|
||||
GtkWidget * new_button=NULL;
|
||||
GtkWidget * delete_button=NULL;
|
||||
GladeXML * xml;
|
||||
|
||||
xml = gnc_glade_xml_new ("report.glade", "HTML Style Sheet Dialog");
|
||||
|
||||
ss->toplevel = glade_xml_get_widget (xml, "HTML Style Sheet Dialog");
|
||||
|
||||
ss->list = glade_xml_get_widget (xml, "style_sheet_list");
|
||||
ss->options_frame = glade_xml_get_widget (xml, "style_sheet_options");
|
||||
new_button = glade_xml_get_widget (xml, "new_button");
|
||||
delete_button = glade_xml_get_widget (xml, "delete_button");
|
||||
|
||||
gtk_signal_connect(GTK_OBJECT(ss->list), "select_row",
|
||||
GTK_SIGNAL_FUNC(gnc_style_sheet_dialog_select_cb), ss);
|
||||
gtk_signal_connect(GTK_OBJECT(new_button), "clicked",
|
||||
GTK_SIGNAL_FUNC(gnc_style_sheet_new_cb), ss);
|
||||
gtk_signal_connect(GTK_OBJECT(delete_button), "clicked",
|
||||
GTK_SIGNAL_FUNC(gnc_style_sheet_delete_cb), ss);
|
||||
gtk_signal_connect(GTK_OBJECT(ss->toplevel), "delete_event",
|
||||
GTK_SIGNAL_FUNC(gnc_style_sheet_dialog_close_cb), ss);
|
||||
|
||||
gnc_style_sheet_dialog_fill(ss, SCM_BOOL_F);
|
||||
|
||||
gtk_window_set_policy(GTK_WINDOW(ss->toplevel), TRUE, TRUE, FALSE);
|
||||
|
||||
gtk_clist_columns_autosize (GTK_CLIST (ss->list));
|
||||
|
||||
gtk_widget_show(ss->toplevel);
|
||||
|
||||
return ss;
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
gnc_style_sheet_dialog_open(void) {
|
||||
if(gnc_style_sheet_dialog) {
|
||||
gtk_widget_show(gnc_style_sheet_dialog->toplevel);
|
||||
}
|
||||
else {
|
||||
gnc_style_sheet_dialog =
|
||||
gnc_style_sheet_dialog_create();
|
||||
}
|
||||
}
|
||||
|
31
src/report/report-gnome/dialog-style-sheet.h
Normal file
31
src/report/report-gnome/dialog-style-sheet.h
Normal file
@ -0,0 +1,31 @@
|
||||
/********************************************************************
|
||||
* dialog-style-sheet.h -- window for configuring HTML style *
|
||||
* sheets in GnuCash *
|
||||
* Copyright (C) 2000 Bill Gribble <grib@billgribble.com> *
|
||||
* *
|
||||
* This program is free software; you can redistribute it and/or *
|
||||
* modify it under the terms of the GNU General Public License as *
|
||||
* published by the Free Software Foundation; either version 2 of *
|
||||
* the License, or (at your option) any later version. *
|
||||
* *
|
||||
* This program is distributed in the hope that it will be useful, *
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
||||
* GNU General Public License for more details. *
|
||||
* *
|
||||
* You should have received a copy of the GNU General Public License*
|
||||
* along with this program; if not, contact: *
|
||||
* *
|
||||
* Free Software Foundation Voice: +1-617-542-5942 *
|
||||
* 59 Temple Place - Suite 330 Fax: +1-617-542-2652 *
|
||||
* Boston, MA 02111-1307, USA gnu@gnu.org *
|
||||
********************************************************************/
|
||||
|
||||
#ifndef GNC_DIALOG_STYLE_SHEET_H
|
||||
#define GNC_DIALOG_STYLE_SHEET_H
|
||||
|
||||
typedef struct _stylesheetdialog StyleSheetDialog;
|
||||
|
||||
void gnc_style_sheet_dialog_open(void);
|
||||
|
||||
#endif
|
@ -44,6 +44,8 @@
|
||||
mod
|
||||
(lambda (client-only?)
|
||||
(list
|
||||
"#include <dialog-column-view.h>\n"
|
||||
"#include <dialog-style-sheet.h>\n"
|
||||
"#include <window-report.h>\n")))
|
||||
|
||||
(let ((nnt (gw:wrap-non-native-type
|
||||
@ -91,4 +93,36 @@
|
||||
"gnc_report_raise_editor"
|
||||
'((<gw:scm> report))
|
||||
"Raise the report's editor window")
|
||||
|
||||
(gw:wrap-function
|
||||
mod
|
||||
'gnc:main-window-open-report
|
||||
'<gw:void>
|
||||
"gnc_main_window_open_report"
|
||||
'((<gw:int> report-id) (<gw:bool> top-level))
|
||||
"Show report window")
|
||||
|
||||
(gw:wrap-function
|
||||
mod
|
||||
'gnc:default-options-editor
|
||||
'<gnc:UIWidget>
|
||||
"gnc_report_window_default_params_editor"
|
||||
'((<gw:scm> options) (<gw:scm> report))
|
||||
"Default options editor window for reports")
|
||||
|
||||
(gw:wrap-function
|
||||
mod
|
||||
'gnc:style-sheet-dialog-open
|
||||
'<gw:void>
|
||||
"gnc_style_sheet_dialog_open"
|
||||
'()
|
||||
"Show the style sheet editor window.")
|
||||
|
||||
(gw:wrap-function
|
||||
mod
|
||||
'gnc:column-view-edit-options
|
||||
'<gnc:UIWidget>
|
||||
"gnc_column_view_edit_options"
|
||||
'((<gw:scm> options) (<gw:scm> view))
|
||||
"Create an editor for a column-view options object")
|
||||
)
|
||||
|
@ -16,6 +16,11 @@
|
||||
|
||||
(export gnc:report-edit-options)
|
||||
|
||||
(define (gnc:report-options-editor report)
|
||||
(if (equal? (gnc:report-type report) "Multicolumn View")
|
||||
gnc:column-view-edit-options
|
||||
gnc:default-options-editor))
|
||||
|
||||
(define (gnc:report-edit-options report)
|
||||
(let* ((editor-widg (gnc:report-editor-widget report)))
|
||||
(if editor-widg
|
||||
|
851
src/report/report-gnome/report.glade
Normal file
851
src/report/report-gnome/report.glade
Normal file
@ -0,0 +1,851 @@
|
||||
<?xml version="1.0"?>
|
||||
<GTK-Interface>
|
||||
|
||||
<project>
|
||||
<name>Glade</name>
|
||||
<program_name>glade</program_name>
|
||||
<directory></directory>
|
||||
<source_directory></source_directory>
|
||||
<pixmaps_directory></pixmaps_directory>
|
||||
<language>C</language>
|
||||
<gnome_support>True</gnome_support>
|
||||
<gettext_support>True</gettext_support>
|
||||
<output_main_file>False</output_main_file>
|
||||
<output_support_files>False</output_support_files>
|
||||
<output_build_files>False</output_build_files>
|
||||
<backup_source_files>False</backup_source_files>
|
||||
</project>
|
||||
|
||||
<widget>
|
||||
<class>GnomeDialog</class>
|
||||
<name>New Style Sheet Dialog</name>
|
||||
<title>New Style Sheet</title>
|
||||
<type>GTK_WINDOW_TOPLEVEL</type>
|
||||
<position>GTK_WIN_POS_NONE</position>
|
||||
<modal>False</modal>
|
||||
<allow_shrink>True</allow_shrink>
|
||||
<allow_grow>True</allow_grow>
|
||||
<auto_shrink>False</auto_shrink>
|
||||
<auto_close>False</auto_close>
|
||||
<hide_on_close>False</hide_on_close>
|
||||
|
||||
<widget>
|
||||
<class>GtkVBox</class>
|
||||
<child_name>GnomeDialog:vbox</child_name>
|
||||
<name>dialog-vbox15</name>
|
||||
<homogeneous>False</homogeneous>
|
||||
<spacing>8</spacing>
|
||||
<child>
|
||||
<padding>4</padding>
|
||||
<expand>True</expand>
|
||||
<fill>True</fill>
|
||||
</child>
|
||||
|
||||
<widget>
|
||||
<class>GtkHButtonBox</class>
|
||||
<child_name>GnomeDialog:action_area</child_name>
|
||||
<name>dialog-action_area15</name>
|
||||
<layout_style>GTK_BUTTONBOX_SPREAD</layout_style>
|
||||
<spacing>8</spacing>
|
||||
<child_min_width>85</child_min_width>
|
||||
<child_min_height>27</child_min_height>
|
||||
<child_ipad_x>7</child_ipad_x>
|
||||
<child_ipad_y>0</child_ipad_y>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>False</expand>
|
||||
<fill>True</fill>
|
||||
<pack>GTK_PACK_END</pack>
|
||||
</child>
|
||||
|
||||
<widget>
|
||||
<class>GtkButton</class>
|
||||
<name>button73</name>
|
||||
<can_default>True</can_default>
|
||||
<can_focus>True</can_focus>
|
||||
<stock_button>GNOME_STOCK_BUTTON_OK</stock_button>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkButton</class>
|
||||
<name>button75</name>
|
||||
<can_default>True</can_default>
|
||||
<can_focus>True</can_focus>
|
||||
<stock_button>GNOME_STOCK_BUTTON_CANCEL</stock_button>
|
||||
</widget>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkFrame</class>
|
||||
<name>frame40</name>
|
||||
<border_width>2</border_width>
|
||||
<label>New style sheet info</label>
|
||||
<label_xalign>0</label_xalign>
|
||||
<shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>False</expand>
|
||||
<fill>False</fill>
|
||||
</child>
|
||||
|
||||
<widget>
|
||||
<class>GtkHBox</class>
|
||||
<name>hbox82</name>
|
||||
<border_width>4</border_width>
|
||||
<homogeneous>False</homogeneous>
|
||||
<spacing>4</spacing>
|
||||
|
||||
<widget>
|
||||
<class>GtkVBox</class>
|
||||
<name>vbox93</name>
|
||||
<homogeneous>True</homogeneous>
|
||||
<spacing>2</spacing>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>False</expand>
|
||||
<fill>False</fill>
|
||||
</child>
|
||||
|
||||
<widget>
|
||||
<class>GtkLabel</class>
|
||||
<name>label847669</name>
|
||||
<label>Name:</label>
|
||||
<justify>GTK_JUSTIFY_CENTER</justify>
|
||||
<wrap>False</wrap>
|
||||
<xalign>1</xalign>
|
||||
<yalign>0.5</yalign>
|
||||
<xpad>0</xpad>
|
||||
<ypad>0</ypad>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>False</expand>
|
||||
<fill>False</fill>
|
||||
</child>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkLabel</class>
|
||||
<name>label847670</name>
|
||||
<label>Style sheet template:</label>
|
||||
<justify>GTK_JUSTIFY_CENTER</justify>
|
||||
<wrap>False</wrap>
|
||||
<xalign>1</xalign>
|
||||
<yalign>0.5</yalign>
|
||||
<xpad>0</xpad>
|
||||
<ypad>0</ypad>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>False</expand>
|
||||
<fill>False</fill>
|
||||
</child>
|
||||
</widget>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkVBox</class>
|
||||
<name>vbox94</name>
|
||||
<homogeneous>True</homogeneous>
|
||||
<spacing>2</spacing>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>False</expand>
|
||||
<fill>True</fill>
|
||||
</child>
|
||||
|
||||
<widget>
|
||||
<class>GtkEntry</class>
|
||||
<name>name_entry</name>
|
||||
<can_focus>True</can_focus>
|
||||
<editable>True</editable>
|
||||
<text_visible>True</text_visible>
|
||||
<text_max_length>0</text_max_length>
|
||||
<text></text>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>False</expand>
|
||||
<fill>False</fill>
|
||||
</child>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkCombo</class>
|
||||
<name>template_combo</name>
|
||||
<value_in_list>False</value_in_list>
|
||||
<ok_if_empty>True</ok_if_empty>
|
||||
<case_sensitive>False</case_sensitive>
|
||||
<use_arrows>True</use_arrows>
|
||||
<use_arrows_always>False</use_arrows_always>
|
||||
<items></items>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>False</expand>
|
||||
<fill>False</fill>
|
||||
</child>
|
||||
|
||||
<widget>
|
||||
<class>GtkEntry</class>
|
||||
<child_name>GtkCombo:entry</child_name>
|
||||
<name>template_entry</name>
|
||||
<can_focus>True</can_focus>
|
||||
<editable>True</editable>
|
||||
<text_visible>True</text_visible>
|
||||
<text_max_length>0</text_max_length>
|
||||
<text></text>
|
||||
</widget>
|
||||
</widget>
|
||||
</widget>
|
||||
</widget>
|
||||
</widget>
|
||||
</widget>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkWindow</class>
|
||||
<name>HTML Style Sheet Dialog</name>
|
||||
<title>HTML Style Sheets</title>
|
||||
<type>GTK_WINDOW_TOPLEVEL</type>
|
||||
<position>GTK_WIN_POS_NONE</position>
|
||||
<modal>False</modal>
|
||||
<allow_shrink>False</allow_shrink>
|
||||
<allow_grow>True</allow_grow>
|
||||
<auto_shrink>False</auto_shrink>
|
||||
|
||||
<widget>
|
||||
<class>GtkHBox</class>
|
||||
<name>hbox96</name>
|
||||
<border_width>5</border_width>
|
||||
<homogeneous>False</homogeneous>
|
||||
<spacing>2</spacing>
|
||||
|
||||
<widget>
|
||||
<class>GtkFrame</class>
|
||||
<name>frame39</name>
|
||||
<label>Style sheets</label>
|
||||
<label_xalign>0</label_xalign>
|
||||
<shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>False</expand>
|
||||
<fill>False</fill>
|
||||
</child>
|
||||
|
||||
<widget>
|
||||
<class>GtkVBox</class>
|
||||
<name>vbox92</name>
|
||||
<homogeneous>False</homogeneous>
|
||||
<spacing>0</spacing>
|
||||
|
||||
<widget>
|
||||
<class>GtkScrolledWindow</class>
|
||||
<name>scrolledwindow17</name>
|
||||
<hscrollbar_policy>GTK_POLICY_AUTOMATIC</hscrollbar_policy>
|
||||
<vscrollbar_policy>GTK_POLICY_AUTOMATIC</vscrollbar_policy>
|
||||
<hupdate_policy>GTK_UPDATE_CONTINUOUS</hupdate_policy>
|
||||
<vupdate_policy>GTK_UPDATE_CONTINUOUS</vupdate_policy>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>True</expand>
|
||||
<fill>True</fill>
|
||||
</child>
|
||||
|
||||
<widget>
|
||||
<class>GtkCList</class>
|
||||
<name>style_sheet_list</name>
|
||||
<can_focus>True</can_focus>
|
||||
<columns>1</columns>
|
||||
<column_widths>80</column_widths>
|
||||
<selection_mode>GTK_SELECTION_SINGLE</selection_mode>
|
||||
<show_titles>False</show_titles>
|
||||
<shadow_type>GTK_SHADOW_IN</shadow_type>
|
||||
|
||||
<widget>
|
||||
<class>GtkLabel</class>
|
||||
<child_name>CList:title</child_name>
|
||||
<name>label847668</name>
|
||||
<label>label847668</label>
|
||||
<justify>GTK_JUSTIFY_CENTER</justify>
|
||||
<wrap>False</wrap>
|
||||
<xalign>0.5</xalign>
|
||||
<yalign>0.5</yalign>
|
||||
<xpad>0</xpad>
|
||||
<ypad>0</ypad>
|
||||
</widget>
|
||||
</widget>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkHBox</class>
|
||||
<name>hbox81</name>
|
||||
<homogeneous>True</homogeneous>
|
||||
<spacing>0</spacing>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>False</expand>
|
||||
<fill>True</fill>
|
||||
</child>
|
||||
|
||||
<widget>
|
||||
<class>GtkButton</class>
|
||||
<name>new_button</name>
|
||||
<can_focus>True</can_focus>
|
||||
<label>New...</label>
|
||||
<relief>GTK_RELIEF_NORMAL</relief>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>True</expand>
|
||||
<fill>True</fill>
|
||||
</child>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkButton</class>
|
||||
<name>delete_button</name>
|
||||
<can_focus>True</can_focus>
|
||||
<label>Delete</label>
|
||||
<relief>GTK_RELIEF_NORMAL</relief>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>True</expand>
|
||||
<fill>True</fill>
|
||||
</child>
|
||||
</widget>
|
||||
</widget>
|
||||
</widget>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkFrame</class>
|
||||
<name>style_sheet_options</name>
|
||||
<label>Style sheet options</label>
|
||||
<label_xalign>0</label_xalign>
|
||||
<shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>True</expand>
|
||||
<fill>True</fill>
|
||||
</child>
|
||||
|
||||
<widget>
|
||||
<class>Placeholder</class>
|
||||
</widget>
|
||||
</widget>
|
||||
</widget>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkWindow</class>
|
||||
<name>Edit Column View Page</name>
|
||||
<title></title>
|
||||
<type>GTK_WINDOW_TOPLEVEL</type>
|
||||
<position>GTK_WIN_POS_NONE</position>
|
||||
<modal>False</modal>
|
||||
<allow_shrink>True</allow_shrink>
|
||||
<allow_grow>True</allow_grow>
|
||||
<auto_shrink>False</auto_shrink>
|
||||
|
||||
<widget>
|
||||
<class>GtkHBox</class>
|
||||
<name>view_contents_hbox</name>
|
||||
<border_width>3</border_width>
|
||||
<homogeneous>False</homogeneous>
|
||||
<spacing>5</spacing>
|
||||
|
||||
<widget>
|
||||
<class>GtkScrolledWindow</class>
|
||||
<name>scrolledwindow26</name>
|
||||
<hscrollbar_policy>GTK_POLICY_NEVER</hscrollbar_policy>
|
||||
<vscrollbar_policy>GTK_POLICY_AUTOMATIC</vscrollbar_policy>
|
||||
<hupdate_policy>GTK_UPDATE_CONTINUOUS</hupdate_policy>
|
||||
<vupdate_policy>GTK_UPDATE_CONTINUOUS</vupdate_policy>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>True</expand>
|
||||
<fill>True</fill>
|
||||
</child>
|
||||
|
||||
<widget>
|
||||
<class>GtkCList</class>
|
||||
<name>available_list</name>
|
||||
<can_focus>True</can_focus>
|
||||
<columns>1</columns>
|
||||
<column_widths>80</column_widths>
|
||||
<selection_mode>GTK_SELECTION_BROWSE</selection_mode>
|
||||
<show_titles>True</show_titles>
|
||||
<shadow_type>GTK_SHADOW_IN</shadow_type>
|
||||
|
||||
<widget>
|
||||
<class>GtkLabel</class>
|
||||
<child_name>CList:title</child_name>
|
||||
<name>label847720</name>
|
||||
<label>Available reports</label>
|
||||
<justify>GTK_JUSTIFY_CENTER</justify>
|
||||
<wrap>False</wrap>
|
||||
<xalign>0.5</xalign>
|
||||
<yalign>0.5</yalign>
|
||||
<xpad>0</xpad>
|
||||
<ypad>0</ypad>
|
||||
</widget>
|
||||
</widget>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkVBox</class>
|
||||
<name>vbox109</name>
|
||||
<homogeneous>False</homogeneous>
|
||||
<spacing>0</spacing>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>False</expand>
|
||||
<fill>False</fill>
|
||||
</child>
|
||||
|
||||
<widget>
|
||||
<class>GtkLabel</class>
|
||||
<name>label847721</name>
|
||||
<label> </label>
|
||||
<justify>GTK_JUSTIFY_CENTER</justify>
|
||||
<wrap>False</wrap>
|
||||
<xalign>0.5</xalign>
|
||||
<yalign>0.5</yalign>
|
||||
<xpad>0</xpad>
|
||||
<ypad>0</ypad>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>True</expand>
|
||||
<fill>True</fill>
|
||||
</child>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkButton</class>
|
||||
<name>button85</name>
|
||||
<can_focus>True</can_focus>
|
||||
<signal>
|
||||
<name>clicked</name>
|
||||
<handler>gnc_column_view_edit_add_cb</handler>
|
||||
<data>Edit_Column_View_Page</data>
|
||||
<last_modification_time>Fri, 23 Mar 2001 21:37:59 GMT</last_modification_time>
|
||||
</signal>
|
||||
<label>Add >></label>
|
||||
<relief>GTK_RELIEF_NORMAL</relief>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>False</expand>
|
||||
<fill>False</fill>
|
||||
</child>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkButton</class>
|
||||
<name>button86</name>
|
||||
<can_focus>True</can_focus>
|
||||
<signal>
|
||||
<name>clicked</name>
|
||||
<handler>gnc_column_view_edit_remove_cb</handler>
|
||||
<data>Edit_Column_View_Page</data>
|
||||
<last_modification_time>Fri, 23 Mar 2001 21:38:06 GMT</last_modification_time>
|
||||
</signal>
|
||||
<label><< Remove</label>
|
||||
<relief>GTK_RELIEF_NORMAL</relief>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>False</expand>
|
||||
<fill>False</fill>
|
||||
</child>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkLabel</class>
|
||||
<name>label847722</name>
|
||||
<label></label>
|
||||
<justify>GTK_JUSTIFY_CENTER</justify>
|
||||
<wrap>False</wrap>
|
||||
<xalign>0.5</xalign>
|
||||
<yalign>0.5</yalign>
|
||||
<xpad>0</xpad>
|
||||
<ypad>0</ypad>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>False</expand>
|
||||
<fill>True</fill>
|
||||
</child>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkButton</class>
|
||||
<name>button87</name>
|
||||
<can_focus>True</can_focus>
|
||||
<signal>
|
||||
<name>clicked</name>
|
||||
<handler>gnc_edit_column_view_move_up_cb</handler>
|
||||
<data>Edit_Column_View_Page</data>
|
||||
<last_modification_time>Fri, 23 Mar 2001 21:38:13 GMT</last_modification_time>
|
||||
</signal>
|
||||
<label>Move up</label>
|
||||
<relief>GTK_RELIEF_NORMAL</relief>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>False</expand>
|
||||
<fill>False</fill>
|
||||
</child>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkButton</class>
|
||||
<name>button88</name>
|
||||
<can_focus>True</can_focus>
|
||||
<signal>
|
||||
<name>clicked</name>
|
||||
<handler>gnc_edit_column_view_move_down_cb</handler>
|
||||
<data>Edit_Column_View_Page</data>
|
||||
<last_modification_time>Fri, 23 Mar 2001 21:38:19 GMT</last_modification_time>
|
||||
</signal>
|
||||
<label>Move down</label>
|
||||
<relief>GTK_RELIEF_NORMAL</relief>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>False</expand>
|
||||
<fill>False</fill>
|
||||
</child>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkLabel</class>
|
||||
<name>label847723</name>
|
||||
<label></label>
|
||||
<justify>GTK_JUSTIFY_CENTER</justify>
|
||||
<wrap>False</wrap>
|
||||
<xalign>0.5</xalign>
|
||||
<yalign>0.5</yalign>
|
||||
<xpad>0</xpad>
|
||||
<ypad>0</ypad>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>False</expand>
|
||||
<fill>False</fill>
|
||||
</child>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkButton</class>
|
||||
<name>button89</name>
|
||||
<can_focus>True</can_focus>
|
||||
<signal>
|
||||
<name>clicked</name>
|
||||
<handler>gnc_column_view_edit_size_cb</handler>
|
||||
<data>Edit_Column_View_Page</data>
|
||||
<last_modification_time>Sat, 24 Mar 2001 17:51:58 GMT</last_modification_time>
|
||||
</signal>
|
||||
<label>Size...</label>
|
||||
<relief>GTK_RELIEF_NORMAL</relief>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>False</expand>
|
||||
<fill>False</fill>
|
||||
</child>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkLabel</class>
|
||||
<name>label847728</name>
|
||||
<label></label>
|
||||
<justify>GTK_JUSTIFY_CENTER</justify>
|
||||
<wrap>False</wrap>
|
||||
<xalign>0.5</xalign>
|
||||
<yalign>0.5</yalign>
|
||||
<xpad>0</xpad>
|
||||
<ypad>0</ypad>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>True</expand>
|
||||
<fill>True</fill>
|
||||
</child>
|
||||
</widget>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkScrolledWindow</class>
|
||||
<name>scrolledwindow27</name>
|
||||
<hscrollbar_policy>GTK_POLICY_NEVER</hscrollbar_policy>
|
||||
<vscrollbar_policy>GTK_POLICY_AUTOMATIC</vscrollbar_policy>
|
||||
<hupdate_policy>GTK_UPDATE_CONTINUOUS</hupdate_policy>
|
||||
<vupdate_policy>GTK_UPDATE_CONTINUOUS</vupdate_policy>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>True</expand>
|
||||
<fill>True</fill>
|
||||
</child>
|
||||
|
||||
<widget>
|
||||
<class>GtkCList</class>
|
||||
<name>contents_list</name>
|
||||
<can_focus>True</can_focus>
|
||||
<columns>3</columns>
|
||||
<column_widths>150,34,25</column_widths>
|
||||
<selection_mode>GTK_SELECTION_BROWSE</selection_mode>
|
||||
<show_titles>True</show_titles>
|
||||
<shadow_type>GTK_SHADOW_IN</shadow_type>
|
||||
|
||||
<widget>
|
||||
<class>GtkLabel</class>
|
||||
<child_name>CList:title</child_name>
|
||||
<name>label847725</name>
|
||||
<label>Report</label>
|
||||
<justify>GTK_JUSTIFY_CENTER</justify>
|
||||
<wrap>False</wrap>
|
||||
<xalign>0.5</xalign>
|
||||
<yalign>0.5</yalign>
|
||||
<xpad>0</xpad>
|
||||
<ypad>0</ypad>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkLabel</class>
|
||||
<child_name>CList:title</child_name>
|
||||
<name>label847726</name>
|
||||
<label>Cols</label>
|
||||
<justify>GTK_JUSTIFY_CENTER</justify>
|
||||
<wrap>False</wrap>
|
||||
<xalign>0.5</xalign>
|
||||
<yalign>0.5</yalign>
|
||||
<xpad>0</xpad>
|
||||
<ypad>0</ypad>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkLabel</class>
|
||||
<child_name>CList:title</child_name>
|
||||
<name>label847727</name>
|
||||
<label>Rows</label>
|
||||
<justify>GTK_JUSTIFY_CENTER</justify>
|
||||
<wrap>False</wrap>
|
||||
<xalign>0.5</xalign>
|
||||
<yalign>0.5</yalign>
|
||||
<xpad>0</xpad>
|
||||
<ypad>0</ypad>
|
||||
</widget>
|
||||
</widget>
|
||||
</widget>
|
||||
</widget>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GnomeDialog</class>
|
||||
<name>Edit Report Size</name>
|
||||
<title>Report Size</title>
|
||||
<type>GTK_WINDOW_TOPLEVEL</type>
|
||||
<position>GTK_WIN_POS_NONE</position>
|
||||
<modal>True</modal>
|
||||
<allow_shrink>False</allow_shrink>
|
||||
<allow_grow>False</allow_grow>
|
||||
<auto_shrink>False</auto_shrink>
|
||||
<auto_close>False</auto_close>
|
||||
<hide_on_close>True</hide_on_close>
|
||||
|
||||
<widget>
|
||||
<class>GtkVBox</class>
|
||||
<child_name>GnomeDialog:vbox</child_name>
|
||||
<name>dialog-vbox17</name>
|
||||
<homogeneous>False</homogeneous>
|
||||
<spacing>8</spacing>
|
||||
<child>
|
||||
<padding>4</padding>
|
||||
<expand>True</expand>
|
||||
<fill>True</fill>
|
||||
</child>
|
||||
|
||||
<widget>
|
||||
<class>GtkHButtonBox</class>
|
||||
<child_name>GnomeDialog:action_area</child_name>
|
||||
<name>dialog-action_area17</name>
|
||||
<layout_style>GTK_BUTTONBOX_SPREAD</layout_style>
|
||||
<spacing>8</spacing>
|
||||
<child_min_width>85</child_min_width>
|
||||
<child_min_height>27</child_min_height>
|
||||
<child_ipad_x>7</child_ipad_x>
|
||||
<child_ipad_y>0</child_ipad_y>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>False</expand>
|
||||
<fill>True</fill>
|
||||
<pack>GTK_PACK_END</pack>
|
||||
</child>
|
||||
|
||||
<widget>
|
||||
<class>GtkButton</class>
|
||||
<name>button90</name>
|
||||
<can_default>True</can_default>
|
||||
<can_focus>True</can_focus>
|
||||
<stock_button>GNOME_STOCK_BUTTON_OK</stock_button>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkButton</class>
|
||||
<name>button92</name>
|
||||
<can_default>True</can_default>
|
||||
<can_focus>True</can_focus>
|
||||
<stock_button>GNOME_STOCK_BUTTON_CANCEL</stock_button>
|
||||
</widget>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkFrame</class>
|
||||
<name>frame48</name>
|
||||
<label>Enter report row/column span</label>
|
||||
<label_xalign>0</label_xalign>
|
||||
<shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>True</expand>
|
||||
<fill>True</fill>
|
||||
</child>
|
||||
|
||||
<widget>
|
||||
<class>GtkHBox</class>
|
||||
<name>hbox97</name>
|
||||
<homogeneous>False</homogeneous>
|
||||
<spacing>4</spacing>
|
||||
|
||||
<widget>
|
||||
<class>GtkVBox</class>
|
||||
<name>vbox111</name>
|
||||
<homogeneous>True</homogeneous>
|
||||
<spacing>0</spacing>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>True</expand>
|
||||
<fill>True</fill>
|
||||
</child>
|
||||
|
||||
<widget>
|
||||
<class>GtkLabel</class>
|
||||
<name>label847729</name>
|
||||
<label>Row span:</label>
|
||||
<justify>GTK_JUSTIFY_CENTER</justify>
|
||||
<wrap>False</wrap>
|
||||
<xalign>1</xalign>
|
||||
<yalign>0.5</yalign>
|
||||
<xpad>0</xpad>
|
||||
<ypad>0</ypad>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>False</expand>
|
||||
<fill>False</fill>
|
||||
</child>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkLabel</class>
|
||||
<name>label847730</name>
|
||||
<label>Column span:</label>
|
||||
<justify>GTK_JUSTIFY_CENTER</justify>
|
||||
<wrap>False</wrap>
|
||||
<xalign>1</xalign>
|
||||
<yalign>0.5</yalign>
|
||||
<xpad>0</xpad>
|
||||
<ypad>0</ypad>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>False</expand>
|
||||
<fill>False</fill>
|
||||
</child>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkLabel</class>
|
||||
<name>label847731</name>
|
||||
<label></label>
|
||||
<justify>GTK_JUSTIFY_CENTER</justify>
|
||||
<wrap>False</wrap>
|
||||
<xalign>0.5</xalign>
|
||||
<yalign>0.5</yalign>
|
||||
<xpad>0</xpad>
|
||||
<ypad>0</ypad>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>False</expand>
|
||||
<fill>False</fill>
|
||||
</child>
|
||||
</widget>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkVBox</class>
|
||||
<name>vbox112</name>
|
||||
<homogeneous>True</homogeneous>
|
||||
<spacing>0</spacing>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>True</expand>
|
||||
<fill>True</fill>
|
||||
</child>
|
||||
|
||||
<widget>
|
||||
<class>GtkSpinButton</class>
|
||||
<name>row_spin</name>
|
||||
<can_focus>True</can_focus>
|
||||
<climb_rate>1</climb_rate>
|
||||
<digits>0</digits>
|
||||
<numeric>False</numeric>
|
||||
<update_policy>GTK_UPDATE_ALWAYS</update_policy>
|
||||
<snap>False</snap>
|
||||
<wrap>False</wrap>
|
||||
<value>1</value>
|
||||
<lower>0</lower>
|
||||
<upper>100</upper>
|
||||
<step>1</step>
|
||||
<page>10</page>
|
||||
<page_size>10</page_size>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>False</expand>
|
||||
<fill>False</fill>
|
||||
</child>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkSpinButton</class>
|
||||
<name>col_spin</name>
|
||||
<can_focus>True</can_focus>
|
||||
<climb_rate>1</climb_rate>
|
||||
<digits>0</digits>
|
||||
<numeric>False</numeric>
|
||||
<update_policy>GTK_UPDATE_ALWAYS</update_policy>
|
||||
<snap>False</snap>
|
||||
<wrap>False</wrap>
|
||||
<value>1</value>
|
||||
<lower>0</lower>
|
||||
<upper>100</upper>
|
||||
<step>1</step>
|
||||
<page>10</page>
|
||||
<page_size>10</page_size>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>False</expand>
|
||||
<fill>False</fill>
|
||||
</child>
|
||||
</widget>
|
||||
|
||||
<widget>
|
||||
<class>GtkLabel</class>
|
||||
<name>label847732</name>
|
||||
<label></label>
|
||||
<justify>GTK_JUSTIFY_CENTER</justify>
|
||||
<wrap>False</wrap>
|
||||
<xalign>0.5</xalign>
|
||||
<yalign>0.5</yalign>
|
||||
<xpad>0</xpad>
|
||||
<ypad>0</ypad>
|
||||
<child>
|
||||
<padding>0</padding>
|
||||
<expand>False</expand>
|
||||
<fill>False</fill>
|
||||
</child>
|
||||
</widget>
|
||||
</widget>
|
||||
</widget>
|
||||
</widget>
|
||||
</widget>
|
||||
</widget>
|
||||
|
||||
</GTK-Interface>
|
Loading…
Reference in New Issue
Block a user