MHEG5  18.9.0
MHEG5 Documentation
mh5entryfield.h
Go to the documentation of this file.
1 /*******************************************************************************
2  * Copyright © 2014 The DTVKit Open Software Foundation Ltd (www.dtvkit.org)
3  * Copyright © 2004 Ocean Blue Software Ltd
4  * Copyright © 2000 Koninklijke Philips Electronics N.V
5  *
6  * This file is part of a DTVKit Software Component
7  * You are permitted to copy, modify or distribute this file subject to the terms
8  * of the DTVKit 1.0 Licence which can be found in licence.txt or at www.dtvkit.org
9  *
10  * THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND,
11  * EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES
12  * OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
13  *
14  * If you or your organisation is not a member of DTVKit then you have access
15  * to this source code outside of the terms of the licence agreement
16  * and you are expected to delete this and any associated files immediately.
17  * Further information on DTVKit, membership and terms can be found at www.dtvkit.org
18  *******************************************************************************/
31 #ifndef _MH5ENTRYFIELD_H_
32 #define _MH5ENTRYFIELD_H_
33 
34 /*---includes for this file--------------------------------------------------*/
35 #include "mh5text.h"
36 #include "mh5interactible.h"
37 #include "mheg5_keypress.h"
38 
39 /*---Constant and macro definitions for public use---------------------------*/
40 
41 /*---Enumerations for public use---------------------------------------------*/
42 
43 /*---Global type defs for public use-----------------------------------------*/
44 typedef struct
45 {
46  /* Base classes */
49 
50  /* Exchanged attributes */
51  enum {mh5alpha, mh5numeric, mh5any, mh5listed} inputType;
55 
56  /* Internal attributes */
60 
62 
63 /*---Global variable declarations for public use-----------------------------*/
64 
65 /*---Global Function prototypes for public use-------------------------------*/
66 
77 void MHEG5entryfieldInit(MHEG5Entryfield *entryfield);
78 
79 
87 void MHEG5entryfieldFree(MHEG5Entryfield *entryfield);
88 
89 
90 /*
91  Internal behaviours
92  */
93 void MHEG5entryfieldPrepare(MHEG5Entryfield *entryfield);
97 
98 
99 void MHEG5entryfieldInsert(MHEG5Entryfield *entryfield, unsigned short c);
100 
101 /*
102  Actions
103  */
108 
114 void MHEG5entryfieldBACKSPACE(MHEG5Entryfield *entryfield);
115 
116 
122 void MHEG5entryfieldLEFT(MHEG5Entryfield *entryfield);
123 
124 
130 void MHEG5entryfieldRIGHT(MHEG5Entryfield *entryfield);
131 
132 
138 void MHEG5entryfieldSELECT(MHEG5Entryfield *entryfield);
139 
140 
146 void MHEG5entryfieldEXIT(MHEG5Entryfield *entryfield);
147 
149 
150 /*
151  Debug
152  */
153 #ifdef MH5PRINTOUT
154 void MHEG5entryfieldPrint(MHEG5Entryfield *entryfield, char *out);
155 #endif
156 
157 #endif /*_MH5ENTRYFIELD_H_*/
void MHEG5entryfieldInit(MHEG5Entryfield *entryfield)
<Function description>="">
Implement the MHEG5 Interactible Class. Defines functionality associated with an interaction behaviou...
MHEG5ErrorCode MHEG5getOverwriteMode(MHEG5Root *target, MHEG5GList *params)
Retrieve the overwrite mode of the entryfield Implementation of the GetOverwriteMode action of the en...
Implement the MHEG5 Text Class 36 Text Class Defines attributes and behaviour of pieces of textual in...
E_MHEG5_KEY
MHEG5String charList
Definition: mh5entryfield.h:52
MHEG5Bool obscuredInput
Definition: mh5entryfield.h:53
MHEG5ErrorCode MHEG5setEntryPoint(MHEG5Root *target, MHEG5GList *params)
Set the entrypoint for the entryfield Implementation of the SetEntryPoint action of the entryfield cl...
long MHEG5Int
Definition: mh5base.h:73
void MHEG5entryfieldDestruct(MHEG5Entryfield *entryfield)
Destruct a entryfield object.
void MHEG5entryfieldFree(MHEG5Entryfield *entryfield)
Free off all memory associated with the specified object, including any exchanged attributes and inte...
MHEG5Int entryPoint
Definition: mh5entryfield.h:57
void MHEG5entryfieldBACKSPACE(MHEG5Entryfield *entryfield)
Perform action of backspace key on interacting Entryfield.
MHEG5Int maxlength
Definition: mh5entryfield.h:54
short MHEG5Bool
Definition: mh5base.h:71
void MHEG5entryfieldDeactivate(MHEG5Entryfield *entryfield)
Apply the deactivation behaviour of the entryfield class. As this class has no own deactivation behav...
MHEG5ErrorCode
Definition: mh5base.h:222
void MHEG5entryfieldLEFT(MHEG5Entryfield *entryfield)
Perform action of left arrow key on interacting Entryfield.
MHEG5Bool overwriteMode
Definition: mh5entryfield.h:58
void MHEG5entryfieldActivate(MHEG5Entryfield *entryfield)
Apply the activation behaviour of the entryfield class. As this class has no own activation behaviour...
MHEG5GList * params
MHEG5Text text
Definition: mh5entryfield.h:47
void MHEG5entryfieldEXIT(MHEG5Entryfield *entryfield)
Perform action of exit key on interacting Entryfield.
MHEG5ErrorCode MHEG5setOverwriteMode(MHEG5Root *target, MHEG5GList *params)
Set the overwrite mode of the entryfield to the new value of the parameter Implementation of the SetO...
Key press interface with MHEG5 engine.
void MHEG5entryfieldSELECT(MHEG5Entryfield *entryfield)
Perform action of select key on interacting Entryfield.
entryfieldCursor_t
Definition: mh5entryfield.h:61
MHEG5ErrorCode MHEG5getEntryPoint(MHEG5Root *target, MHEG5GList *params)
Retrieve the current entrypoint of the entryfield Implementation of the GetEntryPoint action of the e...
void MHEG5entryfieldRIGHT(MHEG5Entryfield *entryfield)
Perform action of right arrow key on interacting Entryfield.
void MHEG5entryfieldUserInput(MHEG5Entryfield *entryfield, E_MHEG5_KEY ui)
Test user input and perform required actions.
void MHEG5entryfieldInsert(MHEG5Entryfield *entryfield, unsigned short c)
Add the character |c| to the Entryfield.
MHEG5Interactible interactible
Definition: mh5entryfield.h:48
void MHEG5entryfieldPrepare(MHEG5Entryfield *entryfield)
Apply the preparation behaviour of the entryfield class Apply the preparation behaviour of the entryf...