attr_dissector_fn_t
[wireshark-sm.git] / ui / ws_ui_util.h
blobf16ecdb3bdec0fca372a68468719559f3bfc7482
1 /** @file
3 * Declarations of UI utility routines; these routines have GUI-independent
4 * APIs, but GUI-dependent implementations, so that they can be called by
5 * GUI-independent code to affect the GUI.
7 * Wireshark - Network traffic analyzer
8 * By Gerald Combs <gerald@wireshark.org>
9 * Copyright 1998 Gerald Combs
11 * SPDX-License-Identifier: GPL-2.0-or-later
14 #ifndef __UI_UTIL_H__
15 #define __UI_UTIL_H__
17 #include <stdint.h>
19 #include <wsutil/processes.h>
21 #include "epan/packet_info.h"
22 #include "epan/column-utils.h"
23 #include "epan/color_filters.h"
25 #ifdef __cplusplus
26 extern "C" {
27 #endif /* __cplusplus */
29 /** geometry values for use in window_get_geometry() and window_set_geometry() */
30 typedef struct window_geometry_s {
31 char *key; /**< current key in hashtable (internally used only) */
32 bool set_pos; /**< set the x and y position values */
33 int x; /**< the windows x position */
34 int y; /**< the windows y position */
35 bool set_size; /**< set the width and height values */
36 int width; /**< the windows width */
37 int height; /**< the windows height */
38 bool set_maximized; /**< set the maximized state */
39 bool maximized; /**< the windows maximized state */
40 char* qt_geom; /**< hex bytestring from Qt's saveGeometry() */
41 } window_geometry_t;
43 /* update the main window */
44 extern void main_window_update(void);
46 /* Exit routine provided by UI-specific code. */
47 WS_NORETURN extern void exit_application(int status);
49 /* XXX - Yes this isn't the best place, but they are used by file_dlg_win32.c, which is supposed
50 to be GUI independent, but has lots of GTK leanings. But if you put these in a GTK UI
51 header file, file_dlg_win32.c complains about all of the GTK structures also in the header
52 files
53 Function names make it clear where they are coming from
55 void color_filter_add_cb(color_filter_t *colorf, void *user_data);
57 #ifdef __cplusplus
59 #endif /* __cplusplus */
61 #endif /* __UI_UTIL_H__ */