def setupUi(self, progress): #set window parameters progress.setFixedSize(1188, 730) progress.resize(1188, 730) progress.setWindowTitle("Home Page") progress.setStyleSheet( "background-color: qlineargradient(spread:pad, x1:0.267, y1:0.642, x2:0.778, y2:0.323864, stop:0 rgba(0, 150, 136, 255), stop:1 rgba(63, 81, 181, 255));" "") self.progress_2 = QtWidgets.QWidget(progress) progress.setCentralWidget(self.progress_2) self.frameWhiteHeader = QtWidgets.QFrame(self.progress_2) self.frameWhiteHeader.setGeometry(QtCore.QRect(0, 0, 1191, 51)) self.frameWhiteHeader.setStyleSheet( "\n" "background-color: rgb(255, 255, 255);") self.frameWhiteHeader.setFrameShape(QtWidgets.QFrame.StyledPanel) self.frameWhiteHeader.setFrameShadow(QtWidgets.QFrame.Raised) self.frameGreyBackground = QtWidgets.QFrame(self.progress_2) self.frameGreyBackground.setGeometry(QtCore.QRect(0, 50, 181, 761)) self.frameGreyBackground.setStyleSheet( "background-color: rgb(96, 125, 139);") self.frameGreyBackground.setFrameShape(QtWidgets.QFrame.StyledPanel) self.frameGreyBackground.setFrameShadow(QtWidgets.QFrame.Raised) self.frameGreyHeader2 = QtWidgets.QFrame(self.progress_2) self.frameGreyHeader2.setGeometry(QtCore.QRect(180, 50, 1011, 51)) self.frameGreyHeader2.setStyleSheet( "background-color: rgb(224, 224, 224);") self.frameGreyHeader = QtWidgets.QFrame(self.frameGreyHeader2) self.frameGreyHeader.setGeometry(QtCore.QRect(140, 50, 1011, 51)) self.frameGreyHeader.setStyleSheet( "background-color: rgb(240, 240, 240);") #set label for calorie budget self.labelCalorieBudget = QtWidgets.QLabel(self.progress_2) self.labelCalorieBudget.setGeometry(QtCore.QRect(350, 140, 200, 71)) self.labelCalorieBudget.setStyleSheet( "font: 200 15pt \"Lato\";" "color: rgb(255, 255, 255);" """background-color: transparent;""") self.labelCalorieBudget.setText("BMI") #set label for weightloss self.labelWeightGoalProgress = QtWidgets.QLabel(self.progress_2) self.labelWeightGoalProgress.setGeometry( QtCore.QRect(820, 140, 200, 71)) self.labelWeightGoalProgress.setStyleSheet( "font: 75 15pt \"Lato\";" "color: rgb(255, 255, 255);" """background-color: transparent;""") self.labelWeightGoalProgress.setText("Weight Goal Progress") # set label for static starting weight name self.labelStaticStartingWeight = QtWidgets.QLabel(self.progress_2) self.labelStaticStartingWeight.setGeometry( QtCore.QRect(800, 300, 200, 30)) self.labelStaticStartingWeight.setStyleSheet( "font: 75 15pt \"Lato\";" "color: rgb(255, 255, 255);" """background-color: transparent;""") self.labelStaticStartingWeight.setText("Starting Weight") # set label for static current weight name self.labelStaticCurrentWeight = QtWidgets.QLabel(self.progress_2) self.labelStaticCurrentWeight.setGeometry( QtCore.QRect(800, 400, 200, 71)) self.labelStaticCurrentWeight.setStyleSheet( "font: 75 15pt \"Lato\";" "color: rgb(255, 255, 255);" """background-color: transparent;""") self.labelStaticCurrentWeight.setText("Current Weight") # set label for current weight value self.labelCurrentWeight = QtWidgets.QLabel(self.progress_2) self.labelCurrentWeight.setGeometry(QtCore.QRect(980, 400, 300, 80)) self.labelCurrentWeight.setStyleSheet( "font: 75 15pt \"Lato\";" "color: rgb(255, 255, 255);" """background-color: transparent;""") self.labelCurrentWeight.setText("0") # set label for starting weight value self.labelStartingWeight = QtWidgets.QLabel(self.progress_2) self.labelStartingWeight.setGeometry(QtCore.QRect(980, 300, 200, 30)) self.labelStartingWeight.setStyleSheet( "font: 75 15pt \"Lato\";" "color: rgb(255, 255, 255);" """text-align: center; background-color: transparent;""") self.labelStartingWeight.setText("0") #BMI VALUE self.BMIValue = QtWidgets.QLabel(self.progress_2) self.BMIValue.setGeometry(QtCore.QRect(425, 305, 120, 20)) self.BMIValue.setStyleSheet( "font: 75 15pt \"Lato\";" "color: rgb(255, 255, 255);" """text-align: center; background-color: transparent;""") self.BMIValue.setText("0") labelCurrentBmi = QtWidgets.QLabel(self.progress_2) labelCurrentBmi.setGeometry(QtCore.QRect(300, 305, 120, 20)) labelCurrentBmi.setStyleSheet( "font: 75 15pt \"Lato\";" "color: rgb(255, 255, 255);" """text-align: center; background-color: transparent;""") labelCurrentBmi.setText("Current BMI:") # set label for static starting weight kg self.labelStaticStartingWeightKg = QtWidgets.QLabel(self.progress_2) self.labelStaticStartingWeightKg.setGeometry( QtCore.QRect(1050, 300, 300, 30)) self.labelStaticStartingWeightKg.setStyleSheet( "font: 75 15pt \"Lato\";" "color: rgb(255, 255, 255);" """background-color: transparent;""") self.labelStaticStartingWeightKg.setText("kg") # set label for static current weight kg self.labelStaticCurrentWeightKg = QtWidgets.QLabel(self.progress_2) self.labelStaticCurrentWeightKg.setGeometry( QtCore.QRect(1050, 400, 300, 80)) self.labelStaticCurrentWeightKg.setStyleSheet( "font: 75 15pt \"Lato\";" "color: rgb(255, 255, 255);" """background-color: transparent;""") self.labelStaticCurrentWeightKg.setText("kg") #GEOMETRY #First Value - X is left or right # Second Value Y is up or down # Third value is width # Fourth value is height #set label for member date self.labelMember = QtWidgets.QLabel(self.frameGreyBackground) self.labelMember.setGeometry(QtCore.QRect(20, 200, 111, 31)) self.labelMember.setStyleSheet("color: rgb(255, 255, 255);") self.labelMember.setText("Member Since:") self.labelSteps = QtWidgets.QLabel(self.frameGreyBackground) self.labelSteps.setGeometry(QtCore.QRect(60, 320, 41, 41)) self.labelSteps.setLayoutDirection(QtCore.Qt.LeftToRight) self.labelSteps.setStyleSheet("font: 75 12pt \"Lato\";" "color: rgb(255, 255, 255);" """background-color: transparent;""") self.labelSteps.setText("Steps") self.labelWater = QtWidgets.QLabel(self.frameGreyBackground) self.labelWater.setGeometry(QtCore.QRect(60, 420, 41, 41)) self.labelWater.setLayoutDirection(QtCore.Qt.LeftToRight) self.labelWater.setStyleSheet("font: 75 12pt \"Lato\";" "color: rgb(255, 255, 255);" """background-color: transparent;""") self.labelWater.setText("Water") #frame for users photo self.frameUserPhoto = QtWidgets.QFrame(self.frameGreyBackground) self.frameUserPhoto.setGeometry(QtCore.QRect(30, 40, 120, 120)) self.frameUserPhoto.setStyleSheet( "image: url(:/images/default-user.png);\n" "border-radius: 90px;") self.frameUserPhoto.setFrameShape(QtWidgets.QFrame.NoFrame) self.frameUserPhoto.setFrameShadow(QtWidgets.QFrame.Raised) self.frameUserPhoto.setLineWidth(27) #Photo label self.labelPhoto = QtWidgets.QLabel(self.frameGreyBackground) self.labelPhoto.setGeometry(QtCore.QRect(30, 40, 120, 120)) self.labelPhoto.setStyleSheet("background-color: rgba(0,0,0,0%)") self.buttonsLeftArrow = QtWidgets.QPushButton(self.frameGreyHeader2) self.buttonsLeftArrow.setGeometry(QtCore.QRect(0, 0, 61, 51)) self.buttonsLeftArrow.setFlat(True) self.buttonsLeftArrow.setText("<") self.buttonRightArrow = QtWidgets.QPushButton(self.frameGreyHeader2) self.buttonRightArrow.setGeometry(QtCore.QRect(950, 0, 61, 51)) self.buttonRightArrow.setFlat(True) self.buttonRightArrow.setText(">") #set buttons self.buttonProfile = QtWidgets.QPushButton(self.frameWhiteHeader) self.buttonProfile.setGeometry(QtCore.QRect(0, 0, 85, 51)) self.buttonProfile.setStyleSheet("font: 75 12pt \"Lato\";") self.buttonProfile.setFlat(True) self.buttonProfile.clicked.connect(self.openProfileWindow) self.buttonProfile.setText(" Profile | ") self.buttonDiary = QtWidgets.QPushButton(self.frameWhiteHeader) self.buttonDiary.setGeometry(QtCore.QRect(88, 0, 90, 51)) self.buttonDiary.setStyleSheet("font: 75 12pt \"Lato\";") self.buttonDiary.setFlat(True) self.buttonDiary.clicked.connect(self.openDiaryWindow) self.buttonDiary.setText("Diary | ") self.buttonPlans = QtWidgets.QPushButton(self.frameWhiteHeader) self.buttonPlans.setGeometry(QtCore.QRect(145, 0, 85, 51)) self.buttonPlans.setStyleSheet("font: 75 12pt \"Lato\";") self.buttonPlans.setFlat(True) self.buttonPlans.clicked.connect(self.openPlansWindow) self.buttonPlans.setText(" Plans | ") self.buttonProgress = QtWidgets.QPushButton(self.frameWhiteHeader) self.buttonProgress.setGeometry(QtCore.QRect(230, 0, 100, 51)) self.buttonProgress.setStyleSheet("font: 75 12pt \"Lato\";") self.buttonProgress.setFlat(True) self.buttonProgress.setText(" Progress | ") self.buttonNutrition = QtWidgets.QPushButton(self.frameWhiteHeader) self.buttonNutrition.setGeometry(QtCore.QRect(330, 0, 100, 51)) self.buttonNutrition.setStyleSheet("font: 75 12pt \"Lato\";") self.buttonNutrition.setFlat(True) self.buttonNutrition.clicked.connect(self.openNutritionWindow) self.buttonNutrition.setText(" Nutrition | ") self.signOut = QtWidgets.QPushButton(self.frameWhiteHeader) self.signOut.setGeometry(QtCore.QRect(1050, 0, 110, 51)) self.signOut.setStyleSheet("font: 75 12pt \"Lato\";") self.signOut.setFlat(True) self.signOut.setText(" Sign Out") #Update photo button self.buttonUpdatePhoto = QtWidgets.QPushButton( self.frameGreyBackground) self.buttonUpdatePhoto.setGeometry(QtCore.QRect(90, 160, 60, 20)) self.buttonUpdatePhoto.setStyleSheet( "background-color: rgb(85, 170, 255);\n" "\n" "font: 10pt \"SourceSansPro\";\n" "color: rgb(255, 255, 255);") self.buttonUpdatePhoto.setText("Update") self.buttonUpdatePhoto.clicked.connect(self.AddImage) self.buttonAddWeight = QtWidgets.QPushButton(self.progress_2) self.buttonAddWeight.setGeometry(QtCore.QRect(800, 475, 150, 20)) self.buttonAddWeight.setStyleSheet( "background-color: rgb(85, 170, 255);\n" "\n" "font: 10pt \"SourceSansPro\";\n" "color: rgb(255, 255, 255);") self.buttonAddWeight.clicked.connect(self.openWindowWeight) self.buttonAddWeight.setText("Update Current Weight") # display current weight in progress window self.buttonDisplayCurrentWeight = QtWidgets.QPushButton( self.progress_2) self.buttonDisplayCurrentWeight.setGeometry( QtCore.QRect(800, 450, 150, 20)) self.buttonDisplayCurrentWeight.setStyleSheet( "background-color: rgb(85, 170, 255);\n" "\n" "font: 10pt \"SourceSansPro\";\n" "color: rgb(255, 255, 255);") self.buttonDisplayCurrentWeight.clicked.connect(self.loadCurrentWeight) self.buttonDisplayCurrentWeight.setText("Display Current Weight") #BMI BUTTON #self.buttonBMI = QtWidgets.QPushButton(self.progress_2) # self.buttonBMI.setGeometry(QtCore.QRect(300, 325, 120, 20)) # self.buttonBMI.setStyleSheet("background-color: rgb(85, 170, 255);\n""\n""font: 10pt \"SourceSansPro\";\n""color: rgb(255, 255, 255);") # self.buttonBMI.clicked.connect(self.loadAddBMI) # self.buttonBMI.setText("Update your BMI") #BMI BUTTON self.buttonBMI = QtWidgets.QPushButton(self.progress_2) self.buttonBMI.setGeometry(QtCore.QRect(300, 330, 150, 20)) self.buttonBMI.setStyleSheet("background-color: rgb(85, 170, 255);\n" "\n" "font: 10pt \"SourceSansPro\";\n" "color: rgb(255, 255, 255);") self.buttonBMI.clicked.connect(self.loadAddBMI) self.buttonBMI.setText("Calculate BMI") #display current weight in progress window self.buttonShowWeight = QtWidgets.QPushButton(self.progress_2) self.buttonShowWeight.setGeometry(QtCore.QRect(800, 330, 150, 20)) self.buttonShowWeight.setStyleSheet( "background-color: rgb(85, 170, 255);\n" "\n" "font: 10pt \"SourceSansPro\";\n" "color: rgb(255, 255, 255);") self.buttonShowWeight.clicked.connect(self.loadStartingWeight) self.buttonShowWeight.setText("Display Start Weight") #open weight progress window self.buttonShowWeightProgress = QtWidgets.QPushButton(self.progress_2) self.buttonShowWeightProgress.setGeometry( QtCore.QRect(970, 455, 150, 20)) self.buttonShowWeightProgress.setStyleSheet( "background-color: rgb(85, 170, 255);\n" "\n" "font: 10pt \"SourceSansPro\";\n" "color: rgb(255, 255, 255);") self.buttonShowWeightProgress.clicked.connect(self.openWeightChanges) self.buttonShowWeightProgress.setText("show weight changes") #label to show total calories self.labelCaloriesFromDB = QtWidgets.QLabel(self.frameGreyBackground) self.labelCaloriesFromDB.setGeometry(QtCore.QRect(40, 290, 91, 41)) self.labelCaloriesFromDB.setStyleSheet( "font: 75 12pt \"Lato\";" "color: rgb(255, 255, 255);" """background-color: transparent;""") caloriesData = SQLStatements.getTotalCalories(self.userID) self.labelCaloriesFromDB.setText(caloriesData) self.labelStepsFromDB = QtWidgets.QLabel(self.frameGreyBackground) self.labelStepsFromDB.setGeometry(QtCore.QRect(30, 370, 91, 41)) self.labelWaterFromDB = QtWidgets.QLabel(self.frameGreyBackground) self.labelWaterFromDB.setGeometry(QtCore.QRect(40, 460, 91, 41)) #label to show join date self.labelJoinDateFromDB = QtWidgets.QLabel(self.frameGreyBackground) self.labelJoinDateFromDB.setGeometry(QtCore.QRect(100, 196, 91, 41)) self.labelJoinDateFromDB.setStyleSheet( "font: 75 12pt \"Lato\";" "color: rgb(255, 255, 255);" """background-color: transparent;""") #find join date of user Joindate = SQLStatements.getJoinDate(self.userID) Joindate = str(Joindate) Joindate = (Joindate.replace("[", "")) Joindate = (Joindate.replace("]", "")) Joindate = (Joindate.replace("(", "")) Joindate = (Joindate.replace(")", "")) Joindate = (Joindate.replace("'", "")) Joindate = (Joindate.replace(",", "")) self.labelJoinDateFromDB.setText(Joindate) self.showImage() self.loadCurrentWeight() self.loadStartingWeight() self.loadBmi()