Esempio n. 1
0
void BitmapTestCase::OverlappingBlit()
{
    m_bmp.SetMask( NULL );

    // Clear to white.

    wxMemoryDC dc(m_bmp);
    dc.SetBackground( *wxWHITE );
    dc.Clear();

    // Draw red line across the top.

    dc.SetPen(*wxRED_PEN);
    dc.DrawLine(0, 0, 10, 0);

    // Scroll down one line.

    dc.Blit( 0, 1, 10, 9, &dc, 0, 0 );

    // Now, lines 0 and 1 should be red, lines 2++ should still be white.

    wxNativePixelData npd( m_bmp );
    wxNativePixelData::Iterator it( npd );

    ASSERT_EQUAL_RGB( it, 255, 0, 0 );
    it.OffsetY( npd, 1 );
    ASSERT_EQUAL_RGB( it, 255, 0, 0 );
    it.OffsetY( npd, 1 );
    ASSERT_EQUAL_RGB( it, 255, 255, 255 );
    it.OffsetY( npd, 1 );
    ASSERT_EQUAL_RGB( it, 255, 255, 255 );
}
void PogadeMainWindow::newProject() {
  NewProjectDialog npd(this);

  npd.setWindowTitle(tr("New Project"));

  connect(&npd, SIGNAL(newProjectCreated(PogadeProject*)),
          this, SLOT(setProject(PogadeProject*)));
  npd.exec();
}
Esempio n. 3
0
void MainWindow::slotNewProject()
{
    NewProjectDialog npd(this);
    if (npd.exec() == QDialog::Accepted) {
        try {
            Project_sV *project = npd.buildProject();

            // Save project
            XmlProjectRW_sV writer;
            
            //qDebug() << "Saving project as " << npd.filename;
            // check if directory exist ...
            QFileInfo projfile(npd.projectFilename());
            QDir dir(projfile.absoluteDir());
            if (!dir.exists()) {
                dir.mkpath(".");
            }
            
            try {
                writer.saveProject(project, npd.projectFilename());
                statusBar()->showMessage(QString(tr("Saved project as: %1")).arg(npd.projectFilename()));
                setWindowModified(false);
            } catch (Error_sV &err) {
                QMessageBox(QMessageBox::Warning, tr("Error writing project file"), err.message()).exec();
            }
            
            m_projectPath = npd.projectFilename();

            project->preferences()->viewport_secRes() = QPointF(400, 400)/project->frameSource()->framesCount()*project->frameSource()->fps()->fps();
            
            /* add a first (default) node */
            Node_sV snode;
            
            snode.setX(0.0);
            snode.setY(0.0);
            project->nodes()->add(snode);
            
            loadProject(project);

            m_wCanvas->showHelp(true);
			setWindowModified(true);

        } catch (FrameSourceError &err) {
            QMessageBox(QMessageBox::Warning, "Frame source error", err.message()).exec();
        }
    }
}