GlTraceSettingsDialog::GlTraceSettingsDialog(GlTraceFilterModel *model, QWidget *parent)
    : QDialog(parent)
{
    setupUi(this);

	treeView->setEditTriggers(QAbstractItemView::CurrentChanged | 
                              QAbstractItemView::SelectedClicked);
	treeView->setSelectionBehavior(QAbstractItemView::SelectRows);
	treeView->setSelectionMode(QAbstractItemView::SingleSelection);

    m_pGlTraceModel = model;

    m_pViewFilter = new GlTraceSettingsViewFilter(m_pGlTraceModel);
    m_pViewFilter->setSourceModel(m_pGlTraceModel);

	treeView->setModel(m_pViewFilter);



    connect(leSearch, SIGNAL(textChanged(const QString &)),
            m_pViewFilter, SLOT(setFilterWildcard(const QString &)));

    connect(buttonBox->button(QDialogButtonBox::RestoreDefaults), 
            SIGNAL(pressed()),
            this, SLOT(resetToDefaults()));

    connect(buttonBox, SIGNAL(accepted()), this, SLOT(acceptSettings()));
    connect(buttonBox, SIGNAL(rejected()), this, SLOT(rejectSettings()));

    connect(buttonBox->button(QDialogButtonBox::Reset), 
            SIGNAL(pressed()),
            this, SLOT(rejectSettings()));
}
예제 #2
0
WSettings::WSettings(QWidget *parent) {
	setWindowTitle(tr("Dicto settings"));
	wMain->centerWidgetOnScreen(this);
	resize(300, 100);
	setAttribute(Qt::WA_DeleteOnClose);
	setWindowIcon(QIcon(ICON));
	
	okButton = new QPushButton(tr("OK"), this);
	cancelButton = new QPushButton(tr("Cancel"), this);
	default_nativeLabel = new QLabel(tr("Default mother language"), this);
	default_foreignLabel = new QLabel(tr("Default foreign language"), this);
	caseSensitiveLabel = new QLabel(tr("Case sensitive"), this);
	maxRecentFilesLabel = new QLabel(tr("Maximum recent files"), this);
	interfaceLangLabel = new QLabel(tr("Interface language"), this);
	default_nativeEdit = new QLineEdit;
	default_foreignEdit = new QLineEdit;
	caseSensitiveBox = new QCheckBox(this);
	maxRecentFilesBox = new QSpinBox(this);
	maxRecentFilesBox->setRange(1, 10);
	interfaceLangCombo = new QComboBox(this);
	interfaceLangCombo->addItem(tr("English"));
	interfaceLangCombo->addItem(tr("Polish"));
	interfaceLangCombo->addItem(tr("Russian"));
	
	
	
	QVBoxLayout *mainLayout = new QVBoxLayout;
		QGridLayout *settingsLayout = new QGridLayout;
			settingsLayout->addWidget(default_nativeLabel, 0, 0);
			settingsLayout->addWidget(default_nativeEdit, 0, 1);
			settingsLayout->addWidget(default_foreignLabel, 1, 0);
			settingsLayout->addWidget(default_foreignEdit, 1, 1);
			settingsLayout->addWidget(caseSensitiveLabel, 2, 0);
			settingsLayout->addWidget(caseSensitiveBox, 2, 1);
			settingsLayout->addWidget(maxRecentFilesLabel, 3, 0);
			settingsLayout->addWidget(maxRecentFilesBox, 3, 1);
			settingsLayout->addWidget(interfaceLangLabel, 4, 0);
			settingsLayout->addWidget(interfaceLangCombo, 4, 1);
		mainLayout->addLayout(settingsLayout);
		QHBoxLayout *buttonsLayout = new QHBoxLayout;
			buttonsLayout->addWidget(okButton);
			buttonsLayout->addWidget(cancelButton);
		mainLayout->addLayout(buttonsLayout);
	setLayout(mainLayout);
	
	readSettings();
	
	connect(okButton, SIGNAL(clicked()), this, SLOT(acceptSettings()));
	connect(cancelButton, SIGNAL(clicked()), this, SLOT(cancel()));
}