<> <> <> <> <> <> DIRECTORY Process USING [Ticks], Rope USING [ROPE]; ColorDisplay: CEDAR DEFINITIONS ~ { CDState: TYPE ~ RECORD [ on, onLeft: BOOLEAN, gray: BOOL, -- The display is in gray mode rather than dither. bpp, bppB: CARDINAL, monitorType: Rope.ROPE ]; SetColorDisplayStatus: PROC [on: BOOLEAN _ DefaultOn[], onLeft: BOOLEAN _ DefaultOnLeft[], gray: BOOL _ DefaultGray[], bpp: CARDINAL _ DefaultBpp[], bppB: CARDINAL _ DefaultBppB[], monitorType: Rope.ROPE _ DefaultMonitorType[]]; <> <> <> <> <> <> <> <> <<1. The current state of the display, if the display is on.>> <<2. The last known state of that parameter, if the display is off.>> <> <> <<3. The value found in the User Profile, if an entry exists (see ColorDisplayDoc.tioga)>> <<4. The following values, if there is no User Profile entry:>> <> <> <> GetColorDisplayStatus: PROC RETURNS [on, onLeft, gray: BOOL, bpp, bppB: CARDINAL, monitorType: Rope.ROPE]; <> <> <> <<1. If the display is on, then they are the actual state of the display>> <<2. Otherwise, they are the last known state, or the default state.>> <> GetColorDisplayProfile: PROC RETURNS [on, onLeft, gray: BOOL, bpp, bppB: CARDINAL, monitorType: Rope.ROPE]; <> <> <> <<>> CDNotifyProc: TYPE ~ PROC [old, new: CDState, clientData: REF]; CDRegistration: TYPE ~ REF; RegisterCDNotifyProc: PROC [proc: CDNotifyProc, clientData: REF] RETURNS [reg: CDRegistration]; <> UnregisterCDNotifyProc: PROC [reg: CDRegistration]; <> <<>> SleepColorDisplay: UNSAFE PROC [ticks: Process.Ticks]; <> <<>> <> DefaultOn: PRIVATE PROC RETURNS[BOOLEAN]; DefaultOnLeft: PRIVATE PROC RETURNS[BOOLEAN]; DefaultGray: PRIVATE PROC RETURNS[BOOLEAN]; DefaultBpp: PRIVATE PROC RETURNS [CARDINAL]; DefaultBppB: PRIVATE PROC RETURNS [CARDINAL]; DefaultMonitorType: PRIVATE PROC RETURNS [Rope.ROPE]; }.