void GetPath2(int x, int y, int& nCount) { if (0 == x && 0 == y) { ++nCount; return; } if (0 > x) return; if (0 > y) return; GetPath2(x - 1, y, nCount); GetPath2(x, y - 1, nCount); }
void EditPanel::UpdateLocal(bool primaryPath) { if( m_Path->isEnabled() ) { if( m_Path2->isEnabled() ) { // both enabled QString path; if( primaryPath ) GetPath(path); else GetPath2(path); m_Local->setChecked( Utils::IsLocalOSCPath(path) ); m_Local->setEnabled(true); } else if( primaryPath ) { // only path enabled QString path; GetPath(path); m_Local->setChecked( Utils::IsLocalOSCPath(path) ); m_Local->setEnabled(true); } } else if( m_Path2->isEnabled() ) { if( !primaryPath ) { // only path2 enabled QString path; GetPath2(path); m_Local->setChecked( Utils::IsLocalOSCPath(path) ); m_Local->setEnabled(true); } } else { // no path enabled m_Local->setChecked(false); m_Local->setEnabled(false); } }
void EditPanel::onLocalStateChanged(int /*state*/) { if( m_Path->isEnabled() ) { QString path; GetPath(path); if( Utils::MakeLocalOSCPath(m_Local->isChecked(),path) ) { m_Path->setText(path); emit edited(); } } if( m_Path2->isEnabled() ) { QString path2; GetPath2(path2); if( Utils::MakeLocalOSCPath(m_Local->isChecked(),path2) ) { m_Path2->setText(path2); emit edited(); } } }