From 41a8017684af236823ed58e68534c8ec400d0421 Mon Sep 17 00:00:00 2001 From: Akashdeep Dhar Date: Dec 30 2021 05:51:52 +0000 Subject: Add lgptwdgt subpackage under widgets package Signed-off-by: Akashdeep Dhar --- diff --git a/obserware/sources/widgets/lgptwdgt/__init__.py b/obserware/sources/widgets/lgptwdgt/__init__.py new file mode 100644 index 0000000..d3b2bd6 --- /dev/null +++ b/obserware/sources/widgets/lgptwdgt/__init__.py @@ -0,0 +1,17 @@ +""" +Obserware +Copyright (C) 2021 Akashdeep Dhar + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +""" diff --git a/obserware/sources/widgets/lgptwdgt/interface.py b/obserware/sources/widgets/lgptwdgt/interface.py new file mode 100644 index 0000000..cca2550 --- /dev/null +++ b/obserware/sources/widgets/lgptwdgt/interface.py @@ -0,0 +1,197 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'obserware/assets/uifiles/lgptwdgt.ui' +# +# Created by: PyQt5 UI code generator 5.15.6 +# +# WARNING: Any manual changes made to this file will be lost when pyuic5 is +# run again. Do not edit this file unless you know what you are doing. + + +from PyQt5 import QtCore, QtGui, QtWidgets + + +class Ui_lgptwdgt(object): + def setupUi(self, lgptwdgt): + lgptwdgt.setObjectName("lgptwdgt") + lgptwdgt.resize(450, 110) + sizePolicy = QtWidgets.QSizePolicy( + QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed + ) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(lgptwdgt.sizePolicy().hasHeightForWidth()) + lgptwdgt.setSizePolicy(sizePolicy) + lgptwdgt.setMinimumSize(QtCore.QSize(450, 110)) + lgptwdgt.setMaximumSize(QtCore.QSize(450, 110)) + self.lgptdvce = QtWidgets.QLabel(lgptwdgt) + self.lgptdvce.setGeometry(QtCore.QRect(70, 5, 375, 20)) + sizePolicy = QtWidgets.QSizePolicy( + QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed + ) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.lgptdvce.sizePolicy().hasHeightForWidth()) + self.lgptdvce.setSizePolicy(sizePolicy) + self.lgptdvce.setMinimumSize(QtCore.QSize(375, 20)) + self.lgptdvce.setMaximumSize(QtCore.QSize(375, 20)) + self.lgptdvce.setStyleSheet('font: 15pt "JetBrains Mono";') + self.lgptdvce.setObjectName("lgptdvce") + self.lgptfsys = QtWidgets.QLabel(lgptwdgt) + self.lgptfsys.setGeometry(QtCore.QRect(70, 70, 375, 15)) + sizePolicy = QtWidgets.QSizePolicy( + QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed + ) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.lgptfsys.sizePolicy().hasHeightForWidth()) + self.lgptfsys.setSizePolicy(sizePolicy) + self.lgptfsys.setMinimumSize(QtCore.QSize(375, 15)) + self.lgptfsys.setMaximumSize(QtCore.QSize(375, 15)) + font = QtGui.QFont() + font.setPointSize(10) + font.setBold(False) + font.setItalic(False) + self.lgptfsys.setFont(font) + self.lgptfsys.setStyleSheet('font: 10pt "Inter";') + self.lgptfsys.setObjectName("lgptfsys") + self.lgptnumb = QtWidgets.QLabel(lgptwdgt) + self.lgptnumb.setGeometry(QtCore.QRect(5, 5, 55, 20)) + sizePolicy = QtWidgets.QSizePolicy( + QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed + ) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.lgptnumb.sizePolicy().hasHeightForWidth()) + self.lgptnumb.setSizePolicy(sizePolicy) + self.lgptnumb.setMinimumSize(QtCore.QSize(55, 20)) + self.lgptnumb.setMaximumSize(QtCore.QSize(55, 20)) + self.lgptnumb.setStyleSheet('font: 15pt "JetBrains Mono";') + self.lgptnumb.setFrameShape(QtWidgets.QFrame.NoFrame) + self.lgptnumb.setAlignment( + QtCore.Qt.AlignRight | QtCore.Qt.AlignTrailing | QtCore.Qt.AlignVCenter + ) + self.lgptnumb.setObjectName("lgptnumb") + self.lgptlabl = QtWidgets.QLabel(lgptwdgt) + self.lgptlabl.setGeometry(QtCore.QRect(5, 30, 55, 15)) + sizePolicy = QtWidgets.QSizePolicy( + QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed + ) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.lgptlabl.sizePolicy().hasHeightForWidth()) + self.lgptlabl.setSizePolicy(sizePolicy) + self.lgptlabl.setMinimumSize(QtCore.QSize(55, 15)) + self.lgptlabl.setMaximumSize(QtCore.QSize(55, 15)) + font = QtGui.QFont() + font.setPointSize(10) + font.setBold(False) + font.setItalic(False) + self.lgptlabl.setFont(font) + self.lgptlabl.setStyleSheet('font: 10pt "Inter";') + self.lgptlabl.setAlignment( + QtCore.Qt.AlignRight | QtCore.Qt.AlignTrailing | QtCore.Qt.AlignVCenter + ) + self.lgptlabl.setObjectName("lgptlabl") + self.lgptfutl = QtWidgets.QLabel(lgptwdgt) + self.lgptfutl.setGeometry(QtCore.QRect(70, 30, 375, 15)) + sizePolicy = QtWidgets.QSizePolicy( + QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed + ) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.lgptfutl.sizePolicy().hasHeightForWidth()) + self.lgptfutl.setSizePolicy(sizePolicy) + self.lgptfutl.setMinimumSize(QtCore.QSize(375, 15)) + self.lgptfutl.setMaximumSize(QtCore.QSize(375, 15)) + font = QtGui.QFont() + font.setPointSize(10) + font.setBold(False) + font.setItalic(False) + self.lgptfutl.setFont(font) + self.lgptfutl.setStyleSheet('font: 10pt "Inter";') + self.lgptfutl.setObjectName("lgptfutl") + self.lgptmxfp = QtWidgets.QLabel(lgptwdgt) + self.lgptmxfp.setGeometry(QtCore.QRect(70, 90, 375, 15)) + sizePolicy = QtWidgets.QSizePolicy( + QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed + ) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.lgptmxfp.sizePolicy().hasHeightForWidth()) + self.lgptmxfp.setSizePolicy(sizePolicy) + self.lgptmxfp.setMinimumSize(QtCore.QSize(375, 15)) + self.lgptmxfp.setMaximumSize(QtCore.QSize(375, 15)) + font = QtGui.QFont() + font.setPointSize(10) + font.setBold(False) + font.setItalic(False) + self.lgptmxfp.setFont(font) + self.lgptmxfp.setStyleSheet('font: 10pt "Inter";') + self.lgptmxfp.setObjectName("lgptmxfp") + self.lgptpgbr = QtWidgets.QProgressBar(lgptwdgt) + self.lgptpgbr.setGeometry(QtCore.QRect(70, 50, 375, 15)) + sizePolicy = QtWidgets.QSizePolicy( + QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed + ) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.lgptpgbr.sizePolicy().hasHeightForWidth()) + self.lgptpgbr.setSizePolicy(sizePolicy) + self.lgptpgbr.setMinimumSize(QtCore.QSize(375, 15)) + self.lgptpgbr.setMaximumSize(QtCore.QSize(375, 15)) + font = QtGui.QFont() + font.setPointSize(8) + font.setBold(False) + font.setItalic(False) + self.lgptpgbr.setFont(font) + self.lgptpgbr.setStyleSheet( + "QProgressBar::chunk {background-color: #008080;}\n" + 'QProgressBar {border: 1px solid #808080; border-radius: 5px; font: 8pt "Inter";}' + ) + self.lgptpgbr.setProperty("value", 0) + self.lgptpgbr.setAlignment( + QtCore.Qt.AlignRight | QtCore.Qt.AlignTrailing | QtCore.Qt.AlignVCenter + ) + self.lgptpgbr.setTextVisible(True) + self.lgptpgbr.setInvertedAppearance(False) + self.lgptpgbr.setObjectName("lgptpgbr") + self.lgptline = QtWidgets.QFrame(lgptwdgt) + self.lgptline.setGeometry(QtCore.QRect(65, 5, 1, 100)) + sizePolicy = QtWidgets.QSizePolicy( + QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed + ) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.lgptline.sizePolicy().hasHeightForWidth()) + self.lgptline.setSizePolicy(sizePolicy) + self.lgptline.setMinimumSize(QtCore.QSize(1, 100)) + self.lgptline.setMaximumSize(QtCore.QSize(1, 100)) + self.lgptline.setStyleSheet("border: 1px solid #808080;") + self.lgptline.setFrameShape(QtWidgets.QFrame.VLine) + self.lgptline.setFrameShadow(QtWidgets.QFrame.Sunken) + self.lgptline.setObjectName("lgptline") + + self.retranslateUi(lgptwdgt) + QtCore.QMetaObject.connectSlotsByName(lgptwdgt) + + def retranslateUi(self, lgptwdgt): + _translate = QtCore.QCoreApplication.translate + lgptwdgt.setWindowTitle(_translate("lgptwdgt", "Form")) + self.lgptdvce.setText(_translate("lgptwdgt", "DEVICE")) + self.lgptfsys.setText(_translate("lgptwdgt", "MOUNTPOINT (FILESYSTEM)")) + self.lgptnumb.setText(_translate("lgptwdgt", "0000")) + self.lgptlabl.setText(_translate("lgptwdgt", "#PART")) + self.lgptfutl.setText( + _translate( + "lgptwdgt", + '

FREE: 000.00XB, USED: 000.00XB, TOTAL: 000.00XB

', + ) + ) + self.lgptmxfp.setText( + _translate( + "lgptwdgt", + '

Max filename length: XXX, Max pathname length: XXX

', + ) + ) + self.lgptpgbr.setFormat(_translate("lgptwdgt", "%p% ")) diff --git a/obserware/sources/widgets/lgptwdgt/operations.py b/obserware/sources/widgets/lgptwdgt/operations.py new file mode 100644 index 0000000..e7d94cc --- /dev/null +++ b/obserware/sources/widgets/lgptwdgt/operations.py @@ -0,0 +1,56 @@ +""" +Obserware +Copyright (C) 2021 Akashdeep Dhar + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +""" + + +from PyQt5.QtWidgets import * + +from obserware.sources.widgets.lgptwdgt.interface import Ui_lgptwdgt + + +class LgPtWdgt(QWidget, Ui_lgptwdgt): + def __init__( + self, + parent=None, + lgptnumb=0, + lgptdevc="Unavailable", + lgptfutl={ + "free": "000.00XB", + "used": "000.00XB", + "comp": "000.00XB", + "perc": 0.0, + }, + lgptfsys={"mtpt": "Unavailable", "fsys": "Unavailable"}, + namedist={"file": "XXX", "path": "XXX"}, + ): + super(LgPtWdgt, self).__init__(parent) + self.setupUi(self) + self.handle_elements(lgptnumb, lgptdevc, lgptfutl, lgptfsys, namedist) + + def handle_elements(self, lgptnumb, lgptdevc, lgptfutl, lgptfsys, namedist): + self.lgptnumb.setText(str(lgptnumb)) + self.lgptdvce.setText(str(lgptdevc)) + self.lgptfutl.setText( + "FREE: %s, USED: %s, TOTAL: %s" + % (lgptfutl["free"], lgptfutl["used"], lgptfutl["comp"]) + ) + self.lgptpgbr.setValue(int(lgptfutl["perc"])) + self.lgptfsys.setText("%s (%s)" % (lgptfsys["mtpt"], lgptfsys["fsys"])) + self.lgptmxfp.setText( + "Max filename length: %s, Max pathname length: %s" + % (namedist["file"], namedist["path"]) + )