#ifndef __SHELL_REALM_ITEM_H__ #define __SHELL_REALM_ITEM_H__ #include #include #define SHELL_TYPE_REALM_ITEM (shell_realm_item_get_type()) G_DECLARE_FINAL_TYPE (ShellRealmItem, shell_realm_item, SHELL, REALM_ITEM, GObject) typedef enum { SHELL_REALM_ITEM_STATUS_RUNNING = 1 << 0, SHELL_REALM_ITEM_STATUS_CURRENT = 1 << 1, SHELL_REALM_ITEM_STATUS_SYSTEM = 1 << 2, } ShellRealmItemStatus; gboolean shell_realm_is_flag_set (guint8 status, ShellRealmItemStatus flag); ShellRealmItem *shell_realm_item_new (const char *realm_name, const char *description, guint64 namespace, guint8 status); const char *shell_realm_item_get_realm_name (ShellRealmItem *item); const char *shell_realm_item_get_description (ShellRealmItem *item); guint64 shell_realm_item_get_namespace (ShellRealmItem *item); guint shell_realm_item_get_context_id (ShellRealmItem *item); MetaWorkspaceContext *shell_realm_item_get_context (ShellRealmItem *item); void shell_realm_item_set_context (ShellRealmItem *item, MetaWorkspaceContext *context); MetaWorkspace *shell_realm_item_get_active_workspace (ShellRealmItem *item); void shell_realm_item_update (ShellRealmItem *item, const char *realm_name, guint64 namespace, guint8 status); void shell_realm_item_set_current_flag (ShellRealmItem *item, gboolean value); void shell_realm_item_set_running_flag (ShellRealmItem *item, gboolean value); void shell_realm_item_set_current (ShellRealmItem *item); void shell_realm_item_move_window_to_context (ShellRealmItem *item, MetaWindow *window); gboolean shell_realm_item_is_current (ShellRealmItem *item); gboolean shell_realm_item_is_running (ShellRealmItem *item); gboolean shell_realm_item_is_system (ShellRealmItem *item); void shell_realm_item_set_tagged (ShellRealmItem *item, gboolean is_tagged); gboolean shell_realm_item_is_tagged (ShellRealmItem *item); void shell_realm_item_acquire_context (ShellRealmItem *item); #endif //__SHELL_REALM_ITEM_H__