Many thanks for the updated version.
May I suggest a live filter feature for field "filterListInput"?
Add this to the script
Code: Select all
on textChanged
dispatch "mouseUp" to btn "filterButton"
end textChanged
Kind regards
Bernd
Moderators: FourthWorld, heatherlaine, Klaus, kevinmiller, robinmiller
Code: Select all
on textChanged
dispatch "mouseUp" to btn "filterButton"
end textChanged
Very good suggestion, Bernd! Your script addition will be in the next release! Thanks!
Hmm, could it be that on Linux a stack crashes if it contains a browser widget? Since that widget doesn't work on Linux (if I recall correctly)?
Is showing/hiding the browser widget or changing the size of it enough to cause a crash?
I'm thinking it may strengthen LiveCode as a serious option for software development if it comes with a competent 'live documentation' feature. It would make software made with LiveCode a little more future-proof and a little less dependent on the original developer. Perhaps... Let's see where it goes!Mermaid is a JavaScript based diagramming and charting tool that uses Markdown-inspired text definitions and a renderer to create and modify complex diagrams. The main purpose of Mermaid is to help documentation catch up with development.
Doc-Rot is a Catch-22 that Mermaid helps to solve.
Diagramming and documentation costs precious developer time and gets outdated quickly. But not having diagrams or docs ruins productivity and hurts organizational learning.
Mermaid addresses this problem by enabling users to create easily modifiable diagrams, it can also be made part of production scripts (and other pieces of code).
Code: Select all
# display getProp and setProp
switch char 1 of getBracketType(pParent)
case "{" # getProp or setProp
put sSyntaxCatalogue[pParent] && "fill:#09f" into tStyle
break
case "(" # command
put sSyntaxCatalogue[pParent] && "fill:#0af" into tStyle
break
default # function
put sSyntaxCatalogue[pParent] && "fill:#f90" into tStyle
end switch
put sSyntaxCatalogue[tKey] & getBracketType(tKey) && "-->" && sSyntaxCatalogue[pParent] & getBracketType(pParent) into tRow
put cr & "style" && tStyle after tRow
#put sSyntaxCatalogue[tKey] & getBracketType(tKey) & " -->" && sSyntaxCatalogue[pParent] & getBracketType(pParent) into tRow
Oh, that sounds like a pretty long script indeed! I only got that error once. The default char max of Mermaid is 50.000 chars, but this can be altered (I just learnt, thanks to your question). I'll implement this as a setting in the next version (with a warning that it may cause "performance problems due to high CPU usage in the browser", as someone on Stackoverflow claims).
Yes, that is a good idea. The different node shapes are not really enough, it's an improvement to give commands/functions/set/getProps different colours as well.
And a good one. I'll also add the possibility to let the user choose the colours.
Well, I think in fact it shows the difference between a handler being called by at least one other handler, and handlers that are first in their 'chain of command'. The latter are indeed often system messages, i.e. "on" handlers such as "on openCard" or "on keyDown", but not necessarily so. It's still a nice side effect though, to see the "trigger handlers" in a different colour, so I'll try to keep that in.But I did notice that this also showed me the difference between system messages and script handlers as a side effect.
Yeah, there is a problem with that. The way the handler catalogue is currently built, it uses handler names as array keys. Since getProp and setProp share the same handler name, they unfortunately fight for the same name space in the array (the last added wins). The same applies if a function and a command have the same name, which is allowed and works in LC, but isn't, in my opinion, good scripting practice...I also fiddled with the idea of changing the arrow endpoints to differentiate between getProp and setProp calls, but didn't follow through on that.