[vlc-devel] [PATCH 1/4] VLC qt gui: cloud storage stubs.

Paweł Wegner pawel.wegner95 at gmail.com
Wed Oct 19 19:50:56 CEST 2016


---
 include/vlc_interface.h                   |   1 +
 modules/gui/qt/Makefile.am                |   2 ++
 modules/gui/qt/components/open_panels.cpp |  14 ++++++++
 modules/gui/qt/components/open_panels.hpp |  14 ++++++++
 modules/gui/qt/dialogs/open.cpp           |   3 ++
 modules/gui/qt/dialogs/open.hpp           |   2 ++
 modules/gui/qt/dialogs_provider.cpp       |   7 ++++
 modules/gui/qt/dialogs_provider.hpp       |   1 +
 modules/gui/qt/menus.cpp                  |   2 ++
 modules/gui/qt/pixmaps/types/cloud.png    | Bin 0 -> 1358 bytes
 modules/gui/qt/ui/open_cloud.ui           |  58 ++++++++++++++++++++++++++++++
 modules/gui/qt/vlc.qrc                    |   1 +
 12 files changed, 105 insertions(+)
 create mode 100644 modules/gui/qt/pixmaps/types/cloud.png
 create mode 100644 modules/gui/qt/ui/open_cloud.ui

diff --git a/include/vlc_interface.h b/include/vlc_interface.h
index a4006f0..d42a19a 100644
--- a/include/vlc_interface.h
+++ b/include/vlc_interface.h
@@ -118,6 +118,7 @@ typedef enum vlc_intf_dialog {
     INTF_DIALOG_NET,
     INTF_DIALOG_CAPTURE,
     INTF_DIALOG_SAT,
+    INTF_DIALOG_CLOUD,
     INTF_DIALOG_DIRECTORY,
 
     INTF_DIALOG_STREAMWIZARD,
diff --git a/modules/gui/qt/Makefile.am b/modules/gui/qt/Makefile.am
index 8546529..0d3bea4 100644
--- a/modules/gui/qt/Makefile.am
+++ b/modules/gui/qt/Makefile.am
@@ -209,6 +209,7 @@ nodist_libqt_plugin_la_SOURCES += \
 	ui/open_disk.h \
 	ui/open_net.h \
 	ui/open_capture.h \
+	ui/open_cloud.h \
 	ui/open.h \
 	ui/vlm.h \
 	ui/podcast_configuration.h \
@@ -249,6 +250,7 @@ libqt_plugin_la_UI = \
 	ui/open_disk.ui \
 	ui/open_net.ui \
 	ui/open_capture.ui \
+	ui/open_cloud.ui \
 	ui/open.ui \
 	ui/podcast_configuration.ui \
 	ui/profiles.ui \
diff --git a/modules/gui/qt/components/open_panels.cpp b/modules/gui/qt/components/open_panels.cpp
index 9f05548..3d0f6d9 100644
--- a/modules/gui/qt/components/open_panels.cpp
+++ b/modules/gui/qt/components/open_panels.cpp
@@ -1403,3 +1403,17 @@ void CaptureOpenPanel::advancedDialog()
     module_config_free( p_config );
 }
 
+
+CloudOpenPanel::CloudOpenPanel( QWidget *parent, intf_thread_t *t ) :
+                                  OpenPanel( parent, t )
+{
+    ui.setupUi(this);
+}
+
+void CloudOpenPanel::clear()
+{
+}
+
+void CloudOpenPanel::updateMRL()
+{
+}
diff --git a/modules/gui/qt/components/open_panels.hpp b/modules/gui/qt/components/open_panels.hpp
index d124a25..af61c6b 100644
--- a/modules/gui/qt/components/open_panels.hpp
+++ b/modules/gui/qt/components/open_panels.hpp
@@ -38,6 +38,7 @@
 #include "ui/open_disk.h"
 #include "ui/open_net.h"
 #include "ui/open_capture.h"
+#include "ui/open_cloud.h"
 
 #include <QFileDialog>
 
@@ -230,4 +231,17 @@ private slots:
     void advancedDialog();
 };
 
+class CloudOpenPanel : public OpenPanel
+{
+    Q_OBJECT
+public:
+    CloudOpenPanel( QWidget *, intf_thread_t * );
+    void clear();
+private:
+    Ui::OpenCloud ui;
+
+public slots:
+    void updateMRL();
+};
+
 #endif
diff --git a/modules/gui/qt/dialogs/open.cpp b/modules/gui/qt/dialogs/open.cpp
index 224cfa5..3856099 100644
--- a/modules/gui/qt/dialogs/open.cpp
+++ b/modules/gui/qt/dialogs/open.cpp
@@ -84,6 +84,7 @@ OpenDialog::OpenDialog( QWidget *parent,
     discOpenPanel    = new DiscOpenPanel( this, p_intf );
     netOpenPanel     = new NetOpenPanel( this, p_intf );
     captureOpenPanel = new CaptureOpenPanel( this, p_intf );
+    cloudOpenPanel   = new CloudOpenPanel( this, p_intf );
 
     /* Insert the tabs */
     ui.Tab->insertTab( OPEN_FILE_TAB, fileOpenPanel, QIcon( ":/type/file-asym" ),
@@ -94,6 +95,8 @@ OpenDialog::OpenDialog( QWidget *parent,
                        qtr( "&Network" ) );
     ui.Tab->insertTab( OPEN_CAPTURE_TAB, captureOpenPanel,
                        QIcon( ":/type/capture-card" ), qtr( "Capture &Device" ) );
+    ui.Tab->insertTab( OPEN_CLOUD_TAB, cloudOpenPanel, QIcon( ":/type/cloud" ),
+                       qtr( "&Cloud" ) );
 
     /* Hide the Slave input widgets */
     ui.slaveLabel->hide();
diff --git a/modules/gui/qt/dialogs/open.hpp b/modules/gui/qt/dialogs/open.hpp
index 0ce6f81..6932851 100644
--- a/modules/gui/qt/dialogs/open.hpp
+++ b/modules/gui/qt/dialogs/open.hpp
@@ -40,6 +40,7 @@ enum {
     OPEN_DISC_TAB,
     OPEN_NETWORK_TAB,
     OPEN_CAPTURE_TAB,
+    OPEN_CLOUD_TAB,
     OPEN_TAB_MAX
 };
 
@@ -98,6 +99,7 @@ private:
     NetOpenPanel *netOpenPanel;
     DiscOpenPanel *discOpenPanel;
     CaptureOpenPanel *captureOpenPanel;
+    CloudOpenPanel *cloudOpenPanel;
 
     int i_action_flag;
     bool b_pl;
diff --git a/modules/gui/qt/dialogs_provider.cpp b/modules/gui/qt/dialogs_provider.cpp
index 5951b65..8796d56 100644
--- a/modules/gui/qt/dialogs_provider.cpp
+++ b/modules/gui/qt/dialogs_provider.cpp
@@ -139,6 +139,8 @@ void DialogsProvider::customEvent( QEvent *event )
         case INTF_DIALOG_SAT:
         case INTF_DIALOG_CAPTURE:
             openCaptureDialog(); break;
+        case INTF_DIALOG_CLOUD:
+            openCloudDialog(); break;
         case INTF_DIALOG_DIRECTORY:
             PLAppendDir(); break;
         case INTF_DIALOG_PLAYLIST:
@@ -426,6 +428,11 @@ void DialogsProvider::openCaptureDialog()
     openDialog( OPEN_CAPTURE_TAB );
 }
 
+void DialogsProvider::openCloudDialog()
+{
+    openDialog(OPEN_CLOUD_TAB);
+}
+
 /* Same as the open one, but force the enqueue */
 void DialogsProvider::PLAppendDialog( int tab )
 {
diff --git a/modules/gui/qt/dialogs_provider.hpp b/modules/gui/qt/dialogs_provider.hpp
index 01faa11..46bc89f 100644
--- a/modules/gui/qt/dialogs_provider.hpp
+++ b/modules/gui/qt/dialogs_provider.hpp
@@ -153,6 +153,7 @@ public slots:
     void openUrlDialog();
     void openNetDialog();
     void openCaptureDialog();
+    void openCloudDialog();
 
     void PLAppendDialog( int tab = OPEN_FILE_TAB );
     void MLAppendDialog( int tab = OPEN_FILE_TAB );
diff --git a/modules/gui/qt/menus.cpp b/modules/gui/qt/menus.cpp
index 8af0317..c70a315 100644
--- a/modules/gui/qt/menus.cpp
+++ b/modules/gui/qt/menus.cpp
@@ -370,6 +370,8 @@ QMenu *VLCMenuBar::FileMenu( intf_thread_t *p_intf, QWidget *parent, MainInterfa
         ":/type/network", SLOT( openNetDialog() ), "Ctrl+N" );
     addDPStaticEntry( menu, qtr( "Open &Capture Device..." ),
         ":/type/capture-card", SLOT( openCaptureDialog() ), "Ctrl+C" );
+    addDPStaticEntry( menu, qtr( "Open Cloud File..."),
+        ":/type/cloud", SLOT( openCloudDialog() ) );
 
     addDPStaticEntry( menu, qtr( "Open &Location from clipboard" ),
                       NULL, SLOT( openUrlDialog() ), "Ctrl+V" );
diff --git a/modules/gui/qt/pixmaps/types/cloud.png b/modules/gui/qt/pixmaps/types/cloud.png
new file mode 100644
index 0000000000000000000000000000000000000000..8796aa07d661fdb0ed7018ff146d990aa97484b8
GIT binary patch
literal 1358
zcmZ{k|3A|S9LGPOVb*5z{jBCooG4$Gd`s+<ZpnPV5!1yPJ*?zg>EXM!m1<eOmD-)T
z6x|}s@}(8wa~Psn>CPgxbA?Q|p)!wTH-A9S$K&;Wy<U&U`~B<tQfTl&G;#|P001<}
zk4RQKV?zkIdiHu#ht;N;zMmA1P?Lu^%2M}DX?{`Z0Dv;w5C~LMV%0ke6456-tMbEC
zG|S`=c3 at HddGxQL=VIsKW;f^S?SmgvNG)kaF|{dH^LB{paoH7EP5b3`r0Dhbo%1|=
zVJ+L=AF+ca?r}Cj|FW;qp{4Ce8=H16B7-)vMjOdaSYQ4EX)Mh;rO)gcEnYsA04IK%
z9N(%;ZSpaZZ^8pC1#|%UARebmwsAr$wLM^Km<7!<z<rS0uX04UVkxL3t>9~{AE2Dr
z?Z at SRoDjmQLQ}+d3N4ryneQLp_dVMP+}EQ?LrOX+mX&2khpop<rH;>a*4{6=2^`jK
zhQco}^OZX5^j+`<AMJ_9jbO0UOQ|Z+Wxo7LNCD=6rs=)Xt0EzEV9`C=6Pi@&o{m`4
zJhH_eOcsJF5OYb+SpNRq&9)m5J(k^PvX5RK*eZ7V<S9iJnZ#SyB+p3ccOz|5n!LAt
zXx3NxI2e9mq}z}B2fSjafC&Aa;gy`8`BT>tHw%yyqz=&1Pv2WGb!^q3<7RX2+Dg-0
zQ9xrnv^Aqp;`tT&5z6RUKO7vFxqJhi^rl=A>RuMqY9L|Kmt=Z$4NiFgt%Y#@t6Q#Z
zSMcKLy36i^!%EwZ;(MKeWbX9lHN)sx%0zymEY)q|!>s6PG)-7w6vi3pw+Z?CU3m*X
zBB#Oi07!s21PX5Oa6ME!b)kC*qi}H_k6A(k9b~>!hG>cf?`GALo18MhR|eUuoe5h%
zA>+S;_DF(on|9lGliK2pAY;fgc5hm8!Ml~_-|8Z>63!1-pa|LohS?hFqzk!8aF^MR
zQer8^=4`uoe1_)(WJeGI=YcR?UI at RAQ5dX8KFitDFId$pp^ixt<KYVL^-YOkrXrj2
z5frwnmPhT#lNYqQVKhpnv$CgTbw7*xlnAdBzxhR^C%+c&D+rTY^ZR*D*{Q8 at aSPh~
zCs?8XN9w_v*SPv$3BIhnw5$-cJGsoPimdPqoI8KhTWTgfYlY&xg$vle-1->BQ)Q&k
z%3-}4(ySCuiN4-K8D-MI(Tnbwhow$tN at MP%?b9?^uH}qhOmFEA&?#4C&=_d0a~w+s
za*PvQrUD>y at 7uujayi?BvJWb#EQL|RyLL`nuSA_Ig^3$p&$Q#4eEdM`syjB<qAJI?
z-UeK|n;y>0x*>KjYK%`4^WJt9*xd#&kz)PDGOsR6t<qdKQliW+X5)OItU?yLktAfF
zgM9<VkKmSCiYP5JeT&JZEd at ppe!=j>a{^bLN3<mrzQwduHwi=IiD6k9SjRCO>A&bC
zc&55~0FNT>dR>{Yw=60o9Co$v+V;YJM3(B3mhabVHNL9q^X3s=1(jIWeGzcd5Ao0C
zFZbup)W^+dr4K#h5_gAi at Icp}|J))zZo_f4jPg`Gt}uH6OzEAe3dp|<%e<<XnM!Ox
zJj%>Q=CTLPUiKOf=zV^|$b?Op4luly;dZ>?d#TDS+v=iwoQl9n`9PPZb0M8PVIT)h
zF6adNvl-*ef0eeik at 5Cu<=or-v5xNCK`&~j-T+fqppx0=?+Pyz2BKlRsa3?yecrdu
zn19Ao^NDfQVG>vV8^-U at 3N$NWTbwz$z+rux7k%B&RuSVNy10!$36Ks16Z!jN&;Ad)
C2XwIj

literal 0
HcmV?d00001

diff --git a/modules/gui/qt/ui/open_cloud.ui b/modules/gui/qt/ui/open_cloud.ui
new file mode 100644
index 0000000..1401402
--- /dev/null
+++ b/modules/gui/qt/ui/open_cloud.ui
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>OpenCloud</class>
+ <widget class="QWidget" name="OpenCloud">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>400</width>
+    <height>300</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>Form</string>
+  </property>
+  <widget class="QPushButton" name="pushButton">
+   <property name="geometry">
+    <rect>
+     <x>20</x>
+     <y>20</y>
+     <width>99</width>
+     <height>27</height>
+    </rect>
+   </property>
+   <property name="text">
+    <string>GoogleDrive</string>
+   </property>
+  </widget>
+  <widget class="QPushButton" name="pushButton_2">
+   <property name="geometry">
+    <rect>
+     <x>20</x>
+     <y>50</y>
+     <width>99</width>
+     <height>27</height>
+    </rect>
+   </property>
+   <property name="text">
+    <string>OneDrive</string>
+   </property>
+  </widget>
+  <widget class="QPushButton" name="pushButton_3">
+   <property name="geometry">
+    <rect>
+     <x>20</x>
+     <y>80</y>
+     <width>99</width>
+     <height>27</height>
+    </rect>
+   </property>
+   <property name="text">
+    <string>Dropbox</string>
+   </property>
+  </widget>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>
diff --git a/modules/gui/qt/vlc.qrc b/modules/gui/qt/vlc.qrc
index fbf5bfd..7cc3d47 100644
--- a/modules/gui/qt/vlc.qrc
+++ b/modules/gui/qt/vlc.qrc
@@ -90,6 +90,7 @@
         <file alias="stream">pixmaps/types/type_stream.png</file>
         <file alias="node">pixmaps/types/type_node.png</file>
         <file alias="playlist">pixmaps/types/type_playlist.png</file>
+        <file alias="cloud">pixmaps/types/cloud.png</file>
     </qresource>
     <qresource prefix="/">
         <file alias="down_arrow">pixmaps/arrow_down_dark.png</file>
-- 
2.9.3



More information about the vlc-devel mailing list