Hello again,

thanks for your help, Gene. No, fixing the typo did not solve the 
problem. But there was second typo (a ";" at the end of the line of the 
if-statement) which _did_ solve the problem. Thanks!

Michael

Gene Amtower schrieb:
> So, did fixing the typo fix the problem?  You didn't say, but I 
> suspect that might affect things negatively!  ;-)
>
> On Thu, 2009-06-11 at 00:04 +0200, Michael Helwig wrote:
>> Sorry, there is a typo in the source. It should read:
>>
>> "qx.event.message.Bus.unsubscribe("CONFIG LOADED",this.buildGUI,this);"
>>
>> instead of
>>
>> "qx.event.message.Bus.unsubscribe("CONFIG_LOADED",this.buildGUI,this);"
>>
>> Greets,
>> Michael
>>
>> Michael Helwig schrieb:
>> > Hi Gene,
>> >
>> > thanks, you are right, this at least works in the Playground. But I'm 
>> > still having problems in my actual code. My Application.js contains in 
>> > its members section:
>> > [CODE]
>> >
>> > members : {
>> >
>> > buildGUI : function () {
>> >
>> >     if(hbtables.Application.messageBus.checkSubscription("CONFIG LOADED"));
>> >         
>> > qx.event.message.Bus.unsubscribe("CONFIG_LOADED",this.buildGUI,this);
>> > }
>> >     main : function () {
>> >
>> >         hbtables.Application.messageBus = 
>> > qx.event.message.Bus.getInstance();
>> >         hbtables.Application.messageBus.subscribe("CONFIG LOADED", 
>> > this.buildGUI,this);
>> > }
>> >
>> > }
>> > [/CODE]
>> >
>> > This does not work. Checking the output of
>> >
>> > [CODE]
>> > qx.dev.Debug.debugObject(hbtables.Application.messageBus.getSubscriptions());
>> > [/CODE]
>> >
>> > later in the source shows that the function is still in the subscriber's 
>> > list - to be precise, I seem to get the whole document source in the 
>> > output of the debugObject above, which irritates me. Is this the correct 
>> > behavior?
>> >
>> > Furthermore, the api documentation says about 
>> > qx.event.message.Bus.unsubscribe:
>> >
>> > "unsubscribe a listening method _if_ you supply the callback function 
>> > and execution context, remove only this exact subscription _otherwise_ 
>> > remove all subscriptions"
>> >
>> > This, I think, suggests that the second and third parameter are 
>> > optional. However, I'm not a native speaker.
>> >
>> > Greets,
>> > Michael
>> >
>> > Gene Amtower schrieb:
>> >   
>> >> Michael,
>> >>
>> >> In my API docs, it lists 3 parameters for the Bus.subscribe and 
>> >> Bus.unsubscribe methods...
>> >>
>> >> *subscribe(String **message**, Function **subscriber**, Object 
>> >> **context**)*
>> >> *unsubscribe(String **message**, Function **subscriber**, Object 
>> >> **context**)*
>> >>
>> >> where the 3rd parameter is probably going to be "this" and appears to 
>> >> be required per the API docs. 
>> >>
>> >> When I used all three parameters in my Playground for both subscribe 
>> >> and unsubscribe, the error went away and both the subscibe and 
>> >> unsubscribe work correctly.  I moved the dispatch statement around to 
>> >> test the functionality, and it only worked when placed between the 
>> >> subscribe and unsubscribe calls.
>> >>
>> >>
>> >>     
>> >>> var messageBus = qx.event.message.Bus.getInstance();
>> >>>
>> >>> var message = new qx.event.message.Message("TEST");
>> >>>
>> >>>
>> >>>
>> >>> var myfunction = function() {
>> >>>
>> >>>    alert("Here I am");
>> >>>
>> >>> }
>> >>>
>> >>>
>> >>>
>> >>> messageBus.subscribe("TEST", myfunction, this);
>> >>>
>> >>> // messageBus.unsubscribe("TEST");
>> >>> messageBus.unsubscribe("TEST", myfunction, this);
>> >>>
>> >>> messageBus.dispatch(message);
>> >>>
>> >>>       
>> >> HTH,
>> >>
>> >>   Gene
>> >>
>> >>
>> >> On Wed, 2009-06-10 at 20:11 +0200, Michael Helwig wrote:
>> >>     
>> >>> Hi,
>> >>>
>> >>> how can I unsubscribe a function from a message bus 
>> >>> (qx.event.message.Bus)?
>> >>>
>> >>> Calling messageBus.unsubscribe("MESSAGE_TEXT") yields an error 
>> >>> ("sub[msgName] is null")
>> >>> Running the following in the Playground app also yields an error:
>> >>>
>> >>> [CODE]
>> >>> var messageBus = qx.event.message.Bus.getInstance();
>> >>> var message = new qx.event.message.Message("TEST");
>> >>>
>> >>> var myfunction = function() {
>> >>>    alert("Here I am");
>> >>> }
>> >>>
>> >>> messageBus.subscribe("TEST", myfunction);
>> >>> messageBus.unsubscribe("TEST");
>> >>> [/CODE]
>> >>>
>> >>> Error:
>> >>> playground.Application[p]: TypeError: k[l] is null
>> >>>
>> >>> The combinations
>> >>> [CODE]
>> >>> messageBus.unsubscribe("TEST", myfunction);
>> >>> //OR
>> >>> messageBus.unsubscribe(myfunction);
>> >>> [/CODE]
>> >>> have no effect, the function gets called if the message is dispatched 
>> >>> anyway.
>> >>>
>> >>> Am I doing something wrong or is this a bug?
>> >>>
>> >>> Greetings,
>> >>>
>> >>> Michael
>> >>>
>> >>>
>> >>> ------------------------------------------------------------------------------
>> >>> Crystal Reports - New Free Runtime and 30 Day Trial
>> >>> Check out the new simplified licensing option that enables unlimited
>> >>> royalty-free distribution of the report engine for externally facing 
>> >>> server and web deployment.
>> >>> http://p.sf.net/sfu/businessobjects
>> >>> _______________________________________________
>> >>> qooxdoo-devel mailing list
>> >>> qooxdoo-devel@lists.sourceforge.net 
>> >>> <mailto:qooxdoo-devel@lists.sourceforge.net> 
>> >>> <mailto:qooxdoo-devel@lists.sourceforge.net 
>> >>> <mailto:qooxdoo-devel@lists.sourceforge.net>>
>> >>> https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
>> >>>     
>> >>>       
>> >> ------------------------------------------------------------------------
>> >>
>> >> ------------------------------------------------------------------------------
>> >> Crystal Reports - New Free Runtime and 30 Day Trial
>> >> Check out the new simplified licensing option that enables unlimited
>> >> royalty-free distribution of the report engine for externally facing 
>> >> server and web deployment.
>> >> http://p.sf.net/sfu/businessobjects
>> >> ------------------------------------------------------------------------
>> >>
>> >> _______________________________________________
>> >> qooxdoo-devel mailing list
>> >> qooxdoo-devel@lists.sourceforge.net 
>> >> <mailto:qooxdoo-devel@lists.sourceforge.net>
>> >> https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
>> >>   
>> >>     
>> >
>> >
>> > ------------------------------------------------------------------------------
>> > Crystal Reports - New Free Runtime and 30 Day Trial
>> > Check out the new simplified licensing option that enables unlimited
>> > royalty-free distribution of the report engine for externally facing 
>> > server and web deployment.
>> > http://p.sf.net/sfu/businessobjects
>> > _______________________________________________
>> > qooxdoo-devel mailing list
>> > qooxdoo-devel@lists.sourceforge.net 
>> > <mailto:qooxdoo-devel@lists.sourceforge.net>
>> > https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
>> >
>> >
>> >   
>>
>>
>> ------------------------------------------------------------------------------
>> Crystal Reports - New Free Runtime and 30 Day Trial
>> Check out the new simplified licensing option that enables unlimited
>> royalty-free distribution of the report engine for externally facing 
>> server and web deployment.
>> http://p.sf.net/sfu/businessobjects
>> _______________________________________________
>> qooxdoo-devel mailing list
>> qooxdoo-devel@lists.sourceforge.net 
>> <mailto:qooxdoo-devel@lists.sourceforge.net>
>> https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
>>     
> ------------------------------------------------------------------------
>
> ------------------------------------------------------------------------------
> Crystal Reports - New Free Runtime and 30 Day Trial
> Check out the new simplified licensing option that enables unlimited
> royalty-free distribution of the report engine for externally facing 
> server and web deployment.
> http://p.sf.net/sfu/businessobjects
> ------------------------------------------------------------------------
>
> _______________________________________________
> qooxdoo-devel mailing list
> qooxdoo-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
>   


------------------------------------------------------------------------------
Crystal Reports - New Free Runtime and 30 Day Trial
Check out the new simplified licensing option that enables unlimited
royalty-free distribution of the report engine for externally facing 
server and web deployment.
http://p.sf.net/sfu/businessobjects
_______________________________________________
qooxdoo-devel mailing list
qooxdoo-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel

Reply via email to