//----------------------------------------------------------------- void MenuOptions::prepareMenu() { if (m_container) { deregisterDrawable(m_container); delete m_container; m_container = NULL; } Labels labels(Path::dataReadPath("script/labels.lua")); IWidget *soundBox = createSoundPanel(labels); IWidget *musicBox = createMusicPanel(labels); VBox *vbox = new VBox(); vbox->addWidget(soundBox); vbox->addWidget(new WiSpace(0, 10)); vbox->addWidget(musicBox); vbox->addWidget(new WiSpace(0, 10)); vbox->addWidget(createLangPanel(labels)); vbox->addWidget(new WiSpace(0, 5)); vbox->addWidget(createSpeechPanel(labels)); vbox->addWidget(new WiSpace(0, 5)); vbox->addWidget(createSubtitlesPanel(labels)); IWidget *backButton = createBackButton(labels); m_statusBar = createStatusBar(musicBox->getW() - backButton->getW()); HBox *backBox = new HBox(); backBox->addWidget(m_statusBar); backBox->addWidget(backButton); vbox->addWidget(backBox); m_container = vbox; registerDrawable(m_container); }
//----------------------------------------------------------------- IWidget * MenuOptions::createMusicPanel(const Labels &labels) { HBox *musicBox = new HBox(); musicBox->addWidget(new WiPicture( Path::dataReadPath("images/menu/volume_music.png"))); musicBox->addWidget(new WiSpace(10, 0)); musicBox->addWidget(new Slider("volume_music", 0, 100)); musicBox->setTip(labels.getLabel("menu_music")); return musicBox; }
//----------------------------------------------------------------- IWidget * MenuOptions::createSoundPanel(const Labels &labels) { HBox *soundBox = new HBox(); soundBox->addWidget(new WiPicture( Path::dataReadPath("images/menu/volume_sound.png"))); soundBox->addWidget(new WiSpace(10, 0)); soundBox->addWidget(new Slider("volume_sound", 0, 100)); soundBox->setTip(labels.getLabel("menu_sound")); return soundBox; }
/** * Creates menu to select 'speech'. * NOTE: default speech is customized in "script/init.lua" */ IWidget * MenuOptions::createSpeechPanel(const Labels &labels) { HBox *speechBox = new HBox(); speechBox->addWidget(new WiPicture( Path::dataReadPath("images/menu/speech.png"))); speechBox->addWidget(new WiSpace(10, 0)); speechBox->addWidget(new SelectLang("speech", Path::dataReadPath("script/select_speech.lua"))); speechBox->setTip(labels.getLabel("menu_speech")); return speechBox; }
//----------------------------------------------------------------- IWidget * MenuOptions::createLangPanel(const Labels &labels) { HBox *langBox = new HBox(); langBox->addWidget(new WiPicture( Path::dataReadPath("images/menu/lang.png"))); langBox->addWidget(new WiSpace(10, 0)); langBox->addWidget(new SelectLang("lang", Path::dataReadPath("script/select_lang.lua"))); langBox->setTip(labels.getLabel("menu_lang")); return langBox; }
//----------------------------------------------------------------- IWidget * MenuOptions::createSubtitlesPanel(const Labels &labels) { HBox *chooseBox = new HBox(); chooseBox->addWidget(new WiPicture( Path::dataReadPath("images/menu/subtitle.png"))); chooseBox->addWidget(new WiSpace(10, 0)); chooseBox->addWidget(new RadioBox("subtitles", "1", Path::dataReadPath("images/menu/subtitles/yes.png"))); chooseBox->addWidget(new RadioBox("subtitles", "0", Path::dataReadPath("images/menu/subtitles/no.png"))); chooseBox->setTip(labels.getLabel("menu_subtitles")); return chooseBox; }