Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery

Re: Dynamic re-pack widget

by Phinix (Acolyte)
on Dec 05, 2012 at 19:29 UTC ( #1007372=note: print w/replies, xml ) Need Help??

in reply to Dynamic re-pack widget

That is actually what I ended up doing for now, but it is an imperfect solution for an imperfect world. I bound each of my sliders to a subroutine that basically handles setting the label where it belongs on mouse-over.

What is really driving me batty is this seems to be some sort of update snag. It may have something to do with Notebook. My sliders are on one notebook page and my changes are being made on another.

I tried binding the notebook tabs themselves, so that when a user clicked back over to my slider page, the changes would be updated. What is really weird is that this worked, but only if you click to the slider tab, then click that tab again.

It is like the updates are not effected until they are called from the notebook tab they need to be effecting. Very annoying. Not even set() is taking effect.

For now this works, but I know I will bash my brains against this one until I can figure it out. I will try and post some code later this afternoon when I get back to it.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1007372]
[robby_dobby]: Corion: Heh. This whole thing smells of Strategy Pattern or MVC pattern.
[Corion]: And performance linear to the number of registered one-shots doesn't feel that bad. Maybe I should collect statistics on how many callbacks are outstanding ;)
[Corion]: choroba: Yes, but the longer I thought about efficient hashes mapping the event type back to their callbacks, and how to keep them in sync, the more I thought that all that optimization might just not be worth it, even if it's horribly inelegant
[Lady_Aleena]: My biggest problem with hashes at the moment is one with 2,501 keys.
[choroba]: how many event types are there?
[Corion]: Also I found that I can't conveniently weaken an array slot, which also is inconvenient, as I want my one-shots to disappear if the caller discards them
[Corion]: choroba: Currently two or three that my program handles (WWW::Mechanize:: Chrome), but there might be more that become interesting
[Corion]: But I don't expect more than 100 to be active at the same time, so I'm not really sure if there is a not-too-fancy data structure that is maintained with few lines of code where the performance is better than the linear scan ;)
[Corion]: But I should do a mock-up program so that others can see what I'm talking about ;)
[robby_dobby]: Corion: I hope you know all too well that passing around "fancy" datastructures is a recipe for disaster :-)

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (7)
As of 2017-05-29 07:56 GMT
Find Nodes?
    Voting Booth?