BEAST/BSE - Better Audio System and Sound Engine  0.8.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
gxkcellrendererpopup.hh
Go to the documentation of this file.
00001  // Licensed GNU LGPL v2.1 or later: http://www.gnu.org/licenses/lgpl.html
00002 #ifndef __GXK_CELL_RENDERER_POPUP_H__
00003 #define __GXK_CELL_RENDERER_POPUP_H__
00004 
00005 #include <gxk/gxkutils.hh>
00006 #include <gtk/gtkcellrenderertext.h>
00007 #include <gtk/gtkeventbox.h>
00008 
00009 G_BEGIN_DECLS
00010 
00011 /* --- type macros --- */
00012 #define GXK_TYPE_CELL_RENDERER_POPUP              (gxk_cell_renderer_popup_get_type ())
00013 #define GXK_CELL_RENDERER_POPUP(object)           (G_TYPE_CHECK_INSTANCE_CAST ((object), GXK_TYPE_CELL_RENDERER_POPUP, GxkCellRendererPopup))
00014 #define GXK_CELL_RENDERER_POPUP_CLASS(klass)      (G_TYPE_CHECK_CLASS_CAST ((klass), GXK_TYPE_CELL_RENDERER_POPUP, GxkCellRendererPopupClass))
00015 #define GXK_IS_CELL_RENDERER_POPUP(object)        (G_TYPE_CHECK_INSTANCE_TYPE ((object), GXK_TYPE_CELL_RENDERER_POPUP))
00016 #define GXK_IS_CELL_RENDERER_POPUP_CLASS(klass)   (G_TYPE_CHECK_CLASS_TYPE ((klass), GXK_TYPE_CELL_RENDERER_POPUP))
00017 #define GXK_CELL_RENDERER_POPUP_GET_CLASS(object) (G_TYPE_INSTANCE_GET_CLASS ((object), GXK_TYPE_CELL_RENDERER_POPUP, GxkCellRendererPopupClass))
00018 
00019 
00020 /* --- structures & typedefs --- */
00021 typedef struct {
00022   GtkCellRendererText parent_instace;
00023   GtkWidget          *dialog, *entry;
00024   guint               text_editing : 1;
00025   guint               popup_editing : 1;
00026   guint               auto_popup : 1;
00027 } GxkCellRendererPopup;
00028 typedef struct {
00029   GtkCellRendererTextClass parent_class;
00030   void (*popup) (GxkCellRendererPopup *cell,
00031                  const gchar          *path,
00032                  const gchar          *text);
00033 } GxkCellRendererPopupClass;
00034 
00035 
00036 /* --- functions --- */
00037 GType   gxk_cell_renderer_popup_get_type        (void);
00038 void    gxk_cell_renderer_popup_dialog          (GxkCellRendererPopup   *popup,
00039                                                  GtkWidget              *dialog);
00040 void    gxk_cell_renderer_popup_change          (GxkCellRendererPopup   *popup,
00041                                                  const gchar            *text,
00042                                                  gboolean                preserve_popup,
00043                                                  gboolean                keep_editing);
00044 
00045 
00046 /* --- type macros --- */
00047 #define GXK_TYPE_PROXY_EDITABLE              (gxk_proxy_editable_get_type ())
00048 #define GXK_PROXY_EDITABLE(object)           (G_TYPE_CHECK_INSTANCE_CAST ((object), GXK_TYPE_PROXY_EDITABLE, GxkProxyEditable))
00049 #define GXK_PROXY_EDITABLE_CLASS(klass)      (G_TYPE_CHECK_CLASS_CAST ((klass), GXK_TYPE_PROXY_EDITABLE, GxkProxyEditableClass))
00050 #define GXK_IS_PROXY_EDITABLE(object)        (G_TYPE_CHECK_INSTANCE_TYPE ((object), GXK_TYPE_PROXY_EDITABLE))
00051 #define GXK_IS_PROXY_EDITABLE_CLASS(klass)   (G_TYPE_CHECK_CLASS_TYPE ((klass), GXK_TYPE_PROXY_EDITABLE))
00052 #define GXK_PROXY_EDITABLE_GET_CLASS(object) (G_TYPE_INSTANCE_GET_CLASS ((object), GXK_TYPE_PROXY_EDITABLE, GxkProxyEditableClass))
00053 
00054 
00055 /* --- structures & typedefs --- */
00056 typedef struct {
00057   GtkEventBox      parent_instace;
00058   GtkCellEditable *ecell;
00059   guint8           block_start_editing;
00060   guint8           block_remove_widget;
00061   guint8           block_editing_done;
00062 } GxkProxyEditable;
00063 typedef struct {
00064   GtkEventBoxClass parent_class;
00065 } GxkProxyEditableClass;
00066 
00067 
00068 /* --- functions --- */
00069 GType   gxk_proxy_editable_get_type             (void);
00070 void    gxk_proxy_editable_set_cell_editable    (GxkProxyEditable       *self,
00071                                                  GtkCellEditable        *ecell);
00072 
00073 
00074 G_END_DECLS
00075 
00076 #endif  /* __GXK_CELL_RENDERER_POPUP_H__ */
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines