[comp.sys.mac.programmer] A suggestion for Apple

jkeegan@hawk.ulowell.edu (Jeff Keegan) (06/02/91)

I've been thinking recently about how the finder's interface works now..
A lot more of the things that sounded impossible in the past are becomming
implementable, and I think it's worth making the following suggestion I've
been thinking about...

Many times when in the finder I'll select certain files, wanting to do
something with them (for this example I'll say they were all text files, but
with different creator types that existed on the hard drive currently, and
that the thing I wanted to do with them was to open them in one specific
application they weren't necessarily created in). I usually curse after
realizing that there was no real purpose for selecting them all, if (as in
this example) I specifically wanted them all opened in ONE specific
application..  I then go run the application I should have run in the first
place, and just as I go to open the files, I grit my teeth at the fact that
the files are still selected there in the finder, and wouldn't it be nice if
the application I'm in simply "knew" that, instead of asking me to pick them
one at a time, in a standard file dialog. (I don't actually grit my teeth,
it's only a computer, right? :)  , I am just adding that for dramatic effect).

Well this happened to me last night, after using the release of Sys 7 for a
week or two (how long has it been now since release date?), and after skimming
through most of the AppleEvent chapter of Inside Mac VI.  Now I'd been trying
to think of some other good examples of AppleEvent uses (besides the obvious
ones we hear every day.. open a document, quit your program, spellcheck this
word for me, lets play hunt on the network, etc) since the Alpha version a
year ago, and it took that long to hit me.. Since AppleEvents are here (and
documented, now), it'd be really easy (with Apple's help, of course) to add
a potential feature to many future programs..

If Finder were to accept a high-level AppleEvent requesting knowledge of which
file(s) were selected (icons highlighted), and broadcast back to the sender
(via AppleEvents) an answer, programs could have a "Open files selected in the
Finder" choice (though maybe not commonly used, the feature would exist).
It may be that AppleEvents wouldn't be the best way (the PPC toolbox instead,
maybe?), but that's not terribly important..

I'm not trying to get a hack feature suggested here, what I'm actually doing
is suggesting an idea that I think would at the LEAST be a stepping stone
to a point where someday standard-file isn't the only option (though sometimes
it sure is preferable.. I don't know about you, but I FLY through modal dialogs
now that we can tab from the Save "name" field to the list, and page through
that).. Anyway, I was almost expecting to see a sub-chapter in either
Finder Interface or AppleEvent Manager describing some server-based services
provided by the Finder, such as this.. (Why should the /Finder/ have all the
fun of sending AppleEvents to everyone..  Hey you, open this file.. and print
this one too.. now Quit, I feel like shutting down..) 
(If there is such a sub-chapter that I missed, forgive me, I must have missed
it.)

Comments?

..Jeff Keegan

p.s.  Is anyone else out there concerned that Addison Wesley [Crusher (I like
that!)] hasn't taken into consideration the number of PAGES in Inside Mac VI?
I've got the paperback edition (I heard a hardcover might exist), and leaving
the thing OPEN for more than 10 minutes practically rips the binding..
(not a complaint, just a comment)

-------------------------------------------------------------------------------
| Jeff Keegan                | I clutch the wire fence until my fingers bleed |
| jkeegan@hawk.ulowell.edu   | A wound that will not heal                     |
|----------------------------| A heart that cannot feel                       |
| This space intentionally   | Hoping that the horror will receed             |
| left blank                 | Hoping that tomorrow we'll all be freed  -RUSH |
-------------------------------------------------------------------------------

<CHARLESW@QUCDN.QueensU.CA> (06/02/91)

In "A suggestion for Apple (AppleEvents/Finder).." jkeegan@hawk.ulowell.edu
(Jeff Keegan) says:

> If Finder were to accept a high-level AppleEvent requesting knowledge of
> which file(s) were selected (icons highlighted), and broadcast back to the
> sender (via AppleEvents) an answer, programs could have a "Open files
> selected in the Finder" choice (though maybe not commonly used, the feature
> would exist).

I think this is a good idea.  There was a discussion a few months ago about
replacing SFGetFile with the Open command in the Finder, but I think this
is a better solution.  It allows for a variety of commands (e.g. Append,
Filter (somehow), Link, Include) that the authors of the Finder can't
anticipate.  It is also allows commands to be linked to file types (rather
than creators).

I don't have "Inside Mac VI" yet, so I'm assuming there isn't a way to do
this already.

.../dave

resnick@cogsci.uiuc.edu (Pete Resnick) (06/03/91)

jkeegan@hawk.ulowell.edu (Jeff Keegan) writes:

>Many times when in the finder I'll select certain files, wanting to do
>something with them (for this example I'll say they were all text files, but
>with different creator types that existed on the hard drive currently, and
>that the thing I wanted to do with them was to open them in one specific
>application they weren't necessarily created in). I usually curse after
>realizing that there was no real purpose for selecting them all, if (as in
>this example) I specifically wanted them all opened in ONE specific
>application.

Though I really like the idea you have, there is a way to accomplish
what you want now. I have aliases to some common applications which I
tend to open lots of files with on my desktop. So if I want to open a
bunch of TEXT files, I select them all in Finder and drag them all on
top of my alias. This doesn't, however, work for performing other
functions so far as I can figure out yet, so your idea would definitely
be a great one.

pr
--
Pete Resnick             (...so what is a mojo, and why would one be rising?)
Graduate assistant - Philosophy Department, Gregory Hall, UIUC
System manager - Cognitive Science Group, Beckman Institute, UIUC
Internet/ARPAnet/EDUnet  : resnick@cogsci.uiuc.edu
BITNET (if no other way) : FREE0285@UIUCVMD

dant@ryptyde.UUCP (Daniel Tracy) (06/03/91)

Responding to the following:

"Many times when in the finder I'll select certain files, wanting to do
something with them (for this example I'll say they were all text files, but
with different creator types that existed on the hard drive currently, and
that the thing I wanted to do with them was to open them in one specific
application they weren't necessarily created in). I usually curse after
realizing that there was no real purpose for selecting them all, if (as in
this example) I specifically wanted them all opened in ONE specific
application..  I then go run the application I should have run in the first
place, and just as I go to open the files, I grit my teeth at the fact that
the files are still selected there in the finder, and wouldn't it be nice if
the application I'm in simply "knew" that, instead of asking me to pick them
one at a time, in a standard file dialog. (I don't actually grit my teeth,
it's only a computer, right? :)  , I am just adding that for dramatic effect)."

Couldn't you just select all the files (doing a "Find All" command to get them
all in one folder if necessary), and then drag them over the icon of the 
application you want to open them in? If this doesn't work, it's probably
because the application doesn't support AppleEvents anyways...

jkeegan@hawk.ulowell.edu (Jeff Keegan) (06/03/91)

In article <11@ryptyde.UUCP> dant@ryptyde.UUCP (Daniel Tracy) writes:
>Responding to the following:
>
>"Many times when in the finder I'll select certain files, wanting to do
>something with them (for this example I'll say they were all text files, but
>with different creator types that existed on the hard drive currently, and
>that the thing I wanted to do with them was to open them in one specific
>application they weren't necessarily created in). I usually curse after
>realizing that there was no real purpose for selecting them all, if (as in
>this example) I specifically wanted them all opened in ONE specific
>application..  I then go run the application I should have run in the first
>place, and just as I go to open the files, I grit my teeth at the fact that
>the files are still selected there in the finder, and wouldn't it be nice if
>the application I'm in simply "knew" that, instead of asking me to pick them
>one at a time, in a standard file dialog. (I don't actually grit my teeth,
>it's only a computer, right? :)  , I am just adding that for dramatic effect)."
>
>Couldn't you just select all the files (doing a "Find All" command to get them
>all in one folder if necessary), and then drag them over the icon of the 
>application you want to open them in? If this doesn't work, it's probably
>because the application doesn't support AppleEvents anyways...

Ok, sure that's an option of the application's icon is visible.. But what if
it's an application you launched an hour ago that was buried under 5 folders?
And more important, what if what you want the application to do isn't just
open them?  What if, for instance, the people writing ResEdit wanted you to be
able to get file/info (resedit style, so you can change bits, etc) on all
selected files/folders?  Dragging the icons to the ResEdit icon might be
an already provided function (open the files, not get-info on them).. Then
what?

Besides, as I described before, I'm not as concerned with the trivial problem
described, but rather at a general approach to a solution to this any many
other interface problems..  Suppose you wanted to create an application that
looked like a folder, that would actually send files via Xmodem to a friend of
yours..  Simply double clicking it could show files on his machine, and dragging
icons (of any type) onto this icon could be used to send the files/folders..
fine.. but what if you ran the application (which appeared to be an open
folder, as Users & Groups does).. If the finder were providing AppleEvent
services, it could allow you to say "Hey, I'm impersonating a folder window
here.. if someone in the finder clicks on an icon and drags onto my window,
let them drop it there, and tell me via AppleEvents.. I'll know how to handle
it"..  This could then send the file to your friend even though you didn't
initially drag it onto the icon..  Sure, the same functionality is available
if the user drags the file to the your ICON instead of your folder-like window,
but usually the window would cover up that icon (don't forget Murphy's law..)

To tell you the truth I was expecting Apple's Users & Groups to do something
like this.. It'd be nice if I could take a text file describing who my
users and groups were (in some predetermined format) and drag it (as an icon)
onto the open window (not necessarily the icon) of Users & Groups, and have
it create the accounts that way..  (I haven't read through the manuals for
Users & Groups functionality, so if something like that is available I
apologize, but please tell me!  I'm wondering just how on a network I should
be creating general users, etc..

(actually I could probably copy the Users & Groups preference file.. (wake
up Jeff), but it still wouldn't provide the "add these changes" type of
feature that dragging a file into that window could..)

I was also kinda sad that Users & Groups doesn't let you create an icl8 for
each person.. I admit, kind of a waste of space, but I really wanted to paste
my icon of me on there....

'nuff said..

..Jeff Keegan

-------------------------------------------------------------------------------
| Jeff Keegan                | I clutch the wire fence until my fingers bleed |
| jkeegan@hawk.ulowell.edu   | A wound that will not heal                     |
|----------------------------| A heart that cannot feel                       |
| This space intentionally   | Hoping that the horror will receed             |
| left blank                 | Hoping that tomorrow we'll all be freed  -RUSH |
-------------------------------------------------------------------------------

zben@ni.umd.edu (Ben Cranston) (06/04/91)

In article <1991Jun2.193409.13487@ux1.cso.uiuc.edu> resnick@cogsci.uiuc.edu
(Pete Resnick) writes:

> ...  So if I want to open a
> bunch of TEXT files, I select them all in Finder and drag them all on
> top of my alias. This doesn't, however, work for performing other
> functions so far as I can figure out yet, so your idea would definitely
> be a great one.

If any particular application is generic enough to be useful for ALL file
types (say a backup utility or a checksummer or a compactor) then it could
be given a wildcard FREF.  Then the Finder would pass it ANY kind of file
that was selected and dragged on top of it.  From VI-9-15:

"Create a 'FREF' resource that specifies '****' as the file type to allow
users to drag all file types -- including applications, system extensions,
documents, and so on, but not including disks or folders -- to your
application icon.  If you create three 'FREF' resources that specify 'disk',
'fold', and '****' as their file types ... dragging any desktop icon to your
application icon."