Esempio n. 1
0
class Ui_MainWindow(object):
    def __init__(self):
        self.newDialog = QtWidgets.QMainWindow()
        self.new_screen = New()
        self.new_screen.setupUi(self.newDialog)

        self.EvaluateWindow = QtWidgets.QMainWindow()
        self.eval_screen = Eva()
        self.eval_screen.setupUi(self.EvaluateWindow)

        self.openDialog = QtWidgets.QMainWindow()
        self.open_screen = Open()
        self.open_screen.setupUi(self.openDialog)

    # FILE OPENING MENU
    def file_open(self):
        self.open_screen.setupUi(self.openDialog)
        self.openDialog.show()
        self.open_screen.openbtn.clicked.connect(self.openteam)

    # EVALUATE TEAM MENU
    def file_evaluate(self):
        self.eval_screen.setupUi(self.EvaluateWindow)
        self.EvaluateWindow.show()

    def setupUi(self, MainWindow):

        # INITIALISING POINTS AND COUNTS
        self.avail_points = 1000
        self.used_points = 0
        self.totalcount = 0
        self.batsmencount = 0
        self.bowlerscount = 0
        self.alrdscount = 0
        self.wicketerscount = 0
        # INITIALIZING LISTS
        self.a = []  # bowler names list
        self.b = []  #  batsman nameslist
        self.c = []  # allrounder names list
        self.d = []  #wicketer names list
        self.list1 = []  # selectedplayer's list

        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(556, 523)
        MainWindow.setStyleSheet("background-color: rgb(255, 255, 255);")
        self.central_w = QtWidgets.QWidget(MainWindow)
        self.central_w.setObjectName("central_w")
        self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.central_w)
        self.verticalLayout_3.setObjectName("verticalLayout_3")
        spacerItem = QtWidgets.QSpacerItem(20, 40,
                                           QtWidgets.QSizePolicy.Minimum,
                                           QtWidgets.QSizePolicy.Preferred)
        self.verticalLayout_3.addItem(spacerItem)
        self.frame = QtWidgets.QFrame(self.central_w)
        self.frame.setStyleSheet("background-color: rgb(241, 235, 255);\n"
                                 "font: 75 10pt \"MS Shell Dlg 2\";\n"
                                 "")
        self.frame.setFrameShape(QtWidgets.QFrame.StyledPanel)
        self.frame.setFrameShadow(QtWidgets.QFrame.Raised)
        self.frame.setObjectName("frame")
        self.gridLayout = QtWidgets.QGridLayout(self.frame)
        self.gridLayout.setContentsMargins(-1, 5, -1, 24)
        self.gridLayout.setObjectName("gridLayout")
        self.BAT = QtWidgets.QLabel(self.frame)
        self.BAT.setStyleSheet("color: rgb(0, 170, 255);")
        self.BAT.setObjectName("BAT")
        self.gridLayout.addWidget(self.BAT, 1, 1, 1, 1)
        self.label_2 = QtWidgets.QLabel(self.frame)
        self.label_2.setObjectName("label_2")
        self.gridLayout.addWidget(self.label_2, 1, 0, 1, 1)
        self.WK = QtWidgets.QLabel(self.frame)
        self.WK.setStyleSheet("color: rgb(0, 170, 255);")
        self.WK.setObjectName("WK")
        self.gridLayout.addWidget(self.WK, 1, 7, 1, 1)
        self.label_4 = QtWidgets.QLabel(self.frame)
        self.label_4.setObjectName("label_4")
        self.gridLayout.addWidget(self.label_4, 1, 2, 1, 1)
        self.label_10 = QtWidgets.QLabel(self.frame)
        self.label_10.setObjectName("label_10")
        self.gridLayout.addWidget(self.label_10, 1, 4, 1, 1)
        self.ARL = QtWidgets.QLabel(self.frame)
        self.ARL.setStyleSheet("color: rgb(0, 170, 255);")
        self.ARL.setObjectName("ARL")
        self.gridLayout.addWidget(self.ARL, 1, 5, 1, 1)
        self.BOWL = QtWidgets.QLabel(self.frame)
        self.BOWL.setStyleSheet("color: rgb(0, 170, 255);")
        self.BOWL.setObjectName("BOWL")
        self.gridLayout.addWidget(self.BOWL, 1, 3, 1, 1)
        self.label_12 = QtWidgets.QLabel(self.frame)
        self.label_12.setObjectName("label_12")
        self.gridLayout.addWidget(self.label_12, 1, 6, 1, 1)
        self.label = QtWidgets.QLabel(self.frame)
        self.label.setStyleSheet("\n" "font: italic 9pt \"Comic Sans MS\";")
        self.label.setObjectName("label")
        self.gridLayout.addWidget(self.label, 0, 0, 1, 1)
        self.verticalLayout_3.addWidget(self.frame)
        self.frame_2 = QtWidgets.QFrame(self.central_w)
        self.frame_2.setStyleSheet("font: 75 10pt \"MS Shell Dlg 2\";\n"
                                   "border-color: rgb(255, 255, 255);")
        self.frame_2.setFrameShape(QtWidgets.QFrame.NoFrame)
        self.frame_2.setFrameShadow(QtWidgets.QFrame.Plain)
        self.frame_2.setLineWidth(0)
        self.frame_2.setObjectName("frame_2")
        self.horizontalLayout = QtWidgets.QHBoxLayout(self.frame_2)
        self.horizontalLayout.setContentsMargins(46, 8, 23, 5)
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.label_6 = QtWidgets.QLabel(self.frame_2)
        self.label_6.setStyleSheet("font: 75 9pt \"MS Shell Dlg 2\";")
        self.label_6.setObjectName("label_6")
        self.horizontalLayout.addWidget(self.label_6)
        self.points_available = QtWidgets.QLabel(self.frame_2)
        self.points_available.setStyleSheet("color: rgb(85, 170, 255);")
        self.points_available.setObjectName("points_available")
        self.horizontalLayout.addWidget(self.points_available)
        self.label_7 = QtWidgets.QLabel(self.frame_2)
        self.label_7.setObjectName("label_7")
        self.horizontalLayout.addWidget(self.label_7, 0, QtCore.Qt.AlignRight)
        self.points_used = QtWidgets.QLabel(self.frame_2)
        self.points_used.setStyleSheet("color: rgb(85, 170, 255);")
        self.points_used.setObjectName("points_used")
        self.horizontalLayout.addWidget(self.points_used, 0,
                                        QtCore.Qt.AlignHCenter)
        self.verticalLayout_3.addWidget(self.frame_2)
        self.horizontalLayout_4 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_4.setObjectName("horizontalLayout_4")
        spacerItem1 = QtWidgets.QSpacerItem(13, 345,
                                            QtWidgets.QSizePolicy.Preferred,
                                            QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout_4.addItem(spacerItem1)
        self.frame_3 = QtWidgets.QFrame(self.central_w)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.frame_3.sizePolicy().hasHeightForWidth())
        self.frame_3.setSizePolicy(sizePolicy)
        self.frame_3.setStyleSheet("border-color: rgb(15, 15, 15);")
        self.frame_3.setFrameShape(QtWidgets.QFrame.Box)
        self.frame_3.setFrameShadow(QtWidgets.QFrame.Sunken)
        self.frame_3.setLineWidth(2)
        self.frame_3.setMidLineWidth(1)
        self.frame_3.setObjectName("frame_3")
        self.verticalLayout = QtWidgets.QVBoxLayout(self.frame_3)
        self.verticalLayout.setContentsMargins(19, -1, 19, -1)
        self.verticalLayout.setObjectName("verticalLayout")
        self.frame_5 = QtWidgets.QFrame(self.frame_3)
        self.frame_5.setStyleSheet("font: 75 10pt \"MS Shell Dlg 2\";")
        self.frame_5.setFrameShape(QtWidgets.QFrame.NoFrame)
        self.frame_5.setFrameShadow(QtWidgets.QFrame.Sunken)
        self.frame_5.setObjectName("frame_5")
        self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.frame_5)
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")

        self.bat_rb = QtWidgets.QRadioButton(self.frame_5)  # bat_rb
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.bat_rb.sizePolicy().hasHeightForWidth())
        self.bat_rb.setSizePolicy(sizePolicy)
        self.bat_rb.setEnabled(False)
        self.bat_rb.setTabletTracking(False)
        self.bat_rb.setAcceptDrops(False)
        self.bat_rb.setObjectName("bat_rb")
        self.horizontalLayout_2.addWidget(self.bat_rb)

        self.bow_rb = QtWidgets.QRadioButton(self.frame_5)  #bat_rb
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        self.bow_rb.setEnabled(False)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.bow_rb.sizePolicy().hasHeightForWidth())
        self.bow_rb.setSizePolicy(sizePolicy)
        self.bow_rb.setObjectName("bow_rb")

        self.horizontalLayout_2.addWidget(self.bow_rb)
        self.ar_rb = QtWidgets.QRadioButton(self.frame_5)  #ar_rb
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.ar_rb.sizePolicy().hasHeightForWidth())
        self.ar_rb.setSizePolicy(sizePolicy)
        self.ar_rb.setEnabled(False)
        self.ar_rb.setObjectName("ar_rb")
        self.horizontalLayout_2.addWidget(self.ar_rb)

        self.wk_rb = QtWidgets.QRadioButton(self.frame_5)  #wk_rb
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        self.wk_rb.setEnabled(False)
        sizePolicy.setHeightForWidth(
            self.wk_rb.sizePolicy().hasHeightForWidth())
        self.wk_rb.setSizePolicy(sizePolicy)
        self.wk_rb.setObjectName("wk_rb")
        self.horizontalLayout_2.addWidget(self.wk_rb)

        self.verticalLayout.addWidget(self.frame_5)  #available_players
        self.av_player = QtWidgets.QListWidget(self.frame_3)
        self.av_player.setFrameShape(QtWidgets.QFrame.NoFrame)
        self.av_player.setObjectName("av_player")
        self.verticalLayout.addWidget(self.av_player)

        self.horizontalLayout_4.addWidget(self.frame_3)
        spacerItem2 = QtWidgets.QSpacerItem(13, 345,
                                            QtWidgets.QSizePolicy.Preferred,
                                            QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout_4.addItem(spacerItem2)
        self.label_9 = QtWidgets.QLabel(self.central_w)
        self.label_9.setStyleSheet("font: 20pt \"MS Shell Dlg 2\";")
        self.label_9.setLineWidth(-10)
        self.label_9.setMidLineWidth(-10)
        self.label_9.setObjectName("label_9")
        self.horizontalLayout_4.addWidget(self.label_9)
        spacerItem3 = QtWidgets.QSpacerItem(13, 345,
                                            QtWidgets.QSizePolicy.Preferred,
                                            QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout_4.addItem(spacerItem3)
        self.frame_4 = QtWidgets.QFrame(self.central_w)
        self.frame_4.setFrameShape(QtWidgets.QFrame.Box)
        self.frame_4.setFrameShadow(QtWidgets.QFrame.Sunken)
        self.frame_4.setLineWidth(2)
        self.frame_4.setMidLineWidth(1)
        self.frame_4.setObjectName("frame_4")
        self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.frame_4)
        self.verticalLayout_2.setContentsMargins(18, 9, 14, -1)
        self.verticalLayout_2.setSpacing(6)
        self.verticalLayout_2.setObjectName("verticalLayout_2")
        self.frame_6 = QtWidgets.QFrame(self.frame_4)
        self.frame_6.setStyleSheet("font: 75 10pt \"MS Shell Dlg 2\";")
        self.frame_6.setFrameShape(QtWidgets.QFrame.NoFrame)
        self.frame_6.setFrameShadow(QtWidgets.QFrame.Raised)
        self.frame_6.setObjectName("frame_6")
        self.horizontalLayout_3 = QtWidgets.QHBoxLayout(self.frame_6)
        self.horizontalLayout_3.setObjectName("horizontalLayout_3")
        self.label_8 = QtWidgets.QLabel(self.frame_6)
        self.label_8.setObjectName("label_8")
        self.horizontalLayout_3.addWidget(self.label_8, 0,
                                          QtCore.Qt.AlignHCenter)
        self.team_name = QtWidgets.QLabel(self.frame_6)
        self.team_name.setStyleSheet("color: rgb(85, 170, 255);")
        self.team_name.setObjectName("team_name")
        self.horizontalLayout_3.addWidget(self.team_name)

        self.verticalLayout_2.addWidget(self.frame_6)  #select_players
        self.sel_player = QtWidgets.QListWidget(self.frame_4)
        self.sel_player.setFrameShape(QtWidgets.QFrame.NoFrame)
        self.sel_player.setObjectName("sel_player")
        self.verticalLayout_2.addWidget(self.sel_player)
        self.horizontalLayout_4.addWidget(self.frame_4)
        spacerItem4 = QtWidgets.QSpacerItem(13, 345,
                                            QtWidgets.QSizePolicy.Preferred,
                                            QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout_4.addItem(spacerItem4)
        self.verticalLayout_3.addLayout(self.horizontalLayout_4)
        MainWindow.setCentralWidget(self.central_w)

        self.menubar = QtWidgets.QMenuBar(MainWindow)  #Menubar
        self.menubar.setGeometry(QtCore.QRect(0, 0, 556, 21))
        self.menubar.setObjectName("menubar")

        self.menuManage_Teams = QtWidgets.QMenu(self.menubar)
        self.menuManage_Teams.setCursor(QtGui.QCursor(QtCore.Qt.ArrowCursor))
        self.menuManage_Teams.setStyleSheet("color: rgb(0, 170, 255);")
        self.menuManage_Teams.setStyleSheet(
            "background-color: rgb(232, 232, 232);")
        self.menuManage_Teams.setStyleSheet(
            "selection-background-color: rgb(0, 170, 255);\n"
            "\n"
            "")
        self.menuManage_Teams.setObjectName("menuManage_Teams")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)

        self.new_t = QtWidgets.QAction(MainWindow)  #new window
        self.new_t.setIconText("NEW Team")
        self.new_t.setShortcut("Ctrl+N")
        self.new_t.setShortcutContext(QtCore.Qt.WindowShortcut)
        self.new_t.setVisible(True)
        self.new_t.setShortcutVisibleInContextMenu(True)
        self.new_t.setObjectName("new_t")

        self.open_t = QtWidgets.QAction(MainWindow)  #open team
        self.open_t.setObjectName("open_t")

        self.save_t = QtWidgets.QAction(MainWindow)  #save team
        self.save_t.setObjectName("save_t")

        self.evaluate_t = QtWidgets.QAction(MainWindow)  #EVALUATETEAM
        self.evaluate_t.setObjectName("evaluate_t")

        self.actionQuit = QtWidgets.QAction(MainWindow)  # Quitwindow
        self.actionQuit.setObjectName("actionQuit")
        self.actionQuit.triggered.connect(self.quit)

        self.menuManage_Teams.addAction(self.new_t)
        self.menuManage_Teams.addAction(self.open_t)
        self.menuManage_Teams.addAction(self.save_t)
        self.menuManage_Teams.addAction(self.evaluate_t)
        self.menuManage_Teams.addAction(self.actionQuit)
        self.menubar.addAction(self.menuManage_Teams.menuAction())

        #Action teiggered
        self.new_t.triggered.connect(self.file_new)
        self.open_t.triggered.connect(self.file_open)
        self.save_t.triggered.connect(self.file_save)
        self.evaluate_t.triggered.connect(self.file_evaluate)
        self.actionQuit.triggered.connect(self.quit)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
        # DOUBLE CLICK
        self.av_player.itemDoubleClicked.connect(self.removelist1)
        self.sel_player.itemDoubleClicked.connect(self.removelist2)

        # -----stats of player
        self.stats = {}

        self.new_screen.savename.clicked.connect(self.namechange)

        # RADIOBUTTONS  CLICK
        self.bat_rb.clicked.connect(self.load_names)
        self.wk_rb.clicked.connect(self.load_names)
        self.bow_rb.clicked.connect(self.load_names)
        self.ar_rb.clicked.connect(self.load_names)

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
        self.BAT.setText(_translate("MainWindow", "##"))
        self.label_2.setText(_translate("MainWindow", "Batsman (BAT)"))
        self.WK.setText(_translate("MainWindow", "##"))
        self.label_4.setText(_translate("MainWindow", "Bowlers (BOW)"))
        self.label_10.setText(_translate("MainWindow", "AllRounders (AR) "))
        self.ARL.setText(_translate("MainWindow", "##"))
        self.BOWL.setText(_translate("MainWindow", "##"))
        self.label_12.setText(_translate("MainWindow", "Wicket-Keeper (WK)"))
        self.label.setText(_translate("MainWindow", "Your Selection"))
        self.label_6.setText(_translate("MainWindow", "Points Availables"))
        self.points_available.setText(_translate("MainWindow", "####"))
        self.label_7.setText(_translate("MainWindow", "Points Used"))
        self.points_used.setText(_translate("MainWindow", "####"))
        self.bat_rb.setText(_translate("MainWindow", "BAT"))
        self.bow_rb.setText(_translate("MainWindow", "BOW"))
        self.ar_rb.setText(_translate("MainWindow", "AR"))
        self.wk_rb.setText(_translate("MainWindow", "WK"))
        self.label_9.setText(_translate("MainWindow", ">"))
        self.label_8.setText(_translate("MainWindow", "Team Name  :"))
        self.team_name.setText(_translate("MainWindow", "Displayed Here"))
        self.menuManage_Teams.setTitle(_translate("MainWindow",
                                                  "Manage Teams"))
        self.new_t.setText(_translate("MainWindow", "NEW Team"))
        self.new_t.setShortcut(_translate("MainWindow", "Ctrl+N"))
        self.open_t.setText(_translate("MainWindow", "OPEN Team"))
        self.open_t.setShortcut(_translate("MainWindow", "Ctrl+O"))
        self.save_t.setText(_translate("MainWindow", "SAVE team"))
        self.save_t.setShortcut(_translate("MainWindow", "Ctrl+S"))
        self.evaluate_t.setText(_translate("MainWindow", "EVALUATE Team"))
        self.evaluate_t.setShortcut(_translate("MainWindow", "Ctrl+E"))
        self.actionQuit.setText(_translate("MainWindow", "QUIT"))

    # NEW FILE MENU
    def file_new(self):
        self.newDialog.show()

    def namechange(self):
        teamname = self.new_screen.team_name.text()
        fantcurs.execute("SELECT DISTINCT name FROM teams")
        l = fantcurs.fetchall()
        for i in l:
            if i[0] == teamname:
                msg = QtWidgets.QMessageBox()
                msg.setIcon(QtWidgets.QMessageBox.Information)
                msg.setText(
                    "Team with same name already exists!!\nPlease choose another name"
                )
                msg.setWindowTitle("Invalid Team Name")
                msg.exec_()
                return 0
        if len(teamname) == 0:
            msg = QtWidgets.QMessageBox()
            msg.setIcon(QtWidgets.QMessageBox.Warning)
            msg.setText("You cannot leave the field blank!!!")
            msg.setWindowTitle("Invalid Team Name")
            msg.exec_()
            return 0
        elif teamname.isnumeric():
            msg = QtWidgets.QMessageBox()
            msg.setIcon(QtWidgets.QMessageBox.Warning)
            msg.setText(
                "Please enter a valid teamname\n(Name must contain atleast one character)!!"
            )
            msg.setWindowTitle("Invalid Team Name")
            msg.exec_()
            return 0
        else:
            self.reset()
            self.tname = self.new_screen.team_name.text()
            self.team_name.setText(str('    ' + self.tname))
            self.newDialog.close()

    #TO RESET ALL COUNTS AND LITS
    def reset(self):
        self.enablebuttons()
        self.load_names()
        self.used_points = 0
        self.alrdscount = 0
        self.wicketerscount = 0
        self.batsmencount = 0
        self.bowlerscount = 0
        self.totalcount = 0
        self.avail_points = 1000
        self.points_available.setText(str(self.avail_points))
        self.points_used.setText(str(self.used_points))
        self.BOWL.setText(str(self.bowlerscount))
        self.BAT.setText(str(self.batsmencount))
        self.ARL.setText(str(self.alrdscount))
        self.WK.setText(str(self.wicketerscount))
        self.list1.clear()
        self.load_names()

        self.sel_player.clear()

        #SAVE TEAM MENU
    def file_save(self):
        if not self.error():  #IF THERE IS AN ERROR
            msg = QMessageBox()
            msg.setIcon(QMessageBox.Critical)
            msg.setInformativeText(' Inufficient Players OR Points !!')
            msg.setWindowTitle("Fantasy Cricket")
            msg.exec_()
        elif self.error():  # IF NO ERROR
            try:
                fantcurs.execute("SELECT DISTINCT name FROM teams;")
                x = fantcurs.fetchall()
                for i in x:
                    if self.team_name.text(
                    ) == i[0]:  # CHECKING IF THE TEAMNAME ALREADY EXISTS
                        print('Updating already there')
                        fantcurs.execute("DELETE  FROM teams WHERE name='" +
                                         self.team_name.text() +
                                         "';")  #DELETING TO UPDATE TEAM
            except:
                print('error')
            for i in range(self.sel_player.count()):
                # print('----addding--')
                # print('teamnane: ',self.team_name.text())
                # print('playername: ',self.list1[i])
                # print('points: ', player_points[self.list1[i]])
                try:
                    fantcurs.execute(
                        "INSERT INTO teams (name,players,value) VALUES (?,?,?)",
                        (self.team_name.text(), self.list1[i],
                         player_points[self.list1[i]]))

                    # self.file_evaluate()
                except:
                    print('error in operation!')
            fant.commit()
        else:
            print('---error in operation')

    # QUITING METHOD
    def quit(self):
        msg = QMessageBox()
        msg.setIcon(QMessageBox.Critical)
        msg.setInformativeText(' Bye Bye')
        msg.setWindowTitle("Fantasy Cricket")
        msg.exec_()
        # print('exit')
        sys.exit()

#ON RADIOBUTTONS CLICKED

    def load_names(self):
        Batsman = 'BAT'
        WicketKeeper = 'WK'
        Allrounder = 'AR'
        Bowler = 'BWL'
        sql1 = "SELECT player,value from stats WHERE ctg = '" + Batsman + "';"
        sql2 = "SELECT Player,value from stats WHERE ctg = '" + WicketKeeper + "';"
        sql3 = "SELECT Player,value from stats WHERE ctg ='" + Allrounder + "';"
        sql4 = "SELECT Player,value from stats WHERE ctg = '" + Bowler + "';"

        fantcurs.execute(sql1)
        x = fantcurs.fetchall()
        fantcurs.execute(sql4)
        y = fantcurs.fetchall()
        fantcurs.execute(sql3)
        z = fantcurs.fetchall()
        fantcurs.execute(sql2)
        w = fantcurs.fetchall()

        batsmen = []
        bowlers = []
        allrounders = []
        wcktkeepers = []

        for k in x:
            batsmen.append(k[0])
            self.b.append(k[0])
            self.stats[k[0]] = k[1]
        for k in y:
            bowlers.append(k[0])
            self.stats[k[0]] = k[1]
            self.a.append(k[0])
        for k in w:
            wcktkeepers.append(k[0])
            self.stats[k[0]] = k[1]
            self.d.append(k[0])
        for k in z:
            allrounders.append(k[0])
            self.stats[k[0]] = k[1]
            self.c.append(k[0])
        for i in self.list1:
            if i in allrounders:
                allrounders.remove(i)
            elif i in batsmen:
                batsmen.remove(i)
            elif i in bowlers:
                bowlers.remove(i)
            elif i in wcktkeepers:
                wcktkeepers.remove(i)

        if self.bat_rb.isChecked() == True:
            self.av_player.clear()
            for i in range(len(batsmen)):
                item = QtWidgets.QListWidgetItem(batsmen[i])
                font = QtGui.QFont()
                font.setBold(True)
                font.setWeight(75)
                item.setFont(font)
                self.av_player.addItem(item)
        elif self.bow_rb.isChecked() == True:
            self.av_player.clear()
            for i in range(len(bowlers)):
                item = QtWidgets.QListWidgetItem(bowlers[i])
                font = QtGui.QFont()
                font.setBold(True)
                font.setWeight(75)
                item.setFont(font)
                self.av_player.addItem(item)
        elif self.ar_rb.isChecked() == True:
            self.av_player.clear()
            for i in range(len(allrounders)):
                item = QtWidgets.QListWidgetItem(allrounders[i])
                font = QtGui.QFont()
                font.setBold(True)
                font.setWeight(75)
                item.setFont(font)
                self.av_player.addItem(item)

        elif self.wk_rb.isChecked() == True:
            self.av_player.clear()
            for i in range(len(wcktkeepers)):
                item = QtWidgets.QListWidgetItem(wcktkeepers[i])
                font = QtGui.QFont()
                font.setBold(True)
                font.setWeight(75)
                item.setFont(font)
                self.av_player.addItem(item)

    def removelist1(
            self,
            item):  # REMOVE FROM AVAILABLE PLAYERS AND ADD TO SELECTED PLAYERS
        self.conditions_1(item.text())
        self.av_player.takeItem(self.av_player.row(item))
        self.sel_player.addItem(item.text())
        self.totalcount = self.sel_player.count()
        self.list1.append(item.text())
        self.error()

    def conditions_1(
        self, cat
    ):  # Adding and Deducting respective points from points_calculator.py
        self.avail_points -= self.stats[cat]
        self.used_points += self.stats[cat]
        if cat in self.a:
            self.bowlerscount += 1
        elif cat in self.d:
            self.wicketerscount += 1
        elif cat in self.c:
            self.alrdscount += 1
        elif cat in self.b:
            self.batsmencount += 1

        self.points_available.setText(str(self.avail_points))
        self.points_used.setText(str(self.used_points))
        self.BOWL.setText(str(self.bowlerscount))
        self.BAT.setText(str(self.batsmencount))
        self.ARL.setText(str(self.alrdscount))
        self.WK.setText(str(self.wicketerscount))

    def conditions_2(
        self, cat
    ):  # Adding and Deducting respective poinrs from points_calculator.py
        self.avail_points += self.stats[cat]
        self.used_points -= self.stats[cat]
        if cat in self.a:
            self.bowlerscount -= 1
        elif cat in self.d:
            self.wicketerscount -= 1
        elif cat in self.c:
            self.alrdscount -= 1
        elif cat in self.b:
            self.batsmencount -= 1

        self.points_available.setText(str(self.avail_points))
        self.points_used.setText(str(self.used_points))
        self.BOWL.setText(str(self.bowlerscount))
        self.BAT.setText(str(self.batsmencount))
        self.ARL.setText(str(self.alrdscount))
        self.WK.setText(str(self.wicketerscount))

    def removelist2(
            self,
            item):  # REMOVE FROM SELECTED PLAYERS AND ADD TO AVAIALBLE PLAYERS
        self.sel_player.takeItem(self.sel_player.row(item))
        self.av_player.addItem(item.text())
        self.list1.remove(item.text())
        # self.error()
        self.totalcount = self.sel_player.count()
        self.conditions_2(item.text())

    def openteam(self):  #upon open team selected
        self.reset()
        teamname = self.open_screen.open_cb.currentText()
        self.team_name.setText(teamname)
        self.enablebuttons()
        fantcurs.execute("SELECT players from teams WHERE name= '" + teamname +
                         "';")
        x = fantcurs.fetchall()
        score = []
        for i in x:
            fantcurs.execute("SELECT value from stats WHERE player='" + i[0] +
                             "';")
            y = fantcurs.fetchone()
            score.append(y[0])
        # print(score)
        sum = 0
        for i in score:
            sum += i
        self.sel_player.clear()
        self.load_names()
        for i in x:
            self.sel_player.addItem(i[0])
            self.list1.append(i[0])
            self.conditions_1(i[0])
        self.used_points = sum
        self.avail_points = 1000 - sum
        self.points_available.setText(str(self.avail_points))
        self.points_used.setText(str(self.used_points))
        self.openDialog.close()

    def enablebuttons(self):
        self.bat_rb.setEnabled(True)
        self.bow_rb.setEnabled(True)
        self.ar_rb.setEnabled(True)
        self.wk_rb.setEnabled(True)

    def disablebuttons(self):
        self.bat_rb.setEnabled(False)
        self.bow_rb.setEnabled(False)
        self.ar_rb.setEnabled(False)
        self.wk_rb.setEnabled(False)

    def error(self):
        msg = QMessageBox()
        if self.wicketerscount > 1:
            msg.setIcon(QMessageBox.Critical)
            # msg.setText("Error")
            msg.setInformativeText('Only 1 wicketkeeper is allowed!')
            msg.setWindowTitle("Error")
            msg.exec_()
            return 0
        elif self.totalcount > 11:
            msg.setIcon(QMessageBox.Critical)
            msg.setInformativeText('No more than 11 players allowed!')
            msg.setWindowTitle("Selection Error")
            msg.exec_()
            return 0
        elif self.totalcount < 11:
            return 0
        elif self.wicketerscount < 1:
            return 0
        elif self.avail_points <= -1:
            msg.setIcon(QMessageBox.Critical)
            msg.setInformativeText('Not enough points!')
            msg.setWindowTitle("Selection Cricket")
            msg.exec_()
            return 0

        return 1
Esempio n. 2
0
class Ui_MainWindow(object):
	def __init__(self): # linking files and creating objects
		self.new_Window = QtWidgets.QMainWindow()
		self.new_screen = New()
		self.new_screen.setupUi(self.new_Window)

		self.evaluate_Window = QtWidgets.QMainWindow()
		self.eval_screen = Eva()
		self.eval_screen.setupUi(self.evaluate_Window)

		self.open_Window = QtWidgets.QMainWindow()
		self.open_screen = Open()
		self.open_screen.setupUi(self.open_Window)

	def setupUi(self, MainWindow): #Ui setup
		# local variables
		self.avail_points = 1000
		self.used_points = 0
		self.totalcount = 0
		self.batsmencount = 0
		self.bowlerscount = 0
		self.alrdscount = 0
		self.wicketerscount = 0
		self.a = []  # bowler names list
		self.b = []  #  batsman nameslist
		self.c = []   # allrounder names list
		self.d = []  #wicketer names list
		self.selectlist = []	# selectedplayer's list

		MainWindow.setObjectName("MainWindow")
		MainWindow.resize(789, 728)
		palette = QtGui.QPalette()
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.WindowText, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Button, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Light, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Midlight, brush)
		brush = QtGui.QBrush(QtGui.QColor(127, 127, 127))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Dark, brush)
		brush = QtGui.QBrush(QtGui.QColor(170, 170, 170))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Mid, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Text, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.BrightText, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.ButtonText, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Base, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Window, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Shadow, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.AlternateBase, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 220))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.ToolTipBase, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.ToolTipText, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.WindowText, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Button, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Light, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Midlight, brush)
		brush = QtGui.QBrush(QtGui.QColor(127, 127, 127))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Dark, brush)
		brush = QtGui.QBrush(QtGui.QColor(170, 170, 170))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Mid, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Text, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.BrightText, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.ButtonText, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Base, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Window, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Shadow, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.AlternateBase, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 220))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.ToolTipBase, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.ToolTipText, brush)
		brush = QtGui.QBrush(QtGui.QColor(127, 127, 127))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.WindowText, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Button, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Light, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Midlight, brush)
		brush = QtGui.QBrush(QtGui.QColor(127, 127, 127))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Dark, brush)
		brush = QtGui.QBrush(QtGui.QColor(170, 170, 170))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Mid, brush)
		brush = QtGui.QBrush(QtGui.QColor(127, 127, 127))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Text, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.BrightText, brush)
		brush = QtGui.QBrush(QtGui.QColor(127, 127, 127))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.ButtonText, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Base, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Window, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Shadow, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.AlternateBase, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 220))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.ToolTipBase, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.ToolTipText, brush)
		MainWindow.setPalette(palette)
		font = QtGui.QFont()
		font.setFamily("Bookman Old Style")
		font.setPointSize(9)
		font.setBold(True)
		font.setItalic(True)
		font.setWeight(69)
		MainWindow.setFont(font)
		self.centralwidget = QtWidgets.QWidget(MainWindow)
		self.centralwidget.setObjectName("centralwidget")
		self.team_name = QtWidgets.QLabel(self.centralwidget)
		self.team_name.setGeometry(QtCore.QRect(620, 230, 91, 25))
		font = QtGui.QFont()
		font.setFamily("DejaVu Sans")
		font.setPointSize(12)
		font.setBold(True)
		font.setItalic(False)
		font.setWeight(69)
		self.team_name.setFont(font)
		self.team_name.setStyleSheet("")
		self.team_name.setObjectName("team_name")
		self.line = QtWidgets.QFrame(self.centralwidget)
		self.line.setGeometry(QtCore.QRect(9, 40, 769, 16))
		self.line.setFrameShape(QtWidgets.QFrame.HLine)
		self.line.setFrameShadow(QtWidgets.QFrame.Sunken)
		self.line.setObjectName("line")
		self.line_2 = QtWidgets.QFrame(self.centralwidget)
		self.line_2.setGeometry(QtCore.QRect(9, 134, 769, 16))
		self.line_2.setFrameShape(QtWidgets.QFrame.HLine)
		self.line_2.setFrameShadow(QtWidgets.QFrame.Sunken)
		self.line_2.setObjectName("line_2")
		self.line_3 = QtWidgets.QFrame(self.centralwidget)
		self.line_3.setGeometry(QtCore.QRect(9, 210, 769, 16))
		self.line_3.setFrameShape(QtWidgets.QFrame.HLine)
		self.line_3.setFrameShadow(QtWidgets.QFrame.Sunken)
		self.line_3.setObjectName("line_3")
		self.label = QtWidgets.QLabel(self.centralwidget)
		self.label.setGeometry(QtCore.QRect(9, 219, 16, 16))
		font = QtGui.QFont()
		font.setFamily("Bookman Old Style")
		font.setPointSize(9)
		font.setBold(True)
		font.setItalic(True)
		font.setWeight(69)
		self.label.setFont(font)
		self.label.setText("")
		self.label.setObjectName("label")
		self.widget = QtWidgets.QWidget(self.centralwidget)
		self.widget.setGeometry(QtCore.QRect(10, 160, 761, 41))
		self.widget.setObjectName("widget")
		self.horizontalLayout_5 = QtWidgets.QHBoxLayout(self.widget)
		self.horizontalLayout_5.setSizeConstraint(QtWidgets.QLayout.SetDefaultConstraint)
		self.horizontalLayout_5.setContentsMargins(0, 0, 0, 0)
		self.horizontalLayout_5.setObjectName("horizontalLayout_5")
		self.Totalplayers = QtWidgets.QLabel(self.widget)
		font = QtGui.QFont()
		font.setFamily("Sans")
		font.setPointSize(11)
		font.setBold(True)
		font.setItalic(False)
		font.setWeight(69)
		self.Totalplayers.setFont(font)
		self.Totalplayers.setIndent(30)
		self.Totalplayers.setObjectName("Totalplayers")
		self.horizontalLayout_5.addWidget(self.Totalplayers)
		self.points_available = QtWidgets.QLabel(self.widget)
		font = QtGui.QFont()
		font.setFamily("Bookman Old Style")
		font.setPointSize(11)
		font.setBold(True)
		font.setItalic(True)
		font.setWeight(69)
		self.points_available.setFont(font)
		self.points_available.setIndent(-10)
		self.points_available.setObjectName("points_available")
		self.horizontalLayout_5.addWidget(self.points_available)
		self.TeamName = QtWidgets.QLabel(self.widget)
		font = QtGui.QFont()
		font.setFamily("Sans")
		font.setPointSize(11)
		font.setBold(True)
		font.setItalic(False)
		font.setWeight(69)
		self.TeamName.setFont(font)
		self.TeamName.setIndent(100)
		self.TeamName.setObjectName("TeamName")
		self.horizontalLayout_5.addWidget(self.TeamName)
		self.points_used = QtWidgets.QLabel(self.widget)
		font = QtGui.QFont()
		font.setFamily("Bookman Old Style")
		font.setPointSize(11)
		font.setBold(True)
		font.setItalic(True)
		font.setWeight(69)
		self.points_used.setFont(font)
		self.points_used.setIndent(60)
		self.points_used.setObjectName("points_used")
		self.horizontalLayout_5.addWidget(self.points_used)
		self.label_2 = QtWidgets.QLabel(self.centralwidget)
		self.label_2.setGeometry(QtCore.QRect(480, 220, 131, 41))
		font = QtGui.QFont()
		font.setPointSize(13)
		font.setItalic(False)
		self.label_2.setFont(font)
		self.label_2.setObjectName("label_2")
		self.label_3 = QtWidgets.QLabel(self.centralwidget)
		self.label_3.setGeometry(QtCore.QRect(16, 259, 211, 31))
		self.label_3.setObjectName("label_3")
		self.label_4 = QtWidgets.QLabel(self.centralwidget)
		self.label_4.setGeometry(QtCore.QRect(400, 260, 211, 31))
		self.label_4.setObjectName("label_4")
		self.label_5 = QtWidgets.QLabel(self.centralwidget)
		self.label_5.setGeometry(QtCore.QRect(40, 10, 711, 31))
		sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed)
		sizePolicy.setHorizontalStretch(0)
		sizePolicy.setVerticalStretch(0)
		sizePolicy.setHeightForWidth(self.label_5.sizePolicy().hasHeightForWidth())
		self.label_5.setSizePolicy(sizePolicy)
		font = QtGui.QFont()
		font.setPointSize(16)
		font.setItalic(False)
		self.label_5.setFont(font)
		self.label_5.setFrameShape(QtWidgets.QFrame.Box)
		self.label_5.setAlignment(QtCore.Qt.AlignCenter)
		self.label_5.setObjectName("label_5")
		self.availablelist = QtWidgets.QListWidget(self.centralwidget)
		self.availablelist.setGeometry(QtCore.QRect(10, 290, 361, 381))
		self.availablelist.setStyleSheet("color: rgb(0, 0, 0);background-color: rgb(240, 240, 240);")
		self.availablelist.setObjectName("availablelist")
		self.selectedlist = QtWidgets.QListWidget(self.centralwidget)
		self.selectedlist.setGeometry(QtCore.QRect(390, 290, 381, 381))
		palette = QtGui.QPalette()
		brush = QtGui.QBrush(QtGui.QColor(3, 190, 159))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.WindowText, brush)
		brush = QtGui.QBrush(QtGui.QColor(240, 240, 240))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Button, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Light, brush)
		brush = QtGui.QBrush(QtGui.QColor(212, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Midlight, brush)
		brush = QtGui.QBrush(QtGui.QColor(85, 127, 127))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Dark, brush)
		brush = QtGui.QBrush(QtGui.QColor(113, 170, 170))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Mid, brush)
		brush = QtGui.QBrush(QtGui.QColor(3, 190, 159))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Text, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.BrightText, brush)
		brush = QtGui.QBrush(QtGui.QColor(3, 190, 159))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.ButtonText, brush)
		brush = QtGui.QBrush(QtGui.QColor(240, 240, 240))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Base, brush)
		brush = QtGui.QBrush(QtGui.QColor(240, 240, 240))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Window, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Shadow, brush)
		brush = QtGui.QBrush(QtGui.QColor(212, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.AlternateBase, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 220))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.ToolTipBase, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.ToolTipText, brush)
		brush = QtGui.QBrush(QtGui.QColor(3, 190, 159))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.WindowText, brush)
		brush = QtGui.QBrush(QtGui.QColor(240, 240, 240))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Button, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Light, brush)
		brush = QtGui.QBrush(QtGui.QColor(212, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Midlight, brush)
		brush = QtGui.QBrush(QtGui.QColor(85, 127, 127))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Dark, brush)
		brush = QtGui.QBrush(QtGui.QColor(113, 170, 170))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Mid, brush)
		brush = QtGui.QBrush(QtGui.QColor(3, 190, 159))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Text, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.BrightText, brush)
		brush = QtGui.QBrush(QtGui.QColor(3, 190, 159))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.ButtonText, brush)
		brush = QtGui.QBrush(QtGui.QColor(240, 240, 240))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Base, brush)
		brush = QtGui.QBrush(QtGui.QColor(240, 240, 240))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Window, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Shadow, brush)
		brush = QtGui.QBrush(QtGui.QColor(212, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.AlternateBase, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 220))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.ToolTipBase, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.ToolTipText, brush)
		brush = QtGui.QBrush(QtGui.QColor(3, 190, 159))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.WindowText, brush)
		brush = QtGui.QBrush(QtGui.QColor(240, 240, 240))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Button, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Light, brush)
		brush = QtGui.QBrush(QtGui.QColor(212, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Midlight, brush)
		brush = QtGui.QBrush(QtGui.QColor(85, 127, 127))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Dark, brush)
		brush = QtGui.QBrush(QtGui.QColor(113, 170, 170))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Mid, brush)
		brush = QtGui.QBrush(QtGui.QColor(3, 190, 159))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Text, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.BrightText, brush)
		brush = QtGui.QBrush(QtGui.QColor(3, 190, 159))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.ButtonText, brush)
		brush = QtGui.QBrush(QtGui.QColor(240, 240, 240))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Base, brush)
		brush = QtGui.QBrush(QtGui.QColor(240, 240, 240))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Window, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Shadow, brush)
		brush = QtGui.QBrush(QtGui.QColor(170, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.AlternateBase, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 220))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.ToolTipBase, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.ToolTipText, brush)
		self.selectedlist.setPalette(palette)
		self.selectedlist.setStyleSheet("color: rgb(0, 0, 0);background-color: rgb(240, 240, 240);")
		self.selectedlist.setObjectName("selectedlist")
		self.batradio = QtWidgets.QRadioButton(self.centralwidget)
		self.batradio.setEnabled(False)
		self.batradio.setGeometry(QtCore.QRect(10, 240, 69, 21))
		font = QtGui.QFont()
		font.setFamily("Sans")
		font.setPointSize(9)
		font.setBold(True)
		font.setWeight(69)
		self.batradio.setFont(font)
		self.batradio.setTabletTracking(False)
		self.batradio.setAcceptDrops(False)
		self.batradio.setToolTipDuration(20)
		self.batradio.setStyleSheet("Batmans")
		self.batradio.setObjectName("batradio")
		self.wkradio = QtWidgets.QRadioButton(self.centralwidget)
		self.wkradio.setEnabled(False)
		self.wkradio.setGeometry(QtCore.QRect(70, 240, 120, 21))
		font = QtGui.QFont()
		font.setFamily("Sans")
		font.setPointSize(9)
		font.setBold(True)
		font.setItalic(False)
		font.setWeight(69)
		self.wkradio.setFont(font)
		self.wkradio.setObjectName("wkradio")
		self.arradio = QtWidgets.QRadioButton(self.centralwidget)
		self.arradio.setEnabled(False)
		self.arradio.setGeometry(QtCore.QRect(130, 240, 100, 21))
		font = QtGui.QFont()
		font.setFamily("Sans")
		font.setPointSize(9)
		font.setBold(True)
		font.setItalic(False)
		font.setWeight(69)
		self.arradio.setFont(font)
		self.arradio.setChecked(False)
		self.arradio.setObjectName("arradio")
		self.bowlradio = QtWidgets.QRadioButton(self.centralwidget)
		self.bowlradio.setEnabled(False)
		self.bowlradio.setGeometry(QtCore.QRect(200, 240, 79, 21))
		font = QtGui.QFont()
		font.setFamily("Sans")
		font.setPointSize(9)
		font.setBold(True)
		font.setItalic(False)
		font.setWeight(69)
		self.bowlradio.setFont(font)
		self.bowlradio.setObjectName("bowlradio")
		self.Batsman = QtWidgets.QLabel(self.centralwidget)
		self.Batsman.setGeometry(QtCore.QRect(10, 50, 126, 41))
		palette = QtGui.QPalette()
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.WindowText, brush)
		brush = QtGui.QBrush(QtGui.QColor(212, 212, 212))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Button, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Light, brush)
		brush = QtGui.QBrush(QtGui.QColor(233, 233, 233))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Midlight, brush)
		brush = QtGui.QBrush(QtGui.QColor(106, 106, 106))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Dark, brush)
		brush = QtGui.QBrush(QtGui.QColor(141, 141, 141))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Mid, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Text, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.BrightText, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.ButtonText, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Base, brush)
		brush = QtGui.QBrush(QtGui.QColor(212, 212, 212))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Window, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Shadow, brush)
		brush = QtGui.QBrush(QtGui.QColor(233, 233, 233))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.AlternateBase, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 220))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.ToolTipBase, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.ToolTipText, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.WindowText, brush)
		brush = QtGui.QBrush(QtGui.QColor(212, 212, 212))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Button, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Light, brush)
		brush = QtGui.QBrush(QtGui.QColor(233, 233, 233))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Midlight, brush)
		brush = QtGui.QBrush(QtGui.QColor(106, 106, 106))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Dark, brush)
		brush = QtGui.QBrush(QtGui.QColor(141, 141, 141))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Mid, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Text, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.BrightText, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.ButtonText, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Base, brush)
		brush = QtGui.QBrush(QtGui.QColor(212, 212, 212))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Window, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Shadow, brush)
		brush = QtGui.QBrush(QtGui.QColor(233, 233, 233))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.AlternateBase, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 220))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.ToolTipBase, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.ToolTipText, brush)
		brush = QtGui.QBrush(QtGui.QColor(106, 106, 106))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.WindowText, brush)
		brush = QtGui.QBrush(QtGui.QColor(212, 212, 212))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Button, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Light, brush)
		brush = QtGui.QBrush(QtGui.QColor(233, 233, 233))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Midlight, brush)
		brush = QtGui.QBrush(QtGui.QColor(106, 106, 106))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Dark, brush)
		brush = QtGui.QBrush(QtGui.QColor(141, 141, 141))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Mid, brush)
		brush = QtGui.QBrush(QtGui.QColor(106, 106, 106))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Text, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.BrightText, brush)
		brush = QtGui.QBrush(QtGui.QColor(106, 106, 106))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.ButtonText, brush)
		brush = QtGui.QBrush(QtGui.QColor(212, 212, 212))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Base, brush)
		brush = QtGui.QBrush(QtGui.QColor(212, 212, 212))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Window, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Shadow, brush)
		brush = QtGui.QBrush(QtGui.QColor(212, 212, 212))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.AlternateBase, brush)
		brush = QtGui.QBrush(QtGui.QColor(255, 255, 220))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.ToolTipBase, brush)
		brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
		brush.setStyle(QtCore.Qt.SolidPattern)
		palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.ToolTipText, brush)
		self.Batsman.setPalette(palette)
		font = QtGui.QFont()
		font.setFamily("Sans")
		font.setPointSize(10)
		font.setBold(True)
		font.setItalic(False)
		font.setWeight(69)
		self.Batsman.setFont(font)
		self.Batsman.setIndent(1)
		self.Batsman.setObjectName("Batsman")
		self.Bowlers = QtWidgets.QLabel(self.centralwidget)
		self.Bowlers.setGeometry(QtCore.QRect(370, 110, 110, 17))
		font = QtGui.QFont()
		font.setFamily("Sans")
		font.setPointSize(10)
		font.setBold(True)
		font.setItalic(False)
		font.setWeight(69)
		self.Bowlers.setFont(font)
		self.Bowlers.setObjectName("Bowlers")
		self.alrcount = QtWidgets.QLabel(self.centralwidget)
		self.alrcount.setGeometry(QtCore.QRect(500, 60, 31, 17))
		font = QtGui.QFont()
		font.setFamily("Bookman Old Style")
		font.setPointSize(10)
		font.setBold(True)
		font.setItalic(True)
		font.setWeight(69)
		self.alrcount.setFont(font)
		self.alrcount.setIndent(10)
		self.alrcount.setObjectName("alrcount")
		self.bowlcount = QtWidgets.QLabel(self.centralwidget)
		self.bowlcount.setGeometry(QtCore.QRect(480, 110, 31, 17))
		font = QtGui.QFont()
		font.setFamily("Bookman Old Style")
		font.setPointSize(10)
		font.setBold(True)
		font.setItalic(True)
		font.setWeight(69)
		self.bowlcount.setFont(font)
		self.bowlcount.setIndent(10)
		self.bowlcount.setObjectName("bowlcount")
		self.batcount = QtWidgets.QLabel(self.centralwidget)
		self.batcount.setGeometry(QtCore.QRect(130, 60, 21, 17))
		font = QtGui.QFont()
		font.setFamily("Bookman Old Style")
		font.setPointSize(10)
		font.setBold(True)
		font.setItalic(True)
		font.setWeight(69)
		self.batcount.setFont(font)
		self.batcount.setObjectName("batcount")
		self.Allrounder = QtWidgets.QLabel(self.centralwidget)
		self.Allrounder.setGeometry(QtCore.QRect(370, 60, 123, 17))
		font = QtGui.QFont()
		font.setFamily("Sans")
		font.setPointSize(10)
		font.setBold(True)
		font.setItalic(False)
		font.setWeight(69)
		self.Allrounder.setFont(font)
		self.Allrounder.setObjectName("Allrounder")
		self.Wicketkeeepr = QtWidgets.QLabel(self.centralwidget)
		self.Wicketkeeepr.setGeometry(QtCore.QRect(20, 110, 139, 17))
		font = QtGui.QFont()
		font.setFamily("Sans")
		font.setPointSize(10)
		font.setBold(True)
		font.setItalic(False)
		font.setWeight(69)
		self.Wicketkeeepr.setFont(font)
		self.Wicketkeeepr.setObjectName("Wicketkeeepr")
		self.wicketcount = QtWidgets.QLabel(self.centralwidget)
		self.wicketcount.setGeometry(QtCore.QRect(160, 110, 31, 17))
		font = QtGui.QFont()
		font.setFamily("Bookman Old Style")
		font.setPointSize(10)
		font.setBold(True)
		font.setItalic(True)
		font.setWeight(69)
		self.wicketcount.setFont(font)
		self.wicketcount.setIndent(10)
		self.wicketcount.setObjectName("wicketcount")
		self.line.raise_()
		self.line_2.raise_()
		self.line_3.raise_()
		self.label.raise_()
		self.batradio.raise_()
		self.wkradio.raise_()
		self.arradio.raise_()
		self.bowlradio.raise_()
		self.label_2.raise_()
		self.label_3.raise_()
		self.label_4.raise_()
		self.label_5.raise_()
		self.team_name.raise_()
		MainWindow.setCentralWidget(self.centralwidget)
		self.menubar = QtWidgets.QMenuBar(MainWindow)
		self.menubar.setGeometry(QtCore.QRect(0, 0, 789, 20))
		self.menubar.setObjectName("menubar")
		self.menuManage_Teams = QtWidgets.QMenu(self.menubar)
		font = QtGui.QFont()
		font.setFamily("Sans")
		font.setBold(True)
		font.setWeight(69)
		self.menuManage_Teams.setFont(font)
		self.menuManage_Teams.setObjectName("menuManage_Teams")
		MainWindow.setMenuBar(self.menubar)
		self.statusbar = QtWidgets.QStatusBar(MainWindow)
		self.statusbar.setObjectName("statusbar")
		MainWindow.setStatusBar(self.statusbar)
		self.new_team = QtWidgets.QAction(MainWindow)
		font = QtGui.QFont()
		font.setFamily("DejaVu Sans")
		font.setBold(False)
		font.setWeight(50)
		self.new_team.setFont(font)
		self.new_team.setProperty("shortcutVisibleInContextMenu", True)
		self.new_team.setObjectName("new_team")
		self.new_team.triggered.connect(self.file_new)
		self.open_team = QtWidgets.QAction(MainWindow)
		font = QtGui.QFont()
		font.setFamily("DejaVu Sans")
		font.setBold(False)
		font.setWeight(50)
		self.open_team.setFont(font)
		self.open_team.setProperty("shortcutVisibleInContextMenu", True)
		self.open_team.setObjectName("open_team")
		self.open_team.triggered.connect(self.open_file)
		self.save_team = QtWidgets.QAction(MainWindow)
		font = QtGui.QFont()
		font.setFamily("DejaVu Sans")
		font.setBold(False)
		font.setWeight(50)
		self.save_team.setFont(font)
		self.save_team.setProperty("shortcutVisibleInContextMenu", True)
		self.save_team.setObjectName("save_team")
		self.save_team.triggered.connect(self.file_save)
		self.evaluate_team = QtWidgets.QAction(MainWindow)
		font = QtGui.QFont()
		font.setFamily("DejaVu Sans")
		font.setBold(False)
		font.setWeight(50)
		self.evaluate_team.setFont(font)
		self.evaluate_team.setProperty("shortcutVisibleInContextMenu", True)
		self.evaluate_team.setObjectName("evaluate_team")
		self.evaluate_team.triggered.connect(self.eval_file)
		self.actionQuit = QtWidgets.QAction(MainWindow)
		font = QtGui.QFont()
		font.setFamily("DejaVu Sans")
		font.setBold(False)
		font.setWeight(50)
		self.actionQuit.setFont(font)
		self.actionQuit.setProperty("shortcutVisibleInContextMenu", True)
		self.actionQuit.setObjectName("actionQuit")
		self.actionQuit.triggered.connect(lambda: quit())
		self.menuManage_Teams.addAction(self.new_team)
		self.menuManage_Teams.addAction(self.open_team)
		self.menuManage_Teams.addAction(self.evaluate_team)
		self.menuManage_Teams.addAction(self.save_team)
		self.menuManage_Teams.addAction(self.actionQuit)
		self.menubar.addAction(self.menuManage_Teams.menuAction())

		self.retranslateUi(MainWindow)
		QtCore.QMetaObject.connectSlotsByName(MainWindow)

		# Click responses
		self.availablelist.itemDoubleClicked.connect(self.transfer1)
		self.selectedlist.itemDoubleClicked.connect(self.transfer2)
		self.stats = {}
		self.new_screen.savename.clicked.connect(self.namechange)
		self.batradio.clicked.connect(self.load_names)
		self.wkradio.clicked.connect(self.load_names)
		self.bowlradio.clicked.connect(self.load_names)
		self.arradio.clicked.connect(self.load_names)

	def retranslateUi(self, MainWindow):
		_translate = QtCore.QCoreApplication.translate
		MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
		self.team_name.setText(_translate("MainWindow", "XXX"))
		self.Totalplayers.setText(_translate("MainWindow", "Available Points"))
		self.points_available.setStatusTip(_translate("MainWindow", "max point=100"))
		self.points_available.setText(_translate("MainWindow", "##"))
		self.TeamName.setText(_translate("MainWindow", "Points used"))
		self.points_used.setText(_translate("MainWindow", "##"))
		self.label_2.setText(_translate("MainWindow", "Team Name:"))
		self.label_3.setText(_translate("MainWindow", "Available Players"))
		self.label_4.setText(_translate("MainWindow", "Selected Players"))
		self.label_5.setText(_translate("MainWindow", "Welcome to Fantasy Cricket!"))
		self.batradio.setText(_translate("MainWindow", "Bat"))
		self.wkradio.setText(_translate("MainWindow", "WK"))
		self.arradio.setText(_translate("MainWindow", "AR"))
		self.bowlradio.setText(_translate("MainWindow", "BOWL"))
		self.Batsman.setText(_translate("MainWindow", "Batsman(Bat)"))
		self.Bowlers.setText(_translate("MainWindow", "Bowlers (Bowl)"))
		self.alrcount.setText(_translate("MainWindow", "##"))
		self.bowlcount.setText(_translate("MainWindow", "##"))
		self.batcount.setText(_translate("MainWindow", "##"))
		self.Allrounder.setText(_translate("MainWindow", "Allrounder (ALR)"))
		self.Wicketkeeepr.setText(_translate("MainWindow", "WicketKeeper(WK)"))
		self.wicketcount.setText(_translate("MainWindow", "##"))
		self.menuManage_Teams.setTitle(_translate("MainWindow", "Manage Teams"))
		self.new_team.setText(_translate("MainWindow", "New Team"))
		self.new_team.setStatusTip(_translate("MainWindow", "enter team name"))
		self.new_team.setShortcut(_translate("MainWindow", "Ctrl+N"))
		self.open_team.setText(_translate("MainWindow", "Open Team"))
		self.open_team.setStatusTip(_translate("MainWindow", "opening team"))
		self.open_team.setShortcut(_translate("MainWindow", "Ctrl+O"))
		self.save_team.setText(_translate("MainWindow", "Save Team"))
		self.save_team.setStatusTip(_translate("MainWindow", "saving team.."))
		self.save_team.setShortcut(_translate("MainWindow", "Ctrl+S"))
		self.evaluate_team.setText(_translate("MainWindow", "Evaluate Team"))
		self.evaluate_team.setShortcut(_translate("MainWindow", "Ctrl+E"))
		self.actionQuit.setText(_translate("MainWindow", "Quit"))
		self.actionQuit.setShortcut(_translate("MainWindow", "Ctrl+Q"))

#Double Click functions:
	def transfer1(self, item):# available -> selected 
		self.calculations_1(item.text())
		self.availablelist.takeItem(self.availablelist.row(item))
		self.selectedlist.addItem(item.text())
		self.totalcount = self.selectedlist.count()
		self.selectlist.append(item.text())
		self.checkerror()

	def transfer2(self, item):#available <- Selected
		self.selectedlist.takeItem(self.selectedlist.row(item))
		self.availablelist.addItem(item.text())
		self.selectlist.remove(item.text())
		self.totalcount = self.selectedlist.count()
		self.calculations_2(item.text())

	def calculations_1(self, cat): # update player and point count
		self.avail_points -= self.stats[cat]
		self.used_points += self.stats[cat]
		if cat in self.a:
			self.bowlerscount += 1
		elif cat in self.d:
			self.wicketerscount += 1
		elif cat in self.c:
			self.alrdscount += 1
		elif cat in self.b:
			self.batsmencount += 1

		self.points_available.setText(str(self.avail_points))
		self.points_used.setText(str(self.used_points))
		self.bowlcount.setText(str(self.bowlerscount))
		self.batcount.setText(str(self.batsmencount))
		self.alrcount.setText(str(self.alrdscount))
		self.wicketcount.setText(str(self.wicketerscount))

	def calculations_2(self, cat):  # update player and point count 
		self.avail_points += self.stats[cat]
		self.used_points -= self.stats[cat]
		if cat in self.a:
			self.bowlerscount -= 1
		elif cat in self.d:
			self.wicketerscount -= 1
		elif cat in self.c:
			self.alrdscount -= 1
		elif cat in self.b:
			self.batsmencount -= 1

		self.points_available.setText(str(self.avail_points))
		self.points_used.setText(str(self.used_points))
		self.bowlcount.setText(str(self.bowlerscount))
		self.batcount.setText(str(self.batsmencount))
		self.alrcount.setText(str(self.alrdscount))
		self.wicketcount.setText(str(self.wicketerscount))
#Double click functions end

#Menu Functions
	def file_new(self):# opens new.py
		self.new_Window.show()

	def open_file(self): # opens open file
		self.open_screen.setupUi(self.open_Window)
		self.open_Window.show()
		self.open_screen.openbtn.clicked.connect(self.openteam)

	def eval_file(self): # opens evaluate file
		self.eval_screen.setupUi(self.evaluate_Window)
		self.evaluate_Window.show()

	def namechange(self): # set name for team
		teamname = self.new_screen.team_name.text()
		datacurs.execute("SELECT DISTINCT name FROM teams")
		allteams = datacurs.fetchall()
		for oneteam in allteams:
			if oneteam[0] == teamname:
				msg = QtWidgets.QMessageBox()
				msg.setIcon(QtWidgets.QMessageBox.Information)
				msg.setText("Team name already exists, try something else")
				msg.setWindowTitle("Error")
				msg.exec_()
				return 0
		if len(teamname) == 0:
			msg = QtWidgets.QMessageBox()
			msg.setIcon(QtWidgets.QMessageBox.Warning)
			msg.setText("Team name cannot be empty")
			msg.setWindowTitle("Error")
			msg.exec_()
			return 0
		elif teamname.isnumeric():
			msg = QtWidgets.QMessageBox()
			msg.setIcon(QtWidgets.QMessageBox.Warning)
			msg.setText("Team name cannot be only numbers")
			msg.setWindowTitle("Error")
			msg.exec_()
			return 0
		else:
			self.reset()
			self.tname = self.new_screen.team_name.text()
			self.team_name.setText(self.tname)
			self.new_Window.close()

	def file_save(self): # save teams, if already there -> update
		if not self.checkerror():  # if error
			msg = QMessageBox()
			msg.setIcon(QMessageBox.Critical)
			msg.setInformativeText('Insufficient Players OR Points !!')
			msg.setWindowTitle('Error')
			msg.exec_()
		elif self.checkerror():  # if no error
			try:
				datacurs.execute("SELECT DISTINCT name FROM teams;")
				allteams = datacurs.fetchall()
				for oneteam in allteams:
					if self.team_name.text() == oneteam[0]:
						print('Updating already there')
						datacurs.execute("DELETE  FROM teams WHERE name='" + self.team_name.text() + "';")
			except:
				print('error')
			for i in range(self.selectedlist.count()):
				try:
					datacurs.execute("INSERT INTO teams (name,players,value) VALUES (?,?,?)",
									 (self.team_name.text(), self.selectlist[i], player_points[self.selectlist[i]]))
				except:
					print('error in operation!')
			data.commit()
		else:
			print('---error in operation')

	def openteam(self): # open saved teams
		self.reset()
		teamname = self.open_screen.opendrop.currentText()
		self.team_name.setText(teamname)
		self.enablebuttons()
		datacurs.execute("SELECT players from teams WHERE name= '" + teamname + "';")
		Players = datacurs.fetchall()
		scores = []
		for Player in Players:
			datacurs.execute("SELECT value from stats WHERE player='"+Player[0]+"';")
			playval = datacurs.fetchone()
			scores.append(playval[0])
		summ = 0
		for score in scores:
			summ += score
		self.selectedlist.clear()
		self.load_names()
		for Player in Players:
			self.selectedlist.addItem(Player[0])
			self.selectlist.append(Player[0])
			self.calculations_1(Player[0])
		self.used_points = summ
		self.avail_points = 1000 - summ
		self.points_available.setText(str(self.avail_points))
		self.points_used.setText(str(self.used_points))
		self.open_Window.close()
#Menu functions end

#Radio button functions:
	def enablebuttons(self):# enables radio buttons
		self.batradio.setEnabled(True)
		self.bowlradio.setEnabled(True)
		self.arradio.setEnabled(True)
		self.wkradio.setEnabled(True)

	def load_names(self): #when radio buttons clicked
		datacurs.execute('SELECT player,value from stats WHERE ctg = "BAT";')
		batter = datacurs.fetchall()
		datacurs.execute('SELECT Player,value from stats WHERE ctg = "WK";')
		wick = datacurs.fetchall()
		datacurs.execute('SELECT Player,value from stats WHERE ctg ="AR";')
		rounder = datacurs.fetchall()
		datacurs.execute('SELECT Player,value from stats WHERE ctg = "BWL";')
		bowlin = datacurs.fetchall()

		batsmen = []
		bowlers = []
		allrounders = []
		wcktkeepers = []

		for boo in bowlin:
			bowlers.append(boo[0])
			self.stats[boo[0]] = boo[1]
			self.a.append(boo[0])
		for batt in batter:
			batsmen.append(batt[0])
			self.b.append(batt[0])
			self.stats[batt[0]] = batt[1]
		for roun in rounder:
			allrounders.append(roun[0])
			self.stats[roun[0]] = roun[1]
			self.c.append(roun[0])
		for wic in wick:
			wcktkeepers.append(wic[0])
			self.stats[wic[0]] = wic[1]
			self.d.append(wic[0])
		
		for selected in self.selectlist:
			if selected in allrounders:
				allrounders.remove(selected)
			elif selected in batsmen:
				batsmen.remove(selected)
			elif selected in bowlers:
				bowlers.remove(selected)
			elif selected in wcktkeepers:
				wcktkeepers.remove(selected)

		if self.batradio.isChecked() == True:
			self.availablelist.clear()
			for i in range(len(batsmen)):
				item = QtWidgets.QListWidgetItem(batsmen[i])
				font = QtGui.QFont()
				font.setBold(True)
				font.setWeight(69)
				item.setFont(font)
				self.availablelist.addItem(item)
		elif self.bowlradio.isChecked() == True:
			self.availablelist.clear()
			for i in range(len(bowlers)):
				item = QtWidgets.QListWidgetItem(bowlers[i])
				font = QtGui.QFont()
				font.setBold(True)
				font.setWeight(69)
				item.setFont(font)
				self.availablelist.addItem(item)
		elif self.arradio.isChecked() == True:
			self.availablelist.clear()
			for i in range(len(allrounders)):
				item = QtWidgets.QListWidgetItem(allrounders[i])
				font = QtGui.QFont()
				font.setBold(True)
				font.setWeight(69)
				item.setFont(font)
				self.availablelist.addItem(item)

		elif self.wkradio.isChecked() == True:
			self.availablelist.clear()
			for i in range(len(wcktkeepers)):
				item = QtWidgets.QListWidgetItem(wcktkeepers[i])
				font = QtGui.QFont()
				font.setBold(True)
				font.setWeight(69)
				item.setFont(font)
				self.availablelist.addItem(item)
#Radio Functions end

#Other functions:
	def checkerror(self):# check for errors
			msg = QMessageBox()
			if self.wicketerscount > 1:
				msg.setIcon(QMessageBox.Warning)
				msg.setInformativeText('Only 1 wicketkeeper is allowed!')
				msg.setWindowTitle("Error")
				msg.exec_()
				return 0
			if self.totalcount < 11 :
				return 0
			if self.wicketerscount < 1:
				return 0
			if self.avail_points <= -1:
				msg.setIcon(QMessageBox.Warning)
				msg.setInformativeText('Not enough points!')
				msg.setWindowTitle("Error")
				msg.exec_()
				return 0

			return 1

	def reset(self): # reset local variables, lists
		self.enablebuttons()
		self.load_names()
		self.used_points = 0
		self.alrdscount = 0
		self.wicketerscount = 0
		self.batsmencount = 0
		self.bowlerscount = 0
		self.totalcount = 0
		self.avail_points = 1000
		self.points_available.setText(str(self.avail_points))
		self.points_used.setText(str(self.used_points))
		self.bowlcount.setText(str(self.bowlerscount))
		self.batcount.setText(str(self.batsmencount))
		self.alrcount.setText(str(self.alrdscount))
		self.wicketcount.setText(str(self.wicketerscount))
		self.selectlist.clear()
		self.load_names()
		self.selectedlist.clear()
Esempio n. 3
0
class Ui_MainWindow(object):
    def __init__(self):
        self.newDialog = QtWidgets.QMainWindow()
        self.new_screen = New()
        self.new_screen.setupUi(self.newDialog)

        self.EvaluateWindow = QtWidgets.QMainWindow()
        self.eval_screen = Eva()
        self.eval_screen.setupUi(self.EvaluateWindow)

        self.openDialog = QtWidgets.QMainWindow()
        self.open_screen = Open()
        self.open_screen.setupUi(self.openDialog)

    # FILE OPENING TAB
    def file_open(self):
        self.open_screen.setupUi(self.openDialog)
        self.openDialog.show()
        self.open_screen.openbtn.clicked.connect(self.openteam)

    # EVALUATE TEAM TAB
    def file_evaluate(self):
        self.eval_screen.setupUi(self.EvaluateWindow)
        self.EvaluateWindow.show()

    def setupUi(self, MainWindow):

        # INITIALISING POINTS AND COUNTS
        self.avail_points = 1000
        self.used_points = 0
        self.totalcount = 0
        self.batsmencount = 0
        self.bowlerscount = 0
        self.alrdscount = 0
        self.wicketerscount = 0

        # INITIALIZING CATEGORY

        self.a = []  # bowler names list
        self.b = []  #  batsman nameslist
        self.c = []  # allrounder names list
        self.d = []  #wicketer names list
        self.list1 = []  # selected player's list

        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(737, 728)
        font = QtGui.QFont()
        font.setFamily("Bookman Old Style")
        font.setPointSize(9)
        font.setBold(True)
        font.setItalic(True)
        font.setWeight(75)
        MainWindow.setFont(font)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.verticalLayout = QtWidgets.QVBoxLayout(self.centralwidget)
        self.verticalLayout.setObjectName("verticalLayout")
        self.team_name = QtWidgets.QLabel(self.centralwidget)
        font = QtGui.QFont()
        font.setFamily("Bookman Old Style")
        font.setPointSize(16)
        font.setBold(True)
        font.setItalic(False)
        font.setWeight(75)

        # TEAMNAME

        self.team_name.setFont(font)
        self.team_name.setStyleSheet("")
        self.team_name.setObjectName("team_name")
        self.verticalLayout.addWidget(self.team_name)
        self.line = QtWidgets.QFrame(self.centralwidget)
        self.line.setFrameShape(QtWidgets.QFrame.HLine)
        self.line.setFrameShadow(QtWidgets.QFrame.Sunken)
        self.line.setObjectName("line")
        self.verticalLayout.addWidget(self.line)
        self.horizontalLayout = QtWidgets.QHBoxLayout()
        self.horizontalLayout.setSizeConstraint(
            QtWidgets.QLayout.SetNoConstraint)
        self.horizontalLayout.setContentsMargins(-1, 20, -1, 20)
        self.horizontalLayout.setSpacing(0)
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.Batsman = QtWidgets.QLabel(self.centralwidget)
        palette = QtGui.QPalette()
        brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
        brush.setStyle(QtCore.Qt.SolidPattern)
        self.Batsman.setPalette(palette)
        font = QtGui.QFont()
        font.setFamily("Bookman Old Style")
        font.setPointSize(9)
        font.setBold(True)
        font.setItalic(True)
        font.setWeight(75)
        self.Batsman.setFont(font)
        self.Batsman.setIndent(1)
        self.Batsman.setObjectName("Batsman")
        self.horizontalLayout.addWidget(self.Batsman)

        #BATSMAN COUNT
        self.batcount = QtWidgets.QLabel(self.centralwidget)
        font = QtGui.QFont()
        font.setFamily("Bookman Old Style")
        font.setPointSize(9)
        font.setBold(True)
        font.setItalic(True)
        font.setWeight(75)
        self.batcount.setFont(font)
        self.batcount.setObjectName("batcount")
        self.horizontalLayout.addWidget(self.batcount)
        self.Wicketkeeepr = QtWidgets.QLabel(self.centralwidget)
        font = QtGui.QFont()
        font.setFamily("Bookman Old Style")
        font.setPointSize(9)
        font.setBold(True)
        font.setItalic(True)
        font.setWeight(75)
        self.Wicketkeeepr.setFont(font)
        self.Wicketkeeepr.setObjectName("Wicketkeeepr")
        self.horizontalLayout.addWidget(self.Wicketkeeepr)

        # WICKETER'S COUNT
        self.wicketcount = QtWidgets.QLabel(self.centralwidget)
        font = QtGui.QFont()
        font.setFamily("Bookman Old Style")
        font.setPointSize(9)
        font.setBold(True)
        font.setItalic(True)
        font.setWeight(75)
        self.wicketcount.setFont(font)
        self.wicketcount.setIndent(10)
        self.wicketcount.setObjectName("wicketcount")
        self.horizontalLayout.addWidget(self.wicketcount)
        self.Allrounder = QtWidgets.QLabel(self.centralwidget)
        font = QtGui.QFont()
        font.setFamily("Bookman Old Style")
        font.setPointSize(9)
        font.setBold(True)
        font.setItalic(True)
        font.setWeight(75)
        self.Allrounder.setFont(font)
        self.Allrounder.setObjectName("Allrounder")
        self.horizontalLayout.addWidget(self.Allrounder)

        # ALLROUNDER'S COUNT
        self.alrcount = QtWidgets.QLabel(self.centralwidget)
        font = QtGui.QFont()
        font.setFamily("Bookman Old Style")
        font.setPointSize(9)
        font.setBold(True)
        font.setItalic(True)
        font.setWeight(75)
        self.alrcount.setFont(font)
        self.alrcount.setIndent(10)
        self.alrcount.setObjectName("alrcount")
        self.horizontalLayout.addWidget(self.alrcount)
        self.Bowlers = QtWidgets.QLabel(self.centralwidget)
        font = QtGui.QFont()
        font.setFamily("Bookman Old Style")
        font.setPointSize(9)
        font.setBold(True)
        font.setItalic(True)
        font.setWeight(75)
        self.Bowlers.setFont(font)
        self.Bowlers.setObjectName("Bowlers")
        self.horizontalLayout.addWidget(self.Bowlers)

        #BOWLERS COUNT
        self.bowlcount = QtWidgets.QLabel(self.centralwidget)
        font = QtGui.QFont()
        font.setFamily("Bookman Old Style")
        font.setPointSize(9)
        font.setBold(True)
        font.setItalic(True)
        font.setWeight(75)
        self.bowlcount.setFont(font)
        self.bowlcount.setIndent(10)
        self.bowlcount.setObjectName("bowlcount")
        self.horizontalLayout.addWidget(self.bowlcount)
        self.verticalLayout.addLayout(self.horizontalLayout)
        self.line_2 = QtWidgets.QFrame(self.centralwidget)
        self.line_2.setFrameShape(QtWidgets.QFrame.HLine)
        self.line_2.setFrameShadow(QtWidgets.QFrame.Sunken)
        self.line_2.setObjectName("line_2")
        self.verticalLayout.addWidget(self.line_2)
        self.horizontalLayout_3 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_3.setSizeConstraint(
            QtWidgets.QLayout.SetMaximumSize)
        self.horizontalLayout_3.setContentsMargins(0, 20, -1, 20)
        self.horizontalLayout_3.setSpacing(0)
        self.horizontalLayout_3.setObjectName("horizontalLayout_3")

        # RADIOBUTTONS FOR CHOOSING CATEGORY

        # BAT RB
        self.bat_rb = QtWidgets.QRadioButton(self.centralwidget)
        self.bat_rb.setEnabled(False)
        font = QtGui.QFont()
        font.setPointSize(9)
        font.setBold(True)
        font.setWeight(75)
        self.bat_rb.setFont(font)
        self.bat_rb.setTabletTracking(False)
        self.bat_rb.setAcceptDrops(False)
        self.bat_rb.setToolTipDuration(20)
        self.bat_rb.setStyleSheet("Batmans")
        self.bat_rb.setObjectName("bat_rb")
        self.horizontalLayout_3.addWidget(self.bat_rb)

        # WK RB
        self.wk_rb = QtWidgets.QRadioButton(self.centralwidget)
        self.wk_rb.setEnabled(False)
        font = QtGui.QFont()
        font.setFamily("Bookman Old Style")
        font.setPointSize(9)
        font.setBold(True)
        font.setItalic(True)
        font.setWeight(75)
        self.wk_rb.setFont(font)
        self.wk_rb.setObjectName("wk_rb")
        self.horizontalLayout_3.addWidget(self.wk_rb)

        # ALLROUUNDER RB
        self.ar_rb = QtWidgets.QRadioButton(self.centralwidget)
        self.ar_rb.setEnabled(False)
        font = QtGui.QFont()
        font.setFamily("Bookman Old Style")
        font.setPointSize(9)
        font.setBold(True)
        font.setItalic(True)
        font.setWeight(75)
        self.ar_rb.setFont(font)
        self.ar_rb.setChecked(False)
        self.ar_rb.setObjectName("ar_rb")
        self.horizontalLayout_3.addWidget(self.ar_rb)

        # BOWLER RB
        self.bow_rb = QtWidgets.QRadioButton(self.centralwidget)
        self.bow_rb.setEnabled(False)
        font = QtGui.QFont()
        font.setFamily("Bookman Old Style")
        font.setPointSize(9)
        font.setBold(True)
        font.setItalic(True)
        font.setWeight(75)
        self.bow_rb.setFont(font)
        self.bow_rb.setObjectName("bow_rb")
        self.horizontalLayout_3.addWidget(self.bow_rb)
        self.verticalLayout.addLayout(self.horizontalLayout_3)
        self.line_3 = QtWidgets.QFrame(self.centralwidget)
        self.line_3.setFrameShape(QtWidgets.QFrame.HLine)
        self.line_3.setFrameShadow(QtWidgets.QFrame.Sunken)
        self.line_3.setObjectName("line_3")
        self.verticalLayout.addWidget(self.line_3)
        self.label = QtWidgets.QLabel(self.centralwidget)
        font = QtGui.QFont()
        font.setFamily("Bookman Old Style")
        font.setPointSize(9)
        font.setBold(True)
        font.setItalic(True)
        font.setWeight(75)
        self.label.setFont(font)
        self.label.setText("")
        self.label.setObjectName("label")
        self.verticalLayout.addWidget(self.label)
        self.horizontalLayout_5 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_5.setObjectName("horizontalLayout_5")
        self.Totalplayers = QtWidgets.QLabel(self.centralwidget)
        font = QtGui.QFont()
        font.setFamily("Bookman Old Style")
        font.setPointSize(9)
        font.setBold(True)
        font.setItalic(True)
        font.setWeight(75)
        self.Totalplayers.setFont(font)
        self.Totalplayers.setIndent(30)
        self.Totalplayers.setObjectName("Totalplayers")
        self.horizontalLayout_5.addWidget(self.Totalplayers)

        #POINTS CALCULATION

        #POINTS AVAILABLE
        self.points_available = QtWidgets.QLabel(self.centralwidget)
        font = QtGui.QFont()
        font.setFamily("Bookman Old Style")
        font.setPointSize(9)
        font.setBold(True)
        font.setItalic(True)
        font.setWeight(75)
        self.points_available.setFont(font)
        self.points_available.setIndent(-10)
        self.points_available.setObjectName("points_available")
        self.horizontalLayout_5.addWidget(self.points_available)
        self.TeamName = QtWidgets.QLabel(self.centralwidget)
        font = QtGui.QFont()
        font.setFamily("Bookman Old Style")
        font.setPointSize(9)
        font.setBold(True)
        font.setItalic(True)
        font.setWeight(75)
        self.TeamName.setFont(font)
        self.TeamName.setIndent(100)
        self.TeamName.setObjectName("TeamName")
        self.horizontalLayout_5.addWidget(self.TeamName)

        # POINTS USED
        self.points_used = QtWidgets.QLabel(self.centralwidget)
        font = QtGui.QFont()
        font.setFamily("Bookman Old Style")
        font.setPointSize(9)
        font.setBold(True)
        font.setItalic(True)
        font.setWeight(75)
        self.points_used.setFont(font)
        self.points_used.setIndent(60)
        self.points_used.setObjectName("points_used")
        self.horizontalLayout_5.addWidget(self.points_used)
        self.verticalLayout.addLayout(self.horizontalLayout_5)
        self.label_2 = QtWidgets.QLabel(self.centralwidget)
        self.label_2.setMaximumSize(QtCore.QSize(778, 16))
        font = QtGui.QFont()
        font.setFamily("Bookman Old Style")
        font.setPointSize(9)
        font.setBold(True)
        font.setItalic(True)
        font.setWeight(75)
        self.label_2.setFont(font)
        self.label_2.setObjectName("label_2")
        self.verticalLayout.addWidget(self.label_2)
        self.Team = QtWidgets.QHBoxLayout()
        self.Team.setObjectName("Team")

        # PLAYER'S LISTWIDGET

        #AVAILABLE PLAYERS LISTWIDGET
        self.availplayers_lw = QtWidgets.QListWidget(self.centralwidget)
        self.availplayers_lw.setStyleSheet(
            "color: rgb(3, 190, 159);background-color: rgb(240, 240, 240);")
        self.availplayers_lw.setObjectName("availplayers_lw")
        self.Team.addWidget(self.availplayers_lw)
        self.selectedplayers_lw = QtWidgets.QListWidget(self.centralwidget)
        palette = QtGui.QPalette()
        brush = QtGui.QBrush(QtGui.QColor(0, 0, 0, 128))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Disabled,
                         QtGui.QPalette.PlaceholderText, brush)

        #SELECTED PLAYER'S LISTWIDGET
        self.selectedplayers_lw.setPalette(palette)
        self.selectedplayers_lw.setStyleSheet(
            "color: rgb(3, 190, 159);background-color: rgb(240, 240, 240);")
        self.selectedplayers_lw.setObjectName("selectedplayers_lw")
        self.Team.addWidget(self.selectedplayers_lw)
        self.verticalLayout.addLayout(self.Team)
        MainWindow.setCentralWidget(self.centralwidget)

        #MENUBAR

        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 737, 23))
        self.menubar.setObjectName("menubar")
        self.menuManage_Teams = QtWidgets.QMenu(self.menubar)
        self.menuManage_Teams.setObjectName("menuManage_Teams")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)

        #NEW_TEAM
        self.new_team = QtWidgets.QAction(MainWindow)
        self.new_team.setShortcut("Ctrl+N")
        self.new_team.triggered.connect(self.file_new)
        self.new_team.setShortcutVisibleInContextMenu(True)
        self.new_team.setObjectName("new_team")

        #OPEN_TEAM
        self.open_team = QtWidgets.QAction(MainWindow)
        self.open_team.setShortcut("Ctrl+O")
        self.open_team.triggered.connect(self.file_open)
        self.open_team.setShortcutVisibleInContextMenu(True)
        self.open_team.setObjectName("open_team")

        # SAVE_TEAM
        self.save_team = QtWidgets.QAction(MainWindow)
        self.save_team.setShortcut("Ctrl+S")
        self.save_team.triggered.connect(self.file_save)
        self.save_team.setShortcutVisibleInContextMenu(True)
        self.save_team.setObjectName("save_team")

        #EVALUATE_TEAM
        self.evaluate_team = QtWidgets.QAction(MainWindow)
        self.evaluate_team.setShortcut("Ctrl+E")
        self.evaluate_team.triggered.connect(self.file_evaluate)
        self.evaluate_team.setShortcutVisibleInContextMenu(True)
        self.evaluate_team.setObjectName("evaluate_team")

        #QUIT_WINDOW
        self.actionQuit = QtWidgets.QAction(MainWindow)
        self.actionQuit.setObjectName("actionQuit")
        self.actionQuit.triggered.connect(self.quit)
        self.menuManage_Teams.addAction(self.new_team)
        self.menuManage_Teams.addAction(self.open_team)
        self.menuManage_Teams.addAction(self.evaluate_team)

        self.menuManage_Teams.addAction(self.save_team)
        self.menuManage_Teams.addAction(self.actionQuit)
        self.menubar.addAction(self.menuManage_Teams.menuAction())

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

        # DOUBLE CLICK
        self.availplayers_lw.itemDoubleClicked.connect(self.removelist1)
        self.selectedplayers_lw.itemDoubleClicked.connect(self.removelist2)

        # --statistics of players
        self.stats = {}

        self.new_screen.savename.clicked.connect(self.namechange)

        # RADIOBUTTONS  CLICK
        self.bat_rb.clicked.connect(self.load_names)
        self.wk_rb.clicked.connect(self.load_names)
        self.bow_rb.clicked.connect(self.load_names)
        self.ar_rb.clicked.connect(self.load_names)

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
        self.team_name.setText(
            _translate("MainWindow", "                         TEAM NAME "))
        self.Batsman.setText(_translate("MainWindow", "Batsman(Bat)"))
        self.batcount.setText(_translate("MainWindow", "##"))
        self.Wicketkeeepr.setText(_translate("MainWindow", "WicketKeeper(WK)"))
        self.wicketcount.setText(_translate("MainWindow", "##"))
        self.Allrounder.setText(_translate("MainWindow", "Allrounder (ALR)"))
        self.alrcount.setText(_translate("MainWindow", "##"))
        self.Bowlers.setText(_translate("MainWindow", "Bowlers (Bowl)"))
        self.bowlcount.setText(_translate("MainWindow", "##"))
        self.bat_rb.setText(_translate("MainWindow", "Batsman"))
        self.wk_rb.setText(_translate("MainWindow", "WicketKeeper"))
        self.ar_rb.setText(_translate("MainWindow", "AllRounder"))
        self.bow_rb.setText(_translate("MainWindow", "Bowlers"))
        self.Totalplayers.setText(_translate("MainWindow",
                                             "available points "))
        self.points_available.setStatusTip(
            _translate("MainWindow", "max point=100"))
        self.points_available.setText(_translate("MainWindow", "00"))
        self.TeamName.setText(_translate("MainWindow", "used points"))
        self.points_used.setText(_translate("MainWindow", "00"))
        self.label_2.setText(
            _translate(
                "MainWindow",
                "  Available Players                                           selected players"
            ))
        self.menuManage_Teams.setTitle(_translate("MainWindow",
                                                  "Manage Teams"))
        self.new_team.setText(_translate("MainWindow", "New Team"))
        self.new_team.setStatusTip(_translate("MainWindow", "enter team name"))
        self.new_team.setShortcut(_translate("MainWindow", "Ctrl+N"))
        self.open_team.setText(_translate("MainWindow", "Open Team"))
        self.open_team.setStatusTip(_translate("MainWindow", "opening team"))
        self.open_team.setShortcut(_translate("MainWindow", "Ctrl+O"))
        self.save_team.setText(_translate("MainWindow", "Save Team"))
        self.save_team.setStatusTip(_translate("MainWindow", "saving team.."))
        self.save_team.setShortcut(_translate("MainWindow", "Ctrl+S"))
        self.evaluate_team.setText(_translate("MainWindow", "Evaluate Team"))
        self.evaluate_team.setShortcut(_translate("MainWindow", "Ctrl+E"))
        self.actionQuit.setText(_translate("MainWindow", "Quit"))

    # NEW FILE MENU
    def file_new(self):
        self.newDialog.show()

    def namechange(self):
        teamname = self.new_screen.team_name.text()
        fantcurs.execute("SELECT DISTINCT name FROM teams")
        l = fantcurs.fetchall()
        for i in l:
            if i[0] == teamname:
                msg = QtWidgets.QMessageBox()
                msg.setIcon(QtWidgets.QMessageBox.Information)
                msg.setText(
                    "Team with same name already exists!!\nPlease choose another name"
                )
                msg.setWindowTitle("Invalid Team Name")
                msg.exec_()
                return 0
        if len(teamname) == 0:
            msg = QtWidgets.QMessageBox()
            msg.setIcon(QtWidgets.QMessageBox.Warning)
            msg.setText("You cannot leave the field blank!!!")
            msg.setWindowTitle("Invalid Team Name")
            msg.exec_()
            return 0
        elif teamname.isnumeric():
            msg = QtWidgets.QMessageBox()
            msg.setIcon(QtWidgets.QMessageBox.Warning)
            msg.setText(
                "Please enter a valid teamname\n(Name must contain atleast one character)!!"
            )
            msg.setWindowTitle("Invalid Team Name")
            msg.exec_()
            return 0
        else:
            self.reset()
            self.tname = self.new_screen.team_name.text()
            self.team_name.setText('          ' + self.tname)
            self.newDialog.close()

    #TO RESET ALL COUNTS AND LISTS
    def reset(self):
        self.enablebuttons()
        self.load_names()
        self.used_points = 0
        self.alrdscount = 0
        self.wicketerscount = 0
        self.batsmencount = 0
        self.bowlerscount = 0
        self.totalcount = 0
        self.avail_points = 1000
        self.points_available.setText(str(self.avail_points))
        self.points_used.setText(str(self.used_points))
        self.bowlcount.setText(str(self.bowlerscount))
        self.batcount.setText(str(self.batsmencount))
        self.alrcount.setText(str(self.alrdscount))
        self.wicketcount.setText(str(self.wicketerscount))
        self.list1.clear()
        self.load_names()

        self.selectedplayers_lw.clear()

        #SAVE TEAM MENU
    def file_save(self):
        if not self.error():  #IF THERE IS AN ERROR
            msg = QMessageBox()
            msg.setIcon(QMessageBox.Critical)
            msg.setInformativeText(' 😪Insufficient Players OR Points !!')
            msg.setWindowTitle("Fantasy Cricket")
            msg.exec_()
        elif self.error():  # IF NO ERROR
            try:
                fantcurs.execute("SELECT DISTINCT name FROM teams;")
                x = fantcurs.fetchall()
                for i in x:
                    if self.team_name.text(
                    ) == i[0]:  # CHECKING IF THE TEAMNAME ALREADY EXISTS
                        print('Updating already there')
                        fantcurs.execute("DELETE  FROM teams WHERE name='" +
                                         self.team_name.text() +
                                         "';")  #DELETING TO UPDATE TEAM
            except:
                print('error')
            for i in range(self.selectedplayers_lw.count()):
                # print('----addding--')
                # print('teamnane: ',self.team_name.text())
                # print('playername: ',self.list1[i])
                # print('points: ', player_points[self.list1[i]])
                try:
                    fantcurs.execute(
                        "INSERT INTO teams (name,players,value) VALUES (?,?,?)",
                        (self.team_name.text(), self.list1[i],
                         player_points[self.list1[i]]))

                    # self.file_evaluate()
                except:
                    print('error in operation!')
            fant.commit()
        else:
            print('---error in operation')

    # QUITING METHOD
    def quit(self):
        msg = QMessageBox()
        msg.setIcon(QMessageBox.Critical)
        msg.setInformativeText(' Bye 😙')
        msg.setWindowTitle("Fantasy Cricket")
        msg.exec_()
        # print('exit')
        sys.exit()

    #ON RADIOBUTTONS CLICKED
    def load_names(self):
        Batsman = 'BAT'
        WicketKeeper = 'WK'
        Allrounder = 'AR'
        Bowler = 'BWL'
        sql1 = "SELECT player,value from stats WHERE ctg = '" + Batsman + "';"
        sql2 = "SELECT Player,value from stats WHERE ctg = '" + WicketKeeper + "';"
        sql3 = "SELECT Player,value from stats WHERE ctg ='" + Allrounder + "';"
        sql4 = "SELECT Player,value from stats WHERE ctg = '" + Bowler + "';"

        fantcurs.execute(sql1)
        x = fantcurs.fetchall()
        fantcurs.execute(sql4)
        y = fantcurs.fetchall()
        fantcurs.execute(sql3)
        z = fantcurs.fetchall()
        fantcurs.execute(sql2)
        w = fantcurs.fetchall()

        batsmen = []
        bowlers = []
        allrounders = []
        wcktkeepers = []

        for k in x:
            batsmen.append(k[0])
            self.b.append(k[0])
            self.stats[k[0]] = k[1]
        for k in y:
            bowlers.append(k[0])
            self.stats[k[0]] = k[1]
            self.a.append(k[0])
        for k in w:
            wcktkeepers.append(k[0])
            self.stats[k[0]] = k[1]
            self.d.append(k[0])
        for k in z:
            allrounders.append(k[0])
            self.stats[k[0]] = k[1]
            self.c.append(k[0])
        for i in self.list1:
            if i in allrounders:
                allrounders.remove(i)
            elif i in batsmen:
                batsmen.remove(i)
            elif i in bowlers:
                bowlers.remove(i)
            elif i in wcktkeepers:
                wcktkeepers.remove(i)

        if self.bat_rb.isChecked() == True:
            self.availplayers_lw.clear()
            for i in range(len(batsmen)):
                item = QtWidgets.QListWidgetItem(batsmen[i])
                font = QtGui.QFont()
                font.setBold(True)
                font.setWeight(75)
                item.setFont(font)
                self.availplayers_lw.addItem(item)
        elif self.bow_rb.isChecked() == True:
            self.availplayers_lw.clear()
            for i in range(len(bowlers)):
                item = QtWidgets.QListWidgetItem(bowlers[i])
                font = QtGui.QFont()
                font.setBold(True)
                font.setWeight(75)
                item.setFont(font)
                self.availplayers_lw.addItem(item)
        elif self.ar_rb.isChecked() == True:
            self.availplayers_lw.clear()
            for i in range(len(allrounders)):
                item = QtWidgets.QListWidgetItem(allrounders[i])
                font = QtGui.QFont()
                font.setBold(True)
                font.setWeight(75)
                item.setFont(font)
                self.availplayers_lw.addItem(item)

        elif self.wk_rb.isChecked() == True:
            self.availplayers_lw.clear()
            for i in range(len(wcktkeepers)):
                item = QtWidgets.QListWidgetItem(wcktkeepers[i])
                font = QtGui.QFont()
                font.setBold(True)
                font.setWeight(75)
                item.setFont(font)
                self.availplayers_lw.addItem(item)

    def removelist1(
            self,
            item):  # REMOVE FROM AVAILABLE PLAYERS AND ADD TO SELECTED PLAYERS
        self.conditions_1(item.text())
        self.availplayers_lw.takeItem(self.availplayers_lw.row(item))
        self.selectedplayers_lw.addItem(item.text())
        self.totalcount = self.selectedplayers_lw.count()
        self.list1.append(item.text())
        self.error()

    def conditions_1(
        self, cat
    ):  # Adding and Deducting respective points from points_calculator.py
        self.avail_points -= self.stats[cat]
        self.used_points += self.stats[cat]
        if cat in self.a:
            self.bowlerscount += 1
        elif cat in self.d:
            self.wicketerscount += 1
        elif cat in self.c:
            self.alrdscount += 1
        elif cat in self.b:
            self.batsmencount += 1

        self.points_available.setText(str(self.avail_points))
        self.points_used.setText(str(self.used_points))
        self.bowlcount.setText(str(self.bowlerscount))
        self.batcount.setText(str(self.batsmencount))
        self.alrcount.setText(str(self.alrdscount))
        self.wicketcount.setText(str(self.wicketerscount))

    def conditions_2(
        self, cat
    ):  # Adding and Deducting respective poinrs from points_calculator.py
        self.avail_points += self.stats[cat]
        self.used_points -= self.stats[cat]
        if cat in self.a:
            self.bowlerscount -= 1
        elif cat in self.d:
            self.wicketerscount -= 1
        elif cat in self.c:
            self.alrdscount -= 1
        elif cat in self.b:
            self.batsmencount -= 1

        self.points_available.setText(str(self.avail_points))
        self.points_used.setText(str(self.used_points))
        self.bowlcount.setText(str(self.bowlerscount))
        self.batcount.setText(str(self.batsmencount))
        self.alrcount.setText(str(self.alrdscount))
        self.wicketcount.setText(str(self.wicketerscount))

    def removelist2(
            self,
            item):  # REMOVE FROM SELECTED PLAYERS AND ADD TO AVAIALBLE PLAYERS
        self.selectedplayers_lw.takeItem(self.selectedplayers_lw.row(item))
        self.availplayers_lw.addItem(item.text())
        self.list1.remove(item.text())
        # self.error()
        self.totalcount = self.selectedplayers_lw.count()
        self.conditions_2(item.text())

    def openteam(self):  #upon open team selected
        self.reset()
        teamname = self.open_screen.open_cb.currentText()
        self.team_name.setText(teamname)
        self.enablebuttons()
        fantcurs.execute("SELECT players from teams WHERE name= '" + teamname +
                         "';")
        x = fantcurs.fetchall()
        score = []
        for i in x:
            fantcurs.execute("SELECT value from stats WHERE player='" + i[0] +
                             "';")
            y = fantcurs.fetchone()
            score.append(y[0])
        # print(score)
        sum = 0
        for i in score:
            sum += i
        self.selectedplayers_lw.clear()
        self.load_names()
        for i in x:
            self.selectedplayers_lw.addItem(i[0])
            self.list1.append(i[0])
            self.conditions_1(i[0])
        self.used_points = sum
        self.avail_points = 1000 - sum
        self.points_available.setText(str(self.avail_points))
        self.points_used.setText(str(self.used_points))
        self.openDialog.close()

    def enablebuttons(self):
        self.bat_rb.setEnabled(True)
        self.bow_rb.setEnabled(True)
        self.ar_rb.setEnabled(True)
        self.wk_rb.setEnabled(True)

    def error(self):
        msg = QMessageBox()
        if self.wicketerscount > 1:
            msg.setIcon(QMessageBox.Critical)
            # msg.setText("Error")
            msg.setInformativeText('Only 1 wicketkeeper is allowed!')
            msg.setWindowTitle("Error")
            msg.exec_()
            return 0
        elif self.totalcount > 11:
            msg.setIcon(QMessageBox.Critical)
            msg.setInformativeText('No more than 11 players allowed!')
            msg.setWindowTitle("Selection Error")
            msg.exec_()
            return 0
        elif self.totalcount < 11:
            return 0
        elif self.wicketerscount < 1:
            return 0
        elif self.avail_points <= -1:
            msg.setIcon(QMessageBox.Critical)
            msg.setInformativeText('Not enough points!')
            msg.setWindowTitle("Selection Cricket")
            msg.exec_()
            return 0

        return 1
Esempio n. 4
0
class Ui_MainWindow(object):
    def __init__(self):
            self.newDialog = QtWidgets.QMainWindow()
            self.new_screen = New()
            self.new_screen.setupUi(self.newDialog)

            self.EvaluateWindow = QtWidgets.QMainWindow()
            self.eval_screen = Eva()
            self.eval_screen.setupUi(self.EvaluateWindow)

            self.openDialog = QtWidgets.QMainWindow()
            self.open_screen = Open()
            self.open_screen.setupUi(self.openDialog)

    def setupUi(self, MainWindow):
        
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(860, 556)
        MainWindow.setStyleSheet("\n"
"\n"
"background-color: rgb(234, 228, 221);")
        self.central_w = QtWidgets.QWidget(MainWindow)
        self.central_w.setObjectName("central_w")
        self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.central_w)
        self.verticalLayout_3.setObjectName("verticalLayout_3")
        spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred)
        self.verticalLayout_3.addItem(spacerItem)
        self.frame = QtWidgets.QFrame(self.central_w)
        self.frame.setStyleSheet("background-color: rgb(241, 235, 255);\n"
"font: 75 10pt \"MS Shell Dlg 2\";\n"
"")
        self.frame.setFrameShape(QtWidgets.QFrame.StyledPanel)
        self.frame.setFrameShadow(QtWidgets.QFrame.Raised)
        self.frame.setObjectName("frame")
        self.gridLayout = QtWidgets.QGridLayout(self.frame)
        self.gridLayout.setContentsMargins(-1, 5, -1, 24)
        self.gridLayout.setObjectName("gridLayout")
        self.label_10 = QtWidgets.QLabel(self.frame)
        self.label_10.setObjectName("label_10")
        self.gridLayout.addWidget(self.label_10, 1, 4, 1, 1)

        #bowl
        self.BOWL = QtWidgets.QLabel(self.frame)
        self.BOWL.setStyleSheet("color: rgb(0, 170, 255);")
        self.BOWL.setObjectName("BOWL")
        self.gridLayout.addWidget(self.BOWL, 1, 3, 1, 1)

        #all-rouder
        self.ARL = QtWidgets.QLabel(self.frame)
        self.ARL.setStyleSheet("color: rgb(0, 170, 255);")
        self.ARL.setObjectName("ARL")
        self.gridLayout.addWidget(self.ARL, 1, 5, 1, 1)

        #bat
        self.BAT = QtWidgets.QLabel(self.frame)
        self.BAT.setStyleSheet("color: rgb(0, 170, 255);")
        self.BAT.setObjectName("BAT")
        self.gridLayout.addWidget(self.BAT, 1, 1, 1, 1)
        self.label_2 = QtWidgets.QLabel(self.frame)
        font = QtGui.QFont()
        font.setFamily("MS Shell Dlg 2")
        font.setPointSize(10)
        font.setBold(False)
        font.setItalic(False)
        font.setWeight(9)
        self.label_2.setFont(font)
        self.label_2.setObjectName("label_2")
        self.gridLayout.addWidget(self.label_2, 1, 0, 1, 1)

        #wicket keeper
        self.WK = QtWidgets.QLabel(self.frame)
        self.WK.setStyleSheet("color: rgb(0, 170, 255);")
        self.WK.setObjectName("WK")
        self.gridLayout.addWidget(self.WK, 1, 7, 1, 1)
        self.label_12 = QtWidgets.QLabel(self.frame)
        self.label_12.setObjectName("label_12")
        self.gridLayout.addWidget(self.label_12, 1, 6, 1, 1)

        self.label_4 = QtWidgets.QLabel(self.frame)
        font = QtGui.QFont()
        font.setFamily("MS Shell Dlg 2")
        font.setPointSize(10)
        font.setBold(False)
        font.setItalic(False)
        font.setWeight(9)
        self.label_4.setFont(font)
        self.label_4.setObjectName("label_4")
        self.gridLayout.addWidget(self.label_4, 1, 2, 1, 1)
        self.label = QtWidgets.QLabel(self.frame)
        font = QtGui.QFont()
        font.setFamily("Comic Sans MS")
        font.setPointSize(9)
        font.setBold(False)
        font.setItalic(True)
        font.setWeight(50)
        self.label.setFont(font)
        self.label.setStyleSheet("\n"
"font: italic 9pt \"Comic Sans MS\";")
        self.label.setObjectName("label")
        self.gridLayout.addWidget(self.label, 0, 0, 1, 1)
        self.verticalLayout_3.addWidget(self.frame)
        self.frame_2 = QtWidgets.QFrame(self.central_w)
        self.frame_2.setStyleSheet("font: 75 10pt \"MS Shell Dlg 2\";\n"
"border-color: rgb(255, 255, 255);")
        self.frame_2.setFrameShape(QtWidgets.QFrame.NoFrame)
        self.frame_2.setFrameShadow(QtWidgets.QFrame.Plain)
        self.frame_2.setLineWidth(0)
        self.frame_2.setObjectName("frame_2")
        self.horizontalLayout = QtWidgets.QHBoxLayout(self.frame_2)
        self.horizontalLayout.setContentsMargins(46, 8, 23, 5)
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.label_6 = QtWidgets.QLabel(self.frame_2)
        self.label_6.setStyleSheet("font: 75 9pt \"MS Shell Dlg 2\";")
        self.label_6.setObjectName("label_6")
        self.horizontalLayout.addWidget(self.label_6)

        #Points-available
        self.points_available = QtWidgets.QLabel(self.frame_2)
        self.points_available.setStyleSheet("color: rgb(85, 170, 255);")
        self.points_available.setObjectName("points_available")
        self.horizontalLayout.addWidget(self.points_available)
        self.label_7 = QtWidgets.QLabel(self.frame_2)
        self.label_7.setObjectName("label_7")
        self.horizontalLayout.addWidget(self.label_7, 0, QtCore.Qt.AlignRight)

        #points-used
        self.points_used = QtWidgets.QLabel(self.frame_2)
        self.points_used.setStyleSheet("color: rgb(85, 170, 255);")
        self.points_used.setObjectName("points_used")
        self.horizontalLayout.addWidget(self.points_used, 0, QtCore.Qt.AlignHCenter)

        self.verticalLayout_3.addWidget(self.frame_2)
        self.horizontalLayout_4 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_4.setObjectName("horizontalLayout_4")
        spacerItem1 = QtWidgets.QSpacerItem(13, 345, QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout_4.addItem(spacerItem1)
        self.frame_3 = QtWidgets.QFrame(self.central_w)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.frame_3.sizePolicy().hasHeightForWidth())
        self.frame_3.setSizePolicy(sizePolicy)
        self.frame_3.setStyleSheet("border-color: rgb(15, 15, 15);")
        self.frame_3.setFrameShape(QtWidgets.QFrame.Panel)
        self.frame_3.setFrameShadow(QtWidgets.QFrame.Plain)
        self.frame_3.setLineWidth(2)
        self.frame_3.setMidLineWidth(1)
        self.frame_3.setObjectName("frame_3")
        self.verticalLayout = QtWidgets.QVBoxLayout(self.frame_3)
        self.verticalLayout.setContentsMargins(19, -1, 19, -1)
        self.verticalLayout.setObjectName("verticalLayout")
        self.frame_5 = QtWidgets.QFrame(self.frame_3)
        self.frame_5.setStyleSheet("font: 75 10pt \"MS Shell Dlg 2\";")
        self.frame_5.setFrameShape(QtWidgets.QFrame.NoFrame)
        self.frame_5.setFrameShadow(QtWidgets.QFrame.Sunken)
        self.frame_5.setObjectName("frame_5")
        self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.frame_5)
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        self.bat_rb = QtWidgets.QRadioButton(self.frame_5)
        self.bat_rb.setEnabled(False)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.bat_rb.sizePolicy().hasHeightForWidth())

        #Bat radio button
        self.bat_rb.setSizePolicy(sizePolicy)
        self.bat_rb.setObjectName("bat_rb")
        self.horizontalLayout_2.addWidget(self.bat_rb)
        self.bow_rb = QtWidgets.QRadioButton(self.frame_5)
        self.bow_rb.setEnabled(False)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.bow_rb.sizePolicy().hasHeightForWidth())
        self.bow_rb.setSizePolicy(sizePolicy)

        #Bowl radio button
        self.bow_rb.setObjectName("bow_rb")
        self.horizontalLayout_2.addWidget(self.bow_rb)
        self.ar_rb = QtWidgets.QRadioButton(self.frame_5)
        self.ar_rb.setEnabled(False)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.ar_rb.sizePolicy().hasHeightForWidth())
        self.ar_rb.setSizePolicy(sizePolicy)

        #All-rounder radio button
        self.ar_rb.setObjectName("ar_rb")
        self.horizontalLayout_2.addWidget(self.ar_rb)
        self.wk_rb = QtWidgets.QRadioButton(self.frame_5)
        self.wk_rb.setEnabled(False)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.wk_rb.sizePolicy().hasHeightForWidth())
        self.wk_rb.setSizePolicy(sizePolicy)

        #Wicket-keeper radio button
        self.wk_rb.setObjectName("wk_rb")
        self.horizontalLayout_2.addWidget(self.wk_rb)
        self.verticalLayout.addWidget(self.frame_5)

        #Available player list(list-widget1)
        self.av_player = QtWidgets.QListWidget(self.frame_3)
        self.av_player.setFrameShape(QtWidgets.QFrame.NoFrame)
        self.av_player.setObjectName("av_player")
        self.verticalLayout.addWidget(self.av_player)

        self.horizontalLayout_4.addWidget(self.frame_3)
        spacerItem2 = QtWidgets.QSpacerItem(13, 345, QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout_4.addItem(spacerItem2)
        self.label_9 = QtWidgets.QLabel(self.central_w)
        self.label_9.setStyleSheet("font: 20pt \"MS Shell Dlg 2\";")
        self.label_9.setLineWidth(-10)
        self.label_9.setMidLineWidth(-10)
        self.label_9.setObjectName("label_9")
        self.horizontalLayout_4.addWidget(self.label_9)
        spacerItem3 = QtWidgets.QSpacerItem(13, 345, QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout_4.addItem(spacerItem3)
        self.frame_4 = QtWidgets.QFrame(self.central_w)
        self.frame_4.setStyleSheet("border-color: rgb(120, 120, 120);")
        self.frame_4.setFrameShape(QtWidgets.QFrame.Panel)
        self.frame_4.setFrameShadow(QtWidgets.QFrame.Plain)
        self.frame_4.setLineWidth(2)
        self.frame_4.setMidLineWidth(1)
        self.frame_4.setObjectName("frame_4")
        self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.frame_4)
        self.verticalLayout_2.setContentsMargins(18, 9, 14, -1)
        self.verticalLayout_2.setSpacing(6)
        self.verticalLayout_2.setObjectName("verticalLayout_2")
        self.frame_6 = QtWidgets.QFrame(self.frame_4)
        self.frame_6.setStyleSheet("font: 75 10pt \"MS Shell Dlg 2\";")
        self.frame_6.setFrameShape(QtWidgets.QFrame.NoFrame)
        self.frame_6.setFrameShadow(QtWidgets.QFrame.Raised)
        self.frame_6.setObjectName("frame_6")
        self.horizontalLayout_3 = QtWidgets.QHBoxLayout(self.frame_6)
        self.horizontalLayout_3.setObjectName("horizontalLayout_3")
        self.label_8 = QtWidgets.QLabel(self.frame_6)
        self.label_8.setObjectName("label_8")
        self.horizontalLayout_3.addWidget(self.label_8, 0, QtCore.Qt.AlignHCenter)
        self.team_name = QtWidgets.QLabel(self.frame_6)
        self.team_name.setStyleSheet("color: rgb(85, 170, 255);")
        self.team_name.setObjectName("team_name")
        self.horizontalLayout_3.addWidget(self.team_name)
        self.verticalLayout_2.addWidget(self.frame_6)

        #Selected player list(list widget-2)
        self.sel_player = QtWidgets.QListWidget(self.frame_4)
        self.sel_player.setFrameShape(QtWidgets.QFrame.NoFrame)
        self.sel_player.setObjectName("sel_player")
        self.verticalLayout_2.addWidget(self.sel_player)
        self.horizontalLayout_4.addWidget(self.frame_4)
        spacerItem4 = QtWidgets.QSpacerItem(13, 345, QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout_4.addItem(spacerItem4)
        self.verticalLayout_3.addLayout(self.horizontalLayout_4)
        MainWindow.setCentralWidget(self.central_w)

        #Menubar option
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 860, 26))
        self.menubar.setObjectName("menubar")

        self.menuManage_Teams = QtWidgets.QMenu(self.menubar)
        self.menuManage_Teams.setCursor(QtGui.QCursor(QtCore.Qt.ArrowCursor))
        self.menuManage_Teams.setStyleSheet("selection-background-color: rgb(0, 170, 255);\n"
"\n"
"")
        self.menuManage_Teams.setObjectName("menuManage_Teams")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)

        #New window
        self.new_t = QtWidgets.QAction(MainWindow)
        self.new_t.setShortcut("Ctrl+N")
        self.new_t.setIconText("NEW Team")
        self.new_t.setShortcutContext(QtCore.Qt.WindowShortcut)
        self.new_t.setVisible(True)
        self.new_t.setShortcutVisibleInContextMenu(True)
        self.new_t.setObjectName("new_t")
        self.menuManage_Teams.addAction(self.new_t)
        self.new_t.triggered.connect(self.file_new)

        #Open window
        self.open_t = QtWidgets.QAction(MainWindow)
        self.open_t.setObjectName("open_t")
        self.menuManage_Teams.addAction(self.open_t)
        self.open_t.triggered.connect(self.file_open)

        #Save window
        self.save_t = QtWidgets.QAction(MainWindow)
        self.save_t.setObjectName("save_t")
        self.menuManage_Teams.addAction(self.save_t)
        self.save_t.triggered.connect(self.file_save)

        #Evaluate window
        self.evaluat_t = QtWidgets.QAction(MainWindow)
        self.evaluat_t.setObjectName("evaluat_t")
        self.menuManage_Teams.addAction(self.evaluat_t)
        self.evaluat_t.triggered.connect(self.file_evaluate)

        #Exit window
        self.actionQuit = QtWidgets.QAction(MainWindow)
        self.actionQuit.setObjectName("actionQuit")
        self.menuManage_Teams.addAction(self.actionQuit)
        self.actionQuit.triggered.connect(self.quit)
       
        
        self.menubar.addAction(self.menuManage_Teams.menuAction())      
        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

        # Click-double 
        self.av_player.itemDoubleClicked.connect(self.removelist1)
        self.sel_player.itemDoubleClicked.connect(self.removelist2)

        # Initializing points
        self.avail_points = 1000
        self.used_points = 0
        self.totalcount = 0
        self.batsmencount = 0
        self.bowlerscount = 0
        self.alrdscount = 0
        self.wicketerscount = 0

        # Stats of player
        self.stats = {}
        self.new_screen.savename.clicked.connect(self.namechange)

        # Initializing list
        self.a = []  # Bowler names list
        self.b = []  #  Batsman nameslist
        self.c = []   # Allrounder names list
        self.d = []  #Wicketer names list
        self.list1 = []    # Selectedplayer's list

        # Radiobuttons clicked
        self.bat_rb.clicked.connect(self.load_names)
        self.wk_rb.clicked.connect(self.load_names)
        self.bow_rb.clicked.connect(self.load_names)
        self.ar_rb.clicked.connect(self.load_names)
        

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
        self.label_10.setText(_translate("MainWindow", "AllRounders (AR) "))
        self.BOWL.setText(_translate("MainWindow", "##"))
        self.ARL.setText(_translate("MainWindow", "##"))
        self.BAT.setText(_translate("MainWindow", "##"))
        self.label_2.setText(_translate("MainWindow", "Batsman (BAT)"))
        self.WK.setText(_translate("MainWindow", "##"))
        self.label_12.setText(_translate("MainWindow", "Wicket-Keeper (WK)"))
        self.label_4.setText(_translate("MainWindow", "Bowlers (BOW)"))
        self.label.setText(_translate("MainWindow", "Your Selection"))
        self.label_6.setText(_translate("MainWindow", "Points Availables"))
        self.points_available.setText(_translate("MainWindow", "####"))
        self.label_7.setText(_translate("MainWindow", "Points Used"))
        self.points_used.setText(_translate("MainWindow", "####"))
        self.bat_rb.setText(_translate("MainWindow", "BAT"))
        self.bow_rb.setText(_translate("MainWindow", "BOW"))
        self.ar_rb.setText(_translate("MainWindow", "AR"))
        self.wk_rb.setText(_translate("MainWindow", "WK"))
        self.label_9.setText(_translate("MainWindow", ">"))
        self.label_8.setText(_translate("MainWindow", "Team Name  :"))
        self.team_name.setText(_translate("MainWindow", "Displayed Here"))
        self.menuManage_Teams.setTitle(_translate("MainWindow", "Manage Teams"))
        self.new_t.setText(_translate("MainWindow", "NEW Team"))
        self.new_t.setShortcut(_translate("MainWindow", "Ctrl+N"))
        self.open_t.setText(_translate("MainWindow", "OPEN Team"))
        self.open_t.setShortcut(_translate("MainWindow", "Ctrl+O"))
        self.save_t.setText(_translate("MainWindow", "SAVE team"))
        self.save_t.setShortcut(_translate("MainWindow", "Ctrl+S"))
        self.evaluat_t.setText(_translate("MainWindow", "EVALUATE Team"))
        self.evaluat_t.setShortcut(_translate("MainWindow", "Ctrl+E"))
        self.actionQuit.setText(_translate("MainWindow", "QUIT"))

    # File Open menu
    def file_open(self):
        self.openDialog.show()

    # Evaluate team menu
    def file_evaluate(self):
        self.eval_screen.setupUi(self.EvaluateWindow)
        self.EvaluateWindow.show()

     # Function for new file menu
    def file_new(self):
        self.newDialog.show()

    def namechange(self):
        teamname = self.new_screen.team_name.text()
        cur.execute("SELECT DISTINCT Name FROM teams")
        data = cur.fetchall() #fetching records
        for i in data:
            if i[0] == teamname:
                msg = QtWidgets.QMessageBox()
                msg.setIcon(QtWidgets.QMessageBox.Information)
                msg.setText("Team with same name already exists!!\nPlease choose another name")
                msg.setWindowTitle("Invalid Team Name")
                msg.exec_()
                return 0
        if len(teamname) == 0:
            msg = QtWidgets.QMessageBox()
            msg.setIcon(QtWidgets.QMessageBox.Warning)
            msg.setText("You cannot leave the field blank!!!")
            msg.setWindowTitle("Invalid Team Name")
            msg.exec_()
            return 0
        elif teamname.isnumeric():
            msg = QtWidgets.QMessageBox()
            msg.setIcon(QtWidgets.QMessageBox.Warning)
            msg.setText("Please enter a valid teamname\n(Name must contain atleast one character)!!")
            msg.setWindowTitle("Invalid Team Name")
            msg.exec_()
            return 0
        else:
            self.reset()
            self.tname = self.new_screen.team_name.text()
            self.team_name.setText(str('    '+self.tname))
            self.newDialog.close()

    #Function for reset
    def reset(self):
        self.enablebuttons()
        self.load_names()
        self.used_points = 0
        self.alrdscount = 0
        self.wicketerscount = 0
        self.batsmencount = 0
        self.bowlerscount = 0
        self.totalcount = 0
        self.avail_points = 1000
        self.points_available.setText(str(self.avail_points))
        self.points_used.setText(str(self.used_points))
        self.BOWL.setText(str(self.bowlerscount))
        self.BAT.setText(str(self.batsmencount))
        self.ARL.setText(str(self.alrdscount))
        self.WK.setText(str(self.wicketerscount))
        self.list1.clear()
        self.load_names()
        self.sel_player.clear()


    #Function for save team
    def file_save(self):
        if not self.error():  #check for error
            msg = QMessageBox()
            msg.setIcon(QMessageBox.Critical)
            msg.setInformativeText(' Inufficient Players OR Points !!')
            msg.setWindowTitle("Fantasy Cricket")
            msg.exec_()
        elif self.error():
            #To catch exceptions
            try:
                cur.execute("SELECT DISTINCT Name FROM teams;")
                data = cur.fetchall()
                for i in data:
                    if self.team_name.text() == i[0]:   # Check if team already exists
                        print('Updating already there')
                        cur.execute("DELETE  FROM teams WHERE Name='" + self.team_name.text() + "';") #Delete the updated team

            #To handle exception
            except:
                print('error')

            for i in range(self.sel_player.count()):

                #To catch exception
                try:
                    cur.execute("INSERT INTO teams (Name,Players,Value) VALUES (?,?,?)",
                                     (self.team_name.text(), self.list1[i], player_point[self.list1[i]]))

                #To handle exceptions
                except:
                    print('error in operation!')
            db.commit()     #Commit function
        else:
            print('---error in operation')


    # Exit() function
    def quit(self):
        msg = QMessageBox()
        msg.setIcon(QMessageBox.Critical)
        msg.setInformativeText(' Bye ')
        msg.setWindowTitle("Fantasy Cricket")
        msg.exec_()
        sys.exit()

   #Radio-buttons functions
    def load_names(self):
        Batsman = 'BAT'
        WicketKeeper = 'WK'
        Allrounder = 'AR'
        Bowler = 'BWL'
        sql1 = "SELECT Player,Value from stats WHERE ctg = '" + Batsman + "';"
        sql2 = "SELECT Player,Value from stats WHERE ctg = '" + WicketKeeper + "';"
        sql3 = "SELECT Player,Value from stats WHERE ctg ='" + Allrounder + "';"
        sql4 = "SELECT Player,Value from stats WHERE ctg = '" + Bowler + "';"

        #for batsmen
        cur.execute(sql1)
        x = cur.fetchall()
        batsmen = []
        for k in x:
            batsmen.append(k[0])
            self.b.append(k[0])
            self.stats[k[0]] = k[1]

        #for bowlers   
        cur.execute(sql2)
        w = cur.fetchall()
        bowlers = []
        for k in y:
            bowlers.append(k[0])
            self.stats[k[0]] = k[1]
            self.a.append(k[0])

        #for all rounder   
        cur.execute(sql3)
        z =cur.fetchall()
        allrounders = []
        for k in z:
            allrounders.append(k[0])
            self.stats[k[0]] = k[1]
            self.c.append(k[0])

        #for wicket keepers    
        cur.execute(sql4)
        y = cur.fetchall()
        wcktkeepers = []
        for k in w:
            wcktkeepers.append(k[0])
            self.stats[k[0]] = k[1]
            self.d.append(k[0])    
    
        
        for i in self.list1:
            if i in allrounders:
                allrounders.remove(i)
            elif i in batsmen:
                batsmen.remove(i)
            elif i in bowlers:
                bowlers.remove(i)
            elif i in wcktkeepers:
                wcktkeepers.remove(i)

        if self.bat_rb.isChecked() == True:
            self.av_player.clear()
            for i in range(len(batsmen)):
                item = QtWidgets.QListWidgetItem(batsmen[i])
                font = QtGui.QFont()
                font.setBold(True)
                font.setWeight(75)
                item.setFont(font)
                self.av_player.addItem(item)
        elif self.bow_rb.isChecked() == True:
            self.av_player.clear()
            for i in range(len(bowlers)):
                item = QtWidgets.QListWidgetItem(bowlers[i])
                font = QtGui.QFont()
                font.setBold(True)
                font.setWeight(75)
                item.setFont(font)
                self.av_player.addItem(item)
        elif self.ar_rb.isChecked() == True:
            self.av_player.clear()
            for i in range(len(allrounders)):
                item = QtWidgets.QListWidgetItem(allrounders[i])
                font = QtGui.QFont()
                font.setBold(True)
                font.setWeight(75)
                item.setFont(font)
                self.av_player.addItem(item)

        elif self.wk_rb.isChecked() == True:
            self.av_player.clear()
            for i in range(len(wcktkeepers)):
                item = QtWidgets.QListWidgetItem(wcktkeepers[i])
                font = QtGui.QFont()
                font.setBold(True)
                font.setWeight(75)
                item.setFont(font)
                self.av_player.addItem(item)

    def removelist1(self, item):   # Removing from available list to select list
        self.conditions_1(item.text())
        self.av_player.takeItem(self.av_player.row(item))
        self.sel_player.addItem(item.text())
        self.totalcount = self.sel_player.count()
        self.list1.append(item.text())
        self.error()

    def conditions_1(self, cat):   # Evaluate respective points calculate points 
        self.avail_points -= self.stats[cat]
        self.used_points += self.stats[cat]
        if cat in self.a:
            self.bowlerscount += 1
        elif cat in self.d:
            self.wicketerscount += 1
        elif cat in self.c:
            self.alrdscount += 1
        elif cat in self.b:
            self.batsmencount += 1

        self.points_available.setText(str(self.avail_points))
        self.points_used.setText(str(self.used_points))
        self.BOWL.setText(str(self.bowlerscount))
        self.BAT.setText(str(self.batsmencount))
        self.ARL.setText(str(self.alrdscount))
        self.WK.setText(str(self.wicketerscount))

    def conditions_2(self, cat):            # Evaluate respective points calculate points 
        self.avail_points += self.stats[cat]
        self.used_points -= self.stats[cat]
        if cat in self.a:
            self.bowlerscount -= 1
        elif cat in self.d:
            self.wicketerscount -= 1
        elif cat in self.c:
            self.alrdscount -= 1
        elif cat in self.b:
            self.batsmencount -= 1

        self.points_available.setText(str(self.avail_points))
        self.points_used.setText(str(self.used_points))
        self.BOWL.setText(str(self.bowlerscount))
        self.BAT.setText(str(self.batsmencount))
        self.ARL.setText(str(self.alrdscount))
        self.WK.setText(str(self.wicketerscount))

    def removelist2(self, item):   # Remove from available list to select list
        self.sel_player.takeItem(self.sel_player.row(item))
        self.av_player.addItem(item.text())
        self.list1.remove(item.text())
        self.totalcount = self.sel_player.count()
        self.conditions_2(item.text())

    def openteam(self):  #Open team 
        self.reset()
        teamname = self.open_screen.open_cb.currentText()
        self.team_name.setText(teamname)
        self.enablebuttons()
        cur.execute("SELECT Players from teams WHERE Name= '" + teamname + "';")
        x=cur.fetchall()
        score=[]
        for i in x:
            cur.execute("SELECT Value from stats WHERE Player='"+i[0]+"';")
            y=cur.fetchone()
            score.append(y[0])
        sum=0
        for i in score:
            sum+=i
        self.sel_player.clear()
        self.load_names()
        for i in x:
            self.sel_player.addItem(i[0])
            self.list1.append(i[0])
            self.conditions_1(i[0])
        self.used_points = sum
        self.avail_points = 1000 - sum
        self.points_available.setText(str(self.avail_points))
        self.points_used.setText(str(self.used_points))
        self.openDialog.close()

    def enablebuttons(self):
        self.bat_rb.setEnabled(True)
        self.bow_rb.setEnabled(True)
        self.ar_rb.setEnabled(True)
        self.wk_rb.setEnabled(True)
        
    def disablebuttons(self):
        self.bat_rb.setEnabled(False)
        self.bow_rb.setEnabled(False)
        self.ar_rb.setEnabled(False)
        self.wk_rb.setEnabled(False)
        

    def error(self):
        msg = QMessageBox()
        if self.wicketerscount > 1:
            msg.setIcon(QMessageBox.Critical)
            msg.setInformativeText('Only 1 wicketkeeper is allowed!')
            msg.setWindowTitle("Error")
            msg.exec_()
            return 0
        elif self.totalcount > 11:
            msg.setIcon(QMessageBox.Critical)
            msg.setInformativeText('No more than 11 players allowed!')
            msg.setWindowTitle("Selection Error")
            msg.exec_()
            return 0
        elif self.totalcount < 11 :
            return 0
        elif self.wicketerscount < 1:
            return 0
        elif self.avail_points <= -1:
            msg.setIcon(QMessageBox.Critical)
            msg.setInformativeText('Not enough points!')
            msg.setWindowTitle("Selection Cricket")
            msg.exec_()
            return 0

        return 1