X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Flayerwidget.cpp;h=33221206a456172f62d28cebfb9b7a3374d1a941;hb=4d6ba8a6eb781dbee818b6a55d21df7b52468936;hp=6561256c5f4af3d8a7caf12363fb6ba55c0f73c6;hpb=d549bfdc8c872b966b9d787c00e5e8027366093c;p=architektonas diff --git a/src/layerwidget.cpp b/src/layerwidget.cpp index 6561256..3322120 100644 --- a/src/layerwidget.cpp +++ b/src/layerwidget.cpp @@ -15,31 +15,38 @@ #include "layeritemwidget.h" -LayerWidget::LayerWidget(void): QWidget() -{ - LayerItemWidget * liw1 = new LayerItemWidget("Guidelines"); - LayerItemWidget * liw2 = new LayerItemWidget("Floor #1"); - LayerItemWidget * liw3 = new LayerItemWidget("Mechanical"); - LayerItemWidget * liw4 = new LayerItemWidget("List Widget"); - LayerItemWidget * liw5 = new LayerItemWidget("Background"); - - QListWidget * qlw = new QListWidget; - QListWidgetItem * qli1 = new QListWidgetItem(qlw); - QListWidgetItem * qli2 = new QListWidgetItem(qlw); - QListWidgetItem * qli3 = new QListWidgetItem(qlw); - QListWidgetItem * qli4 = new QListWidgetItem(qlw); - QListWidgetItem * qli5 = new QListWidgetItem(qlw); - qlw->setItemWidget(qli1, liw1); - qlw->setItemWidget(qli2, liw2); - qlw->setItemWidget(qli3, liw3); - qlw->setItemWidget(qli4, liw4); - qlw->setItemWidget(qli5, liw5); +LayerWidget::LayerWidget(void): QWidget(), + list(new QListWidget) +{ + LayerItemWidget * liw = new LayerItemWidget("Background"); + QListWidgetItem * qlwi = new QListWidgetItem(list); + list->setItemWidget(qlwi, liw); +#if 0 QPushButton * pb1 = new QPushButton("+"); QPushButton * pb2 = new QPushButton("-"); QPushButton * pb3 = new QPushButton("Edit"); QPushButton * pb4 = new QPushButton("^"); QPushButton * pb5 = new QPushButton("v"); +#else + QToolButton * pb1 = new QToolButton; + QToolButton * pb2 = new QToolButton; + QToolButton * pb3 = new QToolButton; + QToolButton * pb4 = new QToolButton; + QToolButton * pb5 = new QToolButton; + + pb1->setIcon(QIcon(":/res/layer-add.png")); + pb2->setIcon(QIcon(":/res/layer-delete.png")); + pb3->setIcon(QIcon(":/res/layer-edit.png")); + pb4->setIcon(QIcon(":/res/layer-up.png")); + pb5->setIcon(QIcon(":/res/layer-down.png")); + + pb1->setToolTip(tr("Add layer")); + pb2->setToolTip(tr("Remove layer")); + pb3->setToolTip(tr("Edit layer")); + pb4->setToolTip(tr("Move layer up")); + pb5->setToolTip(tr("Move layer down")); +#endif QHBoxLayout * hbox1 = new QHBoxLayout; hbox1->addWidget(pb1); @@ -50,10 +57,18 @@ LayerWidget::LayerWidget(void): QWidget() hbox1->addStretch(); QVBoxLayout * mainLayout = new QVBoxLayout; - mainLayout->addWidget(qlw); + mainLayout->addWidget(list); mainLayout->addLayout(hbox1); setLayout(mainLayout); + + connect(list, SIGNAL(currentRowChanged(int)), this, SLOT(HandleLayerSelected(int))); + list->setCurrentRow(4); + connect(pb1, SIGNAL(clicked()), this, SLOT(AddLayer())); + connect(pb2, SIGNAL(clicked()), this, SLOT(DeleteLayer())); + connect(pb3, SIGNAL(clicked()), this, SLOT(EditLayer())); + connect(pb4, SIGNAL(clicked()), this, SLOT(MoveLayerUp())); + connect(pb5, SIGNAL(clicked()), this, SLOT(MoveLayerDown())); } @@ -61,3 +76,41 @@ LayerWidget::~LayerWidget() { } + +void LayerWidget::HandleLayerSelected(int currentRow) +{ +//printf("LayerWidget::HandleLayerSelected(): currentRow = %i\n", currentRow); + emit(LayerSelected(currentRow)); +} + + +void LayerWidget::AddLayer(void) +{ + int count = list->count(); + QString text = QString("Layer #%1").arg(count); + LayerItemWidget * liw = new LayerItemWidget(text); + QListWidgetItem * qlwi = new QListWidgetItem(); + list->insertItem(0, qlwi); + list->setItemWidget(qlwi, liw); +} + + +void LayerWidget::DeleteLayer(void) +{ +} + + +void LayerWidget::EditLayer(void) +{ +} + + +void LayerWidget::MoveLayerUp(void) +{ +} + + +void LayerWidget::MoveLayerDown(void) +{ +} +