CASpreadsheetHandler::CASpreadsheetHandler (CADocumentController* documentController) : CAAbstractDocumentHandler (documentController) , d (new Private()) { d->findText = new Calligra::Sheets::Find(this); connect (d->findText, SIGNAL(updateCanvas()), SLOT(updateCanvas())); connect (d->findText, SIGNAL(matchFound(KoFindMatch)), SLOT(findMatchFound(KoFindMatch))); connect (d->findText, SIGNAL(noMatchFound()), SLOT(findNoMatchFound())); }
CAPresentationHandler::CAPresentationHandler (CADocumentController* documentController) : CAAbstractDocumentHandler (documentController) , d (new Private()) { QList<QTextDocument*> texts; d->findText = new KoFindText(this); connect(&d->slideshowTimer, SIGNAL(timeout()), SLOT(advanceSlideshow())); connect (d->findText, SIGNAL(updateCanvas()), SLOT(updateCanvas())); connect (d->findText, SIGNAL(matchFound(KoFindMatch)), SLOT(findMatchFound(KoFindMatch))); connect (d->findText, SIGNAL(noMatchFound()), SLOT(findNoMatchFound())); }
GMarSystem* MarNetworkCanvas::create(MarSystem* m, GWidget* p) { std::string t = m->getType(); GComposite* c=NULL; if (t=="Series") { c = new GSeries(m,p); // c->setStyleSheet("* {background: blue;color:red;}"); } else if (t=="Fanout") { c = new GFanout(m,p); } else if (t=="Parallel") { c = new GParallel(m,p); } else { return new GMarSystem(m,p); } std::vector<MarSystem*> cs = m->getChildren(); for(unsigned int i=0;i<cs.size();i++) { MarSystem* z = cs[i]; c->addMarSystem(create(z,c)); } connect(c, SIGNAL(resized()), this, SLOT(updateCanvas())); return c; }
void KisToolMultihand::slotSetAxesAngle(int angle) { //negative so axes rotates counter clockwise m_angle = -angle*M_PI/180; updateCanvas(); m_configGroup.writeEntry("axesAngle", angle); }
SceneWidget::SceneWidget(GLWidget *parent, ObjMesh *mesh) : QGLWidget(parent), m_timer(this), m_mesh(mesh) { mainWidget = parent; setMouseTracking(true); m_grayscale = 1; m_radius = 30; m_opacity = 1; m_mask = NULL; m_blendBuffer = NULL; m_blendBufferValid = false; m_mouseDown = false; m_brushDirColor = glm::vec3(0, 0, 0); m_brushDir = "left"; m_densityMapTexture = NULL; m_directionMapTexture = NULL; m_currentTexture = NULL; m_brushFalloffType = CONSTANT; updateBrushSettings(); m_timer.start(1000.0f / 60.); connect(&m_timer, SIGNAL(timeout()), this, SLOT(updateCanvas())); }
void KisToolMultihand::finishAxesSetup() { m_setupAxesFlag = false; customUI->moveOriginButton->setChecked(false); resetCursorStyle(); updateCanvas(); }
void CAPresentationHandler::findMatchFound (const KoFindMatch& match) { QTextCursor cursor = match.location().value<QTextCursor>(); updateCanvas(); canvas()->resourceManager()->setResource (KoText::CurrentTextAnchor, cursor.anchor()); canvas()->resourceManager()->setResource (KoText::CurrentTextPosition, cursor.position()); d->matchFound = true; }
GLWidget::GLWidget(QGLFormat format, HairInterface *hairInterface, QWidget *parent) : QGLWidget(format, parent), m_hairInterface(hairInterface), m_hairDensity(150), m_maxHairLength(.45), m_timer(this), m_increment(0), m_targetFPS(60.f) { m_highResMesh = NULL; m_lowResMesh = NULL; m_hairObject = NULL; m_testSimulation = NULL; m_sceneEditor = NULL; resetFromSceneEditorGrowthTexture = NULL; resetFromSceneEditorGroomingTexture = NULL; m_noiseTexture = new Texture(); // Shader programs m_programs = { m_hairProgram = new HairShaderProgram(), m_meshProgram = new MeshShaderProgram(), m_hairOpacityProgram = new HairOpacityShaderProgram(), m_whiteHairProgram = new WhiteHairShaderProgram(), m_whiteMeshProgram = new WhiteMeshShaderProgram(), m_hairDepthPeelProgram = new HairDepthPeelShaderProgram(), m_meshDepthPeelProgram = new MeshDepthPeelShaderProgram(), // TRANSFORM FEEDBACK m_TFhairProgram = new HairRenderShaderProgram(), m_TFwhiteHairProgram = new WhiteHairFeedbackShaderProgram(), m_TFhairDepthPeelProgram = new HairFeedbackDepthPeelShaderProgram(), m_TFhairOpacityProgram = new HairFeedbackOpacityShaderProgram(), }; // Framebuffers m_framebuffers = { m_hairShadowFramebuffer = new Framebuffer(), m_meshShadowFramebuffer = new Framebuffer(), m_opacityMapFramebuffer = new Framebuffer(), m_finalFramebuffer = new Framebuffer(), m_depthPeel0Framebuffer = new Framebuffer(), m_depthPeel1Framebuffer = new Framebuffer(), }; m_tessellator = new Tessellator(); m_hairInterface->setGLWidget(this); // Set up 60 FPS draw loop. connect(&m_timer, SIGNAL(timeout()), this, SLOT(updateCanvas())); m_timer.start(1000.0f / m_targetFPS); }
void KGrCanvas::moveEnemy (int id, int x, int y, int frame, int nuggets) { if (nuggets != 0) { // If enemy is carrying gold, frame = frame + goldEnemy; // show him with gold outline. } // In KGoldrunner, the top-left visible cell is [1,1] --- in QCanvas [2,2]. enemySprites->at(id)->move (x + 4 * STEP, y + 4 * STEP, frame); updateCanvas(); }
void KisToolMultihand::activateAxesPointModeSetup() { if (customUI->moveOriginButton->isChecked()){ m_setupAxesFlag = true; useCursor(KisCursor::crossCursor()); updateCanvas(); } else { finishAxesSetup(); } }
void KisToolMultihand::continuePrimaryAction(KoPointerEvent *event) { if(mode() == KisTool::OTHER) { m_axesPoint = convertToPixelCoord(event->point); requestUpdateOutline(event->point, 0); updateCanvas(); } else { KisToolFreehand::continuePrimaryAction(event); } }
void KisToolMultihand::beginPrimaryAction(KoPointerEvent *event) { if(m_setupAxesFlag) { setMode(KisTool::OTHER); m_axesPoint = convertToPixelCoord(event->point); requestUpdateOutline(event->point, 0); updateCanvas(); } else { initTransformations(); KisToolFreehand::beginPrimaryAction(event); } }
bool CASpreadsheetHandler::openDocument (const QString& uri) { QString error; QString mimetype = KMimeType::findByPath (uri)->name(); KoPart *part = KMimeTypeTrader::createInstanceFromQuery<KoPart>(mimetype, QLatin1String("Calligra/Part"), 0, QString(), QVariantList(), &error); if (!part) { kDebug() << "Doc can't be openend" << error; return false; } d->document = static_cast<Calligra::Sheets::Doc*> (part->document()); d->document->openUrl (KUrl (uri)); setCanvas (dynamic_cast<KoCanvasBase*>(part->canvasItem(d->document))); KoToolManager::instance()->addController (documentController()->canvasController()); d->canvasItem = dynamic_cast<Calligra::Sheets::CanvasItem*> (canvas()); if (!d->canvasItem) { kDebug() << "Failed to fetch a canvas item"; return false; } KoZoomHandler* zoomHandler = new KoZoomHandler(); documentController()->canvasController()->setZoomHandler (zoomHandler); KoZoomController* zoomController = documentController()->canvasController()->zoomController(); zoomController->setZoom (KoZoomMode::ZOOM_CONSTANT, 1.0); documentController()->canvasController()->setCanvasMode (KoCanvasController::Spreadsheet); if (d->canvasItem) { // update the canvas whenever we scroll, the canvas controller must emit this signal on scrolling/panning connect (documentController()->canvasController()->canvasControllerProxyObject(), SIGNAL(moveDocumentOffset(QPoint)), d->canvasItem, SLOT(setDocumentOffset(QPoint))); // whenever the size of the document viewed in the canvas changes, inform the zoom controller connect (d->canvasItem, SIGNAL(documentSizeChanged(QSize)), this, SLOT(tellZoomControllerToSetDocumentSize(QSize))); d->canvasItem->update(); } connect (documentController()->canvasController(), SIGNAL(needsCanvasResize(QSizeF)), SLOT(resizeCanvas(QSizeF))); connect (documentController()->canvasController(), SIGNAL(needCanvasUpdate()), SLOT(updateCanvas())); updateCanvas(); documentController()->canvasController()->zoomToFit(); emit sheetCountChanged(); return true; }
void CASpreadsheetHandler::findMatchFound (const KoFindMatch& match) { QTextCursor cursor = match.location().value<QTextCursor>(); updateCanvas(); d->findText->setCurrentSheet(d->sheet,d->sheetView); d->sheetView->activeHighlight(); d->sheetView->setHighlighted(match.location().value<Calligra::Sheets::Cell>().cellPosition(), true); d->canvasItem->resourceManager()->setResource(KoText::CurrentTextAnchor, cursor.anchor()); d->canvasItem->resourceManager()->setResource(KoText::CurrentTextPosition, cursor.position()); d->matchFound = true; }
void KGrCanvas::changeLandscape (const QString & name) { for (int i = 0; strcmp (colourScheme [i], "") != 0; i++) { if (colourScheme [i] == name) { // Change XPM colours and re-draw the tile-pictures used by QCanvas. changeColours (& colourScheme [i]); makeTiles(); // Set all cells to same tile-numbers as before, but new colours. int tileNo [FIELDWIDTH] [FIELDHEIGHT]; int offset = border / 2; for (int x = 0; x < FIELDWIDTH; x++) { for (int y = 0; y < FIELDHEIGHT; y++) { tileNo[x][y] = field->tile (x + offset, y + offset); } } field->setTiles (bgPix, (FIELDWIDTH+border), (FIELDHEIGHT+border), bgw, bgh); // Sets all tile-numbers to 0. for (int x = 0; x < FIELDWIDTH; x++) { for (int y = 0; y < FIELDHEIGHT; y++) { field->setTile (x + offset, y + offset, tileNo[x][y]); } } borderB->setBrush (QBrush (borderColor)); borderL->setBrush (QBrush (borderColor)); borderR->setBrush (QBrush (borderColor)); QString t = title->text(); makeTitle (); setTitle (t); // Repaint the playing area. updateCanvas(); return; } } }
void IHM::update(){ // Update the GUI every 5ms if(manager.getStatus() == SoundStream::Playing) { _songDuration->SetFraction(manager.getDurationP()); } if(manager.getStatus() == SoundStream::Stopped) _songDuration->SetFraction(0.0f); if(clock_Manager.getElapsedTime().asMicroseconds() >= 25000){ manager.update(); _curSong.setString(manager.getCurPlayingSong()); _curDuration.setString(manager.getDuration()); sf::FloatRect _localBounds; _localBounds = _curSong.getLocalBounds(); _curSong.setOrigin(_localBounds.width/2,_localBounds.height/2); _localBounds = _curDuration.getLocalBounds(); _curDuration.setOrigin(_localBounds.width/2,_localBounds.height/2); _curSong.setPosition(400,270); _curDuration.setPosition(400,320); clock_Manager.restart(); } updateCanvas();
void KGrCanvas::moveHero (int x, int y, int frame) { // In KGoldrunner, the top-left visible cell is [1,1] --- in QCanvas [2,2]. heroSprite->move (x + 4 * STEP, y + 4 * STEP, frame); updateCanvas(); }
SSPropModel::SSPropModel(QObject* obj, QObject *parent) : QAbstractItemModel(parent), m_object(obj) { connect(this, SIGNAL(propChanged()), obj, SLOT(update())); connect(this, SIGNAL(propChanged()), obj, SLOT(updateCanvas())); }
void SearcherThread::run() { { if (!node->isOpen()) return; t->mutex.lock(); emit statusChanged(false); unsigned int kids = node->getNumberOfChildNodes(*t->na, t->curBest, t->stats, t->c_d, t->a_d); if (kids == 0 || node->getStatus() == STOP) { t->mutex.unlock(); updateCanvas(); emit statusChanged(true); return; } std::stack<SearchItem> stck; stck.push(SearchItem(node,kids)); t->stats.maxDepth = std::max(static_cast<long unsigned int>(t->stats.maxDepth), static_cast<long unsigned int>(depth+stck.size())); VisualNode* sol = NULL; int nodeCount = 0; t->stopSearchFlag = false; while (!stck.empty() && !t->stopSearchFlag) { if (t->refresh > 0 && nodeCount >= t->refresh) { node->dirtyUp(*t->na); updateCanvas(); emit statusChanged(false); nodeCount = 0; if (t->refreshPause > 0) msleep(t->refreshPause); } SearchItem& si = stck.top(); si.i++; if (si.i == si.noOfChildren) { stck.pop(); } else { VisualNode* n = si.n->getChild(*t->na,si.i); if (n->isOpen()) { if (n->getStatus() == UNDETERMINED) nodeCount++; kids = n->getNumberOfChildNodes(*t->na, t->curBest, t->stats, t->c_d, t->a_d); if (kids == 0) { if (n->getStatus() == SOLVED) { assert(n->hasCopy()); emit solution(n->getWorkingSpace()); n->purge(*t->na); sol = n; if (!a) break; } } else { if ( n->getStatus() != STOP ) stck.push(SearchItem(n,kids)); else if (!a) break; t->stats.maxDepth = std::max(static_cast<long unsigned int>(t->stats.maxDepth), static_cast<long unsigned int>(depth+stck.size())); } } } } node->dirtyUp(*t->na); t->stopSearchFlag = false; t->mutex.unlock(); if (sol != NULL) { t->setCurrentNode(sol,false); } else { t->setCurrentNode(node,false); } } updateCanvas(); emit statusChanged(true); if (t->finishedFlag) emit searchFinished(); }
void CAPresentationHandler::zoomToFit() { updateCanvas(); setTextData(d->currentSlideNum); }
bool CAPresentationHandler::openDocument (const QString& uri) { QString error; QString mimetype = KMimeType::findByPath (uri)->name(); KoDocumentEntry documentEntry = KoDocumentEntry::queryByMimeType(mimetype); KoPart *part = documentEntry.createKoPart(&error); if (!part) { kDebug() << "Doc can't be openend" << error; return false; } d->document = qobject_cast<KPrDocument*> (part->document()); d->document->openUrl (KUrl (uri)); KoCanvasBase* paCanvas = dynamic_cast<KoCanvasBase*>(part->canvasItem(d->document)); KoPACanvasItem* paCanvasItem = dynamic_cast<KoPACanvasItem*> (paCanvas); if (!paCanvasItem) { kDebug() << "Failed to fetch a canvas item"; return false; } if (paCanvasItem) { d->paView = new CAPAView (documentController()->canvasController(), dynamic_cast<KoPACanvasBase*> (paCanvas), d->document); paCanvasItem->setView (d->paView); documentController()->canvasController()->setZoomHandler (static_cast<KoZoomHandler*> (paCanvasItem->viewConverter())); d->paView->connectToZoomController(); // update the canvas whenever we scroll, the canvas controller must emit this signal on scrolling/panning connect (documentController()->canvasController()->canvasControllerProxyObject(), SIGNAL(moveDocumentOffset(QPoint)), paCanvasItem, SLOT(slotSetDocumentOffset(QPoint))); // whenever the size of the document viewed in the canvas changes, inform the zoom controller connect (paCanvasItem, SIGNAL(documentSize(QSize)), this, SLOT(tellZoomControllerToSetDocumentSize(QSize))); paCanvasItem->update(); } setCanvas (paCanvas); KoToolManager::instance()->addController (documentController()->canvasController()); connect(documentController()->canvasController(), SIGNAL(needsCanvasResize(QSizeF)), SLOT(resizeCanvas(QSizeF))); connect (documentController()->canvasController(), SIGNAL(needCanvasUpdate()), SLOT(updateCanvas())); d->paDocumentModel = new CAPADocumentModel(this, d->document); emit totalNumberOfSlidesChanged(); QTimer::singleShot(0, this, SLOT(nextSlide())); return true; }
void KisToolMultihand::slotSetAxesVisible(bool vis) { m_showAxes = vis; updateCanvas(); m_configGroup.writeEntry("showAxes", vis); }