acoused/main.py

92 lines
3.0 KiB
Python

import sys
import traceback
from PyQt5.QtWidgets import QApplication, QMainWindow
from PyQt5.QtCore import QCoreApplication
from View.mainwindow import Ui_MainWindow
from View.acoustic_data_tab import AcousticDataTab
from View.signal_processing_tab import SignalProcessingTab
from View.sample_data_tab import SampleDataTab
from View.acoustic_inversion_tab import AcousticInversionTab
from View.note_tab import NoteTab
from View.user_manual_tab import UserManualTab
import matplotlib.pyplot as plt
plt.close("all")
# Check encoding used
# print(sys.getdefaultencoding())
PERCENT_SCREEN_SIZE = 0.85
_translate = QCoreApplication.translate
class MainApplication(QMainWindow):
def __init__(self):
super(MainApplication, self).__init__()
self.ui_mainwindow = Ui_MainWindow()
self.ui_mainwindow.setupUi(self)
screen = QApplication.primaryScreen()
size = screen.size()
width = size.width()
height = size.height()
self.resize(int(PERCENT_SCREEN_SIZE*width), int(PERCENT_SCREEN_SIZE*height))
try:
# **************************************************
# -------------- Acoustic data tab ---------------
self.acoustic_data_tab = AcousticDataTab(self.ui_mainwindow.tab1)
# Connect push buttons to download data files22
# **************************************************
# --------- Signal processing data tab ----------
self.signal_processing_tab = SignalProcessingTab(self.ui_mainwindow.tab2)
# **************************************************
# --------------- Sample data tab ----------------
self.sample_data_tab = SampleDataTab(self.ui_mainwindow.tab3)
# **************************************************
# ------------ Acoustic inversion tab -------------
self.acoustic_inversion_tab = AcousticInversionTab(self.ui_mainwindow.tab4)
# **************************************************
# ------------------- Note tab --------------------
self.note_tab = NoteTab(self.ui_mainwindow.tab5)
# **************************************************
# ---------------- User Manual tab -----------------
self.user_manual_tab = UserManualTab(self.ui_mainwindow.tab6)
# **************************************************
# ---------------- Text File Error -----------------
except Exception as e:
with open("Error_file.txt", "w", encoding="utf-8") as sortie:
sortie.write(str(e))
sortie.write(traceback.format_exc())
# traceback.TracebackException.from_exception(e).print(file=sortie)
if __name__ == '__main__':
# print("sys.argv:", [arg for arg in sys.argv])
# app = MainApplication(sys.argv)
# sys.exit(app.exec_())
app = QApplication(sys.argv)
window = MainApplication()
window.show()
# sys.exit(app.exec_())
app.exec()