KPrintDialogPage Class Reference

`#include <kprintdialogpage.h>`

Inherits QWidget.

Inherited by KPCopiesPage, KPDriverPage, KPFileSelectPage, KPFilterPage, KPGeneralPage, KPHpgl2Page, KPImagePage, KPMarginPage, KPPosterPage, KPQtPage, KPSchedulePage, KPTagsPage, and KPTextPage.

## Public Member Functions

| KPrintDialogPage (QWidget *parent=0, const char *name=0)
| KPrintDialogPage (KMPrinter *pr, DrMain *dr=0, QWidget *parent=0, const char *name=0)
virtual | ~KPrintDialogPage ()
virtual void | getOptions (QMap< QString, QString > &opts, bool incldef=false)
virtual void | setOptions (const QMap< QString, QString > &opts)
virtual bool | isValid (QString &msg)
int | id () const
void | setId (int ID)
QString | title () const
void | setTitle (const QString &txt)
bool | onlyRealPrinters () const
void | setOnlyRealPrinters (bool on=true)
DrMain * | driver ()
KMPrinter * | printer ()

## Protected Attributes

KMPrinter * | m_printer
DrMain * | m_driver
int | m_ID
QString | m_title
bool | m_onlyreal

## Detailed Description

This class is intended to be used as base class for customized print dialog page.

One of the feature of the KDE print framework is to allow to customize the print dialog to add some application specific print options. This is done by subclassing KPrintDialogPage and reimplementing the 3 virtual functions getOptions, setOptions and isValid(). The print options will be stored in the KPrinter object, and will be accessible via KPrinter::option(). The option name should follow the form "kde-appname-optionname" for internal reasons.

#include <kdeprint/kprintdialogpage.h>
class MyDialogPage : public KPrintDialogPage
{
public:
MyDialogPage( QWidget *parent = 0, const char *name = 0 );
//reimplement virtual functions
void getOptions( QMap<QString,QString>& opts, bool incldef = false );
void setOptions( const QMap<QString,QString>& opts );
bool isValid( QString& msg );
private:
QComboBox *m_fontcombo;
};
MyDialogPage::MyDialogPage( QWidget *parent, const char *name )
: KPrintDialogPage( parent, name )
{
setTitle( i18n( "My Page" ) );
}
void MyDialogPage::getOptions( QMap<QString,QString>& opts, bool incldef )
{
if ( incldef || m_fontcombo->currentText() != mydefaultvalue )
opts[ "kde-myapp-fontname" ] = m_fontcombo->currentText();
}
void MyDialogPage::setOptions( const QMap<QString,QString>& opts )
{
QString fntname = opts[ "kde-myapp-fontname" ];
m_fontcombo->setEditText( fntname );
}
bool MyDialogPage::isValid( QString& msg)
{
if ( m_fontcombo->currentText().isEmpty() )
{
msg = i18n( "Font name cannot be empty." );
return false;
}
return true;
}

Base class for customized print dialog pages.

See also
  KPrinter

Definition at line 90 of file kprintdialogpage.h.

## Constructor & Destructor Documentation

KPrintDialogPage::KPrintDialogPage | ( | QWidget * | parent = `0`,
|  | const char * | name = `0`
| ) |  |

Standard constructor.

Definition at line 23 of file kprintdialogpage.cpp.

KPrintDialogPage::KPrintDialogPage | ( | KMPrinter * | pr,
|  | DrMain * | dr = `0`,
|  | QWidget * | parent = `0`,
|  | const char * | name = `0`
| ) |  |

Modified constructor.

For internal use only.

Definition at line 28 of file kprintdialogpage.cpp.

KPrintDialogPage::~KPrintDialogPage | ( |  | ) |

virtual

Destructor.

Definition at line 33 of file kprintdialogpage.cpp.

## Member Function Documentation

DrMain* KPrintDialogPage::driver | ( |  | ) |

inline

For internal use only.

Definition at line 176 of file kprintdialogpage.h.

void KPrintDialogPage::getOptions | ( | QMap< QString, QString > & | opts,
|  | bool | incldef = `false`
| ) |  |

virtual

This function is called to fill the structure `opts` with the selected options from this dialog page.

If `incldef` is true, include also options with default values, otherwise discard them. Reimplement this function in subclasses.

Parameters

  opts | the option set to fill
  incldef | if true, include also options with default values

See also
  setOptions()

Definition at line 41 of file kprintdialogpage.cpp.

int KPrintDialogPage::id | ( |  | ) | const

inline

Get the ID of the page.

Not used yet.

Returns
  the page ID

See also
  setId()

Definition at line 135 of file kprintdialogpage.h.

bool KPrintDialogPage::isValid | ( | QString & | msg | ) |

virtual

Returns true if options selected in the page are valid (no conflict), false otherwise.

When returning false, `msg` should contain an error message explaining what is wrong in the selected options.

Parameters

  msg | should contain an error message when returning false

Returns
  valid status

Definition at line 45 of file kprintdialogpage.cpp.

bool KPrintDialogPage::onlyRealPrinters | ( |  | ) | const

inline

Tell wether or not the page should be disable if a non real printer (special printer) is selected in the print dialog.

Returns false by default. Application specific pages usually corresponds to printer-independent options, so the page should be kept enabled whatever the selected printer. The default value is then correct and your application doesn't to change anything.

Returns
  true if the page should be disabled for non real printers

See also
  setOnlyRealPrinters()

Definition at line 164 of file kprintdialogpage.h.

KMPrinter* KPrintDialogPage::printer | ( |  | ) |

inline

For internal use only.

Definition at line 180 of file kprintdialogpage.h.

void KPrintDialogPage::setId | ( | int | ID | ) |

inline

Set the ID of the page.

Not used yet.

Parameters

  ID | the ID number

See also
  id()

Definition at line 141 of file kprintdialogpage.h.

void KPrintDialogPage::setOnlyRealPrinters | ( | bool | on = `true` | ) |

inline

Change the page state when a non real printer is selected in the print dialog.

Usually, the default value (false) is OK in most cases and you don't need to call this function explicitly.

Parameters

  on | if true, then the page will be disabled if a non real printer is selected

See also
  onlyRealPrinters()

Definition at line 172 of file kprintdialogpage.h.

void KPrintDialogPage::setOptions | ( | const QMap< QString, QString > & | opts | ) |

virtual

This function is called to update the current page with the options contained in `opts`.

Reimplement it in subclasses.

Parameters

  opts | the structure containing the options to update the page

Definition at line 37 of file kprintdialogpage.cpp.

void KPrintDialogPage::setTitle | ( | const QString & | txt | ) |

inline

Set the page title.

This title will be used as tab name for this page in the print dialog.

Parameters

  txt | the page title

See also
  title()

Definition at line 154 of file kprintdialogpage.h.

QString KPrintDialogPage::title | ( |  | ) | const

inline

Get the page title.

Returns
  the page title

See also
  setTitle()

Definition at line 147 of file kprintdialogpage.h.

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

- kprintdialogpage.h
- kprintdialogpage.cpp

KDE Home | KDE Accessibility Home | Description of Access Keys