Commit a640af50 authored by Pierre Wieser's avatar Pierre Wieser

Start with GtkBuilder migration

parent ecdf6afd
2009-06-26 Pierre Wieser <pwieser@trychlos.org>
Migration to GtkBuilder.
* configure.ac:
Update Gtk+ dependancy to 2.12 to have gtk_builder functions.
Remove libglade dependancy.
* src/common/na-action-profile.c:
* src/common/na-action.c:
* src/common/na-gconf.c:
* src/common/na-object.c:
* src/common/na-pivot.c
(instance_dispose): g_free( self->private ).
* src/common/na-pivot.c
(na_pivot_get_label_sorted_actions): Removed function.
* src/common/na-iio-provider.c:
Actions list is now automatically sorted by label.
* src/nact/nact-wnd-actions.c:
* src/nact/nact-wnd-actions.h:
Renamed to nact-main-window.{c,h}.
* src/nact/nact-main-window.c:
* src/nact/nact-main-window.h:
* src/nact/nact-action-profile.c:
* src/nact/nact-action-profile.h: New files.
* src/nact/Makefile.am: Updated accordingly.
* src/nact/base-application.c:
* src/nact/base-application.h
(base_application_get_icon_name,
base_application_get_main_window, base_application_run):
New functions.
* src/nact/base-window.c:
* src/nact/base-window.h:
Remove libglade stuff.
Create the structure for derived windows/dialogs.
2009-06-20 Pierre Wieser <pwieser@trychlos.org>
* src/common/na-gconf.c:
......
......@@ -96,21 +96,16 @@ AM_GLIB_GNU_GETTEXT
AC_PATH_PROG([GCONFTOOL],[gconftool-2])
AM_GCONF_SOURCE_2
# these are the version as distributed with CentOS 4.x
# - Gnome 2.8
# - glib 2.4.7
# - autoconf 2.59
# - automake 1.9
# - intltool 0.31
#
# note that requiring through pkg-config the version number of the
# nautilus-extension library actually returns the version number of
# nautilus itself (e.g. 2.24.2) instead of the library version info
# (1.1.0) ; for the usual final user, this is very analog to requiring
# a whole gnome version
#
# Gtk >= 2.12: GtkBuilder
#
GLIB_REQUIRED=2.16.0
GTK_REQUIRED=2.4.0
GLADE_REQUIRED=2.4.0
GTK_REQUIRED=2.12.0
GNOME_REQUIRED=2.7.0
NAUTILUS_EXTENSION=2.8.0
GCONF_REQUIRED=2.8.0
......@@ -127,7 +122,6 @@ PKG_CHECK_MODULES([NAUTILUS_ACTIONS], \
gthread-2.0 >= ${GLIB_REQUIRED} \
gmodule-2.0 >= ${GLIB_REQUIRED} \
gtk+-2.0 >= ${GTK_REQUIRED} \
libglade-2.0 >= ${GLADE_REQUIRED} \
libgnome-2.0 >= ${GNOME_REQUIRED} \
libgnomeui-2.0 >= ${GNOME_REQUIRED} \
gconf-2.0 >= ${GCONF_REQUIRED} \
......
......@@ -442,6 +442,8 @@ instance_finalize( GObject *object )
na_utils_free_string_list( self->private->mimetypes );
na_utils_free_string_list( self->private->schemes );
g_free( self->private );
/* chain call to parent class */
if((( GObjectClass * ) st_parent_class )->finalize ){
G_OBJECT_CLASS( st_parent_class )->finalize( object );
......
......@@ -341,6 +341,8 @@ instance_finalize( GObject *object )
g_free( self->private->tooltip );
g_free( self->private->icon );
g_free( self->private );
/* chain call to parent class */
if((( GObjectClass * ) st_parent_class )->finalize ){
G_OBJECT_CLASS( st_parent_class )->finalize( object );
......
......@@ -267,7 +267,9 @@ static void
instance_finalize( GObject *object )
{
g_assert( NA_IS_GCONF( object ));
/*NAGConf *self = NA_GCONF( object );*/
NAGConf *self = NA_GCONF( object );
g_free( self->private );
/* chain call to parent class */
if( st_parent_class->finalize ){
......
......@@ -51,6 +51,8 @@ static void interface_base_finalize( NAIIOProviderInterface *klass );
static gboolean do_is_writable( NAIIOProvider *instance );
static gboolean do_is_willing_to_write( NAIIOProvider *instance, const GObject *action );
static gint sort_actions_by_label( gconstpointer a1, gconstpointer a2 );
/**
* Registers the GType of this interface.
*/
......@@ -165,6 +167,8 @@ na_iio_provider_read_actions( const GObject *object )
}
}
actions = g_slist_sort( actions, ( GCompareFunc ) sort_actions_by_label );
#ifdef NACT_MAINTAINER_MODE
for( ip = actions ; ip ; ip = ip->next ){
na_object_dump( NA_OBJECT( ip->data ));
......@@ -230,3 +234,20 @@ do_is_willing_to_write( NAIIOProvider *instance, const GObject *action )
{
return( FALSE );
}
static gint
sort_actions_by_label( gconstpointer a1, gconstpointer a2 )
{
NAAction *action1 = NA_ACTION( a1 );
gchar *label1 = na_action_get_label( action1 );
NAAction *action2 = NA_ACTION( a2 );
gchar *label2 = na_action_get_label( action2 );
gint ret = g_utf8_collate( label1, label2 );
g_free( label1 );
g_free( label2 );
return( ret );
}
......@@ -139,7 +139,9 @@ static void
instance_finalize( GObject *object )
{
g_assert( NA_IS_OBJECT( object ));
/*NAObject *self = ( NAObject * ) object;*/
NAObject *self = ( NAObject * ) object;
g_free( self->private );
/* chain call to parent class */
if( st_parent_class->finalize ){
......
......@@ -99,7 +99,6 @@ static void instance_set_property( GObject *object, guint property_id, const
static void instance_dispose( GObject *object );
static void instance_finalize( GObject *object );
static gint sort_actions_by_label( gconstpointer a1, gconstpointer a2 );
static void action_changed_handler( NAPivot *pivot, gpointer user_data );
static gboolean on_action_changed_timeout( gpointer user_data );
static gulong time_val_diff( const GTimeVal *recent, const GTimeVal *old );
......@@ -275,6 +274,8 @@ instance_finalize( GObject *object )
g_slist_free( self->private->providers );
self->private->providers = NULL;
g_free( self->private );
/* chain call to parent class */
if((( GObjectClass * ) st_parent_class )->finalize ){
G_OBJECT_CLASS( st_parent_class )->finalize( object );
......@@ -326,22 +327,6 @@ na_pivot_get_providers( const NAPivot *pivot, GType type )
return( list );
}
/**
* Return the list of actions, sorted by label.
*
* @pivot: this NAPivot object.
*
* The returned list is owned by this NAPivot object, and should not
* be freed, nor unref by the caller.
*/
GSList *
na_pivot_get_label_sorted_actions( const NAPivot *pivot )
{
g_assert( NA_IS_PIVOT( pivot ));
GSList *sorted = g_slist_sort( pivot->private->actions, ( GCompareFunc ) sort_actions_by_label );
return( sorted );
}
/**
* Return the list of actions.
*
......@@ -372,23 +357,6 @@ na_pivot_free_actions( GSList *actions )
g_slist_free( actions );
}
static gint
sort_actions_by_label( gconstpointer a1, gconstpointer a2 )
{
NAAction *action1 = NA_ACTION( a1 );
gchar *label1 = na_action_get_label( action1 );
NAAction *action2 = NA_ACTION( a2 );
gchar *label2 = na_action_get_label( action2 );
gint ret = g_utf8_collate( label1, label2 );
g_free( label1 );
g_free( label2 );
return( ret );
}
/**
* Return the specified action.
*
......
......@@ -73,7 +73,6 @@ NAPivot *na_pivot_new( const GObject *notified );
GSList *na_pivot_get_providers( const NAPivot *pivot, GType type );
GSList *na_pivot_get_label_sorted_actions( const NAPivot *pivot );
GSList *na_pivot_get_actions( const NAPivot *pivot );
void na_pivot_free_actions( GSList *actions );
......
......@@ -44,11 +44,15 @@ nautilus_actions_config_SOURCES = \
base-application.h \
base-window.c \
base-window.h \
nact-action-profile.c \
nact-action-profile.h \
nact-application.c \
nact-application.h \
nact-iactions-list.c \
nact-iactions-list.h \
nact-main.c \
nact-main-window.c \
nact-main-window.h \
nact-utils.c \
nact-utils.h \
nact-prefs.c \
......@@ -63,8 +67,6 @@ nautilus_actions_config_SOURCES = \
nact-action-editor.h \
nact-window.c \
nact-window.h \
nact-wnd-actions.c \
nact-wnd-actions.h \
$(NULL)
nautilus_actions_config_LDADD = \
......@@ -72,7 +74,7 @@ nautilus_actions_config_LDADD = \
$(NAUTILUS_ACTIONS_LIBS) \
$(NULL)
glade_DATA = nautilus-actions-config.glade
glade_DATA = nautilus-actions-config.ui
@INTLTOOL_DESKTOP_RULE@
......
......@@ -54,7 +54,10 @@ struct BaseApplicationPrivate {
UniqueApp *unique_app;
gchar *application_name;
gchar *icon_name;
BaseWindow *main_window;
int code;
GtkBuilder *ui_xml;
gchar *ui_fname;
GObject *main_window;
};
/* instance properties
......@@ -64,9 +67,12 @@ enum {
PROP_APPLICATION_ARGV,
PROP_APPLICATION_UNIQUE_NAME,
PROP_APPLICATION_UNIQUE_APP,
PROP_APPLICATION_MAIN_WINDOW,
PROP_APPLICATION_NAME,
PROP_APPLICATION_ICON_NAME
PROP_APPLICATION_ICON_NAME,
PROP_APPLICATION_CODE,
PROP_APPLICATION_UI_XML,
PROP_APPLICATION_UI_FILENAME,
PROP_APPLICATION_MAIN_WINDOW
};
static GObjectClass *st_parent_class = NULL;
......@@ -87,15 +93,16 @@ static void v_initialize_gtk( BaseApplication *application );
static void v_initialize_application_name( BaseApplication *application );
static void v_initialize_icon_name( BaseApplication *application );
static void v_initialize_unique( BaseApplication *application );
static void v_initialize_ui( BaseApplication *application );
static gboolean v_is_willing_to_run( BaseApplication *application );
static void v_advertise_willing_to_run( BaseApplication *application );
static void v_advertise_not_willing_to_run( BaseApplication *application );
static void v_start( BaseApplication *application );
static int v_finish( BaseApplication *application );
static void v_finish( BaseApplication *application );
static gchar *v_get_unique_name( BaseApplication *application );
static gchar *v_get_application_name( BaseApplication *application );
static gchar *v_get_icon_name( BaseApplication *application );
static GObject *v_get_main_window( BaseApplication *application );
static gchar *v_get_ui_filename( BaseApplication *application );
static void do_initialize( BaseApplication *application );
static void do_initialize_i18n( BaseApplication *application );
......@@ -103,16 +110,16 @@ static void do_initialize_gtk( BaseApplication *application );
static void do_initialize_application_name( BaseApplication *application );
static void do_initialize_icon_name( BaseApplication *application );
static void do_initialize_unique( BaseApplication *application );
static void do_initialize_ui( BaseApplication *application );
static gboolean is_willing_to_run( BaseApplication *application );
static gboolean check_for_unique_app( BaseApplication *application );
static void do_advertise_willing_to_run( BaseApplication *application );
static void do_advertise_not_willing_to_run( BaseApplication *application );
static void do_start( BaseApplication *application );
static int do_finish( BaseApplication *application );
static void do_finish( BaseApplication *application );
static gchar *do_get_unique_name( BaseApplication *application );
static gchar *do_get_application_name( BaseApplication *application );
static gchar *do_get_icon_name( BaseApplication *application );
static GObject *do_get_main_window( BaseApplication *application );
/*static UniqueResponse on_unique_message_received( UniqueApp *app, UniqueCommand command, UniqueMessageData *message, guint time, gpointer user_data );*/
......@@ -194,13 +201,6 @@ class_init( BaseApplicationClass *klass )
G_PARAM_STATIC_STRINGS | G_PARAM_READWRITE );
g_object_class_install_property( object_class, PROP_APPLICATION_UNIQUE_APP, spec );
spec = g_param_spec_pointer(
PROP_APPLICATION_MAIN_WINDOW_STR,
PROP_APPLICATION_MAIN_WINDOW_STR,
"The BaseWindow object which encapsulates the main GtkWindow",
G_PARAM_STATIC_STRINGS | G_PARAM_READWRITE );
g_object_class_install_property( object_class, PROP_APPLICATION_MAIN_WINDOW, spec );
spec = g_param_spec_string(
PROP_APPLICATION_NAME_STR,
PROP_APPLICATION_NAME_STR,
......@@ -215,6 +215,34 @@ class_init( BaseApplicationClass *klass )
G_PARAM_STATIC_STRINGS | G_PARAM_READWRITE );
g_object_class_install_property( object_class, PROP_APPLICATION_ICON_NAME, spec );
spec = g_param_spec_int(
PROP_APPLICATION_CODE_STR,
PROP_APPLICATION_CODE_STR,
"Exit code of the application", 0, 65535, 0,
G_PARAM_STATIC_STRINGS | G_PARAM_READWRITE );
g_object_class_install_property( object_class, PROP_APPLICATION_CODE, spec );
spec = g_param_spec_pointer(
PROP_APPLICATION_UI_XML_STR,
PROP_APPLICATION_UI_XML_STR,
"UI definition XML object pointer",
G_PARAM_STATIC_STRINGS | G_PARAM_READWRITE );
g_object_class_install_property( object_class, PROP_APPLICATION_UI_XML, spec );
spec = g_param_spec_string(
PROP_APPLICATION_UI_FILENAME_STR,
PROP_APPLICATION_UI_FILENAME_STR,
"UI definition XML filename", "",
G_PARAM_STATIC_STRINGS | G_PARAM_READWRITE );
g_object_class_install_property( object_class, PROP_APPLICATION_UI_FILENAME, spec );
spec = g_param_spec_pointer(
PROP_APPLICATION_MAIN_WINDOW_STR,
PROP_APPLICATION_MAIN_WINDOW_STR,
"Main BaseWindow object",
G_PARAM_STATIC_STRINGS | G_PARAM_READWRITE );
g_object_class_install_property( object_class, PROP_APPLICATION_MAIN_WINDOW, spec );
klass->private = g_new0( BaseApplicationClassPrivate, 1 );
klass->run = do_run;
......@@ -224,6 +252,7 @@ class_init( BaseApplicationClass *klass )
klass->initialize_application_name = do_initialize_application_name;
klass->initialize_icon_name = do_initialize_icon_name;
klass->initialize_unique = do_initialize_unique;
klass->initialize_ui = do_initialize_ui;
klass->is_willing_to_run = is_willing_to_run;
klass->advertise_willing_to_run = do_advertise_willing_to_run;
klass->advertise_not_willing_to_run = do_advertise_not_willing_to_run;
......@@ -232,7 +261,8 @@ class_init( BaseApplicationClass *klass )
klass->get_unique_name = do_get_unique_name;
klass->get_application_name = do_get_application_name;
klass->get_icon_name = do_get_icon_name;
klass->get_main_window = do_get_main_window;
klass->get_ui_filename = NULL;
klass->get_main_window = NULL;
}
static void
......@@ -247,6 +277,7 @@ instance_init( GTypeInstance *instance, gpointer klass )
self->private = g_new0( BaseApplicationPrivate, 1 );
self->private->dispose_has_run = FALSE;
self->private->code = 0;
}
static void
......@@ -272,10 +303,6 @@ instance_get_property( GObject *object, guint property_id, GValue *value, GParam
g_value_set_pointer( value, self->private->unique_app );
break;
case PROP_APPLICATION_MAIN_WINDOW:
g_value_set_pointer( value, self->private->main_window );
break;
case PROP_APPLICATION_NAME:
g_value_set_string( value, self->private->application_name );
break;
......@@ -284,6 +311,22 @@ instance_get_property( GObject *object, guint property_id, GValue *value, GParam
g_value_set_string( value, self->private->icon_name );
break;
case PROP_APPLICATION_CODE:
g_value_set_int( value, self->private->code );
break;
case PROP_APPLICATION_UI_XML:
g_value_set_pointer( value, self->private->ui_xml );
break;
case PROP_APPLICATION_UI_FILENAME:
g_value_set_string( value, self->private->ui_fname );
break;
case PROP_APPLICATION_MAIN_WINDOW:
g_value_set_pointer( value, self->private->main_window );
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID( object, property_id, spec );
break;
......@@ -314,10 +357,6 @@ instance_set_property( GObject *object, guint property_id, const GValue *value,
self->private->unique_app = g_value_get_pointer( value );
break;
case PROP_APPLICATION_MAIN_WINDOW:
self->private->main_window = g_value_get_pointer( value );
break;
case PROP_APPLICATION_NAME:
g_free( self->private->application_name );
self->private->application_name = g_value_dup_string( value );
......@@ -328,6 +367,23 @@ instance_set_property( GObject *object, guint property_id, const GValue *value,
self->private->icon_name = g_value_dup_string( value );
break;
case PROP_APPLICATION_CODE:
self->private->code = g_value_get_int( value );
break;
case PROP_APPLICATION_UI_XML:
self->private->ui_xml = g_value_get_pointer( value );
break;
case PROP_APPLICATION_UI_FILENAME:
g_free( self->private->ui_fname );
self->private->ui_fname = g_value_dup_string( value );
break;
case PROP_APPLICATION_MAIN_WINDOW:
self->private->main_window = g_value_get_pointer( value );
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID( object, property_id, spec );
break;
......@@ -350,9 +406,8 @@ instance_dispose( GObject *application )
if( UNIQUE_IS_APP( self->private->unique_app )){
g_object_unref( self->private->unique_app );
}
if( GTK_IS_WINDOW( self->private->main_window )){
g_object_unref( self->private->main_window );
}
g_object_unref( self->private->ui_xml );
/* chain up to the parent class */
G_OBJECT_CLASS( st_parent_class )->dispose( application );
......@@ -371,6 +426,9 @@ instance_finalize( GObject *application )
g_free( self->private->unique_name );
g_free( self->private->application_name );
g_free( self->private->icon_name );
g_free( self->private->ui_fname );
g_free( self->private );
/* chain call to parent class */
if( st_parent_class->finalize ){
......@@ -378,34 +436,6 @@ instance_finalize( GObject *application )
}
}
/**
* Returns a newly allocated BaseApplication object.
*/
BaseApplication *
base_application_new( void )
{
return( g_object_new( BASE_APPLICATION_TYPE, NULL ));
}
/**
* Returns a newly allocated BaseApplication object.
*
* @argc: count of command-line arguments.
*
* @argv: command-line arguments.
*/
BaseApplication *
base_application_new_with_args( int argc, char **argv )
{
return(
g_object_new(
BASE_APPLICATION_TYPE,
PROP_APPLICATION_ARGC_STR, argc,
PROP_APPLICATION_ARGV_STR, argv,
NULL )
);
}
/**
* Executes the application.
*
......@@ -431,6 +461,59 @@ base_application_run( BaseApplication *application )
return( BASE_APPLICATION_GET_CLASS( application )->run( application ));
}
gchar *
base_application_get_icon_name( BaseApplication *application )
{
static const gchar *thisfn = "base_application_get_icon_name";
g_debug( "%s: icon=%p", thisfn, application );
g_assert( BASE_IS_APPLICATION( application ));
gchar *name;
g_object_get( G_OBJECT( application ), PROP_APPLICATION_ICON_NAME_STR, &name, NULL );
if( !name || !strlen( name )){
name = BASE_APPLICATION_GET_CLASS( application )->get_icon_name( application );
if( name && strlen( name )){
g_object_set( G_OBJECT( application ), PROP_APPLICATION_ICON_NAME_STR, name, NULL );
}
}
return( name );
}
GObject *
base_application_get_main_window( BaseApplication *application )
{
static const gchar *thisfn = "base_application_get_main_window";
g_debug( "%s: icon=%p", thisfn, application );
g_assert( BASE_IS_APPLICATION( application ));
return( v_get_main_window( application ));
}
GtkWidget *
base_application_get_widget( BaseApplication *application, const gchar *name )
{
/*static const gchar *thisfn = "base_application_get_widget";
g_debug( "%s: application=%p, name=%s", thisfn, application, name );*/
GtkWidget *widget = GTK_WIDGET( gtk_builder_get_object( application->private->ui_xml, name ));
if( !widget ){
gchar *msg = g_strdup_printf(
_( "Unable to load %s widget from %s glade file." ), name, application->private->ui_fname );
base_application_error_dlg( application, GTK_MESSAGE_ERROR, msg, NULL );
g_free( msg );
g_object_set( G_OBJECT( application ), PROP_APPLICATION_CODE_STR, 1, NULL );
} else {
g_assert( GTK_IS_WIDGET( widget ));
}
return( widget );
}
static int
do_run( BaseApplication *application )
{
......@@ -439,22 +522,22 @@ do_run( BaseApplication *application )
g_assert( BASE_IS_APPLICATION( application ));
int code = 0;
v_initialize( application );
if( application->private->code == 0 ){
if( v_is_willing_to_run( application )){
if( v_is_willing_to_run( application )){
v_advertise_willing_to_run( application );
v_start( application );
code = v_finish( application );
v_advertise_willing_to_run( application );
v_start( application );
v_finish( application );
} else {
} else {
v_advertise_not_willing_to_run( application );
v_advertise_not_willing_to_run( application );
}
}
return( code );
return( application->private->code );
}
static void
......@@ -523,6 +606,17 @@ v_initialize_unique( BaseApplication *application )
BASE_APPLICATION_GET_CLASS( application )->initialize_unique( application );
}
static void
v_initialize_ui( BaseApplication *application )
{
static const gchar *thisfn = "base_application_v_initialize_ui";
g_debug( "%s: application=%p", thisfn, application );
g_assert( BASE_IS_APPLICATION( application ));
BASE_APPLICATION_GET_CLASS( application )->initialize_ui( application );
}
static gboolean
v_is_willing_to_run( BaseApplication *application )
{
......@@ -564,10 +658,12 @@ v_start( BaseApplication *application )
g_assert( BASE_IS_APPLICATION( application ));
BASE_APPLICATION_GET_CLASS( application )->start( application );
if( BASE_APPLICATION_GET_CLASS( application )->start ){
BASE_APPLICATION_GET_CLASS( application )->start( application );
}
}
static int
static void
v_finish( BaseApplication *application )
{
static const gchar *thisfn = "base_application_v_finish";
......@@ -575,7 +671,9 @@ v_finish( BaseApplication *application )
g_assert( BASE_IS_APPLICATION( application ));
return( BASE_APPLICATION_GET_CLASS( application )->finish( application ));
if( BASE_APPLICATION_GET_CLASS( application )->finish ){
BASE_APPLICATION_GET_CLASS( application )->finish( application );
}
}
static gchar *
......@@ -621,20 +719,20 @@ v_get_application_name( BaseApplication *application )
}
static gchar *
v_get_icon_name( BaseApplication *application )
v_get_ui_filename( BaseApplication *application )
{
static const gchar *thisfn = "base_application_v_get_icon_name";
static const gchar *thisfn = "base_application_v_get_ui_filename";
g_debug( "%s: icon=%p", thisfn, application );
g_assert( BASE_IS_APPLICATION( application ));
gchar *name;
g_object_get( G_OBJECT( application ), PROP_APPLICATION_ICON_NAME_STR, &name, NULL );
g_object_get( G_OBJECT( application ), PROP_APPLICATION_UI_FILENAME_STR, &name, NULL );
if( !name || !strlen( name )){
name = BASE_APPLICATION_GET_CLASS( application )->get_icon_name( application );
name = BASE_APPLICATION_GET_CLASS( application )->get_ui_filename( application );
if( name && strlen( name )){
g_object_set( G_OBJECT( application ), PROP_APPLICATION_ICON_NAME_STR, name, NULL );
g_object_set( G_OBJECT( application ), PROP_APPLICATION_UI_FILENAME_STR, name, NULL );
}
}
......@@ -649,17 +747,49 @@ v_get_main_window( BaseApplication *application )
g_assert( BASE_IS_APPLICATION( application ));
return( BASE_APPLICATION_GET_CLASS( application )->get_main_window( application ));
if( !application->private->main_window ){
g_assert( BASE_APPLICATION_GET_CLASS( application )->get_main_window );
GObject *main_window = BASE_APPLICATION_GET_CLASS( application )->get_main_window( application );
application->private->main_window = main_window;
}
return( application->private->main_window );
}
static void
do_initialize( BaseApplication *application )
{
v_initialize_i18n( application );
if( application->private->code ){
return;
}
v_initialize_gtk( application );
if( application->private->code ){
return;
}
v_initialize_application_name( application );
if( application->private->code ){
return;
}
v_initialize_icon_name( application );
if( application->private->code ){
return;
}
v_initialize_unique( application );
if( application->private->code ){
return;
}
v_initialize_ui( application );
if( application->private->code ){
return;
}
}
static void
......@@ -680,7 +810,9 @@ do_initialize_gtk( BaseApplication *application )
int argc;
gpointer argv;
g_object_get( G_OBJECT( application ), PROP_APPLICATION_ARGC_STR, &argc, PROP_APPLICATION_ARGV_STR, &argv, NULL );
gtk_init( &argc, ( char *** ) &argv );
g_object_set( G_OBJECT( application ), PROP_APPLICATION_ARGC_STR, argc, PROP_APPLICATION_ARGV_STR,