Improve the size policy (toolbars and improved icons) (#1684)

* Improve the size policy (and more and better icons)

These changes improve the size policy for translations having long texts
in some buttons by:

* Converting the text buttons in the Edit Database Cell to icons
* Making the "Type of data" label wrappable and expandable
* Converting the text buttons in the Browse Data tab to icons
* Allowing the Plot combo-boxes to shrunk

All this allows both the Browse Data and the docks to grow and shrink with
more freedom.

New icons for buttons are reused when appropriate in context menus.

Added icon for filter and improve icon for docks (has been mirrored so it
matches the actual dock position).

Added Print icon in Edit Database Cell using the extra free space, so the
print action there is more visible.

This continues the effort started in #1324.

* Convert the embedded buttons to actual toolbars

This provides more flexibility, like the way how toolbars are compacted
when they have not enough space.

The QToolButtons in Browse Data tab and in Edit Cell dialog are converted
to QActions and inserted in new toolbars embedded in the same place as
the old buttons. Everything else should stay the same (shortcuts, tool-tips
and what's-this information).

* Set style for all toolbars in Preferences and minor adjustments

The combo-box used for the main toolbar is replicated for all the toolbars
in application. In this way, users with high resolutions can use the styles
with both icons and text, while users with lower resolutions can leave the
default styles, which should be better for them.

Some icon texts has been abbreviated from their default values, so they fit
better in the toolbars when they are visible.

The print icon in Edit Cell has been moved to the right, where it would be
the first to be collapsed.

The original what's-this info for Set as NULL in Edit Cell toolbar has been
restored.

* Remove no longer used overloaded function

The addShortcutsTooltip function applying to QWidget was no longer used
after having converted all the buttons to actions, so it is removed.
This commit is contained in:
Manuel
2019-02-08 21:45:50 +01:00
committed by GitHub
parent fc697b173d
commit 5f4d0ee7ff
17 changed files with 722 additions and 410 deletions

View File

@@ -36,7 +36,7 @@ protected:
{
QMenu* editContextMenu = createStandardContextMenu();
QAction* nullAction = new QAction(tr("Set to NULL"), editContextMenu);
QAction* nullAction = new QAction(QIcon(":/icons/set_to_null"), tr("Set to NULL"), editContextMenu);
connect(nullAction, &QAction::triggered, [&]() {
setNull(true);
});

View File

@@ -54,8 +54,8 @@ EditDialog::EditDialog(QWidget* parent)
connect(sciEdit, SIGNAL(textChanged()), this, SLOT(editTextChanged()));
// Create shortcuts for the widgets that doesn't have its own print action or printing mechanism.
QShortcut* shortcutPrintText = new QShortcut(QKeySequence::Print, ui->editorText, nullptr, nullptr, Qt::WidgetShortcut);
connect(shortcutPrintText, &QShortcut::activated, this, &EditDialog::openPrintDialog);
QShortcut* shortcutPrint = new QShortcut(QKeySequence::Print, this, nullptr, nullptr, Qt::WidgetShortcut);
connect(shortcutPrint, &QShortcut::activated, this, &EditDialog::openPrintDialog);
// Add actions to editors that have a context menu based on actions. This also activates the shortcuts.
ui->editorImage->addAction(ui->actionPrintImage);
@@ -63,7 +63,7 @@ EditDialog::EditDialog(QWidget* parent)
ui->editorBinary->addAction(ui->actionCopyHexAscii);
mustIndentAndCompact = Settings::getValue("databrowser", "indent_compact").toBool();
ui->buttonIndent->setChecked(mustIndentAndCompact);
ui->actionIndent->setChecked(mustIndentAndCompact);
ui->buttonAutoSwitchMode->setChecked(Settings::getValue("databrowser", "auto_switch_mode").toBool());
@@ -661,7 +661,7 @@ void EditDialog::setDataInBuffer(const QByteArray& data, DataSources source)
// Called when the user manually changes the "Mode" drop down combobox
void EditDialog::editModeChanged(int newMode)
{
ui->buttonIndent->setEnabled(newMode == JsonEditor || newMode == XmlEditor);
ui->actionIndent->setEnabled(newMode == JsonEditor || newMode == XmlEditor);
setStackCurrentIndex(newMode);
// * If the dataSource is the text buffer, the data is always text *
@@ -861,8 +861,8 @@ void EditDialog::setReadOnly(bool ro)
QPalette textEditPalette = ui->editorText->palette();
ui->buttonApply->setEnabled(!ro);
ui->buttonNull->setEnabled(!ro);
ui->buttonImport->setEnabled(!ro);
ui->actionNull->setEnabled(!ro);
ui->actionImport->setEnabled(!ro);
ui->editorText->setReadOnly(ro);
sciEdit->setReadOnly(ro);
@@ -1014,6 +1014,9 @@ void EditDialog::reloadSettings()
hexFont.setPointSize(Settings::getValue("databrowser", "fontsize").toInt());
hexEdit->setFont(hexFont);
ui->editCellToolbar->setToolButtonStyle(static_cast<Qt::ToolButtonStyle>
(Settings::getValue("General", "toolbarStyleEditCell").toInt()));
sciEdit->reloadSettings();
}
@@ -1041,6 +1044,12 @@ void EditDialog::setStackCurrentIndex(int editMode)
void EditDialog::openPrintDialog()
{
int editMode = ui->editorStack->currentIndex();
if (editMode == ImageViewer) {
openPrintImageDialog();
return;
}
QPrinter printer;
QPrintPreviewDialog *dialog = new QPrintPreviewDialog(&printer);

View File

@@ -27,19 +27,16 @@
<property name="text">
<string>Mode:</string>
</property>
<property name="buddy">
<cstring>comboMode</cstring>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="comboMode">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>50</width>
<width>0</width>
<height>0</height>
</size>
</property>
@@ -105,79 +102,21 @@
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::MinimumExpanding</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>0</width>
<height>20</height>
<height>0</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QToolButton" name="buttonIndent">
<property name="enabled">
<bool>false</bool>
</property>
<property name="toolTip">
<string>Auto-format: pretty print on loading, compact on saving.</string>
</property>
<property name="statusTip">
<string>Auto-format: pretty print on loading, compact on saving.</string>
</property>
<property name="whatsThis">
<string>When enabled, the auto-format feature formats the data on loading, breaking the text in lines and indenting it for maximum readability. On data saving, the auto-format feature compacts the data removing end of lines, and unnecessary whitespace.</string>
</property>
<property name="text">
<string>Autoformat</string>
</property>
<property name="icon">
<iconset resource="icons/icons.qrc">
<normaloff>:/icons/text_indent</normaloff>:/icons/text_indent</iconset>
</property>
<property name="checkable">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="buttonImport">
<property name="minimumSize">
<size>
<width>50</width>
<height>0</height>
</size>
</property>
<property name="toolTip">
<string>Import from file</string>
</property>
<property name="whatsThis">
<string>Opens a file dialog used to import any kind of data to this database cell.</string>
</property>
<property name="text">
<string>&amp;Import</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="buttonExport">
<property name="minimumSize">
<size>
<width>50</width>
<height>0</height>
</size>
</property>
<property name="toolTip">
<string>Export to file</string>
</property>
<property name="whatsThis">
<string>Opens a file dialog used to export the contents of this database cell to a file.</string>
</property>
<property name="text">
<string>&amp;Export</string>
</property>
<widget class="QToolBar" name="editCellToolbar">
<addaction name="actionIndent"/>
<addaction name="actionImport"/>
<addaction name="actionExport"/>
<addaction name="actionNull"/>
<addaction name="actionPrint"/>
</widget>
</item>
</layout>
@@ -220,7 +159,7 @@
<rect>
<x>0</x>
<y>0</y>
<width>98</width>
<width>84</width>
<height>35</height>
</rect>
</property>
@@ -248,25 +187,65 @@ Errors are indicated with a red squiggle underline.</string>
</widget>
</item>
<item>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<layout class="QHBoxLayout" name="horizontalLayout_2">
<item>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QLabel" name="labelType">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>100</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>Type of data currently in cell</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="labelSize">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>100</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>Size of data currently in table</string>
</property>
<property name="textFormat">
<enum>Qt::PlainText</enum>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
</layout>
</item>
<item row="1" column="2">
<item>
<widget class="QPushButton" name="buttonApply">
<property name="minimumSize">
<size>
<width>50</width>
<height>0</height>
</size>
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="toolTip">
<string>Apply data to cell</string>
@@ -282,45 +261,6 @@ Errors are indicated with a red squiggle underline.</string>
</property>
</widget>
</item>
<item row="0" column="1">
<spacer name="horizontalSpacer_2">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="0" column="2">
<widget class="QPushButton" name="buttonNull">
<property name="minimumSize">
<size>
<width>50</width>
<height>0</height>
</size>
</property>
<property name="toolTip">
<string>Set this cell to NULL</string>
</property>
<property name="whatsThis">
<string>Erases the contents of the cell</string>
</property>
<property name="text">
<string>Set as &amp;NULL</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="labelSize">
<property name="text">
<string>Size of data currently in table</string>
</property>
</widget>
</item>
</layout>
</item>
</layout>
@@ -350,9 +290,15 @@ Errors are indicated with a red squiggle underline.</string>
<property name="toolTip">
<string>Open preview dialog for printing displayed text</string>
</property>
<property name="whatsThis">
<string>Open preview dialog for printing the data currently stored in the cell</string>
</property>
<property name="shortcut">
<string>Ctrl+P</string>
</property>
<property name="shortcutContext">
<enum>Qt::WidgetShortcut</enum>
</property>
</action>
<action name="actionCopyHexAscii">
<property name="icon">
@@ -369,46 +315,77 @@ Errors are indicated with a red squiggle underline.</string>
<string>Ctrl+Shift+C</string>
</property>
</action>
<action name="actionIndent">
<property name="checkable">
<bool>true</bool>
</property>
<property name="icon">
<iconset resource="icons/icons.qrc">
<normaloff>:/icons/text_indent</normaloff>:/icons/text_indent</iconset>
</property>
<property name="text">
<string>Autoformat</string>
</property>
<property name="toolTip">
<string>Auto-format: pretty print on loading, compact on saving.</string>
</property>
<property name="whatsThis">
<string>When enabled, the auto-format feature formats the data on loading, breaking the text in lines and indenting it for maximum readability. On data saving, the auto-format feature compacts the data removing end of lines, and unnecessary whitespace.</string>
</property>
</action>
<action name="actionExport">
<property name="icon">
<iconset resource="icons/icons.qrc">
<normaloff>:/icons/save_sql</normaloff>:/icons/save_sql</iconset>
</property>
<property name="text">
<string>&amp;Export...</string>
</property>
<property name="toolTip">
<string>Export to file</string>
</property>
<property name="whatsThis">
<string>Opens a file dialog used to export the contents of this database cell to a file.</string>
</property>
</action>
<action name="actionImport">
<property name="icon">
<iconset resource="icons/icons.qrc">
<normaloff>:/icons/document_open</normaloff>:/icons/document_open</iconset>
</property>
<property name="text">
<string>&amp;Import...</string>
</property>
<property name="toolTip">
<string>Import from file</string>
</property>
<property name="whatsThis">
<string>Opens a file dialog used to import any kind of data to this database cell.</string>
</property>
</action>
<action name="actionNull">
<property name="icon">
<iconset resource="icons/icons.qrc">
<normaloff>:/icons/set_to_null</normaloff>:/icons/set_to_null</iconset>
</property>
<property name="text">
<string>Set as &amp;NULL</string>
</property>
<property name="whatsThis">
<string>Erases the contents of the cell</string>
</property>
</action>
</widget>
<tabstops>
<tabstop>buttonExport</tabstop>
<tabstop>comboMode</tabstop>
<tabstop>buttonAutoSwitchMode</tabstop>
<tabstop>editorText</tabstop>
<tabstop>buttonApply</tabstop>
</tabstops>
<resources>
<include location="icons/icons.qrc"/>
</resources>
<connections>
<connection>
<sender>buttonImport</sender>
<signal>clicked()</signal>
<receiver>EditDialog</receiver>
<slot>importData()</slot>
<hints>
<hint type="sourcelabel">
<x>400</x>
<y>28</y>
</hint>
<hint type="destinationlabel">
<x>60</x>
<y>0</y>
</hint>
</hints>
</connection>
<connection>
<sender>buttonExport</sender>
<signal>clicked()</signal>
<receiver>EditDialog</receiver>
<slot>exportData()</slot>
<hints>
<hint type="sourcelabel">
<x>488</x>
<y>51</y>
</hint>
<hint type="destinationlabel">
<x>162</x>
<y>17</y>
</hint>
</hints>
</connection>
<connection>
<sender>buttonApply</sender>
<signal>clicked()</signal>
@@ -441,22 +418,6 @@ Errors are indicated with a red squiggle underline.</string>
</hint>
</hints>
</connection>
<connection>
<sender>buttonNull</sender>
<signal>clicked()</signal>
<receiver>EditDialog</receiver>
<slot>setNull()</slot>
<hints>
<hint type="sourcelabel">
<x>528</x>
<y>28</y>
</hint>
<hint type="destinationlabel">
<x>723</x>
<y>58</y>
</hint>
</hints>
</connection>
<connection>
<sender>editorText</sender>
<signal>textChanged()</signal>
@@ -474,14 +435,14 @@ Errors are indicated with a red squiggle underline.</string>
</hints>
</connection>
<connection>
<sender>buttonIndent</sender>
<sender>actionIndent</sender>
<signal>toggled(bool)</signal>
<receiver>EditDialog</receiver>
<slot>setMustIndentAndCompact(bool)</slot>
<hints>
<hint type="sourcelabel">
<x>309</x>
<y>22</y>
<x>-1</x>
<y>-1</y>
</hint>
<hint type="destinationlabel">
<x>308</x>
@@ -496,8 +457,8 @@ Errors are indicated with a red squiggle underline.</string>
<slot>switchEditorMode(bool)</slot>
<hints>
<hint type="sourcelabel">
<x>135</x>
<y>22</y>
<x>162</x>
<y>33</y>
</hint>
<hint type="destinationlabel">
<x>308</x>
@@ -553,6 +514,54 @@ Errors are indicated with a red squiggle underline.</string>
</hint>
</hints>
</connection>
<connection>
<sender>actionNull</sender>
<signal>triggered()</signal>
<receiver>EditDialog</receiver>
<slot>setNull()</slot>
<hints>
<hint type="sourcelabel">
<x>-1</x>
<y>-1</y>
</hint>
<hint type="destinationlabel">
<x>308</x>
<y>190</y>
</hint>
</hints>
</connection>
<connection>
<sender>actionImport</sender>
<signal>triggered()</signal>
<receiver>EditDialog</receiver>
<slot>importData()</slot>
<hints>
<hint type="sourcelabel">
<x>-1</x>
<y>-1</y>
</hint>
<hint type="destinationlabel">
<x>308</x>
<y>190</y>
</hint>
</hints>
</connection>
<connection>
<sender>actionExport</sender>
<signal>triggered()</signal>
<receiver>EditDialog</receiver>
<slot>exportData()</slot>
<hints>
<hint type="sourcelabel">
<x>-1</x>
<y>-1</y>
</hint>
<hint type="destinationlabel">
<x>308</x>
<y>190</y>
</hint>
</hints>
</connection>
</connections>
<slots>
<slot>importData()</slot>

View File

@@ -243,7 +243,7 @@ ExtendedTableWidget::ExtendedTableWidget(QWidget* parent) :
// Set up table view context menu
m_contextMenu = new QMenu(this);
QAction* filterAction = new QAction(tr("Use as Exact Filter"), m_contextMenu);
QAction* filterAction = new QAction(QIcon(":/icons/filter"), tr("Use as Exact Filter"), m_contextMenu);
QAction* containingAction = new QAction(tr("Containing"), m_contextMenu);
QAction* notContainingAction = new QAction(tr("Not containing"), m_contextMenu);
QAction* notEqualToAction = new QAction(tr("Not equal to"), m_contextMenu);
@@ -254,7 +254,7 @@ ExtendedTableWidget::ExtendedTableWidget(QWidget* parent) :
QAction* inRangeAction = new QAction(tr("Between this and..."), m_contextMenu);
QAction* regexpAction = new QAction(tr("Regular expression"), m_contextMenu);
QAction* nullAction = new QAction(tr("Set to NULL"), m_contextMenu);
QAction* nullAction = new QAction(QIcon(":/icons/set_to_null"), tr("Set to NULL"), m_contextMenu);
QAction* copyAction = new QAction(QIcon(":/icons/copy"), tr("Copy"), m_contextMenu);
QAction* copyWithHeadersAction = new QAction(QIcon(":/icons/special_copy"), tr("Copy with Headers"), m_contextMenu);
QAction* copyAsSQLAction = new QAction(QIcon(":/icons/sql_copy"), tr("Copy as SQL"), m_contextMenu);

View File

@@ -147,12 +147,6 @@ static QString shortcutsTip(const QList<QKeySequence>& keys)
return tip;
}
static void addShortcutsTooltip(QWidget* widget, const QList<QKeySequence>& keys)
{
if (!keys.isEmpty())
widget->setToolTip(widget->toolTip() + shortcutsTip(keys));
}
static void addShortcutsTooltip(QAction* action, const QList<QKeySequence>& extraKeys = QList<QKeySequence>())
{
if (!action->shortcuts().isEmpty() || !extraKeys.isEmpty())
@@ -278,7 +272,7 @@ void MainWindow::init()
popupNewRecordMenu = new QMenu(this);
popupNewRecordMenu->addAction(ui->newRecordAction);
popupNewRecordMenu->addAction(ui->insertValuesAction);
ui->buttonNewRecord->setMenu(popupNewRecordMenu);
ui->actionNewRecord->setMenu(popupNewRecordMenu);
popupSaveSqlFileMenu = new QMenu(this);
popupSaveSqlFileMenu->addAction(ui->actionSqlSaveFile);
@@ -294,8 +288,8 @@ void MainWindow::init()
popupSaveFilterAsMenu = new QMenu(this);
popupSaveFilterAsMenu->addAction(ui->actionFilteredTableExportCsv);
popupSaveFilterAsMenu->addAction(ui->actionFilterSaveAsView);
ui->buttonSaveFilterAsPopup->setMenu(popupSaveFilterAsMenu);
ui->buttonSaveFilterAsPopup->setPopupMode(QToolButton::InstantPopup);
ui->actionSaveFilterAsPopup->setMenu(popupSaveFilterAsMenu);
qobject_cast<QToolButton*>(ui->browseToolbar->widgetForAction(ui->actionSaveFilterAsPopup))->setPopupMode(QToolButton::InstantPopup);
popupBrowseDataHeaderMenu = new QMenu(this);
popupBrowseDataHeaderMenu->addAction(ui->actionShowRowidColumn);
@@ -510,8 +504,8 @@ void MainWindow::init()
addShortcutsTooltip(ui->actionDbPrint);
addShortcutsTooltip(ui->buttonRefresh, {shortcutBrowseRefreshF5->key(), shortcutBrowseRefreshCtrlR->key()});
addShortcutsTooltip(ui->buttonPrintTable, {shortcutPrint->key()});
addShortcutsTooltip(ui->actionRefresh, {shortcutBrowseRefreshCtrlR->key()});
addShortcutsTooltip(ui->actionPrintTable);
addShortcutsTooltip(ui->actionSqlOpenTab);
addShortcutsTooltip(ui->actionSqlPrint);
@@ -1974,8 +1968,8 @@ void MainWindow::activateFields(bool enable)
ui->buttonBoxPragmas->setEnabled(enable && write);
ui->buttonGoto->setEnabled(enable);
ui->editGoto->setEnabled(enable);
ui->buttonRefresh->setEnabled(enable);
ui->buttonPrintTable->setEnabled(enable);
ui->actionRefresh->setEnabled(enable);
ui->actionPrintTable->setEnabled(enable);
ui->actionExecuteSql->setEnabled(enable);
ui->actionLoadExtension->setEnabled(enable);
ui->actionSqlExecuteLine->setEnabled(enable);
@@ -1987,8 +1981,8 @@ void MainWindow::activateFields(bool enable)
ui->actionQuickCheck->setEnabled(enable);
ui->actionForeignKeyCheck->setEnabled(enable);
ui->actionOptimize->setEnabled(enable);
ui->buttonClearFilters->setEnabled(enable);
ui->buttonSaveFilterAsPopup->setEnabled(enable);
ui->actionClearFilters->setEnabled(enable);
ui->actionSaveFilterAsPopup->setEnabled(enable);
ui->dockEdit->setEnabled(enable);
ui->dockPlot->setEnabled(enable);
@@ -2369,6 +2363,9 @@ void MainWindow::reloadSettings()
ui->dataTable->reloadSettings();
setToolButtonStyle(static_cast<Qt::ToolButtonStyle>(Settings::getValue("General", "toolbarStyle").toInt()));
ui->dbToolbar->setToolButtonStyle(static_cast<Qt::ToolButtonStyle>(Settings::getValue("General", "toolbarStyleStructure").toInt()));
ui->browseToolbar->setToolButtonStyle(static_cast<Qt::ToolButtonStyle>(Settings::getValue("General", "toolbarStyleBrowse").toInt()));
ui->toolbarSql->setToolButtonStyle(static_cast<Qt::ToolButtonStyle>(Settings::getValue("General", "toolbarStyleSql").toInt()));
// Set prefetch sizes for lazy population of table models
m_browseTableModel->setChunkSize(Settings::getValue("db", "prefetchsize").toInt());
@@ -3235,7 +3232,7 @@ void MainWindow::switchToBrowseDataTab(QString tableToBrowse)
ui->mainTab->setCurrentWidget(ui->browser);
}
void MainWindow::on_buttonClearFilters_clicked()
void MainWindow::on_actionClearFilters_triggered()
{
ui->dataTable->filterHeader()->clearFilters();
}
@@ -3327,7 +3324,7 @@ void MainWindow::showRecordPopupMenu(const QPoint& pos)
}
});
QAction* deleteRecordAction = new QAction(ui->buttonDeleteRecord->text(), &popupRecordMenu);
QAction* deleteRecordAction = new QAction(QIcon(":icons/delete_record"), ui->actionDeleteRecord->text(), &popupRecordMenu);
popupRecordMenu.addAction(deleteRecordAction);
connect(deleteRecordAction, &QAction::triggered, [&]() {
@@ -3722,13 +3719,13 @@ void MainWindow::updateInsertDeleteRecordButton()
// at least one row to be selected. For the insert button there is an extra rule to disable it when we are browsing a view because inserting
// into a view isn't supported yet.
bool isEditable = m_browseTableModel->isEditable() && !db.readOnly();
ui->buttonNewRecord->setEnabled(isEditable && !m_browseTableModel->hasPseudoPk());
ui->buttonDeleteRecord->setEnabled(isEditable && rows != 0);
ui->actionNewRecord->setEnabled(isEditable && !m_browseTableModel->hasPseudoPk());
ui->actionDeleteRecord->setEnabled(isEditable && rows != 0);
if(rows > 1)
ui->buttonDeleteRecord->setText(tr("Delete Records"));
ui->actionDeleteRecord->setText(tr("Delete Records"));
else
ui->buttonDeleteRecord->setText(tr("Delete Record"));
ui->actionDeleteRecord->setText(tr("Delete Record"));
}
void MainWindow::runSqlNewTab(const QString& query, const QString& title)

View File

@@ -276,7 +276,7 @@ private slots:
void addCondFormat(int column, const QString& value);
void clearAllCondFormats(int column);
void editEncryption();
void on_buttonClearFilters_clicked();
void on_actionClearFilters_triggered();
void copyCurrentCreateStatement();
void showDataColumnPopupMenu(const QPoint& pos);
void showRecordPopupMenu(const QPoint& pos);

View File

@@ -123,24 +123,6 @@ You can drag SQL statements from an object row and drop them into other applicat
</item>
<item>
<widget class="QComboBox" name="comboBrowseTable">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>1</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>16777215</height>
</size>
</property>
<property name="toolTip">
<string>Select a table to browse data</string>
</property>
@@ -156,68 +138,17 @@ You can drag SQL statements from an object row and drop them into other applicat
</widget>
</item>
<item>
<widget class="QToolButton" name="buttonRefresh">
<property name="toolTip">
<string>Refresh the data in the selected table</string>
</property>
<property name="whatsThis">
<string>This button refreshes the data in the currently selected table.</string>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset resource="icons/icons.qrc">
<normaloff>:/icons/refresh</normaloff>:/icons/refresh</iconset>
</property>
</widget>
</item>
<item>
<widget class="QToolButton" name="buttonClearFilters">
<property name="toolTip">
<string>Clear all filters</string>
</property>
<property name="whatsThis">
<string>This button clears all the filters set in the header input fields for the currently browsed table.</string>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset resource="icons/icons.qrc">
<normaloff>:/icons/clear_filters</normaloff>:/icons/clear_filters</iconset>
</property>
</widget>
</item>
<item>
<widget class="QToolButton" name="buttonSaveFilterAsPopup">
<property name="toolTip">
<string>Save the table as currently displayed</string>
</property>
<property name="whatsThis">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;This popup menu provides the following options applying to the currently browsed and filtered table:&lt;/p&gt;&lt;ul style=&quot;margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;&quot;&gt;&lt;li style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Export to CSV: this option exports the data of the browsed table as currently displayed (after filters, display formats and order column) to a CSV file.&lt;/li&gt;&lt;li style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Save as view: this option saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements.&lt;/li&gt;&lt;/ul&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>...</string>
</property>
<property name="icon">
<iconset resource="icons/icons.qrc">
<normaloff>:/icons/save_table</normaloff>:/icons/save_table</iconset>
</property>
</widget>
</item>
<item>
<widget class="QToolButton" name="buttonPrintTable">
<property name="toolTip">
<string>Print currently browsed table data</string>
</property>
<property name="whatsThis">
<string>Print currently browsed table data. Print selection if more than one cell is selected.</string>
</property>
<property name="icon">
<iconset resource="icons/icons.qrc">
<normaloff>:/icons/print</normaloff>:/icons/print</iconset>
<widget class="QToolBar" name="browseToolbar">
<property name="toolButtonStyle">
<enum>Qt::ToolButtonIconOnly</enum>
</property>
<addaction name="actionRefresh"/>
<addaction name="actionClearFilters"/>
<addaction name="actionSaveFilterAsPopup"/>
<addaction name="actionPrintTable"/>
<addaction name="separator"/>
<addaction name="actionNewRecord"/>
<addaction name="actionDeleteRecord"/>
</widget>
</item>
<item>
@@ -225,58 +156,17 @@ You can drag SQL statements from an object row and drop them into other applicat
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::MinimumExpanding</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<width>0</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QToolButton" name="buttonNewRecord">
<property name="minimumSize">
<size>
<width>50</width>
<height>0</height>
</size>
</property>
<property name="toolTip">
<string>Insert a new record in the current table</string>
</property>
<property name="whatsThis">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;This button creates a new record in the database. Hold the mouse button to open a pop-up menu of different options:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;span style=&quot; font-weight:600;&quot;&gt;New Record&lt;/span&gt;: insert a new record with default values in the database.&lt;/li&gt;&lt;li&gt;&lt;span style=&quot; font-weight:600;&quot;&gt;Insert Values...&lt;/span&gt;: open a dialog for entering values before they are inserted in the database. This allows to enter values acomplishing the different constraints. This dialog is also open if the &lt;span style=&quot; font-weight:600;&quot;&gt;New Record&lt;/span&gt; option fails due to these constraints.&lt;/li&gt;&lt;/ul&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>New Record</string>
</property>
</widget>
</item>
<item>
<widget class="QToolButton" name="buttonDeleteRecord">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>50</width>
<height>0</height>
</size>
</property>
<property name="toolTip">
<string>Delete the current record</string>
</property>
<property name="whatsThis">
<string>This button deletes the record or records currently selected in the table</string>
</property>
<property name="text">
<string>Delete Record</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
@@ -1015,7 +905,7 @@ You can drag SQL statements from an object row and drop them into other applicat
<x>0</x>
<y>0</y>
<width>1037</width>
<height>20</height>
<height>22</height>
</rect>
</property>
<widget class="QMenu" name="fileMenu">
@@ -1121,7 +1011,7 @@ You can drag SQL statements from an object row and drop them into other applicat
<string>DB Toolbar</string>
</property>
<property name="toolButtonStyle">
<enum>Qt::ToolButtonIconOnly</enum>
<enum>Qt::ToolButtonTextBesideIcon</enum>
</property>
<attribute name="toolBarArea">
<enum>TopToolBarArea</enum>
@@ -1334,7 +1224,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed
<string>Project Toolbar</string>
</property>
<property name="toolButtonStyle">
<enum>Qt::ToolButtonIconOnly</enum>
<enum>Qt::ToolButtonTextBesideIcon</enum>
</property>
<attribute name="toolBarArea">
<enum>TopToolBarArea</enum>
@@ -1356,7 +1246,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed
<string>Close the current database file</string>
</property>
<property name="toolButtonStyle">
<enum>Qt::ToolButtonIconOnly</enum>
<enum>Qt::ToolButtonTextBesideIcon</enum>
</property>
<attribute name="toolBarArea">
<enum>TopToolBarArea</enum>
@@ -1796,6 +1686,9 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed
<property name="text">
<string>Execute current line</string>
</property>
<property name="iconText">
<string>Execute line</string>
</property>
<property name="toolTip">
<string>Execute current line</string>
</property>
@@ -2062,12 +1955,25 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed
</property>
</action>
<action name="actionRefresh">
<property name="icon">
<iconset resource="icons/icons.qrc">
<normaloff>:/icons/refresh</normaloff>:/icons/refresh</iconset>
</property>
<property name="text">
<string>Refresh</string>
</property>
<property name="toolTip">
<string>Refresh the data in the selected table</string>
</property>
<property name="statusTip">
<string>This button refreshes the data in the currently selected table.</string>
</property>
<property name="shortcut">
<string>F5</string>
</property>
<property name="shortcutContext">
<enum>Qt::WidgetShortcut</enum>
</property>
</action>
<action name="fileOpenReadOnlyAction">
<property name="icon">
@@ -2127,6 +2033,9 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed
<property name="text">
<string>Find text in SQL editor</string>
</property>
<property name="iconText">
<string>Find</string>
</property>
<property name="toolTip">
<string>Find text in SQL editor</string>
</property>
@@ -2148,6 +2057,9 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed
<property name="text">
<string>Find or replace text in SQL editor</string>
</property>
<property name="iconText">
<string>Find or replace</string>
</property>
<property name="toolTip">
<string>Find or replace text in SQL editor</string>
</property>
@@ -2284,6 +2196,10 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed
</property>
</action>
<action name="newRecordAction">
<property name="icon">
<iconset resource="icons/icons.qrc">
<normaloff>:/icons/add_record</normaloff>:/icons/add_record</iconset>
</property>
<property name="text">
<string>New Record</string>
</property>
@@ -2424,6 +2340,9 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed
<property name="text">
<string>Un/comment block of SQL code</string>
</property>
<property name="iconText">
<string>Un/comment block</string>
</property>
<property name="toolTip">
<string>Comment or uncomment current line or selected block of code</string>
</property>
@@ -2445,10 +2364,109 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed
<property name="text">
<string>Stop SQL execution</string>
</property>
<property name="iconText">
<string>Stop execution</string>
</property>
<property name="toolTip">
<string>Stop the currently running SQL script</string>
</property>
</action>
<action name="actionPrintTable">
<property name="icon">
<iconset resource="icons/icons.qrc">
<normaloff>:/icons/print</normaloff>:/icons/print</iconset>
</property>
<property name="text">
<string>Print</string>
</property>
<property name="toolTip">
<string>Print currently browsed table data</string>
</property>
<property name="statusTip">
<string/>
</property>
<property name="whatsThis">
<string>Print currently browsed table data. Print selection if more than one cell is selected.</string>
</property>
<property name="shortcut">
<string>Ctrl+P</string>
</property>
<property name="shortcutContext">
<enum>Qt::WidgetShortcut</enum>
</property>
</action>
<action name="actionClearFilters">
<property name="icon">
<iconset resource="icons/icons.qrc">
<normaloff>:/icons/clear_filters</normaloff>:/icons/clear_filters</iconset>
</property>
<property name="text">
<string>Clear Filters</string>
</property>
<property name="toolTip">
<string>Clear all filters</string>
</property>
<property name="statusTip">
<string>This button clears all the filters set in the header input fields for the currently browsed table.</string>
</property>
<property name="whatsThis">
<string>This button clears all the filters set in the header input fields for the currently browsed table.</string>
</property>
</action>
<action name="actionSaveFilterAsPopup">
<property name="icon">
<iconset resource="icons/icons.qrc">
<normaloff>:/icons/save_table</normaloff>:/icons/save_table</iconset>
</property>
<property name="text">
<string>Save Table As...</string>
</property>
<property name="toolTip">
<string>Save the table as currently displayed</string>
</property>
<property name="statusTip">
<string>Save the table as currently displayed</string>
</property>
<property name="whatsThis">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;This popup menu provides the following options applying to the currently browsed and filtered table:&lt;/p&gt;&lt;ul style=&quot;margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;&quot;&gt;&lt;li style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Export to CSV: this option exports the data of the browsed table as currently displayed (after filters, display formats and order column) to a CSV file.&lt;/li&gt;&lt;li style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Save as view: this option saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements.&lt;/li&gt;&lt;/ul&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</action>
<action name="actionNewRecord">
<property name="icon">
<iconset resource="icons/icons.qrc">
<normaloff>:/icons/add_record</normaloff>:/icons/add_record</iconset>
</property>
<property name="text">
<string>New Record</string>
</property>
<property name="toolTip">
<string>Insert a new record in the current table</string>
</property>
<property name="statusTip">
<string>Insert a new record in the current table</string>
</property>
<property name="whatsThis">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;This button creates a new record in the database. Hold the mouse button to open a pop-up menu of different options:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;span style=&quot; font-weight:600;&quot;&gt;New Record&lt;/span&gt;: insert a new record with default values in the database.&lt;/li&gt;&lt;li&gt;&lt;span style=&quot; font-weight:600;&quot;&gt;Insert Values...&lt;/span&gt;: open a dialog for entering values before they are inserted in the database. This allows to enter values acomplishing the different constraints. This dialog is also open if the &lt;span style=&quot; font-weight:600;&quot;&gt;New Record&lt;/span&gt; option fails due to these constraints.&lt;/li&gt;&lt;/ul&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</action>
<action name="actionDeleteRecord">
<property name="icon">
<iconset resource="icons/icons.qrc">
<normaloff>:/icons/delete_record</normaloff>:/icons/delete_record</iconset>
</property>
<property name="text">
<string>Delete Record</string>
</property>
<property name="toolTip">
<string>Delete the current record</string>
</property>
<property name="statusTip">
<string>This button deletes the record or records currently selected in the table</string>
</property>
<property name="whatsThis">
<string>This button deletes the record or records currently selected in the table</string>
</property>
</action>
<action name="actionSaveProjectAs">
<property name="icon">
<iconset resource="icons/icons.qrc">
@@ -2513,10 +2531,6 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed
<tabstop>buttonLogClear</tabstop>
<tabstop>treeSchemaDock</tabstop>
<tabstop>comboBrowseTable</tabstop>
<tabstop>buttonRefresh</tabstop>
<tabstop>buttonClearFilters</tabstop>
<tabstop>buttonNewRecord</tabstop>
<tabstop>buttonDeleteRecord</tabstop>
<tabstop>dataTable</tabstop>
<tabstop>buttonBegin</tabstop>
<tabstop>buttonPrevious</tabstop>
@@ -2630,30 +2644,14 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed
</hints>
</connection>
<connection>
<sender>buttonNewRecord</sender>
<signal>clicked()</signal>
<receiver>MainWindow</receiver>
<slot>addRecord()</slot>
<hints>
<hint type="sourcelabel">
<x>402</x>
<y>143</y>
</hint>
<hint type="destinationlabel">
<x>399</x>
<y>299</y>
</hint>
</hints>
</connection>
<connection>
<sender>buttonDeleteRecord</sender>
<signal>clicked()</signal>
<sender>actionDeleteRecord</sender>
<signal>triggered()</signal>
<receiver>MainWindow</receiver>
<slot>deleteRecord()</slot>
<hints>
<hint type="sourcelabel">
<x>506</x>
<y>143</y>
<x>-1</x>
<y>-1</y>
</hint>
<hint type="destinationlabel">
<x>399</x>
@@ -2725,22 +2723,6 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed
</hint>
</hints>
</connection>
<connection>
<sender>buttonRefresh</sender>
<signal>clicked()</signal>
<receiver>MainWindow</receiver>
<slot>refresh()</slot>
<hints>
<hint type="sourcelabel">
<x>245</x>
<y>139</y>
</hint>
<hint type="destinationlabel">
<x>399</x>
<y>299</y>
</hint>
</hints>
</connection>
<connection>
<sender>fileCompactAction</sender>
<signal>triggered()</signal>
@@ -3669,22 +3651,6 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed
</hint>
</hints>
</connection>
<connection>
<sender>buttonSaveFilterAsPopup</sender>
<signal>clicked()</signal>
<receiver>MainWindow</receiver>
<slot>saveFilterAsView()</slot>
<hints>
<hint type="sourcelabel">
<x>290</x>
<y>127</y>
</hint>
<hint type="destinationlabel">
<x>518</x>
<y>314</y>
</hint>
</hints>
</connection>
<connection>
<sender>viewProjectToolbarAction</sender>
<signal>toggled(bool)</signal>
@@ -3839,6 +3805,10 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed
<x>-1</x>
<y>-1</y>
</hint>
<hint type="destinationlabel">
<x>20</x>
<y>20</y>
</hint>
</hints>
</connection>
<connection>
@@ -3848,8 +3818,12 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed
<slot>fileNewInMemoryDatabase()</slot>
<hints>
<hint type="sourcelabel">
<x>518</x>
<y>314</y>
<x>-1</x>
<y>-1</y>
</hint>
<hint type="destinationlabel">
<x>20</x>
<y>20</y>
</hint>
</hints>
</connection>
@@ -3886,14 +3860,14 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed
</hints>
</connection>
<connection>
<sender>buttonPrintTable</sender>
<signal>clicked()</signal>
<sender>actionPrintTable</sender>
<signal>triggered()</signal>
<receiver>dataTable</receiver>
<slot>openPrintDialog()</slot>
<hints>
<hint type="sourcelabel">
<x>315</x>
<y>122</y>
<x>-1</x>
<y>-1</y>
</hint>
<hint type="destinationlabel">
<x>326</x>

View File

@@ -110,6 +110,18 @@ Select the axes or axes labels to drag and zoom only in that orientation.</strin
</property>
<item>
<widget class="QComboBox" name="comboLineType">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>50</width>
<height>0</height>
</size>
</property>
<property name="currentIndex">
<number>1</number>
</property>
@@ -157,6 +169,18 @@ Select the axes or axes labels to drag and zoom only in that orientation.</strin
</item>
<item>
<widget class="QComboBox" name="comboPointShape">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>50</width>
<height>0</height>
</size>
</property>
<property name="currentIndex">
<number>0</number>
</property>

View File

@@ -187,7 +187,11 @@ void PreferencesDialog::loadSettings()
ui->checkRegexDisabled->setChecked(Settings::getValue("extensions", "disableregex").toBool());
ui->checkAllowLoadExtension->setChecked(Settings::getValue("extensions", "enable_load_extension").toBool());
fillLanguageBox();
ui->toolbarStyleComboBox->setCurrentIndex(Settings::getValue("General", "toolbarStyle").toInt());
ui->toolbarStyleComboMain->setCurrentIndex(Settings::getValue("General", "toolbarStyle").toInt());
ui->toolbarStyleComboStructure->setCurrentIndex(Settings::getValue("General", "toolbarStyleStructure").toInt());
ui->toolbarStyleComboBrowse->setCurrentIndex(Settings::getValue("General", "toolbarStyleBrowse").toInt());
ui->toolbarStyleComboSql->setCurrentIndex(Settings::getValue("General", "toolbarStyleSql").toInt());
ui->toolbarStyleComboEditCell->setCurrentIndex(Settings::getValue("General", "toolbarStyleEditCell").toInt());
}
void PreferencesDialog::saveSettings()
@@ -309,7 +313,13 @@ void PreferencesDialog::saveSettings()
tr("The language will change after you restart the application."));
Settings::setValue("General", "language", newLanguage);
Settings::setValue("General", "toolbarStyle", ui->toolbarStyleComboBox->currentIndex());
Settings::setValue("General", "toolbarStyle", ui->toolbarStyleComboMain->currentIndex());
Settings::setValue("General", "toolbarStyleStructure", ui->toolbarStyleComboStructure->currentIndex());
Settings::setValue("General", "toolbarStyleBrowse", ui->toolbarStyleComboBrowse->currentIndex());
Settings::setValue("General", "toolbarStyleSql", ui->toolbarStyleComboSql->currentIndex());
Settings::setValue("General", "toolbarStyleEditCell", ui->toolbarStyleComboEditCell->currentIndex());
Settings::setValue("General", "DBFileExtensions", m_dbFileExtensions.join(";;") );
accept();

View File

@@ -128,12 +128,12 @@
<string>Toolbar style</string>
</property>
<property name="buddy">
<cstring>toolbarStyleComboBox</cstring>
<cstring>toolbarStyleComboMain</cstring>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QComboBox" name="toolbarStyleComboBox">
<item row="4" column="1">
<widget class="QComboBox" name="toolbarStyleComboMain">
<property name="sizePolicy">
<sizepolicy hsizetype="Maximum" vsizetype="Fixed">
<horstretch>0</horstretch>
@@ -182,7 +182,167 @@
</item>
</widget>
</item>
<item row="3" column="1">
<item row="5" column="1">
<widget class="QComboBox" name="toolbarStyleComboStructure">
<property name="sizePolicy">
<sizepolicy hsizetype="Maximum" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="currentIndex">
<number>2</number>
</property>
<property name="sizeAdjustPolicy">
<enum>QComboBox::AdjustToContents</enum>
</property>
<property name="minimumContentsLength">
<number>35</number>
</property>
<property name="iconSize">
<size>
<width>20</width>
<height>15</height>
</size>
</property>
<item>
<property name="text">
<string>Only display the icon</string>
</property>
</item>
<item>
<property name="text">
<string>Only display the text</string>
</property>
</item>
<item>
<property name="text">
<string>The text appears beside the icon</string>
</property>
</item>
<item>
<property name="text">
<string>The text appears under the icon</string>
</property>
</item>
<item>
<property name="text">
<string>Follow the style</string>
</property>
</item>
</widget>
</item>
<item row="6" column="1">
<widget class="QComboBox" name="toolbarStyleComboBrowse">
<property name="sizePolicy">
<sizepolicy hsizetype="Maximum" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="currentIndex">
<number>0</number>
</property>
<property name="sizeAdjustPolicy">
<enum>QComboBox::AdjustToContents</enum>
</property>
<property name="minimumContentsLength">
<number>35</number>
</property>
<property name="iconSize">
<size>
<width>20</width>
<height>15</height>
</size>
</property>
<item>
<property name="text">
<string>Only display the icon</string>
</property>
</item>
<item>
<property name="text">
<string>Only display the text</string>
</property>
</item>
<item>
<property name="text">
<string>The text appears beside the icon</string>
</property>
</item>
<item>
<property name="text">
<string>The text appears under the icon</string>
</property>
</item>
<item>
<property name="text">
<string>Follow the style</string>
</property>
</item>
</widget>
</item>
<item row="7" column="1">
<widget class="QComboBox" name="toolbarStyleComboSql">
<property name="sizePolicy">
<sizepolicy hsizetype="Maximum" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="currentIndex">
<number>0</number>
</property>
<property name="sizeAdjustPolicy">
<enum>QComboBox::AdjustToContents</enum>
</property>
<property name="minimumContentsLength">
<number>35</number>
</property>
<property name="iconSize">
<size>
<width>20</width>
<height>15</height>
</size>
</property>
<item>
<property name="text">
<string>Only display the icon</string>
</property>
</item>
<item>
<property name="text">
<string>Only display the text</string>
</property>
</item>
<item>
<property name="text">
<string>The text appears beside the icon</string>
</property>
</item>
<item>
<property name="text">
<string>The text appears under the icon</string>
</property>
</item>
<item>
<property name="text">
<string>Follow the style</string>
</property>
</item>
</widget>
</item>
<item row="9" column="0">
<widget class="QLabel" name="labelUseRemotes">
<property name="text">
<string>Show remote options</string>
</property>
<property name="buddy">
<cstring>checkUseRemotes</cstring>
</property>
</widget>
</item>
<item row="9" column="1">
<widget class="QCheckBox" name="checkUseRemotes">
<property name="text">
<string>enabled</string>
@@ -192,7 +352,7 @@
</property>
</widget>
</item>
<item row="4" column="0">
<item row="10" column="0">
<widget class="QLabel" name="labelUpdates">
<property name="text">
<string>Automatic &amp;updates</string>
@@ -202,14 +362,14 @@
</property>
</widget>
</item>
<item row="4" column="1">
<item row="10" column="1">
<widget class="QCheckBox" name="checkUpdates">
<property name="text">
<string>enabled</string>
</property>
</widget>
</item>
<item row="5" column="0">
<item row="11" column="0">
<widget class="QLabel" name="label_16">
<property name="text">
<string>DB file extensions</string>
@@ -219,20 +379,125 @@
</property>
</widget>
</item>
<item row="5" column="1">
<item row="11" column="1">
<widget class="QPushButton" name="buttonManageFileExtension">
<property name="text">
<string>Manage</string>
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QLabel" name="labelUseRemotes">
<item row="4" column="0">
<widget class="QLabel" name="labelMainToolBar">
<property name="text">
<string>Show remote options</string>
<string>Main Window</string>
</property>
<property name="indent">
<number>20</number>
</property>
<property name="buddy">
<cstring>checkUseRemotes</cstring>
<cstring>toolbarStyleComboMain</cstring>
</property>
</widget>
</item>
<item row="5" column="0">
<widget class="QLabel" name="labelStructureToolBar">
<property name="text">
<string>Database Structure</string>
</property>
<property name="indent">
<number>20</number>
</property>
<property name="buddy">
<cstring>toolbarStyleComboStructure</cstring>
</property>
</widget>
</item>
<item row="6" column="0">
<widget class="QLabel" name="labelBrowseToolBar">
<property name="text">
<string>Browse Data</string>
</property>
<property name="indent">
<number>20</number>
</property>
<property name="buddy">
<cstring>toolbarStyleComboBrowse</cstring>
</property>
</widget>
</item>
<item row="7" column="0">
<widget class="QLabel" name="labelSqlToolBar">
<property name="text">
<string>Execute SQL</string>
</property>
<property name="indent">
<number>20</number>
</property>
<property name="buddy">
<cstring>toolbarStyleComboSql</cstring>
</property>
</widget>
</item>
<item row="8" column="1">
<widget class="QComboBox" name="toolbarStyleComboEditCell">
<property name="sizePolicy">
<sizepolicy hsizetype="Maximum" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="currentIndex">
<number>0</number>
</property>
<property name="sizeAdjustPolicy">
<enum>QComboBox::AdjustToContents</enum>
</property>
<property name="minimumContentsLength">
<number>35</number>
</property>
<property name="iconSize">
<size>
<width>20</width>
<height>15</height>
</size>
</property>
<item>
<property name="text">
<string>Only display the icon</string>
</property>
</item>
<item>
<property name="text">
<string>Only display the text</string>
</property>
</item>
<item>
<property name="text">
<string>The text appears beside the icon</string>
</property>
</item>
<item>
<property name="text">
<string>The text appears under the icon</string>
</property>
</item>
<item>
<property name="text">
<string>Follow the style</string>
</property>
</item>
</widget>
</item>
<item row="8" column="0">
<widget class="QLabel" name="labelEditCellToolBar">
<property name="text">
<string>Edit Database Cell</string>
</property>
<property name="indent">
<number>20</number>
</property>
<property name="buddy">
<cstring>toolbarStyleComboEditCell</cstring>
</property>
</widget>
</item>
@@ -1523,7 +1788,11 @@ Can be set to 0 for disabling completion.</string>
<tabstop>locationEdit</tabstop>
<tabstop>setLocationButton</tabstop>
<tabstop>languageComboBox</tabstop>
<tabstop>toolbarStyleComboBox</tabstop>
<tabstop>toolbarStyleComboMain</tabstop>
<tabstop>toolbarStyleComboStructure</tabstop>
<tabstop>toolbarStyleComboBrowse</tabstop>
<tabstop>toolbarStyleComboSql</tabstop>
<tabstop>toolbarStyleComboEditCell</tabstop>
<tabstop>checkUseRemotes</tabstop>
<tabstop>checkUpdates</tabstop>
<tabstop>encodingComboBox</tabstop>

View File

@@ -158,6 +158,22 @@ QVariant Settings::getDefaultValue(const QString& group, const QString& name)
if(group == "General" && name == "toolbarStyle")
return static_cast<int>(Qt::ToolButtonTextBesideIcon);
// General/toolbarStyleStructure
if(group == "General" && name == "toolbarStyleStructure")
return static_cast<int>(Qt::ToolButtonTextBesideIcon);
// General/toolbarStyleBrowse
if(group == "General" && name == "toolbarStyleBrowse")
return static_cast<int>(Qt::ToolButtonIconOnly);
// General/toolbarStyleSql
if(group == "General" && name == "toolbarStyleSql")
return static_cast<int>(Qt::ToolButtonIconOnly);
// General/toolbarStyleEditCell
if(group == "General" && name == "toolbarStyleEditCell")
return static_cast<int>(Qt::ToolButtonIconOnly);
if(group == "General" && name == "DBFileExtensions")
return QObject::tr("SQLite database files (*.db *.sqlite *.sqlite3 *.db3)");

Binary file not shown.

Before

Width:  |  Height:  |  Size: 510 B

After

Width:  |  Height:  |  Size: 510 B

BIN
src/icons/filter.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 642 B

View File

@@ -71,6 +71,10 @@
<file alias="cancel">cancel.png</file>
<file alias="comment_block">comment_block.png</file>
<file alias="hourglass">hourglass.png</file>
<file alias="delete_record">table_row_delete.png</file>
<file alias="add_record">table_row_insert.png</file>
<file alias="set_to_null">textfield_delete.png</file>
<file alias="filter">filter.png</file>
<file alias="tab">tab.png</file>
<file alias="project_save_as">package_rename.png</file>
<file alias="field_fk">page_foreign_key.png</file>

Binary file not shown.

After

Width:  |  Height:  |  Size: 629 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 641 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 335 B