#include "owncloudgui.h"
#include "UserModel.h"
+#include <QDesktopServices>
#include <QIcon>
namespace OCC {
_isCurrentUser = isCurrent;
}
+Folder* User::getFolder()
+{
+ foreach (Folder *folder, FolderMan::instance()->map()) {
+ if (folder->accountState() == _account.data()) {
+ return folder;
+ }
+ }
+}
+
+void User::openLocalFolder()
+{
+ QDesktopServices::openUrl(this->getFolder()->path());
+}
+
QString User::name() const
{
// If davDisplayName is empty (can be several reasons, simplest is missing login at startup), fall back to username
endInsertRows();
}
+Q_INVOKABLE void UserModel::openCurrentAccountLocalFolder()
+{
+ _users[_currentUserId].openLocalFolder();
+}
+
Q_INVOKABLE void UserModel::switchCurrentUser(const int &id)
{
_users[_currentUserId].setCurrentUser(false);
#include <QQuickImageProvider>
#include "accountmanager.h"
+#include "folderman.h"
namespace OCC {
bool isConnected() const;
bool isCurrentUser() const;
void setCurrentUser(const bool &isCurrent);
- void login();
- void logout();
+ Folder* getFolder();
+ void openLocalFolder();
QString name() const;
QString server() const;
QImage avatar() const;
QImage avatarById(const int &id);
+ Q_INVOKABLE void openCurrentAccountLocalFolder();
Q_INVOKABLE QImage currentUserAvatar();
Q_INVOKABLE int numUsers();
Q_INVOKABLE bool isCurrentUserConnected();
};
signals:
- Q_INVOKABLE void openLocalFolder();
Q_INVOKABLE void login();
Q_INVOKABLE void logout();
Q_INVOKABLE void addAccount();
Layout.alignment: Qt.AlignLeft\r
verticalAlignment: Qt.AlignCenter\r
Layout.margins: 12\r
- //source: "../../theme/white/caret-down.svg"\r
source: "qrc:///client/theme/white/caret-down.svg"\r
}\r
}\r
Layout.preferredHeight: (trayWindowHeaderBackground.height)\r
flat: true\r
\r
- //icon.source: "../../theme/white/folder.svg"\r
icon.source: "qrc:///client/theme/white/folder.svg"\r
icon.color: "transparent"\r
\r
hoverEnabled: true\r
onClicked:\r
{\r
+ userModelBackend.openCurrentAccountLocalFolder();\r
}\r
}\r
\r