1 /*
2 
3 Copyright (C) 2015-2018 Night Dive Studios, LLC.
4 
5 This program is free software: you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation, either version 3 of the License, or
8 (at your option) any later version.
9 
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 GNU General Public License for more details.
14 
15 You should have received a copy of the GNU General Public License
16 along with this program.  If not, see <http://www.gnu.org/licenses/>.
17 
18 */
19 #ifndef __SLIDER_H
20 #define __SLIDER_H
21 
22 /*
23  * $Source: n:/project/lib/src/ui/RCS/slider.h $
24  * $Revision: 1.12 $
25  * $Author: dc $
26  * $Date: 1993/10/11 20:27:33 $
27  *
28  * $Log: slider.h $
29  * Revision 1.12  1993/10/11  20:27:33  dc
30  * Angle is fun, fun fun fun
31  *
32  * Revision 1.11  1993/04/29  19:04:24  xemu
33  * resource.h removed
34  *
35  * Revision 1.10  1993/04/28  14:40:21  mahk
36  * Preparing for second exodus
37  *
38  * Revision 1.9  1993/04/27  16:38:19  xemu
39  * resource ripout
40  *
41  * Revision 1.8  1993/04/22  15:05:28  xemu
42  * creation from mfd
43  *
44  * Revision 1.7  1993/04/21  11:32:05  xemu
45  * Revised to TNG
46  *
47  * Revision 1.6  1993/04/12  12:08:13  xemu
48  * SL_CHANGE
49  *
50  * Revision 1.5  1993/04/02  14:40:30  xemu
51  * Style defines
52  *
53  * Revision 1.4  1993/04/01  13:46:01  xemu
54  * made increm and decrem CBs public
55  *
56  * Revision 1.3  1993/03/31  12:48:49  xemu
57  * added keyboard constants
58  *
59  * Revision 1.2  1993/03/27  18:08:58  unknown
60  * Added SL_ANY_SLIDER
61  *
62  * Revision 1.1  1993/03/26  17:13:02  xemu
63  * Initial revision
64  *
65  *
66  */
67 
68 // Includes
69 #include "lg.h"  // every file should have this
70 #include "tngslidr.h"
71 #include "gadgets.h"
72 
73 // C Library Includes
74 
75 // System Library Includes
76 
77 // Master Game Includes
78 
79 // Game Library Includes
80 
81 // Game Object Includes
82 
83 // Defines
84 // #define SL_RES_LEFT   REF_IMG_bmCursorLeft
85 // #define SL_RES_RIGHT  REF_IMG_bmCursorRight
86 // #define SL_RES_UP     REF_IMG_bmCursorUp
87 // #define SL_RES_DOWN   REF_IMG_bmCursorDown
88 // #define SL_RES_SLIDER REF_IMG_bmHelmTinyHead
89 
90 // #define SL_RES_LEFT   REF_IMG_iconArrowLt
91 // #define SL_RES_RIGHT  REF_IMG_iconArrowRt
92 // #define SL_RES_UP     REF_IMG_iconArrowUp
93 // #define SL_RES_DOWN   REF_IMG_iconArrowDn
94 // #define SL_RES_SLIDER REF_IMG_bmHelmTinyHead
95 
96 #define SL_VERTICAL  TNG_SL_VERTICAL
97 #define SL_HORIZONTAL TNG_SL_HORIZONTAL
98 
99 #define SL_VALUE(x) ((TNG_slider *)((x)->tng_data->type_data))->value
100 #define SL_ALIGNMENT(x) ((TNG_slider *)((x)->tng_data->type_data))->alignment
101 #define SL_MAX(x) ((TNG_slider *)((x)->tng_data->type_data))->max
102 #define SL_MIN(x) ((TNG_slider *)((x)->tng_data->type_data))->min
103 #define SL_INCREM(x) ((TNG_slider *)((x)->tng_data->type_data))->increm
104 #define SL_STYLE(x) ((TNG_slider *)((x)->tng_data->type_data))->style
105 #define SL_CHANGE(x) ((TNG_slider *)((x)->tng_data->type_data))->change_flag
106 
107 // Prototypes
108 Gadget *gad_slider_create(Gadget *parent, LGRect *dim, int z, int alignment, int increment,
109    int min, int max, TNGStyle *sty, char *name);
110 
111 Gadget *gad_slider_create_full(Gadget *parent, LGRect *dim, int z, int alignment, int increment,
112    int min, int max, TNGStyle *sty, char *name, Ref res_left, Ref res_right, Ref res_up,
113    Ref res_down, Ref res_slider);
114 
115 Gadget *gad_slider_create_from_tng(void *ui_data, LGPoint loc, TNG **pptng, TNGStyle *sty, int alignemnt, int min, int max,
116    int value, int increment, LGPoint size);
117 
118 // Globals
119 
120 #endif // __SLIDER_H
121 
122