[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Watching a variable (array) for change
[Thread Prev] | [Thread Next]
- Subject: Re: Watching a variable (array) for change
- From: Bruce Steers <bsteers4@xxxxxxxxx>
- Date: Thu, 29 Oct 2026 15:23:57 +0000
- To: user@xxxxxxxxxxxxxxxxxxxxxx
I probably did something wrong but i just got segfaults when trying it (i just imported the shmMem src folder into the program) I think i need too many other tweaks to the TextEditor to fool myself into thinking i could use Inheritance and a few tricks. Even if the SharedMem stuff did work i think it's a lot to add for a small purpose. Thanks for the advice anyway :) Respects BruceS On Thu, 29 Oct 2026 at 09:17, Brian G <brian@xxxxxxxxxxxxxxxx> wrote: > One more thing, it uses fast, so the first time used it can take 30 > seconds or so to build with the jit. > but once built it is cached and there is no delay after first time used. > On 10/29/26 02:02, Brian G wrote: > > Try the shmmem library from the software farm. It allows you to create > variables that will raise an event when changed. When created or destroyed. > That includes arrays > Hope this helps. once the library is installed, make the executable. > There is a wiki with info: https://github.com/justlostintime/ShmMem/wiki > in your code: > __________________________________________--- cut here > _____________________________________ > ' Gambas module file > > Use ":westwood/shmmem:2.2" > Class Shmmem > > Public Sub Main() > > Print "hello world" > Dim mymem As New Shmmem > Print "Memory defined" > > With mymem > !a = 1 > !b = "this" > .notify("b", Me) > !c = ["this", 2, 3, 4, "that"] > Print !a, !b, !c > .["c", 0] = "pull" > Print !c[0] > .b = "hellow there i changed" > End With > Print "Done" > mymem.close() > Quit 0 > > Catch > Error "Script Error >";; error.text & "\n" & error.where > > End > > Public Sub b_changed(varname As String, value As Variant, TimedOut As > Boolean) > > Print "b set to :";; value > > Catch > Print "oops user 1";; error.text;; error.where > > End > _____________________________________________________________ cut here > ________________________________________________________________ > > > On October 28, 2026 11:42:50 PM PDT, BB <adamnt42@xxxxxxxxx> > <adamnt42@xxxxxxxxx> wrote: > >> On 26/10/26 7:21 am, Bruce Steers wrote: >> >> >> Is is possible to watch a variable for changes? >> >> I'm trying to do something with TextEditor that reacts when a procedure >> Limit is Collapsed / Expanded >> I've managed to get something working when mouse clicks do it but there's >> other ways to collapse/expand limits too so looking for a simpler way. >> >> I can get a pointer to the TextEditor $aFold variable via the >> TextEditor._GetFolding() method but is there a way to monitor an Array and >> react to any changes? >> >> I've removed an adapted gb.form.editor source from my program and and >> trying to replace all my mods via auto-inheritance of the main component >> instead. >> >> I did have a TextEditor Fold event that triggered when a procedure was >> folded/expanded. I'm trying to emulate that. >> Having the Fold event added to master would be good but won't really help >> me with backward compatibility so i'm looking for a workaround. >> >> Respects >> BruceS >> >> This is not easy. I have been digging down into it and trying to find a >> way to raise a signal where an address is written to at the OS level. It is >> not an easy thing to do, in fact it may be impossible. >> >> But it has been a bit of a poser to be sure. >> >> hmmm >> >> b >> >> >> > -- > ~~~~ Brian > >
| Watching a variable (array) for change | Bruce Steers <bsteers4@xxxxxxxxx> |
| Re: Watching a variable (array) for change | BB <adamnt42@xxxxxxxxx> |
| Re: Watching a variable (array) for change | Brian G <brian@xxxxxxxxxxxxxxxx> |
| Re: Watching a variable (array) for change | Brian G <brian@xxxxxxxxxxxxxxxx> |