Double-clicking a document in Windows

Richard Gaskin ambassador at fourthworld.com
Mon Feb 24 14:26:02 EST 2003


Graham Samuel wrote:

> I am surprised that a second double-click will create another
> instance of an application in Windows, because IMHO this behaviour
> would be counterintuitive for most non-technical PC users, who after
> all are Msoft's most numerous customers. Indeed, grabbing the first
> PC I could find (running Office 2000 under Windows 95), I find that
> Microsoft Word works the way I expected, i.e. double-click on a
> document will open the app, double-click on a second document, the
> app acts like you did File/Open from a menu. Of course in MS Office
> applications, it's legit to have several documents/files open at the
> same time.
> 
> I had no idea that there was an 'intra-application' issue, which I
> suppose MS Office itself has had to grapple with.

I have no idea how MS Office handles that (will they document the APIs they
use? <g>), and I'm sure there's a simpler method than the one discussed on
the MC list:  

<http://www.mail-archive.com/cgi-bin/htsearch?method=and&format=short&config
=metacard_lists_runrev_com&restrict=&exclude=&words=second+instance>

As for the default behavior, think of it as document-centric rather than
task-centric.  As Chipp pointed out, without a common menu bar everything is
dependent on the individual document window.

"But Office has a common menu bar - why can't I?"

Office uses MDI ("Multiple-Document Interface", which provides a master
enclosing window in which document windows appear.  Unlike the Mac, Windows
has not one, but four completely different windowing models for designers to
choose from:

--------------------------
Window Management

User tasks often involve working with different types of information
contained in more than one window or view. You can use a variety of
techniques to manage a set of windows or views. This chapter covers some
common techniques and the factors to consider in selecting a particular
model.

<http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwue/html
/ch10a.asp>

---------------------------

Of these, Rev can do the Single-Document Window Interface, Workbook, and
Project models, but does not currently support Multiple-Document Interface.

If it's really essential that only one instance be open, there are ways to
get around that as discussed on the MC list.  But I wouldn't worry about
confusing users. The SDI has been around so long that the only ones who find
it confusing are Mac software designers. :)  Awash among four completely
different models, Windows end users seem accustomed to the variety.


> I suppose then my fallback is to design the app to deal with only one
> document (double-clickable file) at a time - but even with this
> restriction published to my users, how can I tell if the user has in
> fact done a second 'unauthorised' double-click and somehow reject it?

Why would you want to restrict them from opening a second document?


> Incidentally, since Mac OSX is based on Unix, it seems worth asking
> if this problem also exists there - I sense that this
> multiple-instantiation thing is more 'classical' in some sense than
> the original MacOS solution and therefore likely to exist in Unix too.

No, Mac still has a single instance, but OS X does introduce a new twist
that will prompt forward-thinking designers to consider migrating from
multiple-document interfaces to single-window, multi-pane UIs (as Apple has
been doing with things like iMovie):

In all prior versions of Mac OS, all windows belonging to an application
were kep in one layer, so that clicking any of them brought all of them
forward.

With OS X, the Mac is now like other OSes, in which all windows are
interleaved regardless of which application they belong to.

This means that if your application displays related data among multiple
windows, some of those windows may becme obscured by windows of other apps.

Compare Adobe Premier to iMovie:  In Premier (at least in the last version I
used) the preview and timeline views are in separate windows.  If you go to
the Finder to double-click a movie, Premier will bring the Preview window
forward but the timeline withh be behind the Finder window (hence the new
requirement for OS X apps to have a "Bring All to Front" menu item in the
Windows menu.
 
With iMovie, a given project has multiple views in one window, each view
effectively in a separate pane rather than a separate window.  This keeps
all views related to a given project in one window, so the user never has
data related to a given project obscured by other apps.

With Rev's group objects, setting up multiple pans in a window is a little
more work to set up but merely slightly more tedious than difficult.

One more consideration for OS X -- the new OS is also now more like other
OSes in a way that may hamper usability in some instances: clicks in
background windows now not only bring a window forward but also process the
click.  If you're in the habit of clicking anywhere in a background window
to bring it forward, be aware that you may also me making a selection,
triggering a button, etc.  You have to be careful now not to click on a
control in a background window unless you want to trigger than control.

For more on this and other windowing issues in Mac OS, see the Aqua HIG:
<http://developer.apple.com/techpubs/macosx/Essentials/AquaHIGuidelines/AHIG
Windows/index.html>

-- 
 Richard Gaskin 
 Fourth World Media Corporation
 Developer of WebMerge 2.2: Publish any database on any site
 ___________________________________________________________
 Ambassador at FourthWorld.com       http://www.FourthWorld.com
 Tel: 323-225-3717                       AIM: FourthWorldInc




More information about the use-livecode mailing list