/***************************************************************************
 *            gtk_port.h
 *
 *  Thu Jul 19 19:00:10 2012
 *  Copyright  2012  Steffen Pohle
 *  steffen@gulpe.de
 ****************************************************************************/

/*
 *  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 _GTK_PORT_H_
#define _GTK_PORT_H_

#include <gtk/gtk.h>
#include <gdk/gdk.h>
#include "osmroute.h"
#include "map.h"

struct color {
	unsigned short int r;
	unsigned short int g;
	unsigned short int b;
	GdkColor c;
	int alloc;
};


struct image {
	GdkPixmap *pixmap;
	GdkGC *gc;
	int width;
	int height;
};


#include "draw.h"

/***************************************************************
 * GTK internal functions, not for use in draw.h and stuff.
 */
/* variables needed for drawing: defined inside gtk_map_screen.c */
extern GtkWidget *map_da;
extern GdkGC  *gc;
extern GdkGCValues gcvalues;
extern GdkColormap *colormap;

/* variables needed for handling on the display: defined inside gtk_main_wnd.c */
extern GtkWidget *main_wnd;
extern GtkToggleAction *gpsenabled;

/*
 * map function and variables
 */
extern GtkWidget *map_da_create (); /* create drawarea */


/*
 * dialogs and stuff
 */
extern void mapinfo_wnd_show ();
extern void map_search_sort ();


/* 
 * main window
 */
extern GtkWidget *main_wnd_create ();
extern GtkWidget *main_menu_create ();
extern int gtk_running;

/*
 * other stuff
 */

#endif
