Files
KOTIKOTappsLegacy/OfficialProjects/LAUNCHERFILES/KOTIKOTlauncherMain.py

79 lines
3.2 KiB
Python

from PyQt5 import QtCore, QtGui, QtWidgets
import json
class Ui_KOTIKOTlauncher(object):
@staticmethod
def genSize() -> tuple:
with open("OfficialProjects/LAUNCHERFILES/apps.json") as appsfile:
apps = len(list(json.load(appsfile)))
h = 1
w = 1
while h * w < apps:
h += 1
if h * w < apps:
w += 1
return h * 105 + 5, w * 105 + 25, w
def setupUi(self, KOTIKOTlauncher):
self.genSize()
KOTIKOTlauncher.setObjectName("KOTIKOTlauncher")
self.size = self.genSize()
KOTIKOTlauncher.resize(self.size[0], self.size[1])
KOTIKOTlauncher.setMinimumSize(QtCore.QSize(self.size[0], self.size[1]))
KOTIKOTlauncher.setMaximumSize(QtCore.QSize(self.size[0], self.size[1]))
self.centralwidget = QtWidgets.QWidget(KOTIKOTlauncher)
self.centralwidget.setObjectName("centralwidget")
self.gridLayoutWidget = QtWidgets.QWidget(self.centralwidget)
self.gridLayoutWidget.setGeometry(QtCore.QRect(0, 0, 425, 425))
self.gridLayoutWidget.setObjectName("gridLayoutWidget")
self.gridLayout = QtWidgets.QGridLayout(self.gridLayoutWidget)
self.gridLayout.setContentsMargins(5, 5, 5, 5)
self.gridLayout.setSpacing(5)
self.gridLayout.setObjectName("gridLayout")
with open("OfficialProjects/LAUNCHERFILES/apps.json") as appsfile:
apps = list(json.load(appsfile))
self.buttons = list()
for i in range(len(apps)):
self.buttons.append(QtWidgets.QPushButton(self.gridLayoutWidget))
self.buttons[i].setMinimumSize(QtCore.QSize(100, 100))
self.buttons[i].setMaximumSize(QtCore.QSize(100, 100))
self.buttons[i].setObjectName(apps[i])
self.buttons[i].setText(apps[i])
self.gridLayout.addWidget(self.buttons[i], i // self.size[2], i % self.size[2], 1, 1)
KOTIKOTlauncher.setCentralWidget(self.centralwidget)
self.menubar = QtWidgets.QMenuBar(KOTIKOTlauncher)
self.menubar.setGeometry(QtCore.QRect(0, 0, 434, 21))
self.menubar.setObjectName("menubar")
KOTIKOTlauncher.setMenuBar(self.menubar)
self.menuSettings = QtWidgets.QMenu(self.menubar)
self.menubar.addAction(self.menuSettings.menuAction())
self.actionOpen_settings = QtWidgets.QAction(KOTIKOTlauncher)
self.actionOpen_settings.setObjectName("actionOpen_settings")
self.menuSettings.addAction(self.actionOpen_settings)
self.retranslateUi(KOTIKOTlauncher)
QtCore.QMetaObject.connectSlotsByName(KOTIKOTlauncher)
def retranslateUi(self, KOTIKOTlauncher):
_translate = QtCore.QCoreApplication.translate
KOTIKOTlauncher.setWindowTitle(_translate("KOTIKOTlauncher", "KOTIKOTlauncher"))
self.menuSettings.setTitle(_translate("KOTIKOTlauncher", "Settings"))
self.actionOpen_settings.setText(_translate("KOTIKOTlauncher", "Open settings"))
if __name__ == "__main__":
import sys
app = QtWidgets.QApplication(sys.argv)
KOTIKOTlauncher = QtWidgets.QMainWindow()
ui = Ui_KOTIKOTlauncher()
ui.setupUi(KOTIKOTlauncher)
KOTIKOTlauncher.show()
sys.exit(app.exec_())