* neutrino clean up: move "start wizard" into its own module

It's better, to have a single module for coming features in the wizard

git-svn-id: file:///home/bas/coolstream_public_svn/THIRDPARTY/applications/neutrino-beta@2154 e54a6e83-5905-42d5-8d5c-058d10e6a962
This commit is contained in:
thilo
2012-03-19 09:00:11 +00:00
parent 6a5ffc315f
commit cfa58da3c6
10 changed files with 209 additions and 50 deletions

124
src/gui/start_wizard.cpp Normal file
View File

@@ -0,0 +1,124 @@
/*
Neutrino-GUI - Tuxbox-Project
Copyright (C) 2001 Steffen Hehn 'McClean'
http://www.tuxbox.org
Startup wizard
based upon an implementation created by
Copyright (C) 2009 CoolStream International Ltd.
Reworked by dbt (Thilo Graf)
Copyright (C) 2012 dbt
http://www.dbox2-tuning.net
License: GPL
This software is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with this library; if not, write to the
Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
Boston, MA 02110-1301, USA.
NOTE for ignorant distributors:
It's not allowed to distribute any compiled parts of this code, if you don't accept the terms of GPL.
Please read it and understand it right!
This means for you: Hold it, if not, leave it! You could face legal action!
Otherwise ask the copyright owners, anything else would be theft!
*/
#include "start_wizard.h"
#include <global.h>
#include <neutrino.h>
#include <neutrino_menue.h>
#include "network_setup.h"
#include "osd_setup.h"
#include "osdlang_setup.h"
#include "scan_setup.h"
#include <gui/widget/messagebox.h>
#include <video.h>
extern cVideo * videoDecoder;
using namespace std;
CStartUpWizard::CStartUpWizard()
{
}
CStartUpWizard::~CStartUpWizard()
{
}
int CStartUpWizard::exec(CMenuTarget* parent, const string & /*actionKey*/)
{
int res = menu_return::RETURN_REPAINT;
showBackgroundLogo();
if (parent)
parent->hide();
COsdLangSetup languageSettings(COsdLangSetup::OSDLANG_SETUP_MODE_WIZARD);
languageSettings.exec(NULL, "");
if(ShowMsgUTF (LOCALE_WIZARD_WELCOME_HEAD, g_Locale->getText(LOCALE_WIZARD_WELCOME_TEXT), CMessageBox::mbrYes, CMessageBox::mbYes | CMessageBox::mbrCancel) == CMessageBox::mbrYes)
{
//open video settings in wizardmode
g_videoSettings->setWizardMode(CVideoSettings::V_SETUP_MODE_WIZARD);
COsdSetup osdSettings(COsdSetup::OSD_SETUP_MODE_WIZARD);
res = g_videoSettings->exec(NULL, "");
g_videoSettings->setWizardMode(CVideoSettings::V_SETUP_MODE_WIZARD_NO);
if(res != menu_return::RETURN_EXIT_ALL)
{
res = osdSettings.exec(NULL, "");
}
if(res != menu_return::RETURN_EXIT_ALL)
{
CNetworkSetup::getInstance()->setWizardMode(CNetworkSetup::N_SETUP_MODE_WIZARD);
res = CNetworkSetup::getInstance()->exec(NULL, "");
CNetworkSetup::getInstance()->setWizardMode(CNetworkSetup::N_SETUP_MODE_WIZARD_NO);
}
if(res != menu_return::RETURN_EXIT_ALL)
{
CScanSetup::getInstance()->setWizardMode(CScanSetup::SCAN_SETUP_MODE_WIZARD);
res = CScanSetup::getInstance()->exec(NULL, "");
CScanSetup::getInstance()->setWizardMode(CScanSetup::SCAN_SETUP_MODE_WIZARD_NO);
}
}
killBackgroundLogo();
return res;
}
inline void CStartUpWizard::showBackgroundLogo()
{
videoDecoder->ShowPicture(DATADIR "/neutrino/icons/start.jpg");
}
inline void CStartUpWizard::killBackgroundLogo()
{
videoDecoder->StopPicture();
}