Sheets - a question of presentation.

Hey

I have a question about displaying panels/windows as a sheet attached to another window. I’m wanting to know if there is a way to control the way the sheet appears. I have noticed there are two kinds:

  1. Where the sheet simply slides down from the top of the window.
  2. Where the sheet rolls out like paper from the top of the window.

I’ve not spotted any way of controlling which one is used, but I have definitely seen both types happen in my AppleScript Studio app, and would like to control it so that you only see the second one.

Any tips?

Thanks
Ryan

Hi Ryan,

there are a few sample projects in /Developer/Examples/AppleScript Studio/,
which show all possible panel options (Display Panel, Open Panel, Save Panel).
To read the scripts is a good way to learn the “language”.

Hi

I have indeed “read the scripts”, and the application is pretty much complete, however in all the documentation I have read, including the sample scripts in the Developer folder, I haven’t found any way to control which animation to use when the sheet is created. I am having no trouble using sheets, panels, windows or anything else, I mereley wanted to know if it is possible to control the animation type.

Thanks
Ryan

Sorry, I didn’t want to presume, that you haven’t done your homework :wink:

Have you any example of type 2 (roll out)?
I can’t remember having seen this, and I have no idea how it looks.

As far as I know you can only display a sheet sliding down or in an extra window

That’s OK :slight_smile:

I have a screenshot of the sheet half way through it ‘rolling out’. It does this animation where it appears to roll out from the top of the window, like paper coming through a letterbox. At the end of the animation, it appears the same as any normal panel. When you close the panel, it does the same animation, but in reverse, to ‘suck’ the panel back in.

I have some other panels which all have the same properties in IB and I use the same method to display them, but they just slide down from the top without the ‘rolling’ effect.

Screenshot

wow, I haven’t never seen this.
Could it be some Cocoa or Carbon magic?

Ok I’ll give you a demo of it -

Open Safari up and choose ‘File->Save As’.

A Save panel will roll out of the Safari window in the same way as that screenshot I just showed you (method 2 in the original post).

The other way where it simply slides out can be seen if you go to Software Update from the Apple Menu and watch the ‘Checking for new software…’ panel slide out of the main one.

yes, there it is, thanks.

But Safari is not written in AppleScript :wink:

Looking at the dictionary of AppleScript Studio I couldn’t find any property to change
the appearance of a sheet, so I guess, it’s a Carbon or Cocoa option

Hmmm, I wonder what mysterious property affects the display type then in AppleScript Studio.

I’ve checked the attributes of all my interface components, and all the windows and panels have the same attributes, so not sure! Oh well I’ll leave it for now, thanks.

From what I’ve seen, a sheet only rolls out of a window when the sheet is wider than the window. If the width of the sheet is smaller than that of the window, then the sheet simply slides down. If you want every sheet to roll out of its window, try making the sheet wider than the window”or vice versa.

Quill

It seems to me that in Leopard, sheets always just slide down (if the window is wider than the sheet, of course). But in Tiger, if you want the sheet to roll out (as described), just check the “Textured” option (Interface Builder) of the window you want the sheet attached to. Roll-out-style animation doesn’t work with normal Aqua-style windows.