diff options
Diffstat (limited to 'cut-n-paste-code/libegg/eggsmclient.h')
-rw-r--r-- | cut-n-paste-code/libegg/eggsmclient.h | 172 |
1 files changed, 83 insertions, 89 deletions
diff --git a/cut-n-paste-code/libegg/eggsmclient.h b/cut-n-paste-code/libegg/eggsmclient.h index 1fba40cd..1911b89e 100644 --- a/cut-n-paste-code/libegg/eggsmclient.h +++ b/cut-n-paste-code/libegg/eggsmclient.h @@ -22,9 +22,7 @@ #include <glib-object.h> -#ifdef __cplusplus -extern "C" { -#endif +G_BEGIN_DECLS #define EGG_TYPE_SM_CLIENT (egg_sm_client_get_type ()) #define EGG_SM_CLIENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), EGG_TYPE_SM_CLIENT, EggSMClient)) @@ -33,91 +31,87 @@ extern "C" { #define EGG_IS_SM_CLIENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), EGG_TYPE_SM_CLIENT)) #define EGG_SM_CLIENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), EGG_TYPE_SM_CLIENT, EggSMClientClass)) - typedef struct _EggSMClient EggSMClient; - typedef struct _EggSMClientClass EggSMClientClass; - typedef struct _EggSMClientPrivate EggSMClientPrivate; - - typedef enum - { - EGG_SM_CLIENT_END_SESSION_DEFAULT, - EGG_SM_CLIENT_LOGOUT, - EGG_SM_CLIENT_REBOOT, - EGG_SM_CLIENT_SHUTDOWN - } EggSMClientEndStyle; - - typedef enum - { - EGG_SM_CLIENT_MODE_DISABLED, - EGG_SM_CLIENT_MODE_NO_RESTART, - EGG_SM_CLIENT_MODE_NORMAL - } EggSMClientMode; - - struct _EggSMClient - { - GObject parent; - - }; - - struct _EggSMClientClass - { - GObjectClass parent_class; - - /* signals */ - void (*save_state) (EggSMClient *client, - GKeyFile *state_file); - - void (*quit_requested) (EggSMClient *client); - void (*quit_cancelled) (EggSMClient *client); - void (*quit) (EggSMClient *client); - - /* virtual methods */ - void (*startup) (EggSMClient *client, - const char *client_id); - void (*set_restart_command) (EggSMClient *client, - int argc, - const char **argv); - void (*will_quit) (EggSMClient *client, - gboolean will_quit); - gboolean (*end_session) (EggSMClient *client, - EggSMClientEndStyle style, - gboolean request_confirmation); - - /* Padding for future expansion */ - void (*_egg_reserved1) (void); - void (*_egg_reserved2) (void); - void (*_egg_reserved3) (void); - void (*_egg_reserved4) (void); - }; - - GType egg_sm_client_get_type (void) G_GNUC_CONST; - - GOptionGroup *egg_sm_client_get_option_group (void); - - /* Initialization */ - void egg_sm_client_set_mode (EggSMClientMode mode); - EggSMClientMode egg_sm_client_get_mode (void); - EggSMClient *egg_sm_client_get (void); - - /* Resuming a saved session */ - gboolean egg_sm_client_is_resumed (EggSMClient *client); - GKeyFile *egg_sm_client_get_state_file (EggSMClient *client); - - /* Alternate means of saving state */ - void egg_sm_client_set_restart_command (EggSMClient *client, - int argc, - const char **argv); - - /* Handling "quit_requested" signal */ - void egg_sm_client_will_quit (EggSMClient *client, - gboolean will_quit); - - /* Initiate a logout/reboot/shutdown */ - gboolean egg_sm_client_end_session (EggSMClientEndStyle style, - gboolean request_confirmation); - -#ifdef __cplusplus -} -#endif - +typedef struct _EggSMClient EggSMClient; +typedef struct _EggSMClientClass EggSMClientClass; +typedef struct _EggSMClientPrivate EggSMClientPrivate; + +typedef enum +{ + EGG_SM_CLIENT_END_SESSION_DEFAULT, + EGG_SM_CLIENT_LOGOUT, + EGG_SM_CLIENT_REBOOT, + EGG_SM_CLIENT_SHUTDOWN +} EggSMClientEndStyle; + +typedef enum +{ + EGG_SM_CLIENT_MODE_DISABLED, + EGG_SM_CLIENT_MODE_NO_RESTART, + EGG_SM_CLIENT_MODE_NORMAL +} EggSMClientMode; + +struct _EggSMClient +{ + GObject parent; +}; + +struct _EggSMClientClass +{ + GObjectClass parent_class; + + /* signals */ + void (*save_state) (EggSMClient *client, + GKeyFile *state_file); + + void (*quit_requested) (EggSMClient *client); + void (*quit_cancelled) (EggSMClient *client); + void (*quit) (EggSMClient *client); + + /* virtual methods */ + void (*startup) (EggSMClient *client, + const char *client_id); + void (*set_restart_command) (EggSMClient *client, + int argc, + const char **argv); + void (*will_quit) (EggSMClient *client, + gboolean will_quit); + gboolean (*end_session) (EggSMClient *client, + EggSMClientEndStyle style, + gboolean request_confirmation); + + /* Padding for future expansion */ + void (*_egg_reserved1) (void); + void (*_egg_reserved2) (void); + void (*_egg_reserved3) (void); + void (*_egg_reserved4) (void); +}; + +GType egg_sm_client_get_type (void) G_GNUC_CONST; + +GOptionGroup *egg_sm_client_get_option_group (void); + +/* Initialization */ +void egg_sm_client_set_mode (EggSMClientMode mode); +EggSMClientMode egg_sm_client_get_mode (void); +EggSMClient *egg_sm_client_get (void); + +/* Resuming a saved session */ +gboolean egg_sm_client_is_resumed (EggSMClient *client); +GKeyFile *egg_sm_client_get_state_file (EggSMClient *client); + +/* Alternate means of saving state */ +void egg_sm_client_set_restart_command (EggSMClient *client, + int argc, + const char **argv); + +/* Handling "quit_requested" signal */ +void egg_sm_client_will_quit (EggSMClient *client, + gboolean will_quit); + +/* Initiate a logout/reboot/shutdown */ +gboolean egg_sm_client_end_session (EggSMClientEndStyle style, + gboolean request_confirmation); + +G_END_DECLS #endif /* __EGG_SM_CLIENT_H__ */ |