/* * Copyright (C) by Christian Kamm * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License * for more details. */ #ifndef GUIUTILITY_H #define GUIUTILITY_H #include #include #include #include #include "common/pinstate.h" namespace OCC { Q_DECLARE_LOGGING_CATEGORY(lcGuiUtility) namespace Utility { /** Open an url in the browser. * * If launching the browser fails, display a message. */ bool openBrowser(const QUrl &url, QWidget *errorWidgetParent); /** Start composing a new email message. * * If launching the email program fails, display a message. */ bool openEmailComposer(const QString &subject, const QString &body, QWidget *errorWidgetParent); /** Returns a translated string indicating the current availability. * * This will be used in context menus to describe the current state. */ QString vfsCurrentAvailabilityText(VfsItemAvailability availability); /** Translated text for "making items always available locally" */ QString vfsPinActionText(); /** Translated text for "free up local space" (and unpinning the item) */ QString vfsFreeSpaceActionText(); QIcon getCoreIcon(const QString &icon_name); void tweakUIStyle(); void startShellIntegration(); QString socketApiSocketPath(); #ifdef Q_OS_WIN // utility thread that takes care of proper Windows logout handling void startShutdownWatcher(); #endif } // namespace Utility } // namespace OCC #endif