Common Dialogs classes and functions

Classes

class  Fl_Color_Chooser
 The Fl_Color_Chooser widget provides a standard RGB color chooser. More...
class  Fl_File_Chooser
 The Fl_File_Chooser widget displays a standard file selection dialog that supports various selection modes. More...

Functions

void fl_alert (const char *fmt,...)
 Shows an alert message dialog box.
int fl_ask (const char *fmt,...)
 Shows a dialog displaying the fmt message, this dialog features 2 yes/no buttons.
void fl_beep (int type)
 Emits a system beep message.
int fl_choice (const char *fmt, const char *b0, const char *b1, const char *b2,...)
 Shows a dialog displaying the printf style fmt message, this dialog features up to 3 customizable choice buttons.
int Fl_Color_Chooser::fl_color_chooser (const char *name, uchar &r, uchar &g, uchar &b, int cmode)
 Pops up a window to let the user pick an arbitrary RGB color.
int Fl_Color_Chooser::fl_color_chooser (const char *name, double &r, double &g, double &b, int cmode)
 Pops up a window to let the user pick an arbitrary RGB color.
char * Fl_File_Chooser::fl_dir_chooser (const char *message, const char *fname, int relative)
 Shows a file chooser dialog and gets a directory.
char * Fl_File_Chooser::fl_file_chooser (const char *message, const char *pat, const char *fname, int relative)
 Shows a file chooser dialog and gets a filename.
void Fl_File_Chooser::fl_file_chooser_callback (void(*cb)(const char *))
 Set the file chooser callback.
void Fl_File_Chooser::fl_file_chooser_ok_label (const char *l)
 Set the "OK" button label.
const char * fl_input (const char *fmt, const char *defstr,...)
 Shows an input dialog displaying the fmt message.
void fl_message (const char *fmt,...)
 Shows an information message dialog box.
int fl_message_hotspot (void)
 Gets whether or not to move the common message box used in many common dialogs like fl_message(), fl_alert(), fl_ask(), fl_choice(), fl_input(), fl_password() to follow the mouse pointer.
void fl_message_hotspot (int enable)
 Sets whether or not to move the common message box used in many common dialogs like fl_message(), fl_alert(), fl_ask(), fl_choice(), fl_input(), fl_password() to follow the mouse pointer.
Fl_Widgetfl_message_icon ()
 Gets the Fl_Box icon container of the current default dialog used in many common dialogs like fl_message(), fl_alert(), fl_ask(), fl_choice(), fl_input(), fl_password().
void fl_message_title (const char *title)
 Sets the title of the dialog window used in many common dialogs.
void fl_message_title_default (const char *title)
 Sets the default title of the dialog window used in many common dialogs.
const char * fl_password (const char *fmt, const char *defstr,...)
 Shows an input dialog displaying the fmt message.

Variables

static void(* Fl::error )(const char *,...) = ::error
 FLTK calls Fl::error() to output a normal error message.
static void(* Fl::fatal )(const char *,...) = ::fatal
 FLTK calls Fl::fatal() to output a fatal error message.
const char * fl_cancel = "Cancel"
 string pointer used in common dialogs, you can change it to another language
const char * fl_close = "Close"
 string pointer used in common dialogs, you can change it to another language
const char * fl_no = "No"
 string pointer used in common dialogs, you can change it to another language
const char * fl_ok = "OK"
 string pointer used in common dialogs, you can change it to another language
const char * fl_yes = "Yes"
 string pointer used in common dialogs, you can change it to another language
static void(* Fl::warning )(const char *,...) = ::warning
 FLTK calls Fl::warning() to output a warning message.

Function Documentation

void fl_alert ( const char *  fmt,
  ... 
)

Shows an alert message dialog box.

Note:
Common dialog boxes are application modal. No more than one common dialog box can be open at any time. Requests for additional dialog boxes are ignored.
#include <FL/fl_ask.H>
Parameters:
[in] fmt can be used as an sprintf-like format and variables for the message text
int fl_ask ( const char *  fmt,
  ... 
)

Shows a dialog displaying the fmt message, this dialog features 2 yes/no buttons.

Note:
Common dialog boxes are application modal. No more than one common dialog box can be open at any time. Requests for additional dialog boxes are ignored.
#include <FL/fl_ask.H>
Parameters:
[in] fmt can be used as an sprintf-like format and variables for the message text
Return values:
0 if the no button is selected or another dialog box is still open
1 if yes is selected
Deprecated:
fl_ask() is deprecated since it uses "Yes" and "No" for the buttons which does not conform to the current FLTK Human Interface Guidelines. Use fl_choice() with the appropriate verbs instead.
void fl_beep ( int  type  ) 

Emits a system beep message.

Parameters:
[in] type The beep type from the Fl_Beep enumeration.
Note:
#include <FL/fl_ask.H>
int fl_choice ( const char *  fmt,
const char *  b0,
const char *  b1,
const char *  b2,
  ... 
)

Shows a dialog displaying the printf style fmt message, this dialog features up to 3 customizable choice buttons.

Note:
Common dialog boxes are application modal. No more than one common dialog box can be open at any time. Requests for additional dialog boxes are ignored.
#include <FL/fl_ask.H>

Three choices with printf() style formatting:

       int num_msgs = GetNumberOfMessages();
       switch ( fl_choice("What to do with %d messages?", "Send", "Save", "Delete", num_msgs) ) {
         case 0: .. // Send
         case 1: .. // Save (default)
         case 2: .. // Delete
         ..
       }

Three choice example:

fl_choice_three.png
       switch ( fl_choice("How many musketeers?", "One", "Two", "Three") ) {
         case 0: .. // One
         case 1: .. // Two (default)
         case 2: .. // Three
       }

Two choice example:

fl_choice_two.png
       switch ( fl_choice("Empty trash?", "Yes", "No", 0) ) {
         case 0: .. // Yes
         case 1: .. // No (default)
       }

One choice example:

fl_choice_one.png
       fl_choice("All hope is lost.", "OK", 0, 0);   // "OK" default
Parameters:
[in] fmt can be used as an sprintf-like format and variables for the message text
[in] b0 text label of button 0
[in] b1 text label of button 1 (can be 0)
[in] b2 text label of button 2 (can be 0)
Return values:
0 if the first button with b0 text is pushed or another dialog box is still open
1 if the second button with b1 text is pushed
2 if the third button with b2 text is pushed
int fl_color_chooser ( const char *  name,
uchar r,
uchar g,
uchar b,
int  cmode 
) [related, inherited]

Pops up a window to let the user pick an arbitrary RGB color.

Note:
#include <FL/Fl_Color_Chooser.H>
fl_color_chooser.jpg
Parameters:
[in] name Title label for the window
[in,out] r,g,b Color components in the range 0 to 255.
[in] cmode Optional mode for color chooser. See mode(int). Default -1 if none (rgb mode).
Return values:
1 if user confirms the selection
0 if user cancels the dialog
int fl_color_chooser ( const char *  name,
double &  r,
double &  g,
double &  b,
int  cmode 
) [related, inherited]

Pops up a window to let the user pick an arbitrary RGB color.

Note:
#include <FL/Fl_Color_Chooser.H>
fl_color_chooser.jpg
Parameters:
[in] name Title label for the window
[in,out] r,g,b Color components in the range 0.0 to 1.0.
[in] cmode Optional mode for color chooser. See mode(int). Default -1 if none (rgb mode).
Return values:
1 if user confirms the selection
0 if user cancels the dialog
char * fl_dir_chooser ( const char *  message,
const char *  fname,
int  relative 
) [related, inherited]

Shows a file chooser dialog and gets a directory.

Note:
#include <FL/Fl_File_Chooser.H>
Parameters:
[in] message title bar text
[in] fname initial/default directory name
[in] relative 0 for absolute path return, relative otherwise
Returns:
the directory path string chosen by the user or NULL if user cancels
char * fl_file_chooser ( const char *  message,
const char *  pat,
const char *  fname,
int  relative 
) [related, inherited]

Shows a file chooser dialog and gets a filename.

Note:
#include <FL/Fl_File_Chooser.H>
Fl_File_Chooser.jpg
Parameters:
[in] message text in title bar
[in] pat filename pattern filter
[in] fname initial/default filename selection
[in] relative 0 for absolute path name, relative path name otherwise
Returns:
the user selected filename, in absolute or relative format or NULL if user cancels
void fl_file_chooser_callback ( void(*)(const char *)  cb  )  [related, inherited]

Set the file chooser callback.

Note:
#include <FL/Fl_File_Chooser.H>
void fl_file_chooser_ok_label ( const char *  l  )  [related, inherited]

Set the "OK" button label.

Note:
#include <FL/Fl_File_Chooser.H>
const char* fl_input ( const char *  fmt,
const char *  defstr,
  ... 
)

Shows an input dialog displaying the fmt message.

Note:
Common dialog boxes are application modal. No more than one common dialog box can be open at any time. Requests for additional dialog boxes are ignored.
#include <FL/fl_ask.H>
Parameters:
[in] fmt can be used as an sprintf-like format and variables for the message text
[in] defstr defines the default returned string if no text is entered
Returns:
the user string input if OK was pushed, NULL if Cancel was pushed or another dialog box was still open
void fl_message ( const char *  fmt,
  ... 
)

Shows an information message dialog box.

Note:
Common dialog boxes are application modal. No more than one common dialog box can be open at any time. Requests for additional dialog boxes are ignored.
#include <FL/fl_ask.H>
Parameters:
[in] fmt can be used as an sprintf-like format and variables for the message text
int fl_message_hotspot ( void   ) 

Gets whether or not to move the common message box used in many common dialogs like fl_message(), fl_alert(), fl_ask(), fl_choice(), fl_input(), fl_password() to follow the mouse pointer.

Note:
#include <FL/fl_ask.H>
Returns:
0 if disable, non-zero otherwise
See also:
fl_message_hotspot(int)
void fl_message_hotspot ( int  enable  ) 

Sets whether or not to move the common message box used in many common dialogs like fl_message(), fl_alert(), fl_ask(), fl_choice(), fl_input(), fl_password() to follow the mouse pointer.

The default is enabled, so that the default button is the hotspot and appears at the mouse position.

Note:
#include <FL/fl_ask.H>
Parameters:
[in] enable non-zero enables hotspot behavior, 0 disables hotspot
Fl_Widget* fl_message_icon (  ) 

Gets the Fl_Box icon container of the current default dialog used in many common dialogs like fl_message(), fl_alert(), fl_ask(), fl_choice(), fl_input(), fl_password().

Note:
#include <FL/fl_ask.H>
void fl_message_title ( const char *  title  ) 

Sets the title of the dialog window used in many common dialogs.

This window 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 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 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>
Parameters:
[in] title window label, string copied internally
void fl_message_title_default ( const char *  title  ) 

Sets the default title of the dialog window used in many common dialogs.

This window title will be used in all subsequent calls of one of the common dialogs like fl_message(), fl_alert(), fl_ask(), fl_choice(), fl_input(), fl_password(), unless a specific title has been set with fl_message_title(const char *title).

The default is no title. You can override the default title for a single dialog with fl_message_title(const char *title).

The title string is copied internally, so that you can use a local variable or free the string immediately after this call.

Note:
#include <FL/fl_ask.H>
Parameters:
[in] title default window label, string copied internally
const char* fl_password ( const char *  fmt,
const char *  defstr,
  ... 
)

Shows an input dialog displaying the fmt message.

Like fl_input() except the input text is not shown, '*' characters are displayed instead.

Note:
Common dialog boxes are application modal. No more than one common dialog box can be open at any time. Requests for additional dialog boxes are ignored.
#include <FL/fl_ask.H>
Parameters:
[in] fmt can be used as an sprintf-like format and variables for the message text
[in] defstr defines the default returned string if no text is entered
Returns:
the user string input if OK was pushed, NULL if Cancel was pushed or aother dialog box was still open

Variable Documentation

void(* Fl::error)(const char *format,...) ( const char *  ,
  ... 
) = ::error [static, inherited]

FLTK calls Fl::error() to output a normal error message.

The default version on Windows displays the error message in a MessageBox window.

The default version on all other platforms prints the error message to stderr.

You can override the behavior by setting the function pointer to your own routine.

Fl::error() means there is a recoverable error such as the inability to read an image file. The default implementation returns after displaying the message.

Note:
#include <FL/Fl.H>
void(* Fl::fatal)(const char *format,...) ( const char *  ,
  ... 
) = ::fatal [static, inherited]

FLTK calls Fl::fatal() to output a fatal error message.

The default version on Windows displays the error message in a MessageBox window.

The default version on all other platforms prints the error message to stderr.

You can override the behavior by setting the function pointer to your own routine.

Fl::fatal() must not return, as FLTK is in an unusable state, however your version may be able to use longjmp or an exception to continue, as long as it does not call FLTK again. The default implementation exits with status 1 after displaying the message.

Note:
#include <FL/Fl.H>
void(* Fl::warning)(const char *format,...) ( const char *  ,
  ... 
) = ::warning [static, inherited]

FLTK calls Fl::warning() to output a warning message.

The default version on Windows returns without printing a warning message, because Windows programs normally don't have stderr (a console window) enabled.

The default version on all other platforms prints the warning message to stderr.

You can override the behavior by setting the function pointer to your own routine.

Fl::warning() means that there was a recoverable problem, the display may be messed up, but the user can probably keep working - all X protocol errors call this, for example. The default implementation returns after displaying the message.

Note:
#include <FL/Fl.H>