On 11/28/08, Hans Breuer <[EMAIL PROTECTED]> wrote: >>> Why do you want to change this on the object interface level? Wouldn't a >>> dedicated "multiple selected objects" properties dialog give you a better >>> solution?
Ok. Rather than dissecting each others emails, let me summarise: We both agree that changing the programming interface to the dialog object is bad, and I have no intention to do it. The current dialog does very well at setting properties of multiple objects, but the problem is that we can't pass multiple objects to it through the current programming interface. Now solutions proposed: 1) Promote the current selection to a DiaObject. This does not need a change in the interface in any manner. But if the selection object is not a DiaObject, it can't be passed to the dialog. 2) Create a new dialog! The current dialog is perfectly well suited to do the required job. Creating a new dialog just to make a distinction between a single selected object and multiple selected objects is ugly. How does it get invoked? The current dialog is invoked through the selected object's vtable. We would need more code just to check if multiple objects are selected, and then invoke the special dialog. Instead if the current selection is itself a DiaObject, then it's own vtable points to the appropriate action, ie, a call for the current dialog. We might still need to check whether one or more objects are selected in some places, but if that becomes necessary, the check is now neatly placed inside the behaviour of the selection object, where it's relevant. 3) An invisible layer. I am not aware of how this works. Would appreciate a pointer in the general direction of what this means. This solution is useful only if it allows us to invoke the current dialog without changing its interface. >> http://bugzilla.gnome.org/show_bug.cgi?id=110393 >> Selection needs to be in the undo list >> >> http://bugzilla.gnome.org/show_bug.cgi?id=171074 >> print selection / export selection Now that the intentions are clear, let's ignore these bugs. I shouldn't have dragged them here in the first place. > Of course showing some code addressing all my objections above may convince > me that I'm wrong ;-) Would love to do that! I already have the SelectionObject, but need to be careful about its vtable. That will take some time. Till then, two things would be highly appreciated: 1) Anything that could possibly go wrong by making SelectionObject a DiaObject. Like code that might have to make a special exception, for example. I would hate to be suprised by something unexpected ... if anyone can see something right away, please let me know since that can save a lot of effort. 2) A general idea about what invisible layers are, and their place in the rest of the world. Sameer. -- http://www.it.iitb.ac.in/~sameerds/ _______________________________________________ dia-list mailing list [email protected] http://mail.gnome.org/mailman/listinfo/dia-list FAQ at http://live.gnome.org/Dia/Faq Main page at http://live.gnome.org/Dia
