summaryrefslogtreecommitdiff
path: root/gtk2_ardour/soundcloud_export_selector.h
diff options
context:
space:
mode:
authorColin Fletcher <colin.m.fletcher@googlemail.com>2013-10-07 14:44:35 +0100
committerColin Fletcher <colin.m.fletcher@googlemail.com>2013-10-07 14:59:40 +0100
commita3465ff5d3b830e79a0e383b3c85df0c8cc3af9e (patch)
tree1872ca71bce4a93eb1433d7d6d4637df843a844b /gtk2_ardour/soundcloud_export_selector.h
parent15b4ebbb074ce679c5ea7fb44061934fe572cad5 (diff)
Working Soundcloud export
Adds an 'upload' property to ExportFormatSpecification, to indicate that files exported with that format specfication should be uploaded to Soundcloud, and makes it editable in the export format dialogue. Adds fields for the Soundcloud username & password to the file format selection page, as well as an option to make the uploaded files public and open them in the system browser. Possible improvements not yet implemented: - make upload happen in its own thread - cosmetic tidying up of dialogue control layout - remember username & password
Diffstat (limited to 'gtk2_ardour/soundcloud_export_selector.h')
-rw-r--r--gtk2_ardour/soundcloud_export_selector.h41
1 files changed, 41 insertions, 0 deletions
diff --git a/gtk2_ardour/soundcloud_export_selector.h b/gtk2_ardour/soundcloud_export_selector.h
new file mode 100644
index 0000000000..7962ba8b06
--- /dev/null
+++ b/gtk2_ardour/soundcloud_export_selector.h
@@ -0,0 +1,41 @@
+/*soundcloud_export_selector.h***********************************************
+
+ Adapted for Ardour by Ben Loftis, March 2012
+
+*****************************************************************************/
+
+#include <string>
+#include <fstream>
+#include <iostream>
+#include <stdio.h>
+#include <cstring>
+#include <string>
+#include <sstream>
+#include <vector>
+#include <gtkmm.h>
+#include <gtkmm/progressbar.h>
+
+class SoundcloudExportSelector : public Gtk::VBox, public ARDOUR::SessionHandlePtr
+{
+ public:
+ SoundcloudExportSelector ();
+ int do_progress_callback (double ultotal, double ulnow, const std::string &filename);
+ std::string username () { return soundcloud_username_entry.get_text (); }
+ std::string password () { return soundcloud_password_entry.get_text (); }
+ bool upload_public () { return soundcloud_public_checkbox.get_active (); }
+ bool upload_open () { return soundcloud_open_checkbox.get_active (); }
+ void cancel () { soundcloud_cancel = true; }
+
+ private:
+ Gtk::Table sc_table;
+ Gtk::CheckButton soundcloud_public_checkbox;
+ Gtk::Label soundcloud_username_label;
+ Gtk::Entry soundcloud_username_entry;
+ Gtk::Label soundcloud_password_label;
+ Gtk::Entry soundcloud_password_entry;
+ Gtk::CheckButton soundcloud_open_checkbox;
+ bool soundcloud_cancel;
+ Gtk::ProgressBar progress_bar;
+
+};
+