index 983024d105659d6184413054c79dfec116757e34..5f4c429fa694c398a4f960888804914eaadfe7a3 100644 (file)
* \brief Event handler for dialog windows
*
* Authors:
- * bulia byak <bulia@dr.com>
+ * bulia byak <bulia@dr.com>
+ * Johan Engelen <j.b.c.engelen@ewi.utwente.nl>
*
- * Copyright (C) 2003 authors
+ * Copyright (C) 2003-2007 Authors
*
* Released under GNU GPL, read the file 'COPYING' for more information
*/
* \brief This function is called to zero the transientize semaphore by a
* timeout.
*/
-bool
+gboolean
sp_allow_again (gpointer *wd)
{
((win_data *) wd)->stop = 0;
-bool
+gboolean
sp_dialog_event_handler (GtkWindow *win, GdkEvent *event, gpointer data)
{
return FALSE;
}
- bool ret = FALSE;
+ gboolean ret = FALSE;
switch (event->type) {
void
sp_transientize (GtkWidget *dialog)
{
+#ifndef WIN32 // FIXME: Temporary Win32 special code to enable transient dialogs
+ // _set_skip_taskbar_hint makes transient dialogs NON-transient! When dialogs
+ // are made transient (_set_transient_for), they are already removed from
+ // the taskbar in Win32.
if (prefs_get_int_attribute ( "options.dialogsskiptaskbar", "value", 0)) {
gtk_window_set_skip_taskbar_hint (GTK_WINDOW (dialog), TRUE);
- }
+ }
+#endif
gint transient_policy = prefs_get_int_attribute_limited ( "options.transientpolicy", "value", 1, 0, 2 );
+#ifdef WIN32 // FIXME: Temporary Win32 special code to enable transient dialogs
+ if (prefs_get_int_attribute ( "options.dialogsontopwin32", "value", 0))
+ transient_policy = 2;
+ else
+ transient_policy = 0;
+#endif
+
if (transient_policy) {
// if there's an active document window, attach dialog to it as a transient:
sp_transientize_callback ( Inkscape::Application * /*inkscape*/,
SPDesktop *desktop, win_data *wd )
{
- gint transient_policy =
- prefs_get_int_attribute_limited ( "options.transientpolicy", "value",
- 1, 0, 2);
+ gint transient_policy = prefs_get_int_attribute_limited ( "options.transientpolicy", "value", 1, 0, 2);
+
+#ifdef WIN32 // FIXME: Temporary Win32 special code to enable transient dialogs
+ if (prefs_get_int_attribute ( "options.dialogsontopwin32", "value", 0))
+ transient_policy = 2;
+ else
+ return;
+#endif
if (!transient_policy)
return;
gtk_widget_show (w);
}
-bool
+gboolean
sp_dialog_hide (GtkObject *object, gpointer data)
{
GtkWidget *dlg = (GtkWidget *) data;
-bool
+gboolean
sp_dialog_unhide (GtkObject *object, gpointer data)
{
GtkWidget *dlg = (GtkWidget *) data;