QMotifDialog(3) The QDialog API for Motif-based dialogs

SYNOPSIS

This class is part of the Qt Motif Extension.

#include <qmotifdialog.h>

Inherits QDialog.

Public Members


enum DialogType { Prompt, Selection, Command, FileSelection, Template, Error, Information, Message, Question, Warning, Working } (obsolete)

QMotifDialog ( DialogType dialogtype, Widget parent, ArgList args = NULL, Cardinal argcount = 0, const char * name = 0, bool modal = FALSE, WFlags flags = 0 ) (obsolete)

QMotifDialog ( Widget parent, ArgList args = NULL, Cardinal argcount = 0, const char * name = 0, bool modal = FALSE, WFlags flags = 0 ) (obsolete)

QMotifDialog ( Widget parent, const char * name = 0, bool modal = FALSE, WFlags flags = 0 )

QMotifDialog ( QWidget * parent, const char * name = 0, bool modal = FALSE, WFlags flags = 0 )

virtual ~QMotifDialog ()

Widget shell () const

Widget dialog () const

Static Public Members


void acceptCallback ( Widget, XtPointer client_data, XtPointer )

void rejectCallback ( Widget, XtPointer client_data, XtPointer )

DESCRIPTION

This class is defined in the Qt Motif Extension, which can be found in the qt/extensions directory. It is not included in the main Qt API.

The QMotifDialog class provides the QDialog API for Motif-based dialogs.

QMotifDialog provides two separate modes of operation. The application programmer can use QMotifDialog with an existing Motif-based dialog and a QWidget parent, or the application programmer can use QMotifDialog with a custom Qt-based dialog and a Motif-based parent. Modality continues to work as expected.

Motif-based dialogs must have a Shell widget parent with a single child, due to requirements of the Motif toolkit. The Shell widget, which is a special subclass of XmDialogShell, is created during construction. It can be accessed using the shell() member function.

The single child of the Shell can be accessed using the dialog() member function after it has been created.

The acceptCallback() and rejectCallback() functions provide a convenient way to call QDialog::accept() and QDialog::reject() through callbacks. A pointer to the QMotifDialog should be passed as the client_data argument to the callback.

The API and behavior QMotifDialog is identical to that of QDialog when using a custom Qt-based dialog with a Motif-based parent. The only difference is that a Motif-based parent argument is passed to the constructor, instead of a QWidget parent.

Member Type Documentation

QMotifDialog::DialogType

This function is obsolete. It is provided to keep old source working. We strongly advise against using it in new code.

This enum lists the predefined Motif dialog types.

QMotifDialog::Prompt
QMotifDialog::Selection
QMotifDialog::Command
QMotifDialog::FileSelection
QMotifDialog::Template
QMotifDialog::Error
QMotifDialog::Information
QMotifDialog::Message
QMotifDialog::Question
QMotifDialog::Warning
QMotifDialog::Working

MEMBER FUNCTION DOCUMENTATION

QMotifDialog::QMotifDialog ( DialogType dialogtype, Widget parent, ArgList args = NULL, Cardinal argcount = 0, const char * name = 0, bool modal = FALSE, WFlags flags = 0 )

This function is obsolete. It is provided to keep old source working. We strongly advise against using it in new code.

Creates a QMotifDialog using one of the predefined Motif dialog types. The name, modal and flags arguments are passed to the QDialog constructor.

This constructor creates a Shell widget, which is a special subclass of XmDialogShell. The parent, args and argcount arguments are passed to XtCreatePopupShell() when creating the subclass. You can access the Shell widget with the shell() member function.

This constructor also creates the dialog widget with the Shell widget as its parent. The type of the dialog created is specified by the dialogtype argument. See the DialogType enum for a list of available dialog types. You can access the dialog widget with the dialog() member function.

Warning: QMotifDialog takes ownership of the child widget and destroys it during destruction. You should not destroy the dialog widget yourself.

See also DialogType, shell(), and dialog().

QMotifDialog::QMotifDialog ( Widget parent, ArgList args = NULL, Cardinal argcount = 0, const char * name = 0, bool modal = FALSE, WFlags flags = 0 )

This function is obsolete. It is provided to keep old source working. We strongly advise against using it in new code.

Creates a QMotifDialog which allows the application programmer to use the Motif-based parent for a custom QDialog. The name, modal and flags arguments are passed to the QDialog constructor.

This constructor creates a Shell widget, which is a special subclass of XmDialogShell. The args and argcount arguments are passed to XtCreatePopupShell() when creating the subclass. You can access the Shell widget with the shell() member function.

The dialog widget is not created by the constructor. You must create the dialog widget as a child of the the widget returned by shell(). You can access the child widget with the dialog() member function.

A dialog widget is not created by this constructor. Instead, you should create the dialog widget as a child of this dialog. QMotifDialog will take ownership of your custom dialog, and you can access it with the dialog() member function.

Warning: QMotifDialog takes ownership of the child widget and destroys it during destruction. You should not destroy the dialog widget yourself.

See also shell() and dialog().

QMotifDialog::QMotifDialog ( Widget parent, const char * name = 0, bool modal = FALSE, WFlags flags = 0 )

Creates a QMotifDialog which allows the application programmer to use the Motif-based parent for a custom QDialog. The name, modal and flags arguments are passed to the QDialog constructor.

This constructor creates a Shell widget, which is a special subclass of XmDialogShell. You can access the Shell widget with the shell() member function.

See also shell().

QMotifDialog::QMotifDialog ( QWidget * parent, const char * name = 0, bool modal = FALSE, WFlags flags = 0 )

Creates a QMotifDialog which allows the application programmer to use a QWidget parent for an existing Motif-based dialog. The parent, name, modal and flags arguments are passed to the QDialog constructor.

This constructor creates a Shell widget, which is a special subclass of XmDialogShell. You can access the Shell widget with the shell() member functon.

A dialog widget is not created by this constructor. Instead, you should create the dialog widget as a child of this dialog. QMotifDialog will take ownership of your custom dialog, and you can access it with the dialog() member function.

Warning: QMotifDialog takes ownership of the child widget and destroys it during destruction. You should not destroy the dialog widget yourself.

See also shell() and dialog().

QMotifDialog::~QMotifDialog () [virtual]

Destroys the QDialog, dialog widget and Shell widget.

void QMotifDialog::acceptCallback ( Widget, XtPointer client_data, XtPointer ) [static]

Convenient Xt/Motif callback to accept the QMotifDialog.

The data is passed in client_data.

Widget QMotifDialog::dialog () const

Returns the Motif widget embedded in this dialog.

void QMotifDialog::rejectCallback ( Widget, XtPointer client_data, XtPointer ) [static]

Convenient Xt/Motif callback to reject the QMotifDialog.

The data is passed in client_data.

Widget QMotifDialog::shell () const

Returns the Shell widget embedded in this dialog.

Example: dialog/mainwindow.cpp.

COPYRIGHT

Copyright 1992-2007 Trolltech ASA, http://www.trolltech.com. See the license file included in the distribution for a complete license statement.

AUTHOR

Generated automatically from the source code.

BUGS

If you find a bug in Qt, please report it as described in http://doc.trolltech.com/bughowto.html. Good bug reports help us to help you. Thank you.

The definitive Qt documentation is provided in HTML format; it is located at $QTDIR/doc/html and can be read using Qt Assistant or with a web browser. This man page is provided as a convenience for those users who prefer man pages, although this format is not officially supported by Trolltech.

If you find errors in this manual page, please report them to [email protected]. Please include the name of the manual page (qmotifdialog.3qt) and the Qt version (3.3.8).