コード例 #1
0
ファイル: editview.cpp プロジェクト: bcampbell/evilpixie
EditView::EditView( Editor& editor, int w, int h ) :
    m_Editor(editor),
    m_PrevPos(-1,-1),
    m_Canvas( new Img(FMT_RGBX8,w,h ) ),
    m_ViewBox(0,0,w,h),
    m_Frame(0),
    m_Zoom(4),
    m_Offset(0,0),
    m_Panning(false),
    m_PanAnchor(0,0)
{
    m_XZoom = m_Zoom*editor.Proj().Settings().PixW;
    m_YZoom = m_Zoom*editor.Proj().Settings().PixH;
    CenterView();
    DrawView(m_ViewBox);
    Proj().AddListener( this );
    editor.AddView( this );
}
コード例 #2
0
ファイル: paletteeditor.cpp プロジェクト: bcampbell/evilpixie
PaletteEditor::PaletteEditor( Editor& ed, QWidget* parent ) :
    QDialog( parent ),
    m_Ed(ed),
    m_Proj( ed.Proj()),
    m_Selected( 1 )
{
    m_RGBWidget = new RGBWidget();
    m_PaletteWidget = new PaletteWidget(m_Proj.PaletteConst());
    m_PaletteWidget->EnableRangePicking( true );
    resize( QSize(500,400) );

    QHBoxLayout* h = new QHBoxLayout();
        QVBoxLayout* v = new QVBoxLayout();
        v->addWidget( m_RGBWidget );
        m_SpreadButton = new QPushButton("Spread");
        v->addWidget( m_SpreadButton );
//        v->addStretch();
    h->addLayout( v );
    h->setStretchFactor(v,0);
    h->addWidget( m_PaletteWidget );
    h->setStretchFactor(m_PaletteWidget,1);
    setLayout( h );

    {
        Colour c( m_Proj.GetColour( m_Selected ) );
        m_RGBWidget->setColour( QColor( c.r, c.g, c.b, c.a ) );
    }
    connect( m_RGBWidget, SIGNAL( colourChanged() ), this, SLOT( colourChanged() ) );
    connect( m_PaletteWidget, SIGNAL( rangeAltered() ), this, SLOT( paletteRangeAltered() ) );
    connect( m_PaletteWidget, SIGNAL( pickedLeftButton(int) ), this, SLOT( colourPicked(int) ) );
    connect( m_SpreadButton, SIGNAL( clicked() ), this, SLOT( spreadColours() ) );

    m_SpreadButton->setEnabled( m_PaletteWidget->RangeValid() );

    m_Proj.AddListener( this );
}