update menu layouts from the layouts window

pull/1/head
Michail Vourlakos 8 years ago
parent 252ca89725
commit b6352c587d

@ -335,6 +335,8 @@ bool LayoutConfigDialog::saveAllChanges()
QStringList knownActivities = activities(); QStringList knownActivities = activities();
QStringList menuLayouts;
for (int i = 0; i < m_model->rowCount(); ++i) { for (int i = 0; i < m_model->rowCount(); ++i) {
QString id = m_model->data(m_model->index(i, 0), Qt::DisplayRole).toString(); QString id = m_model->data(m_model->index(i, 0), Qt::DisplayRole).toString();
QString color = m_model->data(m_model->index(i, 1), Qt::BackgroundRole).toString(); QString color = m_model->data(m_model->index(i, 1), Qt::BackgroundRole).toString();
@ -366,8 +368,14 @@ bool LayoutConfigDialog::saveAllChanges()
if (layout->activities() != cleanedActivities) { if (layout->activities() != cleanedActivities) {
layout->setActivities(cleanedActivities); layout->setActivities(cleanedActivities);
} }
//! publish the layouts for the menus
if (menu) {
menuLayouts.append(name);
}
} }
m_manager->setMenuLayouts(menuLayouts);
return true; return true;
} }

@ -128,6 +128,16 @@ QStringList LayoutManager::menuLayouts() const
return m_menuLayouts; return m_menuLayouts;
} }
void LayoutManager::setMenuLayouts(QStringList layouts)
{
if (m_menuLayouts == layouts) {
return;
}
m_menuLayouts = layouts;
emit menuLayoutsChanged();
}
QStringList LayoutManager::activities() QStringList LayoutManager::activities()
{ {
return m_corona->m_activityConsumer->activities(); return m_corona->m_activityConsumer->activities();

@ -93,6 +93,7 @@ private slots:
void showWidgetsExplorer(); void showWidgetsExplorer();
private: private:
void setMenuLayouts(QStringList layouts);
QString layoutPath(QString layoutName); QString layoutPath(QString layoutName);
void loadLayouts(); void loadLayouts();
@ -114,6 +115,8 @@ private:
QAction *m_toggleLayoutAction{nullptr}; QAction *m_toggleLayoutAction{nullptr};
QPointer<LayoutConfigDialog> m_layoutConfigDialog; QPointer<LayoutConfigDialog> m_layoutConfigDialog;
friend class LayoutConfigDialog;
}; };
} }

Loading…
Cancel
Save