Comments (19)
@nitubhaskar The solution is a QProxyStyle, I have already published it as an answer in Stack Overflow
from PyQt5 import QtCore, QtGui, QtWidgets
class TabBar(QtWidgets.QTabBar):
def tabSizeHint(self, index):
s = QtWidgets.QTabBar.tabSizeHint(self, index)
s.transpose()
return s
def paintEvent(self, event):
painter = QtWidgets.QStylePainter(self)
opt = QtWidgets.QStyleOptionTab()
for i in range(self.count()):
self.initStyleOption(opt, i)
painter.drawControl(QtWidgets.QStyle.CE_TabBarTabShape, opt)
painter.save()
s = opt.rect.size()
s.transpose()
r = QtCore.QRect(QtCore.QPoint(), s)
r.moveCenter(opt.rect.center())
opt.rect = r
c = self.tabRect(i).center()
painter.translate(c)
painter.rotate(90)
painter.translate(-c)
painter.drawControl(QtWidgets.QStyle.CE_TabBarTabLabel, opt);
painter.restore()
class TabWidget(QtWidgets.QTabWidget):
def __init__(self, *args, **kwargs):
QtWidgets.QTabWidget.__init__(self, *args, **kwargs)
self.setTabBar(TabBar(self))
self.setTabPosition(QtWidgets.QTabWidget.West)
class ProxyStyle(QtWidgets.QProxyStyle):
def drawControl(self, element, opt, painter, widget):
if element == QtWidgets.QStyle.CE_TabBarTabLabel:
ic = self.pixelMetric(QtWidgets.QStyle.PM_TabBarIconSize)
r = QtCore.QRect(opt.rect)
w = 0 if opt.icon.isNull() else opt.rect.width() + self.pixelMetric(QtWidgets.QStyle.PM_TabBarIconSize)
r.setHeight(opt.fontMetrics.width(opt.text) + w)
r.moveBottom(opt.rect.bottom())
opt.rect = r
QtWidgets.QProxyStyle.drawControl(self, element, opt, painter, widget)
if __name__ == '__main__':
import sys
app = QtWidgets.QApplication(sys.argv)
QtWidgets.QApplication.setStyle(ProxyStyle())
w = TabWidget()
w.addTab(QtWidgets.QWidget(), QtGui.QIcon("zoom.png"), "ABC")
w.addTab(QtWidgets.QWidget(), QtGui.QIcon("zoom-in.png"), "ABCDEFGH")
w.addTab(QtWidgets.QWidget(), QtGui.QIcon("zoom-out.png"), "XYZ")
w.resize(640, 480)
w.show()
sys.exit(app.exec_())
from stackoverflow.
try with r.setHeight(opt.fontMetrics.width(opt.text) + w +- some_value)
from stackoverflow.
The buttons will be arranged with the following code
if __name__ == "__main__":
import sys
app = QtWidgets.QApplication(sys.argv)
app.setStyle(ProxyStyle("fusion"))
w = MainWindow()
w.show()
sys.exit(app.exec_())
With the previous correction it is no longer necessary r.setHeight(opt.fontMetrics.width(opt.text) + w +- some_value)
and for padding use the following:
from PyQt5 import QtCore, QtGui, QtWidgets
class TabBar(QtWidgets.QTabBar):
def tabSizeHint(self, index):
s = QtWidgets.QTabBar.tabSizeHint(self, index)
s.transpose()
return s + QtCore.QSize(10, 10) # <---padding
def paintEvent(self, event):
painter = QtWidgets.QStylePainter(self)
opt = QtWidgets.QStyleOptionTab()
for i in range(self.count()):
self.initStyleOption(opt, i)
painter.drawControl(QtWidgets.QStyle.CE_TabBarTabShape, opt)
painter.save()
s = opt.rect.size()
s.transpose()
r = QtCore.QRect(QtCore.QPoint(), s)
r.moveCenter(opt.rect.center())
opt.rect = r
c = self.tabRect(i).center()
painter.translate(c)
painter.rotate(90)
painter.translate(-c)
painter.drawControl(QtWidgets.QStyle.CE_TabBarTabLabel, opt)
painter.restore()
class TabWidget(QtWidgets.QTabWidget):
def __init__(self, *args, **kwargs):
QtWidgets.QTabWidget.__init__(self, *args, **kwargs)
self.setTabBar(TabBar(self))
self.setTabPosition(QtWidgets.QTabWidget.West)
Output:
from stackoverflow.
@nitubhaskar Well, I helped him in what he could. If you want very special features that Qt does not offer then you will have to pay an additional cost, and in this case the cost is that you must use the fusion style. 😄
from stackoverflow.
I was using text and icon in qpushbutton. Now i just removed both and made 1 image with icon and text and added it in stylesheet background-image: url(:/img/img/report.png);
like that. so it fixed the background color problem as image covers it.
from stackoverflow.
thanks a lot for the code and the quick help. appreciate it.
from stackoverflow.
Hi, as you told me to upload to github, i have done that here https://github.com/nitubhaskar/uipyqt5/tree/master.
Thanks for help. The code to switch UI tab text is in tabwidget file which is imported in mainwindowui file. hence i was not able to make proxystyle work in mainwindow as i couldnt figure out where to add proxy class without affecting other element style.
from stackoverflow.
@nitubhaskar Your code generates errors, correct and notify me, If you want help from me you will have to provide a workable code, I have not asked you to provide me with your project, if you can not then create another minimum project, in SO we call it MCVE 😄
from stackoverflow.
sorry, i will take a look at it. i only changed the website links in it and removed ui files. let me just add those ui files and it will work then. Edit: I have updated them with all the files. i have checked in pycharm and its working. You have to click "Start your free trial" to get to main window and then you can see tabs text issue on left side.
from stackoverflow.
@nitubhaskar I get the following:
If you could make that part jump and throw me into the problem directly it would be great, I'm getting bored 😄
from stackoverflow.
sorry, i was keeping window handling flow same if it matters to drawing. Needed to click trial mode to get to main window which i mentioned in previous comment. Oh my, sorry. i just noticed what happened
That trial mode button has image on it, so without png files it didnt show. very sorry on my blunder >.>
i have removed it now, so you can get to main window right away.
from stackoverflow.
@nitubhaskar I already saw what the problem is, but to solve it I need you to share the .ui that generates the mainwindow_ui.py together with the .rc
from stackoverflow.
ok added/updated these files in repo "res.qrc" "res_rc.py" "mainwindow.ui" "mainwindow_ui.py"
i had too many images. so i removed many and kept dummy icons for test. thanks
from stackoverflow.
The problem is in the padding that you use in the tabbar, if you remove them as shown in the following image:
You get the following:
mainwindow_ui.py
# -*- coding: utf-8 -*-
# Form implementation generated from reading ui file 'mainwindow.ui'
#
# Created by: PyQt5 UI code generator 5.11.2
#
# WARNING! All changes made in this file will be lost!
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_MainWindow(object):
def setupUi(self, MainWindow):
MainWindow.setObjectName("MainWindow")
MainWindow.resize(900, 570)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.MinimumExpanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(MainWindow.sizePolicy().hasHeightForWidth())
MainWindow.setSizePolicy(sizePolicy)
MainWindow.setMinimumSize(QtCore.QSize(900, 570))
MainWindow.setBaseSize(QtCore.QSize(900, 570))
icon = QtGui.QIcon()
icon.addPixmap(QtGui.QPixmap("C:/Users/Shift/.designer/backup/images/hospital.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
MainWindow.setWindowIcon(icon)
self.centralwidget = QtWidgets.QWidget(MainWindow)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.MinimumExpanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.centralwidget.sizePolicy().hasHeightForWidth())
self.centralwidget.setSizePolicy(sizePolicy)
self.centralwidget.setObjectName("centralwidget")
self.centralVL = QtWidgets.QVBoxLayout(self.centralwidget)
self.centralVL.setSizeConstraint(QtWidgets.QLayout.SetNoConstraint)
self.centralVL.setContentsMargins(0, 0, 0, 0)
self.centralVL.setSpacing(0)
self.centralVL.setObjectName("centralVL")
self.bannerF = QtWidgets.QFrame(self.centralwidget)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.MinimumExpanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.bannerF.sizePolicy().hasHeightForWidth())
self.bannerF.setSizePolicy(sizePolicy)
self.bannerF.setMinimumSize(QtCore.QSize(900, 40))
self.bannerF.setMaximumSize(QtCore.QSize(16777215, 40))
self.bannerF.setBaseSize(QtCore.QSize(900, 40))
self.bannerF.setStyleSheet("background-color: rgb(31, 56, 78);")
self.bannerF.setObjectName("bannerF")
self.bannerHL = QtWidgets.QHBoxLayout(self.bannerF)
self.bannerHL.setSizeConstraint(QtWidgets.QLayout.SetMinimumSize)
self.bannerHL.setContentsMargins(8, 0, 8, 0)
self.bannerHL.setSpacing(8)
self.bannerHL.setObjectName("bannerHL")
self.logoL = QtWidgets.QLabel(self.bannerF)
self.logoL.setEnabled(True)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.logoL.sizePolicy().hasHeightForWidth())
self.logoL.setSizePolicy(sizePolicy)
self.logoL.setMinimumSize(QtCore.QSize(200, 40))
self.logoL.setMaximumSize(QtCore.QSize(16777215, 40))
self.logoL.setBaseSize(QtCore.QSize(200, 40))
self.logoL.setText("")
self.logoL.setPixmap(QtGui.QPixmap(":/img/img/applogo.png"))
self.logoL.setScaledContents(False)
self.logoL.setIndent(0)
self.logoL.setObjectName("logoL")
self.bannerHL.addWidget(self.logoL)
spacerItem = QtWidgets.QSpacerItem(100, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.bannerHL.addItem(spacerItem)
self.upgradePB = QtWidgets.QPushButton(self.bannerF)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.upgradePB.sizePolicy().hasHeightForWidth())
self.upgradePB.setSizePolicy(sizePolicy)
self.upgradePB.setMinimumSize(QtCore.QSize(85, 22))
self.upgradePB.setMaximumSize(QtCore.QSize(85, 22))
self.upgradePB.setBaseSize(QtCore.QSize(85, 22))
palette = QtGui.QPalette()
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
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.ButtonText, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Base, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Window, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
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.ButtonText, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Base, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Window, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Button, brush)
brush = QtGui.QBrush(QtGui.QColor(120, 120, 120))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.ButtonText, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Base, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Window, brush)
self.upgradePB.setPalette(palette)
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.upgradePB.setFont(font)
icon1 = QtGui.QIcon()
icon1.addPixmap(QtGui.QPixmap(":/img/img/buy1.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
self.upgradePB.setIcon(icon1)
self.upgradePB.setObjectName("upgradePB")
self.bannerHL.addWidget(self.upgradePB)
self.reportPB = QtWidgets.QPushButton(self.bannerF)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.reportPB.sizePolicy().hasHeightForWidth())
self.reportPB.setSizePolicy(sizePolicy)
self.reportPB.setMinimumSize(QtCore.QSize(90, 22))
self.reportPB.setMaximumSize(QtCore.QSize(90, 22))
self.reportPB.setBaseSize(QtCore.QSize(90, 22))
palette = QtGui.QPalette()
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
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.ButtonText, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Base, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Window, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
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.ButtonText, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Base, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Window, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Button, brush)
brush = QtGui.QBrush(QtGui.QColor(120, 120, 120))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.ButtonText, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Base, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Window, brush)
self.reportPB.setPalette(palette)
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.reportPB.setFont(font)
self.reportPB.setIcon(icon1)
self.reportPB.setObjectName("reportPB")
self.bannerHL.addWidget(self.reportPB)
self.helpPB = QtWidgets.QPushButton(self.bannerF)
self.helpPB.setEnabled(True)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.helpPB.sizePolicy().hasHeightForWidth())
self.helpPB.setSizePolicy(sizePolicy)
self.helpPB.setMinimumSize(QtCore.QSize(85, 22))
self.helpPB.setMaximumSize(QtCore.QSize(85, 22))
self.helpPB.setBaseSize(QtCore.QSize(85, 22))
palette = QtGui.QPalette()
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
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.ButtonText, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Base, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Window, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
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.ButtonText, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Base, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Window, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Button, brush)
brush = QtGui.QBrush(QtGui.QColor(120, 120, 120))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.ButtonText, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Base, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Window, brush)
self.helpPB.setPalette(palette)
font = QtGui.QFont()
font.setFamily("Segoe UI")
font.setPointSize(8)
self.helpPB.setFont(font)
self.helpPB.setIcon(icon1)
self.helpPB.setObjectName("helpPB")
self.bannerHL.addWidget(self.helpPB)
self.emailL = QtWidgets.QLabel(self.bannerF)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.emailL.sizePolicy().hasHeightForWidth())
self.emailL.setSizePolicy(sizePolicy)
self.emailL.setMinimumSize(QtCore.QSize(100, 20))
self.emailL.setMaximumSize(QtCore.QSize(300, 20))
self.emailL.setBaseSize(QtCore.QSize(200, 20))
palette = QtGui.QPalette()
brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.WindowText, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Button, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Base, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Window, brush)
brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.WindowText, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Button, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Base, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Window, brush)
brush = QtGui.QBrush(QtGui.QColor(120, 120, 120))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.WindowText, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Button, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Base, brush)
brush = QtGui.QBrush(QtGui.QColor(31, 56, 78))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Window, brush)
self.emailL.setPalette(palette)
font = QtGui.QFont()
font.setFamily("Segoe UI")
font.setPointSize(10)
self.emailL.setFont(font)
self.emailL.setStyleSheet("image: url(:/img/img/support1.png);\n"
"image-position: left;\n"
"margin-left:2px;margin-right:2px;")
self.emailL.setText("[email protected]")
self.emailL.setTextFormat(QtCore.Qt.RichText)
self.emailL.setScaledContents(True)
self.emailL.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter)
self.emailL.setIndent(25)
self.emailL.setTextInteractionFlags(QtCore.Qt.NoTextInteraction)
self.emailL.setObjectName("emailL")
self.bannerHL.addWidget(self.emailL)
self.minPB = QtWidgets.QPushButton(self.bannerF)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.minPB.sizePolicy().hasHeightForWidth())
self.minPB.setSizePolicy(sizePolicy)
self.minPB.setMinimumSize(QtCore.QSize(20, 20))
self.minPB.setMaximumSize(QtCore.QSize(20, 20))
self.minPB.setBaseSize(QtCore.QSize(20, 20))
self.minPB.setContextMenuPolicy(QtCore.Qt.NoContextMenu)
self.minPB.setStyleSheet("QPushButton \n"
"{\n"
" border-image: url(:/img/img/min.png);\n"
"}\n"
"QPushButton:hover \n"
"{\n"
" border-image: url(:/img/img/min_hover.png);\n"
"}")
self.minPB.setFlat(True)
self.minPB.setObjectName("minPB")
self.bannerHL.addWidget(self.minPB)
self.closePB = QtWidgets.QPushButton(self.bannerF)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.closePB.sizePolicy().hasHeightForWidth())
self.closePB.setSizePolicy(sizePolicy)
self.closePB.setMinimumSize(QtCore.QSize(20, 20))
self.closePB.setMaximumSize(QtCore.QSize(20, 20))
self.closePB.setBaseSize(QtCore.QSize(20, 20))
self.closePB.setContextMenuPolicy(QtCore.Qt.NoContextMenu)
self.closePB.setStyleSheet("QPushButton \n"
"{\n"
" border-image: url(:/img/img/close.png);\n"
"}\n"
"QPushButton:hover \n"
"{\n"
" border-image: url(:/img/img/close_hover.png);\n"
"}")
self.closePB.setFlat(True)
self.closePB.setObjectName("closePB")
self.bannerHL.addWidget(self.closePB)
self.centralVL.addWidget(self.bannerF)
self.tabWidget = TabWidget(self.centralwidget)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.tabWidget.sizePolicy().hasHeightForWidth())
self.tabWidget.setSizePolicy(sizePolicy)
self.tabWidget.setMinimumSize(QtCore.QSize(900, 490))
self.tabWidget.setBaseSize(QtCore.QSize(900, 490))
font = QtGui.QFont()
font.setFamily("Segoe UI")
font.setPointSize(10)
self.tabWidget.setFont(font)
self.tabWidget.setAutoFillBackground(True)
self.tabWidget.setStyleSheet("QTabBar::tab:selected, QTabBar::tab:hover {color: #000000;background: \"white\";}\n"
"QTabBar::tab:!selected {color: #ffffff;background-color: #2A3955;}")
self.tabWidget.setTabPosition(QtWidgets.QTabWidget.West)
self.tabWidget.setObjectName("tabWidget")
self.scanT = QtWidgets.QWidget()
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.scanT.sizePolicy().hasHeightForWidth())
self.scanT.setSizePolicy(sizePolicy)
self.scanT.setMinimumSize(QtCore.QSize(730, 484))
self.scanT.setBaseSize(QtCore.QSize(730, 484))
font = QtGui.QFont()
font.setFamily("Segoe UI")
font.setPointSize(10)
self.scanT.setFont(font)
self.scanT.setObjectName("scanT")
self.scanVL = QtWidgets.QVBoxLayout(self.scanT)
self.scanVL.setSizeConstraint(QtWidgets.QLayout.SetNoConstraint)
self.scanVL.setContentsMargins(0, 0, 0, 0)
self.scanVL.setSpacing(0)
self.scanVL.setObjectName("scanVL")
self.scanF = QtWidgets.QFrame(self.scanT)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.scanF.sizePolicy().hasHeightForWidth())
self.scanF.setSizePolicy(sizePolicy)
self.scanF.setMinimumSize(QtCore.QSize(856, 240))
self.scanF.setBaseSize(QtCore.QSize(856, 240))
self.scanF.setObjectName("scanF")
self.horizontalLayout = QtWidgets.QHBoxLayout(self.scanF)
self.horizontalLayout.setSizeConstraint(QtWidgets.QLayout.SetMinAndMaxSize)
self.horizontalLayout.setContentsMargins(10, 0, 0, 0)
self.horizontalLayout.setSpacing(0)
self.horizontalLayout.setObjectName("horizontalLayout")
self.alldriveCB = QtWidgets.QCheckBox(self.scanF)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.alldriveCB.sizePolicy().hasHeightForWidth())
self.alldriveCB.setSizePolicy(sizePolicy)
self.alldriveCB.setMinimumSize(QtCore.QSize(140, 30))
self.alldriveCB.setBaseSize(QtCore.QSize(140, 30))
font = QtGui.QFont()
font.setFamily("Segoe UI")
font.setPointSize(9)
font.setBold(True)
font.setWeight(75)
self.alldriveCB.setFont(font)
self.alldriveCB.setStyleSheet("spacing:10px;")
self.alldriveCB.setChecked(True)
self.alldriveCB.setObjectName("alldriveCB")
self.horizontalLayout.addWidget(self.alldriveCB)
self.driveVL = QtWidgets.QFrame(self.scanF)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.MinimumExpanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.driveVL.sizePolicy().hasHeightForWidth())
self.driveVL.setSizePolicy(sizePolicy)
self.driveVL.setFrameShape(QtWidgets.QFrame.VLine)
self.driveVL.setFrameShadow(QtWidgets.QFrame.Sunken)
self.driveVL.setObjectName("driveVL")
self.horizontalLayout.addWidget(self.driveVL)
self.drivesF = QtWidgets.QFrame(self.scanF)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.drivesF.sizePolicy().hasHeightForWidth())
self.drivesF.setSizePolicy(sizePolicy)
self.drivesF.setMinimumSize(QtCore.QSize(730, 240))
self.drivesF.setBaseSize(QtCore.QSize(730, 240))
self.drivesF.setObjectName("drivesF")
self.drive1PB = QtWidgets.QProgressBar(self.drivesF)
self.drive1PB.setGeometry(QtCore.QRect(50, 75, 108, 21))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.drive1PB.sizePolicy().hasHeightForWidth())
self.drive1PB.setSizePolicy(sizePolicy)
self.drive1PB.setMinimumSize(QtCore.QSize(100, 20))
self.drive1PB.setBaseSize(QtCore.QSize(100, 20))
self.drive1PB.setProperty("value", 60)
self.drive1PB.setTextVisible(False)
self.drive1PB.setObjectName("drive1PB")
self.drive1CB = QtWidgets.QCheckBox(self.drivesF)
self.drive1CB.setGeometry(QtCore.QRect(50, 50, 120, 25))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.drive1CB.sizePolicy().hasHeightForWidth())
self.drive1CB.setSizePolicy(sizePolicy)
self.drive1CB.setMinimumSize(QtCore.QSize(120, 25))
self.drive1CB.setBaseSize(QtCore.QSize(120, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.drive1CB.setFont(font)
self.drive1CB.setStyleSheet("spacing:10px;")
self.drive1CB.setObjectName("drive1CB")
self.drive2CB = QtWidgets.QCheckBox(self.drivesF)
self.drive2CB.setGeometry(QtCore.QRect(280, 50, 120, 25))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.drive2CB.sizePolicy().hasHeightForWidth())
self.drive2CB.setSizePolicy(sizePolicy)
self.drive2CB.setMinimumSize(QtCore.QSize(120, 25))
self.drive2CB.setBaseSize(QtCore.QSize(120, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.drive2CB.setFont(font)
self.drive2CB.setStyleSheet("spacing:10px;")
self.drive2CB.setObjectName("drive2CB")
self.drive2PB = QtWidgets.QProgressBar(self.drivesF)
self.drive2PB.setGeometry(QtCore.QRect(280, 75, 108, 21))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.drive2PB.sizePolicy().hasHeightForWidth())
self.drive2PB.setSizePolicy(sizePolicy)
self.drive2PB.setMinimumSize(QtCore.QSize(100, 20))
self.drive2PB.setBaseSize(QtCore.QSize(100, 20))
self.drive2PB.setProperty("value", 60)
self.drive2PB.setTextVisible(False)
self.drive2PB.setObjectName("drive2PB")
self.drive4CB = QtWidgets.QCheckBox(self.drivesF)
self.drive4CB.setGeometry(QtCore.QRect(280, 140, 120, 25))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.drive4CB.sizePolicy().hasHeightForWidth())
self.drive4CB.setSizePolicy(sizePolicy)
self.drive4CB.setMinimumSize(QtCore.QSize(120, 25))
self.drive4CB.setBaseSize(QtCore.QSize(120, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.drive4CB.setFont(font)
self.drive4CB.setStyleSheet("QCheckBox::indicator:unchecked {\n"
" image: url(:/images/images/Checkmark_24px.png);\n"
"}\n"
"\n"
"QCheckBox::indicator:unchecked:hover {\n"
" image: url(:/images/images/Help_20px.png);\n"
"}\n"
"\n"
"QCheckBox::indicator:unchecked:pressed {\n"
" image: url(:/images/checkbox_unchecked_pressed.png);\n"
"}\n"
"QCheckBox::indicator:checked {\n"
" image: url(:/images/checkbox_checked.png);\n"
"}\n"
"\n"
"QCheckBox::indicator:checked:hover {\n"
" image: url(:/images/checkbox_checked_hover.png);\n"
"}\n"
"\n"
"QCheckBox::indicator:checked:pressed {\n"
" image: url(:/images/checkbox_checked_pressed.png);}\n"
"QCheckBox{spacing:10px;}")
self.drive4CB.setObjectName("drive4CB")
self.drive4PB = QtWidgets.QProgressBar(self.drivesF)
self.drive4PB.setGeometry(QtCore.QRect(280, 165, 108, 21))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.drive4PB.sizePolicy().hasHeightForWidth())
self.drive4PB.setSizePolicy(sizePolicy)
self.drive4PB.setMinimumSize(QtCore.QSize(100, 20))
self.drive4PB.setBaseSize(QtCore.QSize(100, 20))
self.drive4PB.setProperty("value", 60)
self.drive4PB.setTextVisible(False)
self.drive4PB.setObjectName("drive4PB")
self.drive3CB = QtWidgets.QCheckBox(self.drivesF)
self.drive3CB.setGeometry(QtCore.QRect(50, 140, 120, 25))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.drive3CB.sizePolicy().hasHeightForWidth())
self.drive3CB.setSizePolicy(sizePolicy)
self.drive3CB.setMinimumSize(QtCore.QSize(120, 25))
self.drive3CB.setBaseSize(QtCore.QSize(120, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.drive3CB.setFont(font)
self.drive3CB.setStyleSheet("spacing:10px;")
self.drive3CB.setObjectName("drive3CB")
self.drive3PB = QtWidgets.QProgressBar(self.drivesF)
self.drive3PB.setGeometry(QtCore.QRect(50, 165, 108, 21))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.drive3PB.sizePolicy().hasHeightForWidth())
self.drive3PB.setSizePolicy(sizePolicy)
self.drive3PB.setMinimumSize(QtCore.QSize(100, 20))
self.drive3PB.setBaseSize(QtCore.QSize(100, 20))
self.drive3PB.setProperty("value", 60)
self.drive3PB.setTextVisible(False)
self.drive3PB.setObjectName("drive3PB")
self.horizontalLayout.addWidget(self.drivesF)
self.scanVL.addWidget(self.scanF)
self.scanHL = QtWidgets.QFrame(self.scanT)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.scanHL.sizePolicy().hasHeightForWidth())
self.scanHL.setSizePolicy(sizePolicy)
self.scanHL.setMinimumSize(QtCore.QSize(0, 3))
self.scanHL.setBaseSize(QtCore.QSize(0, 3))
self.scanHL.setFrameShape(QtWidgets.QFrame.HLine)
self.scanHL.setFrameShadow(QtWidgets.QFrame.Sunken)
self.scanHL.setObjectName("scanHL")
self.scanVL.addWidget(self.scanHL)
self.scantypeF = QtWidgets.QFrame(self.scanT)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.scantypeF.sizePolicy().hasHeightForWidth())
self.scantypeF.setSizePolicy(sizePolicy)
self.scantypeF.setObjectName("scantypeF")
self.scantypeGL = QtWidgets.QGridLayout(self.scantypeF)
self.scantypeGL.setContentsMargins(30, 30, 30, 20)
self.scantypeGL.setHorizontalSpacing(30)
self.scantypeGL.setVerticalSpacing(10)
self.scantypeGL.setObjectName("scantypeGL")
self.imageCB = QtWidgets.QCheckBox(self.scantypeF)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.imageCB.sizePolicy().hasHeightForWidth())
self.imageCB.setSizePolicy(sizePolicy)
self.imageCB.setMinimumSize(QtCore.QSize(120, 25))
self.imageCB.setBaseSize(QtCore.QSize(120, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.imageCB.setFont(font)
self.imageCB.setStyleSheet("spacing:10px;")
self.imageCB.setObjectName("imageCB")
self.scantypeGL.addWidget(self.imageCB, 4, 0, 1, 1)
self.dupCB = QtWidgets.QCheckBox(self.scantypeF)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.dupCB.sizePolicy().hasHeightForWidth())
self.dupCB.setSizePolicy(sizePolicy)
self.dupCB.setMinimumSize(QtCore.QSize(120, 25))
self.dupCB.setBaseSize(QtCore.QSize(120, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.dupCB.setFont(font)
self.dupCB.setStyleSheet("spacing:10px;")
self.dupCB.setObjectName("dupCB")
self.scantypeGL.addWidget(self.dupCB, 5, 0, 1, 1)
self.delCB = QtWidgets.QCheckBox(self.scantypeF)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.delCB.sizePolicy().hasHeightForWidth())
self.delCB.setSizePolicy(sizePolicy)
self.delCB.setMinimumSize(QtCore.QSize(120, 25))
self.delCB.setBaseSize(QtCore.QSize(120, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.delCB.setFont(font)
self.delCB.setStyleSheet("spacing:10px;")
self.delCB.setObjectName("delCB")
self.scantypeGL.addWidget(self.delCB, 0, 0, 1, 1)
self.videoCB = QtWidgets.QCheckBox(self.scantypeF)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.videoCB.sizePolicy().hasHeightForWidth())
self.videoCB.setSizePolicy(sizePolicy)
self.videoCB.setMinimumSize(QtCore.QSize(120, 25))
self.videoCB.setBaseSize(QtCore.QSize(120, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.videoCB.setFont(font)
self.videoCB.setStyleSheet("spacing:10px;")
self.videoCB.setObjectName("videoCB")
self.scantypeGL.addWidget(self.videoCB, 6, 0, 1, 1)
spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.scantypeGL.addItem(spacerItem1, 6, 1, 1, 1)
self.quickCB = QtWidgets.QCheckBox(self.scantypeF)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.quickCB.sizePolicy().hasHeightForWidth())
self.quickCB.setSizePolicy(sizePolicy)
self.quickCB.setMinimumSize(QtCore.QSize(90, 25))
self.quickCB.setBaseSize(QtCore.QSize(90, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
font.setPointSize(9)
font.setBold(True)
font.setWeight(75)
self.quickCB.setFont(font)
self.quickCB.setStyleSheet("spacing:8px;")
self.quickCB.setChecked(True)
self.quickCB.setObjectName("quickCB")
self.scantypeBG = QtWidgets.QButtonGroup(MainWindow)
self.scantypeBG.setObjectName("scantypeBG")
self.scantypeBG.addButton(self.quickCB)
self.scantypeGL.addWidget(self.quickCB, 6, 2, 1, 1)
self.advCB = QtWidgets.QCheckBox(self.scantypeF)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.advCB.sizePolicy().hasHeightForWidth())
self.advCB.setSizePolicy(sizePolicy)
self.advCB.setMinimumSize(QtCore.QSize(110, 25))
self.advCB.setBaseSize(QtCore.QSize(110, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
font.setPointSize(9)
font.setBold(True)
font.setWeight(75)
self.advCB.setFont(font)
self.advCB.setStyleSheet("spacing:8px;")
self.advCB.setObjectName("advCB")
self.scantypeBG.addButton(self.advCB)
self.scantypeGL.addWidget(self.advCB, 6, 3, 1, 1)
self.scanPB = QtWidgets.QPushButton(self.scantypeF)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.scanPB.sizePolicy().hasHeightForWidth())
self.scanPB.setSizePolicy(sizePolicy)
self.scanPB.setMinimumSize(QtCore.QSize(100, 40))
self.scanPB.setBaseSize(QtCore.QSize(100, 40))
font = QtGui.QFont()
font.setFamily("Segoe UI")
font.setPointSize(12)
font.setBold(True)
font.setWeight(75)
self.scanPB.setFont(font)
self.scanPB.setObjectName("scanPB")
self.scantypeGL.addWidget(self.scanPB, 6, 4, 1, 1)
self.scanVL.addWidget(self.scantypeF)
icon2 = QtGui.QIcon()
icon2.addPixmap(QtGui.QPixmap(":/img/img/setting.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
self.tabWidget.addTab(self.scanT, icon2, "")
self.filesT = QtWidgets.QWidget()
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.filesT.sizePolicy().hasHeightForWidth())
self.filesT.setSizePolicy(sizePolicy)
self.filesT.setMinimumSize(QtCore.QSize(730, 484))
self.filesT.setBaseSize(QtCore.QSize(730, 484))
self.filesT.setObjectName("filesT")
self.filesHL = QtWidgets.QHBoxLayout(self.filesT)
self.filesHL.setSizeConstraint(QtWidgets.QLayout.SetNoConstraint)
self.filesHL.setContentsMargins(0, 0, 0, 0)
self.filesHL.setSpacing(0)
self.filesHL.setObjectName("filesHL")
self.listF = QtWidgets.QFrame(self.filesT)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.listF.sizePolicy().hasHeightForWidth())
self.listF.setSizePolicy(sizePolicy)
self.listF.setMinimumSize(QtCore.QSize(240, 490))
self.listF.setBaseSize(QtCore.QSize(240, 490))
self.listF.setStyleSheet("margin:1px;")
self.listF.setFrameShape(QtWidgets.QFrame.StyledPanel)
self.listF.setFrameShadow(QtWidgets.QFrame.Sunken)
self.listF.setObjectName("listF")
self.listVL = QtWidgets.QVBoxLayout(self.listF)
self.listVL.setSizeConstraint(QtWidgets.QLayout.SetMinAndMaxSize)
self.listVL.setContentsMargins(0, 0, 0, 0)
self.listVL.setSpacing(0)
self.listVL.setObjectName("listVL")
self.listTV = QtWidgets.QTreeView(self.listF)
self.listTV.setEnabled(True)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.MinimumExpanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(11)
sizePolicy.setHeightForWidth(self.listTV.sizePolicy().hasHeightForWidth())
self.listTV.setSizePolicy(sizePolicy)
self.listTV.setMinimumSize(QtCore.QSize(240, 450))
self.listTV.setBaseSize(QtCore.QSize(240, 450))
self.listTV.setFrameShape(QtWidgets.QFrame.NoFrame)
self.listTV.setSelectionMode(QtWidgets.QAbstractItemView.ExtendedSelection)
self.listTV.setObjectName("listTV")
self.listVL.addWidget(self.listTV)
self.listL = QtWidgets.QFrame(self.listF)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.listL.sizePolicy().hasHeightForWidth())
self.listL.setSizePolicy(sizePolicy)
self.listL.setFrameShadow(QtWidgets.QFrame.Sunken)
self.listL.setObjectName("listL")
self.listVL.addWidget(self.listL)
self.checkF = QtWidgets.QFrame(self.listF)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(1)
sizePolicy.setHeightForWidth(self.checkF.sizePolicy().hasHeightForWidth())
self.checkF.setSizePolicy(sizePolicy)
self.checkF.setMinimumSize(QtCore.QSize(240, 40))
self.checkF.setMaximumSize(QtCore.QSize(16777215, 40))
self.checkF.setBaseSize(QtCore.QSize(240, 40))
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.checkF.setFont(font)
self.checkF.setStyleSheet("background-color: rgb(255, 255, 255);")
self.checkF.setObjectName("checkF")
self.checkHL = QtWidgets.QHBoxLayout(self.checkF)
self.checkHL.setSizeConstraint(QtWidgets.QLayout.SetMinAndMaxSize)
self.checkHL.setContentsMargins(30, 0, 0, 0)
self.checkHL.setSpacing(20)
self.checkHL.setObjectName("checkHL")
self.allCB = QtWidgets.QCheckBox(self.checkF)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.allCB.sizePolicy().hasHeightForWidth())
self.allCB.setSizePolicy(sizePolicy)
self.allCB.setMinimumSize(QtCore.QSize(60, 25))
self.allCB.setMaximumSize(QtCore.QSize(60, 25))
self.allCB.setBaseSize(QtCore.QSize(60, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.allCB.setFont(font)
self.allCB.setChecked(True)
self.allCB.setObjectName("allCB")
self.fileslistBG = QtWidgets.QButtonGroup(MainWindow)
self.fileslistBG.setObjectName("fileslistBG")
self.fileslistBG.addButton(self.allCB)
self.checkHL.addWidget(self.allCB)
self.deleteCB = QtWidgets.QCheckBox(self.checkF)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.deleteCB.sizePolicy().hasHeightForWidth())
self.deleteCB.setSizePolicy(sizePolicy)
self.deleteCB.setMinimumSize(QtCore.QSize(120, 25))
self.deleteCB.setMaximumSize(QtCore.QSize(120, 25))
self.deleteCB.setBaseSize(QtCore.QSize(120, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.deleteCB.setFont(font)
self.deleteCB.setObjectName("deleteCB")
self.fileslistBG.addButton(self.deleteCB)
self.checkHL.addWidget(self.deleteCB)
self.listVL.addWidget(self.checkF)
self.filesHL.addWidget(self.listF)
self.detailF = QtWidgets.QFrame(self.filesT)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(2)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.detailF.sizePolicy().hasHeightForWidth())
self.detailF.setSizePolicy(sizePolicy)
self.detailF.setMinimumSize(QtCore.QSize(488, 490))
self.detailF.setBaseSize(QtCore.QSize(488, 490))
self.detailF.setStyleSheet("margin:1px;")
self.detailF.setObjectName("detailF")
self.detailVL = QtWidgets.QVBoxLayout(self.detailF)
self.detailVL.setSizeConstraint(QtWidgets.QLayout.SetMinAndMaxSize)
self.detailVL.setContentsMargins(0, 0, 0, 0)
self.detailVL.setSpacing(0)
self.detailVL.setObjectName("detailVL")
self.detailTW = QtWidgets.QTreeWidget(self.detailF)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.MinimumExpanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.detailTW.sizePolicy().hasHeightForWidth())
self.detailTW.setSizePolicy(sizePolicy)
self.detailTW.setMinimumSize(QtCore.QSize(480, 270))
self.detailTW.setBaseSize(QtCore.QSize(480, 270))
self.detailTW.setIndentation(10)
self.detailTW.setUniformRowHeights(False)
self.detailTW.setWordWrap(False)
self.detailTW.setObjectName("detailTW")
item_0 = QtWidgets.QTreeWidgetItem(self.detailTW)
self.detailTW.header().setCascadingSectionResizes(False)
self.detailTW.header().setDefaultSectionSize(100)
self.detailTW.header().setHighlightSections(True)
self.detailTW.header().setMinimumSectionSize(40)
self.detailVL.addWidget(self.detailTW)
self.previewGV = QtWidgets.QGraphicsView(self.detailF)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.MinimumExpanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.previewGV.sizePolicy().hasHeightForWidth())
self.previewGV.setSizePolicy(sizePolicy)
self.previewGV.setMinimumSize(QtCore.QSize(480, 214))
self.previewGV.setBaseSize(QtCore.QSize(480, 214))
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.previewGV.setFont(font)
self.previewGV.setObjectName("previewGV")
self.detailVL.addWidget(self.previewGV)
self.filesHL.addWidget(self.detailF)
self.tabWidget.addTab(self.filesT, icon2, "")
self.imageT = QtWidgets.QWidget()
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.imageT.sizePolicy().hasHeightForWidth())
self.imageT.setSizePolicy(sizePolicy)
self.imageT.setMinimumSize(QtCore.QSize(730, 484))
self.imageT.setBaseSize(QtCore.QSize(730, 484))
self.imageT.setObjectName("imageT")
self.imageHL = QtWidgets.QHBoxLayout(self.imageT)
self.imageHL.setSizeConstraint(QtWidgets.QLayout.SetNoConstraint)
self.imageHL.setContentsMargins(0, 0, 0, 0)
self.imageHL.setSpacing(0)
self.imageHL.setObjectName("imageHL")
self.listF_2 = QtWidgets.QFrame(self.imageT)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.listF_2.sizePolicy().hasHeightForWidth())
self.listF_2.setSizePolicy(sizePolicy)
self.listF_2.setMinimumSize(QtCore.QSize(240, 490))
self.listF_2.setBaseSize(QtCore.QSize(240, 490))
self.listF_2.setStyleSheet("margin:1px;")
self.listF_2.setFrameShape(QtWidgets.QFrame.StyledPanel)
self.listF_2.setFrameShadow(QtWidgets.QFrame.Sunken)
self.listF_2.setObjectName("listF_2")
self.listVL_2 = QtWidgets.QVBoxLayout(self.listF_2)
self.listVL_2.setSizeConstraint(QtWidgets.QLayout.SetMinAndMaxSize)
self.listVL_2.setContentsMargins(0, 0, 0, 0)
self.listVL_2.setSpacing(0)
self.listVL_2.setObjectName("listVL_2")
self.listTV_2 = QtWidgets.QTreeView(self.listF_2)
self.listTV_2.setEnabled(True)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.MinimumExpanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(11)
sizePolicy.setHeightForWidth(self.listTV_2.sizePolicy().hasHeightForWidth())
self.listTV_2.setSizePolicy(sizePolicy)
self.listTV_2.setMinimumSize(QtCore.QSize(240, 450))
self.listTV_2.setBaseSize(QtCore.QSize(240, 450))
self.listTV_2.setFrameShape(QtWidgets.QFrame.NoFrame)
self.listTV_2.setSelectionMode(QtWidgets.QAbstractItemView.ExtendedSelection)
self.listTV_2.setObjectName("listTV_2")
self.listVL_2.addWidget(self.listTV_2)
self.listL_2 = QtWidgets.QFrame(self.listF_2)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.listL_2.sizePolicy().hasHeightForWidth())
self.listL_2.setSizePolicy(sizePolicy)
self.listL_2.setFrameShadow(QtWidgets.QFrame.Sunken)
self.listL_2.setObjectName("listL_2")
self.listVL_2.addWidget(self.listL_2)
self.checkF_2 = QtWidgets.QFrame(self.listF_2)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(1)
sizePolicy.setHeightForWidth(self.checkF_2.sizePolicy().hasHeightForWidth())
self.checkF_2.setSizePolicy(sizePolicy)
self.checkF_2.setMinimumSize(QtCore.QSize(240, 40))
self.checkF_2.setMaximumSize(QtCore.QSize(16777215, 40))
self.checkF_2.setBaseSize(QtCore.QSize(240, 40))
self.checkF_2.setStyleSheet("background-color: rgb(255, 255, 255);")
self.checkF_2.setObjectName("checkF_2")
self.checkHL_2 = QtWidgets.QHBoxLayout(self.checkF_2)
self.checkHL_2.setSizeConstraint(QtWidgets.QLayout.SetMinAndMaxSize)
self.checkHL_2.setContentsMargins(30, 0, 0, 0)
self.checkHL_2.setSpacing(20)
self.checkHL_2.setObjectName("checkHL_2")
self.allCB_2 = QtWidgets.QCheckBox(self.checkF_2)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.allCB_2.sizePolicy().hasHeightForWidth())
self.allCB_2.setSizePolicy(sizePolicy)
self.allCB_2.setMinimumSize(QtCore.QSize(60, 25))
self.allCB_2.setMaximumSize(QtCore.QSize(60, 25))
self.allCB_2.setBaseSize(QtCore.QSize(60, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.allCB_2.setFont(font)
self.allCB_2.setChecked(True)
self.allCB_2.setObjectName("allCB_2")
self.checkHL_2.addWidget(self.allCB_2)
self.deleteCB_2 = QtWidgets.QCheckBox(self.checkF_2)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.deleteCB_2.sizePolicy().hasHeightForWidth())
self.deleteCB_2.setSizePolicy(sizePolicy)
self.deleteCB_2.setMinimumSize(QtCore.QSize(120, 25))
self.deleteCB_2.setMaximumSize(QtCore.QSize(120, 25))
self.deleteCB_2.setBaseSize(QtCore.QSize(120, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.deleteCB_2.setFont(font)
self.deleteCB_2.setObjectName("deleteCB_2")
self.checkHL_2.addWidget(self.deleteCB_2)
self.listVL_2.addWidget(self.checkF_2)
self.imageHL.addWidget(self.listF_2)
self.detailF_2 = QtWidgets.QFrame(self.imageT)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(2)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.detailF_2.sizePolicy().hasHeightForWidth())
self.detailF_2.setSizePolicy(sizePolicy)
self.detailF_2.setMinimumSize(QtCore.QSize(488, 490))
self.detailF_2.setBaseSize(QtCore.QSize(488, 490))
self.detailF_2.setStyleSheet("margin:1px;")
self.detailF_2.setObjectName("detailF_2")
self.detailVL_2 = QtWidgets.QVBoxLayout(self.detailF_2)
self.detailVL_2.setSizeConstraint(QtWidgets.QLayout.SetMinAndMaxSize)
self.detailVL_2.setContentsMargins(0, 0, 0, 0)
self.detailVL_2.setSpacing(0)
self.detailVL_2.setObjectName("detailVL_2")
self.detailTW_2 = QtWidgets.QTreeWidget(self.detailF_2)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.MinimumExpanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.detailTW_2.sizePolicy().hasHeightForWidth())
self.detailTW_2.setSizePolicy(sizePolicy)
self.detailTW_2.setMinimumSize(QtCore.QSize(480, 270))
self.detailTW_2.setBaseSize(QtCore.QSize(480, 270))
self.detailTW_2.setIndentation(10)
self.detailTW_2.setUniformRowHeights(False)
self.detailTW_2.setWordWrap(False)
self.detailTW_2.setObjectName("detailTW_2")
item_0 = QtWidgets.QTreeWidgetItem(self.detailTW_2)
self.detailTW_2.header().setCascadingSectionResizes(False)
self.detailTW_2.header().setDefaultSectionSize(100)
self.detailTW_2.header().setHighlightSections(True)
self.detailTW_2.header().setMinimumSectionSize(40)
self.detailVL_2.addWidget(self.detailTW_2)
self.previewGV_2 = QtWidgets.QGraphicsView(self.detailF_2)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.MinimumExpanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.previewGV_2.sizePolicy().hasHeightForWidth())
self.previewGV_2.setSizePolicy(sizePolicy)
self.previewGV_2.setMinimumSize(QtCore.QSize(480, 214))
self.previewGV_2.setBaseSize(QtCore.QSize(480, 214))
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.previewGV_2.setFont(font)
self.previewGV_2.setObjectName("previewGV_2")
self.detailVL_2.addWidget(self.previewGV_2)
self.imageHL.addWidget(self.detailF_2)
self.tabWidget.addTab(self.imageT, icon2, "")
self.videoT = QtWidgets.QWidget()
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.videoT.sizePolicy().hasHeightForWidth())
self.videoT.setSizePolicy(sizePolicy)
self.videoT.setMinimumSize(QtCore.QSize(730, 484))
self.videoT.setBaseSize(QtCore.QSize(730, 484))
self.videoT.setObjectName("videoT")
self.videoHL = QtWidgets.QHBoxLayout(self.videoT)
self.videoHL.setSizeConstraint(QtWidgets.QLayout.SetNoConstraint)
self.videoHL.setContentsMargins(0, 0, 0, 0)
self.videoHL.setSpacing(0)
self.videoHL.setObjectName("videoHL")
self.listF_3 = QtWidgets.QFrame(self.videoT)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.listF_3.sizePolicy().hasHeightForWidth())
self.listF_3.setSizePolicy(sizePolicy)
self.listF_3.setMinimumSize(QtCore.QSize(240, 490))
self.listF_3.setBaseSize(QtCore.QSize(240, 490))
self.listF_3.setStyleSheet("margin:1px;")
self.listF_3.setFrameShape(QtWidgets.QFrame.StyledPanel)
self.listF_3.setFrameShadow(QtWidgets.QFrame.Sunken)
self.listF_3.setObjectName("listF_3")
self.listVL_3 = QtWidgets.QVBoxLayout(self.listF_3)
self.listVL_3.setSizeConstraint(QtWidgets.QLayout.SetMinAndMaxSize)
self.listVL_3.setContentsMargins(0, 0, 0, 0)
self.listVL_3.setSpacing(0)
self.listVL_3.setObjectName("listVL_3")
self.listTV_3 = QtWidgets.QTreeView(self.listF_3)
self.listTV_3.setEnabled(True)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.MinimumExpanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(11)
sizePolicy.setHeightForWidth(self.listTV_3.sizePolicy().hasHeightForWidth())
self.listTV_3.setSizePolicy(sizePolicy)
self.listTV_3.setMinimumSize(QtCore.QSize(240, 450))
self.listTV_3.setBaseSize(QtCore.QSize(240, 450))
self.listTV_3.setFrameShape(QtWidgets.QFrame.NoFrame)
self.listTV_3.setSelectionMode(QtWidgets.QAbstractItemView.ExtendedSelection)
self.listTV_3.setObjectName("listTV_3")
self.listVL_3.addWidget(self.listTV_3)
self.listL_3 = QtWidgets.QFrame(self.listF_3)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.listL_3.sizePolicy().hasHeightForWidth())
self.listL_3.setSizePolicy(sizePolicy)
self.listL_3.setFrameShadow(QtWidgets.QFrame.Sunken)
self.listL_3.setObjectName("listL_3")
self.listVL_3.addWidget(self.listL_3)
self.checkF_3 = QtWidgets.QFrame(self.listF_3)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(1)
sizePolicy.setHeightForWidth(self.checkF_3.sizePolicy().hasHeightForWidth())
self.checkF_3.setSizePolicy(sizePolicy)
self.checkF_3.setMinimumSize(QtCore.QSize(240, 40))
self.checkF_3.setMaximumSize(QtCore.QSize(16777215, 40))
self.checkF_3.setBaseSize(QtCore.QSize(240, 40))
self.checkF_3.setStyleSheet("background-color: rgb(255, 255, 255);")
self.checkF_3.setObjectName("checkF_3")
self.checkHL_3 = QtWidgets.QHBoxLayout(self.checkF_3)
self.checkHL_3.setSizeConstraint(QtWidgets.QLayout.SetMinAndMaxSize)
self.checkHL_3.setContentsMargins(30, 0, 0, 0)
self.checkHL_3.setSpacing(20)
self.checkHL_3.setObjectName("checkHL_3")
self.allCB_3 = QtWidgets.QCheckBox(self.checkF_3)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.allCB_3.sizePolicy().hasHeightForWidth())
self.allCB_3.setSizePolicy(sizePolicy)
self.allCB_3.setMinimumSize(QtCore.QSize(60, 25))
self.allCB_3.setMaximumSize(QtCore.QSize(60, 25))
self.allCB_3.setBaseSize(QtCore.QSize(60, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.allCB_3.setFont(font)
self.allCB_3.setChecked(True)
self.allCB_3.setObjectName("allCB_3")
self.checkHL_3.addWidget(self.allCB_3)
self.deleteCB_3 = QtWidgets.QCheckBox(self.checkF_3)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.deleteCB_3.sizePolicy().hasHeightForWidth())
self.deleteCB_3.setSizePolicy(sizePolicy)
self.deleteCB_3.setMinimumSize(QtCore.QSize(120, 25))
self.deleteCB_3.setMaximumSize(QtCore.QSize(120, 25))
self.deleteCB_3.setBaseSize(QtCore.QSize(120, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.deleteCB_3.setFont(font)
self.deleteCB_3.setObjectName("deleteCB_3")
self.checkHL_3.addWidget(self.deleteCB_3)
self.listVL_3.addWidget(self.checkF_3)
self.videoHL.addWidget(self.listF_3)
self.detailF_3 = QtWidgets.QFrame(self.videoT)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(2)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.detailF_3.sizePolicy().hasHeightForWidth())
self.detailF_3.setSizePolicy(sizePolicy)
self.detailF_3.setMinimumSize(QtCore.QSize(488, 490))
self.detailF_3.setBaseSize(QtCore.QSize(488, 490))
self.detailF_3.setStyleSheet("margin:1px;")
self.detailF_3.setObjectName("detailF_3")
self.detailVL_3 = QtWidgets.QVBoxLayout(self.detailF_3)
self.detailVL_3.setSizeConstraint(QtWidgets.QLayout.SetMinAndMaxSize)
self.detailVL_3.setContentsMargins(0, 0, 0, 0)
self.detailVL_3.setSpacing(0)
self.detailVL_3.setObjectName("detailVL_3")
self.detailTW_3 = QtWidgets.QTreeWidget(self.detailF_3)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.MinimumExpanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.detailTW_3.sizePolicy().hasHeightForWidth())
self.detailTW_3.setSizePolicy(sizePolicy)
self.detailTW_3.setMinimumSize(QtCore.QSize(480, 270))
self.detailTW_3.setBaseSize(QtCore.QSize(480, 270))
self.detailTW_3.setIndentation(10)
self.detailTW_3.setUniformRowHeights(False)
self.detailTW_3.setWordWrap(False)
self.detailTW_3.setObjectName("detailTW_3")
item_0 = QtWidgets.QTreeWidgetItem(self.detailTW_3)
self.detailTW_3.header().setCascadingSectionResizes(False)
self.detailTW_3.header().setDefaultSectionSize(100)
self.detailTW_3.header().setHighlightSections(True)
self.detailTW_3.header().setMinimumSectionSize(40)
self.detailVL_3.addWidget(self.detailTW_3)
self.previewGV_3 = QtWidgets.QGraphicsView(self.detailF_3)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.MinimumExpanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.previewGV_3.sizePolicy().hasHeightForWidth())
self.previewGV_3.setSizePolicy(sizePolicy)
self.previewGV_3.setMinimumSize(QtCore.QSize(480, 214))
self.previewGV_3.setBaseSize(QtCore.QSize(480, 214))
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.previewGV_3.setFont(font)
self.previewGV_3.setObjectName("previewGV_3")
self.detailVL_3.addWidget(self.previewGV_3)
self.videoHL.addWidget(self.detailF_3)
self.tabWidget.addTab(self.videoT, icon2, "")
self.docT = QtWidgets.QWidget()
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.docT.sizePolicy().hasHeightForWidth())
self.docT.setSizePolicy(sizePolicy)
self.docT.setMinimumSize(QtCore.QSize(730, 484))
self.docT.setBaseSize(QtCore.QSize(730, 484))
self.docT.setObjectName("docT")
self.docHL = QtWidgets.QHBoxLayout(self.docT)
self.docHL.setSizeConstraint(QtWidgets.QLayout.SetNoConstraint)
self.docHL.setContentsMargins(0, 0, 0, 0)
self.docHL.setSpacing(0)
self.docHL.setObjectName("docHL")
self.listF_4 = QtWidgets.QFrame(self.docT)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.listF_4.sizePolicy().hasHeightForWidth())
self.listF_4.setSizePolicy(sizePolicy)
self.listF_4.setMinimumSize(QtCore.QSize(240, 490))
self.listF_4.setBaseSize(QtCore.QSize(240, 490))
self.listF_4.setStyleSheet("margin:1px;")
self.listF_4.setFrameShape(QtWidgets.QFrame.StyledPanel)
self.listF_4.setFrameShadow(QtWidgets.QFrame.Sunken)
self.listF_4.setObjectName("listF_4")
self.listVL_4 = QtWidgets.QVBoxLayout(self.listF_4)
self.listVL_4.setSizeConstraint(QtWidgets.QLayout.SetMinAndMaxSize)
self.listVL_4.setContentsMargins(0, 0, 0, 0)
self.listVL_4.setSpacing(0)
self.listVL_4.setObjectName("listVL_4")
self.listTV_4 = QtWidgets.QTreeView(self.listF_4)
self.listTV_4.setEnabled(True)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.MinimumExpanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(11)
sizePolicy.setHeightForWidth(self.listTV_4.sizePolicy().hasHeightForWidth())
self.listTV_4.setSizePolicy(sizePolicy)
self.listTV_4.setMinimumSize(QtCore.QSize(240, 450))
self.listTV_4.setBaseSize(QtCore.QSize(240, 450))
self.listTV_4.setFrameShape(QtWidgets.QFrame.NoFrame)
self.listTV_4.setSelectionMode(QtWidgets.QAbstractItemView.ExtendedSelection)
self.listTV_4.setObjectName("listTV_4")
self.listVL_4.addWidget(self.listTV_4)
self.listL_4 = QtWidgets.QFrame(self.listF_4)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.listL_4.sizePolicy().hasHeightForWidth())
self.listL_4.setSizePolicy(sizePolicy)
self.listL_4.setFrameShadow(QtWidgets.QFrame.Sunken)
self.listL_4.setObjectName("listL_4")
self.listVL_4.addWidget(self.listL_4)
self.checkF_4 = QtWidgets.QFrame(self.listF_4)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(1)
sizePolicy.setHeightForWidth(self.checkF_4.sizePolicy().hasHeightForWidth())
self.checkF_4.setSizePolicy(sizePolicy)
self.checkF_4.setMinimumSize(QtCore.QSize(240, 40))
self.checkF_4.setMaximumSize(QtCore.QSize(16777215, 40))
self.checkF_4.setBaseSize(QtCore.QSize(240, 40))
self.checkF_4.setStyleSheet("background-color: rgb(255, 255, 255);")
self.checkF_4.setObjectName("checkF_4")
self.checkHL_4 = QtWidgets.QHBoxLayout(self.checkF_4)
self.checkHL_4.setSizeConstraint(QtWidgets.QLayout.SetMinAndMaxSize)
self.checkHL_4.setContentsMargins(30, 0, 0, 0)
self.checkHL_4.setSpacing(20)
self.checkHL_4.setObjectName("checkHL_4")
self.allCB_4 = QtWidgets.QCheckBox(self.checkF_4)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.allCB_4.sizePolicy().hasHeightForWidth())
self.allCB_4.setSizePolicy(sizePolicy)
self.allCB_4.setMinimumSize(QtCore.QSize(60, 25))
self.allCB_4.setMaximumSize(QtCore.QSize(60, 25))
self.allCB_4.setBaseSize(QtCore.QSize(60, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.allCB_4.setFont(font)
self.allCB_4.setChecked(True)
self.allCB_4.setObjectName("allCB_4")
self.checkHL_4.addWidget(self.allCB_4)
self.deleteCB_4 = QtWidgets.QCheckBox(self.checkF_4)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.deleteCB_4.sizePolicy().hasHeightForWidth())
self.deleteCB_4.setSizePolicy(sizePolicy)
self.deleteCB_4.setMinimumSize(QtCore.QSize(120, 25))
self.deleteCB_4.setMaximumSize(QtCore.QSize(120, 25))
self.deleteCB_4.setBaseSize(QtCore.QSize(120, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.deleteCB_4.setFont(font)
self.deleteCB_4.setObjectName("deleteCB_4")
self.checkHL_4.addWidget(self.deleteCB_4)
self.listVL_4.addWidget(self.checkF_4)
self.docHL.addWidget(self.listF_4)
self.detailF_4 = QtWidgets.QFrame(self.docT)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(2)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.detailF_4.sizePolicy().hasHeightForWidth())
self.detailF_4.setSizePolicy(sizePolicy)
self.detailF_4.setMinimumSize(QtCore.QSize(488, 490))
self.detailF_4.setBaseSize(QtCore.QSize(488, 490))
self.detailF_4.setStyleSheet("margin:1px;")
self.detailF_4.setObjectName("detailF_4")
self.detailVL_4 = QtWidgets.QVBoxLayout(self.detailF_4)
self.detailVL_4.setSizeConstraint(QtWidgets.QLayout.SetMinAndMaxSize)
self.detailVL_4.setContentsMargins(0, 0, 0, 0)
self.detailVL_4.setSpacing(0)
self.detailVL_4.setObjectName("detailVL_4")
self.detailTW_4 = QtWidgets.QTreeWidget(self.detailF_4)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.MinimumExpanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.detailTW_4.sizePolicy().hasHeightForWidth())
self.detailTW_4.setSizePolicy(sizePolicy)
self.detailTW_4.setMinimumSize(QtCore.QSize(480, 270))
self.detailTW_4.setBaseSize(QtCore.QSize(480, 270))
self.detailTW_4.setIndentation(10)
self.detailTW_4.setUniformRowHeights(False)
self.detailTW_4.setWordWrap(False)
self.detailTW_4.setObjectName("detailTW_4")
item_0 = QtWidgets.QTreeWidgetItem(self.detailTW_4)
self.detailTW_4.header().setCascadingSectionResizes(False)
self.detailTW_4.header().setDefaultSectionSize(100)
self.detailTW_4.header().setHighlightSections(True)
self.detailTW_4.header().setMinimumSectionSize(40)
self.detailVL_4.addWidget(self.detailTW_4)
self.previewGV_4 = QtWidgets.QGraphicsView(self.detailF_4)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.MinimumExpanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.previewGV_4.sizePolicy().hasHeightForWidth())
self.previewGV_4.setSizePolicy(sizePolicy)
self.previewGV_4.setMinimumSize(QtCore.QSize(480, 214))
self.previewGV_4.setBaseSize(QtCore.QSize(480, 214))
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.previewGV_4.setFont(font)
self.previewGV_4.setObjectName("previewGV_4")
self.detailVL_4.addWidget(self.previewGV_4)
self.docHL.addWidget(self.detailF_4)
self.tabWidget.addTab(self.docT, icon2, "")
self.settingsT = QtWidgets.QWidget()
self.settingsT.setObjectName("settingsT")
self.previewCB = QtWidgets.QCheckBox(self.settingsT)
self.previewCB.setGeometry(QtCore.QRect(30, 360, 150, 25))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.previewCB.sizePolicy().hasHeightForWidth())
self.previewCB.setSizePolicy(sizePolicy)
self.previewCB.setMinimumSize(QtCore.QSize(150, 25))
self.previewCB.setMaximumSize(QtCore.QSize(150, 25))
self.previewCB.setBaseSize(QtCore.QSize(150, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
font.setPointSize(9)
self.previewCB.setFont(font)
self.previewCB.setStyleSheet("spacing:10px;")
self.previewCB.setObjectName("previewCB")
self.duprenameCB = QtWidgets.QCheckBox(self.settingsT)
self.duprenameCB.setGeometry(QtCore.QRect(320, 40, 100, 25))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.duprenameCB.sizePolicy().hasHeightForWidth())
self.duprenameCB.setSizePolicy(sizePolicy)
self.duprenameCB.setMinimumSize(QtCore.QSize(100, 25))
self.duprenameCB.setMaximumSize(QtCore.QSize(100, 25))
self.duprenameCB.setBaseSize(QtCore.QSize(100, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
font.setPointSize(9)
self.duprenameCB.setFont(font)
self.duprenameCB.setStyleSheet("spacing:10px;")
self.duprenameCB.setObjectName("duprenameCB")
self.dupoverCB = QtWidgets.QCheckBox(self.settingsT)
self.dupoverCB.setGeometry(QtCore.QRect(320, 70, 100, 25))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.dupoverCB.sizePolicy().hasHeightForWidth())
self.dupoverCB.setSizePolicy(sizePolicy)
self.dupoverCB.setMinimumSize(QtCore.QSize(100, 25))
self.dupoverCB.setMaximumSize(QtCore.QSize(100, 25))
self.dupoverCB.setBaseSize(QtCore.QSize(100, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
font.setPointSize(9)
self.dupoverCB.setFont(font)
self.dupoverCB.setStyleSheet("spacing:10px;")
self.dupoverCB.setObjectName("dupoverCB")
self.dupexcludeCB = QtWidgets.QCheckBox(self.settingsT)
self.dupexcludeCB.setGeometry(QtCore.QRect(320, 100, 100, 25))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.dupexcludeCB.sizePolicy().hasHeightForWidth())
self.dupexcludeCB.setSizePolicy(sizePolicy)
self.dupexcludeCB.setMinimumSize(QtCore.QSize(100, 25))
self.dupexcludeCB.setMaximumSize(QtCore.QSize(100, 25))
self.dupexcludeCB.setBaseSize(QtCore.QSize(100, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
font.setPointSize(9)
self.dupexcludeCB.setFont(font)
self.dupexcludeCB.setStyleSheet("spacing:10px;")
self.dupexcludeCB.setObjectName("dupexcludeCB")
self.delincludeCB = QtWidgets.QCheckBox(self.settingsT)
self.delincludeCB.setGeometry(QtCore.QRect(320, 150, 100, 25))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.delincludeCB.sizePolicy().hasHeightForWidth())
self.delincludeCB.setSizePolicy(sizePolicy)
self.delincludeCB.setMinimumSize(QtCore.QSize(100, 25))
self.delincludeCB.setMaximumSize(QtCore.QSize(100, 25))
self.delincludeCB.setBaseSize(QtCore.QSize(100, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
font.setPointSize(9)
self.delincludeCB.setFont(font)
self.delincludeCB.setStyleSheet("spacing:10px;")
self.delincludeCB.setObjectName("delincludeCB")
self.delexcludeCB = QtWidgets.QCheckBox(self.settingsT)
self.delexcludeCB.setGeometry(QtCore.QRect(320, 180, 100, 25))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.delexcludeCB.sizePolicy().hasHeightForWidth())
self.delexcludeCB.setSizePolicy(sizePolicy)
self.delexcludeCB.setMinimumSize(QtCore.QSize(100, 25))
self.delexcludeCB.setMaximumSize(QtCore.QSize(100, 25))
self.delexcludeCB.setBaseSize(QtCore.QSize(100, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
font.setPointSize(9)
self.delexcludeCB.setFont(font)
self.delexcludeCB.setStyleSheet("spacing:10px;")
self.delexcludeCB.setObjectName("delexcludeCB")
self.updateCB = QtWidgets.QCheckBox(self.settingsT)
self.updateCB.setGeometry(QtCore.QRect(30, 410, 260, 25))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.updateCB.sizePolicy().hasHeightForWidth())
self.updateCB.setSizePolicy(sizePolicy)
self.updateCB.setMinimumSize(QtCore.QSize(260, 25))
self.updateCB.setMaximumSize(QtCore.QSize(260, 25))
self.updateCB.setBaseSize(QtCore.QSize(260, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
font.setPointSize(9)
self.updateCB.setFont(font)
self.updateCB.setStyleSheet("spacing:10px;")
self.updateCB.setObjectName("updateCB")
self.badsectorCB = QtWidgets.QComboBox(self.settingsT)
self.badsectorCB.setGeometry(QtCore.QRect(320, 240, 60, 20))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.badsectorCB.sizePolicy().hasHeightForWidth())
self.badsectorCB.setSizePolicy(sizePolicy)
self.badsectorCB.setMinimumSize(QtCore.QSize(60, 20))
self.badsectorCB.setMaximumSize(QtCore.QSize(60, 20))
self.badsectorCB.setBaseSize(QtCore.QSize(60, 20))
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.badsectorCB.setFont(font)
self.badsectorCB.setMaxCount(10)
self.badsectorCB.setObjectName("badsectorCB")
self.badsectorCB.addItem("")
self.badsectorCB.addItem("")
self.badsectorCB.addItem("")
self.badsectorCB.addItem("")
self.badsectorCB.addItem("")
self.badsectorCB.addItem("")
self.badsectorCB.addItem("")
self.badsectorCB.addItem("")
self.badsectorCB.addItem("")
self.badsectorCB.addItem("")
self.comboBox_2 = QtWidgets.QComboBox(self.settingsT)
self.comboBox_2.setGeometry(QtCore.QRect(320, 300, 60, 20))
self.comboBox_2.setMinimumSize(QtCore.QSize(60, 20))
self.comboBox_2.setMaximumSize(QtCore.QSize(60, 20))
self.comboBox_2.setBaseSize(QtCore.QSize(60, 20))
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.comboBox_2.setFont(font)
self.comboBox_2.setMaxCount(100)
self.comboBox_2.setObjectName("comboBox_2")
self.comboBox_2.addItem("")
self.comboBox_2.addItem("")
self.comboBox_2.addItem("")
self.comboBox_2.addItem("")
self.comboBox_2.addItem("")
self.comboBox_2.addItem("")
self.comboBox_2.addItem("")
self.comboBox_2.addItem("")
self.comboBox_2.addItem("")
self.comboBox_2.addItem("")
self.badsectorL = QtWidgets.QLabel(self.settingsT)
self.badsectorL.setGeometry(QtCore.QRect(30, 240, 220, 25))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.badsectorL.sizePolicy().hasHeightForWidth())
self.badsectorL.setSizePolicy(sizePolicy)
self.badsectorL.setMinimumSize(QtCore.QSize(220, 25))
self.badsectorL.setMaximumSize(QtCore.QSize(220, 25))
self.badsectorL.setBaseSize(QtCore.QSize(220, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
font.setPointSize(9)
self.badsectorL.setFont(font)
self.badsectorL.setIndent(2)
self.badsectorL.setTextInteractionFlags(QtCore.Qt.NoTextInteraction)
self.badsectorL.setObjectName("badsectorL")
self.dupL = QtWidgets.QLabel(self.settingsT)
self.dupL.setGeometry(QtCore.QRect(30, 70, 220, 25))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.dupL.sizePolicy().hasHeightForWidth())
self.dupL.setSizePolicy(sizePolicy)
self.dupL.setMinimumSize(QtCore.QSize(220, 25))
self.dupL.setMaximumSize(QtCore.QSize(220, 25))
self.dupL.setBaseSize(QtCore.QSize(220, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
font.setPointSize(9)
self.dupL.setFont(font)
self.dupL.setIndent(2)
self.dupL.setTextInteractionFlags(QtCore.Qt.NoTextInteraction)
self.dupL.setObjectName("dupL")
self.delL = QtWidgets.QLabel(self.settingsT)
self.delL.setGeometry(QtCore.QRect(30, 160, 270, 25))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.delL.sizePolicy().hasHeightForWidth())
self.delL.setSizePolicy(sizePolicy)
self.delL.setMinimumSize(QtCore.QSize(270, 25))
self.delL.setMaximumSize(QtCore.QSize(270, 25))
self.delL.setBaseSize(QtCore.QSize(270, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
font.setPointSize(9)
self.delL.setFont(font)
self.delL.setIndent(2)
self.delL.setTextInteractionFlags(QtCore.Qt.NoTextInteraction)
self.delL.setObjectName("delL")
self.readsectorL = QtWidgets.QLabel(self.settingsT)
self.readsectorL.setGeometry(QtCore.QRect(30, 300, 220, 25))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.readsectorL.sizePolicy().hasHeightForWidth())
self.readsectorL.setSizePolicy(sizePolicy)
self.readsectorL.setMinimumSize(QtCore.QSize(220, 25))
self.readsectorL.setMaximumSize(QtCore.QSize(220, 25))
self.readsectorL.setBaseSize(QtCore.QSize(220, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
font.setPointSize(9)
self.readsectorL.setFont(font)
self.readsectorL.setIndent(2)
self.readsectorL.setTextInteractionFlags(QtCore.Qt.NoTextInteraction)
self.readsectorL.setObjectName("readsectorL")
self.filetypeL = QtWidgets.QLabel(self.settingsT)
self.filetypeL.setGeometry(QtCore.QRect(450, 40, 220, 25))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.filetypeL.sizePolicy().hasHeightForWidth())
self.filetypeL.setSizePolicy(sizePolicy)
self.filetypeL.setMinimumSize(QtCore.QSize(220, 25))
self.filetypeL.setMaximumSize(QtCore.QSize(220, 25))
self.filetypeL.setBaseSize(QtCore.QSize(220, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
font.setPointSize(9)
self.filetypeL.setFont(font)
self.filetypeL.setIndent(2)
self.filetypeL.setTextInteractionFlags(QtCore.Qt.NoTextInteraction)
self.filetypeL.setObjectName("filetypeL")
self.splitL = QtWidgets.QFrame(self.settingsT)
self.splitL.setGeometry(QtCore.QRect(420, 0, 3, 20000))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.splitL.sizePolicy().hasHeightForWidth())
self.splitL.setSizePolicy(sizePolicy)
self.splitL.setFrameShape(QtWidgets.QFrame.VLine)
self.splitL.setFrameShadow(QtWidgets.QFrame.Sunken)
self.splitL.setObjectName("splitL")
self.typesTE = QtWidgets.QTextEdit(self.settingsT)
self.typesTE.setGeometry(QtCore.QRect(450, 80, 380, 150))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.typesTE.sizePolicy().hasHeightForWidth())
self.typesTE.setSizePolicy(sizePolicy)
self.typesTE.setMinimumSize(QtCore.QSize(380, 150))
self.typesTE.setMaximumSize(QtCore.QSize(380, 150))
self.typesTE.setBaseSize(QtCore.QSize(380, 150))
font = QtGui.QFont()
font.setFamily("Segoe UI")
font.setPointSize(9)
self.typesTE.setFont(font)
self.typesTE.setObjectName("typesTE")
self.loadsaveL = QtWidgets.QLabel(self.settingsT)
self.loadsaveL.setGeometry(QtCore.QRect(450, 270, 220, 25))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.loadsaveL.sizePolicy().hasHeightForWidth())
self.loadsaveL.setSizePolicy(sizePolicy)
self.loadsaveL.setMinimumSize(QtCore.QSize(220, 25))
self.loadsaveL.setMaximumSize(QtCore.QSize(220, 25))
self.loadsaveL.setBaseSize(QtCore.QSize(220, 25))
font = QtGui.QFont()
font.setFamily("Segoe UI")
font.setPointSize(9)
self.loadsaveL.setFont(font)
self.loadsaveL.setIndent(2)
self.loadsaveL.setTextInteractionFlags(QtCore.Qt.NoTextInteraction)
self.loadsaveL.setObjectName("loadsaveL")
self.loadsaveLV = QtWidgets.QListView(self.settingsT)
self.loadsaveLV.setGeometry(QtCore.QRect(450, 300, 251, 171))
self.loadsaveLV.setObjectName("loadsaveLV")
self.loadPB = QtWidgets.QPushButton(self.settingsT)
self.loadPB.setGeometry(QtCore.QRect(730, 310, 100, 30))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.loadPB.sizePolicy().hasHeightForWidth())
self.loadPB.setSizePolicy(sizePolicy)
self.loadPB.setMinimumSize(QtCore.QSize(100, 30))
self.loadPB.setMaximumSize(QtCore.QSize(100, 30))
self.loadPB.setBaseSize(QtCore.QSize(100, 30))
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.loadPB.setFont(font)
self.loadPB.setObjectName("loadPB")
self.loadPB_2 = QtWidgets.QPushButton(self.settingsT)
self.loadPB_2.setGeometry(QtCore.QRect(730, 370, 100, 30))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.loadPB_2.sizePolicy().hasHeightForWidth())
self.loadPB_2.setSizePolicy(sizePolicy)
self.loadPB_2.setMinimumSize(QtCore.QSize(100, 30))
self.loadPB_2.setMaximumSize(QtCore.QSize(100, 30))
self.loadPB_2.setBaseSize(QtCore.QSize(100, 30))
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.loadPB_2.setFont(font)
self.loadPB_2.setObjectName("loadPB_2")
self.loadPB_3 = QtWidgets.QPushButton(self.settingsT)
self.loadPB_3.setGeometry(QtCore.QRect(730, 430, 100, 30))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.loadPB_3.sizePolicy().hasHeightForWidth())
self.loadPB_3.setSizePolicy(sizePolicy)
self.loadPB_3.setMinimumSize(QtCore.QSize(100, 30))
self.loadPB_3.setMaximumSize(QtCore.QSize(100, 30))
self.loadPB_3.setBaseSize(QtCore.QSize(100, 30))
font = QtGui.QFont()
font.setFamily("Segoe UI")
self.loadPB_3.setFont(font)
self.loadPB_3.setObjectName("loadPB_3")
self.tabWidget.addTab(self.settingsT, icon2, "")
self.logT = QtWidgets.QWidget()
self.logT.setObjectName("logT")
self.tabWidget.addTab(self.logT, icon2, "")
self.centralVL.addWidget(self.tabWidget)
self.footerF = QtWidgets.QFrame(self.centralwidget)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.footerF.sizePolicy().hasHeightForWidth())
self.footerF.setSizePolicy(sizePolicy)
self.footerF.setMinimumSize(QtCore.QSize(900, 40))
self.footerF.setMaximumSize(QtCore.QSize(16777215, 40))
self.footerF.setBaseSize(QtCore.QSize(900, 40))
self.footerF.setStyleSheet("background-color: rgb(32, 56, 77);")
self.footerF.setObjectName("footerF")
self.centralVL.addWidget(self.footerF, 0, QtCore.Qt.AlignBottom)
MainWindow.setCentralWidget(self.centralwidget)
self.retranslateUi(MainWindow)
self.tabWidget.setCurrentIndex(1)
QtCore.QMetaObject.connectSlotsByName(MainWindow)
def retranslateUi(self, MainWindow):
_translate = QtCore.QCoreApplication.translate
MainWindow.setWindowTitle(_translate("MainWindow", "Recovery Software"))
self.upgradePB.setText(_translate("MainWindow", "Upgrade"))
self.reportPB.setText(_translate("MainWindow", "Report error"))
self.helpPB.setText(_translate("MainWindow", "Help"))
self.alldriveCB.setText(_translate("MainWindow", "Scan My Computer"))
self.drive1CB.setText(_translate("MainWindow", "C: Windows"))
self.drive2CB.setText(_translate("MainWindow", "D: New Volume"))
self.drive4CB.setText(_translate("MainWindow", "F: Checking"))
self.drive3CB.setText(_translate("MainWindow", "E: Testing"))
self.imageCB.setText(_translate("MainWindow", "Exclude Image files"))
self.dupCB.setText(_translate("MainWindow", "Ignore Duplicate files"))
self.delCB.setText(_translate("MainWindow", "Recover deleted files"))
self.videoCB.setText(_translate("MainWindow", "Exclude video files"))
self.quickCB.setText(_translate("MainWindow", "Quick Scan"))
self.advCB.setText(_translate("MainWindow", "Advanced Scan"))
self.scanPB.setText(_translate("MainWindow", "Scan now"))
self.tabWidget.setTabText(self.tabWidget.indexOf(self.scanT), _translate("MainWindow", "Scan"))
self.allCB.setText(_translate("MainWindow", "All files"))
self.deleteCB.setText(_translate("MainWindow", "Deleted files only"))
self.detailTW.setSortingEnabled(True)
self.detailTW.headerItem().setText(0, _translate("MainWindow", "File name"))
self.detailTW.headerItem().setText(1, _translate("MainWindow", "Type"))
self.detailTW.headerItem().setText(2, _translate("MainWindow", "Size"))
self.detailTW.headerItem().setText(3, _translate("MainWindow", "Date created"))
self.detailTW.headerItem().setText(4, _translate("MainWindow", "Date modified"))
self.detailTW.headerItem().setText(5, _translate("MainWindow", "Status"))
self.detailTW.headerItem().setText(6, _translate("MainWindow", "Volume"))
self.detailTW.headerItem().setText(7, _translate("MainWindow", "Folder path"))
__sortingEnabled = self.detailTW.isSortingEnabled()
self.detailTW.setSortingEnabled(False)
self.detailTW.topLevelItem(0).setText(0, _translate("MainWindow", "test"))
self.detailTW.topLevelItem(0).setText(1, _translate("MainWindow", "txt"))
self.detailTW.topLevelItem(0).setText(2, _translate("MainWindow", "12kb"))
self.detailTW.setSortingEnabled(__sortingEnabled)
self.tabWidget.setTabText(self.tabWidget.indexOf(self.filesT), _translate("MainWindow", "Files Recovery"))
self.allCB_2.setText(_translate("MainWindow", "All files"))
self.deleteCB_2.setText(_translate("MainWindow", "Deleted files only"))
self.detailTW_2.setSortingEnabled(True)
self.detailTW_2.headerItem().setText(0, _translate("MainWindow", "File name"))
self.detailTW_2.headerItem().setText(1, _translate("MainWindow", "Type"))
self.detailTW_2.headerItem().setText(2, _translate("MainWindow", "Size"))
self.detailTW_2.headerItem().setText(3, _translate("MainWindow", "Date created"))
self.detailTW_2.headerItem().setText(4, _translate("MainWindow", "Date modified"))
self.detailTW_2.headerItem().setText(5, _translate("MainWindow", "Status"))
self.detailTW_2.headerItem().setText(6, _translate("MainWindow", "Volume"))
self.detailTW_2.headerItem().setText(7, _translate("MainWindow", "Folder path"))
__sortingEnabled = self.detailTW_2.isSortingEnabled()
self.detailTW_2.setSortingEnabled(False)
self.detailTW_2.topLevelItem(0).setText(0, _translate("MainWindow", "test"))
self.detailTW_2.topLevelItem(0).setText(1, _translate("MainWindow", "txt"))
self.detailTW_2.topLevelItem(0).setText(2, _translate("MainWindow", "12kb"))
self.detailTW_2.setSortingEnabled(__sortingEnabled)
self.tabWidget.setTabText(self.tabWidget.indexOf(self.imageT), _translate("MainWindow", "Image Recovery"))
self.allCB_3.setText(_translate("MainWindow", "All files"))
self.deleteCB_3.setText(_translate("MainWindow", "Deleted files only"))
self.detailTW_3.setSortingEnabled(True)
self.detailTW_3.headerItem().setText(0, _translate("MainWindow", "File name"))
self.detailTW_3.headerItem().setText(1, _translate("MainWindow", "Type"))
self.detailTW_3.headerItem().setText(2, _translate("MainWindow", "Size"))
self.detailTW_3.headerItem().setText(3, _translate("MainWindow", "Date created"))
self.detailTW_3.headerItem().setText(4, _translate("MainWindow", "Date modified"))
self.detailTW_3.headerItem().setText(5, _translate("MainWindow", "Status"))
self.detailTW_3.headerItem().setText(6, _translate("MainWindow", "Volume"))
self.detailTW_3.headerItem().setText(7, _translate("MainWindow", "Folder path"))
__sortingEnabled = self.detailTW_3.isSortingEnabled()
self.detailTW_3.setSortingEnabled(False)
self.detailTW_3.topLevelItem(0).setText(0, _translate("MainWindow", "test"))
self.detailTW_3.topLevelItem(0).setText(1, _translate("MainWindow", "txt"))
self.detailTW_3.topLevelItem(0).setText(2, _translate("MainWindow", "12kb"))
self.detailTW_3.setSortingEnabled(__sortingEnabled)
self.tabWidget.setTabText(self.tabWidget.indexOf(self.videoT), _translate("MainWindow", "Video Recovery"))
self.allCB_4.setText(_translate("MainWindow", "All files"))
self.deleteCB_4.setText(_translate("MainWindow", "Deleted files only"))
self.detailTW_4.setSortingEnabled(True)
self.detailTW_4.headerItem().setText(0, _translate("MainWindow", "File name"))
self.detailTW_4.headerItem().setText(1, _translate("MainWindow", "Type"))
self.detailTW_4.headerItem().setText(2, _translate("MainWindow", "Size"))
self.detailTW_4.headerItem().setText(3, _translate("MainWindow", "Date created"))
self.detailTW_4.headerItem().setText(4, _translate("MainWindow", "Date modified"))
self.detailTW_4.headerItem().setText(5, _translate("MainWindow", "Status"))
self.detailTW_4.headerItem().setText(6, _translate("MainWindow", "Volume"))
self.detailTW_4.headerItem().setText(7, _translate("MainWindow", "Folder path"))
__sortingEnabled = self.detailTW_4.isSortingEnabled()
self.detailTW_4.setSortingEnabled(False)
self.detailTW_4.topLevelItem(0).setText(0, _translate("MainWindow", "test"))
self.detailTW_4.topLevelItem(0).setText(1, _translate("MainWindow", "txt"))
self.detailTW_4.topLevelItem(0).setText(2, _translate("MainWindow", "12kb"))
self.detailTW_4.setSortingEnabled(__sortingEnabled)
self.tabWidget.setTabText(self.tabWidget.indexOf(self.docT), _translate("MainWindow", "Document Recovery"))
self.previewCB.setText(_translate("MainWindow", "Turn off preview mode"))
self.duprenameCB.setText(_translate("MainWindow", "Rename"))
self.dupoverCB.setText(_translate("MainWindow", "Overwrite"))
self.dupexcludeCB.setText(_translate("MainWindow", "Exclude"))
self.delincludeCB.setText(_translate("MainWindow", "Include"))
self.delexcludeCB.setText(_translate("MainWindow", "Exclude"))
self.updateCB.setText(_translate("MainWindow", "Automatically check for updates at startup"))
self.badsectorCB.setItemText(0, _translate("MainWindow", "1"))
self.badsectorCB.setItemText(1, _translate("MainWindow", "2"))
self.badsectorCB.setItemText(2, _translate("MainWindow", "3"))
self.badsectorCB.setItemText(3, _translate("MainWindow", "4"))
self.badsectorCB.setItemText(4, _translate("MainWindow", "5"))
self.badsectorCB.setItemText(5, _translate("MainWindow", "6"))
self.badsectorCB.setItemText(6, _translate("MainWindow", "7"))
self.badsectorCB.setItemText(7, _translate("MainWindow", "8"))
self.badsectorCB.setItemText(8, _translate("MainWindow", "9"))
self.badsectorCB.setItemText(9, _translate("MainWindow", "10"))
self.comboBox_2.setItemText(0, _translate("MainWindow", "10"))
self.comboBox_2.setItemText(1, _translate("MainWindow", "20"))
self.comboBox_2.setItemText(2, _translate("MainWindow", "30"))
self.comboBox_2.setItemText(3, _translate("MainWindow", "40"))
self.comboBox_2.setItemText(4, _translate("MainWindow", "50"))
self.comboBox_2.setItemText(5, _translate("MainWindow", "60"))
self.comboBox_2.setItemText(6, _translate("MainWindow", "70"))
self.comboBox_2.setItemText(7, _translate("MainWindow", "80"))
self.comboBox_2.setItemText(8, _translate("MainWindow", "90"))
self.comboBox_2.setItemText(9, _translate("MainWindow", "100"))
self.badsectorL.setText(_translate("MainWindow", "Number of attempts to read bad sectors"))
self.dupL.setText(_translate("MainWindow", "How to handle Duplicate Files Recovery"))
self.delL.setText(_translate("MainWindow", "Include or Exclude Deleted Files while recovering?"))
self.readsectorL.setText(_translate("MainWindow", "Number of sectors to read at a time"))
self.filetypeL.setText(_translate("MainWindow", "Types of files to be excluded in scan :"))
self.typesTE.setPlaceholderText(_translate("MainWindow", "Add file types to exclude here. For example add extentions in this format: txt, zip, pdf"))
self.loadsaveL.setText(_translate("MainWindow", "List of Recovery scan saved previously :"))
self.loadPB.setText(_translate("MainWindow", "Load Selected"))
self.loadPB_2.setText(_translate("MainWindow", "Save current scan"))
self.loadPB_3.setText(_translate("MainWindow", "Delete Selected"))
self.tabWidget.setTabText(self.tabWidget.indexOf(self.settingsT), _translate("MainWindow", "Settings"))
self.tabWidget.setTabText(self.tabWidget.indexOf(self.logT), _translate("MainWindow", "Logs"))
from tabwidget import TabWidget
import res_rc
if __name__ == "__main__":
import sys
app = QtWidgets.QApplication(sys.argv)
MainWindow = QtWidgets.QMainWindow()
ui = Ui_MainWindow()
ui.setupUi(MainWindow)
MainWindow.show()
sys.exit(app.exec_())
mainwindow.py
import sys, os, requests, webbrowser
from PyQt5 import QtWidgets, QtGui, QtCore, Qt
from mainwindow_ui import Ui_MainWindow
from login_ui import Ui_loginD
from msgbox_ui import Ui_msgD
from report_ui import Ui_reportD
from proxy_ui import Ui_proxyD
from qroundprogressbar import QRoundProgressBar
class MsgBox(QtWidgets.QDialog, Ui_msgD):
def __init__(self, parent=None):
super(MsgBox, self).__init__()
self.setupUi(self)
self.setWindowFlags(QtCore.Qt.FramelessWindowHint)
self.setFixedSize(self.size())
self.noPB.clicked.connect(self.close)
self.font = QtGui.QFont()
self.font.setPixelSize(18)
self.appnameL.setFont(self.font)
self.font.setPixelSize(14)
self.msgL.setFont(self.font)
def mousePressEvent(self, event):
if event.buttons() == QtCore.Qt.LeftButton:
self.moving = True
self.offset = event.pos()
elif event.buttons() == QtCore.Qt.RightButton:
event.ignore()
def mouseMoveEvent(self, event):
if event.buttons() == QtCore.Qt.LeftButton:
if self.moving:
self.move(event.globalPos() - self.offset)
elif event.buttons() == QtCore.Qt.RightButton:
event.ignore()
def mouseReleaseEvent(self, event):
m_mouse_down = False
class ReportWindow(QtWidgets.QDialog, Ui_reportD):
def __init__(self, parent=None):
super(ReportWindow, self).__init__()
self.setAttribute(QtCore.Qt.WA_DeleteOnClose)
self.setupUi(self)
self.setWindowFlags(QtCore.Qt.FramelessWindowHint)
self.setFixedSize(self.size())
self.sendPB.clicked.connect(self.sendclick)
self.closePB.clicked.connect(self.close)
self.font = QtGui.QFont()
self.font.setPixelSize(18)
self.appnameL.setFont(self.font)
self.font.setPixelSize(20)
self.reportL.setFont(self.font)
self.font.setPixelSize(14)
self.emailL.setFont(self.font)
self.font.setPixelSize(14)
self.emailLE.setFont(self.font)
self.font.setPixelSize(14)
self.nameL.setFont(self.font)
self.font.setPixelSize(14)
self.nameLE.setFont(self.font)
self.font.setPixelSize(14)
self.detailsL.setFont(self.font)
self.font.setPixelSize(14)
self.descTE.setFont(self.font)
def sendclick(self):
self.msgbox = MsgBox()
self.msgbox.msgL.setText('Report sent')
self.msgbox.yesPB.hide()
self.msgbox.noPB.setStyleSheet("QPushButton {border-image: url(:/img/img/ok.png);}"
"QPushButton:hover {border-image: url(:/img/img/ok_hover.png);}")
self.msgbox.exec_()
self.close()
def mousePressEvent(self, event):
if event.buttons() == QtCore.Qt.LeftButton:
self.moving = True
self.offset = event.pos()
elif event.buttons() == QtCore.Qt.RightButton:
event.ignore()
def mouseMoveEvent(self, event):
if event.buttons() == QtCore.Qt.LeftButton:
if self.moving:
self.move(event.globalPos() - self.offset)
elif event.buttons() == QtCore.Qt.RightButton:
event.ignore()
def mouseReleaseEvent(self, event):
m_mouse_down = False
class ProxyWindow(QtWidgets.QDialog, Ui_proxyD):
def __init__(self, parent=None):
super(ProxyWindow, self).__init__()
self.setAttribute(QtCore.Qt.WA_DeleteOnClose)
self.setupUi(self)
self.setWindowFlags(QtCore.Qt.FramelessWindowHint)
self.setFixedSize(self.size())
self.savePB.clicked.connect(self.saveclick)
self.closePB.clicked.connect(self.close)
self.noproxyRB.clicked.connect(self.noclick)
self.autoproxyRB.clicked.connect(self.autoclick)
self.manproxyRB.clicked.connect(self.manclick)
self.proxypassCB.clicked.connect(self.passclick)
self.font = QtGui.QFont()
self.font.setPixelSize(18)
self.appnameL.setFont(self.font)
self.font.setPixelSize(20)
self.proxyL.setFont(self.font)
self.font.setPixelSize(14)
self.proxypassCB.setFont(self.font)
self.font.setPixelSize(14)
self.proxypassLE.setFont(self.font)
self.font.setPixelSize(14)
self.proxypassL.setFont(self.font)
self.font.setPixelSize(14)
self.proxyuserLE.setFont(self.font)
self.font.setPixelSize(14)
self.proxyuserL.setFont(self.font)
self.font.setPixelSize(14)
self.proxyserverL.setFont(self.font)
self.font.setPixelSize(14)
self.proxyserverLE.setFont(self.font)
self.font.setPixelSize(14)
self.proxyportLE.setFont(self.font)
self.font.setPixelSize(14)
self.proxyportL.setFont(self.font)
self.font.setPixelSize(14)
self.noproxyRB.setFont(self.font)
self.font.setPixelSize(14)
self.autoproxyRB.setFont(self.font)
self.font.setPixelSize(14)
self.manproxyRB.setFont(self.font)
def saveclick(self):
self.msgbox = MsgBox()
self.msgbox.msgL.setText('Proxy settings saved')
self.msgbox.yesPB.hide()
self.msgbox.noPB.setStyleSheet("QPushButton {border-image: url(:/img/img/ok.png);}"
"QPushButton:hover {border-image: url(:/img/img/ok_hover.png);}")
self.msgbox.exec_()
self.close()
def noclick(self):
self.proxyserverL.setEnabled(False)
self.proxyserverLE.setEnabled(False)
self.proxyportL.setEnabled(False)
self.proxyportLE.setEnabled(False)
self.proxypassCB.setEnabled(False)
self.proxyuserL.setEnabled(False)
self.proxyuserLE.setEnabled(False)
self.proxypassL.setEnabled(False)
self.proxypassLE.setEnabled(False)
def autoclick(self):
self.proxyserverL.setEnabled(False)
self.proxyserverLE.setEnabled(False)
self.proxyportL.setEnabled(False)
self.proxyportLE.setEnabled(False)
self.proxypassCB.setEnabled(False)
self.proxyuserL.setEnabled(False)
self.proxyuserLE.setEnabled(False)
self.proxypassL.setEnabled(False)
self.proxypassLE.setEnabled(False)
self.msgbox = MsgBox()
self.msgbox.msgL.setText('Unable to detect settings automatically.')
self.msgbox.yesPB.hide()
self.msgbox.noPB.setStyleSheet("QPushButton {border-image: url(:/img/img/ok.png);}"
"QPushButton:hover {border-image: url(:/img/img/ok_hover.png);}")
self.msgbox.exec_()
def manclick(self):
self.proxyserverL.setEnabled(True)
self.proxyserverLE.setEnabled(True)
self.proxyportL.setEnabled(True)
self.proxyportLE.setEnabled(True)
self.proxypassCB.setEnabled(True)
if self.proxypassCB.isChecked():
self.proxyuserL.setEnabled(True)
self.proxyuserLE.setEnabled(True)
self.proxypassL.setEnabled(True)
self.proxypassLE.setEnabled(True)
def passclick(self):
if self.proxypassCB.isChecked():
self.proxyuserL.setEnabled(True)
self.proxyuserLE.setEnabled(True)
self.proxypassL.setEnabled(True)
self.proxypassLE.setEnabled(True)
else:
self.proxyuserL.setEnabled(False)
self.proxyuserLE.setEnabled(False)
self.proxypassL.setEnabled(False)
self.proxypassLE.setEnabled(False)
def mousePressEvent(self, event):
if event.buttons() == QtCore.Qt.LeftButton:
self.moving = True
self.offset = event.pos()
elif event.buttons() == QtCore.Qt.RightButton:
event.ignore()
def mouseMoveEvent(self, event):
if event.buttons() == QtCore.Qt.LeftButton:
if self.moving:
self.move(event.globalPos() - self.offset)
elif event.buttons() == QtCore.Qt.RightButton:
event.ignore()
def mouseReleaseEvent(self, event):
m_mouse_down = False
class LoginWindow(QtWidgets.QDialog, Ui_loginD):
def __init__(self, parent=None):
super(LoginWindow, self).__init__()
self.setupUi(self)
self.setWindowFlags(QtCore.Qt.FramelessWindowHint)
self.setMouseTracking(True)
self.adjustSize()
self.setFixedSize(self.size())
self.minPB.clicked.connect(self.minclick)
self.closePB.clicked.connect(self.closeclick)
self.proxyPB.clicked.connect(self.proxyclick)
self.buyPB.clicked.connect(self.buyclick)
self.supportPB.clicked.connect(self.supportclick)
self.loginPB.clicked.connect(self.loginclick)
self.trialPB.clicked.connect(self.trialclick)
self.font = QtGui.QFont()
self.font.setPixelSize(18)
self.appnameL.setFont(self.font)
self.font2 = QtGui.QFont()
self.font2.setPixelSize(18)
self.font2.setBold(True)
self.font2.setWeight(75)
self.appheadL.setFont(self.font2)
self.font.setPixelSize(14)
self.forgotpassL.setFont(self.font)
self.font.setPixelSize(14)
self.orL.setFont(self.font)
self.font.setPixelSize(14)
self.emailLE.setFont(self.font)
self.font.setPixelSize(14)
self.passLE.setFont(self.font)
self.font.setPixelSize(14)
self.rememberCB.setFont(self.font)
dir_path = '%s\\BMR\\' % os.environ['LOCALAPPDATA']
file_path = '%stemp.dat' % dir_path
if os.path.exists(file_path):
f = open(file_path, "r")
for line in f:
cred = line.split("|")
f.close()
self.emailLE.setText(cred[0])
self.passLE.setText(cred[1])
else:
self.rememberCB.setChecked(False)
def minclick(self):
self.showMinimized()
def closeclick(self):
sys.exit()
def proxyclick(self):
proxy = ProxyWindow()
proxy.exec_()
def buyclick(self):
webbrowser.open('https://www.dummysite.com/pricing.html')
def supportclick(self):
webbrowser.open('https://www.dummysites.com/support.html')
def loginclick(self):
if self.rememberCB.isChecked():
dir_path = '%s\\BMR\\' % os.environ['LOCALAPPDATA']
if not os.path.exists(dir_path):
os.makedirs(dir_path)
file_path = '%stemp.dat' % dir_path
file = open(file_path, "w")
file.write(self.emailLE.text() + '|' + self.passLE.text())
file.close()
else:
dir_path = '%s\\BMR\\' % os.environ['LOCALAPPDATA']
if not os.path.exists(dir_path):
os.makedirs(dir_path)
file_path = '%stemp.dat' % dir_path
if os.path.exists(file_path):
os.remove(file_path)
url = 'https://www.dummysite.com/login.php'
creds = {'email': str(self.emailLE.text()), 'pswd': str(self.passLE.text())}
try:
r = requests.post(url, data=creds)
if r.text == '{"status":"success"}':
self.accept()
else:
self.msgbox = MsgBox()
self.msgbox.msgL.setText('Login failed due to wrong Email or password')
self.msgbox.yesPB.hide()
self.msgbox.noPB.setStyleSheet("QPushButton {border-image: url(:/img/img/ok.png);}"
"QPushButton:hover {border-image: url(:/img/img/ok_hover.png);}")
self.msgbox.exec_()
except requests.ConnectionError:
self.msgbox = MsgBox()
self.msgbox.msgL.setText('Login failed due to no internet connection')
self.msgbox.yesPB.hide()
self.msgbox.noPB.setStyleSheet("QPushButton {border-image: url(:/img/img/ok.png);}"
"QPushButton:hover {border-image: url(:/img/img/ok_hover.png);}")
self.msgbox.exec_()
def trialclick(self):
self.msgbox = MsgBox()
self.msgbox.msgL.setText('Logging in demo mode')
self.msgbox.yesPB.hide()
self.msgbox.noPB.setStyleSheet("QPushButton {border-image: url(:/img/img/ok.png);}"
"QPushButton:hover {border-image: url(:/img/img/ok_hover.png);}")
self.msgbox.exec_()
self.emailLE.setText("Demo mode")
self.accept()
def mousePressEvent(self, event):
if event.buttons() == QtCore.Qt.LeftButton:
self.moving = True
self.offset = event.pos()
elif event.buttons() == QtCore.Qt.RightButton:
event.ignore()
def mouseMoveEvent(self, event):
if event.buttons() == QtCore.Qt.LeftButton:
if self.moving:
self.move(event.globalPos() - self.offset)
elif event.buttons() == QtCore.Qt.RightButton:
event.ignore()
def mouseReleaseEvent(self, event):
m_mouse_down = False
class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow):
def __init__(self, parent=None):
super(MainWindow, self).__init__(parent=parent)
self.setupUi(self)
#self.setWindowFlags(QtCore.Qt.FramelessWindowHint)
self.tabcurrent = self.tabWidget.currentIndex()
self.reportPB.clicked.connect(self.errorclick)
self.helpPB.clicked.connect(self.helpclick)
self.upgradePB.clicked.connect(self.upgradeclick)
self.minPB.clicked.connect(self.minclick)
self.closePB.clicked.connect(self.closeclick)
self.scanPB.clicked.connect(self.scanclick)
self.tabWidget.currentChanged.connect(self.tabchange)
self.tabscan = 0
self.drive1PB.mouseReleaseEvent = self.showcheck1
self.drive2PB.mouseReleaseEvent = self.showcheck2
self.drive3PB.mouseReleaseEvent = self.showcheck3
self.drive4PB.mouseReleaseEvent = self.showcheck4
pal = self.tabWidget.palette()
pal.setColor(QtGui.QPalette.Window, QtGui.QColor(42,57,85,255))
self.tabWidget.setPalette(pal)
def showcheck1(self, event):
self.drive1CB.toggle()
def showcheck2(self, event):
self.drive2CB.toggle()
def showcheck3(self, event):
self.drive3CB.toggle()
def showcheck4(self, event):
self.drive4CB.toggle()
def scanclick(self):
self.tabscan = 1
def tabchange(self, i):
if i == 6:
self.tabWidget.setCurrentIndex(self.tabcurrent)
os.startfile("D:\Recpy\helpme.txt")
self.tabcurrent = i
if self.tabscan == 0 and i != 0 and i != 5 and i != 6:
self.tabWidget.setCurrentIndex(0)
self.msgbox = MsgBox()
self.msgbox.msgL.setText('Please scan before proceeding further')
self.msgbox.yesPB.hide()
self.msgbox.noPB.setStyleSheet("QPushButton {border-image: url(:/img/img/ok.png);}"
"QPushButton:hover {border-image: url(:/img/img/ok_hover.png);}")
self.msgbox.exec_()
# progress = QRoundProgressBar()
# progress.setBarStyle(QRoundProgressBar.BarStyle.DONUT)
def login(self):
logindialog = LoginWindow()
if logindialog.exec_():
self.show()
self.emailL.setText(logindialog.emailLE.text())
self.emailL.adjustSize()
def upgradeclick(self):
webbrowser.open('https://www.dummysite.com/pricing.html')
def errorclick(self):
self.report = ReportWindow()
self.report.show()
def helpclick(self):
webbrowser.open('https://www.dummysite.com/faq.html')
def minclick(self):
self.showMinimized()
def closeclick(self):
self.msgbox = MsgBox()
self.msgbox.msgL.setText('Are you sure you want to exit?')
self.msgbox.yesPB.clicked.connect(self.yescclick)
self.msgbox.exec_()
def yescclick(self):
sys.exit()
def mousePressEvent(self, event):
if event.buttons() == QtCore.Qt.LeftButton:
self.moving = True
self.offset = event.pos()
elif event.buttons() == QtCore.Qt.RightButton:
event.ignore()
def mouseMoveEvent(self, event):
if event.buttons() == QtCore.Qt.LeftButton:
if self.moving:
self.move(event.globalPos() - self.offset)
elif event.buttons() == QtCore.Qt.RightButton:
event.ignore()
def mouseReleaseEvent(self, event):
m_mouse_down = False
class ProxyStyle(QtWidgets.QProxyStyle):
def drawControl(self, element, opt, painter, widget):
if element == QtWidgets.QStyle.CE_TabBarTabLabel:
ic = self.pixelMetric(QtWidgets.QStyle.PM_TabBarIconSize)
r = QtCore.QRect(opt.rect)
w = 0 if opt.icon.isNull() else opt.rect.width() + self.pixelMetric(QtWidgets.QStyle.PM_TabBarIconSize)
r.setHeight(opt.fontMetrics.width(opt.text) + w)
r.moveBottom(opt.rect.bottom())
opt.rect = r
QtWidgets.QProxyStyle.drawControl(self, element, opt, painter, widget)
if __name__ == "__main__":
import sys
app = QtWidgets.QApplication(sys.argv)
app.setStyle("fusion")
QtWidgets.QApplication.setStyle(ProxyStyle())
w = MainWindow()
w.show()
sys.exit(app.exec_())
from stackoverflow.
Ok, i added proxystyle class and this is what i am getting if i remove padding and margin part of css for tab. Text is getting clipped and top 3 buttons lost the style. i dont want to use fusion style as it doesnt provide the windows look. this is supposed to be a windows application. any idea why text is clipped on my side? thanks
Edit: also i need the padding because otherwise the tab looks too small. I need to provide the size of tab big enough as theyre the main navigation part of application
from stackoverflow.
ya thanks that fixed the text cropping. but i need to have a bigger tab and adding padding is making it bad. should i change rect size of tab manually or any better solution? because on resize with maximum button may not be good idea with manual rect size?
Edit: also adding proxystyle is making 3 pushbutton on banner lose its background color. i tried setting it again with
self.upgradePB.setStyleSheet("background-color: rgb(31, 56, 78);")
self.reportPB.setStyleSheet("background-color: rgb(31, 56, 78);")
self.helpPB.setStyleSheet("background-color: rgb(31, 56, 78);")
but its not taking effect
from stackoverflow.
thanks, i didnt know we can add padding in header like that. Only problem i have is i would like to keep the style default which is "windows" i believe. We are trying to maintain our UI similar to other products we have which are designed in C#. So having fusion style throws off the same brand feel. But without using fusion and trying to set "windows" again or without it the top 3 "Upgrade, Report, Help" buttons are coming as white. my stylesheet assigning i did in mainwindow which is before the proxystyle code implementation. so i think its getting overwritten?
from stackoverflow.
ok thanks for help, i was asking since the solution ended with side effect. so didn't want to make a new thread and explain all the previous problems and how it ended at that. But i understand that you don't have to go further. thanks for help
EDIT: I found a simple alternative solution to the issue. added an image instead to it. so now it works. thanks for all the help.
from stackoverflow.
@nitubhaskar
You could indicate here your alternative solution to help future readers as I have helped you.
from stackoverflow.
Related Issues (20)
- A broken link in stackoverflow answer HOT 1
- Ubuntu Qt Mysql connection issue HOT 1
- Broken link on StackOverflow HOT 1
- How can I put text on a video using pyqt5? HOT 1
- stackoverflow.com 50609986 missing HOT 2
- Bug in answer for saving/restoring widget properties using QSettings HOT 2
- qml 3d transform rotation
- How can I get coordinates on mouse click in pyqtgraph?
- how can I use .sigMouseClicked and get coordinates in some variable
- Please help me to represent data from csv on map HOT 1
- mysqlplugins links expired
- UI to PY
- Question on Two List Selection 48327558 HOT 2
- I dont find some theme
- Problem with table headers HOT 1
- Automated script to update this repo?
- No entry for 46633698. HOT 1
- Regarding auto indentation
- No Entry for 43529434 HOT 1
- How to achieve span headers in QTableview
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from stackoverflow.