MHEG5
15.3.0
|
00001 /******************************************************************************* 00002 * Copyright © 2014 The DTVKit Open Software Foundation Ltd (www.dtvkit.org) 00003 * Copyright © 2004 Ocean Blue Software Ltd 00004 * Copyright © 2000 Koninklijke Philips Electronics N.V 00005 * 00006 * This file is part of a DTVKit Software Component 00007 * You are permitted to copy, modify or distribute this file subject to the terms 00008 * of the DTVKit 1.0 Licence which can be found in licence.txt or at www.dtvkit.org 00009 * 00010 * THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, 00011 * EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES 00012 * OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. 00013 * 00014 * If you or your organisation is not a member of DTVKit then you have access 00015 * to this source code outside of the terms of the licence agreement 00016 * and you are expected to delete this and any associated files immediately. 00017 * Further information on DTVKit, membership and terms can be found at www.dtvkit.org 00018 *******************************************************************************/ 00031 #ifndef _MH5SLIDER_H_ 00032 #define _MH5SLIDER_H_ 00033 00034 /*---includes for this file--------------------------------------------------*/ 00035 #include "mh5visible.h" 00036 #include "mh5interactible.h" 00037 00038 /*---Constant and macro definitions for public use---------------------------*/ 00039 00040 /*---Enumerations for public use---------------------------------------------*/ 00041 00042 /*---Global type defs for public use-----------------------------------------*/ 00043 typedef struct 00044 { 00045 /* Base classes */ 00046 MHEG5Visible visible; 00047 MHEG5Interactible interactible; 00048 00049 /* Exchanged atributes */ 00050 MHEG5Orientation orientation; 00051 MHEG5Int initialValue; 00052 MHEG5Int originalMinValue; 00053 MHEG5Int originalMaxValue; 00054 MHEG5Int initialPortion; 00055 MHEG5Int originalStepSize; 00056 MHEG5SliderStyle sliderStyle; 00057 MHEG5Colour sliderRefColour; 00058 00059 /* Internal attributes */ 00060 MHEG5Int sliderValue; 00061 MHEG5Int portion; 00062 MHEG5Int minValue; 00063 MHEG5Int maxValue; 00064 MHEG5Int stepSize; 00065 } MHEG5Slider; 00066 00067 /*---Global variable declarations for public use-----------------------------*/ 00068 00069 /*---Global Function prototypes for public use-------------------------------*/ 00070 00081 void MHEG5sliderInit(MHEG5Slider *slider); 00082 00083 00091 void MHEG5sliderFree(MHEG5Slider *slider); 00092 00093 00094 /* 00095 Internal behaviours 00096 */ 00097 void MHEG5sliderPrepare(MHEG5Slider *slider); 00098 void MHEG5sliderActivate(MHEG5Slider *slider); 00099 void MHEG5sliderDeactivate(MHEG5Slider *slider); 00100 void MHEG5sliderDestruct(MHEG5Slider *slider); 00101 00102 /* 00103 Actions 00104 */ 00105 MHEG5ErrorCode MHEG5step(MHEG5Root *target, MHEG5GList *params); 00106 MHEG5ErrorCode MHEG5setSliderValue(MHEG5Root *target, MHEG5GList *params); 00107 MHEG5ErrorCode MHEG5getSliderValue(MHEG5Root *target, MHEG5GList *params); 00108 MHEG5ErrorCode MHEG5setPortion(MHEG5Root *target, MHEG5GList *params); 00109 MHEG5ErrorCode MHEG5getPortion(MHEG5Root *target, MHEG5GList *params); 00110 MHEG5ErrorCode MHEG5setSliderParameters(MHEG5Root *target, MHEG5GList *params); 00111 00112 00118 void MHEG5sliderLEFT(MHEG5Slider *slider); 00119 00120 00126 void MHEG5sliderUP(MHEG5Slider *slider); 00127 00128 00134 void MHEG5sliderRIGHT(MHEG5Slider *slider); 00135 00136 00142 void MHEG5sliderDOWN(MHEG5Slider *slider); 00143 00144 00150 void MHEG5sliderSELECT(MHEG5Slider *slider); 00151 00152 00158 void MHEG5sliderEXIT(MHEG5Slider *slider); 00159 00160 00161 /* 00162 Debug 00163 */ 00164 #ifdef MH5PRINTOUT 00165 00171 void MHEG5sliderPrint(MHEG5Slider *slider, char *out); 00172 #endif 00173 00174 #endif /*_MH5SLIDER_H_*/