IF( APPLE )
list(APPEND client_SRCS cocoainitializer_mac.mm)
list(APPEND client_SRCS settingsdialogmac.cpp)
+ list(REMOVE_ITEM client_SRCS settingsdialog.cpp)
list(APPEND client_SRCS socketapisocket_mac.mm)
list(APPEND client_SRCS systray.mm)
namespace OCC {
+#include "settingsdialogcommon.cpp"
+
static QIcon circleMask(const QImage &avatar)
{
int dim = avatar.width();
if (!brandingSingleAccount) {
accountAction->setToolTip(s->account()->displayName());
- accountAction->setIconText(shortDisplayNameForSettings(s->account().data(), height * buttonSizeRatio));
+ accountAction->setIconText(SettingsDialogCommon::shortDisplayNameForSettings(s->account().data(), height * buttonSizeRatio));
}
_toolBar->insertAction(_toolBar->actions().at(0), accountAction);
auto accountSettings = new AccountSettings(s, this);
QString displayName = account->displayName();
action->setText(displayName);
auto height = _toolBar->sizeHint().height();
- action->setIconText(shortDisplayNameForSettings(account, height * buttonSizeRatio));
+ action->setIconText(SettingsDialogCommon::shortDisplayNameForSettings(account, height * buttonSizeRatio));
}
}
}
-QString SettingsDialog::shortDisplayNameForSettings(Account* account, int width) const
-{
- QString user = account->davDisplayName();
- if (user.isEmpty()) {
- user = account->credentials()->user();
- }
- QString host = account->url().host();
- int port = account->url().port();
- if (port > 0 && port != 80 && port != 443) {
- host.append(QLatin1Char(':'));
- host.append(QString::number(port));
- }
- if (width > 0) {
- QFont f;
- QFontMetrics fm(f);
- host = fm.elidedText(host, Qt::ElideMiddle, width);
- user = fm.elidedText(user, Qt::ElideRight, width);
- }
- return user + QLatin1String("\n") + host;
-}
-
void SettingsDialog::accountRemoved(AccountState *s)
{
for (auto it = _actionGroupWidgets.begin(); it != _actionGroupWidgets.end(); ++it) {
QAction *createColorAwareAction(const QString &iconName, const QString &fileName);
QAction *createActionWithIcon(const QIcon &icon, const QString &text, const QString &iconPath = QString());
- /** display name with two lines that is displayed in the settings
- * If width is bigger than 0, the string will be ellided so it does not exceed that width
- */
- QString shortDisplayNameForSettings(Account* account, int width = 0) const;
-
Ui::SettingsDialog *const _ui;
QActionGroup *_actionGroup;
--- /dev/null
+namespace SettingsDialogCommon
+{
+
+/** display name with two lines that is displayed in the settings
+ * If width is bigger than 0, the string will be ellided so it does not exceed that width
+ */
+QString shortDisplayNameForSettings(Account* account, int width)
+{
+ QString user = account->davDisplayName();
+ if (user.isEmpty()) {
+ user = account->credentials()->user();
+ }
+ QString host = account->url().host();
+ int port = account->url().port();
+ if (port > 0 && port != 80 && port != 443) {
+ host.append(QLatin1Char(':'));
+ host.append(QString::number(port));
+ }
+ if (width > 0) {
+ QFont f;
+ QFontMetrics fm(f);
+ host = fm.elidedText(host, Qt::ElideMiddle, width);
+ user = fm.elidedText(user, Qt::ElideRight, width);
+ }
+ return user + QLatin1String("\n") + host;
+}
+
+}
\ No newline at end of file
namespace OCC {
+#include "settingsdialogcommon.cpp"
+
+
// Duplicate in settingsdialog.cpp
static QIcon circleMask(const QImage &avatar)
{
QIcon accountIcon = MacStandardIcon::icon(MacStandardIcon::UserAccounts);
auto accountSettings = new AccountSettings(s, this);
- QString displayName = Theme::instance()->multiAccount() ? s->shortDisplayNameForSettings() : tr("Account");
+ QString displayName = Theme::instance()->multiAccount() ? SettingsDialogCommon::shortDisplayNameForSettings(s->account().data(), 0) : tr("Account");
insertPreferencesPanel(0, accountIcon, displayName, accountSettings);