class KDialogBase

A dialog base class with standard buttons and predefined layouts. More...

Definition#include <kdialogbase.h>
InheritsKDialog [public ]
Inherited byKAboutApplication, KAboutDialog, KAboutKDE, KBugReport, KColorDialog, KEdFind, KEdGotoLine, KEdReplace, KEditToolbar, KFontDialog, KKeyDialog, KLineEditDlg, KPasswordDialog, KProgressDialog
List of all Methods
Annotated List
Files
Globals
Hierarchy
Index

Public Types

Public Methods

Public Slots

Signals

Public Static Methods

Protected Methods

Protected Slots


Detailed Description

Provides basic functionality needed by nearly all dialogs.

It offers the standard action buttons you'd expect to find in a dialog as well as the capability to define at most three configurable buttons. You can define a main widget that contains your specific dialog layout or you can use a predefined layout. Currently, TreeList/Paged, Tabbed, Plain, Swallow and IconList mode layouts (faces) are available.

The class takes care of the geometry management. You only need to define a minimum size for the widget you want to use as the main widget.

You can set a background tile (pixmap) for parts of the dialog. The tile you select is shared by all instances of this class in your application so that they all get the same look and feel.

There is a tutorial available on http://developer.kde.org/ (NOT YET) that contains copy/paste examples as well a screenshots on how to use this class.

Standard buttons (action buttons):

You select which buttons should be displayed, but you do not choose the order in which they are displayed. This ensures a standard interface in KDE. The button order can be changed, but this ability is only available for a central KDE control tool. The following buttons are available: OK, Cancel/Close, Apply/Try, Default, Help and three user definable buttons: User1, User1 and User3. You must specify the text of the UserN buttons. Each button has a virtual slot so you can overload the method when required. The default slots emit a signal as well, so you can choose to connect a signal instead of overriding the slot. The default implementation of slotHelp() will automatically enable the help system if you have provided a path to the help text. slotCancel() and slotClose() will run QDialog::reject() while slotOk() will run QDialog::accept(). You define a default button in the constructor.

If you don't want any buttons at all because your dialog is special in some way, then set the buttonMask argument in the constructor to zero (0). The optional button box separator line should not be enabled in this case. Note that the KDialogBase will animate a button press when the user press Escape. The button that is enabled is either Cancel, Close or the button that is defined by setEscapeButton() The animation will not take place when the buttonMask is zero. Your custom dialog code should reimplement the keyPressEvent and animate the cancel button so that the dialog behaves like regular dialogs. NOTE: None of the regular slots (like slotOk() ) or signals that are related to the standard action buttons will be used when you don't use these buttons.

Dialog shapes:

You can either use one of the prebuilt, easy to use, faces or define your own main widget. The dialog provides ready to use TreeList, Tabbed, Plain, Swallow and IconList faces. KDialogBase uses the KJanusWidget class internally to accomplish this. If you use TreeList, Tabbed or IconList mode, then add pages with addPage().

Pages that have been added can be removed again by simply deleting the page.

If you want complete control of how the dialog contents should look, then you can define a main widget by using setMainWidget(). You only need to set the minimum size of that widget and the dialog will resize itself to fit this minimum size. The dialog is resizeable, but cannot be made smaller than its minimum size.

Layout:

The dialog consists of a help area on top (becomes visible if you define a help path and use enableLinkedHelp()), the main area which is the built-in dialog face or your own widget in the middle and by default a button box at the bottom. The button box can also be placed at the right edge (to the right of the main widget). Use setButtonBoxOrientation() to control this behavior. A separator can be placed above the button box (or to the left when the button box is at the right edge). Normally you specify that you want a separator in the constructor, but you can use enableButtonSeparator() as well.

Standard compliance:

The class is derived from KDialog, so you get automatic access to the KDialog::marginHint(), KDialog::spacingHint() and the extended KDialog::setCaption() method. NOTE: The main widget you use will be positioned inside the dialog using a margin (or border) equal to KDialog::marginHint(). You shall not add a margin yourself. The example below (from kedit) shows how you use the top level widget and its layout. The second argument (the border) to QVBoxLayout is 0. This situation is valid for addPage , addVBoxPage , addHBoxPage , addGridPage , makeMainWidget , makeVBoxMainWidget , makeHBoxMainWidget and makeGridMainWidget as well.

Example:


 UrlDlg::UrlDlg( QWidget *parent, const QString& caption,
                 const QString& urltext)
   : KDialogBase( parent, "urldialog", true, caption, Ok|Cancel, Ok, true )
 {
   QWidget *page = new QWidget( this );
   setMainWidget(page);
   QVBoxLayout *topLayout = new QVBoxLayout( page, 0, spacingHint() );

   QLabel *label = new QLabel( caption, page, "caption" );
   topLayout->addWidget( label );

   lineedit = new QLineEdit( urltext, page, "lineedit" );
   lineedit->setMinimumWidth(fontMetrics().maxWidth()*20);
   topLayout->addWidget( lineedit );

   topLayout->addStretch(10);
 }

If you use makeVBoxMainWidget(), then the dialog above can be made simpler but you lose the ability to add a stretchable area:


 UrlDlg::UrlDlg( QWidget *parent, const QString& caption,
		const QString& urltext)
 : KDialogBase( parent, "urldialog", true, caption, Ok|Cancel, Ok, true )
 {
   QVBox *page = makeVBoxMainWidget();
   QLabel *label = new QLabel( caption, page, "caption" );

   lineedit = new QLineEdit( urltext, page, "lineedit" );
   lineedit->setMinimumWidth(fontMetrics().maxWidth()*20);
 }

This class can be used in many ways. Note that most KDE ui widgets and many of KDE core applications use the KDialogBase so for more inspiration you should study the code for these.

enum ButtonCode { Help = 0x00000001, Default = 0x00000002, Ok = 0x00000004, Apply = 0x00000008, Try = 0x00000010, Cancel = 0x00000020, Close = 0x00000040, User1 = 0x00000080, User2 = 0x00000100, User3 = 0x00000200, No = 0x00000080, Yes = 0x00000100, Details = 0x00000400, Filler = 0x40000000, Stretch = 0x80000000 }

ButtonCode

enum ActionButtonStyle { ActionStyle0=0, ActionStyle1, ActionStyle2, ActionStyle3, ActionStyle4, ActionStyleMAX }

ActionButtonStyle

enum DialogType { TreeList = KJanusWidget::TreeList, Tabbed = KJanusWidget::Tabbed, Plain = KJanusWidget::Plain, Swallow = KJanusWidget::Swallow, IconList = KJanusWidget::IconList }

DialogType

 KDialogBase ( QWidget *parent=0, const char *name=0, bool modal=true, const QString &caption=QString::null, int buttonMask=Ok|Apply|Cancel, ButtonCode defaultButton=Ok, bool separator=false, const KGuiItem &user1=KGuiItem(), const KGuiItem &user2=KGuiItem(), const KGuiItem &user3=KGuiItem() )

KDialogBase

Constructor for the standard mode where you must specify the main widget with setMainWidget() .

Parameters:
parentParent of the dialog.
nameDialog name (for internal use only)
modalControls dialog modality. If false, the rest of the program interface (example: other dialogs) is accessible while the dialog is open.
captionThe dialog caption. Do not specify the application name here. The class will take care of that.
buttonMaskSpecifies which buttons will be visible. If zero (0) no button box will be made.
defaultButtonSpecifies which button will be marked as the default.
separatorIf true, a separator line is drawn between the action buttons and the main widget.
user1User button1 item.
user2User button2 item.
user3User button3 item.

 KDialogBase ( int dialogFace, const QString &caption, int buttonMask, ButtonCode defaultButton, QWidget *parent=0, const char *name=0, bool modal=true, bool separator=false, const KGuiItem &user1=KGuiItem(), const KGuiItem &user2=KGuiItem(), const KGuiItem &user3=KGuiItem() )

KDialogBase

Constructor for the predefined layout mode where you specify the kind of layout (face).

Parameters:
dialogFaceYou can use TreeList, Tabbed, Plain, Swallow or IconList.
captionThe dialog caption. Do not specify the application name here. The class will take care of that.
buttonMaskSpecifies which buttons will be visible. If zero (0) no button box will be made.
defaultButtonSpecifies which button will be marked as the default.
parentParent of the dialog.
nameDialog name (for internal use only).
modalControls dialog modality. If false, the rest of the program interface (example: other dialogs) is accessible while the dialog is open.
separatorIf true, a separator line is drawn between the action buttons and the main widget.
user1User button1 text item.
user2User button2 text item.
user3User button3 text item.

 KDialogBase ( const QString &caption, int buttonMask=Yes|No|Cancel, ButtonCode defaultButton=Yes, ButtonCode escapeButton=Cancel, QWidget *parent=0, const char *name=0, bool modal=true, bool separator=false, const KGuiItem &yes = KStdGuiItem::yes(), const KGuiItem &no = KStdGuiItem::no(), const KGuiItem &cancel = KStdGuiItem::cancel() )

KDialogBase

Constructor for a message box mode where the buttonMask can only contain Yes, No, or Cancel.

If you need other names you can rename the buttons with setButtonText(). The dialog box is not resizable by default but this can be changed by setInitialSize(). If you select 'modal' to be true, the dialog will return Yes, No, or Cancel when closed otherwise you can use the signals yesClicked(), noClicked(), or cancelClicked() to determine the state.

Parameters:
captionThe dialog caption. Do not specify the application name here. The class will take care of that.
buttonMaskSpecifies which buttons will be visible. If zero (0) no button box will be made.
defaultButtonSpecifies which button will be marked as the default.
escapeButtonSpecifies which button will be activated by when the dialog receives a Key_Escape keypress.
parentParent of the dialog.
nameDialog name (for internal use only).
modalControls dialog modality. If false, the rest of the program interface (example: other dialogs) is accessible while the dialog is open.
separatorIf true, a separator line is drawn between the action buttons and the main widget.
user1User button1 text.
user2User button2 text.
user3User button3 text.

 ~KDialogBase ()

~KDialogBase

Destructor.

void  delayedDestruct ()

delayedDestruct

Destruct the Dialog delayed.

You can call this function from slots like closeClicked() and hidden(). You should not use the dialog any more after calling this function.

void  setButtonBoxOrientation ( int orientation )

setButtonBoxOrientation

Sets the orientation of the button box.

It can be Vertical or Horizontal. If Horizontal (default), the button box is positioned at the bottom of the dialog. If Vertical it will be placed at the right edge of the dialog.

Parameters:
orientationThe button box orientation.

void  setEscapeButton ( ButtonCode id )

setEscapeButton

Sets the button that will be activated when the Escape key is pressed.

Normally you should not use this function. By default, the Escape key is mapped to either the Cancel or the Close button if one of these buttons are defined. The user expects that Escape will cancel an operation so use this function with caution.

Parameters:
idThe button code.

void  adjustSize ()

adjustSize

[virtual]

Adjust the size of the dialog to fit the contents just before QDialog::exec() or QDialog::show() is called.

This method will not be called if the dialog has been explicitly resized before showing it.

QSize  sizeHint ()

sizeHint

[const virtual]

QSize  minimumSizeHint ()

minimumSizeHint

[const virtual]

QFrameplainPage ()

plainPage

Retrieve the empty page when the predefined layout is used in Plain mode.

This widget must used as the toplevel widget of your dialog code.

Returns: The widget or 0 if the predefined layout mode is not Plain or if you don't use any predefined layout.

QFrameaddPage ( const QString &item, const QString &header=QString::null, const QPixmap &pixmap=QPixmap() )

addPage

Add a page to the dialog when the class is used in TreeList , IconList or Tabbed mode.

The returned widget must be used as the toplevel widget for this particular page. Note: The returned frame widget has no layout manager associated with it. In order to use it you must create a layout yourself as the example below illustrates:


 QFrame *page = addPage( i18n("Layout") );
 QVBoxLayout *topLayout = new QVBoxLayout( page, 0, 6 );
 QLabel *label = new QLabel( i18n("Layout type"), page );
 topLayout->addWidget( label );
 ..

Parameters:
itemNameString used in the list or as tab item name.
headerHeader text use in the list modes. Ignored in Tabbed mode. If empty, the item text is used instead.
pixmapUsed in IconList mode. You should prefer a pixmap with size 32x32 pixels.

Returns: The page widget which must be used as the toplevel widget for the page.

QFrameaddPage ( const QStringList &items, const QString &header=QString::null, const QPixmap &pixmap=QPixmap() )

addPage

This is like addPage() just above, with the difference that the first element is a list of strings.

These strings are used to form a path of folders down to the given page. The initial elements are names for the folders, while the last element is the name of the page. Note: This does yet only work for the TreeList face. Later this may be added for the IconList face too. In other faces than the TreeList, all the strings except the last one is ignored.

QVBoxaddVBoxPage ( const QString &itemName, const QString &header=QString::null, const QPixmap &pixmap=QPixmap() )

addVBoxPage

Add a page to the dialog when the class is used in TreeList, IconList or Tabbed mode.

The returned widget must be used as the toplevel widget for this particular page. The widget contains a QVBoxLayout layout so the widget children are lined up vertically. You can use it as follows:


 QVBox *page = addVBoxPage( i18n("Layout") );
 QLabel *label = new QLabel( i18n("Layout type"), page );
 ..

Parameters:
itemNameString used in the list or as tab item name.
headerHeader text use in the list modes. Ignored in Tabbed mode. If empty, the item text is used instead.
pixmapUsed in IconList mode. You should prefer a pixmap with size 32x32 pixels.

Returns: The page widget which must be used as the toplevel widget for the page.

QVBoxaddVBoxPage ( const QStringList &items, const QString &header=QString::null, const QPixmap &pixmap=QPixmap() )

addVBoxPage

This is like addVBoxPage() just above, with the difference that the first element is a list of strings.

These strings are used to form a path of folders down to the given page. The initial elements are names for the folders, while the last element is the name of the page. Note: This does yet only work for the TreeList face. Later this may be added for the IconList face too. In other faces than the TreeList, all the strings except the last one is ignored.

QHBoxaddHBoxPage ( const QString &itemName, const QString &header=QString::null, const QPixmap &pixmap=QPixmap() )

addHBoxPage

Add a page to the dialog when the class is used in TreeList, IconList or Tabbed mode.

The returned widget must be used as the toplevel widget for this particular page. The widget contains a QHBoxLayout layout so the widget children are lined up horizontally. You can use it as follows:

Parameters:
itemNameString used in the list or as tab item name.
headerHeader text use in the list modes. Ignored in Tabbed mode. If empty, the item text is used instead.
pixmapUsed in IconList mode. You should prefer a pixmap with size 32x32 pixels.

Returns: The page widget which must be used as the toplevel widget for the page.

QHBoxaddHBoxPage ( const QStringList &items, const QString &header=QString::null, const QPixmap &pixmap=QPixmap() )

addHBoxPage

This is like addHBoxPage() just above, with the difference that the first element is a list of strings.

These strings are used to form a path of folders down to the given page. The initial elements are names for the folders, while the last element is the name of the page. Note: This does yet only work for the TreeList face. Later this may be added for the IconList face too. In other faces than the TreeList, all the strings except the last one is ignored.

QGridaddGridPage ( int n, Orientation dir, const QString &itemName, const QString &header=QString::null, const QPixmap &pixmap=QPixmap() )

addGridPage

Add a page to the dialog when the class is used in TreeList, IconList or Tabbed mode.

The returned widget must be used as the toplevel widget for this particular page. The widget contains a QGridLayout layout so the widget children are positioned in a grid.

Parameters:
nSpecifies the number of columns if dir is Qt::Horizontal or the number of rows if dir is Qt::Vertical.
dirCan be Qt::Horizontal or Qt::Vertical.
itemNameString used in the list or as tab item name.
headerHeader text use in the list modes Ignored in Tabbed mode. If empty, the item text is used instead.
pixmapUsed in IconList mode. You should prefer a pixmap with size 32x32 pixels.

Returns: The page widget which must be used as the toplevel widget for the page.

QGridaddGridPage ( int n, Orientation dir, const QStringList &items, const QString &header=QString::null, const QPixmap &pixmap=QPixmap() )

addGridPage

This is like addGridPage() just above, with the difference that the first element is a list of strings.

These strings are used to form a path of folders down to the given page. The initial elements are names for the folders, while the last element is the name of the page. Note: This does yet only work for the TreeList face. Later this may be added for the IconList face too. In other faces than the TreeList, all the strings except the last one is ignored.

void  setFolderIcon (const QStringList &path,const QPixmap &pixmap)

setFolderIcon

Sets the icon used in TreeList Mode for the given path.

Parameters:
pathThe path for which this icon should be shown.
pixmapThe icon used.

QFramemakeMainWidget ()

makeMainWidget

Make a main widget.

The function will make a QFrame widget and use setMainWidget() to register it. You can not use this function more than once, not if you have already defined a main widget with setMainWidget() and not if you have used the constructor where you define the face (Plain, Swallow, Tabbed, TreeList).

Returns: The main widget or 0 if any of the rules described above were broken.

QVBoxmakeVBoxMainWidget ()

makeVBoxMainWidget

Make a main widget.

The function will make a QVBox widget and use setMainWidget() to register it. You can use this function more than once, not if you have already defined a main widget with setMainWidget() and not if you have used the constructor where you define the face (Plain, Swallow, Tabbed, TreeList, IconList).

Returns: The main widget or 0 if any of the rules described above were broken.

QHBoxmakeHBoxMainWidget ()

makeHBoxMainWidget

Make a main widget.

The function will make a QHBox widget and use setMainWidget() to register it. You can not use this function more than once, not if you have already defined a main widget with setMainWidget() and not if you have used the constructor where you define the face (Plain, Swallow, Tabbed, TreeList, IconList).

Returns: The main widget or 0 if any of the rules described above were broken.

QGridmakeGridMainWidget ( int n, Orientation dir )

makeGridMainWidget

Make a main widget.

The function will make a QGrid widget and use setMainWidget() to register it. You can not use this function more than once, not if you have already defined a main widget with setMainWidget and not if you have used the constructor where you define the face (Plain, Swallow, Tabbed, TreeList, IconList).

Parameters:
nSpecifies the number of columns if 'dir' is Qt::Horizontal or the number of rows if 'dir' is Qt::Vertical.
dirCan be Qt::Horizontal or Qt::Vertical.

Returns: The main widget or 0 if any of the rules described above were broken.

void  enableButtonSeparator ( bool state )

enableButtonSeparator

Hide or display the a separator line drawn between the action buttons an the main widget.

void  showButton ( ButtonCode id, bool state )

showButton

Hide or display a general action button.

Only buttons that have been created in the constructor can be displayed. This method will not create a new button.

Parameters:
idButton identifier.
statetrue display the button(s).

void  showButtonOK ( bool state )

showButtonOK

Hide or display the OK button.

The OK button must have been created in the constructor to be displayed.

Parameters:
stateIf true, display the button(s).

void  showButtonApply ( bool state )

showButtonApply

Hide or display the Apply button.

The Apply button must have been created in the constructor to be displayed.

Parameters:
statetrue display the button(s).

void  showButtonCancel ( bool state )

showButtonCancel

Hide or display the Cancel button. The Cancel button must have been created in the constructor to be displayed.

Parameters:
statetrue display the button(s).

bool  showPage ( int index )

showPage

Sets the page with index to be displayed.

This method will only work when the dialog is using the predefined shape of TreeList, IconList or Tabbed.

Parameters:
indexIndex of the page to be shown.

Returns: true if the page is shown, false otherwise.

int  activePageIndex ()

activePageIndex

[const]

Returns the index of the active page.

This method will only work when the dialog is using the predefined shape of Tabbed, TreeList or IconList.

Returns: The page index or -1 if there is no active page.

int  pageIndex ( QWidget *widget )

pageIndex

[const]

Returns the index of a page created with addPage(), addVBoxPage(), addHBoxPage() or addGridPage(). You can can compare this index with the value returned from activePageIndex() if you need to do some page specific actions in your code.

The returned index will never change so you can safely use this function once and save the value.

Parameters:
widgetThe widget returned by addPage(), addVBoxPage(), addHBoxPage() or addGridPage().

Returns: The index or -1 if the face is not Tabbed, TreeList or IconList

void  setMainWidget ( QWidget *widget )

setMainWidget

Sets the main user definable widget.

If the dialog is using the predefined Swallow mode, the widget will be reparented to the internal swallow control widget. If the dialog is being used in the standard mode then the widget must have the dialog as parent.

Parameters:
widgetThe widget to be displayed as main widget. If it is 0, then the dialog will show an empty space of 100x100 pixels instead.

QWidgetmainWidget ()

mainWidget

Returns the main widget if any.

Returns: The current main widget. Can be 0 if no widget has been defined.

void  disableResize ()

disableResize

Convenience method.

Freezes the dialog size using the minimum size of the dialog. This method should only be called right before show() or exec().

void  setInitialSize ( const QSize &s, bool noResize=false )

setInitialSize

Convenience method. Sets the initial dialog size.

This method should only be called right before show() or exec(). The initial size will be ignored if smaller than the dialog's minimum size.

Parameters:
sStartup size.
noResizeIf true the dialog cannot be resized.

void  incInitialSize ( const QSize &s, bool noResize=false )

incInitialSize

Convenience method. Add a size to the default minimum size of a dialog.

This method should only be called right before show() or exec().

Parameters:
sSize added to minimum size.
noResizeIf true the dialog cannot be resized.

QSize  configDialogSize ( const QString& groupName )

configDialogSize

[const]

read the dialogs size from the configuration according to the screen size. If no size is saved for one dimension of the screen, a default size is choosed. The default width is 50 percent of the screen width, the default height is 40 percent of the screen height.

Parameters:
groupNameName of the group to read from. The old group of KGlobal::config is preserved.

void  saveDialogSize ( const QString& groupName, bool global=false )

saveDialogSize

save the dialogs size dependant on the screen dimension either to the global or application config file.

Parameters:
Thegroup to which the dialogs size is saved. @see configDialogSize to read the size.
globalSet to true if the entry should go to the global config rather than to the applications config. Default is false.

void  setButtonOKText ( const QString &text=QString::null, const QString &tooltip=QString::null, const QString &quickhelp=QString::null )

setButtonOKText

Sets the text of the OK button.

If the default parameters are used (that is, if no parameters are given) the standard texts are set: The button shows "OK", the tooltip contains "Accept settings." (internationalized) and the quickhelp text explains the standard behavior of the OK button in settings dialogs.

Parameters:
textButton text.
tooltipTooltip text.
quickhelpQuick help text.

void  setButtonApplyText ( const QString &text=QString::null, const QString &tooltip=QString::null, const QString &quickhelp=QString::null )

setButtonApplyText

Sets the text of the Apply button.

If the default parameters are used (that is, if no parameters are given) the standard texts are set: The button shows "Apply", the tooltip contains "Apply settings." (internationalized) and the quickhelp text explains the standard behavior of the apply button in settings dialogs.

Parameters:
textButton text.
tooltipTooltip text.
quickhelpQuick help text.

void  setButtonCancelText ( const QString &text=QString::null, const QString &tooltip=QString::null, const QString &quickhelp=QString::null )

setButtonCancelText

Sets the text of the Cancel button.

If the default parameters are used (that is, if no parameters are given) the standard texts are set: The button shows "Cancel", everything else will not be set.

Parameters:
textButton text.
tooltipTooltip text.
quickhelpQuick help text.

void  setButtonText ( ButtonCode id, const QString &text )

setButtonText

Sets the text of any button.

Parameters:
idThe button identifier.
textButton text.

void  setButtonTip ( ButtonCode id, const QString &text )

setButtonTip

Sets the tooltip text of any button.

Parameters:
idThe button identifier.
textButton text.

void  setButtonWhatsThis ( ButtonCode id, const QString &text )

setButtonWhatsThis

Sets the "What's this?" text of any button.

Parameters:
idThe button identifier.
textButton text.

void  setTreeListAutoResize ( bool state )

setTreeListAutoResize

This function has only effect in TreeList mode.

Defines how the tree list widget is resized when the dialog is resized horizontally. By default the tree list keeps its width when the dialog becomes wider.

Parameters:
stateThe resize mode. If false (default) the tree list keeps its current width when the dialog becomes wider.

void  setShowIconsInTreeList (bool state)

setShowIconsInTreeList

This function has only effect in TreeList mode.

This tells the widgets whether the icons given in the addPage, addVBoxPage, addHBoxPage, or addGridPage methods should be shown in the TreeList.

Note: This method must be called before calling any of the methods which add icons to the page.

Parameters:
stateIf true the icons are shown.

void  setRootIsDecorated ( bool state )

setRootIsDecorated

This function has only effect in TreeList mode.

This tells the widgets whether the root should be decorated. For details see QListView::setRootIsDecorated

Parameters:
stateRoot will be decorated if true.

void  setIconListAllVisible ( bool state )

setIconListAllVisible

This function has only effect in IconList mode.

Defines how the icon list widget is displayed. By default it is the widgets in the dialog pages that decide the minimum height of the dialog. A vertical scrollbar can be used in the icon list area.

Parameters:
stateThe visibility mode. If true, the minimum height is adjusted so that every icon in the list is visible at the same time. The vertical scrollbar will never be visible.

bool  haveBackgroundTile ()

haveBackgroundTile

[static]

Check whether the background tile is set or not.

Returns: true if there is defined a background tile.

const QPixmapbackgroundTile ()

backgroundTile

[static]

Returns a pointer to the background tile if there is one.

Returns: The tile pointer or 0 if no tile is defined.

const QPixmapgetBackgroundTile ()

getBackgroundTile

[static]

Use backgroundTile() instead.

void  setBackgroundTile ( const QPixmap *pix )

setBackgroundTile

[static]

Sets the background tile.

If it is Null (0), the background image is deleted.

Parameters:
pixThe background tile.

void  showTile ( bool state )

showTile

Enable hiding of the background tile (if any).

Parameters:
statetrue will make the tile visible.

void  getBorderWidths ( int& ulx, int& uly, int& lrx, int& lry )

getBorderWidths

[const]

Do not use this method. It is included for compatibility reasons.

This method returns the border widths in all directions the dialog needs for itself. Respect this, or get bad looking results. The references are upper left x (ulx), upper left y (uly), lower right x (lrx), and lower left y (lly). The results are differences in pixels from the dialogs corners.

QRect  getContentsRect ()

getContentsRect

[const]

Do not use this method. It is included for compatibility reasons.

This method returns the contents rectangle of the work area. Place your widgets inside this rectangle, and use it to set up their geometry. Be careful: The rectangle is only valid after resizing the dialog, as it is a result of the resizing process. If you need the "overhead" the dialog needs for its elements, use getBorderWidths().

QSize  calculateSize ( int w, int h )

calculateSize

[const]

Calculate the size hint for the dialog.

With this method it is easy to calculate a size hint for a dialog derived from KDialogBase if you know the width and height of the elements you add to the widget. The rectangle returned is calculated so that all elements exactly fit into it. Thus, you may set it as a minimum size for the resulting dialog.

You should not need to use this method and never if you use one of the predefined shapes.

Parameters:
wThe width of you special widget.
hThe height of you special widget.

Returns: The minimum width and height of the dialog using w and h as the size of the main widget.

QString  helpLinkText ()

helpLinkText

[const]

Returns the help link text.

If no text has been defined, "Get help..." (internationalized) is returned.

Returns: The help link text.

QPushButtonactionButton ( ButtonCode id )

actionButton

Returns the action button that corresponds to the id.

Normally you should not use this function. Never delete the object returned by this function. See also enableButton(), showButton(), setButtonTip(), setButtonWhatsThis(), and setButtonText().

Parameters:
idInteger identifier of the button.

Returns: The action button or 0 if the button does not exists.

void  enableButton ( ButtonCode id, bool state )

enableButton

[slot]

Enable or disable (gray out) a general action button.

Parameters:
idButton identifier.
statetrue enables the button(s).

void  enableButtonOK ( bool state )

enableButtonOK

[slot]

Enable or disable (gray out) the OK button.

Parameters:
statetrue enables the button.

void  enableButtonApply ( bool state )

enableButtonApply

[slot]

Enable or disable (gray out) the Apply button.

Parameters:
statetrue enables the button.

void  enableButtonCancel ( bool state )

enableButtonCancel

[slot]

Enable or disable (gray out) the Cancel button.

Parameters:
statetrue enables the button.

void  enableLinkedHelp ( bool state )

enableLinkedHelp

[slot]

Display or hide the help link area on the top of the dialog.

Parameters:
statetrue will display the area.

void  setHelpLinkText ( const QString &text )

setHelpLinkText

[slot]

Sets the text that is shown as the linked text.

If text is empty, the text "Get help..." (internationalized) is used instead.

Parameters:
textThe link text.

void  setHelp ( const QString &anchor, const QString &appname = QString::null )

setHelp

[slot]

Sets the help path and topic.

Parameters:
anchorDefined anchor in your docbook sources
appnameDefines the appname the help belongs to If empty it's the current one

void  helpClickedSlot ( const QString & )

helpClickedSlot

[slot]

Connected to help link label.

void  setDetails (bool showDetails)

setDetails

[slot]

Sets the status of the Details button.

void  setDetailsWidget (QWidget *detailsWidget)

setDetailsWidget

[slot]

Sets the widget that gets shown when "Details" is enabled.

The dialog takes over ownership of the widget. Any previously set widget gets deleted.

void  updateBackground ()

updateBackground

[slot]

This method is called automatically whenever the background has changed. You do not need to use this method.

void  helpClicked ()

helpClicked

[signal]

The Help button was pressed. This signal is only emitted if slotHelp() is not replaced.

void  defaultClicked ()

defaultClicked

[signal]

The Default button was pressed. This signal is only emitted if slotDefault() is not replaced.

void  user3Clicked ()

user3Clicked

[signal]

The User3 button was pressed. This signal is only emitted if slotUser3() is not replaced.

void  user2Clicked ()

user2Clicked

[signal]

The User2 button was pressed. This signal is only emitted if slotUser2() is not replaced.

void  user1Clicked ()

user1Clicked

[signal]

The User1 button was pressed. This signal is only emitted if slotUser1() is not replaced.

void  applyClicked ()

applyClicked

[signal]

The Apply button was pressed. This signal is only emitted if slotApply() is not replaced.

void  tryClicked ()

tryClicked

[signal]

The Try button was pressed. This signal is only emitted if slotTry() is not replaced.

void  okClicked ()

okClicked

[signal]

The OK button was pressed. This signal is only emitted if slotOk() is not replaced.

void  yesClicked ()

yesClicked

[signal]

The Yes button was pressed. This signal is only emitted if slotYes() is not replaced.

void  noClicked ()

noClicked

[signal]

The No button was pressed. This signal is only emitted if slotNo() is not replaced.

void  cancelClicked ()

cancelClicked

[signal]

The Cancel button was pressed. This signal is only emitted if slotCancel() is not replaced.

void  closeClicked ()

closeClicked

[signal]

The Close button was pressed. This signal is only emitted if slotClose() is not replaced.

void  apply ()

apply

[signal]

Do not use this signal. Is is kept for compatibility reasons. Use applyClicked() instead.

void  backgroundChanged ()

backgroundChanged

[signal]

The background tile has changed.

void  hidden ()

hidden

[signal]

The dialog is about to be hidden.

A dialog is hidden after a user clicks a button that ends the dialog or when the user switches to another desktop or minimizes the dialog.

void  finished ()

finished

[signal]

The dialog has finished.

A dialog emits finished after a user clicks a button that ends the dialog.

This signal is also emitted when you call hide()

If you have stored a pointer to the dialog do not try to delete the pointer in the slot that is connected to this signal.

You should use delayedDestruct() instead.

void  aboutToShowDetails ()

aboutToShowDetails

[signal]

The detailsWidget is about to get shown. This is your last chance to call setDetailsWidget if you haven't done so yet.

void  aboutToShowPage (QWidget *page)

aboutToShowPage

[signal]

A page is about to be shown.

void  keyPressEvent ( QKeyEvent *e )

keyPressEvent

[protected virtual]

Maps some keys to the actions buttons. F1 is mapped to the Help button if present and Escape to the Cancel or Close if present. The button action event is animated.

Reimplemented from KDialog.

void  hideEvent ( QHideEvent * )

hideEvent

[protected virtual]

Emits the hidden signal. You can connect to that signal to detect when a dialog has been closed.

void  closeEvent ( QCloseEvent *e )

closeEvent

[protected virtual]

Detects when a dialog is being closed from the window manager controls. If the Cancel or Close button is present then the button is activated. Otherwise standard QDialog behavior will take place.

void  slotHelp ()

slotHelp

[protected slots virtual slot]

Activated when the Help button has been clicked. If a help text has been defined, the help system will be activated.

void  slotDefault ()

slotDefault

[protected slots virtual slot]

Activated when the Default button has been clicked.

void  slotDetails ()

slotDetails

[protected slots virtual slot]

Activated when the Details button has been clicked.

See also: detailsClicked(bool)

void  slotUser3 ()

slotUser3

[protected slots virtual slot]

Activated when the User3 button has been clicked.

void  slotUser2 ()

slotUser2

[protected slots virtual slot]

Activated when the User2 button has been clicked.

void  slotUser1 ()

slotUser1

[protected slots virtual slot]

Activated when the User1 button has been clicked.

void  slotOk ()

slotOk

[protected slots virtual slot]

Activated when the Ok button has been clicked. The QDialog::accept() is activated.

void  slotApply ()

slotApply

[protected slots virtual slot]

Activated when the Apply button has been clicked.

void  slotTry ()

slotTry

[protected slots virtual slot]

Activated when the Try button has been clicked.

void  slotYes ()

slotYes

[protected slots virtual slot]

Activated when the Yes button has been clicked. The QDialog::done( Yes ) is activated.

void  slotNo ()

slotNo

[protected slots virtual slot]

Activated when the Yes button has been clicked. The QDialog::done( No ) is activated.

void  slotCancel ()

slotCancel

[protected slots virtual slot]

Activated when the Cancel button has been clicked. The QDialog::reject() is activated in regular mode and QDialog::done( Cancel ) when in message box mode.

void  slotClose ()

slotClose

[protected slots virtual slot]

Activated when the Close button has been clicked. The QDialog::reject() is activated.

void  applyPressed ()

applyPressed

[protected slots virtual slot]

Do not use this slot. Is is kept for compatibility reasons. Activated when the Apply button has been clicked

void  updateGeometry ()

updateGeometry

[protected slots slot]

Updates the margins and spacings.

void  slotDelayedDestruct ()

slotDelayedDestruct

[protected slots slot]

Deletes the dialog.

void  virtual_hook ( int id, void* data )

virtual_hook

[protected virtual]

Reimplemented from KDialog.