void CGUIWindowBoxeeWizardNetwork::GetUserConfiguration(CStdString& interfaceName, CStdString& essId, CStdString& key, EncMode& enc) { // Get current settings from the GUI components CGUIMessage msg(GUI_MSG_ITEM_SELECTED, GetID(), CONTROL_INTERFACES); OnMessage(msg); int iItem = msg.GetParam1(); CNetworkInterface* interface = m_interfaces[iItem]; interfaceName = interface->GetName(); if (interface->IsWireless()) { CGUIMessage msg2(GUI_MSG_ITEM_SELECTED, GetID(), CONTROL_WIRELESS); OnMessage(msg2); int iItem = msg2.GetParam1(); essId = m_networkItems[iItem]->GetLabel(); CGUIButtonControl* passwordButton = (CGUIButtonControl*) GetControl(CONTROL_PASSWORD); key = passwordButton->GetLabel(); CGUIButtonControl* encSelectionButton = (CGUIButtonControl*) GetControl(CONTROL_ENC_SELECTION); CStdString encStr = encSelectionButton->GetLabel(); for (int i = 0; i < 5; i++) { if (strcasecmp(encStr.c_str(), ENC_LABELS[i]) == 0) { enc = ENC_MODES[i]; break; } } } }
void CGUIDialogButtonMenu::FrameMove() { // get the label control CGUILabelControl *pLabel = (CGUILabelControl *)GetControl(CONTROL_BUTTON_LABEL); if (pLabel) { // get the active window, and put it's label into the label control const CGUIControl *pControl = GetFocusedControl(); if (pControl && (pControl->GetControlType() == CGUIControl::GUICONTROL_BUTTON || pControl->GetControlType() == CGUIControl::GUICONTROL_TOGGLEBUTTON)) { CGUIButtonControl *pButton = (CGUIButtonControl *)pControl; pLabel->SetLabel(pButton->GetLabel()); } } CGUIDialog::FrameMove(); }
void Interface_GUIControlButton::GetLabel(void* kodiBase, void* handle, char &label, unsigned int &iMaxStringSize) { CAddonDll* addon = static_cast<CAddonDll*>(kodiBase); if (!addon) { CLog::Log(LOGERROR, "ADDON::Interface_GUIControlButton::%s - invalid data", __FUNCTION__); return; } if (!handle) { CLog::Log(LOGERROR, "ADDON::Interface_GUIControlButton::%s - invalid handler data on addon '%s'", __FUNCTION__, addon->ID().c_str()); return; } CGUIButtonControl* pButton = static_cast<CGUIButtonControl *>(handle); std::string text = pButton->GetLabel(); strncpy(&label, text.c_str(), iMaxStringSize); iMaxStringSize = text.length(); }
bool CGUIWindowBoxeeWizardNetwork::OnAction(const CAction &action) { int iControl = GetFocusedControlID(); if (action.wID == ACTION_PREVIOUS_MENU || (action.wID == ACTION_SELECT_ITEM && iControl == CONTROL_BACK)) { Close(); } else if (action.wID == ACTION_SELECT_ITEM && iControl == CONTROL_INTERFACES) { ShowWirelessNetworksIfNeeded(); CGUIListContainer *pList = (CGUIListContainer *)GetControl(CONTROL_INTERFACES); if (pList) pList->SetSingleSelectedItem(); return true; } else if (action.wID == ACTION_MOVE_LEFT && iControl == CONTROL_WIRELESS) { ShowInterfaces(); SET_CONTROL_FOCUS(CONTROL_INTERFACES, 0); CGUIListContainer *pList = (CGUIListContainer *)GetControl(CONTROL_WIRELESS); if (pList) pList->SetSingleSelectedItem(); return true; } else if (action.wID == ACTION_SELECT_ITEM && iControl == CONTROL_WIRELESS) { ShowPasswordIfNeeded(); CGUIListContainer *pList = (CGUIListContainer *)GetControl(CONTROL_WIRELESS); if (pList) pList->SetSingleSelectedItem(); return true; } else if (action.wID == ACTION_SELECT_ITEM && iControl == CONTROL_PASSWORD) { CGUIButtonControl* passwordButton = (CGUIButtonControl*) GetControl(iControl); CStdString password = passwordButton->GetLabel(); if (CGUIDialogKeyboard::ShowAndGetInput(password, g_localizeStrings.Get(789), false)) { passwordButton->SetLabel(password); CONTROL_ENABLE(CONTROL_NEXT); SET_CONTROL_FOCUS(CONTROL_NEXT, 0); } return true; } else if (action.wID == ACTION_SELECT_ITEM && iControl == CONTROL_ENC) { CGUIButtonControl* encSelectionButton = (CGUIButtonControl*) GetControl(CONTROL_ENC_SELECTION); CGUIMessage msg(GUI_MSG_ITEM_SELECTED, GetID(), CONTROL_ENC); OnMessage(msg); int iItem = msg.GetParam1(); encSelectionButton->SetLabel(ENC_LABELS[iItem]); SET_CONTROL_HIDDEN(CONTROL_ENC); if (iItem == ENC_NONE) { SET_CONTROL_HIDDEN(CONTROL_PASSWORD_GROUP); SET_CONTROL_FOCUS(CONTROL_NEXT, 0); } else { SET_CONTROL_FOCUS(CONTROL_PASSWORD, 0); } return true; } else if (action.wID == ACTION_MOVE_LEFT && (iControl == CONTROL_ENC_SELECTION || iControl == CONTROL_PASSWORD)) { SET_CONTROL_HIDDEN(CONTROL_ENC_GROUP); SET_CONTROL_HIDDEN(CONTROL_PASSWORD_GROUP); SET_CONTROL_FOCUS(CONTROL_WIRELESS, 0); return true; } else if (action.wID == ACTION_MOVE_DOWN && iControl == CONTROL_ENC_SELECTION) { if (GetControl(CONTROL_PASSWORD_GROUP)->IsVisible()) { SET_CONTROL_FOCUS(CONTROL_PASSWORD, 0); } else if (!GetControl(CONTROL_NEXT)->IsDisabled()) { SET_CONTROL_FOCUS(CONTROL_NEXT, 0); } return true; } else if (action.wID == ACTION_MOVE_UP && (iControl == CONTROL_NEXT || iControl == CONTROL_BACK)) { if (GetControl(CONTROL_PASSWORD_GROUP)->IsVisible()) { SET_CONTROL_FOCUS(CONTROL_PASSWORD, 0); } else if (GetControl(CONTROL_ENC_GROUP)->IsVisible()) { SET_CONTROL_FOCUS(CONTROL_ENC_SELECTION, 0); } else { SET_CONTROL_FOCUS(CONTROL_INTERFACES, 0); } return true; } else if (action.wID == ACTION_SELECT_ITEM && iControl == CONTROL_NEXT) { if (GetControl(CONTROL_ENC_SELECTION)->IsVisible() && GetControl(CONTROL_PASSWORD)->IsVisible()) { CGUIMessage msg(GUI_MSG_ITEM_SELECTED, GetID(), CONTROL_ENC); OnMessage(msg); int iItem = msg.GetParam1(); CGUIButtonControl* passwordButton = (CGUIButtonControl*) GetControl(CONTROL_PASSWORD); CStdString password = passwordButton->GetLabel(); if (ENC_MODES[iItem] == ENC_WEP_HEX && !IsHexString(password)) { CGUIDialogOK *pDialogOK = (CGUIDialogOK *)m_gWindowManager.GetWindow(WINDOW_DIALOG_OK); pDialogOK->SetHeading(""); pDialogOK->SetLine(0, 51018); pDialogOK->SetLine(1, 51019); pDialogOK->DoModal(); return true; } } if (SaveConfiguration()) { // Close all wizard dialogs Close(); CGUIDialog* dialog = (CGUIDialog*) m_gWindowManager.GetWindow(WINDOW_BOXEE_WIZARD_AUDIO); dialog->Close(); dialog = (CGUIDialog*) m_gWindowManager.GetWindow(WINDOW_BOXEE_WIZARD_RESOLUTION); dialog->Close(); } return true; } return CGUIWindow::OnAction(action); }