REXX Tips & Tricks:Change the WPS with REXX
This section contains hints for using REXX to change the WPS.
WPS class hierarchy
This section contains the class tree for WARP 3 and WARP 4.
To get a list of all registered classes on your system use the function SysQueryClassList().
To get a hierarchical list of the WPS classes registered on your system you can use the Search-Button of the LaunchPad (or the entry Find ... in the WPS context menu) as follows:
- Open the Find dialog
- Push the More ... button in the Find dialog to open the Find Criteria dialog
- Push the Add button in the Find Criteria dialog to open the Add Criteria dialog
- Select Object Class for the field Attribute in the Add Criteria dialog
- Now you can scroll the hierarchical list of the registered classes in the list box Comparison value.
In der deutschen Version von WARP oeffnet mensch hierfuer den Suchen Dialog (ueber den Suchen Button der Klickstartleiste oder ueber den Eintrag Suchen im Kontextmenue der WPS. Dort klickt mensch den Button Weitere und in den daraufhin erscheinenden Dialog den Button Hinzufuegen In diesen Dialog nun setzt mensch das Feld Merkmal auf ObjektKlasse. Nun kann in der Listbox Vergleichswert die hierarchische Liste der registrierten WPS Klassen durch gescrollt werden.
WARP Version 3 Class hierarchy
WPS Class hierarchy for WARP Version 3 (see also the WPS Class hierarchy for WARP 4).
CLASS NAME | CLASS DEFINITION FILE | |||||
SOMObject | somobj.idl | |||||
SOMClass | somcls.idl | |||||
SOMClassMgr | somcm.idl | |||||
WPObject | wpobject.idl | |||||
WPAbstract | wpabs.idl | |||||
WPClock | wpclock.idl | |||||
WPCountry | wpctry.idl | |||||
WPDisk | wpdisk.idl | |||||
WPKeyboard | wpkeybd.idl.idl | |||||
WPLaunchPad | wplnchpd.idl | |||||
WPMouse | wpmouse.idl | |||||
WPSchemePalette | wppalet.idl | |||||
WPColorPalette | wpclrpal.idl | |||||
WPFontPalette | wpfntpal.idl | |||||
WPSchemePalette | wpscheme.idl | |||||
WPPower | wppower.idl | |||||
WPPrinter | wpprint.idl | |||||
WPRPrinter | wprprint.idl | |||||
WPProgram | wppgm.idl | |||||
WPShadow | wpshadow.idl | |||||
WPNetLink | wpnetlnk.idl | |||||
WPShredder | wpshred.idl | |||||
WPSound | wpsound.idl | |||||
WPSpecialNeeds | wpspneed.idl | |||||
WPSpool | wpspool.idl | |||||
WPSystem | wpsystem.idl | |||||
WPWinConfig | wincfg.idl | |||||
WPFileSystem | wpfsys.idl | |||||
WPDataFile | wpdataf.idl | |||||
WPBitmap | wpbitmap.idl | |||||
WebExplorer_Url | ||||||
WPIcon | wpicon.idl | |||||
WPMet | wpmet.idl | |||||
WPPif | wppif.idl | |||||
WPPointer | wpptr.idl | |||||
WPProgramFile | wppgmf.idl | |||||
WPCommandFile | wpcmdf.idl | |||||
WPFolder | wpfolder.idl | |||||
WPDesktop | wpdesk.idl | |||||
WPDrives | wpdrives.idl | |||||
WPMinWinViewer | wpmwv.idl | |||||
WPNetgrp | wpnetgrp.idl | |||||
WPNetwork | wpnetwrk.idl | |||||
WPRootFolder | wprootf.idl | |||||
WPServer | wpserver.idl | |||||
WPSharedDir | wpshdir.idl | |||||
WPStartup | wpstart.idl | |||||
WPTemplates | wptemps.idl | |||||
WPTransient | wptrans.idl | |||||
WPJob | wpjob.idl | |||||
WPPdr | wppdr.idl | |||||
WPPort | wpport.idl | |||||
WPQdr | wpqdr.idl |
(except for the classes marked with *. These are no standard WPS classes.)
WARP Version 4 Class hierarchy
WPS Class hierarchy for WARP Version 4 (see also the WPS Class hierarchy for WARP 3).
CLASS NAME CLASS DEFINITION FILE SOMObject somobj.idl ÃÄÄÄSOMClass somcls.idl ÃÄÄÄSOMClassMgr somcm.idl ³ ÀÄWPClassManager wpclsmgr.idl ÀÄÄÄWPObject wpobject.idl ÚÄÄÄÄÄWPAbstract wpabs.idl ³ ÃÄÄ WPClock wpclkm.idl ³ ÃÄÄ WPCountry wpctry.idl ³ ÃÄÄ WPDisk wpdisk.idl ³ ÃÄÄ WPLaunchPad wplnchpd.idl ³ ³ ÀÄÄSmartCenter ³ ÃÄÄ WPKeyboard wpkeybd.idl ³ ÃÄÄ WPMouse wpmouse.idl ³ ÃÄÄ WPPalette wppalet.idl ³ ³ ÃÄÄ WPColorPalette wpclrpal.idl ³ ³ ÃÄÄ WPFontPalette wpfntpal.idl ³ ³ ÀÄÄ WPSchemePalette wpscheme.idl ³ ÃÄÄ WPPower wppower.idl ³ ÃÄÄ WPPrinter wpprint.idl ³ ³ ÀÄÄ WPRPrinter wprprint.idl ³ ÃÄÄ WPProgram wppgm.idl ³ ÃÄÄ WPShadow wpshadow.idl ³ ³ ÀÄÄ WPNetLink wpnetlnk.idl ³ ÃÄÄ WPShredder wpshred.idl ³ ÃÄÄ WPSound wpsound.idl ³ ÃÄÄ WPSpecialNeeds wpspneed.idl ³ ÃÄÄ WPSpool wpspool.idl ³ ÃÄÄ WPSystem wpsystem.idl ³ ÀÄÄ WPWinConfig wincfg.idl ÃÄÄ WPFileSystem wpfsys.idl ³ ÃÄÄ WPDataFile wpdataf.idl ³ ³ ÃÄÄ WPHtml wphtml.idl ³ ³ ÃÄÄ WPIcon wpicon.idl ³ ³ ÃÄÄ WPImageFile wpimage.idl ³ ³ ³ ÀÄÄ WPBitmap wpbitmap.idl ³ ³ ÃÄÄ WPMet wpmet.idl ³ ³ ÃÄÄ WPPif wppif.idl ³ ³ ÃÄÄ WPPointer wpptr.idl ³ ³ ÃÄÄ WPProgramFile wppgmf.idl ³ ³ ³ ÀÄÄ WPCommandFile wpcmdf.idl ³ ³ ÃÄÄ WPUrl wpurl.idl ³ ÃÄÄ WPFolder wpfolder.idl ³ ³ ÃÄÄ WPDesktop wpdesk.idl ³ ³ ÃÄÄ WPDrives wpdrives.idl ³ ³ ÃÄÄ WPHost wphost.idl ³ ³ ÃÄÄ WPHwManager wphwmgr.idl ³ ³ ÃÄÄ WPMinWinViewer wpmwv.idl ³ ³ ÃÄÄ WPNetgrp wpnetgrp.idl ³ ³ ÃÄÄ WPNetwork wpnetwrk.idl ³ ³ ÃÄÄ WPRootFolder wprootf.idl ³ ³ ÃÄÄ WPServer wpserver.idl ³ ³ ÃÄÄ WPSharedDir wpshdir.idl ³ ³ ÃÄÄ WPStartup wpstart.idl ³ ³ ÃÄÄ WPTemplates wptemps.idl ³ ³ ÀÄÄ WPUrlFolder wpurlfdr.idl ÀÄÄ WPTransient wptrans.idl ÚÄÄ WPJob wpjob.idl ÃÄÄ WPDevice wpdevice.idl ³ ÃÄÄ WPDevAudio wpaudio.idl ³ ÃÄÄ WPDevBus wpbus.idl ³ ÃÄÄ WPDevCDRom wpcdrom.idl ³ ÃÄÄ WPDevCPU wpcpu.idl ³ ÃÄÄ WPDevDiskette wpdskett.idl ³ ÃÄÄ WPDevDisplay wpdisply.idl ³ ÃÄÄ WPDevHarddrive wphrddrv.idl ³ ÃÄÄ WPDevKeyboard wpkeybdd.idl ³ ÃÄÄ WPDevMemory wpmem.idl ³ ÃÄÄ WPDevMouse wpmoused.idl ³ ÃÄÄ WPDevParallel wpparal.idl ³ ÃÄÄ WPDevPeriph wpperiph.idl ³ ÃÄÄ WPDevSerial wpserial.idl ³ ÃÄÄ WPDevTape wptape.idl ³ ÀÄÄ WPDevTimer wptimer.idl ÃÄÄ WPPort wpport.idl ÃÄÄ WPPdr wppdr.idl ÀÄÄ WPQdr wpqdr.idl
Note: According to the REXX Reference Summary Handbook the class SmartCenter is a sub class of WPAbstract. I have not been able to verify this.
Extended Attributes used by the WPS
The Workplace Shell uses the following extended attributes:
Extended Attribute | EA Type | Description |
ASSOCTABLE | EAT_MVMT | Enables an application to indicate the type, extension, and icon for the data file that it recognizes. |
.CLASSINFO | EAT_BINARY | the class type of the object. |
.CODEPAGE | the code page for the file object | |
.COMMENTS | EAT_MVMT | misc. notes or reminders about the file object |
.HISTORY | EAT_MVMT | the modification history for a file object (see Maintaine Multi value EAs in REXX for an example for using this EA) |
.ICON | EAT_ICON | the icon that represents the file or folder object. This EA contains the physical data used to represent the folder object. (see also Extract the icon from the EAs) |
.ICON1 | EAT_ICON | the animation icon for a folder. This EA contains the physical data used to represent the open folder object. (see also Extract the icon from the EAs) |
.ICONPOS | EAT_BINARY | the icon positioning information for a folder (WARP 4 only!) |
.KEYPHRASES | EAT_MVMT | text phrases for the file |
.LONGNAME | EAT_ASCII | the long name of the file ³
object (necessary for file ³ system that do not support ³ long names) (see Copy a file ³ from HPFS to FAT and vice ³ versa for an usage example) ³ |
.PREVCLASS | EAT_BINARY | "old class name when the user ³
³ ³ ³requests that an object, which³ ³ ³ ³is a descendent of WPDataFile,³ ³ ³ ³becomes another subclass of ³ ³ ³ ³WPDataFile" (WARP 4 only!) ³ |
.SUBJECT | EAT_ASCII | a brief summary of the content³
³ ³ ³or purpose of the file object ³ |
.TYPE | EAT_MVMT | the file type of the file ³
³ ³ ³object, such as plain text ³ ³ ³ ³(TXT), bitmap (BMP), or ³ ³ ³ ³executable (EXE). ³ |
.VERSION | EAT_ASCII or EAT_BINARY | the version of the file object |
See the next section for the possible EA types.
Note: "Standard Extended Attributes (SEAs) have a dot (.) as a prefix. This identifies the extended attribute as a SEA. The leading dot is reserved, so applications should not define extended attributes that start with a dot. Also, extended attributes that start with the characters $, @, &, or + are reserved for system use." Be aware that the information about the types of the Standard Extended Attributes in the Control Program Guide and Reference is not correct!