IIRC that _number thing has to do with iteration. The example code I gave in the email here passes one parameter (myParameter). I'm not as strong with Boost or the Standard Lib methods as I was a couple of months ago, but I don't recall there being a no-parameter version. The count of parameters is entirely dependent upon the function/method being passed.
I discovered this technique online after searching the 'net looking for how to work with functions and methods as first-class types in C++: I wanted to pass the method of a class instance off to another function (in my case, a template) so that is could call it in a centralized manner. I was able to do so this way, though it feels a bit hackish - like a lot of C++ I'm afraid. (Yes, C++ isn't my fav language, but D isn't what we are working in.) Sorry I can't help much farther: my experience is limited, and my SL viewer hacking experience is even more limited! Ricky Cron Stardus On Sat, Nov 12, 2011 at 11:51 PM, Lance Corrimal <lance.corri...@eregion.de> wrote: > I guess I wasn't exactly clear... > > > What I need to know is how I have to modify my classes to make them > work with boost::bind and the CallbackRegistry. > > When I try to just duplicate the way that other classes in the viewer > use to register methods in the CallbackRegistry, I get tons of boost > errors when building, all culminating from some missing function or > such that is called get_pointer... > > So I think I need to inherit some special class or something, but I > can't find which one! > > And what do I pass to the bind() call, there are several different > ways to call it, with one, two, or three parameters, and what's the > _(number) that usually gets passed last? > > > As you can see, I don't really know what I'm doing there. > > bye, > LC > > > Am Sonntag, 13. November 2011 schrieb Ricky: >> Is something like: >> std::bind1st(std::mem_fun(&MyClass::MyMethod), myParameter) >> what you are looking for? >> >> You can see working code using that on lines 350-390 of >> https://bitbucket.org/kf6kjg/gsp-420-engine-design-graphics/src/120 >> a2081bb2f/src/audio_core/AudioCore.cpp (This was code I wrote while >> helping out another team in one of my classes.) >> >> Boost's Bind function >> (http://www.boost.org/doc/libs/1_47_0/libs/bind/bind.html) >> generalizes the standard call I used, and so might be easier to >> use. Here's the same using Boost: >> bind(&MyClass::MyMethod, myParameter) >> >> I hope this helps, >> Ricky >> Cron Stardust >> >> On Sat, Nov 12, 2011 at 1:54 PM, Lance Corrimal >> >> <lance.corri...@eregion.de> wrote: >> > Hi there, >> > >> > >> > I'm banging my head against a problem here... >> > I want to add buttons to the toolboxes. >> > >> > The actuall adding is easy, but I have trouble figuring out what >> > I need to do to register some callbacks into the classes I need. >> > >> > I have two classes that I need to "buttonize"... one represents >> > the graphical UI for a set of new features, and that one I >> > managed to set up as a toolbox button just fine. >> > >> > The other one is troublesome though. I need to establish a method >> > that gets called (with no parameter, or a dummy), to toggle an >> > internal switch in my class, and I need another callback, that >> > returns the boolean value of that internal switch, to turn the >> > button green or not. Think of a simple "on/off switch". >> > >> > What I can't figure out is what I actually have to do with my >> > class to implement the callbacks properly, and what I have to >> > pass to the function that registers the callback. >> > >> > Any hints/tips for me? >> > >> > thanks, >> > >> > LC >> > _______________________________________________ >> > Policies and (un)subscribe information available here: >> > http://wiki.secondlife.com/wiki/OpenSource-Dev >> > Please read the policies before posting to keep unmoderated >> > posting privileges > > _______________________________________________ > Policies and (un)subscribe information available here: > http://wiki.secondlife.com/wiki/OpenSource-Dev > Please read the policies before posting to keep unmoderated posting privileges > _______________________________________________ Policies and (un)subscribe information available here: http://wiki.secondlife.com/wiki/OpenSource-Dev Please read the policies before posting to keep unmoderated posting privileges