mirror of
https://github.com/tuxbox-neutrino/neutrino.git
synced 2025-08-28 16:01:20 +02:00
gui/network_setup.cpp: add menu hints
This commit is contained in:
@@ -104,11 +104,11 @@ int CNetworkSetup::exec(CMenuTarget* parent, const std::string &actionKey)
|
|||||||
{
|
{
|
||||||
printf("[network setup] doing network test...\n");
|
printf("[network setup] doing network test...\n");
|
||||||
#if 0
|
#if 0
|
||||||
testNetworkSettings( networkConfig->address.c_str(),
|
testNetworkSettings( networkConfig->address.c_str(),
|
||||||
networkConfig->netmask.c_str(),
|
networkConfig->netmask.c_str(),
|
||||||
networkConfig->broadcast.c_str(),
|
networkConfig->broadcast.c_str(),
|
||||||
networkConfig->gateway.c_str(),
|
networkConfig->gateway.c_str(),
|
||||||
networkConfig->nameserver.c_str(),
|
networkConfig->nameserver.c_str(),
|
||||||
networkConfig->inet_static);
|
networkConfig->inet_static);
|
||||||
#endif
|
#endif
|
||||||
testNetworkSettings();
|
testNetworkSettings();
|
||||||
@@ -122,10 +122,10 @@ int CNetworkSetup::exec(CMenuTarget* parent, const std::string &actionKey)
|
|||||||
}
|
}
|
||||||
else if(actionKey=="restore")
|
else if(actionKey=="restore")
|
||||||
{
|
{
|
||||||
int result = ShowMsgUTF(LOCALE_MAINSETTINGS_NETWORK, g_Locale->getText(LOCALE_NETWORKMENU_RESET_SETTINGS_NOW), CMessageBox::mbrNo,
|
int result = ShowMsgUTF(LOCALE_MAINSETTINGS_NETWORK, g_Locale->getText(LOCALE_NETWORKMENU_RESET_SETTINGS_NOW), CMessageBox::mbrNo,
|
||||||
CMessageBox::mbYes |
|
CMessageBox::mbYes |
|
||||||
CMessageBox::mbNo ,
|
CMessageBox::mbNo ,
|
||||||
NEUTRINO_ICON_QUESTION,
|
NEUTRINO_ICON_QUESTION,
|
||||||
width);
|
width);
|
||||||
|
|
||||||
if (result == CMessageBox::mbrYes) {
|
if (result == CMessageBox::mbrYes) {
|
||||||
@@ -136,7 +136,7 @@ int CNetworkSetup::exec(CMenuTarget* parent, const std::string &actionKey)
|
|||||||
|
|
||||||
printf("[neutrino] init network setup...\n");
|
printf("[neutrino] init network setup...\n");
|
||||||
res = showNetworkSetup();
|
res = showNetworkSetup();
|
||||||
|
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -144,7 +144,7 @@ void CNetworkSetup::readNetworkSettings()
|
|||||||
{
|
{
|
||||||
network_automatic_start = networkConfig->automatic_start;
|
network_automatic_start = networkConfig->automatic_start;
|
||||||
network_dhcp = networkConfig->inet_static ? NETWORK_DHCP_OFF : NETWORK_DHCP_ON;
|
network_dhcp = networkConfig->inet_static ? NETWORK_DHCP_OFF : NETWORK_DHCP_ON;
|
||||||
|
|
||||||
network_address = networkConfig->address;
|
network_address = networkConfig->address;
|
||||||
network_netmask = networkConfig->netmask;
|
network_netmask = networkConfig->netmask;
|
||||||
network_broadcast = networkConfig->broadcast;
|
network_broadcast = networkConfig->broadcast;
|
||||||
@@ -198,6 +198,7 @@ int CNetworkSetup::showNetworkSetup()
|
|||||||
int ifcount = scandir("/sys/class/net", &namelist, my_filter, alphasort);
|
int ifcount = scandir("/sys/class/net", &namelist, my_filter, alphasort);
|
||||||
|
|
||||||
CMenuOptionStringChooser * ifSelect = new CMenuOptionStringChooser(LOCALE_NETWORKMENU_SELECT_IF, g_settings.ifname, ifcount > 1, this, CRCInput::RC_nokey, "", true);
|
CMenuOptionStringChooser * ifSelect = new CMenuOptionStringChooser(LOCALE_NETWORKMENU_SELECT_IF, g_settings.ifname, ifcount > 1, this, CRCInput::RC_nokey, "", true);
|
||||||
|
ifSelect->setHint("", LOCALE_MENU_HINT_NET_IF);
|
||||||
|
|
||||||
bool found = false;
|
bool found = false;
|
||||||
|
|
||||||
@@ -224,6 +225,7 @@ int CNetworkSetup::showNetworkSetup()
|
|||||||
|
|
||||||
//apply button
|
//apply button
|
||||||
CMenuForwarder *m0 = new CMenuForwarder(LOCALE_NETWORKMENU_SETUPNOW, true, NULL, this, "networkapply", CRCInput::RC_red, NEUTRINO_ICON_BUTTON_RED);
|
CMenuForwarder *m0 = new CMenuForwarder(LOCALE_NETWORKMENU_SETUPNOW, true, NULL, this, "networkapply", CRCInput::RC_red, NEUTRINO_ICON_BUTTON_RED);
|
||||||
|
m0->setHint("", LOCALE_MENU_HINT_NET_SETUPNOW);
|
||||||
|
|
||||||
//eth id
|
//eth id
|
||||||
CMenuForwarder *mac = new CMenuForwarderNonLocalized("MAC", false, mac_addr);
|
CMenuForwarder *mac = new CMenuForwarderNonLocalized("MAC", false, mac_addr);
|
||||||
@@ -234,12 +236,13 @@ int CNetworkSetup::showNetworkSetup()
|
|||||||
CIPInput networkSettings_Broadcast(LOCALE_NETWORKMENU_BROADCAST , network_broadcast , LOCALE_IPSETUP_HINT_1, LOCALE_IPSETUP_HINT_2);
|
CIPInput networkSettings_Broadcast(LOCALE_NETWORKMENU_BROADCAST , network_broadcast , LOCALE_IPSETUP_HINT_1, LOCALE_IPSETUP_HINT_2);
|
||||||
CIPInput networkSettings_Gateway (LOCALE_NETWORKMENU_GATEWAY , network_gateway , LOCALE_IPSETUP_HINT_1, LOCALE_IPSETUP_HINT_2);
|
CIPInput networkSettings_Gateway (LOCALE_NETWORKMENU_GATEWAY , network_gateway , LOCALE_IPSETUP_HINT_1, LOCALE_IPSETUP_HINT_2);
|
||||||
CIPInput networkSettings_NameServer(LOCALE_NETWORKMENU_NAMESERVER, network_nameserver, LOCALE_IPSETUP_HINT_1, LOCALE_IPSETUP_HINT_2);
|
CIPInput networkSettings_NameServer(LOCALE_NETWORKMENU_NAMESERVER, network_nameserver, LOCALE_IPSETUP_HINT_1, LOCALE_IPSETUP_HINT_2);
|
||||||
|
|
||||||
//hostname
|
//hostname
|
||||||
CStringInputSMS networkSettings_Hostname(LOCALE_NETWORKMENU_HOSTNAME, &network_hostname, 30, LOCALE_NETWORKMENU_NTPSERVER_HINT1, LOCALE_NETWORKMENU_NTPSERVER_HINT2, "abcdefghijklmnopqrstuvwxyz0123456789-. ");
|
CStringInputSMS networkSettings_Hostname(LOCALE_NETWORKMENU_HOSTNAME, &network_hostname, 30, LOCALE_NETWORKMENU_NTPSERVER_HINT1, LOCALE_NETWORKMENU_NTPSERVER_HINT2, "abcdefghijklmnopqrstuvwxyz0123456789-. ");
|
||||||
|
|
||||||
//auto start
|
//auto start
|
||||||
CMenuOptionChooser* o1 = new CMenuOptionChooser(LOCALE_NETWORKMENU_SETUPONSTARTUP, &network_automatic_start, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true);
|
CMenuOptionChooser* o1 = new CMenuOptionChooser(LOCALE_NETWORKMENU_SETUPONSTARTUP, &network_automatic_start, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true);
|
||||||
|
o1->setHint("", LOCALE_MENU_HINT_NET_SETUPONSTARTUP);
|
||||||
|
|
||||||
//dhcp
|
//dhcp
|
||||||
network_dhcp = networkConfig->inet_static ? NETWORK_DHCP_OFF : NETWORK_DHCP_ON;
|
network_dhcp = networkConfig->inet_static ? NETWORK_DHCP_OFF : NETWORK_DHCP_ON;
|
||||||
@@ -251,6 +254,13 @@ int CNetworkSetup::showNetworkSetup()
|
|||||||
CMenuForwarder *m5 = new CMenuForwarder(LOCALE_NETWORKMENU_NAMESERVER, networkConfig->inet_static, network_nameserver, &networkSettings_NameServer);
|
CMenuForwarder *m5 = new CMenuForwarder(LOCALE_NETWORKMENU_NAMESERVER, networkConfig->inet_static, network_nameserver, &networkSettings_NameServer);
|
||||||
CMenuForwarder *m8 = new CMenuForwarder(LOCALE_NETWORKMENU_HOSTNAME , true , network_hostname , &networkSettings_Hostname );
|
CMenuForwarder *m8 = new CMenuForwarder(LOCALE_NETWORKMENU_HOSTNAME , true , network_hostname , &networkSettings_Hostname );
|
||||||
|
|
||||||
|
m1->setHint("", LOCALE_MENU_HINT_NET_IPADDRESS);
|
||||||
|
m2->setHint("", LOCALE_MENU_HINT_NET_NETMASK);
|
||||||
|
m3->setHint("", LOCALE_MENU_HINT_NET_BROADCAST);
|
||||||
|
m4->setHint("", LOCALE_MENU_HINT_NET_GATEWAY);
|
||||||
|
m5->setHint("", LOCALE_MENU_HINT_NET_NAMESERVER);
|
||||||
|
m8->setHint("", LOCALE_MENU_HINT_NET_HOSTNAME);
|
||||||
|
|
||||||
dhcpDisable[0] = m1;
|
dhcpDisable[0] = m1;
|
||||||
dhcpDisable[1] = m2;
|
dhcpDisable[1] = m2;
|
||||||
dhcpDisable[2] = m3;
|
dhcpDisable[2] = m3;
|
||||||
@@ -258,13 +268,20 @@ int CNetworkSetup::showNetworkSetup()
|
|||||||
dhcpDisable[4] = m5;
|
dhcpDisable[4] = m5;
|
||||||
|
|
||||||
CMenuOptionChooser* o2 = new CMenuOptionChooser(LOCALE_NETWORKMENU_DHCP, &network_dhcp, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true, this);
|
CMenuOptionChooser* o2 = new CMenuOptionChooser(LOCALE_NETWORKMENU_DHCP, &network_dhcp, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true, this);
|
||||||
|
o2->setHint("", LOCALE_MENU_HINT_NET_DHCP);
|
||||||
|
|
||||||
//paint menu items
|
//paint menu items
|
||||||
networkSettings->addIntroItems(LOCALE_MAINSETTINGS_NETWORK); //intros
|
networkSettings->addIntroItems(LOCALE_MAINSETTINGS_NETWORK); //intros
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
networkSettings->addItem( m0 ); //apply
|
networkSettings->addItem( m0 ); //apply
|
||||||
networkSettings->addItem(new CMenuForwarder(LOCALE_NETWORKMENU_TEST, true, NULL, this, "networktest", CRCInput::RC_green, NEUTRINO_ICON_BUTTON_GREEN)); //test
|
CMenuForwarder * mf = new CMenuForwarder(LOCALE_NETWORKMENU_TEST, true, NULL, this, "networktest", CRCInput::RC_green, NEUTRINO_ICON_BUTTON_GREEN);
|
||||||
networkSettings->addItem(new CMenuForwarder(LOCALE_NETWORKMENU_SHOW, true, NULL, this, "networkshow", CRCInput::RC_help, NEUTRINO_ICON_BUTTON_HELP)); //show settings
|
mf->setHint("", LOCALE_MENU_HINT_NET_TEST);
|
||||||
|
networkSettings->addItem(mf); //test
|
||||||
|
|
||||||
|
mf = new CMenuForwarder(LOCALE_NETWORKMENU_SHOW, true, NULL, this, "networkshow", CRCInput::RC_info, NEUTRINO_ICON_BUTTON_INFO);
|
||||||
|
mf->setHint("", LOCALE_MENU_HINT_NET_SHOW);
|
||||||
|
networkSettings->addItem(mf); //show settings
|
||||||
|
|
||||||
networkSettings->addItem(GenericMenuSeparatorLine);
|
networkSettings->addItem(GenericMenuSeparatorLine);
|
||||||
//------------------------------------------------
|
//------------------------------------------------
|
||||||
if(ifcount)
|
if(ifcount)
|
||||||
@@ -300,6 +317,9 @@ int CNetworkSetup::showNetworkSetup()
|
|||||||
CMenuForwarder *m9 = new CMenuDForwarder(LOCALE_NETWORKMENU_SSID , networkConfig->wireless, network_ssid , networkSettings_ssid );
|
CMenuForwarder *m9 = new CMenuDForwarder(LOCALE_NETWORKMENU_SSID , networkConfig->wireless, network_ssid , networkSettings_ssid );
|
||||||
CMenuForwarder *m10 = new CMenuDForwarder(LOCALE_NETWORKMENU_PASSWORD , networkConfig->wireless, network_key , networkSettings_key );
|
CMenuForwarder *m10 = new CMenuDForwarder(LOCALE_NETWORKMENU_PASSWORD , networkConfig->wireless, network_key , networkSettings_key );
|
||||||
|
|
||||||
|
m9->setHint("", LOCALE_MENU_HINT_NET_SSID);
|
||||||
|
m10->setHint("", LOCALE_MENU_HINT_NET_PASS);
|
||||||
|
|
||||||
wlanEnable[0] = m9;
|
wlanEnable[0] = m9;
|
||||||
wlanEnable[1] = m10;
|
wlanEnable[1] = m10;
|
||||||
|
|
||||||
@@ -311,25 +331,34 @@ int CNetworkSetup::showNetworkSetup()
|
|||||||
//ntp submenu
|
//ntp submenu
|
||||||
sectionsdConfigNotifier = new CSectionsdConfigNotifier;
|
sectionsdConfigNotifier = new CSectionsdConfigNotifier;
|
||||||
CMenuWidget ntp(LOCALE_MAINSETTINGS_NETWORK, NEUTRINO_ICON_SETTINGS, width, MN_WIDGET_ID_NETWORKSETUP_NTP);
|
CMenuWidget ntp(LOCALE_MAINSETTINGS_NETWORK, NEUTRINO_ICON_SETTINGS, width, MN_WIDGET_ID_NETWORKSETUP_NTP);
|
||||||
networkSettings->addItem(new CMenuForwarder(LOCALE_NETWORKMENU_NTPTITLE, true, NULL, &ntp, NULL, CRCInput::RC_yellow, NEUTRINO_ICON_BUTTON_YELLOW));
|
mf = new CMenuForwarder(LOCALE_NETWORKMENU_NTPTITLE, true, NULL, &ntp, NULL, CRCInput::RC_yellow, NEUTRINO_ICON_BUTTON_YELLOW);
|
||||||
|
mf->setHint("", LOCALE_MENU_HINT_NET_NTP);
|
||||||
|
networkSettings->addItem(mf);
|
||||||
|
|
||||||
showNetworkNTPSetup(&ntp);
|
showNetworkNTPSetup(&ntp);
|
||||||
|
|
||||||
//nfs mount submenu
|
//nfs mount submenu
|
||||||
CMenuWidget networkmounts(LOCALE_MAINSETTINGS_NETWORK, NEUTRINO_ICON_SETTINGS, width, MN_WIDGET_ID_NETWORKSETUP_MOUNTS);
|
CMenuWidget networkmounts(LOCALE_MAINSETTINGS_NETWORK, NEUTRINO_ICON_SETTINGS, width, MN_WIDGET_ID_NETWORKSETUP_MOUNTS);
|
||||||
networkSettings->addItem(new CMenuForwarder(LOCALE_NETWORKMENU_MOUNT, true, NULL, &networkmounts, NULL, CRCInput::RC_blue, NEUTRINO_ICON_BUTTON_BLUE));
|
mf = new CMenuForwarder(LOCALE_NETWORKMENU_MOUNT, true, NULL, &networkmounts, NULL, CRCInput::RC_blue, NEUTRINO_ICON_BUTTON_BLUE);
|
||||||
|
mf->setHint("", LOCALE_MENU_HINT_NET_MOUNT);
|
||||||
|
networkSettings->addItem(mf);
|
||||||
showNetworkNFSMounts(&networkmounts);
|
showNetworkNFSMounts(&networkmounts);
|
||||||
|
|
||||||
//proxyserver submenu
|
//proxyserver submenu
|
||||||
CProxySetup proxy(LOCALE_MAINSETTINGS_NETWORK);
|
CProxySetup proxy(LOCALE_MAINSETTINGS_NETWORK);
|
||||||
networkSettings->addItem(new CMenuForwarder(LOCALE_FLASHUPDATE_PROXYSERVER_SEP, true, NULL, &proxy, NULL, CRCInput::RC_0, NEUTRINO_ICON_BUTTON_0));
|
mf = new CMenuForwarder(LOCALE_FLASHUPDATE_PROXYSERVER_SEP, true, NULL, &proxy, NULL, CRCInput::RC_0, NEUTRINO_ICON_BUTTON_0);
|
||||||
|
mf->setHint("", LOCALE_MENU_HINT_NET_PROXY);
|
||||||
|
networkSettings->addItem(mf);
|
||||||
|
|
||||||
//services
|
//services
|
||||||
CNetworkServiceSetup services;
|
CNetworkServiceSetup services;
|
||||||
networkSettings->addItem(new CMenuForwarder(LOCALE_NETWORKMENU_SERVICES, true, NULL, &services, NULL, CRCInput::RC_1, NEUTRINO_ICON_BUTTON_1));
|
mf = new CMenuForwarder(LOCALE_NETWORKMENU_SERVICES, true, NULL, &services, NULL, CRCInput::RC_1, NEUTRINO_ICON_BUTTON_1);
|
||||||
|
mf->setHint("", LOCALE_MENU_HINT_NET_SERVICES);
|
||||||
|
networkSettings->addItem(mf);
|
||||||
|
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
while(true) {
|
while(true) {
|
||||||
int res = menu_return::RETURN_EXIT;
|
int res = menu_return::RETURN_EXIT;
|
||||||
ret = networkSettings->exec(NULL, "");
|
ret = networkSettings->exec(NULL, "");
|
||||||
|
|
||||||
if (settingsChanged())
|
if (settingsChanged())
|
||||||
@@ -337,7 +366,7 @@ int CNetworkSetup::showNetworkSetup()
|
|||||||
if(res == menu_return::RETURN_EXIT)
|
if(res == menu_return::RETURN_EXIT)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
delete networkSettings;
|
delete networkSettings;
|
||||||
delete sectionsdConfigNotifier;
|
delete sectionsdConfigNotifier;
|
||||||
return ret;
|
return ret;
|
||||||
@@ -353,7 +382,11 @@ void CNetworkSetup::showNetworkNTPSetup(CMenuWidget *menu_ntp)
|
|||||||
CMenuOptionChooser *ntp1 = new CMenuOptionChooser(LOCALE_NETWORKMENU_NTPENABLE, &g_settings.network_ntpenable, OPTIONS_NTPENABLE_OPTIONS, OPTIONS_NTPENABLE_OPTION_COUNT, true, sectionsdConfigNotifier);
|
CMenuOptionChooser *ntp1 = new CMenuOptionChooser(LOCALE_NETWORKMENU_NTPENABLE, &g_settings.network_ntpenable, OPTIONS_NTPENABLE_OPTIONS, OPTIONS_NTPENABLE_OPTION_COUNT, true, sectionsdConfigNotifier);
|
||||||
CMenuForwarder *ntp2 = new CMenuDForwarder( LOCALE_NETWORKMENU_NTPSERVER, true , g_settings.network_ntpserver, networkSettings_NtpServer );
|
CMenuForwarder *ntp2 = new CMenuDForwarder( LOCALE_NETWORKMENU_NTPSERVER, true , g_settings.network_ntpserver, networkSettings_NtpServer );
|
||||||
CMenuForwarder *ntp3 = new CMenuDForwarder( LOCALE_NETWORKMENU_NTPREFRESH, true , g_settings.network_ntprefresh, networkSettings_NtpRefresh );
|
CMenuForwarder *ntp3 = new CMenuDForwarder( LOCALE_NETWORKMENU_NTPREFRESH, true , g_settings.network_ntprefresh, networkSettings_NtpRefresh );
|
||||||
|
|
||||||
|
ntp1->setHint("", LOCALE_MENU_HINT_NET_NTPENABLE);
|
||||||
|
ntp2->setHint("", LOCALE_MENU_HINT_NET_NTPSERVER);
|
||||||
|
ntp3->setHint("", LOCALE_MENU_HINT_NET_NTPREFRESH);
|
||||||
|
|
||||||
menu_ntp->addIntroItems(LOCALE_NETWORKMENU_NTPTITLE);
|
menu_ntp->addIntroItems(LOCALE_NETWORKMENU_NTPTITLE);
|
||||||
menu_ntp->addItem( ntp1);
|
menu_ntp->addItem( ntp1);
|
||||||
menu_ntp->addItem( ntp2);
|
menu_ntp->addItem( ntp2);
|
||||||
@@ -363,8 +396,12 @@ void CNetworkSetup::showNetworkNTPSetup(CMenuWidget *menu_ntp)
|
|||||||
void CNetworkSetup::showNetworkNFSMounts(CMenuWidget *menu_nfs)
|
void CNetworkSetup::showNetworkNFSMounts(CMenuWidget *menu_nfs)
|
||||||
{
|
{
|
||||||
menu_nfs->addIntroItems(LOCALE_NETWORKMENU_MOUNT);
|
menu_nfs->addIntroItems(LOCALE_NETWORKMENU_MOUNT);
|
||||||
menu_nfs->addItem(new CMenuDForwarder(LOCALE_NFS_MOUNT , true, NULL, new CNFSMountGui(), NULL, CRCInput::RC_red, NEUTRINO_ICON_BUTTON_RED));
|
CMenuForwarder * mf = new CMenuDForwarder(LOCALE_NFS_MOUNT , true, NULL, new CNFSMountGui(), NULL, CRCInput::RC_red, NEUTRINO_ICON_BUTTON_RED);
|
||||||
menu_nfs->addItem(new CMenuDForwarder(LOCALE_NFS_UMOUNT, true, NULL, new CNFSUmountGui(), NULL, CRCInput::RC_green, NEUTRINO_ICON_BUTTON_GREEN));
|
mf->setHint("", LOCALE_MENU_HINT_NET_NFS_MOUNT);
|
||||||
|
menu_nfs->addItem(mf);
|
||||||
|
mf = new CMenuDForwarder(LOCALE_NFS_UMOUNT, true, NULL, new CNFSUmountGui(), NULL, CRCInput::RC_green, NEUTRINO_ICON_BUTTON_GREEN);
|
||||||
|
mf->setHint("", LOCALE_MENU_HINT_NET_NFS_UMOUNT);
|
||||||
|
menu_nfs->addItem(mf);
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef struct n_isettings_t
|
typedef struct n_isettings_t
|
||||||
@@ -373,12 +410,12 @@ typedef struct n_isettings_t
|
|||||||
int network_setting;
|
int network_setting;
|
||||||
}n_isettings_struct_t;
|
}n_isettings_struct_t;
|
||||||
|
|
||||||
//checks settings changes for int settings, returns true on changes
|
//checks settings changes for int settings, returns true on changes
|
||||||
bool CNetworkSetup::checkIntSettings()
|
bool CNetworkSetup::checkIntSettings()
|
||||||
{
|
{
|
||||||
n_isettings_t n_isettings[] =
|
n_isettings_t n_isettings[] =
|
||||||
{
|
{
|
||||||
{old_network_automatic_start, network_automatic_start},
|
{old_network_automatic_start, network_automatic_start},
|
||||||
{old_network_dhcp, network_dhcp }
|
{old_network_dhcp, network_dhcp }
|
||||||
};
|
};
|
||||||
for (uint i = 0; i < (sizeof(n_isettings) / sizeof(n_isettings[0])); i++)
|
for (uint i = 0; i < (sizeof(n_isettings) / sizeof(n_isettings[0])); i++)
|
||||||
@@ -400,8 +437,8 @@ typedef struct n_ssettings_t
|
|||||||
|
|
||||||
//checks settings changes for int settings, returns true on changes
|
//checks settings changes for int settings, returns true on changes
|
||||||
bool CNetworkSetup::checkStringSettings()
|
bool CNetworkSetup::checkStringSettings()
|
||||||
{
|
{
|
||||||
n_ssettings_t n_ssettings[] =
|
n_ssettings_t n_ssettings[] =
|
||||||
{
|
{
|
||||||
{old_network_address, network_address },
|
{old_network_address, network_address },
|
||||||
{old_network_netmask, network_netmask },
|
{old_network_netmask, network_netmask },
|
||||||
@@ -426,12 +463,12 @@ bool CNetworkSetup::checkStringSettings()
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
//returns true, if any settings were changed
|
//returns true, if any settings were changed
|
||||||
bool CNetworkSetup::settingsChanged()
|
bool CNetworkSetup::settingsChanged()
|
||||||
{
|
{
|
||||||
if (networkConfig->modified_from_orig() || checkStringSettings() || checkIntSettings())
|
if (networkConfig->modified_from_orig() || checkStringSettings() || checkIntSettings())
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -470,26 +507,26 @@ bool CNetworkSetup::checkForIP()
|
|||||||
{LOCALE_NETWORKMENU_GATEWAY, network_gateway },
|
{LOCALE_NETWORKMENU_GATEWAY, network_gateway },
|
||||||
{LOCALE_NETWORKMENU_NAMESERVER, network_nameserver }
|
{LOCALE_NETWORKMENU_NAMESERVER, network_nameserver }
|
||||||
};
|
};
|
||||||
|
|
||||||
if (!network_dhcp)
|
if (!network_dhcp)
|
||||||
{
|
{
|
||||||
for (uint i = 0; i < (sizeof(n_settings) / sizeof(n_settings[0])); i++)
|
for (uint i = 0; i < (sizeof(n_settings) / sizeof(n_settings[0])); i++)
|
||||||
{
|
{
|
||||||
if (n_settings[i].network_settings.empty()) //no definied setting
|
if (n_settings[i].network_settings.empty()) //no definied setting
|
||||||
{
|
{
|
||||||
printf("[network setup] empty address %s\n", g_Locale->getText(n_settings[i].addr_name));
|
printf("[network setup] empty address %s\n", g_Locale->getText(n_settings[i].addr_name));
|
||||||
char msg[64];
|
char msg[64];
|
||||||
snprintf(msg, 64, g_Locale->getText(LOCALE_NETWORKMENU_ERROR_NO_ADDRESS), g_Locale->getText(n_settings[i].addr_name));
|
snprintf(msg, 64, g_Locale->getText(LOCALE_NETWORKMENU_ERROR_NO_ADDRESS), g_Locale->getText(n_settings[i].addr_name));
|
||||||
ShowMsgUTF(LOCALE_MAINSETTINGS_NETWORK, msg, CMessageBox::mbrOk, CMessageBox::mbOk, NEUTRINO_ICON_ERROR, width);
|
ShowMsgUTF(LOCALE_MAINSETTINGS_NETWORK, msg, CMessageBox::mbrOk, CMessageBox::mbOk, NEUTRINO_ICON_ERROR, width);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
//saves settings without apply, reboot is required
|
//saves settings without apply, reboot is required
|
||||||
void CNetworkSetup::saveNetworkSettings()
|
void CNetworkSetup::saveNetworkSettings()
|
||||||
{
|
{
|
||||||
printf("[network setup] saving current network settings...\n");
|
printf("[network setup] saving current network settings...\n");
|
||||||
@@ -502,13 +539,13 @@ void CNetworkSetup::saveNetworkSettings()
|
|||||||
void CNetworkSetup::applyNetworkSettings()
|
void CNetworkSetup::applyNetworkSettings()
|
||||||
{
|
{
|
||||||
printf("[network setup] apply network settings...\n");
|
printf("[network setup] apply network settings...\n");
|
||||||
|
|
||||||
if (!checkForIP())
|
if (!checkForIP())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
CHintBox * hintBox = new CHintBox(LOCALE_MESSAGEBOX_INFO, g_Locale->getText(LOCALE_NETWORKMENU_APPLY_SETTINGS)); // UTF-8
|
CHintBox * hintBox = new CHintBox(LOCALE_MESSAGEBOX_INFO, g_Locale->getText(LOCALE_NETWORKMENU_APPLY_SETTINGS)); // UTF-8
|
||||||
hintBox->paint();
|
hintBox->paint();
|
||||||
|
|
||||||
networkConfig->stopNetwork();
|
networkConfig->stopNetwork();
|
||||||
saveNetworkSettings();
|
saveNetworkSettings();
|
||||||
networkConfig->startNetwork();
|
networkConfig->startNetwork();
|
||||||
@@ -523,10 +560,10 @@ void CNetworkSetup::applyNetworkSettings()
|
|||||||
int CNetworkSetup::saveChangesDialog()
|
int CNetworkSetup::saveChangesDialog()
|
||||||
{
|
{
|
||||||
// Save the settings after changes, if user wants to!
|
// Save the settings after changes, if user wants to!
|
||||||
int result = ShowMsgUTF(LOCALE_MAINSETTINGS_NETWORK, g_Locale->getText(LOCALE_NETWORKMENU_APPLY_SETTINGS_NOW), CMessageBox::mbrYes,
|
int result = ShowMsgUTF(LOCALE_MAINSETTINGS_NETWORK, g_Locale->getText(LOCALE_NETWORKMENU_APPLY_SETTINGS_NOW), CMessageBox::mbrYes,
|
||||||
CMessageBox::mbYes |
|
CMessageBox::mbYes |
|
||||||
CMessageBox::mbNo ,
|
CMessageBox::mbNo ,
|
||||||
NEUTRINO_ICON_QUESTION,
|
NEUTRINO_ICON_QUESTION,
|
||||||
width);
|
width);
|
||||||
|
|
||||||
switch(result)
|
switch(result)
|
||||||
@@ -536,7 +573,7 @@ int CNetworkSetup::saveChangesDialog()
|
|||||||
return menu_return::RETURN_REPAINT;
|
return menu_return::RETURN_REPAINT;
|
||||||
return exec(NULL, "networkapply");
|
return exec(NULL, "networkapply");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case CMessageBox::mbrNo: //no
|
case CMessageBox::mbrNo: //no
|
||||||
return exec(NULL, "restore");
|
return exec(NULL, "restore");
|
||||||
break;
|
break;
|
||||||
@@ -544,7 +581,7 @@ int CNetworkSetup::saveChangesDialog()
|
|||||||
return menu_return::RETURN_REPAINT;
|
return menu_return::RETURN_REPAINT;
|
||||||
}
|
}
|
||||||
|
|
||||||
//restores settings
|
//restores settings
|
||||||
void CNetworkSetup::restoreNetworkSettings()
|
void CNetworkSetup::restoreNetworkSettings()
|
||||||
{
|
{
|
||||||
snprintf(g_settings.ifname, sizeof(g_settings.ifname), "%s", old_ifname.c_str());
|
snprintf(g_settings.ifname, sizeof(g_settings.ifname), "%s", old_ifname.c_str());
|
||||||
|
Reference in New Issue
Block a user