1 /*
2 Copyright (C) 2019-2021, Dirk Krause
3 SPDX-License-Identifier: BSD-3-Clause
4 */
5 
6 /*
7 	WARNING: This file was generated by the dkct program (see
8 	http://dktools.sourceforge.net/ for details).
9 	Changes you make here will be lost if dkct is run again!
10 	You should modify the original source and run dkct on it.
11 	Original source: WxdkdrawDlgMiterLimit.wxc
12 */
13 
14 /**	@file WxdkdrawDlgMiterLimit.h Header file for the WxdkdrawDlgMiterLimit module.
15 */
16 
17 #ifndef WXDKDRAWDLGMITERLIMIT_H_INCLUDED
18 /** Avoid multiple inclusions. */
19 #define WXDKDRAWDLGMITERLIMIT_H_INCLUDED 1
20 
21 
22 #ifndef	WXDKDRAW_H_INCLUDED
23 #include <wxdkdraw/wxdkdraw.h>
24 #endif
25 
26 #ifndef	WXDKDRAWFRAME_H_INCLUDED
27 #include <wxdkdraw/WxdkdrawFrame.h>
28 #endif
29 
30 
31 
32 
33 /**	Dialog to set miter limit.
34 */
35 class WxdkdrawDlgMiterLimit : public wxDialog
36 {
37 	private:
38 
39 		/**	Events to handle.
40 		*/
41 #if	wxCHECK_VERSION(3,0,0)
42 		wxDECLARE_EVENT_TABLE();
43 #else
44 		DECLARE_EVENT_TABLE()
45 #endif
46 
47 	protected:
48 
49 		/**	Program main window
50 		*/
51 		WxdkdrawFrame			*m_pParent;
52 
53 		/**	Object to modify, either drawing element or default style object.
54 		*/
55 		Wxd_object_t			*m_pObject;
56 
57 		/**	Original miter limit from object.
58 		*/
59 		uint8_t					 m_uLimitOriginal;
60 
61 		/**	New miter limit set up in dialog.
62 		*/
63 		uint8_t					 m_uLimitCurrent;
64 
65 		/**	Is drawing element (true) or default style object (false).
66 		*/
67 		bool					 m_bDrwElem;
68 
69 	public:
70 
71 		/**	Window IDs used in this dialog.
72 		*/
73 		enum {
74 			WXD_ID_SL_ML	= (wxID_HIGHEST + 1)	/**< Slider change. */
75 		};
76 
77 		/**	Constructor.
78 			@param	pParent		Application main window.
79 			@param	pObject		Object to modify.
80 			@param	pText		Localized text fragments.
81 		*/
82 		WxdkdrawDlgMiterLimit(
83 			WxdkdrawFrame			*pParent,
84 			Wxd_object_t			*pObject,
85 			wxChar const * const	*pTexts,
86 			bool					 bDrwElem
87 		);
88 
89 		/**	Handler for OK button.
90 			@param	event	Event to process.
91 		*/
92 		void
93         OnOK(wxCommandEvent & event);
94 
95 		/**	Handler for Cancel button.
96 			@param	event	Event to process.
97 		*/
98 		void
99         OnCancel(wxCommandEvent & event);
100 
101 		/**	Handler for spin control change.
102 		*/
103 		void
104 		OnSpin(wxSpinEvent & event);
105 
106     /**	Flag: GUI ok.
107     */
108     bool dkctGUILayoutOK;
109 
110     /**	GUI element sizerHorizontal.
111     */
112     wxBoxSizer *sizerHorizontal;
113 
114     /**	GUI element sizerVertical.
115     */
116     wxBoxSizer *sizerVertical;
117 
118     /**	GUI element sizerInput.
119     */
120     wxBoxSizer *sizerInput;
121 
122     /**	GUI element sizerButtons.
123     */
124     wxStdDialogButtonSizer *sizerButtons;
125 
126     /**	GUI element labelValue.
127     */
128     wxStaticText *labelValue;
129 
130     /**	GUI element spinValue.
131     */
132     wxSpinCtrl *spinValue;
133 
134     /**	GUI element buttonOK.
135     */
136     wxButton *buttonOK;
137 
138     /**	GUI element buttonCancel.
139     */
140     wxButton *buttonCancel;
141 
142 };
143 
144 
145 
146 #endif
147