1 /* Emodule Path
: Scalos
/scalos
.e
2 ** Emodule version
: Scalos
.m
41.6 (07.01.08) by JMC
8 #ifndef SCALOS_SCALOS_H
9 #define SCALOS_SCALOS_H
17 'intuition/intuition',
21 'datatypes/iconobject',
25 'workbench/startup', -> Added since
40.32(1.4e
)
26 'graphics/regions', -> Added since
40.32(1.4e
)
27 'libraries/popupmenu', -> Added since
40.32(1.4e
)
28 'libraries/gfx', -> Added since
40.32(1.4e
)
29 'scalos/scalosgfx_struct', -> 41.4+
34 #define SCALOSNAME
'scalos.library'
35 #define SCALOSVERSION
41
36 #define SCALOSREVISION
6
39 CONST SCA_IconObject
= $
80530001,
40 SCA_Stacksize
= $
80530002,
41 SCA_Flags
= $
80530003,
42 SCA_IconNode
= $
80530004,
43 SCA_WindowTitle
= $
80530005,
45 SCA_WindowRect
= $
80530007,
46 SCA_XOffset
= $
80530008,
47 SCA_YOffset
= $
80530009,
48 SCA_PatternNumber
= $
8053000a
,
49 SCA_ShowAllFiles
= $
8053000b
,
50 SCA_ViewModes
= $
8053000c
,
51 SCA_MessagePort
= $
8053000d
,
52 SCA_Iconify
= $
8053000e
,
53 SCA_ClassName
= $
8053000f
,
54 SCA_Class
= $
80530010,
55 SCA_WaitTimeout
= $
80530011, -> // +jl
+ 20010324
56 SCA_SemaphoreExclusive
= $
80530012, -> // +jl
+ 20010408
57 SCA_SemaphoreShared
= $
80530013, -> // +jl
+ 20010408
58 SCA_NoStatusBar
= $
80530014, -> // +jl
+ 20011111
59 SCA_NoActivateWindow
= $
80530015, -> // +jl
+ 20020512
60 SCA_Priority
= $
80530016, -> // +jl
+ 20020823
61 SCA_WindowStruct
= $
80430017, -> // +jl
+ 20021204
62 SCA_SemaphoreExclusiveNoNest
= $
80530018,
63 SCA_ShowAllMode
= $
80530019,
64 SCA_BrowserMode
= $
8053001b
, -> ULONG
65 SCA_HideStatusBar
= $
8053001c
, -> ULONG
68 SCAB_WBStart_NoIcon
= 0,
69 SCAB_WBStart_Wait
= 1,
70 SCAB_WBStart_PathSearch
= 2,
71 SCAB_WBStart_NoIconCheck
= 3
73 #define SCAF_WBStart_NoIcon
Shl(1L,SCAB_WBStart_NoIcon
)
74 #define SCAF_WBStart_Wait
Shl(1L,SCAB_WBStart_Wait
)
75 #define SCAF_WBStart_PathSearch
Shl(1L,SCAB_WBStart_PathSearch
)
76 #define SCAF_WBStart_NoIconCheck
Shl(1L,SCAB_WBStart_NoIconCheck
)
78 #define SCAV_WBStart_NoIcon SCAF_WBStart_NoIcon
79 #define SCAV_WBStart_Wait SCAF_WBStart_Wait
80 #define SCAV_WBStart_PathSearch SCAF_WBStart_PathSearch
81 #define SCAV_WBStart_NoIconCheck SCAF_WBStart_NoIconCheck
83 CONST SCAB_OpenWindow_ScalosPort
= 0 -> // private
85 #define SCAF_OpenWindow_ScalosPort
Shl(1,SCAB_OpenWindow_ScalosPort
)
88 CONST SCA_LockWindowList_Shared
= 0,
89 SCA_LockWindowList_Exclusiv
= 1,
90 SCA_LockWindowList_AttemptShared
= 2,
91 SCA_LockWindowList_AttemptExclusive
= 3
95 CONST SCAV_FreeLocks
= 1,
100 SCA_SortType_Bubble
= 0,
101 SCA_SortType_Selection
= 1,
102 SCA_SortType_Insertion
= 2,
103 SCA_SortType_Quick
= 3,
104 SCA_SortType_Best
= -1
106 #define SCAF_FreeLocks
Shl(1,SCAB_FreeLocks
)
107 #define SCAF_FreeNames
Shl(1,SCAB_FreeNames
)
110 -> window dropmark types
111 -> WindowDropMarkTypes
113 ENUM IDTV_WinDropMark_Never
, -> never show any window dropmarks
114 IDTV_WinDropMark_WindowedOnly
, -> non
-backdrop windows only
115 IDTV_WinDropMark_Always
-> always show window dropmarks
117 -> ---------------------- NodeTypes for AllocStdNode() ------------------------
119 CONST NTYP_IconNode
= 0,
120 NTYP_WindowStruct
= 1,
122 NTYP_PatternNode
= 3,
127 NTYP_PluginClass
= 10, -> // +jl
+
128 NTYP_PluginNode
= 11 -> // +jl
+
130 -> ------------------------ MessageTypes for AllocMsg() -----------------------
132 CONST MTYP_DropProc
= 1,
133 MTYP_CloseWindow
= 2,
134 MTYP_StartWindow
= 3,
140 MTYP_AsyncRoutine
= 9,
141 MTYP_RunProcess
= 10,
146 MTYP_UpdateIcon
= 15,
149 MTYP_ARexxRoutine
= 18,
152 MTYP_AsyncBackFill
= 21,
154 MTYP_RunMenuCmd
= 23, -> +jl
+ 20010415
155 MTYP_ShowPopupMenu
= 24, -> +jl
+ 20011209
156 MTYP_ShowStatusBar
= 25, -> +jl
+ 20040919
157 MTYP_RedrawIcon
= 26, -> +jl
+ 20050303
158 MTYP_DoPopupMenu
= 27, -> +jl
+ 20050319
159 MTYP_RedrawIconObj
= 28,
160 MTYP_NewPreferences
= 29,
162 MTYP_SetThumbnailImage_Remapped
= 31,
163 MTYP_SetThumbnailImage_ARGB
= 32,
164 MTYP_NewWindowPath
= 33,
165 MTYP_MAX
= 34 -> // must always be
1 larger than last MTYP_???
167 -> // ------------------------------------------------------------------
169 -> ---------------------------------------------------------------------------
172 windowstruct
:PTR TO scawindowstruct
-> Pointer to the first windowstruct
173 mainwindowstruct
:PTR TO scawindowstruct
-> Pointer into the list of windowstructs
174 appwindowstruct
:PTR TO scawindowstruct
-> dito
- windowstruct for AppIcons
178 OBJECT scawindowstruct
180 task
:PTR TO tc
-> Window
-Task address
181 lock
:PTR TO LONG
-> filelock to the windows directory
182 window
:PTR TO window
-> pointer to the window
or NULL
183 messageport
:PTR TO mp
-> the API
-messageport
187 height
:INT
-> size
and position of the window
189 yoffset
:INT
-> the virtual position inside
190 patternnode
:PTR TO CHAR
191 windowtask
:PTR TO scawindowtask
-> windowtask structure
192 name
:PTR TO CHAR
-> windows
name (is displayed in the title
)
193 title
:PTR TO CHAR
-> title
-formatstring
194 classname
:PTR TO CHAR
-> scalos
class name
195 class:PTR TO LONG
-> BOOPSI
Class if ms_classname
is NULL
196 flags
:INT
-> see below
197 patternnumber
:INT
-> number of the pattern
198 viewmodes
:CHAR
-> see below
199 windowtype
:CHAR
-> see below
200 windowtaskname
-> name of window task
+jl
+ 20011211
201 viewall
-> DDFLAGS_SHOWDEFAULT
, DDFLAGS_SHOWICONS
, or DDFLAGS_SHOWALL
202 thumbnailview
:PTR TO LONG
-> THUMBNAILS_Never
, THUMBNAILS_Always
, THUMBNAILS_AsDefault
203 thumbnailslifetimedays
:PTR TO LONG
-> Maximum lifetime for generated thumbnails
207 CONST WSV_FlagB_RootWindow
= 0, -> a RootDir window
208 WSV_FlagB_NeedsTimerMsg
= 1, -> window likes to get TimerMessages
209 WSV_FlagB_Backdrop
= 2, -> is the window in backdrop mode
210 WSV_FlagB_TimerMsgSent
= 3, -> timermsg already sent
*PRIVATE
*
211 WSV_FlagB_TaskSleeps
= 4, -> windowtask
is sleeping
212 WSV_FlagB_ShowAllFiles
= 5, -> just what it said
213 WSV_FlagB_Iconify
= 6, -> windowtask
is in iconify state
214 WSV_FlagB_CheckUpdatePending
= 7, -> IconWinCheckUpdate() is pending
*PRIVATE
*
215 WSV_FlagB_ActivatePending
= 8, -> ActivateWindow() has been issued
*PRIVATE
*
216 WSV_FlagB_Typing
= 9, -> typing name for keyboard icon selection
*PRIVATE
*
217 WSV_FlagB_NoStatusBar
= 10, -> don
't display status bar for this window
218 WSV_FlagB_NoActivateWindow = 11, -> don't activate window on
OpenWindow()
219 WSV_FlagB_RefreshPending
= 12, -> IDCMP_REFRESHWINDOW could
not be processed
, refresh
is pending
*PRIVATE
*
220 WSV_FlagB_BrowserMode
= 13 -> enable single
-window browser mode
222 #define WSV_FlagF_RootWindow
Shl(1,WSV_FlagB_RootWindow
)
223 #define WSV_FlagF_NeedsTimerMsg
Shl(1,WSV_FlagB_NeedsTimerMsg
)
224 #define WSV_FlagF_Backdrop
Shl(1,WSV_FlagB_Backdrop
)
225 #define WSV_FlagF_TimerMsgSent
Shl(1,WSV_FlagB_TimerMsgSent
)
226 #define WSV_FlagF_TaskSleeps
Shl(1,WSV_FlagB_TaskSleeps
)
227 #define WSV_FlagF_ShowAllFiles
Shl(1,WSV_FlagB_ShowAllFiles
)
228 #define WSV_FlagF_Iconify
Shl(1,WSV_FlagB_Iconify
)
229 #define WSV_FlagF_CheckUpdatePending
Shl(1,WSV_FlagB_CheckUpdatePending
)
230 #define WSV_FlagF_ActivatePending
Shl(1,WSV_FlagB_ActivatePending
)
231 #define WSV_FlagF_Typing
Shl(1,WSV_FlagB_Typing
)
232 #define WSV_FlagF_NoStatusBar
Shl(1,WSV_FlagB_NoStatusBar
)
233 #define WSV_FlagF_NoActivateWindow
Shl(1,WSV_FlagB_NoActivateWindow
)
234 #define WSV_FlagF_RefreshPending
Shl(1,WSV_FlagB_RefreshPending
)
235 #define WSV_FlagF_BrowserMode
Shl(1,WSV_FlagB_BrowserMode
)
238 CONST WSV_Type_IconWindow
= 0, -> Window filled with icons
239 WSV_Type_DeviceWindow
= 1
241 #define WSV_Type_DesktopWindow WSV_Type_DesktopWindow
-> synonym for WSV_Type_DeviceWindow
244 #define SCAV_ViewModes_Default IDTV_ViewModes_Default
245 #define SCAV_ViewModes_Icon IDTV_ViewModes_Icon
246 #define SCAV_ViewModes_Name IDTV_ViewModes_Name
247 #define SCAV_ViewModes_Size IDTV_ViewModes_Size
248 #define SCAV_ViewModes_Date IDTV_ViewModes_Date
249 #define SCAV_ViewModes_Time IDTV_ViewModes_Time
250 #define SCAV_ViewModes_Comment IDTV_ViewModes_Comment
251 #define SCAV_ViewModes_Protection IDTV_ViewModes_Protection
252 #define SCAV_ViewModes_Owner IDTV_ViewModes_Owner
253 #define SCAV_ViewModes_Group IDTV_ViewModes_Group
254 #define SCAV_ViewModes_Type IDTV_ViewModes_Type
255 #define SCAV_ViewModes_Version IDTV_ViewModes_Version
256 #define SCAV_ViewModes_MiniIcon IDTV_ViewModes_MiniIcon
258 -> for compatibility
+jl
+
259 #define SIV_IconWin WSV_Type_IconWindow
260 #define SIV_DeviceWin WSV_Type_DeviceWindow
262 -> ------------------------------------------------------------------
267 height
-> and Height of Bitmap in Pixels
268 bitmap
:PTR TO bitmap
-> Bitmap
or NULL
269 pattern
:PTR TO CHAR
-> Pattern Array
or NULL
270 flags
:INT
-> see below
272 pen
-> Allocated pen for background pattern
273 message
:mn
-> Message
276 -> ------------------------------------------------------------------
279 patterninfo
:PTR TO patterninfo
-> was
: patterninfo
[40]:ARRAY OF CHAR
281 yoffset
:INT
-> Innerwindow offset
282 mainobject
:PTR TO CHAR
-> main ScalosClass object
283 windowobject
:PTR TO CHAR
-> "Window.sca" object
284 window
:PTR TO window
-> pointer to the window of the task
or NULL
285 iconlist
:PTR TO scaiconnode
-> Pointer to the first IconNode
286 lateiconlist
:PTR TO scaiconnode
-> Pointer to the first IconNode of
all not yet
287 -> displayed
icons (e
.g
. non
-position icon while
289 iconsemaphore
:PTR TO ss
-> Semaphore to access the wt_IconList
/wt_LateIconList
290 -> It
*MUST
* be locked before accessing the list
.
291 -> Shared lock should be used for read
-only access
292 iconport
:PTR TO mp
-> MessagePort of the windowtask
293 windowsemaphore
:PTR TO ss
-> Semaphore to avoid the task
from closing
294 windowstruct
:PTR TO scawindowstruct
-> Pointer to the WindowStruct of this task
297 -> // some structure forward declarations
298 ->struct SM_RunProcess
;
300 -> // Function pointer definitions
301 -> // for some SM_ messages
303 OBJECT asyncroutinefunc
304 scawindowtask
:PTR TO LONG
308 scawindowtask
:PTR TO LONG
313 sm_runprocess
:PTR TO LONG
316 -> typedef
void (*ASYNCROUTINEFUNC
)(struct internalScaWindowTask
*, APTR
);
317 -> typedef
void (*AREXXFUNC
)(struct internalScaWindowTask
*, struct RexxMsg
*);
318 -> typedef
ULONG (*RUNPROCFUNC
)(APTR
, struct SM_RunProcess
*);
320 -> ------------------------------------------------------------------
322 CONST ID_IMSG
=$
494d5347
-> #define ID_IMSG
MAKE_ID('I','M','S','G')
326 signature
-> ("IMSG")
327 messagetype
-> AllocMsg() type
330 OBJECT sm_closewindow
334 OBJECT sm_startwindow
336 windowstruct
:PTR TO scawindowstruct
341 windowstruct
:PTR TO scawindowstruct
347 patternnode
:PTR TO CHAR
-> PatternNode
or NULL
365 OBJECT sm_asyncroutine
367 entrypoint
:asyncroutinefunc
-> address of start of code to execute
368 args
:CHAR
-> code will be executed with pointer to ScaWindowTask in A5
369 -> and pointer to smar_Args in A0
370 -> so
, Message can easily be extended to pass arguments
.
371 ENDOBJECT
-> Result from routine will be placed in EntryPoint
375 windowtask
:PTR TO scawindowtask
376 entrypoint
:runprocfunc
-> address of start of code to execute
as new process
377 flags
-> dunno
, but it
's long and it's used
414 dirlock
/* +jl
+ 20010217 */
415 iconname
/* +jl
+ 20010217 */
428 smrq_ReqResult
:PTR TO LONG
-> Result from EasyRequest()
429 smrq_ParentWindow
:PTR TO window
431 smrq_ArgList
:PTR TO CHAR
-> pointer to ArgList
433 smrq_ArgListBuffer
:CHAR
-> buffer for ArgList
- allocated
as large
as needed
436 OBJECT sm_asyncbackfill
438 smab_backfillfunc
:runprocfunc
-> Backfill function entry point
439 patternnode
:PTR TO LONG
440 smab_patterninfo
:PTR TO patterninfo
441 smab_screenstruct
:PTR TO screen
442 smab_windowtaskstruct
:PTR TO scawindowtask
443 smab_patterninfocopy
:CHAR
446 OBJECT sm_arexxroutine
448 smrx_entrypoint
:arexxfunc
449 smrx_RexxMsg
:PTR TO rexxmsg
453 smc_asyncroutine
:sm_asyncroutine
454 smc_flags
:PTR TO LONG
455 smc_iconNode
:PTR TO scaiconnode
460 scalosmenutree
:PTR TO LONG
461 iconnode
:PTR TO scaiconnode
465 OBJECT sm_realupdateicon
466 smc_asyncroutine
:sm_asyncroutine
470 OBJECT sm_showpopupmenu
472 smpm_popupmenu
:PTR TO popupmenu
473 iconnode
:PTR TO scaiconnode
475 filetypedef
:PTR TO LONG
-> should be
: filetypedef
:PTR TO filetypedef
476 qualifier
:INT
-> the smpm_Qualifier field
is a copy of the
current IntuiMessage
's Qualifier
479 -> ------------------------------------------------------------------
481 -> values in smpm_Flags - same as in mpm_Flags
483 OBJECT sm_showstatusbar
490 smri_icon:PTR TO scaiconnode
493 OBJECT sm_dopopupmenu
498 OBJECT sm_redrawiconobj
500 smrio_iconobject:PTR TO LONG -> pointer to object
501 smrio_flags:PTR TO LONG
504 -> values in smrio_Flags
505 CONST SMRIOFLAGB_EraseIcon = 0,
506 SMRIOFLAGB_FreeLayout = 1,
507 SMRIOFLAGB_Highlight = 2, -> set this flag to indicate that there is only a change in icon highlighting state
508 SMRIOFLAGB_IconListLocked = 3, -> flag: icon list is currently locked
509 SMRIOFLAGB_HightlightOn = 4, -> flag: set ICONOBJ_USERFLAGF_DrawHighlite before drawing
510 SMRIOFLAGB_HightlightOff = 5 -> flag: clear ICONOBJ_USERFLAGF_DrawHighlite before drawing
512 #define SMRIOFLAGF_EraseIcon Shl(1,SMRIOFLAGB_EraseIcon)
513 #define SMRIOFLAGF_FreeLayout Shl(1,SMRIOFLAGB_FreeLayout)
514 #define SMRIOFLAGF_Highlight Shl(1,SMRIOFLAGB_Highlight)
515 #define SMRIOFLAGF_IconListLocked Shl(1,SMRIOFLAGB_IconListLocked)
516 #define SMRIOFLAGF_HightlightOn Shl(1,SMRIOFLAGB_HightlightOn)
517 #define SMRIOFLAGF_HightlightOff Shl(1,SMRIOFLAGB_HightlightOff)
519 OBJECT sm_newpreferences
521 prefsflags:PTR TO LONG
524 -> values in smnp_PrefsFlags
525 -> one bit is set for each changed subsystem prefs
526 CONST SMNPFLAGB_PATTERNPREFS = 0,
527 SMNPFLAGB_MENUPREFS = 1,
528 SMNPFLAGB_FONTPREFS = 2,
529 SMNPFLAGB_SCALOSPREFS = 3,
530 SMNPFLAGB_PALETTEPREFS = 4,
531 SMNPFLAGB_DEFICONSPREFS = 5,
532 SMNPFLAGB_LOCALEPREFS = 6,
533 SMNPFLAGB_FILETYPESPREFS = 7
535 #define SMNPFLAGF_PATTERNPREFS Shl(1,SMNPFLAGB_PATTERNPREFS)
536 #define SMNPFLAGF_MENUPREFS Shl(1,SMNPFLAGB_MENUPREFS)
537 #define SMNPFLAGF_FONTPREFS Shl(1,SMNPFLAGB_FONTPREFS)
538 #define SMNPFLAGF_SCALOSPREFS Shl(1,SMNPFLAGB_SCALOSPREFS)
539 #define SMNPFLAGF_PALETTEPREFS Shl(1,SMNPFLAGB_PALETTEPREFS)
540 #define SMNPFLAGF_DEFICONSPREFS Shl(1,SMNPFLAGB_DEFICONSPREFS)
541 #define SMNPFLAGF_LOCALEPREFS Shl(1,SMNPFLAGB_LOCALEPREFS)
542 #define SMNPFLAGF_FILETYPESPREFS Shl(1,SMNPFLAGB_FILETYPESPREFS)
548 adjustslider:PTR TO LONG
551 OBJECT sm_setthumbnailimage_remapped
553 smtir_iconobject -> the icon to attach the new image to
554 smtir_newimage:PTR TO scalosbitmapandcolor -> the new image. ScalosBitMapAndColor contents is freed by message handler
557 OBJECT sm_setthumbnailimage_argb
559 smtia_iconobject -> the icon to attach the new image to
560 smtia_newimage:PTR TO argbheader -> the new image. ARGBHeader contents is freed by message handler
563 OBJECT sm_newwindowpath
565 path -> Path of the new drawer to display in the window
569 -> ------------------------------------------------------------------
571 OBJECT scabackdropicon
573 sbi_icon:PTR TO LONG -> IconObject from iconobject.library
574 notifyreq:PTR TO LONG
578 -> This structure WILL grow in the future. Do not rely on its size!
579 -> Do NOT ALLOCATE ScaIconNode's yourself
!
580 -> Do NOT MODIFY any member on your own
!
584 icon
:PTR TO LONG
-> IconObject
from iconobject
.library
585 name
:PTR TO CHAR
-> Filename of the icon
586 deviceicon
:PTR TO scadeviceicon
-> NULL except for disk icons
587 lock
:PTR TO LONG
-> lock to the files dir
or NULL
588 iconlist
:PTR TO scabackdropicon
-> list of linked
icons (used for backdrop icons
)
589 flags
:INT
-> see below
593 filedatestamp
:datestamp
600 CONST INB_DefaultIcon
= 0, -> the icon has diskobject
601 INB_File
= 1, -> File
or Drawer (TextMode only
)
602 INB_TextIcon
= 2, -> TextMode icon
603 INB_Sticky
= 3, -> icon
not moveable
604 INB_DropMarkVisible
= 4, -> Icon drop mark
current visible
605 INB_VolumeWriteProtected
= 5, -> volume
is write
-protected
606 INB_FreeIconPosition
= 6, -> Icon
is stored with
"no position"
607 INB_IconVisible
= 7, -> Icon has been drawn
608 INB_Identified
= 8 -> Icon file type has been determined
610 #define INF_DefaultIcon
Shl(1,INB_DefaultIcon
)
611 #define INF_File
Shl(1,INB_File
)
612 #define INF_TextIcon
Shl(1,INB_TextIcon
)
613 #define INF_Sticky
Shl(1,INB_Sticky
)
614 #define INF_DropMarkVisible
Shl(1,INB_DropMarkVisible
)
615 #define INF_VolumeWriteProtected
Shl(1,INB_VolumeWriteProtected
)
616 #define INF_FreeIconPosition
Shl(1,INB_FreeIconPosition
)
617 #define INF_IconVisible
Shl(1,INB_IconVisible
)
618 #define INF_Identified
Shl(1,INB_Identified
)
621 CONST INB_SupportsOpen
= 0,
622 INB_SupportsCopy
= 1,
623 INB_SupportsRename
= 2,
624 INB_SupportsInformation
= 3,
625 INB_SupportsSnapshot
= 4,
626 INB_SupportsUnSnapshot
= 5,
627 INB_SupportsLeaveOut
= 6,
628 INB_SupportsPutAway
= 7,
629 INB_SupportsDelete
= 8,
630 INB_SupportsFormatDisk
= 9,
631 INB_SupportsEmptyTrash
= 10
633 #define INF_SupportsOpen
Shl(1,INB_SupportsOpen
)
634 #define INF_SupportsCopy
Shl(1,INB_SupportsCopy
)
635 #define INF_SupportsRename
Shl(1,INB_SupportsRename
)
636 #define INF_SupportsInformation
Shl(1,INB_SupportsInformation
)
637 #define INF_SupportsSnapshot
Shl(1,INB_SupportsSnapshot
)
638 #define INF_SupportsUnSnapshot
Shl(1,INB_SupportsUnSnapshot
)
639 #define INF_SupportsLeaveOut
Shl(1,INB_SupportsLeaveOut
)
640 #define INF_SupportsPutAway
Shl(1,INB_SupportsPutAway
)
641 #define INF_SupportsDelete
Shl(1,INB_SupportsDelete
)
642 #define INF_SupportsFormatDisk
Shl(1,INB_SupportsFormatDisk
)
643 #define INF_SupportsEmptyTrash
Shl(1,INB_SupportsEmptyTrash
)
645 -> ------------------------------------------------------------------
648 handler
:PTR TO mp
-> MessagePort of the HandlerTask
649 volume
:PTR TO CHAR
-> Volumename
or NULL
650 device
:PTR TO CHAR
-> Devicename
or NULL
651 icon
:PTR TO LONG
-> IconObject of this DeviceIcon struct
652 info
:PTR TO infodata
-> Infodata
from dos
.library
/Info()
653 infobuf
[4]:ARRAY OF infodata
-> infodata
654 flags
:INT
-> see below
655 notifyreq
:notifyrequest
-> for notification of devicewindow about icon changes
656 diskiconname
-> this name was used to retrieve the
current disk icon
660 CONST DIBB_DontDisplay
= 0, -> Don
't display this icon
661 DIBB_Remove = 1, -> ***internal use only***
662 DIBB_InfoPending = 2 -> ***internal use only***
664 #define DIBF_DontDisplay Shl(1L,DIBB_DontDisplay)
665 #define DIBF_Remove Shl(1L,DIBB_Remove)
666 #define DIBF_InfoPending Shl(1L,DIBB_InfoPending)
668 -> for compatibility's sake
669 #define DIB_DontDisplay DIBB_DontDisplay
671 -> ------------------------------------------------------------------
673 -> UpdateIcon structure for Icon
and Device windowtypes
675 OBJECT scaupdateicon_iw
676 ui_iw_lock
-> Lock to the file
's/dir's directory
677 ui_iw_name
:PTR TO CHAR
-> Name of the file
or dir
, NULL for Disks
680 -> ------------------------------------------------------------------
682 OBJECT scalosnodelist
683 minnode
:PTR TO mn
-> Pointer to the first node
or NULL
686 -> ------------------------------- Scalos Class Information --------------------------
688 CONST SCC_Dummy
= $
80580000
690 /*********************************************************
692 ** Name
: "Root.sca" **
693 **********************************************************/
695 -> ---------------------- Attributes ------------------------------
697 CONST SCCA_WindowTask
= SCC_Dummy
+1 -> (ISG
)
699 -> ----------------------- Methodes -------------------------------
701 CONST SCCM_HandleMessages
= SCC_Dummy
+105,
702 SCCM_ScalosMessage
= SCC_Dummy
+106,
703 SCCM_Message
= SCC_Dummy
+107,
704 SCCM_ScalosMessageReply
= SCC_Dummy
+108,
705 SCCM_RunProcess
= SCC_Dummy
+120,
709 -> ULONG
size_of(Args
)
710 -> APTR ReplyPort see values below
712 SCCV_RunProcess_NoReply
= 0,
713 SCCV_RunProcess_WaitReply
= -1,
715 SCCM_Ping
= SCC_Dummy
+140, -> Timer Ping
717 SCCM_AddToClipboard
= SCC_Dummy
+172,
718 -> struct ScaWindowTask
*
719 -> struct ScaIconNode
*
722 SCCV_AddToClipboard_Copy
= 1,
723 SCCV_AddToClipboard_Move
= 2,
724 SCCM_ClearClipboard
= SCC_Dummy
+173,
726 SCCM_GetLocalizedString
= SCC_Dummy
+190,
729 /*********************************************************
731 ** Name
: "Title.sca" **
732 **********************************************************/
734 -> -------------- Attributes ------------
736 SCCA_Title_Format
= SCC_Dummy
+2, -> (IS.)
737 SCCA_Title_Type
= SCC_Dummy
+3, -> (I
..)
738 SCCV_Title_Type_Screen
= 0, -> (default
)
739 SCCV_Title_Type_Window
= 1,
741 -> --------------- Methods --------------
743 SCCM_Title_Generate
= SCC_Dummy
+101,
746 SCCM_Title_Query
= SCC_Dummy
+102,
748 -> Result: BOOL (Needs Refresh
)
750 SCCM_Title_QueryTitle
= SCC_Dummy
+103,
751 -> Result: BOOL (Needs Refresh
)
753 SCCM_Title_Translate
= SCC_Dummy
+104,
754 -> CHAR
*TitleMem gets updated after call
755 -> CHAR
*TitleFormat gets updated after call
759 /*********************************************************
761 ** Name
: "Window.sca" **
762 **********************************************************/
764 -> --------------- Methods -------------
766 SCCM_Window_Open
= SCC_Dummy
+123,
767 SCCM_Window_Close
= SCC_Dummy
+124,
768 SCCM_Window_Iconify
= SCC_Dummy
+125,
769 SCCM_Window_UnIconify
= SCC_Dummy
+126,
770 SCCM_Window_InitClipRegion
= SCC_Dummy
+127,
771 -> Result: OldClipRegion
773 SCCM_Window_RemClipRegion
= SCC_Dummy
+128,
774 -> APTR OldClipRegion
776 SCCM_Window_SetTitle
= SCC_Dummy
+129,
777 SCCM_Window_SetInnerSize
= SCC_Dummy
+143,
778 SCCM_Window_LockUpdate
= SCC_Dummy
+154, -> +jl
+ 20010420
779 SCCM_Window_UnlockUpdate
= SCC_Dummy
+155, -> +jl
+ 20010420
781 SCCM_Window_ChangeWindow
= SCC_Dummy
+189, -> +jl
+ 20040309
783 -> -------------- Attributes ------------
785 SCCA_Window_IDCMP
= SCC_Dummy
+2, -> unused
787 /*********************************************************
788 ** IconWindow
Class **
789 ** Name
: "IconWindow.sca" **
790 **********************************************************/
792 -> -------------- IconWindow Attributes ------------
794 SCCA_IconWin_Reading
= SCC_Dummy
+1000, -> (BOOL
) [SG
] currently reading directory
795 SCCA_IconWin_SelectedCount
= SCC_Dummy
+1001, -> (ULONG
) [SG
] number of selected icons in window
796 SCCA_IconWin_Typing
= SCC_Dummy
+1002, -> (BOOL
) [SG
] user
is currently tying icon name
797 SCCA_IconWin_ShowType
= SCC_Dummy
+1003, -> (ULONG
) [SG
] Show
All / Show only icons
798 SCCA_IconWin_InnerWidth
= SCC_Dummy
+1004, -> (ULONG
) [.G
] icon window inner width
799 SCCA_IconWin_InnerHeight
= SCC_Dummy
+1005, -> (ULONG
) [.G
] icon window inner height
800 SCCA_IconWin_IconFont
= SCC_Dummy
+1006, -> (struct TextFont
*) [.G
] icon window icon font
801 SCCA_IconWin_LayersLocked
= SCC_Dummy
+1007, -> (ULONG
) [.G
] Flag
: icon window has Layers locked
802 SCCA_IconWin_StatusBar
= SCC_Dummy
+1008, -> (BOOL
) [SG
] Flag
: Status bar
is present
803 SCCA_IconWin_ThumbnailView
= SCC_Dummy
+1009, -> (ULONG
) [SG
] Thumbnail display mode
804 SCCA_IconWin_ThumbnailsGenerating
= SCC_Dummy
+1010 -> (ULONG
) [SG
] Shows flag for thumbnail generation in progress
807 -> --------------- Methods -------------
809 CONST SCCM_IconWin_ReadIconList
= SCC_Dummy
+100,
812 -> Result: BOOL CloseWindow
815 SCCV_IconWin_ReadIconList_ShowAll
= 1,
817 SCCM_IconWin_ReadIcon
= SCC_Dummy
+109,
819 -> CONST_STRPTR Name icon name
820 -> struct ScaReadIconArg
* x
/y position
and parent lock
, may be NULL
822 SCCM_IconWin_DragBegin
= SCC_Dummy
+110, -> currently unused
823 SCCM_IconWin_DragQuery
= SCC_Dummy
+111,
825 -> struct DragEnter
*
826 -> ---------- Returns : BOOL :
827 -> TRUE yes
, we may drop here
828 -> FALSE no
, no drop allowed
831 SCCM_IconWin_DragFinish
= SCC_Dummy
+112,
833 SCCM_IconWin_DragEnter
= SCC_Dummy
+149, -> +jl
+
835 -> struct DragEnter
*
836 -> ---------- Returns : ./.
838 SCCM_IconWin_DragLeave
= SCC_Dummy
+150, -> +jl
+
840 -> struct DragEnter
*
841 -> ---------- Returns : ./.
843 SCCM_IconWin_DragDrop
= SCC_Dummy
+113,
848 -> ULONG Qualifier
from IntuiMessage
849 -> ---------- Returns : ./.
851 SCCM_IconWin_Open
= SCC_Dummy
+114
853 -> APTR
iconnode (IconNode to open
or NULL
)
857 #define ICONWINOPENB_IgnoreFileTypes
0
858 #define ICONWINOPENF_IgnoreFileTypes
Shl(1,ICONWINOPENB_IgnoreFileTypes
)
860 CONST SCCM_IconWin_UpdateIcon
= SCC_Dummy
+115,
864 SCCM_IconWin_AddIcon
= SCC_Dummy
+116,
870 SCCM_IconWin_RemIcon
= SCC_Dummy
+117,
874 SCCM_IconWin_MakeWBArg
= SCC_Dummy
+118,
875 -> struct ScaIconNode
*
877 -> ---------- Returns : 1 = Success, 0 = Failure
879 SCCM_IconWin_CleanUp
= SCC_Dummy
+119,
880 SCCM_IconWin_CleanUpByName
= SCC_Dummy
+180,
881 SCCM_IconWin_CleanUpByDate
= SCC_Dummy
+181,
882 SCCM_IconWin_CleanUpBySize
= SCC_Dummy
+182,
883 SCCM_IconWin_CleanUpByType
= SCC_Dummy
+183,
884 SCCM_IconWin_SetVirtSize
= SCC_Dummy
+121
887 -> bit
0 = set Bottom
-Slider
888 -> bit
1 = set Right
-Slider
889 #define SETVIRTB_AdjustBottomSlider
0
890 #define SETVIRTB_AdjustRightSlider
1
891 #define SETVIRTF_AdjustBottomSlider
Shl(1,SETVIRTB_AdjustBottomSlider
)
892 #define SETVIRTF_AdjustRightSlider
Shl(1,SETVIRTB_AdjustRightSlider
)
894 CONST SCCM_IconWin_Redraw
= SCC_Dummy
+122
898 #define REDRAWB_DontEraseWindow
0
899 #define REDRAWB_ReLayoutIcons
1
900 #define REDRAWF_DontEraseWindow
Shl(1L,REDRAWB_DontEraseWindow
)
901 #define REDRAWF_ReLayoutIcons
Shl(1L,REDRAWB_ReLayoutIcons
)
903 CONST SCCM_IconWin_Update
= SCC_Dummy
+130,
905 -> was SCCM_IconWin_CheckUpdate
906 SCCM_IconWin_ScheduleUpdate
= SCC_Dummy
+151, -> +jl
+
909 SCCM_IconWin_Sleep
= SCC_Dummy
+131,
910 SCCM_IconWin_WakeUp
= SCC_Dummy
+132,
911 SCCM_IconWin_MenuCommand
= SCC_Dummy
+138,
913 -> APTR
IconNode(or NULL
)
914 -> BOOL
State(checkmark state
if it
's a checkmark)
916 SCCM_IconWin_NewViewMode = SCC_Dummy+139,
918 -> Result: IconWindow.sca subclass object
920 SCCM_IconWin_DrawIcon = SCC_Dummy+141,
923 SCCM_IconWin_LayoutIcon = SCC_Dummy+142
927 -> +jl+ Layout Flags see iconobject.h
928 #ifndef IOLAYOUTB_NormalImage
929 #define IOLAYOUTB_NormalImage 0 -> Layout normal Image
930 #define IOLAYOUTF_NormalImage Shl(1,SCCLAYOUTB_NormalImage)
931 #define IOLAYOUTB_SelectedImage 1 -> Layout selected Image
932 #define IOLAYOUTF_SelectedImage Shl(1,SCCLAYOUTB_NormalImage)
936 CONST SCCM_IconWin_DeltaMove = SCC_Dummy+144,
940 SCCM_IconWin_GetDefIcon = SCC_Dummy+146,
943 -> ULONG protectionbits
945 SCCM_IconWin_ShowIconToolTip = SCC_Dummy+156, -> +jl+ 20010519
946 -> struct ScaIconNode *
947 -> ---------- Returns : ./.
949 SCCM_IconWin_RawKey = SCC_Dummy+158, -> +jl+ 20010716
950 -> struct IntuiMessage *
952 SCCM_IconWin_AddToStatusBar = SCC_Dummy+159, -> +jl+ 20011204
954 -> ULONG Tag, Tag, ... TAG_END
956 SCCM_IconWin_RemFromStatusBar = SCC_Dummy+160, -> +jl+ 20011204
959 SCCM_IconWin_UpdateStatusBar = SCC_Dummy+161, -> +jl+ 20011204
961 -> ULONG Tag, Tag, ... TAG_END
963 SCCM_IconWin_ShowPopupMenu = SCC_Dummy+166 -> +jl+ 20011209
964 -> struct PopupMenu *mpm_PopupMenu
965 -> struct ScaIconNode *mpm_IconNode(may be NULL for window popup menus)
968 -> Values in mpm_Flags
969 #define SHOWPOPUPFLGB_IconSemaLocked 0
970 #define SHOWPOPUPFLGB_WinListLocked 1
971 #define SHOWPOPUPFLGB_FreePopupMenu 2
972 #define SHOWPOPUPFLGF_IconSemaLocked Shl(1L,SHOWPOPUPFLGB_IconSemaLocked)
973 #define SHOWPOPUPFLGF_WinListLocked Shl(1L,SHOWPOPUPFLGB_WinListLocked)
974 #define SHOWPOPUPFLGF_FreePopupMenu Shl(1L,SHOWPOPUPFLGB_FreePopupMenu)
976 CONST SCCM_IconWin_ShowGadgetToolTip = SCC_Dummy+171 -> +jl+ 20021001
977 -> ULONG sgtt_GadgetID
979 -> Values for sgtt_GadgetID
981 SGTT_GADGETID_RightScroller = 1001,
982 SGTT_GADGETID_BottomScroller,
983 SGTT_GADGETID_UpArrow,
984 SGTT_GADGETID_DownArrow,
985 SGTT_GADGETID_RightArrow,
986 SGTT_GADGETID_LeftArrow,
987 SGTT_GADGETID_Iconify,
988 SGTT_GADGETID_StatusBar_Text,
989 SGTT_GADGETID_StatusBar_ReadOnly,
990 SGTT_GADGETID_StatusBar_Reading,
991 SGTT_GADGETID_StatusBar_Typing,
992 SGTT_GADGETID_StatusBar_ShowAll,
993 SGTT_GADGETID_unknown
995 CONST SCCM_IconWin_ActivateIconLeft = SCC_Dummy+174, -> +jl+ 20021201
996 SCCM_IconWin_ActivateIconRight = SCC_Dummy+175, -> +jl+ 20021201
997 SCCM_IconWin_ActivateIconUp = SCC_Dummy+176, -> +jl+ 20021201
998 SCCM_IconWin_ActivateIconDown = SCC_Dummy+177, -> +jl+ 20021201
999 SCCM_IconWin_ActivateIconNext = SCC_Dummy+178, -> +jl+ 20021201
1000 SCCM_IconWin_ActivateIconPrevious = SCC_Dummy+179, -> +jl+ 20021201
1003 SCCM_IconWin_AddGadget = SCC_Dummy+184, -> +jl+ 20030112
1006 SCCM_IconWin_ImmediateCheckUpdate = SCC_Dummy+187, -> +jl+
1009 SCCM_Window_GetIconFileType = SCC_Dummy+168, -> +jl+ 20020615
1010 -> struct ScaIconNode *gift_IconNode
1012 SCCM_Window_ClearIconFileTypes = SCC_Dummy+169, -> +jl+ 20020615
1014 /*********************************************************
1015 ** DeviceWindow Class **
1016 ** Name: "DeviceWindow.sca" **
1017 **********************************************************/
1019 -> --------------- Methods -------------
1021 SCCM_DeviceWin_ReadIcon = SCC_Dummy+136,
1024 SCCM_DeviceWin_RemIcon = SCC_Dummy+188,
1025 -> struct ScaIconNode *
1027 /*********************************************************
1028 ** TextWindow Class **
1029 ** Name: "TextWindow.sca" **
1030 **********************************************************/
1032 -> --------------- Methods -------------
1033 SCCM_TextWin_ReadIcon = SCC_Dummy+137, -> currently unimplemented
1034 SCCM_TextWin_ReAdjust = SCC_Dummy+145,
1037 -> hold all visible updates until SCCM_TextWin_EndUpdate
1038 SCCM_TextWin_BeginUpdate = SCC_Dummy+152,
1039 -> ULONG RefreshFlag
1040 -> ---------- Returns : ./.
1042 -> unlock window updates and do SCCM_TextWin_ReAdjust
1043 SCCM_TextWin_EndUpdate = SCC_Dummy+153,
1044 -> ---------- Returns : ./.
1046 SCCM_TextWin_InsertIcon = SCC_Dummy+186,
1047 -> struct ScaIconNode *
1048 -> ---------- Returns : ./.
1050 /*********************************************************
1051 ** DeviceList Class **
1052 ** Name: "DeviceList.sca" **
1053 **********************************************************/
1055 -> --------------- Methods -------------
1057 SCCM_DeviceList_Generate = SCC_Dummy+133,
1058 -> APTR ScalosNodeList
1060 SCCM_DeviceList_FreeDevNode = SCC_Dummy+134,
1063 SCCM_DeviceList_Filter = SCC_Dummy+135
1064 -> APTR ScalosNodeList
1066 /*********************************************************
1067 ** FileTransfer Class **
1068 ** Name: "FileTransfer.sca" **
1069 **********************************************************/
1071 ENUM FTOPCODE_Copy=1, FTOPCODE_Move -> enum ftOpCodes { FTOPCODE_Copy=1, FTOPCODE_Move };
1073 -> -------------- Attributes -----------
1075 CONST SCCA_FileTrans_Number = SCC_Dummy+5, -> [I..]
1076 SCCA_FileTrans_Screen = SCC_Dummy+6, -> [I..]
1077 SCCA_FileTrans_ReplaceMode = SCC_Dummy+157, -> [I..] +jl+ 20010713
1079 -> Values for SCCA_FileTrans_ReplaceMode
1080 SCCV_ReplaceMode_Ask = 0,
1081 SCCV_ReplaceMode_Never = 1,
1082 SCCV_ReplaceMode_Always = 2,
1083 SCCV_ReplaceMode_Abort = 3,
1085 -> --------------- Methods -------------
1086 SCCM_FileTrans_Copy = SCC_Dummy+147,
1089 -> CONST_STRPTR SrcName
1090 -> CONST_STRPTR DestName
1094 SCCM_FileTrans_Move = SCC_Dummy+148, ->new
1101 SCCM_FileTrans_CheckAbort = SCC_Dummy+162, ->new +jl+ 20011207
1103 -> return RETURN_OK to continue
1104 -> or non-zero to abort moving/copying
1106 SCCM_FileTrans_OpenWindow = SCC_Dummy+163, ->+jl+ 20011208
1108 -> returns struct Window * - NULL if window could not be opened
1110 SCCM_FileTrans_OpenWindowDelayed = SCC_Dummy+164, -> +jl+ 20011208
1112 -> returns struct Window * - NULL if window could not be opened
1114 SCCM_FileTrans_UpdateWindow = SCC_Dummy+165 -> +jl+ 20011209
1118 -> CONST_STRPTR Name
1121 ENUM FTUPDATE_Initial, FTUPDATE_EnterNewDir, FTUPDATE_Entry, FTUPDATE_SameFile, FTUPDATE_Final
1122 -> FILETRANS_UpdateMode
1125 CONST SCCM_FileTrans_CountTimeout = SCC_Dummy+167, -> +jl+ 20011214
1127 -> returns non-zero value if CountTimeout is exceeded and counting should be aborted.
1129 SCCM_FileTrans_OverwriteRequest = SCC_Dummy+185 -> +jl+ 20011214
1130 -> enum OverWriteReqType requestType
1132 -> CONST_STRPTR srcName
1134 -> CONST_STRPTR destName
1135 -> struct Window *parentWindow
1136 -> ULONG suggestedBodyTextId
1137 -> ULONG suggestedGadgetTextId
1138 -> returns ExistsReqResult
1140 ENUM OVERWRITEREQ_Copy,OVERWRITEREQ_Move,OVERWRITEREQ_CopyIcon -> OverWriteReqType
1142 ENUM EXISTREQ_Replace = 1,EXISTREQ_Skip,EXISTREQ_ReplaceAll,EXISTREQ_SkipAll,EXISTREQ_Abort = 0 -> ExistsReqResult
1144 /*****************************************************************
1145 ** this is the struct of every Scalos **
1146 ** Root.sca subclass **
1147 ******************************************************************/
1150 windowtask:PTR TO scawindowtask -> Pointer to a WindowTask structure
1151 interninfos:PTR TO scainterninfos -> Pointer to a Internal Infos struct
1152 ENDOBJECT -> !! This is not the end of this struct
1154 OBJECT scainterninfos
1155 mainmsgport:PTR TO mp -> Main message port
1156 mainwindowstruct:PTR TO scawindowstruct -> Pointer into the windowlist
1157 -> from Desktop Window
1158 appwindowstruct:PTR TO scawindowstruct -> Pointer into the windowlist
1159 -> from Window for AppIcons
1160 screen:PTR TO screen -> the Scalos Screen
1161 drawinfo:PTR TO drawinfo -> DrawInfo from this screen
1162 visualinfo:PTR TO CHAR -> Gadtools VisualInfo
1166 /** extended Library base for Scalos OOP plugins **/
1167 OBJECT scaooppluginbase
1168 soob_library -> Standard Library base
1169 soob_signature -> Must be 'PLUG
'
1173 hook:hook -> Dispatcher Hook
1174 priority:LONG -> Where to insert the class (-128 to 127)
1175 instsize:INT -> Instance size
1176 neededversion:INT -> needed Scalos Version (normaly -> this is 39)
1177 reserved:INT -> should be NULL
1178 classname:PTR TO CHAR -> name of your class (max 50 chars)
1179 superclassname:PTR TO CHAR -> name of the superclass (max 50 chars)
1180 name:PTR TO CHAR -> real name (max 100 chars)
1181 description:PTR TO CHAR -> short description (max 200 chars)
1182 makername:PTR TO CHAR -> name of the programmer
1187 /** This is the parameter structure for Scalos tooltip info string plugin functions **/
1188 OBJECT scatooltipinfohookdata
1189 iconnode:PTR TO scaiconnode -> icon node of the file/drawer/disk to identify
1190 filelock -> READ lock on the file/drawer/disk to identify
1191 fib:PTR TO fileinfoblock -> FileInfoBlock, valid if ttshd_FileLock != NULL
1192 buffer -> Buffer to fill result string in
1193 bufflen -> Length of ttshd_Buffer
1196 /** Parameter structure for SCCM_IconWin_ReadIcon **/
1197 OBJECT scareadiconarg
1203 /** ----------------------- Scalos Class Hierarchy -------------------------
1208 +-- Window.sca (-90)
1210 +--- Title.sca (-80)
1212 +--- DeviceList.sca (-80)
1214 +-+- IconWindow.sca (-80)
1216 +-- DeviceWindow.sca (-60)
1218 +-- TextWindow.sca (-60)
1221 ------------------------------------------------------------------------ **/
1224 OBJECT scaappobjnode
1225 minnode:PTR TO mn /* Pretty much all the structures with two longs
1226 at the start are actually a MinNode (think
1227 about it, you need a list of AppObjects) */
1228 kennug /* for want of a better name, holds "SC" as identifier */
1239 0 = AppIcons object: IconObject
1240 1 = AppWindow object: Window
1241 2 = AppMenuItem object: MenuItem
1245 window:PTR TO scawindowstruct -> Window from wich dragging started
1246 icon:PTR TO scaiconnode -> Icon under mouse pointer or NULL
1251 -> Flag Values for SCA_DrawDrag()
1252 #define SCAB_Drag_Transparent 0
1253 #define SCAF_Drag_Transparent Shl(1,SCAB_Drag_Transparent)
1254 #define SCAB_Drag_IndicateCopy 1 -> +jl+ draw indicator for copying
1255 #define SCAF_Drag_IndicateCopy Shl(1,SCAB_Drag_IndicateCopy)
1256 #define SCAB_Drag_NoDropHere 2 -> +jl+ nothing may be dropped here
1257 #define SCAF_Drag_NoDropHere Shl(1,SCAB_Drag_NoDropHere)
1258 #define SCAB_Drag_Hide 3 -> +jl+ hide Bobs
1259 #define SCAF_Drag_Hide Shl(1,SCAB_Drag_Hide)
1260 #define SCAB_Drag_IndicateMakeLink 4 -> +jl+ draw indicator for Make-Link
1261 #define SCAF_Drag_IndicateMakeLink Shl(1,SCAB_Drag_IndicateMakeLink)
1262 #define SCAB_Drag_NoDrawDrag 5 -> +jl+ 20010802 internal use only
1263 #define SCAF_Drag_NoDrawDrag Shl(1,SCAB_Drag_NoDrawDrag)
1265 /****************************************************************************
1266 *****************************************************************************/
1268 -> Tags for ScalosControlA() library call
1270 CONST SCALOSCONTROL_BASE = $80530300
1273 ** Set the default stack size for launching programs with (ULONG).
1275 #define SCALOSCTRLA_GetDefaultStackSize SCALOSCONTROL_BASE+1
1278 ** Set the default stack size for launching programs with (ULONG).
1280 #define SCALOSCTRLA_SetDefaultStackSize SCALOSCONTROL_BASE+2
1283 ** Get a list of currently running Workbench programs (struct List **).
1285 #define SCALOSCTRLA_GetProgramList SCALOSCONTROL_BASE+3
1288 ** Release the list of currently running Workbench programs (struct List *).
1290 #define SCALOSCTRLA_FreeProgramList SCALOSCONTROL_BASE+4
1293 ** Get the current state of the "Disable CloseWorkbench()" flag
1295 #define SCALOSCTRLA_GetCloseWBDisabled SCALOSCONTROL_BASE+5
1298 ** Set the state of the "Disable CloseWorkbench()" flag
1300 #define SCALOSCTRLA_SetCloseWBDisabled SCALOSCONTROL_BASE+6
1303 ** Get the current state of the boot-up splash window flag
1305 #define SCALOSCTRLA_GetSplashEnable SCALOSCONTROL_BASE+7
1308 ** Turn off/on boot-up splash window
1310 #define SCALOSCTRLA_SetSplashEnable SCALOSCONTROL_BASE+8
1313 ** Get the current icon tool tip enabled state
1315 #define SCALOSCTRLA_GetToolTipEnable SCALOSCONTROL_BASE+9
1318 ** Turn off/on icon tool tips
1320 #define SCALOSCTRLA_SetToolTipEnable SCALOSCONTROL_BASE+10
1323 ** Get the delay for icon tool tips
1325 #define SCALOSCTRLA_GetToolTipDelay SCALOSCONTROL_BASE+11
1328 ** Set the delay for icon tool tips
1330 #define SCALOSCTRLA_SetToolTipDelay SCALOSCONTROL_BASE+12
1333 ** Get the current icon tool tip enabled state
1335 #define SCALOSCTRLA_GetOldDragIconMode SCALOSCONTROL_BASE+13
1338 ** Turn off/on icon tool tips
1340 #define SCALOSCTRLA_SetOldDragIconMode SCALOSCONTROL_BASE+14
1343 ** Get the number of seconds to pass before typing next
1344 ** character in a drawer window will restart
1345 ** with new file name (ULONG *).
1347 #define SCALOSCTRLA_GetTypeRestartTime SCALOSCONTROL_BASE+15
1350 ** Set number of seconds to pass before typing
1351 ** next character in a drawer window will restart
1352 ** with new file name (ULONG).
1354 #define SCALOSCTRLA_SetTypeRestartTime SCALOSCONTROL_BASE+16
1357 ** Get a BOOL variable telling whether Scalos
1358 ** is running in emulation mode (TRUE)
1359 ** or in preview mode (FALSE)
1361 #define SCALOSCTRLA_GetEmulationMode SCALOSCONTROL_BASE+17
1364 ** Get a BOOL variable telling whether Scalos
1365 ** displays a status bar in every non-backdrop window
1367 #define SCALOSCTRLA_GetStatusBarEnable SCALOSCONTROL_BASE+18
1370 ** Tell whether Scalos to display a status
1371 ** bar in every non-backdrop window (any non-zero value)
1372 ** or to display no status bars (0 = FALSE)
1373 ** Changes only apply to windows opened thereafter.
1375 #define SCALOSCTRLA_SetStatusBarEnable SCALOSCONTROL_BASE+19
1378 ** Obtain the current hook that will be invoked when Scalos
1379 ** starts copying files and data (struct Hook **) (V40)
1381 #define SCALOSCTRLA_GetCopyHook SCALOSCONTROL_BASE+20
1384 ** Install a new hook that will be invoked when Scalos
1385 ** starts copying files and data (struct Hook *) (V40)
1387 #define SCALOSCTRLA_SetCopyHook SCALOSCONTROL_BASE+21
1390 ** Obtain the current hook that will be invoked when Scalos deletes
1391 ** files and drawers or empties the trashcan (struct Hook **)
1394 #define SCALOSCTRLA_GetDeleteHook SCALOSCONTROL_BASE+22
1397 ** Install a new hook that will be invoked when Scalos deletes
1398 ** files and drawers or empties the trashcan (struct Hook *)
1401 #define SCALOSCTRLA_SetDeleteHook SCALOSCONTROL_BASE+23
1404 ** Obtain the current hook that will be invoked when Scalos requests
1405 ** the user to enter text, i.e. when a file is to be renamed
1406 ** or a new drawer is to be created (struct Hook **) (V40)
1408 #define SCALOSCTRLA_GetTextInputHook SCALOSCONTROL_BASE+24
1411 ** Install a new hook that will be invoked when Scalos requests
1412 ** the user to enter text, i.e. when a file is to be renamed
1413 ** or a new drawer is to be created (struct Hook *) (V40)
1415 #define SCALOSCTRLA_SetTextInputHook SCALOSCONTROL_BASE+25
1418 ** Add a hook that will be invoked when Scalos is about
1419 ** to close (cleanup), and when Scalos has opened
1420 ** again (setup) (struct Hook *); (V40)
1422 #define SCALOSCTRLA_AddCloseWBHook SCALOSCONTROL_BASE+26
1425 ** Remove a hook that has been installed with the
1426 ** SCALOSCTRLA_AddCloseWBHook tag (struct Hook *); (V40)
1428 #define SCALOSCTRLA_RemCloseWBHook SCALOSCONTROL_BASE+27
1431 ** Get a BOOL variable telling whether Scalos
1432 ** displays horizontally striped lines in text windows
1434 #define SCALOSCTRLA_GetStripedTextWindows SCALOSCONTROL_BASE+28
1437 ** Tell whether Scalos to display horizontally
1438 ** striped lines in text windows
1439 ** Changes only apply to windows opened thereafter.
1441 #define SCALOSCTRLA_SetStripedTextWindows SCALOSCONTROL_BASE+29
1444 ** Get a BOOL variable telling whether Scalos
1445 ** shows the number of dragged objects during D&D
1447 #define SCALOSCTRLA_GetDisplayDragCount SCALOSCONTROL_BASE+30
1450 ** Tell whether Scalos to display
1451 ** the number of dragged objects during D&D
1453 #define SCALOSCTRLA_SetDisplayDragCount SCALOSCONTROL_BASE+31
1456 ** Get a ULONG variable telling when Scalos
1457 ** shows window drop marks during D&D
1458 ** 0 - never, 1 - only on non-backdrop windows, 2 - always
1460 #define SCALOSCTRLA_GetWindowDropMarkMode SCALOSCONTROL_BASE+32
1463 ** Set when Scalos will show window drop marks during D&D
1464 ** 0 - never, 1 - only on non-backdrop windows, 2 - always
1466 #define SCALOSCTRLA_SetWindowDropMarkMode SCALOSCONTROL_BASE+33
1469 ** Get bit mask of all currently enabled icon types
1470 ** IDTV_IconType_NewIcon - display NewIcons
1471 ** IDTV_IconType_ColorIcon - display OS3.5 color icons
1473 #define SCALOSCTRLA_GetSupportedIconTypes SCALOSCONTROL_BASE+34
1476 ** Select which icon types are enabled :
1477 ** IDTV_IconType_NewIcon - display NewIcons
1478 ** IDTV_IconType_ColorIcon - display OS3.5 color icons
1480 #define SCALOSCTRLA_SetSupportedIconTypes SCALOSCONTROL_BASE+35
1484 ** Get a list of all supported menu command names (struct List **).
1486 #define SCALOSCTRLA_GetMenuCommandList SCALOSCONTROL_BASE+36
1489 ** Release the list of all supported menu command names (struct List *).
1491 #define SCALOSCTRLA_FreeMenuCommandList SCALOSCONTROL_BASE+37
1495 ** Get the size of the buffer used for moving and
1496 ** copying files (ULONG *).
1498 #define SCALOSCTRLA_GetCopyBuffSize SCALOSCONTROL_BASE+38
1501 ** Set the size of the buffer used for moving and
1502 ** copying files (ULONG).
1503 ** Min = 4 KBytes, Max = 4 MBytes
1505 #define SCALOSCTRLA_SetCopyBuffSize SCALOSCONTROL_BASE+39
1508 /****************************************************************************/
1509 /* Method structures for all Scalos SCCM_*** class methods */
1510 /****************************************************************************/
1512 -> --- RootClass methods ------------------------------------------------
1517 methodid:PTR TO LONG
1518 entrypoint -> RUNPROCFUNC
1527 methodid:PTR TO LONG
1528 msg:PTR TO intuimessage
1531 -> SCCM_AddToClipboard
1533 OBJECT addtoclipboard
1534 methodid:PTR TO LONG
1535 wt:PTR TO scawindowtask
1536 in:PTR TO scaiconnode
1541 -> SCCM_GetLocalizedString
1544 methodid:PTR TO LONG
1545 stringid:PTR TO LONG
1548 -> --- DeviceWindowClass methods ----------------------------------------
1550 -> SCCM_DeviceWin_ReadIcon
1552 OBJECT devwinreadicon
1553 methodid:PTR TO LONG
1554 devicenode:PTR TO scadeviceicon
1557 -> SCCM_DeviceWin_RemIcon
1559 OBJECT devwinremicon
1560 methodid:PTR TO LONG
1561 iconnode:PTR TO scaiconnode
1564 -> --- IconWindowClass methods ------------------------------------------
1566 -> SCCM_IconWin_ReadIconList
1569 methodid:PTR TO LONG
1573 -> SCCM_IconWin_ShowIconToolTip
1575 OBJECT showicontooltip
1576 methodid:PTR TO LONG
1577 iconnode:PTR TO scaiconnode
1580 -> SCCM_IconWin_ShowGadgetToolTip
1582 OBJECT showgadgettooltip
1583 methodid:PTR TO LONG
1584 gadgetid:PTR TO LONG
1587 -> SCCM_IconWin_RawKey
1590 methodid:PTR TO LONG
1591 msg:PTR TO intuimessage
1594 -> SCCM_IconWin_DragBegin
1597 methodid:PTR TO LONG
1601 -> SCCM_IconWin_DragDrop
1604 methodid:PTR TO LONG
1605 dropwindow:PTR TO window
1608 qualifier:PTR TO LONG
1611 -> SCCM_IconWin_Open
1614 methodid:PTR TO LONG
1615 iconnode:PTR TO scaiconnode
1619 -> SCCM_IconWin_AddIcon
1622 methodid:PTR TO LONG
1629 -> SCCM_IconWin_RemIcon
1632 methodid:PTR TO LONG
1637 -> SCCM_IconWin_MakeWBArg
1640 methodid:PTR TO LONG
1641 icon:PTR TO scaiconnode
1645 -> SCCM_IconWin_SetVirtSize
1648 methodid:PTR TO LONG
1652 -> SCCM_IconWin_Redraw
1655 methodid:PTR TO LONG
1659 -> SCCM_IconWin_WakeUp
1662 methodid:PTR TO LONG
1663 relayout:PTR TO LONG
1666 -> SCCM_IconWin_DrawIcon
1669 methodid:PTR TO LONG
1670 iconobject:PTR TO object
1673 -> SCCM_IconWin_LayoutIcon
1676 methodid:PTR TO LONG
1677 iconobject:PTR TO object
1678 layoutflags:PTR TO LONG
1681 -> SCCM_IconWin_GetDefIcon
1684 methodid:PTR TO LONG
1686 type -> fib_DirEntryType from FileInfoBlock
1687 protection:PTR TO LONG -> fib_Protection from FileInfoBlock
1690 -> SCCM_IconWin_MenuCommand
1693 methodid:PTR TO LONG
1695 iconnode:PTR TO scaiconnode
1699 -> SCCM_IconWin_NewViewMode
1702 methodid:PTR TO LONG
1706 -> SCCM_IconWin_DeltaMove
1709 methodid:PTR TO LONG
1714 -> SCCM_IconWin_AddToStatusBar
1716 OBJECT addtostatusbar
1717 methodid:PTR TO LONG
1718 newmember:PTR TO gadget
1719 taglist:PTR TO LONG -> ULONG mab_TagList[0]
1722 -> SCCM_IconWin_RemFromStatusBar
1724 OBJECT remfromstatusbar
1725 methodid:PTR TO LONG
1726 oldmember:PTR TO gadget
1729 -> SCCM_IconWin_UpdateStatusBar
1731 OBJECT updatestatusbar
1732 methodid:PTR TO LONG
1733 member:PTR TO gadget
1734 taglist:PTR TO LONG -> ULONG mub_TagList[0]
1737 -> SCCM_IconWin_AddGadget
1740 methodid:PTR TO LONG
1741 newgadget:PTR TO gadget
1744 -> SCCM_IconWin_ReadIcon
1747 methodid:PTR TO LONG
1749 ria:PTR TO scareadiconarg
1752 -> SCCM_IconWin_ShowPopupMenu
1754 OBJECT showpopupmenu
1755 methodid:PTR TO LONG
1756 popupmenu:PTR TO popupmenu
1757 iconnode:PTR TO scaiconnode
1759 qualifier:PTR TO LONG
1762 -> --- TextWindowClass methods ------------------------------------------
1764 -> SCCM_TextWin_EndUpdate
1767 methodid:PTR TO LONG
1768 refreshflag:PTR TO LONG
1771 -> SCCM_TextWin_InsertIcon
1774 methodid:PTR TO LONG
1775 iconnode:PTR TO scaiconnode
1778 -> --- TextWindowClass methods ------------------------------------------
1781 methodid:PTR TO LONG
1782 buffer:PTR TO LONG -> Buffer being written to, gets updated after call
1783 titleformat -> current title format pointer, gets updated after call
1784 parseid -> ID containing the two-character variable name, e.g. "os"
1785 bufflen -> Length of mxl_Buffer
1788 -> --- MSG_QUERY -------------------------------------------------------
1791 methodid:PTR TO LONG
1792 parseid -> ID containing the two-character variable name, e.g. "os"
1795 -> --- WindowClass methods ------------------------------------------
1797 OBJECT remclipregion
1798 methodid:PTR TO LONG
1799 oldclipregion:PTR TO region
1803 methodid:PTR TO LONG
1807 OBJECT geticonfiletype
1808 methodid:PTR TO LONG
1809 iconnode:PTR TO scaiconnode
1812 -> --- FileTransClass methods ------------------------------------------
1815 methodid:PTR TO LONG
1824 methodid:PTR TO LONG
1834 methodid:PTR TO LONG
1835 updatemode:PTR TO LONG
1841 OBJECT overwriterequest
1842 methodid:PTR TO LONG
1849 parentwindow:PTR TO window
1850 suggestedbodytextid:PTR TO LONG
1851 suggestedgadgettextid:PTR TO LONG
1854 -> possible selections for thumbnail display
1855 ENUM THUMBNAILS_Never,
1856 THUMBNAILS_AsDefault,
1859 -> Icon layout modes
1861 #define ICONTYPE_MAX (1 + WBAPPICON)
1862 #define ICONLAYOUT_RESTRICTED_MAX 4
1864 ENUM ICONLAYOUT_Columns, -> Layout top-down in columns (default)
1865 ICONLAYOUT_Rows -> Layout left-to-right in rows
1867 /****************************************************************************/
1869 -> Scalos library base
1872 scb_LibNode:PTR TO lib
1873 scb_Pad[2]:ARRAY OF LONG -> pad to next longword border
1874 scb_Revision -> "1.4f" or "1.5" etc.
1877 /****************************************************************************/
1879 #endif /* SCALOS_SCALOS_H */