summaryrefslogtreecommitdiff
path: root/ui/recent.h
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2012-01-18 19:38:34 +0000
committerGuy Harris <guy@alum.mit.edu>2012-01-18 19:38:34 +0000
commitdacb4133e82536f4b46c4f15604a8501bf089ede (patch)
tree72d17edb279bbec629604b20580b8bb93f7e6091 /ui/recent.h
parent0299bdbc62e2a0ed182bd3476cac9c5ca9c365ce (diff)
downloadwireshark-dacb4133e82536f4b46c4f15604a8501bf089ede.tar.gz
Restructure the recent file code so that recent.c is GUI-independent;
move it to the top-level source directory for now, and move ui/gtk/recent.h to the ui directory. svn path=/trunk/; revision=40561
Diffstat (limited to 'ui/recent.h')
-rw-r--r--ui/recent.h188
1 files changed, 188 insertions, 0 deletions
diff --git a/ui/recent.h b/ui/recent.h
new file mode 100644
index 0000000000..b58a56d6b4
--- /dev/null
+++ b/ui/recent.h
@@ -0,0 +1,188 @@
+/* recent.h
+ * Definitions for recent "preference" handling routines
+ * Copyright 2004, Ulf Lamping <ulf.lamping@web.de>
+ *
+ * $Id$
+ *
+ * Wireshark - Network traffic analyzer
+ * By Gerald Combs <gerald@wireshark.org>
+ * Copyright 1998 Gerald Combs
+ *
+ * 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
+ * of the License, 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ */
+
+#ifndef __RECENT_H__
+#define __RECENT_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif /* __cplusplus */
+
+#include <glib.h>
+
+/** @file
+ * Recent user interface settings.
+ * @ingroup main_window_group
+ */
+
+/** ???. */
+#define RECENT_KEY_CAPTURE_FILE "recent.capture_file"
+
+/** ???. */
+#define RECENT_KEY_DISPLAY_FILTER "recent.display_filter"
+
+#define RECENT_KEY_COL_WIDTH "column.width"
+
+#define RECENT_KEY_CAPTURE_FILTER "recent.capture_filter"
+
+#define RECENT_KEY_REMOTE_HOST "recent.remote_host"
+
+typedef struct _col_width_data {
+ gint cfmt;
+ gchar *cfield;
+ gint width;
+ gchar xalign;
+} col_width_data;
+
+/** Defines used in col_width_data.xalign */
+#define COLUMN_XALIGN_DEFAULT 0
+#define COLUMN_XALIGN_LEFT 'L'
+#define COLUMN_XALIGN_CENTER 'C'
+#define COLUMN_XALIGN_RIGHT 'R'
+
+/** Recent settings. */
+typedef struct recent_settings_tag {
+ gboolean main_toolbar_show;
+ gboolean filter_toolbar_show;
+ gboolean airpcap_toolbar_show;
+ gboolean airpcap_driver_check_show;
+ gboolean packet_list_show;
+ gboolean tree_view_show;
+ gboolean byte_view_show;
+ gboolean statusbar_show;
+ gboolean packet_list_colorize;
+ gint gui_time_format;
+ gint gui_time_precision;
+ gint gui_seconds_format;
+ gint gui_zoom_level;
+ gint gui_bytes_view;
+
+ gint gui_geometry_main_x;
+ gint gui_geometry_main_y;
+ gint gui_geometry_main_width;
+ gint gui_geometry_main_height;
+
+ gboolean gui_geometry_main_maximized;
+
+ gboolean has_gui_geometry_main_upper_pane; /* gui_geometry_main_upper_pane is valid */
+ gint gui_geometry_main_upper_pane;
+ gboolean has_gui_geometry_main_lower_pane; /* gui_geometry_main_lower_pane is valid */
+ gint gui_geometry_main_lower_pane;
+ gboolean has_gui_geometry_status_pane; /* gui_geometry_status_pane is valid */
+ gint gui_geometry_status_pane_left;
+ gint gui_geometry_status_pane_right;
+ gint gui_geometry_wlan_stats_pane;
+ gboolean privs_warn_if_elevated;
+ gboolean privs_warn_if_no_npf;
+ GList *col_width_list; /* column widths */
+ gchar *gui_fileopen_remembered_dir; /* folder of last capture loaded in File Open dialog */
+} recent_settings_t;
+
+/** Global recent settings. */
+extern recent_settings_t recent;
+
+/** Write recent settings file.
+ *
+ * @return TRUE if succeeded, FALSE if failed
+ */
+extern gboolean write_recent(void);
+
+/** Write profile recent settings file.
+ *
+ * @return TRUE if succeeded, FALSE if failed
+ */
+extern gboolean write_profile_recent(void);
+
+/** Read recent settings file (static part).
+ *
+ * @param rf_path_return path to recent file if function failed
+ * @param rf_errno_return if failed
+ */
+extern void recent_read_static(char **rf_path_return, int *rf_errno_return);
+
+/** Read profile recent settings file (static part).
+ *
+ * @param rf_path_return path to recent file if function failed
+ * @param rf_errno_return if failed
+ */
+extern void recent_read_profile_static(char **rf_path_return, int *rf_errno_return);
+
+/** Read recent settings file (dynamic part).
+ *
+ * @param rf_path_return path to recent file if function failed
+ * @param rf_errno_return if failed
+ */
+extern void recent_read_dynamic(char **rf_path_return, int *rf_errno_return);
+
+/** Write the geometry values of a single window to the recent file.
+ *
+ * @param key unused
+ * @param value the geometry values
+ * @param rf recent file handle (FILE)
+ */
+extern void write_recent_geom(gpointer key, gpointer value, gpointer rf);
+
+/**
+ * Given a -o command line string, parse it and set the recent value in
+ * question. Return an indication of whether it succeeded or failed
+ * in some fashion.
+ *
+ * @param prefarg a string of the form "<recent name>:<recent value>", as might appear
+ * as an argument to a "-o" command line option
+ * @return PREFS_SET_OK or PREFS_SET_SYNTAX_ERR
+ */
+extern int recent_set_arg(char *prefarg);
+
+/** Get the column width for the given column
+ *
+ * @param col column number
+ */
+extern gint recent_get_column_width(gint col);
+
+/** Set the column width for the given column
+ *
+ * @param col column number
+ * @param width column width
+ */
+extern void recent_set_column_width(gint col, gint width);
+
+/** Get the column xalign for the given column
+ *
+ * @param col column number
+ */
+extern gchar recent_get_column_xalign(gint col);
+
+/** Set the column xalign for the given column
+ *
+ * @param col column number
+ * @param xalign column alignment
+ */
+extern void recent_set_column_xalign(gint col, gchar xalign);
+
+#ifdef __cplusplus
+}
+#endif /* __cplusplus */
+
+#endif /* recent.h */