http://www.aros.orgAROS-ExecAROS-Exec ArchivesPower2People
kitty mascottop logo menu

AROS Application Development Manual -- The Intuition Library



This document is not finished! It is highly likely that many parts are out-of-date, contain incorrect information, or are simply missing altogether. If you want to help rectify this, please contact us.


OpenWindowTagList() Open a window
OpenWindow() Open a window (deprecated)
CloseWindow() Close a window
BeginRefresh() Initializes optimized refreshing
EndRefresh() Finishes refreshing
RefreshWindowFrame() Redraw window borders
ActivateWindow() Make a window active
SizeWindow() Change size of a window
MoveWindow() Move a window
ChangeWindowBox() Change size and position of a window
WindowLimits() Change the width and height limits of a window
WindowToBack() Move a window behind other windows
WindowToFront() Make a window the frontmost one
MoveWindowInFrontOf() Move window in front of a given window
ZipWindow() Change window to alternative size and position
SetWindowTitles() Set title string of a window
SetWindowPointerA() Change pointer state
ShowWindow() Make a hidden window visible
HideWindow() Make a window invisible
IsWindowVisible() Check if window is visible
ScrollWindowRaster() Scrolls the content of rectangle within a window


Requesters are a special kind of windows. They either confront the user with some information or request some information. Requesters always interrupt the user's normal work flow, so they should only be used either to inform him of some important event or to request information without which the application can't continue. This kind of requester is called a modal requester.

Examples of informational requesters are requesters that report errors (like failing to open a file) or about requesters which show information about the program, when requested by the user.

Like the name indicates, requesters can also request information from the user, like a filename (using file-requesters), his name or a simple yes/no decision ("Really quit application?").

Requesters should only be used if an application can't go on without the intended interaction with the user, be it acknowledgement that the user has learned a certain fact, be it that the user provides a necessary piece of information, or be it that displaying the requester is the current task the user selected for the program. Therefore, most requesters will block the application. That is to say: An application usually will not accept any input, except that in the requester. An exception are requesters that are explicitly requested by the user, like most file-requesters or about-requesters. Normally, these do not block the application.

Easy Requesters

The so-called easy requesters are simple requesters. They can be used to either provide information or to ask for a choice. The number of choices is limited to 256, but it is generally a bad idea to have more than about five different choices. You also have to take into account that the width of the screen is limited.

FIXME: EasyRequestArgs(), BuildEasyRequest()

Complex Requesters


Request() Add requester to specified window and display it
EndRequest() Remove a requester from the specified window
EasyRequestArgs() Open and handle requester
BuildEasyRequestArgs() Open a requester
SysReqHandler() Handle EasyRequests
AutoRequest() Build and handle simple requesters
BuildSysRequest() Build and display a system requester
FreeSysRequest() Free a requester.
SetDMRequest() Set up requester for menu button double click
ClearDMRequest() Detach the DMRequest from the window
DisplayAlert() Bring up an alert with the given message
TimedDisplayAlert() Display an alert with automatic time-out
DisplayBeep() Flashes background of screen as signal


OpenScreenTagList() Open a screen
OpenScreen() Open a screen (obsolete)
CloseScreen() Close a screen
MoveScreen() Move a screen
ScreenPosition() Move a screen
ScreenToBack() Move a screen behind all other screens
ScreenToFront() Move a screen in front of all other screens
ScreenDepth() Move the specified screen to the front or back
ShowTitle() Show screen title in front of backdrop windows
GetScreenDrawInfo() Return pointer to a screens struct DrawInfo
FreeScreenDrawInfo() Free data obtained with GetScreenDrawInfo()
GetScreenData() Obsolete method of getting info about a screen
QueryOverscan() Query overscan dimensions
LockPubScreen() Lock a public screen
UnlockPubScreen() Release public screen
NextPubScreen() Get the next public screen in the system
PubScreenStatus() Change the status flags for a public screen
LockPubScreenList() Arbitrates access to system public screen list
UnlockPubScreenList() Release lock made by LockPubScreenList()
SetDefaultPubScreen() Specifies the default public screen
SetPubScreenModes() Specify global intuition public screen handling
GetDefaultPubScreen() Returns name of current default public screen
StartScreenNotifyTagList() Add Notifications to Intuition
EndScreenNotify() Remove a Screen Notifications from Intuition
OpenWorkBench() Attempt to open the Workbench screen
CloseWorkBench() Attempt to close the Workbench screen
WBenchToBack() Bring the WorkBench behind all other screens
WBenchToFront() Make the WorkBench screen the frontmost
ViewAddress() Return address of the Intuition View structure
ViewPortAddress() Return the address of the viewport of a window
MakeScreen() Create viewport of the screen
RethinkDisplay() Redisplay the whole Intuition display
RemakeDisplay() Remake the entire Intuition display
AllocScreenBuffer() Allocate a ScreenBuffer multiple buffering
ChangeScreenBuffer() Change current buffer
FreeScreenBuffer() Free ScreenBuffer from AllocScreenBuffer()


AddGadget() Add a single gadget to a window
AddGList() Add some gadgets to a window
RemoveGadget() Remove gadget from a window's list of gadgets
RemoveGList() Remove sublist of gadgets from a window
RefreshGList() Refresh (draw anew) specified number of gadgets
RefreshGadgets() Refresh all gadgets starting at specified gadget
ModifyProp() Change the values of a proportional gadget
NewModifyProp() Change the values of a proportional gadget
OffGadget() Disable a gadget
OnGadget() Enable a gadget
ActivateGadget() Activate the specified gadget
SetEditHook() Set the string editing hook of string gadgets
GadgetMouse() Determine current mouse position relative to the upper-left corner of a custom gadget
HelpControl() Turn Gadget-Help on or off for a window


SetMenuStrip() Add a menu strip to the Window
ClearMenuStrip() Detach menu strip from a window
ResetMenuStrip() Refresh menu strip, after status changes
ItemAddress() Return the address of the menu item
OffMenu() Disable a whole menu, an item, or a sub-item
OnMenu() Enable a whole menu, an item, or a sub-item
LendMenus() Lend the menus of one window to another

Images/Line Drawing

DrawBorder() Draw one or more borders in a specified RastPort
DrawImage() Draw an image
DrawImageState() Render an image in a certain state
EraseImage() Erase an image on the screen
PrintIText() Render an IntuiText in the specified RastPort
IntuiTextLength() Measure the length of an IntuiText
GetScreenDrawInfo() Return a pointer to struct DrawInfo of a screen
FreeScreenDrawInfo() Release data from GetScreenDrawInfo()
PointInImage() Check whether a point is inside an image


ModifyIDCMP() Modify the state of your window's IDCMP port


DoubleClick() Check if two times are in double-click interval
SetPointer() Change shape of the mouse pointer for a window


NewObjectA() Create BOOPSI object
DisposeObject() Delete BOOPSI object from NewObjectA()
SetAttrsA() Change several attributes of an object
SetGadgetAttrsA() Change several attributes of a gadget
GetAttr() Ask an object for the value of an attribute
MakeClass() Create a new public BOOPSI class
FreeClass() Free a class from MakeClass()
AddClass() Make a class publicly available
RemoveClass() Make a public class inaccessible
ObtainGIRPort() Get a rastport for gadget imagery
ReleaseGIRPort() Release a RastPort from ObtainGIRPort()
DoGadgetMethodA() Invoke a BOOPSI method on an object
NextObject() Iterate through a list of BOOPSI objects


AllocRemember() Allocate memory and remember it in Remember-List
FreeRemember() Free memory allocated by AllocRemember()
LockIBase() Lock Intuition
UnlockIBase() Release a lock obtained with LockIBase()
CurrentTime() Copy the current time into the argument pointers
ChangeDecoration() Set up a new screen, window, or menu decorator
SetPrefs() Set the current Preferences structure
GetPrefs() Get a copy of the current Preferences structure
GetDefPrefs() Get a copy of the default Preferences structure

Copyright © 1995-2018, L'équipe de développement AROS. Tous droits réservés.
Amiga®, AmigaOS®, Workbench et Intuition sont des marques de Amiga Inc. Les autres marques appartiennent à leur propritaires respectifs.