summaryrefslogtreecommitdiff
path: root/libmdock/mdock-item.h
diff options
context:
space:
mode:
Diffstat (limited to 'libmdock/mdock-item.h')
-rw-r--r--libmdock/mdock-item.h28
1 files changed, 23 insertions, 5 deletions
diff --git a/libmdock/mdock-item.h b/libmdock/mdock-item.h
index c934cf4..619f2c8 100644
--- a/libmdock/mdock-item.h
+++ b/libmdock/mdock-item.h
@@ -21,6 +21,9 @@
#define __MDOCK_ITEM_H__
#include <gtk/gtk.h>
+#include <gio/gdesktopappinfo.h>
+#define WNCK_I_KNOW_THIS_IS_UNSTABLE 1
+#include <libwnck/libwnck.h>
G_BEGIN_DECLS
@@ -38,21 +41,36 @@ typedef struct _MDockItemPrivate MDockItemPrivate;
typedef enum {
MDOCK_ITEM_TYPE_APPLICATION,
- MDOCK_ITEM_TYPE_LAUNCHER
+ MDOCK_ITEM_TYPE_LAUNCHER,
+ MDOCK_ITEM_TYPE_SEPARATOR,
+ MDOCK_ITEM_TYPE_MINIMIZED_WINDOW
} MDockItemType;
struct _MDockItem {
- GtkBin parent;
+ GtkWidget parent;
MDockItemPrivate *priv;
};
struct _MDockItemClass {
- GtkBinClass parent_class;
+ GtkWidgetClass parent_class;
};
-GType mdock_item_get_type (void) G_GNUC_CONST;
-MDockItem *mdock_item_new (void);
+GType mdock_item_get_type(void) G_GNUC_CONST;
+MDockItem *mdock_item_new(MDockItemType type);
+
+MDockItemType mdock_item_get_item_type(MDockItem *self);
+void mdock_item_set_item_type(MDockItem *self, MDockItemType type);
+
+GDesktopAppInfo *mdock_item_get_desktop_app_info(MDockItem *self);
+void mdock_item_set_desktop_app_info(MDockItem *self, GDesktopAppInfo *app_info);
+
+void mdock_item_add_window(MDockItem *self, WnckWindow *window);
+void mdock_item_remove_window(MDockItem *self, WnckWindow *window);
+void mdock_item_set_last_active_window(MDockItem *self, WnckWindow *window);
+gint mdock_item_get_num_windows(MDockItem *self);
+
+void mdock_item_close_all_windows(MDockItem *self);
G_END_DECLS