class KScanDialog

# class KScanDialog | A baseclass and accessor for Scanning Dialogs. More...
Definition | `#include <kscan.h>`
Inherits | KDialogBase (kdeui) [public ]
List of all Methods
Annotated List
Files
Globals
Hierarchy
Index

#### Public Methods

- ~KScanDialog ()
- virtual bool setup ()

#### Signals

- void preview ( const QImage&, int id )
- void finalImage ( const QImage&, int id )
- void textRecognized ( const QString&, int id )

#### Public Static Methods

- static KScanDialog * getScanDialog ( QWidget *parent=0L, const char *name=0, bool modal=false )

#### Protected Methods

- KScanDialog ( int dialogFace=Tabbed, int buttonMask = Close|Help, QWidget *parent=0L, const char *name=0, bool modal=false )
- int id () const
- int nextId ()
- virtual void virtual_hook ( int id, void* data )

## Detailed Description

This is a base class for scanning dialogs. You can derive from this class and implement your own dialog. An implementation is available in kdegraphics/libkscan.

Application developers that wish to add scanning support to their program can use the static method `KScanDialog::getScanDialog`() to get an instance of the user's preferred scanning dialog.

Typical usage looks like this (e.g. in a slotShowScanDialog() method):

     if ( !m_scanDialog ) {
         m_scanDialog = KScanDialog::getScanDialog( this, "scandialog" );
         if ( !m_scanDialog ) // no scanning support installed?
             return;

         connect( m_scanDialog, SIGNAL( finalImage( const QImage&, int )),
                  SLOT( slotScanned( const QImage&, int ) ));
     }

     if ( m_scanDialog->setup() ) // only if scanner configured/available
         m_scanDialog->show();

This will create and show a non-modal scanning dialog. Connect to more signals if you like.

If you implement an own scan-dialog, you also have to implement a KScanDialogFactory.

KScanDialog * getScanDialog ( QWidget *parent=0L, const char *name=0, bool modal=false ) | ### getScanDialog

[static]

Creates the user's preferred scanning dialog and returns it, or 0L if no scan-support is available. Pass a suitable `parent` widget, if you like. If you don't you have to 'delete' the returned pointer yourself.

~KScanDialog () | ### ~KScanDialog

Destructs the scan dialog.

bool setup () | ### setup

[virtual]

Reimplement this if you need to set up some things, before showing the dialog, e.g. to ask the user for the scanner device to use. If you return false (e.g. there is no device available or the user aborted device selection), the dialog will not be shown.

Returns true by default.

KScanDialog ( int dialogFace=Tabbed, int buttonMask = Close|Help, QWidget *parent=0L, const char *name=0, bool modal=false ) | ### KScanDialog

[protected]

Constructs the scan dialog. If you implement an own dialog, you can customize it with the usual KDialogBase flags.

See also: KDialogBase

int id () | ### id

[protected const]

Returns: the current id for an image. You can use that in your subclass for the signals. The id is used in the signals to let people know which preview and which text-recognition belongs to which scan.

See also: nextId, finalImage, preview, textRecognized

int nextId () | ### nextId

[protected]

Returns: the id for the next image. You can use that in your subclass for the signals.

See also: id, finalImage, preview, textRecognized

void preview ( const QImage&, int id ) | ### preview

[signal]

Informs you that an image has been previewed.

void finalImage ( const QImage&, int id ) | ### finalImage

[signal]

Informs you that an image has scanned. `id` is the same as in the `preview`() signal, if this image had been previewed before.

Note, that those id's may not be properly implemented in the current libkscan.

void textRecognized ( const QString&, int id ) | ### textRecognized

[signal]

Informs you that the image with the id `id` has been run through text-recognition. The text is in the QString parameter. In the future, a compound document, using rich text will be used instead.

void virtual_hook ( int id, void* data ) | ### virtual_hook

[protected virtual]

Reimplemented from KDialogBase.

- Author: Carsten Pfeiffer
- Generated: root on macppc.ports.openbsd.org on Sat Sep 6 10:36:57 2003, using kdoc 2.0a54.