Procházet zdrojové kódy

Added open ownCloud button to status dialog

Klaas Freitag před 14 roky
rodič
revize
de8d7bb87c

+ 1 - 0
src/mirall/application.cpp

@@ -132,6 +132,7 @@ void Application::slotTrayClicked( QSystemTrayIcon::ActivationReason reason )
       _owncloudSetup->startWizard();
     } else {
       _statusDialog->setFolderList( _folderMap );
+      _statusDialog->setOCUrl( QUrl( _owncloudSetup->ownCloudUrl()));
 
       _statusDialog->show();
     }

+ 15 - 0
src/mirall/statusdialog.cpp

@@ -119,7 +119,9 @@ StatusDialog::StatusDialog(QWidget *parent) :
   connect(_ButtonClose,  SIGNAL(clicked()), this, SLOT(accept()));
   connect(_ButtonRemove, SIGNAL(clicked()), this, SLOT(slotRemoveFolder()));
   connect(_ButtonFetch,  SIGNAL(clicked()), this, SLOT(slotFetchFolder()));
+  connect(_ButtonOpenOC, SIGNAL(clicked()), this, SLOT(slotOpenOC()));
 
+  _ButtonOpenOC->setEnabled(false);
   _ButtonRemove->setEnabled(false);
   _ButtonFetch->setEnabled(false);
 
@@ -192,6 +194,19 @@ void StatusDialog::slotFetchFolder()
   }
 }
 
+void StatusDialog::setOCUrl( const QUrl& url )
+{
+  _OCUrl = url;
+  if( url.isValid() )
+    _ButtonOpenOC->setEnabled( true );
+}
+
+void StatusDialog::slotOpenOC()
+{
+  if( _OCUrl.isValid() )
+    QDesktopServices::openUrl( _OCUrl );
+}
+
 }
 
 #include "statusdialog.moc"

+ 4 - 0
src/mirall/statusdialog.h

@@ -18,6 +18,7 @@
 #include <QDialog>
 #include <QStyledItemDelegate>
 #include <QStandardItemModel>
+#include <QUrl>
 
 #include "ui_statusdialog.h"
 #include "application.h"
@@ -47,6 +48,7 @@ class StatusDialog : public QDialog, public Ui::statusDialog
 public:
     explicit StatusDialog(QWidget *parent = 0);
     void setFolderList( QHash<QString, Folder*> );
+    void setOCUrl( const QUrl& );
 
 signals:
     void removeFolderAlias( const QString& );
@@ -56,9 +58,11 @@ public slots:
     void slotRemoveFolder();
     void slotFetchFolder();
     void slotFolderActivated( const QModelIndex& );
+    void slotOpenOC();
 
 private:
     QStandardItemModel *_model;
+    QUrl _OCUrl;
 };
 };
 

+ 21 - 2
src/mirall/statusdialog.ui

@@ -40,7 +40,7 @@
        <item>
         <widget class="QPushButton" name="_ButtonRemove">
          <property name="text">
-          <string>remove</string>
+          <string>remove...</string>
          </property>
         </widget>
        </item>
@@ -64,6 +64,23 @@
          </property>
         </spacer>
        </item>
+       <item>
+        <widget class="QPushButton" name="_ButtonOpenOC">
+         <property name="text">
+          <string>open...</string>
+         </property>
+         <property name="icon">
+          <iconset resource="../../mirall.qrc">
+           <normaloff>:/new/mirall/resources/ownCloud-128.png</normaloff>:/new/mirall/resources/ownCloud-128.png</iconset>
+         </property>
+         <property name="iconSize">
+          <size>
+           <width>24</width>
+           <height>24</height>
+          </size>
+         </property>
+        </widget>
+       </item>
       </layout>
      </item>
     </layout>
@@ -97,6 +114,8 @@
    </item>
   </layout>
  </widget>
- <resources/>
+ <resources>
+  <include location="../../mirall.qrc"/>
+ </resources>
  <connections/>
 </ui>