Code owners
Assign users and groups as approvers for specific file changes. Learn more.
Elemental_Analysis.py 1.57 KiB
from __future__ import absolute_import, print_function
from PyQt4 import QtGui
import sys
from Muon.GUI.ElementalAnalysis.PeriodicTable.periodic_table_presenter import PeriodicTable
from Muon.GUI.ElementalAnalysis.PeriodicTable.periodic_table_view import PeriodicTableView
from Muon.GUI.ElementalAnalysis.PeriodicTable.periodic_table_model import PeriodicTableModel
from Muon.GUI.Common import message_box
class ElementalAnalysisGui(QtGui.QMainWindow):
def __init__(self, parent=None):
super(ElementalAnalysisGui, self).__init__(parent)
self.ptable = PeriodicTable(PeriodicTableView(), PeriodicTableModel())
self.ptable.register_table_changed(self.table_changed)
self.ptable.register_table_lclicked(self.table_left_clicked)
self.ptable.register_table_rclicked(self.table_right_clicked)
self.setCentralWidget(self.ptable.view)
self.setWindowTitle("Elemental Analysis")
def table_left_clicked(self, item):
print("Element Left Clicked: {}".format(
self.ptable.element_data(item.symbol)))
def table_right_clicked(self, item):
print("Element Right Clicked: {}".format(item.symbol))
def table_changed(self, items):
print("Table Changed: {}".format([i.symbol for i in items]))
def qapp():
if QtGui.QApplication.instance():
_app = QtGui.QApplication.instance()
else:
_app = QtGui.QApplication(sys.argv)
return _app
app = qapp()
try:
window = ElementalAnalysisGui()
window.show()
app.exec_()
except RuntimeError as error:
message_box.warning(str(error))