* Use dynamic text for software update online/local

This commit is contained in:
micha-bbg
2012-08-10 18:20:33 +02:00
parent 77bccfce64
commit bb4682125f
8 changed files with 34 additions and 19 deletions

View File

@@ -436,7 +436,8 @@ filesystem.is.utf8.option.utf8 UTF-8
flashupdate.actionreadflash lese Flash
flashupdate.cantopenfile kann Datei nicht öffnen
flashupdate.cantopenmtd kann das MTD-Device nicht öffnen
flashupdate.checkupdate Nach Updates suchen
flashupdate.checkupdate_internet Online nach Updates suchen
flashupdate.checkupdate_local Lokales Update
flashupdate.currentversion_sep Installierte Version
flashupdate.currentversiondate Datum
flashupdate.currentversiontime Uhrzeit

View File

@@ -436,7 +436,8 @@ filesystem.is.utf8.option.utf8 UTF-8
flashupdate.actionreadflash reading
flashupdate.cantopenfile can't open file
flashupdate.cantopenmtd can't open mtd-device
flashupdate.checkupdate Check for updates
flashupdate.checkupdate_internet Check for online updates
flashupdate.checkupdate_local Local update
flashupdate.currentversion_sep Current version
flashupdate.currentversiondate Date
flashupdate.currentversiontime Time

View File

@@ -51,11 +51,13 @@ CSoftwareUpdate::CSoftwareUpdate()
{
width = w_max (40, 10);
fe = new CFlashExpert();
update_item = NULL;
}
CSoftwareUpdate::~CSoftwareUpdate()
{
delete fe;
delete update_item;
}
int CSoftwareUpdate::exec(CMenuTarget* parent, const std::string &/*actionKey*/)
@@ -79,18 +81,20 @@ int CSoftwareUpdate::showSoftwareUpdate()
//flashing
CFlashUpdate flash;
softUpdate.addItem(new CMenuForwarder(LOCALE_FLASHUPDATE_CHECKUPDATE, true, NULL, &flash, NULL, CRCInput::RC_red, NEUTRINO_ICON_BUTTON_RED));
neutrino_locale_t up_text = (g_settings.softupdate_mode == 0) ? LOCALE_FLASHUPDATE_CHECKUPDATE_LOCAL : LOCALE_FLASHUPDATE_CHECKUPDATE_INTERNET;
update_item = new CMenuForwarder(up_text, true, NULL, &flash, NULL, CRCInput::RC_red, NEUTRINO_ICON_BUTTON_RED);
softUpdate.addItem(update_item);
//settings
CUpdateSettings update_settings(update_item);
softUpdate.addItem(new CMenuForwarder(LOCALE_FLASHUPDATE_SETTINGS, true, NULL, &update_settings, NULL, CRCInput::RC_green, NEUTRINO_ICON_BUTTON_GREEN));
softUpdate.addItem(GenericMenuSeparatorLine);
//expert-functions
CMenuWidget mtdexpert(LOCALE_FLASHUPDATE_EXPERTFUNCTIONS, NEUTRINO_ICON_UPDATE, width, MN_WIDGET_ID_MTDEXPERT);
showSoftwareUpdateExpert(&mtdexpert);
softUpdate.addItem(new CMenuForwarder(LOCALE_FLASHUPDATE_EXPERTFUNCTIONS, true, NULL, &mtdexpert, NULL, CRCInput::RC_green, NEUTRINO_ICON_BUTTON_GREEN));
softUpdate.addItem(GenericMenuSeparatorLine);
//settings
CUpdateSettings update_settings;
softUpdate.addItem(new CMenuForwarder(LOCALE_FLASHUPDATE_SETTINGS, true, NULL, &update_settings, NULL, CRCInput::RC_yellow, NEUTRINO_ICON_BUTTON_YELLOW ));
softUpdate.addItem(new CMenuForwarder(LOCALE_FLASHUPDATE_EXPERTFUNCTIONS, true, NULL, &mtdexpert, NULL, CRCInput::RC_yellow, NEUTRINO_ICON_BUTTON_YELLOW));
int res = softUpdate.exec (NULL, "");
return res;

View File

@@ -40,6 +40,7 @@ class CSoftwareUpdate : public CMenuTarget
{
private:
int width;
CMenuForwarder * update_item;
int showSoftwareUpdate();
void showSoftwareUpdateExpert(CMenuWidget *w_mtd_expert);

View File

@@ -43,9 +43,10 @@
#include <system/debug.h>
CUpdateSettings::CUpdateSettings()
CUpdateSettings::CUpdateSettings(CMenuForwarder * update_item)
{
width = w_max (40, 10);
updateItem = update_item;
#ifdef USE_SMS_INPUT
input_url_file = new CStringInputSMS(LOCALE_FLASHUPDATE_URL_FILE, g_settings.softupdate_url_file, 30, NONEXISTANT_LOCALE, NONEXISTANT_LOCALE, "abcdefghijklmnopqrstuvwxyz0123456789!""$%&/()=?-. ");
#endif
@@ -113,7 +114,7 @@ int CUpdateSettings::initMenu()
#endif
CMenuForwarder * fw_update_dir = new CMenuForwarder(LOCALE_EXTRA_UPDATE_DIR, !g_settings.softupdate_mode, g_settings.update_dir , this, "update_dir", CRCInput::RC_red, NEUTRINO_ICON_BUTTON_RED);
CUrlConfigSetupNotifier url_setup_notifier(fw_url, fw_update_dir);
CUrlConfigSetupNotifier url_setup_notifier(fw_url, fw_update_dir, updateItem);
CMenuOptionChooser *oj_mode = new CMenuOptionChooser(LOCALE_FLASHUPDATE_UPDATEMODE, &g_settings.softupdate_mode, FLASHUPDATE_UPDATEMODE_OPTIONS, FLASHUPDATE_UPDATEMODE_OPTION_COUNT, true, &url_setup_notifier);
@@ -128,10 +129,11 @@ int CUpdateSettings::initMenu()
}
CUrlConfigSetupNotifier::CUrlConfigSetupNotifier( CMenuItem* i1, CMenuItem* i2)
CUrlConfigSetupNotifier::CUrlConfigSetupNotifier( CMenuItem* i1, CMenuItem* i2, CMenuForwarder * f1)
{
toDisable[0] = i1;
toDisable[1] = i2;
updateItem = f1;
}
bool CUrlConfigSetupNotifier::changeNotify(const neutrino_locale_t, void *)
@@ -139,9 +141,11 @@ bool CUrlConfigSetupNotifier::changeNotify(const neutrino_locale_t, void *)
if (g_settings.softupdate_mode){
toDisable[0]->setActive(true);
toDisable[1]->setActive(false);
updateItem->setTextLocale(LOCALE_FLASHUPDATE_CHECKUPDATE_INTERNET);
}else{
toDisable[0]->setActive(false);
toDisable[1]->setActive(true);
updateItem->setTextLocale(LOCALE_FLASHUPDATE_CHECKUPDATE_LOCAL);
}
return false;
}

View File

@@ -49,8 +49,9 @@ class CUrlConfigSetupNotifier : public CChangeObserver
{
private:
CMenuItem* toDisable[2];
CMenuForwarder * updateItem;
public:
CUrlConfigSetupNotifier( CMenuItem*, CMenuItem*);
CUrlConfigSetupNotifier( CMenuItem*, CMenuItem*, CMenuForwarder *);
bool changeNotify(const neutrino_locale_t = NONEXISTANT_LOCALE, void *data = NULL);
};
@@ -58,6 +59,7 @@ class CUpdateSettings : public CMenuTarget
{
private:
int width;
CMenuForwarder * updateItem;
int initMenu();
CFlashExpert *fe;
@@ -66,7 +68,7 @@ class CUpdateSettings : public CMenuTarget
#endif
public:
CUpdateSettings();
CUpdateSettings(CMenuForwarder * update_item);
~CUpdateSettings();
int exec(CMenuTarget* parent, const std::string & actionKey);
};

View File

@@ -463,7 +463,8 @@ typedef enum
LOCALE_FLASHUPDATE_ACTIONREADFLASH,
LOCALE_FLASHUPDATE_CANTOPENFILE,
LOCALE_FLASHUPDATE_CANTOPENMTD,
LOCALE_FLASHUPDATE_CHECKUPDATE,
LOCALE_FLASHUPDATE_CHECKUPDATE_INTERNET,
LOCALE_FLASHUPDATE_CHECKUPDATE_LOCAL,
LOCALE_FLASHUPDATE_CURRENTVERSION_SEP,
LOCALE_FLASHUPDATE_CURRENTVERSIONDATE,
LOCALE_FLASHUPDATE_CURRENTVERSIONTIME,

View File

@@ -463,7 +463,8 @@ const char * locale_real_names[] =
"flashupdate.actionreadflash",
"flashupdate.cantopenfile",
"flashupdate.cantopenmtd",
"flashupdate.checkupdate",
"flashupdate.checkupdate_internet",
"flashupdate.checkupdate_local",
"flashupdate.currentversion_sep",
"flashupdate.currentversiondate",
"flashupdate.currentversiontime",