glade/gladeui/glade-utils.h
Tristan Van Berkom 05191e1c37 * gladeui/glade-command.[ch]: Removed glade_command_set_naming_policy().
* gladeui/glade-project.[ch]: Removed naming policy, object ids are always unique.

	* gladeui/glade-editor-property.c, glade-property-class.[ch], gladeui/glade-property.c,
	gladeui/glade-signal-editor.c, gladeui/glade-utils.[ch], gladeui/glade-widget.c,
	gladeui/glade-xml-utils.h, plugins/gtk+/glade-gtk.c, plugins/gtk+/glade-icon-sources.c,
	plugins/gtk+/glade-model-data.c: Removed 'widget' argument from
	glade_property_class_make_gvalue_from_string() and from glade_utils_value_from_string() since
	you never need a common ancestor to search a widget by name anymore.
2011-01-22 17:51:31 +09:00

128 lines
4.8 KiB
C

#ifndef __GLADE_UTILS_H__
#define __GLADE_UTILS_H__
#include <glib.h>
G_BEGIN_DECLS
#define GLADE_DEVHELP_ICON_NAME "devhelp"
#define GLADE_DEVHELP_FALLBACK_ICON_FILE "devhelp.png"
typedef enum _GladeUtilFileDialogType
{
GLADE_FILE_DIALOG_ACTION_OPEN,
GLADE_FILE_DIALOG_ACTION_SAVE
} GladeUtilFileDialogType;
typedef enum
{
GLADE_UI_INFO,
GLADE_UI_WARN,
GLADE_UI_ERROR,
GLADE_UI_ARE_YOU_SURE,
GLADE_UI_YES_OR_NO
} GladeUIMessageType;
/* UI interaction */
gboolean glade_util_ui_message (GtkWidget *parent,
GladeUIMessageType type,
GtkWidget *widget,
const gchar *format, ...);
void glade_util_flash_message (GtkWidget *statusbar,
guint context_id,
gchar *format, ...);
gboolean glade_util_url_show (const gchar *url);
GtkWidget *glade_util_file_dialog_new (const gchar *title,
GladeProject *project,
GtkWindow *parent,
GladeUtilFileDialogType action);
/* Strings */
gint glade_util_compare_stock_labels (gconstpointer a, gconstpointer b);
void glade_util_replace (gchar *str, gchar a, gchar b);
gchar *glade_util_read_prop_name (const gchar *str);
gchar *glade_util_duplicate_underscores (const gchar *name);
/* GModule stuff */
GType glade_util_get_type_from_name (const gchar *name, gboolean have_func);
GParamSpec *glade_utils_get_pspec_from_funcname (const gchar *funcname);
GModule *glade_util_load_library (const gchar *library_name);
/* String/Value utilities */
gint glade_utils_enum_value_from_string (GType enum_type, const gchar *strval);
gchar *glade_utils_enum_string_from_value (GType enum_type, gint value);
gint glade_utils_flags_value_from_string (GType enum_type, const gchar *strval);
gchar *glade_utils_flags_string_from_value (GType enum_type, gint value);
gchar *glade_utils_flags_string_from_value_displayable (GType flags_type, gint value);
gchar *glade_utils_enum_string_from_value_displayable (GType flags_type, gint value);
GValue *glade_utils_value_from_string (GType type,
const gchar *string,
GladeProject *project);
gchar *glade_utils_string_from_value (const GValue *value);
/* Devhelp */
gboolean glade_util_have_devhelp (void);
GtkWidget *glade_util_get_devhelp_icon (GtkIconSize size);
void glade_util_search_devhelp (const gchar *book,
const gchar *page,
const gchar *search);
/* Files/Filenames*/
gchar *glade_utils_replace_home_dir_with_tilde (const gchar *path);
gchar *glade_util_canonical_path (const gchar *path);
time_t glade_util_get_file_mtime (const gchar *filename, GError **error);
gboolean glade_util_file_is_writeable (const gchar *path);
gchar *glade_util_filename_to_icon_name (const gchar *value);
gchar *glade_util_icon_name_to_filename (const gchar *value);
/* Cairo utilities */
void glade_utils_cairo_draw_line (cairo_t *cr,
GdkColor *color,
gint x1,
gint y1,
gint x2,
gint y2);
void glade_utils_cairo_draw_rectangle (cairo_t *cr,
GdkColor *color,
gboolean filled,
gint x,
gint y,
gint width,
gint height);
void glade_util_draw_selection_nodes (GtkWidget* expose_widget, cairo_t *cr);
/* Lists */
GList *glade_util_purify_list (GList *list);
GList *glade_util_added_in_list (GList *old_list,
GList *new_list);
GList *glade_util_removed_from_list (GList *old_list,
GList *new_list);
/* Other utilities */
GtkListStore *glade_utils_liststore_from_enum_type (GType enum_type, gboolean include_empty);
gint glade_utils_hijack_key_press (GtkWindow *win,
GdkEventKey *event,
gpointer user_data);
gboolean glade_util_check_and_warn_scrollable (GladeWidget *parent,
GladeWidgetAdaptor *child_adaptor,
GtkWidget *parent_widget);
GList *glade_util_container_get_all_children (GtkContainer *container);
gint glade_util_count_placeholders (GladeWidget *parent);
GtkTreeIter *glade_util_find_iter_by_widget (GtkTreeModel *model,
GladeWidget *findme,
gint column);
GtkWidget *glade_util_get_placeholder_from_pointer (GtkContainer *container);
gboolean glade_util_object_is_loading (GObject *object);
G_END_DECLS
#endif /* __GLADE_UTILS_H__ */