W dniu 4 marca 2010 17:36 użytkownik Joshua A. Andler <scislac@...400...> napisał:
I don't use the feature, but wouldn't this be useful with View>Duplicate window? I don't see it in any other workflow, but if people use that duplicate window stuff it would seem reasonable.
In option 1 (floating dialogs always refer to the active window), the active window would change when it's duplicated - nothing new. The dialogs might receive a signal that notifes them of the change of active window. In option 2 (floating dialogs refer to the window that created them), the dialogs should be duplicated. No reattachment takes place.
By "reattaching the floating dialog to a different window", I mean option 2 but with the possibility to change the window to which the dialog refers. I think it creates unnecessary complexity, and option 2 is confusing anyway. Option 1 is better.
There's extra complexity from the fact that dialogs can be either docked or floating. As I said before, having several floating dialogs of the same type that refer to different windows might be very confusing. At the same time it should be possible to have multiple docked dialogs of the same type in different windows that should always refer to the window they're docked in. I think the best place to solve it is the base class of all dialogs.
There are some extra considerations: - I have a floating Fill & Stroke, and I undock another Fill & Stroke. (I would close the old dialog.) - I dock a floating dialog to a different window than it was undocked from. Does GDL allow this? - New dialogs are set to dock by default, and I have a defocused floating Fill & Stroke dialog. I press a key shortcut or menu command to open Fill & Stroke from some window. Is the existing dialog brought to the front, or does a docked version appear? (My choice is that the existing dialog is brought to the front, because it's the "shared" version that in some sense belongs to all windows. However, this could be annoying on Linux with multiple workspaces.)
Regards, Krzysztof