mirror of
https://github.com/Wanderson-Magalhaes/PyOneDark_Qt_Widgets_Modern_GUI.git
synced 2026-02-17 07:53:57 +00:00
11/06/2021
This commit is contained in:
@@ -1,133 +0,0 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
################################################################################
|
||||
## Form generated from reading UI file 'left_column.ui'
|
||||
##
|
||||
## Created by: Qt User Interface Compiler version 6.0.2
|
||||
##
|
||||
## WARNING! All changes made in this file will be lost when recompiling UI file!
|
||||
################################################################################
|
||||
|
||||
from PySide6.QtCore import *
|
||||
from PySide6.QtGui import *
|
||||
from PySide6.QtWidgets import *
|
||||
|
||||
|
||||
class Ui_LeftColumn(object):
|
||||
def setupUi(self, LeftColumn):
|
||||
if not LeftColumn.objectName():
|
||||
LeftColumn.setObjectName(u"LeftColumn")
|
||||
LeftColumn.resize(240, 600)
|
||||
self.main_pages_layout = QVBoxLayout(LeftColumn)
|
||||
self.main_pages_layout.setSpacing(0)
|
||||
self.main_pages_layout.setObjectName(u"main_pages_layout")
|
||||
self.main_pages_layout.setContentsMargins(5, 5, 5, 5)
|
||||
self.menus = QStackedWidget(LeftColumn)
|
||||
self.menus.setObjectName(u"menus")
|
||||
self.menu_1 = QWidget()
|
||||
self.menu_1.setObjectName(u"menu_1")
|
||||
self.verticalLayout = QVBoxLayout(self.menu_1)
|
||||
self.verticalLayout.setSpacing(5)
|
||||
self.verticalLayout.setObjectName(u"verticalLayout")
|
||||
self.verticalLayout.setContentsMargins(5, 5, 5, 5)
|
||||
self.btn_1_widget = QWidget(self.menu_1)
|
||||
self.btn_1_widget.setObjectName(u"btn_1_widget")
|
||||
self.btn_1_widget.setMinimumSize(QSize(0, 40))
|
||||
self.btn_1_widget.setMaximumSize(QSize(16777215, 40))
|
||||
self.btn_1_layout = QVBoxLayout(self.btn_1_widget)
|
||||
self.btn_1_layout.setSpacing(0)
|
||||
self.btn_1_layout.setObjectName(u"btn_1_layout")
|
||||
self.btn_1_layout.setContentsMargins(0, 0, 0, 0)
|
||||
|
||||
self.verticalLayout.addWidget(self.btn_1_widget)
|
||||
|
||||
self.btn_2_widget = QWidget(self.menu_1)
|
||||
self.btn_2_widget.setObjectName(u"btn_2_widget")
|
||||
self.btn_2_widget.setMinimumSize(QSize(0, 40))
|
||||
self.btn_2_widget.setMaximumSize(QSize(16777215, 40))
|
||||
self.btn_2_layout = QVBoxLayout(self.btn_2_widget)
|
||||
self.btn_2_layout.setSpacing(0)
|
||||
self.btn_2_layout.setObjectName(u"btn_2_layout")
|
||||
self.btn_2_layout.setContentsMargins(0, 0, 0, 0)
|
||||
|
||||
self.verticalLayout.addWidget(self.btn_2_widget)
|
||||
|
||||
self.btn_3_widget = QWidget(self.menu_1)
|
||||
self.btn_3_widget.setObjectName(u"btn_3_widget")
|
||||
self.btn_3_widget.setMinimumSize(QSize(0, 40))
|
||||
self.btn_3_widget.setMaximumSize(QSize(16777215, 40))
|
||||
self.btn_3_layout = QVBoxLayout(self.btn_3_widget)
|
||||
self.btn_3_layout.setSpacing(0)
|
||||
self.btn_3_layout.setObjectName(u"btn_3_layout")
|
||||
self.btn_3_layout.setContentsMargins(0, 0, 0, 0)
|
||||
|
||||
self.verticalLayout.addWidget(self.btn_3_widget)
|
||||
|
||||
self.label_1 = QLabel(self.menu_1)
|
||||
self.label_1.setObjectName(u"label_1")
|
||||
font = QFont()
|
||||
font.setPointSize(16)
|
||||
self.label_1.setFont(font)
|
||||
self.label_1.setStyleSheet(u"font-size: 16pt")
|
||||
self.label_1.setAlignment(Qt.AlignCenter)
|
||||
|
||||
self.verticalLayout.addWidget(self.label_1)
|
||||
|
||||
self.menus.addWidget(self.menu_1)
|
||||
self.menu_2 = QWidget()
|
||||
self.menu_2.setObjectName(u"menu_2")
|
||||
self.verticalLayout_2 = QVBoxLayout(self.menu_2)
|
||||
self.verticalLayout_2.setSpacing(5)
|
||||
self.verticalLayout_2.setObjectName(u"verticalLayout_2")
|
||||
self.verticalLayout_2.setContentsMargins(5, 5, 5, 5)
|
||||
self.btn_4_widget = QWidget(self.menu_2)
|
||||
self.btn_4_widget.setObjectName(u"btn_4_widget")
|
||||
self.btn_4_widget.setMinimumSize(QSize(0, 40))
|
||||
self.btn_4_widget.setMaximumSize(QSize(16777215, 40))
|
||||
self.btn_4_layout = QVBoxLayout(self.btn_4_widget)
|
||||
self.btn_4_layout.setSpacing(0)
|
||||
self.btn_4_layout.setObjectName(u"btn_4_layout")
|
||||
self.btn_4_layout.setContentsMargins(0, 0, 0, 0)
|
||||
|
||||
self.verticalLayout_2.addWidget(self.btn_4_widget)
|
||||
|
||||
self.label_2 = QLabel(self.menu_2)
|
||||
self.label_2.setObjectName(u"label_2")
|
||||
self.label_2.setFont(font)
|
||||
self.label_2.setStyleSheet(u"font-size: 16pt")
|
||||
self.label_2.setAlignment(Qt.AlignCenter)
|
||||
|
||||
self.verticalLayout_2.addWidget(self.label_2)
|
||||
|
||||
self.label_3 = QLabel(self.menu_2)
|
||||
self.label_3.setObjectName(u"label_3")
|
||||
font1 = QFont()
|
||||
font1.setPointSize(9)
|
||||
self.label_3.setFont(font1)
|
||||
self.label_3.setStyleSheet(u"font-size: 9pt")
|
||||
self.label_3.setAlignment(Qt.AlignCenter)
|
||||
self.label_3.setWordWrap(True)
|
||||
|
||||
self.verticalLayout_2.addWidget(self.label_3)
|
||||
|
||||
self.menus.addWidget(self.menu_2)
|
||||
|
||||
self.main_pages_layout.addWidget(self.menus)
|
||||
|
||||
|
||||
self.retranslateUi(LeftColumn)
|
||||
|
||||
self.menus.setCurrentIndex(0)
|
||||
|
||||
|
||||
QMetaObject.connectSlotsByName(LeftColumn)
|
||||
# setupUi
|
||||
|
||||
def retranslateUi(self, LeftColumn):
|
||||
LeftColumn.setWindowTitle(QCoreApplication.translate("LeftColumn", u"Form", None))
|
||||
self.label_1.setText(QCoreApplication.translate("LeftColumn", u"Menu 1 - Left Menu", None))
|
||||
self.label_2.setText(QCoreApplication.translate("LeftColumn", u"Menu 2 - Left Menu", None))
|
||||
self.label_3.setText(QCoreApplication.translate("LeftColumn", u"This is just an example menu.\n"
|
||||
"Add Qt Widgets or your custom widgets here.", None))
|
||||
# retranslateUi
|
||||
|
||||
@@ -1,163 +0,0 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
################################################################################
|
||||
## Form generated from reading UI file 'main_pages.ui'
|
||||
##
|
||||
## Created by: Qt User Interface Compiler version 6.0.2
|
||||
##
|
||||
## WARNING! All changes made in this file will be lost when recompiling UI file!
|
||||
################################################################################
|
||||
|
||||
from PySide6.QtCore import *
|
||||
from PySide6.QtGui import *
|
||||
from PySide6.QtWidgets import *
|
||||
|
||||
|
||||
class Ui_MainPages(object):
|
||||
def setupUi(self, MainPages):
|
||||
if not MainPages.objectName():
|
||||
MainPages.setObjectName(u"MainPages")
|
||||
MainPages.resize(860, 600)
|
||||
self.main_pages_layout = QVBoxLayout(MainPages)
|
||||
self.main_pages_layout.setSpacing(0)
|
||||
self.main_pages_layout.setObjectName(u"main_pages_layout")
|
||||
self.main_pages_layout.setContentsMargins(5, 5, 5, 5)
|
||||
self.pages = QStackedWidget(MainPages)
|
||||
self.pages.setObjectName(u"pages")
|
||||
self.page_1 = QWidget()
|
||||
self.page_1.setObjectName(u"page_1")
|
||||
self.page_1.setStyleSheet(u"font-size: 14pt")
|
||||
self.page_1_layout = QVBoxLayout(self.page_1)
|
||||
self.page_1_layout.setSpacing(5)
|
||||
self.page_1_layout.setObjectName(u"page_1_layout")
|
||||
self.page_1_layout.setContentsMargins(5, 5, 5, 5)
|
||||
self.welcome_base = QFrame(self.page_1)
|
||||
self.welcome_base.setObjectName(u"welcome_base")
|
||||
self.welcome_base.setMinimumSize(QSize(300, 150))
|
||||
self.welcome_base.setMaximumSize(QSize(300, 150))
|
||||
self.welcome_base.setFrameShape(QFrame.NoFrame)
|
||||
self.welcome_base.setFrameShadow(QFrame.Raised)
|
||||
self.center_page_layout = QVBoxLayout(self.welcome_base)
|
||||
self.center_page_layout.setSpacing(10)
|
||||
self.center_page_layout.setObjectName(u"center_page_layout")
|
||||
self.center_page_layout.setContentsMargins(0, 0, 0, 0)
|
||||
self.logo = QFrame(self.welcome_base)
|
||||
self.logo.setObjectName(u"logo")
|
||||
self.logo.setMinimumSize(QSize(300, 120))
|
||||
self.logo.setMaximumSize(QSize(300, 120))
|
||||
self.logo.setFrameShape(QFrame.NoFrame)
|
||||
self.logo.setFrameShadow(QFrame.Raised)
|
||||
self.logo_layout = QVBoxLayout(self.logo)
|
||||
self.logo_layout.setSpacing(0)
|
||||
self.logo_layout.setObjectName(u"logo_layout")
|
||||
self.logo_layout.setContentsMargins(0, 0, 0, 0)
|
||||
|
||||
self.center_page_layout.addWidget(self.logo)
|
||||
|
||||
self.label = QLabel(self.welcome_base)
|
||||
self.label.setObjectName(u"label")
|
||||
self.label.setAlignment(Qt.AlignCenter)
|
||||
|
||||
self.center_page_layout.addWidget(self.label)
|
||||
|
||||
|
||||
self.page_1_layout.addWidget(self.welcome_base, 0, Qt.AlignHCenter)
|
||||
|
||||
self.pages.addWidget(self.page_1)
|
||||
self.page_2 = QWidget()
|
||||
self.page_2.setObjectName(u"page_2")
|
||||
self.page_2_layout = QVBoxLayout(self.page_2)
|
||||
self.page_2_layout.setSpacing(5)
|
||||
self.page_2_layout.setObjectName(u"page_2_layout")
|
||||
self.page_2_layout.setContentsMargins(5, 5, 5, 5)
|
||||
self.scroll_area = QScrollArea(self.page_2)
|
||||
self.scroll_area.setObjectName(u"scroll_area")
|
||||
self.scroll_area.setStyleSheet(u"background: transparent;")
|
||||
self.scroll_area.setFrameShape(QFrame.NoFrame)
|
||||
self.scroll_area.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOff)
|
||||
self.scroll_area.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff)
|
||||
self.scroll_area.setWidgetResizable(True)
|
||||
self.contents = QWidget()
|
||||
self.contents.setObjectName(u"contents")
|
||||
self.contents.setGeometry(QRect(0, 0, 840, 580))
|
||||
self.contents.setStyleSheet(u"background: transparent;")
|
||||
self.verticalLayout = QVBoxLayout(self.contents)
|
||||
self.verticalLayout.setSpacing(15)
|
||||
self.verticalLayout.setObjectName(u"verticalLayout")
|
||||
self.verticalLayout.setContentsMargins(5, 5, 5, 5)
|
||||
self.title_label = QLabel(self.contents)
|
||||
self.title_label.setObjectName(u"title_label")
|
||||
self.title_label.setMaximumSize(QSize(16777215, 40))
|
||||
font = QFont()
|
||||
font.setPointSize(16)
|
||||
self.title_label.setFont(font)
|
||||
self.title_label.setStyleSheet(u"font-size: 16pt")
|
||||
self.title_label.setAlignment(Qt.AlignCenter)
|
||||
|
||||
self.verticalLayout.addWidget(self.title_label)
|
||||
|
||||
self.description_label = QLabel(self.contents)
|
||||
self.description_label.setObjectName(u"description_label")
|
||||
self.description_label.setAlignment(Qt.AlignHCenter|Qt.AlignTop)
|
||||
self.description_label.setWordWrap(True)
|
||||
|
||||
self.verticalLayout.addWidget(self.description_label)
|
||||
|
||||
self.row_1_layout = QHBoxLayout()
|
||||
self.row_1_layout.setObjectName(u"row_1_layout")
|
||||
|
||||
self.verticalLayout.addLayout(self.row_1_layout)
|
||||
|
||||
self.row_2_layout = QHBoxLayout()
|
||||
self.row_2_layout.setObjectName(u"row_2_layout")
|
||||
|
||||
self.verticalLayout.addLayout(self.row_2_layout)
|
||||
|
||||
self.row_3_layout = QHBoxLayout()
|
||||
self.row_3_layout.setObjectName(u"row_3_layout")
|
||||
|
||||
self.verticalLayout.addLayout(self.row_3_layout)
|
||||
|
||||
self.scroll_area.setWidget(self.contents)
|
||||
|
||||
self.page_2_layout.addWidget(self.scroll_area)
|
||||
|
||||
self.pages.addWidget(self.page_2)
|
||||
self.page_3 = QWidget()
|
||||
self.page_3.setObjectName(u"page_3")
|
||||
self.page_3.setStyleSheet(u"QFrame {\n"
|
||||
" background: lightgreen;\n"
|
||||
" font-size: 16pt;\n"
|
||||
" border-radius: 8px;\n"
|
||||
"}")
|
||||
self.page_3_layout = QVBoxLayout(self.page_3)
|
||||
self.page_3_layout.setObjectName(u"page_3_layout")
|
||||
self.empty_page_label = QLabel(self.page_3)
|
||||
self.empty_page_label.setObjectName(u"empty_page_label")
|
||||
self.empty_page_label.setFont(font)
|
||||
self.empty_page_label.setAlignment(Qt.AlignCenter)
|
||||
|
||||
self.page_3_layout.addWidget(self.empty_page_label)
|
||||
|
||||
self.pages.addWidget(self.page_3)
|
||||
|
||||
self.main_pages_layout.addWidget(self.pages)
|
||||
|
||||
|
||||
self.retranslateUi(MainPages)
|
||||
|
||||
self.pages.setCurrentIndex(1)
|
||||
|
||||
|
||||
QMetaObject.connectSlotsByName(MainPages)
|
||||
# setupUi
|
||||
|
||||
def retranslateUi(self, MainPages):
|
||||
MainPages.setWindowTitle(QCoreApplication.translate("MainPages", u"Form", None))
|
||||
self.label.setText(QCoreApplication.translate("MainPages", u"Welcome To PyOneDark GUI", None))
|
||||
self.title_label.setText(QCoreApplication.translate("MainPages", u"Custom Widgets Page", None))
|
||||
self.description_label.setText(QCoreApplication.translate("MainPages", u"Here will be all the custom widgets, they will be added over time on this page.\n"
|
||||
"I will try to always record a new tutorial when adding a new Widget and updating the project on Patreon before launching on GitHub and GitHub after the public release.", None))
|
||||
self.empty_page_label.setText(QCoreApplication.translate("MainPages", u"Empty Page", None))
|
||||
# retranslateUi
|
||||
|
||||
@@ -1,111 +0,0 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
################################################################################
|
||||
## Form generated from reading UI file 'right_column.ui'
|
||||
##
|
||||
## Created by: Qt User Interface Compiler version 6.0.2
|
||||
##
|
||||
## WARNING! All changes made in this file will be lost when recompiling UI file!
|
||||
################################################################################
|
||||
|
||||
from PySide6.QtCore import *
|
||||
from PySide6.QtGui import *
|
||||
from PySide6.QtWidgets import *
|
||||
|
||||
|
||||
class Ui_RightColumn(object):
|
||||
def setupUi(self, RightColumn):
|
||||
if not RightColumn.objectName():
|
||||
RightColumn.setObjectName(u"RightColumn")
|
||||
RightColumn.resize(240, 600)
|
||||
self.main_pages_layout = QVBoxLayout(RightColumn)
|
||||
self.main_pages_layout.setSpacing(0)
|
||||
self.main_pages_layout.setObjectName(u"main_pages_layout")
|
||||
self.main_pages_layout.setContentsMargins(5, 5, 5, 5)
|
||||
self.menus = QStackedWidget(RightColumn)
|
||||
self.menus.setObjectName(u"menus")
|
||||
self.menu_1 = QWidget()
|
||||
self.menu_1.setObjectName(u"menu_1")
|
||||
self.verticalLayout = QVBoxLayout(self.menu_1)
|
||||
self.verticalLayout.setSpacing(5)
|
||||
self.verticalLayout.setObjectName(u"verticalLayout")
|
||||
self.verticalLayout.setContentsMargins(5, 5, 5, 5)
|
||||
self.btn_1_widget = QWidget(self.menu_1)
|
||||
self.btn_1_widget.setObjectName(u"btn_1_widget")
|
||||
self.btn_1_widget.setMinimumSize(QSize(0, 40))
|
||||
self.btn_1_widget.setMaximumSize(QSize(16777215, 40))
|
||||
self.btn_1_layout = QVBoxLayout(self.btn_1_widget)
|
||||
self.btn_1_layout.setSpacing(0)
|
||||
self.btn_1_layout.setObjectName(u"btn_1_layout")
|
||||
self.btn_1_layout.setContentsMargins(0, 0, 0, 0)
|
||||
|
||||
self.verticalLayout.addWidget(self.btn_1_widget)
|
||||
|
||||
self.label_1 = QLabel(self.menu_1)
|
||||
self.label_1.setObjectName(u"label_1")
|
||||
font = QFont()
|
||||
font.setPointSize(16)
|
||||
self.label_1.setFont(font)
|
||||
self.label_1.setStyleSheet(u"font-size: 16pt")
|
||||
self.label_1.setAlignment(Qt.AlignCenter)
|
||||
|
||||
self.verticalLayout.addWidget(self.label_1)
|
||||
|
||||
self.menus.addWidget(self.menu_1)
|
||||
self.menu_2 = QWidget()
|
||||
self.menu_2.setObjectName(u"menu_2")
|
||||
self.verticalLayout_2 = QVBoxLayout(self.menu_2)
|
||||
self.verticalLayout_2.setSpacing(5)
|
||||
self.verticalLayout_2.setObjectName(u"verticalLayout_2")
|
||||
self.verticalLayout_2.setContentsMargins(5, 5, 5, 5)
|
||||
self.btn_2_widget = QWidget(self.menu_2)
|
||||
self.btn_2_widget.setObjectName(u"btn_2_widget")
|
||||
self.btn_2_widget.setMinimumSize(QSize(0, 40))
|
||||
self.btn_2_widget.setMaximumSize(QSize(16777215, 40))
|
||||
self.btn_2_layout = QVBoxLayout(self.btn_2_widget)
|
||||
self.btn_2_layout.setSpacing(0)
|
||||
self.btn_2_layout.setObjectName(u"btn_2_layout")
|
||||
self.btn_2_layout.setContentsMargins(0, 0, 0, 0)
|
||||
|
||||
self.verticalLayout_2.addWidget(self.btn_2_widget)
|
||||
|
||||
self.label_2 = QLabel(self.menu_2)
|
||||
self.label_2.setObjectName(u"label_2")
|
||||
self.label_2.setFont(font)
|
||||
self.label_2.setStyleSheet(u"font-size: 16pt")
|
||||
self.label_2.setAlignment(Qt.AlignCenter)
|
||||
|
||||
self.verticalLayout_2.addWidget(self.label_2)
|
||||
|
||||
self.label_3 = QLabel(self.menu_2)
|
||||
self.label_3.setObjectName(u"label_3")
|
||||
font1 = QFont()
|
||||
font1.setPointSize(9)
|
||||
self.label_3.setFont(font1)
|
||||
self.label_3.setStyleSheet(u"font-size: 9pt")
|
||||
self.label_3.setAlignment(Qt.AlignCenter)
|
||||
self.label_3.setWordWrap(True)
|
||||
|
||||
self.verticalLayout_2.addWidget(self.label_3)
|
||||
|
||||
self.menus.addWidget(self.menu_2)
|
||||
|
||||
self.main_pages_layout.addWidget(self.menus)
|
||||
|
||||
|
||||
self.retranslateUi(RightColumn)
|
||||
|
||||
self.menus.setCurrentIndex(1)
|
||||
|
||||
|
||||
QMetaObject.connectSlotsByName(RightColumn)
|
||||
# setupUi
|
||||
|
||||
def retranslateUi(self, RightColumn):
|
||||
RightColumn.setWindowTitle(QCoreApplication.translate("RightColumn", u"Form", None))
|
||||
self.label_1.setText(QCoreApplication.translate("RightColumn", u"Menu 1 - Right Menu", None))
|
||||
self.label_2.setText(QCoreApplication.translate("RightColumn", u"Menu 2 - Right Menu", None))
|
||||
self.label_3.setText(QCoreApplication.translate("RightColumn", u"This is just an example menu.\n"
|
||||
"Add Qt Widgets or your custom widgets here.", None))
|
||||
# retranslateUi
|
||||
|
||||
@@ -21,6 +21,8 @@
|
||||
"text_active" : "#dce1ec",
|
||||
"white" : "#f5f6f9",
|
||||
"pink" : "#ff007f",
|
||||
"green" : "#00ff7f"
|
||||
"green" : "#00ff7f",
|
||||
"red" : "#ff5555",
|
||||
"yellow" : "#f1fa8c"
|
||||
}
|
||||
}
|
||||
28
gui/themes/dracula.json
Normal file
28
gui/themes/dracula.json
Normal file
@@ -0,0 +1,28 @@
|
||||
{
|
||||
"theme_name" : "dracula",
|
||||
"app_color" : {
|
||||
"dark_one" : "#282a36",
|
||||
"dark_two" : "#2B2E3B",
|
||||
"dark_three" : "#333645",
|
||||
"dark_four" : "#3C4052",
|
||||
"bg_one" : "#44475a",
|
||||
"bg_two" : "#4D5066",
|
||||
"bg_three" : "#595D75",
|
||||
"icon_color" : "#c3ccdf",
|
||||
"icon_hover" : "#dce1ec",
|
||||
"icon_pressed" : "#ff79c6",
|
||||
"icon_active" : "#f5f6f9",
|
||||
"context_color" : "#ff79c6",
|
||||
"context_hover" : "#FF84D7",
|
||||
"context_pressed" : "#FF90DD",
|
||||
"text_title" : "#dce1ec",
|
||||
"text_foreground" : "#f8f8f2",
|
||||
"text_description" : "#979EC7",
|
||||
"text_active" : "#dce1ec",
|
||||
"white" : "#f5f6f9",
|
||||
"pink" : "#ff79c6",
|
||||
"green" : "#00ff7f",
|
||||
"red" : "#ff5555",
|
||||
"yellow" : "#f1fa8c"
|
||||
}
|
||||
}
|
||||
@@ -253,6 +253,12 @@ I will try to always record a new tutorial when adding a new Widget and updating
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="row_3_layout"/>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="row_4_layout"/>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="row_5_layout"/>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</widget>
|
||||
@@ -262,9 +268,7 @@ I will try to always record a new tutorial when adding a new Widget and updating
|
||||
<widget class="QWidget" name="page_3">
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QFrame {
|
||||
background: lightgreen;
|
||||
font-size: 16pt;
|
||||
border-radius: 8px;
|
||||
}</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="page_3_layout">
|
||||
|
||||
@@ -124,6 +124,16 @@ class Ui_MainPages(object):
|
||||
|
||||
self.verticalLayout.addLayout(self.row_3_layout)
|
||||
|
||||
self.row_4_layout = QVBoxLayout()
|
||||
self.row_4_layout.setObjectName(u"row_4_layout")
|
||||
|
||||
self.verticalLayout.addLayout(self.row_4_layout)
|
||||
|
||||
self.row_5_layout = QVBoxLayout()
|
||||
self.row_5_layout.setObjectName(u"row_5_layout")
|
||||
|
||||
self.verticalLayout.addLayout(self.row_5_layout)
|
||||
|
||||
self.scroll_area.setWidget(self.contents)
|
||||
|
||||
self.page_2_layout.addWidget(self.scroll_area)
|
||||
@@ -132,9 +142,7 @@ class Ui_MainPages(object):
|
||||
self.page_3 = QWidget()
|
||||
self.page_3.setObjectName(u"page_3")
|
||||
self.page_3.setStyleSheet(u"QFrame {\n"
|
||||
" background: lightgreen;\n"
|
||||
" font-size: 16pt;\n"
|
||||
" border-radius: 8px;\n"
|
||||
"}")
|
||||
self.page_3_layout = QVBoxLayout(self.page_3)
|
||||
self.page_3_layout.setObjectName(u"page_3_layout")
|
||||
|
||||
@@ -16,7 +16,10 @@
|
||||
|
||||
# IMPORT PACKAGES AND MODULES
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
from gui.widgets.py_table_widget.py_table_widget import PyTableWidget
|
||||
from . functions_main_window import *
|
||||
import sys
|
||||
import os
|
||||
|
||||
# IMPORT QT CORE
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
@@ -443,6 +446,68 @@ class SetupMainWindow:
|
||||
self.push_button_2.setMinimumHeight(40)
|
||||
self.push_button_2.setIcon(self.icon_2)
|
||||
|
||||
# PY LINE EDIT
|
||||
self.line_edit = PyLineEdit(
|
||||
text = "",
|
||||
place_holder_text = "Place holder text",
|
||||
radius = 8,
|
||||
border_size = 2,
|
||||
color = self.themes["app_color"]["text_foreground"],
|
||||
selection_color = self.themes["app_color"]["white"],
|
||||
bg_color = self.themes["app_color"]["dark_one"],
|
||||
bg_color_active = self.themes["app_color"]["dark_three"],
|
||||
context_color = self.themes["app_color"]["context_color"]
|
||||
)
|
||||
self.line_edit.setMinimumHeight(30)
|
||||
|
||||
# TABLE WIDGETS
|
||||
self.table_widget = PyTableWidget(
|
||||
radius = 8,
|
||||
color = self.themes["app_color"]["text_foreground"],
|
||||
selection_color = self.themes["app_color"]["context_color"],
|
||||
bg_color = self.themes["app_color"]["bg_two"],
|
||||
header_horizontal_color = self.themes["app_color"]["dark_two"],
|
||||
header_vertical_color = self.themes["app_color"]["bg_three"],
|
||||
bottom_line_color = self.themes["app_color"]["bg_three"],
|
||||
grid_line_color = self.themes["app_color"]["bg_one"],
|
||||
scroll_bar_bg_color = self.themes["app_color"]["bg_one"],
|
||||
scroll_bar_btn_color = self.themes["app_color"]["dark_four"],
|
||||
context_color = self.themes["app_color"]["context_color"]
|
||||
)
|
||||
self.table_widget.setColumnCount(3)
|
||||
self.table_widget.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch)
|
||||
self.table_widget.setSelectionMode(QAbstractItemView.ExtendedSelection)
|
||||
self.table_widget.setSelectionBehavior(QAbstractItemView.SelectRows)
|
||||
|
||||
# Columns / Header
|
||||
self.column_1 = QTableWidgetItem()
|
||||
self.column_1.setTextAlignment(Qt.AlignCenter)
|
||||
self.column_1.setText("NAME")
|
||||
|
||||
self.column_2 = QTableWidgetItem()
|
||||
self.column_2.setTextAlignment(Qt.AlignCenter)
|
||||
self.column_2.setText("NICK")
|
||||
|
||||
self.column_3 = QTableWidgetItem()
|
||||
self.column_3.setTextAlignment(Qt.AlignCenter)
|
||||
self.column_3.setText("PASS")
|
||||
|
||||
# Set column
|
||||
self.table_widget.setHorizontalHeaderItem(0, self.column_1)
|
||||
self.table_widget.setHorizontalHeaderItem(1, self.column_2)
|
||||
self.table_widget.setHorizontalHeaderItem(2, self.column_3)
|
||||
|
||||
for x in range(10):
|
||||
row_number = self.table_widget.rowCount()
|
||||
self.table_widget.insertRow(row_number) # Insert row
|
||||
self.table_widget.setItem(row_number, 0, QTableWidgetItem(str("Wanderson"))) # Add name
|
||||
self.table_widget.setItem(row_number, 1, QTableWidgetItem(str("vfx_on_fire_" + str(x)))) # Add nick
|
||||
self.pass_text = QTableWidgetItem()
|
||||
self.pass_text.setTextAlignment(Qt.AlignCenter)
|
||||
self.pass_text.setText("12345" + str(x))
|
||||
self.table_widget.setItem(row_number, 2, self.pass_text) # Add pass
|
||||
self.table_widget.setRowHeight(row_number, 22)
|
||||
|
||||
# ADD WIDGETS
|
||||
self.ui.load_pages.row_1_layout.addWidget(self.circular_progress_1)
|
||||
self.ui.load_pages.row_1_layout.addWidget(self.circular_progress_2)
|
||||
@@ -456,6 +521,8 @@ class SetupMainWindow:
|
||||
self.ui.load_pages.row_3_layout.addWidget(self.icon_button_3)
|
||||
self.ui.load_pages.row_3_layout.addWidget(self.push_button_1)
|
||||
self.ui.load_pages.row_3_layout.addWidget(self.push_button_2)
|
||||
self.ui.load_pages.row_4_layout.addWidget(self.line_edit)
|
||||
self.ui.load_pages.row_5_layout.addWidget(self.table_widget)
|
||||
|
||||
# RIGHT COLUMN
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
# IMPORT PACKAGES AND MODULES
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
from gui.core.functions import Functions
|
||||
from gui.widgets.py_credits_bar.py_credits import PyCredits
|
||||
|
||||
# IMPORT QT CORE
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
@@ -47,6 +46,10 @@ from gui.uis.pages.ui_main_pages import Ui_MainPages
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
from gui.uis.columns.ui_right_column import Ui_RightColumn
|
||||
|
||||
# CREDITS
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
from gui.widgets.py_credits_bar.py_credits import PyCredits
|
||||
|
||||
# PY WINDOW
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
class UI_MainWindow(object):
|
||||
@@ -164,6 +167,7 @@ class UI_MainWindow(object):
|
||||
btn_color_pressed = self.themes['app_color']['bg_one'],
|
||||
icon_color = self.themes['app_color']['icon_color'],
|
||||
icon_color_hover = self.themes['app_color']['icon_hover'],
|
||||
context_color = self.themes['app_color']['context_color'],
|
||||
icon_color_pressed = self.themes['app_color']['icon_pressed'],
|
||||
icon_close_path = Functions.set_svg_icon("icon_close.svg")
|
||||
)
|
||||
|
||||
@@ -60,4 +60,12 @@ from . py_circular_progress import PyCircularProgress
|
||||
|
||||
# PY ICON BUTTON
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
from . py_icon_button import PyIconButton
|
||||
from . py_icon_button import PyIconButton
|
||||
|
||||
# PY LINE EDIT
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
from . py_line_edit import PyLineEdit
|
||||
|
||||
# PY TABLE WIDGET
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
from . py_table_widget import PyTableWidget
|
||||
@@ -51,6 +51,7 @@ class PyLeftColumn(QWidget):
|
||||
icon_color,
|
||||
icon_color_hover,
|
||||
icon_color_pressed,
|
||||
context_color,
|
||||
icon_close_path,
|
||||
radius = 8
|
||||
):
|
||||
@@ -71,6 +72,7 @@ class PyLeftColumn(QWidget):
|
||||
self._icon_color = icon_color
|
||||
self._icon_color_hover = icon_color_hover
|
||||
self._icon_color_pressed = icon_color_pressed
|
||||
self._context_color = context_color
|
||||
self._icon_close_path = icon_close_path
|
||||
self._radius = radius
|
||||
|
||||
@@ -165,7 +167,7 @@ class PyLeftColumn(QWidget):
|
||||
icon_color_hover = self._icon_color_hover,
|
||||
icon_color_pressed = self._icon_color_pressed,
|
||||
icon_color_active = self._icon_color_pressed,
|
||||
context_color = self._icon_color_pressed,
|
||||
context_color = self._context_color,
|
||||
text_foreground = self._text_title_color,
|
||||
icon_path = self._icon_close_path,
|
||||
radius = 6,
|
||||
|
||||
19
gui/widgets/py_line_edit/__init__.py
Normal file
19
gui/widgets/py_line_edit/__init__.py
Normal file
@@ -0,0 +1,19 @@
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
#
|
||||
# BY: WANDERSON M.PIMENTA
|
||||
# PROJECT MADE WITH: Qt Designer and PySide6
|
||||
# V: 1.0.0
|
||||
#
|
||||
# This project can be used freely for all uses, as long as they maintain the
|
||||
# respective credits only in the Python scripts, any information in the visual
|
||||
# interface (GUI) can be modified without any implication.
|
||||
#
|
||||
# There are limitations on Qt licenses if you want to use your products
|
||||
# commercially, I recommend reading them on the official website:
|
||||
# https://doc.qt.io/qtforpython/licenses.html
|
||||
#
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
|
||||
# PY LINE EDIT
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
from . py_line_edit import PyLineEdit
|
||||
95
gui/widgets/py_line_edit/py_line_edit.py
Normal file
95
gui/widgets/py_line_edit/py_line_edit.py
Normal file
@@ -0,0 +1,95 @@
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
#
|
||||
# BY: WANDERSON M.PIMENTA
|
||||
# PROJECT MADE WITH: Qt Designer and PySide6
|
||||
# V: 1.0.0
|
||||
#
|
||||
# This project can be used freely for all uses, as long as they maintain the
|
||||
# respective credits only in the Python scripts, any information in the visual
|
||||
# interface (GUI) can be modified without any implication.
|
||||
#
|
||||
# There are limitations on Qt licenses if you want to use your products
|
||||
# commercially, I recommend reading them on the official website:
|
||||
# https://doc.qt.io/qtforpython/licenses.html
|
||||
#
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
|
||||
# IMPORT QT CORE
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
from qt_core import *
|
||||
|
||||
# STYLE
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
style = '''
|
||||
QLineEdit {{
|
||||
background-color: {_bg_color};
|
||||
border-radius: {_radius}px;
|
||||
border: {_border_size}px solid transparent;
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
selection-color: {_selection_color};
|
||||
selection-background-color: {_context_color};
|
||||
color: {_color};
|
||||
}}
|
||||
QLineEdit:focus {{
|
||||
border: {_border_size}px solid {_context_color};
|
||||
background-color: {_bg_color_active};
|
||||
}}
|
||||
'''
|
||||
|
||||
# PY PUSH BUTTON
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
class PyLineEdit(QLineEdit):
|
||||
def __init__(
|
||||
self,
|
||||
text = "",
|
||||
place_holder_text = "",
|
||||
radius = 8,
|
||||
border_size = 2,
|
||||
color = "#FFF",
|
||||
selection_color = "#FFF",
|
||||
bg_color = "#333",
|
||||
bg_color_active = "#222",
|
||||
context_color = "#00ABE8"
|
||||
):
|
||||
super().__init__()
|
||||
|
||||
# PARAMETERS
|
||||
if text:
|
||||
self.setText(text)
|
||||
if place_holder_text:
|
||||
self.setPlaceholderText(place_holder_text)
|
||||
|
||||
# SET STYLESHEET
|
||||
self.set_stylesheet(
|
||||
radius,
|
||||
border_size,
|
||||
color,
|
||||
selection_color,
|
||||
bg_color,
|
||||
bg_color_active,
|
||||
context_color
|
||||
)
|
||||
|
||||
# SET STYLESHEET
|
||||
def set_stylesheet(
|
||||
self,
|
||||
radius,
|
||||
border_size,
|
||||
color,
|
||||
selection_color,
|
||||
bg_color,
|
||||
bg_color_active,
|
||||
context_color
|
||||
):
|
||||
# APPLY STYLESHEET
|
||||
style_format = style.format(
|
||||
_radius = radius,
|
||||
_border_size = border_size,
|
||||
_color = color,
|
||||
_selection_color = selection_color,
|
||||
_bg_color = bg_color,
|
||||
_bg_color_active = bg_color_active,
|
||||
_context_color = context_color
|
||||
)
|
||||
self.setStyleSheet(style_format)
|
||||
19
gui/widgets/py_table_widget/__init__.py
Normal file
19
gui/widgets/py_table_widget/__init__.py
Normal file
@@ -0,0 +1,19 @@
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
#
|
||||
# BY: WANDERSON M.PIMENTA
|
||||
# PROJECT MADE WITH: Qt Designer and PySide6
|
||||
# V: 1.0.0
|
||||
#
|
||||
# This project can be used freely for all uses, as long as they maintain the
|
||||
# respective credits only in the Python scripts, any information in the visual
|
||||
# interface (GUI) can be modified without any implication.
|
||||
#
|
||||
# There are limitations on Qt licenses if you want to use your products
|
||||
# commercially, I recommend reading them on the official website:
|
||||
# https://doc.qt.io/qtforpython/licenses.html
|
||||
#
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
|
||||
# PY TABLE WIDGET
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
from . py_table_widget import PyTableWidget
|
||||
90
gui/widgets/py_table_widget/py_table_widget.py
Normal file
90
gui/widgets/py_table_widget/py_table_widget.py
Normal file
@@ -0,0 +1,90 @@
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
#
|
||||
# BY: WANDERSON M.PIMENTA
|
||||
# PROJECT MADE WITH: Qt Designer and PySide6
|
||||
# V: 1.0.0
|
||||
#
|
||||
# This project can be used freely for all uses, as long as they maintain the
|
||||
# respective credits only in the Python scripts, any information in the visual
|
||||
# interface (GUI) can be modified without any implication.
|
||||
#
|
||||
# There are limitations on Qt licenses if you want to use your products
|
||||
# commercially, I recommend reading them on the official website:
|
||||
# https://doc.qt.io/qtforpython/licenses.html
|
||||
#
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
|
||||
# IMPORT QT CORE
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
from qt_core import *
|
||||
|
||||
# IMPORT STYLE
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
from . style import *
|
||||
|
||||
# PY PUSH BUTTON
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
class PyTableWidget(QTableWidget):
|
||||
def __init__(
|
||||
self,
|
||||
radius = 8,
|
||||
color = "#FFF",
|
||||
bg_color = "#444",
|
||||
selection_color = "#FFF",
|
||||
header_horizontal_color = "#333",
|
||||
header_vertical_color = "#444",
|
||||
bottom_line_color = "#555",
|
||||
grid_line_color = "#555",
|
||||
scroll_bar_bg_color = "#FFF",
|
||||
scroll_bar_btn_color = "#3333",
|
||||
context_color = "#00ABE8"
|
||||
):
|
||||
super().__init__()
|
||||
|
||||
# PARAMETERS
|
||||
|
||||
# SET STYLESHEET
|
||||
self.set_stylesheet(
|
||||
radius,
|
||||
color,
|
||||
bg_color,
|
||||
header_horizontal_color,
|
||||
header_vertical_color,
|
||||
selection_color,
|
||||
bottom_line_color,
|
||||
grid_line_color,
|
||||
scroll_bar_bg_color,
|
||||
scroll_bar_btn_color,
|
||||
context_color
|
||||
)
|
||||
|
||||
# SET STYLESHEET
|
||||
def set_stylesheet(
|
||||
self,
|
||||
radius,
|
||||
color,
|
||||
bg_color,
|
||||
header_horizontal_color,
|
||||
header_vertical_color,
|
||||
selection_color,
|
||||
bottom_line_color,
|
||||
grid_line_color,
|
||||
scroll_bar_bg_color,
|
||||
scroll_bar_btn_color,
|
||||
context_color
|
||||
):
|
||||
# APPLY STYLESHEET
|
||||
style_format = style.format(
|
||||
_radius = radius,
|
||||
_color = color,
|
||||
_bg_color = bg_color,
|
||||
_header_horizontal_color = header_horizontal_color,
|
||||
_header_vertical_color = header_vertical_color,
|
||||
_selection_color = selection_color,
|
||||
_bottom_line_color = bottom_line_color,
|
||||
_grid_line_color = grid_line_color,
|
||||
_scroll_bar_bg_color = scroll_bar_bg_color,
|
||||
_scroll_bar_btn_color = scroll_bar_btn_color,
|
||||
_context_color = context_color
|
||||
)
|
||||
self.setStyleSheet(style_format)
|
||||
135
gui/widgets/py_table_widget/style.py
Normal file
135
gui/widgets/py_table_widget/style.py
Normal file
@@ -0,0 +1,135 @@
|
||||
# STYLE
|
||||
# ///////////////////////////////////////////////////////////////
|
||||
style = '''
|
||||
/* /////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
QTableWidget */
|
||||
|
||||
QTableWidget {{
|
||||
background-color: {_bg_color};
|
||||
padding: 5px;
|
||||
border-radius: {_radius}px;
|
||||
gridline-color: {_grid_line_color};
|
||||
color: {_color};
|
||||
}}
|
||||
QTableWidget::item{{
|
||||
border-color: none;
|
||||
padding-left: 5px;
|
||||
padding-right: 5px;
|
||||
gridline-color: rgb(44, 49, 60);
|
||||
border-bottom: 1px solid {_bottom_line_color};
|
||||
}}
|
||||
QTableWidget::item:selected{{
|
||||
background-color: {_selection_color};
|
||||
}}
|
||||
QHeaderView::section{{
|
||||
background-color: rgb(33, 37, 43);
|
||||
max-width: 30px;
|
||||
border: 1px solid rgb(44, 49, 58);
|
||||
border-style: none;
|
||||
border-bottom: 1px solid rgb(44, 49, 60);
|
||||
border-right: 1px solid rgb(44, 49, 60);
|
||||
}}
|
||||
QTableWidget::horizontalHeader {{
|
||||
background-color: rgb(33, 37, 43);
|
||||
}}
|
||||
QTableWidget QTableCornerButton::section {{
|
||||
border: none;
|
||||
background-color: {_header_horizontal_color};
|
||||
padding: 3px;
|
||||
border-top-left-radius: {_radius}px;
|
||||
}}
|
||||
QHeaderView::section:horizontal
|
||||
{{
|
||||
border: none;
|
||||
background-color: {_header_horizontal_color};
|
||||
padding: 3px;
|
||||
}}
|
||||
QHeaderView::section:vertical
|
||||
{{
|
||||
border: none;
|
||||
background-color: {_header_vertical_color};
|
||||
padding-left: 5px;
|
||||
padding-right: 5px;
|
||||
border-bottom: 1px solid {_bottom_line_color};
|
||||
margin-bottom: 1px;
|
||||
}}
|
||||
|
||||
|
||||
/* /////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
ScrollBars */
|
||||
QScrollBar:horizontal {{
|
||||
border: none;
|
||||
background: {_scroll_bar_bg_color};
|
||||
height: 8px;
|
||||
margin: 0px 21px 0 21px;
|
||||
border-radius: 0px;
|
||||
}}
|
||||
QScrollBar::handle:horizontal {{
|
||||
background: {_context_color};
|
||||
min-width: 25px;
|
||||
border-radius: 4px
|
||||
}}
|
||||
QScrollBar::add-line:horizontal {{
|
||||
border: none;
|
||||
background: {_scroll_bar_btn_color};
|
||||
width: 20px;
|
||||
border-top-right-radius: 4px;
|
||||
border-bottom-right-radius: 4px;
|
||||
subcontrol-position: right;
|
||||
subcontrol-origin: margin;
|
||||
}}
|
||||
QScrollBar::sub-line:horizontal {{
|
||||
border: none;
|
||||
background: {_scroll_bar_btn_color};
|
||||
width: 20px;
|
||||
border-top-left-radius: 4px;
|
||||
border-bottom-left-radius: 4px;
|
||||
subcontrol-position: left;
|
||||
subcontrol-origin: margin;
|
||||
}}
|
||||
QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal
|
||||
{{
|
||||
background: none;
|
||||
}}
|
||||
QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal
|
||||
{{
|
||||
background: none;
|
||||
}}
|
||||
QScrollBar:vertical {{
|
||||
border: none;
|
||||
background: {_scroll_bar_bg_color};
|
||||
width: 8px;
|
||||
margin: 21px 0 21px 0;
|
||||
border-radius: 0px;
|
||||
}}
|
||||
QScrollBar::handle:vertical {{
|
||||
background: {_context_color};
|
||||
min-height: 25px;
|
||||
border-radius: 4px
|
||||
}}
|
||||
QScrollBar::add-line:vertical {{
|
||||
border: none;
|
||||
background: {_scroll_bar_btn_color};
|
||||
height: 20px;
|
||||
border-bottom-left-radius: 4px;
|
||||
border-bottom-right-radius: 4px;
|
||||
subcontrol-position: bottom;
|
||||
subcontrol-origin: margin;
|
||||
}}
|
||||
QScrollBar::sub-line:vertical {{
|
||||
border: none;
|
||||
background: {_scroll_bar_btn_color};
|
||||
height: 20px;
|
||||
border-top-left-radius: 4px;
|
||||
border-top-right-radius: 4px;
|
||||
subcontrol-position: top;
|
||||
subcontrol-origin: margin;
|
||||
}}
|
||||
QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical {{
|
||||
background: none;
|
||||
}}
|
||||
|
||||
QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical {{
|
||||
background: none;
|
||||
}}
|
||||
'''
|
||||
Reference in New Issue
Block a user