>************************************************** >*-- Class: cmd_checkbox (i:\tax\ids5\source\classes\taxbase2.vcx) >*-- ParentClass: commandbutton >*-- BaseClass: commandbutton >*-- Time Stamp: 06/29/05 08:33:03 PM >* >DEFINE CLASS cmd_checkbox AS commandbutton > > > Caption = "" > SpecialEffect = 1 > Themes = .F. > Name = "cmd_checkbox" > > > *-- Occurs when a user moves to another row or column, after the new cell gets the focus. > PROCEDURE afterrowcolchange > LPARAMETERS nColIndex > > DO CASE > CASE THIS.Parent.parent.ActiveColumn # THIS.Parent.Columnorder > > CASE TYPE(THIS.Parent.ControlSource) = "L" > THIS.Parent.CurrentControl = IIF(EVALUATE(THIS.Parent.ControlSource) = .T., THIS.Name, "Unchecked") > > CASE TYPE(THIS.Parent.ControlSource) = "N" > THIS.Parent.CurrentControl = IIF(EVALUATE(THIS.Parent.ControlSource) = 1, THIS.Name, "Unchecked") > ENDCASE > THIS.refresh > THIS.Parent.UnChecked.refresh > ENDPROC > > > *-- Occurs when an object is resized. > PROCEDURE resize > > THIS.Parent.Image1.Image.Left = (THIS.Parent.Width - THIS.Parent.Image1.Image.Width) /2 > ENDPROC > > > PROCEDURE Refresh > THIs.VisualEffect = 1 > ENDPROC > > > PROCEDURE Init > LOCAL cField, cAlias > > IF THIS.Parent.BaseClass = "Column" > THIS.BackColor = THIS.Parent.BackColor > > IF TYPE("THIS.Parent.Unchecked.Name") # "C" > > IF !UPPER(JUSTFNAME(THIS.ClassLibrary)) $ UPPER(SET("CLASSLIB")) > SET CLASSLIB TO (THIS.ClassLibrary) ADDI > ENDIF > > THIS.Parent.AddObject("Unchecked","Cmd_checkbox") > THIS.Parent.Unchecked.Visible = .T. > THIS.Parent.Unchecked.Specialeffect = 1 > THIS.Parent.Unchecked.Picture = ADDBS(JUSTPATH(THIS.Picture))+"Blank.bmp" > THIS.Parent.Sparse = .F. > > > cAlias = JUSTSTEM(THIS.Parent.ControlSource) > cField = JUSTEXT(THIS.Parent.ControlSource) > IF !EMPTY(cAlias) AND !EMPTY(cField) > THIS.Parent.DynamicCurrentControl = "IIF(RECNO('"+cAlias+"') = THIS.Recno AND "+; > "THIS.ActiveColumn = "+ALLTRIM(STR(THIS.Parent.Columnorder))+ ; > ", IIF("+THIS.Parent.ControlSource+",'"+THIS.Name+"','Unchecked'),"+; > "IIF("+THIS.Parent.ControlSource+",'Image1','Image2'))" > ENDIF > > THIS.Parent.AddObject("Image1","Container") > WITH THIS.Parent.Image1 > .Backstyle = 0 > .Borderwidth = 0 > .Visible = .T. > .AddObject("Image","Image") > .Image.Visible = .T. > .Image.Picture = THIS.Picture > ENDWITH > > THIS.Parent.AddObject("Image2","Container") > WITH THIS.Parent.Image2 > .Backstyle = 0 > .Borderwidth = 0 > .Visible = .T. > ENDWITH > > BINDEVENT(THIS.Parent, "Resize", THIS, "Resize") > BINDEVENT(THIS.Parent.Parent, "AfterRowColChange", THIS, "afterrowcolchange") > > THIS.Resize > ENDIF > ENDIF > THIS.SpecialEffect = 1 > ENDPROC > > > PROCEDURE Click > LOCAL cField, cAlias > > DO CASE > CASE TYPE("THIS.Parent.Controlsource") # "C" OR THIS.Parent.Readonly > ** Do nothing > > CASE TYPE(THIS.Parent.Controlsource) = "L" > > cField = JUSTEXT(THIS.Parent.ControlSource) > cAlias = JUSTSTEM(THIS.Parent.ControlSource) > > REPLACE &cField WITH !&cField IN (cAlias) > THIS.Parent.Parent.Refresh > > CASE TYPE(THIS.Parent.Controlsource) = "N" > cField = JUSTEXT(THIS.Parent.ControlSource) > cAlias = JUSTSTEM(THIS.Parent.ControlSource) > > REPLACE &cField WITH BITXOR(&cField,1) IN (cAlias) > THIS.Parent.Parent.Refresh > ENDCASE > > ENDPROC > > > PROCEDURE KeyPress > LPARAMETERS nKeyCode, nShiftAltCtrl > > IF nkeyCode = 13 > NODEFAULT > KEYBOARD '{TAB}' > ENDIF > ENDPROC > > >ENDDEFINE >* >*-- EndDefine: cmd_checkbox >************************************************** >