Recreate the navit git/gerrit project that vanished
[profile/ivi/navit.git] / navit / gui / gtk / gui_gtk.h
1 /**
2  * Navit, a modular navigation system.
3  * Copyright (C) 2005-2008 Navit Team
4  *
5  * This program is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU General Public License
7  * version 2 as published by the Free Software Foundation.
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with this program; if not, write to the
16  * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17  * Boston, MA  02110-1301, USA.
18  */
19
20 #include "coord.h"
21
22 struct menu_methods;
23 struct datawindow_methods;
24 struct navit;
25 struct callback;
26 struct statusbar_priv;
27
28 struct gui_priv {
29         struct navit *nav;
30         GtkWidget *win;
31         GtkWidget *dialog_win;
32         GtkWidget *dialog_entry;
33         struct pcoord dialog_coord;
34         GtkWidget *vbox;
35         GtkWidget *menubar;
36         GtkActionGroup *base_group;
37         GtkActionGroup *debug_group;
38         GtkActionGroup *dyn_group;
39         GtkUIManager *ui_manager;
40         GSList *layout_group;
41         GSList *projection_group;
42         GSList *vehicle_group;
43         GList *dest_menuitems;
44         GList *bookmarks_menuitems;
45         GList *vehicle_menuitems;
46         GtkUIManager *menu_manager; // old
47         struct statusbar_priv *statusbar;
48         int menubar_enable;
49         int toolbar_enable;
50         int statusbar_enable;
51         int dyn_counter;
52         struct datawindow_priv *datawindow;
53 };
54
55 void gui_gtk_ui_init(struct gui_priv *this);
56 struct menu_priv *gui_gtk_menubar_new(struct gui_priv *gui, struct menu_methods *meth);
57 struct statusbar_priv *gui_gtk_statusbar_new(struct gui_priv *gui);
58 struct menu_priv *gui_gtk_popup_new(struct gui_priv *gui, struct menu_methods *meth);
59 struct datawindow_priv *gui_gtk_datawindow_new(struct gui_priv *gui, char *name, struct callback *click, struct callback *close, struct datawindow_methods *meth);
60 void gui_gtk_datawindow_destroy(struct datawindow_priv *win);
61 void gui_gtk_datawindow_set_button(struct datawindow_priv *this_, GtkWidget *btn);
62