void CToggleButton::clickLeft(tribool down, bool previousState) { // force refresh hover(false); hover(true); if(isBlocked()) return; if (down && canActivate()) { CCS->soundh->playSound(soundBase::button); setState(PRESSED); } if(previousState)//mouse up { if(down == false && getState() == PRESSED && canActivate()) { onButtonClicked(); setSelected(!selected); } else doSelect(selected); // restore } }
bool Game::CountActivationPolicy::activate(std::shared_ptr<Game::Tile> tile) { if (!canActivate()) return false; if (!tile->isActive() || tile->isRevealed()) return false; tile->setRevealed(); m_activatedTiles.push_back(tile); return true; }