Skip to content

Commit

Permalink
support private share in cloud file browser
Browse files Browse the repository at this point in the history
  • Loading branch information
lins05 committed Dec 2, 2015
1 parent 173a6ff commit a54c5a8
Show file tree
Hide file tree
Showing 16 changed files with 2,017 additions and 186 deletions.
4 changes: 4 additions & 0 deletions .clang-format
Expand Up @@ -34,6 +34,10 @@ AccessModifierOffset: -4
#
AlignTrailingComments: false
AllowShortFunctionsOnASingleLine: false
AllowShortBlocksOnASingleLine: false
AllowShortIfStatementsOnASingleLine: false
AllowShortLoopsOnASingleLine: false
AllowShortCaseLabelsOnASingleLine: false

# Good:
#
Expand Down
3 changes: 3 additions & 0 deletions CMakeLists.txt
Expand Up @@ -213,6 +213,7 @@ SET(moc_headers
src/ui/init-vdrive-dialog.h
src/ui/uninstall-helper-dialog.h
src/ui/ssl-confirm-dialog.h
src/ui/private-share-dialog.h
src/ui/account-view.h
src/ui/seafile-tab-widget.h
src/ui/tab-view.h
Expand Down Expand Up @@ -266,6 +267,7 @@ SET(ui_files
ui/init-vdrive-dialog.ui
ui/uninstall-helper-dialog.ui
ui/ssl-confirm-dialog.ui
ui/private-share-dialog.ui
ui/account-view.ui
ui/set-repo-password-dialog.ui
${platform_specific_ui_files}
Expand Down Expand Up @@ -400,6 +402,7 @@ SET(seafile_client_sources
src/ui/search-tab.cpp
src/ui/search-tab-items.cpp
src/ui/ssl-confirm-dialog.cpp
src/ui/private-share-dialog.cpp
src/ui/proxy-style.cpp
src/ui/account-view.cpp
src/ui/seafile-tab-widget.cpp
Expand Down
4 changes: 4 additions & 0 deletions qt-linux.css
@@ -0,0 +1,4 @@

PrivateShareDialog QFrame#mFrame {
border: 0;
}
16 changes: 16 additions & 0 deletions qt.css
Expand Up @@ -597,3 +597,19 @@ QProgressBar#mStorageUsage {
margin-right: 0;
font-size: 11px;
}

PrivateShareDialog {
min-width: 550px;
min-height: 200px;
}

SharedItemsTableView {
margin-top: 10px;
qproperty-focusPolicy: NoFocus;
}

SharedItemsTableView QHeaderView::section {
/* outline: 1px; */
font-size: 12px;
padding-top: 10px;
}
58 changes: 58 additions & 0 deletions src/api/contact-share-info.h
@@ -0,0 +1,58 @@
#ifndef SEAFILE_CLIENT_CONTACT_SHARE_INFO_H
#define SEAFILE_CLIENT_CONTACT_SHARE_INFO_H

#include <QMetaType>
#include <QString>

struct SeafileGroup {
int id;
QString name;
QString owner;
};

struct SeafileContact {
QString email;
QString nickname;
};

enum SharePermission {
READ_WRITE,
READ_ONLY,
};


enum ShareType {
SHARE_TO_USER,
SHARE_TO_GROUP,
};


inline SharePermission permissionfromString(const QString& s)
{
return s == "r" ? READ_ONLY : READ_WRITE;
}

inline ShareType shareTypeFromString(const QString& s)
{
return s == "group" ? SHARE_TO_GROUP : SHARE_TO_USER;
}

struct UserShareInfo {
SharePermission permission;
SeafileContact user;
};

struct GroupShareInfo {
SharePermission permission;
SeafileGroup group;
};

/**
* Register with QMetaType so we can wrap it with QVariant::fromValue
*/
Q_DECLARE_METATYPE(SeafileGroup)
Q_DECLARE_METATYPE(SeafileContact)
Q_DECLARE_METATYPE(UserShareInfo)
Q_DECLARE_METATYPE(GroupShareInfo)

#endif

0 comments on commit a54c5a8

Please sign in to comment.