|
Packit |
1e8aac |
#ifndef __GLADE_COMMAND_H__
|
|
Packit |
1e8aac |
#define __GLADE_COMMAND_H__
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
#include <gladeui/glade-placeholder.h>
|
|
Packit |
1e8aac |
#include <gladeui/glade-widget.h>
|
|
Packit |
1e8aac |
#include <gladeui/glade-signal.h>
|
|
Packit |
1e8aac |
#include <gladeui/glade-property.h>
|
|
Packit |
1e8aac |
#include <gladeui/glade-project.h>
|
|
Packit |
1e8aac |
#include <glib-object.h>
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
G_BEGIN_DECLS
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
#define GLADE_TYPE_COMMAND (glade_command_get_type ())
|
|
Packit |
1e8aac |
#define GLADE_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GLADE_TYPE_COMMAND, GladeCommand))
|
|
Packit |
1e8aac |
#define GLADE_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GLADE_TYPE_COMMAND, GladeCommandClass))
|
|
Packit |
1e8aac |
#define GLADE_IS_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GLADE_TYPE_COMMAND))
|
|
Packit |
1e8aac |
#define GLADE_IS_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GLADE_TYPE_COMMAND))
|
|
Packit |
1e8aac |
#define GLADE_COMMAND_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GLADE_TYPE_COMMAND, GladeCommandClass))
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
typedef struct _GladeCommand GladeCommand;
|
|
Packit |
1e8aac |
typedef struct _GladeCommandClass GladeCommandClass;
|
|
Packit |
1e8aac |
typedef struct _GladeCommandPrivate GladeCommandPrivate;
|
|
Packit |
1e8aac |
typedef struct _GCSetPropData GCSetPropData;
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
/**
|
|
Packit |
1e8aac |
* GCSetPropData
|
|
Packit |
1e8aac |
* @property: A #GladeProperty to set
|
|
Packit |
1e8aac |
* @new_value: The new #GValue to assign to @property
|
|
Packit |
1e8aac |
* @old_value: The old #GValue of @property
|
|
Packit |
1e8aac |
*
|
|
Packit |
1e8aac |
* #GladeProperties can be set in a list as one command,
|
|
Packit |
1e8aac |
* for Undo purposes; we store the list of #GCSetPropData with
|
|
Packit |
1e8aac |
* their old and new #GValue.
|
|
Packit |
1e8aac |
*/
|
|
Packit |
1e8aac |
struct _GCSetPropData {
|
|
Packit |
1e8aac |
GladeProperty *property;
|
|
Packit |
1e8aac |
GValue *new_value;
|
|
Packit |
1e8aac |
GValue *old_value;
|
|
Packit |
1e8aac |
};
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
struct _GladeCommand
|
|
Packit |
1e8aac |
{
|
|
Packit |
1e8aac |
GObject parent;
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
GladeCommandPrivate *priv;
|
|
Packit |
1e8aac |
};
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
struct _GladeCommandClass
|
|
Packit |
1e8aac |
{
|
|
Packit |
1e8aac |
GObjectClass parent_class;
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
gboolean (* execute) (GladeCommand *this_cmd);
|
|
Packit |
1e8aac |
gboolean (* undo) (GladeCommand *this_cmd);
|
|
Packit |
1e8aac |
gboolean (* unifies) (GladeCommand *this_cmd, GladeCommand *other_cmd);
|
|
Packit |
1e8aac |
void (* collapse) (GladeCommand *this_cmd, GladeCommand *other_cmd);
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
void (* glade_reserved1) (void);
|
|
Packit |
1e8aac |
void (* glade_reserved2) (void);
|
|
Packit |
1e8aac |
void (* glade_reserved3) (void);
|
|
Packit |
1e8aac |
void (* glade_reserved4) (void);
|
|
Packit |
1e8aac |
};
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
GType glade_command_get_type (void);
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
void glade_command_push_group (const gchar *fmt,
|
|
Packit |
1e8aac |
...) G_GNUC_PRINTF (1, 2);
|
|
Packit |
1e8aac |
void glade_command_pop_group (void);
|
|
Packit |
1e8aac |
gint glade_command_get_group_depth (void);
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
G_CONST_RETURN gchar *glade_command_description (GladeCommand *command);
|
|
Packit |
1e8aac |
gint glade_command_group_id (GladeCommand *command);
|
|
Packit |
1e8aac |
gboolean glade_command_execute (GladeCommand *command);
|
|
Packit |
1e8aac |
gboolean glade_command_undo (GladeCommand *command);
|
|
Packit |
1e8aac |
gboolean glade_command_unifies (GladeCommand *command,
|
|
Packit |
1e8aac |
GladeCommand *other);
|
|
Packit |
1e8aac |
void glade_command_collapse (GladeCommand *command,
|
|
Packit |
1e8aac |
GladeCommand *other);
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
/************************ project ******************************/
|
|
Packit |
1e8aac |
void glade_command_set_project_target (GladeProject *project,
|
|
Packit |
1e8aac |
const gchar *catalog,
|
|
Packit |
1e8aac |
gint major,
|
|
Packit |
1e8aac |
gint minor);
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
void glade_command_set_project_domain (GladeProject *project,
|
|
Packit |
1e8aac |
const gchar *domain);
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
void glade_command_set_project_template(GladeProject *project,
|
|
Packit |
1e8aac |
GladeWidget *widget);
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
void glade_command_set_project_license (GladeProject *project,
|
|
Packit |
1e8aac |
const gchar *license);
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
void glade_command_set_project_resource_path (GladeProject *project,
|
|
Packit |
1e8aac |
const gchar *path);
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
/************************** properties *********************************/
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
void glade_command_set_property_enabled(GladeProperty *property,
|
|
Packit |
1e8aac |
gboolean enabled);
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
void glade_command_set_property (GladeProperty *property,
|
|
Packit |
1e8aac |
...);
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
void glade_command_set_property_value (GladeProperty *property,
|
|
Packit |
1e8aac |
const GValue *value);
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
void glade_command_set_properties (GladeProperty *property,
|
|
Packit |
1e8aac |
const GValue *old_value,
|
|
Packit |
1e8aac |
const GValue *new_value,
|
|
Packit |
1e8aac |
...);
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
void glade_command_set_properties_list (GladeProject *project,
|
|
Packit |
1e8aac |
GList *props); /* list of GCSetPropData */
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
/************************** name ******************************/
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
void glade_command_set_name (GladeWidget *glade_widget, const gchar *name);
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
/************************ protection ******************************/
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
void glade_command_lock_widget (GladeWidget *widget,
|
|
Packit |
1e8aac |
GladeWidget *lock);
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
void glade_command_unlock_widget (GladeWidget *widget);
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
/************************ create/add/delete ******************************/
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
void glade_command_add (GList *widgets,
|
|
Packit |
1e8aac |
GladeWidget *parent,
|
|
Packit |
1e8aac |
GladePlaceholder *placeholder,
|
|
Packit |
1e8aac |
GladeProject *project,
|
|
Packit |
1e8aac |
gboolean pasting);
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
void glade_command_delete (GList *widgets);
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
GladeWidget *glade_command_create (GladeWidgetAdaptor *adaptor,
|
|
Packit |
1e8aac |
GladeWidget *parent,
|
|
Packit |
1e8aac |
GladePlaceholder *placeholder,
|
|
Packit |
1e8aac |
GladeProject *project);
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
/************************ cut/paste/dnd ******************************/
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
void glade_command_cut (GList *widgets);
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
void glade_command_paste (GList *widgets,
|
|
Packit |
1e8aac |
GladeWidget *parent,
|
|
Packit |
1e8aac |
GladePlaceholder *placeholder,
|
|
Packit |
1e8aac |
GladeProject *project);
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
void glade_command_dnd (GList *widgets,
|
|
Packit |
1e8aac |
GladeWidget *parent,
|
|
Packit |
1e8aac |
GladePlaceholder *placeholder);
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
/************************ signals ******************************/
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
void glade_command_add_signal (GladeWidget *glade_widget,
|
|
Packit |
1e8aac |
const GladeSignal *signal);
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
void glade_command_remove_signal (GladeWidget *glade_widget,
|
|
Packit |
1e8aac |
const GladeSignal *signal);
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
void glade_command_change_signal (GladeWidget *glade_widget,
|
|
Packit |
1e8aac |
const GladeSignal *old_signal,
|
|
Packit |
1e8aac |
const GladeSignal *new_signal);
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
/************************ set i18n ******************************/
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
void glade_command_set_i18n (GladeProperty *property,
|
|
Packit |
1e8aac |
gboolean translatable,
|
|
Packit |
1e8aac |
const gchar *context,
|
|
Packit |
1e8aac |
const gchar *comment);
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
G_END_DECLS
|
|
Packit |
1e8aac |
|
|
Packit |
1e8aac |
#endif /* __GLADE_COMMAND_H__ */
|