*--------------------------------------------------------------------------------------------------------------------------------------------------------
* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!!
*--------------------------------------------------------------------------------------------------------------------------------------------------------
*< FOXBIN2PRG: Version="1.21" SourceFile="_base.vcx" CPID="1252" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries)
*
*
DEFINE CLASS _activedoc AS activedoc && Foundation ActiveDoc class.
*< CLASSDATA: Baseclass="activedoc" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 68
Name = "_activedoc"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 68
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _checkbox AS checkbox && Foundation CheckBox class.
*< CLASSDATA: Baseclass="checkbox" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
Caption = "Check1"
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 17
Name = "_checkbox"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 60
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _collection AS collection && Foundation Collection class.
*< CLASSDATA: Baseclass="collection" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 23
Name = "_collection"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 23
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _combobox AS combobox && Foundation ComboBox class.
*< CLASSDATA: Baseclass="combobox" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 24
Name = "_combobox"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 100
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _commandbutton AS commandbutton && Foundation CommandButton class.
*< CLASSDATA: Baseclass="commandbutton" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
Caption = "Command1"
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 27
Name = "_commandbutton"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 84
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _commandgroup AS commandgroup && Foundation CommandGroup class.
*< CLASSDATA: Baseclass="commandgroup" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
ButtonCount = 2
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 66
Name = "_commandgroup"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
Value = 1
vresult = .T.
Width = 94
Command1.Caption = "Command1"
Command1.Height = 27
Command1.Left = 5
Command1.Name = "Command1"
Command1.Top = 5
Command1.Width = 84
Command2.Caption = "Command2"
Command2.Height = 27
Command2.Left = 5
Command2.Name = "Command2"
Command2.Top = 34
Command2.Width = 84
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _container AS container && Foundation Container class.
*< CLASSDATA: Baseclass="container" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 200
Name = "_container"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 200
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _control AS control && Foundation Control class.
*< CLASSDATA: Baseclass="control" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 22
Name = "_control"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 24
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _cursor2 AS cursor && Foundation Cursor class.
*< CLASSDATA: Baseclass="cursor" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 23
Name = "_cursor2"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 23
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _cursoradapter AS cursoradapter && Foundation CursorAdapter class.
*< CLASSDATA: Baseclass="cursoradapter" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 22
Name = "_cursoradapter"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 23
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _custom AS custom && Foundation Custom class.
*< CLASSDATA: Baseclass="custom" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 22
Name = "_custom"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 24
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _dataenvironment2 AS dataenvironment && Foundation DataEnvironment class.
*< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
DataSource = .NULL.
Height = 22
Name = "_dataenvironment2"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 24
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _editbox AS editbox && Foundation EditBox class.
*< CLASSDATA: Baseclass="editbox" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 53
Name = "_editbox"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 100
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _form AS form && Foundation Form class.
*< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
Caption = "Form1"
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
DoCreate = .T.
Name = "_form"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
ShowWindow = 1
vresult = .T.
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _formset AS formset && Foundation FormSet class.
*< CLASSDATA: Baseclass="formset" Timestamp="" Scale="" Uniqueid="" />
*-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder
*< OBJECTDATA: ObjPath="Form1" UniqueID="" Timestamp="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Name = "_formset"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
*
ADD OBJECT 'Form1' AS _form WITH ;
builder = , ;
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm"), ;
Caption = "Form1", ;
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg"), ;
cversion = , ;
DoCreate = .T., ;
Name = "Form1", ;
ninstances = 0, ;
nobjectrefcount = 0, ;
ohost = .NULL., ;
vresult = .T.
*< END OBJECT: ClassLib="_base.vcx" BaseClass="form" />
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
PROCEDURE Form1.addtoproject
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Form1.Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Form1.Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Form1.Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE Form1.newinstance
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE Form1.ninstances_access
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE Form1.ninstances_assign
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE Form1.nobjectrefcount_access
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE Form1.nobjectrefcount_assign
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE Form1.release
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE Form1.releaseobjrefs
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE Form1.sethost
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE Form1.setobjectref
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE Form1.setobjectrefs
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _grid AS grid && Foundation Grid class.
*< CLASSDATA: Baseclass="grid" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 200
Name = "_grid"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 320
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _hyperlink AS hyperlink && Foundation Hyperlink class.
*< CLASSDATA: Baseclass="hyperlink" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 23
Name = "_hyperlink"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 23
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _image AS image && Foundation Image class.
*< CLASSDATA: Baseclass="image" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 68
Name = "_image"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 68
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _label AS label && Foundation Label class.
*< CLASSDATA: Baseclass="label" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
Caption = "Label1"
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 16
Name = "_label"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 40
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _line AS line && Foundation Line class.
*< CLASSDATA: Baseclass="line" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 68
Name = "_line"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 68
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _listbox AS listbox && Foundation Listbox class.
*< CLASSDATA: Baseclass="listbox" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 170
Name = "_listbox"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 100
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _optionbutton2 AS optionbutton && Foundation OptionButton class.
*< CLASSDATA: Baseclass="optionbutton" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
Caption = "Option1"
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 17
Name = "_optionbutton2"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 61
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _optiongroup AS optiongroup && Foundation OptionGroup class.
*< CLASSDATA: Baseclass="optiongroup" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
ButtonCount = 2
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 46
Name = "_optiongroup"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
Value = 1
vresult = .T.
Width = 71
Option1.Caption = "Option1"
Option1.Height = 17
Option1.Left = 5
Option1.Name = "Option1"
Option1.Top = 5
Option1.Value = 1
Option1.Width = 61
Option2.Caption = "Option2"
Option2.Height = 17
Option2.Left = 5
Option2.Name = "Option2"
Option2.Top = 24
Option2.Width = 61
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _page2 AS page && Foundation Page class.
*< CLASSDATA: Baseclass="page" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
Caption = "Page1"
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 16
Name = "_page2"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 60
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _pageframe AS pageframe && Foundation PageFrame class.
*< CLASSDATA: Baseclass="pageframe" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
ErasePage = .T.
Height = 169
Name = "_pageframe"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
PageCount = 2
vresult = .T.
Width = 241
Page1.Caption = "Page1"
Page1.Name = "Page1"
Page2.Caption = "Page2"
Page2.Name = "Page2"
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _projecthook AS projecthook && Foundation ProjectHook class.
*< CLASSDATA: Baseclass="projecthook" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 68
Name = "_projecthook"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 68
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _relation2 AS relation && Foundation Relation class.
*< CLASSDATA: Baseclass="relation" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 23
Name = "_relation2"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 23
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _separator AS separator && Foundation Separator class.
*< CLASSDATA: Baseclass="separator" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 0
Name = "_separator"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 0
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _shape AS shape && Foundation Shape class.
*< CLASSDATA: Baseclass="shape" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 68
Name = "_shape"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 68
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _spinner AS spinner && Foundation Spinner class.
*< CLASSDATA: Baseclass="spinner" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 24
Name = "_spinner"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 120
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _textbox AS textbox && Foundation TextBox class.
*< CLASSDATA: Baseclass="textbox" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 23
Name = "_textbox"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 100
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _timer AS timer && Foundation Timer class.
*< CLASSDATA: Baseclass="timer" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 23
Name = "_timer"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 23
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _toolbar AS toolbar && Foundation Toolbar class.
*< CLASSDATA: Baseclass="toolbar" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
Caption = "Toolbar1"
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Name = "_toolbar"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
ShowWindow = 1
vresult = .T.
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _xmladapter AS xmladapter && Foundation XMLAdapter class.
*< CLASSDATA: Baseclass="xmladapter" Timestamp="" Scale="Pixels" Uniqueid="" />
*-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder
*< OBJECTDATA: ObjPath="Tables" UniqueID="" Timestamp="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 56
Name = "_xmladapter"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 56
*
ADD OBJECT 'Tables' AS collection WITH ;
Height = 23, ;
Left = 23, ;
Name = "Tables", ;
Top = 23, ;
Width = 23
*< END OBJECT: BaseClass="collection" />
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _xmlfield AS xmlfield && Foundation XMLField class.
*< CLASSDATA: Baseclass="xmlfield" Timestamp="" Scale="Pixels" Uniqueid="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 23
Name = "_xmlfield"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 23
*
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE
DEFINE CLASS _xmltable AS xmltable && Foundation XMLTable class.
*< CLASSDATA: Baseclass="xmltable" Timestamp="" Scale="Pixels" Uniqueid="" />
*-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder
*< OBJECTDATA: ObjPath="Fields" UniqueID="" Timestamp="" />
*
*m: addtoproject && Dummy code for adding files to project.
*m: newinstance && Returns new instance of object.
*m: ninstances_access && Access method for nInstances property.
*m: ninstances_assign && Assign method for nInstances property.
*m: nobjectrefcount_access && Access method for nObjectRefCount property.
*m: nobjectrefcount_assign && Assign method for nObjectRefCount property.
*m: release && Releases object from memory.
*m: releaseobjrefs && Releases all object references of aObjectRefs array.
*m: sethost && Set oHost property to form reference object.
*m: setobjectref && Set object reference to specific property.
*m: setobjectrefs && Place holder method for listing SetObjectRef method calls.
*p: builder && Bulder property.
*p: builderx && BuilderX property.
*p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method.
*p: cversion && Version property.
*p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off.
*p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method.
*p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs.
*p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory.
*p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM.
*p: ninstances && Number of instances.
*p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs.
*p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T.
*p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required.
*a: aobjectrefs[1,3] && Array of object references properties.
*
*
builder =
builderx = (HOME()+"Wizards\BuilderD,BuilderDForm")
csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg")
cversion =
Height = 56
Name = "_xmltable"
ninstances = 0
nobjectrefcount = 0
ohost = .NULL.
vresult = .T.
Width = 56
*
ADD OBJECT 'Fields' AS collection WITH ;
Height = 23, ;
Left = 23, ;
Name = "Fields", ;
Top = 23, ;
Width = 23
*< END OBJECT: BaseClass="collection" />
PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project.
*-- Dummy code for adding files to project.
RETURN
DO SetObjRf.prg
ENDPROC
PROCEDURE Destroy
IF this.lRelease
RETURN .F.
ENDIF
this.lRelease=.T.
this.ReleaseObjRefs
this.oHost=.NULL.
ENDPROC
PROCEDURE Error
LPARAMETERS nError, cMethod, nLine
LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg
IF this.lIgnoreErrors OR _vfp.StartMode>0
RETURN .F.
ENDIF
lcOnError=UPPER(ALLTRIM(ON("ERROR")))
IF NOT EMPTY(lcOnError)
lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ;
"PROGRAM()","cMethod"),"LINENO()","nLine")
&lcOnError
RETURN
ENDIF
lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ;
"Error: "+ALLTRIM(STR(nError))+CHR(13)+ ;
"Method: "+LOWER(ALLTRIM(cMethod))
lcCodeLineMsg=MESSAGE(1)
IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..."
lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine))
IF NOT EMPTY(lcCodeLineMsg)
lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg
ENDIF
ENDIF
WAIT CLEAR
MESSAGEBOX(lcErrorMsg,16,_screen.Caption)
ERROR nError
ENDPROC
PROCEDURE Init
IF this.lSetHost
this.SetHost
ENDIF
IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this)
RETURN .F.
ENDIF
ENDPROC
PROCEDURE newinstance && Returns new instance of object.
LPARAMETERS tnDataSessionID
LOCAL oNewObject,lnLastDataSessionID
lnLastDataSessionID=SET("DATASESSION")
IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1
SET DATASESSION TO tnDataSessionID
ENDIF
oNewObject=NEWOBJECT(this.Class,this.ClassLibrary)
SET DATASESSION TO (lnLastDataSessionID)
RETURN oNewObject
ENDPROC
PROCEDURE ninstances_access && Access method for nInstances property.
LOCAL laInstances[1]
RETURN AINSTANCE(laInstances,this.Class)
ENDPROC
PROCEDURE ninstances_assign && Assign method for nInstances property.
LPARAMETERS vNewVal
ERROR 1743
ENDPROC
PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property.
LOCAL lnObjectRefCount
lnObjectRefCount=ALEN(this.aObjectRefs,1)
IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1])
lnObjectRefCount=0
ENDIF
RETURN lnObjectRefCount
ENDPROC
PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property.
LPARAMETERS m.vNewVal
ERROR 1743
ENDPROC
PROCEDURE release && Releases object from memory.
LOCAL lcBaseClass
IF this.lRelease
NODEFAULT
RETURN .F.
ENDIF
this.lRelease=.T.
lcBaseClass=LOWER(this.BaseClass)
this.oHost=.NULL.
this.ReleaseObjRefs
IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ")
RELEASE this
ENDIF
ENDPROC
PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array.
LOCAL lcName,oObject,lnCount
IF this.nObjectRefCount=0
RETURN
ENDIF
FOR lnCount = this.nObjectRefCount TO 1 STEP -1
lcName=this.aObjectRefs[lnCount,1]
IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O"
LOOP
ENDIF
oObject=this.&lcName
IF ISNULL(oObject)
LOOP
ENDIF
IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5)
oObject.Release
ENDIF
IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5)
oObject.oHost=.NULL.
ENDIF
this.&lcName=.NULL.
oObject=.NULL.
ENDFOR
DIMENSION this.aObjectRefs[1,3]
this.aObjectRefs=""
ENDPROC
PROCEDURE sethost && Set oHost property to form reference object.
this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.)
ENDPROC
PROCEDURE setobjectref && Set object reference to specific property.
LPARAMETERS tcName,tvClass,tvClassLibrary
LOCAL lvResult
this.vResult=.T.
DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary)
lvResult=this.vResult
this.vResult=.T.
RETURN lvResult
ENDPROC
PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls.
LPARAMETERS toObject
RETURN
ENDPROC
ENDDEFINE