QuestEditor::QuestEditor( QWidget * parent, const char * name ) : QDialog( parent ) { setWindowTitle( QString ( name )); _quest = 0; _name = new AskString( tr( "Name: " ), this ); _description = new AskString( tr( "Description: " ), this ); _type = new AskCombo( tr( "Type: " ), this ); _type->insertItem( Quest::getTypeName( Quest::ONLY_ONE ) ); _type->insertItem( Quest::getTypeName( Quest::ONE_PERPLAYER ) ); _type->insertItem( Quest::getTypeName( Quest::ONE_PERLORD ) ); _type->insertItem( Quest::getTypeName( Quest::ANYONE ) ); _needConfirmation = new AskBool( tr( "Ask player confirmation of quest" ), this ); _confirmationQuestion = new AskString( tr( "Confirmation question: " ), this ); QPushButton * pbOk = new QPushButton( this ); pbOk->setText( tr( "Ok" ) ); FIXEDSIZE( pbOk ); QPushButton * pbCancel = new QPushButton( this ); pbCancel->setText( tr( "Cancel" ) ); FIXEDSIZE( pbCancel ); QHBoxLayout * layH = new QHBoxLayout(); layH->addStretch( 1 ); layH->addWidget( pbOk ); layH->addStretch( 1 ); layH->addWidget( pbCancel ); layH->addStretch( 1 ); _editStartCondition = new QuestConditionEditor( this ); _editStartCondition->setTitle( tr( "Start condition: " ) ); _editFailCondition = new QuestConditionEditor( this ); _editFailCondition->setTitle( tr( "Fail condition: " ) ); _editSuccessCondition = new QuestConditionEditor( this ); _editSuccessCondition->setTitle( tr( "Success condition: " ) ); QVBoxLayout * layout = new QVBoxLayout( this ); layout->setMargin( 5 ); layout->setSpacing( 5 ); layout->addWidget( _name ); layout->addWidget( _description ); layout->addWidget( _type ); layout->addWidget( _needConfirmation ); layout->addWidget( _confirmationQuestion ); layout->addWidget( _editStartCondition ); layout->addWidget( _editFailCondition ); layout->addWidget( _editSuccessCondition ); layout->addStretch( 1 ); layout->addLayout( layH ); layout->activate(); connect( pbOk, SIGNAL( clicked() ), SLOT( accept() ) ); connect( pbCancel, SIGNAL( clicked() ), SLOT( reject() ) ); connect( _needConfirmation, SIGNAL( sig_changed() ), SLOT( slot_confirmation() ) ); slot_confirmation(); }
void MidiRules::combo_changed() { if (update_model) return; int rowno = combo.get_active_row_number(); if (remove_unknown_from_combo()) { rowno--; } gig::MidiRule* rule = m->GetMidiRule(0); switch (rowno) { case NONE: if (rule) { m->DeleteMidiRule(0); set_instrument(m); } break; case CTRL_TRIGGER: if (!dynamic_cast<gig::MidiRuleCtrlTrigger*>(rule)) { m->AddMidiRuleCtrlTrigger(); set_instrument(m); } break; case LEGATO: if (!dynamic_cast<gig::MidiRuleLegato*>(rule)) { m->AddMidiRuleLegato(); set_instrument(m); } break; } sig_changed(); }
void MidiRuleCtrlTrigger::row_changed(const Gtk::TreeModel::Path& path, const Gtk::TreeModel::iterator& iter) { if (update_model) return; Gtk::TreeModel::Row row = *iter; int i = path[0]; if (m->pTriggers[i].Velocity == 255 && row[columns.switch_logic]) { update_model++; row[columns.velocity] = 100; update_model--; } int key = note_value(row[columns.key]); if (m->pTriggers[i].TriggerPoint != row[columns.trigger_point] || m->pTriggers[i].Descending != row[columns.descending] || m->pTriggers[i].VelSensitivity != row[columns.vel_sensitivity] || m->pTriggers[i].Key != key || m->pTriggers[i].NoteOff != row[columns.note_off] || (m->pTriggers[i].Velocity != 255) != row[columns.switch_logic] || m->pTriggers[i].Velocity != row[columns.velocity] || m->pTriggers[i].OverridePedal != row[columns.override_pedal]) { m->pTriggers[i].TriggerPoint = row[columns.trigger_point]; m->pTriggers[i].Descending = row[columns.descending]; m->pTriggers[i].VelSensitivity = row[columns.vel_sensitivity]; m->pTriggers[i].Key = key; m->pTriggers[i].NoteOff = row[columns.note_off]; m->pTriggers[i].Velocity = row[columns.switch_logic] ? row[columns.velocity] : 255; m->pTriggers[i].OverridePedal = row[columns.override_pedal]; sig_changed(); } }
void MidiRuleCtrlTrigger::row_deleted(const Gtk::TreeModel::Path& path) { if (update_model) return; for (int i = path[0] + 1 ; i < m->Triggers ; i++) { m->pTriggers[i - 1] = m->pTriggers[i]; } m->Triggers--; add_button.set_sensitive(); sig_changed(); }
void MidiRuleCtrlTrigger::row_inserted(const Gtk::TreeModel::Path& path, const Gtk::TreeModel::iterator& iter) { if (update_model) return; int i = m->Triggers++; m->pTriggers[i].TriggerPoint = 64; m->pTriggers[i].Descending = false; m->pTriggers[i].VelSensitivity = 50; m->pTriggers[i].Key = 60; m->pTriggers[i].NoteOff = false; m->pTriggers[i].Velocity = 255; m->pTriggers[i].OverridePedal = false; add_button.set_sensitive(); if (m->Triggers == 32) add_button.set_sensitive(false); sig_changed(); }
void Calendar::newDay() { _day++; _daynum++; _turn++; if( _day > FIRST_LEVEL ) { _day = 1; _week++; } if( _week > SECOND_LEVEL ) { _week = 1; _month++; _daynum = 1; } if( _month > THIRD_LEVEL ) { _month = 1; _year++; } emit sig_changed(); }
void SectionCreature::save() { DataTheme.creatures.getRace( _race )->setName( _nameRace->getValue() ); _editCreature->save( _race, _creature ); emit sig_changed(); }
SectionSelector::SectionSelector( QWidget * parent, const char * name ) : QTabWidget( parent ) { setWindowTitle( QString ( name )); AttalScrollView * viewGeneral = new AttalScrollView( 0 ); _general = new SectionGeneral( 0, "general" ); viewGeneral->setSection( _general ); addTab( viewGeneral, tr( "General" ) ); AttalScrollView * viewArtefact = new AttalScrollView( 0 ); _artefact = new SectionArtefact( 0, "artefact" ); viewArtefact->setSection( _artefact ); addTab( viewArtefact, tr( "Artefacts" ) ); AttalScrollView * viewTeam = new AttalScrollView( 0 ); _team = new SectionTeam( 0, "team" ); viewTeam->setSection( _team ); addTab( viewTeam, tr( "Teams" ) ); AttalScrollView * viewBase = new AttalScrollView( 0 ); _base = new SectionBase( 0, "base" ); viewBase->setSection( _base ); addTab( viewBase, tr( "Bases" ) ); AttalScrollView * viewBuilding = new AttalScrollView( 0 ); _building = new SectionBuilding( 0, "building" ); viewBuilding->setSection( _building ); addTab( viewBuilding, tr( "Buildings" ) ); AttalScrollView * viewCreature = new AttalScrollView( 0 ); _creature = new SectionCreature( 0, "creatures" ); viewCreature->setSection( _creature ); addTab( viewCreature, tr( "Creatures" ) ); AttalScrollView * viewDecoration = new AttalScrollView( 0 ); _decoration = new SectionDecoration( 0, "decoration" ); viewDecoration->setSection( _decoration ); addTab( viewDecoration, tr( "Decorations" ) ); AttalScrollView * viewGround = new AttalScrollView( 0 ); _ground = new SectionGround( 0, "ground" ); viewGround->setSection( _ground ); addTab( viewGround, tr( "Grounds" ) ); AttalScrollView * viewLordCategory = new AttalScrollView( 0 ); _lordCategories = new SectionLordCategory( 0, "lord categories" ); viewLordCategory->setSection( _lordCategories ); addTab( viewLordCategory, tr( "Lord Categories" ) ); AttalScrollView * viewLord = new AttalScrollView( 0 ); _lord = new SectionLord( 0, "lords" ); viewLord->setSection( _lord ); addTab( viewLord, tr( "Lords" ) ); AttalScrollView * viewExperience = new AttalScrollView( 0 ); _experience = new SectionExperience( 0, "experience" ); viewExperience->setSection( _experience ); addTab( viewExperience, tr( "Levels" ) ); AttalScrollView * viewResource = new AttalScrollView( 0 ); _resource = new SectionResource( 0, "resources" ); viewResource->setSection( _resource ); addTab( viewResource, tr( "Resources" ) ); AttalScrollView * viewMachine = new AttalScrollView( 0 ); _machine = new SectionMachine( 0, "machines" ); viewMachine->setSection( _machine ); addTab( viewMachine, tr( "War Machines" ) ); connect( this, SIGNAL( currentChanged( int ) ), SLOT( slot_changed( int ) ) ); connect( _creature, SIGNAL( sig_changed() ), SLOT( slot_creaturesChanged() ) ); connect( _lordCategories, SIGNAL( sig_changed() ), SLOT( slot_lordCategoryChanged() ) ); connect( _general, SIGNAL( sig_changed() ), SLOT( slot_generalChanged() ) ); _current = _general; }