diff options
author | Mario Sanchez Prada <msanchez@igalia.com> | 2010-04-07 23:19:25 +0800 |
---|---|---|
committer | Xan Lopez <xan@gnome.org> | 2010-04-20 21:07:58 +0800 |
commit | ede59b054c4af72cc41108db8aedafbcae1996de (patch) | |
tree | 3a5581d41025e4687777d376d53c4de490ebe5a3 /src/ephy-navigation-history-action.h | |
parent | 384588b86e68ea692a8f99db86b45ca0cc54f804 (diff) | |
download | gsoc2013-epiphany-ede59b054c4af72cc41108db8aedafbcae1996de.tar gsoc2013-epiphany-ede59b054c4af72cc41108db8aedafbcae1996de.tar.gz gsoc2013-epiphany-ede59b054c4af72cc41108db8aedafbcae1996de.tar.bz2 gsoc2013-epiphany-ede59b054c4af72cc41108db8aedafbcae1996de.tar.lz gsoc2013-epiphany-ede59b054c4af72cc41108db8aedafbcae1996de.tar.xz gsoc2013-epiphany-ede59b054c4af72cc41108db8aedafbcae1996de.tar.zst gsoc2013-epiphany-ede59b054c4af72cc41108db8aedafbcae1996de.zip |
Split EphyNavigationAction in one abstract class and two subclasses
To ease understanding and further modification of the two different
usages for the EphyNavigationAction class (Back/Forward and Up buttons),
all the code there was split so the common one is kept in the
superclass, delegating the more specific parts in the implementations
of the subclasses: History (back/forward) and Up buttons.
Also updated usage of this class in EphyToolbar.
Bug #539716
Signed-off-by: Xan Lopez <xan@gnome.org>
Diffstat (limited to 'src/ephy-navigation-history-action.h')
-rw-r--r-- | src/ephy-navigation-history-action.h | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/src/ephy-navigation-history-action.h b/src/ephy-navigation-history-action.h new file mode 100644 index 000000000..6388b4da3 --- /dev/null +++ b/src/ephy-navigation-history-action.h @@ -0,0 +1,67 @@ +/* + * Copyright © 2003, 2004 Marco Pesenti Gritti + * Copyright © 2003, 2004 Christian Persch + * Copyright © 2010, Igalia S.L. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * 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. + * + */ + +#if !defined (__EPHY_EPIPHANY_H_INSIDE__) && !defined (EPIPHANY_COMPILATION) +#error "Only <epiphany/epiphany.h> can be included directly." +#endif + +#ifndef EPHY_NAVIGATION_HISTORY_ACTION_H +#define EPHY_NAVIGATION_HISTORY_ACTION_H + +#include "ephy-navigation-action.h" + +G_BEGIN_DECLS + +#define EPHY_TYPE_NAVIGATION_HISTORY_ACTION (ephy_navigation_history_action_get_type ()) +#define EPHY_NAVIGATION_HISTORY_ACTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), EPHY_TYPE_NAVIGATION_HISTORY_ACTION, EphyNavigationHistoryAction)) +#define EPHY_NAVIGATION_HISTORY_ACTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), EPHY_TYPE_NAVIGATION_HISTORY_ACTION, EphyNavigationHistoryActionClass)) +#define EPHY_IS_NAVIGATION_HISTORY_ACTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EPHY_TYPE_NAVIGATION_HISTORY_ACTION)) +#define EPHY_IS_NAVIGATION_HISTORY_ACTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((obj), EPHY_TYPE_NAVIGATION_HISTORY_ACTION)) +#define EPHY_NAVIGATION_HISTORY_ACTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), EPHY_TYPE_NAVIGATION_HISTORY_ACTION, EphyNavigationHistoryActionClass)) + +typedef enum +{ + EPHY_NAVIGATION_HISTORY_DIRECTION_BACK, + EPHY_NAVIGATION_HISTORY_DIRECTION_FORWARD +} EphyNavigationHistoryDirection; + +typedef struct _EphyNavigationHistoryAction EphyNavigationHistoryAction; +typedef struct _EphyNavigationHistoryActionPrivate EphyNavigationHistoryActionPrivate; +typedef struct _EphyNavigationHistoryActionClass EphyNavigationHistoryActionClass; + +struct _EphyNavigationHistoryAction +{ + EphyNavigationAction parent; + + /*< private >*/ + EphyNavigationHistoryActionPrivate *priv; +}; + +struct _EphyNavigationHistoryActionClass +{ + EphyNavigationActionClass parent_class; +}; + +GType ephy_navigation_history_action_get_type (void); + +G_END_DECLS + +#endif |