SciDAVis  1.D4
Public Member Functions | Protected Attributes | Private Slots | Private Attributes
ExtensibleFileDialog Class Reference

QFileDialog plus generic extension support. More...

#include <ExtensibleFileDialog.h>

Inheritance diagram for ExtensibleFileDialog:
ImageExportDialog ImportASCIIDialog OpenProjectDialog TeXTableExportDialog

List of all members.

Public Member Functions

 ExtensibleFileDialog (QWidget *parent=0, bool extended=true, Qt::WFlags flags=0)
 Constructor.
bool isExtendable ()
 Tells weather the dialog has a valid extension widget.
bool isExtended ()
void setExtended (bool extended)
void setExtensionWidget (QWidget *extension)
 Set the extension widget to be displayed when the user presses the toggle button.

Protected Attributes

QPushButton * d_extension_toggle
 Button for toggling display of extension on/off.

Private Slots

void resize (bool extension_on)
 Resize to make/take space for the extension widget.

Private Attributes

QWidget * d_extension
 The extension widget.
int d_extension_row
 The layout row (of the assumed QGridLayout) used for extensions.

Detailed Description

QFileDialog plus generic extension support.

This is a simple hack on top of QFileDialog that allows a custom extension widget to be added to the bottom of the dialog. A button is provided for toggling display of this widget on/off.

For the placement of button and extension widget, it is assumed that QFileDialog uses a QGridLayout as its top-level layout. Other layouts will probably lead to a strange outlook, although the functionality should stay intact.


Constructor & Destructor Documentation

ExtensibleFileDialog::ExtensibleFileDialog ( QWidget *  parent = 0,
bool  extended = true,
Qt::WFlags  flags = 0 
)

Constructor.

Parameters:
parentparent widget (only affects placement of the dialog)
extendedflag: show/hide the advanced options on start-up
flagswindow flags

References d_extension, d_extension_row, d_extension_toggle, and resize().


Member Function Documentation

bool ExtensibleFileDialog::isExtendable ( )
inline

Tells weather the dialog has a valid extension widget.

References d_extension.

Referenced by OpenProjectDialog::closeEvent().

bool ExtensibleFileDialog::isExtended ( )
inline
void ExtensibleFileDialog::resize ( bool  extension_on)
privateslot

Resize to make/take space for the extension widget.

References d_extension.

Referenced by ExtensibleFileDialog().

void ExtensibleFileDialog::setExtended ( bool  extended)
inline

References d_extension_toggle.

void ExtensibleFileDialog::setExtensionWidget ( QWidget *  extension)

Member Data Documentation

QWidget* ExtensibleFileDialog::d_extension
private

The extension widget.

Referenced by ExtensibleFileDialog(), isExtendable(), resize(), and setExtensionWidget().

int ExtensibleFileDialog::d_extension_row
private

The layout row (of the assumed QGridLayout) used for extensions.

Referenced by ExtensibleFileDialog(), and setExtensionWidget().

QPushButton* ExtensibleFileDialog::d_extension_toggle
protected

The documentation for this class was generated from the following files: