2021-11-30 13:01:36 +00:00
|
|
|
/** @file
|
|
|
|
*
|
2013-01-18 00:50:14 +00:00
|
|
|
* Routines for handling preferences
|
|
|
|
*
|
|
|
|
* Wireshark - Network traffic analyzer
|
|
|
|
* By Gerald Combs <gerald@wireshark.org>
|
|
|
|
* Copyright 1998 Gerald Combs
|
|
|
|
*
|
2018-02-07 11:26:45 +00:00
|
|
|
* SPDX-License-Identifier: GPL-2.0-or-later
|
2013-01-18 00:50:14 +00:00
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef __PREFRENCE_UTILS_H__
|
|
|
|
#define __PREFRENCE_UTILS_H__
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif /* __cplusplus */
|
|
|
|
|
|
|
|
/** @file
|
|
|
|
* Preference utility routines.
|
|
|
|
* @ingroup prefs_group
|
|
|
|
*/
|
|
|
|
|
|
|
|
/** If autoscroll in live captures is active or not
|
|
|
|
*/
|
2016-06-22 21:41:16 +00:00
|
|
|
extern gboolean auto_scroll_live;
|
2013-01-18 00:50:14 +00:00
|
|
|
|
|
|
|
/** Fill in capture options with values from the preferences
|
|
|
|
*/
|
|
|
|
extern void prefs_to_capture_opts(void);
|
|
|
|
|
|
|
|
/** Save all preferences
|
|
|
|
*/
|
|
|
|
extern void prefs_main_write(void);
|
|
|
|
|
2015-06-05 09:19:37 +00:00
|
|
|
/** Convenient function for plugin_if
|
2016-01-21 12:41:42 +00:00
|
|
|
*
|
|
|
|
* Note: The preferences must exist, it is not possible to create entries
|
|
|
|
* using this function
|
2015-06-05 09:19:37 +00:00
|
|
|
*
|
|
|
|
* @param module the module for the preference
|
|
|
|
* @param key the key for the preference
|
|
|
|
* @param value the new value as string for the preference
|
|
|
|
*
|
2018-01-06 04:39:55 +00:00
|
|
|
* @return flags of types of preferences changed, non-zero if the value has been stored successfully
|
2015-06-05 09:19:37 +00:00
|
|
|
*/
|
2018-01-06 04:39:55 +00:00
|
|
|
extern unsigned int prefs_store_ext(const char * module, const char * key, const char * value);
|
2015-06-05 09:19:37 +00:00
|
|
|
|
2016-01-21 12:41:42 +00:00
|
|
|
/** Convenient function for the writing of multiple preferences, without
|
|
|
|
* explicitly having prefs_t variables.
|
|
|
|
*
|
|
|
|
* Note: The preferences must exist, it is not possible to create entries
|
|
|
|
* using this function
|
|
|
|
*
|
|
|
|
* @param module the module for the preference
|
|
|
|
* @param pref_values a hash table
|
|
|
|
*
|
|
|
|
* @return true if the value has been stored successfully
|
|
|
|
*/
|
|
|
|
extern gboolean prefs_store_ext_multiple(const char * module, GHashTable * pref_values);
|
|
|
|
|
2013-01-23 19:04:36 +00:00
|
|
|
/** Add a custom column.
|
|
|
|
*
|
|
|
|
* @param fmt column format
|
|
|
|
* @param title column title
|
|
|
|
* @param custom_field column custom field
|
2019-06-27 20:00:11 +00:00
|
|
|
* @param position the intended position of the insert
|
2015-03-09 07:11:13 +00:00
|
|
|
*
|
|
|
|
* @return The index of the inserted column
|
2013-01-23 19:04:36 +00:00
|
|
|
*/
|
2015-03-09 07:11:13 +00:00
|
|
|
gint column_prefs_add_custom(gint fmt, const gchar *title,
|
2015-02-13 17:05:26 +00:00
|
|
|
const gchar *custom_field,
|
2019-06-27 20:00:11 +00:00
|
|
|
gint position);
|
2019-06-12 23:35:29 +00:00
|
|
|
|
2020-07-14 17:04:00 +00:00
|
|
|
/** Check if a custom column exists.
|
|
|
|
*
|
|
|
|
* @param custom_field column custom field
|
|
|
|
*
|
|
|
|
* @return The index of the column if existing, -1 if not existing
|
|
|
|
*/
|
|
|
|
gint column_prefs_has_custom(const gchar *custom_field);
|
|
|
|
|
2022-06-28 04:36:39 +00:00
|
|
|
/** Check if a custom column's data can be displayed differently
|
|
|
|
* resolved or unresolved, e.g. it has a field with a value string.
|
|
|
|
*
|
|
|
|
* This is for when adding or editing custom columns. Compare with
|
|
|
|
* resolve_column() in packet_list_utils.h, which is for columns
|
|
|
|
* that have already been added.
|
|
|
|
*
|
|
|
|
* @param custom_field column custom field
|
|
|
|
*
|
|
|
|
* @return TRUE if a custom column with the field description
|
|
|
|
* would support being displayed differently resolved or unresolved,
|
|
|
|
* FALSE otherwise.
|
|
|
|
*/
|
|
|
|
gboolean column_prefs_custom_resolve(const gchar *custom_field);
|
|
|
|
|
2013-01-23 19:04:36 +00:00
|
|
|
/** Remove a column.
|
|
|
|
*
|
|
|
|
* @param col_link Column list entry
|
|
|
|
*/
|
|
|
|
void column_prefs_remove_link(GList* col_link);
|
|
|
|
|
|
|
|
/** Remove a column.
|
|
|
|
*
|
|
|
|
* @param col Column number
|
|
|
|
*/
|
|
|
|
void column_prefs_remove_nth(gint col);
|
|
|
|
|
2018-09-08 09:49:22 +00:00
|
|
|
/** Save the UAT and complete migration of old preferences by writing the main
|
|
|
|
* preferences file (if necessary).
|
|
|
|
*/
|
|
|
|
void save_migrated_uat(const char *uat_name, gboolean *old_pref);
|
2013-01-18 00:50:14 +00:00
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif /* __cplusplus */
|
|
|
|
|
2014-10-14 19:58:21 +00:00
|
|
|
#endif /* __PREFRENCE_UTILS_H__ */
|