insilmaril@421: #include "branchpropwindow.h" insilmaril@421: insilmaril@440: #include insilmaril@440: insilmaril@421: #include "frameobj.h" insilmaril@421: insilmaril@421: insilmaril@421: BranchPropertyWindow::BranchPropertyWindow (QWidget *parent):QDialog(parent) insilmaril@421: { insilmaril@421: ui.setupUi (this); insilmaril@421: insilmaril@421: branch=NULL; insilmaril@421: mapEditor=NULL; insilmaril@421: insilmaril@440: ui.tabWidget->setEnabled(false); insilmaril@440: insilmaril@440: penColor=QColor (Qt::black); insilmaril@440: brushColor=QColor (Qt::black); insilmaril@440: QPixmap pix( 16,16); insilmaril@440: pix.fill (penColor); insilmaril@440: ui.framePenColorButton->setPixmap (pix); insilmaril@440: ui.frameBrushColorButton->setPixmap (pix); insilmaril@440: insilmaril@440: connect ( insilmaril@440: ui.framePenColorButton, SIGNAL (clicked()), insilmaril@440: this, SLOT (framePenColorClicked())); insilmaril@440: connect ( insilmaril@440: ui.frameBrushColorButton, SIGNAL (clicked()), insilmaril@440: this, SLOT (frameBrushColorClicked())); insilmaril@440: connect ( insilmaril@440: ui.frameTypeCombo, SIGNAL (currentIndexChanged( int)), insilmaril@440: this, SLOT (frameTypeChanged (int))); insilmaril@440: connect ( insilmaril@440: ui.hideLinkIfUnselected, SIGNAL (stateChanged( int)), insilmaril@440: this, SLOT (linkHideUnselectedChanged (int))); insilmaril@421: } insilmaril@421: insilmaril@421: void BranchPropertyWindow::setBranch (BranchObj *bo) insilmaril@421: { insilmaril@421: branch=bo; insilmaril@440: if (bo) insilmaril@440: { insilmaril@440: ui.tabWidget->setEnabled (true); insilmaril@421: insilmaril@440: // Frame insilmaril@440: FrameType t=branch->getFrameType(); insilmaril@440: if (t==NoFrame) insilmaril@440: { insilmaril@440: ui.frameTypeCombo->setCurrentIndex (0); insilmaril@440: penColor=Qt::white; insilmaril@440: brushColor=Qt::white; insilmaril@440: ui.colorGroupBox->setEnabled (false); insilmaril@440: } else insilmaril@440: { insilmaril@440: penColor=bo->getFramePenColor(); insilmaril@440: brushColor=bo->getFrameBrushColor(); insilmaril@440: QPixmap pix( 16,16); insilmaril@440: pix.fill (penColor); insilmaril@440: ui.frameBrushColorButton->setPixmap (pix); insilmaril@440: pix.fill (brushColor); insilmaril@440: ui.frameBrushColorButton->setPixmap (pix); insilmaril@440: ui.colorGroupBox->setEnabled (true); insilmaril@440: insilmaril@440: switch (t) insilmaril@440: { insilmaril@440: case Rectangle: insilmaril@440: ui.frameTypeCombo->setCurrentIndex (1); insilmaril@440: break; insilmaril@440: case Ellipse: insilmaril@440: ui.frameTypeCombo->setCurrentIndex (2); insilmaril@440: break; insilmaril@440: default: insilmaril@440: break; insilmaril@440: } insilmaril@440: } insilmaril@440: insilmaril@440: // Link insilmaril@440: if (branch->getHideLinkUnselected()) insilmaril@440: ui.hideLinkIfUnselected->setCheckState (Qt::Checked); insilmaril@440: else insilmaril@440: ui.hideLinkIfUnselected->setCheckState (Qt::Unchecked); insilmaril@440: } else insilmaril@421: { insilmaril@440: ui.tabWidget->setEnabled (false); insilmaril@421: } insilmaril@421: } insilmaril@421: insilmaril@421: void BranchPropertyWindow::setMapEditor (MapEditor *me) insilmaril@421: { insilmaril@440: mapEditor=me; insilmaril@440: if (mapEditor) insilmaril@440: setBranch (mapEditor->getSelectedBranch() ); insilmaril@440: else insilmaril@440: ui.tabWidget->setEnabled (false); insilmaril@440: insilmaril@421: } insilmaril@421: insilmaril@421: void BranchPropertyWindow::frameTypeChanged (int i) insilmaril@421: { insilmaril@421: if (mapEditor) insilmaril@421: switch (i) insilmaril@421: { insilmaril@440: case 0: mapEditor->setFrameType (NoFrame); break; insilmaril@440: case 1: mapEditor->setFrameType (Rectangle); break; insilmaril@440: case 2: mapEditor->setFrameType (Ellipse); break; insilmaril@421: } insilmaril@421: } insilmaril@421: insilmaril@440: void BranchPropertyWindow::framePenColorClicked() insilmaril@440: { insilmaril@440: if (mapEditor) insilmaril@440: { insilmaril@440: QColor col = QColorDialog::getColor( penColor, this ); insilmaril@440: if ( col.isValid() ) insilmaril@440: { insilmaril@440: penColor=col; insilmaril@440: mapEditor->setFramePenColor (penColor); insilmaril@440: } insilmaril@440: } insilmaril@440: } insilmaril@440: insilmaril@440: void BranchPropertyWindow::frameBrushColorClicked() insilmaril@440: { insilmaril@440: if (mapEditor) insilmaril@440: { insilmaril@440: QColor col = QColorDialog::getColor( brushColor, this ); insilmaril@440: if ( col.isValid() ) insilmaril@440: { insilmaril@440: brushColor=col; insilmaril@440: mapEditor->setFrameBrushColor (brushColor); insilmaril@440: } insilmaril@440: } insilmaril@440: } insilmaril@440: insilmaril@421: void BranchPropertyWindow::linkHideUnselectedChanged (int i) insilmaril@421: { insilmaril@421: if (!branch) return; insilmaril@421: branch->setHideLinkUnselected(i); insilmaril@421: } insilmaril@421: