1
0
mirror of https://github.com/altlinux/admc.git synced 2025-03-31 02:50:17 +03:00

consolidate add_actions() f-ns

This commit is contained in:
Dmitry Degtyarev 2021-08-19 15:38:37 +04:00
parent 51d8930af7
commit f4441c21dd
8 changed files with 31 additions and 46 deletions

View File

@ -798,19 +798,12 @@ void CentralWidget::update_description_bar() {
console->set_description_bar_text(text);
}
void CentralWidget::add_actions_to_menus(QMenu *action_menu, QMenu *navigation_menu, QMenu *view_menu, QMenu *preferences_menu) {
// Action
void CentralWidget::add_actions(QMenu *action_menu, QMenu *navigation_menu, QMenu *view_menu, QMenu *preferences_menu) {
console_actions->add_to_menu(action_menu);
action_menu->addSeparator();
console->add_actions_to_action_menu(action_menu);
// Navigation
console->add_actions_to_navigation_menu(navigation_menu);
// View
console->add_actions_to_view_menu(view_menu);
console->add_actions(action_menu, navigation_menu, view_menu);
view_menu->addSeparator();
@ -822,7 +815,6 @@ void CentralWidget::add_actions_to_menus(QMenu *action_menu, QMenu *navigation_m
view_menu->addAction(dev_mode_action);
#endif
// Preferences
preferences_menu->addAction(advanced_features_action);
preferences_menu->addAction(toggle_console_tree_action);
preferences_menu->addAction(toggle_description_bar_action);

View File

@ -65,7 +65,7 @@ public:
CentralWidget(AdInterface &ad);
~CentralWidget();
void add_actions_to_menus(QMenu *action_menu, QMenu *navigation_menu, QMenu *view_menu, QMenu *preferences_menu);
void add_actions(QMenu *action_menu, QMenu *navigation_menu, QMenu *view_menu, QMenu *preferences_menu);
signals:
void context_menu(const QPoint pos);

View File

@ -851,17 +851,18 @@ void ConsoleWidgetPrivate::update_view_actions() {
customize_columns_action->setVisible(results_view_exists);
}
void ConsoleWidget::add_actions_to_action_menu(QMenu *menu) {
menu->addAction(d->refresh_action);
menu->addSeparator();
menu->addAction(d->properties_action);
void ConsoleWidget::add_actions(QMenu *action_menu, QMenu *navigation_menu, QMenu *view_menu) {
// Action
action_menu->addAction(d->refresh_action);
action_menu->addSeparator();
action_menu->addAction(d->properties_action);
d->properties_action->setVisible(false);
d->refresh_action->setVisible(false);
// Update actions right before menu opens
connect(
menu, &QMenu::aboutToShow,
action_menu, &QMenu::aboutToShow,
d, &ConsoleWidgetPrivate::update_actions);
// Open action menu as context menu for central widget
@ -873,25 +874,23 @@ void ConsoleWidget::add_actions_to_action_menu(QMenu *menu) {
if (index.isValid()) {
const QPoint global_pos = d->focused_view->mapToGlobal(pos);
menu->exec(global_pos);
action_menu->exec(global_pos);
}
});
}
void ConsoleWidget::add_actions_to_navigation_menu(QMenu *menu) {
menu->addAction(d->navigate_up_action);
menu->addAction(d->navigate_back_action);
menu->addAction(d->navigate_forward_action);
}
// Navigation
navigation_menu->addAction(d->navigate_up_action);
navigation_menu->addAction(d->navigate_back_action);
navigation_menu->addAction(d->navigate_forward_action);
void ConsoleWidget::add_actions_to_view_menu(QMenu *menu) {
menu->addAction(d->set_results_to_icons_action);
menu->addAction(d->set_results_to_list_action);
menu->addAction(d->set_results_to_detail_action);
// View
view_menu->addAction(d->set_results_to_icons_action);
view_menu->addAction(d->set_results_to_list_action);
view_menu->addAction(d->set_results_to_detail_action);
menu->addSeparator();
view_menu->addSeparator();
menu->addAction(d->customize_columns_action);
view_menu->addAction(d->customize_columns_action);
}
const ResultsDescription ConsoleWidgetPrivate::get_current_results() const {

View File

@ -165,9 +165,7 @@ public:
bool item_was_fetched(const QModelIndex &index) const;
void add_actions_to_action_menu(QMenu *menu);
void add_actions_to_navigation_menu(QMenu *menu);
void add_actions_to_view_menu(QMenu *menu);
void add_actions(QMenu *action_menu, QMenu *navigation_menu, QMenu *view_menu);
// These getters are only for showing/hiding these widgets
QWidget *get_scope_view() const;

View File

@ -46,8 +46,7 @@ FindObjectDialog::FindObjectDialog(const QList<QString> classes, const QString d
layout->setMenuBar(menubar);
layout->addWidget(find_widget);
find_widget->find_results->add_actions_to_action_menu(action_menu);
find_widget->find_results->add_actions_to_view_menu(view_menu);
find_widget->find_results->add_actions(action_menu, view_menu);
settings_setup_dialog_geometry(SETTING_find_object_dialog_geometry, this);
}

View File

@ -124,15 +124,15 @@ FindResults::~FindResults() {
settings_set_variant(SETTING_find_results_state, view_state);
}
void FindResults::add_actions_to_action_menu(QMenu *menu) {
object_actions->add_to_menu(menu);
void FindResults::add_actions(QMenu *action_menu, QMenu *view_menu) {
object_actions->add_to_menu(action_menu);
menu->addSeparator();
action_menu->addSeparator();
menu->addAction(properties_action);
action_menu->addAction(properties_action);
connect(
menu, &QMenu::aboutToShow,
action_menu, &QMenu::aboutToShow,
this, &FindResults::update_actions_visibility);
connect(
@ -143,13 +143,11 @@ void FindResults::add_actions_to_action_menu(QMenu *menu) {
if (index.isValid()) {
const QPoint global_pos = view->current_view()->mapToGlobal(pos);
menu->exec(global_pos);
action_menu->exec(global_pos);
}
});
}
void FindResults::add_actions_to_view_menu(QMenu *menu) {
menu->addAction(customize_columns_action);
view_menu->addAction(customize_columns_action);
}
void FindResults::clear() {

View File

@ -51,8 +51,7 @@ public:
// NOTE: returned items need to be re-parented or deleted!
QList<QList<QStandardItem *>> get_selected_rows() const;
void add_actions_to_action_menu(QMenu *menu);
void add_actions_to_view_menu(QMenu *menu);
void add_actions(QMenu *action_menu, QMenu *view_menu);
private slots:
void properties();

View File

@ -245,7 +245,7 @@ void MainWindow::connect_to_server() {
auto central_widget = new CentralWidget(ad);
setCentralWidget(central_widget);
central_widget->add_actions_to_menus(action_menu, navigation_menu, view_menu, preferences_menu);
central_widget->add_actions(action_menu, navigation_menu, view_menu, preferences_menu);
connect_action->setEnabled(false);
}