diff options
author | Kirill Volinsky <mataes2007@gmail.com> | 2014-02-19 13:33:46 +0000 |
---|---|---|
committer | Kirill Volinsky <mataes2007@gmail.com> | 2014-02-19 13:33:46 +0000 |
commit | 36df84a13018c6c26e7cd1bb8e093dc54393aed7 (patch) | |
tree | be220c6dd21741370af430e066486143a4cc747f /plugins/Dropbox/src/dropbox_services.cpp | |
parent | a8934644810474ad6f367759ee0ea14da12909de (diff) |
folder rename
git-svn-id: http://svn.miranda-ng.org/main/trunk@8179 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'plugins/Dropbox/src/dropbox_services.cpp')
-rw-r--r-- | plugins/Dropbox/src/dropbox_services.cpp | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/plugins/Dropbox/src/dropbox_services.cpp b/plugins/Dropbox/src/dropbox_services.cpp new file mode 100644 index 0000000000..0524cff1c7 --- /dev/null +++ b/plugins/Dropbox/src/dropbox_services.cpp @@ -0,0 +1,82 @@ +#include "dropbox.h"
+
+INT_PTR CDropbox::GetCaps(WPARAM wParam, LPARAM lParam)
+{
+ switch(wParam)
+ {
+ case PFLAGNUM_1:
+ return PF1_IM | PF1_FILESEND | PF1_AUTHREQ;
+ case PFLAGNUM_2:
+ return PF2_ONLINE;
+ case PFLAGNUM_4:
+ return PF4_FORCEAUTH;
+ case PFLAG_UNIQUEIDTEXT:
+ return (INT_PTR)MODULE " ID";
+ case PFLAG_UNIQUEIDSETTING:
+ return (DWORD_PTR)"uid";
+ }
+
+ return 0;
+}
+
+INT_PTR CDropbox::SendFile(WPARAM wParam, LPARAM lParam)
+{
+ CCSDATA *pccsd = (CCSDATA*)lParam;
+
+ FileTransferParam *ftp = new FileTransferParam();
+ ftp->pfts.flags = PFTS_SENDING | PFTS_UTF;
+ ftp->pfts.hContact = pccsd->hContact;
+
+ char **files = (char**)pccsd->lParam;
+
+ for (int i = 0; files[i]; i++)
+ {
+ if (PathIsDirectoryA(files[i]))
+ continue;
+ ftp->pfts.totalFiles++;
+ }
+
+ ftp->pfts.pszFiles = new char*[ftp->pfts.totalFiles + 1];
+ ftp->pfts.pszFiles[ftp->pfts.totalFiles] = NULL;
+ for (int i = 0, j = 0; files[i]; i++)
+ {
+ if (PathIsDirectoryA(files[i]))
+ continue;
+
+ ftp->pfts.pszFiles[j] = mir_strdup(files[i]);
+
+ FILE *file = fopen(files[j], "rb");
+ if (file != NULL)
+ {
+ fseek(file, 0, SEEK_END);
+ ftp->pfts.totalBytes += ftell(file);
+ fseek(file, 0, SEEK_SET);
+ fclose(file);
+ }
+
+ j++;
+ }
+ ULONG fileId = InterlockedIncrement(&g_dropbox->hFileProcess);
+ ftp->hProcess = (HANDLE)fileId;
+
+ mir_forkthread(CDropbox::SendFileAsync, ftp);
+
+ return fileId;
+}
+
+INT_PTR CDropbox::SendMessage( WPARAM wParam, LPARAM lParam)
+{
+ return 0;
+}
+
+INT_PTR CDropbox::RequeriedApiAccess(WPARAM wParam, LPARAM lParam)
+{
+ int result = MessageBox(NULL, TranslateT("Are you sure you want to requeried access?"), TranslateT("Requeried access"), MB_YESNO | MB_ICONQUESTION);
+ if (result == IDYES && g_dropbox->HasAccessToken())
+ {
+ g_dropbox->DestroyAcceessToken();
+ g_dropbox->RequestAcceessToken();
+ }
+
+ return 0;
+}
\ No newline at end of file |