src/gldraw.h

changeset 195
7a776f6b0d2a
parent 194
cfe9ae5f1124
child 196
47f4f4543152
equal deleted inserted replaced
194:cfe9ae5f1124 195:7a776f6b0d2a
19 #ifndef GLDRAW_H 19 #ifndef GLDRAW_H
20 #define GLDRAW_H 20 #define GLDRAW_H
21 21
22 #include <QGLWidget> 22 #include <QGLWidget>
23 #include <qtimer.h> 23 #include <qtimer.h>
24 #include <qdialog.h>
24 #include "common.h" 25 #include "common.h"
25 #include "ldtypes.h" 26 #include "ldtypes.h"
27
28 class RadioBox;
29 class QDoubleSpinBox;
30 class QSpinBox;
31 class QLineEdit;
26 32
27 // ============================================================================= 33 // =============================================================================
28 // GLRenderer 34 // GLRenderer
29 // 35 //
30 // The main renderer object, draws the brick on the screen, manages the camera 36 // The main renderer object, draws the brick on the screen, manages the camera
50 GLRenderer (QWidget* parent = null); 56 GLRenderer (QWidget* parent = null);
51 ~GLRenderer (); 57 ~GLRenderer ();
52 58
53 void beginPlaneDraw (); 59 void beginPlaneDraw ();
54 Camera camera () const { return m_camera; } 60 Camera camera () const { return m_camera; }
61 Axis cameraAxis (bool y);
62 void clearOverlay ();
55 void compileObject (LDObject* obj); 63 void compileObject (LDObject* obj);
56 void compileAllObjects (); 64 void compileAllObjects ();
57 void endPlaneDraw (bool accept); 65 void endPlaneDraw (bool accept);
58 QColor getMainColor (); 66 QColor getMainColor ();
59 void hardRefresh (); 67 void hardRefresh ();
61 void refresh (); 69 void refresh ();
62 void resetAngles (); 70 void resetAngles ();
63 uchar* screencap (ushort& w, ushort& h); 71 uchar* screencap (ushort& w, ushort& h);
64 void setBackground (); 72 void setBackground ();
65 void setCamera (const GLRenderer::Camera cam); 73 void setCamera (const GLRenderer::Camera cam);
74 void setupOverlay ();
66 void setZoom (const double zoom) { m_zoom = zoom; } 75 void setZoom (const double zoom) { m_zoom = zoom; }
67 void setWireframe (const bool set);
68 bool wireframe () const;
69 double zoom () const { return m_zoom; } 76 double zoom () const { return m_zoom; }
70 77
71 static void deleteLists (LDObject* obj); 78 static void deleteLists (LDObject* obj);
72 79
73 protected: 80 protected:
121 GL::PickList, 128 GL::PickList,
122 GL::BFCFrontList, 129 GL::BFCFrontList,
123 GL::BFCBackList, 130 GL::BFCBackList,
124 }; 131 };
125 132
133 class OverlayDialog : public QDialog {
134 Q_OBJECT
135
136 public:
137 explicit OverlayDialog (QWidget* parent = null, Qt::WindowFlags f = 0);
138
139 str fpath () const;
140 ushort ofsx () const;
141 ushort ofsy () const;
142 double lwidth () const;
143 double lheight () const;
144 GL::Camera camera () const;
145
146 public slots:
147 void slot_fpath () const;
148 void slot_help () const;
149
150 private:
151 RadioBox* rb_camera;
152 QPushButton* btn_fpath;
153 QLineEdit* le_fpath;
154 QSpinBox* sb_ofsx, *sb_ofsy;
155 QDoubleSpinBox* dsb_lwidth, *dsb_lheight;
156 };
157
126 #endif // GLDRAW_H 158 #endif // GLDRAW_H

mercurial