コード例 #1
0
SessionModel::SessionModel(SessionManager *manager, QObject *parent)
    : QAbstractListModel(parent), m_manager(manager)
{
    QHash<int, QByteArray> roleNames;
    roleNames[Qt::DisplayRole] = "sessionName";
    roleNames[DefaultSessionRole] = "defaultSession";
    roleNames[ActiveSessionRole] = "activeSession";
    roleNames[LastSessionRole] = "lastSession";
    setRoleNames(roleNames);
    connect(manager, SIGNAL(sessionLoaded()), SLOT(resetSessions()));
}
コード例 #2
0
ファイル: MasterWindow.cpp プロジェクト: ppodhajski/Tide
MasterWindow::MasterWindow(ScenePtr scene_, OptionsPtr options,
                           ScreenLockPtr lock, Configuration& config)
    : QMainWindow()
    , _scene{scene_}
    , _options(options)
    , _backgroundWidget(new BackgroundWidget(config, this))
#if TIDE_ENABLE_WEBBROWSER_SUPPORT
    , _webbrowserWidget(new WebbrowserWidget(config, this))
#endif
    , _contentFolder(config.folders.contents)
    , _sessionFolder(config.folders.sessions)
    , _tmpDir(config.folders.tmp)
    , _uploadDir(config.folders.upload)
{
    _backgroundWidget->setModal(true);

#if TIDE_ENABLE_WEBBROWSER_SUPPORT
    connect(_webbrowserWidget, &WebbrowserWidget::openWebBrowser,
            [this](QString url, QSize size, ushort debugPort) {
                emit openWebBrowser(_getActiveSceneIndex(), url, size,
                                    QPointF(), debugPort);
            });
#endif

    connect(&_loadSessionOp, &QFutureWatcher<ScenePtr>::finished, [this]() {
        if (auto scene = _loadSessionOp.result())
            emit sessionLoaded(scene);
        else
            QMessageBox::warning(this, "Error", "Could not load session file.",
                                 QMessageBox::Ok, QMessageBox::Ok);
    });

    connect(&_saveSessionOp, &QFutureWatcher<bool>::finished, [this]() {
        if (!_saveSessionOp.result())
            QMessageBox::warning(this, "Error", "Could not save session file.",
                                 QMessageBox::Ok, QMessageBox::Ok);
    });

    resize(DEFAULT_WINDOW_SIZE);
    setAcceptDrops(true);

    _setupMasterWindowUI();
    _addSurfacesTabViews(config, lock);

    show();
}
コード例 #3
0
bool TaskListPlugin::initialize(const QStringList &arguments, QString *errorMessage)
{
    Q_UNUSED(arguments)

    //: Category under which tasklist tasks are listed in Issues view
    TaskHub::addCategory(Constants::TASKLISTTASK_ID, tr("My Tasks"));

    if (!Core::MimeDatabase::addMimeTypes(QLatin1String(":tasklist/TaskList.mimetypes.xml"), errorMessage))
        return false;

    m_fileFactory = new TaskFileFactory(this);
    addAutoReleasedObject(m_fileFactory);
    addAutoReleasedObject(new StopMonitoringHandler);

    connect(SessionManager::instance(), SIGNAL(sessionLoaded(QString)),
            this, SLOT(loadDataFromSession()));

    return true;
}
コード例 #4
0
SessionModel::SessionModel(QObject *parent)
    : QAbstractListModel(parent)
{
    connect(SessionManager::instance(), SIGNAL(sessionLoaded(QString)), SLOT(resetSessions()));
}