diff options
| -rw-r--r-- | CHANGES | 2 | ||||
| -rw-r--r-- | CREDITS | 1 | ||||
| -rw-r--r-- | FL/fl_ask.H | 4 | ||||
| -rw-r--r-- | src/fl_ask.cxx | 21 | ||||
| -rw-r--r-- | test/ask.cxx | 4 |
5 files changed, 31 insertions, 1 deletions
@@ -54,6 +54,8 @@ CHANGES IN FLTK 1.3.0 - Added Fl_Menu_ methods: insert(), find_index(), clear_submenu() - Hotspot behavior of fl_message() and other common dialogs is now optional (STR #2561). + - Common dialogs like fl_message() and fl_ask() can now have a window + title (STR #2562). IDE support and command line build options @@ -48,6 +48,7 @@ OTHER CONTRIBUTORS Howard Lightstone Mike Lindner Alexander Mai + Pierre Ossman Alexander Rabi James Roth Albrecht Schlosser diff --git a/FL/fl_ask.H b/FL/fl_ask.H index ade7f05ad..553419334 100644 --- a/FL/fl_ask.H +++ b/FL/fl_ask.H @@ -3,7 +3,7 @@ // // Standard dialog header file for the Fast Light Tool Kit (FLTK). // -// Copyright 1998-2010 by Bill Spitzak and others. +// Copyright 1998-2011 by Bill Spitzak and others. // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Library General Public @@ -67,6 +67,8 @@ inline void fl_message_font(Fl_Font f, Fl_Fontsize s) { FL_EXPORT void fl_message_hotspot(int enable); FL_EXPORT int fl_message_hotspot(void); +FL_EXPORT void fl_message_title(const char *title); + // pointers you can use to change FLTK to a foreign language: extern FL_EXPORT const char* fl_no; extern FL_EXPORT const char* fl_yes; diff --git a/src/fl_ask.cxx b/src/fl_ask.cxx index b6e065daa..133eac2be 100644 --- a/src/fl_ask.cxx +++ b/src/fl_ask.cxx @@ -244,6 +244,7 @@ static int innards(const char* fmt, va_list ap, if (g) // regrab the previous popup menu, if there was one Fl::grab(g); icon->label(prev_icon_label); + message_form->label(0); // reset window title avoidRecursion = 0; return ret_val; @@ -508,6 +509,26 @@ int fl_message_hotspot(void) { return enableHotspot; } +/** Sets the title of the dialog window used in many common dialogs. + + This window \p title will be used in the next call of one of the + common dialogs like fl_message(), fl_alert(), fl_ask(), fl_choice(), + fl_input(), fl_password(). + + The \p title string is copied internally, so that you can use a + local variable or free the string immediately after this call. It + applies only to the \b next call of one of the common dialogs and + will be reset to an empty title (the default for all dialogs) after + that call. + + \note \#include <FL/fl_ask.H> + \param[in] title window label, string copied internally +*/ +void fl_message_title(const char *title) { + makeform(); + message_form->copy_label(title); +} + /** @} */ // diff --git a/test/ask.cxx b/test/ask.cxx index cfe1dcbd6..29def0df3 100644 --- a/test/ask.cxx +++ b/test/ask.cxx @@ -61,8 +61,12 @@ void rename_me_pwd(Fl_Widget*o) { } void window_callback(Fl_Widget*, void*) { + int hotspot = fl_message_hotspot(); + fl_message_hotspot(0); + fl_message_title("note: no hotspot set for this dialog"); int rep = fl_choice("Are you sure you want to quit?", "Cancel", "Quit", "Dunno"); + fl_message_hotspot(hotspot); if (rep==1) exit(0); else if (rep==2) |
