Changed folder structure to match the python package standards more and created setup.py for an easy installation.

This commit is contained in:
The Wobbler 2024-12-14 18:41:42 +01:00
parent b1b442b23a
commit b7a6ba567a
17 changed files with 48 additions and 12 deletions

View file

@ -0,0 +1 @@
#!/usr/bin/python3

View file

@ -0,0 +1 @@
#!/usr/bin/python3

View file

@ -0,0 +1,234 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>MainWindow</class>
<widget class="QMainWindow" name="MainWindow">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>861</width>
<height>548</height>
</rect>
</property>
<property name="windowTitle">
<string>Bread Editor</string>
</property>
<property name="locale">
<locale language="English" country="Europe"/>
</property>
<widget class="QWidget" name="centralwidget">
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<widget class="QTabWidget" name="openFileTabs">
<property name="enabled">
<bool>true</bool>
</property>
<property name="currentIndex">
<number>-1</number>
</property>
<property name="elideMode">
<enum>Qt::ElideNone</enum>
</property>
<property name="tabsClosable">
<bool>true</bool>
</property>
<property name="movable">
<bool>false</bool>
</property>
</widget>
</item>
</layout>
</widget>
<widget class="QMenuBar" name="menubar">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>861</width>
<height>20</height>
</rect>
</property>
<widget class="QMenu" name="fileMenu">
<property name="locale">
<locale language="English" country="Europe"/>
</property>
<property name="title">
<string>File</string>
</property>
<addaction name="newFile"/>
<addaction name="openFile"/>
<addaction name="separator"/>
<addaction name="saveFile"/>
<addaction name="saveFileAs"/>
</widget>
<widget class="QMenu" name="menuEdit">
<property name="locale">
<locale language="English" country="Europe"/>
</property>
<property name="title">
<string>Edit</string>
</property>
<addaction name="menuSettings"/>
</widget>
<addaction name="fileMenu"/>
<addaction name="menuEdit"/>
</widget>
<widget class="QStatusBar" name="statusbar"/>
<widget class="QDockWidget" name="settingsDock">
<property name="enabled">
<bool>true</bool>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>200</width>
<height>124</height>
</size>
</property>
<property name="accessibleName">
<string/>
</property>
<property name="accessibleDescription">
<string/>
</property>
<property name="floating">
<bool>false</bool>
</property>
<property name="features">
<set>QDockWidget::DockWidgetClosable|QDockWidget::DockWidgetFloatable|QDockWidget::DockWidgetMovable</set>
</property>
<property name="windowTitle">
<string> Settings</string>
</property>
<attribute name="dockWidgetArea">
<number>1</number>
</attribute>
<widget class="QWidget" name="settingsDockContents">
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QTabWidget" name="settingsTabs">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="currentIndex">
<number>0</number>
</property>
<widget class="QWidget" name="appearanceSettingsTab">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="accessibleName">
<string/>
</property>
<property name="autoFillBackground">
<bool>false</bool>
</property>
<attribute name="title">
<string>Appearance</string>
</attribute>
<widget class="QCheckBox" name="highlightOnesSetting">
<property name="geometry">
<rect>
<x>10</x>
<y>10</y>
<width>111</width>
<height>21</height>
</rect>
</property>
<property name="text">
<string>Highlight ones</string>
</property>
</widget>
<widget class="QCheckBox" name="bitsAreSquaresSetting">
<property name="geometry">
<rect>
<x>10</x>
<y>30</y>
<width>119</width>
<height>21</height>
</rect>
</property>
<property name="text">
<string>Bits are squares</string>
</property>
<property name="tristate">
<bool>false</bool>
</property>
</widget>
</widget>
</widget>
</item>
</layout>
</widget>
</widget>
<action name="openFile">
<property name="checkable">
<bool>false</bool>
</property>
<property name="checked">
<bool>false</bool>
</property>
<property name="text">
<string>Open</string>
</property>
<property name="shortcut">
<string>Ctrl+O</string>
</property>
<property name="visible">
<bool>true</bool>
</property>
</action>
<action name="saveFile">
<property name="text">
<string>Save</string>
</property>
<property name="shortcut">
<string>Ctrl+S</string>
</property>
</action>
<action name="menuSettings">
<property name="text">
<string>Settings</string>
</property>
<property name="visible">
<bool>true</bool>
</property>
</action>
<action name="actionNew">
<property name="text">
<string>New</string>
</property>
</action>
<action name="actionOpen">
<property name="text">
<string>Open</string>
</property>
</action>
<action name="newFile">
<property name="text">
<string>New</string>
</property>
<property name="shortcut">
<string>Ctrl+N</string>
</property>
</action>
<action name="saveFileAs">
<property name="text">
<string>Save As</string>
</property>
</action>
</widget>
<resources/>
<connections/>
</ui>

View file

@ -0,0 +1,23 @@
#!/usr/bin/python3
import os
working_dir = os.getcwd()
if not working_dir.split('/')[-1] == "raw_ui": # cd into the right directory if this gets executed from somewhere else
os.chdir(os.path.dirname(os.path.abspath(__file__)))
input_debug = input("Do you want to debug the gui scripts? (Make gui scripts executable.) (y/n): ")
debug = input_debug == "y"
params = "-o"
if debug:
params = "-xo"
paths = {
"main_window.ui": "main_window.py"
}
for ui_file, script_out in paths.items():
os.system(f"pyuic6 {ui_file} {params} ../{script_out}")