Skip to content

Commit

Permalink
dialog box to inform of issue. this refs #73
Browse files Browse the repository at this point in the history
  • Loading branch information
JeanBilheux committed Jan 4, 2022
1 parent 878e43a commit 4ac15ff
Showing 1 changed file with 47 additions and 9 deletions.
56 changes: 47 additions & 9 deletions src/iBeatles/all_steps/event_handler.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
from .. import DataType
from ..utilities.status_message_config import StatusMessageStatus, show_status_message
from qtpy.QtWidgets import QMessageBox
import logging


class EventHandler:
Expand Down Expand Up @@ -34,7 +36,11 @@ def is_step_selected_allowed(self, step_index_requested=0):
if step_index_requested == 1:

if self.parent.data_metadata[DataType.sample]['data'] == []:
self._display_status_message_warning(message="Please load some sample data!")
message = "Please load some sample data!"
self._display_status_message_warning(message=message)
self._display_message_box(message=message)
EventHandler._update_logging(step_requested=step_index_requested,
message=message)
return False
return True

Expand All @@ -47,39 +53,71 @@ def is_step_selected_allowed(self, step_index_requested=0):
# validate only if normalized data loaded
if step_index_requested == 3:
if self.parent.data_metadata[DataType.normalized]['data'] == []:
self._display_status_message_warning(message="Please load some normalized data!")
message = "Please load some normalized data!"
self._display_status_message_warning(message=message)
self._display_message_box(message=message)
EventHandler._update_logging(step_requested=step_index_requested,
message=message)
return False
return True

# fitting
# validate if there is a bin region selected
if step_index_requested == 4:
if self.parent.data_metadata[DataType.normalized]['data'] == []:
self._display_status_message_warning(message="Please load some normalized data!")
message = "Please load some normalized data!"
self._display_status_message_warning(message=message)
self._display_message_box(message=message)
EventHandler._update_logging(step_requested=step_index_requested,
message=message)
return False
if not self.parent.there_is_a_roi:
self._display_status_message_warning(message="Please select a region to bin first (step binning)!")
message = "Please select a region to bin first (step binning)!"
self._display_status_message_warning(message=message)
self._display_message_box(message=message)
EventHandler._update_logging(step_requested=step_index_requested,
message=message)
return False
return True

# strain mapping
# validate if fitting has been performed
if step_index_requested == 5:
if self.parent.table_dictionary == {}:
self._display_status_message_warning(message="Please fit the data to be able to visualize the strain "
"mapping!")
message = "Please fit the data to be able to visualize the strain mapping!"
self._display_status_message_warning(message=message)
self._display_message_box(message=message)
EventHandler._update_logging(step_requested=step_index_requested,
message=message)
return False
return True

# rotation
# validate if normalized data loaded
if step_index_requested == 6:
if self.parent.data_metadata[DataType.normalized]['data'] == []:
self._display_status_message_warning(message="Please load some normalized data!")
message = "Please load some normalized data!"
self._display_status_message_warning(message=message)
self._display_message_box(message=message)
EventHandler._update_logging(step_requested=step_index_requested,
message=message)
return False
return True

return True



def _display_message_box(self, message=""):
dlg = QMessageBox(self.parent)
dlg.setWindowTitle("Unable to start this step!")
dlg.setText(message)
dlg.setStandardButtons(QMessageBox.Ok)
dlg.setIcon(QMessageBox.Warning)
button = dlg.exec()

if button == QMessageBox.Ok:
dlg.close()

@staticmethod
def _update_logging(step_requested=-1, message=""):
logging.info(f"Error requesting step #{step_requested}")
logging.info(message)

0 comments on commit 4ac15ff

Please sign in to comment.