]> git.saurik.com Git - wxWidgets.git/blame - contrib/include/wx/ogl/divided.h
setter by ref for
[wxWidgets.git] / contrib / include / wx / ogl / divided.h
CommitLineData
1fc25a89
JS
1/////////////////////////////////////////////////////////////////////////////
2// Name: divided.h
3// Purpose: wxDividedShape
4// Author: Julian Smart
5// Modified by:
6// Created: 12/07/98
7// RCS-ID: $Id$
8// Copyright: (c) Julian Smart
9// Licence: wxWindows licence
10/////////////////////////////////////////////////////////////////////////////
11
12#ifndef _OGL_DIVIDED_H_
13#define _OGL_DIVIDED_H_
14
ab7ce33c 15#if defined(__GNUG__) && !defined(__APPLE__)
5f331691 16#pragma interface "divided.h"
1fc25a89
JS
17#endif
18
5f331691 19
1fc25a89
JS
20/*
21 * Definition of a region
22 *
23 */
24
25/*
26 * Box divided into horizontal regions
27 *
28 */
29
30extern wxFont *g_oglNormalFont;
5f331691 31class WXDLLIMPEXP_OGL wxDividedShape: public wxRectangleShape
1fc25a89
JS
32{
33 DECLARE_DYNAMIC_CLASS(wxDividedShape)
34
35 public:
36 wxDividedShape(double w = 0.0, double h = 0.0);
37 ~wxDividedShape();
38
39 void OnDraw(wxDC& dc);
40 void OnDrawContents(wxDC& dc);
41
42 void SetSize(double w, double h, bool recursive = TRUE);
43
44 void MakeControlPoints();
45 void ResetControlPoints();
46
47 void MakeMandatoryControlPoints();
48 void ResetMandatoryControlPoints();
49
2b5f62a0 50#if wxUSE_PROLOGIO
1fc25a89
JS
51 void WriteAttributes(wxExpr *clause);
52 void ReadAttributes(wxExpr *clause);
53#endif
54
55 void Copy(wxShape &copy);
56
57 // Set all region sizes according to proportions and
58 // this object total size
59 void SetRegionSizes();
60
61 // Edit region colours/styles
62 void EditRegions();
63
64 // Attachment points correspond to regions in the divided box
65 bool GetAttachmentPosition(int attachment, double *x, double *y,
66 int nth = 0, int no_arcs = 1, wxLineShape *line = NULL);
0a2c0398 67 bool AttachmentIsValid(int attachment) const;
1fc25a89
JS
68 int GetNumberOfAttachments() const;
69
70 // Invoke editor on CTRL-right click
71 void OnRightClick(double x, double y, int keys = 0, int attachment = 0);
72};
73
74#endif
75 // _OGL_DIVIDED_H_
76