Code

Merge from fe-moved
[inkscape.git] / src / dialogs / dialog-events.h
1 /** @file
2  * @brief  Event handler for dialog windows
3  */
4 /* Authors:
5  *   bulia byak <bulia@dr.com>
6  *
7  * Copyright (C) 2003 authors
8  *
9  * Released under GNU GPL, read the file 'COPYING' for more information
10  */
12 #ifndef __DIALOG_EVENTS_H__
13 #define __DIALOG_EVENTS_H__
15 #include <gtk/gtkstyle.h>
16 #include <gtk/gtkwindow.h>
17 #include <forward.h>
18  
19 /*
20  * event callback can only accept one argument, but we need two,
21  * hence this struct.
22  * each dialog has a local static copy:
23  *   win is the dialog window 
24  *   stop is the transientize semaphore: when 0, retransientizing this dialog 
25  *   is allowed
26  */
28 namespace Gtk {
29 class Window;
30 class Entry;
31 }
32  
33 typedef struct { 
34     GtkWidget *win;
35     guint stop;
36 } win_data;
39 gboolean sp_dialog_event_handler ( GtkWindow *win, 
40                                    GdkEvent *event, 
41                                    gpointer data );
43 void sp_dialog_defocus_cpp         (Gtk::Window *win);
44 void sp_dialog_defocus_callback_cpp(Gtk::Entry *e);
45 void sp_dialog_defocus_on_enter_cpp(Gtk::Entry *e);
47 void sp_dialog_defocus           ( GtkWindow *win );
48 void sp_dialog_defocus_callback  ( GtkWindow *win, gpointer data );
49 void sp_dialog_defocus_on_enter  ( GtkWidget *w );
50 void sp_transientize             ( GtkWidget *win );
52 void on_transientize             ( SPDesktop *desktop, 
53                                    win_data *wd );
55 void sp_transientize_callback    ( Inkscape::Application *inkscape, 
56                                    SPDesktop *desktop, 
57                                    win_data *wd );
59 void on_dialog_hide (GtkWidget *w);
60 void on_dialog_unhide (GtkWidget *w);
61 gboolean sp_dialog_hide (GtkObject *object, gpointer data);
62 gboolean sp_dialog_unhide (GtkObject *object, gpointer data);
64 #endif
66 /*
67   Local Variables:
68   mode:c++
69   c-file-style:"stroustrup"
70   c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
71   indent-tabs-mode:nil
72   fill-column:99
73   End:
74 */
75 // vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 :