Development/Tutorials/Collaboration/HotNewStuff/Upload: Difference between revisions
(Created page with '{{Template:I18n/Language Navigation Bar|Development/Tutorials/Collaboration/HotNewStuff/Upload}} {{TutorialBrowser| series=HotNewStuff| name=Get Hot New Stuff 3 - Uploa...') |
No edit summary |
||
(9 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{TutorialBrowser| | {{TutorialBrowser| | ||
series=[[../|HotNewStuff]]| | series=[[../|HotNewStuff]]| | ||
name=Get Hot New Stuff 3 - Upload| | name=Get Hot New Stuff 3 - Upload| | ||
pre=[[Development/Tutorials/Collaboration/HotNewStuff/ | pre=[[Development/Tutorials/Collaboration/HotNewStuff/Updates|Get Hot New Stuff 3 - Updates]]| | ||
reading=[http://api.kde.org/4.x-api/kdelibs-apidocs/knewstuff/html/classKNS3_1_1UploadDialog.html API Documentation] | |||
}} | }} | ||
== Overview == | === Overview === | ||
Adding an upload dialog to an application is straight forward. If you already have a download dialog, you just need to add a few lines to the .knsrc file and create the dialog. | |||
Uploading currently only works with openDesktop.org and other websites that implement the Open Collaboration Services API. | |||
==== The Code ==== | ==== The Code ==== | ||
<syntaxhighlight lang="cpp-qt"> | |||
#include <knewstuff3/uploaddialog.h> | |||
// create the dialog | |||
KNS3::UploadDialog dialog(parentWidget); | |||
// set it up to help the user fill it out | |||
// the file to be uploaded - this is important! | |||
dialog.setUploadFile("some_url_here"); | |||
// a suggested title, the user can still change it | |||
// don't set it if you can't make a reasonable suggestion | |||
dialog.setUploadName("A suggested title for the upload"); | |||
// a longer description, optional | |||
dialog.setDescription("This is a great file. It was created using foo."); | |||
// show the dialog as modal (you can also use show of course) | |||
dialog.exec(); | |||
</syntaxhighlight> | |||
==== The Configuration File (.knsrc) ==== | ==== The Configuration File (.knsrc) ==== | ||
In addition to the download version, you need to add UploadCategories, to set up where the contents can be uploaded to. | In addition to the download version, you need to add UploadCategories, to set up where the contents can be uploaded to. | ||
< | <syntaxhighlight lang="text"> | ||
[KNewStuff3] | [KNewStuff3] | ||
ProvidersUrl=http://download.kde.org/ocs/providers.xml | ProvidersUrl=http://download.kde.org/ocs/providers.xml | ||
UploadCategories=KDE Wallpaper 1920x1200,KDE Wallpaper 1600x1200 | UploadCategories=KDE Wallpaper 1920x1200,KDE Wallpaper 1600x1200 | ||
</ | </syntaxhighlight> | ||
==== Linking in CMakeLists.txt ==== | ==== Linking in CMakeLists.txt ==== | ||
To link against KNS3, just link against ''${KDE4_KNEWSTUFF3_LIBS}''. Example: | To link against KNS3, just link against ''${KDE4_KNEWSTUFF3_LIBS}''. Example: | ||
< | <syntaxhighlight lang="text"> | ||
target_link_libraries(ktexteditor_codesnippets_core | target_link_libraries(ktexteditor_codesnippets_core | ||
${KDE4_KDEUI_LIBS} ${KDE4_KTEXTEDITOR_LIBS} ${KDE4_KNEWSTUFF3_LIBS}) | ${KDE4_KDEUI_LIBS} ${KDE4_KTEXTEDITOR_LIBS} ${KDE4_KNEWSTUFF3_LIBS}) | ||
</ | </syntaxhighlight> |
Revision as of 15:42, 19 July 2012
Get Hot New Stuff 3 - Upload
Tutorial Series | HotNewStuff |
Previous | Get Hot New Stuff 3 - Updates |
What's Next | n/a |
Further Reading | API Documentation |
Overview
Adding an upload dialog to an application is straight forward. If you already have a download dialog, you just need to add a few lines to the .knsrc file and create the dialog. Uploading currently only works with openDesktop.org and other websites that implement the Open Collaboration Services API.
The Code
#include <knewstuff3/uploaddialog.h>
// create the dialog
KNS3::UploadDialog dialog(parentWidget);
// set it up to help the user fill it out
// the file to be uploaded - this is important!
dialog.setUploadFile("some_url_here");
// a suggested title, the user can still change it
// don't set it if you can't make a reasonable suggestion
dialog.setUploadName("A suggested title for the upload");
// a longer description, optional
dialog.setDescription("This is a great file. It was created using foo.");
// show the dialog as modal (you can also use show of course)
dialog.exec();
The Configuration File (.knsrc)
In addition to the download version, you need to add UploadCategories, to set up where the contents can be uploaded to.
[KNewStuff3]
ProvidersUrl=http://download.kde.org/ocs/providers.xml
UploadCategories=KDE Wallpaper 1920x1200,KDE Wallpaper 1600x1200
Linking in CMakeLists.txt
To link against KNS3, just link against ${KDE4_KNEWSTUFF3_LIBS}. Example:
target_link_libraries(ktexteditor_codesnippets_core
${KDE4_KDEUI_LIBS} ${KDE4_KTEXTEDITOR_LIBS} ${KDE4_KNEWSTUFF3_LIBS})