Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import os
- import json
- import sys
- from PySide import QtCore, QtGui
- from home import Ui_Home #imports template of splash screen
- from logIn import Ui_LogIn #imports template of login screen
- from secondWindow import Ui_Dialog #imports template of orderscreen
- from settings import Ui_Settings
- class home(QtGui.QMainWindow, Ui_Home):
- def __init__(self, parent = None): #handles all functions and properties that occur at startup, and object events
- super(home, self).__init__(parent)
- self.setupUi(self)
- global admin
- if admin == True:
- self.actionSettings.setEnabled(True)
- self.btnEnter.clicked.connect(self.openSecondWindow)
- self.actionSettings.triggered.connect(self.settingsWindow)
- self.btnLogOut.clicked.connect(self.returnLogin)
- def openSecondWindow(self):
- self.sWindow = secondWindow()
- self.sWindow.show()
- self.hide()
- def settingsWindow(self):
- self.setWindow = settings()
- self.setWindow.show()
- def returnLogin(self):
- self.logIn= logIn()
- self.log.show()
- self.close()
- class logIn(QtGui.QMainWindow, Ui_LogIn):
- def __init__(self):
- super(logIn, self).__init__()
- self.setupUi(self)
- self.btnLogin.clicked.connect(self.openHome)
- def userPass(self):
- users = {"admin":"root", "Josh123":"password"}
- ## counter = 3
- if self.userEntry.text() in users and self.passEntry.text() == users[self.userEntry.text()]:
- if self.userEntry.text() == "admin":
- global admin
- admin = True
- return True
- else:
- global admin
- admin = False
- return True
- else:
- self.textEdit.setPlainText("Incorrect username or password.")
- ## counter -= 1
- def openHome(self):
- userPass = self.userPass()
- if userPass == True:
- print(admin)
- self.home = home(self)
- self.home.show()
- self.hide()
- else:
- print("Login Failed")
- class secondWindow(QtGui.QDialog, Ui_Dialog):
- def __init__(self):
- super(secondWindow, self).__init__()
- self.setupUi(self)
- self.btnBack.clicked.connect(self.returnHome)
- self.btnCheckPrice.clicked.connect(self.calculate)
- def returnHome(self):
- self.home = home()
- self.home.show()
- self.close()
- def calculate(self):
- try:
- width = float(self.widEntry.text())
- height = float(self.heiEntry.text())
- area = width * height
- fee = float(self.feeEntered.text())
- sinSel = 0.01
- douSel = 0.02
- tinSel = 0.005
- if self.sinSel.isChecked() == True:
- cost = fee + (area * sinSel)
- self.totCost.setPlainText('$' + str(round(cost ,2)))
- elif self.douSel.isChecked() == True:
- cost = fee + (area * douSel)
- self.totCost.setPlainText('$' + str(round(cost ,2)))
- elif self.tinSel.isChecked() == True:
- cost = fee + (area * tinSel)
- self.totCost.setPlainText('$' + str(round(cost,2)))
- elif self.tinSel.isChecked() == False and self.douSel.isChecked() == False and self.sinSel.isChecked() == False:
- print("Please select a window type.")
- except ValueError:
- if len(self.widEntry.text()) == 0 or len(self.heiEntry.text()) == 0:
- print("No entry in width or height.")
- else:
- print("Characters and symbols not accepted. Please enter valid numbers.")
- def order(self):
- perOrder = self.userEntry.text()
- sing = {}
- dou = {}
- tin = {}
- order = {}
- try:
- width = float(self.widEntry.text())
- height = float(self.heiEntry.text())
- area = width * height
- fee = float(self.feeEntered.text())
- sinSel = 0.01
- douSel = 0.02
- tinSel = 0.005
- if self.sinSel.isChecked() == True:
- cost = fee + (area * sinSel)
- self.totCost.setPlainText('$' + str(round(cost ,2)))
- elif self.douSel.isChecked() == True:
- cost = fee + (area * douSel)
- self.totCost.setPlainText('$' + str(round(cost ,2)))
- elif self.tinSel.isChecked() == True:
- cost = fee + (area * tinSel)
- self.totCost.setPlainText('$' + str(round(cost,2)))
- elif self.tinSel.isChecked() == False and self.douSel.isChecked() == False and self.sinSel.isChecked() == False:
- print("Please select a window type.")
- except ValueError:
- if len(self.widEntry.text()) == 0 or len(self.heiEntry.text()) == 0:
- print("No entry in width or height.")
- else:
- print("Characters and symbols not accepted. Please enter valid numbers.")
- class settings(QtGui.QMainWindow, Ui_Settings):
- def __init__(self, parent = None):
- super(settings, self).__init__(parent)
- self.setupUi(self)
- self.btnApply.clicked.connect(self.applyChanges)
- def applyChanges(self):
- with open('settings.txt', 'r') as f:
- data = json.load(f)
- serValue = str(self.change_ServiceText.text())
- data['serviceFee'] = serValue
- with open('settings.txt', 'w') as f:
- json.dump(data, f)
- if __name__ == "__main__":
- app = QtGui.QApplication(sys.argv)
- logIn = logIn()
- logIn.show()
- sys.exit(app.exec_())
- from PySide import QtCore, QtGui
- class Ui_LogIn(object):
- def setupUi(self, LogIn):
- LogIn.setObjectName("LogIn")
- LogIn.resize(400, 300)
- LogIn.setMinimumSize(QtCore.QSize(400, 300))
- LogIn.setMaximumSize(QtCore.QSize(400, 300))
- self.formLayoutWidget = QtGui.QWidget(LogIn)
- self.formLayoutWidget.setGeometry(QtCore.QRect(10, 100, 371, 71))
- self.formLayoutWidget.setObjectName("formLayoutWidget")
- self.container = QtGui.QFormLayout(self.formLayoutWidget)
- self.container.setContentsMargins(0, 0, 0, 0)
- self.container.setObjectName("container")
- self.userLbl = QtGui.QLabel(self.formLayoutWidget)
- font = QtGui.QFont()
- font.setPointSize(10)
- font.setWeight(75)
- font.setBold(True)
- self.userLbl.setFont(font)
- self.userLbl.setObjectName("userLbl")
- self.container.setWidget(0, QtGui.QFormLayout.LabelRole, self.userLbl)
- self.userEntry = QtGui.QLineEdit(self.formLayoutWidget)
- self.userEntry.setObjectName("userEntry")
- self.container.setWidget(0, QtGui.QFormLayout.FieldRole, self.userEntry)
- spacerItem = QtGui.QSpacerItem(20, 10, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
- self.container.setItem(1, QtGui.QFormLayout.FieldRole, spacerItem)
- self.lblPass = QtGui.QLabel(self.formLayoutWidget)
- font = QtGui.QFont()
- font.setPointSize(10)
- font.setWeight(75)
- font.setBold(True)
- self.lblPass.setFont(font)
- self.lblPass.setObjectName("lblPass")
- self.container.setWidget(2, QtGui.QFormLayout.LabelRole, self.lblPass)
- self.passEntry = QtGui.QLineEdit(self.formLayoutWidget)
- self.passEntry.setObjectName("passEntry")
- self.passEntry.setEchoMode(QtGui.QLineEdit.EchoMode.Password)
- self.container.setWidget(2, QtGui.QFormLayout.FieldRole, self.passEntry)
- self.textEdit = QtGui.QTextEdit(LogIn)
- self.textEdit.setGeometry(QtCore.QRect(10, 200, 371, 31))
- self.textEdit.setObjectName("textEdit")
- self.textEdit.setReadOnly(True)
- self.btnLogin = QtGui.QPushButton(LogIn)
- self.btnLogin.setGeometry(QtCore.QRect(310, 240, 75, 23))
- self.btnLogin.setObjectName("btnLogin")
- self.label = QtGui.QLabel(LogIn)
- self.label.setGeometry(QtCore.QRect(110, 10, 161, 81))
- font = QtGui.QFont()
- font.setPointSize(18)
- font.setWeight(75)
- font.setUnderline(True)
- font.setStrikeOut(False)
- font.setBold(True)
- self.label.setFont(font)
- self.label.setObjectName("label")
- self.retranslateUi(LogIn)
- QtCore.QMetaObject.connectSlotsByName(LogIn)
- def retranslateUi(self, LogIn):
- LogIn.setWindowTitle(QtGui.QApplication.translate("LogIn", "Dialog", None, QtGui.QApplication.UnicodeUTF8))
- self.userLbl.setText(QtGui.QApplication.translate("LogIn", "Username:", None, QtGui.QApplication.UnicodeUTF8))
- self.lblPass.setText(QtGui.QApplication.translate("LogIn", "Password:", None, QtGui.QApplication.UnicodeUTF8))
- self.btnLogin.setText(QtGui.QApplication.translate("LogIn", "Login", None, QtGui.QApplication.UnicodeUTF8))
- self.label.setText(QtGui.QApplication.translate("LogIn", "System Login", None, QtGui.QApplication.UnicodeUTF8))
- if __name__ == "__main__":
- import sys
- app = QtGui.QApplication(sys.argv)
- LogIn = QtGui.QDialog()
- ui = Ui_LogIn()
- ui.setupUi(LogIn)
- LogIn.show()
- sys.exit(app.exec_())
- from PySide import QtCore, QtGui
- class Ui_Home(object):
- def setupUi(self, Home):
- Home.setObjectName("Home")
- Home.resize(700, 300)
- Home.setMinimumSize(QtCore.QSize(700, 300))
- Home.setMaximumSize(QtCore.QSize(700, 300))
- self.centralwidget = QtGui.QWidget(Home)
- self.centralwidget.setObjectName("centralwidget")
- self.lblTitle = QtGui.QLabel(self.centralwidget)
- self.lblTitle.setGeometry(QtCore.QRect(60, 10, 591, 71))
- font = QtGui.QFont()
- font.setPointSize(48)
- font.setWeight(75)
- font.setUnderline(True)
- font.setBold(True)
- self.lblTitle.setFont(font)
- self.lblTitle.setObjectName("lblTitle")
- self.introMessage = QtGui.QTextBrowser(self.centralwidget)
- self.introMessage.setGeometry(QtCore.QRect(60, 90, 591, 71))
- self.introMessage.setObjectName("introMessage")
- self.horizontalLayoutWidget = QtGui.QWidget(self.centralwidget)
- self.horizontalLayoutWidget.setGeometry(QtCore.QRect(60, 160, 591, 80))
- self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget")
- self.horizontalLayout = QtGui.QHBoxLayout(self.horizontalLayoutWidget)
- self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
- self.horizontalLayout.setObjectName("horizontalLayout")
- self.btnEnter = QtGui.QPushButton(self.horizontalLayoutWidget)
- self.btnEnter.setObjectName("btnEnter")
- self.horizontalLayout.addWidget(self.btnEnter)
- self.btnCheck = QtGui.QPushButton(self.horizontalLayoutWidget)
- self.btnCheck.setObjectName("btnCheck")
- self.horizontalLayout.addWidget(self.btnCheck)
- self.btnAbout = QtGui.QPushButton(self.horizontalLayoutWidget)
- self.btnAbout.setObjectName("btnAbout")
- self.horizontalLayout.addWidget(self.btnAbout)
- Home.setCentralWidget(self.centralwidget)
- self.btnLogOut = QtGui.QPushButton(self.horizontalLayoutWidget)
- self.btnLogOut.setObjectName("btnLogOut")
- self.horizontalLayout.addWidget(self.btnLogOut)
- self.menubar = QtGui.QMenuBar(Home)
- self.menubar.setGeometry(QtCore.QRect(0, 0, 700, 21))
- self.menubar.setObjectName("menubar")
- self.menuFile = QtGui.QMenu(self.menubar)
- self.menuFile.setObjectName("menuFile")
- Home.setMenuBar(self.menubar)
- self.statusbar = QtGui.QStatusBar(Home)
- self.statusbar.setObjectName("statusbar")
- Home.setStatusBar(self.statusbar)
- self.actionSettings = QtGui.QAction(Home)
- self.actionSettings.setObjectName("actionSettings")
- self.actionSettings.setEnabled(False)
- self.menuFile.addAction(self.actionSettings)
- self.menubar.addAction(self.menuFile.menuAction())
- self.retranslateUi(Home)
- QtCore.QMetaObject.connectSlotsByName(Home)
- def retranslateUi(self, Home):
- Home.setWindowTitle(QtGui.QApplication.translate("Home", "MainWindow", None, QtGui.QApplication.UnicodeUTF8))
- self.lblTitle.setText(QtGui.QApplication.translate("Home", "Wendy's Windows", None, QtGui.QApplication.UnicodeUTF8))
- self.introMessage.setHtml(QtGui.QApplication.translate("Home", "<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">n"
- "<html><head><meta name="qrichtext" content="1" /><style type="text/css">n"
- "p, li { white-space: pre-wrap; }n"
- "</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;">n"
- "<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Welcome to Wendy's Windows home to all your window needs, to start a new order click 'New Order' , to check your existing order please click 'Check Order', or to learn more about Wendy's and current prices please click 'About'. </p>n"
- "<p align="center" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p>n"
- "<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Thank you for shopping with Wendy's!</p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
- self.btnEnter.setText(QtGui.QApplication.translate("Home", "New Order", None, QtGui.QApplication.UnicodeUTF8))
- self.btnCheck.setText(QtGui.QApplication.translate("Home", "Check Order", None, QtGui.QApplication.UnicodeUTF8))
- self.btnAbout.setText(QtGui.QApplication.translate("Home", "About", None, QtGui.QApplication.UnicodeUTF8))
- self.btnLogOut.setText(QtGui.QApplication.translate("Home", "Log Out", None, QtGui.QApplication.UnicodeUTF8))
- self.menuFile.setTitle(QtGui.QApplication.translate("Home", "File", None, QtGui.QApplication.UnicodeUTF8))
- self.actionSettings.setText(QtGui.QApplication.translate("Home", "Settings", None, QtGui.QApplication.UnicodeUTF8))
- if __name__ == "__main__":
- import sys
- app = QtGui.QApplication(sys.argv)
- Home = QtGui.QMainWindow()
- ui = Ui_Home()
- ui.setupUi(Home)
- Home.show()
- sys.exit(app.exec_())
Add Comment
Please, Sign In to add comment