Exemplo n.º 1
0
static Qt::ToolBarArea toolBarArea(const DockButton *button)
{
    Q_ASSERT(button);
    auto bar = qobject_cast<QToolBar *>(button->parent());
    Q_ASSERT(bar);
    auto win = qobject_cast<QMainWindow *>(bar->parentWidget());
    Q_ASSERT(win);
    return win->toolBarArea(bar);
}
Exemplo n.º 2
0
static Qt::Orientation toolBarOrientation(const DockButton *button)
{
    switch (toolBarArea(button)) {
    case Qt::LeftToolBarArea:
    case Qt::RightToolBarArea:
        return Qt::Vertical;
    default:
        return Qt::Horizontal;
    }
}
Exemplo n.º 3
0
void MainWindow::saveSettings()
{
    taskWrHouse->saveCurrentState();
    domainsStateMonitor->saveCurrentState();
    settings.setValue("Geometry", saveGeometry());
    settings.setValue("State", saveState());
    settings.setValue("ToolBarArea", toolBarArea(toolBar));
    settings.setValue("Visible", this->isVisible());
    settings.setValue("WaitAtClose", waitAtClose);
    settings.beginGroup("LogDock");
    settings.setValue("DockArea", dockWidgetArea(logDock));
    settings.setValue("Visible", logDock->isVisible());
    settings.setValue("Floating", logDock->isFloating());
    settings.setValue("Geometry", logDock->saveGeometry());
    settings.endGroup();
    settings.beginGroup("DomainDock");
    settings.setValue("DockArea", dockWidgetArea(domainDock));
    settings.setValue("Visible", domainDock->isVisible());
    settings.setValue("Floating", domainDock->isFloating());
    settings.setValue("Geometry", domainDock->saveGeometry());
    settings.endGroup();
    settings.beginGroup("NetworkDock");
    settings.setValue("DockArea", dockWidgetArea(networkDock));
    settings.setValue("Visible", networkDock->isVisible());
    settings.setValue("Floating", networkDock->isFloating());
    settings.setValue("Geometry", networkDock->saveGeometry());
    settings.endGroup();
    settings.beginGroup("StoragePoolDock");
    settings.setValue("DockArea", dockWidgetArea(storagePoolDock));
    settings.setValue("Visible", storagePoolDock->isVisible());
    settings.setValue("Floating", storagePoolDock->isFloating());
    settings.setValue("Geometry", storagePoolDock->saveGeometry());
    settings.endGroup();
    settings.beginGroup("SecretDock");
    settings.setValue("DockArea", dockWidgetArea(secretDock));
    settings.setValue("Visible", secretDock->isVisible());
    settings.setValue("Floating", secretDock->isFloating());
    settings.setValue("Geometry", secretDock->saveGeometry());
    settings.endGroup();
    settings.beginGroup("IfaceDock");
    settings.setValue("DockArea", dockWidgetArea(secretDock));
    settings.setValue("Visible", secretDock->isVisible());
    settings.setValue("Floating", secretDock->isFloating());
    settings.setValue("Geometry", secretDock->saveGeometry());
    settings.endGroup();
    settings.beginGroup("ConnectListColumns");
    settings.setValue("column0", connListWidget->columnWidth(0));
    settings.setValue("column1", connListWidget->columnWidth(1));
    settings.setValue("column2", connListWidget->columnWidth(2));
    settings.endGroup();
    settings.sync();
}
Exemplo n.º 4
0
void MainWindow::saveSettings()
{
    //much more clear than loadSettings(), don't you think?
    settings->setWindowSize(this->size());
    settings->setRecentFilesList(recentFilesPath);
    settings->setShowMenuBar(showMenuBarAct->isChecked());
    settings->setTBArea(toolBarArea(mainToolBar));
    settings->setLastDirUsed(lastDirUsed);
    /*settings->setCreateNewShortCuts(false);
    QStringList a, b;
    for(int i=0; i<actionsList.size(); i++){
        if(!actionsList.at(i)->shortcut().isEmpty()){
            a<<actionsList.at(i)->text().remove('&');
            b<<actionsList.at(i)->shortcut();
        }
    }
    settings->setShortCuts(a, b);*/
    settings->saveSettings();
}
Exemplo n.º 5
0
bool MainWindow::event(QEvent *event)
{
	bool retVal = QMainWindow::event(event); // this has to be done before calling setVisible()

	// FIXME we depend on QEvent::HoverMove (instead of QEvent::MouseMove)
	// but the latter depends on mouse tracking being enabled on this widget
	// and all its children (especially the video widget) ...

	if ((event->type() == QEvent::HoverMove) && autoHideControlBar) {
		int y = reinterpret_cast<QHoverEvent *> (event)->pos().y();

		if ((y < 0) || (y >= height())) {
			// QHoverEvent sometimes reports quite strange coordinates - ignore them
			return retVal;
		}

		cursorHideTimer->stop();
		unsetCursor();

		switch (toolBarArea(controlBar)) {
		case Qt::TopToolBarArea:
			controlBar->setVisible(y < 60);
			break;
		case Qt::BottomToolBarArea:
			controlBar->setVisible(y >= (height() - 60));
			break;
		default:
			break;
		}

		if (controlBar->isHidden()) {
			cursorHideTimer->start();
		}
	}

	return retVal;
}
Exemplo n.º 6
0
void DockButton::paintEvent(QPaintEvent* event)
{
    Q_UNUSED(event);
    QStylePainter p(this);

    QStyleOptionToolButton opt;
    initStyleOption(&opt);
    if (toolBarOrientation(this) == Qt::Vertical)
    {
        QSize size = opt.rect.size();
        size.transpose();
        opt.rect.setSize(size);

        if (toolBarArea(this) == Qt::RightToolBarArea) {
            p.rotate(90);
            p.translate(0, -width());
        } else {
            p.rotate(-90);
            p.translate(-height(), 0);
        }
    }

    p.drawComplexControl(QStyle::CC_ToolButton, opt);
}
Exemplo n.º 7
0
Qt::ToolBarArea MainWidget::getToolBarArea()
{
    if (debug) qDebug() << PDEBUG;

    return toolBarArea(ui->toolBar);
}