Mercurial > projects > qtd
comparison examples/opengl/hellogl/window.d @ 1:e78566595089
initial import
author | mandel |
---|---|
date | Mon, 11 May 2009 16:01:50 +0000 |
parents | |
children | 8aaa84d48451 |
comparison
equal
deleted
inserted
replaced
0:36fb74dc547d | 1:e78566595089 |
---|---|
1 /**************************************************************************** | |
2 ** | |
3 ** Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies). | |
4 ** Contact: Qt Software Information (qt-info@nokia.com) | |
5 ** | |
6 ** This file is part of the example classes of the Qt Toolkit. | |
7 ** | |
8 ** Commercial Usage | |
9 ** Licensees holding valid Qt Commercial licenses may use this file in | |
10 ** accordance with the Qt Commercial License Agreement provided with the | |
11 ** Software or, alternatively, in accordance with the terms contained in | |
12 ** a written agreement between you and Nokia. | |
13 ** | |
14 ** | |
15 ** GNU General Public License Usage | |
16 ** Alternatively, this file may be used under the terms of the GNU | |
17 ** General Public License versions 2.0 or 3.0 as published by the Free | |
18 ** Software Foundation and appearing in the file LICENSE.GPL included in | |
19 ** the packaging of this file. Please review the following information | |
20 ** to ensure GNU General Public Licensing requirements will be met: | |
21 ** http://www.fsf.org/licensing/licenses/info/GPLv2.html and | |
22 ** http://www.gnu.org/copyleft/gpl.html. In addition, as a special | |
23 ** exception, Nokia gives you certain additional rights. These rights | |
24 ** are described in the Nokia Qt GPL Exception version 1.3, included in | |
25 ** the file GPL_EXCEPTION.txt in this package. | |
26 ** | |
27 ** Qt for Windows(R) Licensees | |
28 ** As a special exception, Nokia, as the sole copyright holder for Qt | |
29 ** Designer, grants users of the Qt/Eclipse Integration plug-in the | |
30 ** right for the Qt/Eclipse Integration to link to functionality | |
31 ** provided by Qt Designer and its related libraries. | |
32 ** | |
33 ** If you are unsure which license is appropriate for your use, please | |
34 ** contact the sales department at qt-sales@nokia.com. | |
35 ** | |
36 ****************************************************************************/ | |
37 | |
38 import qt.gui.QWidget; | |
39 import qt.gui.QSlider; | |
40 import qt.gui.QHBoxLayout; | |
41 | |
42 import glwidget; | |
43 | |
44 class Window : public QWidget | |
45 { | |
46 // Q_OBJECT | |
47 | |
48 public: | |
49 this() | |
50 { | |
51 glWidget = new GLWidget; | |
52 | |
53 xSlider = createSlider(); | |
54 ySlider = createSlider(); | |
55 zSlider = createSlider(); | |
56 | |
57 xSlider.valueChanged.connect(&glWidget.setXRotation); | |
58 glWidget.xRotationChanged.connect(&xSlider.setValue); | |
59 ySlider.valueChanged.connect(&glWidget.setYRotation); | |
60 glWidget.yRotationChanged.connect(&ySlider.setValue); | |
61 zSlider.valueChanged.connect(&glWidget.setZRotation); | |
62 glWidget.zRotationChanged.connect(&zSlider.setValue); | |
63 | |
64 QHBoxLayout mainLayout = new QHBoxLayout; | |
65 mainLayout.addWidget(glWidget); | |
66 mainLayout.addWidget(xSlider); | |
67 mainLayout.addWidget(ySlider); | |
68 mainLayout.addWidget(zSlider); | |
69 setLayout(mainLayout); | |
70 | |
71 xSlider.setValue(15 * 16); | |
72 ySlider.setValue(345 * 16); | |
73 zSlider.setValue(0 * 16); | |
74 setWindowTitle(tr("Hello GL")); | |
75 } | |
76 | |
77 private: | |
78 QSlider createSlider() | |
79 { | |
80 auto slider = new QSlider(Qt.Vertical); | |
81 slider.setRange(0, 360 * 16); | |
82 slider.setSingleStep(16); | |
83 slider.setPageStep(15 * 16); | |
84 slider.setTickInterval(15 * 16); | |
85 slider.setTickPosition(QSlider.TicksRight); | |
86 return slider; | |
87 } | |
88 | |
89 GLWidget glWidget; | |
90 QSlider xSlider; | |
91 QSlider ySlider; | |
92 QSlider zSlider; | |
93 } |