mGNCS4Touch API Reference  v1.5.0
A set of mGNCS-compliant controls for devices with a touch screen.
mimgnavbar.h
1 //
3 // IMPORTANT NOTICE
4 //
5 // The following open source license statement does not apply to any
6 // entity in the Exception List published by FMSoft.
7 //
8 // For more information, please visit:
9 //
10 // https://www.fmsoft.cn/exception-list
11 //
13 /*
14  * \file mimgnavbar.h
15  * \author miniStudio team of FMSoft
16  * \date 2010/10/09
17  *
18  \verbatim
19 
20  This file is part of mGNCS4Touch, one of MiniGUI components.
21 
22  Copyright (C) 2008-2018 FMSoft (http://www.fmsoft.cn).
23 
24  This program is free software: you can redistribute it and/or modify
25  it under the terms of the GNU General Public License as published by
26  the Free Software Foundation, either version 3 of the License, or
27  (at your option) any later version.
28 
29  This program is distributed in the hope that it will be useful,
30  but WITHOUT ANY WARRANTY; without even the implied warranty of
31  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
32  GNU General Public License for more details.
33 
34  You should have received a copy of the GNU General Public License
35  along with this program. If not, see <http://www.gnu.org/licenses/>.
36 
37  Or,
38 
39  As this program is a library, any link to this program must follow
40  GNU General Public License version 3 (GPLv3). If you cannot accept
41  GPLv3, you need to be licensed from FMSoft.
42 
43  If you have got a commercial license of this program, please use it
44  under the terms and conditions of the commercial license.
45 
46  For more information about the commercial license, please refer to
47  <http://www.minigui.com/blog/minigui-licensing-policy/>.
48 
49  \endverbatim
50 */
51 #ifndef __MGNCS4TOUCH_INB_H__
52 #define __MGNCS4TOUCH_INB_H__
53 
58 #ifdef __cplusplus
59 extern "C" {
60 #endif /* __cplusplus */
61 
66 #define NCSCTRL_IMGNAVBAR NCSCLASSNAME("imgnavbar")
67 
68 typedef struct _mImgNavBar mImgNavBar;
69 typedef struct _mImgNavBarClass mImgNavBarClass;
70 typedef struct _mImgNavBarRenderer mImgNavBarRenderer;
71 
76 #define NCSS_INB_SHIFT (NCSS_WIDGET_SHIFT + 0)
77 
111  NCSP_INB_LBITMAP = NCSP_WIDGET_MAX + 1,
119  NCSP_INB_MAX
120 };
121 
122 #define mImgNavBarHeader(clsName) \
123  mWidgetHeader(clsName) \
124  PLOGFONT caption_font; \
125  int margin_w; \
126  int leftbt_w; \
127  int rightbt_w; \
128  int img_h;
129 
136 struct _mImgNavBar {
137  mImgNavBarHeader(mImgNavBar)
138 };
139 
140 #define mImgNavBarClassHeader(clsName, parentClass) \
141  mWidgetClassHeader(clsName, parentClass)
142 
149 struct _mImgNavBarClass {
150  mImgNavBarClassHeader(mImgNavBar, mWidget)
151 };
152 
153 #define mImgNavBarRendererHeader(clsName, parentClass) \
154  mWidgetRendererHeader(clsName, parentClass)
155 
162 struct _mImgNavBarRenderer {
163  mImgNavBarRendererHeader(mImgNavBar, mWidget)
164 };
165 
170 MTOUCH_EXPORT extern mImgNavBarClass g_stmImgNavBarCls;
171 
185 };
186 
195  NCSN_INB_IMGCLICK = NCSN_WIDGET_MAX + 1,
196  NCSN_INB_MAX,
197 };
198 
211  // 1 is the text piece (NULL)
213  INB_MAX_PIECE_ID,
214 };
215 
216 #define GetLeftPiece(self) _M((mHBoxLayoutPiece *)self->body, getCell, INB_LEFT_PIECE_ID)
217 #define GetRightPiece(self) _M((mHBoxLayoutPiece *)self->body, getCell, INB_RIGHT_PIECE_ID)
218 
222 #ifdef __cplusplus
223 }
224 #endif /* __cplusplus */
225 
226 #endif /* __MGNCS4TOUCH_INB_H__ */
227 
mImgNavBarClass
toolcaption struct of toolcaption control, derived from mWidgetClass
mImgNavBarProp
mImgNavBarProp
the properties id of mImgNavBar
Definition: mimgnavbar.h:110
g_stmImgNavBarCls
MTOUCH_EXPORT mImgNavBarClass g_stmImgNavBarCls
global mImgNavBarClass
NCSP_INB_IMG_H
@ NCSP_INB_IMG_H
Left and right images of the high.
Definition: mimgnavbar.h:117
NCSD_INB_LEFT
@ NCSD_INB_LEFT
Left image click event listener param.
Definition: mimgnavbar.h:183
NCSP_INB_LBITMAP
@ NCSP_INB_LBITMAP
Placed on the left of the picture.
Definition: mimgnavbar.h:111
NCSP_INB_DRAWMODE
@ NCSP_INB_DRAWMODE
About the image display modes.
Definition: mimgnavbar.h:118
NCSP_INB_RBITMAP
@ NCSP_INB_RBITMAP
Placed on the right of the picture.
Definition: mimgnavbar.h:112
NCSN_INB_IMGCLICK
@ NCSN_INB_IMGCLICK
Around both ends of the image click event listener.
Definition: mimgnavbar.h:195
mImgNavBarRenderer
ImgNavBar class renderer interface, derived from mWidgetRenderer.
INB_RIGHT_PIECE_ID
@ INB_RIGHT_PIECE_ID
The right piece of the index id.
Definition: mimgnavbar.h:212
NCSD_INB_RIGHT
@ NCSD_INB_RIGHT
Right image click event listener param.
Definition: mimgnavbar.h:184
mImgNavBarNotify
mImgNavBarNotify
the notification code of mImgNavBar
Definition: mimgnavbar.h:194
NCSP_INB_MARGIN
@ NCSP_INB_MARGIN
Left and right ends of the blank reserved for control.
Definition: mimgnavbar.h:114
mImgNavBar
ImgNavBar class, derived from mWidget.
mImgNavBarBoxLayoutPieceIndexID
mImgNavBarBoxLayoutPieceIndexID
the piece index id of mImgNavBar
Definition: mimgnavbar.h:209
NCSP_INB_LEFT_W
@ NCSP_INB_LEFT_W
The width of the left image.
Definition: mimgnavbar.h:115
NCSP_INB_FONT
@ NCSP_INB_FONT
Set the font size on the navigation bar.
Definition: mimgnavbar.h:113
NCSP_INB_RIGHT_W
@ NCSP_INB_RIGHT_W
The width of the right image.
Definition: mimgnavbar.h:116
mImgNavBarData
mImgNavBarData
define the clicked add
Definition: mimgnavbar.h:182
INB_LEFT_PIECE_ID
@ INB_LEFT_PIECE_ID
The left piece of the index id.
Definition: mimgnavbar.h:210