discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Dockng windows to each other (was RE: NSToolbar)


From: Uli Kusterer
Subject: Re: Dockng windows to each other (was RE: NSToolbar)
Date: Sun, 18 Jan 2004 23:26:51 +0100
User-agent: MT-NewsWatcher/3.3b1 (PPC Mac OS X)

In article <mailman.569.1074034959.928.discuss-gnustep@gnu.org>,
 "Vaisburd, Haim" <HVaisbur@Advent.COM> wrote:

> Yes, I think it is a very powerful idea. I used to think about that for
> quite a while. In my mind, different apps can dock to each other,
> and the docking would change their behavior: they would know to communicate.
> Something like a micro-network within a desktop.

Tima,

 that'd be quite a huge step to add on top of that. Even if it only 
worked inside applications and not across, it would be a good deal of 
work to implement right. Across applications ... well, just "docking 
together" windows would definitely work if you are able to do that at 
the window server level.

> > Of course, to the application programmers, all of this would look like 
> > one honkin' big window
> 
> So - not nesessarily.

 Sure, if it's inter-application, it wouldn't. I was more thinking of 
the developer's point of view:

 Usually it's much easier to just create a single window and stuff views 
in it, then to create a decent multi-view layout. So, what I'd like to 
do is let developers design one huge window and define the various 
"subwindows". A "window group" if you will. All these "subwindows" would 
be glued together by split views, tab views, or by being inside drawers 
attached to the actual window.

 The developer's code only treats the whole group as one window, while 
the user can actually shred them apart in pieces, hide some of them 
individually, or re-show them, without the developer really needing to 
know about it.

 Of course, if that happened inter-application, each application would 
be insulated from the other, the developer would still think it was one 
huge window, even if one of its drawers had been ripped off and stuck to 
a file manager window. But there'd have to be some way (maybe Services?) 
to detect such a case and provide additional behaviour, so developers 
that want to allow that can make their app smarter.

> I have to admit though that I do not know how to implement that.
> I feel something about DO-based protocols the apps would use to communicate,
> but that's all I can tell for now.

 Well, the problem with inter-application communication isn't really the 
low-level method (whether it'd be DO, which lends itself to this use in 
GNUstep, or pipes, or whatever), it's how the applications would 
communicate sensibly without knowing each other beforehand.

 Simple cases would probably include that each window could advertise 
some bits of data (like Services), for which another window can look. 
E.g. a text editor could advertise its visible range of text, or 
selected text, and if it's attached to a browser window, the browser 
could look for any text, look for any URLs in there and automatically 
open them, maybe in separate tabs.

 I don't immediately see a use for something like this, but it seems 
simple enough to implement. At a very basic level, a document window 
could maybe vend its document's path, and a file inspector window docked 
to it could pick it up and display the file's attributes.

 But personally, intra-application-docking of windows would already be 
useful enough for me. inter-application-docking in a generic fashion 
still seems to me like a solution looking for a problem right now. While 
docking inside one application would give me the flexibility I like to 
decide myself when I need a single-window interface and when I want 
dozens of little window-thingies to clutter my screen and make optimal 
use of screen space.

Cheers,
-- Uli
"Where oh where has my server gone..."


reply via email to

[Prev in Thread] Current Thread [Next in Thread]