[evolution/tabs-rewrite-v1: 1/31] Add base class for every page.



commit c73fc8e880f736dc917580ce7ddf9d6d2acd067e
Author: Srinivasa Ragavan <sragavan gnome org>
Date:   Thu Jul 8 00:40:22 2010 +0530

    Add base class for every page.

 mail/e-mail-pane.c |   75 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 mail/e-mail-pane.h |   49 ++++++++++++++++++++++++++++++++++
 2 files changed, 124 insertions(+), 0 deletions(-)
---
diff --git a/mail/e-mail-pane.c b/mail/e-mail-pane.c
new file mode 100644
index 0000000..879a90b
--- /dev/null
+++ b/mail/e-mail-pane.c
@@ -0,0 +1,75 @@
+/*
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) version 3.
+ *
+ * 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
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with the program; if not, see <http://www.gnu.org/licenses/>  
+ *
+ *
+ * Authors:
+ *		Srinivasa Ragavan <sragavan gnome org>
+ *
+ * Copyright (C) 2010 Intel corporation. (www.intel.com)
+ *
+ */
+
+#ifdef HAVE_CONFIG_H
+#  include <config.h>
+#endif
+
+
+#include <glib.h>
+#include <glib/gi18n.h>
+#include "e-mail-pane.h"
+
+
+G_DEFINE_TYPE (EMailPane, e_mail_pane, GTK_TYPE_VBOX)
+
+enum {
+	PANE_CLOSE,
+	LAST_SIGNAL
+};
+
+static guint signals[LAST_SIGNAL] = { 0 };
+
+static void
+e_mail_pane_init (EMailPane  *shell)
+{
+	shell->priv = g_new0(EMailPanePrivate, 1);
+}
+
+static void
+e_mail_pane_finalize (GObject *object)
+{
+	/* EMailPane *shell = (EMailPane *)object; */
+
+	G_OBJECT_CLASS (e_mail_pane_parent_class)->finalize (object);
+}
+
+static void
+e_mail_pane_class_init (EMailPaneClass *klass)
+{
+	GObjectClass * object_class = G_OBJECT_CLASS (klass);
+
+	e_mail_pane_parent_class = g_type_class_peek_parent (klass);
+	object_class->finalize = e_mail_pane_finalize;
+
+	signals[PANE_CLOSE] =
+		g_signal_new ("pane-close",
+			      G_OBJECT_CLASS_TYPE (object_class),
+			      G_SIGNAL_RUN_FIRST,
+			      G_STRUCT_OFFSET (EMailPaneClass , view_close),
+			      NULL, NULL,
+			      g_cclosure_marshal_VOID__VOID,
+			      G_TYPE_NONE, 0);
+
+}
+
+
diff --git a/mail/e-mail-pane.h b/mail/e-mail-pane.h
new file mode 100644
index 0000000..f8383d2
--- /dev/null
+++ b/mail/e-mail-pane.h
@@ -0,0 +1,49 @@
+/*
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) version 3.
+ *
+ * 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
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with the program; if not, see <http://www.gnu.org/licenses/>  
+ *
+ *
+ * Authors:
+ *		Srinivasa Ragavan <sragavan gnome org>
+ *
+ * Copyright (C) 2010 Intel corporation. (www.intel.com)
+ *
+ */
+
+#ifndef _E_MAIL_PANE_H_
+#define _E_MAIL_PANE_H_
+
+#include <gtk/gtk.h>
+
+#define E_MAIL_PANE_TYPE        (e_mail_pane_get_type ())
+#define E_MAIL_PANE(o)          (G_TYPE_CHECK_INSTANCE_CAST ((o), E_MAIL_PANE_TYPE, MailFolderView))
+#define E_MAIL_PANE_CLASS(k)    (G_TYPE_CHECK_CLASS_CAST((k), E_MAIL_PANE_TYPE, MailFolderViewClass))
+#define IS_E_MAIL_PANE(o)       (G_TYPE_CHECK_INSTANCE_TYPE ((o), E_MAIL_PANE_TYPE))
+#define IS_E_MAIL_PANE_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), E_MAIL_PANE_TYPE))
+#define E_MAIL_PANE_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS((o), E_MAIL_PANE_TYPE, EMailPaneClass))
+
+
+typedef struct _EMailPanePrivate EMailPanePrivate;
+
+typedef struct _EMailPane {
+	GtkVBox parent;
+
+	EMailPanePrivate *priv;
+} EMailPane;
+
+typedef struct _EMailPaneClass {
+	GtkVBoxClass parent_class;
+
+} EMailPaneClass;
+
+#endif



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]