/* Copyright 1996 Acorn Computers Ltd * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ /* File: colourmenu.h * Purpose: Colour Menu Objects * Author: Timothy G Roddis * History: 10-Jan-94: TGR: created * */ #ifndef __colourmenu_h #define __colourmenu_h #ifndef __toolbox_h #include "objects/toolbox.h" #endif /* Colour Menu Templates ************************************************************************/ typedef struct { int flags; char *title; int max_title; int colour; } ColourMenuTemplate; #define ColourMenu_GenerateShowEvent 0x00000001 #define ColourMenu_GenerateHideEvent 0x00000002 #define ColourMenu_NoneEntry 0x00000004 /* Colour Menu SWI calls ************************************************************************/ #define ColourMenu_SWIChunkBase 0x82980 #define ColourMenu_ObjectClass ColourMenu_SWIChunkBase #define ColourMenu_ClassSWI (ColourMenu_SWIChunkBase + 0) #define ColourMenu_PostFilter (ColourMenu_SWIChunkBase + 1) #define ColourMenu_PreFilter (ColourMenu_SWIChunkBase + 2) /* Colour Menu Methods **************************************************************************/ #define ColourMenu_SetColour 0 #define ColourMenu_GetColour 1 #define ColourMenu_SetNoneAvailable 2 #define ColourMenu_GetNoneAvailable 3 #define ColourMenu_SetTitle 4 #define ColourMenu_GetTitle 5 /* Colour Menu Toolbox Events *******************************************************************/ #define ColourMenu_AboutToBeShown ColourMenu_SWIChunkBase #define ColourMenu_HasBeenHidden (ColourMenu_SWIChunkBase + 1) #define ColourMenu_Selection (ColourMenu_SWIChunkBase + 2) typedef struct { ToolboxEventHeader hdr; int show_type; int x,y; } ColourMenu_AboutToBeShown_Event; typedef struct { ToolboxEventHeader hdr; } ColourMenu_HasBeenHidden_Event; typedef struct { ToolboxEventHeader hdr; int colour; } ColourMenu_Selection_Event; /* Colour Menu Errors ****************************************************************************/ #define ColourMenu_ErrorBase (Program_Error | 0x0080AD00) #define ColourMenu_AllocFailed (ColourMenu_ErrorBase+0x01) #define ColourMenu_ShortBuffer (ColourMenu_ErrorBase+0x02) #define ColourMenu_NoSuchTask (ColourMenu_ErrorBase+0x11) #define ColourMenu_NoSuchMethod (ColourMenu_ErrorBase+0x12) #define ColourMenu_NoSuchMiscOpMethod (ColourMenu_ErrorBase+0x13) #define ColourMenu_TasksActive (ColourMenu_ErrorBase+0x00) #endif