FontDialogPanel::FontDialogPanel(QWidget *parent) : QWidget(parent) , m_fontFamilyBox(new QFontComboBox) , m_fontSizeBox(new QDoubleSpinBox) , m_noButtons(new QCheckBox(tr("Don't display OK/Cancel buttons"))) , m_dontUseNativeDialog(new QCheckBox(tr("Don't use native dialog"))) , m_scalableFilter(new QCheckBox(tr("Filter scalable fonts"))) , m_nonScalableFilter(new QCheckBox(tr("Filter non scalable fonts"))) , m_monospacedFilter(new QCheckBox(tr("Filter monospaced fonts"))) , m_proportionalFilter(new QCheckBox(tr("Filter proportional fonts"))) { // Options QGroupBox *optionsGroupBox = new QGroupBox(tr("Options"), this); QVBoxLayout *optionsLayout = new QVBoxLayout(optionsGroupBox); optionsLayout->addWidget(m_noButtons); optionsLayout->addWidget(m_dontUseNativeDialog); optionsLayout->addWidget(m_scalableFilter); optionsLayout->addWidget(m_nonScalableFilter); optionsLayout->addWidget(m_monospacedFilter); optionsLayout->addWidget(m_proportionalFilter); // Font QGroupBox *fontGroupBox = new QGroupBox(tr("Font"), this); QHBoxLayout *fontLayout = new QHBoxLayout(fontGroupBox); fontLayout->addWidget(m_fontFamilyBox); fontLayout->addWidget(m_fontSizeBox); m_fontSizeBox->setValue(QFont().pointSizeF()); // Buttons QGroupBox *buttonsGroupBox = new QGroupBox(tr("Show")); QVBoxLayout *buttonsLayout = new QVBoxLayout(buttonsGroupBox); addButton(tr("Exec modal"), buttonsLayout, this, SLOT(execModal())); addButton(tr("Show modal"), buttonsLayout, this, SLOT(showModal())); m_deleteModalDialogButton = addButton(tr("Delete modal"), buttonsLayout, this, SLOT(deleteModalDialog())); addButton(tr("Show non-modal"), buttonsLayout, this, SLOT(showNonModal())); m_deleteNonModalDialogButton = addButton(tr("Delete non-modal"), buttonsLayout, this, SLOT(deleteNonModalDialog())); addButton(tr("Restore defaults"), buttonsLayout, this, SLOT(restoreDefaults())); buttonsLayout->addStretch(); // Main layout QHBoxLayout *mainLayout = new QHBoxLayout(this); QVBoxLayout *leftLayout = new QVBoxLayout; leftLayout->addWidget(optionsGroupBox); leftLayout->addWidget(fontGroupBox); leftLayout->addStretch(); mainLayout->addLayout(leftLayout); mainLayout->addWidget(buttonsGroupBox); enableDeleteModalDialogButton(); enableDeleteNonModalDialogButton(); restoreDefaults(); }
ColorDialogPanel::ColorDialogPanel(QWidget *parent) : QWidget(parent) , m_colorComboBox(new QComboBox) , m_showAlphaChannel(new QCheckBox(tr("Show alpha channel"))) , m_noButtons(new QCheckBox(tr("Don't display OK/Cancel buttons"))) , m_dontUseNativeDialog(new QCheckBox(tr("Don't use native dialog"))) { // Options QGroupBox *optionsGroupBox = new QGroupBox(tr("Options"), this); QVBoxLayout *optionsLayout = new QVBoxLayout(optionsGroupBox); optionsLayout->addWidget(m_showAlphaChannel); optionsLayout->addWidget(m_noButtons); optionsLayout->addWidget(m_dontUseNativeDialog); // Color QGroupBox *colorGroupBox = new QGroupBox(tr("Color"), this); QVBoxLayout *colorLayout = new QVBoxLayout(colorGroupBox); colorLayout->addWidget(m_colorComboBox); m_colorComboBox->addItems(svgColorNames()); m_colorComboBox->setEditable(true); QAbstractItemModel *sourceModel = m_colorComboBox->model(); ColorProxyModel* proxyModel = new ColorProxyModel(m_colorComboBox); proxyModel->setSourceModel(sourceModel); sourceModel->setParent(proxyModel); m_colorComboBox->setModel(proxyModel); // Buttons QGroupBox *buttonsGroupBox = new QGroupBox(tr("Show")); QVBoxLayout *buttonsLayout = new QVBoxLayout(buttonsGroupBox); addButton(tr("Exec modal"), buttonsLayout, this, SLOT(execModal())); addButton(tr("Show modal"), buttonsLayout, this, SLOT(showModal())); m_deleteModalDialogButton = addButton(tr("Delete modal"), buttonsLayout, this, SLOT(deleteModalDialog())); addButton(tr("Show non-modal"), buttonsLayout, this, SLOT(showNonModal())); m_deleteNonModalDialogButton = addButton(tr("Delete non-modal"), buttonsLayout, this, SLOT(deleteNonModalDialog())); addButton(tr("Restore defaults"), buttonsLayout, this, SLOT(restoreDefaults())); buttonsLayout->addStretch(); // Main layout QHBoxLayout *mainLayout = new QHBoxLayout(this); QVBoxLayout *leftLayout = new QVBoxLayout; leftLayout->addWidget(optionsGroupBox); leftLayout->addWidget(colorGroupBox); leftLayout->addStretch(); mainLayout->addLayout(leftLayout); mainLayout->addWidget(buttonsGroupBox); enableDeleteModalDialogButton(); enableDeleteNonModalDialogButton(); restoreDefaults(); }