on xenial help sign in
Move profile selection from IndicatorBase.qml to indicatorsmanager.cpp

It is still the constant string "phone".

commitff0498a7f9ab0255987018e7b9e1f78607aaeb40 authorLars Uebernickel <lars.uebernickel@canonical.com> dateThu 10 Oct 2013, 17:47 (13 years ago) parentd763a69
4 files changed+10−21
plugins/Unity/Indicators/indicator.cpp+3−15 plugins/Unity/Indicators/indicator.h+1−1 plugins/Unity/Indicators/indicatorsmanager.cpp+3−1 plugins/Unity/Indicators/qml/IndicatorBase.qml+3−4
plugins/Unity/Indicators/indicator.cpp+3−15
@@ -31,32 +31,20 @@ Indicator::~Indicator()
3131{
3232}
3333
34−void Indicator::init(const QString& busName, const QSettings& settings)
34+void Indicator::init(const QString &profile, const QString& busName, const QSettings& settings)
3535{
3636 setId(settings.value("Indicator Service/Name").toString());
3737 setPosition(settings.value("Indicator Service/Position", QVariant::fromValue(0)).toInt());
3838
3939 QString actionObjectPath = settings.value("Indicator Service/ObjectPath").toString();
40−
41− QVariantMap mapMenuObjectPaths;
42− Q_FOREACH(const QString& childGroup, settings.childGroups())
43− {
44− if (childGroup == "Indicator Service")
45− continue;
46−
47− QString menuPath = childGroup+"/ObjectPath";
48− if (settings.contains(menuPath))
49− {
50− mapMenuObjectPaths[childGroup] = settings.value(menuPath).toString();
51− }
52− }
40+ QString menuObjectPath = settings.value(profile + "/ObjectPath").toString();
5341
5442 QVariantMap properties;
5543 properties.clear();
5644 properties.insert("busType", 1);
5745 properties.insert("busName", busName);
5846 properties.insert("actionsObjectPath", actionObjectPath);
59− properties.insert("menuObjectPaths", mapMenuObjectPaths);
47+ properties.insert("menuObjectPath", menuObjectPath);
6048 setIndicatorProperties(properties);
6149}
6250
plugins/Unity/Indicators/indicator.h+1−1
@@ -35,7 +35,7 @@ public:
3535 Indicator(QObject *parent = 0);
3636 virtual ~Indicator();
3737
38− void init(const QString& busName, const QSettings& settings);
38+ void init(const QString &profile, const QString& busName, const QSettings& settings);
3939
4040 QString identifier() const;
4141 int position() const;
plugins/Unity/Indicators/indicatorsmanager.cpp+3−1
@@ -26,6 +26,8 @@
2626
2727#include "paths.h"
2828
29+const QString profile = "phone";
30+
2931
3032class IndicatorsManager::IndicatorData
3133{
@@ -302,7 +304,7 @@ Indicator::Ptr IndicatorsManager::indicator(const QString& indicator_name)
302304 Indicator::Ptr new_indicator(new Indicator(this));
303305 data->m_indicator = new_indicator;
304306 QSettings settings(data->m_fileInfo.absoluteFilePath(), QSettings::IniFormat, this);
305− new_indicator->init(data->m_fileInfo.fileName(), settings);
307+ new_indicator->init(profile, data->m_fileInfo.fileName(), settings);
306308 return new_indicator;
307309}
308310
plugins/Unity/Indicators/qml/IndicatorBase.qml+3−4
@@ -24,16 +24,15 @@ import Unity.Indicators 0.1 as Indicators
2424Item {
2525 id: indicatorItem
2626
27− enabled: menuObjectPaths.hasOwnProperty(device)
27+ enabled: menuObjectPath != ""
2828
2929 //const
3030 property string busName
3131 property string actionsObjectPath
32− property var menuObjectPaths: undefined
33− readonly property string device: "phone"
32+ property string menuObjectPath
3433 property string rootMenuType: "com.canonical.indicator.root"
3534
36− property string deviceMenuObjectPath: menuObjectPaths.hasOwnProperty(device) ? menuObjectPaths[device] : ""
35+ property string deviceMenuObjectPath: menuObjectPath
3736
3837 property alias menuModel: cachedModel.model
3938