heraia_ui.h

Go to the documentation of this file.
00001 /* -*- Mode: C; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
00002 /*
00003   heraia_ui.h
00004   main menus, callback and utility functions
00005 
00006   (C) Copyright 2005 - 2009 Olivier Delhomme
00007   e-mail : heraia@delhomme.org
00008   URL    : http://heraia.tuxfamily.org
00009 
00010   This program is free software; you can redistribute it and/or modify
00011   it under the terms of the GNU General Public License as published by
00012   the Free Software Foundation; either version 2, or  (at your option)
00013   any later version.
00014 
00015   This program is distributed in the hope that it will be useful,
00016   but WITHOUT ANY WARRANTY;  without even the implied warranty of
00017   MERCHANTABILITY  or  FITNESS FOR A PARTICULAR PURPOSE.  See the
00018   GNU General Public License for more details.
00019 
00020   You should have received a copy of the GNU General Public License
00021   along with this program; if not, write to the Free Software
00022   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
00023 /**
00024  * @file heraia_ui.h
00025  * Header file for menu, callbacks, utility functions and ui management
00026  */
00027 #ifndef _LIBHERAIA_HERAIA_UI_H_
00028 #define _LIBHERAIA_HERAIA_UI_H_
00029 
00030 #define H_DEBUG 1
00031 
00032 extern void on_quit_activate(GtkWidget *widget, gpointer data);
00033 extern void on_new_activate(GtkWidget *widget, gpointer data);
00034 extern void on_open_activate(GtkWidget *widget, gpointer data);
00035 extern void on_save_activate(GtkWidget *widget, gpointer data);
00036 extern void on_save_as_activate(GtkWidget *widget, gpointer data);
00037 extern void on_preferences_activate(GtkWidget *widget, gpointer data);
00038 extern void on_delete_activate(GtkWidget *widget, gpointer data);
00039 extern void a_propos_activate(GtkWidget *widget, gpointer data);
00040 extern void on_cut_activate(GtkWidget *widget, gpointer data);
00041 extern void on_copy_activate(GtkWidget *widget, gpointer data);
00042 extern void on_paste_activate(GtkWidget *widget, gpointer data);
00043 extern void on_DIMenu_activate(GtkWidget *widget, gpointer data);
00044 extern gboolean delete_main_window_event(GtkWidget *widget, GdkEvent *event, gpointer data);
00045 
00046 extern gboolean delete_dt_window_event(GtkWidget *widget, GdkEvent *event, gpointer data);
00047 extern void destroy_dt_window(GtkWidget *widget, GdkEvent  *event, gpointer data);
00048 
00049 extern gboolean file_notebook_tab_changed(GtkNotebook *notebook, GtkNotebookPage *page, gint tab_num, gpointer data);
00050 
00051 
00052 /* file selection */
00053 extern gchar *select_file_to_load(heraia_window_t *main_window);
00054 extern gchar *select_a_file_to_save(heraia_window_t *main_window);
00055 
00056 /* initialisation process */
00057 extern void init_heraia_interface(heraia_window_t *main_window);
00058 extern int load_heraia_ui(heraia_window_t *main_window);
00059 extern void init_window_states(heraia_window_t *main_window);
00060 
00061 /* refreshing things */
00062 extern void refresh_event_handler(GtkWidget *widget, gpointer data);
00063 extern void refresh_file_labels(heraia_window_t *main_window);
00064 extern void connect_cursor_moved_signal(heraia_window_t *main_window, GtkWidget *hex_widget);
00065 
00066 /* window positionning system */
00067 extern void record_dialog_box_position(GtkWidget *dialog_box, window_prop_t *dialog_prop);
00068 extern void record_all_dialog_box_positions(heraia_window_t *main_window);
00069 extern void move_and_show_dialog_box(GtkWidget *dialog_box, window_prop_t *dialog_pos);
00070 extern void record_and_hide_dialog_box(GtkWidget *dialog_box, window_prop_t *dialog_pos);
00071 
00072 /* libglade wrapper */
00073 GtkWidget *heraia_get_widget(GladeXML *xml, gchar *widget_name);
00074 
00075 /* Text view */
00076 extern void add_text_to_textview(GtkTextView *textview, const char *format, ...);
00077 extern void kill_text_from_textview(GtkTextView *textview);
00078 
00079 /* RadioButton */
00080 extern GtkWidget *gtk_radio_button_get_active(GSList *group);
00081 extern GtkWidget *gtk_radio_button_get_active_from_widget(GtkRadioButton *radio_group_member);
00082 
00083 /* CheckMenuItem */
00084 extern gboolean is_cmi_checked(GtkWidget *check_menu_item);
00085 
00086 /* Toogle Button */
00087 extern gboolean is_toggle_button_activated(GladeXML *main_xml, gchar *check_button);
00088 
00089 /* Widget */
00090 extern void destroy_a_single_widget(GtkWidget *widget);
00091 extern void update_main_window_name(heraia_window_t *main_window);
00092 
00093 /* NoteBook */
00094 extern void set_notebook_tab_name(heraia_window_t *main_window);
00095 extern void add_new_tab_in_main_window(heraia_window_t *main_window, doc_t *doc);
00096 
00097 #endif /* _LIBHERAIA_HERAIA_UI_H_ */

Generated on Tue May 19 20:01:37 2009 for Heraia by  doxygen 1.5.8