/// <summary> /// InputControl Clear 클릭 /// </summary> /// <param name="txt">현재 포커스 inputControl</param> /// <param name="txtFocus">이전 포커스 inputControl</param> /// <param name="strMsg">이전 포커스 이동시 메세지창 내용</param> private void SetClearControl(OPOSKeyEventArgs e, InputText txt, InputText txtFocus) { if (txt.Text.Length <= 0) { if (txt.Name.ToString() == txt07.Name.ToString()) { if (txt05.Text.ToString() == "19") { txtFocus = txt06; } else { txtFocus = txt05; } } else if (txt.Name.ToString() == txt06.Name.ToString()) { txt07.Text = string.Empty; } if (txtFocus != null) { txtFocus.SetFocus(); } e.IsHandled = true; } else { if (txt.Name.ToString() == txt05.Name.ToString()) { txt06.Text = string.Empty; } } }
protected void axCtrlKeyboard1_KeyboardEvent(object sender, AxKeyBoardHook.__CtrlKeyboard_KeyboardEventEvent e) { if (KeyInputForm.ProgressHandle == KeyInputForm.ActiveHandle) { return; } if (Form.ActiveForm != null && Form.ActiveForm.Handle != KeyInputForm.ActiveHandle) { return; } if (e.strData.Equals("025") || e.strData.Equals("026") || e.strData.Equals("027") || e.strData.Equals("009") || e.strData.Equals("06A")) { var ev = OPOSKeyEventArgs.FromKeyCode(e.strData); PostMessageHandler.Current.PostEvent(ev); } else { int k = int.Parse(e.strData, System.Globalization.NumberStyles.HexNumber); PostMessage(KeyInputForm.ActiveHandle, WM_KEYDOWN, (IntPtr)k, IntPtr.Zero); } }
/// <summary> /// /// </summary> /// <param name="e"></param> void ValidateInputTextOnKeyEvent(OPOSKeyEventArgs e) { if (e.Key.OPOSKey == OPOSMapKeys.KEY_CLEAR) { e.IsHandled = true; InputText it = (InputText)this.FocusedControl; if (!string.IsNullOrEmpty(it.Text)) { it.Text = string.Empty; return; } if (IsInitialState()) { btnClose_Click(btnClose, EventArgs.Empty); } else { this.PreviousControl(); } return; } ValidateEnterOnControl(); }
/// <summary> /// Key Event /// </summary> /// <param name="e"></param> void form_KeyEvent(OPOSKeyEventArgs e) { if (_bDisable) { e.IsHandled = true; return; } if (e.Key.OPOSKey == OPOSMapKeys.KEY_NOSALE) { if (POSDeviceManager.CashDrawer != null && POSDeviceManager.CashDrawer.Status == WSWD.WmallPos.POS.FX.Shared.DeviceStatus.Opened && POSDeviceManager.CashDrawer.Enabled) { //돈통 open POSDeviceManager.CashDrawer.OpenDrawer(); } return; } if (e.Key.OPOSKey == OPOSMapKeys.KEY_CLEAR) { e.IsHandled = true; btnClose_Click(btnClose, null); } if (e.Key.OPOSKey == OPOSMapKeys.KEY_ENTER) { e.IsHandled = true; btnRetry_Click(btnRetry, null); } }
void POS_SO_M001_KeyEvent(OPOSKeyEventArgs e) { if (e.Key.OPOSKey == OPOSMapKeys.KEY_ENTER) { e.IsHandled = true; if (txtCasNo.IsFocused) { presenter.ValidateCasNo(); } else { presenter.ValidateLogin(!string.IsNullOrEmpty(ConfigData.Current.AppConfig.PosInfo.CasNo)); } } else if (e.Key.OPOSKey == OPOSMapKeys.KEY_CLEAR) { if (this.KeyListener.FocusedControl != null) { InputText it = (InputText)this.KeyListener.FocusedControl; if (it.Text.Length > 0) { return; } } e.IsHandled = true; this.KeyListener.PreviousControl(); } }
/// <summary> /// Handle key event, click event /// </summary> /// <param name="e"></param> void btn_KeyEvent(OPOSKeyEventArgs e) { if (e.Key.OPOSKey == OPOSMapKeys.KEY_SUBTOTAL) { // switch key to after mode ResetState(true); } }
void SaleGridPanel_KeyEvent(OPOSKeyEventArgs e) { if (e.Key.OPOSKey == OPOSMapKeys.KEY_UP || e.Key.OPOSKey == OPOSMapKeys.KEY_DOWN) { e.IsHandled = true; DoUpDown(e.Key.OPOSKey == OPOSMapKeys.KEY_UP); } }
/// <summary> /// KeyEvent /// </summary> /// <param name="e"></param> void form_KeyEvent(OPOSKeyEventArgs e) { if (e.Key.OPOSKey == OPOSMapKeys.KEY_CLEAR || e.Key.OPOSKey == OPOSMapKeys.KEY_ENTER) { ValidateInputTextOnKeyEvent(e); } }
/// <summary> /// KeyEvent /// </summary> /// <param name="e"></param> void form_KeyEvent(OPOSKeyEventArgs e) { e.IsHandled = true; if (e.Key.OPOSKey == OPOSMapKeys.KEY_CLEAR) { btnClose_Click(btnClose, EventArgs.Empty); } }
/// <summary> /// Perform key event /// </summary> /// <param name="sender"></param> /// <param name="e"></param> void FuncButton_Click(object sender, EventArgs e) { if (this.MappedKey == null) { return; } PerformKeyEvent(OPOSKeyEventArgs.FromFuncCode(this.MappedKey.CdFunc)); }
/// <summary> /// Key event 발생 /// </summary> /// <param name="e"></param> public void PostKeyEvent(OPOSKeyEventArgs e) { if (e.Key == null) { return; } // Trace.WriteLine(e.KeyCodeText, "program"); Enqueue(e); StartProcessKeyEvent(); }
void intCasNo_KeyEvent(OPOSKeyEventArgs e) { if (e.IsControlKey) { if (txtCasNo.Text.Length != 7) { txtCasName.Text = string.Empty; txtPassword.Text = string.Empty; presenter.ValidateCasNo(); } } }
/// <summary> /// /// </summary> /// <param name="keyName"></param> void ProcessKeyEvent(string keyName) { var mapKey = (OPOSMapKeys)Enum.Parse(typeof(OPOSMapKeys), keyName); KeyMap keyMap = ConfigData.Current.KeyMapConfig.KeyMapByKeyName(mapKey.ToString()); var ev = new OPOSKeyEventArgs() { Key = keyMap, KeyCode = keyMap.KeyCode }; this.KeyListener.ProcessOneKeyEvent(ev); }
static public void ProcessFuncKey(this IChildFormManager form, OPOSKeyEventArgs e) { switch (e.Key.OPOSKey) { case OPOSMapKeys.KEY_SIGNOFF: // 싸인오프 e.IsHandled = true; form.OnLoggedOut(); break; case OPOSMapKeys.KEY_EOD: // 정산 e.IsHandled = true; form.ShowMenu("MNU_CLOSE"); break; case OPOSMapKeys.KEY_INOUT: // 입출금등록 e.IsHandled = true; form.ShowMenu("MNU_IO"); break; case OPOSMapKeys.KEY_INQUIRY: // 점검조회 e.IsHandled = true; form.ShowMenu("MNU_CHECK"); break; case OPOSMapKeys.KEY_INQCHK: // 수표조회 e.IsHandled = true; form.ShowForm(string.Empty, "WSWD.WmallPos.POS.IQ.dll", "WSWD.WmallPos.POS.IQ.VC.POS_IQ_P003"); break; case OPOSMapKeys.KEY_INQRECP: // 영수증조회 e.IsHandled = true; form.ShowForm(string.Empty, "WSWD.WmallPos.POS.IQ.dll", "WSWD.WmallPos.POS.IQ.VC.POS_IQ_P004"); break; case OPOSMapKeys.KEY_NOSALE: // 돈통열기 e.IsHandled = true; try { POSDeviceManager.CashDrawer.OpenDrawer(); } catch { } break; default: break; } }
void MainMenu_KeyEvent(OPOSKeyEventArgs e) { if (!this.Visible || !this.Enabled) { return; } if (!e.IsControlKey) { e.IsHandled = true; if (this.lblSelectMenu.Text.Length == 2) { this.lblSelectMenu.Text = string.Empty; } this.lblSelectMenu.Text += (char)e.KeyCode; } else { if (e.Key.OPOSKey == OPOSMapKeys.KEY_ENTER) { e.IsHandled = true; FindMenuByText(); } else if (e.Key.OPOSKey == OPOSMapKeys.KEY_CLEAR) { if (this.lblSelectMenu.Text.Length == 0) { if (ModeSingleMenu) { // back key var backMenu = FindChildMenuByClass(m_menuData, "PreviousMenu"); if (backMenu != null) { SelectMenu(backMenu); return; } } } else { this.lblSelectMenu.Text = string.Empty; } } else { FrameBase fb = (FrameBase)this.ParentForm; ((IChildFormManager)this.ParentForm).ProcessFuncKey(e, false, fb.InSaleMode || fb.SaleItemInputing); } } }
void POS_PY_P013_KeyEvent(OPOSKeyEventArgs e) { if (ModeProcessing == CashICPaymentState.Processing) { e.IsHandled = true; return; } if (e.Key.OPOSKey == OPOSMapKeys.KEY_CLEAR || e.Key.OPOSKey == OPOSMapKeys.KEY_ENTER) { ValidateOnKeyEvent(e); } }
void MainMenu_KeyEvent(OPOSKeyEventArgs e) { if (this.Visible && this.Enabled && !e.IsControlKey) { if (this.lblSelectMenu.Text.Length == 2 || m_foundMenuShortcut) { m_foundMenuShortcut = false; this.lblSelectMenu.Text = string.Empty; } this.lblSelectMenu.Text += (char)e.KeyCode; e.IsHandled = true; } }
/// <summary> /// InputControl 자릿수 유효성 검사 및 포커스 지정과 메시지 설정 /// </summary> /// <param name="e"></param> /// <param name="txt">현재 포커스 inputControl</param> /// <param name="txtFocus">다음 포커스 inputControl</param> private void ValidationLength(OPOSKeyEventArgs e, InputText txt, InputText txtFocus) { if (txt.Text.Length + 1 == txt.MaxLength) { txt.Text = txt.Text + e.KeyCodeText.ToString(); if (txt.Name.ToString() == txt05.Name.ToString()) { if (txt.Text == "13" || txt.Text == "14" || txt.Text == "15" || txt.Text == "16") { switch (txt.Text.ToString()) { case "13": txt06.Text = strMsg10; break; case "14": txt06.Text = strMsg11; break; case "15": txt06.Text = strMsg12; break; case "16": txt06.Text = strMsg13; break; default: break; } txt07.SetFocus(); } else if (txt.Text == "19") { txt06.SetFocus(); } } if (txtFocus != null) { txtFocus.SetFocus(); } e.IsHandled = true; } }
void btn_Click(object sender, EventArgs e) { FuncButton fb = (FuncButton)sender; if (fb.MappedKey == null) { return; } var ev = OPOSKeyEventArgs.FromFuncCode(fb.MappedKey.CdFunc); if (ev != null && ev.Key.OPOSKey != OPOSMapKeys.INVALID) { btn_KeyEvent(ev); } }
void MessageDialog_KeyEvent(OPOSKeyEventArgs e) { if (e.Key.OPOSKey == OPOSMapKeys.KEY_ENTER) { switch (m_messageType) { case MessageDialogType.Question: MessageDialog_Button_Click(btnNoOK, EventArgs.Empty); break; case MessageDialogType.YesNoCancel: MessageDialog_Button_Click(btnYes, EventArgs.Empty); break; case MessageDialogType.Error: case MessageDialogType.Warning: case MessageDialogType.Information: default: MessageDialog_Button_Click(btnCancelClose, EventArgs.Empty); break; } e.IsHandled = true; } else if (e.Key.OPOSKey == OPOSMapKeys.KEY_CLEAR) { switch (m_messageType) { case MessageDialogType.Question: MessageDialog_Button_Click(btnCancelClose, EventArgs.Empty); break; case MessageDialogType.YesNoCancel: MessageDialog_Button_Click(btnCancelClose, EventArgs.Empty); break; case MessageDialogType.Error: case MessageDialogType.Warning: case MessageDialogType.Information: default: MessageDialog_Button_Click(btnCancelClose, EventArgs.Empty); break; } e.IsHandled = true; } }
public void PerformKeyEvent(OPOSKeyEventArgs e) { if (KeyEvent != null) { if (this.InvokeRequired) { this.Invoke((MethodInvoker) delegate() { KeyEvent(e); }); } else { KeyEvent(e); } } }
/// <summary> /// Handle key event, click event /// </summary> /// <param name="e"></param> void btn_KeyEvent(OPOSKeyEventArgs e) { if (KeyEvent != null) { KeyEvent(e); if (!e.IsHandled) { if (e.Key.OPOSKey == OPOSMapKeys.KEY_SUBTOTAL) { // switch key to after mode ResetState(true); e.IsHandled = true; } } } }
void txtConfirmNo_KeyEvent(OPOSKeyEventArgs e) { if (e.Key.OPOSKey == OPOSMapKeys.KEY_CLEAR) { POSDeviceManager.SignPad.RequestPinData(MSG_INPUT_CONFIRM_NO_SIGNPAD, string.Empty, string.Empty, string.Empty, 1, 13); m_readCardTrack = string.Empty; m_confirmNo = string.Empty; } if (!e.IsControlKey) { m_swipe = false; m_readCardTrack = string.Empty; m_confirmNo = txtConfirmNo.Text; } }
void Enqueue(OPOSKeyEventArgs e) { if (string.IsNullOrEmpty(ActiveContainer)) { return; } SizeQueue <OPOSKeyEventArgs> keys = null; if (containerKeys.ContainsKey(ActiveContainer)) { keys = containerKeys[ActiveContainer]; } else { keys = new SizeQueue <OPOSKeyEventArgs>(20); containerKeys[ActiveContainer] = keys; } keys.Enqueue(e); }
void InputText_KeyEvent(OPOSKeyEventArgs e) { if (!e.IsControlKey) { if (!string.IsNullOrEmpty(this.Text) && MaxLength > 0 && this.Text.Length >= MaxLength) { e.IsHandled = true; return; } this.Text += e.KeyCodeText; e.IsHandled = true; } else if (e.Key.OPOSKey == OPOSMapKeys.KEY_BKS) { this.Text = this.Text.Length > 0 ? this.Text.Substring(0, this.Text.Length - 1) : string.Empty; } else if (e.Key.OPOSKey == OPOSMapKeys.KEY_CLEAR) { this.Text = string.Empty; } }
/// <summary> /// Process key event in View /// 특별한인경우만 뷰에서 키이벤트처리한다 /// </summary> /// <param name="e"></param> public bool ProcessKeyEvent(OPOSKeyEventArgs e) { if (InputState == ItemInputState.Processing) { e.IsHandled = true; return(false); } if (e.Key.OPOSKey == OPOSMapKeys.KEY_INQPRC) { //AutoRtnTksPresentTest(); // 가격조회 e.IsHandled = true; using (var pop = ChildManager.ShowPopup(string.Empty, "WSWD.WmallPos.POS.SL.dll", "WSWD.WmallPos.POS.SL.VC.POS_SL_P002")) { pop.ShowDialog(this); Application.DoEvents(); } } if (e.Key.OPOSKey == OPOSMapKeys.KEY_HOLD) { e.IsHandled = true; if (!m_holdPresenter.CheckHoldTrxnExists(InputText)) { m_presenter.ReportInvalidState(InvalidDataInputState.NoHoldTrxn); } } else { if (!this.ChildManager.ProcessFuncKey(e, true, HasItems)) { m_presenter.ReportInvalidState(InvalidDataInputState.InvalidKey); } } return(m_presenter.OnProcessKeyEventReturn(e)); }
public void PerformKeyEvent(OPOSKeyEventArgs e) { if (this.ReadOnly || !this.IsFocused) { return; } if (KeyEvent != null) { e.Sender = this; if (this.InvokeRequired) { this.Invoke((MethodInvoker) delegate() { KeyEvent(e); }); } else { KeyEvent(e); } } }
/// <summary> /// KeyEvent /// </summary> /// <param name="e"></param> void form_KeyEvent(OPOSKeyEventArgs e) { if (_bDisable) { e.IsHandled = true; return; } if (e.Key.OPOSKey == OPOSMapKeys.KEY_NOSALE) { if (POSDeviceManager.CashDrawer != null && POSDeviceManager.CashDrawer.Status == WSWD.WmallPos.POS.FX.Shared.DeviceStatus.Opened && POSDeviceManager.CashDrawer.Enabled) { //돈통 open POSDeviceManager.CashDrawer.OpenDrawer(); } return; } if (TypeHelper.ToInt32(txtGetAmt.Text.Length > 0 ? txtGetAmt.Text.ToString() : "0") <= 0) { msgBar.Text = strMsg06; e.IsHandled = true; return; } if (txtType.IsFocused) { if (e.Key.OPOSKey == OPOSMapKeys.KEY_CLEAR) { if (txtType.Text.Length > 0) { lblType.Text = ""; msgBar.Text = strMsg01; } else { e.IsHandled = true; btnClose_Click(btnClose, null); return; } } else if (e.Key.OPOSKey == OPOSMapKeys.KEY_BKS) { lblType.Text = ""; msgBar.Text = strMsg01; } else if (e.Key.OPOSKey == OPOSMapKeys.KEY_ENTER) { if (dSTikcet != null && dSTikcet.Tables.Count > 0 && dSTikcet.Tables[0].Rows.Count > 0) { DataRow[] drFilter = dSTikcet.Tables[0].Select(string.Format("KD_GIFT = '{0}'", txtType.Text)); if (drFilter != null && drFilter.Length > 0) { lblType.Text = drFilter[0]["NM_GIFT"] != null ? drFilter[0]["NM_GIFT"].ToString() : ""; txtTicketNo.SetFocus(); msgBar.Text = strMsg02; } else { txtType.Text = ""; lblType.Text = ""; btnType_Click(btnType, null); } } else { txtType.Text = ""; lblType.Text = ""; btnType_Click(btnType, null); } } } else if (txtTicketNo.IsFocused) { if (e.Key.OPOSKey == OPOSMapKeys.KEY_CLEAR) { if (txtTicketNo.Text.Length > 0) { msgBar.Text = strMsg02; } else { txtTicketNo.Text = ""; txtType.ReadOnly = false; txtType.SetFocus(); txtTicketNo.ReadOnly = false; btnType.Enabled = true; msgBar.Text = strMsg01; e.IsHandled = true; } } else if (e.Key.OPOSKey == OPOSMapKeys.KEY_BKS) { msgBar.Text = strMsg02; } else if (e.Key.OPOSKey == OPOSMapKeys.KEY_ENTER) { if (txtTicketNo.Text.Length > 0) { //상품권번호 확인 CheckTicket(); } else { msgBar.Text = strMsg02; } } } else if (txtTicketAmt.IsFocused) { if (txtType.Text.Length <= 0) { txtType.SetFocus(); msgBar.Text = strMsg01; txtType.ReadOnly = false; txtTicketNo.Text = ""; txtTicketNo.ReadOnly = true; txtTicketAmt.Text = ""; txtTicketAmt.ReadOnly = true; btnType.Enabled = true; e.IsHandled = true; } else { if (txtTicketNo.Text.Length <= 0) { txtTicketNo.ReadOnly = false; txtTicketNo.SetFocus(); msgBar.Text = strMsg02; txtTicketAmt.Text = ""; txtTicketAmt.ReadOnly = true; e.IsHandled = true; } else { if (e.Key.OPOSKey == OPOSMapKeys.KEY_CLEAR) { if (txtTicketAmt.Text.Length > 0) { msgBar.Text = strMsg03; } else { txtTicketNo.Text = ""; txtTicketNo.ReadOnly = false; txtTicketNo.SetFocus(); msgBar.Text = strMsg02; txtTicketAmt.ReadOnly = true; e.IsHandled = true; } } else if (e.Key.OPOSKey == OPOSMapKeys.KEY_BKS) { msgBar.Text = strMsg03; } else if (e.Key.OPOSKey == OPOSMapKeys.KEY_ENTER) { if (txtTicketAmt.Text.Length > 0) { //권종금액 확인 CheckAmt(); } } } } } }
static public bool ProcessFuncKey(this IChildFormManager form, OPOSKeyEventArgs e, bool saleMode, bool hasItems) { bool ret = true; switch (e.Key.OPOSKey) { case OPOSMapKeys.KEY_SIGNOFF: // 싸인오프 e.IsHandled = true; form.OnLoggedOut(); break; case OPOSMapKeys.KEY_EOD: // 정산 e.IsHandled = true; if (!hasItems) { form.ShowMenu("MNU_CLOSE", saleMode); } ret = !hasItems; break; case OPOSMapKeys.KEY_INOUT: // 입출금등록 e.IsHandled = true; if (!hasItems) { form.ShowMenu("MNU_IO", saleMode); } ret = !hasItems; break; case OPOSMapKeys.KEY_INQUIRY: // 점검조회 e.IsHandled = true; if (!hasItems) { form.ShowMenu("MNU_CHECK", saleMode); } ret = !hasItems; break; case OPOSMapKeys.KEY_INQCHK: // 수표조회 e.IsHandled = true; form.ShowForm("수표 조회", "WSWD.WmallPos.POS.IQ.dll", "WSWD.WmallPos.POS.IQ.VC.POS_IQ_P003"); break; case OPOSMapKeys.KEY_INQRECP: // 영수증조회 e.IsHandled = true; if (!hasItems) { form.ShowForm("영수증 조회", "WSWD.WmallPos.POS.IQ.dll", "WSWD.WmallPos.POS.IQ.VC.POS_IQ_P004"); } break; case OPOSMapKeys.KEY_NOSALE: // 돈통열기 e.IsHandled = true; try { POSDeviceManager.CashDrawer.OpenDrawer(); } catch { } break; default: break; } return(ret); }
void funcKeyGroup1_KeyEvent(OPOSKeyEventArgs e) { this.POS_SL_M001_KeyEvent(e); }