--- /dev/null
+Dirk-Jan C. Binnema <dirk-jan.binnema@nokia.com>
--- /dev/null
+Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002 Free Software
+Foundation, Inc.
+
+ This file is free documentation; the Free Software Foundation gives
+unlimited permission to copy, distribute and modify it.
+
+Basic Installation
+==================
+
+ These are generic installation instructions.
+
+ The `configure' shell script attempts to guess correct values for
+various system-dependent variables used during compilation. It uses
+those values to create a `Makefile' in each directory of the package.
+It may also create one or more `.h' files containing system-dependent
+definitions. Finally, it creates a shell script `config.status' that
+you can run in the future to recreate the current configuration, and a
+file `config.log' containing compiler output (useful mainly for
+debugging `configure').
+
+ It can also use an optional file (typically called `config.cache'
+and enabled with `--cache-file=config.cache' or simply `-C') that saves
+the results of its tests to speed up reconfiguring. (Caching is
+disabled by default to prevent problems with accidental use of stale
+cache files.)
+
+ If you need to do unusual things to compile the package, please try
+to figure out how `configure' could check whether to do them, and mail
+diffs or instructions to the address given in the `README' so they can
+be considered for the next release. If you are using the cache, and at
+some point `config.cache' contains results you don't want to keep, you
+may remove or edit it.
+
+ The file `configure.ac' (or `configure.in') is used to create
+`configure' by a program called `autoconf'. You only need
+`configure.ac' if you want to change it or regenerate `configure' using
+a newer version of `autoconf'.
+
+The simplest way to compile this package is:
+
+ 1. `cd' to the directory containing the package's source code and type
+ `./configure' to configure the package for your system. If you're
+ using `csh' on an old version of System V, you might need to type
+ `sh ./configure' instead to prevent `csh' from trying to execute
+ `configure' itself.
+
+ Running `configure' takes awhile. While running, it prints some
+ messages telling which features it is checking for.
+
+ 2. Type `make' to compile the package.
+
+ 3. Optionally, type `make check' to run any self-tests that come with
+ the package.
+
+ 4. Type `make install' to install the programs and any data files and
+ documentation.
+
+ 5. You can remove the program binaries and object files from the
+ source code directory by typing `make clean'. To also remove the
+ files that `configure' created (so you can compile the package for
+ a different kind of computer), type `make distclean'. There is
+ also a `make maintainer-clean' target, but that is intended mainly
+ for the package's developers. If you use it, you may have to get
+ all sorts of other programs in order to regenerate files that came
+ with the distribution.
+
+Compilers and Options
+=====================
+
+ Some systems require unusual options for compilation or linking that
+the `configure' script does not know about. Run `./configure --help'
+for details on some of the pertinent environment variables.
+
+ You can give `configure' initial values for configuration parameters
+by setting variables in the command line or in the environment. Here
+is an example:
+
+ ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix
+
+ *Note Defining Variables::, for more details.
+
+Compiling For Multiple Architectures
+====================================
+
+ You can compile the package for more than one kind of computer at the
+same time, by placing the object files for each architecture in their
+own directory. To do this, you must use a version of `make' that
+supports the `VPATH' variable, such as GNU `make'. `cd' to the
+directory where you want the object files and executables to go and run
+the `configure' script. `configure' automatically checks for the
+source code in the directory that `configure' is in and in `..'.
+
+ If you have to use a `make' that does not support the `VPATH'
+variable, you have to compile the package for one architecture at a
+time in the source code directory. After you have installed the
+package for one architecture, use `make distclean' before reconfiguring
+for another architecture.
+
+Installation Names
+==================
+
+ By default, `make install' will install the package's files in
+`/usr/local/bin', `/usr/local/man', etc. You can specify an
+installation prefix other than `/usr/local' by giving `configure' the
+option `--prefix=PATH'.
+
+ You can specify separate installation prefixes for
+architecture-specific files and architecture-independent files. If you
+give `configure' the option `--exec-prefix=PATH', the package will use
+PATH as the prefix for installing programs and libraries.
+Documentation and other data files will still use the regular prefix.
+
+ In addition, if you use an unusual directory layout you can give
+options like `--bindir=PATH' to specify different values for particular
+kinds of files. Run `configure --help' for a list of the directories
+you can set and what kinds of files go in them.
+
+ If the package supports it, you can cause programs to be installed
+with an extra prefix or suffix on their names by giving `configure' the
+option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
+
+Optional Features
+=================
+
+ Some packages pay attention to `--enable-FEATURE' options to
+`configure', where FEATURE indicates an optional part of the package.
+They may also pay attention to `--with-PACKAGE' options, where PACKAGE
+is something like `gnu-as' or `x' (for the X Window System). The
+`README' should mention any `--enable-' and `--with-' options that the
+package recognizes.
+
+ For packages that use the X Window System, `configure' can usually
+find the X include and library files automatically, but if it doesn't,
+you can use the `configure' options `--x-includes=DIR' and
+`--x-libraries=DIR' to specify their locations.
+
+Specifying the System Type
+==========================
+
+ There may be some features `configure' cannot figure out
+automatically, but needs to determine by the type of machine the package
+will run on. Usually, assuming the package is built to be run on the
+_same_ architectures, `configure' can figure that out, but if it prints
+a message saying it cannot guess the machine type, give it the
+`--build=TYPE' option. TYPE can either be a short name for the system
+type, such as `sun4', or a canonical name which has the form:
+
+ CPU-COMPANY-SYSTEM
+
+where SYSTEM can have one of these forms:
+
+ OS KERNEL-OS
+
+ See the file `config.sub' for the possible values of each field. If
+`config.sub' isn't included in this package, then this package doesn't
+need to know the machine type.
+
+ If you are _building_ compiler tools for cross-compiling, you should
+use the `--target=TYPE' option to select the type of system they will
+produce code for.
+
+ If you want to _use_ a cross compiler, that generates code for a
+platform different from the build platform, you should specify the
+"host" platform (i.e., that on which the generated programs will
+eventually be run) with `--host=TYPE'.
+
+Sharing Defaults
+================
+
+ If you want to set default values for `configure' scripts to share,
+you can create a site shell script called `config.site' that gives
+default values for variables like `CC', `cache_file', and `prefix'.
+`configure' looks for `PREFIX/share/config.site' if it exists, then
+`PREFIX/etc/config.site' if it exists. Or, you can set the
+`CONFIG_SITE' environment variable to the location of the site script.
+A warning: not all `configure' scripts look for a site script.
+
+Defining Variables
+==================
+
+ Variables not defined in a site shell script can be set in the
+environment passed to `configure'. However, some packages may run
+configure again during the build, and the customized values of these
+variables may be lost. In order to avoid this problem, you should set
+them in the `configure' command line, using `VAR=value'. For example:
+
+ ./configure CC=/usr/local2/bin/gcc
+
+will cause the specified gcc to be used as the C compiler (unless it is
+overridden in the site shell script).
+
+`configure' Invocation
+======================
+
+ `configure' recognizes the following options to control how it
+operates.
+
+`--help'
+`-h'
+ Print a summary of the options to `configure', and exit.
+
+`--version'
+`-V'
+ Print the version of Autoconf used to generate the `configure'
+ script, and exit.
+
+`--cache-file=FILE'
+ Enable the cache: use and save the results of the tests in FILE,
+ traditionally `config.cache'. FILE defaults to `/dev/null' to
+ disable caching.
+
+`--config-cache'
+`-C'
+ Alias for `--cache-file=config.cache'.
+
+`--quiet'
+`--silent'
+`-q'
+ Do not print messages saying which checks are being made. To
+ suppress all normal output, redirect it to `/dev/null' (any error
+ messages will still be shown).
+
+`--srcdir=DIR'
+ Look for the package's source code in directory DIR. Usually
+ `configure' can determine that directory automatically.
+
+`configure' also accepts some other, not widely useful, options. Run
+`configure --help' for more details.
+
--- /dev/null
+#
+# Makefile.am for modest
+# Time-stamp: <2006-04-22 16:29:00 (djcb)>
+#
+
+SUBDIRS=\
+ src\
+ docs
+
+EXTRA_DIST=\
+ autogen.sh
--- /dev/null
+modest
+------
+
+"modest" is a modest e-mail program, based on Philip van Hoofs *tinymail*.
+tinymail is an effort to ease the writing of email programs, in particular
+for small devices.
+
+And while tinymail can support just about anything, we are using it's
+*libcamel* backend for mail protocol implementation.
+
+More about camel: http://go-evolution.org/Camel (* currently down *)
+More about tinymail: https://svn.cronos.be/svn/tinymail/trunk/
+
+
+
--- /dev/null
+#!/bin/sh
+# Run this to generate all the initial makefiles, etc.
+
+srcdir=`dirname $0`
+test -z "$srcdir" && srcdir=.
+REQUIRED_AUTOMAKE_VERSION=1.7
+PKG_NAME=modest
+
+(test -f $srcdir/configure.ac \
+ && test -f $srcdir/src/modest-main.c) || {
+ echo -n "**Error**: Directory "\`$srcdir\'" does not look like the"
+ echo " top-level $PKG_NAME directory"
+ exit 1
+}
+
+which gnome-autogen.sh || {
+ echo "You need to install gnome-common from GNOME CVS"
+ exit 1
+}
+USE_GNOME2_MACROS=1 . gnome-autogen.sh
+
+gtkdocize || {
+ echo -n "**Error**: gtkdoc not found. Please install"
+ exit 1
+}
+
--- /dev/null
+dnl configure.ac for modest
+dnl Time-stamp: <2006-05-01 19:11:26 (djcb)>
+dnl written by Dirk-Jan C. Binnema <dirk-jan.binnema@nokia.com>
+AC_INIT([modest],[0.0.9],[http://maemo.org])
+AC_CONFIG_SRCDIR(src/modest-main.c)
+AM_INIT_AUTOMAKE(AC_PACKAGE_NAME,AC_PACKAGE_VERSION)
+
+AC_CONFIG_HEADERS([config.h])
+
+if test x$prefix=xNONE; then
+ prefix=/usr/local
+fi
+AC_SUBST(prefix)
+
+AC_PROG_CC
+AM_PROG_CC_C_O
+AM_PROG_CC_STDC
+AC_HEADER_STDC
+AC_PROG_LIBTOOL
+
+# check for perl
+AC_CHECK_PROG([perl])
+GTK_DOC_CHECK([1.0])
+
+dnl # GLib/Gobject => mandatory
+PKG_CHECK_MODULES(MODEST_GSTUFF,glib-2.0 >= 2.6 gobject-2.0)
+AC_SUBST(MODEST_GSTUFF_CFLAGS)
+AC_SUBST(MODEST_GSTUFF_LIBS)
+
+dnl # tinymail => mandatory
+PKG_CHECK_MODULES(MODEST_TINYMAIL, libtinymail-1.0 libtinymail-camel-1.0 libtinymailui-1.0 libtinymailui-gtk-1.0)
+AC_SUBST(MODEST_TINYMAIL_CFLAGS)
+AC_SUBST(MODEST_TINYMAIL_LIBS)
+
+dnl # GConf => mandatory
+PKG_CHECK_MODULES(MODEST_GCONF,gconf-2.0)
+AC_SUBST(MODEST_GCONF_CFLAGS)
+AC_SUBST(MODEST_GCONF_LIBS)
+
+dnl # Gtk+ => mandatory
+PKG_CHECK_MODULES(MODEST_GTK,gtk+-2.0 >= 2.6)
+AC_SUBST(MODEST_GTK_CFLAGS)
+AC_SUBST(MODEST_GTK_LIBS)
+
+dnl # Glade
+PKG_CHECK_MODULES(MODEST_GLADE,libglade-2.0,glade_support=yes,echo "no";glade_support=no)
+AC_SUBST(MODEST_GLADE_CFLAGS)
+AC_SUBST(MODEST_GLADE_LIBS)
+
+dnl dnl build the Hildon UI?
+PKG_CHECK_MODULES(MODEST_HILDON,hildon libglade-2.0 libtinymailui-gtk-1.0,hildon_support=yes,echo "no";hildon_support=no)
+AC_SUBST(MODEST_HILDON_CFLAGS)
+AC_SUBST(MODEST_HILDON_LIBS)
+
+dnl now, determine what to build
+AC_MSG_NOTICE([Determining what UI to build])
+modest_ui="none"
+if test "x$hildon_support" = "xyes"; then
+ AC_SUBST(MODEST_UI_DIR,"hildon")
+ AC_DEFINE([MODEST_ENABLE_HILDON_UI],1,[Enable Hildon UI])
+ modest_ui="hildon"
+elif test "x$glade_support" = "xyes"; then
+ AC_SUBST(MODEST_UI_DIR,"gtk-glade")
+ AC_DEFINE([MODEST_ENABLE_GTK_GLADE_UI],1,[Enable Gtk-Glade UI])
+ modest_ui="gtk-glade"
+else
+ AC_SUBST(MODEST_UI_DIR,"gtk")
+ AC_DEFINE([MODEST_ENABLE_GTK_UI],1,[Enable Plain Gtk+ UI])
+ modest_ui="gtk"
+fi
+
+AC_OUTPUT([
+Makefile
+src/Makefile
+src/gtk/Makefile
+src/gtk-glade/Makefile
+src/hildon/Makefile
+docs/Makefile
+docs/reference/Makefile
+])
+
+echo
+echo "modest configure results"
+echo "-----------------------------------"
+echo "User-interface : $modest_ui"
+echo ""
--- /dev/null
+# -*- mode: makefile -*-
+
+####################################
+# Everything below here is generic #
+####################################
+
+if GTK_DOC_USE_LIBTOOL
+GTKDOC_CC = $(LIBTOOL) --mode=compile $(CC) $(INCLUDES) $(AM_CFLAGS) $(CFLAGS)
+GTKDOC_LD = $(LIBTOOL) --mode=link $(CC) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS)
+else
+GTKDOC_CC = $(CC) $(INCLUDES) $(AM_CFLAGS) $(CFLAGS)
+GTKDOC_LD = $(CC) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS)
+endif
+
+# We set GPATH here; this gives us semantics for GNU make
+# which are more like other make's VPATH, when it comes to
+# whether a source that is a target of one rule is then
+# searched for in VPATH/GPATH.
+#
+GPATH = $(srcdir)
+
+TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)
+
+EXTRA_DIST = \
+ $(content_files) \
+ $(HTML_IMAGES) \
+ $(DOC_MAIN_SGML_FILE) \
+ $(DOC_MODULE)-sections.txt \
+ $(DOC_MODULE)-overrides.txt
+
+DOC_STAMPS=scan-build.stamp tmpl-build.stamp sgml-build.stamp html-build.stamp \
+ $(srcdir)/tmpl.stamp $(srcdir)/sgml.stamp $(srcdir)/html.stamp
+
+SCANOBJ_FILES = \
+ $(DOC_MODULE).args \
+ $(DOC_MODULE).hierarchy \
+ $(DOC_MODULE).interfaces \
+ $(DOC_MODULE).prerequisites \
+ $(DOC_MODULE).signals
+
+CLEANFILES = $(SCANOBJ_FILES) $(DOC_MODULE)-unused.txt $(DOC_STAMPS)
+
+if ENABLE_GTK_DOC
+all-local: html-build.stamp
+
+#### scan ####
+
+scan-build.stamp: $(HFILE_GLOB) $(CFILE_GLOB)
+ @echo 'gtk-doc: Scanning header files'
+ @-chmod -R u+w $(srcdir)
+ if grep -l '^..*$$' $(srcdir)/$(DOC_MODULE).types > /dev/null 2>&1 ; then \
+ CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" CFLAGS="$(GTKDOC_CFLAGS)" LDFLAGS="$(GTKDOC_LIBS)" gtkdoc-scangobj $(SCANGOBJ_OPTIONS) --module=$(DOC_MODULE) --output-dir=$(srcdir) ; \
+ else \
+ cd $(srcdir) ; \
+ for i in $(SCANOBJ_FILES) ; do \
+ test -f $$i || touch $$i ; \
+ done \
+ fi
+ cd $(srcdir) && \
+ gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --ignore-headers="$(IGNORE_HFILES)" $(SCAN_OPTIONS) $(EXTRA_HFILES)
+ touch scan-build.stamp
+
+$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES): scan-build.stamp
+ @true
+
+#### templates ####
+
+tmpl-build.stamp: $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt
+ @echo 'gtk-doc: Rebuilding template files'
+ @-chmod -R u+w $(srcdir)
+ cd $(srcdir) && gtkdoc-mktmpl --module=$(DOC_MODULE) $(MKTMPL_OPTIONS)
+ touch tmpl-build.stamp
+
+tmpl.stamp: tmpl-build.stamp
+ @true
+
+#### xml ####
+
+sgml-build.stamp: tmpl.stamp $(CFILE_GLOB) $(srcdir)/tmpl/*.sgml $(expand_content_files)
+ @echo 'gtk-doc: Building XML'
+ @-chmod -R u+w $(srcdir)
+ cd $(srcdir) && \
+ gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --output-format=xml --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) $(MKDB_OPTIONS)
+ touch sgml-build.stamp
+
+sgml.stamp: sgml-build.stamp
+ @true
+
+#### html ####
+
+html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files)
+ @echo 'gtk-doc: Building HTML'
+ @-chmod -R u+w $(srcdir)
+ rm -rf $(srcdir)/html
+ mkdir $(srcdir)/html
+ cd $(srcdir)/html && gtkdoc-mkhtml $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
+ test "x$(HTML_IMAGES)" = "x" || ( cd $(srcdir) && cp $(HTML_IMAGES) html )
+ @echo 'gtk-doc: Fixing cross-references'
+ cd $(srcdir) && gtkdoc-fixxref --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS)
+ touch html-build.stamp
+else
+all-local:
+endif
+
+##############
+
+clean-local:
+ rm -f *~ *.bak
+ rm -rf .libs
+
+maintainer-clean-local: clean
+ cd $(srcdir) && rm -rf xml html $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
+
+install-data-local:
+ installfiles=`echo $(srcdir)/html/*`; \
+ if test "$$installfiles" = '$(srcdir)/html/*'; \
+ then echo '-- Nothing to install' ; \
+ else \
+ $(mkinstalldirs) $(DESTDIR)$(TARGET_DIR); \
+ for i in $$installfiles; do \
+ echo '-- Installing '$$i ; \
+ $(INSTALL_DATA) $$i $(DESTDIR)$(TARGET_DIR); \
+ done; \
+ echo '-- Installing $(srcdir)/html/index.sgml' ; \
+ $(INSTALL_DATA) $(srcdir)/html/index.sgml $(DESTDIR)$(TARGET_DIR) || :; \
+ fi
+
+uninstall-local:
+ rm -f $(DESTDIR)$(TARGET_DIR)/*
+
+#
+# Require gtk-doc when making dist
+#
+if ENABLE_GTK_DOC
+dist-check-gtkdoc:
+else
+dist-check-gtkdoc:
+ @echo "*** gtk-doc must be installed and enabled in order to make dist"
+ @false
+endif
+
+dist-hook: dist-check-gtkdoc dist-hook-local
+ mkdir $(distdir)/tmpl
+ mkdir $(distdir)/xml
+ mkdir $(distdir)/html
+ -cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl
+ -cp $(srcdir)/xml/*.xml $(distdir)/xml
+ -cp $(srcdir)/html/* $(distdir)/html
+ if test -f $(srcdir)/$(DOC_MODULE).types; then \
+ cp $(srcdir)/$(DOC_MODULE).types $(distdir)/$(DOC_MODULE).types; \
+ fi
+
+.PHONY : dist-hook-local
--- /dev/null
+#
+# Makefile.am
+# Time-stamp: <2006-05-08 21:11:31 (djcb)>
+SUBDIRS=gtk gtk-glade hildon
+
+INCLUDES=\
+ $(MODEST_GSTUFF_CFLAGS)\
+ $(MODEST_GCONF_CFLAGS)\
+ $(MODEST_GTK_CFLAGS)\
+ $(MODEST_TINYMAIL_CFLAGS)
+
+bin_PROGRAMS=\
+ modest
+
+modest_SOURCES=\
+ modest-main.c\
+ modest-conf-keys.h\
+ modest-conf.h \
+ modest-conf-gconf.c\
+ modest-account-keys.h\
+ modest-account-mgr.h\
+ modest-account-mgr.c\
+ modest-window-mgr.h\
+ modest-window-mgr.c\
+ modest-tny-account-store.h\
+ modest-tny-account-store.c\
+ modest-tny-folder-tree-view.h\
+ modest-tny-folder-tree-view.c\
+ modest-tny-header-tree-view.h\
+ modest-tny-header-tree-view.c\
+ modest-tny-msg-view.h\
+ modest-tny-msg-view.c\
+ modest-proto.h\
+ modest-proto.c\
+ modest-ui.h
+
+modest_LDADD = \
+ $(MODEST_GSTUFF_LIBS) \
+ $(MODEST_GCONF_LIBS) \
+ $(MODEST_GTK_LIBS)\
+ $(MODEST_GLADE_LIBS) \
+ $(MODEST_TINYMAIL_LIBS)\
+ $(MODEST_UI_DIR)/libmodest-ui.la
--- /dev/null
+#
+# Makefile.am
+# Time-stamp: <2006-04-30 13:49:49 (djcb)>
+#
+#
+# use Automake 'trick' ==> convenience static libraries, which
+# won't be installed, just for linking
+#
+INCLUDES=\
+ $(MODEST_GSTUFF_CFLAGS) \
+ $(MODEST_GTK_CFLAGS) \
+ $(MODEST_GLADE_CFLAGS) \
+ $(MODEST_TINYMAIL_CFLAGS)
+
+noinst_LTLIBRARIES=\
+ libmodest-ui.la
+
+GLADE_SOURCE=\
+ modest.glade.h
+
+GLADE_FILES=\
+ modest.glade
+
+libmodest_ui_la_SOURCES=\
+ modest-ui.c\
+ $(GLADE_SOURCE)
+
+LDADD = \
+ $(MODEST_GSTUFF_LIBS) \
+ $(MODEST_GTK_LIBS) \
+ $(MODEST_GLADE_LIBS) \
+ $(MODEST_TINYMAIL_LIBS)
+
+EXTRA_DIST=pixmaps/*.png modest.glade modest.gladep
+
+$(GLADE_SOURCE): $(GLADE_FILES)
+ $(top_srcdir)/scripts/txt2doth $< > $@
--- /dev/null
+/* modest-ui.c */
+
+/* insert (c)/licensing information) */
+
+#include <gtk/gtk.h>
+#include <glade/glade.h>
+#include <glib/gi18n.h>
+#include <string.h>
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif /*HAVE_CONFIG_H*/
+
+#include "../modest-ui.h"
+#include "../modest-window-mgr.h"
+#include "../modest-account-mgr.h"
+
+#include "../modest-tny-account-store.h"
+#include "../modest-tny-folder-tree-view.h"
+#include "../modest-tny-header-tree-view.h"
+#include "../modest-tny-msg-view.h"
+
+//#include "modest.glade.h"
+
+#define MODEST_GLADE "modest.glade"
+#define MODEST_GLADE_MAIN_WIN "main"
+#define MODEST_GLADE_EDIT_WIN "new_mail"
+
+
+/* 'private'/'protected' functions */
+static void modest_ui_class_init (ModestUIClass *klass);
+static void modest_ui_init (ModestUI *obj);
+static void modest_ui_finalize (GObject *obj);
+
+static void modest_ui_window_destroy (GtkWidget *win, gpointer data);
+static void modest_ui_last_window_closed (GObject *obj, gpointer data);
+
+static GtkWidget* modest_main_window_toolbar (void);
+static GtkWidget* modest_main_window_folder_tree (ModestAccountMgr *modest_acc_mgr);
+static GtkWidget* modest_main_window_header_tree (TnyMsgFolderIface *folder);
+
+static void on_folder_clicked (ModestTnyFolderTreeView *folder_tree,
+ TnyMsgFolderIface *folder,
+ gpointer data);
+static void on_message_clicked (ModestTnyFolderTreeView *folder_tree,
+ TnyMsgIface *message,
+ gpointer data);
+
+
+/* list my signals */
+enum {
+ /* MY_SIGNAL_1, */
+ /* MY_SIGNAL_2, */
+ LAST_SIGNAL
+};
+
+
+typedef struct _ModestUIPrivate ModestUIPrivate;
+struct _ModestUIPrivate {
+
+ ModestConf *modest_conf;
+ ModestAccountMgr *modest_acc_mgr;
+ ModestWindowMgr *modest_window_mgr;
+
+ GtkWindow *main_window;
+ GSList* *edit_window_list;
+
+ GladeXML *glade_xml;
+
+
+};
+#define MODEST_UI_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE((o), \
+ MODEST_TYPE_UI, \
+ ModestUIPrivate))
+/* globals */
+static GObjectClass *parent_class = NULL;
+
+/* uncomment the following if you have defined any signals */
+/* static guint signals[LAST_SIGNAL] = {0}; */
+
+GType
+modest_ui_get_type (void)
+{
+ static GType my_type = 0;
+ if (!my_type) {
+ static const GTypeInfo my_info = {
+ sizeof(ModestUIClass),
+ NULL, /* base init */
+ NULL, /* base finalize */
+ (GClassInitFunc) modest_ui_class_init,
+ NULL, /* class finalize */
+ NULL, /* class data */
+ sizeof(ModestUI),
+ 1, /* n_preallocs */
+ (GInstanceInitFunc) modest_ui_init,
+ };
+ my_type = g_type_register_static (G_TYPE_OBJECT,
+ "ModestUI",
+ &my_info, 0);
+ }
+ return my_type;
+}
+
+static void
+modest_ui_class_init (ModestUIClass *klass)
+{
+ GObjectClass *gobject_class;
+ gobject_class = (GObjectClass*) klass;
+
+ parent_class = g_type_class_peek_parent (klass);
+ gobject_class->finalize = modest_ui_finalize;
+
+ g_type_class_add_private (gobject_class, sizeof(ModestUIPrivate));
+
+ /* signal definitions go here, e.g.: */
+/* signals[MY_SIGNAL_1] = */
+/* g_signal_new ("my_signal_1",....); */
+/* signals[MY_SIGNAL_2] = */
+/* g_signal_new ("my_signal_2",....); */
+/* etc. */
+}
+
+static void
+modest_ui_init (ModestUI *obj)
+{
+ ModestUIPrivate *priv = MODEST_UI_GET_PRIVATE(obj);
+
+ priv->modest_acc_mgr = NULL;
+ priv->modest_conf = NULL;
+ priv->modest_window_mgr = NULL;
+ priv->glade_xml = NULL;
+
+}
+
+static void
+modest_ui_finalize (GObject *obj)
+{
+ ModestUIPrivate *priv = MODEST_UI_GET_PRIVATE(obj);
+
+ if (priv->modest_acc_mgr)
+ g_object_unref (priv->modest_acc_mgr);
+ priv->modest_acc_mgr = NULL;
+
+ if (priv->modest_conf)
+ g_object_unref (priv->modest_conf);
+ priv->modest_conf = NULL;
+
+ if (priv->modest_window_mgr)
+ g_object_unref (priv->modest_window_mgr);
+ priv->modest_window_mgr = NULL;
+}
+
+GObject*
+modest_ui_new (ModestConf *modest_conf)
+{
+ GObject *obj;
+ ModestUIPrivate *priv;
+ ModestAccountMgr *modest_acc_mgr;
+
+ g_return_val_if_fail (modest_conf, NULL);
+
+ obj = g_object_new(MODEST_TYPE_UI, NULL);
+ priv = MODEST_UI_GET_PRIVATE(obj);
+
+ modest_acc_mgr =
+ MODEST_ACCOUNT_MGR(modest_account_mgr_new (modest_conf));
+ if (!modest_acc_mgr) {
+ g_warning ("could not create ModestAccountMgr instance");
+ g_object_unref (obj);
+ return NULL;
+ }
+
+ glade_init ();
+ priv->glade_xml = glade_xml_new (MODEST_GLADE,
+ MODEST_GLADE_MAIN_WIN,
+ NULL);
+ if (!priv->glade_xml) {
+ g_warning ("failed to do glade stuff");
+ g_object_unref (obj);
+ return NULL;
+ }
+
+ priv->modest_acc_mgr = modest_acc_mgr;
+ g_object_ref (priv->modest_conf = modest_conf);
+
+ priv->modest_window_mgr = MODEST_WINDOW_MGR(modest_window_mgr_new());
+ g_signal_connect (priv->modest_window_mgr, "last_window_closed",
+ G_CALLBACK(modest_ui_last_window_closed),
+ NULL);
+ return obj;
+}
+
+
+gboolean
+modest_ui_show_main_window (ModestUI *modest_ui)
+{
+ GtkWidget *win;
+ int height, width;
+ ModestUIPrivate *priv;
+ GtkWidget *folder_view, *header_view;
+ GtkWidget *message_view;
+
+ GtkWidget *folder_view_holder,
+ *header_view_holder,
+ *message_view_holder;
+
+ priv = MODEST_UI_GET_PRIVATE(modest_ui);
+
+ height = modest_conf_get_int (priv->modest_conf,
+ MODEST_CONF_MAIN_WINDOW_HEIGHT,NULL);
+ width = modest_conf_get_int (priv->modest_conf,
+ MODEST_CONF_MAIN_WINDOW_WIDTH,NULL);
+
+ win = glade_xml_get_widget (priv->glade_xml, "main");
+ if (!win) {
+ g_warning ("could not create main window");
+ return FALSE;
+ }
+
+ folder_view =
+ GTK_WIDGET(modest_main_window_folder_tree(priv->modest_acc_mgr));
+ folder_view_holder = glade_xml_get_widget (priv->glade_xml, "folders");
+ if (!folder_view||!folder_view_holder) {
+ g_warning ("failed to create folder tree");
+ return FALSE;
+ }
+ gtk_container_add (GTK_CONTAINER(folder_view_holder), folder_view);
+
+ header_view = GTK_WIDGET(modest_main_window_header_tree (NULL));
+ header_view_holder = glade_xml_get_widget (priv->glade_xml, "mail_list");
+ if (!header_view) {
+ g_warning ("failed to create header tree");
+ return FALSE;
+ }
+ gtk_container_add (GTK_CONTAINER(header_view_holder), header_view);
+
+ g_signal_connect (G_OBJECT(folder_view), "folder_selected",
+ G_CALLBACK(on_folder_clicked), modest_ui);
+
+ message_view = GTK_WIDGET(modest_tny_msg_view_new (NULL));
+ message_view_holder = glade_xml_get_widget (priv->glade_xml, "mail_view");
+ if (!message_view) {
+ g_warning ("failed to create message view");
+ return FALSE;
+ }
+ gtk_container_add (GTK_CONTAINER(message_view_holder), message_view);
+
+ g_signal_connect (header_view, "message_selected",
+ G_CALLBACK(on_message_clicked),
+ modest_ui);
+
+ modest_window_mgr_register (priv->modest_window_mgr,
+ G_OBJECT(win), MODEST_MAIN_WINDOW, 0);
+ g_signal_connect (win, "destroy", G_CALLBACK(modest_ui_window_destroy),
+ modest_ui);
+ gtk_widget_set_usize (GTK_WIDGET(win), height, width);
+ gtk_window_set_title (GTK_WINDOW(win), PACKAGE_STRING);
+
+ gtk_widget_show_all (win);
+ return TRUE;
+}
+
+
+gboolean
+modest_ui_show_edit_window (ModestUI *modest_ui, const gchar* to,
+ const gchar* cc, const gchar* bcc,
+ const gchar* subject, const gchar *body,
+ const GSList* att)
+{
+ GtkWidget *win;
+ ModestUIPrivate *priv;
+
+ priv = MODEST_UI_GET_PRIVATE(modest_ui);
+ int height = modest_conf_get_int (priv->modest_conf,
+ MODEST_CONF_EDIT_WINDOW_HEIGHT,NULL);
+ int width = modest_conf_get_int (priv->modest_conf,
+ MODEST_CONF_EDIT_WINDOW_WIDTH,NULL);
+
+ win = glade_xml_get_widget (priv->glade_xml, "new_mail");
+ if (!win) {
+ g_warning ("could not create edit window");
+ return FALSE;
+ }
+
+ modest_window_mgr_register (priv->modest_window_mgr,
+ G_OBJECT(win), MODEST_EDIT_WINDOW, 0);
+
+ g_signal_connect (win, "destroy", G_CALLBACK(modest_ui_window_destroy),
+ modest_ui);
+
+ gtk_widget_set_usize (GTK_WIDGET(win), height, width);
+ gtk_window_set_title (GTK_WINDOW(win),
+ subject ? subject : "Untitled");
+
+ gtk_widget_show_all (win);
+
+ return TRUE;
+}
+
+
+static void
+modest_ui_window_destroy (GtkWidget *win, gpointer data)
+{
+ ModestUIPrivate *priv;
+
+ g_return_if_fail (data);
+
+ priv = MODEST_UI_GET_PRIVATE((ModestUI*)data);
+ if (!modest_window_mgr_unregister (priv->modest_window_mgr, G_OBJECT(win)))
+ g_warning ("modest window mgr: failed to unregister %p",
+ G_OBJECT(win));
+}
+
+
+static void
+modest_ui_last_window_closed (GObject *obj, gpointer data)
+{
+ gtk_main_quit ();
+}
+
+
+
+
+static void on_folder_clicked (ModestTnyFolderTreeView *folder_tree,
+ TnyMsgFolderIface *folder,
+ gpointer data)
+{
+ GtkWidget *win;
+ ModestTnyHeaderTreeView *tree_view;
+ ModestUIPrivate *priv;
+ GtkWidget *scrollview;
+
+ g_return_if_fail (folder);
+ g_return_if_fail (data);
+
+ priv = MODEST_UI_GET_PRIVATE(data);
+ scrollview = glade_xml_get_widget (priv->glade_xml,"mail_list");
+
+ tree_view = MODEST_TNY_HEADER_TREE_VIEW(
+ gtk_bin_get_child(GTK_BIN(scrollview)));
+ win = glade_xml_get_widget (priv->glade_xml, "main");
+ gtk_window_set_title (GTK_WINDOW(win),
+ tny_msg_folder_iface_get_name(folder));
+
+ modest_tny_header_tree_view_set_folder (tree_view,
+ folder);
+}
+
+
+
+static void on_message_clicked (ModestTnyFolderTreeView *folder_tree,
+ TnyMsgIface *message,
+ gpointer data)
+{
+ GtkWidget *scrollview;
+ ModestTnyMsgView *msg_view;
+ ModestUIPrivate *priv;
+
+ g_return_if_fail (message);
+ g_return_if_fail (data);
+
+ priv = MODEST_UI_GET_PRIVATE(data);
+ scrollview = glade_xml_get_widget (priv->glade_xml,"mail_view");
+
+ msg_view = MODEST_TNY_MSG_VIEW(
+ gtk_bin_get_child(GTK_BIN(scrollview)));
+
+ modest_tny_msg_view_set_message (msg_view,
+ message);
+}
+
+
+
+static GtkWidget*
+modest_main_window_header_tree (TnyMsgFolderIface *folder)
+{
+ GtkTreeViewColumn *column;
+ GtkCellRenderer *renderer = gtk_cell_renderer_text_new ();
+ GtkWidget *header_tree;
+
+ header_tree = GTK_WIDGET(modest_tny_header_tree_view_new(folder));
+ if (!header_tree) {
+ g_warning ("could not create header tree");
+ return NULL;
+ }
+
+ column = gtk_tree_view_column_new_with_attributes(_("Date"), renderer,
+ "text",
+ TNY_MSG_HEADER_LIST_MODEL_DATE_RECEIVED_COLUMN,
+ NULL);
+ gtk_tree_view_column_set_resizable (column, TRUE);
+ gtk_tree_view_append_column (GTK_TREE_VIEW(header_tree), column);
+
+
+
+ column = gtk_tree_view_column_new_with_attributes(_("From"), renderer,
+ "text",
+ TNY_MSG_HEADER_LIST_MODEL_FROM_COLUMN,
+ NULL);
+ gtk_tree_view_column_set_resizable (column, TRUE);
+ gtk_tree_view_append_column (GTK_TREE_VIEW(header_tree), column);
+
+
+ column = gtk_tree_view_column_new_with_attributes(_("Subject"), renderer,
+ "text",
+ TNY_MSG_HEADER_LIST_MODEL_SUBJECT_COLUMN,
+ NULL);
+ gtk_tree_view_column_set_resizable (column, TRUE);
+ gtk_tree_view_append_column (GTK_TREE_VIEW(header_tree), column);
+
+ gtk_tree_view_set_headers_visible (GTK_TREE_VIEW(header_tree), TRUE);
+ gtk_tree_view_set_headers_clickable (GTK_TREE_VIEW(header_tree), TRUE);
+
+ return GTK_WIDGET(header_tree);
+}
+
+
+
+
+static GtkWidget*
+modest_main_window_folder_tree (ModestAccountMgr *modest_acc_mgr)
+{
+ GtkTreeViewColumn *column;
+ GtkCellRenderer *renderer = gtk_cell_renderer_text_new ();
+ GtkWidget *folder_tree;
+ TnyAccountStoreIface *account_store_iface =
+ TNY_ACCOUNT_STORE_IFACE(modest_tny_account_store_new (modest_acc_mgr));
+ if (!account_store_iface) {
+ g_warning ("could not initialze ModestTnyAccountStore");
+ return NULL;
+ }
+
+ folder_tree = modest_tny_folder_tree_view_new (account_store_iface);
+ if (!folder_tree) {
+ g_warning ("could not create folder list");
+ return NULL;
+ }
+
+ column = gtk_tree_view_column_new_with_attributes(_("All Mail Folders"),
+ renderer,"text",
+ TNY_ACCOUNT_TREE_MODEL_NAME_COLUMN,
+ NULL);
+ gtk_tree_view_column_set_resizable (column, TRUE);
+ gtk_tree_view_append_column (GTK_TREE_VIEW(folder_tree), column);
+
+ column = gtk_tree_view_column_new_with_attributes(_("Unread"),
+ renderer, "text",
+ TNY_ACCOUNT_TREE_MODEL_UNREAD_COLUMN,
+ NULL);
+ gtk_tree_view_column_set_resizable (column, TRUE);
+ gtk_tree_view_append_column (GTK_TREE_VIEW(folder_tree), column);
+
+
+ gtk_tree_view_set_headers_visible (GTK_TREE_VIEW(folder_tree), TRUE);
+ gtk_tree_view_set_headers_clickable (GTK_TREE_VIEW(folder_tree), TRUE);
+
+ return folder_tree;
+}
--- /dev/null
+<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*-->
+<!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd">
+
+<glade-interface>
+
+<widget class="GtkWindow" id="main">
+ <property name="title" translatable="yes">Modest</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="default_width">800</property>
+ <property name="default_height">600</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">False</property>
+ <property name="icon">qgn_toolb_messagin.png</property>
+ <property name="decorated">True</property>
+ <property name="skip_taskbar_hint">False</property>
+ <property name="skip_pager_hint">False</property>
+ <property name="type_hint">GDK_WINDOW_TYPE_HINT_NORMAL</property>
+ <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+ <property name="focus_on_map">True</property>
+ <property name="urgency_hint">False</property>
+
+ <child>
+ <widget class="GtkVBox" id="vbox1">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+
+ <child>
+ <widget class="GtkMenuBar" id="menubar1">
+ <property name="visible">True</property>
+ <property name="pack_direction">GTK_PACK_DIRECTION_LTR</property>
+ <property name="child_pack_direction">GTK_PACK_DIRECTION_LTR</property>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_Message</property>
+ <property name="use_underline">True</property>
+
+ <child>
+ <widget class="GtkMenu" id="menuitem1_menu">
+
+ <child>
+ <widget class="GtkMenuItem" id="new_e-mail1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">New e-mail</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_new_e-mail1_activate" last_modification_time="Fri, 28 Apr 2006 11:10:18 GMT"/>
+ <accelerator key="N" modifiers="GDK_CONTROL_MASK" signal="activate"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="open1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Open</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_open1_activate" last_modification_time="Fri, 28 Apr 2006 11:10:18 GMT"/>
+ <accelerator key="O" modifiers="GDK_CONTROL_MASK" signal="activate"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkSeparatorMenuItem" id="separator1">
+ <property name="visible">True</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="reply1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Reply</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_reply1_activate" last_modification_time="Fri, 28 Apr 2006 11:10:18 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="reply_to_all1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Reply to all</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_reply_to_all1_activate" last_modification_time="Fri, 28 Apr 2006 11:10:18 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="forward1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Forward</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_forward1_activate" last_modification_time="Fri, 28 Apr 2006 12:05:09 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkSeparatorMenuItem" id="separator2">
+ <property name="visible">True</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="delete1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Delete</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_delete1_activate" last_modification_time="Fri, 28 Apr 2006 12:05:09 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkSeparatorMenuItem" id="separator3">
+ <property name="visible">True</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="details1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Details</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_details1_activate" last_modification_time="Fri, 28 Apr 2006 12:05:09 GMT"/>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem2">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_Edit</property>
+ <property name="use_underline">True</property>
+
+ <child>
+ <widget class="GtkMenu" id="menuitem2_menu">
+
+ <child>
+ <widget class="GtkMenuItem" id="undo1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Undo</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_undo1_activate" last_modification_time="Fri, 28 Apr 2006 11:10:18 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkSeparatorMenuItem" id="separator4">
+ <property name="visible">True</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="cut1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Cut</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_cut1_activate" last_modification_time="Fri, 28 Apr 2006 11:10:18 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="copy1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Copy</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_copy1_activate" last_modification_time="Fri, 28 Apr 2006 11:10:18 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="paste1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Paste</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_paste1_activate" last_modification_time="Fri, 28 Apr 2006 11:10:18 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="select1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_Select</property>
+ <property name="use_underline">True</property>
+
+ <child>
+ <widget class="GtkMenu" id="select1_menu">
+
+ <child>
+ <widget class="GtkMenuItem" id="mark_all1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Mark all</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_mark_all1_activate" last_modification_time="Fri, 28 Apr 2006 12:10:20 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="unmark_all1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Unmark all</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_unmark_all1_activate" last_modification_time="Fri, 28 Apr 2006 12:10:20 GMT"/>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkSeparatorMenuItem" id="separator6">
+ <property name="visible">True</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="move_to1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Move to...</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_move_to1_activate" last_modification_time="Fri, 28 Apr 2006 12:12:30 GMT"/>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem3">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_Folders</property>
+ <property name="use_underline">True</property>
+
+ <child>
+ <widget class="GtkMenu" id="menuitem3_menu">
+
+ <child>
+ <widget class="GtkMenuItem" id="new_folder1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">New folder...</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_new_folder1_activate" last_modification_time="Fri, 28 Apr 2006 12:15:47 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="manage_folders1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Manage folders</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_manage_folders1_activate" last_modification_time="Fri, 28 Apr 2006 12:15:47 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkSeparatorMenuItem" id="separator7">
+ <property name="visible">True</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="details2">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Details</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_details2_activate" last_modification_time="Fri, 28 Apr 2006 12:15:47 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="folder_settings1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Folder settings...</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_folder_settings1_activate" last_modification_time="Fri, 28 Apr 2006 12:15:47 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkSeparatorMenuItem" id="separator8">
+ <property name="visible">True</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkRadioMenuItem" id="inbox1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Inbox</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <signal name="activate" handler="on_inbox1_activate" last_modification_time="Fri, 28 Apr 2006 12:15:47 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkRadioMenuItem" id="outbox1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Outbox</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <property name="group">inbox1</property>
+ <signal name="activate" handler="on_outbox1_activate" last_modification_time="Fri, 28 Apr 2006 12:15:47 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkRadioMenuItem" id="drafts1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Drafts</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <property name="group">inbox1</property>
+ <signal name="activate" handler="on_drafts1_activate" last_modification_time="Fri, 28 Apr 2006 12:15:47 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkRadioMenuItem" id="sent1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Sent</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <property name="group">inbox1</property>
+ <signal name="activate" handler="on_sent1_activate" last_modification_time="Fri, 28 Apr 2006 12:15:47 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkRadioMenuItem" id="archive1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Archive</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <property name="group">inbox1</property>
+ <signal name="activate" handler="on_archive1_activate" last_modification_time="Fri, 28 Apr 2006 12:15:47 GMT"/>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem4">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_View</property>
+ <property name="use_underline">True</property>
+
+ <child>
+ <widget class="GtkMenu" id="menuitem4_menu">
+
+ <child>
+ <widget class="GtkMenuItem" id="sort1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Sort...</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_sort1_activate" last_modification_time="Fri, 28 Apr 2006 12:17:29 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkSeparatorMenuItem" id="separator9">
+ <property name="visible">True</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="show_toolbar1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_Show toolbar</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_show_toolbar1_activate" last_modification_time="Fri, 28 Apr 2006 12:17:29 GMT"/>
+
+ <child>
+ <widget class="GtkMenu" id="show_toolbar1_menu">
+
+ <child>
+ <widget class="GtkCheckMenuItem" id="normal_screen1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Normal screen</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <signal name="activate" handler="on_normal_screen1_activate" last_modification_time="Fri, 28 Apr 2006 12:17:29 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkCheckMenuItem" id="full_screen2">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Full screen</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <signal name="activate" handler="on_full_screen2_activate" last_modification_time="Fri, 28 Apr 2006 12:17:29 GMT"/>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkCheckMenuItem" id="folders1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Folders</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <signal name="activate" handler="on_folders1_activate" last_modification_time="Fri, 28 Apr 2006 12:17:29 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkCheckMenuItem" id="full_screen1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Full screen</property>
+ <property name="use_underline">True</property>
+ <property name="active">False</property>
+ <signal name="activate" handler="on_full_screen1_activate" last_modification_time="Fri, 28 Apr 2006 12:17:29 GMT"/>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="e-mail1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">E-m_ail</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_e-mail1_activate" last_modification_time="Fri, 28 Apr 2006 12:12:02 GMT"/>
+
+ <child>
+ <widget class="GtkMenu" id="e-mail1_menu">
+
+ <child>
+ <widget class="GtkMenuItem" id="send_&_receive1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Send & receive</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_send_&_receive1_activate" last_modification_time="Fri, 28 Apr 2006 12:21:50 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="retrieve_e-mail_contents1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Retrieve e-mail contents</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_retrieve_e-mail_contents1_activate" last_modification_time="Fri, 28 Apr 2006 12:21:50 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="purge_attacments1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Purge attacments</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_purge_attacments1_activate" last_modification_time="Fri, 28 Apr 2006 12:21:50 GMT"/>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="tools1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_Tools</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_tools1_activate" last_modification_time="Fri, 28 Apr 2006 12:12:02 GMT"/>
+
+ <child>
+ <widget class="GtkMenu" id="tools1_menu">
+
+ <child>
+ <widget class="GtkMenuItem" id="open_contacts1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Open contacts...</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_open_contacts1_activate" last_modification_time="Fri, 28 Apr 2006 12:23:17 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkSeparatorMenuItem" id="separator11">
+ <property name="visible">True</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="new_account1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">New account...</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_new_account1_activate" last_modification_time="Fri, 28 Apr 2006 12:23:17 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="account_settings1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Account settings...</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_account_settings1_activate" last_modification_time="Fri, 28 Apr 2006 12:23:17 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="options1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Options</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_options1_activate" last_modification_time="Fri, 28 Apr 2006 12:23:17 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkSeparatorMenuItem" id="separator10">
+ <property name="visible">True</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="search_e-mails1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Search e-mails...</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_search_e-mails1_activate" last_modification_time="Fri, 28 Apr 2006 12:23:17 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkSeparatorMenuItem" id="separator12">
+ <property name="visible">True</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="help1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Help</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_help1_activate" last_modification_time="Fri, 28 Apr 2006 12:23:17 GMT"/>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="close1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_Close</property>
+ <property name="use_underline">True</property>
+
+ <child>
+ <widget class="GtkMenu" id="close1_menu">
+
+ <child>
+ <widget class="GtkMenuItem" id="about1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Close window</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_about1_activate" last_modification_time="Fri, 28 Apr 2006 11:10:18 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="close_all_windows1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Close all windows</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_close_all_windows1_activate" last_modification_time="Fri, 28 Apr 2006 12:24:02 GMT"/>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkToolbar" id="toolbar1">
+ <property name="visible">True</property>
+ <property name="orientation">GTK_ORIENTATION_HORIZONTAL</property>
+ <property name="toolbar_style">GTK_TOOLBAR_BOTH</property>
+ <property name="tooltips">True</property>
+ <property name="show_arrow">True</property>
+
+ <child>
+ <widget class="GtkToolButton" id="toolb_new_mail">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Compose new e-mail message</property>
+ <property name="label" translatable="yes">New e-mail</property>
+ <property name="use_underline">True</property>
+ <property name="icon">qgn_toolb_messagin_new.png</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkToolButton" id="toolb_reply">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Reply</property>
+ <property name="label" translatable="yes">Reply</property>
+ <property name="use_underline">True</property>
+ <property name="icon">qgn_toolb_messagin_reply.png</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkToolButton" id="toolb_reply_all">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Reply all</property>
+ <property name="label" translatable="yes">Reply all</property>
+ <property name="use_underline">True</property>
+ <property name="icon">qgn_toolb_messagin_replytoall.png</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkToolButton" id="toolb_forward">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Forward</property>
+ <property name="label" translatable="yes">Forward</property>
+ <property name="use_underline">True</property>
+ <property name="icon">qgn_toolb_messagin_forward.png</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkToolButton" id="toolb_move_to">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Move message to other location</property>
+ <property name="label" translatable="yes">Move to...</property>
+ <property name="use_underline">True</property>
+ <property name="icon">qgn_toolb_messagin_moveto.png</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkToolButton" id="toolb_delete">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Delete message</property>
+ <property name="label" translatable="yes">Delete</property>
+ <property name="use_underline">True</property>
+ <property name="icon">qgn_toolb_messagin_delete.png</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkToolButton" id="toolb_send_receive">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Send and receive</property>
+ <property name="label" translatable="yes">Send & receive</property>
+ <property name="use_underline">True</property>
+ <property name="icon">qgn_toolb_messagin_sendreceive.png</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkHPaned" id="hpaned1">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="position">170</property>
+
+ <child>
+ <widget class="GtkScrolledWindow" id="folders">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+ <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+ <property name="shadow_type">GTK_SHADOW_NONE</property>
+ <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+
+ <child>
+ <placeholder/>
+ </child>
+ </widget>
+ <packing>
+ <property name="shrink">True</property>
+ <property name="resize">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkVPaned" id="vpaned1">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="position">150</property>
+
+ <child>
+ <widget class="GtkScrolledWindow" id="mail_list">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
+ <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+ <property name="shadow_type">GTK_SHADOW_NONE</property>
+ <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+
+ <child>
+ <placeholder/>
+ </child>
+ </widget>
+ <packing>
+ <property name="shrink">True</property>
+ <property name="resize">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkScrolledWindow" id="mail_view">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
+ <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+ <property name="shadow_type">GTK_SHADOW_NONE</property>
+ <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+
+ <child>
+ <placeholder/>
+ </child>
+ </widget>
+ <packing>
+ <property name="shrink">True</property>
+ <property name="resize">True</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="shrink">True</property>
+ <property name="resize">True</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </widget>
+ </child>
+</widget>
+
+<widget class="GtkWindow" id="new_mail">
+ <property name="title" translatable="yes">Modest - New message</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="default_width">800</property>
+ <property name="default_height">600</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">False</property>
+ <property name="icon">qgn_toolb_messagin.png</property>
+ <property name="decorated">True</property>
+ <property name="skip_taskbar_hint">False</property>
+ <property name="skip_pager_hint">False</property>
+ <property name="type_hint">GDK_WINDOW_TYPE_HINT_NORMAL</property>
+ <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+ <property name="focus_on_map">True</property>
+ <property name="urgency_hint">False</property>
+
+ <child>
+ <widget class="GtkVBox" id="vbox2">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+
+ <child>
+ <widget class="GtkMenuBar" id="menubar2">
+ <property name="visible">True</property>
+ <property name="pack_direction">GTK_PACK_DIRECTION_LTR</property>
+ <property name="child_pack_direction">GTK_PACK_DIRECTION_LTR</property>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem5">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_Message</property>
+ <property name="use_underline">True</property>
+
+ <child>
+ <widget class="GtkMenu" id="menuitem5_menu">
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem6">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Send</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_new_e-mail1_activate" last_modification_time="Fri, 28 Apr 2006 11:10:18 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkSeparatorMenuItem" id="separator13">
+ <property name="visible">True</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem7">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">New e-mail</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_open1_activate" last_modification_time="Fri, 28 Apr 2006 11:10:18 GMT"/>
+ <accelerator key="O" modifiers="GDK_CONTROL_MASK" signal="activate"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkSeparatorMenuItem" id="separatormenuitem1">
+ <property name="visible">True</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem8">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Delete message</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_reply1_activate" last_modification_time="Fri, 28 Apr 2006 11:10:18 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkSeparatorMenuItem" id="separator14">
+ <property name="visible">True</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem9">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Select recipients...</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_reply_to_all1_activate" last_modification_time="Fri, 28 Apr 2006 11:10:18 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem10">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Check names</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_forward1_activate" last_modification_time="Fri, 28 Apr 2006 12:05:09 GMT"/>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem13">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_Edit</property>
+ <property name="use_underline">True</property>
+
+ <child>
+ <widget class="GtkMenu" id="menuitem13_menu">
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem14">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Undo</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_undo1_activate" last_modification_time="Fri, 28 Apr 2006 11:10:18 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkSeparatorMenuItem" id="separatormenuitem4">
+ <property name="visible">True</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem15">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Cut</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_cut1_activate" last_modification_time="Fri, 28 Apr 2006 11:10:18 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem16">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Copy</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_copy1_activate" last_modification_time="Fri, 28 Apr 2006 11:10:18 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem17">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Paste</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_paste1_activate" last_modification_time="Fri, 28 Apr 2006 11:10:18 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem18">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Select all</property>
+ <property name="use_underline">True</property>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem22">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_Attachments</property>
+ <property name="use_underline">True</property>
+
+ <child>
+ <widget class="GtkMenu" id="menuitem22_menu">
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem23">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Attach file...</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_new_folder1_activate" last_modification_time="Fri, 28 Apr 2006 12:15:47 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem24">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Insert inline image</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_manage_folders1_activate" last_modification_time="Fri, 28 Apr 2006 12:15:47 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkSeparatorMenuItem" id="separator15">
+ <property name="visible">True</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem25">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Remove attachment</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_details2_activate" last_modification_time="Fri, 28 Apr 2006 12:15:47 GMT"/>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem27">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_View</property>
+ <property name="use_underline">True</property>
+
+ <child>
+ <widget class="GtkMenu" id="menuitem27_menu">
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem28">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_Zoom</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_sort1_activate" last_modification_time="Fri, 28 Apr 2006 12:17:29 GMT"/>
+
+ <child>
+ <widget class="GtkMenu" id="menuitem28_menu">
+
+ <child>
+ <widget class="GtkRadioMenuItem" id="50%1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">50%</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <signal name="activate" handler="on_50%1_activate" last_modification_time="Fri, 28 Apr 2006 13:25:43 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkRadioMenuItem" id="100%1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">100%</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <property name="group">50%1</property>
+ <signal name="activate" handler="on_100%1_activate" last_modification_time="Fri, 28 Apr 2006 13:25:43 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkRadioMenuItem" id="150%1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">150%</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <property name="group">50%1</property>
+ <signal name="activate" handler="on_150%1_activate" last_modification_time="Fri, 28 Apr 2006 13:25:43 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkRadioMenuItem" id="200%1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">200%</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <property name="group">50%1</property>
+ <signal name="activate" handler="on_200%1_activate" last_modification_time="Fri, 28 Apr 2006 13:25:43 GMT"/>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem29">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Show toolbar</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_show_toolbar1_activate" last_modification_time="Fri, 28 Apr 2006 12:17:29 GMT"/>
+
+ <child>
+ <widget class="GtkMenu" id="menuitem29_menu">
+
+ <child>
+ <widget class="GtkCheckMenuItem" id="checkmenuitem1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Normal screen</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <signal name="activate" handler="on_normal_screen1_activate" last_modification_time="Fri, 28 Apr 2006 12:17:29 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkCheckMenuItem" id="checkmenuitem2">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Full screen</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <signal name="activate" handler="on_full_screen2_activate" last_modification_time="Fri, 28 Apr 2006 12:17:29 GMT"/>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkCheckMenuItem" id="checkmenuitem4">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Full screen</property>
+ <property name="use_underline">True</property>
+ <property name="active">False</property>
+ <signal name="activate" handler="on_full_screen1_activate" last_modification_time="Fri, 28 Apr 2006 12:17:29 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkSeparatorMenuItem" id="separator16">
+ <property name="visible">True</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkCheckMenuItem" id="show_cc1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Show Cc</property>
+ <property name="use_underline">True</property>
+ <property name="active">False</property>
+ <signal name="activate" handler="on_show_cc1_activate" last_modification_time="Fri, 28 Apr 2006 13:25:43 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkCheckMenuItem" id="show_bcc1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Show Bcc</property>
+ <property name="use_underline">True</property>
+ <property name="active">False</property>
+ <signal name="activate" handler="on_show_bcc1_activate" last_modification_time="Fri, 28 Apr 2006 13:25:43 GMT"/>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem30">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_Format</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_e-mail1_activate" last_modification_time="Fri, 28 Apr 2006 12:12:02 GMT"/>
+
+ <child>
+ <widget class="GtkMenu" id="menuitem30_menu">
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem31">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Font...</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_send_&_receive1_activate" last_modification_time="Fri, 28 Apr 2006 12:21:50 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem32">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Bullets</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_retrieve_e-mail_contents1_activate" last_modification_time="Fri, 28 Apr 2006 12:21:50 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem33">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Numbers</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_purge_attacments1_activate" last_modification_time="Fri, 28 Apr 2006 12:21:50 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="alignment1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Alignment</property>
+ <property name="use_underline">True</property>
+
+ <child>
+ <widget class="GtkMenu" id="alignment1_menu">
+
+ <child>
+ <widget class="GtkRadioMenuItem" id="left1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Left</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <signal name="activate" handler="on_left1_activate" last_modification_time="Fri, 28 Apr 2006 13:28:18 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkRadioMenuItem" id="center1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Center</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <property name="group">left1</property>
+ <signal name="activate" handler="on_center1_activate" last_modification_time="Fri, 28 Apr 2006 13:28:18 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkRadioMenuItem" id="right1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Right</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <property name="group">left1</property>
+ <signal name="activate" handler="on_right1_activate" last_modification_time="Fri, 28 Apr 2006 13:28:18 GMT"/>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="background_colour1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Background colour</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_background_colour1_activate" last_modification_time="Fri, 28 Apr 2006 13:28:54 GMT"/>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem34">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_Tools</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_tools1_activate" last_modification_time="Fri, 28 Apr 2006 12:12:02 GMT"/>
+
+ <child>
+ <widget class="GtkMenu" id="menuitem34_menu">
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem35">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Sending options...</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_open_contacts1_activate" last_modification_time="Fri, 28 Apr 2006 12:23:17 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkSeparatorMenuItem" id="separatormenuitem9">
+ <property name="visible">True</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem36">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Find on page...</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_new_account1_activate" last_modification_time="Fri, 28 Apr 2006 12:23:17 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem39">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Search e-mails...</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_search_e-mails1_activate" last_modification_time="Fri, 28 Apr 2006 12:23:17 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkSeparatorMenuItem" id="separatormenuitem11">
+ <property name="visible">True</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem40">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Help</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_help1_activate" last_modification_time="Fri, 28 Apr 2006 12:23:17 GMT"/>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="security1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_Security</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_security1_activate" last_modification_time="Fri, 28 Apr 2006 13:30:35 GMT"/>
+
+ <child>
+ <widget class="GtkMenu" id="security1_menu">
+
+ <child>
+ <widget class="GtkRadioMenuItem" id="none1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">None</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <signal name="activate" handler="on_none1_activate" last_modification_time="Fri, 28 Apr 2006 13:32:29 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkRadioMenuItem" id="encrypt1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Encrypt</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <property name="group">none1</property>
+ <signal name="activate" handler="on_encrypt1_activate" last_modification_time="Fri, 28 Apr 2006 13:32:29 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkRadioMenuItem" id="digitally_sign1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Digitally sign</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <property name="group">none1</property>
+ <signal name="activate" handler="on_digitally_sign1_activate" last_modification_time="Fri, 28 Apr 2006 13:32:29 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkRadioMenuItem" id="digitally_sign_and_encrypt1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Digitally sign and encrypt</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <property name="group">none1</property>
+ <signal name="activate" handler="on_digitally_sign_and_encrypt1_activate" last_modification_time="Fri, 28 Apr 2006 13:32:29 GMT"/>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem41">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_Close</property>
+ <property name="use_underline">True</property>
+
+ <child>
+ <widget class="GtkMenu" id="menuitem41_menu">
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem42">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Close window</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_about1_activate" last_modification_time="Fri, 28 Apr 2006 11:10:18 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem43">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Close all windows</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_close_all_windows1_activate" last_modification_time="Fri, 28 Apr 2006 12:24:02 GMT"/>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkToolbar" id="toolbar2">
+ <property name="visible">True</property>
+ <property name="orientation">GTK_ORIENTATION_HORIZONTAL</property>
+ <property name="toolbar_style">GTK_TOOLBAR_BOTH</property>
+ <property name="tooltips">True</property>
+ <property name="show_arrow">True</property>
+
+ <child>
+ <widget class="GtkToolButton" id="toolb_send">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Send message</property>
+ <property name="label" translatable="yes">Send</property>
+ <property name="use_underline">True</property>
+ <property name="icon">qgn_toolb_messagin_send.png</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkToolButton" id="toolb_attach">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Add attachment</property>
+ <property name="label" translatable="yes">Attach</property>
+ <property name="use_underline">True</property>
+ <property name="icon">qgn_list_gene_attacpap.png</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkToolButton" id="toolb_recipients">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Add reipients</property>
+ <property name="label" translatable="yes">Recipients</property>
+ <property name="use_underline">True</property>
+ <property name="icon">qgn_list_gene_contacts.png</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkVPaned" id="vpaned2">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="position">65</property>
+
+ <child>
+ <widget class="GtkTable" id="table1">
+ <property name="border_width">10</property>
+ <property name="visible">True</property>
+ <property name="n_rows">2</property>
+ <property name="n_columns">2</property>
+ <property name="homogeneous">False</property>
+ <property name="row_spacing">10</property>
+ <property name="column_spacing">10</property>
+
+ <child>
+ <widget class="GtkLabel" id="label1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">To:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_RIGHT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">0</property>
+ <property name="bottom_attach">1</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="label2">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Subject:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_RIGHT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkEntry" id="entry2">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">True</property>
+ <property name="visibility">True</property>
+ <property name="max_length">0</property>
+ <property name="text" translatable="yes"></property>
+ <property name="has_frame">True</property>
+ <property name="invisible_char">*</property>
+ <property name="activates_default">False</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">0</property>
+ <property name="bottom_attach">1</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkEntry" id="entry3">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">True</property>
+ <property name="visibility">True</property>
+ <property name="max_length">0</property>
+ <property name="text" translatable="yes"></property>
+ <property name="has_frame">True</property>
+ <property name="invisible_char">*</property>
+ <property name="activates_default">False</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="shrink">True</property>
+ <property name="resize">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkScrolledWindow" id="scrolledwindow9">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+ <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+ <property name="shadow_type">GTK_SHADOW_IN</property>
+ <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+
+ <child>
+ <widget class="GtkTextView" id="textview1">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">True</property>
+ <property name="overwrite">False</property>
+ <property name="accepts_tab">True</property>
+ <property name="justification">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap_mode">GTK_WRAP_NONE</property>
+ <property name="cursor_visible">True</property>
+ <property name="pixels_above_lines">0</property>
+ <property name="pixels_below_lines">0</property>
+ <property name="pixels_inside_wrap">0</property>
+ <property name="left_margin">0</property>
+ <property name="right_margin">0</property>
+ <property name="indent">0</property>
+ <property name="text" translatable="yes"> </property>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="shrink">True</property>
+ <property name="resize">True</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </widget>
+ </child>
+</widget>
+
+<widget class="GtkWindow" id="viewer">
+ <property name="title" translatable="yes">Modest - Message viewer</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="default_width">800</property>
+ <property name="default_height">600</property>
+ <property name="resizable">True</property>
+ <property name="destroy_with_parent">False</property>
+ <property name="icon">qgn_toolb_messagin.png</property>
+ <property name="decorated">True</property>
+ <property name="skip_taskbar_hint">False</property>
+ <property name="skip_pager_hint">False</property>
+ <property name="type_hint">GDK_WINDOW_TYPE_HINT_NORMAL</property>
+ <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+ <property name="focus_on_map">True</property>
+ <property name="urgency_hint">False</property>
+
+ <child>
+ <widget class="GtkVBox" id="vbox3">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+
+ <child>
+ <widget class="GtkMenuBar" id="menubar3">
+ <property name="visible">True</property>
+ <property name="pack_direction">GTK_PACK_DIRECTION_LTR</property>
+ <property name="child_pack_direction">GTK_PACK_DIRECTION_LTR</property>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem44">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_Message</property>
+ <property name="use_underline">True</property>
+
+ <child>
+ <widget class="GtkMenu" id="menuitem44_menu">
+
+ <child>
+ <widget class="GtkMenuItem" id="reply">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Reply</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_new_reply_activate" last_modification_time="Wed, 03 May 2006 12:23:21 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="reply_to_all2">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Reply to all</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_reply_to_all_activate" last_modification_time="Wed, 03 May 2006 12:23:21 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="forward2">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Forward</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_forward2_activate" last_modification_time="Wed, 03 May 2006 12:16:14 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkSeparatorMenuItem" id="separatormenuitem12">
+ <property name="visible">True</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem46">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">New e-mail</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_open1_activate" last_modification_time="Fri, 28 Apr 2006 11:10:18 GMT"/>
+ <accelerator key="N" modifiers="GDK_CONTROL_MASK" signal="activate"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkSeparatorMenuItem" id="separatormenuitem13">
+ <property name="visible">True</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem47">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Delete</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_delete_activate" last_modification_time="Wed, 03 May 2006 12:16:14 GMT"/>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem50">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_Edit</property>
+ <property name="use_underline">True</property>
+
+ <child>
+ <widget class="GtkMenu" id="menuitem50_menu">
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem52">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Cut</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_cut1_activate" last_modification_time="Fri, 28 Apr 2006 11:10:18 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem53">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Copy</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_copy1_activate" last_modification_time="Fri, 28 Apr 2006 11:10:18 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem54">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Paste</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_paste1_activate" last_modification_time="Fri, 28 Apr 2006 11:10:18 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem55">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Select all</property>
+ <property name="use_underline">True</property>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem56">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_Attachments</property>
+ <property name="use_underline">True</property>
+
+ <child>
+ <widget class="GtkMenu" id="menuitem56_menu">
+
+ <child>
+ <widget class="GtkMenuItem" id="view_attacments">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">View</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_view_attachments_activate" last_modification_time="Wed, 03 May 2006 12:20:03 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="save_attachments">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Save attachments...</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_save_attachments_activate" last_modification_time="Wed, 03 May 2006 12:20:03 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="purge_attachments">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Purge attachments</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_purge_attachments_activate" last_modification_time="Wed, 03 May 2006 12:20:03 GMT"/>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem60">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_View</property>
+ <property name="use_underline">True</property>
+
+ <child>
+ <widget class="GtkMenu" id="menuitem60_menu">
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem61">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Zoom</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_sort1_activate" last_modification_time="Fri, 28 Apr 2006 12:17:29 GMT"/>
+
+ <child>
+ <widget class="GtkMenu" id="menuitem61_menu">
+
+ <child>
+ <widget class="GtkRadioMenuItem" id="radiomenuitem1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">50%</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <signal name="activate" handler="on_50%1_activate" last_modification_time="Fri, 28 Apr 2006 13:25:43 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkRadioMenuItem" id="radiomenuitem2">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">100%</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <signal name="activate" handler="on_100%1_activate" last_modification_time="Fri, 28 Apr 2006 13:25:43 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkRadioMenuItem" id="radiomenuitem3">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">150%</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <signal name="activate" handler="on_150%1_activate" last_modification_time="Fri, 28 Apr 2006 13:25:43 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkRadioMenuItem" id="radiomenuitem4">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">200%</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <signal name="activate" handler="on_200%1_activate" last_modification_time="Fri, 28 Apr 2006 13:25:43 GMT"/>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem62">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Show toolbar</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_show_toolbar1_activate" last_modification_time="Fri, 28 Apr 2006 12:17:29 GMT"/>
+
+ <child>
+ <widget class="GtkMenu" id="menuitem62_menu">
+
+ <child>
+ <widget class="GtkCheckMenuItem" id="checkmenuitem5">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Normal screen</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <signal name="activate" handler="on_normal_screen1_activate" last_modification_time="Fri, 28 Apr 2006 12:17:29 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkCheckMenuItem" id="checkmenuitem6">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Full screen</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <signal name="activate" handler="on_full_screen2_activate" last_modification_time="Fri, 28 Apr 2006 12:17:29 GMT"/>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkCheckMenuItem" id="checkmenuitem7">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Full screen</property>
+ <property name="use_underline">True</property>
+ <property name="active">False</property>
+ <signal name="activate" handler="on_full_screen1_activate" last_modification_time="Fri, 28 Apr 2006 12:17:29 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkSeparatorMenuItem" id="separatormenuitem17">
+ <property name="visible">True</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkCheckMenuItem" id="checkmenuitem8">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Next message</property>
+ <property name="use_underline">True</property>
+ <property name="active">False</property>
+ <signal name="activate" handler="on_show_next_message_activate" last_modification_time="Wed, 03 May 2006 09:44:13 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkCheckMenuItem" id="checkmenuitem9">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Previous message</property>
+ <property name="use_underline">True</property>
+ <property name="active">False</property>
+ <signal name="activate" handler="on_show_previous_message_activate" last_modification_time="Wed, 03 May 2006 09:44:13 GMT"/>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem69">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_Tools</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_tools1_activate" last_modification_time="Fri, 28 Apr 2006 12:12:02 GMT"/>
+
+ <child>
+ <widget class="GtkMenu" id="menuitem69_menu">
+
+ <child>
+ <widget class="GtkMenuItem" id="add_contact">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Add contact...</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_add_contact_activate" last_modification_time="Wed, 03 May 2006 12:22:42 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkSeparatorMenuItem" id="separatormenuitem18">
+ <property name="visible">True</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="font_settings1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Font settings...</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_font_settings1_activate" last_modification_time="Wed, 03 May 2006 12:22:42 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkSeparatorMenuItem" id="separator17">
+ <property name="visible">True</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem71">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Find on page...</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_new_account1_activate" last_modification_time="Fri, 28 Apr 2006 12:23:17 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem72">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Search e-mails...</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_search_e-mails1_activate" last_modification_time="Fri, 28 Apr 2006 12:23:17 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkSeparatorMenuItem" id="separatormenuitem19">
+ <property name="visible">True</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem73">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Help</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_help1_activate" last_modification_time="Fri, 28 Apr 2006 12:23:17 GMT"/>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem74">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_Security</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_security1_activate" last_modification_time="Fri, 28 Apr 2006 13:30:35 GMT"/>
+
+ <child>
+ <widget class="GtkMenu" id="menuitem74_menu">
+
+ <child>
+ <widget class="GtkMenuItem" id="details">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Details</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_details_activate" last_modification_time="Wed, 03 May 2006 12:22:42 GMT"/>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem75">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_Close</property>
+ <property name="use_underline">True</property>
+
+ <child>
+ <widget class="GtkMenu" id="menuitem75_menu">
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem76">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Close window</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_about1_activate" last_modification_time="Fri, 28 Apr 2006 11:10:18 GMT"/>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkMenuItem" id="menuitem77">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Close all windows</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_close_all_windows1_activate" last_modification_time="Fri, 28 Apr 2006 12:24:02 GMT"/>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkToolbar" id="toolbar3">
+ <property name="visible">True</property>
+ <property name="orientation">GTK_ORIENTATION_HORIZONTAL</property>
+ <property name="toolbar_style">GTK_TOOLBAR_BOTH</property>
+ <property name="tooltips">True</property>
+ <property name="show_arrow">True</property>
+
+ <child>
+ <widget class="GtkToolButton" id="reply">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Reply</property>
+ <property name="label" translatable="yes">Reply</property>
+ <property name="use_underline">True</property>
+ <property name="icon">qgn_toolb_messagin_reply.png</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkToolButton" id="reply all">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Reply all</property>
+ <property name="label" translatable="yes">Reply all</property>
+ <property name="use_underline">True</property>
+ <property name="icon">qgn_toolb_messagin_replytoall.png</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkToolButton" id="forward">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Forward</property>
+ <property name="label" translatable="yes">Forward</property>
+ <property name="use_underline">True</property>
+ <property name="icon">qgn_toolb_messagin_forward.png</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkToolButton" id="save_attacment">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Save attached files</property>
+ <property name="label" translatable="yes">Save Attacments...</property>
+ <property name="use_underline">True</property>
+ <property name="icon">qgn_toolb_messagin_saveattachment.png</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkToolButton" id="move_to">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Move message to other location</property>
+ <property name="label" translatable="yes">Move to...</property>
+ <property name="use_underline">True</property>
+ <property name="icon">qgn_toolb_messagin_moveto.png</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkToolButton" id="toolbutton12">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">View previous message</property>
+ <property name="label" translatable="yes">Previous</property>
+ <property name="use_underline">True</property>
+ <property name="icon">qgn_toolb_messagin_previous.png</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkToolButton" id="toolbutton13">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">View next message</property>
+ <property name="label" translatable="yes">Next</property>
+ <property name="use_underline">True</property>
+ <property name="icon">qgn_toolb_messagin_next.png</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkVPaned" id="vpaned3">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="position">100</property>
+
+ <child>
+ <widget class="GtkTable" id="table2">
+ <property name="border_width">10</property>
+ <property name="visible">True</property>
+ <property name="n_rows">4</property>
+ <property name="n_columns">2</property>
+ <property name="homogeneous">False</property>
+ <property name="row_spacing">10</property>
+ <property name="column_spacing">10</property>
+
+ <child>
+ <widget class="GtkLabel" id="label_from">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">From:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_RIGHT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">0</property>
+ <property name="bottom_attach">1</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="label_subject">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Subject:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_RIGHT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="label_date">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Date:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_RIGHT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="from">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes"></property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">0</property>
+ <property name="bottom_attach">1</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="to">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes"></property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="subject">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes"></property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="date">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes"></property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="label_to">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">To:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_RIGHT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="shrink">True</property>
+ <property name="resize">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkScrolledWindow" id="scrolledwindow10">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+ <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+ <property name="shadow_type">GTK_SHADOW_IN</property>
+ <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+
+ <child>
+ <widget class="GtkTextView" id="textview2">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">True</property>
+ <property name="overwrite">False</property>
+ <property name="accepts_tab">True</property>
+ <property name="justification">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap_mode">GTK_WRAP_NONE</property>
+ <property name="cursor_visible">True</property>
+ <property name="pixels_above_lines">0</property>
+ <property name="pixels_below_lines">0</property>
+ <property name="pixels_inside_wrap">0</property>
+ <property name="left_margin">0</property>
+ <property name="right_margin">0</property>
+ <property name="indent">0</property>
+ <property name="text" translatable="yes"></property>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="shrink">True</property>
+ <property name="resize">True</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </widget>
+ </child>
+</widget>
+
+<widget class="GtkDialog" id="mailbox_setup_1">
+ <property name="border_width">10</property>
+ <property name="width_request">400</property>
+ <property name="height_request">350</property>
+ <property name="visible">True</property>
+ <property name="title" translatable="yes">Mailbox setup 1/4</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="default_width">500</property>
+ <property name="default_height">400</property>
+ <property name="resizable">False</property>
+ <property name="destroy_with_parent">False</property>
+ <property name="decorated">True</property>
+ <property name="skip_taskbar_hint">False</property>
+ <property name="skip_pager_hint">False</property>
+ <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+ <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+ <property name="focus_on_map">True</property>
+ <property name="urgency_hint">False</property>
+ <property name="has_separator">True</property>
+
+ <child internal-child="vbox">
+ <widget class="GtkVBox" id="vbox4">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+
+ <child internal-child="action_area">
+ <widget class="GtkHButtonBox" id="hbuttonbox1">
+ <property name="visible">True</property>
+ <property name="layout_style">GTK_BUTTONBOX_END</property>
+
+ <child>
+ <widget class="GtkButton" id="button6">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Finish</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="response_id">0</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkButton" id="button7">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Back</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="response_id">0</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkButton" id="button8">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Next</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="response_id">0</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkButton" id="button9">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Cancel</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="response_id">0</property>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">GTK_PACK_END</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkVBox" id="vbox5">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">10</property>
+
+ <child>
+ <widget class="GtkHBox" id="hbox17">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+
+ <child>
+ <widget class="GtkLabel" id="label53">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Mailbox setup wizard allows you to define mailboxes for use on your device.</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">10</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkHSeparator" id="hseparator6">
+ <property name="visible">True</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkTable" id="table3">
+ <property name="visible">True</property>
+ <property name="n_rows">2</property>
+ <property name="n_columns">2</property>
+ <property name="homogeneous">False</property>
+ <property name="row_spacing">10</property>
+ <property name="column_spacing">10</property>
+
+ <child>
+ <widget class="GtkLabel" id="label14">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Mailbox name:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">0</property>
+ <property name="bottom_attach">1</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="label15">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Mailbox type:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkEntry" id="entry4">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">True</property>
+ <property name="visibility">True</property>
+ <property name="max_length">0</property>
+ <property name="text" translatable="yes"></property>
+ <property name="has_frame">True</property>
+ <property name="invisible_char">*</property>
+ <property name="activates_default">False</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">0</property>
+ <property name="bottom_attach">1</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkComboBoxEntry" id="comboboxentry1">
+ <property name="visible">True</property>
+ <property name="add_tearoffs">False</property>
+ <property name="has_frame">True</property>
+ <property name="focus_on_click">True</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">fill</property>
+ <property name="y_options">fill</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkHBox" id="hbox18">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+
+ <child>
+ <widget class="GtkLabel" id="label13">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">! Note: You cannot edit mailbox type once setup is complete</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">10</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </widget>
+ </child>
+</widget>
+
+<widget class="GtkDialog" id="mailbox_setup_2">
+ <property name="border_width">10</property>
+ <property name="width_request">400</property>
+ <property name="height_request">350</property>
+ <property name="visible">True</property>
+ <property name="title" translatable="yes">Mailbox setup 2/4</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="default_width">500</property>
+ <property name="default_height">400</property>
+ <property name="resizable">False</property>
+ <property name="destroy_with_parent">False</property>
+ <property name="decorated">True</property>
+ <property name="skip_taskbar_hint">False</property>
+ <property name="skip_pager_hint">False</property>
+ <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+ <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+ <property name="focus_on_map">True</property>
+ <property name="urgency_hint">False</property>
+ <property name="has_separator">True</property>
+
+ <child internal-child="vbox">
+ <widget class="GtkVBox" id="vbox6">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+
+ <child internal-child="action_area">
+ <widget class="GtkHButtonBox" id="hbuttonbox2">
+ <property name="visible">True</property>
+ <property name="layout_style">GTK_BUTTONBOX_END</property>
+
+ <child>
+ <widget class="GtkButton" id="button11">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Finish</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="response_id">0</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkButton" id="button12">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Back</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="response_id">0</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkButton" id="button13">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Next</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="response_id">0</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkButton" id="button14">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Cancel</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="response_id">0</property>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">GTK_PACK_END</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkTable" id="table4">
+ <property name="visible">True</property>
+ <property name="n_rows">4</property>
+ <property name="n_columns">2</property>
+ <property name="homogeneous">False</property>
+ <property name="row_spacing">10</property>
+ <property name="column_spacing">0</property>
+
+ <child>
+ <widget class="GtkLabel" id="label16">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Name:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">0</property>
+ <property name="bottom_attach">1</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="label17">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">User name:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkEntry" id="entry5">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">True</property>
+ <property name="visibility">True</property>
+ <property name="max_length">0</property>
+ <property name="text" translatable="yes"></property>
+ <property name="has_frame">True</property>
+ <property name="invisible_char">*</property>
+ <property name="activates_default">False</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">0</property>
+ <property name="bottom_attach">1</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkComboBoxEntry" id="comboboxentry2">
+ <property name="visible">True</property>
+ <property name="add_tearoffs">False</property>
+ <property name="has_frame">True</property>
+ <property name="focus_on_click">True</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">fill</property>
+ <property name="y_options">fill</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="label19">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Password:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="label20">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">E-mail address:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkEntry" id="entry6">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">True</property>
+ <property name="visibility">False</property>
+ <property name="max_length">0</property>
+ <property name="text" translatable="yes"></property>
+ <property name="has_frame">True</property>
+ <property name="invisible_char">*</property>
+ <property name="activates_default">False</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkEntry" id="entry7">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">True</property>
+ <property name="visibility">True</property>
+ <property name="max_length">0</property>
+ <property name="text" translatable="yes"></property>
+ <property name="has_frame">True</property>
+ <property name="invisible_char">*</property>
+ <property name="activates_default">False</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </widget>
+ </child>
+</widget>
+
+<widget class="GtkDialog" id="mailbox_setup_advanced">
+ <property name="border_width">10</property>
+ <property name="width_request">400</property>
+ <property name="height_request">350</property>
+ <property name="visible">True</property>
+ <property name="title" translatable="yes">Advanced E-mail settings</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="default_width">500</property>
+ <property name="default_height">400</property>
+ <property name="resizable">False</property>
+ <property name="destroy_with_parent">False</property>
+ <property name="decorated">True</property>
+ <property name="skip_taskbar_hint">False</property>
+ <property name="skip_pager_hint">False</property>
+ <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+ <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+ <property name="focus_on_map">True</property>
+ <property name="urgency_hint">False</property>
+ <property name="has_separator">True</property>
+
+ <child internal-child="vbox">
+ <widget class="GtkVBox" id="vbox7">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+
+ <child internal-child="action_area">
+ <widget class="GtkHButtonBox" id="hbuttonbox3">
+ <property name="visible">True</property>
+ <property name="layout_style">GTK_BUTTONBOX_END</property>
+
+ <child>
+ <widget class="GtkButton" id="button16">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Ok</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="response_id">0</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkButton" id="button17">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Cancel</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="response_id">0</property>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">GTK_PACK_END</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkNotebook" id="notebook1">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="show_tabs">True</property>
+ <property name="show_border">True</property>
+ <property name="tab_pos">GTK_POS_TOP</property>
+ <property name="scrollable">False</property>
+ <property name="enable_popup">False</property>
+
+ <child>
+ <widget class="GtkTable" id="table7">
+ <property name="border_width">10</property>
+ <property name="visible">True</property>
+ <property name="n_rows">4</property>
+ <property name="n_columns">2</property>
+ <property name="homogeneous">False</property>
+ <property name="row_spacing">10</property>
+ <property name="column_spacing">10</property>
+
+ <child>
+ <widget class="GtkLabel" id="label48">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Retrieve:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">0</property>
+ <property name="bottom_attach">1</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="label51">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Password authentication</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="label49">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">No of e-mails to retrieve</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="label52">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">E-mail size limit:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkComboBox" id="combobox8">
+ <property name="visible">True</property>
+ <property name="add_tearoffs">False</property>
+ <property name="focus_on_click">True</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">0</property>
+ <property name="bottom_attach">1</property>
+ <property name="y_options">fill</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkComboBox" id="combobox9">
+ <property name="visible">True</property>
+ <property name="add_tearoffs">False</property>
+ <property name="focus_on_click">True</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ <property name="x_options">fill</property>
+ <property name="y_options">fill</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkComboBox" id="combobox10">
+ <property name="visible">True</property>
+ <property name="add_tearoffs">False</property>
+ <property name="focus_on_click">True</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
+ <property name="x_options">fill</property>
+ <property name="y_options">fill</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkHBox" id="hbox16">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">10</property>
+
+ <child>
+ <widget class="GtkSpinButton" id="spinbutton4">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="climb_rate">1</property>
+ <property name="digits">0</property>
+ <property name="numeric">False</property>
+ <property name="update_policy">GTK_UPDATE_ALWAYS</property>
+ <property name="snap_to_ticks">False</property>
+ <property name="wrap">False</property>
+ <property name="adjustment">1 0 100 1 10 10</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="tab_expand">False</property>
+ <property name="tab_fill">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="label23">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Retrieval</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="type">tab</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkVBox" id="vbox10">
+ <property name="border_width">10</property>
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">10</property>
+
+ <child>
+ <widget class="GtkTable" id="table6">
+ <property name="border_width">10</property>
+ <property name="visible">True</property>
+ <property name="n_rows">2</property>
+ <property name="n_columns">2</property>
+ <property name="homogeneous">False</property>
+ <property name="row_spacing">10</property>
+ <property name="column_spacing">10</property>
+
+ <child>
+ <widget class="GtkLabel" id="label46">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Default e-mail format:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">0</property>
+ <property name="bottom_attach">1</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="label47">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Sending e-mail:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkComboBox" id="combobox6">
+ <property name="visible">True</property>
+ <property name="add_tearoffs">False</property>
+ <property name="focus_on_click">True</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">0</property>
+ <property name="bottom_attach">1</property>
+ <property name="y_options">fill</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkComboBox" id="combobox7">
+ <property name="visible">True</property>
+ <property name="add_tearoffs">False</property>
+ <property name="focus_on_click">True</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">fill</property>
+ <property name="y_options">fill</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkCheckButton" id="checkbutton12">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Include original in reply</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="active">False</property>
+ <property name="inconsistent">False</property>
+ <property name="draw_indicator">True</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkCheckButton" id="checkbutton13">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Request read report</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="active">False</property>
+ <property name="inconsistent">False</property>
+ <property name="draw_indicator">True</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="tab_expand">False</property>
+ <property name="tab_fill">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="label24">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Sending</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="type">tab</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkTable" id="table5">
+ <property name="border_width">10</property>
+ <property name="visible">True</property>
+ <property name="n_rows">3</property>
+ <property name="n_columns">2</property>
+ <property name="homogeneous">False</property>
+ <property name="row_spacing">10</property>
+ <property name="column_spacing">10</property>
+
+ <child>
+ <widget class="GtkComboBox" id="combobox5">
+ <property name="visible">True</property>
+ <property name="add_tearoffs">False</property>
+ <property name="focus_on_click">True</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">0</property>
+ <property name="bottom_attach">1</property>
+ <property name="y_options">fill</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkEntry" id="entry9">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">True</property>
+ <property name="visibility">True</property>
+ <property name="max_length">0</property>
+ <property name="text" translatable="yes"></property>
+ <property name="has_frame">True</property>
+ <property name="invisible_char">*</property>
+ <property name="activates_default">False</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkEntry" id="entry10">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">True</property>
+ <property name="visibility">True</property>
+ <property name="max_length">0</property>
+ <property name="text" translatable="yes"></property>
+ <property name="has_frame">True</property>
+ <property name="invisible_char">*</property>
+ <property name="activates_default">False</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="label45">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Password:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ <property name="x_options"></property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="label44">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Username:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options"></property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="label40">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">SMTP authentication:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">0</property>
+ <property name="bottom_attach">1</property>
+ <property name="x_options"></property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="tab_expand">False</property>
+ <property name="tab_fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="label25">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">SMTP server</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="type">tab</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkVBox" id="vbox8">
+ <property name="border_width">10</property>
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">10</property>
+
+ <child>
+ <widget class="GtkHBox" id="hbox2">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">10</property>
+
+ <child>
+ <widget class="GtkLabel" id="label29">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Security:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkComboBox" id="combobox3">
+ <property name="visible">True</property>
+ <property name="add_tearoffs">False</property>
+ <property name="focus_on_click">True</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkHBox" id="hbox4">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">10</property>
+
+ <child>
+ <widget class="GtkLabel" id="label31">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Incoming e-mail port:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkSpinButton" id="spinbutton1">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="climb_rate">1</property>
+ <property name="digits">0</property>
+ <property name="numeric">False</property>
+ <property name="update_policy">GTK_UPDATE_ALWAYS</property>
+ <property name="snap_to_ticks">False</property>
+ <property name="wrap">False</property>
+ <property name="adjustment">2 0 100 1 10 10</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkHBox" id="hbox3">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">10</property>
+
+ <child>
+ <widget class="GtkLabel" id="label30">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Security:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkComboBox" id="combobox4">
+ <property name="visible">True</property>
+ <property name="add_tearoffs">False</property>
+ <property name="focus_on_click">True</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkHBox" id="hbox5">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">10</property>
+
+ <child>
+ <widget class="GtkLabel" id="label32">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Outgoing e-mail port:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkSpinButton" id="spinbutton2">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="climb_rate">1</property>
+ <property name="digits">0</property>
+ <property name="numeric">False</property>
+ <property name="update_policy">GTK_UPDATE_ALWAYS</property>
+ <property name="snap_to_ticks">False</property>
+ <property name="wrap">False</property>
+ <property name="adjustment">1 0 100 1 10 10</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkHSeparator" id="hseparator2">
+ <property name="visible">True</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkCheckButton" id="checkbutton2">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Use specific connection</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="active">False</property>
+ <property name="inconsistent">False</property>
+ <property name="draw_indicator">True</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkHBox" id="hbox1">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">10</property>
+
+ <child>
+ <widget class="GtkLabel" id="label28">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Connection:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkEntry" id="entry8">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">True</property>
+ <property name="visibility">True</property>
+ <property name="max_length">0</property>
+ <property name="text" translatable="yes"></property>
+ <property name="has_frame">True</property>
+ <property name="invisible_char">*</property>
+ <property name="activates_default">False</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkHSeparator" id="hseparator1">
+ <property name="visible">True</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkCheckButton" id="checkbutton1">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Set as default mailbox</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="active">False</property>
+ <property name="inconsistent">False</property>
+ <property name="draw_indicator">True</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="tab_expand">False</property>
+ <property name="tab_fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="label26">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Other</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="type">tab</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkVBox" id="vbox9">
+ <property name="border_width">10</property>
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">10</property>
+
+ <child>
+ <widget class="GtkLabel" id="label33">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">These security settings will be applied to %s</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkHSeparator" id="hseparator4">
+ <property name="visible">True</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkCheckButton" id="checkbutton5">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Encrypt mails by default</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="active">False</property>
+ <property name="inconsistent">False</property>
+ <property name="draw_indicator">True</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkCheckButton" id="checkbutton8">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Digitally sign e-mails by default</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="active">False</property>
+ <property name="inconsistent">False</property>
+ <property name="draw_indicator">True</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkHSeparator" id="hseparator3">
+ <property name="visible">True</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkHBox" id="hbox11">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+
+ <child>
+ <widget class="GtkLabel" id="label39">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Display security indication for:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">True</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkCheckButton" id="checkbutton3">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">All encrypted and digitally signed messages</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="active">False</property>
+ <property name="inconsistent">False</property>
+ <property name="draw_indicator">True</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkCheckButton" id="checkbutton9">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">All untrusted digital IDs</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="active">False</property>
+ <property name="inconsistent">False</property>
+ <property name="draw_indicator">True</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkCheckButton" id="checkbutton10">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">All expired or invalid digital IDs</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="active">False</property>
+ <property name="inconsistent">False</property>
+ <property name="draw_indicator">True</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="tab_expand">False</property>
+ <property name="tab_fill">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="label27">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Security</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="type">tab</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </widget>
+ </child>
+</widget>
+
+<widget class="GtkDialog" id="mailbox_setup_3">
+ <property name="border_width">10</property>
+ <property name="width_request">400</property>
+ <property name="height_request">350</property>
+ <property name="visible">True</property>
+ <property name="title" translatable="yes">Mailbox setup 3/4</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="default_width">500</property>
+ <property name="default_height">400</property>
+ <property name="resizable">False</property>
+ <property name="destroy_with_parent">False</property>
+ <property name="decorated">True</property>
+ <property name="skip_taskbar_hint">False</property>
+ <property name="skip_pager_hint">False</property>
+ <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+ <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+ <property name="focus_on_map">True</property>
+ <property name="urgency_hint">False</property>
+ <property name="has_separator">True</property>
+
+ <child internal-child="vbox">
+ <widget class="GtkVBox" id="vbox11">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+
+ <child internal-child="action_area">
+ <widget class="GtkHButtonBox" id="hbuttonbox4">
+ <property name="visible">True</property>
+ <property name="layout_style">GTK_BUTTONBOX_END</property>
+
+ <child>
+ <widget class="GtkButton" id="button18">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Finish</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="response_id">0</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkButton" id="button19">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Back</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="response_id">0</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkButton" id="button20">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Next</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="response_id">0</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkButton" id="button21">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Cancel</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="response_id">0</property>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">GTK_PACK_END</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkTable" id="table9">
+ <property name="visible">True</property>
+ <property name="n_rows">2</property>
+ <property name="n_columns">2</property>
+ <property name="homogeneous">False</property>
+ <property name="row_spacing">10</property>
+ <property name="column_spacing">10</property>
+
+ <child>
+ <widget class="GtkLabel" id="label55">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Outgoing server:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="label54">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Incoming server:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">0</property>
+ <property name="bottom_attach">1</property>
+ <property name="x_options">fill</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkComboBoxEntry" id="comboboxentry4">
+ <property name="visible">True</property>
+ <property name="add_tearoffs">False</property>
+ <property name="has_frame">True</property>
+ <property name="focus_on_click">True</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">0</property>
+ <property name="bottom_attach">1</property>
+ <property name="y_options">fill</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkComboBoxEntry" id="comboboxentry5">
+ <property name="visible">True</property>
+ <property name="add_tearoffs">False</property>
+ <property name="has_frame">True</property>
+ <property name="focus_on_click">True</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">fill</property>
+ <property name="y_options">fill</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </widget>
+ </child>
+</widget>
+
+<widget class="GtkDialog" id="mailbox_setup_4">
+ <property name="border_width">10</property>
+ <property name="width_request">400</property>
+ <property name="height_request">350</property>
+ <property name="visible">True</property>
+ <property name="title" translatable="yes">Mailbox setup 4/4</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="default_width">500</property>
+ <property name="default_height">400</property>
+ <property name="resizable">False</property>
+ <property name="destroy_with_parent">False</property>
+ <property name="decorated">True</property>
+ <property name="skip_taskbar_hint">False</property>
+ <property name="skip_pager_hint">False</property>
+ <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+ <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+ <property name="focus_on_map">True</property>
+ <property name="urgency_hint">False</property>
+ <property name="has_separator">True</property>
+
+ <child internal-child="vbox">
+ <widget class="GtkVBox" id="vbox12">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+
+ <child internal-child="action_area">
+ <widget class="GtkHButtonBox" id="hbuttonbox5">
+ <property name="visible">True</property>
+ <property name="layout_style">GTK_BUTTONBOX_END</property>
+
+ <child>
+ <widget class="GtkButton" id="button22">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Finish</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="response_id">0</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkButton" id="button23">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Back</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="response_id">0</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkButton" id="button24">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Advanced</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="response_id">0</property>
+ </widget>
+ </child>
+
+ <child>
+ <widget class="GtkButton" id="button25">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Cancel</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="response_id">0</property>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">GTK_PACK_END</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkHBox" id="hbox19">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">0</property>
+
+ <child>
+ <widget class="GtkLabel" id="label56">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Mailbox setup is complete.
+
+Tap 'Finnish' to save or 'Cancel' to discard the settings.
+Tap 'Advanced' to edit the advanced e-mail settings.</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </widget>
+ </child>
+</widget>
+
+</glade-interface>
--- /dev/null
+/* auto-generated from modest.glade */
+#ifndef __MODEST_GLADE_INCLUDED__
+#define __MODEST_GLADE_INCLUDED__
+static const char* MODEST_GLADE =
+"<?xml version=\"1.0\" standalone=\"no\"?> <!--*- mode: xml -*-->\r\n"
+"<!DOCTYPE glade-interface SYSTEM \"http://glade.gnome.org/glade-2.0.dtd\">\r\n"
+"\r\n"
+"<glade-interface>\r\n"
+"\r\n"
+"<widget class=\"GtkWindow\" id=\"main\">\r\n"
+" <property name=\"title\" translatable=\"yes\">Modest</property>\r\n"
+" <property name=\"type\">GTK_WINDOW_TOPLEVEL</property>\r\n"
+" <property name=\"window_position\">GTK_WIN_POS_NONE</property>\r\n"
+" <property name=\"modal\">False</property>\r\n"
+" <property name=\"default_width\">800</property>\r\n"
+" <property name=\"default_height\">600</property>\r\n"
+" <property name=\"resizable\">True</property>\r\n"
+" <property name=\"destroy_with_parent\">False</property>\r\n"
+" <property name=\"icon\">qgn_toolb_messagin.png</property>\r\n"
+" <property name=\"decorated\">True</property>\r\n"
+" <property name=\"skip_taskbar_hint\">False</property>\r\n"
+" <property name=\"skip_pager_hint\">False</property>\r\n"
+" <property name=\"type_hint\">GDK_WINDOW_TYPE_HINT_NORMAL</property>\r\n"
+" <property name=\"gravity\">GDK_GRAVITY_NORTH_WEST</property>\r\n"
+" <property name=\"focus_on_map\">True</property>\r\n"
+" <property name=\"urgency_hint\">False</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkVBox\" id=\"vbox1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"spacing\">0</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuBar\" id=\"menubar1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"pack_direction\">GTK_PACK_DIRECTION_LTR</property>\r\n"
+" <property name=\"child_pack_direction\">GTK_PACK_DIRECTION_LTR</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">_Message</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"menuitem1_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"new_e-mail1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">New e-mail</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_new_e-mail1_activate\" last_modification_time=\"Fri, 28 Apr 2006 11:10:18 GMT\"/>\r\n"
+" <accelerator key=\"N\" modifiers=\"GDK_CONTROL_MASK\" signal=\"activate\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"open1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Open</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_open1_activate\" last_modification_time=\"Fri, 28 Apr 2006 11:10:18 GMT\"/>\r\n"
+" <accelerator key=\"O\" modifiers=\"GDK_CONTROL_MASK\" signal=\"activate\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSeparatorMenuItem\" id=\"separator1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"reply1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Reply</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_reply1_activate\" last_modification_time=\"Fri, 28 Apr 2006 11:10:18 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"reply_to_all1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Reply to all</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_reply_to_all1_activate\" last_modification_time=\"Fri, 28 Apr 2006 11:10:18 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"forward1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Forward</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_forward1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:05:09 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSeparatorMenuItem\" id=\"separator2\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"delete1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Delete</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_delete1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:05:09 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSeparatorMenuItem\" id=\"separator3\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"details1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Details</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_details1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:05:09 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem2\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">_Edit</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"menuitem2_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"undo1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Undo</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_undo1_activate\" last_modification_time=\"Fri, 28 Apr 2006 11:10:18 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSeparatorMenuItem\" id=\"separator4\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"cut1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Cut</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_cut1_activate\" last_modification_time=\"Fri, 28 Apr 2006 11:10:18 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"copy1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Copy</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_copy1_activate\" last_modification_time=\"Fri, 28 Apr 2006 11:10:18 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"paste1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Paste</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_paste1_activate\" last_modification_time=\"Fri, 28 Apr 2006 11:10:18 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"select1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">_Select</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"select1_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"mark_all1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Mark all</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_mark_all1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:10:20 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"unmark_all1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Unmark all</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_unmark_all1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:10:20 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSeparatorMenuItem\" id=\"separator6\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"move_to1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Move to...</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_move_to1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:12:30 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem3\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">_Folders</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"menuitem3_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"new_folder1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">New folder...</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_new_folder1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:15:47 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"manage_folders1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Manage folders</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_manage_folders1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:15:47 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSeparatorMenuItem\" id=\"separator7\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"details2\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Details</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_details2_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:15:47 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"folder_settings1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Folder settings...</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_folder_settings1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:15:47 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSeparatorMenuItem\" id=\"separator8\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkRadioMenuItem\" id=\"inbox1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Inbox</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_inbox1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:15:47 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkRadioMenuItem\" id=\"outbox1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Outbox</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">True</property>\r\n"
+" <property name=\"group\">inbox1</property>\r\n"
+" <signal name=\"activate\" handler=\"on_outbox1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:15:47 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkRadioMenuItem\" id=\"drafts1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Drafts</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">True</property>\r\n"
+" <property name=\"group\">inbox1</property>\r\n"
+" <signal name=\"activate\" handler=\"on_drafts1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:15:47 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkRadioMenuItem\" id=\"sent1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Sent</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">True</property>\r\n"
+" <property name=\"group\">inbox1</property>\r\n"
+" <signal name=\"activate\" handler=\"on_sent1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:15:47 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkRadioMenuItem\" id=\"archive1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Archive</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">True</property>\r\n"
+" <property name=\"group\">inbox1</property>\r\n"
+" <signal name=\"activate\" handler=\"on_archive1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:15:47 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem4\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">_View</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"menuitem4_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"sort1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Sort...</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_sort1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:17:29 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSeparatorMenuItem\" id=\"separator9\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"show_toolbar1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">_Show toolbar</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_show_toolbar1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:17:29 GMT\"/>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"show_toolbar1_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkCheckMenuItem\" id=\"normal_screen1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Normal screen</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_normal_screen1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:17:29 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkCheckMenuItem\" id=\"full_screen2\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Full screen</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_full_screen2_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:17:29 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkCheckMenuItem\" id=\"folders1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Folders</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_folders1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:17:29 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkCheckMenuItem\" id=\"full_screen1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Full screen</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">False</property>\r\n"
+" <signal name=\"activate\" handler=\"on_full_screen1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:17:29 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"e-mail1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">E-m_ail</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_e-mail1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:12:02 GMT\"/>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"e-mail1_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"send_&_receive1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Send & receive</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_send_&_receive1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:21:50 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"retrieve_e-mail_contents1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Retrieve e-mail contents</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_retrieve_e-mail_contents1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:21:50 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"purge_attacments1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Purge attacments</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_purge_attacments1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:21:50 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"tools1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">_Tools</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_tools1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:12:02 GMT\"/>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"tools1_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"open_contacts1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Open contacts...</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_open_contacts1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:23:17 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSeparatorMenuItem\" id=\"separator11\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"new_account1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">New account...</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_new_account1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:23:17 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"account_settings1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Account settings...</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_account_settings1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:23:17 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"options1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Options</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_options1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:23:17 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSeparatorMenuItem\" id=\"separator10\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"search_e-mails1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Search e-mails...</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_search_e-mails1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:23:17 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSeparatorMenuItem\" id=\"separator12\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"help1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Help</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_help1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:23:17 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"close1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">_Close</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"close1_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"about1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Close window</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_about1_activate\" last_modification_time=\"Fri, 28 Apr 2006 11:10:18 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"close_all_windows1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Close all windows</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_close_all_windows1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:24:02 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkToolbar\" id=\"toolbar1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"orientation\">GTK_ORIENTATION_HORIZONTAL</property>\r\n"
+" <property name=\"toolbar_style\">GTK_TOOLBAR_BOTH</property>\r\n"
+" <property name=\"tooltips\">True</property>\r\n"
+" <property name=\"show_arrow\">True</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkToolButton\" id=\"toolb_new_mail\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"tooltip\" translatable=\"yes\">Compose new e-mail message</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">New e-mail</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"icon\">qgn_toolb_messagin_new.png</property>\r\n"
+" <property name=\"visible_horizontal\">True</property>\r\n"
+" <property name=\"visible_vertical\">True</property>\r\n"
+" <property name=\"is_important\">False</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"homogeneous\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkToolButton\" id=\"toolb_reply\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"tooltip\" translatable=\"yes\">Reply</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Reply</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"icon\">qgn_toolb_messagin_reply.png</property>\r\n"
+" <property name=\"visible_horizontal\">True</property>\r\n"
+" <property name=\"visible_vertical\">True</property>\r\n"
+" <property name=\"is_important\">False</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"homogeneous\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkToolButton\" id=\"toolb_reply_all\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"tooltip\" translatable=\"yes\">Reply all</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Reply all</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"icon\">qgn_toolb_messagin_replytoall.png</property>\r\n"
+" <property name=\"visible_horizontal\">True</property>\r\n"
+" <property name=\"visible_vertical\">True</property>\r\n"
+" <property name=\"is_important\">False</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"homogeneous\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkToolButton\" id=\"toolb_forward\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"tooltip\" translatable=\"yes\">Forward</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Forward</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"icon\">qgn_toolb_messagin_forward.png</property>\r\n"
+" <property name=\"visible_horizontal\">True</property>\r\n"
+" <property name=\"visible_vertical\">True</property>\r\n"
+" <property name=\"is_important\">False</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"homogeneous\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkToolButton\" id=\"toolb_move_to\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"tooltip\" translatable=\"yes\">Move message to other location</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Move to...</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"icon\">qgn_toolb_messagin_moveto.png</property>\r\n"
+" <property name=\"visible_horizontal\">True</property>\r\n"
+" <property name=\"visible_vertical\">True</property>\r\n"
+" <property name=\"is_important\">False</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"homogeneous\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkToolButton\" id=\"toolb_delete\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"tooltip\" translatable=\"yes\">Delete message</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Delete</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"icon\">qgn_toolb_messagin_delete.png</property>\r\n"
+" <property name=\"visible_horizontal\">True</property>\r\n"
+" <property name=\"visible_vertical\">True</property>\r\n"
+" <property name=\"is_important\">False</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"homogeneous\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkToolButton\" id=\"toolb_send_receive\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"tooltip\" translatable=\"yes\">Send and receive</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Send & receive</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"icon\">qgn_toolb_messagin_sendreceive.png</property>\r\n"
+" <property name=\"visible_horizontal\">True</property>\r\n"
+" <property name=\"visible_vertical\">True</property>\r\n"
+" <property name=\"is_important\">False</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"homogeneous\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkHPaned\" id=\"hpaned1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"position\">170</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkScrolledWindow\" id=\"folders\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"hscrollbar_policy\">GTK_POLICY_AUTOMATIC</property>\r\n"
+" <property name=\"vscrollbar_policy\">GTK_POLICY_AUTOMATIC</property>\r\n"
+" <property name=\"shadow_type\">GTK_SHADOW_NONE</property>\r\n"
+" <property name=\"window_placement\">GTK_CORNER_TOP_LEFT</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <placeholder/>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"shrink\">True</property>\r\n"
+" <property name=\"resize\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkVPaned\" id=\"vpaned1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"position\">150</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkScrolledWindow\" id=\"mail_list\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"hscrollbar_policy\">GTK_POLICY_NEVER</property>\r\n"
+" <property name=\"vscrollbar_policy\">GTK_POLICY_AUTOMATIC</property>\r\n"
+" <property name=\"shadow_type\">GTK_SHADOW_NONE</property>\r\n"
+" <property name=\"window_placement\">GTK_CORNER_TOP_LEFT</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <placeholder/>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"shrink\">True</property>\r\n"
+" <property name=\"resize\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkScrolledWindow\" id=\"mail_view\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"hscrollbar_policy\">GTK_POLICY_NEVER</property>\r\n"
+" <property name=\"vscrollbar_policy\">GTK_POLICY_AUTOMATIC</property>\r\n"
+" <property name=\"shadow_type\">GTK_SHADOW_NONE</property>\r\n"
+" <property name=\"window_placement\">GTK_CORNER_TOP_LEFT</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <placeholder/>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"shrink\">True</property>\r\n"
+" <property name=\"resize\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"shrink\">True</property>\r\n"
+" <property name=\"resize\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">True</property>\r\n"
+" <property name=\"fill\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"</widget>\r\n"
+"\r\n"
+"<widget class=\"GtkWindow\" id=\"new_mail\">\r\n"
+" <property name=\"title\" translatable=\"yes\">Modest - New message</property>\r\n"
+" <property name=\"type\">GTK_WINDOW_TOPLEVEL</property>\r\n"
+" <property name=\"window_position\">GTK_WIN_POS_NONE</property>\r\n"
+" <property name=\"modal\">False</property>\r\n"
+" <property name=\"default_width\">800</property>\r\n"
+" <property name=\"default_height\">600</property>\r\n"
+" <property name=\"resizable\">True</property>\r\n"
+" <property name=\"destroy_with_parent\">False</property>\r\n"
+" <property name=\"icon\">qgn_toolb_messagin.png</property>\r\n"
+" <property name=\"decorated\">True</property>\r\n"
+" <property name=\"skip_taskbar_hint\">False</property>\r\n"
+" <property name=\"skip_pager_hint\">False</property>\r\n"
+" <property name=\"type_hint\">GDK_WINDOW_TYPE_HINT_NORMAL</property>\r\n"
+" <property name=\"gravity\">GDK_GRAVITY_NORTH_WEST</property>\r\n"
+" <property name=\"focus_on_map\">True</property>\r\n"
+" <property name=\"urgency_hint\">False</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkVBox\" id=\"vbox2\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"spacing\">0</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuBar\" id=\"menubar2\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"pack_direction\">GTK_PACK_DIRECTION_LTR</property>\r\n"
+" <property name=\"child_pack_direction\">GTK_PACK_DIRECTION_LTR</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem5\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">_Message</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"menuitem5_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem6\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Send</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_new_e-mail1_activate\" last_modification_time=\"Fri, 28 Apr 2006 11:10:18 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSeparatorMenuItem\" id=\"separator13\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem7\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">New e-mail</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_open1_activate\" last_modification_time=\"Fri, 28 Apr 2006 11:10:18 GMT\"/>\r\n"
+" <accelerator key=\"O\" modifiers=\"GDK_CONTROL_MASK\" signal=\"activate\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSeparatorMenuItem\" id=\"separatormenuitem1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem8\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Delete message</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_reply1_activate\" last_modification_time=\"Fri, 28 Apr 2006 11:10:18 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSeparatorMenuItem\" id=\"separator14\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem9\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Select recipients...</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_reply_to_all1_activate\" last_modification_time=\"Fri, 28 Apr 2006 11:10:18 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem10\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Check names</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_forward1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:05:09 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem13\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">_Edit</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"menuitem13_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem14\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Undo</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_undo1_activate\" last_modification_time=\"Fri, 28 Apr 2006 11:10:18 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSeparatorMenuItem\" id=\"separatormenuitem4\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem15\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Cut</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_cut1_activate\" last_modification_time=\"Fri, 28 Apr 2006 11:10:18 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem16\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Copy</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_copy1_activate\" last_modification_time=\"Fri, 28 Apr 2006 11:10:18 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem17\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Paste</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_paste1_activate\" last_modification_time=\"Fri, 28 Apr 2006 11:10:18 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem18\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Select all</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem22\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">_Attachments</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"menuitem22_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem23\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Attach file...</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_new_folder1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:15:47 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem24\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Insert inline image</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_manage_folders1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:15:47 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSeparatorMenuItem\" id=\"separator15\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem25\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Remove attachment</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_details2_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:15:47 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem27\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">_View</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"menuitem27_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem28\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">_Zoom</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_sort1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:17:29 GMT\"/>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"menuitem28_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkRadioMenuItem\" id=\"50%1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">50%</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_50%1_activate\" last_modification_time=\"Fri, 28 Apr 2006 13:25:43 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkRadioMenuItem\" id=\"100%1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">100%</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">True</property>\r\n"
+" <property name=\"group\">50%1</property>\r\n"
+" <signal name=\"activate\" handler=\"on_100%1_activate\" last_modification_time=\"Fri, 28 Apr 2006 13:25:43 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkRadioMenuItem\" id=\"150%1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">150%</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">True</property>\r\n"
+" <property name=\"group\">50%1</property>\r\n"
+" <signal name=\"activate\" handler=\"on_150%1_activate\" last_modification_time=\"Fri, 28 Apr 2006 13:25:43 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkRadioMenuItem\" id=\"200%1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">200%</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">True</property>\r\n"
+" <property name=\"group\">50%1</property>\r\n"
+" <signal name=\"activate\" handler=\"on_200%1_activate\" last_modification_time=\"Fri, 28 Apr 2006 13:25:43 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem29\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Show toolbar</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_show_toolbar1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:17:29 GMT\"/>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"menuitem29_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkCheckMenuItem\" id=\"checkmenuitem1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Normal screen</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_normal_screen1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:17:29 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkCheckMenuItem\" id=\"checkmenuitem2\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Full screen</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_full_screen2_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:17:29 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkCheckMenuItem\" id=\"checkmenuitem4\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Full screen</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">False</property>\r\n"
+" <signal name=\"activate\" handler=\"on_full_screen1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:17:29 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSeparatorMenuItem\" id=\"separator16\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkCheckMenuItem\" id=\"show_cc1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Show Cc</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">False</property>\r\n"
+" <signal name=\"activate\" handler=\"on_show_cc1_activate\" last_modification_time=\"Fri, 28 Apr 2006 13:25:43 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkCheckMenuItem\" id=\"show_bcc1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Show Bcc</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">False</property>\r\n"
+" <signal name=\"activate\" handler=\"on_show_bcc1_activate\" last_modification_time=\"Fri, 28 Apr 2006 13:25:43 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem30\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">_Format</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_e-mail1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:12:02 GMT\"/>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"menuitem30_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem31\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Font...</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_send_&_receive1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:21:50 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem32\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Bullets</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_retrieve_e-mail_contents1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:21:50 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem33\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Numbers</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_purge_attacments1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:21:50 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"alignment1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Alignment</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"alignment1_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkRadioMenuItem\" id=\"left1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Left</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_left1_activate\" last_modification_time=\"Fri, 28 Apr 2006 13:28:18 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkRadioMenuItem\" id=\"center1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Center</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">True</property>\r\n"
+" <property name=\"group\">left1</property>\r\n"
+" <signal name=\"activate\" handler=\"on_center1_activate\" last_modification_time=\"Fri, 28 Apr 2006 13:28:18 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkRadioMenuItem\" id=\"right1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Right</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">True</property>\r\n"
+" <property name=\"group\">left1</property>\r\n"
+" <signal name=\"activate\" handler=\"on_right1_activate\" last_modification_time=\"Fri, 28 Apr 2006 13:28:18 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"background_colour1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Background colour</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_background_colour1_activate\" last_modification_time=\"Fri, 28 Apr 2006 13:28:54 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem34\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">_Tools</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_tools1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:12:02 GMT\"/>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"menuitem34_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem35\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Sending options...</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_open_contacts1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:23:17 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSeparatorMenuItem\" id=\"separatormenuitem9\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem36\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Find on page...</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_new_account1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:23:17 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem39\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Search e-mails...</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_search_e-mails1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:23:17 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSeparatorMenuItem\" id=\"separatormenuitem11\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem40\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Help</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_help1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:23:17 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"security1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">_Security</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_security1_activate\" last_modification_time=\"Fri, 28 Apr 2006 13:30:35 GMT\"/>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"security1_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkRadioMenuItem\" id=\"none1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">None</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_none1_activate\" last_modification_time=\"Fri, 28 Apr 2006 13:32:29 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkRadioMenuItem\" id=\"encrypt1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Encrypt</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">True</property>\r\n"
+" <property name=\"group\">none1</property>\r\n"
+" <signal name=\"activate\" handler=\"on_encrypt1_activate\" last_modification_time=\"Fri, 28 Apr 2006 13:32:29 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkRadioMenuItem\" id=\"digitally_sign1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Digitally sign</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">True</property>\r\n"
+" <property name=\"group\">none1</property>\r\n"
+" <signal name=\"activate\" handler=\"on_digitally_sign1_activate\" last_modification_time=\"Fri, 28 Apr 2006 13:32:29 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkRadioMenuItem\" id=\"digitally_sign_and_encrypt1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Digitally sign and encrypt</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">True</property>\r\n"
+" <property name=\"group\">none1</property>\r\n"
+" <signal name=\"activate\" handler=\"on_digitally_sign_and_encrypt1_activate\" last_modification_time=\"Fri, 28 Apr 2006 13:32:29 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem41\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">_Close</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"menuitem41_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem42\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Close window</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_about1_activate\" last_modification_time=\"Fri, 28 Apr 2006 11:10:18 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem43\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Close all windows</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_close_all_windows1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:24:02 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkToolbar\" id=\"toolbar2\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"orientation\">GTK_ORIENTATION_HORIZONTAL</property>\r\n"
+" <property name=\"toolbar_style\">GTK_TOOLBAR_BOTH</property>\r\n"
+" <property name=\"tooltips\">True</property>\r\n"
+" <property name=\"show_arrow\">True</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkToolButton\" id=\"toolb_send\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"tooltip\" translatable=\"yes\">Send message</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Send</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"icon\">qgn_toolb_messagin_send.png</property>\r\n"
+" <property name=\"visible_horizontal\">True</property>\r\n"
+" <property name=\"visible_vertical\">True</property>\r\n"
+" <property name=\"is_important\">False</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"homogeneous\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkToolButton\" id=\"toolb_attach\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"tooltip\" translatable=\"yes\">Add attachment</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Attach</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"icon\">qgn_list_gene_attacpap.png</property>\r\n"
+" <property name=\"visible_horizontal\">True</property>\r\n"
+" <property name=\"visible_vertical\">True</property>\r\n"
+" <property name=\"is_important\">False</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"homogeneous\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkToolButton\" id=\"toolb_recipients\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"tooltip\" translatable=\"yes\">Add reipients</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Recipients</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"icon\">qgn_list_gene_contacts.png</property>\r\n"
+" <property name=\"visible_horizontal\">True</property>\r\n"
+" <property name=\"visible_vertical\">True</property>\r\n"
+" <property name=\"is_important\">False</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"homogeneous\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkVPaned\" id=\"vpaned2\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"position\">65</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkTable\" id=\"table1\">\r\n"
+" <property name=\"border_width\">10</property>\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"n_rows\">2</property>\r\n"
+" <property name=\"n_columns\">2</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"row_spacing\">10</property>\r\n"
+" <property name=\"column_spacing\">10</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">To:</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_RIGHT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">0</property>\r\n"
+" <property name=\"right_attach\">1</property>\r\n"
+" <property name=\"top_attach\">0</property>\r\n"
+" <property name=\"bottom_attach\">1</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label2\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Subject:</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_RIGHT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">0</property>\r\n"
+" <property name=\"right_attach\">1</property>\r\n"
+" <property name=\"top_attach\">1</property>\r\n"
+" <property name=\"bottom_attach\">2</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkEntry\" id=\"entry2\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"editable\">True</property>\r\n"
+" <property name=\"visibility\">True</property>\r\n"
+" <property name=\"max_length\">0</property>\r\n"
+" <property name=\"text\" translatable=\"yes\"></property>\r\n"
+" <property name=\"has_frame\">True</property>\r\n"
+" <property name=\"invisible_char\">*</property>\r\n"
+" <property name=\"activates_default\">False</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">1</property>\r\n"
+" <property name=\"right_attach\">2</property>\r\n"
+" <property name=\"top_attach\">0</property>\r\n"
+" <property name=\"bottom_attach\">1</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkEntry\" id=\"entry3\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"editable\">True</property>\r\n"
+" <property name=\"visibility\">True</property>\r\n"
+" <property name=\"max_length\">0</property>\r\n"
+" <property name=\"text\" translatable=\"yes\"></property>\r\n"
+" <property name=\"has_frame\">True</property>\r\n"
+" <property name=\"invisible_char\">*</property>\r\n"
+" <property name=\"activates_default\">False</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">1</property>\r\n"
+" <property name=\"right_attach\">2</property>\r\n"
+" <property name=\"top_attach\">1</property>\r\n"
+" <property name=\"bottom_attach\">2</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"shrink\">True</property>\r\n"
+" <property name=\"resize\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkScrolledWindow\" id=\"scrolledwindow9\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"hscrollbar_policy\">GTK_POLICY_AUTOMATIC</property>\r\n"
+" <property name=\"vscrollbar_policy\">GTK_POLICY_AUTOMATIC</property>\r\n"
+" <property name=\"shadow_type\">GTK_SHADOW_IN</property>\r\n"
+" <property name=\"window_placement\">GTK_CORNER_TOP_LEFT</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkTextView\" id=\"textview1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"editable\">True</property>\r\n"
+" <property name=\"overwrite\">False</property>\r\n"
+" <property name=\"accepts_tab\">True</property>\r\n"
+" <property name=\"justification\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap_mode\">GTK_WRAP_NONE</property>\r\n"
+" <property name=\"cursor_visible\">True</property>\r\n"
+" <property name=\"pixels_above_lines\">0</property>\r\n"
+" <property name=\"pixels_below_lines\">0</property>\r\n"
+" <property name=\"pixels_inside_wrap\">0</property>\r\n"
+" <property name=\"left_margin\">0</property>\r\n"
+" <property name=\"right_margin\">0</property>\r\n"
+" <property name=\"indent\">0</property>\r\n"
+" <property name=\"text\" translatable=\"yes\"> </property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"shrink\">True</property>\r\n"
+" <property name=\"resize\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">True</property>\r\n"
+" <property name=\"fill\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"</widget>\r\n"
+"\r\n"
+"<widget class=\"GtkWindow\" id=\"viewer\">\r\n"
+" <property name=\"title\" translatable=\"yes\">Modest - Message viewer</property>\r\n"
+" <property name=\"type\">GTK_WINDOW_TOPLEVEL</property>\r\n"
+" <property name=\"window_position\">GTK_WIN_POS_NONE</property>\r\n"
+" <property name=\"modal\">False</property>\r\n"
+" <property name=\"default_width\">800</property>\r\n"
+" <property name=\"default_height\">600</property>\r\n"
+" <property name=\"resizable\">True</property>\r\n"
+" <property name=\"destroy_with_parent\">False</property>\r\n"
+" <property name=\"icon\">qgn_toolb_messagin.png</property>\r\n"
+" <property name=\"decorated\">True</property>\r\n"
+" <property name=\"skip_taskbar_hint\">False</property>\r\n"
+" <property name=\"skip_pager_hint\">False</property>\r\n"
+" <property name=\"type_hint\">GDK_WINDOW_TYPE_HINT_NORMAL</property>\r\n"
+" <property name=\"gravity\">GDK_GRAVITY_NORTH_WEST</property>\r\n"
+" <property name=\"focus_on_map\">True</property>\r\n"
+" <property name=\"urgency_hint\">False</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkVBox\" id=\"vbox3\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"spacing\">0</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuBar\" id=\"menubar3\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"pack_direction\">GTK_PACK_DIRECTION_LTR</property>\r\n"
+" <property name=\"child_pack_direction\">GTK_PACK_DIRECTION_LTR</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem44\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">_Message</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"menuitem44_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"reply\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Reply</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_new_reply_activate\" last_modification_time=\"Wed, 03 May 2006 12:23:21 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"reply_to_all2\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Reply to all</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_reply_to_all_activate\" last_modification_time=\"Wed, 03 May 2006 12:23:21 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"forward2\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Forward</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_forward2_activate\" last_modification_time=\"Wed, 03 May 2006 12:16:14 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSeparatorMenuItem\" id=\"separatormenuitem12\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem46\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">New e-mail</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_open1_activate\" last_modification_time=\"Fri, 28 Apr 2006 11:10:18 GMT\"/>\r\n"
+" <accelerator key=\"N\" modifiers=\"GDK_CONTROL_MASK\" signal=\"activate\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSeparatorMenuItem\" id=\"separatormenuitem13\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem47\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Delete</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_delete_activate\" last_modification_time=\"Wed, 03 May 2006 12:16:14 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem50\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">_Edit</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"menuitem50_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem52\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Cut</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_cut1_activate\" last_modification_time=\"Fri, 28 Apr 2006 11:10:18 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem53\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Copy</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_copy1_activate\" last_modification_time=\"Fri, 28 Apr 2006 11:10:18 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem54\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Paste</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_paste1_activate\" last_modification_time=\"Fri, 28 Apr 2006 11:10:18 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem55\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Select all</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem56\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">_Attachments</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"menuitem56_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"view_attacments\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">View</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_view_attachments_activate\" last_modification_time=\"Wed, 03 May 2006 12:20:03 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"save_attachments\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Save attachments...</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_save_attachments_activate\" last_modification_time=\"Wed, 03 May 2006 12:20:03 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"purge_attachments\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Purge attachments</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_purge_attachments_activate\" last_modification_time=\"Wed, 03 May 2006 12:20:03 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem60\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">_View</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"menuitem60_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem61\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Zoom</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_sort1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:17:29 GMT\"/>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"menuitem61_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkRadioMenuItem\" id=\"radiomenuitem1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">50%</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_50%1_activate\" last_modification_time=\"Fri, 28 Apr 2006 13:25:43 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkRadioMenuItem\" id=\"radiomenuitem2\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">100%</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_100%1_activate\" last_modification_time=\"Fri, 28 Apr 2006 13:25:43 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkRadioMenuItem\" id=\"radiomenuitem3\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">150%</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_150%1_activate\" last_modification_time=\"Fri, 28 Apr 2006 13:25:43 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkRadioMenuItem\" id=\"radiomenuitem4\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">200%</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_200%1_activate\" last_modification_time=\"Fri, 28 Apr 2006 13:25:43 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem62\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Show toolbar</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_show_toolbar1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:17:29 GMT\"/>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"menuitem62_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkCheckMenuItem\" id=\"checkmenuitem5\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Normal screen</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_normal_screen1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:17:29 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkCheckMenuItem\" id=\"checkmenuitem6\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Full screen</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_full_screen2_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:17:29 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkCheckMenuItem\" id=\"checkmenuitem7\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Full screen</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">False</property>\r\n"
+" <signal name=\"activate\" handler=\"on_full_screen1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:17:29 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSeparatorMenuItem\" id=\"separatormenuitem17\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkCheckMenuItem\" id=\"checkmenuitem8\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Next message</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">False</property>\r\n"
+" <signal name=\"activate\" handler=\"on_show_next_message_activate\" last_modification_time=\"Wed, 03 May 2006 09:44:13 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkCheckMenuItem\" id=\"checkmenuitem9\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Previous message</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"active\">False</property>\r\n"
+" <signal name=\"activate\" handler=\"on_show_previous_message_activate\" last_modification_time=\"Wed, 03 May 2006 09:44:13 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem69\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">_Tools</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_tools1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:12:02 GMT\"/>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"menuitem69_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"add_contact\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Add contact...</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_add_contact_activate\" last_modification_time=\"Wed, 03 May 2006 12:22:42 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSeparatorMenuItem\" id=\"separatormenuitem18\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"font_settings1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Font settings...</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_font_settings1_activate\" last_modification_time=\"Wed, 03 May 2006 12:22:42 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSeparatorMenuItem\" id=\"separator17\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem71\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Find on page...</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_new_account1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:23:17 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem72\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Search e-mails...</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_search_e-mails1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:23:17 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSeparatorMenuItem\" id=\"separatormenuitem19\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem73\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Help</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_help1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:23:17 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem74\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">_Security</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_security1_activate\" last_modification_time=\"Fri, 28 Apr 2006 13:30:35 GMT\"/>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"menuitem74_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"details\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Details</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_details_activate\" last_modification_time=\"Wed, 03 May 2006 12:22:42 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem75\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">_Close</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenu\" id=\"menuitem75_menu\">\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem76\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Close window</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_about1_activate\" last_modification_time=\"Fri, 28 Apr 2006 11:10:18 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkMenuItem\" id=\"menuitem77\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Close all windows</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <signal name=\"activate\" handler=\"on_close_all_windows1_activate\" last_modification_time=\"Fri, 28 Apr 2006 12:24:02 GMT\"/>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkToolbar\" id=\"toolbar3\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"orientation\">GTK_ORIENTATION_HORIZONTAL</property>\r\n"
+" <property name=\"toolbar_style\">GTK_TOOLBAR_BOTH</property>\r\n"
+" <property name=\"tooltips\">True</property>\r\n"
+" <property name=\"show_arrow\">True</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkToolButton\" id=\"reply\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"tooltip\" translatable=\"yes\">Reply</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Reply</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"icon\">qgn_toolb_messagin_reply.png</property>\r\n"
+" <property name=\"visible_horizontal\">True</property>\r\n"
+" <property name=\"visible_vertical\">True</property>\r\n"
+" <property name=\"is_important\">False</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"homogeneous\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkToolButton\" id=\"reply all\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"tooltip\" translatable=\"yes\">Reply all</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Reply all</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"icon\">qgn_toolb_messagin_replytoall.png</property>\r\n"
+" <property name=\"visible_horizontal\">True</property>\r\n"
+" <property name=\"visible_vertical\">True</property>\r\n"
+" <property name=\"is_important\">False</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"homogeneous\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkToolButton\" id=\"forward\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"tooltip\" translatable=\"yes\">Forward</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Forward</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"icon\">qgn_toolb_messagin_forward.png</property>\r\n"
+" <property name=\"visible_horizontal\">True</property>\r\n"
+" <property name=\"visible_vertical\">True</property>\r\n"
+" <property name=\"is_important\">False</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"homogeneous\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkToolButton\" id=\"save_attacment\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"tooltip\" translatable=\"yes\">Save attached files</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Save Attacments...</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"icon\">qgn_toolb_messagin_saveattachment.png</property>\r\n"
+" <property name=\"visible_horizontal\">True</property>\r\n"
+" <property name=\"visible_vertical\">True</property>\r\n"
+" <property name=\"is_important\">False</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"homogeneous\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkToolButton\" id=\"move_to\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"tooltip\" translatable=\"yes\">Move message to other location</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Move to...</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"icon\">qgn_toolb_messagin_moveto.png</property>\r\n"
+" <property name=\"visible_horizontal\">True</property>\r\n"
+" <property name=\"visible_vertical\">True</property>\r\n"
+" <property name=\"is_important\">False</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"homogeneous\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkToolButton\" id=\"toolbutton12\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"tooltip\" translatable=\"yes\">View previous message</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Previous</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"icon\">qgn_toolb_messagin_previous.png</property>\r\n"
+" <property name=\"visible_horizontal\">True</property>\r\n"
+" <property name=\"visible_vertical\">True</property>\r\n"
+" <property name=\"is_important\">False</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"homogeneous\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkToolButton\" id=\"toolbutton13\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"tooltip\" translatable=\"yes\">View next message</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Next</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"icon\">qgn_toolb_messagin_next.png</property>\r\n"
+" <property name=\"visible_horizontal\">True</property>\r\n"
+" <property name=\"visible_vertical\">True</property>\r\n"
+" <property name=\"is_important\">False</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"homogeneous\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkVPaned\" id=\"vpaned3\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"position\">100</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkTable\" id=\"table2\">\r\n"
+" <property name=\"border_width\">10</property>\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"n_rows\">4</property>\r\n"
+" <property name=\"n_columns\">2</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"row_spacing\">10</property>\r\n"
+" <property name=\"column_spacing\">10</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label_from\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">From:</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_RIGHT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">0</property>\r\n"
+" <property name=\"right_attach\">1</property>\r\n"
+" <property name=\"top_attach\">0</property>\r\n"
+" <property name=\"bottom_attach\">1</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label_subject\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Subject:</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_RIGHT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">0</property>\r\n"
+" <property name=\"right_attach\">1</property>\r\n"
+" <property name=\"top_attach\">2</property>\r\n"
+" <property name=\"bottom_attach\">3</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label_date\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Date:</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_RIGHT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">0</property>\r\n"
+" <property name=\"right_attach\">1</property>\r\n"
+" <property name=\"top_attach\">3</property>\r\n"
+" <property name=\"bottom_attach\">4</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"from\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\"></property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">1</property>\r\n"
+" <property name=\"right_attach\">2</property>\r\n"
+" <property name=\"top_attach\">0</property>\r\n"
+" <property name=\"bottom_attach\">1</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"to\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\"></property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">1</property>\r\n"
+" <property name=\"right_attach\">2</property>\r\n"
+" <property name=\"top_attach\">1</property>\r\n"
+" <property name=\"bottom_attach\">2</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"subject\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\"></property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">1</property>\r\n"
+" <property name=\"right_attach\">2</property>\r\n"
+" <property name=\"top_attach\">2</property>\r\n"
+" <property name=\"bottom_attach\">3</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"date\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\"></property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">1</property>\r\n"
+" <property name=\"right_attach\">2</property>\r\n"
+" <property name=\"top_attach\">3</property>\r\n"
+" <property name=\"bottom_attach\">4</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label_to\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">To:</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_RIGHT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">0</property>\r\n"
+" <property name=\"right_attach\">1</property>\r\n"
+" <property name=\"top_attach\">1</property>\r\n"
+" <property name=\"bottom_attach\">2</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"shrink\">True</property>\r\n"
+" <property name=\"resize\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkScrolledWindow\" id=\"scrolledwindow10\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"hscrollbar_policy\">GTK_POLICY_AUTOMATIC</property>\r\n"
+" <property name=\"vscrollbar_policy\">GTK_POLICY_AUTOMATIC</property>\r\n"
+" <property name=\"shadow_type\">GTK_SHADOW_IN</property>\r\n"
+" <property name=\"window_placement\">GTK_CORNER_TOP_LEFT</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkTextView\" id=\"textview2\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"editable\">True</property>\r\n"
+" <property name=\"overwrite\">False</property>\r\n"
+" <property name=\"accepts_tab\">True</property>\r\n"
+" <property name=\"justification\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap_mode\">GTK_WRAP_NONE</property>\r\n"
+" <property name=\"cursor_visible\">True</property>\r\n"
+" <property name=\"pixels_above_lines\">0</property>\r\n"
+" <property name=\"pixels_below_lines\">0</property>\r\n"
+" <property name=\"pixels_inside_wrap\">0</property>\r\n"
+" <property name=\"left_margin\">0</property>\r\n"
+" <property name=\"right_margin\">0</property>\r\n"
+" <property name=\"indent\">0</property>\r\n"
+" <property name=\"text\" translatable=\"yes\"></property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"shrink\">True</property>\r\n"
+" <property name=\"resize\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">True</property>\r\n"
+" <property name=\"fill\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"</widget>\r\n"
+"\r\n"
+"<widget class=\"GtkDialog\" id=\"mailbox_setup_1\">\r\n"
+" <property name=\"border_width\">10</property>\r\n"
+" <property name=\"width_request\">400</property>\r\n"
+" <property name=\"height_request\">350</property>\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"title\" translatable=\"yes\">Mailbox setup 1/4</property>\r\n"
+" <property name=\"type\">GTK_WINDOW_TOPLEVEL</property>\r\n"
+" <property name=\"window_position\">GTK_WIN_POS_NONE</property>\r\n"
+" <property name=\"modal\">False</property>\r\n"
+" <property name=\"default_width\">500</property>\r\n"
+" <property name=\"default_height\">400</property>\r\n"
+" <property name=\"resizable\">False</property>\r\n"
+" <property name=\"destroy_with_parent\">False</property>\r\n"
+" <property name=\"decorated\">True</property>\r\n"
+" <property name=\"skip_taskbar_hint\">False</property>\r\n"
+" <property name=\"skip_pager_hint\">False</property>\r\n"
+" <property name=\"type_hint\">GDK_WINDOW_TYPE_HINT_DIALOG</property>\r\n"
+" <property name=\"gravity\">GDK_GRAVITY_NORTH_WEST</property>\r\n"
+" <property name=\"focus_on_map\">True</property>\r\n"
+" <property name=\"urgency_hint\">False</property>\r\n"
+" <property name=\"has_separator\">True</property>\r\n"
+"\r\n"
+" <child internal-child=\"vbox\">\r\n"
+" <widget class=\"GtkVBox\" id=\"vbox4\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"spacing\">0</property>\r\n"
+"\r\n"
+" <child internal-child=\"action_area\">\r\n"
+" <widget class=\"GtkHButtonBox\" id=\"hbuttonbox1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"layout_style\">GTK_BUTTONBOX_END</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkButton\" id=\"button6\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_default\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Finish</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"relief\">GTK_RELIEF_NORMAL</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" <property name=\"response_id\">0</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkButton\" id=\"button7\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_default\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Back</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"relief\">GTK_RELIEF_NORMAL</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" <property name=\"response_id\">0</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkButton\" id=\"button8\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_default\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Next</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"relief\">GTK_RELIEF_NORMAL</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" <property name=\"response_id\">0</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkButton\" id=\"button9\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_default\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Cancel</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"relief\">GTK_RELIEF_NORMAL</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" <property name=\"response_id\">0</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">True</property>\r\n"
+" <property name=\"pack_type\">GTK_PACK_END</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkVBox\" id=\"vbox5\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"spacing\">10</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkHBox\" id=\"hbox17\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"spacing\">0</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label53\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Mailbox setup wizard allows you to define mailboxes for use on your device.</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0.5</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">10</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkHSeparator\" id=\"hseparator6\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkTable\" id=\"table3\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"n_rows\">2</property>\r\n"
+" <property name=\"n_columns\">2</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"row_spacing\">10</property>\r\n"
+" <property name=\"column_spacing\">10</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label14\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Mailbox name:</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">0</property>\r\n"
+" <property name=\"right_attach\">1</property>\r\n"
+" <property name=\"top_attach\">0</property>\r\n"
+" <property name=\"bottom_attach\">1</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label15\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Mailbox type:</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">0</property>\r\n"
+" <property name=\"right_attach\">1</property>\r\n"
+" <property name=\"top_attach\">1</property>\r\n"
+" <property name=\"bottom_attach\">2</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkEntry\" id=\"entry4\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"editable\">True</property>\r\n"
+" <property name=\"visibility\">True</property>\r\n"
+" <property name=\"max_length\">0</property>\r\n"
+" <property name=\"text\" translatable=\"yes\"></property>\r\n"
+" <property name=\"has_frame\">True</property>\r\n"
+" <property name=\"invisible_char\">*</property>\r\n"
+" <property name=\"activates_default\">False</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">1</property>\r\n"
+" <property name=\"right_attach\">2</property>\r\n"
+" <property name=\"top_attach\">0</property>\r\n"
+" <property name=\"bottom_attach\">1</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkComboBoxEntry\" id=\"comboboxentry1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"add_tearoffs\">False</property>\r\n"
+" <property name=\"has_frame\">True</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">1</property>\r\n"
+" <property name=\"right_attach\">2</property>\r\n"
+" <property name=\"top_attach\">1</property>\r\n"
+" <property name=\"bottom_attach\">2</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\">fill</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkHBox\" id=\"hbox18\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"spacing\">0</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label13\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">! Note: You cannot edit mailbox type once setup is complete</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0.5</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">10</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">True</property>\r\n"
+" <property name=\"fill\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"</widget>\r\n"
+"\r\n"
+"<widget class=\"GtkDialog\" id=\"mailbox_setup_2\">\r\n"
+" <property name=\"border_width\">10</property>\r\n"
+" <property name=\"width_request\">400</property>\r\n"
+" <property name=\"height_request\">350</property>\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"title\" translatable=\"yes\">Mailbox setup 2/4</property>\r\n"
+" <property name=\"type\">GTK_WINDOW_TOPLEVEL</property>\r\n"
+" <property name=\"window_position\">GTK_WIN_POS_NONE</property>\r\n"
+" <property name=\"modal\">False</property>\r\n"
+" <property name=\"default_width\">500</property>\r\n"
+" <property name=\"default_height\">400</property>\r\n"
+" <property name=\"resizable\">False</property>\r\n"
+" <property name=\"destroy_with_parent\">False</property>\r\n"
+" <property name=\"decorated\">True</property>\r\n"
+" <property name=\"skip_taskbar_hint\">False</property>\r\n"
+" <property name=\"skip_pager_hint\">False</property>\r\n"
+" <property name=\"type_hint\">GDK_WINDOW_TYPE_HINT_DIALOG</property>\r\n"
+" <property name=\"gravity\">GDK_GRAVITY_NORTH_WEST</property>\r\n"
+" <property name=\"focus_on_map\">True</property>\r\n"
+" <property name=\"urgency_hint\">False</property>\r\n"
+" <property name=\"has_separator\">True</property>\r\n"
+"\r\n"
+" <child internal-child=\"vbox\">\r\n"
+" <widget class=\"GtkVBox\" id=\"vbox6\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"spacing\">0</property>\r\n"
+"\r\n"
+" <child internal-child=\"action_area\">\r\n"
+" <widget class=\"GtkHButtonBox\" id=\"hbuttonbox2\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"layout_style\">GTK_BUTTONBOX_END</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkButton\" id=\"button11\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_default\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Finish</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"relief\">GTK_RELIEF_NORMAL</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" <property name=\"response_id\">0</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkButton\" id=\"button12\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_default\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Back</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"relief\">GTK_RELIEF_NORMAL</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" <property name=\"response_id\">0</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkButton\" id=\"button13\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_default\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Next</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"relief\">GTK_RELIEF_NORMAL</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" <property name=\"response_id\">0</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkButton\" id=\"button14\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_default\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Cancel</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"relief\">GTK_RELIEF_NORMAL</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" <property name=\"response_id\">0</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">True</property>\r\n"
+" <property name=\"pack_type\">GTK_PACK_END</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkTable\" id=\"table4\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"n_rows\">4</property>\r\n"
+" <property name=\"n_columns\">2</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"row_spacing\">10</property>\r\n"
+" <property name=\"column_spacing\">0</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label16\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Name:</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">0</property>\r\n"
+" <property name=\"right_attach\">1</property>\r\n"
+" <property name=\"top_attach\">0</property>\r\n"
+" <property name=\"bottom_attach\">1</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label17\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">User name:</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">0</property>\r\n"
+" <property name=\"right_attach\">1</property>\r\n"
+" <property name=\"top_attach\">1</property>\r\n"
+" <property name=\"bottom_attach\">2</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkEntry\" id=\"entry5\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"editable\">True</property>\r\n"
+" <property name=\"visibility\">True</property>\r\n"
+" <property name=\"max_length\">0</property>\r\n"
+" <property name=\"text\" translatable=\"yes\"></property>\r\n"
+" <property name=\"has_frame\">True</property>\r\n"
+" <property name=\"invisible_char\">*</property>\r\n"
+" <property name=\"activates_default\">False</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">1</property>\r\n"
+" <property name=\"right_attach\">2</property>\r\n"
+" <property name=\"top_attach\">0</property>\r\n"
+" <property name=\"bottom_attach\">1</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkComboBoxEntry\" id=\"comboboxentry2\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"add_tearoffs\">False</property>\r\n"
+" <property name=\"has_frame\">True</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">1</property>\r\n"
+" <property name=\"right_attach\">2</property>\r\n"
+" <property name=\"top_attach\">1</property>\r\n"
+" <property name=\"bottom_attach\">2</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\">fill</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label19\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Password:</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">0</property>\r\n"
+" <property name=\"right_attach\">1</property>\r\n"
+" <property name=\"top_attach\">2</property>\r\n"
+" <property name=\"bottom_attach\">3</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label20\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">E-mail address:</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">0</property>\r\n"
+" <property name=\"right_attach\">1</property>\r\n"
+" <property name=\"top_attach\">3</property>\r\n"
+" <property name=\"bottom_attach\">4</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkEntry\" id=\"entry6\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"editable\">True</property>\r\n"
+" <property name=\"visibility\">False</property>\r\n"
+" <property name=\"max_length\">0</property>\r\n"
+" <property name=\"text\" translatable=\"yes\"></property>\r\n"
+" <property name=\"has_frame\">True</property>\r\n"
+" <property name=\"invisible_char\">*</property>\r\n"
+" <property name=\"activates_default\">False</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">1</property>\r\n"
+" <property name=\"right_attach\">2</property>\r\n"
+" <property name=\"top_attach\">2</property>\r\n"
+" <property name=\"bottom_attach\">3</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkEntry\" id=\"entry7\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"editable\">True</property>\r\n"
+" <property name=\"visibility\">True</property>\r\n"
+" <property name=\"max_length\">0</property>\r\n"
+" <property name=\"text\" translatable=\"yes\"></property>\r\n"
+" <property name=\"has_frame\">True</property>\r\n"
+" <property name=\"invisible_char\">*</property>\r\n"
+" <property name=\"activates_default\">False</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">1</property>\r\n"
+" <property name=\"right_attach\">2</property>\r\n"
+" <property name=\"top_attach\">3</property>\r\n"
+" <property name=\"bottom_attach\">4</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">True</property>\r\n"
+" <property name=\"fill\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"</widget>\r\n"
+"\r\n"
+"<widget class=\"GtkDialog\" id=\"mailbox_setup_advanced\">\r\n"
+" <property name=\"border_width\">10</property>\r\n"
+" <property name=\"width_request\">400</property>\r\n"
+" <property name=\"height_request\">350</property>\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"title\" translatable=\"yes\">Advanced E-mail settings</property>\r\n"
+" <property name=\"type\">GTK_WINDOW_TOPLEVEL</property>\r\n"
+" <property name=\"window_position\">GTK_WIN_POS_NONE</property>\r\n"
+" <property name=\"modal\">False</property>\r\n"
+" <property name=\"default_width\">500</property>\r\n"
+" <property name=\"default_height\">400</property>\r\n"
+" <property name=\"resizable\">False</property>\r\n"
+" <property name=\"destroy_with_parent\">False</property>\r\n"
+" <property name=\"decorated\">True</property>\r\n"
+" <property name=\"skip_taskbar_hint\">False</property>\r\n"
+" <property name=\"skip_pager_hint\">False</property>\r\n"
+" <property name=\"type_hint\">GDK_WINDOW_TYPE_HINT_DIALOG</property>\r\n"
+" <property name=\"gravity\">GDK_GRAVITY_NORTH_WEST</property>\r\n"
+" <property name=\"focus_on_map\">True</property>\r\n"
+" <property name=\"urgency_hint\">False</property>\r\n"
+" <property name=\"has_separator\">True</property>\r\n"
+"\r\n"
+" <child internal-child=\"vbox\">\r\n"
+" <widget class=\"GtkVBox\" id=\"vbox7\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"spacing\">0</property>\r\n"
+"\r\n"
+" <child internal-child=\"action_area\">\r\n"
+" <widget class=\"GtkHButtonBox\" id=\"hbuttonbox3\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"layout_style\">GTK_BUTTONBOX_END</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkButton\" id=\"button16\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_default\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Ok</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"relief\">GTK_RELIEF_NORMAL</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" <property name=\"response_id\">0</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkButton\" id=\"button17\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_default\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Cancel</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"relief\">GTK_RELIEF_NORMAL</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" <property name=\"response_id\">0</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">True</property>\r\n"
+" <property name=\"pack_type\">GTK_PACK_END</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkNotebook\" id=\"notebook1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"show_tabs\">True</property>\r\n"
+" <property name=\"show_border\">True</property>\r\n"
+" <property name=\"tab_pos\">GTK_POS_TOP</property>\r\n"
+" <property name=\"scrollable\">False</property>\r\n"
+" <property name=\"enable_popup\">False</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkTable\" id=\"table7\">\r\n"
+" <property name=\"border_width\">10</property>\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"n_rows\">4</property>\r\n"
+" <property name=\"n_columns\">2</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"row_spacing\">10</property>\r\n"
+" <property name=\"column_spacing\">10</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label48\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Retrieve:</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">0</property>\r\n"
+" <property name=\"right_attach\">1</property>\r\n"
+" <property name=\"top_attach\">0</property>\r\n"
+" <property name=\"bottom_attach\">1</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label51\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Password authentication</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">0</property>\r\n"
+" <property name=\"right_attach\">1</property>\r\n"
+" <property name=\"top_attach\">3</property>\r\n"
+" <property name=\"bottom_attach\">4</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label49\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">No of e-mails to retrieve</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">0</property>\r\n"
+" <property name=\"right_attach\">1</property>\r\n"
+" <property name=\"top_attach\">2</property>\r\n"
+" <property name=\"bottom_attach\">3</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label52\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">E-mail size limit:</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">0</property>\r\n"
+" <property name=\"right_attach\">1</property>\r\n"
+" <property name=\"top_attach\">1</property>\r\n"
+" <property name=\"bottom_attach\">2</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkComboBox\" id=\"combobox8\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"add_tearoffs\">False</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">1</property>\r\n"
+" <property name=\"right_attach\">2</property>\r\n"
+" <property name=\"top_attach\">0</property>\r\n"
+" <property name=\"bottom_attach\">1</property>\r\n"
+" <property name=\"y_options\">fill</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkComboBox\" id=\"combobox9\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"add_tearoffs\">False</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">1</property>\r\n"
+" <property name=\"right_attach\">2</property>\r\n"
+" <property name=\"top_attach\">2</property>\r\n"
+" <property name=\"bottom_attach\">3</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\">fill</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkComboBox\" id=\"combobox10\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"add_tearoffs\">False</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">1</property>\r\n"
+" <property name=\"right_attach\">2</property>\r\n"
+" <property name=\"top_attach\">3</property>\r\n"
+" <property name=\"bottom_attach\">4</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\">fill</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkHBox\" id=\"hbox16\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"spacing\">10</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSpinButton\" id=\"spinbutton4\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"climb_rate\">1</property>\r\n"
+" <property name=\"digits\">0</property>\r\n"
+" <property name=\"numeric\">False</property>\r\n"
+" <property name=\"update_policy\">GTK_UPDATE_ALWAYS</property>\r\n"
+" <property name=\"snap_to_ticks\">False</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"adjustment\">1 0 100 1 10 10</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">1</property>\r\n"
+" <property name=\"right_attach\">2</property>\r\n"
+" <property name=\"top_attach\">1</property>\r\n"
+" <property name=\"bottom_attach\">2</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"tab_expand\">False</property>\r\n"
+" <property name=\"tab_fill\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label23\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Retrieval</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0.5</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"type\">tab</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkVBox\" id=\"vbox10\">\r\n"
+" <property name=\"border_width\">10</property>\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"spacing\">10</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkTable\" id=\"table6\">\r\n"
+" <property name=\"border_width\">10</property>\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"n_rows\">2</property>\r\n"
+" <property name=\"n_columns\">2</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"row_spacing\">10</property>\r\n"
+" <property name=\"column_spacing\">10</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label46\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Default e-mail format:</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">0</property>\r\n"
+" <property name=\"right_attach\">1</property>\r\n"
+" <property name=\"top_attach\">0</property>\r\n"
+" <property name=\"bottom_attach\">1</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label47\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Sending e-mail:</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">0</property>\r\n"
+" <property name=\"right_attach\">1</property>\r\n"
+" <property name=\"top_attach\">1</property>\r\n"
+" <property name=\"bottom_attach\">2</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkComboBox\" id=\"combobox6\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"add_tearoffs\">False</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">1</property>\r\n"
+" <property name=\"right_attach\">2</property>\r\n"
+" <property name=\"top_attach\">0</property>\r\n"
+" <property name=\"bottom_attach\">1</property>\r\n"
+" <property name=\"y_options\">fill</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkComboBox\" id=\"combobox7\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"add_tearoffs\">False</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">1</property>\r\n"
+" <property name=\"right_attach\">2</property>\r\n"
+" <property name=\"top_attach\">1</property>\r\n"
+" <property name=\"bottom_attach\">2</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\">fill</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkCheckButton\" id=\"checkbutton12\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Include original in reply</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"relief\">GTK_RELIEF_NORMAL</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" <property name=\"active\">False</property>\r\n"
+" <property name=\"inconsistent\">False</property>\r\n"
+" <property name=\"draw_indicator\">True</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkCheckButton\" id=\"checkbutton13\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Request read report</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"relief\">GTK_RELIEF_NORMAL</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" <property name=\"active\">False</property>\r\n"
+" <property name=\"inconsistent\">False</property>\r\n"
+" <property name=\"draw_indicator\">True</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"tab_expand\">False</property>\r\n"
+" <property name=\"tab_fill\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label24\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Sending</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0.5</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"type\">tab</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkTable\" id=\"table5\">\r\n"
+" <property name=\"border_width\">10</property>\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"n_rows\">3</property>\r\n"
+" <property name=\"n_columns\">2</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"row_spacing\">10</property>\r\n"
+" <property name=\"column_spacing\">10</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkComboBox\" id=\"combobox5\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"add_tearoffs\">False</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">1</property>\r\n"
+" <property name=\"right_attach\">2</property>\r\n"
+" <property name=\"top_attach\">0</property>\r\n"
+" <property name=\"bottom_attach\">1</property>\r\n"
+" <property name=\"y_options\">fill</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkEntry\" id=\"entry9\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"editable\">True</property>\r\n"
+" <property name=\"visibility\">True</property>\r\n"
+" <property name=\"max_length\">0</property>\r\n"
+" <property name=\"text\" translatable=\"yes\"></property>\r\n"
+" <property name=\"has_frame\">True</property>\r\n"
+" <property name=\"invisible_char\">*</property>\r\n"
+" <property name=\"activates_default\">False</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">1</property>\r\n"
+" <property name=\"right_attach\">2</property>\r\n"
+" <property name=\"top_attach\">1</property>\r\n"
+" <property name=\"bottom_attach\">2</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkEntry\" id=\"entry10\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"editable\">True</property>\r\n"
+" <property name=\"visibility\">True</property>\r\n"
+" <property name=\"max_length\">0</property>\r\n"
+" <property name=\"text\" translatable=\"yes\"></property>\r\n"
+" <property name=\"has_frame\">True</property>\r\n"
+" <property name=\"invisible_char\">*</property>\r\n"
+" <property name=\"activates_default\">False</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">1</property>\r\n"
+" <property name=\"right_attach\">2</property>\r\n"
+" <property name=\"top_attach\">2</property>\r\n"
+" <property name=\"bottom_attach\">3</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label45\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Password:</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0.5</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">0</property>\r\n"
+" <property name=\"right_attach\">1</property>\r\n"
+" <property name=\"top_attach\">2</property>\r\n"
+" <property name=\"bottom_attach\">3</property>\r\n"
+" <property name=\"x_options\"></property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label44\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Username:</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0.5</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">0</property>\r\n"
+" <property name=\"right_attach\">1</property>\r\n"
+" <property name=\"top_attach\">1</property>\r\n"
+" <property name=\"bottom_attach\">2</property>\r\n"
+" <property name=\"x_options\"></property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label40\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">SMTP authentication:</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0.5</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">0</property>\r\n"
+" <property name=\"right_attach\">1</property>\r\n"
+" <property name=\"top_attach\">0</property>\r\n"
+" <property name=\"bottom_attach\">1</property>\r\n"
+" <property name=\"x_options\"></property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"tab_expand\">False</property>\r\n"
+" <property name=\"tab_fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label25\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">SMTP server</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0.5</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"type\">tab</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkVBox\" id=\"vbox8\">\r\n"
+" <property name=\"border_width\">10</property>\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"spacing\">10</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkHBox\" id=\"hbox2\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"spacing\">10</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label29\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Security:</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0.5</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkComboBox\" id=\"combobox3\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"add_tearoffs\">False</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">True</property>\r\n"
+" <property name=\"fill\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkHBox\" id=\"hbox4\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"spacing\">10</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label31\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Incoming e-mail port:</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0.5</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSpinButton\" id=\"spinbutton1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"climb_rate\">1</property>\r\n"
+" <property name=\"digits\">0</property>\r\n"
+" <property name=\"numeric\">False</property>\r\n"
+" <property name=\"update_policy\">GTK_UPDATE_ALWAYS</property>\r\n"
+" <property name=\"snap_to_ticks\">False</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"adjustment\">2 0 100 1 10 10</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkHBox\" id=\"hbox3\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"spacing\">10</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label30\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Security:</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0.5</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkComboBox\" id=\"combobox4\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"add_tearoffs\">False</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">True</property>\r\n"
+" <property name=\"fill\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkHBox\" id=\"hbox5\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"spacing\">10</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label32\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Outgoing e-mail port:</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0.5</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkSpinButton\" id=\"spinbutton2\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"climb_rate\">1</property>\r\n"
+" <property name=\"digits\">0</property>\r\n"
+" <property name=\"numeric\">False</property>\r\n"
+" <property name=\"update_policy\">GTK_UPDATE_ALWAYS</property>\r\n"
+" <property name=\"snap_to_ticks\">False</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"adjustment\">1 0 100 1 10 10</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkHSeparator\" id=\"hseparator2\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkCheckButton\" id=\"checkbutton2\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Use specific connection</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"relief\">GTK_RELIEF_NORMAL</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" <property name=\"active\">False</property>\r\n"
+" <property name=\"inconsistent\">False</property>\r\n"
+" <property name=\"draw_indicator\">True</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkHBox\" id=\"hbox1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"spacing\">10</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label28\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Connection:</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0.5</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkEntry\" id=\"entry8\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"editable\">True</property>\r\n"
+" <property name=\"visibility\">True</property>\r\n"
+" <property name=\"max_length\">0</property>\r\n"
+" <property name=\"text\" translatable=\"yes\"></property>\r\n"
+" <property name=\"has_frame\">True</property>\r\n"
+" <property name=\"invisible_char\">*</property>\r\n"
+" <property name=\"activates_default\">False</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">True</property>\r\n"
+" <property name=\"fill\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkHSeparator\" id=\"hseparator1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkCheckButton\" id=\"checkbutton1\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Set as default mailbox</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"relief\">GTK_RELIEF_NORMAL</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" <property name=\"active\">False</property>\r\n"
+" <property name=\"inconsistent\">False</property>\r\n"
+" <property name=\"draw_indicator\">True</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"tab_expand\">False</property>\r\n"
+" <property name=\"tab_fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label26\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Other</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0.5</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"type\">tab</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkVBox\" id=\"vbox9\">\r\n"
+" <property name=\"border_width\">10</property>\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"spacing\">10</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label33\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">These security settings will be applied to %s</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0.5</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkHSeparator\" id=\"hseparator4\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkCheckButton\" id=\"checkbutton5\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Encrypt mails by default</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"relief\">GTK_RELIEF_NORMAL</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" <property name=\"active\">False</property>\r\n"
+" <property name=\"inconsistent\">False</property>\r\n"
+" <property name=\"draw_indicator\">True</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkCheckButton\" id=\"checkbutton8\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Digitally sign e-mails by default</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"relief\">GTK_RELIEF_NORMAL</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" <property name=\"active\">False</property>\r\n"
+" <property name=\"inconsistent\">False</property>\r\n"
+" <property name=\"draw_indicator\">True</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkHSeparator\" id=\"hseparator3\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkHBox\" id=\"hbox11\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"spacing\">0</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label39\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Display security indication for:</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0.5</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">True</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkCheckButton\" id=\"checkbutton3\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">All encrypted and digitally signed messages</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"relief\">GTK_RELIEF_NORMAL</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" <property name=\"active\">False</property>\r\n"
+" <property name=\"inconsistent\">False</property>\r\n"
+" <property name=\"draw_indicator\">True</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkCheckButton\" id=\"checkbutton9\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">All untrusted digital IDs</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"relief\">GTK_RELIEF_NORMAL</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" <property name=\"active\">False</property>\r\n"
+" <property name=\"inconsistent\">False</property>\r\n"
+" <property name=\"draw_indicator\">True</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkCheckButton\" id=\"checkbutton10\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">All expired or invalid digital IDs</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"relief\">GTK_RELIEF_NORMAL</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" <property name=\"active\">False</property>\r\n"
+" <property name=\"inconsistent\">False</property>\r\n"
+" <property name=\"draw_indicator\">True</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"tab_expand\">False</property>\r\n"
+" <property name=\"tab_fill\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label27\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Security</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0.5</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"type\">tab</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">True</property>\r\n"
+" <property name=\"fill\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"</widget>\r\n"
+"\r\n"
+"<widget class=\"GtkDialog\" id=\"mailbox_setup_3\">\r\n"
+" <property name=\"border_width\">10</property>\r\n"
+" <property name=\"width_request\">400</property>\r\n"
+" <property name=\"height_request\">350</property>\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"title\" translatable=\"yes\">Mailbox setup 3/4</property>\r\n"
+" <property name=\"type\">GTK_WINDOW_TOPLEVEL</property>\r\n"
+" <property name=\"window_position\">GTK_WIN_POS_NONE</property>\r\n"
+" <property name=\"modal\">False</property>\r\n"
+" <property name=\"default_width\">500</property>\r\n"
+" <property name=\"default_height\">400</property>\r\n"
+" <property name=\"resizable\">False</property>\r\n"
+" <property name=\"destroy_with_parent\">False</property>\r\n"
+" <property name=\"decorated\">True</property>\r\n"
+" <property name=\"skip_taskbar_hint\">False</property>\r\n"
+" <property name=\"skip_pager_hint\">False</property>\r\n"
+" <property name=\"type_hint\">GDK_WINDOW_TYPE_HINT_DIALOG</property>\r\n"
+" <property name=\"gravity\">GDK_GRAVITY_NORTH_WEST</property>\r\n"
+" <property name=\"focus_on_map\">True</property>\r\n"
+" <property name=\"urgency_hint\">False</property>\r\n"
+" <property name=\"has_separator\">True</property>\r\n"
+"\r\n"
+" <child internal-child=\"vbox\">\r\n"
+" <widget class=\"GtkVBox\" id=\"vbox11\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"spacing\">0</property>\r\n"
+"\r\n"
+" <child internal-child=\"action_area\">\r\n"
+" <widget class=\"GtkHButtonBox\" id=\"hbuttonbox4\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"layout_style\">GTK_BUTTONBOX_END</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkButton\" id=\"button18\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_default\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Finish</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"relief\">GTK_RELIEF_NORMAL</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" <property name=\"response_id\">0</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkButton\" id=\"button19\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_default\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Back</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"relief\">GTK_RELIEF_NORMAL</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" <property name=\"response_id\">0</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkButton\" id=\"button20\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_default\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Next</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"relief\">GTK_RELIEF_NORMAL</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" <property name=\"response_id\">0</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkButton\" id=\"button21\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_default\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Cancel</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"relief\">GTK_RELIEF_NORMAL</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" <property name=\"response_id\">0</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">True</property>\r\n"
+" <property name=\"pack_type\">GTK_PACK_END</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkTable\" id=\"table9\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"n_rows\">2</property>\r\n"
+" <property name=\"n_columns\">2</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"row_spacing\">10</property>\r\n"
+" <property name=\"column_spacing\">10</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label55\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Outgoing server:</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">0</property>\r\n"
+" <property name=\"right_attach\">1</property>\r\n"
+" <property name=\"top_attach\">1</property>\r\n"
+" <property name=\"bottom_attach\">2</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label54\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Incoming server:</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">0</property>\r\n"
+" <property name=\"right_attach\">1</property>\r\n"
+" <property name=\"top_attach\">0</property>\r\n"
+" <property name=\"bottom_attach\">1</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\"></property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkComboBoxEntry\" id=\"comboboxentry4\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"add_tearoffs\">False</property>\r\n"
+" <property name=\"has_frame\">True</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">1</property>\r\n"
+" <property name=\"right_attach\">2</property>\r\n"
+" <property name=\"top_attach\">0</property>\r\n"
+" <property name=\"bottom_attach\">1</property>\r\n"
+" <property name=\"y_options\">fill</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkComboBoxEntry\" id=\"comboboxentry5\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"add_tearoffs\">False</property>\r\n"
+" <property name=\"has_frame\">True</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"left_attach\">1</property>\r\n"
+" <property name=\"right_attach\">2</property>\r\n"
+" <property name=\"top_attach\">1</property>\r\n"
+" <property name=\"bottom_attach\">2</property>\r\n"
+" <property name=\"x_options\">fill</property>\r\n"
+" <property name=\"y_options\">fill</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">True</property>\r\n"
+" <property name=\"fill\">True</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"</widget>\r\n"
+"\r\n"
+"<widget class=\"GtkDialog\" id=\"mailbox_setup_4\">\r\n"
+" <property name=\"border_width\">10</property>\r\n"
+" <property name=\"width_request\">400</property>\r\n"
+" <property name=\"height_request\">350</property>\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"title\" translatable=\"yes\">Mailbox setup 4/4</property>\r\n"
+" <property name=\"type\">GTK_WINDOW_TOPLEVEL</property>\r\n"
+" <property name=\"window_position\">GTK_WIN_POS_NONE</property>\r\n"
+" <property name=\"modal\">False</property>\r\n"
+" <property name=\"default_width\">500</property>\r\n"
+" <property name=\"default_height\">400</property>\r\n"
+" <property name=\"resizable\">False</property>\r\n"
+" <property name=\"destroy_with_parent\">False</property>\r\n"
+" <property name=\"decorated\">True</property>\r\n"
+" <property name=\"skip_taskbar_hint\">False</property>\r\n"
+" <property name=\"skip_pager_hint\">False</property>\r\n"
+" <property name=\"type_hint\">GDK_WINDOW_TYPE_HINT_DIALOG</property>\r\n"
+" <property name=\"gravity\">GDK_GRAVITY_NORTH_WEST</property>\r\n"
+" <property name=\"focus_on_map\">True</property>\r\n"
+" <property name=\"urgency_hint\">False</property>\r\n"
+" <property name=\"has_separator\">True</property>\r\n"
+"\r\n"
+" <child internal-child=\"vbox\">\r\n"
+" <widget class=\"GtkVBox\" id=\"vbox12\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"spacing\">0</property>\r\n"
+"\r\n"
+" <child internal-child=\"action_area\">\r\n"
+" <widget class=\"GtkHButtonBox\" id=\"hbuttonbox5\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"layout_style\">GTK_BUTTONBOX_END</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkButton\" id=\"button22\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_default\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Finish</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"relief\">GTK_RELIEF_NORMAL</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" <property name=\"response_id\">0</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkButton\" id=\"button23\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_default\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Back</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"relief\">GTK_RELIEF_NORMAL</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" <property name=\"response_id\">0</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkButton\" id=\"button24\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_default\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Advanced</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"relief\">GTK_RELIEF_NORMAL</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" <property name=\"response_id\">0</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkButton\" id=\"button25\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"can_default\">True</property>\r\n"
+" <property name=\"can_focus\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Cancel</property>\r\n"
+" <property name=\"use_underline\">True</property>\r\n"
+" <property name=\"relief\">GTK_RELIEF_NORMAL</property>\r\n"
+" <property name=\"focus_on_click\">True</property>\r\n"
+" <property name=\"response_id\">0</property>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">True</property>\r\n"
+" <property name=\"pack_type\">GTK_PACK_END</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkHBox\" id=\"hbox19\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"homogeneous\">False</property>\r\n"
+" <property name=\"spacing\">0</property>\r\n"
+"\r\n"
+" <child>\r\n"
+" <widget class=\"GtkLabel\" id=\"label56\">\r\n"
+" <property name=\"visible\">True</property>\r\n"
+" <property name=\"label\" translatable=\"yes\">Mailbox setup is complete.\r\n"
+"\r\n"
+"Tap 'Finnish' to save or 'Cancel' to discard the settings.\r\n"
+"Tap 'Advanced' to edit the advanced e-mail settings.</property>\r\n"
+" <property name=\"use_underline\">False</property>\r\n"
+" <property name=\"use_markup\">False</property>\r\n"
+" <property name=\"justify\">GTK_JUSTIFY_LEFT</property>\r\n"
+" <property name=\"wrap\">False</property>\r\n"
+" <property name=\"selectable\">False</property>\r\n"
+" <property name=\"xalign\">0.5</property>\r\n"
+" <property name=\"yalign\">0.5</property>\r\n"
+" <property name=\"xpad\">0</property>\r\n"
+" <property name=\"ypad\">0</property>\r\n"
+" <property name=\"ellipsize\">PANGO_ELLIPSIZE_NONE</property>\r\n"
+" <property name=\"width_chars\">-1</property>\r\n"
+" <property name=\"single_line_mode\">False</property>\r\n"
+" <property name=\"angle\">0</property>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" <packing>\r\n"
+" <property name=\"padding\">0</property>\r\n"
+" <property name=\"expand\">False</property>\r\n"
+" <property name=\"fill\">False</property>\r\n"
+" </packing>\r\n"
+" </child>\r\n"
+" </widget>\r\n"
+" </child>\r\n"
+"</widget>\r\n"
+"\r\n"
+"</glade-interface>\r\n"
+;
+#endif /*__MODEST_GLADE_INCLUDED__*/
--- /dev/null
+<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*-->
+<!DOCTYPE glade-project SYSTEM "http://glade.gnome.org/glade-project-2.0.dtd">
+
+<glade-project>
+ <name>Modest</name>
+ <program_name>Modest</program_name>
+ <gnome_support>FALSE</gnome_support>
+</glade-project>
--- /dev/null
+#
+# Makefile.am
+# Time-stamp: <2006-04-24 00:08:56 (djcb)>
+#
+#
+# use Automake 'trick' ==> convenience static libraries, which
+# won't be installed, just for linking
+#
+INCLUDES=\
+ $(MODEST_GSTUFF_CFLAGS) \
+ $(MODEST_GTK_CFLAGS) \
+ $(MODEST_TINYMAIL_CFLAGS)
+
+noinst_LTLIBRARIES=\
+ libmodest-ui.la
+
+libmodest_ui_la_SOURCES=\
+ modest-ui.c\
+ modest-main-window.h\
+ modest-main-window.c\
+ modest-edit-window.h\
+ modest-edit-window.c
+
+LDADD = \
+ $(MODEST_GSTUFF_LIBS) \
+ $(MODEST_GTK_LIBS) \
+ $(MODEST_TINYMAIL_LIBS)
--- /dev/null
+/* modest-edit-window.c */
+
+/* insert (c)/licensing information) */
+
+#include <gtk/gtk.h>
+#include <string.h>
+#include "modest-edit-window.h"
+
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif /*HAVE_CONFIG_H*/
+
+#include <glib/gi18n.h>
+
+/* include other impl specific header files */
+
+/* 'private'/'protected' functions */
+static void modest_edit_window_class_init (ModestEditWindowClass *klass);
+static void modest_edit_window_init (ModestEditWindow *obj);
+static void modest_edit_window_finalize (GObject *obj);
+
+
+static GtkWidget* modest_edit_window_toolbar (void);
+
+static void on_send_clicked (GtkToolButton *button, gpointer data);
+static void on_cut_clicked (GtkToolButton *button, gpointer data);
+static void on_copy_clicked (GtkToolButton *button, gpointer data);
+static void on_paste_clicked (GtkToolButton *button, gpointer data);
+static void on_quit_clicked (GtkToolButton *button, gpointer data);
+static void on_save_clicked (GtkToolButton *button, gpointer data);
+
+
+
+/* list my signals */
+enum {
+ /* MY_SIGNAL_1, */
+ /* MY_SIGNAL_2, */
+ LAST_SIGNAL
+};
+
+typedef struct _ModestEditWindowPrivate ModestEditWindowPrivate;
+struct _ModestEditWindowPrivate {
+
+ GtkEntry *to_entry;
+ GtkEntry *cc_entry;
+ GtkEntry *bcc_entry;
+ GtkEntry *subject_entry;
+
+ GtkTextView *body_text;
+ GtkStatusbar *status_bar;
+
+};
+#define MODEST_EDIT_WINDOW_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE((o), \
+ MODEST_TYPE_EDIT_WINDOW, \
+ ModestEditWindowPrivate))
+/* globals */
+static GtkWindowClass *parent_class = NULL;
+
+/* uncomment the following if you have defined any signals */
+/* static guint signals[LAST_SIGNAL] = {0}; */
+
+GType
+modest_edit_window_get_type (void)
+{
+ static GType my_type = 0;
+ if (!my_type) {
+ static const GTypeInfo my_info = {
+ sizeof(ModestEditWindowClass),
+ NULL, /* base init */
+ NULL, /* base finalize */
+ (GClassInitFunc) modest_edit_window_class_init,
+ NULL, /* class finalize */
+ NULL, /* class data */
+ sizeof(ModestEditWindow),
+ 1, /* n_preallocs */
+ (GInstanceInitFunc) modest_edit_window_init,
+ };
+ my_type = g_type_register_static (GTK_TYPE_WINDOW,
+ "ModestEditWindow",
+ &my_info, 0);
+ }
+ return my_type;
+}
+
+static void
+modest_edit_window_class_init (ModestEditWindowClass *klass)
+{
+ GObjectClass *gobject_class;
+ gobject_class = (GObjectClass*) klass;
+
+ parent_class = g_type_class_peek_parent (klass);
+ gobject_class->finalize = modest_edit_window_finalize;
+
+ g_type_class_add_private (gobject_class, sizeof(ModestEditWindowPrivate));
+
+ /* signal definitions go here, e.g.: */
+/* signals[MY_SIGNAL_1] = */
+/* g_signal_new ("my_signal_1",....); */
+/* signals[MY_SIGNAL_2] = */
+/* g_signal_new ("my_signal_2",....); */
+/* etc. */
+}
+
+static void
+modest_edit_window_init (ModestEditWindow *self)
+{
+ ModestEditWindowPrivate *priv;
+ GtkWidget *vbox;
+ GtkWidget *to_button, *cc_button, *bcc_button;
+ GtkWidget *subject_label;
+ GtkWidget *table;
+ GtkWidget *scrolled_win;
+ GtkWidget *toolbar;
+
+ priv = MODEST_EDIT_WINDOW_GET_PRIVATE(self);
+
+ priv->to_entry = GTK_ENTRY(gtk_entry_new_with_max_length (255));
+ priv->cc_entry = GTK_ENTRY(gtk_entry_new_with_max_length (255));
+ priv->bcc_entry = GTK_ENTRY(gtk_entry_new_with_max_length (255));
+ priv->subject_entry = GTK_ENTRY(gtk_entry_new_with_max_length (255));
+ priv->status_bar = GTK_STATUSBAR(gtk_statusbar_new ());
+
+ toolbar = modest_edit_window_toolbar ();
+
+ to_button = gtk_button_new_with_label (_("To..."));
+ cc_button = gtk_button_new_with_label (_("Cc..."));
+ bcc_button = gtk_button_new_with_label (_("Bcc.."));
+
+ scrolled_win = gtk_scrolled_window_new (NULL, NULL);
+ gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW(scrolled_win),
+ GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS);
+ gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW(scrolled_win),
+ GTK_SHADOW_IN);
+
+ subject_label = gtk_label_new ("Subject:");
+
+ table = gtk_table_new (4, 2, FALSE);
+
+ gtk_table_attach (GTK_TABLE(table), to_button,
+ 0, 1, 0, 1, 0, 0, 0, 0);
+ gtk_table_attach (GTK_TABLE(table), GTK_WIDGET(priv->to_entry),
+ 1, 2, 0, 1, GTK_EXPAND|GTK_FILL, 0, 0, 0);
+
+ gtk_table_attach (GTK_TABLE(table), cc_button,
+ 0, 1, 1, 2, 0, 0, 0, 0);
+ gtk_table_attach (GTK_TABLE(table), GTK_WIDGET(priv->cc_entry),
+ 1, 2, 1, 2, GTK_EXPAND|GTK_FILL, 0, 0, 0);
+
+ gtk_table_attach (GTK_TABLE(table), bcc_button,
+ 0, 1, 2, 3, 0, 0, 0, 0);
+ gtk_table_attach (GTK_TABLE(table), GTK_WIDGET(priv->bcc_entry),
+ 1, 2, 2, 3, GTK_EXPAND|GTK_FILL, 0, 0, 0);
+
+ gtk_table_attach (GTK_TABLE(table), subject_label,
+ 0, 1, 3, 4, 0, 0, 0, 0);
+ gtk_table_attach (GTK_TABLE(table), GTK_WIDGET(priv->subject_entry),
+ 1, 2, 3, 4, GTK_EXPAND|GTK_FILL, 0, 0, 0);
+
+ priv->body_text = GTK_TEXT_VIEW(gtk_text_view_new ());
+
+ gtk_container_add (GTK_CONTAINER(scrolled_win), GTK_WIDGET(priv->body_text));
+
+ vbox = gtk_vbox_new (FALSE, 5);
+
+ gtk_box_pack_start (GTK_BOX(vbox), toolbar, FALSE, TRUE,2);
+ gtk_box_pack_start (GTK_BOX(vbox), table, FALSE, TRUE,2);
+ gtk_box_pack_start (GTK_BOX(vbox), scrolled_win, TRUE, TRUE, 2);
+ gtk_box_pack_start (GTK_BOX(vbox), GTK_WIDGET(priv->status_bar),
+ FALSE, TRUE, 2);
+
+ /* make everything but the top level container visible,
+ * so gtk_widget_show will work */
+ gtk_widget_show_all (vbox);
+ gtk_container_add (GTK_CONTAINER(self), vbox);
+
+}
+
+static void
+modest_edit_window_finalize (GObject *obj)
+{
+/* free/unref instance resources here */
+}
+
+
+GtkWidget*
+modest_edit_window_new (const gchar *to, const gchar *cc,
+ const gchar *bcc, const gchar *subject,
+ const gchar *body, const GSList *attachments)
+{
+
+ ModestEditWindowPrivate *priv;
+ GObject *obj = g_object_new(MODEST_TYPE_EDIT_WINDOW, NULL);
+
+ priv = MODEST_EDIT_WINDOW_GET_PRIVATE(obj);
+
+ /* FIXME: valid utf-8 */
+
+ if (to)
+ gtk_entry_set_text (priv->to_entry, to);
+ if (cc)
+ gtk_entry_set_text (priv->cc_entry, cc);
+ if (bcc)
+ gtk_entry_set_text (priv->bcc_entry,bcc);
+
+ if (subject)
+ gtk_entry_set_text (priv->subject_entry, subject);
+
+ if (body)
+ gtk_text_buffer_insert (gtk_text_view_get_buffer(priv->body_text),
+ NULL, body, strlen(body));
+
+ /* FIXME: attachments */
+
+ return GTK_WIDGET(obj);
+}
+
+
+
+
+static GtkWidget*
+modest_edit_window_toolbar (void)
+{
+ GtkWidget *toolbar;
+ GtkToolItem *send, *save, *cut, *copy, *paste, *quit;
+
+ toolbar = gtk_toolbar_new ();
+
+ /* FIXME: get a better icon */
+ send = gtk_tool_button_new_from_stock (GTK_STOCK_MEDIA_PLAY);
+
+ save = gtk_tool_button_new_from_stock (GTK_STOCK_SAVE);
+ cut = gtk_tool_button_new_from_stock (GTK_STOCK_CUT);
+ copy = gtk_tool_button_new_from_stock (GTK_STOCK_COPY);
+ paste = gtk_tool_button_new_from_stock (GTK_STOCK_PASTE);
+ quit = gtk_tool_button_new_from_stock (GTK_STOCK_QUIT);
+
+ g_signal_connect (send, "clicked", G_CALLBACK(on_send_clicked),
+ "send");
+ g_signal_connect (save, "clicked", G_CALLBACK(on_save_clicked),
+ "save");
+ g_signal_connect (cut, "clicked", G_CALLBACK(on_cut_clicked),
+ "cut");
+ g_signal_connect (copy, "clicked", G_CALLBACK(on_copy_clicked),
+ "copy");
+ g_signal_connect (paste, "clicked", G_CALLBACK(on_paste_clicked),
+ "send");
+ g_signal_connect (quit, "clicked", G_CALLBACK(on_quit_clicked),
+ "quit");
+
+ gtk_toolbar_insert (GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(send), -1);
+ gtk_toolbar_insert (GTK_TOOLBAR(toolbar),
+ GTK_TOOL_ITEM(gtk_separator_tool_item_new()),
+ -1);
+ gtk_toolbar_insert (GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(save), -1);
+ gtk_toolbar_insert (GTK_TOOLBAR(toolbar),
+ GTK_TOOL_ITEM(gtk_separator_tool_item_new()),
+ -1);
+
+ gtk_toolbar_insert (GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(cut), -1);
+ gtk_toolbar_insert (GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(copy), -1);
+ gtk_toolbar_insert (GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(paste), -1);
+
+ gtk_toolbar_insert (GTK_TOOLBAR(toolbar),
+ GTK_TOOL_ITEM(gtk_separator_tool_item_new()),
+ -1);
+ gtk_toolbar_insert (GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(quit), -1);
+
+ return toolbar;
+}
+
+
+static void
+on_send_clicked (GtkToolButton *button, gpointer data)
+{
+ g_warning ("clicked: %s", (gchar *)data);
+}
+
+static void
+on_cut_clicked (GtkToolButton *button, gpointer data)
+{
+ g_warning (__FUNCTION__);
+}
+static void
+on_copy_clicked (GtkToolButton *button, gpointer data)
+{
+ g_warning (__FUNCTION__);
+}
+static void
+on_paste_clicked (GtkToolButton *button, gpointer data)
+{
+ g_warning (__FUNCTION__);
+}
+
+static void
+on_save_clicked (GtkToolButton *button, gpointer data)
+{
+ g_warning (__FUNCTION__);
+}
+
+
+
+static void
+on_quit_clicked (GtkToolButton *button, gpointer data)
+{
+ g_warning (__FUNCTION__);
+}
+
+
--- /dev/null
+/* modest-edit-window.h */
+/* insert (c)/licensing information) */
+
+#ifndef __MODEST_EDIT_WINDOW_H__
+#define __MODEST_EDIT_WINDOW_H__
+
+#include <gtk/gtkwindow.h>
+/* other include files */
+
+G_BEGIN_DECLS
+
+/* convenience macros */
+#define MODEST_TYPE_EDIT_WINDOW (modest_edit_window_get_type())
+#define MODEST_EDIT_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),MODEST_TYPE_EDIT_WINDOW,ModestEditWindow))
+#define MODEST_EDIT_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),MODEST_TYPE_EDIT_WINDOW,GtkWindow))
+#define MODEST_IS_EDIT_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),MODEST_TYPE_EDIT_WINDOW))
+#define MODEST_IS_EDIT_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass),MODEST_TYPE_EDIT_WINDOW))
+#define MODEST_EDIT_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj),MODEST_TYPE_EDIT_WINDOW,ModestEditWindowClass))
+
+typedef struct _ModestEditWindow ModestEditWindow;
+typedef struct _ModestEditWindowClass ModestEditWindowClass;
+
+struct _ModestEditWindow {
+ GtkWindow parent;
+};
+
+struct _ModestEditWindowClass {
+ GtkWindowClass parent_class;
+ /* insert signal callback declarations, eg. */
+ /* void (* my_event) (ModestEditWindow* obj); */
+};
+
+/* member functions */
+GType modest_edit_window_get_type (void) G_GNUC_CONST;
+
+
+GtkWidget* modest_edit_window_new (const gchar *to,
+ const gchar *cc,
+ const gchar *bcc,
+ const gchar *subject,
+ const gchar *body,
+ const GSList *attachments);
+/* fill in other public functions, eg.: */
+/* void modest_edit_window_do_something (ModestEditWindow *self, const gchar* param); */
+/* gboolean modest_edit_window_has_foo (ModestEditWindow *self, gint value); */
+
+
+G_END_DECLS
+
+#endif /* __MODEST_EDIT_WINDOW_H__ */
+
--- /dev/null
+/* modest-main-window.c */
+
+/* insert (c)/licensing information) */
+#include <gtk/gtk.h>
+#include <string.h>
+
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif /*HAVE_CONFIG_H*/
+
+#include <glib/gi18n.h>
+#include "modest-main-window.h"
+
+
+
+#include "../modest-tny-account-store.h"
+#include "../modest-tny-folder-tree-view.h"
+#include "../modest-tny-header-tree-view.h"
+#include "../modest-tny-msg-view.h"
+
+
+
+/* 'private'/'protected' functions */
+static void modest_main_window_class_init (ModestMainWindowClass *klass);
+static void modest_main_window_init (ModestMainWindow *obj,
+ ModestConf *conf,
+ ModestAccountMgr *modest_acc_mgr);
+static void modest_main_window_finalize (GObject *obj);
+
+
+static GtkWidget* modest_main_window_folder_tree (ModestAccountMgr *modest_acc_mgr);
+static GtkWidget* modest_main_window_header_tree (TnyMsgFolderIface *folder);
+
+static GtkWidget* modest_main_window_toolbar (void);
+static GtkWidget* modest_main_window_favorite_folder_list (void);
+static GtkWidget* modest_main_window_message_preview (void);
+static GtkWidget * modest_main_window_get_ui (ModestTnyFolderTreeView *folder_view,
+ ModestTnyHeaderTreeView *header_view,
+ ModestTnyMsgView *message_view);
+static void on_newmail_clicked (GtkToolButton *button, gpointer data);
+static void on_refresh_clicked (GtkToolButton *button, gpointer data);
+static void on_reply_clicked (GtkToolButton *button, gpointer data);
+static void on_forward_clicked (GtkToolButton *button, gpointer data);
+static void on_delmail_clicked (GtkToolButton *button, gpointer data);
+static void on_cut_clicked (GtkToolButton *button, gpointer data);
+static void on_copy_clicked (GtkToolButton *button, gpointer data);
+static void on_paste_clicked (GtkToolButton *button, gpointer data);
+static void on_quit_clicked (GtkToolButton *button, gpointer data);
+
+static void on_folder_clicked (ModestTnyFolderTreeView *self,
+ TnyMsgFolderIface *folder,
+ gpointer data);
+static void on_message_clicked (ModestTnyFolderTreeView *folder_tree,
+ TnyMsgIface *message,
+ gpointer data);
+
+
+
+/* list my signals */
+enum {
+ /* MY_SIGNAL_1, */
+ /* MY_SIGNAL_2, */
+ LAST_SIGNAL
+};
+
+typedef struct _ModestMainWindowPrivate ModestMainWindowPrivate;
+struct _ModestMainWindowPrivate {
+
+ ModestConf *modest_conf;
+ ModestAccountMgr *modest_acc_mgr;
+
+ ModestTnyFolderTreeView *folder_view;
+ ModestTnyHeaderTreeView *header_view;
+ ModestTnyMsgView *message_view;
+};
+#define MODEST_MAIN_WINDOW_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE((o), \
+ MODEST_TYPE_MAIN_WINDOW, \
+ ModestMainWindowPrivate))
+/* globals */
+static GtkWidgetClass *parent_class = NULL;
+
+/* uncomment the following if you have defined any signals */
+/* static guint signals[LAST_SIGNAL] = {0}; */
+
+GType
+modest_main_window_get_type (void)
+{
+ static GType my_type = 0;
+ if (!my_type) {
+ static const GTypeInfo my_info = {
+ sizeof(ModestMainWindowClass),
+ NULL, /* base init */
+ NULL, /* base finalize */
+ (GClassInitFunc) modest_main_window_class_init,
+ NULL, /* class finalize */
+ NULL, /* class data */
+ sizeof(ModestMainWindow),
+ 1, /* n_preallocs */
+ (GInstanceInitFunc) modest_main_window_init,
+ };
+ my_type = g_type_register_static (GTK_TYPE_WINDOW,
+ "ModestMainWindow",
+ &my_info, 0);
+ }
+ return my_type;
+}
+
+static void
+modest_main_window_class_init (ModestMainWindowClass *klass)
+{
+ GObjectClass *gobject_class;
+ gobject_class = (GObjectClass*) klass;
+
+ parent_class = g_type_class_peek_parent (klass);
+ gobject_class->finalize = modest_main_window_finalize;
+
+ g_type_class_add_private (gobject_class, sizeof(ModestMainWindowPrivate));
+
+ /* signal definitions go here, e.g.: */
+/* signals[MY_SIGNAL_1] = */
+/* g_signal_new ("my_signal_1",....); */
+/* signals[MY_SIGNAL_2] = */
+/* g_signal_new ("my_signal_2",....); */
+/* etc. */
+}
+
+static GtkWidget*
+wrapped_in_scrolled_win (GtkWidget *child)
+{
+ GtkWidget *scrolled_win;
+
+ scrolled_win = gtk_scrolled_window_new (NULL, NULL);
+ gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW(scrolled_win),
+ GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS);
+ gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW(scrolled_win),
+ GTK_SHADOW_IN);
+ gtk_container_add (GTK_CONTAINER(scrolled_win), child);
+ return scrolled_win;
+}
+
+
+
+static void
+modest_main_window_init (ModestMainWindow *obj, ModestConf *modest_conf,
+ ModestAccountMgr *modest_acc_mgr)
+{
+}
+
+
+
+
+
+static void
+modest_main_window_finalize (GObject *obj)
+{
+ ModestMainWindowPrivate *priv = MODEST_MAIN_WINDOW_GET_PRIVATE (obj);
+
+ priv->modest_conf = NULL;
+ priv->modest_acc_mgr = NULL;
+}
+
+
+
+GtkWidget*
+modest_main_window_new (ModestConf *modest_conf, ModestAccountMgr *modest_acc_mgr)
+{
+
+ GtkWidget *ui;
+ ModestMainWindow *self =
+ MODEST_MAIN_WINDOW(g_object_new(MODEST_TYPE_MAIN_WINDOW, NULL));
+ ModestMainWindowPrivate *priv = MODEST_MAIN_WINDOW_GET_PRIVATE (self);
+
+ priv->modest_conf = modest_conf;
+ priv->modest_acc_mgr = modest_acc_mgr;
+
+ priv->header_view = MODEST_TNY_HEADER_TREE_VIEW(modest_main_window_header_tree (NULL));
+ g_signal_connect (priv->header_view, "message_selected",
+ G_CALLBACK(on_message_clicked),
+ self);
+
+ priv->folder_view = MODEST_TNY_FOLDER_TREE_VIEW(modest_main_window_folder_tree
+ (modest_acc_mgr));
+ g_signal_connect (priv->folder_view, "folder_selected",
+ G_CALLBACK(on_folder_clicked),
+ self);
+
+ priv->message_view = MODEST_TNY_MSG_VIEW (modest_main_window_message_preview());
+
+ ui = modest_main_window_get_ui(priv->folder_view,
+ priv->header_view,
+ priv->message_view);
+ gtk_container_add (GTK_CONTAINER(self), ui);
+
+ return GTK_WIDGET(self);
+}
+
+
+
+
+static GtkWidget *
+modest_main_window_get_ui (ModestTnyFolderTreeView *folder_view,
+ ModestTnyHeaderTreeView *header_view,
+ ModestTnyMsgView *message_view)
+
+{
+ GtkWidget *vbox;
+ GtkWidget *msg_vpaned,*folder_vpaned, *folder_msg_hpaned;
+ GtkWidget *toolbar, *fav_folder_list;
+ GtkWidget *status_bar;
+ GtkWidget *swin_msg_list,*swin_folder_list, *swin_favfolder_list;
+ GtkWidget *folder_label, *message_label;
+ GtkWidget *folder_vbox, *message_vbox;
+
+ toolbar = modest_main_window_toolbar ();
+ fav_folder_list = modest_main_window_favorite_folder_list ();
+ vbox = gtk_vbox_new (FALSE,2);
+
+ folder_vbox = gtk_vbox_new (FALSE,2);
+ message_vbox = gtk_vbox_new (FALSE,2);
+
+ msg_vpaned = gtk_vpaned_new ();
+ folder_vpaned = gtk_vpaned_new ();
+ folder_msg_hpaned = gtk_hpaned_new ();
+
+ swin_msg_list = wrapped_in_scrolled_win (GTK_WIDGET(header_view));
+ swin_folder_list = wrapped_in_scrolled_win (GTK_WIDGET(folder_view));
+ swin_favfolder_list = wrapped_in_scrolled_win (fav_folder_list);
+
+ folder_label = gtk_label_new (_("Folders"));
+ gtk_label_set_justify (GTK_LABEL(folder_label), GTK_JUSTIFY_LEFT);
+
+ gtk_paned_add1 (GTK_PANED(folder_vpaned), swin_favfolder_list);
+ gtk_paned_add2 (GTK_PANED(folder_vpaned), swin_folder_list);
+ gtk_box_pack_start (GTK_BOX(folder_vbox), folder_label, FALSE, TRUE, 0);
+ gtk_box_pack_start (GTK_BOX(folder_vbox), folder_vpaned, TRUE, TRUE, 0);
+
+ message_label= gtk_label_new (_("Inbox"));
+ gtk_label_set_justify (GTK_LABEL(message_label), GTK_JUSTIFY_LEFT);
+ gtk_paned_add1 (GTK_PANED(msg_vpaned), swin_msg_list);
+ gtk_paned_add2 (GTK_PANED(msg_vpaned), GTK_WIDGET(message_view));
+ gtk_box_pack_start (GTK_BOX(message_vbox), message_label, FALSE, TRUE, 0);
+ gtk_box_pack_start (GTK_BOX(message_vbox), msg_vpaned, TRUE, TRUE, 0);
+
+
+ gtk_paned_add1 (GTK_PANED(folder_msg_hpaned), folder_vbox);
+ gtk_paned_add2 (GTK_PANED(folder_msg_hpaned), message_vbox);
+
+ gtk_box_pack_start (GTK_BOX(vbox), toolbar, FALSE, TRUE, 0);
+ gtk_box_pack_start (GTK_BOX(vbox), folder_msg_hpaned, TRUE, TRUE, 0);
+
+ status_bar = gtk_statusbar_new ();
+ gtk_box_pack_start (GTK_BOX(vbox), status_bar, FALSE, FALSE, 0);
+
+ gtk_widget_show_all (GTK_WIDGET(vbox));
+ return vbox;
+}
+
+
+
+static GtkWidget*
+modest_main_window_header_tree (TnyMsgFolderIface *folder)
+{
+ GtkTreeViewColumn *column;
+ GtkCellRenderer *renderer = gtk_cell_renderer_text_new ();
+ GtkWidget *header_tree;
+
+ header_tree = GTK_WIDGET(modest_tny_header_tree_view_new(folder));
+ if (!header_tree) {
+ g_warning ("could not create header tree");
+ return NULL;
+ }
+
+ column = gtk_tree_view_column_new_with_attributes(_("Date"), renderer,
+ "text",
+ TNY_MSG_HEADER_LIST_MODEL_DATE_RECEIVED_COLUMN,
+ NULL);
+ gtk_tree_view_column_set_resizable (column, TRUE);
+ gtk_tree_view_append_column (GTK_TREE_VIEW(header_tree), column);
+
+
+
+ column = gtk_tree_view_column_new_with_attributes(_("From"), renderer,
+ "text",
+ TNY_MSG_HEADER_LIST_MODEL_FROM_COLUMN,
+ NULL);
+ gtk_tree_view_column_set_resizable (column, TRUE);
+ gtk_tree_view_append_column (GTK_TREE_VIEW(header_tree), column);
+
+
+ column = gtk_tree_view_column_new_with_attributes(_("Subject"), renderer,
+ "text",
+ TNY_MSG_HEADER_LIST_MODEL_SUBJECT_COLUMN,
+ NULL);
+ gtk_tree_view_column_set_resizable (column, TRUE);
+ gtk_tree_view_append_column (GTK_TREE_VIEW(header_tree), column);
+
+ gtk_tree_view_set_headers_visible (GTK_TREE_VIEW(header_tree), TRUE);
+ gtk_tree_view_set_headers_clickable (GTK_TREE_VIEW(header_tree), TRUE);
+
+ return GTK_WIDGET(header_tree);
+}
+
+
+
+static GtkWidget*
+modest_main_window_folder_tree (ModestAccountMgr *modest_acc_mgr)
+{
+ GtkTreeViewColumn *column;
+ GtkCellRenderer *renderer = gtk_cell_renderer_text_new ();
+ GtkWidget *folder_tree;
+ TnyAccountStoreIface *account_store_iface =
+ TNY_ACCOUNT_STORE_IFACE(modest_tny_account_store_new (modest_acc_mgr));
+ if (!account_store_iface) {
+ g_warning ("could not initialze ModestTnyAccountStore");
+ return NULL;
+ }
+
+ folder_tree = modest_tny_folder_tree_view_new (account_store_iface);
+ if (!folder_tree) {
+ g_warning ("could not create folder list");
+ return NULL;
+ }
+
+ column = gtk_tree_view_column_new_with_attributes(_("All Mail Folders"),
+ renderer,"text",
+ TNY_ACCOUNT_TREE_MODEL_NAME_COLUMN,
+ NULL);
+ gtk_tree_view_column_set_resizable (column, TRUE);
+ gtk_tree_view_append_column (GTK_TREE_VIEW(folder_tree), column);
+
+ column = gtk_tree_view_column_new_with_attributes(_("Unread"),
+ renderer, "text",
+ TNY_ACCOUNT_TREE_MODEL_UNREAD_COLUMN,
+ NULL);
+ gtk_tree_view_column_set_resizable (column, TRUE);
+ gtk_tree_view_append_column (GTK_TREE_VIEW(folder_tree), column);
+
+
+ gtk_tree_view_set_headers_visible (GTK_TREE_VIEW(folder_tree), TRUE);
+ gtk_tree_view_set_headers_clickable (GTK_TREE_VIEW(folder_tree), TRUE);
+
+ return folder_tree;
+}
+
+
+static GtkWidget*
+modest_main_window_favorite_folder_list (void)
+{
+ GtkWidget *folder_list;
+ GtkListStore *folder_store;
+ GtkTreeIter iter;
+ GtkCellRenderer *renderer = gtk_cell_renderer_text_new ();
+
+ folder_store = gtk_list_store_new (1, G_TYPE_STRING);
+ folder_list = gtk_tree_view_new_with_model (GTK_TREE_MODEL(folder_store));
+
+ renderer = gtk_cell_renderer_text_new();
+
+ gtk_tree_view_insert_column (GTK_TREE_VIEW(folder_list),
+ gtk_tree_view_column_new_with_attributes(_("Favorite Folders"),
+ renderer,
+ "text", 0,
+ NULL),
+ 0);
+ gtk_list_store_insert_with_values (GTK_LIST_STORE(folder_store),
+ &iter, -1, 0, _("Stuff"), -1);
+ return folder_list;
+}
+
+
+static GtkWidget*
+modest_main_window_toolbar (void)
+{
+ GtkWidget *toolbar;
+ GtkToolItem *newmail, *refresh, *reply, *forward,
+ *cut, *copy, *paste, *delmail, *quit;
+
+ gpointer modest_ui = NULL; /* FIXME */
+
+ toolbar = gtk_toolbar_new ();
+
+ newmail = gtk_tool_button_new_from_stock (GTK_STOCK_NEW);
+ delmail = gtk_tool_button_new_from_stock (GTK_STOCK_DELETE);
+
+ reply = gtk_tool_button_new_from_stock (GTK_STOCK_MEDIA_PLAY);
+ forward = gtk_tool_button_new_from_stock (GTK_STOCK_MEDIA_FORWARD);
+
+ refresh = gtk_tool_button_new_from_stock (GTK_STOCK_REFRESH);
+
+ cut = gtk_tool_button_new_from_stock (GTK_STOCK_CUT);
+ copy = gtk_tool_button_new_from_stock (GTK_STOCK_COPY);
+ paste = gtk_tool_button_new_from_stock (GTK_STOCK_PASTE);
+
+ quit = gtk_tool_button_new_from_stock (GTK_STOCK_QUIT);
+
+ g_signal_connect (newmail, "clicked", G_CALLBACK(on_newmail_clicked),
+ modest_ui);
+ g_signal_connect (refresh, "clicked", G_CALLBACK(on_refresh_clicked),
+ modest_ui);
+ g_signal_connect (reply, "clicked", G_CALLBACK(on_reply_clicked),
+ modest_ui);
+ g_signal_connect (forward, "clicked", G_CALLBACK(on_forward_clicked),
+ modest_ui);
+ g_signal_connect (cut, "clicked", G_CALLBACK(on_cut_clicked),
+ modest_ui);
+ g_signal_connect (copy, "clicked", G_CALLBACK(on_copy_clicked),
+ modest_ui);
+ g_signal_connect (paste, "clicked", G_CALLBACK(on_paste_clicked),
+ modest_ui);
+ g_signal_connect (delmail, "clicked", G_CALLBACK(on_delmail_clicked),
+ modest_ui);
+ g_signal_connect (quit, "clicked", G_CALLBACK(on_quit_clicked),
+ modest_ui);
+
+ gtk_toolbar_insert (GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(newmail), -1);
+ gtk_toolbar_insert (GTK_TOOLBAR(toolbar),
+ GTK_TOOL_ITEM(gtk_separator_tool_item_new()),
+ -1);
+ gtk_toolbar_insert (GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(refresh), -1);
+ gtk_toolbar_insert (GTK_TOOLBAR(toolbar),
+ GTK_TOOL_ITEM(gtk_separator_tool_item_new()),
+ -1);
+ gtk_toolbar_insert (GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(reply), -1);
+ gtk_toolbar_insert (GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(forward), -1);
+
+ gtk_toolbar_insert (GTK_TOOLBAR(toolbar),
+ GTK_TOOL_ITEM(gtk_separator_tool_item_new()),
+ -1);
+
+ gtk_toolbar_insert (GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(cut), -1);
+ gtk_toolbar_insert (GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(copy), -1);
+ gtk_toolbar_insert (GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(paste), -1);
+ gtk_toolbar_insert (GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(delmail), -1);
+
+ gtk_toolbar_insert (GTK_TOOLBAR(toolbar),
+ GTK_TOOL_ITEM(gtk_separator_tool_item_new()),
+ -1);
+ gtk_toolbar_insert (GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(quit), -1);
+
+ return toolbar;
+}
+
+
+static GtkWidget*
+modest_main_window_message_preview ()
+{
+ ModestTnyMsgView *msg_view;
+
+ msg_view = MODEST_TNY_MSG_VIEW(modest_tny_msg_view_new (NULL));
+
+ return GTK_WIDGET(msg_view);
+}
+
+
+static void
+on_newmail_clicked (GtkToolButton *button, gpointer data)
+{
+ g_warning (__FUNCTION__);
+}
+
+static void
+on_refresh_clicked (GtkToolButton *button, gpointer data)
+{
+ g_warning (__FUNCTION__);
+}
+static void
+on_reply_clicked (GtkToolButton *button, gpointer data)
+{
+ g_warning (__FUNCTION__);
+}
+static void
+on_forward_clicked (GtkToolButton *button, gpointer data)
+{
+ g_warning (__FUNCTION__);
+}
+static void
+on_delmail_clicked (GtkToolButton *button, gpointer data)
+{
+ g_warning (__FUNCTION__);
+}
+
+static void
+on_cut_clicked (GtkToolButton *button, gpointer data)
+{
+ g_warning (__FUNCTION__);
+
+}
+static void
+on_copy_clicked (GtkToolButton *button, gpointer data)
+{
+ g_warning (__FUNCTION__);
+
+}
+static void
+on_paste_clicked (GtkToolButton *button, gpointer data)
+{
+ g_warning (__FUNCTION__);
+}
+
+
+static void
+on_quit_clicked (GtkToolButton *button, gpointer data)
+{
+ g_warning (__FUNCTION__);
+}
+
+
+
+static void on_folder_clicked (ModestTnyFolderTreeView *folder_tree,
+ TnyMsgFolderIface *folder,
+ gpointer data)
+{
+ ModestMainWindow *self;
+ ModestMainWindowPrivate *priv;
+
+ g_return_if_fail (folder);
+ g_return_if_fail (data);
+
+ self = MODEST_MAIN_WINDOW(data);
+ priv = MODEST_MAIN_WINDOW_GET_PRIVATE (self);
+
+ modest_tny_header_tree_view_set_folder (priv->header_view,
+ folder);
+}
+
+
+
+static void on_message_clicked (ModestTnyFolderTreeView *folder_tree,
+ TnyMsgIface *message,
+ gpointer data)
+{
+ ModestMainWindow *self;
+ ModestMainWindowPrivate *priv;
+
+ g_return_if_fail (message);
+ g_return_if_fail (data);
+
+ self = MODEST_MAIN_WINDOW(data);
+ priv = MODEST_MAIN_WINDOW_GET_PRIVATE (self);
+
+ modest_tny_msg_view_set_message (priv->message_view,
+ message);
+}
+
--- /dev/null
+/* modest-main-window.h */
+/* insert (c)/licensing information) */
+
+#ifndef __MODEST_MAIN_WINDOW_H__
+#define __MODEST_MAIN_WINDOW_H__
+
+
+#include <gtk/gtk.h>
+#include "../modest-conf.h"
+#include "../modest-account-mgr.h"
+
+/* other include files */
+
+G_BEGIN_DECLS
+
+/* convenience macros */
+#define MODEST_TYPE_MAIN_WINDOW (modest_main_window_get_type())
+#define MODEST_MAIN_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),MODEST_TYPE_MAIN_WINDOW,ModestMainWindow))
+#define MODEST_MAIN_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),MODEST_TYPE_MAIN_WINDOW,GtkWidget))
+#define MODEST_IS_MAIN_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),MODEST_TYPE_MAIN_WINDOW))
+#define MODEST_IS_MAIN_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass),MODEST_TYPE_MAIN_WINDOW))
+#define MODEST_MAIN_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj),MODEST_TYPE_MAIN_WINDOW,ModestMainWindowClass))
+
+typedef struct _ModestMainWindow ModestMainWindow;
+typedef struct _ModestMainWindowClass ModestMainWindowClass;
+
+
+struct _ModestMainWindow {
+ GtkWindow parent;
+ /* insert public members, if any */
+};
+
+struct _ModestMainWindowClass {
+ GtkWindowClass parent_class;
+ /* insert signal callback declarations, eg. */
+ /* void (* my_event) (ModestMainWindow* obj); */
+};
+
+
+
+/* member functions */
+GType modest_main_window_get_type (void) G_GNUC_CONST;
+
+/* typical parameter-less _new function */
+/* if this is a kind of GtkWidget, it should probably return at GtkWidget*, */
+/* otherwise probably a GObject*. */
+GtkWidget* modest_main_window_new (ModestConf *modest_conf,
+ ModestAccountMgr *modest_acc_mgr);
+
+/* fill in other public functions, eg.: */
+/* void modest_main_window_do_something (ModestMainWindow *self, const gchar* param); */
+/* gboolean modest_main_window_has_foo (ModestMainWindow *self, gint value); */
+
+
+G_END_DECLS
+
+#endif /* __MODEST_MAIN_WINDOW_H__ */
+
--- /dev/null
+/* modest-ui.c */
+
+/* insert (c)/licensing information) */
+
+#include <gtk/gtk.h>
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif /*HAVE_CONFIG_H*/
+
+#include "modest-main-window.h"
+#include "modest-edit-window.h"
+
+#include "../modest-ui.h"
+#include "../modest-window-mgr.h"
+#include "../modest-account-mgr.h"
+
+
+/* include other impl specific header files */
+
+/* 'private'/'protected' functions */
+static void modest_ui_class_init (ModestUIClass *klass);
+static void modest_ui_init (ModestUI *obj);
+static void modest_ui_finalize (GObject *obj);
+
+static void modest_ui_window_destroy (GtkWidget *win, gpointer data);
+static void modest_ui_last_window_closed (GObject *obj, gpointer data);
+
+
+
+/* list my signals */
+enum {
+ /* MY_SIGNAL_1, */
+ /* MY_SIGNAL_2, */
+ LAST_SIGNAL
+};
+
+
+typedef struct _ModestUIPrivate ModestUIPrivate;
+struct _ModestUIPrivate {
+
+ ModestConf *modest_conf;
+ ModestAccountMgr *modest_acc_mgr;
+ ModestWindowMgr *modest_window_mgr;
+
+ GtkWindow *main_window;
+ GSList* *edit_window_list;
+
+};
+#define MODEST_UI_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE((o), \
+ MODEST_TYPE_UI, \
+ ModestUIPrivate))
+/* globals */
+static GObjectClass *parent_class = NULL;
+
+/* uncomment the following if you have defined any signals */
+/* static guint signals[LAST_SIGNAL] = {0}; */
+
+GType
+modest_ui_get_type (void)
+{
+ static GType my_type = 0;
+ if (!my_type) {
+ static const GTypeInfo my_info = {
+ sizeof(ModestUIClass),
+ NULL, /* base init */
+ NULL, /* base finalize */
+ (GClassInitFunc) modest_ui_class_init,
+ NULL, /* class finalize */
+ NULL, /* class data */
+ sizeof(ModestUI),
+ 1, /* n_preallocs */
+ (GInstanceInitFunc) modest_ui_init,
+ };
+ my_type = g_type_register_static (G_TYPE_OBJECT,
+ "ModestUI",
+ &my_info, 0);
+ }
+ return my_type;
+}
+
+static void
+modest_ui_class_init (ModestUIClass *klass)
+{
+ GObjectClass *gobject_class;
+ gobject_class = (GObjectClass*) klass;
+
+ parent_class = g_type_class_peek_parent (klass);
+ gobject_class->finalize = modest_ui_finalize;
+
+ g_type_class_add_private (gobject_class, sizeof(ModestUIPrivate));
+
+ /* signal definitions go here, e.g.: */
+/* signals[MY_SIGNAL_1] = */
+/* g_signal_new ("my_signal_1",....); */
+/* signals[MY_SIGNAL_2] = */
+/* g_signal_new ("my_signal_2",....); */
+/* etc. */
+}
+
+static void
+modest_ui_init (ModestUI *obj)
+{
+ ModestUIPrivate *priv = MODEST_UI_GET_PRIVATE(obj);
+
+ priv->modest_acc_mgr = NULL;
+ priv->modest_conf = NULL;
+ priv->modest_window_mgr = NULL;
+
+}
+
+static void
+modest_ui_finalize (GObject *obj)
+{
+ ModestUIPrivate *priv = MODEST_UI_GET_PRIVATE(obj);
+
+ if (priv->modest_acc_mgr)
+ g_object_unref (priv->modest_acc_mgr);
+ priv->modest_acc_mgr = NULL;
+
+ if (priv->modest_conf)
+ g_object_unref (priv->modest_conf);
+ priv->modest_conf = NULL;
+
+ if (priv->modest_window_mgr)
+ g_object_unref (priv->modest_window_mgr);
+ priv->modest_window_mgr = NULL;
+}
+
+GObject*
+modest_ui_new (ModestConf *modest_conf)
+{
+ GObject *obj;
+ ModestUIPrivate *priv;
+ ModestAccountMgr *modest_acc_mgr;
+
+ g_return_val_if_fail (modest_conf, NULL);
+
+ obj = g_object_new(MODEST_TYPE_UI, NULL);
+ priv = MODEST_UI_GET_PRIVATE(obj);
+
+ modest_acc_mgr = MODEST_ACCOUNT_MGR(modest_account_mgr_new (modest_conf));
+ if (!modest_acc_mgr) {
+ g_warning ("could not create ModestAccountMgr instance");
+ g_object_unref (obj);
+ return NULL;
+ }
+
+ priv->modest_acc_mgr = modest_acc_mgr;
+ g_object_ref (priv->modest_conf = modest_conf);
+
+ priv->modest_window_mgr = MODEST_WINDOW_MGR(modest_window_mgr_new());
+ g_signal_connect (priv->modest_window_mgr, "last_window_closed",
+ G_CALLBACK(modest_ui_last_window_closed),
+ NULL);
+ return obj;
+}
+
+
+gboolean
+modest_ui_show_main_window (ModestUI *modest_ui)
+{
+ GtkWidget *win;
+ int height, width;
+ ModestUIPrivate *priv;
+
+ priv = MODEST_UI_GET_PRIVATE(modest_ui);
+
+ height = modest_conf_get_int (priv->modest_conf,
+ MODEST_CONF_MAIN_WINDOW_HEIGHT,NULL);
+ width = modest_conf_get_int (priv->modest_conf,
+ MODEST_CONF_MAIN_WINDOW_WIDTH,NULL);
+
+ win = modest_main_window_new (priv->modest_conf,
+ priv->modest_acc_mgr);
+ if (!win) {
+ g_warning ("could not create main window");
+ return FALSE;
+ }
+
+ modest_window_mgr_register (priv->modest_window_mgr,
+ G_OBJECT(win), MODEST_MAIN_WINDOW, 0);
+
+ g_signal_connect (win, "destroy", G_CALLBACK(modest_ui_window_destroy),
+ modest_ui);
+
+ gtk_widget_set_usize (GTK_WIDGET(win), height, width);
+ gtk_window_set_title (GTK_WINDOW(win), PACKAGE_STRING);
+
+ gtk_widget_show (win);
+ return TRUE;
+}
+
+
+gboolean
+modest_ui_show_edit_window (ModestUI *modest_ui, const gchar* to,
+ const gchar* cc, const gchar* bcc,
+ const gchar* subject, const gchar *body,
+ const GSList* att)
+{
+ GtkWidget *win;
+ ModestUIPrivate *priv;
+
+ priv = MODEST_UI_GET_PRIVATE(modest_ui);
+ int height = modest_conf_get_int (priv->modest_conf,
+ MODEST_CONF_EDIT_WINDOW_HEIGHT,NULL);
+ int width = modest_conf_get_int (priv->modest_conf,
+ MODEST_CONF_EDIT_WINDOW_WIDTH,NULL);
+
+ win = modest_edit_window_new (to, cc, bcc, subject, body, att);
+ if (!win) {
+ g_warning ("could not create edit window");
+ return FALSE;
+ }
+
+ modest_window_mgr_register (priv->modest_window_mgr,
+ G_OBJECT(win), MODEST_EDIT_WINDOW, 0);
+
+ g_signal_connect (win, "destroy", G_CALLBACK(modest_ui_window_destroy),
+ modest_ui);
+
+ gtk_widget_set_usize (GTK_WIDGET(win), height, width);
+ gtk_window_set_title (GTK_WINDOW(win),
+ subject ? subject : "Untitled");
+
+ gtk_widget_show (win);
+
+ return TRUE;
+}
+
+
+static void
+modest_ui_window_destroy (GtkWidget *win, gpointer data)
+{
+ ModestUIPrivate *priv;
+
+ g_return_if_fail (data);
+
+ priv = MODEST_UI_GET_PRIVATE((ModestUI*)data);
+ if (!modest_window_mgr_unregister (priv->modest_window_mgr, G_OBJECT(win)))
+ g_warning ("modest window mgr: failed to unregister %p",
+ G_OBJECT(win));
+}
+
+
+static void
+modest_ui_last_window_closed (GObject *obj, gpointer data)
+{
+ gtk_main_quit ();
+}
--- /dev/null
+#ifndef __MODEST_ACCOUNT_KEYS_H__
+#define __MODEST_ACCOUNT_KEYS_H__
+
+#include "modest-conf-keys.h"
+
+#define MODEST_CONF_DEFAULT_ACCOUNT "/default_account"
+
+
+#define MODEST_SERVER_ACCOUNT_NAMESPACE MODEST_CONF_NAMESPACE "/" "server_accounts"
+
+/* configuration key definitions for modest */
+#define MODEST_ACCOUNT_NAMESPACE MODEST_CONF_NAMESPACE "/" "accounts"
+
+/* per-account data */
+#define MODEST_ACCOUNT_DISPLAY_NAME "display_name" /* string */
+#define MODEST_ACCOUNT_STORE_ACCOUNT "store_account" /* string */
+#define MODEST_ACCOUNT_TRANSPORT_ACCOUNT "transport_account" /* string */
+
+/* server account keys */
+#define MODEST_ACCOUNT_PASSWORD "password" /* string */
+#define MODEST_ACCOUNT_HOSTNAME "hostname" /* string */
+#define MODEST_ACCOUNT_USERNAME "username" /* string */
+#define MODEST_ACCOUNT_PROTO "proto" /* string */
+
+
+#define MODEST_ACCOUNT_LEAVE_ON_SERVER "leave_on_server" /* boolean */ \
+#define MODEST_ACCOUNT_PREFERRED_CNX "preferred_cnx" /* string */
+
+#endif /*__MODEST_CONF_KEYS_H__*/
--- /dev/null
+/* modest-account-mgr.c */
+
+/* insert (c)/licensing information) */
+
+#include <string.h>
+#include "modest-account-mgr.h"
+
+/* 'private'/'protected' functions */
+static void modest_account_mgr_class_init (ModestAccountMgrClass *klass);
+static void modest_account_mgr_init (ModestAccountMgr *obj);
+static void modest_account_mgr_finalize (GObject *obj);
+
+static gchar* get_account_keyname (const gchar *accname, const gchar *name);
+
+/* list my signals */
+enum {
+ /* MY_SIGNAL_1, */
+ /* MY_SIGNAL_2, */
+ LAST_SIGNAL
+};
+
+typedef struct _ModestAccountMgrPrivate ModestAccountMgrPrivate;
+struct _ModestAccountMgrPrivate {
+ ModestConf *modest_conf;
+};
+#define MODEST_ACCOUNT_MGR_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE((o), \
+ MODEST_TYPE_ACCOUNT_MGR, \
+ ModestAccountMgrPrivate))
+/* globals */
+static GObjectClass *parent_class = NULL;
+
+/* uncomment the following if you have defined any signals */
+/* static guint signals[LAST_SIGNAL] = {0}; */
+
+GType
+modest_account_mgr_get_type (void)
+{
+ static GType my_type = 0;
+ if (!my_type) {
+ static const GTypeInfo my_info = {
+ sizeof(ModestAccountMgrClass),
+ NULL, /* base init */
+ NULL, /* base finalize */
+ (GClassInitFunc) modest_account_mgr_class_init,
+ NULL, /* class finalize */
+ NULL, /* class data */
+ sizeof(ModestAccountMgr),
+ 1, /* n_preallocs */
+ (GInstanceInitFunc) modest_account_mgr_init,
+ };
+
+ my_type = g_type_register_static (G_TYPE_OBJECT,
+ "ModestAccountMgr",
+ &my_info, 0);
+ }
+ return my_type;
+}
+
+static void
+modest_account_mgr_class_init (ModestAccountMgrClass *klass)
+{
+ GObjectClass *gobject_class;
+ gobject_class = (GObjectClass*) klass;
+
+ parent_class = g_type_class_peek_parent (klass);
+ gobject_class->finalize = modest_account_mgr_finalize;
+
+ g_type_class_add_private (gobject_class, sizeof(ModestAccountMgrPrivate));
+
+ /* signal definitions go here, e.g.: */
+/* signals[MY_SIGNAL_1] = */
+/* g_signal_new ("my_signal_1",....); */
+/* signals[MY_SIGNAL_2] = */
+/* g_signal_new ("my_signal_2",....); */
+/* etc. */
+}
+
+
+static void
+modest_account_mgr_init (ModestAccountMgr *obj)
+{
+ ModestAccountMgrPrivate *priv = MODEST_ACCOUNT_MGR_GET_PRIVATE(obj);
+ priv->modest_conf = NULL;
+}
+
+static void
+modest_account_mgr_finalize (GObject *obj)
+{
+ ModestAccountMgr *self = MODEST_ACCOUNT_MGR(obj);
+ ModestAccountMgrPrivate *priv = MODEST_ACCOUNT_MGR_GET_PRIVATE(self);
+
+ g_object_unref (G_OBJECT(priv->modest_conf));
+ priv->modest_conf = NULL;
+}
+
+GObject*
+modest_account_mgr_new (ModestConf *conf)
+{
+ GObject *obj;
+ ModestAccountMgrPrivate *priv;
+
+ g_return_val_if_fail (conf, NULL);
+
+ obj = G_OBJECT(g_object_new(MODEST_TYPE_ACCOUNT_MGR, NULL));
+ priv = MODEST_ACCOUNT_MGR_GET_PRIVATE(obj);
+
+ /*
+ * increase the ref count on the modest_conf. Normally, the
+ * ModestConf should outlive the ModestAccountMgr though
+ */
+ g_object_ref(G_OBJECT(priv->modest_conf = conf));
+ return obj;
+}
+
+
+
+gboolean
+modest_account_mgr_add_account (ModestAccountMgr *self, const gchar* name,
+ const gchar *store_account,
+ const gchar *transport_account,
+ GError **err)
+{
+ ModestAccountMgrPrivate *priv;
+ gchar *key;
+ gboolean retval;
+
+ g_return_val_if_fail (self, FALSE);
+ g_return_val_if_fail (name, FALSE);
+
+ if (modest_account_mgr_account_exists (self, name, err)) {
+ g_warning ("account already exists");
+ //return FALSE;
+ }
+ /*
+ * we create the account by adding an account 'dir', with the name <name>,
+ * and in that the 'display_name' string key
+ */
+ priv = MODEST_ACCOUNT_MGR_GET_PRIVATE(self);
+
+ key = get_account_keyname (name, MODEST_ACCOUNT_DISPLAY_NAME);
+ modest_conf_set_string (priv->modest_conf, key, name, err);
+ g_free (key);
+
+ if (store_account) {
+ key = get_account_keyname (name, MODEST_ACCOUNT_STORE_ACCOUNT);
+ modest_conf_set_string (priv->modest_conf, key, store_account, err);
+ g_free (key);
+ }
+
+ if (transport_account) {
+ key = get_account_keyname (name, MODEST_ACCOUNT_TRANSPORT_ACCOUNT);
+ modest_conf_set_string (priv->modest_conf, key, transport_account, err);
+ g_free (key);
+ }
+
+ return TRUE; /* TODO: error handling */
+}
+
+
+gboolean
+modest_account_mgr_remove_account (ModestAccountMgr *self, const gchar* name,
+ GError **err)
+{
+ ModestAccountMgrPrivate *priv;
+ gchar *key;
+ gboolean retval;
+
+ g_return_val_if_fail (self, FALSE);
+ g_return_val_if_fail (name, FALSE);
+
+ if (!modest_account_mgr_account_exists (self, name, err)) {
+ g_warning ("account doest not exist");
+ return FALSE;
+ }
+
+ priv = MODEST_ACCOUNT_MGR_GET_PRIVATE(self);
+ key = get_account_keyname (name, NULL);
+
+ retval = modest_conf_remove_key (priv->modest_conf, key, NULL);
+
+ g_free (key);
+ return retval;
+}
+
+
+static const gchar*
+null_means_empty(const gchar* str)
+{
+ return str ? str : "";
+}
+
+
+gboolean
+modest_account_mgr_add_server_account (ModestAccountMgr *self,
+ const gchar *name,
+ const gchar *hostname,
+ const gchar *username,
+ const gchar *password,
+ const gchar *proto)
+{
+ ModestAccountMgrPrivate *priv;
+ gchar *acckey, *key;
+
+ g_return_val_if_fail (self, FALSE);
+ g_return_val_if_fail (name, FALSE);
+
+ /* TODO: check already exists */
+
+ priv = MODEST_ACCOUNT_MGR_GET_PRIVATE(self);
+ acckey = g_strconcat (MODEST_SERVER_ACCOUNT_NAMESPACE, "/",
+ name, NULL);
+
+ if (modest_conf_key_exists(priv->modest_conf, acckey, NULL)) {
+ g_warning ("server account %s already exists", name);
+ g_free (acckey);
+ return FALSE;
+ }
+
+ /* hostname */
+ key = g_strconcat (acckey, "/", MODEST_ACCOUNT_HOSTNAME, NULL);
+ modest_conf_set_string (priv->modest_conf, key,
+ null_means_empty(hostname), NULL);
+ g_free (key);
+
+ /* username */
+ key = g_strconcat (acckey, "/", MODEST_ACCOUNT_USERNAME, NULL);
+ modest_conf_set_string (priv->modest_conf, key,
+ null_means_empty(username), NULL);
+ g_free (key);
+
+ /* password */
+ key = g_strconcat (acckey, "/", MODEST_ACCOUNT_PASSWORD, NULL);
+ modest_conf_set_string (priv->modest_conf, key,
+ null_means_empty(password), NULL);
+ g_free (key);
+
+ /* proto */
+ key = g_strconcat (acckey, "/", MODEST_ACCOUNT_PROTO, NULL);
+ modest_conf_set_string (priv->modest_conf, key,
+ null_means_empty(proto),
+ NULL);
+ g_free (key);
+
+ return TRUE; /* FIXME: better error checking */
+}
+
+gboolean
+modest_account_mgr_remove_server_account (ModestAccountMgr *self,
+ const gchar *name,
+ GError **err)
+{
+ ModestAccountMgrPrivate *priv;
+ gchar *acckey, *key;
+ gboolean retval;
+
+ g_return_val_if_fail (self, FALSE);
+ g_return_val_if_fail (name, FALSE);
+
+ priv = MODEST_ACCOUNT_MGR_GET_PRIVATE(self);
+
+ acckey = g_strconcat (MODEST_SERVER_ACCOUNT_NAMESPACE, "/",
+ name, NULL);
+
+ if (!modest_conf_key_exists(priv->modest_conf, acckey, NULL)) {
+ g_warning ("server account %s does not exist exist", name);
+ g_free (acckey);
+ return FALSE;
+ }
+
+ retval = modest_conf_remove_key (priv->modest_conf, acckey, NULL);
+ g_free (acckey);
+
+ return retval;
+}
+
+
+
+
+GSList*
+modest_account_mgr_server_account_names (ModestAccountMgr *self,
+ const gchar* account_name,
+ ModestProtoType type,
+ const gchar* proto,
+ gboolean only_enabled)
+{
+ GSList *accounts;
+ GSList *cursor;
+ ModestAccountMgrPrivate *priv;
+
+ g_return_val_if_fail (self, NULL);
+
+ priv = MODEST_ACCOUNT_MGR_GET_PRIVATE(self);
+ accounts = modest_conf_list_subkeys (priv->modest_conf,
+ MODEST_SERVER_ACCOUNT_NAMESPACE,
+ NULL);
+
+ /* no restrictions, return everything */
+ if (type == MODEST_PROTO_TYPE_ANY && !proto)
+ return accounts;
+
+ /* otherwise, filter out the none-matching ones */
+ cursor = accounts;
+ while (cursor) {
+ gchar *keyspace, *proto_key, *acc_proto;
+
+ keyspace = (gchar*) cursor->data;
+ proto_key = g_strconcat (keyspace, "/", MODEST_ACCOUNT_PROTO, NULL);
+ acc_proto = modest_conf_get_string (priv->modest_conf, proto_key,
+ NULL);
+ g_free (proto_key);
+
+ if ((!acc_proto) || /* proto not defined? */
+ (type != MODEST_PROTO_TYPE_ANY && /* proto type ... */
+ modest_proto_type (acc_proto) != type) || /* ... matches? */
+ (proto && strcmp(proto,acc_proto) != 0)) { /* proto matches? */
+ /* no match: remove from the list */
+ GSList *nxt = cursor->next;
+ g_free (acc_proto);
+ accounts = g_slist_delete_link (accounts, cursor);
+ cursor = nxt;
+ } else
+ cursor = cursor->next;
+ }
+
+ return accounts;
+}
+
+
+
+GSList*
+modest_account_mgr_account_names (ModestAccountMgr *self, GError **err)
+{
+ GSList *accounts, *cursor;
+ ModestAccountMgrPrivate *priv;
+
+ g_return_val_if_fail (self, NULL);
+
+ priv = MODEST_ACCOUNT_MGR_GET_PRIVATE(self);
+
+ return modest_conf_list_subkeys (priv->modest_conf,
+ MODEST_ACCOUNT_NAMESPACE,
+ err);
+}
+
+
+gchar*
+modest_account_mgr_get_account_string (ModestAccountMgr *self, const gchar *name,
+ const gchar *key, GError **err)
+{
+ ModestAccountMgrPrivate *priv;
+
+ gchar *keyname;
+ gchar *retval;
+
+ g_return_val_if_fail (self, NULL);
+ g_return_val_if_fail (name, NULL);
+ g_return_val_if_fail (key, NULL);
+
+ keyname = get_account_keyname (name, key);
+
+ g_warning ("===> %s", keyname);
+
+ priv = MODEST_ACCOUNT_MGR_GET_PRIVATE(self);
+
+ retval = modest_conf_get_string (priv->modest_conf,
+ keyname, err);
+
+ g_free (keyname);
+ return retval;
+}
+
+
+
+gint
+modest_account_mgr_get_account_int (ModestAccountMgr *self, const gchar *name,
+ const gchar *key, GError **err)
+{
+ ModestAccountMgrPrivate *priv;
+
+ gchar *keyname;
+ gint retval;
+
+ g_return_val_if_fail (self, -1);
+ g_return_val_if_fail (name, -1);
+ g_return_val_if_fail (key, -1);
+
+ keyname = get_account_keyname (name, key);
+ priv = MODEST_ACCOUNT_MGR_GET_PRIVATE(self);
+ retval = modest_conf_get_int (priv->modest_conf,keyname,err);
+
+ g_free (keyname);
+ return retval;
+}
+
+
+gboolean modest_account_mgr_get_account_bool (ModestAccountMgr *self, const gchar *name,
+ const gchar *key, GError **err)
+{
+ ModestAccountMgrPrivate *priv;
+
+ gchar *keyname;
+ gboolean retval;
+
+ g_return_val_if_fail (self, FALSE);
+ g_return_val_if_fail (name, FALSE);
+ g_return_val_if_fail (key, FALSE);
+
+ keyname = get_account_keyname (name, key);
+ priv = MODEST_ACCOUNT_MGR_GET_PRIVATE(self);
+ retval = modest_conf_get_bool (priv->modest_conf,keyname,err);
+
+ g_free (keyname);
+ return retval;
+}
+
+
+
+gboolean
+modest_account_mgr_set_account_string (ModestAccountMgr *self, const gchar *name,
+ const gchar *key, const gchar* val,
+ GError **err)
+{
+ ModestAccountMgrPrivate *priv;
+
+ gchar *keyname;
+ gboolean retval;
+
+ g_return_val_if_fail (self, FALSE);
+ g_return_val_if_fail (name, FALSE);
+ g_return_val_if_fail (key, FALSE);
+
+ keyname = get_account_keyname (name, key);
+ priv = MODEST_ACCOUNT_MGR_GET_PRIVATE(self);
+ retval = modest_conf_set_string (priv->modest_conf,keyname,val,err);
+
+ g_free (keyname);
+ return retval;
+}
+
+
+
+gboolean
+modest_account_mgr_set_account_int (ModestAccountMgr *self, const gchar *name,
+ const gchar *key, gint val, GError **err)
+{
+ ModestAccountMgrPrivate *priv;
+
+ gchar *keyname;
+ gboolean retval;
+
+ g_return_val_if_fail (self, -1);
+ g_return_val_if_fail (name, -1);
+ g_return_val_if_fail (key, -1);
+
+ keyname = get_account_keyname (name, key);
+ priv = MODEST_ACCOUNT_MGR_GET_PRIVATE(self);
+ retval = modest_conf_set_int (priv->modest_conf,keyname,val,err);
+
+ g_free (keyname);
+ return retval;
+}
+
+
+
+
+gboolean
+modest_account_mgr_set_account_bool (ModestAccountMgr *self, const gchar *name,
+ const gchar *key, gboolean val, GError **err)
+{
+ ModestAccountMgrPrivate *priv;
+
+ gchar *keyname;
+ gboolean retval;
+
+ g_return_val_if_fail (self, FALSE);
+ g_return_val_if_fail (name, FALSE);
+ g_return_val_if_fail (key, FALSE);
+
+ keyname = get_account_keyname (name, key);
+ priv = MODEST_ACCOUNT_MGR_GET_PRIVATE(self);
+ retval = modest_conf_set_bool (priv->modest_conf,keyname,val,err);
+
+ g_free (keyname);
+ return retval;
+}
+
+
+gboolean
+modest_account_mgr_account_exists (ModestAccountMgr *self, const gchar *name,
+ GError **err)
+{
+ ModestAccountMgrPrivate *priv;
+
+ gchar *keyname;
+ gboolean retval;
+
+ g_return_val_if_fail (self, FALSE);
+ g_return_val_if_fail (name, FALSE);
+
+ keyname = get_account_keyname (name, NULL);
+
+ priv = MODEST_ACCOUNT_MGR_GET_PRIVATE(self);
+ retval = modest_conf_key_exists (priv->modest_conf,keyname,err);
+
+ g_free (keyname);
+ return retval;
+}
+
+
+
+/* must be freed by caller */
+static gchar*
+get_account_keyname (const gchar *accname, const gchar *name)
+{
+ if (name)
+ return g_strconcat
+ (accname, "/", name, NULL);
+ else
+ return g_strconcat
+ (accname, NULL);
+}
+
--- /dev/null
+/* modest-account-mgr.h */
+/* insert (c)/licensing information) */
+
+#ifndef __MODEST_ACCOUNT_MGR_H__
+#define __MODEST_ACCOUNT_MGR_H__
+
+#include <glib-object.h>
+#include "modest-conf.h"
+#include "modest-account-keys.h"
+#include "modest-proto.h"
+
+G_BEGIN_DECLS
+
+/* convenience macros */
+#define MODEST_TYPE_ACCOUNT_MGR (modest_account_mgr_get_type())
+#define MODEST_ACCOUNT_MGR(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),MODEST_TYPE_ACCOUNT_MGR,ModestAccountMgr))
+#define MODEST_ACCOUNT_MGR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),MODEST_TYPE_ACCOUNT_MGR,GObject))
+#define MODEST_IS_ACCOUNT_MGR(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),MODEST_TYPE_ACCOUNT_MGR))
+#define MODEST_IS_ACCOUNT_MGR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass),MODEST_TYPE_ACCOUNT_MGR))
+#define MODEST_ACCOUNT_MGR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj),MODEST_TYPE_ACCOUNT_MGR,ModestAccountMgrClass))
+
+typedef struct _ModestAccountMgr ModestAccountMgr;
+typedef struct _ModestAccountMgrClass ModestAccountMgrClass;
+
+
+
+struct _ModestAccountMgr {
+ GObject parent;
+ /* insert public members, if any */
+};
+
+struct _ModestAccountMgrClass {
+ GObjectClass parent_class;
+ /* insert signal callback declarations, eg. */
+ /* void (* my_event) (ModestAccountMgr* obj); */
+};
+
+
+/**
+ * modest_ui_get_type:
+ *
+ * get the GType for ModestAccountMgr
+ *
+ * Returns: the GType
+ */
+GType modest_account_mgr_get_type (void) G_GNUC_CONST;
+
+
+/**
+ * modest_account_mgr_new:
+ * @modest_conf: a ModestConf instance
+ *
+ * Returns: a new ModestAccountMgr, or NULL in case of error
+ */
+GObject* modest_account_mgr_new (ModestConf *modest_conf);
+
+
+
+/**
+ * modest_account_mgr_add_account:
+ * @self: a ModestAccountMgr instance
+ * @name: the name of the account to create
+ * @store: the store account (ie. POP/IMAP)
+ * @transport: the transport account (ie. sendmail/SMTP)
+ * @err: a GError ptr, or NULL to ignore.
+ *
+ * create a new account. the account with @name should not already exist
+ *
+ * Returns: TRUE if the creation succeeded, FALSE otherwise,
+ * @err gives details in case of error
+ */
+gboolean modest_account_mgr_add_account (ModestAccountMgr *self,
+ const gchar* name,
+ const gchar* store_name,
+ const gchar* transport_name,
+ GError **err);
+/**
+ * modest_account_mgr_remove_account:
+ * @self: a ModestAccountMgr instance
+ * @name: the name of the account to remove
+ * @err: a GError ptr, or NULL to ignore.
+ *
+ * remove an existing account. the account with @name should already exist
+ *
+ * Returns: TRUE if the creation succeeded, FALSE otherwise,
+ * @err gives details in case of error
+ */
+gboolean modest_account_mgr_remove_account (ModestAccountMgr *self, const gchar* name,
+ GError **err);
+
+
+
+/**
+ * modest_account_mgr_add_server_account:
+ * @self: a ModestAccountMgr instance
+ * @hostname: the hostname
+ * @username: the username
+ * @password: the password
+ * @proto: the prototype
+ * @err: a GError ptr, or NULL to ignore.
+ *
+ * add a server account to the configuration
+ * the server account with @name should not already exist
+ *
+ * Returns: TRUE if succeeded, FALSE otherwise,
+ * @err gives details in case of error
+ */
+gboolean modest_account_mgr_add_server_account (ModestAccountMgr *self,
+ const gchar *name,
+ const gchar *hostname,
+ const gchar *username,
+ const gchar *password,
+ const gchar *proto);
+
+/**
+ * modest_account_mgr_remove_server_account:
+ * @self: a ModestAccountMgr instance
+ * @name: the name for the server account
+ * @err: a GError ptr, or NULL to ignore.
+ *
+ * remove a server account from the configuration
+ * the server account with @name should exist
+ *
+ * Returns: TRUE if the removal succeeded, FALSE otherwise,
+ * @err gives details in case of error
+ */
+gboolean modest_account_mgr_remove_server_account (ModestAccountMgr *self,
+ const gchar *name,
+ GError **err);
+
+
+/**
+ * modest_account_mgr_account_names:
+ * @self: a ModestAccountMgr instance
+ * @err: a GError ptr, or NULL to ignore.
+ *
+ * list all account names
+ *
+ * Returns: a newly allocated list of account names, or NULL in case of error or
+ * if there are no accounts. The caller must free the returned GSList
+ * @err gives details in case of error
+ */
+GSList* modest_account_mgr_account_names (ModestAccountMgr *self, GError **err);
+
+
+/**
+ * modest_account_mgr_server_account_names:
+ * @self: a ModestAccountMgr instance
+ * @account_name: get only server accounts for @account_name, or NULL for any
+ * @type: get only server accounts from protocol type @type, or MODEST_PROTO_TYPE_ANY
+ * @proto: get only server account with protocol @proto, or NULL for any
+ * @only_enable: get only enable server account if TRUE
+ *
+ * list all the server account names
+ *
+ * Returns: a newly allocated list of server account names, or NULL in case of
+ * error or if there are no server accounts. The caller must free the returned GSList
+ */
+GSList* modest_account_mgr_server_account_names (ModestAccountMgr *self,
+ const gchar* account_name,
+ ModestProtoType type,
+ const gchar* proto,
+ gboolean only_enabled);
+
+/**
+ * modest_account_mgr_account_exists:
+ * @self: a ModestAccountMgr instance
+ * @err: a GError ptr, or NULL to ignore.
+ *
+ * check whether account @name exists
+ *
+ * Returns: TRUE if the account exists, FALSE otherwise (or in case of error)
+ * @err gives details in case of error
+ */
+gboolean modest_account_mgr_account_exists (ModestAccountMgr *self,
+ const gchar *name,
+ GError **err);
+
+/* account specific functions */
+
+
+
+/**
+ * modest_account_mgr_get_account_string:
+ * @self: self a ModestAccountMgr instance
+ * @name: the name of the account
+ * @key: the key of the value to retrieve
+ * @err: a GError ptr, or NULL to ignore.
+ *
+ * get a config string from some account
+ *
+ * Returns: a newly allocated string with the value for the key,
+ * or NULL in case of error. @err gives details in case of error
+ */
+gchar* modest_account_mgr_get_account_string (ModestAccountMgr *self,
+ const gchar *name,
+ const gchar *key, GError **err);
+/**
+ * modest_account_mgr_get_account_int:
+ * @self: self a ModestAccountMgr instance
+ * @name: the name of the account
+ * @key: the key of the value to retrieve
+ * @err: a GError ptr, or NULL to ignore.
+ *
+ * get a config int from some account
+ *
+ * Returns: an integer with the value for the key, or -1 in case of
+ * error (but of course -1 does not necessarily imply an error)
+ * @err gives details in case of error
+ */
+gint modest_account_mgr_get_account_int (ModestAccountMgr *self,
+ const gchar *name,
+ const gchar *key, GError **err);
+
+
+/**
+ * modest_account_mgr_get_account_bool:
+ * @self: self a ModestAccountMgr instance
+ * @name: the name of the account
+ * @key: the key of the value to retrieve
+ * @err: a GError ptr, or NULL to ignore.
+ *
+ * get a config boolean from some account
+ *
+ * Returns: an boolean with the value for the key, or FALSE in case of
+ * error (but of course FALSE does not necessarily imply an error)
+ * @err gives details in case of error
+ */
+gboolean modest_account_mgr_get_account_bool (ModestAccountMgr *self,
+ const gchar *name,
+ const gchar *key, GError **err);
+
+
+/**
+ * modest_account_mgr_set_account_string:
+ * @self: self a ModestAccountMgr instance
+ * @name: the name of the account
+ * @key: the key of the value to set
+ * @val: the value to set
+ * @err: a GError ptr, or NULL to ignore.
+ *
+ * set a config string for some account
+ *
+ * Returns: TRUE if setting the value succeeded, or FALSE in case of error.
+ * @err gives details in case of error
+ */
+gboolean modest_account_mgr_set_account_string (ModestAccountMgr *self,
+ const gchar *name,
+ const gchar *key, const gchar* val,
+ GError **err);
+/**
+ * modest_account_mgr_set_account_int:
+ * @self: self a ModestAccountMgr instance
+ * @name: the name of the account
+ * @key: the key of the value to set
+ * @val: the value to set
+ * @err: a GError ptr, or NULL to ignore.
+ *
+ * set a config int for some account
+ *
+ * Returns: TRUE if setting the value succeeded, or FALSE in case of error.
+ * @err gives details in case of error
+ */
+gboolean modest_account_mgr_set_account_int (ModestAccountMgr *self,
+ const gchar *name,
+ const gchar *key, gint val,
+ GError **err);
+
+/**
+ * modest_account_mgr_set_account_bool:
+ * @self: self a ModestAccountMgr instance
+ * @name: the name of the account
+ * @key: the key of the value to set
+ * @val: the value to set
+ * @err: a GError ptr, or NULL to ignore.
+ *
+ * set a config bool for some account
+ *
+ * Returns: TRUE if setting the value succeeded, or FALSE in case of error.
+ * @err gives details in case of error
+ */
+gboolean modest_account_mgr_set_account_bool (ModestAccountMgr *self,
+ const gchar *name,
+ const gchar *key, gboolean val,
+ GError **err);
+G_END_DECLS
+
+#endif /* __MODEST_ACCOUNT_MGR_H__ */
+
--- /dev/null
+/* modest-conf-gconf.c */
+/* GConf implementation of ModestConf */
+
+/* insert (c)/licensing information) */
+
+#include "modest-conf.h"
+#include <gconf/gconf-client.h>
+
+
+/* 'private'/'protected' functions */
+static void modest_conf_class_init (ModestConfClass *klass);
+static void modest_conf_init (ModestConf *obj);
+static void modest_conf_finalize (GObject *obj);
+
+static void modest_conf_on_change (GConfClient *client, guint conn_id,
+ GConfEntry *entry, gpointer data);
+/* list my signals */
+enum {
+ /* MY_SIGNAL_1, */
+ /* MY_SIGNAL_2, */
+ LAST_SIGNAL
+};
+
+typedef struct _ModestConfPrivate ModestConfPrivate;
+struct _ModestConfPrivate {
+ GConfClient *gconf_client;
+};
+#define MODEST_CONF_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE((o), \
+ MODEST_TYPE_CONF, \
+ ModestConfPrivate))
+/* globals */
+static GObjectClass *parent_class = NULL;
+
+/* uncomment the following if you have defined any signals */
+/* static guint signals[LAST_SIGNAL] = {0}; */
+
+GType
+modest_conf_get_type (void)
+{
+ static GType my_type = 0;
+ if (!my_type) {
+ static const GTypeInfo my_info = {
+ sizeof(ModestConfClass),
+ NULL, /* base init */
+ NULL, /* base finalize */
+ (GClassInitFunc) modest_conf_class_init,
+ NULL, /* class finalize */
+ NULL, /* class data */
+ sizeof(ModestConf),
+ 1, /* n_preallocs */
+ (GInstanceInitFunc) modest_conf_init,
+ };
+ my_type = g_type_register_static (G_TYPE_OBJECT,
+ "ModestConf",
+ &my_info, 0);
+ }
+ return my_type;
+}
+
+static void
+modest_conf_class_init (ModestConfClass *klass)
+{
+ GObjectClass *gobject_class;
+ gobject_class = (GObjectClass*) klass;
+
+ parent_class = g_type_class_peek_parent (klass);
+ gobject_class->finalize = modest_conf_finalize;
+
+ g_type_class_add_private (gobject_class, sizeof(ModestConfPrivate));
+
+ /* signal definitions go here, e.g.: */
+/* signals[MY_SIGNAL_1] = */
+/* g_signal_new ("my_signal_1",....); */
+/* signals[MY_SIGNAL_2] = */
+/* g_signal_new ("my_signal_2",....); */
+/* etc. */
+}
+
+static void
+modest_conf_init (ModestConf *obj)
+{
+ GConfClient *conf = NULL;
+ ModestConfPrivate *priv = MODEST_CONF_GET_PRIVATE(obj);
+ GError *err = NULL;
+
+ priv->gconf_client = NULL;
+
+ conf = gconf_client_get_default ();
+ if (!conf) {
+ g_warning ("could not get gconf client");
+ return;
+ }
+
+ /* FIXME: is PRELOAD_NONE the most efficient? */
+ gconf_client_add_dir (conf,MODEST_CONF_NAMESPACE,
+ GCONF_CLIENT_PRELOAD_NONE,&err);
+ if (err) {
+ g_warning ("error with gconf_client_add_dir: %d:%s",
+ err->code, err->message);
+ g_object_unref (conf);
+ g_error_free (err);
+ return;
+ }
+
+ gconf_client_notify_add (conf, MODEST_CONF_NAMESPACE,
+ modest_conf_on_change,
+ obj, NULL, &err);
+ if (err) {
+ g_warning ("error with gconf_client_notify_add: %d:%s",
+ err->code, err->message);
+ g_object_unref (conf);
+ g_error_free (err);
+ return;
+ }
+
+ /* all went well! */
+ priv->gconf_client = conf;
+ return;
+}
+
+static void
+modest_conf_finalize (GObject *obj)
+{
+ ModestConfPrivate *priv = MODEST_CONF_GET_PRIVATE(obj);
+ if (priv->gconf_client) {
+ gconf_client_suggest_sync (priv->gconf_client, NULL);
+ g_object_unref (priv->gconf_client);
+ }
+}
+
+GObject*
+modest_conf_new (void)
+{
+ ModestConf *conf = MODEST_CONF(g_object_new(MODEST_TYPE_CONF, NULL));
+ if (!conf) {
+ g_warning ("failed to init ModestConf (GConf)");
+ return NULL;
+ }
+
+ ModestConfPrivate *priv = MODEST_CONF_GET_PRIVATE(conf);
+ if (!priv->gconf_client) {
+ g_warning ("failed to init gconf");
+ g_object_unref (conf);
+ return NULL;
+ }
+
+ return G_OBJECT(conf);
+}
+
+
+gchar*
+modest_conf_get_string (ModestConf* self, const gchar* key, GError **err)
+{
+ ModestConfPrivate *priv;
+
+ g_return_val_if_fail (self, NULL);
+ g_return_val_if_fail (key, NULL);
+
+ priv = MODEST_CONF_GET_PRIVATE(self);
+ return gconf_client_get_string (priv->gconf_client, key, err);
+}
+
+
+gint
+modest_conf_get_int (ModestConf* self, const gchar* key, GError **err)
+{
+ ModestConfPrivate *priv;
+
+ g_return_val_if_fail (self, -1);
+ g_return_val_if_fail (key, -1);
+
+ priv = MODEST_CONF_GET_PRIVATE(self);
+
+ return gconf_client_get_int (priv->gconf_client, key, err);
+}
+
+
+gboolean
+modest_conf_get_bool (ModestConf* self, const gchar* key, GError **err)
+{
+ ModestConfPrivate *priv;
+
+ g_return_val_if_fail (self, FALSE);
+ g_return_val_if_fail (key, FALSE);
+
+ priv = MODEST_CONF_GET_PRIVATE(self);
+
+ return gconf_client_get_bool (priv->gconf_client, key, err);
+}
+
+
+gboolean
+modest_conf_set_string (ModestConf* self, const gchar* key, const gchar* val,
+ GError **err)
+{
+ ModestConfPrivate *priv;
+
+ g_return_val_if_fail (self,FALSE);
+ g_return_val_if_fail (key, FALSE);
+
+ priv = MODEST_CONF_GET_PRIVATE(self);
+
+ if (!gconf_client_key_is_writable(priv->gconf_client,key,err)) {
+ g_warning ("'%s' is not writable", key);
+ return FALSE;
+ }
+
+ return gconf_client_set_string (priv->gconf_client, key, val, err);
+}
+
+
+gboolean
+modest_conf_set_int (ModestConf* self, const gchar* key, gint val,
+ GError **err)
+{
+ ModestConfPrivate *priv;
+
+ g_return_val_if_fail (self,FALSE);
+ g_return_val_if_fail (key, FALSE);
+
+ priv = MODEST_CONF_GET_PRIVATE(self);
+
+ if (!gconf_client_key_is_writable(priv->gconf_client,key,err)) {
+ g_warning ("'%s' is not writable", key);
+ return FALSE;
+ }
+
+ return gconf_client_set_int (priv->gconf_client, key, val, err);
+}
+
+
+gboolean
+modest_conf_set_bool (ModestConf* self, const gchar* key, gboolean val,
+ GError **err)
+{
+ ModestConfPrivate *priv;
+
+ g_return_val_if_fail (self,FALSE);
+ g_return_val_if_fail (key, FALSE);
+
+ priv = MODEST_CONF_GET_PRIVATE(self);
+
+ if (!gconf_client_key_is_writable(priv->gconf_client,key, err)) {
+ g_warning ("'%s' is not writable", key);
+ return FALSE;
+ }
+
+ return gconf_client_set_bool (priv->gconf_client,key,val, err);
+}
+
+
+
+
+GSList*
+modest_conf_list_subkeys (ModestConf* self, const gchar* key, GError **err)
+{
+ ModestConfPrivate *priv;
+
+ g_return_val_if_fail (self,FALSE);
+ g_return_val_if_fail (key, FALSE);
+
+ priv = MODEST_CONF_GET_PRIVATE(self);
+
+ return gconf_client_all_dirs (priv->gconf_client,key,err);
+}
+
+
+gboolean
+modest_conf_remove_key (ModestConf* self, const gchar* key, GError **err)
+{
+ ModestConfPrivate *priv;
+
+ g_return_val_if_fail (self,FALSE);
+ g_return_val_if_fail (key, FALSE);
+
+ priv = MODEST_CONF_GET_PRIVATE(self);
+
+ return gconf_client_recursive_unset (priv->gconf_client,key,0,err);
+}
+
+
+
+
+gboolean
+modest_conf_key_exists (ModestConf* self, const gchar* key, GError **err)
+{
+ ModestConfPrivate *priv;
+
+ g_return_val_if_fail (self,FALSE);
+ g_return_val_if_fail (key, FALSE);
+
+ priv = MODEST_CONF_GET_PRIVATE(self);
+
+ return gconf_client_dir_exists (priv->gconf_client,key,err);
+}
+
+
+
+
+
+static void
+modest_conf_on_change (GConfClient *client, guint conn_id, GConfEntry *entry,
+ gpointer data)
+{
+ /* FIXME: emit a signal here */
+
+ if (!entry->value)
+ g_print ("modest: key '%s' unset\n",
+ gconf_entry_get_key (entry));
+ else {
+ gchar *val = gconf_value_to_string (gconf_entry_get_value(entry));
+ g_print ("modest: key '%s' set to '%s'\n",
+ gconf_entry_get_key (entry), val);
+ g_free (val);
+ }
+}
--- /dev/null
+#ifndef __MODEST_CONF_KEYS_H__
+#define __MODEST_CONF_KEYS_H__
+
+/* configuration key definitions for modest */
+#define MODEST_CONF_NAMESPACE "/apps/modest"
+
+#define MODEST_CONF_USE_EXT_EDITOR MODEST_CONF_NAMESPACE "/use_ext_editor" /* boolean */
+#define MODEST_CONF_EXT_EDITOR MODEST_CONF_NAMESPACE "/ext_editor" /* string */
+
+#define MODEST_CONF_MAIN_WINDOW_HEIGHT MODEST_CONF_NAMESPACE "/main_window_height" /* int */
+#define MODEST_CONF_MAIN_WINDOW_HEIGHT_DEFAULT 800 /* int */
+
+#define MODEST_CONF_MAIN_WINDOW_WIDTH MODEST_CONF_NAMESPACE "/main_window_width" /* int */
+#define MODEST_CONF_MAIN_WINDOW_WIDTH_DEFAULT 480
+
+#define MODEST_CONF_EDIT_WINDOW_HEIGHT MODEST_CONF_NAMESPACE "/edit_window_height" /* int */
+#define MODEST_CONF_EDIT_WINDOW_HEIGHT_DEFAULT 800 /* int */
+
+#define MODEST_CONF_EDIT_WINDOW_WIDTH MODEST_CONF_NAMESPACE "/edit_window_width" /* int */
+#define MODEST_CONF_EDIT_WINDOW_WIDTH_DEFAULT 480
+
+
+
+
+
+#endif /*__MODEST_CONF_KEYS_H__*/
--- /dev/null
+/*
+ * modest-conf.h
+ */
+
+#ifndef __MODEST_CONF_H__
+#define __MODEST_CONF_H__
+
+#include <glib-object.h>
+#include "modest-conf-keys.h"
+
+G_BEGIN_DECLS
+
+/* convenience macros */
+#define MODEST_TYPE_CONF (modest_conf_get_type())
+#define MODEST_CONF(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),MODEST_TYPE_CONF,ModestConf))
+#define MODEST_CONF_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),MODEST_TYPE_CONF,GObject))
+#define MODEST_IS_CONF(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),MODEST_TYPE_CONF))
+#define MODEST_IS_CONF_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass),MODEST_TYPE_CONF))
+#define MODEST_CONF_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj),MODEST_TYPE_CONF,ModestConfClass))
+
+typedef struct _ModestConf ModestConf;
+typedef struct _ModestConfClass ModestConfClass;
+
+struct _ModestConf {
+ GObject parent;
+};
+
+struct _ModestConfClass {
+ GObjectClass parent_class;
+ /* insert signal callback declarations, eg. */
+ /* void (* my_event) (ModestConf* obj); */
+};
+
+
+/**
+ * modest_conf_get_type:
+ *
+ * get the GType for ModestConf
+ *
+ * Returns: the GType
+ */
+GType modest_conf_get_type (void) G_GNUC_CONST;
+
+
+/**
+ * modest_conf_new:
+ *
+ * create a new modest ModestConf object.
+ *
+ * Returns: a new ModestConf instance, or NULL in case
+ * of any error
+ */
+GObject* modest_conf_new (void);
+
+
+/**
+ * modest_conf_get_string:
+ * @self: self a ModestConf instance
+ * @key: the key of the value to retrieve
+ * @err: a GError ptr, or NULL to ignore.
+ *
+ * get a string from the configuration system
+ *
+ * Returns: a newly allocated string with the value for the key,
+ * or NULL in case of error. @err gives details in case of error
+ */
+gchar* modest_conf_get_string (ModestConf* self, const gchar* key, GError **err);
+
+
+/**
+ * modest_conf_get_int:
+ * @self: self a ModestConf instance
+ * @key: the key of the value to retrieve
+ * @err: a GError ptr, or NULL to ignore.
+ *
+ * get an integer from the configuration system
+ *
+ * Returns: an integer with the value for the key, or -1 in case of error
+ * (of course, -1 can also be returned in non-error cases).
+ * @err gives details in case of error
+ */
+int modest_conf_get_int (ModestConf* self, const gchar* key, GError **err);
+
+
+/**
+ * modest_conf_get_bool:
+ * @self: self a ModestConf instance
+ * @key: the key of the value to retrieve
+ * @err: a GError ptr, or NULL to ignore.
+ *
+ * get a boolean value from the configuration system
+ *
+ * Returns: a boolean value with the value for the key, or -1 in case of error
+ * (of course, -1 can also be returned in non-error cases).
+ * @err gives details in case of error
+ */
+gboolean modest_conf_get_bool (ModestConf* self, const gchar* key, GError **err);
+
+
+/**
+ * modest_conf_set_string:
+ * @self: a ModestConf instance
+ * @key: the key of the value to set
+ * @val: the value to set
+ * @err: a GError ptr, or NULL if not interested.
+ *
+ * store a string value in the configuration system
+ *
+ * Returns: TRUE if succeeded or FALSE in case of error.
+ * @err gives details in case of error
+ */
+gboolean modest_conf_set_string (ModestConf* self, const gchar* key, const gchar *val,
+ GError **err);
+
+/**
+ * modest_conf_set_int:
+ * @self: a ModestConf instance
+ * @key: the key of the value to set
+ * @val: the value to set
+ * @err: a GError ptr, or NULL if not interested.
+ *
+ * store an integer value in the configuration system
+ *
+ * Returns: TRUE if succeeded or FALSE in case of error.
+ * @err gives details in case of error
+ */
+gboolean modest_conf_set_int (ModestConf* self, const gchar* key, int val,
+ GError **err);
+
+/**
+ * modest_conf_set_bool:
+ * @self: a ModestConf instance
+ * @key: the key of the value to set
+ * @val: the value to set
+ * @err: a GError ptr, or NULL if not interested.
+ *
+ * store a boolean value in the configuration system
+ *
+ * Returns: TRUE if succeeded or FALSE in case of error.
+ * @err gives details in case of error
+ */
+gboolean modest_conf_set_bool (ModestConf* self, const gchar* key, gboolean val,
+ GError **err);
+
+
+/**
+ * modest_conf_list_subkeys:
+ * @self: a ModestConf instance
+ * @key: the key whose subkeys will be listed
+ * @err: a GError ptr, or NULL if not interested.
+ *
+ * list all the subkeys for a given key
+ *
+ * Returns: a newly allocated list or NULL in case of error
+ * the returned GSList must be freed by the caller
+ * @err gives details in case of error
+ */
+GSList* modest_conf_list_subkeys (ModestConf* self, const gchar* key,
+ GError **err);
+
+
+/**
+ * modest_conf_remove_key:
+ * @self: a ModestConf instance
+ * @key: the key to remove
+ * @err: a GError ptr, or NULL if not interested.
+ *
+ * attempts to remove @key and all its subkeys
+ *
+ * Returns: TRUE if succeeded or FALSE in case of error.
+ * @err gives details in case of error
+ */
+gboolean modest_conf_remove_key (ModestConf* self, const gchar* key, GError **err);
+
+
+/**
+ * modest_conf_key_exists:
+ * @self: a ModestConf instance
+ * @key: the key to remove
+ * @err: a GError ptr, or NULL if not interested.
+ *
+ * checks if the given key exists in the configuration system
+ *
+ * Returns: TRUE if exists, FALSE otherwise.
+ * @err gives details in case of error
+ */
+gboolean modest_conf_key_exists (ModestConf* self, const gchar* key, GError **err);
+
+
+G_END_DECLS
+
+#endif /* __MODEST_CONF_H__ */
+
--- /dev/null
+/* modest-main.c -- part of modest */
+#include <glib.h>
+
+#include "modest-conf.h"
+#include "modest-account-mgr.h"
+#include "modest-ui.h"
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif /*HAVE_CONFIG_H*/
+#include <gtk/gtk.h>
+
+static void install_basic_conf_settings (ModestConf *conf);
+static void install_test_account (ModestConf *conf);
+
+
+int
+main (int argc, char *argv[])
+{
+ GOptionContext *context = NULL;
+ ModestConf *modest_conf = NULL;
+ ModestUI *modest_ui = NULL;
+
+ GError *err = NULL;
+ int retval = 0;
+
+ static gboolean update, debug, reinstall;
+ static gchar *mailto, *subject, *bcc, *cc, *body;
+
+ static GOptionEntry options[] = {
+ { "debug", 'd', 0, G_OPTION_ARG_NONE, &debug,
+ "Run in debug mode" },
+ { "update", 'u', 0, G_OPTION_ARG_NONE, &update,
+ "Send/receive all accounts and exit"},
+ { "mailto", 'm', 0, G_OPTION_ARG_STRING, &mailto,
+ "Start writing a new email to <addresses>"},
+ { "subject", 's', 0, G_OPTION_ARG_STRING, &subject,
+ "Subject for a new mail"},
+ { "body", 'b', 0, G_OPTION_ARG_STRING, &body,
+ "Body for a new email"},
+ { "cc", 0, 0, G_OPTION_ARG_STRING, &cc,
+ "CC-addresses for a new mail (comma-separated)"},
+ { "bcc", 0, 0, G_OPTION_ARG_STRING, &bcc,
+ "BCC-adresses for a new mail (comma-separated)"},
+ { "reinstall-factory-settings", 0, 0, G_OPTION_ARG_NONE, &reinstall,
+ "Delete all settings and start over (*DESTRUCTIVE*)"
+ },
+ { NULL }
+ };
+
+ g_type_init ();
+
+ context = g_option_context_new (NULL);
+ g_option_context_add_main_entries (context, options, NULL);
+
+ if (!g_option_context_parse (context, &argc, &argv, &err)) {
+ g_printerr ("modest: error in command line parameter(s): %s\n",
+ err ? err->message : "");
+ retval = 1;
+ goto cleanup;
+ }
+
+ modest_conf = MODEST_CONF(modest_conf_new());
+ if (!modest_conf) {
+ g_warning ("failed to initialize config system");
+ goto cleanup;
+ }
+
+ if (reinstall) {
+ modest_conf_remove_key (modest_conf, MODEST_CONF_NAMESPACE, NULL);
+ install_basic_conf_settings (modest_conf);
+ install_test_account (modest_conf);
+ goto cleanup;
+ }
+
+ gtk_init (&argc, &argv);
+ modest_ui = MODEST_UI(modest_ui_new (modest_conf));
+ if (!modest_ui) {
+ g_warning ("failed to initialize ui");
+ goto cleanup;
+ }
+
+ {
+ gboolean ok;
+ gtk_init (&argc, &argv);
+
+ if (mailto||cc||bcc||subject||body)
+ ok = modest_ui_show_edit_window (modest_ui,
+ mailto, /* to */
+ cc, /* cc */
+ bcc, /* bcc */
+ subject, /* subject */
+ body, /* body */
+ NULL); /* attachments */
+ else
+ ok = modest_ui_show_main_window (modest_ui);
+
+ if (!ok)
+ g_warning ("showing window failed");
+ else
+ gtk_main();
+ }
+
+
+cleanup:
+ if (err)
+ g_error_free (err);
+
+ if (context)
+ g_option_context_free (context);
+
+ if (modest_ui)
+ g_object_unref (modest_ui);
+
+ if (modest_conf)
+ g_object_unref (modest_conf);
+
+ return retval;
+}
+
+
+
+static void
+install_basic_conf_settings (ModestConf *conf)
+{
+ g_return_if_fail (conf);
+
+ /* main window size */
+ modest_conf_set_int (conf, MODEST_CONF_MAIN_WINDOW_WIDTH,
+ MODEST_CONF_MAIN_WINDOW_WIDTH_DEFAULT, NULL);
+ modest_conf_set_int (conf, MODEST_CONF_MAIN_WINDOW_HEIGHT,
+ MODEST_CONF_MAIN_WINDOW_HEIGHT_DEFAULT, NULL);
+
+ /* edit window size */
+ modest_conf_set_int (conf, MODEST_CONF_EDIT_WINDOW_WIDTH,
+ MODEST_CONF_EDIT_WINDOW_WIDTH_DEFAULT, NULL);
+ modest_conf_set_int (conf, MODEST_CONF_EDIT_WINDOW_HEIGHT,
+ MODEST_CONF_EDIT_WINDOW_HEIGHT_DEFAULT, NULL);
+
+ g_print ("modest: returned to factory settings\n");
+}
+
+
+static void
+install_test_account (ModestConf *conf)
+{
+ ModestAccountMgr *acc_mgr;
+ const gchar *acc_name = "test";
+ g_return_if_fail (conf);
+
+ acc_mgr = MODEST_ACCOUNT_MGR(modest_account_mgr_new (conf));
+ if (!acc_mgr) {
+ g_warning ("failed to instantiate account mgr");
+ return;
+ }
+
+ if (modest_account_mgr_account_exists (acc_mgr, acc_name, NULL)) {
+ if (!modest_account_mgr_remove_account(acc_mgr, acc_name, NULL)) {
+ g_warning ("could not delete existing account");
+ }
+ }
+
+ if (!modest_account_mgr_add_account (acc_mgr, acc_name, "mystore", "mytransport", NULL))
+ g_warning ("failed to add test account");
+
+ modest_account_mgr_add_server_account (acc_mgr, "mystore", "localhost", "djcb",
+ NULL, "pop");
+ modest_account_mgr_add_server_account (acc_mgr, "mytransport", "localhost", NULL,
+ NULL, "smtp");
+ g_object_unref (G_OBJECT(acc_mgr));
+}
--- /dev/null
+#include <string.h>
+#include "modest-proto.h"
+
+
+gboolean
+modest_proto_is_valid (const gchar *proto)
+{
+ int i;
+ static const gchar* protos[] = {
+ MODEST_PROTO_SENDMAIL,
+ MODEST_PROTO_SMTP,
+ MODEST_PROTO_POP,
+ MODEST_PROTO_IMAP,
+ NULL
+ };
+
+ if (!proto)
+ return FALSE;
+
+ for (i = 0; protos[i]; ++i) {
+ if (strcmp(protos[i], proto) == 0)
+ return TRUE;
+ }
+
+ return FALSE;
+}
+
+
+
+ModestProtoType
+modest_proto_type (const gchar *proto)
+{
+ if (!modest_proto_is_valid(proto)) {
+ g_warning ("invalid protocol %s", proto);
+ return -1;
+ }
+
+ /* trick */
+ if (proto[0] == 's')
+ return MODEST_PROTO_TYPE_TRANSPORT;
+ else
+ return MODEST_PROTO_TYPE_STORE;
+}
+
+
+
--- /dev/null
+/* modest-proto.h */
+
+#ifndef __MODEST_PROTO_H__
+#define __MODEST_PROTO_H__
+
+#include <glib.h>
+
+#define MODEST_PROTO_SENDMAIL "sendmail"
+#define MODEST_PROTO_SMTP "smtp"
+#define MODEST_PROTO_POP "pop"
+#define MODEST_PROTO_IMAP "imap"
+
+enum {
+ MODEST_PROTO_TYPE_ANY = 0,
+ MODEST_PROTO_TYPE_TRANSPORT = 1,
+ MODEST_PROTO_TYPE_STORE = 2,
+};
+typedef gint ModestProtoType;
+
+gboolean modest_proto_is_valid (const gchar *proto);
+ModestProtoType modest_proto_type (const gchar *proto);
+
+#endif /*__MODEST_SERVER_PROTO_H__*/
+
--- /dev/null
+/* modest-tny-account-store.c */
+
+/* insert (c)/licensing information) */
+
+#include <string.h>
+
+#include <tny-account-store-iface.h>
+#include <tny-account-iface.h>
+#include <tny-account-store-iface.h>
+
+#include <tny-account-iface.h>
+#include <tny-store-account-iface.h>
+#include <tny-transport-account-iface.h>
+
+#include <tny-store-account.h>
+#include <tny-transport-account.h>
+
+#include "modest-account-mgr.h"
+#include "modest-tny-account-store.h"
+
+/* 'private'/'protected' functions */
+static void modest_tny_account_store_class_init (ModestTnyAccountStoreClass *klass);
+static void modest_tny_account_store_init (ModestTnyAccountStore *obj);
+static void modest_tny_account_store_finalize (GObject *obj);
+
+/* implementations for tny-account-store-iface */
+static void modest_tny_account_store_iface_init (gpointer g_iface, gpointer iface_data);
+
+static void modest_tny_account_store_add_store_account (TnyAccountStoreIface *self,
+ TnyStoreAccountIface *account);
+static void modest_tny_account_store_add_transport_account (TnyAccountStoreIface *self,
+ TnyTransportAccountIface *account);
+static const GList* modest_tny_account_store_get_store_accounts (TnyAccountStoreIface *iface);
+static const GList* modest_tny_account_store_get_transport_accounts (TnyAccountStoreIface *iface);
+
+/* list my signals */
+enum {
+ /* MY_SIGNAL_1, */
+ /* MY_SIGNAL_2, */
+ LAST_SIGNAL
+};
+
+typedef struct _ModestTnyAccountStorePrivate ModestTnyAccountStorePrivate;
+struct _ModestTnyAccountStorePrivate {
+ ModestAccountMgr *modest_acc_mgr;
+};
+#define MODEST_TNY_ACCOUNT_STORE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE((o), \
+ MODEST_TYPE_TNY_ACCOUNT_STORE, \
+ ModestTnyAccountStorePrivate))
+/* globals */
+static GObjectClass *parent_class = NULL;
+
+/* uncomment the following if you have defined any signals */
+/* static guint signals[LAST_SIGNAL] = {0}; */
+
+GType
+modest_tny_account_store_get_type (void)
+{
+ static GType my_type = 0;
+ if (!my_type) {
+ static const GTypeInfo my_info = {
+ sizeof(ModestTnyAccountStoreClass),
+ NULL, /* base init */
+ NULL, /* base finalize */
+ (GClassInitFunc) modest_tny_account_store_class_init,
+ NULL, /* class finalize */
+ NULL, /* class data */
+ sizeof(ModestTnyAccountStore),
+ 1, /* n_preallocs */
+ (GInstanceInitFunc) modest_tny_account_store_init,
+ };
+
+ static const GInterfaceInfo iface_info = {
+ (GInterfaceInitFunc) modest_tny_account_store_iface_init,
+ NULL, /* interface_finalize */
+ NULL /* interface_data */
+ };
+
+ my_type = g_type_register_static (G_TYPE_OBJECT,
+ "ModestTnyAccountStore", &my_info, 0);
+
+ g_type_add_interface_static (my_type, TNY_TYPE_ACCOUNT_STORE_IFACE,
+ &iface_info);
+
+ }
+ return my_type;
+}
+
+static void
+modest_tny_account_store_class_init (ModestTnyAccountStoreClass *klass)
+{
+ GObjectClass *gobject_class;
+ gobject_class = (GObjectClass*) klass;
+
+ parent_class = g_type_class_peek_parent (klass);
+ gobject_class->finalize = modest_tny_account_store_finalize;
+
+ g_type_class_add_private (gobject_class, sizeof(ModestTnyAccountStorePrivate));
+
+ /* signal definitions go here, e.g.: */
+/* signals[MY_SIGNAL_1] = */
+/* g_signal_new ("my_signal_1",....); */
+/* signals[MY_SIGNAL_2] = */
+/* g_signal_new ("my_signal_2",....); */
+/* etc. */
+}
+
+static void
+modest_tny_account_store_init (ModestTnyAccountStore *obj)
+{
+ ModestTnyAccountStorePrivate *priv =
+ MODEST_TNY_ACCOUNT_STORE_GET_PRIVATE(obj);
+
+ priv->modest_acc_mgr = NULL;
+}
+
+static void
+modest_tny_account_store_finalize (GObject *obj)
+{
+ ModestTnyAccountStore *self = MODEST_TNY_ACCOUNT_STORE(obj);
+ ModestTnyAccountStorePrivate *priv =
+ MODEST_TNY_ACCOUNT_STORE_GET_PRIVATE(self);
+
+ if (priv->modest_acc_mgr) {
+ g_object_unref (G_OBJECT(priv->modest_acc_mgr));
+ priv->modest_acc_mgr = NULL;
+ }
+}
+
+GObject*
+modest_tny_account_store_new (ModestAccountMgr *modest_acc_mgr)
+{
+ GObject *obj;
+ ModestTnyAccountStorePrivate *priv;
+
+ g_return_val_if_fail (modest_acc_mgr, NULL);
+
+ obj = G_OBJECT(g_object_new(MODEST_TYPE_TNY_ACCOUNT_STORE, NULL));
+
+ priv = MODEST_TNY_ACCOUNT_STORE_GET_PRIVATE(obj);
+ g_object_ref(G_OBJECT(priv->modest_acc_mgr = modest_acc_mgr));
+
+ return obj;
+}
+
+
+
+/* FIXME: tinymail needs to change here */
+/* a gpointer arg to get_password should be enough */
+static gchar*
+get_password (TnyAccountIface *account, const gchar *prompt)
+{
+ g_warning ("%s: %s", __FUNCTION__, prompt);
+ return g_strdup("djcb123");
+}
+
+
+static void
+forget_password (TnyAccountIface *account)
+{
+ g_warning (__FUNCTION__);
+}
+
+
+
+static gboolean
+add_account (TnyAccountStoreIface *self, TnyAccountIface *account)
+{
+ TnyAccountIface *account_iface;
+ ModestTnyAccountStore *account_store;
+ ModestTnyAccountStorePrivate *priv;
+
+ const gchar* account_name;
+ const gchar *hostname, *username, *proto;
+
+ g_warning (__FUNCTION__);
+
+ g_return_val_if_fail (self, FALSE);
+ g_return_val_if_fail (account, FALSE);
+
+ account_iface = TNY_ACCOUNT_IFACE(account);
+ account_store = MODEST_TNY_ACCOUNT_STORE(self);
+ priv = MODEST_TNY_ACCOUNT_STORE_GET_PRIVATE(self);
+
+ account_name = tny_account_iface_get_id(account_iface);
+ if (!account_name) {
+ g_warning ("failed to retrieve account name");
+ return FALSE;
+ }
+
+ hostname = tny_account_iface_get_hostname(account_iface);
+ username = tny_account_iface_get_user(account_iface);
+ proto = tny_account_iface_get_proto(account_iface);
+
+ return modest_account_mgr_add_server_account (priv->modest_acc_mgr,
+ account_name,
+ hostname, username, NULL,
+ proto);
+}
+
+
+
+static void
+modest_tny_account_store_add_store_account (TnyAccountStoreIface *self,
+ TnyStoreAccountIface *account)
+{
+ if (!add_account (self, TNY_ACCOUNT_IFACE(account)))
+ g_warning ("failed to add store account");
+}
+
+
+
+static void
+modest_tny_account_store_add_transport_account (TnyAccountStoreIface *self,
+ TnyTransportAccountIface *account)
+{
+ if (!add_account (self, TNY_ACCOUNT_IFACE(account)))
+ g_warning ("failed to add transport account");
+}
+
+
+
+
+static TnyAccountIface*
+tny_account_from_key (ModestTnyAccountStore *self, const gchar *key,
+ gboolean is_store)
+{
+ TnyAccountIface *tny_account;
+ ModestTnyAccountStorePrivate *priv;
+ gchar *val;
+
+ g_return_val_if_fail (self, NULL);
+ g_return_val_if_fail (key, NULL);
+
+ priv = MODEST_TNY_ACCOUNT_STORE_GET_PRIVATE(self);
+
+ /* is it a store or a transport? */
+ if (is_store)
+ tny_account = TNY_ACCOUNT_IFACE(tny_store_account_new ());
+ else
+ tny_account = TNY_ACCOUNT_IFACE(tny_transport_account_new ());
+
+ tny_account_iface_set_account_store (tny_account,
+ TNY_ACCOUNT_STORE_IFACE(self));
+ /* id */
+ tny_account_iface_set_id (tny_account, key);
+
+ /* hostname */
+ val = modest_account_mgr_get_account_string (priv->modest_acc_mgr, key,
+ MODEST_ACCOUNT_HOSTNAME, NULL);
+ g_warning (val);
+ tny_account_iface_set_hostname (tny_account, val);
+ g_free (val);
+
+ /* username */
+ val = modest_account_mgr_get_account_string (priv->modest_acc_mgr, key,
+ MODEST_ACCOUNT_USERNAME, NULL);
+ g_warning (val);
+ tny_account_iface_set_user (tny_account, val);
+ g_free (val);
+
+ /* proto */
+ val = modest_account_mgr_get_account_string (priv->modest_acc_mgr, key,
+ MODEST_ACCOUNT_PROTO, NULL);
+ g_warning (val);
+ tny_account_iface_set_proto (tny_account, val);
+ g_free (val);
+
+ g_warning ("set_pass");
+ tny_account_iface_set_pass_func (tny_account, get_password);
+ tny_account_iface_set_forget_pass_func (tny_account, forget_password);
+
+ return tny_account;
+}
+
+
+static GList*
+tny_accounts_from_server_accounts (ModestTnyAccountStore *self, GSList *accounts,
+ gboolean is_store)
+{
+ GSList *cursor = accounts;
+ GList *tny_accounts = NULL;
+
+ g_return_val_if_fail (self, NULL);
+
+ while (cursor) {
+ TnyAccountIface *tny_account;
+ tny_account = tny_account_from_key (self, (gchar*)cursor->data, is_store);
+ if (!tny_account) {
+ g_warning ("could not create tnyaccount for %s",
+ (gchar*)cursor->data);
+ } else {
+ g_warning ("added %s",(gchar*)cursor->data);
+ tny_accounts =
+ g_list_append (tny_accounts, tny_account);
+ }
+ cursor = cursor->next;
+ }
+
+ return tny_accounts;
+}
+
+
+
+
+static const GList*
+modest_tny_account_store_get_store_accounts (TnyAccountStoreIface *iface)
+{
+ ModestTnyAccountStore *self;
+ ModestTnyAccountStorePrivate *priv;
+ GSList *accounts, *cursor;
+ GList *tny_accounts;
+
+ g_return_val_if_fail (iface, NULL);
+
+ g_warning ("i'm being called: %s", __FUNCTION__);
+
+ self = MODEST_TNY_ACCOUNT_STORE(iface);
+ priv = MODEST_TNY_ACCOUNT_STORE_GET_PRIVATE(self);
+
+ accounts =
+ modest_account_mgr_server_account_names (priv->modest_acc_mgr,
+ NULL,
+ MODEST_PROTO_TYPE_STORE,
+ NULL, FALSE);
+
+ g_warning ("accounts: %d", g_slist_length (accounts));
+ tny_accounts = tny_accounts_from_server_accounts (self, accounts, TRUE);
+ g_slist_free (accounts);
+ g_warning ("store accounts: %d", g_list_length (tny_accounts));
+
+ return tny_accounts; /* FIXME: who will free this? */
+}
+
+
+
+static const GList*
+modest_tny_account_store_get_transport_accounts (TnyAccountStoreIface *iface)
+{
+ ModestTnyAccountStore *self;
+ ModestTnyAccountStorePrivate *priv;
+ GSList *accounts, *cursor;
+ GList *tny_accounts;
+
+ g_return_val_if_fail (iface, NULL);
+
+ self = MODEST_TNY_ACCOUNT_STORE(iface);
+ priv = MODEST_TNY_ACCOUNT_STORE_GET_PRIVATE(self);
+
+ accounts =
+ modest_account_mgr_server_account_names (priv->modest_acc_mgr,
+ NULL,
+ MODEST_PROTO_TYPE_TRANSPORT,
+ NULL, FALSE);
+ tny_accounts = tny_accounts_from_server_accounts (self, accounts, FALSE);
+ g_warning ("transport accounts: %d", g_list_length (tny_accounts));
+
+ g_slist_free (accounts);
+
+ return tny_accounts; /* FIXME: who will free this? */
+}
+
+
+static const gchar*
+modest_tny_account_store_get_cache_dir (TnyAccountStoreIface *self)
+{
+ return g_strdup("/home/djcb/.modest/cache/"); /* FIXME */
+}
+
+
+
+static void
+modest_tny_account_store_iface_init (gpointer g_iface, gpointer iface_data)
+{
+ TnyAccountStoreIfaceClass *klass;
+
+ g_return_if_fail (g_iface);
+
+ klass = (TnyAccountStoreIfaceClass *)g_iface;
+
+ klass->add_store_account_func =
+ modest_tny_account_store_add_store_account;
+ klass->get_store_accounts_func =
+ modest_tny_account_store_get_store_accounts;
+ klass->add_transport_account_func =
+ modest_tny_account_store_add_transport_account;
+ klass->get_transport_accounts_func =
+ modest_tny_account_store_get_transport_accounts;
+ klass->get_cache_dir_func =
+ modest_tny_account_store_get_cache_dir;
+}
+
--- /dev/null
+/* modest-tny-account-store.h */
+/* insert (c)/licensing information) */
+
+#ifndef __MODEST_TNY_ACCOUNT_STORE_H__
+#define __MODEST_TNY_ACCOUNT_STORE_H__
+
+#include <glib-object.h>
+/* other include files */
+
+G_BEGIN_DECLS
+
+/* convenience macros */
+#define MODEST_TYPE_TNY_ACCOUNT_STORE (modest_tny_account_store_get_type())
+#define MODEST_TNY_ACCOUNT_STORE(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),MODEST_TYPE_TNY_ACCOUNT_STORE,ModestTnyAccountStore))
+#define MODEST_TNY_ACCOUNT_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),MODEST_TYPE_TNY_ACCOUNT_STORE,GObject))
+#define MODEST_IS_TNY_ACCOUNT_STORE(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),MODEST_TYPE_TNY_ACCOUNT_STORE))
+#define MODEST_IS_TNY_ACCOUNT_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass),MODEST_TYPE_TNY_ACCOUNT_STORE))
+#define MODEST_TNY_ACCOUNT_STORE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj),MODEST_TYPE_TNY_ACCOUNT_STORE,ModestTnyAccountStoreClass))
+
+typedef struct _ModestTnyAccountStore ModestTnyAccountStore;
+typedef struct _ModestTnyAccountStoreClass ModestTnyAccountStoreClass;
+
+struct _ModestTnyAccountStore {
+ GObject parent;
+ /* insert public members, if any */
+};
+
+struct _ModestTnyAccountStoreClass {
+ GObjectClass parent_class;
+ /* insert signal callback declarations, eg. */
+ /* void (* my_event) (ModestTnyAccountStore* obj); */
+};
+
+/* member functions */
+GType modest_tny_account_store_get_type (void) G_GNUC_CONST;
+
+/* typical parameter-less _new function */
+/* if this is a kind of GtkWidget, it should probably return at GtkWidget*, */
+/* otherwise probably a GObject*. */
+GObject* modest_tny_account_store_new (ModestAccountMgr *modest_acc_mgr);
+
+/* fill in other public functions, eg.: */
+/* void modest_tny_account_store_do_something (ModestTnyAccountStore *self, const gchar* param); */
+/* gboolean modest_tny_account_store_has_foo (ModestTnyAccountStore *self, gint value); */
+
+
+G_END_DECLS
+
+#endif /* __MODEST_TNY_ACCOUNT_STORE_H__ */
+
--- /dev/null
+/* modest-tny-folder-tree-view.c */
+
+/* insert (c)/licensing information) */
+#include <glib/gi18n.h>
+
+#include <tny-account-tree-model.h>
+#include <tny-account-store-iface.h>
+#include <tny-account-iface.h>
+#include <tny-summary-window-iface.h>
+
+#include "modest-tny-folder-tree-view.h"
+/* include other impl specific header files */
+
+/* 'private'/'protected' functions */
+static void modest_tny_folder_tree_view_class_init (ModestTnyFolderTreeViewClass *klass);
+static void modest_tny_folder_tree_view_init (ModestTnyFolderTreeView *obj);
+static void modest_tny_folder_tree_view_finalize (GObject *obj);
+
+static void modest_tny_folder_tree_view_iface_init (gpointer iface, gpointer data);
+static void modest_tny_folder_tree_view_set_account_store (TnySummaryWindowIface *self,
+ TnyAccountStoreIface *account_store);
+static gboolean update_model (ModestTnyFolderTreeView *self,TnyAccountStoreIface *iface);
+static gboolean update_model_empty (ModestTnyFolderTreeView *self);
+
+static void selection_changed (GtkTreeSelection *sel, gpointer data);
+
+/* list my signals */
+enum {
+ FOLDER_SELECTED_SIGNAL,
+ LAST_SIGNAL
+};
+
+typedef struct _ModestTnyFolderTreeViewPrivate ModestTnyFolderTreeViewPrivate;
+struct _ModestTnyFolderTreeViewPrivate {
+ TnyAccountStoreIface *tny_account_store;
+ gboolean view_is_empty;
+
+};
+#define MODEST_TNY_FOLDER_TREE_VIEW_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE((o), \
+ MODEST_TYPE_TNY_FOLDER_TREE_VIEW, \
+ ModestTnyFolderTreeViewPrivate))
+/* globals */
+static GObjectClass *parent_class = NULL;
+
+static guint signals[LAST_SIGNAL] = {0};
+
+GType
+modest_tny_folder_tree_view_get_type (void)
+{
+ static GType my_type = 0;
+ if (!my_type) {
+ static const GTypeInfo my_info = {
+ sizeof(ModestTnyFolderTreeViewClass),
+ NULL, /* base init */
+ NULL, /* base finalize */
+ (GClassInitFunc) modest_tny_folder_tree_view_class_init,
+ NULL, /* class finalize */
+ NULL, /* class data */
+ sizeof(ModestTnyFolderTreeView),
+ 1, /* n_preallocs */
+ (GInstanceInitFunc) modest_tny_folder_tree_view_init,
+ };
+
+ static const GInterfaceInfo iface_info = {
+ (GInterfaceInitFunc) modest_tny_folder_tree_view_iface_init,
+ NULL, /* finalize */
+ NULL /* data */
+ };
+
+ my_type = g_type_register_static (GTK_TYPE_TREE_VIEW,
+ "ModestTnyFolderTreeView",
+ &my_info, 0);
+ g_type_add_interface_static (my_type, TNY_TYPE_SUMMARY_WINDOW_IFACE,
+ &iface_info);
+
+ }
+ return my_type;
+}
+
+static void
+modest_tny_folder_tree_view_class_init (ModestTnyFolderTreeViewClass *klass)
+{
+ GObjectClass *gobject_class;
+ gobject_class = (GObjectClass*) klass;
+
+ parent_class = g_type_class_peek_parent (klass);
+ gobject_class->finalize = modest_tny_folder_tree_view_finalize;
+
+ g_type_class_add_private (gobject_class,
+ sizeof(ModestTnyFolderTreeViewPrivate));
+
+ signals[FOLDER_SELECTED_SIGNAL] =
+ g_signal_new ("folder_selected",
+ G_TYPE_FROM_CLASS (gobject_class),
+ G_SIGNAL_RUN_FIRST,
+ G_STRUCT_OFFSET (ModestTnyFolderTreeViewClass,folder_selected),
+ NULL, NULL,
+ g_cclosure_marshal_VOID__POINTER,
+ G_TYPE_NONE, 1, G_TYPE_POINTER);
+}
+
+static void
+modest_tny_folder_tree_view_init (ModestTnyFolderTreeView *obj)
+{
+ ModestTnyFolderTreeViewPrivate *priv;
+ priv = MODEST_TNY_FOLDER_TREE_VIEW_GET_PRIVATE(obj);
+
+ priv->view_is_empty = TRUE;
+ priv->tny_account_store = NULL;
+}
+
+
+static void
+modest_tny_folder_tree_view_iface_init (gpointer iface, gpointer data)
+{
+ TnySummaryWindowIfaceClass *klass;
+
+ g_return_if_fail (iface);
+
+ klass = (TnySummaryWindowIfaceClass*) iface;
+
+ klass->set_account_store_func =
+ modest_tny_folder_tree_view_set_account_store;
+}
+
+
+
+
+static void
+modest_tny_folder_tree_view_finalize (GObject *obj)
+{
+ ModestTnyFolderTreeViewPrivate *priv;
+
+ g_return_if_fail (obj);
+
+ priv = MODEST_TNY_FOLDER_TREE_VIEW_GET_PRIVATE(obj);
+ if (priv->tny_account_store) {
+ g_object_unref (G_OBJECT(priv->tny_account_store));
+ priv->tny_account_store = NULL;
+ }
+
+ (*parent_class->finalize)(obj);
+}
+
+
+static void
+modest_tny_folder_tree_view_set_account_store (TnySummaryWindowIface *self,
+ TnyAccountStoreIface *account_store)
+{
+ ModestTnyFolderTreeViewPrivate *priv;
+
+ g_return_if_fail (self);
+ g_return_if_fail (account_store);
+
+ priv = MODEST_TNY_FOLDER_TREE_VIEW_GET_PRIVATE(self);
+ if (priv->tny_account_store) {
+ g_object_unref (priv->tny_account_store);
+ priv->tny_account_store = NULL;
+ }
+
+ g_object_ref (G_OBJECT(priv->tny_account_store = account_store));
+}
+
+
+
+GtkWidget*
+modest_tny_folder_tree_view_new (TnyAccountStoreIface *iface)
+{
+ GObject *self;
+ ModestTnyFolderTreeViewPrivate *priv;
+ GtkTreeSelection *sel;
+
+ self = G_OBJECT(g_object_new(MODEST_TYPE_TNY_FOLDER_TREE_VIEW, NULL));
+ priv = MODEST_TNY_FOLDER_TREE_VIEW_GET_PRIVATE(self);
+
+ g_return_val_if_fail (iface, NULL);
+
+ if (!update_model (MODEST_TNY_FOLDER_TREE_VIEW(self), iface))
+ g_warning ("failed or update model");
+
+ sel = gtk_tree_view_get_selection(GTK_TREE_VIEW(self));
+ g_signal_connect (sel, "changed",
+ G_CALLBACK(selection_changed), self);
+
+ return GTK_WIDGET(self);
+}
+
+
+
+
+static gboolean
+update_model_empty (ModestTnyFolderTreeView *self)
+{
+ GtkTreeIter iter;
+ GtkTreeStore *store;
+ ModestTnyFolderTreeViewPrivate *priv;
+
+ g_return_val_if_fail (self, FALSE);
+
+ store = gtk_tree_store_new (1, G_TYPE_STRING);
+ gtk_tree_store_append (store, &iter, NULL);
+
+ gtk_tree_store_set (store, &iter, 0,
+ _("(empty)"), -1);
+
+ gtk_tree_view_set_model (GTK_TREE_VIEW(self),
+ GTK_TREE_MODEL(store));
+ g_object_unref (store);
+
+ priv = MODEST_TNY_FOLDER_TREE_VIEW_GET_PRIVATE(self);
+ priv->view_is_empty = TRUE;
+
+ return TRUE;
+}
+
+
+static gboolean
+update_model (ModestTnyFolderTreeView *self,TnyAccountStoreIface *iface)
+{
+ const GList *accounts;
+ TnyAccountTreeModel *folder_model;
+ ModestTnyFolderTreeViewPrivate *priv;
+
+ g_return_val_if_fail (iface, FALSE);
+
+ priv = MODEST_TNY_FOLDER_TREE_VIEW_GET_PRIVATE(self);
+ priv->view_is_empty = TRUE;
+
+ accounts = tny_account_store_iface_get_store_accounts (iface);
+ if (!accounts) {
+ g_warning ("no accounts have been defined yet");
+ return update_model_empty (self);
+ }
+
+ folder_model = tny_account_tree_model_new ();
+ if (!folder_model) {
+ g_warning ("failed to get account tree model");
+ return update_model_empty (self);
+ }
+
+ while (accounts) {
+ TnyStoreAccountIface *account =
+ TNY_STORE_ACCOUNT_IFACE(accounts->data);
+ if (!account) {
+ g_warning ("invalid account");
+ g_object_unref (folder_model);
+ return update_model_empty (self);
+ }
+ tny_account_tree_model_add (TNY_ACCOUNT_TREE_MODEL (folder_model),
+ account);
+ accounts = accounts->next;
+ }
+
+ gtk_tree_view_set_model (GTK_TREE_VIEW(self),
+ GTK_TREE_MODEL(folder_model));
+ g_object_unref (G_OBJECT(folder_model));
+
+ priv->view_is_empty = FALSE; /* were not empty anymore! */
+ return TRUE;
+}
+
+
+void
+selection_changed (GtkTreeSelection *sel, gpointer user_data)
+{
+ GtkTreeModel *model;
+ TnyMsgFolderIface *folder;
+ GtkTreeIter iter;
+ ModestTnyFolderTreeView *tree_view;
+ ModestTnyFolderTreeViewPrivate *priv;
+
+ g_warning ("selection changed");
+
+ g_return_if_fail (sel);
+ g_return_if_fail (user_data);
+
+ priv = MODEST_TNY_FOLDER_TREE_VIEW_GET_PRIVATE(user_data);
+
+ /* is_empty means that there is only the 'empty' item */
+ if (priv->view_is_empty)
+ return;
+
+ if (!gtk_tree_selection_get_selected (sel, &model, &iter))
+ return; /* folder was _un_selected */
+
+ tree_view = MODEST_TNY_FOLDER_TREE_VIEW (user_data);
+
+ gtk_tree_model_get (model, &iter,
+ TNY_ACCOUNT_TREE_MODEL_INSTANCE_COLUMN,
+ &folder, -1);
+
+ g_signal_emit (G_OBJECT(tree_view), signals[FOLDER_SELECTED_SIGNAL], 0,
+ folder);
+}
+
+
+
+
--- /dev/null
+/* modest-tny-folder-tree-view.h */
+/* insert (c)/licensing information) */
+
+#ifndef __MODEST_TNY_FOLDER_TREE_VIEW_H__
+#define __MODEST_TNY_FOLDER_TREE_VIEW_H__
+
+#include <tny-account-tree-model.h>
+#include <tny-account-store-iface.h>
+#include <glib-object.h>
+
+G_BEGIN_DECLS
+
+/* convenience macros */
+#define MODEST_TYPE_TNY_FOLDER_TREE_VIEW (modest_tny_folder_tree_view_get_type())
+#define MODEST_TNY_FOLDER_TREE_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),MODEST_TYPE_TNY_FOLDER_TREE_VIEW,ModestTnyFolderTreeView))
+#define MODEST_TNY_FOLDER_TREE_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),MODEST_TYPE_TNY_FOLDER_TREE_VIEW,GObject))
+#define MODEST_IS_TNY_FOLDER_TREE_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),MODEST_TYPE_TNY_FOLDER_TREE_VIEW))
+#define MODEST_IS_TNY_FOLDER_TREE_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass),MODEST_TYPE_TNY_FOLDER_TREE_VIEW))
+#define MODEST_TNY_FOLDER_TREE_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj),MODEST_TYPE_TNY_FOLDER_TREE_VIEW,ModestTnyFolderTreeViewClass))
+
+typedef struct _ModestTnyFolderTreeView ModestTnyFolderTreeView;
+typedef struct _ModestTnyFolderTreeViewClass ModestTnyFolderTreeViewClass;
+
+struct _ModestTnyFolderTreeView {
+ GtkTreeView parent;
+ /* insert public members, if any */
+};
+
+struct _ModestTnyFolderTreeViewClass {
+ GtkTreeViewClass parent_class;
+
+ /* emitted when a folder is clicked */
+ void (*folder_selected) (ModestTnyFolderTreeView* self,
+ TnyMsgFolderIface *folder,
+ gpointer user_data);
+};
+
+
+/**
+ * modest_tny_folder_tree_view_get_type:
+ *
+ * get the GType for ModestTnyFolderTreeView
+ *
+ * Returns: the GType
+ */
+GType modest_tny_folder_tree_view_get_type (void) G_GNUC_CONST;
+
+
+/**
+ * modest_tny_folder_tree_view_new:
+ * @iface: a TnyAccountStoreIface object
+ *
+ * create a new ModestTnyFolderTreeView instance, based on an account store
+ *
+ * Returns: a new GtkWidget (a GtkTreeView-subclass)
+ */
+
+GtkWidget* modest_tny_folder_tree_view_new (TnyAccountStoreIface *iface);
+
+
+/**
+ * modest_tny_folder_tree_view_is_empty:
+ * @self: a ModestTnyFolderTreeView instance
+ *
+ * check to see of the view is empty. Note that when it is empty,
+ * there will still be one item, telling "(empty)" or similar
+ *
+ * Returns: TRUE if the tree view is empty, FALSE otherwise
+ */
+gboolean modest_tny_folder_tree_view_is_empty (ModestTnyFolderTreeView *self);
+
+
+G_END_DECLS
+
+#endif /* __MODEST_TNY_FOLDER_TREE_VIEW_H__ */
+
--- /dev/null
+/* modest-tny-header-tree-view.c */
+
+/* insert (c)/licensing information) */
+
+#include "modest-tny-header-tree-view.h"
+
+/* 'private'/'protected' functions */
+static void modest_tny_header_tree_view_class_init (ModestTnyHeaderTreeViewClass *klass);
+static void modest_tny_header_tree_view_init (ModestTnyHeaderTreeView *obj);
+static void modest_tny_header_tree_view_finalize (GObject *obj);
+
+static void selection_changed (GtkTreeSelection *sel, gpointer user_data);
+
+/* list my signals */
+enum {
+ /* MY_SIGNAL_1, */
+ MESSAGE_SELECTED_SIGNAL,
+ LAST_SIGNAL
+};
+
+typedef struct _ModestTnyHeaderTreeViewPrivate ModestTnyHeaderTreeViewPrivate;
+struct _ModestTnyHeaderTreeViewPrivate {
+ TnyMsgFolderIface *tny_msg_folder;
+ GtkTreeModel *header_tree_model;
+};
+#define MODEST_TNY_HEADER_TREE_VIEW_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE((o), \
+ MODEST_TYPE_TNY_HEADER_TREE_VIEW, \
+ ModestTnyHeaderTreeViewPrivate))
+/* globals */
+static GObjectClass *parent_class = NULL;
+
+/* uncomment the following if you have defined any signals */
+static guint signals[LAST_SIGNAL] = {0};
+
+GType
+modest_tny_header_tree_view_get_type (void)
+{
+ static GType my_type = 0;
+ if (!my_type) {
+ static const GTypeInfo my_info = {
+ sizeof(ModestTnyHeaderTreeViewClass),
+ NULL, /* base init */
+ NULL, /* base finalize */
+ (GClassInitFunc) modest_tny_header_tree_view_class_init,
+ NULL, /* class finalize */
+ NULL, /* class data */
+ sizeof(ModestTnyHeaderTreeView),
+ 1, /* n_preallocs */
+ (GInstanceInitFunc) modest_tny_header_tree_view_init,
+ };
+ my_type = g_type_register_static (GTK_TYPE_TREE_VIEW,
+ "ModestTnyHeaderTreeView",
+ &my_info, 0);
+ }
+ return my_type;
+}
+
+static void
+modest_tny_header_tree_view_class_init (ModestTnyHeaderTreeViewClass *klass)
+{
+ GObjectClass *gobject_class;
+ gobject_class = (GObjectClass*) klass;
+
+ parent_class = g_type_class_peek_parent (klass);
+ gobject_class->finalize = modest_tny_header_tree_view_finalize;
+
+ g_type_class_add_private (gobject_class, sizeof(ModestTnyHeaderTreeViewPrivate));
+
+ signals[MESSAGE_SELECTED_SIGNAL] =
+ g_signal_new ("message_selected",
+ G_TYPE_FROM_CLASS (gobject_class),
+ G_SIGNAL_RUN_FIRST,
+ G_STRUCT_OFFSET (ModestTnyHeaderTreeViewClass,message_selected),
+ NULL, NULL,
+ g_cclosure_marshal_VOID__POINTER,
+ G_TYPE_NONE, 1, G_TYPE_POINTER);
+}
+
+static void
+modest_tny_header_tree_view_init (ModestTnyHeaderTreeView *obj)
+{
+ ModestTnyHeaderTreeViewPrivate *priv;
+ priv = MODEST_TNY_HEADER_TREE_VIEW_GET_PRIVATE(obj);
+
+ priv->tny_msg_folder = NULL;
+ priv->header_tree_model = NULL;
+}
+
+static void
+modest_tny_header_tree_view_finalize (GObject *obj)
+{
+ ModestTnyHeaderTreeView *self;
+ ModestTnyHeaderTreeViewPrivate *priv;
+
+ self = MODEST_TNY_HEADER_TREE_VIEW(obj);
+ priv = MODEST_TNY_HEADER_TREE_VIEW_GET_PRIVATE(self);
+
+ if (priv->header_tree_model)
+ g_object_unref (G_OBJECT(priv->header_tree_model));
+
+ priv->header_tree_model = NULL;
+ priv->tny_msg_folder = NULL;
+}
+
+GtkWidget*
+modest_tny_header_tree_view_new (TnyMsgFolderIface *folder)
+{
+ GObject *obj;
+ GtkTreeSelection *sel;
+ ModestTnyHeaderTreeView *self;
+
+ obj = G_OBJECT(g_object_new(MODEST_TYPE_TNY_HEADER_TREE_VIEW, NULL));
+ self = MODEST_TNY_HEADER_TREE_VIEW(obj);
+
+ if (!modest_tny_header_tree_view_set_folder (self, NULL)) {
+ g_warning ("could not set the folder");
+ g_object_unref (obj);
+ return NULL;
+ }
+
+ sel = gtk_tree_view_get_selection(GTK_TREE_VIEW(self));
+ g_signal_connect (sel, "changed",
+ G_CALLBACK(selection_changed), self);
+
+ return GTK_WIDGET(self);
+}
+
+
+gboolean
+modest_tny_header_tree_view_set_folder (ModestTnyHeaderTreeView *self,
+ TnyMsgFolderIface *folder)
+{
+ GtkTreeModel *sortable;
+ ModestTnyHeaderTreeViewPrivate *priv;
+
+ g_return_val_if_fail (self, FALSE);
+
+ priv = MODEST_TNY_HEADER_TREE_VIEW_GET_PRIVATE(self);
+
+ /* clean up old stuff */
+ if (priv->header_tree_model)
+ g_object_unref (G_OBJECT(priv->header_tree_model));
+ priv->header_tree_model = NULL;
+ priv->header_tree_model = GTK_TREE_MODEL (tny_msg_header_list_model_new());
+
+ if (folder) {
+ tny_msg_header_list_model_set_folder (
+ TNY_MSG_HEADER_LIST_MODEL(priv->header_tree_model),
+ folder, FALSE); /* FIXME: refresh?*/
+
+ sortable = gtk_tree_model_sort_new_with_model (priv->header_tree_model);
+
+ } else {
+ static GtkTreeModel *empty_model = NULL;
+ if (!empty_model)
+ empty_model = GTK_TREE_MODEL(gtk_list_store_new(1,G_TYPE_STRING));
+
+ sortable = empty_model;
+ }
+
+ gtk_tree_view_set_model (GTK_TREE_VIEW (self), sortable);
+
+ if (sortable)
+ g_object_unref (G_OBJECT(sortable));
+
+ return TRUE;
+}
+
+
+void
+selection_changed (GtkTreeSelection *sel, gpointer user_data)
+{
+ GtkTreeModel *model;
+ TnyMsgHeaderIface *header;
+ GtkTreeIter iter;
+ ModestTnyHeaderTreeView *tree_view;
+
+ g_return_if_fail (sel);
+ g_return_if_fail (user_data);
+
+ if (!gtk_tree_selection_get_selected (sel, &model, &iter))
+ return; /* msg was _un_selected */
+
+ tree_view = MODEST_TNY_HEADER_TREE_VIEW (user_data);
+
+ gtk_tree_model_get (model, &iter,
+ TNY_MSG_HEADER_LIST_MODEL_INSTANCE_COLUMN,
+ &header, -1);
+
+ if (header) {
+ const TnyMsgIface *msg;
+ const TnyMsgFolderIface *folder;
+
+ folder = tny_msg_header_iface_get_folder (TNY_MSG_HEADER_IFACE(header));
+ if (!folder) {
+ g_warning ("cannot find folder");
+ return;
+ }
+
+ msg = tny_msg_folder_iface_get_message (TNY_MSG_FOLDER_IFACE(folder), header);
+ if (!msg) {
+ g_warning ("cannot find msg");
+ return;
+ }
+
+ g_signal_emit (G_OBJECT(tree_view), signals[MESSAGE_SELECTED_SIGNAL], 0,
+ msg);
+ }
+}
--- /dev/null
+/* modest-tny-header-tree-view.h */
+/* insert (c)/licensing information) */
+
+#ifndef __MODEST_TNY_HEADER_TREE_VIEW_H__
+#define __MODEST_TNY_HEADER_TREE_VIEW_H__
+
+#include <gtk/gtk.h>
+#include <tny-msg-folder-iface.h>
+#include <tny-account-tree-model.h>
+#include <tny-msg-iface.h>
+#include <tny-msg-header-iface.h>
+#include <tny-msg-header-list-model.h>
+
+G_BEGIN_DECLS
+
+/* convenience macros */
+#define MODEST_TYPE_TNY_HEADER_TREE_VIEW (modest_tny_header_tree_view_get_type())
+#define MODEST_TNY_HEADER_TREE_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),MODEST_TYPE_TNY_HEADER_TREE_VIEW,ModestTnyHeaderTreeView))
+#define MODEST_TNY_HEADER_TREE_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),MODEST_TYPE_TNY_HEADER_TREE_VIEW,GObject))
+#define MODEST_IS_TNY_HEADER_TREE_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),MODEST_TYPE_TNY_HEADER_TREE_VIEW))
+#define MODEST_IS_TNY_HEADER_TREE_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass),MODEST_TYPE_TNY_HEADER_TREE_VIEW))
+#define MODEST_TNY_HEADER_TREE_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj),MODEST_TYPE_TNY_HEADER_TREE_VIEW,ModestTnyHeaderTreeViewClass))
+
+typedef struct _ModestTnyHeaderTreeView ModestTnyHeaderTreeView;
+typedef struct _ModestTnyHeaderTreeViewClass ModestTnyHeaderTreeViewClass;
+
+struct _ModestTnyHeaderTreeView {
+ GtkTreeView parent;
+ /* insert public members, if any */
+};
+
+struct _ModestTnyHeaderTreeViewClass {
+ GtkTreeViewClass parent_class;
+
+ void (*message_selected) (ModestTnyHeaderTreeView* self,
+ TnyMsgIface *msg,
+ gpointer user_data);
+};
+
+
+/**
+ * modest_tny_header_tree_view_get_type:
+ *
+ * get the GType for ModestTnyHeaderTreeView
+ *
+ * Returns: the GType
+ */
+GType modest_tny_header_tree_view_get_type (void) G_GNUC_CONST;
+
+
+/**
+ * modest_tny_header_tree_view_new:
+ * @folder: a TnyMsgFolderIface object
+ *
+ * create a new ModestTnyHeaderTreeView instance, based on a folder iface
+ *
+ * Returns: a new GtkWidget (a GtkTreeView-subclass)
+ */
+GtkWidget* modest_tny_header_tree_view_new (TnyMsgFolderIface *folder);
+
+
+/**
+ * modest_tny_header_tree_view_set_folder:
+ * @self: a ModestTnyHeaderTreeView instance
+ * @folder: a TnyMsgFolderIface object
+ *
+ * set the folder for this ModestTnyHeaderTreeView
+ *
+ * Returns: TRUE if it succeeded, FALSE otherwise
+ */
+gboolean modest_tny_header_tree_view_set_folder (ModestTnyHeaderTreeView *self,
+ TnyMsgFolderIface *folder);
+
+G_END_DECLS
+
+#endif /* __MODEST_TNY_HEADER_TREE_VIEW_H__ */
+
--- /dev/null
+/* modest-tny-msg-view.c */
+
+/* insert (c)/licensing information) */
+
+#include "modest-tny-msg-view.h"
+/* include other impl specific header files */
+
+/* 'private'/'protected' functions */
+static void modest_tny_msg_view_class_init (ModestTnyMsgViewClass *klass);
+static void modest_tny_msg_view_init (ModestTnyMsgView *obj);
+static void modest_tny_msg_view_finalize (GObject *obj);
+
+/* list my signals */
+enum {
+ /* MY_SIGNAL_1, */
+ /* MY_SIGNAL_2, */
+ LAST_SIGNAL
+};
+
+typedef struct _ModestTnyMsgViewPrivate ModestTnyMsgViewPrivate;
+struct _ModestTnyMsgViewPrivate {
+ GtkWidget *text_view;
+};
+#define MODEST_TNY_MSG_VIEW_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE((o), \
+ MODEST_TYPE_TNY_MSG_VIEW, \
+ ModestTnyMsgViewPrivate))
+/* globals */
+static GtkContainerClass *parent_class = NULL;
+
+/* uncomment the following if you have defined any signals */
+/* static guint signals[LAST_SIGNAL] = {0}; */
+
+GType
+modest_tny_msg_view_get_type (void)
+{
+ static GType my_type = 0;
+ if (!my_type) {
+ static const GTypeInfo my_info = {
+ sizeof(ModestTnyMsgViewClass),
+ NULL, /* base init */
+ NULL, /* base finalize */
+ (GClassInitFunc) modest_tny_msg_view_class_init,
+ NULL, /* class finalize */
+ NULL, /* class data */
+ sizeof(ModestTnyMsgView),
+ 1, /* n_preallocs */
+ (GInstanceInitFunc) modest_tny_msg_view_init,
+ };
+ my_type = g_type_register_static (GTK_TYPE_FRAME,
+ "ModestTnyMsgView",
+ &my_info, 0);
+ }
+ return my_type;
+}
+
+static void
+modest_tny_msg_view_class_init (ModestTnyMsgViewClass *klass)
+{
+ GObjectClass *gobject_class;
+ gobject_class = (GObjectClass*) klass;
+
+ parent_class = g_type_class_peek_parent (klass);
+ gobject_class->finalize = modest_tny_msg_view_finalize;
+
+ g_type_class_add_private (gobject_class, sizeof(ModestTnyMsgViewPrivate));
+
+ /* signal definitions go here, e.g.: */
+/* signals[MY_SIGNAL_1] = */
+/* g_signal_new ("my_signal_1",....); */
+/* signals[MY_SIGNAL_2] = */
+/* g_signal_new ("my_signal_2",....); */
+/* etc. */
+}
+
+static void
+modest_tny_msg_view_init (ModestTnyMsgView *obj)
+{
+ ModestTnyMsgViewPrivate *priv;
+
+ priv = MODEST_TNY_MSG_VIEW_GET_PRIVATE(obj);
+
+ priv->text_view = NULL;
+}
+
+static void
+modest_tny_msg_view_finalize (GObject *obj)
+{
+ /* no need to unref the text_view */
+}
+
+GtkWidget*
+modest_tny_msg_view_new (TnyMsgIface *msg)
+{
+ GObject *obj;
+ ModestTnyMsgView* self;
+ ModestTnyMsgViewPrivate *priv;
+
+ obj = G_OBJECT(g_object_new(MODEST_TYPE_TNY_MSG_VIEW, NULL));
+ self = MODEST_TNY_MSG_VIEW(obj);
+ priv = MODEST_TNY_MSG_VIEW_GET_PRIVATE(self);
+
+ priv->text_view = gtk_text_view_new ();
+ gtk_text_view_set_editable (GTK_TEXT_VIEW(priv->text_view), FALSE);
+ gtk_text_view_set_cursor_visible (GTK_TEXT_VIEW(priv->text_view), FALSE);
+
+ gtk_container_add (GTK_CONTAINER(self), priv->text_view);
+
+ if (msg)
+ modest_tny_msg_view_set_message (self, msg);
+
+ return GTK_WIDGET(self);
+}
+
+
+
+void
+modest_tny_msg_view_set_message (ModestTnyMsgView *self, TnyMsgIface *msg)
+{
+ ModestTnyMsgViewPrivate *priv;
+ GtkTextBuffer *buf;
+ GList *parts;
+ TnyStreamIface *stream;
+
+ g_return_if_fail (self);
+
+ priv = MODEST_TNY_MSG_VIEW_GET_PRIVATE(self);
+ buf = gtk_text_view_get_buffer (GTK_TEXT_VIEW(priv->text_view));
+
+ /* if msg is NULL, just delete the stuff */
+ if (!msg) {
+ gtk_text_buffer_set_text (buf, NULL, 0);
+ return;
+ }
+
+ /* otherwise... find the body part */
+ stream = TNY_STREAM_IFACE(tny_text_buffer_stream_new(buf));
+ parts = (GList*) tny_msg_iface_get_parts (msg);
+ while (parts) {
+ TnyMsgMimePartIface *part =
+ TNY_MSG_MIME_PART_IFACE(parts->data);
+
+ if (tny_msg_mime_part_iface_content_type_is (part, "text/plain")) {
+ tny_stream_iface_reset (stream);
+ tny_msg_mime_part_iface_write_to_stream (part, stream);
+ tny_stream_iface_reset (stream);
+ break;
+ }
+
+ parts = parts->next;
+ }
+}
--- /dev/null
+/* modest-tny-msg-view.h */
+/* insert (c)/licensing information) */
+
+#ifndef __MODEST_TNY_MSG_VIEW_H__
+#define __MODEST_TNY_MSG_VIEW_H__
+
+
+#include <gtk/gtk.h>
+#include <tny-stream-iface.h>
+#include <tny-msg-iface.h>
+#include <tny-msg-mime-part-iface.h>
+
+G_BEGIN_DECLS
+
+/* convenience macros */
+#define MODEST_TYPE_TNY_MSG_VIEW (modest_tny_msg_view_get_type())
+#define MODEST_TNY_MSG_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),MODEST_TYPE_TNY_MSG_VIEW,ModestTnyMsgView))
+#define MODEST_TNY_MSG_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),MODEST_TYPE_TNY_MSG_VIEW,GObject))
+#define MODEST_IS_TNY_MSG_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),MODEST_TYPE_TNY_MSG_VIEW))
+#define MODEST_IS_TNY_MSG_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass),MODEST_TYPE_TNY_MSG_VIEW))
+#define MODEST_TNY_MSG_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj),MODEST_TYPE_TNY_MSG_VIEW,ModestTnyMsgViewClass))
+
+typedef struct _ModestTnyMsgView ModestTnyMsgView;
+typedef struct _ModestTnyMsgViewClass ModestTnyMsgViewClass;
+
+struct _ModestTnyMsgView {
+ GtkFrame parent;
+ /* insert public members, if any */
+};
+
+struct _ModestTnyMsgViewClass {
+ GtkFrameClass parent_class;
+ /* insert signal callback declarations, eg. */
+ /* void (* my_event) (ModestTnyMsgView* obj); */
+};
+
+/* member functions */
+GType modest_tny_msg_view_get_type (void) G_GNUC_CONST;
+
+
+
+GtkWidget* modest_tny_msg_view_new (TnyMsgIface *tny_msg);
+void modest_tny_msg_view_set_message (ModestTnyMsgView *self,
+ TnyMsgIface *tny_msg);
+
+
+G_END_DECLS
+
+#endif /* __MODEST_TNY_MSG_VIEW_H__ */
+
--- /dev/null
+/* modest-ui.h */
+/* insert (c)/licensing information) */
+
+#ifndef __MODEST_UI_H__
+#define __MODEST_UI_H__
+
+#include <glib-object.h>
+#include "modest-conf.h"
+
+G_BEGIN_DECLS
+
+/* convenience macros */
+#define MODEST_TYPE_UI (modest_ui_get_type())
+#define MODEST_UI(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),MODEST_TYPE_UI,ModestUI))
+#define MODEST_UI_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),MODEST_TYPE_UI,GObject))
+#define MODEST_IS_UI(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),MODEST_TYPE_UI))
+#define MODEST_IS_UI_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass),MODEST_TYPE_UI))
+#define MODEST_UI_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj),MODEST_TYPE_UI,ModestUIClass))
+
+typedef struct _ModestUI ModestUI;
+typedef struct _ModestUIClass ModestUIClass;
+
+struct _ModestUI {
+ GObject parent;
+ /* insert public members, if any */
+};
+
+struct _ModestUIClass {
+ GObjectClass parent_class;
+ /* insert signal callback declarations, eg. */
+ /* void (* my_event) (ModestUI* obj); */
+};
+
+
+/**
+ * modest_ui_get_type:
+ *
+ * get the GType for ModestUI
+ *
+ * Returns: the GType
+ */
+GType modest_ui_get_type (void) G_GNUC_CONST;
+
+
+
+/**
+ * modest_ui_new:
+ * @modest_conf: a ModestConf instance
+ *
+ * Returns: a new ModestUI, or NULL in case of error
+ */
+GObject* modest_ui_new (ModestConf *modest_conf);
+
+
+/**
+ * modest_ui_show_main_window:
+ * @ui: a ModestUI instance
+ *
+ * Returns: TRUE if succeeded, FALSE otherwise
+ *
+ */
+gboolean modest_ui_show_main_window (ModestUI *ui);
+
+
+/**
+ * modest_ui_show_new_edit_window:
+ * @ui: a ModestUI instance
+ * @to: people to send this to, ';' separated
+ * @cc: people send carbon-copies (cc), ';' separated
+ * @bcc people send blind-carbon-copies (bcc),';' separated
+ * @subject: the subject of the message
+ * @body: the body text of the message
+ * @att: a list with the filepaths for attachments
+ *
+ * Returns: TRUE if succeeded, FALSE otherwise
+ */
+gboolean modest_ui_show_edit_window (ModestUI *ui,
+ const gchar* to,
+ const gchar* cc,
+ const gchar* bcc,
+ const gchar* subject,
+ const gchar* body,
+ const GSList* att);
+
+G_END_DECLS
+
+#endif /* __MODEST_UI_H__ */
+
--- /dev/null
+/* modest-window-mgr.c */
+
+/* insert (c)/licensing information) */
+
+#include "modest-window-mgr.h"
+/* include other impl specific header files */
+
+/* 'private'/'protected' functions */
+static void modest_window_mgr_class_init (ModestWindowMgrClass *klass);
+static void modest_window_mgr_init (ModestWindowMgr *obj);
+static void modest_window_mgr_finalize (GObject *obj);
+
+/* list my signals */
+enum {
+ /* MY_SIGNAL_1, */
+ /* MY_SIGNAL_2, */
+ LAST_WINDOW_CLOSED_SIGNAL,
+ LAST_SIGNAL
+};
+
+typedef struct _ModestWindowMgrPrivate ModestWindowMgrPrivate;
+struct _ModestWindowMgrPrivate {
+ GSList *open_windows;
+
+};
+#define MODEST_WINDOW_MGR_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE((o), \
+ MODEST_TYPE_WINDOW_MGR, \
+ ModestWindowMgrPrivate))
+/* globals */
+static GObjectClass *parent_class = NULL;
+
+static guint signals[LAST_SIGNAL] = {0};
+
+GType
+modest_window_mgr_get_type (void)
+{
+ static GType my_type = 0;
+ if (!my_type) {
+ static const GTypeInfo my_info = {
+ sizeof(ModestWindowMgrClass),
+ NULL, /* base init */
+ NULL, /* base finalize */
+ (GClassInitFunc) modest_window_mgr_class_init,
+ NULL, /* class finalize */
+ NULL, /* class data */
+ sizeof(ModestWindowMgr),
+ 1, /* n_preallocs */
+ (GInstanceInitFunc) modest_window_mgr_init,
+ };
+ my_type = g_type_register_static (G_TYPE_OBJECT,
+ "ModestWindowMgr",
+ &my_info, 0);
+ }
+ return my_type;
+}
+
+static void
+modest_window_mgr_class_init (ModestWindowMgrClass *klass)
+{
+ GObjectClass *gobject_class;
+ gobject_class = (GObjectClass*) klass;
+
+ parent_class = g_type_class_peek_parent (klass);
+ gobject_class->finalize = modest_window_mgr_finalize;
+
+ g_type_class_add_private (gobject_class, sizeof(ModestWindowMgrPrivate));
+
+ signals[LAST_WINDOW_CLOSED_SIGNAL] =
+ g_signal_new ("last_window_closed",
+ G_TYPE_FROM_CLASS(gobject_class),
+ G_SIGNAL_RUN_FIRST,
+ G_STRUCT_OFFSET(ModestWindowMgrClass, last_window_closed),
+ NULL, NULL,
+ g_cclosure_marshal_VOID__VOID,
+ G_TYPE_NONE, 0);
+}
+
+static void
+modest_window_mgr_init (ModestWindowMgr *obj)
+{
+ ModestWindowMgrPrivate *priv = MODEST_WINDOW_MGR_GET_PRIVATE(obj);
+ priv->open_windows = NULL;
+}
+
+static void
+modest_window_mgr_finalize (GObject *obj)
+{
+ ModestWindowMgrPrivate *priv = MODEST_WINDOW_MGR_GET_PRIVATE(obj);
+ g_slist_free (priv->open_windows);
+ priv->open_windows = NULL;
+}
+
+GObject*
+modest_window_mgr_new (void)
+{
+ return G_OBJECT(g_object_new(MODEST_TYPE_WINDOW_MGR, NULL));
+}
+
+/* insert many other interesting function implementations */
+/* such as modest_window_mgr_do_something, or modest_window_mgr_has_foo */
+
+gboolean
+modest_window_mgr_register (ModestWindowMgr *self, GObject *win,
+ ModestWindowType type,
+ guint window_id)
+{
+ ModestOpenWindow *openwin = NULL;
+ ModestWindowMgrPrivate *priv;
+
+ g_return_val_if_fail (self, FALSE);
+ g_return_val_if_fail (type==MODEST_MAIN_WINDOW||type==MODEST_EDIT_WINDOW,
+ FALSE);
+
+ priv = MODEST_WINDOW_MGR_GET_PRIVATE(self);
+
+ openwin = g_new (ModestOpenWindow, 1);
+ openwin->win = win;
+ openwin->type = type;
+ openwin->id = window_id;
+
+ priv->open_windows = g_slist_prepend (priv->open_windows, openwin);
+
+ return TRUE;
+}
+
+
+
+gboolean
+modest_window_mgr_unregister (ModestWindowMgr *self, GObject *win)
+{
+ ModestWindowMgrPrivate *priv;
+ GSList *cursor;
+ gboolean found = FALSE;
+
+ g_return_val_if_fail (self, FALSE);
+ g_return_val_if_fail (win, FALSE);
+
+ priv = MODEST_WINDOW_MGR_GET_PRIVATE(self);
+
+ cursor = priv->open_windows;
+ while (cursor) {
+ if (((ModestOpenWindow*)cursor->data)->win == win) {
+ priv->open_windows = g_slist_delete_link (priv->open_windows,
+ cursor);
+ found = TRUE;
+ break;
+ }
+ cursor = cursor->next;
+ }
+ if (found) {
+ guint win_num = g_slist_length (priv->open_windows);
+ if (win_num == 0)
+ g_signal_emit (self, signals[LAST_WINDOW_CLOSED_SIGNAL],
+ 0);
+ }
+
+ return found;
+}
+
+
+GObject *
+modest_window_mgr_find_by_type (ModestWindowMgr *self, ModestWindowType type)
+{
+ ModestWindowMgrPrivate *priv;
+ GSList *cursor;
+
+ g_return_val_if_fail (self, NULL);
+
+ priv = MODEST_WINDOW_MGR_GET_PRIVATE(self);
+ cursor = priv->open_windows;
+ while (cursor) {
+ ModestOpenWindow *openwin = (ModestOpenWindow*)cursor->data;
+ if (openwin->type == type)
+ return openwin->win;
+ cursor = cursor->next;
+ }
+
+ return NULL;
+}
+
+
+GObject *
+modest_window_mgr_find_by_id (ModestWindowMgr *self, gint window_id)
+{
+ ModestWindowMgrPrivate *priv;
+ GSList *cursor;
+
+ g_return_val_if_fail (self, NULL);
+
+ priv = MODEST_WINDOW_MGR_GET_PRIVATE(self);
+ cursor = priv->open_windows;
+ while (cursor) {
+ ModestOpenWindow *openwin = (ModestOpenWindow*)cursor->data;
+ if (openwin->id == window_id)
+ return openwin->win;
+ cursor = cursor->next;
+ }
+ return NULL;
+}
+
--- /dev/null
+/* modest-window-mgr.h */
+/* insert (c)/licensing information) */
+
+#ifndef __MODEST_WINDOW_MGR_H__
+#define __MODEST_WINDOW_MGR_H__
+
+#include <glib-object.h>
+/* other include files */
+
+G_BEGIN_DECLS
+
+/* convenience macros */
+#define MODEST_TYPE_WINDOW_MGR (modest_window_mgr_get_type())
+#define MODEST_WINDOW_MGR(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),MODEST_TYPE_WINDOW_MGR,ModestWindowMgr))
+#define MODEST_WINDOW_MGR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),MODEST_TYPE_WINDOW_MGR,GObject))
+#define MODEST_IS_WINDOW_MGR(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),MODEST_TYPE_WINDOW_MGR))
+#define MODEST_IS_WINDOW_MGR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass),MODEST_TYPE_WINDOW_MGR))
+#define MODEST_WINDOW_MGR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj),MODEST_TYPE_WINDOW_MGR,ModestWindowMgrClass))
+
+enum {
+ MODEST_MAIN_WINDOW, /* the main window */
+ MODEST_EDIT_WINDOW, /* a window to edit a mail */
+ MODEST_ACCOUNT_WINDOW, /* a window to edit account information */
+ MODEST_VIEW_WINDOW /* a window to view mails */
+};
+typedef guint ModestWindowType;
+
+
+typedef struct _ModestOpenWindow ModestOpenWindow;
+struct _ModestOpenWindow {
+ GObject *win;
+ ModestWindowType type;
+ guint id;
+};
+
+
+typedef struct _ModestWindowMgr ModestWindowMgr;
+typedef struct _ModestWindowMgrClass ModestWindowMgrClass;
+
+struct _ModestWindowMgr {
+ GObject parent;
+};
+
+struct _ModestWindowMgrClass {
+ GObjectClass parent_class;
+
+ void (* last_window_closed) (ModestWindowMgr* obj);
+};
+
+/* member functions */
+GType modest_window_mgr_get_type (void) G_GNUC_CONST;
+
+/* typical parameter-less _new function */
+/* if this is a kind of GtkWidget, it should probably return at GtkWidget*, */
+/* otherwise probably a GObject*. */
+GObject* modest_window_mgr_new (void);
+
+gboolean modest_window_mgr_register (ModestWindowMgr *self, GObject *win,
+ ModestWindowType type, guint window_id);
+gboolean modest_window_mgr_unregister (ModestWindowMgr *self, GObject *win);
+GObject* modest_window_mgr_find_by_type (ModestWindowMgr *self, ModestWindowType type);
+GObject* modest_window_mgr_find_by_id (ModestWindowMgr *self, gint window_id);
+
+G_END_DECLS
+
+#endif /* __MODEST_WINDOW_MGR_H__ */
+