on xenial help sign in
Keep lists of actions and info hints in the preview.
commit7b0e4a2cbfa251e23d13a96fd0cb4647c3915787 authorPawel Stolowski <pawel.stolowski@canonical.com> dateFri 28 Jun 2013, 16:35 (13 years ago) parent0e5c24f
2 files changed+19−24
plugins/Unity/preview.cpp+14−24 plugins/Unity/preview.h+5
plugins/Unity/preview.cpp+14−24
@@ -83,34 +83,12 @@ QString Preview::description() const
8383
8484QVariant Preview::actions()
8585{
86− QList<QObject *> alist;
87− if (m_unityPreview) {
88− for (auto unityAction: m_unityPreview->GetActions()) {
89− auto action = new PreviewAction(this); // preview is the owner of actions
90− action->setUnityAction(unityAction);
91− alist.append(action);
92− }
93− } else {
94− qWarning() << "Preview not set";
95− }
96−
97− return QVariant::fromValue(alist);
86+ return QVariant::fromValue(m_actions);
9887}
9988
10089QVariant Preview::infoHints()
10190{
102− QList<QObject *> hints;
103− if (m_unityPreview) {
104− for (auto unityInfoHint: m_unityPreview->GetInfoHints()) {
105− auto hint = new PreviewInfoHint(this); // preview is the owner of hints
106− hint->setUnityInfoHint(unityInfoHint);
107− hints.append(hint);
108− }
109− } else {
110− qWarning() << "Preview not set";
111− }
112−
113− return QVariant::fromValue(hints);
91+ return QVariant::fromValue(m_infoHints);
11492}
11593
11694QString Preview::image() const
@@ -163,6 +141,18 @@ void Preview::setUnityPreview(unity::dash::Preview::Ptr unityPreview)
163141{
164142 m_unityPreview = unityPreview;
165143
144+ for (auto unityInfoHint: m_unityPreview->GetInfoHints()) {
145+ auto hint = new PreviewInfoHint(this);
146+ hint->setUnityInfoHint(unityInfoHint);
147+ m_infoHints.append(hint);
148+ }
149+
150+ for (auto unityAction: m_unityPreview->GetActions()) {
151+ auto action = new PreviewAction(this);
152+ action->setUnityAction(unityAction);
153+ m_actions.append(action);
154+ }
155+
166156 Q_EMIT rendererNameChanged();
167157 Q_EMIT titleChanged();
168158 Q_EMIT subtitleChanged();
plugins/Unity/preview.h+5
@@ -24,6 +24,7 @@
2424#include <QObject>
2525#include <QString>
2626#include <QMetaType>
27+#include <QList>
2728
2829// libunity-core
2930#include <UnityCore/Preview.h>
@@ -73,6 +74,10 @@ protected:
7374 virtual void setUnityPreview(unity::dash::Preview::Ptr unityPreview);
7475
7576 unity::dash::Preview::Ptr m_unityPreview;
77+
78+private:
79+ QList<QObject *> m_actions;
80+ QList<QObject *> m_infoHints;
7681};
7782
7883Q_DECLARE_METATYPE(Preview *)