class Menu(): """Menu management main container""" def __init__(self): #### self.menu_tab_4 = QWidget() self.menu_tab_4.setStyleSheet("") self.menu_tab_4.setObjectName("menu_tab_4") self.horizontalLayout_7 = QHBoxLayout(self.menu_tab_4) self.horizontalLayout_7.setObjectName("horizontalLayout_7") self.menu_detail_tabWidget = QTabWidget(self.menu_tab_4) self.menu_detail_tabWidget.setObjectName("menu_detail_tabWidget") self.weeklytabs = None self.add_tabs() self.horizontalLayout_7.addWidget(self.menu_detail_tabWidget) ####signals and slots && other stuffs # self.mainwindow = Ui_MainWindow # just for the ease of finding the attributes in pycharm self.menu_detail_tabWidget.currentChanged.connect(self.change_focus) self.menu_tab_4.setFocusPolicy(Qt.StrongFocus) self.menu_tab_4.focusInEvent = self.change_focus def add_tabs(self): """ :return: adds the tab """ menu = MenuDetails() self.menu_detail_tabWidget.addTab(menu.menudetail_tab_1, "&Menu") self.weeklytabs = {} days = [('monday', 'Monday'), ('tuesday', 'Tuesday'), ('wednesday', 'Wednesday'), ('thursday', 'Thursday'), ('friday', 'Friday'), ('saturday', 'Saturday'), ('sunday', 'Sunday')] for n, i in enumerate(days): menu = MenuWeekday(day=i[0]) index = n + 1 self.weeklytabs[index] = menu self.menu_detail_tabWidget.addTab(menu.menudetail_tab_1, i[1]) def change_focus(self, event=None): """ focus event handler """ wid = self.menu_detail_tabWidget.currentWidget() if wid.isVisible(): wid.setFocus()
def _create_inlite(self, settings): radio = QRadioButton( 'Either my objects are labelled with a barcode not listed above ' 'or I would like the performance and reliability of a commercial ' 'library') radio.setChecked('inlite' == settings['engine']) radio.setEnabled(inlite_available()) self._layout.addWidget(radio) prompt = QLabel( 'Only available on Windows. ' 'Visit <a href="http://www.inliteresearch.com/">Inlite Research</a> ' 'to download and install Inlite Research\'s ClearImage library.' ) prompt.setWordWrap(True) prompt.setOpenExternalLinks(True) prompt.setStyleSheet(self.STYLESHEET) self._layout.addWidget(prompt) prompt = QLabel('My objects are labelled with:') format = settings['inlite-format'] radio_1d = QRadioButton('1D barcodes') radio_1d.setChecked('1d' == format) radio_datamatrix = QRadioButton('Data Matrix barcodes') radio_datamatrix.setChecked('datamatrix' == format) radio_pdf417 = QRadioButton('PDF 417 barcodes') radio_pdf417.setChecked('pdf417' == format) radio_qr = QRadioButton('QR codes') radio_qr.setChecked('qrcode' == format) layout = QVBoxLayout() layout.addWidget(prompt) layout.addWidget(radio_1d) layout.addWidget(radio_datamatrix) layout.addWidget(radio_pdf417) layout.addWidget(radio_qr) group = QWidget() group.setLayout(layout) group.setStyleSheet(self.STYLESHEET) radio.toggled.connect(group.setEnabled) group.setEnabled(inlite_available() and 'inlite' == settings['engine']) self._layout.addWidget(group) return radio, radio_1d, radio_datamatrix, radio_pdf417, radio_qr
def __init__(self, *args, **kwrgs): existing_widgets = Window.mayaWin.findChildren(QDialog, Window.objectName) if existing_widgets: map(lambda x: x.deleteLater(), existing_widgets) super(Window, self).__init__(*args, **kwrgs) self.installEventFilter(self) self.setObjectName(Window.objectName) self.setWindowTitle(Window.title) mainLayout = QVBoxLayout(self) mainLayout.setContentsMargins(0, 0, 0, 0) mainLayout.setSpacing(0) w_controller = Widget_Controller() w_separator1 = Widget_Separator() w_objectList = Widget_objectList() w_separator2 = Widget_Separator() w_connectionType = Widget_ConnectionType() w_buttons = QWidget() w_buttons.setStyleSheet("font:14px") lay_buttons = QHBoxLayout(w_buttons) lay_buttons.setSpacing(0) button_connect = QPushButton("CONNECT") button_close = QPushButton("CLOSE") lay_buttons.addWidget(button_connect) lay_buttons.addWidget(button_close) mainLayout.addWidget(w_controller) mainLayout.addWidget(w_separator1) mainLayout.addWidget(w_objectList) mainLayout.addWidget(w_separator2) mainLayout.addWidget(w_connectionType) mainLayout.addWidget(w_buttons) self.resize(Window.defaultWidth, Window.defaultHeight) self.load_shapeInfo(Window.path_uiInfo) button_connect.clicked.connect(self.cmd_connect) button_close.clicked.connect(self.deleteLater) self.w_controller = w_controller self.w_objectList = w_objectList self.w_connectionType = w_connectionType
class Report(): """ The Basic Report Module Class """ def __init__(self): #### self.report_tab_5 = QWidget() self.report_tab_5.setStyleSheet("") self.report_tab_5.setObjectName("report_tab_5") self.horizontalLayout_8 = QHBoxLayout(self.report_tab_5) self.horizontalLayout_8.setObjectName("horizontalLayout_8") self.report_detail_tabWidget = QTabWidget(self.report_tab_5) self.report_detail_tabWidget.setObjectName("report_detail_tabWidget") self.add_tabs() self.horizontalLayout_8.addWidget(self.report_detail_tabWidget) ###signals and slots && other stuffs # self.mainwindow = Ui_MainWindow # just for the ease of finding the attributes in pycharm self.report_detail_tabWidget.currentChanged.connect(self.change_focus) self.report_tab_5.setFocusPolicy(Qt.StrongFocus) self.report_tab_5.focusInEvent = self.change_focus def add_tabs(self): """ add new tabs to the table """ employee = EmployeeNew() hygiene = Hygiene() report = Stock() self.report_detail_tabWidget.addTab(employee.employeedetail_tab_1, 'Employee') self.report_detail_tabWidget.addTab(hygiene.reporthygiene_tab_2, 'Hygiene') self.report_detail_tabWidget.addTab(report.stock_tab_1, 'Stock') def change_focus(self, event=None): """ sets focus for the child widgets """ wid = self.report_detail_tabWidget.currentWidget() if wid.isVisible(): wid.setFocus()
def __init__(self, *args, **kwargs): super(Widget_textEdit_splitter, self).__init__(*args, **kwargs) self.installEventFilter(self) mainLayout = QVBoxLayout(self) w_convertButton = QWidget() lay_convertButton = QHBoxLayout(w_convertButton) label_orig = QLabel("Original") label_orig.setAlignment(QtCore.Qt.AlignCenter) label_convert = QLabel("Converted") label_convert.setAlignment(QtCore.Qt.AlignCenter) button = QPushButton(" >> ") lay_convertButton.addWidget(label_orig) lay_convertButton.addWidget(button) lay_convertButton.addWidget(label_convert) w_convertButton.setStyleSheet("font-size:13px") sizePolicy = QSizePolicy() sizePolicy.setVerticalPolicy(QSizePolicy.Fixed) sizePolicy.setHorizontalPolicy(QSizePolicy.Expanding) w_convertButton.setSizePolicy(sizePolicy) splitter = QSplitter() splitter.setStretchFactor(1, 1) textEdit_left = QTextEdit() textEdit_right = QTextEdit() splitter.addWidget(textEdit_left) splitter.addWidget(textEdit_right) textEdit_left.setLineWrapMode(QTextEdit.NoWrap) textEdit_right.setLineWrapMode(QTextEdit.NoWrap) mainLayout.addWidget(w_convertButton) mainLayout.addWidget(splitter) self.textEdit_left = textEdit_left self.textEdit_right = textEdit_right button.clicked.connect(self.load_convertedText)
class Waste(): """Waste management main container""" def __init__(self): #### self.waste_tab_6 = QWidget() self.waste_tab_6.setStyleSheet("") self.waste_tab_6.setObjectName("waste_tab_6") self.verticalLayout = QVBoxLayout(self.waste_tab_6) self.verticalLayout.setObjectName("verticalLayout") self.waste_detail_tabWidget = QTabWidget(self.waste_tab_6) self.waste_detail_tabWidget.setObjectName("waste_detail_tabWidget") self.add_tabs() self.verticalLayout.addWidget(self.waste_detail_tabWidget) ##signals and slotts && other stuffs # self.mainwindow = Ui_MainWindow # just for the ease of finding the attributes in pycharm self.waste_detail_tabWidget.currentChanged.connect(self.change_focus) self.waste_tab_6.setFocusPolicy(Qt.StrongFocus) self.waste_tab_6.focusInEvent = self.change_focus def add_tabs(self): """ :return: adds new tabs """ dish = WasteDish() self.waste_detail_tabWidget.addTab(dish.wastedetail_tab_1, "Dish Waste") item = WasteItems() self.waste_detail_tabWidget.addTab(item.wastedetail_tab_1, "Item Waste") def change_focus(self, event=None): """captures focus to inititate the events for the coprresponding tab""" wid = self.waste_detail_tabWidget.currentWidget() if wid.isVisible(): wid.setFocus()
def __init__(self, *args, **kwargs): self.get_csv_form_google_spreadsheets(Widget_FileTree.url, Widget_FileTree.csv) self.dict_extensionList = self.get_dictList_from_csvPath( Widget_FileTree.csv) super(Widget_FileTree, self).__init__(*args, **kwargs) self.installEventFilter(self) mainLayout = QVBoxLayout(self) mainLayout.setContentsMargins(0, 5, 0, 0) w_basePath = QWidget() lay_basePath = QHBoxLayout(w_basePath) w_basePath.setStyleSheet("font-size:12px") lay_basePath.setContentsMargins(5, 0, 3, 0) label_basePath = QLabel("Base Path : ") lineEdit_basePath = QLineEdit() lineEdit_basePath.setMinimumHeight(22) lineEdit_basePath.setReadOnly(True) lay_basePath.addWidget(label_basePath) lay_basePath.addWidget(lineEdit_basePath) w_tree = QTreeWidget() w_tree.setColumnCount(2) headerItem = w_tree.headerItem() headerItem.setText(0, "File Path") headerItem.setText(1, "Target Node") w_tree.itemExpanded.connect(self.setContentsWidth) w_tree.itemCollapsed.connect(self.setContentsWidth) w_tree.setSelectionMode(QAbstractItemView.ExtendedSelection) self.w_typeAttrList = Widget_TypeAttributeList() w_tree.setContextMenuPolicy(QtCore.Qt.CustomContextMenu) QtCore.QObject.connect( w_tree, QtCore.SIGNAL('customContextMenuRequested(QPoint)'), self.loadContextMenu) w_check = QWidget() lay_check = QHBoxLayout(w_check) lay_check.setContentsMargins(5, 5, 0, 10) lay_check.setSpacing(0) checkBox = QCheckBox() checkBox.setFixedWidth(30) label = QLabel("Show Unused files in folder") label.setStyleSheet("font-size:12px") lay_check.addWidget(checkBox) lay_check.addWidget(label) mainLayout.addWidget(w_basePath) mainLayout.addWidget(w_tree) mainLayout.addWidget(w_check) self.w_tree = w_tree self.checkBox = checkBox self.lineEdit = lineEdit_basePath self.load_checkBoxValue(checkBox, Widget_FileTree.path_uiInfo) QtCore.QObject.connect(checkBox, QtCore.SIGNAL("stateChanged(int)"), self.saveCheckBoxValue) QtCore.QObject.connect(w_tree, QtCore.SIGNAL("itemSelectionChanged()"), self.selectItem)