button bug fix
[wxWidgets.git] / include / wx / aui / auibook.h
1 ///////////////////////////////////////////////////////////////////////////////
2 // Name: wx/aui/auibook.h
3 // Purpose: wxaui: wx advanced user interface - notebook
4 // Author: Benjamin I. Williams
5 // Modified by:
6 // Created: 2006-06-28
7 // Copyright: (C) Copyright 2006, Kirix Corporation, All Rights Reserved.
8 // Licence: wxWindows Library Licence, Version 3.1
9 ///////////////////////////////////////////////////////////////////////////////
10
11
12
13 #ifndef _WX_AUINOTEBOOK_H_
14 #define _WX_AUINOTEBOOK_H_
15
16 // ----------------------------------------------------------------------------
17 // headers
18 // ----------------------------------------------------------------------------
19
20 #include "wx/defs.h"
21
22 #if wxUSE_AUI
23
24 #include "wx/aui/framemanager.h"
25 #include "wx/aui/dockart.h"
26 #include "wx/aui/floatpane.h"
27 #include "wx/control.h"
28
29
30 class wxAuiNotebook;
31
32
33 enum wxAuiNotebookOption
34 {
35 wxAUI_NB_TOP = 1 << 0,
36 wxAUI_NB_LEFT = 1 << 1, // not implemented yet
37 wxAUI_NB_RIGHT = 1 << 2, // not implemented yet
38 wxAUI_NB_BOTTOM = 1 << 3, // not implemented yet
39 wxAUI_NB_TAB_SPLIT = 1 << 4,
40 wxAUI_NB_TAB_MOVE = 1 << 5,
41 wxAUI_NB_TAB_EXTERNAL_MOVE = 1 << 6,
42 wxAUI_NB_TAB_FIXED_WIDTH = 1 << 7,
43 wxAUI_NB_SCROLL_BUTTONS = 1 << 8,
44 wxAUI_NB_WINDOWLIST_BUTTON = 1 << 9,
45 wxAUI_NB_CLOSE_BUTTON = 1 << 10,
46 wxAUI_NB_CLOSE_ON_ACTIVE_TAB = 1 << 11,
47 wxAUI_NB_CLOSE_ON_ALL_TABS = 1 << 12,
48
49
50 wxAUI_NB_DEFAULT_STYLE = wxAUI_NB_TOP |
51 wxAUI_NB_TAB_SPLIT |
52 wxAUI_NB_TAB_MOVE |
53 wxAUI_NB_SCROLL_BUTTONS |
54 wxAUI_NB_CLOSE_ON_ACTIVE_TAB
55 };
56
57
58
59
60 // tab art class
61
62 class WXDLLIMPEXP_AUI wxAuiTabArt
63 {
64 public:
65
66 wxAuiTabArt() { }
67 virtual ~wxAuiTabArt() { }
68
69 virtual wxAuiTabArt* Clone() = 0;
70 virtual void SetFlags(unsigned int flags) = 0;
71
72 virtual void SetSizingInfo(const wxSize& tab_ctrl_size,
73 size_t tab_count) = 0;
74
75 virtual void SetNormalFont(const wxFont& font) = 0;
76 virtual void SetSelectedFont(const wxFont& font) = 0;
77 virtual void SetMeasuringFont(const wxFont& font) = 0;
78
79 virtual void DrawBackground(
80 wxDC& dc,
81 wxWindow* wnd,
82 const wxRect& rect) = 0;
83
84 virtual void DrawTab(wxDC& dc,
85 wxWindow* wnd,
86 const wxRect& in_rect,
87 const wxString& caption,
88 bool active,
89 int close_button_state,
90 wxRect* out_tab_rect,
91 wxRect* out_button_rect,
92 int* x_extent) = 0;
93
94 virtual void DrawButton(
95 wxDC& dc,
96 wxWindow* wnd,
97 const wxRect& in_rect,
98 int bitmap_id,
99 int button_state,
100 int orientation,
101 const wxBitmap& bitmap_override,
102 wxRect* out_rect) = 0;
103
104 virtual int GetIndentSize() = 0;
105
106 virtual wxSize GetTabSize(
107 wxDC& dc,
108 wxWindow* wnd,
109 const wxString& caption,
110 bool active,
111 int close_button_state,
112 int* x_extent) = 0;
113
114 virtual int ShowWindowList(
115 wxWindow* wnd,
116 const wxArrayString& items,
117 int active_idx) = 0;
118
119 virtual int GetBestTabCtrlSize(wxWindow* wnd) = 0;
120 };
121
122
123 class WXDLLIMPEXP_AUI wxAuiSimpleTabArt : public wxAuiTabArt
124 {
125
126 public:
127
128 wxAuiSimpleTabArt();
129 virtual ~wxAuiSimpleTabArt();
130
131 wxAuiTabArt* Clone();
132 void SetFlags(unsigned int flags);
133
134 void SetSizingInfo(const wxSize& tab_ctrl_size,
135 size_t tab_count);
136
137 void SetNormalFont(const wxFont& font);
138 void SetSelectedFont(const wxFont& font);
139 void SetMeasuringFont(const wxFont& font);
140
141 void DrawBackground(
142 wxDC& dc,
143 wxWindow* wnd,
144 const wxRect& rect);
145
146 void DrawTab(wxDC& dc,
147 wxWindow* wnd,
148 const wxRect& in_rect,
149 const wxString& caption,
150 bool active,
151 int close_button_state,
152 wxRect* out_tab_rect,
153 wxRect* out_button_rect,
154 int* x_extent);
155
156 void DrawButton(
157 wxDC& dc,
158 wxWindow* wnd,
159 const wxRect& in_rect,
160 int bitmap_id,
161 int button_state,
162 int orientation,
163 const wxBitmap& bitmap_override,
164 wxRect* out_rect);
165
166 int GetIndentSize();
167
168 wxSize GetTabSize(
169 wxDC& dc,
170 wxWindow* wnd,
171 const wxString& caption,
172 bool active,
173 int close_button_state,
174 int* x_extent);
175
176 int ShowWindowList(
177 wxWindow* wnd,
178 const wxArrayString& items,
179 int active_idx);
180
181 int GetBestTabCtrlSize(wxWindow* wnd);
182
183 protected:
184
185 wxFont m_normal_font;
186 wxFont m_selected_font;
187 wxFont m_measuring_font;
188 wxPen m_normal_bkpen;
189 wxPen m_selected_bkpen;
190 wxBrush m_normal_bkbrush;
191 wxBrush m_selected_bkbrush;
192 wxBrush m_bkbrush;
193 wxBitmap m_active_close_bmp;
194 wxBitmap m_disabled_close_bmp;
195 wxBitmap m_active_left_bmp;
196 wxBitmap m_disabled_left_bmp;
197 wxBitmap m_active_right_bmp;
198 wxBitmap m_disabled_right_bmp;
199 wxBitmap m_active_windowlist_bmp;
200 wxBitmap m_disabled_windowlist_bmp;
201
202 int m_fixed_tab_width;
203 unsigned int m_flags;
204 };
205
206
207 class WXDLLIMPEXP_AUI wxAuiDefaultTabArt : public wxAuiTabArt
208 {
209
210 public:
211
212 wxAuiDefaultTabArt();
213 virtual ~wxAuiDefaultTabArt();
214
215 wxAuiTabArt* Clone();
216 void SetFlags(unsigned int flags);
217 void SetSizingInfo(const wxSize& tab_ctrl_size,
218 size_t tab_count);
219
220 void SetNormalFont(const wxFont& font);
221 void SetSelectedFont(const wxFont& font);
222 void SetMeasuringFont(const wxFont& font);
223
224 void DrawBackground(
225 wxDC& dc,
226 wxWindow* wnd,
227 const wxRect& rect);
228
229 void DrawTab(wxDC& dc,
230 wxWindow* wnd,
231 const wxRect& in_rect,
232 const wxString& caption,
233 bool active,
234 int close_button_state,
235 wxRect* out_tab_rect,
236 wxRect* out_button_rect,
237 int* x_extent);
238
239 void DrawButton(
240 wxDC& dc,
241 wxWindow* wnd,
242 const wxRect& in_rect,
243 int bitmap_id,
244 int button_state,
245 int orientation,
246 const wxBitmap& bitmap_override,
247 wxRect* out_rect);
248
249 int GetIndentSize();
250
251 wxSize GetTabSize(
252 wxDC& dc,
253 wxWindow* wnd,
254 const wxString& caption,
255 bool active,
256 int close_button_state,
257 int* x_extent);
258
259 int ShowWindowList(
260 wxWindow* wnd,
261 const wxArrayString& items,
262 int active_idx);
263
264 int GetBestTabCtrlSize(wxWindow* wnd);
265
266 protected:
267
268 wxFont m_normal_font;
269 wxFont m_selected_font;
270 wxFont m_measuring_font;
271 wxPen m_normal_bkpen;
272 wxPen m_selected_bkpen;
273 wxBrush m_normal_bkbrush;
274 wxBrush m_selected_bkbrush;
275 wxBrush m_bkbrush;
276 wxBitmap m_active_close_bmp;
277 wxBitmap m_disabled_close_bmp;
278 wxBitmap m_active_left_bmp;
279 wxBitmap m_disabled_left_bmp;
280 wxBitmap m_active_right_bmp;
281 wxBitmap m_disabled_right_bmp;
282 wxBitmap m_active_windowlist_bmp;
283 wxBitmap m_disabled_windowlist_bmp;
284
285 int m_fixed_tab_width;
286 unsigned int m_flags;
287 };
288
289
290
291
292 // event declarations/classes
293
294 class WXDLLIMPEXP_AUI wxAuiNotebookEvent : public wxNotifyEvent
295 {
296 public:
297 wxAuiNotebookEvent(wxEventType command_type = wxEVT_NULL,
298 int win_id = 0)
299 : wxNotifyEvent(command_type, win_id)
300 {
301 old_selection = -1;
302 selection = -1;
303 drag_source = NULL;
304 }
305 #ifndef SWIG
306 wxAuiNotebookEvent(const wxAuiNotebookEvent& c) : wxNotifyEvent(c)
307 {
308 old_selection = c.old_selection;
309 selection = c.selection;
310 drag_source = c.drag_source;
311 }
312 #endif
313 wxEvent *Clone() const { return new wxAuiNotebookEvent(*this); }
314
315 void SetSelection(int s) { selection = s; m_commandInt = s; }
316 int GetSelection() const { return selection; }
317
318 void SetOldSelection(int s) { old_selection = s; }
319 int GetOldSelection() const { return old_selection; }
320
321 void SetDragSource(wxAuiNotebook* s) { drag_source = s; }
322 wxAuiNotebook* GetDragSource() const { return drag_source; }
323
324 public:
325 int old_selection;
326 int selection;
327 wxAuiNotebook* drag_source;
328
329 #ifndef SWIG
330 private:
331 DECLARE_DYNAMIC_CLASS_NO_ASSIGN(wxAuiNotebookEvent)
332 #endif
333 };
334
335
336
337
338
339 class WXDLLIMPEXP_AUI wxAuiNotebookPage
340 {
341 public:
342 wxWindow* window; // page's associated window
343 wxString caption; // caption displayed on the tab
344 wxBitmap bitmap; // tab's bitmap
345 wxRect rect; // tab's hit rectangle
346 bool active; // true if the page is currently active
347 };
348
349 class WXDLLIMPEXP_AUI wxAuiTabContainerButton
350 {
351 public:
352
353 int id; // button's id
354 int cur_state; // current state (normal, hover, pressed, etc.)
355 int location; // buttons location (wxLEFT, wxRIGHT, or wxCENTER)
356 wxBitmap bitmap; // button's hover bitmap
357 wxBitmap dis_bitmap; // button's disabled bitmap
358 wxRect rect; // button's hit rectangle
359 };
360
361
362 #ifndef SWIG
363 WX_DECLARE_USER_EXPORTED_OBJARRAY(wxAuiNotebookPage, wxAuiNotebookPageArray, WXDLLIMPEXP_AUI);
364 WX_DECLARE_USER_EXPORTED_OBJARRAY(wxAuiTabContainerButton, wxAuiTabContainerButtonArray, WXDLLIMPEXP_AUI);
365 #endif
366
367
368 class WXDLLIMPEXP_AUI wxAuiTabContainer
369 {
370 public:
371
372 wxAuiTabContainer();
373 virtual ~wxAuiTabContainer();
374
375 void SetArtProvider(wxAuiTabArt* art);
376 wxAuiTabArt* GetArtProvider();
377
378 void SetFlags(unsigned int flags);
379 unsigned int GetFlags() const;
380
381 bool AddPage(wxWindow* page, const wxAuiNotebookPage& info);
382 bool InsertPage(wxWindow* page, const wxAuiNotebookPage& info, size_t idx);
383 bool MovePage(wxWindow* page, size_t new_idx);
384 bool RemovePage(wxWindow* page);
385 bool SetActivePage(wxWindow* page);
386 bool SetActivePage(size_t page);
387 void SetNoneActive();
388 int GetActivePage() const;
389 bool TabHitTest(int x, int y, wxWindow** hit) const;
390 bool ButtonHitTest(int x, int y, wxAuiTabContainerButton** hit) const;
391 wxWindow* GetWindowFromIdx(size_t idx) const;
392 int GetIdxFromWindow(wxWindow* page) const;
393 size_t GetPageCount() const;
394 wxAuiNotebookPage& GetPage(size_t idx);
395 wxAuiNotebookPageArray& GetPages();
396 void SetNormalFont(const wxFont& normal_font);
397 void SetSelectedFont(const wxFont& selected_font);
398 void SetMeasuringFont(const wxFont& measuring_font);
399 void DoShowHide();
400 void SetRect(const wxRect& rect);
401
402 void RemoveButton(int id);
403 void AddButton(int id,
404 int location,
405 const wxBitmap& normal_bitmap = wxNullBitmap,
406 const wxBitmap& disabled_bitmap = wxNullBitmap);
407
408 size_t GetTabOffset() const;
409 void SetTabOffset(size_t offset);
410
411 protected:
412
413 virtual void Render(wxDC* dc, wxWindow* wnd);
414
415 protected:
416
417 wxAuiTabArt* m_art;
418 wxAuiNotebookPageArray m_pages;
419 wxAuiTabContainerButtonArray m_buttons;
420 wxAuiTabContainerButtonArray m_tab_close_buttons;
421 wxRect m_rect;
422 size_t m_tab_offset;
423 unsigned int m_flags;
424 };
425
426
427
428 class WXDLLIMPEXP_AUI wxAuiTabCtrl : public wxControl,
429 public wxAuiTabContainer
430 {
431 public:
432
433 wxAuiTabCtrl(wxWindow* parent,
434 wxWindowID id = wxID_ANY,
435 const wxPoint& pos = wxDefaultPosition,
436 const wxSize& size = wxDefaultSize,
437 long style = 0);
438
439 ~wxAuiTabCtrl();
440
441 protected:
442
443 void OnPaint(wxPaintEvent& evt);
444 void OnEraseBackground(wxEraseEvent& evt);
445 void OnSize(wxSizeEvent& evt);
446 void OnLeftDown(wxMouseEvent& evt);
447 void OnLeftUp(wxMouseEvent& evt);
448 void OnMotion(wxMouseEvent& evt);
449 void OnLeaveWindow(wxMouseEvent& evt);
450 void OnButton(wxAuiNotebookEvent& evt);
451
452
453 protected:
454
455 wxPoint m_click_pt;
456 wxWindow* m_click_tab;
457 bool m_is_dragging;
458 wxAuiTabContainerButton* m_hover_button;
459 wxAuiTabContainerButton* m_pressed_button;
460
461 #ifndef SWIG
462 DECLARE_CLASS(wxAuiTabCtrl)
463 DECLARE_EVENT_TABLE()
464 #endif
465 };
466
467
468
469
470 class WXDLLIMPEXP_AUI wxAuiNotebook : public wxControl
471 {
472
473 public:
474
475 wxAuiNotebook();
476
477 wxAuiNotebook(wxWindow* parent,
478 wxWindowID id = wxID_ANY,
479 const wxPoint& pos = wxDefaultPosition,
480 const wxSize& size = wxDefaultSize,
481 long style = wxAUI_NB_DEFAULT_STYLE);
482
483 virtual ~wxAuiNotebook();
484
485 bool Create(wxWindow* parent,
486 wxWindowID id = wxID_ANY,
487 const wxPoint& pos = wxDefaultPosition,
488 const wxSize& size = wxDefaultSize,
489 long style = 0);
490
491 bool AddPage(wxWindow* page,
492 const wxString& caption,
493 bool select = false,
494 const wxBitmap& bitmap = wxNullBitmap);
495
496 bool InsertPage(size_t page_idx,
497 wxWindow* page,
498 const wxString& caption,
499 bool select = false,
500 const wxBitmap& bitmap = wxNullBitmap);
501
502 bool DeletePage(size_t page);
503 bool RemovePage(size_t page);
504
505 void SetWindowStyleFlag(long style);
506
507 bool SetPageText(size_t page, const wxString& text);
508 size_t SetSelection(size_t new_page);
509 int GetSelection() const;
510 size_t GetPageCount() const;
511 wxWindow* GetPage(size_t page_idx) const;
512
513
514 void SetArtProvider(wxAuiTabArt* art);
515 wxAuiTabArt* GetArtProvider();
516
517 protected:
518
519 wxAuiTabCtrl* GetTabCtrlFromPoint(const wxPoint& pt);
520 wxWindow* GetTabFrameFromTabCtrl(wxWindow* tab_ctrl);
521 wxAuiTabCtrl* GetActiveTabCtrl();
522 bool FindTab(wxWindow* page, wxAuiTabCtrl** ctrl, int* idx);
523 void RemoveEmptyTabFrames();
524
525 protected:
526
527 void DoSizing();
528 void InitNotebook(long style);
529
530 void OnChildFocus(wxChildFocusEvent& evt);
531 void OnRender(wxAuiManagerEvent& evt);
532 void OnEraseBackground(wxEraseEvent& evt);
533 void OnSize(wxSizeEvent& evt);
534 void OnTabClicked(wxCommandEvent& evt);
535 void OnTabBeginDrag(wxCommandEvent& evt);
536 void OnTabDragMotion(wxCommandEvent& evt);
537 void OnTabEndDrag(wxCommandEvent& evt);
538 void OnTabButton(wxCommandEvent& evt);
539
540 protected:
541
542 wxAuiManager m_mgr;
543 wxAuiTabContainer m_tabs;
544 int m_curpage;
545 int m_tab_id_counter;
546 wxWindow* m_dummy_wnd;
547
548 wxFont m_selected_font;
549 wxFont m_normal_font;
550 int m_tab_ctrl_height;
551
552 int m_last_drag_x;
553 unsigned int m_flags;
554
555 #ifndef SWIG
556 DECLARE_CLASS(wxAuiNotebook)
557 DECLARE_EVENT_TABLE()
558 #endif
559 };
560
561
562
563
564 // wx event machinery
565
566 #ifndef SWIG
567
568 BEGIN_DECLARE_EVENT_TYPES()
569 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_AUI, wxEVT_COMMAND_AUINOTEBOOK_PAGE_CLOSE, 0)
570 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_AUI, wxEVT_COMMAND_AUINOTEBOOK_PAGE_CHANGED, 0)
571 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_AUI, wxEVT_COMMAND_AUINOTEBOOK_PAGE_CHANGING, 0)
572 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_AUI, wxEVT_COMMAND_AUINOTEBOOK_BUTTON, 0)
573 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_AUI, wxEVT_COMMAND_AUINOTEBOOK_BEGIN_DRAG, 0)
574 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_AUI, wxEVT_COMMAND_AUINOTEBOOK_END_DRAG, 0)
575 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_AUI, wxEVT_COMMAND_AUINOTEBOOK_DRAG_MOTION, 0)
576 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_AUI, wxEVT_COMMAND_AUINOTEBOOK_ALLOW_DND, 0)
577 END_DECLARE_EVENT_TYPES()
578
579 typedef void (wxEvtHandler::*wxAuiNotebookEventFunction)(wxAuiNotebookEvent&);
580
581 #define wxAuiNotebookEventHandler(func) \
582 (wxObjectEventFunction)(wxEventFunction)wxStaticCastEvent(wxAuiNotebookEventFunction, &func)
583
584 #define EVT_AUINOTEBOOK_PAGE_CLOSE(winid, fn) \
585 wx__DECLARE_EVT1(wxEVT_COMMAND_AUINOTEBOOK_PAGE_CLOSE, winid, wxAuiNotebookEventHandler(fn))
586 #define EVT_AUINOTEBOOK_PAGE_CHANGED(winid, fn) \
587 wx__DECLARE_EVT1(wxEVT_COMMAND_AUINOTEBOOK_PAGE_CHANGED, winid, wxAuiNotebookEventHandler(fn))
588 #define EVT_AUINOTEBOOK_PAGE_CHANGING(winid, fn) \
589 wx__DECLARE_EVT1(wxEVT_COMMAND_AUINOTEBOOK_PAGE_CHANGING, winid, wxAuiNotebookEventHandler(fn))
590 #define EVT_AUINOTEBOOK_BUTTON(winid, fn) \
591 wx__DECLARE_EVT1(wxEVT_COMMAND_AUINOTEBOOK_BUTTON, winid, wxAuiNotebookEventHandler(fn))
592 #define EVT_AUINOTEBOOK_BEGIN_DRAG(winid, fn) \
593 wx__DECLARE_EVT1(wxEVT_COMMAND_AUINOTEBOOK_BEGIN_DRAG, winid, wxAuiNotebookEventHandler(fn))
594 #define EVT_AUINOTEBOOK_END_DRAG(winid, fn) \
595 wx__DECLARE_EVT1(wxEVT_COMMAND_AUINOTEBOOK_END_DRAG, winid, wxAuiNotebookEventHandler(fn))
596 #define EVT_AUINOTEBOOK_DRAG_MOTION(winid, fn) \
597 wx__DECLARE_EVT1(wxEVT_COMMAND_AUINOTEBOOK_DRAG_MOTION, winid, wxAuiNotebookEventHandler(fn))
598 #define EVT_AUINOTEBOOK_ALLOW_DND(winid, fn) \
599 wx__DECLARE_EVT1(wxEVT_COMMAND_AUINOTEBOOK_ALLOW_DND, winid, wxAuiNotebookEventHandler(fn))
600
601 #else
602
603 // wxpython/swig event work
604 %constant wxEventType wxEVT_COMMAND_AUINOTEBOOK_PAGE_CLOSE;
605 %constant wxEventType wxEVT_COMMAND_AUINOTEBOOK_PAGE_CHANGED;
606 %constant wxEventType wxEVT_COMMAND_AUINOTEBOOK_PAGE_CHANGING;
607 %constant wxEventType wxEVT_COMMAND_AUINOTEBOOK_BUTTON;
608 %constant wxEventType wxEVT_COMMAND_AUINOTEBOOK_BEGIN_DRAG;
609 %constant wxEventType wxEVT_COMMAND_AUINOTEBOOK_END_DRAG;
610 %constant wxEventType wxEVT_COMMAND_AUINOTEBOOK_DRAG_MOTION;
611 %constant wxEventType wxEVT_COMMAND_AUINOTEBOOK_ALLOW_DND;
612
613 %pythoncode {
614 EVT_AUINOTEBOOK_PAGE_CLOSE = wx.PyEventBinder( wxEVT_COMMAND_AUINOTEBOOK_PAGE_CLOSE, 1 )
615 EVT_AUINOTEBOOK_PAGE_CHANGED = wx.PyEventBinder( wxEVT_COMMAND_AUINOTEBOOK_PAGE_CHANGED, 1 )
616 EVT_AUINOTEBOOK_PAGE_CHANGING = wx.PyEventBinder( wxEVT_COMMAND_AUINOTEBOOK_PAGE_CHANGING, 1 )
617 EVT_AUINOTEBOOK_BUTTON = wx.PyEventBinder( wxEVT_COMMAND_AUINOTEBOOK_BUTTON, 1 )
618 EVT_AUINOTEBOOK_BEGIN_DRAG = wx.PyEventBinder( wxEVT_COMMAND_AUINOTEBOOK_BEGIN_DRAG, 1 )
619 EVT_AUINOTEBOOK_END_DRAG = wx.PyEventBinder( wxEVT_COMMAND_AUINOTEBOOK_END_DRAG, 1 )
620 EVT_AUINOTEBOOK_DRAG_MOTION = wx.PyEventBinder( wxEVT_COMMAND_AUINOTEBOOK_DRAG_MOTION, 1 )
621 EVT_AUINOTEBOOK_ALLOW_DND = wx.PyEventBinder( wxEVT_COMMAND_AUINOTEBOOK_ALLOW_DND, 1 )
622 }
623 #endif
624
625
626 #endif // wxUSE_AUI
627 #endif // _WX_AUINOTEBOOK_H_