| Subject |
Re: attaching a method to MYTOOLBAR |
| From |
Gaetano <gaetanodd@hotmail.com> |
| Date |
Thu, 3 Sep 2020 09:05:34 +1000 |
| Newsgroups |
dbase.getting-started |
Thanks Andy,
I think I found a way to do it. I took it one level up to the custom
container for the toolbar and included the function in that custom
class. It is still a manual step but now anytime I change the toolbar,
it automatically inherits the method of the custom container, so it's a
one-off manual operation.
Cheers,
Gaetano.
On 03/09/2020 07:04, Andy Taylor wrote:
> Gaetano,
>
> Ok, I misunderstood.
> I don't use the export function to save custom controls in a cc file. I write them by hand.
> I suspect that the export function is not designed to export custom functions contained within controls in the control design form.
>
> Andy
>
>> Hi Andy,
>>
>> Here is the custom controls design form and the .cc file where those
>> controls are exported to. Look for Mytoolbar in the .cc file. It has a
>> function named resetToolbar.
>>
>> What I want to achieve is to include this function in the form and have
>> it exported together with the actual toolbar through the File-Save as
>> custom menu option.
>>
>> The way it is coded in the cc file, I can call that function in any form
>> where the toolbar is used. I have included teh reset in some buttons but
>> it doesn't make sense for the PBNEW button because I only want to reset
>> the buttons if the record is being saved or abandoned. As long as it is
>> in apend mode, I want the buttons disabled. That's why I need to call
>> this function from within the form in the canSave event handler (per my
>> other post about shortening references).
>>
>> Cheers,
>> Gaetano.
>>
>>
>> On 02/09/2020 10:26, Andy Taylor wrote:
>>> Gaetano,
>>>
>>> I have attached a simple form that has a floating toolbar (at 0,0 on screen).
>>> Right Clicking on the form changes the toolbar properties using a function within the toolbar class definition.
>>> Is that the sort of thing that you need?
>>>
>>> Andy
>>>
>>>> Gaetano,
>>>>
>>>> I don\'t think that\'s true.
>>>> The problem here is that it\'s hard to visualise what you want without some sample code.
>>>> Stripped down as much as you like... then we have something to work with.
>>>> It\'s easy for you to understand what you want... you can see your code and understand your problem... we have to guess.
>>>>
>>>> Regards,
>>>> Andy
>>>>
>>>>
>>>>> It\'s a lot easier to design visual components visually, in a form, so if
>>>>> I cannot include a function that is not tied to a baseclass event, I
>>>>> guess I just need to remember to add it manually to the cc file :)
>>>>>
>>>>> On 01/09/2020 19:37, Maurizio S. wrote:
>>>>>> I have very old approach with \'mytoolbar.cc\'
>>>>>> derived from dBulletin
>>>>>> never changed it, because is very useful
>>>>>> maybe there are better solutions, but... once works
>>>>>> rarely use constructor form and/or menu, as prefer editing by hand
>>>>>>
>>>>>> sincerely, I do not understand what are you looking for
>>>>>>
>>>>>>
>>>>>> tks
>>>>>> Maurizio
>>>>>>
>>>>>> Il 31/08/20 23:48, Gaetano ha scritto:
>>>>>>>
>>>>>>> Hi there,
>>>>>>>
>>>>>>> I need a simple function to reset all the MYTOOLBAR button\'s enabled
>>>>>>> property to true.
>>>>>>>
>>>>>>> In the tutorial, we design custom controls in a form, then export it
>>>>>>> to mycontrols.cc. However, I have not found a way to link a standalone
>>>>>>> function (i.e. a function that is not linked to an event) to the
>>>>>>> toolbar. If I add the function to the form, nothing links it to the
>>>>>>> toolbar and it is not included in the \"save as custom\" export to
>>>>>>> mycontrols.cc file.
>>>>>>>
>>>>>>> I can add it manually to the CC file but every time I make an update
>>>>>>> to the control in the form and re-export it, the function is lost
>>>>>>> because I don\'t know how to attach the function to the toolbar object
>>>>>>> inside the form.
>>>>>>>
>>>>>>> Is there a way around that or do I just need to remember to re-add the
>>>>>>> function manually in the .cc file inside the toolbar class definition?
>>>>>>>
>>>>>>> Thanks,
>>>>>>> Gaetano.
>>>>>
>>>>
>>>
>>
>>
>> ** END HEADER -- do not remove this line
>> //
>> // Generated on 01/09/2020
>> //
>> parameter bModal
>> local f
>> f = new customControlsForm()
>> if (bModal)
>> f.mdi = false // ensure not MDI
>> f.readModal()
>> else
>> f.open()
>> endif
>>
>> class customControlsForm of FORM
>> set procedure to :DT_custom:MyControls.cc additive
>> with (this)
>> metric = 6 // Pixels
>> height = 511.0
>> left = 468.0
>> top = 122.0
>> width = 706.0
>> text = ""
>> endwith
>>
>> this.MYTEXT = new TEXT(this)
>> with (this.MYTEXT)
>> height = 22.0
>> left = 14.0
>> top = 55.0
>> width = 84.0
>> text = "MyText"
>> borderStyle = 10 // Etched Out
>> endwith
>>
>> this.MYENTRYFIELD1 = new MYENTRYFIELD(this)
>> with (this.MYENTRYFIELD1)
>> height = 22.0
>> left = 126.0
>> top = 11.0
>> width = 56.0
>> endwith
>>
>> this.MYTEXTLABEL = new TEXTLABEL(this)
>> with (this.MYTEXTLABEL)
>> height = 22.0
>> left = 21.0
>> top = 88.0
>> width = 84.0
>> transparent = true
>> text = "MyTextLabel"
>> fontBold = true
>> alignHorizontal = 2 // Right
>> endwith
>>
>> this.MYPUSHBUTTON = new PUSHBUTTON(this)
>> with (this.MYPUSHBUTTON)
>> height = 24.0
>> left = 35.0
>> top = 4.0
>> width = 62.0
>> text = "MyPushButton"
>> endwith
>>
>> this.MYSPINBOX = new SPINBOX(this)
>> with (this.MYSPINBOX)
>> onGotFocus = class::MYSPINBOX_ONGOTFOCUS
>> height = 22.0
>> left = 60.0
>> top = 202.0
>> width = 56.0
>> picture = "99999"
>> colorHighLight = "WindowText/0x80ffff"
>> rangeMax = 100
>> rangeMin = 1
>> value = 1
>> endwith
>>
>> this.MYCOMBOBOX = new COMBOBOX(this)
>> with (this.MYCOMBOBOX)
>> onGotFocus = class::MYCOMBOBOX_ONGOTFOCUS
>> onChange = class::MYCOMBOBOX_ONCHANGE
>> height = 22.0
>> left = 75.0
>> top = 250.0
>> width = 84.0
>> colorHighLight = "WindowText/0x80ffff"
>> style = 2 // DropDownList
>> dropDownHeight = 132.0
>> endwith
>>
>> this.MYRADIOBUTTON = new RADIOBUTTON(this)
>> with (this.MYRADIOBUTTON)
>> transparent = true
>> height = 24.0
>> left = 217.0
>> top = 22.0
>> width = 110.0
>> text = "Radiobutton"
>> endwith
>>
>> this.MYCONTAINER = new CONTAINER(this)
>> with (this.MYCONTAINER)
>> transparent = true
>> left = 432.0
>> top = 42.0
>> width = 184.0
>> height = 101.0
>> borderStyle = 4 // Single
>> endwith
>>
>> this.MYGRID = new GRID(this)
>> with (this.MYGRID)
>> colorHighLight = "WindowText/0x80ffff"
>> cellHeight = 22.0
>> rowSelect = true
>> allowEditing = false
>> allowAddRows = false
>> height = 88.0
>> left = 434.0
>> top = 208.0
>> width = 182.0
>> endwith
>>
>> this.MYTABBOX = new TABBOX(this)
>> with (this.MYTABBOX)
>> onSelChange = class::TABBOX_ONSELCHANGE
>> onOpen = class::MYTABBOX_ONOPEN
>> id = 110
>> height = 22.0
>> left = 0.0
>> top = 487.0
>> width = 704.0
>> colorHighLight = "WindowText/0x80ffff"
>> dataSource = 'ARRAY {"Individual Record","Find Record"}'
>> endwith
>>
>> this.MYIMAGE = new IMAGE(this)
>> with (this.MYIMAGE)
>> height = 88.0
>> left = 209.0
>> top = 80.0
>> width = 99.0
>> alignment = 3 // Keep Aspect Stretch
>> endwith
>>
>> this.MYEDITOR = new EDITOR(this)
>> with (this.MYEDITOR)
>> key = class::MYEDITOR_KEY
>> height = 88.0
>> left = 196.0
>> top = 187.0
>> width = 221.0
>> value = ""
>> colorHighLight = "WindowText/0x80ffff"
>> evalTags = false
>> popupEnable = false
>> endwith
>>
>> this.DISABLEDENTRY = new MYENTRYFIELD(this)
>> with (this.DISABLEDENTRY)
>> when = class::DISABLEDENTRY_WHEN
>> height = 22.0
>> left = 71.0
>> top = 324.0
>> width = 56.0
>> colorNormal = "White/Maroon"
>> value = "DisabledEntry"
>> mousePointer = 12 // No
>> endwith
>>
>> this.MYTITLETEXT = new MYTEXT(this)
>> with (this.MYTITLETEXT)
>> height = 28.0
>> left = 247.0
>> top = 324.0
>> width = 84.0
>> colorNormal = "Blue/BtnFace"
>> alignHorizontal = 1 // Center
>> fontSize = 14.0
>> text = "MyTitle"
>> borderStyle = 1 // Raised
>> speedTip = "Form Title"
>> endwith
>>
>> this.MYTOOLBAR = new MYCONTAINER(this)
>> with (this.MYTOOLBAR)
>> onOpen = class::MYTOOLBAR_ONOPEN
>> left = 182.0
>> top = 363.0
>> width = 429.0
>> height = 37.0
>> endwith
>>
>> this.MYTOOLBAR.PBNEW = new MYPUSHBUTTON(this.MYTOOLBAR)
>> with (this.MYTOOLBAR.PBNEW)
>> onClick = class::PBNEW_ONCLICK
>> height = 24.0
>> left = 7.0
>> top = 6.0
>> width = 64.0
>> text = "&New"
>> upBitmap = "filename :Glyfx:\Aero\CE\Dbase Aero\PNG\16x16\favourites_16.png"
>> fontSize = 8.0
>> speedTip = "Add new record"
>> pageno = 0
>> endwith
>>
>> this.MYTOOLBAR.PBEDIT = new MYPUSHBUTTON(this.MYTOOLBAR)
>> with (this.MYTOOLBAR.PBEDIT)
>> onClick = class::PBEDIT_ONCLICK
>> height = 24.0
>> left = 69.0
>> top = 6.0
>> width = 62.0
>> text = "&Edit"
>> upBitmap = "filename :Glyfx:\Aero\CE\Dbase Aero\PNG\16x16\document_open_16.png"
>> fontSize = 8.0
>> speedTip = "Edit current record"
>> pageno = 0
>> endwith
>>
>> this.MYTOOLBAR.PBSAVE = new MYPUSHBUTTON(this.MYTOOLBAR)
>> with (this.MYTOOLBAR.PBSAVE)
>> onClick = class::PBSAVE_ONCLICK
>> height = 24.0
>> left = 125.0
>> top = 6.0
>> width = 62.0
>> text = "&Save"
>> upBitmap = "filename :Glyfx:\Aero\CE\Dbase Aero\PNG\16x16\save_16.png"
>> fontSize = 8.0
>> speedTip = "Save current record"
>> pageno = 0
>> endwith
>>
>> this.MYTOOLBAR.PBABANDON = new MYPUSHBUTTON(this.MYTOOLBAR)
>> with (this.MYTOOLBAR.PBABANDON)
>> onClick = class::PBABANDON_ONCLICK
>> height = 24.0
>> left = 181.0
>> top = 6.0
>> width = 62.0
>> text = "&Cancel"
>> upBitmap = "filename :Glyfx:\Aero\CE\Dbase Aero\PNG\16x16\stop_16.png"
>> fontSize = 8.0
>> speedTip = "Cancel Changes"
>> pageno = 0
>> endwith
>>
>> this.MYTOOLBAR.PBDELETE = new MYPUSHBUTTON(this.MYTOOLBAR)
>> with (this.MYTOOLBAR.PBDELETE)
>> onClick = class::PBDELETE_ONCLICK
>> height = 24.0
>> left = 241.0
>> top = 6.0
>> width = 62.0
>> text = "&Delete"
>> upBitmap = "filename :Glyfx:\Aero\CE\Dbase Aero\PNG\16x16\delete_16.png"
>> fontSize = 8.0
>> speedTip = "Delete current record"
>> pageno = 0
>> endwith
>>
>> this.MYTOOLBAR.PBNEXT = new MYPUSHBUTTON(this.MYTOOLBAR)
>> with (this.MYTOOLBAR.PBNEXT)
>> onClick = class::PBNEXT_ONCLICK
>> height = 24.0
>> left = 360.0
>> top = 6.0
>> width = 62.0
>> text = "&Next"
>> upBitmap = "filename :Glyfx:\Aero\CE\Dbase Aero\PNG\16x16\arrow_right_16.png"
>> fontSize = 8.0
>> speedTip = "Next record"
>> pageno = 0
>> endwith
>>
>> this.MYTOOLBAR.PBPREVIOUS = new MYPUSHBUTTON(this.MYTOOLBAR)
>> with (this.MYTOOLBAR.PBPREVIOUS)
>> onClick = class::PBPREVIOUS_ONCLICK
>> height = 24.0
>> left = 300.0
>> top = 6.0
>> width = 62.0
>> text = "&Previous"
>> upBitmap = "filename :Glyfx:\Aero\CE\Dbase Aero\PNG\16x16\arrow_left_16.png"
>> fontSize = 8.0
>> speedTip = "Previous record"
>> pageno = 0
>> endwith
>>
>>
>> function DISABLEDENTRY_when(bOpen)
>>
>> return false
>>
>> function MYCOMBOBOX_onChange()
>> // this = combobox
>> // datalink = field
>> // parent = field array
>> // parent = rowset
>> if this.datalink.parent.parent.state == 1
>> this.value = this.savedValue
>> this.datalink.parent.parent.modified = false
>> this.datalink.parent.parent.abandon()
>> endif
>> return
>>
>> function MYCOMBOBOX_onGotFocus()
>> this.savedValue = this.value
>> return
>>
>> function MYEDITOR_key(nChar, nPosition,bShift,bControl)
>> /*
>> This code by Gary White is provided to
>> get around a problem with rowsets that
>> have the autoEdit property set to false,
>> and editors. The editor seems to be immune
>> to this property once you make a change
>> in it -- if you then save or abandon, you
>> can actually edit the contents of the editor
>> object ...
>> */
>> // this = editor
>> // dataLink = field
>> // parent = fieldArray
>> // parent = rowset
>> if type( "this.datalink.parent.parent" ) # "U"
>> r = this.datalink.parent.parent
>> if r.autoEdit == false and ;
>> ( r.state # 2 and r.state # 3 )
>> return 0
>> endif
>> endif
>> return
>>
>> function MYENTRYFIELD_onGotFocus()
>> this.keyboard( "{Home}" )
>> return
>>
>> function PBNEXT_onClick()
>> if ( not form.rowset.next() )
>> form.rowset.next( -1 )
>> msgbox( "At end of rowset", "Can't Navigate", 64 )
>> endif
>> return
>>
>> function MYSPINBOX_onGotFocus()
>> this.keyboard( "{Home}" )
>> return
>>
>>
>> function MYTABBOX_onOpen()
>> this.curSel := 1
>> form.pageNo := 1
>> return
>>
>> function resetToolbar()
>> this.pbabandon.enabled=true
>> this.pbsave.enabled=true
>> this.pbdelete.enabled=true
>> this.pbnext.enabled=true
>> this.pbprevious.enabled=true
>> this.pbedit.enabled=true
>> this.pbadd.enabled=true
>> return
>>
>> function MYTOOLBAR_onOpen()
>> this.pbabandon.enabled=true
>> this.pbsave.enabled=true
>> this.pbdelete.enabled=true
>> this.pbnext.enabled=true
>> this.pbprevious.enabled=true
>> this.pbedit.enabled=true
>> this.pbnew.enabled=true
>> return
>>
>> function PBABANDON_onClick()
>> if form.rowset.modified
>> if msgbox( "Abandon changes to this row?", "Abandon changes?", 36 ) == 6
>> form.rowset.abandon()
>> endif
>> else
>> form.rowset.abandon()
>> endif
>>
>> return
>>
>> function PBDELETE_onClick()
>> if msgbox( "Delete this row?", "Delete Row?", 36 ) == 6
>> form.rowset.delete()
>> endif
>> return
>>
>> function PBEDIT_onClick()
>> form.rowset.edit()
>> return
>>
>> function PBNEW_onClick()
>> this.parent.pbnext.enabled=false
>> this.parent.pbprevious.enabled=false
>> form.rowset.beginAppend()
>> return
>>
>> function PBPREVIOUS_onClick()
>> if ( not form.rowset.next(-1) )
>> form.rowset.next()
>> msgbox( "At beginning of rowset", "Can't Navigate", 64 )
>> endif
>> return
>>
>> function PBSAVE_onClick()
>> form.rowset.save()
>> return
>>
>> function TABBOX_onSelChange()
>> form.pageNo := this.curSel
>> return
>>
>> endclass
>>
>> class MYENTRYFIELD(parentObj) of ENTRYFIELD(parentObj) custom
>> with (this)
>> onGotFocus = class::MYENTRYFIELD_ONGOTFOCUS
>> height = 22.0
>> left = 62.0
>> top = 102.0
>> width = 56.0
>> metric = 6 // Pixels
>> colorHighLight = "WindowText/0x80ffff"
>> value = "MyEntryfield"
>> endwith
>>
>> function MYENTRYFIELD_onGotFocus()
>> this.keyboard( "{Home}" )
>> return
>> endclass
>>
>> class MYTEXT(parentObj) of TEXT(parentObj) custom
>> with (this)
>> height = 22.0
>> left = 14.0
>> top = 55.0
>> width = 84.0
>> metric = 6 // Pixels
>> text = "MyText"
>> borderStyle = 10 // Etched Out
>> endwith
>>
>> endclass
>>
>> class MYTEXTLABEL(parentObj) of TEXTLABEL(parentObj) custom
>> with (this)
>> height = 22.0
>> left = 53.0
>> top = 107.0
>> width = 84.0
>> metric = 6 // Pixels
>> transparent = true
>> text = "MyTextLabel"
>> fontBold = true
>> alignHorizontal = 2 // Right
>> alignVertical = 1 // Middle
>> endwith
>>
>> endclass
>>
>>
>> class MYSPINBOX(parentObj) of SPINBOX(parentObj) custom
>> with (this)
>> onGotFocus = class::MYSPINBOX_ONGOTFOCUS
>> height = 22.0
>> left = 60.0
>> top = 202.0
>> width = 56.0
>> metric = 6 // Pixels
>> picture = "99999"
>> colorHighLight = "WindowText/0x80ffff"
>> rangeMax = 100
>> rangeMin = 1
>> value = 1
>> endwith
>>
>> function MYSPINBOX_onGotFocus()
>> this.keyboard( "{Home}" )
>> return
>>
>> endclass
>>
>> class MYCOMBOBOX(parentObj) of COMBOBOX(parentObj) custom
>> with (this)
>> onGotFocus = class::MYCOMBOBOX_ONGOTFOCUS
>> onChange = class::MYCOMBOBOX_ONCHANGE
>> height = 22.0
>> left = 75.0
>> top = 250.0
>> width = 84.0
>> metric = 6 // Pixels
>> colorHighLight = "WindowText/0x80ffff"
>> style = 2 // DropDownList
>> dropDownHeight = 132.0
>> endwith
>>
>> function MYCOMBOBOX_onGotFocus()
>> this.savedValue = this.value
>> return
>> function MYCOMBOBOX_onChange()
>> // this = combobox
>> // datalink = field
>> // parent = field array
>> // parent = rowset
>> if this.datalink.parent.parent.state == 1
>> this.value = this.savedValue
>> this.datalink.parent.parent.modified = false
>> this.datalink.parent.parent.abandon()
>> endif
>> return
>> endclass
>>
>> class MYRADIOBUTTON(parentObj) of RADIOBUTTON(parentObj) custom
>> with (this)
>> transparent = true
>> height = 24.0
>> left = 217.0
>> top = 22.0
>> width = 110.0
>> text = "Radiobutton"
>> metric = 6 // Pixels
>> endwith
>>
>> endclass
>>
>> class MYCONTAINER(parentObj) of CONTAINER(parentObj) custom
>> with (this)
>> transparent = true
>> left = 432.0
>> top = 42.0
>> width = 184.0
>> height = 101.0
>> metric = 6 // Pixels
>> borderStyle = 4 // Single
>> endwith
>>
>> endclass
>>
>> class MYGRID(parentObj) of GRID(parentObj) custom
>> with (this)
>> colorHighLight = "WindowText/0x80ffff"
>> cellHeight = 22.0
>> rowSelect = true
>> allowEditing = false
>> allowAddRows = false
>> height = 88.0
>> left = 434.0
>> top = 208.0
>> width = 182.0
>> metric = 6 // Pixels
>> bgcolor="White"
>> endwith
>>
>> endclass
>>
>> class MYTABBOX(parentObj) of TABBOX(parentObj) custom
>> with (this)
>> onSelChange = class::TABBOX_ONSELCHANGE
>> onOpen = class::MYTABBOX_ONOPEN
>> id = 110
>> height = 22.0
>> left = 0.0
>> top = 316.0
>> width = 644.0
>> metric = 6 // Pixels
>> colorHighLight = "WindowText/0x80ffff"
>> dataSource = 'ARRAY {"Individual Record","Find Record"}'
>> endwith
>>
>> function TABBOX_onSelChange()
>> form.pageNo := this.curSel
>> return
>> function MYTABBOX_onOpen()
>> this.curSel := 1
>> form.pageNo := 1
>> return
>> endclass
>>
>> class MYIMAGE(parentObj) of IMAGE(parentObj) custom
>> with (this)
>> height = 88.0
>> left = 209.0
>> top = 80.0
>> width = 99.0
>> metric = 6 // Pixels
>> alignment = 3 // Keep Aspect Stretch
>> endwith
>>
>> endclass
>>
>> class MYEDITOR(parentObj) of EDITOR(parentObj) custom
>> with (this)
>> key = class::MYEDITOR_KEY
>> height = 88.0
>> left = 196.0
>> top = 187.0
>> width = 221.0
>> metric = 6 // Pixels
>> value = ""
>> colorHighLight = "WindowText/0x80ffff"
>> evalTags = false
>> popupEnable = false
>> endwith
>>
>> function MYEDITOR_key(nChar, nPosition,bShift,bControl)
>> /*
>> This code by Gary White is provided to
>> get around a problem with rowsets that
>> have the autoEdit property set to false,
>> and editors. The editor seems to be immune
>> to this property once you make a change
>> in it -- if you then save or abandon, you
>> can actually edit the contents of the editor
>> object ...
>> */
>> // this = editor
>> // dataLink = field
>> // parent = fieldArray
>> // parent = rowset
>> if type( "this.datalink.parent.parent" ) # "U"
>> r = this.datalink.parent.parent
>> if r.autoEdit == false and ;
>> ( r.state # 2 and r.state # 3 )
>> return 0
>> endif
>> endif
>> return
>> endclass
>>
>> class DISABLEDENTRY(parentObj) of MYENTRYFIELD(parentObj) custom
>> with (this)
>> when = class::DISABLEDENTRY_WHEN
>> height = 22.0
>> left = 71.0
>> top = 324.0
>> width = 56.0
>> colorNormal = "White/Maroon"
>> value = "DisabledEntry"
>> mousePointer = 12 // No
>> endwith
>>
>> function DISABLEDENTRY_when(bOpen)
>>
>> return false
>> endclass
>>
>> class MYPUSHBUTTON(parentObj) of PUSHBUTTON(parentObj) custom
>> with (this)
>> height = 24.0
>> left = 35.0
>> top = 4.0
>> width = 62.0
>> text = "MyPushButton"
>> metric = 6 // Pixels
>> endwith
>>
>> endclass
>>
>> class MYTITLETEXT(parentObj) of MYTEXT(parentObj) custom
>> with (this)
>> height = 28.0
>> left = 247.0
>> top = 324.0
>> width = 84.0
>> colorNormal = "Blue/BtnFace"
>> alignHorizontal = 1 // Center
>> fontSize = 14.0
>> text = "MyTitle"
>> borderStyle = 1 // Raised
>> speedTip = "Form Title"
>> endwith
>>
>> endclass
>> class MYTOOLBAR(parentObj, name) of MYCONTAINER(parentObj, name) custom
>> with (this)
>> left = 182.0
>> top = 363.0
>> width = 429.0
>> height = 37.0
>> endwith
>>
>> this.PBNEW = new MYPUSHBUTTON(this)
>> with (this.PBNEW)
>> onClick = class::PBNEW_ONCLICK
>> height = 24.0
>> left = 7.0
>> top = 6.0
>> width = 64.0
>> text = "&New"
>> upBitmap = "filename :Glyfx:\Aero\CE\Dbase Aero\PNG\16x16\favourites_16.png"
>> fontSize = 8.0
>> speedTip = "Add new record"
>> pageno = 0
>> endwith
>>
>> this.PBEDIT = new MYPUSHBUTTON(this)
>> with (this.PBEDIT)
>> onClick = class::PBEDIT_ONCLICK
>> height = 24.0
>> left = 69.0
>> top = 6.0
>> width = 62.0
>> text = "&Edit"
>> upBitmap = "filename :Glyfx:\Aero\CE\Dbase Aero\PNG\16x16\document_open_16.png"
>> fontSize = 8.0
>> speedTip = "Edit current record"
>> pageno = 0
>> endwith
>>
>> this.PBSAVE = new MYPUSHBUTTON(this)
>> with (this.PBSAVE)
>> onClick = class::PBSAVE_ONCLICK
>> height = 24.0
>> left = 125.0
>> top = 6.0
>> width = 62.0
>> text = "&Save"
>> upBitmap = "filename :Glyfx:\Aero\CE\Dbase Aero\PNG\16x16\save_16.png"
>> fontSize = 8.0
>> speedTip = "Save current record"
>> pageno = 0
>> endwith
>>
>> this.PBABANDON = new MYPUSHBUTTON(this)
>> with (this.PBABANDON)
>> onClick = class::PBABANDON_ONCLICK
>> height = 24.0
>> left = 181.0
>> top = 6.0
>> width = 62.0
>> text = "&Cancel"
>> upBitmap = "filename :Glyfx:\Aero\CE\Dbase Aero\PNG\16x16\stop_16.png"
>> fontSize = 8.0
>> speedTip = "Cancel Changes"
>> pageno = 0
>> endwith
>>
>> this.PBDELETE = new MYPUSHBUTTON(this)
>> with (this.PBDELETE)
>> onClick = class::PBDELETE_ONCLICK
>> height = 24.0
>> left = 241.0
>> top = 6.0
>> width = 62.0
>> text = "&Delete"
>> upBitmap = "filename :Glyfx:\Aero\CE\Dbase Aero\PNG\16x16\delete_16.png"
>> fontSize = 8.0
>> speedTip = "Delete current record"
>> pageno = 0
>> endwith
>>
>> this.PBNEXT = new MYPUSHBUTTON(this)
>> with (this.PBNEXT)
>> onClick = class::PBNEXT_ONCLICK
>> height = 24.0
>> left = 360.0
>> top = 6.0
>> width = 62.0
>> text = "&Next"
>> upBitmap = "filename :Glyfx:\Aero\CE\Dbase Aero\PNG\16x16\arrow_right_16.png"
>> fontSize = 8.0
>> speedTip = "Next record"
>> pageno = 0
>> endwith
>>
>> this.PBPREVIOUS = new MYPUSHBUTTON(this)
>> with (this.PBPREVIOUS)
>> onClick = class::PBPREVIOUS_ONCLICK
>> height = 24.0
>> left = 300.0
>> top = 6.0
>> width = 62.0
>> text = "&Previous"
>> upBitmap = "filename :Glyfx:\Aero\CE\Dbase Aero\PNG\16x16\arrow_left_16.png"
>> fontSize = 8.0
>> speedTip = "Previous record"
>> pageno = 0
>> endwith
>>
>>
>> function PBDELETE_onClick()
>> if msgbox( "Delete this row?", "Delete Row?", 36 ) == 6
>> form.rowset.delete()
>> this.parent.resettoolbar()
>> endif
>> return
>> function PBABANDON_onClick()
>> if form.rowset.modified
>> if msgbox( "Abandon changes to this row?", "Abandon changes?", 36 ) == 6
>> form.rowset.abandon()
>> this.parent.resettoolbar()
>> endif
>> else
>> form.rowset.abandon()
>> endif
>>
>> return
>> function PBPREVIOUS_onClick()
>> if ( not form.rowset.next(-1) )
>> form.rowset.next()
>> msgbox( "At beginning of rowset", "Can't Navigate", 64 )
>> endif
>> return
>> function PBSAVE_onClick()
>> form.rowset.save()
>> this.parent.resettoolbar()
>> return
>> function PBNEW_onClick()
>> this.parent.pbnext.enabled=false
>> this.parent.pbprevious.enabled=false
>> form.rowset.beginAppend()
>> return
>> function PBNEXT_onClick()
>> if ( not form.rowset.next() )
>> form.rowset.next( -1 )
>> msgbox( "At end of rowset", "Can't Navigate", 64 )
>> endif
>> return
>> function PBEDIT_onClick()
>> form.rowset.edit()
>> return
>> function resetToolbar
>> this.PBNEXT.enabled=true
>> this.PBprevious.enabled=true
>> endclass
>
|
|