Segmented Control Bugs?

Sannyasin Brahmanathaswami brahma at hindu.org
Tue Oct 3 11:00:15 EDT 2017


Hmm the bug I have is a bit different… appears in both 8 and 9 

I "deprecated" the control by moving it to -2000,-2000 and used the "old-fashioned way" of three buttons in group/get the target and go.  save… went off for some other work.. came back

Then  every time the stack opens, the script of the widget at -2000,-2000 would receive what I thought was a custom message (because we were sending it on mouseup)_

on hiliteChanged
   put the hilitedItemNames of me into tName
   put tName into sPreviousSelection
   answer tName with "OK"
    DoSomething  
end hiliteChanged

on doSomething
  answer "command issued" with "OK"
end doSomething

Though obvious in function,  "hiliteChanged"  is not a documented property of the segmented control


so I copied the three segment control to a brand new stack, 

three tabs/names

 Favorites | Activity | Date

reduced the longer script to the above very simple test. saved and close the stack… 

now I reopen the stack and the answer dialog is trigged on open stack.. the control is "hearing" the openstack message as a change of hilite.  the tName was empty.  OK so I select "Activity" which then become hilited. save the stack, close and reopen… bingo it fires the dialog with 

Activity  
OK

and in our larger framework… it was "getting worse" as somehow this segmented control widget on stack A was still receiving that message even when stack B was opened, if stack A with the widget on it's top card was still open "behind" Stack B…  and I clicked on a widget/icon in stack B that had it's hiliite set to toggle (I usually turn them off) the script editor would fire with an error in the script of the widget appearing, "like out of nowhere" (because its stack is behind the scenes) with a break at "doSomething" …can't find the command "doSomething"

almost as if the widget had become some global or backscript in the brain of the IDE.   

I don't have time for more forensics. Lost nearly literally 6 hours on this… so I have just removed it from the stack. Old method may not look as good across platforms, but it works.

moving on…


 

On 10/2/17, 11:58 PM, "use-livecode on behalf of panagiotis merakos via use-livecode" <use-livecode-bounces at lists.runrev.com on behalf of use-livecode at lists.runrev.com> wrote:

    Hi BR,
    
    The main difference between the segmented control between LC 8.x and 9.0 is
    that:
    
    - In LC 8.x you can select **exactly** one segment
    - In LC 9 this has changed (--> enhanced) and you can select 0 or more
    segments
    
    See the properties "toggleHilites" and "multipleHilites" in LC 9.0 DP-9.
    
    Note that there is currently a bug in LC 9.0 DP-9, which will be fixed in
    the next release:
    
    http://quality.livecode.com/show_bug.cgi?id=20461
    
    Best regards,
    Panos
    --
    
    



More information about the use-livecode mailing list