📄 interfacehandler.cpp
字号:
case 3: t = markTriangle; break; case 4: t = markCross; break; case 5: t = markText; break; case 6: t = markNumber; break; case 7: { Move *current = board->getBoardHandler()->getTree()->getCurrent(); // set next move's color if (board->getBoardHandler()->getBlackTurn()) { current->setPLinfo(stoneWhite);//#ifndef USE_XPM// mainWidget->colorButton->setPixmap(QPixmap(ICON_NODE_WHITE));//#else mainWidget->colorButton->setPixmap(QPixmap(const_cast<const char**>(node_white_xpm)));//#endif } else { current->setPLinfo(stoneBlack);//#ifndef USE_XPM// mainWidget->colorButton->setPixmap(QPixmap(ICON_NODE_BLACK));//#else mainWidget->colorButton->setPixmap(QPixmap(const_cast<const char**>(node_black_xpm)));//#endif } // check if set color is natural color: if (current->getMoveNumber() == 0 && current->getPLnextMove() == stoneBlack || current->getMoveNumber() > 0 && current->getColor() != current->getPLnextMove()) current->clearPLinfo(); board->setCurStoneColor(); return; } default: return; } statusMark->setText(getStatusMarkText(t)); board->setMarkType(t);}void InterfaceHandler::clearData(){ // qDebug("void InterfaceHandler::clearData()"); clearComment(); setMoveData(0, true, 0, 0, false, false, false);// modeButton->setOn(false); mainWidget->setToolsTabWidget(tabNormalScore); mainWidget->editButtonGroup->setButton(0);// editTools->hide(); normalTools->capturesBlack->setText("0"); normalTools->capturesWhite->setText("0"); if (board->getGameMode() != modeObserve && board->getGameMode() != modeMatch && board->getGameMode() != modeTeach) { normalTools->pb_timeBlack->setText("00:00"); normalTools->pb_timeWhite->setText("00:00"); } normalTools->show(); scoreButton->setOn(false); editPaste->setEnabled(false); editPasteBrother->setEnabled(false); slider->setValue(0); setSliderMax(SLIDER_INIT); scored_flag = false;}void InterfaceHandler::toggleSidebar(bool toggle){ if (!toggle) toolsFrame->hide(); else toolsFrame->show();}QString InterfaceHandler::getTextLabelInput(QWidget *parent, const QString &oldText){ TextEditDialog dlg(parent, QObject::tr("textedit"), true); dlg.textLineEdit->setFocus(); if (!oldText.isNull() && !oldText.isEmpty()) dlg.textLineEdit->setText(oldText); if (dlg.exec() == QDialog::Accepted) return dlg.textLineEdit->text(); return NULL;}void InterfaceHandler::showEditGroup(){// editTools->editButtonGroup->show();// mainWidget->setToolsTabWidget(tabEdit);}void InterfaceHandler::toggleMarks(){ if (board->getGameMode() == modeEdit) return;// if (!modeButton->isOn())// return; int cur = board->getMarkType(); cur ++; if (cur > 6) cur = 0; mainWidget->editButtonGroup->setButton(cur); setMarkType(cur);}const QString InterfaceHandler::getStatusMarkText(MarkType t){ QString txt; switch(t) { case markNone: txt = " S "; break; case markSquare: txt = " Q "; break; case markCircle: txt = " C "; break; case markTriangle: txt = " T "; break; case markCross: txt = " X "; break; case markText: txt = " A "; break; case markNumber: txt = " 1 "; break; default: txt = " ? "; } return txt;}void InterfaceHandler::setCaptures(float black, float white, bool /*scored*/){/*if (scored && !scored_flag){normalTools->capturesFrame->setTitle(QObject::tr("Points"));scored_flag = true;}else if (!scored && scored_flag){normalTools->capturesFrame->setTitle(QObject::tr("Captures"));scored_flag = false;} */ capturesBlack->setText(QString::number(black)); capturesWhite->setText(QString::number(white));}void InterfaceHandler::setTimes(const QString &btime, const QString &bstones, const QString &wtime, const QString &wstones){ if (btime) { if (bstones != QString("-1")) normalTools->pb_timeBlack->setText(btime + " / " + bstones); else normalTools->pb_timeBlack->setText(btime); } if (wtime) { if (wstones != QString("-1")) normalTools->pb_timeWhite->setText(wtime + " / " + wstones); else normalTools->pb_timeWhite->setText(wtime); }}void InterfaceHandler::setTimes(bool isBlacksTurn, float time, int stones){ QString strTime; int seconds = (int)time; bool neg = seconds < 0; if (neg) seconds = -seconds; int h = seconds / 3600; seconds -= h*3600; int m = seconds / 60; int s = seconds - m*60; QString sec; // prevailling 0 for seconds if ((h || m) && s < 10) sec = "0" + QString::number(s); else sec = QString::number(s); if (h) { QString min; // prevailling 0 for minutes if (h && m < 10) min = "0" + QString::number(m); else min = QString::number(m); strTime = (neg ? "-" : "") + QString::number(h) + ":" + min + ":" + sec; } else strTime = (neg ? "-" : "") + QString::number(m) + ":" + sec; if (isBlacksTurn) setTimes(strTime, QString::number(stones), 0, 0); else setTimes(0, 0, strTime, QString::number(stones));}void InterfaceHandler::disableToolbarButtons(){ CHECK_PTR(buttonState); buttonState->navPrevVar = navPrevVar->isEnabled(); navPrevVar->setEnabled(false); buttonState->navNextVar = navNextVar->isEnabled(); navNextVar->setEnabled(false); buttonState->navBackward = navBackward->isEnabled(); navBackward->setEnabled(false); buttonState->navForward = navForward->isEnabled(); navForward->setEnabled(false); buttonState->navFirst = navFirst->isEnabled(); navFirst->setEnabled(false); buttonState->navStartVar = navStartVar->isEnabled(); navStartVar->setEnabled(false); buttonState->navMainBranch = navMainBranch->isEnabled(); navMainBranch->setEnabled(false); buttonState->navLast = navLast->isEnabled(); navLast->setEnabled(false); buttonState->navNextBranch = navNextBranch->isEnabled(); navNextBranch->setEnabled(false); buttonState->navPrevComment = navPrevComment->isEnabled(); navPrevComment->setEnabled(false); buttonState->navNextComment = navNextComment->isEnabled(); navNextComment->setEnabled(false); buttonState->navIntersection = navIntersection->isEnabled(); // added eb 111 navIntersection->setEnabled(false); // end add eb 11 buttonState->editPaste = editPaste->isEnabled(); editPaste->setEnabled(false); buttonState->editPasteBrother = editPasteBrother->isEnabled(); editPasteBrother->setEnabled(false); navNthMove->setEnabled(false); navAutoplay->setEnabled(false); editCut->setEnabled(false); editDelete->setEnabled(false); navEmptyBranch->setEnabled(false); navCloneNode->setEnabled(false); navSwapVariations->setEnabled(false); fileImportASCII->setEnabled(false); fileImportASCIIClipB->setEnabled(false); fileImportSgfClipB->setEnabled(false);}void InterfaceHandler::restoreToolbarButtons(){ CHECK_PTR(buttonState); navPrevVar->setEnabled(buttonState->navPrevVar); navNextVar->setEnabled(buttonState->navNextVar); navBackward->setEnabled(buttonState->navBackward); navForward->setEnabled(buttonState->navForward); navFirst->setEnabled(buttonState->navFirst); navStartVar->setEnabled(buttonState->navStartVar); navMainBranch->setEnabled(buttonState->navMainBranch); navLast->setEnabled(buttonState->navLast); navNextBranch->setEnabled(buttonState->navNextBranch); navPrevComment->setEnabled(buttonState->navPrevComment); navNextComment->setEnabled(buttonState->navNextComment); navIntersection->setEnabled(buttonState->navNextComment); // SL added eb 11 editPaste->setEnabled(buttonState->editPaste); editPasteBrother->setEnabled(buttonState->editPasteBrother); navNthMove->setEnabled(true); navAutoplay->setEnabled(true); editCut->setEnabled(true); editDelete->setEnabled(true); navEmptyBranch->setEnabled(true); navCloneNode->setEnabled(true); navSwapVariations->setEnabled(true); fileImportASCII->setEnabled(true); fileImportASCIIClipB->setEnabled(true); fileImportSgfClipB->setEnabled(true);}void InterfaceHandler::setScore(int terrB, int capB, int terrW, int capW, float komi){ scoreTools->komi->setText(QString::number(komi)); scoreTools->terrWhite->setText(QString::number(terrW)); scoreTools->capturesWhite->setText(QString::number(capW)); scoreTools->totalWhite->setText(QString::number((float)terrW + (float)capW + komi)); scoreTools->terrBlack->setText(QString::number(terrB)); scoreTools->capturesBlack->setText(QString::number(capB)); scoreTools->totalBlack->setText(QString::number(terrB + capB));}void InterfaceHandler::setClipboard(bool b){ if (b) // Clipboard filled { editPaste->setEnabled(true); editPasteBrother->setEnabled(true); } else // Clipboard filled { editPaste->setEnabled(false); editPasteBrother->setEnabled(false); }}void InterfaceHandler::setSliderMax(int n){ if (n < 0) n = 0; slider->setMaxValue(n); mainWidget->sliderRightLabel->setText(QString::number(n));}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -