diff options
author | Matthew Barnes <mbarnes@src.gnome.org> | 2008-07-17 03:37:02 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@src.gnome.org> | 2008-07-17 03:37:02 +0800 |
commit | 03a3e6f84638c62c7848eee4d6f71cc4b1a7c1b8 (patch) | |
tree | 39d9a26ea8438f161ca413b197cf62a070b21385 /shell/e-shell-module.h | |
parent | ac0c655f3f2a8e47b0cca877aabae66421c58187 (diff) | |
download | gsoc2013-evolution-03a3e6f84638c62c7848eee4d6f71cc4b1a7c1b8.tar.gz gsoc2013-evolution-03a3e6f84638c62c7848eee4d6f71cc4b1a7c1b8.tar.zst gsoc2013-evolution-03a3e6f84638c62c7848eee4d6f71cc4b1a7c1b8.zip |
Disable all components and plugins. Begin rewriting the shell.
svn path=/branches/kill-bonobo/; revision=35748
Diffstat (limited to 'shell/e-shell-module.h')
-rw-r--r-- | shell/e-shell-module.h | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/shell/e-shell-module.h b/shell/e-shell-module.h new file mode 100644 index 0000000000..175b6dacde --- /dev/null +++ b/shell/e-shell-module.h @@ -0,0 +1,84 @@ +/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */ +/* e-shell-module.h + * + * Copyright (C) 1999-2008 Novell, Inc. (www.novell.com) + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of version 2 of the GNU General Public + * License as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public + * License along with this program; if not, write to the + * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. + */ + +#ifndef E_SHELL_MODULE_H +#define E_SHELL_MODULE_H + +#include "e-shell-common.h" +#include "e-shell-window.h" + +/* Standard GObject macros */ +#define E_TYPE_SHELL_MODULE \ + (e_shell_module_get_type ()) +#define E_SHELL_MODULE(obj) \ + (G_TYPE_CHECK_INSTANCE_CAST \ + ((obj), E_TYPE_SHELL_MODULE, EShellModule)) +#define E_SHELL_MODULE_CLASS(cls) \ + (G_TYPE_CHECK_CLASS_CAST \ + ((cls), E_TYPE_SHELL_MODULE, EShellModuleClass)) +#define E_IS_SHELL_MODULE(obj) \ + (G_TYPE_CHECK_INSTANCE_TYPE \ + ((obj), E_TYPE_SHELL_MODULE)) +#define E_IS_SHELL_MODULE_CLASS(cls) \ + (G_TYPE_CHECK_CLASS_TYPE \ + ((cls), E_TYPE_SHELL_MODULE)) +#define E_SHELL_MODULE_GET_CLASS(obj) \ + (G_TYPE_INSTANCE_GET_CLASS \ + ((obj), E_TYPE_SHELL_MODULE, EShellModuleClass)) + +G_BEGIN_DECLS + +typedef struct _EShellModule EShellModule; +typedef struct _EShellModuleInfo EShellModuleInfo; +typedef struct _EShellModuleClass EShellModuleClass; +typedef struct _EShellModulePrivate EShellModulePrivate; + +struct _EShellModuleInfo { + gint sort_order; + const gchar *aliases; /* colon-separated list */ + const gchar *schemas; /* colon-separated list */ + GType shell_view_type; /* EShellView subclass */ + + void (*window_created) (EShellWindow *window); +}; + +struct _EShellModule { + GTypeModule parent; + EShellModulePrivate *priv; +}; + +struct _EShellModuleClass { + GTypeModuleClass parent_class; +}; + +GType e_shell_module_get_type (void); +EShellModule * e_shell_module_new (const gchar *filename); +gint e_shell_module_compare (EShellModule *shell_module_a, + EShellModule *shell_module_b); +const gchar * e_shell_module_get_filename (EShellModule *shell_module); +GType e_shell_module_get_view_type (EShellModule *shell_module); +void e_shell_module_window_created (EShellModule *shell_module, + EShellWindow *shell_window); +void e_shell_module_set_info (EShellModule *shell_module, + const EShellModuleInfo *info); + +G_END_DECLS + +#endif /* E_SHELL_MODULE_H */ |