void ChannelRenderArea::setZoomFactor(float z) { QString str; zoomFactor = z; emit(zoomFactorChanged(zoomFactor)); emit(zoomFactorChanged(str.sprintf("%f", zoomFactor))); }
void SinglePhotoPreviewLayout::setZoomFactor(double z, SetZoomFlags flags) { if (!d->item || !d->view) { return; } if (flags & SnapZoomFactor) { z = d->zoomSettings()->snappedZoomFactor(z, d->frameSize()); } d->isFitToWindow = false; d->previousZoom = d->zoomSettings()->zoomFactor(); d->zoomSettings()->setZoomFactor(z); d->item->sizeHasChanged(); updateLayout(); d->item->update(); emit fitToWindowToggled(d->isFitToWindow); emit zoomFactorChanged(d->zoomSettings()->zoomFactor()); if (flags & CenterView) { d->view->centerOn(d->view->scene()->sceneRect().width() / 2.0, d->view->scene()->sceneRect().height() / 2.0); } }
void QGraphicsWebView::setZoomFactor(qreal factor) { if (factor == page()->mainFrame()->zoomFactor()) return; page()->mainFrame()->setZoomFactor(factor); emit zoomFactorChanged(); }
void MainWindow::createStatusBar() { locationLabel = new QLabel("0, 0"); locationLabel->setAlignment(Qt::AlignHCenter); locationLabel->setMinimumSize(locationLabel->sizeHint()); zoomFactorLabel = new QLabel(tr("Zoom factor") + ": 1.0"); statusBar()->addWidget(locationLabel); statusBar()->addWidget(zoomFactorLabel); connect(painter, SIGNAL(cursorChanged()), this, SLOT(updateStatusBar())); connect(painter, SIGNAL(zoomFactorChanged()), this, SLOT(updateStatusBar())); updateStatusBar(); }
void SinglePhotoPreviewLayout::fitToWindow() { if (!d->item || !d->view) { return; } d->isFitToWindow = true; d->previousZoom = d->zoomSettings()->zoomFactor(); d->zoomSettings()->fitToSize(d->frameSize(), ImageZoomSettings::OnlyScaleDown); d->item->sizeHasChanged(); updateLayout(); d->item->update(); emit fitToWindowToggled(d->isFitToWindow); emit zoomFactorChanged(d->zoomSettings()->zoomFactor()); }
//----------------------------------------------------------------------------- void ImgChildWnd::zoomActionUpdate(float fZoomFactor) { if (fZoomFactor >= 8.0f) { emit zoomInActionAvailable(false); } else if (fZoomFactor <= 0.125f) { emit zoomOutActionAvailable(false); } else { emit zoomInActionAvailable(true); emit zoomOutActionAvailable(true); emit zoomNormalActionAvailable(true); } emit zoomFactorChanged(fZoomFactor); }
void MapperGLCanvasToolbar::createZoomToolsLayout() { // Create zoom tool bar setObjectName("zoom-toolbox"); // Create label for title _titleLabel = new QLabel; // Create horizontale layout for widgets QHBoxLayout* toolbarLayout = new QHBoxLayout; toolbarLayout->setContentsMargins(0, 3, 15, 3); toolbarLayout->setSpacing(16); // Create buttons // Zoom In button _zoomInButton = new QToolButton; _zoomInButton->setIcon(QIcon(":/zoom-in")); _zoomInButton->setIconSize(QSize(MM::ZOOM_TOOLBAR_ICON_SIZE, MM::ZOOM_TOOLBAR_ICON_SIZE)); _zoomInButton->setToolTip(tr("Enlarge the shape")); _zoomInButton->setFixedSize(QSize(MM::ZOOM_TOOLBAR_BUTTON_SIZE, MM::ZOOM_TOOLBAR_BUTTON_SIZE)); _zoomInButton->setObjectName("zoom-in"); connect(_zoomInButton, SIGNAL(clicked()), _canvas, SLOT(increaseZoomLevel())); // Zoom Out button _zoomOutButton = new QToolButton; _zoomOutButton->setIcon(QIcon(":/zoom-out")); _zoomOutButton->setIconSize(QSize(MM::ZOOM_TOOLBAR_ICON_SIZE, MM::ZOOM_TOOLBAR_ICON_SIZE)); _zoomOutButton->setToolTip(tr("Shrink the shape")); _zoomOutButton->setFixedSize(QSize(MM::ZOOM_TOOLBAR_BUTTON_SIZE, MM::ZOOM_TOOLBAR_BUTTON_SIZE)); _zoomOutButton->setObjectName("zoom-out"); connect(_zoomOutButton, SIGNAL(clicked()), _canvas, SLOT(decreaseZoomLevel())); // Reset to normal size button. _resetZoomButton = new QToolButton; _resetZoomButton->setIcon(QIcon(":/reset-zoom")); _resetZoomButton->setIconSize(QSize(MM::ZOOM_TOOLBAR_ICON_SIZE, MM::ZOOM_TOOLBAR_ICON_SIZE)); _resetZoomButton->setToolTip(tr("Reset the shape to the normal size")); _resetZoomButton->setFixedSize(QSize(MM::ZOOM_TOOLBAR_BUTTON_SIZE, MM::ZOOM_TOOLBAR_BUTTON_SIZE)); _resetZoomButton->setObjectName("reset-zoom"); connect(_resetZoomButton, SIGNAL(clicked()), _canvas, SLOT(resetZoomLevel())); // Fit to view button _fitToViewButton = new QToolButton; _fitToViewButton->setIcon(QIcon(":/zoom-fit")); _fitToViewButton->setIconSize(QSize(MM::ZOOM_TOOLBAR_ICON_SIZE, MM::ZOOM_TOOLBAR_ICON_SIZE)); _fitToViewButton->setToolTip(tr("Fit the shape to content view")); _fitToViewButton->setFixedSize(QSize(MM::ZOOM_TOOLBAR_BUTTON_SIZE, MM::ZOOM_TOOLBAR_BUTTON_SIZE)); _fitToViewButton->setObjectName("zoom-fit"); connect(_fitToViewButton, SIGNAL(clicked()), _canvas, SLOT(fitShapeToView())); // Create the dropdowm menu _dropdownMenu = new QComboBox; // make some settings _dropdownMenu->setFixedHeight(MM::ZOOM_TOOLBAR_BUTTON_SIZE); _dropdownMenu->setObjectName("dropdown-menu"); // Create if empty or update list updateDropdownMenu(); // And listen connect(_dropdownMenu, SIGNAL(activated(QString)), _canvas, SLOT(setZoomFromMenu(QString))); // Add widgets into layout toolbarLayout->addWidget(_titleLabel, 0, Qt::AlignVCenter); toolbarLayout->addWidget(_zoomInButton, 0, Qt::AlignVCenter); toolbarLayout->addWidget(_zoomOutButton, 0, Qt::AlignVCenter); toolbarLayout->addWidget(_resetZoomButton, 0, Qt::AlignVCenter); toolbarLayout->addWidget(_fitToViewButton, 0, Qt::AlignVCenter); toolbarLayout->addSpacing(25); toolbarLayout->addWidget(_dropdownMenu, 0, Qt::AlignVCenter); // Insert layout in widget setLayout(toolbarLayout); connect(_canvas, SIGNAL(zoomFactorChanged(qreal)), this, SLOT(updateDropdownMenu(qreal))); }
void MainWindow::setupDockWidgets(void) { int i; QString s; QColor color; /* TODO: Do not create new dockWidgets if we already have them. */ /* TODO: Kill any old dockWidgets before creating new ones? */ for (i = 0; i < getNumChannels(); ++i) { widgets[i] = new QWidget(this); gridLayouts[i] = new QGridLayout(widgets[i]); lineEdits[i] = new QLineEdit(this); lineEdits[i]->setMaximumWidth(150); lineEdits[i]->setText(s.sprintf("Channel %d", i)); /* Use random colors for the channel names for now. */ QPalette p = QPalette(QApplication::palette()); color = QColor(2 + qrand() * 16); p.setColor(QPalette::Base, color); lineEdits[i]->setPalette(p); gridLayouts[i]->addWidget(lineEdits[i], i, 1); channelRenderAreas[i] = new ChannelRenderArea(this); channelRenderAreas[i]->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::MinimumExpanding); channelRenderAreas[i]->setChannelNumber(i); channelRenderAreas[i]->setChannelColor(color); gridLayouts[i]->addWidget(channelRenderAreas[i], i, 2); dockWidgets[i] = new QDockWidget(this); dockWidgets[i]->setAllowedAreas(Qt::RightDockWidgetArea); dockWidgets[i]->setFeatures( QDockWidget::DockWidgetClosable | QDockWidget::DockWidgetMovable | QDockWidget::DockWidgetFloatable | QDockWidget::DockWidgetVerticalTitleBar); dockWidgets[i]->setWidget(widgets[i]); addDockWidget(Qt::RightDockWidgetArea, dockWidgets[i]); /* Update labels upon changes. */ QObject::connect(channelRenderAreas[i], SIGNAL(sampleStartChanged(QString)), ui->labelSampleStart, SLOT(setText(QString))); QObject::connect(channelRenderAreas[i], SIGNAL(sampleEndChanged(QString)), ui->labelSampleEnd, SLOT(setText(QString))); QObject::connect(channelRenderAreas[i], SIGNAL(zoomFactorChanged(QString)), ui->labelZoomFactor, SLOT(setText(QString))); /* Redraw channels upon changes. */ QObject::connect(channelRenderAreas[i], SIGNAL(sampleStartChanged(QString)), channelRenderAreas[i], SLOT(generatePainterPath())); QObject::connect(channelRenderAreas[i], SIGNAL(sampleEndChanged(QString)), channelRenderAreas[i], SLOT(generatePainterPath())); QObject::connect(channelRenderAreas[i], SIGNAL(zoomFactorChanged(QString)), channelRenderAreas[i], SLOT(generatePainterPath())); // dockWidgets[i]->show(); #if 0 /* If the user renames a channel, adapt the dock title. */ QObject::connect(lineEdits[i], SIGNAL(textChanged(QString)), dockWidgets[i], SLOT(setWindowTitle(QString))); #endif } }
void MyGLWidget::wheelEvent ( QWheelEvent * event ) { zoom += event->delta() / 30 ; emit zoomFactorChanged(zoom); glDraw() ; // !Deprecated }