GuiPanel::GuiPanel(QWidget *parent, IniData &id) : QWidget(parent), inidata(id), ui(new Ui::GuiPanel) { reference = NULL; curMaterialFocus = DIFFUSEA; //mapMT = mm; _selectedIndex = -1; ui->setupUi(this); // ui->attributeData->tabBar()->setContentsMargins(-4,0,-4,0); QTabWidget *tw = ui->attributeData; int mar = 0; tw->setStyleSheet(QString("QTabBar::tab { width: %1px;padding-top: 1px; padding-bottom: 1px;margin-right: %2px;margin-left: %2px;} ") .arg((tw->size().width()+(2*mar*tw->count())-1)/tw->count()).arg(-mar) ); ui->wiBodyAxisA->setVisible(false); ui->wiBodyAxisB->setVisible(false); ui->wiBodyRadius->setVisible(false); ui->wiBodyNFaces->setVisible(false); ui->wiBodyNVerts->setVisible(false); ui->wiBodySigns->setVisible(false); ui->wiBodyFlags->setVisible(false); ui->bodyData->setVisible(false); ui->meshData->setVisible(false); ui->textureData->setVisible(false); ui->animationData->setVisible(false); ui->materialData->setVisible(false); ui->skeletonData->setVisible(false); ui->shaderData->setVisible(false); ui->hitboxEdit->setVisible(false); ui->viewRuler->setVisible(false); ui->viewFloatingProbe->setVisible(false); ui->generalView->setVisible(false); ui->vertexData->setVisible(false); ui->lvTextAcc->setModel( new TextureAccessModel(this) ); ui->lvBodyPart->setModel( new BodyPartModel(this) ); ui->lvBones->setModel( new BodyPartModel(this) ); //ui->frameNumber->setBackgroundRole(QPalette::Foreground); //ui->frameNumberAni->setBackgroundRole(QPalette::Foreground); alignY(ui->textureData ,ui->meshData); alignY(ui->materialData ,ui->meshData); alignY(ui->animationData,ui->meshData); alignY(ui->skeletonData,ui->meshData); alignY(ui->shaderData, ui->meshData); alignY(ui->bodyData, ui->meshData); alignYAfter(ui->hitboxEdit, ui->skeletonData); alignY(ui->vertexData, ui->meshData); //alignYAfter(ui->vertexData , ui->meshData ); QString flagMask(">Hhhhhhhh"); ui->boxFlags->setInputMask(flagMask); ui->boxTextureFlags->setInputMask(flagMask); ui->leMatFlags->setInputMask(flagMask); ui->leShaderFlags->setInputMask(flagMask); ui->leShaderTaFlags->setInputMask(flagMask); ui->leBodyFlags->setInputMask(flagMask); ui->leShaderRequires->setInputMask(flagMask); skel = NULL; //ui->leMatR->setInputMask("0.0000"); //ui->leMatG->setInputMask("0.0000"); //ui->leMatB->setInputMask("0.0000"); //ui->leMatCoeff->setInputMask("0000"); //ui->timeOfFrame->setInputMask("0000"); textureAccessDup = new QAction("Duplicate",this); textureAccessDel = new QAction("Remove",this); textureAccessAdd = new QAction("Add",this); bodyPartDup = new QAction("Duplicate",this); bodyPartDel = new QAction("Remove",this); bodyPartAdd = new QAction("Add",this); connect(ui->cbSkin, SIGNAL(currentIndexChanged(QString)), this, SLOT(updateVisibility())); connect(ui->cbRefani, SIGNAL(currentIndexChanged(QString)), this, SLOT(updateVisibility())); connect(ui->cbRuler, SIGNAL(stateChanged(int)), this, SLOT(updateVisibility())); connect(ui->cbRefani, SIGNAL(currentIndexChanged(QString)), this, SLOT(updateRefAnimation())); connect(ui->rulerSlid, SIGNAL(sliderMoved (int)), this, SLOT(setRulerLenght(int))); connect(ui->rulerSpin, SIGNAL(valueChanged(int)), this, SLOT(setRulerLenght(int))); connect(ui->lvTextAcc->selectionModel(), SIGNAL(selectionChanged(QItemSelection,QItemSelection)), this, SLOT(updateShaderTextaccData())); connect(ui->lvBodyPart->selectionModel(), SIGNAL(selectionChanged(QItemSelection,QItemSelection)), this, SLOT(updateBodyPartData())); connect(ui->lvBones->selectionModel(), SIGNAL(selectionChanged(QItemSelection,QItemSelection)), this, SLOT(updateSelectedBone())); // skeleton direct editing connect(ui->editHbRange, SIGNAL(actionTriggered(int)),this,SLOT(onEditHitbox(int))); connect(ui->editHbLenTop, SIGNAL(actionTriggered(int)),this,SLOT(onEditHitbox(int))); connect(ui->editHbLenBot, SIGNAL(actionTriggered(int)),this,SLOT(onEditHitbox(int))); connect(ui->editHbPosX, SIGNAL(actionTriggered(int)),this,SLOT(onEditHitbox(int))); connect(ui->editHbPosY, SIGNAL(actionTriggered(int)),this,SLOT(onEditHitbox(int))); connect(ui->editHbPosZ, SIGNAL(actionTriggered(int)),this,SLOT(onEditHitbox(int))); connect(ui->editHbRotAlpha, SIGNAL(actionTriggered(int)),this,SLOT(onEditHitbox(int))); connect(ui->editHbRotBeta, SIGNAL(actionTriggered(int)),this,SLOT(onEditHitbox(int))); QString st = tr(" (keep [shift] pressed to nudge)"); ui->editHbRange->setStatusTip(ui->editHbRange->statusTip()+st); ui->editHbLenTop->setStatusTip(ui->editHbLenTop->statusTip()+st); ui->editHbLenBot->setStatusTip(ui->editHbLenBot->statusTip()+st); ui->editHbPosX->setStatusTip(ui->editHbPosX->statusTip()+st); ui->editHbPosY->setStatusTip(ui->editHbPosY->statusTip()+st); ui->editHbPosZ->setStatusTip(ui->editHbPosZ->statusTip()+st); ui->editHbRotAlpha->setStatusTip(ui->editHbRotAlpha->statusTip()+st); ui->editHbRotBeta->setStatusTip(ui->editHbRotBeta->statusTip()+st); connect(ui->editHbActive, SIGNAL(stateChanged(int)),this,SLOT(setHbEditVisible(int))); connect(ui->floatingProbeX,SIGNAL(valueChanged(double)),this,SLOT(onEditFloatingProbePos())); connect(ui->floatingProbeY,SIGNAL(valueChanged(double)),this,SLOT(onEditFloatingProbePos())); connect(ui->floatingProbeZ,SIGNAL(valueChanged(double)),this,SLOT(onEditFloatingProbePos())); // add a shortcut to hide/show skin quickToggleHideSkinAct = new QAction(this); quickToggleHideSkinAct->setShortcut(QKeySequence("space")); //quickToggleHideSkinAct->setShortcutContext(Qt::ApplicationShortcut); connect(quickToggleHideSkinAct, SIGNAL(triggered()),this,SLOT(quickToggleHideSkin())); ui->cbSkin->addAction(quickToggleHideSkinAct); connect(ui->cbFloatingProbe,SIGNAL(toggled(bool)),parent,SLOT(activateFloatingProbe(bool))); connect(ui->cbRuler,SIGNAL(toggled(bool)),parent,SLOT(activateRuler(bool))); }