Skip to content

Commit

Permalink
Fixed build
Browse files Browse the repository at this point in the history
  • Loading branch information
chaplin89 committed May 15, 2024
1 parent 2a1de3b commit 24fd6f2
Show file tree
Hide file tree
Showing 3 changed files with 47 additions and 75 deletions.
2 changes: 1 addition & 1 deletion .vscode/tasks.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
{
"label": "Compile UI",
"type": "shell",
"command": "pyside6-uic wgse/gui/form.ui -o wgse/gui/ui_form.py && pyside6-uic wgse/gui/header.ui -o wgse/gui/header.py",
"command": "pyside6-uic wgse/gui/form.ui -o wgse/gui/ui_form.py",
"problemMatcher": [],
"group": {
"kind": "build",
Expand Down
48 changes: 0 additions & 48 deletions wgse/gui/header.py

This file was deleted.

72 changes: 46 additions & 26 deletions wgse/gui/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,27 +2,45 @@
import webbrowser
from pathlib import Path

from PySide6.QtCore import QModelIndex, Qt
from PyQt6.QtCore import QObject, pyqtSignal
from PyQt6.QtWidgets import QApplication, QMainWindow
from PySide6.QtCore import QModelIndex
from PySide6.QtWidgets import (QApplication, QFileDialog, QMainWindow,
QMessageBox, QTableWidgetItem, QLabel)
QMessageBox, QTableWidgetItem)

from wgse.adapters.alignment_map_file_info_adapter import AlignmentMapFileInfoAdapter
from wgse.adapters.alignment_stats_adapter import AlignmentStatsAdapter
from wgse.adapters.header_adapter import HeaderAdapter, HeaderCommentsAdapter, HeaderProgramsAdapter, HeaderReadGroupAdapter, HeaderSequenceAdapter
from wgse.adapters.header_adapter import (HeaderCommentsAdapter,
HeaderProgramsAdapter,
HeaderReadGroupAdapter,
HeaderSequenceAdapter)
from wgse.adapters.index_stats_adapter import IndexStatsAdapter
from wgse.alignment_map.alignment_map_file import AlignmentMapFile
from wgse.configuration import MANAGER_CFG
from wgse.data.gender import Gender
from wgse.data.sorting import Sorting
from wgse.gui.table_dialog import ListTableDialog, TableDialog
from wgse.utility.external import External
from wgse.fasta.reference import Reference
from wgse.gui.alignment_statistics_dialog import AlignmentStatisticsDialog
from wgse.gui.header_dialog import HeaderDialog
from wgse.gui.extract import ExtractDialog
from wgse.gui.index_statistics_dialog import IndexStatisticsDialog
from wgse.gui.table_dialog import ListTableDialog, TableDialog
from wgse.gui.ui_form import Ui_MainWindow
from wgse.renderers.html_aligned_file_report import HTMLAlignedFileReport
from wgse.utility.external import External


class Worker(QObject):
def __init__(self, f, parent=None) -> None:
super().__init__(parent)
self.finished = pyqtSignal()
self.progress = pyqtSignal(int) # Optional progress signal
self.f = f

def run(self):
"""Long-running task goes here."""
try:
self.f()
# Emit progress updates (optional)
# self.progress.emit(percentage)
pass
finally:
self.finished.emit() # Always emit finished, even with errors


class WGSEWindow(QMainWindow):
def launch():
Expand All @@ -34,19 +52,14 @@ def launch():
def __init__(
self,
parent=None,
config = MANAGER_CFG.GENERAL,
config=MANAGER_CFG.GENERAL,
external: External = External(),
):
super().__init__(parent)
self._external = external
self.config = config
self.switch_to_main()
return
# self.ui = Ui_Drop()
# self.ui.setupUi(self)
# self.setAlignment(Qt.AlignmentFlag.AlignCenter)
# self.setCentralWidget(self.ui.groupBox)
# self.setAcceptDrops(True)

def switch_to_main(self):
self.ui = Ui_MainWindow()
Expand Down Expand Up @@ -77,7 +90,6 @@ def dropEvent(self, event):
print("Dropped file:", file_path)
# Do something with the dropped file


def export(self):
if self.current_file is None:
return
Expand Down Expand Up @@ -180,7 +192,7 @@ def file_item_clicked(self, index: QModelIndex):
"Alignment stats": self._show_alignment_stats,
"Index stats": self._show_index_stats,
"Coverage stats": self._show_coverage_stats,
}
}
item = self.ui.fileInformationTable.verticalHeaderItem(index.row())
if item.text() not in handlers:
return
Expand Down Expand Up @@ -253,7 +265,9 @@ def _show_index_stats(self):
return
self._do_indexing(user_informed=True)
dialog = TableDialog("Index Statistics", self)
dialog.set_data(IndexStatsAdapter.adapt(self.current_file.file_info.index_stats))
dialog.set_data(
IndexStatsAdapter.adapt(self.current_file.file_info.index_stats)
)
dialog.exec()

def _show_coverage_stats(self):
Expand All @@ -266,22 +280,28 @@ def _show_alignment_stats(self):
if self.current_file is None:
return
dialog = TableDialog("Alignment statistics", self)
dialog.set_data(AlignmentStatsAdapter.adapt(self.current_file.file_info.alignment_stats))
dialog.set_data(
AlignmentStatsAdapter.adapt(self.current_file.file_info.alignment_stats)
)
dialog.exec()

def _show_header(self):
if self.current_file is None:
return

dialog = ListTableDialog("Header", self)
data = {
"Sequences": HeaderSequenceAdapter.adapt(self.current_file.header.sequences.values()),
"Sequences": HeaderSequenceAdapter.adapt(
self.current_file.header.sequences.values()
),
"Programs": HeaderProgramsAdapter.adapt(self.current_file.header.programs),
"Read groups": HeaderReadGroupAdapter.adapt(self.current_file.header.read_groups),
"Comments" : HeaderCommentsAdapter.adapt(self.current_file.header.comments)
"Read groups": HeaderReadGroupAdapter.adapt(
self.current_file.header.read_groups
),
"Comments": HeaderCommentsAdapter.adapt(self.current_file.header.comments),
}
dialog.set_data(data)
dialog.exec()

def _gender_determined(self, gender: Gender):
pass
pass

0 comments on commit 24fd6f2

Please sign in to comment.