;Assembler header file for ColourPicker
;written by DefMod (Mar  9 1999) on Thu Apr  8 04:02:30 1999
;Jonathan Coxhead, jonathan@doves.demon.co.uk, 29 June 1995

        [       :LNOT: :DEF: Get_Types
        GBLS    Get_Types
        ]
        [       :LNOT: :DEF: Types_Hdr
Get_Types                       SETS    "GET OS:Hdr.Types"
        |
Get_Types                       SETS    ""
        ]
        $Get_Types

        [       :LNOT: :DEF: Get_OS
        GBLS    Get_OS
        ]
        [       :LNOT: :DEF: OS_Hdr
Get_OS                          SETS    "GET OS:Hdr.OS"
        |
Get_OS                          SETS    ""
        ]
        $Get_OS

        [       :LNOT: :DEF: Get_Wimp
        GBLS    Get_Wimp
        ]
        [       :LNOT: :DEF: Wimp_Hdr
Get_Wimp                        SETS    "GET OS:Hdr.Wimp"
        |
Get_Wimp                        SETS    ""
        ]
        $Get_Wimp

        [       :LNOT: :DEF: ColourPicker_Hdr
        GBLS    ColourPicker_Hdr

;Symbols for constants
Error_ColourPickerUninit        *       &20D00
Error_ColourPickerBadModel      *       &20D01
Error_ColourPickerBadHandle     *       &20D02
Error_ColourPickerBadFlags      *       &20D03
Error_ColourPickerInUse         *       &20D04
Error_ColourPickerModelInUse    *       &20D05
Error_ColourPickerBadReason     *       &20D06
ColourPicker_EntryDialogueStarting *       0
ColourPicker_EntryDialogueFinishing *       1
ColourPicker_EntryRedrawArea    *       2
ColourPicker_EntryUpdateArea    *       3
ColourPicker_EntryReadValues    *       4
ColourPicker_EntrySetValues     *       5
ColourPicker_EntryProcessEvent  *       6
ColourPicker_EntrySetColour     *       7
ColourPicker_EntryLimit         *       8
ColourPicker_DialogueOffersTransparent *       &1
ColourPicker_DialogueTransparent *       &2
ColourPicker_DialogueType       *       &C
ColourPicker_DialogueTypeShift  *       2
ColourPicker_DialogueTypeNever  *       &0
ColourPicker_DialogueTypeClick  *       &1
ColourPicker_DialogueTypeClickDrag *       &2
ColourPicker_DialogueIgnoreHelp *       &10
ColourPicker_DialogueIgnoreKeyPressed *       &20
ColourPicker_ModelSizeRGB       *       16
ColourPicker_ModelSizeCMYK      *       20
ColourPicker_ModelSizeHSV       *       16
ColourPicker_ModelRGB           *       0
ColourPicker_ModelCMYK          *       1
ColourPicker_ModelHSV           *       2
Message_ColourPickerColourChoice *       &47700
Message_ColourPickerColourChanged *       &47701
Message_ColourPickerCloseDialogueRequest *       &47702
Message_ColourPickerOpenParentRequest *       &47703
Message_ColourPickerResetColourRequest *       &47704
ColourPicker_ColourTransparent  *       &1
ColourPicker_ColourDragging     *       &2
ColourPicker_OpenTransient      *       &1
ColourPicker_OpenSubMenu        *       &2
ColourPicker_OpenToolbox        *       &2
ColourPicker_UpdateOffersTransparent *       &1
ColourPicker_UpdateTransparent  *       &2
ColourPicker_UpdateType         *       &4
ColourPicker_UpdateVisible      *       &8
ColourPicker_UpdateScroll       *       &10
ColourPicker_UpdateTitle        *       &20
ColourPicker_UpdateColour       *       &40
ColourPicker_UpdateModel        *       &80
ColourPicker_UpdateIgnoreHelp   *       &100
ColourPicker_UpdateIgnoreKeyPressed *       &200

;Symbols for structure offsets and sizes
ColourPicker_D                  *       4 ;abstract type
                                ^       0
ColourPicker_Colour_colour      #       OS_Colour
ColourPicker_Colour_size        #       Int
ColourPicker_Colour_info        #       Int
ColourPicker_Colour             *       @

ColourPicker_DialogueFlags      *       Bits

                                ^       0
ColourPicker_Dialogue_flags     #       ColourPicker_DialogueFlags
ColourPicker_Dialogue_title     #       Ptr
ColourPicker_Dialogue_visible   #       OS_Box
ColourPicker_Dialogue_xscroll   #       Int
ColourPicker_Dialogue_yscroll   #       Int
ColourPicker_Dialogue_colour    #       OS_Colour
ColourPicker_Dialogue_size      #       Int
ColourPicker_Dialogue_info      #       Int
ColourPicker_Dialogue           *       @

ColourPicker_ModelFlags         *       Bits

                                ^       0
ColourPicker_Model_flags        #       ColourPicker_ModelFlags
ColourPicker_Model_name         #       Ptr
ColourPicker_Model_description  #       Ptr
ColourPicker_Model_info_size    #       Int
ColourPicker_Model_pane_size    #       OS_Coord
ColourPicker_Model_entries      #       8*Ptr
ColourPicker_Model              *       @

ColourPicker_ColourFlags        *       Bits

                                ^       0
ColourPicker_MessageColourChoice_d #       ColourPicker_D
ColourPicker_MessageColourChoice_flags #       ColourPicker_ColourFlags
ColourPicker_MessageColourChoice_colour #       OS_Colour
ColourPicker_MessageColourChoice_size #       Int
ColourPicker_MessageColourChoice_info #       Int
ColourPicker_MessageColourChoice *       @

                                ^       0
ColourPicker_MessageColourChanged_d #       ColourPicker_D
ColourPicker_MessageColourChanged_flags #       ColourPicker_ColourFlags
ColourPicker_MessageColourChanged_colour #       OS_Colour
ColourPicker_MessageColourChanged_size #       Int
ColourPicker_MessageColourChanged_info #       Int
ColourPicker_MessageColourChanged *       @

                                ^       0
ColourPicker_MessageOpenParentRequest_d #       ColourPicker_D
ColourPicker_MessageOpenParentRequest *       @

                                ^       0
ColourPicker_MessageCloseDialogueRequest_d #       ColourPicker_D
ColourPicker_MessageCloseDialogueRequest *       @

                                ^       0
ColourPicker_MessageResetColourRequest_d #       ColourPicker_D
ColourPicker_MessageResetColourRequest *       @

ColourPicker_OpenFlags          *       Bits

ColourPicker_CloseFlags         *       Bits

ColourPicker_UpdateFlags        *       Bits

ColourPicker_ReadFlags          *       Bits

ColourPicker_SetFlags           *       Bits

ColourPicker_HelpFlags          *       Bits


;Symbols for SWIs and SWI reason codes
XColourPicker_RegisterModel     *       &67700
ColourPicker_RegisterModel      *       &47700
   ;Entry
   ;  R0 = model_no (Int)
   ;  R1 -> model (ColourPicker_Model)
   ;  R2 = workspace (pointer to Void)

XColourPicker_DeregisterModel   *       &67701
ColourPicker_DeregisterModel    *       &47701
   ;Entry
   ;  R0 = model_no (Int)

XColourPicker_OpenDialogue      *       &67702
ColourPicker_OpenDialogue       *       &47702
   ;Entry
   ;  R0 = flags (ColourPicker_OpenFlags)
   ;  R1 -> dialogue (ColourPicker_Dialogue)
   ;Exit
   ;  R0 = d (ColourPicker_D)
   ;  R1 = w (Wimp_W)

XColourPicker_CloseDialogue     *       &67703
ColourPicker_CloseDialogue      *       &47703
   ;Entry
   ;  R0 = flags (ColourPicker_CloseFlags)
   ;  R1 = d (ColourPicker_D)

XColourPicker_UpdateDialogue    *       &67704
ColourPicker_UpdateDialogue     *       &47704
   ;Entry
   ;  R0 = flags (ColourPicker_UpdateFlags)
   ;  R1 = d (ColourPicker_D)
   ;  R2 -> dialogue (ColourPicker_Dialogue)

XColourPicker_ReadDialogue      *       &67705
ColourPicker_ReadDialogue       *       &47705
   ;Entry
   ;  R0 = flags (ColourPicker_ReadFlags)
   ;  R1 = d (ColourPicker_D)
   ;  R2 = dialogue (pointer to ColourPicker_Dialogue)
   ;Exit
   ;  R1 = w (Wimp_W)
   ;  R2 = size (Int)

XColourPicker_SetColour         *       &67706
ColourPicker_SetColour          *       &47706
   ;Entry
   ;  R0 = flags (ColourPicker_SetFlags)
   ;  R1 -> colour (ColourPicker_Colour)

XColourPicker_HelpReply         *       &67707
ColourPicker_HelpReply          *       &47707
   ;Entry
   ;  R0 = flags (ColourPicker_HelpFlags)
   ;  R1 -> help_request (Wimp_Message)

XColourPicker_ModelSWI          *       &67708
ColourPicker_ModelSWI           *       &47708

ColourPickerModelSWI_ColourChanged *       &0
   ;Entry
   ;  R0 = &0
   ;  R1 -> colour (ColourPicker_Colour)

ColourPickerModelSWI_ColourChangedByDragging *       &1
   ;Entry
   ;  R0 = &1
   ;  R1 -> colour (ColourPicker_Colour)

ColourPickerModelSWI_ClaimEvent *       &2
   ;Entry
   ;  R0 = &2
   ;  R1 = event (Int)
   ;  R2 -> colour (ColourPicker_Colour)

ColourPickerModelSWI_ReleaseEvent *       &3
   ;Entry
   ;  R0 = &3
   ;  R1 = event (Int)
   ;  R2 -> colour (ColourPicker_Colour)

ColourPickerModelSWI_ProcessKey *       &4
   ;Entry
   ;  R0 = &4
   ;  R1 = c (Int)
   ;  R2 -> colour (ColourPicker_Colour)

Service_ColourPickerLoaded      *       &93
   ;Entry
   ;  R1 = &93
   ;  R2 -> loaded_service (code)
   ;  R3 = workspace (pointer to Void)

        ]

        END
