aboutsummaryrefslogtreecommitdiffstats
path: root/lib/ephy-initial-state.h
diff options
context:
space:
mode:
authorXan Lopez <xan@igalia.com>2012-12-16 17:31:16 +0800
committerXan Lopez <xan@igalia.com>2012-12-16 17:31:16 +0800
commit3b0dc557ca0fe21d59fba8bf7cd653c63b32ea48 (patch)
tree217babbda3a8e3427c09b8600e12c0b82e12059c /lib/ephy-initial-state.h
parent13dd37b49c84e15470a8cba37f08f34a2d9c87d3 (diff)
downloadgsoc2013-epiphany-3b0dc557ca0fe21d59fba8bf7cd653c63b32ea48.tar
gsoc2013-epiphany-3b0dc557ca0fe21d59fba8bf7cd653c63b32ea48.tar.gz
gsoc2013-epiphany-3b0dc557ca0fe21d59fba8bf7cd653c63b32ea48.tar.bz2
gsoc2013-epiphany-3b0dc557ca0fe21d59fba8bf7cd653c63b32ea48.tar.lz
gsoc2013-epiphany-3b0dc557ca0fe21d59fba8bf7cd653c63b32ea48.tar.xz
gsoc2013-epiphany-3b0dc557ca0fe21d59fba8bf7cd653c63b32ea48.tar.zst
gsoc2013-epiphany-3b0dc557ca0fe21d59fba8bf7cd653c63b32ea48.zip
ephy-state: rename to 'ephy-initial-state'
The purpose of EphyState is to track the sizes and positions of windows, paned or expanders in order to remember what is the preferred *initial* and *default* state of those UI elements. So for example we merge the tracking of the size/positions of all main windows in one record, because we only need an initial value which we'll use as default for newly created EphyWindows. Since this is a very specific task, different to the actual tracking of all sizes and positions in EphySession in order to restore them at startup, rename the class to EphyInitialState to avoid confusions.
Diffstat (limited to 'lib/ephy-initial-state.h')
-rw-r--r--lib/ephy-initial-state.h57
1 files changed, 57 insertions, 0 deletions
diff --git a/lib/ephy-initial-state.h b/lib/ephy-initial-state.h
new file mode 100644
index 000000000..8458ac0d5
--- /dev/null
+++ b/lib/ephy-initial-state.h
@@ -0,0 +1,57 @@
+/* -*- Mode: C; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
+/*
+ * Copyright © 2001 Matthew Mueller
+ * Copyright © 2002 Jorn Baayen <jorn@nl.linux.org>
+ * Copyright © 2003 Marco Pesenti Gritti <mpeseng@tin.it>
+ *
+ * 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_STATE_H
+#define EPHY_STATE_H
+
+#include <gtk/gtk.h>
+
+G_BEGIN_DECLS
+
+typedef enum
+{
+ EPHY_INITIAL_STATE_WINDOW_SAVE_NONE = 0,
+ EPHY_INITIAL_STATE_WINDOW_SAVE_SIZE = 1 << 0,
+ EPHY_INITIAL_STATE_WINDOW_SAVE_POSITION = 1 << 1
+} EphyInitialStateWindowFlags;
+
+void ephy_initial_state_add_window (GtkWidget *window,
+ const char *name,
+ int default_width,
+ int default_heigth,
+ gboolean maximize,
+ EphyInitialStateWindowFlags flags);
+void ephy_initial_state_add_paned (GtkWidget *paned,
+ const char *name,
+ int default_width);
+void ephy_initial_state_add_expander (GtkWidget *widget,
+ const char *name,
+ gboolean default_state);
+void ephy_initial_state_save (void);
+
+G_END_DECLS
+
+#endif /* EPHY_STATE_H */