7
7
This program puts together multiple widgets
8
8
on a single application.
9
9
10
- Version: 0.6 beta
10
+ Version: 0.7 beta
11
11
12
12
Author: Fernando Daniel Jaime
13
13
Last edited: January 2018
25
25
FrameProcessor , HistogramWidget , Player )
26
26
from calculator .calculator import Button , Calculator
27
27
from camera .camera import Camera , ImageSettings , VideoSettings
28
+ from tetrix .tetrix import TetrixWindow , TetrixBoard , TetrixPiece
28
29
29
30
30
31
class Multitool (QMainWindow , QWidget ):
@@ -44,19 +45,22 @@ def __init__(self):
44
45
self .stack3 = QWidget () # Player
45
46
self .stack4 = QWidget () # Calculator
46
47
self .stack5 = QWidget () # Camera
48
+ self .stack6 = QWidget () # Tetrix
47
49
48
50
self .stack1UI () # Mouse Clicker
49
51
self .stack2UI () # Screenshot
50
52
self .stack3UI () # Player
51
53
self .stack4UI () # Calculator
52
54
self .stack5UI () # Camera
55
+ self .stack6UI () # Tetrix
53
56
54
57
self .Stack = QStackedWidget (self )
55
58
self .Stack .addWidget (self .stack1 ) # Mouse Clicker
56
59
self .Stack .addWidget (self .stack2 ) # Screenshot
57
60
self .Stack .addWidget (self .stack3 ) # Player
58
61
self .Stack .addWidget (self .stack4 ) # Calculator
59
62
self .Stack .addWidget (self .stack5 ) # Camera
63
+ self .Stack .addWidget (self .stack6 ) # Tetrix
60
64
61
65
# General actions starts -------------------------------------
62
66
exitAction = QAction (QIcon ('icons/exit.png' ), '&Exit' , self )
@@ -109,6 +113,10 @@ def __init__(self):
109
113
cameraAction = QAction (QIcon ('icons/camera.jpeg' ),'Camera' , self )
110
114
cameraAction .setStatusTip ('Camera' )
111
115
cameraAction .triggered .connect (lambda : self .display (4 ))
116
+
117
+ tetrixAction = QAction (QIcon ('icons/tetrix.png' ),'Tetrix' , self )
118
+ tetrixAction .setStatusTip ('Tetrix' )
119
+ tetrixAction .triggered .connect (lambda : self .display (5 ))
112
120
# Widget actions ends ----------------------------------------
113
121
114
122
# Menu bar creation starts -----------------------------------
@@ -130,6 +138,9 @@ def __init__(self):
130
138
viewMenuWidget .addAction (cameraAction )
131
139
viewMenu .addMenu (viewMenuWidget )
132
140
141
+ gamesMenu = menubar .addMenu ('&Games' )
142
+ gamesMenu .addAction (tetrixAction )
143
+
133
144
helpMenu = menubar .addMenu ('&Help' )
134
145
helpMenu .addAction (aboutAction )
135
146
# Menu bar creation ends -------------------------------------
@@ -145,8 +156,11 @@ def __init__(self):
145
156
self .toolbar2 .addAction (calculatorAction )
146
157
self .toolbar2 .addAction (cameraAction )
147
158
148
- self .toolbar3 = self .addToolBar ('Exit' )
149
- self .toolbar3 .addAction (exitAction )
159
+ self .toolbar3 = self .addToolBar ('Games' )
160
+ self .toolbar3 .addAction (tetrixAction )
161
+
162
+ self .toolbar4 = self .addToolBar ('Exit' )
163
+ self .toolbar4 .addAction (exitAction )
150
164
# Toolbar creation ends -------------------------------------
151
165
152
166
self .setCentralWidget (self .Stack )
@@ -168,10 +182,12 @@ def toggleToolBar(self, state):
168
182
self .toolbar1 .show ()
169
183
self .toolbar2 .show ()
170
184
self .toolbar3 .show ()
185
+ self .toolbar4 .show ()
171
186
else :
172
187
self .toolbar1 .hide ()
173
188
self .toolbar2 .hide ()
174
189
self .toolbar3 .hide ()
190
+ self .toolbar4 .hide ()
175
191
176
192
177
193
def minimizeToTray (self , state ):
@@ -220,6 +236,12 @@ def stack5UI(self):
220
236
self .stack5 .setLayout (self .layout )
221
237
222
238
239
+ def stack6UI (self ):
240
+ self .layout = QHBoxLayout ()
241
+ self .layout .addWidget (TetrixWindow ())
242
+ self .stack6 .setLayout (self .layout )
243
+
244
+
223
245
def display (self ,i ):
224
246
self .Stack .setCurrentIndex (i )
225
247
# Stacked widgets added to layout end------------------------
@@ -271,7 +293,7 @@ def about(self):
271
293
pixmap = QPixmap ('icons/biohazard.svg' )
272
294
msg = QMessageBox (QMessageBox .Information , 'About Multitool' ,
273
295
"<b>Aplication name:</b> Multitool" +
274
- "<br> <b>Version:</b> V0.6 beta" +
296
+ "<br> <b>Version:</b> V0.7 beta" +
275
297
"<br><b>Description:</b> This application puts together many" +
276
298
"<br>widgets into a single application." +
277
299
"<br><b>Details:</b> Programmed and designed with Python 3.5 and PyQt5." +
0 commit comments