Christian Boulanger schrieb:
> Hi everybody,
> 
> The existing event system which can be attached to a "global/central" 
> point - be it window.application or whatever already delivers already 
> exactly what everybody is calling for. For example, enabling or 
> disabling a whole set of "paste" buttons - in the menubar, in the 
> context menu, whereever - you just need to add a
> 
> window.application.addEventListener("enable-paste-button",function(e){myCurrentButton.setEnabled(e.getData))});

Yes this should work. But a real communication system is much more 
advanced than simply using events. Also using events for this mean to 
create many temporary objects (events). I would like better to have some 
real message bus.

> 
> or, in PHP QxBuilder (Christoph, it would be better if you called your 
> project differently because you're implementing something very different 
> to the existing QxBuilders):
>            
> <qx:menuButton
>                 label="Paste"
>                 icon="icons/16/edit-paste.png"
>                 enabled="false"
>                 enableOnGlobalEvent="allow-paste">
>                 <qx:command onExecute="bg_references_list.handlePaste()" />
> </qx:menuButton>
> 
> The clipboard code doesn't need to know about how many paste buttons are 
> out there, it just need to dispatch
> 
> window.application.createDispatchDataEvent("allow-paste", true/false);

could maybe also be:

qx.core.bus.emit("allow-paste", true/false);

Sebastian


> 
> in order to achieve the desired effect. Wrapper functions can make the 
> code  less inelegant. A new solution would be fine - but for folks who 
> still work with the 0.5.x branch, there is everything you need already 
> there...
> 
> Christian
> 
> 
> Sebastian Werner schrieb:
>> Hi!
>>
>> Also interesting is some global communication layer.
>>
>> In my opinion we need both, something to communicate in *one* 
>> application. We don't want to use hard connections here. We want to make 
>> this application or part as flexible as possible.
>>
>> After this we need some application/part communication. Something like 
>> dbus (http://www.freedesktop.org/wiki/Software/dbus) for javascript 
>> would be helpful in my opinion.
>>
>> Generally each system you use, produce some overhead compared to not 
>> using it at all. The best would be to use simple function calls in 
>> high-performance areas. The creation of the event object is the first 
>> thing what is needed to do more in this case, compared to simple 
>> function calls between different objects. But it's OK to use this system 
>> in about 90% of the use cases I think.
>>
>> Sebastian
>>
>>
>>
>>
>> Christian Boulanger schrieb:
>>   
>>> Hi,
>>>
>>> I am currently converting my app away from using objects which call each 
>>> other's methods to for some behaviour to objects which communicate which 
>>> each other through global events  
>>> (window.application.createDispatchEvent("foo"),  
>>> window.application.createDispatchDataEvent("foo", {blub:true}, 
>>> window.application.addEventListener("foo", function(e){....}), and am 
>>> very much intrigued by the idea. Advantages include that I do not have 
>>> to give objects names in the global namespace or in an object registry. 
>>> All objects just exist independently and listen for each others events 
>>> to react to them (or not). All the behaviour code is located at the 
>>> object level - it is also easier to keep the application stable because 
>>> missing or broken functions cannot break it. I am thinking of extending 
>>> the system to include client-server communication.
>>>
>>> Since the idea seems so nice to me, I wonder what the drawbacks might 
>>> be. Do you expect a major performance loss?
>>>
>>> Thanks for any input,
>>>
>>> Christian
>>>
>>> All the advantages of Linux Managed Hosting--Without the Cost and Risk!
>>> Fully trained technicians. The highest number of Red Hat certifications in
>>> the hosting industry. Fanatical Support. Click to learn more
>>> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=107521&bid=248729&dat=121642
>>> _______________________________________________
>>> qooxdoo-devel mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
>>>     
>>
>> All the advantages of Linux Managed Hosting--Without the Cost and Risk!
>> Fully trained technicians. The highest number of Red Hat certifications in
>> the hosting industry. Fanatical Support. Click to learn more
>> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=107521&bid=248729&dat=121642
>> _______________________________________________
>> qooxdoo-devel mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
>>   
> 
> 
> All the advantages of Linux Managed Hosting--Without the Cost and Risk!
> Fully trained technicians. The highest number of Red Hat certifications in
> the hosting industry. Fanatical Support. Click to learn more
> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=107521&bid=248729&dat=121642
> _______________________________________________
> qooxdoo-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel


All the advantages of Linux Managed Hosting--Without the Cost and Risk!
Fully trained technicians. The highest number of Red Hat certifications in
the hosting industry. Fanatical Support. Click to learn more
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=107521&bid=248729&dat=121642
_______________________________________________
qooxdoo-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel

Reply via email to