Ability to reset toolbars.
This commit is contained in:
parent
972dd86d4c
commit
a159d8cf62
@ -2,6 +2,7 @@
|
|||||||
—————
|
—————
|
||||||
|
|
||||||
Added:
|
Added:
|
||||||
|
▪ Toolbar editor can reset toolbars.
|
||||||
▪ Toolbar editor now uses iconified tool buttons.
|
▪ Toolbar editor now uses iconified tool buttons.
|
||||||
▪ Double mouse click on feed or recycle bin items in feeds list now opens all messages of the item in newspaper mode.
|
▪ Double mouse click on feed or recycle bin items in feeds list now opens all messages of the item in newspaper mode.
|
||||||
▪ Columns in message list can be hidden/shown/reordered with context menu. (issue #115)
|
▪ Columns in message list can be hidden/shown/reordered with context menu. (issue #115)
|
||||||
|
@ -200,6 +200,10 @@ void StatusBar::loadSpecificActions(const QList<QAction*> &actions) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
removeWidget(m_barProgressDownload);
|
||||||
|
removeWidget(m_barProgressFeeds);
|
||||||
|
removeWidget(m_lblProgressDownload);
|
||||||
|
removeWidget(m_lblProgressFeeds);
|
||||||
clear();
|
clear();
|
||||||
|
|
||||||
foreach (QAction *act, actions) {
|
foreach (QAction *act, actions) {
|
||||||
|
@ -28,14 +28,15 @@ ToolBarEditor::ToolBarEditor(QWidget *parent)
|
|||||||
m_ui->setupUi(this);
|
m_ui->setupUi(this);
|
||||||
|
|
||||||
// Create connections.
|
// Create connections.
|
||||||
connect(m_ui->m_btnInsertSeparator, &QPushButton::clicked, this, &ToolBarEditor::insertSeparator);
|
connect(m_ui->m_btnInsertSeparator, &QToolButton::clicked, this, &ToolBarEditor::insertSeparator);
|
||||||
connect(m_ui->m_btnInsertSpacer, &QPushButton::clicked, this, &ToolBarEditor::insertSpacer);
|
connect(m_ui->m_btnInsertSpacer, &QToolButton::clicked, this, &ToolBarEditor::insertSpacer);
|
||||||
|
|
||||||
connect(m_ui->m_btnAddSelectedAction, &QPushButton::clicked, this, &ToolBarEditor::addSelectedAction);
|
connect(m_ui->m_btnAddSelectedAction, &QToolButton::clicked, this, &ToolBarEditor::addSelectedAction);
|
||||||
connect(m_ui->m_btnDeleteAllActions, &QPushButton::clicked, this, &ToolBarEditor::deleteAllActions);
|
connect(m_ui->m_btnDeleteAllActions, &QToolButton::clicked, this, &ToolBarEditor::deleteAllActions);
|
||||||
connect(m_ui->m_btnDeleteSelectedAction, &QPushButton::clicked, this, &ToolBarEditor::deleteSelectedAction);
|
connect(m_ui->m_btnDeleteSelectedAction, &QToolButton::clicked, this, &ToolBarEditor::deleteSelectedAction);
|
||||||
connect(m_ui->m_btnMoveActionUp, &QPushButton::clicked, this, &ToolBarEditor::moveActionUp);
|
connect(m_ui->m_btnMoveActionUp, &QToolButton::clicked, this, &ToolBarEditor::moveActionUp);
|
||||||
connect(m_ui->m_btnMoveActionDown, &QPushButton::clicked, this, &ToolBarEditor::moveActionDown);
|
connect(m_ui->m_btnMoveActionDown, &QToolButton::clicked, this, &ToolBarEditor::moveActionDown);
|
||||||
|
connect(m_ui->m_btnReset, &QToolButton::clicked, this, &ToolBarEditor::resetToolBar);
|
||||||
|
|
||||||
connect(m_ui->m_listAvailableActions, &QListWidget::itemSelectionChanged, this, &ToolBarEditor::updateActionsAvailability);
|
connect(m_ui->m_listAvailableActions, &QListWidget::itemSelectionChanged, this, &ToolBarEditor::updateActionsAvailability);
|
||||||
connect(m_ui->m_listActivatedActions, &QListWidget::itemSelectionChanged, this, &ToolBarEditor::updateActionsAvailability);
|
connect(m_ui->m_listActivatedActions, &QListWidget::itemSelectionChanged, this, &ToolBarEditor::updateActionsAvailability);
|
||||||
@ -51,6 +52,7 @@ ToolBarEditor::ToolBarEditor(QWidget *parent)
|
|||||||
m_ui->m_btnDeleteSelectedAction->setIcon(qApp->icons()->fromTheme(QSL("forward")));
|
m_ui->m_btnDeleteSelectedAction->setIcon(qApp->icons()->fromTheme(QSL("forward")));
|
||||||
m_ui->m_btnMoveActionDown->setIcon(qApp->icons()->fromTheme(QSL("down")));
|
m_ui->m_btnMoveActionDown->setIcon(qApp->icons()->fromTheme(QSL("down")));
|
||||||
m_ui->m_btnMoveActionUp->setIcon(qApp->icons()->fromTheme(QSL("up")));
|
m_ui->m_btnMoveActionUp->setIcon(qApp->icons()->fromTheme(QSL("up")));
|
||||||
|
m_ui->m_btnReset->setIcon(qApp->icons()->fromTheme(QSL("reload")));
|
||||||
}
|
}
|
||||||
|
|
||||||
ToolBarEditor::~ToolBarEditor() {
|
ToolBarEditor::~ToolBarEditor() {
|
||||||
@ -63,6 +65,29 @@ void ToolBarEditor::loadFromToolBar(BaseBar *tool_bar) {
|
|||||||
QList<QAction*> activated_actions = m_toolBar->changeableActions();
|
QList<QAction*> activated_actions = m_toolBar->changeableActions();
|
||||||
QList<QAction*> available_actions = m_toolBar->availableActions();
|
QList<QAction*> available_actions = m_toolBar->availableActions();
|
||||||
|
|
||||||
|
loadEditor(activated_actions, available_actions);
|
||||||
|
}
|
||||||
|
|
||||||
|
void ToolBarEditor::saveToolBar() {
|
||||||
|
QStringList action_names;
|
||||||
|
|
||||||
|
for (int i = 0; i < m_ui->m_listActivatedActions->count(); i++) {
|
||||||
|
action_names.append(m_ui->m_listActivatedActions->item(i)->data(Qt::UserRole).toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
m_toolBar->saveChangeableActions(action_names);
|
||||||
|
}
|
||||||
|
|
||||||
|
void ToolBarEditor::resetToolBar() {
|
||||||
|
if (m_toolBar != nullptr) {
|
||||||
|
loadEditor(m_toolBar->getSpecificActions(m_toolBar->defaultActions()), m_toolBar->availableActions());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void ToolBarEditor::loadEditor(const QList<QAction *> activated_actions, const QList<QAction *> available_actions) {
|
||||||
|
m_ui->m_listActivatedActions->clear();
|
||||||
|
m_ui->m_listAvailableActions->clear();
|
||||||
|
|
||||||
foreach (const QAction *action, activated_actions) {
|
foreach (const QAction *action, activated_actions) {
|
||||||
QListWidgetItem *action_item = new QListWidgetItem(action->icon(), action->text().replace('&', ""), m_ui->m_listActivatedActions);
|
QListWidgetItem *action_item = new QListWidgetItem(action->icon(), action->text().replace('&', ""), m_ui->m_listActivatedActions);
|
||||||
|
|
||||||
@ -106,26 +131,10 @@ void ToolBarEditor::loadFromToolBar(BaseBar *tool_bar) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
m_ui->m_listAvailableActions->sortItems(Qt::AscendingOrder);
|
m_ui->m_listAvailableActions->sortItems(Qt::AscendingOrder);
|
||||||
m_ui->m_listAvailableActions->setCurrentRow(0);
|
m_ui->m_listAvailableActions->setCurrentRow(m_ui->m_listAvailableActions->count() >= 0 ? 0 : -1);
|
||||||
m_ui->m_listActivatedActions->setCurrentRow(m_ui->m_listActivatedActions->count() >= 0 ? 0 : -1);
|
m_ui->m_listActivatedActions->setCurrentRow(m_ui->m_listActivatedActions->count() >= 0 ? 0 : -1);
|
||||||
}
|
}
|
||||||
|
|
||||||
void ToolBarEditor::saveToolBar() {
|
|
||||||
QStringList action_names;
|
|
||||||
|
|
||||||
for (int i = 0; i < m_ui->m_listActivatedActions->count(); i++) {
|
|
||||||
action_names.append(m_ui->m_listActivatedActions->item(i)->data(Qt::UserRole).toString());
|
|
||||||
}
|
|
||||||
|
|
||||||
m_toolBar->saveChangeableActions(action_names);
|
|
||||||
}
|
|
||||||
|
|
||||||
void ToolBarEditor::resetToolBar() {
|
|
||||||
if (m_toolBar != nullptr) {
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
bool ToolBarEditor::eventFilter(QObject *object, QEvent *event) {
|
bool ToolBarEditor::eventFilter(QObject *object, QEvent *event) {
|
||||||
if (object == m_ui->m_listActivatedActions) {
|
if (object == m_ui->m_listActivatedActions) {
|
||||||
if (event->type() == QEvent::KeyPress) {
|
if (event->type() == QEvent::KeyPress) {
|
||||||
|
@ -40,7 +40,6 @@ class ToolBarEditor : public QWidget {
|
|||||||
// Toolbar operations.
|
// Toolbar operations.
|
||||||
void loadFromToolBar(BaseBar *tool_bar);
|
void loadFromToolBar(BaseBar *tool_bar);
|
||||||
void saveToolBar();
|
void saveToolBar();
|
||||||
void resetToolBar();
|
|
||||||
|
|
||||||
inline QListWidget *activeItemsWidget() const {
|
inline QListWidget *activeItemsWidget() const {
|
||||||
return m_ui->m_listActivatedActions;
|
return m_ui->m_listActivatedActions;
|
||||||
@ -67,10 +66,14 @@ class ToolBarEditor : public QWidget {
|
|||||||
void deleteSelectedAction();
|
void deleteSelectedAction();
|
||||||
void deleteAllActions();
|
void deleteAllActions();
|
||||||
|
|
||||||
|
void resetToolBar();
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void setupChanged();
|
void setupChanged();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
void loadEditor(const QList<QAction*> activated_actions, const QList<QAction*> available_actions);
|
||||||
|
|
||||||
QScopedPointer<Ui::ToolBarEditor> m_ui;
|
QScopedPointer<Ui::ToolBarEditor> m_ui;
|
||||||
BaseBar *m_toolBar;
|
BaseBar *m_toolBar;
|
||||||
};
|
};
|
||||||
|
@ -172,6 +172,19 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QToolButton" name="m_btnReset">
|
||||||
|
<property name="toolTip">
|
||||||
|
<string>Reset toolbar</string>
|
||||||
|
</property>
|
||||||
|
<property name="iconSize">
|
||||||
|
<size>
|
||||||
|
<width>22</width>
|
||||||
|
<height>22</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<spacer name="verticalSpacer">
|
<spacer name="verticalSpacer">
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
|
Loading…
x
Reference in New Issue
Block a user