Skip to main content

InputFormDialog provides a simple multi-type input dialog for Qt5

Project description

InputFormDialog

InputFormDialog is a simple module that provides a multi-type input dialog for Qt5.

The purpose of the InputFormDialog is to compliment the static get methods of the QInputDialog such as QInputDialog.getText or QInputDialog.getInt.

Details

Using InputFormDialog is simple. First create a dictionary that will define the form entries and their default values. If the order of input widgets is important, use OrderedDict.

Currently the following input queries are supported:

  • boolean
  • color
  • numeric
  • text
  • options list
  • 2d/3d vector

Second, call the get_input() function and pass the data object as an argument. If the user accepts the dialog then the data object will hold the new values chosen by the user.

Additionally, you might want to create FormOptions object and specify some of the options that control the properties of widgets used by the dialog.

Currently the following options are available:

  • set numeric limits, step and decimal precision
  • set whether combo box or radio button group is used
  • set whether the combo box / radio button group returns current item text or index

Example

# QApplication must be running prior to calling get_input
from collections import OrderedDict
from Qt import QtGui, QtWidgets

from input_form_dialog import FormOptions, get_input

# Define form inputs
data = OrderedDict()
data["Bool"] = True
data['Color'] = QtGui.QColor('red')
data['Int'] = 1
data['String'] = 'Test'
data['ComboBox'] = ['One', 'Two']
data['Vector2'] = QtGui.QVector2D(10.0, 5.0)

# Define form options
options = FormOptions()
options.list_displays_as_radios = True
options.list_returns_index = True

# Ask user for input and retrieve data
if get_input('Example', data, options):
    print(data['Bool'])
    print(data['Color'])
    print(data['Int'])
    print(data['String'])
    print(data['ComboBox'])
    print(data['Vector2'])

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

input_form_dialog-1.0.1.tar.gz (4.1 kB view hashes)

Uploaded Source

Built Distribution

input_form_dialog-1.0.1-py2-none-any.whl (4.4 kB view hashes)

Uploaded Python 2

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page