Base class for CFileOpenDialog and CFileSaveDialog. More...
#include <CFileDialog.h>
Public Member Functions | |
String | directory () const |
void | directory (const String &p) |
void | clearPatterns () |
void | setPattern (const String &patternName) |
void | addPattern (const String &patternName, const String &pattern) |
String | pattern () const |
void | refreshDirectory (const String &dirName="") |
String | fileName () const |
String | fullFileName () const |
void | fileName (const String &fileName) |
bool | execute () |
Public Member Functions inherited from sptk::CDialog | |
CDialog (int w, int h, const char *label=nullptr) | |
~CDialog () override | |
virtual bool | reset () |
int | handle (int event) override |
bool | showModal () |
void | alert (const String &s) const |
void | defaultButton (CButton *btn) |
virtual void | database (PoolDatabaseConnection *db) |
PoolDatabaseConnection * | database () const |
void | table (const String &tableName) |
String | table () const |
void | table (PoolDatabaseConnection *db, const String &tableName, const String &keyFieldName) |
Fast setup of the database connection. More... | |
void | keyField (const String &keyFieldName) |
String | keyField () const |
void | keyValue (int val) |
int | keyValue () const |
virtual Fl_Group * | newPage (const char *label, bool autoColor) |
virtual Fl_Group * | newScroll (const char *label, bool autoColor) |
CButton * | addExtraButton (CButtonKind buttonKind, const char *label, Fl_Callback_p callback) |
uint32_t | fieldCount () const |
CControl & | operator[] (const String &fieldName) |
Index operator to access controls with defined field name. More... | |
void | rescan () |
Makes dialog to scan the widgets inside. | |
void | load (const xdoc::SNode &node) override |
void | save (const xdoc::SNode &node) const override |
CDialogModalResult | modalResult () const |
String | className () const override |
Returns widget class name (internal SPTK RTTI). More... | |
Public Member Functions inherited from sptk::CWindow | |
CWindow (int w, int h, const char *label=0L) | |
Constructor. More... | |
CWindow (int x, int y, int w, int h, const char *label=0L) | |
Constructor. More... | |
void | draw () override |
Draws a window, including an optional background image. | |
void | show () override |
Custom show method. | |
void | show (int argc, char *argv[]) |
Custom show method. More... | |
void | hide () override |
Custom hide method. | |
virtual void | relayout () |
Relayouts window's widgets that have CLayoutClient interface. | |
void | clear () override |
Removes all the widgets inside the window. More... | |
void | resize (int x, int y, int w, int h) override |
Resizes the window and inside widgets. More... | |
bool | preferredSize (int &w, int &h) override |
Computes the optimal window size. More... | |
int | handle (int event) override |
Custom window events handle. More... | |
void | load (const std::shared_ptr< xdoc::Node > &node, CLayoutXMLmode xmlMode) override |
Loads window coordinates and widgets from XML node. More... | |
void | load (const std::shared_ptr< xdoc::Node > &node) override |
Loads window coordinates and widgets from XML node. More... | |
void | save (const std::shared_ptr< xdoc::Node > &node, CLayoutXMLmode xmlMode) const override |
Saves window coordinates and widgets into XML node. More... | |
virtual void | save (const xdoc::SNode &node) const |
Saves window coordinates and widgets into XML node. More... | |
void | loadPosition (const xdoc::SNode &node) |
Loads the window position from XML node. More... | |
void | savePosition (const xdoc::SNode &node) const |
Saves the window position into XML node. More... | |
const String & | label () const override |
Returns the current label. More... | |
String | className () const override |
Returns widget class name (internal SPTK RTTI). More... | |
virtual void | label (const String &l) |
virtual const String & | label () const |
Public Member Functions inherited from sptk::CLayoutManager | |
CLayoutManager (Fl_Group *group, int layoutSize, CLayoutAlign ca) | |
~CLayoutManager () override=default | |
virtual void | clear () |
Removes all the children. More... | |
int | layoutSpacing () const |
void | layoutSpacing (int ls) |
void | layoutGrowMode (CLayoutGrowMode gm=CLayoutGrowMode::LGM_AUTO_GROW) |
CLayoutGrowMode | layoutGrowMode () const |
void | relayout () |
void | frame (CFrame *frame, bool drawBackground=true) |
Defines frame. More... | |
const CFrame * | frame () const |
Returnes the current frame. | |
uint32_t | frameWidth () const |
Returns frame width. | |
virtual void | loadLayout (const xdoc::SNode &node, CLayoutXMLmode xmlMode) |
Loads group controls data from XML node. More... | |
virtual void | saveLayout (const xdoc::SNode &node, CLayoutXMLmode xmlMode) const |
Saves group controls data into XML node. More... | |
void | nameIndex (CWidgetNamesMap &index, bool recursive, bool clean=true) const |
Builds an index of internal widget names. More... | |
bool | noXml () const |
Returns flag of blocking XML processing. More... | |
void | noXml (bool noXml) |
Sets flag of blocking XML processing. More... | |
Public Member Functions inherited from sptk::CLayoutClient | |
CLayoutClient (Fl_Widget *widget, int layoutSize, CLayoutAlign ca) | |
virtual | ~CLayoutClient () |
CLayoutAlign | layoutAlign () const |
void | layoutAlign (CLayoutAlign al) |
int | layoutSize () const |
void | layoutSize (int ls) |
virtual void | label (const String &l) |
virtual const String & | label () const |
void | name (const char *aname) |
void | name (const String &aname) |
const String & | name () const |
virtual bool | preferredSize (int &w, int &h) |
virtual bool | computeSize (int &w, int &h) |
virtual String | className () const |
Fl_Widget * | widget () const |
virtual void | load (const xdoc::SNode &node, CLayoutXMLmode xmlMode) |
virtual void | load (const std::shared_ptr< xdoc::Node > &node) |
virtual void | save (const std::shared_ptr< xdoc::Node > &node, CLayoutXMLmode xmlMode) const |
Public Member Functions inherited from sptk::CWindowShape | |
CWindowShape (sptk::CWindow *window) | |
Constructor. More... | |
virtual | ~CWindowShape () |
Destructor. | |
bool | shapeResizing () |
Returns true if the window is resizing as a result of border drag. More... | |
Protected Member Functions | |
void | createFolder () |
CFileDialog (const String &label, bool saveMode) | |
Protected Member Functions inherited from sptk::CDialog | |
virtual bool | okPressed () |
virtual bool | cancelPressed () |
virtual void | scanControls () |
virtual bool | buildQueries () |
virtual bool | load () |
virtual bool | save () |
Protected Member Functions inherited from sptk::CLayoutManager | |
bool | autoLayout (int x, int y, int &w, int &h, bool resizeWidgets) const |
virtual void | paintBackground () |
Protected Member Functions inherited from sptk::CLayoutClient | |
int | lastPreferredH () const |
int | lastPreferredW () const |
void | lastPreferredH (int height) |
void | lastPreferredW (int width) |
Protected Member Functions inherited from sptk::CWindowShape | |
int | mouseZone (int mouseX, int mouseY) const |
Computes mouse zone from window coordinates. More... | |
void | changeSize (int mouseX, int mouseY) |
Resizes the window based on mouse zone and mouse screen coordinates. More... | |
virtual int | shapeCursorHandle (int event) |
Changes the window cursor based on the mouse position in the window. More... | |
void | initShapeExtension () |
Initializes shape extension. More... | |
bool | borderCleared () const |
Returns true if border was cleared for the shape. | |
void | shapeApply () |
Sets the shape to the window during window->draw() | |
void | resizingShape (int w, int h) |
Calls resizeShape() from inside CWindow::resize() | |
virtual void | shapeResize (int w, int h) |
Shape resize. More... | |
Static Protected Member Functions | |
static String | removeTrailingSlash (const String &dirname) |
Removes a trailing slash in the directory name. More... | |
static void | new_folder_cb (Fl_Widget *, void *) |
static void | home_cb (Fl_Widget *, void *) |
static void | up_cb (Fl_Widget *, void *) |
static void | dirview_cb (Fl_Widget *w, void *) |
static void | lookin_cb (Fl_Widget *w, void *) |
static void | pattern_cb (Fl_Widget *w, void *) |
Static Protected Attributes | |
static const char | slashChar |
static const char | slashStr [] |
Static Protected Attributes inherited from sptk::CLayoutManager | |
static std::map< std::string, Fl_Boxtype > | m_boxTypeNames |
static createControlCallbackMap | controlCreator |
Additional Inherited Members | |
Static Public Member Functions inherited from sptk::CLayoutManager | |
static void | registerControl (std::string typeName, createControlCallback creator) noexcept |
Register control type for loading layouts. More... | |
static const std::map< std::string, Fl_Boxtype > & | boxTypeNames () |
Returns a read-only map of box type names and corresponding constants. | |
Base class for CFileOpenDialog and CFileSaveDialog.
Actually implements most of these classes functionality. Can't be used by itself, only as a base class.
|
protected |
Constructor
label | Window caption |
saveMode | True for File Save Dialog and false for File Open Dialog. |
Adds the file name patern to the pattern combo box
patternName | The name of the pattern, like "All files" |
pattern | One or more the patterns, separated with semicolon like "*.cpp;*.cxx" |
void sptk::CFileDialog::clearPatterns | ( | ) |
Removes all the defined file name paterns
|
protected |
Creates a new folder. The folder name is asked interactively.
|
inline |
Returns the dialog's current directory
References sptk::DirectoryDS::directory().
void sptk::CFileDialog::directory | ( | const String & | p | ) |
Sets the dialog's current directory
|
staticprotected |
Internal directory double-clicked callback
bool sptk::CFileDialog::execute | ( | ) |
Initializes the dialog and shows it in the modal mode
|
inline |
Returns the list of currently selected files without the full path, as a simicolon-separated string.
References sptk::VariantAdaptors::asString(), and sptk::CInput::data().
void sptk::CFileDialog::fileName | ( | const String & | fileName | ) |
Set the currently selected file name in edit entry
fileName | The name of the file. |
String sptk::CFileDialog::fullFileName | ( | ) | const |
Returns the list of currently selected files with the full path, as a simicolon-separated string
|
staticprotected |
Internal home button callback
|
staticprotected |
Internal look-in combo callback
|
staticprotected |
Internal create folder button callback
String sptk::CFileDialog::pattern | ( | ) | const |
Returns currently selected pattern
|
staticprotected |
Internal pattern combo callback
void sptk::CFileDialog::refreshDirectory | ( | const String & | dirName = "" | ) |
Sets the new directory, if parameter dir is defined, and reloads the file list.
dirName | The name of the directory |
Removes a trailing slash in the directory name.
dirname | Directory name |
void sptk::CFileDialog::setPattern | ( | const String & | patternName | ) |
Sets the file name patern in pattern combo box
patternName | The name of the pattern as defined in call of addPattern() |
|
staticprotected |
Internal go up button callback
|
protected |
Directory Dataset
|
protected |
File list in the directory
|
protected |
The file name input box
|
protected |
The combo with the list of the lookup directories
|
protected |
The file mask (pattern) selection combo
|
staticprotected |
Default slash character, '\' on Windows and '/' on Unux.
|
staticprotected |
Default slash character string, "\\" on Windows and "/" on Unux.