;ò meBc@sòdkZdkZdZdZdeifd„ƒYZdeifd„ƒYZdeifd„ƒYZd ei fd „ƒYZ d „Z d Z e d joPdkZdkZdkZeideiieidƒgeidƒndS(Niis MyValidatorcBs2tZeed„Zd„Zd„Zd„ZRS(NcCs3tii|ƒ||_|iti|iƒdS(N(swxs PyValidators__init__sselfsflagsBindsEVT_CHARsOnChar(sselfsflagspyVar((si/mnt/gmirror/ports/x11-toolkits/py-wxPython26-common/work/wxPython-src-2.6.3.3/wxPython/demo/Validator.pys__init__ s cCst|iƒSdS(N(s MyValidatorsselfsflag(sself((si/mnt/gmirror/ports/x11-toolkits/py-wxPython26-common/work/wxPython-src-2.6.3.3/wxPython/demo/Validator.pysClonescCsš|iƒ}|iƒ}|itjo-xg|D]}|ti jot Sq/q/Wn>|it jo-x*|D]}|ti jot SqlqlWnt SdS(N(sselfs GetWindowstcsGetValuesvalsflags ALPHA_ONLYsxsstringsletterssFalses DIGIT_ONLYsdigitssTrue(sselfswinsvalsxstc((si/mnt/gmirror/ports/x11-toolkits/py-wxPython26-common/work/wxPython-src-2.6.3.3/wxPython/demo/Validator.pysValidates  cCsß|iƒ}|tijp|tijp |djo|iƒdSn|it jot |ƒt i jo|iƒdSn|it jot |ƒt ijo|iƒdSntiƒ otiƒndSdS(Niÿ(seventsKeyCodeskeyswxs WXK_SPACEs WXK_DELETEsSkipsselfsflags ALPHA_ONLYschrsstringsletterss DIGIT_ONLYsdigitssValidator_IsSilentsBell(sselfseventskey((si/mnt/gmirror/ports/x11-toolkits/py-wxPython26-common/work/wxPython-src-2.6.3.3/wxPython/demo/Validator.pysOnChar$s - & & (s__name__s __module__sNones__init__sClonesValidatesOnChar(((si/mnt/gmirror/ports/x11-toolkits/py-wxPython26-common/work/wxPython-src-2.6.3.3/wxPython/demo/Validator.pys MyValidator s  sTestValidatorPanelcBstZd„Zd„ZRS(NcCsKtii||dƒ|itƒd}tiddƒ}|i ddfƒ|i ti |ddƒƒ|i d|fƒ|i d|fƒti |ddƒ}|i |dti tiBƒ|i ti|ddd ttƒƒƒ|i d|fƒ|i d|fƒti |dd ƒ}|i |dti tiBƒ|i ti|ddd ttƒƒƒ|i d|fƒ|i d|fƒ|i d|fƒ|i d|fƒ|i ddfƒti|dd ƒ}|iti|i|ƒ|i |ƒtiƒ}|i |dtitiBd ƒ|i|ƒ|iƒdS( Niÿÿÿÿi iiisUThese controls have validators that limit the type of characters that can be entered.s Alpha Only: ss validators Digits Only: sTest Dialog Validationi(swxsPanels__init__sselfsparents SetAutoLayoutsTruesVSPACEs FlexGridSizersfgssAdds StaticTextslabels ALIGN_RIGHTsCENTERsTextCtrls MyValidators ALPHA_ONLYs DIGIT_ONLYsButtonsbsBinds EVT_BUTTONs OnDoDialogsBoxSizersbordersGROWsALLsSetSizersLayout(sselfsparentsbordersbsfgssVSPACEslabel((si/mnt/gmirror/ports/x11-toolkits/py-wxPython26-common/work/wxPython-src-2.6.3.3/wxPython/demo/Validator.pys__init__=s0 &(&(&&    cCs$t|ƒ}|iƒ|iƒdS(N(sTestValidateDialogsselfsdlgs ShowModalsDestroy(sselfsevtsdlg((si/mnt/gmirror/ports/x11-toolkits/py-wxPython26-common/work/wxPython-src-2.6.3.3/wxPython/demo/Validator.pys OnDoDialogas  (s__name__s __module__s__init__s OnDoDialog(((si/mnt/gmirror/ports/x11-toolkits/py-wxPython26-common/work/wxPython-src-2.6.3.3/wxPython/demo/Validator.pysTestValidatorPanel<s $sTextObjectValidatorcBs;tZdZd„Zd„Zd„Zd„Zd„ZRS(s… This validator is used to ensure that the user has entered something into the text object editor dialog's text field. cCstii|ƒdS(s Standard constructor. N(swxs PyValidators__init__sself(sself((si/mnt/gmirror/ports/x11-toolkits/py-wxPython26-common/work/wxPython-src-2.6.3.3/wxPython/demo/Validator.pys__init__mscCs tƒSdS(sf Standard cloner. Note that every validator must implement the Clone() method. N(sTextObjectValidator(sself((si/mnt/gmirror/ports/x11-toolkits/py-wxPython26-common/work/wxPython-src-2.6.3.3/wxPython/demo/Validator.pysClonetscCs|iƒ}|iƒ}t|ƒdjo9tiddƒ|idƒ|i ƒ|i ƒt Sn(|iti ti ƒƒ|i ƒtSdS(s; Validate the contents of the given text control. is%A text object must contain some text!sErrorspinkN(sselfs GetWindowstextCtrlsGetValuestextslenswxs MessageBoxsSetBackgroundColoursSetFocussRefreshsFalsesSystemSettings_GetColoursSYS_COLOUR_WINDOWsTrue(sselfswinstextstextCtrl((si/mnt/gmirror/ports/x11-toolkits/py-wxPython26-common/work/wxPython-src-2.6.3.3/wxPython/demo/Validator.pysValidate|s      cCstSdS(sÔ Transfer data from validator to window. The default implementation returns False, indicating that an error occurred. We simply return True, as we don't do any data transfer. N(sTrue(sself((si/mnt/gmirror/ports/x11-toolkits/py-wxPython26-common/work/wxPython-src-2.6.3.3/wxPython/demo/Validator.pysTransferToWindowscCstSdS(sÔ Transfer data from window to validator. The default implementation returns False, indicating that an error occurred. We simply return True, as we don't do any data transfer. N(sTrue(sself((si/mnt/gmirror/ports/x11-toolkits/py-wxPython26-common/work/wxPython-src-2.6.3.3/wxPython/demo/Validator.pysTransferFromWindow˜s(s__name__s __module__s__doc__s__init__sClonesValidatesTransferToWindowsTransferFromWindow(((si/mnt/gmirror/ports/x11-toolkits/py-wxPython26-common/work/wxPython-src-2.6.3.3/wxPython/demo/Validator.pysTextObjectValidatoris     sTestValidateDialogcBstZd„ZRS(NcCs2tii||ddƒ|itƒd}tiddƒ}|i ddfƒ|i ti |ddƒƒ|i d|fƒ|i d|fƒti |ddƒ}|i |dti tiBƒ|i ti|dd d tƒƒƒ|i d|fƒ|i d|fƒti |dd ƒ}|i |dti tiBƒ|i ti|dd d tƒƒƒtiƒ}ti|tid ƒ}|iƒ|i|ƒ|iti|tid ƒƒ|iƒtitiƒ}|i |dtitiBdƒ|i |ƒ|i|ƒ|i |ƒ|i!ƒdS(NiÿÿÿÿsValidated Dialogi iiis{These controls must have text entered into them. Each one has a validator that is checked when the Okay button is clicked.sFirst: ss validatorsSecond: sOKsCanceli("swxsDialogs__init__sselfsparents SetAutoLayoutsTruesVSPACEs FlexGridSizersfgssAdds StaticTextslabels ALIGN_RIGHTsCENTERsTextCtrlsTextObjectValidatorsStdDialogButtonSizersbuttonssButtonsID_OKsbs SetDefaults AddButtons ID_CANCELsRealizesBoxSizersVERTICALsbordersGROWsALLsSetSizersFitsLayout(sselfsparentsbsbordersfgssbuttonssVSPACEslabel((si/mnt/gmirror/ports/x11-toolkits/py-wxPython26-common/work/wxPython-src-2.6.3.3/wxPython/demo/Validator.pys__init__£s6  &%&%        (s__name__s __module__s__init__(((si/mnt/gmirror/ports/x11-toolkits/py-wxPython26-common/work/wxPython-src-2.6.3.3/wxPython/demo/Validator.pysTestValidateDialog¢scCst|ƒ}|SdS(N(sTestValidatorPanelsnbswin(sframesnbslogswin((si/mnt/gmirror/ports/x11-toolkits/py-wxPython26-common/work/wxPython-src-2.6.3.3/wxPython/demo/Validator.pysrunTestÐs s  wx.Validator is the base class for a family of validator classes that mediate between a class of control, and application data.

A validator has three major roles:

  1. to transfer data from a C++ variable or own storage to and from a control;
  2. to validate data in a control, and show an appropriate error message;
  3. to filter events (such as keystrokes), thereby changing the behaviour of the associated control.

Validators can be plugged into controls dynamically. s__main__si(sstringswxs ALPHA_ONLYs DIGIT_ONLYs PyValidators MyValidatorsPanelsTestValidatorPanelsTextObjectValidatorsDialogsTestValidateDialogsrunTestsoverviews__name__ssyssossrunsmainspathsbasenamesargv( ssyss DIGIT_ONLYsrunsstringsoverviewsTextObjectValidatorsrunTestsTestValidatorPanels ALPHA_ONLYsTestValidateDialogs MyValidatorsosswx((si/mnt/gmirror/ports/x11-toolkits/py-wxPython26-common/work/wxPython-src-2.6.3.3/wxPython/demo/Validator.pys?s  2-9.