summaryrefslogtreecommitdiff
path: root/info
diff options
context:
space:
mode:
authorpravindalve2023-05-30 04:20:14 +0530
committerGitHub2023-05-30 04:20:14 +0530
commitcbdd7ca21f1f673a3a739065098f7cc6c9c4b881 (patch)
tree595e888c38f00a314e751096b6bf636a544a5efe /info
parent7740d1ca0c2e6bf34900460b0c58fa4d528577fb (diff)
parent280c6aa89a15331fb76b7014957953dc72af6093 (diff)
downloadChemical-Simulator-GUI-cbdd7ca21f1f673a3a739065098f7cc6c9c4b881.tar.gz
Chemical-Simulator-GUI-cbdd7ca21f1f673a3a739065098f7cc6c9c4b881.tar.bz2
Chemical-Simulator-GUI-cbdd7ca21f1f673a3a739065098f7cc6c9c4b881.zip
Merge pull request #63 from brenda-br/Fix-35HEADmaster
Restructure Project and Deployment
Diffstat (limited to 'info')
-rw-r--r--info/build/windows/build.txt23
-rw-r--r--info/structure/DiagramRepresentation_Component[dot]py_2019work.uxf62
-rw-r--r--info/structure/class_diagram.pdfbin0 -> 12397 bytes
-rw-r--r--info/structure/umlet.uxf1497
4 files changed, 1582 insertions, 0 deletions
diff --git a/info/build/windows/build.txt b/info/build/windows/build.txt
new file mode 100644
index 0000000..7066da7
--- /dev/null
+++ b/info/build/windows/build.txt
@@ -0,0 +1,23 @@
+Steps to create .exe for Chemical Simulator GUI
+1. Go to dir=> src/main/python/
+2. Run the command=> pyinstaller --onefile -windowed --icon=..\resources\base\icons\logo.ico --name="Chemical Simulator GUI" --add-data="..\..\*;." --hidden-import=csv --hidden-import=pandas --hidden-import=PyQt5.uic --hidden-import=xml.dom --hidden-import=pyqtgraph mainApp.py
+3. Move the .exe in 'src/main/python/dist/' to 'src/main/python/'
+4. Delete the file and folders after moving the .exe
+ File to delete
+ 1. src/main/python/Chemical Simulator GUI.spec
+ Folders to delete
+ 1. src/main/python/dist
+ 2. src/main/python/build
+Steps to create installer for Chemical Simulator GUI
+1. Go to dir=> Chemical-Simulator-GUI/
+2. Zip the contents in the folder
+3. Name the zipped folder 'Chemical-Simulator-GUI'
+4. Launch NSIS
+5. Click on the option 'Installer based on .ZIP file' in NSIS
+6. Select the zipped folder created in Step 2 and 3.
+7. Options in NSIS
+ i) Installer Name - Chemical-Simulator-GUI
+ ii) Interface - Modern
+ iii) Default Folder - $PROGRAMFILES\Chemical-Simulator-GUI
+ iv) Compression - LZMA
+8. Click Generate \ No newline at end of file
diff --git a/info/structure/DiagramRepresentation_Component[dot]py_2019work.uxf b/info/structure/DiagramRepresentation_Component[dot]py_2019work.uxf
new file mode 100644
index 0000000..851904b
--- /dev/null
+++ b/info/structure/DiagramRepresentation_Component[dot]py_2019work.uxf
@@ -0,0 +1,62 @@
+<diagram program="umletino" version="14.3.0"><zoom_level>10</zoom_level><element><id>UMLClass</id><coordinates><x>30</x><y>60</y><w>100</w><h>110</h></coordinates><panel_attributes>Chemsep
+Database</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>610</x><y>70</y><w>130</w><h>40</h></coordinates><panel_attributes>get_comp_name_list()</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>430</x><y>70</y><w>100</w><h>40</h></coordinates><panel_attributes>comp_name_list</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>240</x><y>70</y><w>100</w><h>40</h></coordinates><panel_attributes>Comp Name</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>180</x><y>210</y><w>100</w><h>40</h></coordinates><panel_attributes>get_value()</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>350</x><y>210</y><w>100</w><h>40</h></coordinates><panel_attributes>get_comp_prop()</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>30</x><y>350</y><w>120</w><h>120</h></coordinates><panel_attributes>Doct 1 {Dictionary}
+
+DB1: comp1,
+comp2...comp n
+
+DB2: comp1,
+comp2...comp n</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>170</x><y>350</y><w>100</w><h>40</h></coordinates><panel_attributes>comp</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>380</x><y>350</y><w>100</w><h>40</h></coordinates><panel_attributes>get_object()</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>590</x><y>350</y><w>100</w><h>40</h></coordinates><panel_attributes>removing
+ attribute</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>820</x><y>350</y><w>130</w><h>40</h></coordinates><panel_attributes>compound_selected</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>500</x><y>490</y><w>100</w><h>40</h></coordinates><panel_attributes>prop_list</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>690</x><y>490</y><w>100</w><h>40</h></coordinates><panel_attributes>Dict</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>500</x><y>600</y><w>100</w><h>40</h></coordinates><panel_attributes>final_mo()</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>700</x><y>600</y><w>100</w><h>40</h></coordinates><panel_attributes>addToTable()</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>730</x><y>390</y><w>30</w><h>60</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>10;40;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>540</x><y>530</y><w>120</w><h>90</h></coordinates><panel_attributes>lt=&lt;&lt;-
+send information
+for simulation</panel_attributes><additional_attributes>10;70;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>730</x><y>530</y><w>80</w><h>90</h></coordinates><panel_attributes>lt=&lt;&lt;-
+send data
+to table</panel_attributes><additional_attributes>10;70;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>130</x><y>70</y><w>130</w><h>60</h></coordinates><panel_attributes>lt=&lt;&lt;-
+Looping through
+"compound"
+to get each element</panel_attributes><additional_attributes>110;20;10;20</additional_attributes></element><element><id>Relation</id><coordinates><x>270</x><y>350</y><w>130</w><h>60</h></coordinates><panel_attributes>lt=&lt;&lt;-
+Find
+which database
+it belongs to</panel_attributes><additional_attributes>110;20;10;20</additional_attributes></element><element><id>Relation</id><coordinates><x>480</x><y>350</y><w>130</w><h>60</h></coordinates><panel_attributes>lt=&lt;&lt;-
+get the
+removing
+ attribute</panel_attributes><additional_attributes>110;20;10;20</additional_attributes></element><element><id>Relation</id><coordinates><x>690</x><y>350</y><w>150</w><h>60</h></coordinates><panel_attributes>lt=&lt;&lt;-
+get original name
+and save
+it in the list</panel_attributes><additional_attributes>130;20;10;20</additional_attributes></element><element><id>Relation</id><coordinates><x>330</x><y>70</y><w>130</w><h>90</h></coordinates><panel_attributes>lt=&lt;&lt;-
+appending
+db_name
+"self_name"
+and saving in the list
+</panel_attributes><additional_attributes>100;20;20;20</additional_attributes></element><element><id>Relation</id><coordinates><x>530</x><y>70</y><w>100</w><h>60</h></coordinates><panel_attributes>lt=&lt;&lt;-
+function
+to fetch
+the list</panel_attributes><additional_attributes>80;20;10;20</additional_attributes></element><element><id>UMLSyncBarHorizontal</id><coordinates><x>230</x><y>150</y><w>160</w><h>20</h></coordinates><panel_attributes>{joinSpec=
+date is on or
+after July 1st
+and the exam
+is passed}</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLSyncBarHorizontal</id><coordinates><x>540</x><y>420</y><w>250</w><h>20</h></coordinates><panel_attributes>{joinSpec=
+date is on or
+after July 1st
+and the exam
+is passed}</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>540</x><y>430</y><w>140</w><h>80</h></coordinates><panel_attributes>lt=&lt;&lt;-
+get_comp_prop()
+get_original_name()</panel_attributes><additional_attributes>10;60;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>730</x><y>430</y><w>90</w><h>80</h></coordinates><panel_attributes>lt=&lt;&lt;-
+get_value() </panel_attributes><additional_attributes>10;60;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>280</x><y>110</y><w>30</w><h>70</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>10;50;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>230</x><y>160</y><w>120</w><h>70</h></coordinates><panel_attributes>lt=&lt;&lt;-
+Get Value like
+ CAS Number etc</panel_attributes><additional_attributes>10;50;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>360</x><y>160</y><w>170</w><h>70</h></coordinates><panel_attributes>lt=&lt;&lt;-
+Get component properties</panel_attributes><additional_attributes>10;50;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>210</x><y>290</y><w>130</w><h>80</h></coordinates><panel_attributes>lt=&lt;&lt;-
+Text from Line Edit</panel_attributes><additional_attributes>10;60;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>810</x><y>460</y><w>60</w><h>30</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>40;10;10;10</additional_attributes></element><element><id>UMLClass</id><coordinates><x>860</x><y>450</y><w>110</w><h>80</h></coordinates><panel_attributes>lt=.
+CAS Number
+Molecular wt
+Name
+Molecular Formula</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>170</x><y>410</y><w>110</w><h>50</h></coordinates><panel_attributes>lt=.
+comp name
+appended with
+database name</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>10</x><y>490</y><w>200</w><h>120</h></coordinates><panel_attributes>lt=.
+Keys: Instances of the databances
+
+Values: 'get_comp_name_list()'
+
+'lines' : = stores compounds from
+databases which is then sent to
+model for auto_complete feature.</panel_attributes><additional_attributes></additional_attributes></element></diagram> \ No newline at end of file
diff --git a/info/structure/class_diagram.pdf b/info/structure/class_diagram.pdf
new file mode 100644
index 0000000..c2c1134
--- /dev/null
+++ b/info/structure/class_diagram.pdf
Binary files differ
diff --git a/info/structure/umlet.uxf b/info/structure/umlet.uxf
new file mode 100644
index 0000000..89f794e
--- /dev/null
+++ b/info/structure/umlet.uxf
@@ -0,0 +1,1497 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<diagram program="umlet" version="14.3.0">
+ <help_text>// Uncomment the following line to change the fontsize and font:
+fontsize=10
+// fontfamily=SansSerif //possible: SansSerif,Serif,Monospaced
+
+
+//////////////////////////////////////////////////////////////////////////////////////////////
+// Welcome to UMLet!
+//
+// Double-click on elements to add them to the diagram, or to copy them
+// Edit elements by modifying the text in this panel
+// Hold Ctrl to select multiple elements
+// Use Ctrl+mouse to select via lasso
+//
+// Use +/- or Ctrl+mouse wheel to zoom
+// Drag a whole relation at its central square icon
+//
+// Press Ctrl+C to copy the whole diagram to the system clipboard (then just paste it to, eg, Word)
+// Edit the files in the "palettes" directory to create your own element palettes
+//
+// Select "Custom Elements &gt; New..." to create new element types
+//////////////////////////////////////////////////////////////////////////////////////////////
+
+
+// This text will be stored with each diagram; use it for notes.</help_text>
+ <zoom_level>7</zoom_level>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>217</x>
+ <y>385</y>
+ <w>182</w>
+ <h>245</h>
+ </coordinates>
+ <panel_attributes>MainApp
+--
++ zoomcount: int = 0
++ thrd: Thread = None
++ container: Container()
++ comp: ComponentSelector()
++ scene: Graphics.QGraphicsScene()
+--
++ menuBar()
++ buttonHandler()
++ help()
++ BinPhaseEnv()
++ selectCompounds()
++ currentTime()
++ simulate(mode)
++ terminate()
++ zoomReset()
++ zoomOut()
++ zoomIn()
++ component()
++ new()
++ deleteCall()
++ undo_redo_helper()
++ undo()
++ redo()
++ save()
++ open()
+
+</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>231</x>
+ <y>210</y>
+ <w>154</w>
+ <h>119</h>
+ </coordinates>
+ <panel_attributes>QMainWindow
+--
+graphicsView.keyPressEvent
+textBrowser: UC1
+--
+setUpUi()
+graphicsView.setScene()
+graphicsView.setMouseTracking()
+setDockNestingEnabled()
+setCorner()
+addDockWidget()</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>301</x>
+ <y>322</y>
+ <w>21</w>
+ <h>77</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;.</panel_attributes>
+ <additional_attributes>10.0;10.0;10.0;90.0</additional_attributes>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>245</x>
+ <y>112</y>
+ <w>119</w>
+ <h>42</h>
+ </coordinates>
+ <panel_attributes>UC1 (textBrowserClass)
+--
+setText()</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>294</x>
+ <y>147</y>
+ <w>21</w>
+ <h>77</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;.</panel_attributes>
+ <additional_attributes>10.0;10.0;10.0;90.0</additional_attributes>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>455</x>
+ <y>126</y>
+ <w>224</w>
+ <h>189</h>
+ </coordinates>
+ <panel_attributes>ComponentSelector
+--
++ Dict1: dictionary = dict()
++ instance: list = [ChemsepDatabase()]
++ lines: list = []
++ model: QStringListModel()
++ completer: QCompleter()
+--
++ final_list(*list_name)
++ isCompSelected()
++ get_object(component)
++ get_original_name(component, removing_attrib)
++ compoundSelection()
+_+ setCompounds(compounds)_
++ addToTable(a)
++ addCompToList(comp)
++ removeItems()
++ Show_Error()
++ cancel()
++ getComp()
++ final_mo()
+
+
+
+
+
+</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>469</x>
+ <y>378</y>
+ <w>161</w>
+ <h>252</h>
+ </coordinates>
+ <panel_attributes>Container
+--
++ unitOp: list = []
++ termoPackage = None
++ compounds = None
++ conn: dictionary = defaultdict(list)
++ op: dictionary = defaultdict(list)
++ ip: dictionary = defaultdict(list)
++ msg
++ opl: list = []
++ result: list = []
++ graphics: Graphics(unitOp)
++ scene : graphics.getScene()
+--
++ currentTime()
++ addUnitOp(obj, graphicsView)
++ delete(l)
++ fetchObject(name)
++ addCompounds(comp)
++ add_thermoPackage(thermo)
++ msgBrowser()
++ simulate(mode)
++ flatlist(lst)
++ PUSH(fileName, data)
++ CLEAN_FILE(fileName)
++ POP(fileName)
++ get_last_list(fileName)
+</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>686</x>
+ <y>434</y>
+ <w>238</w>
+ <h>119</h>
+ </coordinates>
+ <panel_attributes>Graphics
+--
++ scene: QGraphicsScene()
++ pos: QPointF = None
++ unitOp: list = unitOp
+--
++ getScene()
++ getComponentSelector()
++ createNodeItem(unitOpr, container, graphicsView)
++ boundingRect()
++ loadCanvas(obj)
+</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>728</x>
+ <y>238</y>
+ <w>147</w>
+ <h>105</h>
+ </coordinates>
+ <panel_attributes>QDialog
+--
+lineEdit: UC2
+compoundSelectButton: UC3
+pushButton: UC4
+pushButton_2: UC4
+pshButton_3: UC4
+--
+setupUi()
+show()</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>728</x>
+ <y>42</y>
+ <w>147</w>
+ <h>35</h>
+ </coordinates>
+ <panel_attributes>QStringListModel
+--
+setStringList()</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>910</x>
+ <y>231</y>
+ <w>147</w>
+ <h>49</h>
+ </coordinates>
+ <panel_attributes>UC3 (selectButtonClass)
+--
+clicked.connect()
+setAutoDefault()
+</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>728</x>
+ <y>98</y>
+ <w>147</w>
+ <h>49</h>
+ </coordinates>
+ <panel_attributes>QCompleter
+--
+setCaseSensitivity()
+setModel()</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>728</x>
+ <y>175</y>
+ <w>147</w>
+ <h>35</h>
+ </coordinates>
+ <panel_attributes>UC2 (lineEditClass)
+--
+setCompleter()</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>910</x>
+ <y>294</y>
+ <w>147</w>
+ <h>35</h>
+ </coordinates>
+ <panel_attributes>UC4 (pushButtonClass)
+--
+clicked.connect()</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>665</x>
+ <y>595</y>
+ <w>259</w>
+ <h>315</h>
+ </coordinates>
+ <panel_attributes>NodeItem
+--
++ obj: UnitOperation = unitOpr
++ container: Container = container
++ graphicsView: QGraphicsView = graphicsView
++ name: string = obj.name
++ type: string = obj.type
++ default_tooltip: string
++ default_tooltip_dict: dictionary
++ nin: int = obj.no_of_inputs
++ nop: int = obj.no_of_outputs
++ text: string = user_input
++ ok: boolean = user_input
++ dockWidget: DockWidget() or DockWidgetMaterialStream()
+ or DockWidgetMixer() or DockWidgetSplitter()
+ or DockWidgetFlash() or DockWidgetCompoundSeparator()
+ or DockWidgetDistillationColumn()
+ or DockWidgetShortcutColumn()
++ mainwindow = findMainWindow()
++ pic: QPixmap()
++ rect: QRect()
++ text: QGraphicsTextItem()
++ f: QFont()
++ brush: QBrush()
++ pen: QPen()
++ selPen: QPen()
++ Input:list = [NodeSocket(type)]
++ Output:list = [NodeSocket(type)]
+--
+shape()
+boundingRect()
+paint()
+mouseMoveEvent(event)
+mouseDoubleClickEvent(event)
++ initializeSockets(type)
+</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>644</x>
+ <y>987</y>
+ <w>119</w>
+ <h>49</h>
+ </coordinates>
+ <panel_attributes>QtWidgets.QGraphicsItem
+--
+setTooltip(default_tooltip)
+setFlag
+
+</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>847</x>
+ <y>1036</y>
+ <w>147</w>
+ <h>35</h>
+ </coordinates>
+ <panel_attributes>QtWidgets.QInputDialog
+--
+getText()
+
+</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>798</x>
+ <y>1092</y>
+ <w>147</w>
+ <h>35</h>
+ </coordinates>
+ <panel_attributes>QtGui.QFont
+--
+setPointSize()
+
+</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>644</x>
+ <y>1064</y>
+ <w>147</w>
+ <h>77</h>
+ </coordinates>
+ <panel_attributes>QtWidgets.QGraphicTextItem
+--
+setFont()
+setDefaultTextColor()
+setParentItem()
+setPos()
+setPlainText()
+
+</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>483</x>
+ <y>707</y>
+ <w>112</w>
+ <h>42</h>
+ </coordinates>
+ <panel_attributes>QtGui.QBrush
+--
+setStyle()
+setColor()
+
+</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>294</x>
+ <y>707</y>
+ <w>147</w>
+ <h>56</h>
+ </coordinates>
+ <panel_attributes>QtGui.QPen
+--
+setStyle()
+setColor()
+setWidth()
+
+</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>469</x>
+ <y>805</y>
+ <w>147</w>
+ <h>189</h>
+ </coordinates>
+ <panel_attributes>NodeSocket
+--
++ rect: QRect = rect
++ type: string = socketType
++ parent: NodeItem = parent
++ newLine: NodeLine = None
++ otherLine: NodeLine = None
++ brush: QBrush()
++ pen: QPen()
++ outLines: list = []
++ inLines: list = []
+--
+shape()
+boundingRect()
+paint()
+mousePressEvent(event)
+mouseMoveEvent(event)
+mouseReleaseEvent(event)
+hoverEnterEvent(event)
+hoverLeaveEvent(event)
++ getCenter()
+</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>245</x>
+ <y>805</y>
+ <w>147</w>
+ <h>161</h>
+ </coordinates>
+ <panel_attributes>NodeLine
+--
++ _pointA: QPointF = pointA
++ _pointB: QPointF = pointB
++ _source: QPointF = None
++ _targer: QPointF = None
++ socket: string = socket
++ pen: QPen()
+--
+updatePath()
+paint()
+__delete__(instance)
++ pointA()
++ pointA(point)
++ pointB()
++ pointB(poing)
++ source()
++ target()
+</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>140</x>
+ <y>707</y>
+ <w>147</w>
+ <h>56</h>
+ </coordinates>
+ <panel_attributes>QtWigets.QGraphicsPathItem
+--
+setZValue()
+setBrush()
+setPen()
+</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>1337</x>
+ <y>154</y>
+ <w>168</w>
+ <h>210</h>
+ </coordinates>
+ <panel_attributes>DockWidgetMaterialStream
+--
++ name: string = name
++ obj: UnitOperations = obj
++ type: string = comptype
++ input_dict: dictionary = {}
++ dict: dictionary = {}
++ x_pclist: list = []
++ name_type: string = None
++ container: Container = container
++ header: QTreeWidgetItem()
+--
++ modes()
++ mode_selection()
++ input_params_list()
++ param()
++ results_category(name)
++ _show_result(lst)_
++ show_error()</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>910</x>
+ <y>350</y>
+ <w>147</w>
+ <h>35</h>
+ </coordinates>
+ <panel_attributes>UC5 (comboBoxClass)
+--
+currentIndexChanged.connect()</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>1092</x>
+ <y>294</y>
+ <w>168</w>
+ <h>182</h>
+ </coordinates>
+ <panel_attributes>DockWidget
+--
++ name: string = name
++ obj: UnitOperations = obj
++ type: string = comptype
++ input_dict: dictionary = {}
++ dict: dictionary = {}
++ x_pclist: list = []
++ name_type: string = None
++ container: Container = container
+--
++ modes()
++ mode_selection()
++ input_params_list()
++ param()
++ show_error()
+_+ show_result(lst)_
++ result_category(name)</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>1120</x>
+ <y>147</y>
+ <w>147</w>
+ <h>112</h>
+ </coordinates>
+ <panel_attributes>QDockWidget
+--
+pushButton_2: UC4
+comboBox: UC5
+
+btn:UC4
+--
+setupUi()
+setWindowTitle()
+hide()</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>1337</x>
+ <y>686</y>
+ <w>168</w>
+ <h>161</h>
+ </coordinates>
+ <panel_attributes>DockWidgetShortcutColumn
+--
++ name: string = name
++ obj: UnitOperations = obj
++ type: string = comptype
++ input_dict: list = []
++ dict: list = []
++ name_yype: string = None
++ container: Container = container
+--
++ input_params_list()
++ fun()
++ param()
++ show_error()
+_+ show_result(lst)_
++ result_category(name)</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>1337</x>
+ <y>546</y>
+ <w>168</w>
+ <h>126</h>
+ </coordinates>
+ <panel_attributes>DockWidgetMixer
+DockWidgetCompoundSeparator
+--
++ name: string = name
++ obj: UnitOperations = obj
++ type: string = comptype
++ input_dict: list = []
++ dict: list = []
+--
++ input_params_list()
++ param()
++ show_error()</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>1337</x>
+ <y>392</y>
+ <w>168</w>
+ <h>140</h>
+ </coordinates>
+ <panel_attributes>DockWidgetSplitter
+DockWidgetFlash
+--
++ name: string = name
++ obj: UnitOperations = obj
++ type: string = comptype
++ input_dict: list = []
++ dict: list = []
+--
++ input_params_list()
++ fun()
++ param()
++ show_error()</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>1022</x>
+ <y>511</y>
+ <w>231</w>
+ <h>231</h>
+ </coordinates>
+ <panel_attributes>Flowsheet
+--
++ sim_name: string = 'Simulator'
++ sim_method: string = ''
++ UnitOpn: list = []
++ data: list = []
++ compounds: list = []
++ interface: string = ''
++ omc_path: string = None
++ omc_path: string = cwd()
++ sim_dir_path: string = join(curr_path, sim_name)
++ Flomo_path: string = join(ssim_dir_path, 'Flowsheet.mo')
++ eqn_mos_path: string = join(sim_dir_path, 'simlateEQN.mos')
++ sm_mos_path: string = join(sim_dir_path, 'simulateSM.mos')
++ resdata: list = []
++ stdout = None
++ stderr = None
+--
++ get_omc_path()
++ add_UnitOpn()
++ remove_UnitOpn()
++ add_comp_list()
++ send_for_simulationEqn()
++ send_for_simulationSM()
++ ExtData()
++ simulateEQN()
++ simulateSM()</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>1050</x>
+ <y>980</y>
+ <w>189</w>
+ <h>280</h>
+ </coordinates>
+ <panel_attributes>MaterialStream
+--
+_+ counter: int = 1_
++ name: string = 'MaterialStream' + counter
++ type: string = 'MaterialStream'
++ CompNames: string = CompNames
++ count: int = counter
++ thermoPackage: string = 'RaoultsLaw'
++ mode1: string = 'P'
++ mode2: string = 'T'
++ mode1val: string = ''
++ mode2Val: string = ''
++ OM_data_init: string = ''
++ OM_data_eqn: string = ''
++ no_of_inputs: int = 1
++ no_of_outputs: int = 2
++ x: int = 2500-30
++ y: int = 2500-30
++ startDict: dictionary = {}
++ eqnDict: dictionary = {}
++ modesList: list = ['PT',...]
++ variables: dictionary = {'P':{..},...}
+--
++ paramgetter(mode)
++ paramsetter(params)
++ setPos(pos)
++ GetMinEqnValues()
++ GetStartValues()
++ OM_Flowsheet_Initialize()
++ OM_Flowsheet_Equation()</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>1316</x>
+ <y>980</y>
+ <w>189</w>
+ <h>350</h>
+ </coordinates>
+ <panel_attributes>UnitOperations
+--
+_+ counter: int = 1_
++ OM_data_eqn: string = ''
++ OM_data_init: string = ''
++ InputStms: list = []
++ OutputStms: list = []
++ compounds: list = compound_selected
++ name: string = ''
++ mode: string = None
++ modeVal: string = None
++ type: string = None
++ no_of_inputs: int = 1
++ no_of_outputs: int = 1
++ x: int = 2500-30
++ y: int = 2500-30
++ pos: QPointF(x, y)
++ count: int = counter
++ variables: dictionary = {}
++ modesList: list = []
++ parameters: list = []
++ extra: list = []
++ ForNaming: list = []
++ multidict: list = []
++ ThermoPackReq: boolean = False
++ thermoPackage: list = None
+--
++ paramgetter(mode)
++ paramsetter(params)
++ setPos(pos)
++ add_connection(flag, UnitOpr)
++ OM_Flowsheet_Initialize()
++ OM_Flowsheet_Equation()</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>0</x>
+ <y>497</y>
+ <w>175</w>
+ <h>168</h>
+ </coordinates>
+ <panel_attributes>Bin_Phase_env
+--
++ comp: CompoundSelector = comp
++ compounds: list = comp.getComp()
++ lines: list = [line.rstrip('\n')...]
++ counter: int = 1
+--
+setupUi()
++ button_handler()
++ T_xy()
++ P_xy()
++ get_omc_path()
++ plot()
++ pressEvent(evt)
++ entered(items)</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>490</x>
+ <y>0</y>
+ <w>147</w>
+ <h>98</h>
+ </coordinates>
+ <panel_attributes>ChemsepDatabase
+--
++ comp_name_list: list = list()
++ name: string = 'chemsep'
++ comp_prop_list: list = list()
+--
++ get_comp_name_list()
++ get_value(comps, attrib)
++ get_comp_prop(comps)</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>392</x>
+ <y>308</y>
+ <w>84</w>
+ <h>126</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;-</panel_attributes>
+ <additional_attributes>100.0;10.0;100.0;160.0;10.0;160.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>392</x>
+ <y>476</y>
+ <w>91</w>
+ <h>21</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;-</panel_attributes>
+ <additional_attributes>110.0;10.0;10.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>553</x>
+ <y>91</y>
+ <w>21</w>
+ <h>49</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;.</panel_attributes>
+ <additional_attributes>10.0;10.0;10.0;50.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>672</x>
+ <y>280</y>
+ <w>70</w>
+ <h>21</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;.</panel_attributes>
+ <additional_attributes>80.0;10.0;10.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>791</x>
+ <y>203</y>
+ <w>21</w>
+ <h>49</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;.</panel_attributes>
+ <additional_attributes>10.0;10.0;10.0;50.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>791</x>
+ <y>140</y>
+ <w>21</w>
+ <h>49</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;.</panel_attributes>
+ <additional_attributes>10.0;10.0;10.0;50.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>791</x>
+ <y>70</y>
+ <w>21</w>
+ <h>42</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;.</panel_attributes>
+ <additional_attributes>10.0;10.0;10.0;40.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>868</x>
+ <y>252</y>
+ <w>56</w>
+ <h>21</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;.</panel_attributes>
+ <additional_attributes>60.0;10.0;10.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>868</x>
+ <y>301</y>
+ <w>56</w>
+ <h>21</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;.</panel_attributes>
+ <additional_attributes>60.0;10.0;10.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>623</x>
+ <y>497</y>
+ <w>77</w>
+ <h>21</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;-</panel_attributes>
+ <additional_attributes>90.0;10.0;10.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>791</x>
+ <y>546</y>
+ <w>21</w>
+ <h>63</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;-</panel_attributes>
+ <additional_attributes>10.0;70.0;10.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>609</x>
+ <y>875</y>
+ <w>70</w>
+ <h>21</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;-</panel_attributes>
+ <additional_attributes>10.0;10.0;80.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>385</x>
+ <y>875</y>
+ <w>98</w>
+ <h>21</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;-</panel_attributes>
+ <additional_attributes>10.0;10.0;120.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>217</x>
+ <y>756</y>
+ <w>105</w>
+ <h>63</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;.</panel_attributes>
+ <additional_attributes>10.0;10.0;130.0;70.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>315</x>
+ <y>756</y>
+ <w>63</w>
+ <h>63</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;.</panel_attributes>
+ <additional_attributes>70.0;10.0;10.0;70.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>539</x>
+ <y>742</y>
+ <w>21</w>
+ <h>77</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;.</panel_attributes>
+ <additional_attributes>10.0;10.0;10.0;90.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>588</x>
+ <y>728</y>
+ <w>91</w>
+ <h>21</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;.</panel_attributes>
+ <additional_attributes>10.0;10.0;110.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>700</x>
+ <y>903</y>
+ <w>21</w>
+ <h>98</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;.</panel_attributes>
+ <additional_attributes>10.0;120.0;10.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>917</x>
+ <y>903</y>
+ <w>21</w>
+ <h>147</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;.</panel_attributes>
+ <additional_attributes>10.0;190.0;10.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>819</x>
+ <y>903</y>
+ <w>21</w>
+ <h>203</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;.</panel_attributes>
+ <additional_attributes>10.0;270.0;10.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>770</x>
+ <y>903</y>
+ <w>21</w>
+ <h>175</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;.</panel_attributes>
+ <additional_attributes>10.0;230.0;10.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>623</x>
+ <y>560</y>
+ <w>413</w>
+ <h>21</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;-</panel_attributes>
+ <additional_attributes>570.0;10.0;10.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>973</x>
+ <y>560</y>
+ <w>448</w>
+ <h>434</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;-</panel_attributes>
+ <additional_attributes>620.0;600.0;620.0;520.0;10.0;520.0;10.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>1134</x>
+ <y>917</y>
+ <w>21</w>
+ <h>77</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;-</panel_attributes>
+ <additional_attributes>10.0;90.0;10.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>917</x>
+ <y>245</y>
+ <w>672</w>
+ <h>651</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;-</panel_attributes>
+ <additional_attributes>840.0;10.0;940.0;10.0;940.0;910.0;10.0;910.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>1498</x>
+ <y>448</y>
+ <w>91</w>
+ <h>21</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;-</panel_attributes>
+ <additional_attributes>10.0;10.0;110.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>1498</x>
+ <y>602</y>
+ <w>91</w>
+ <h>21</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;-</panel_attributes>
+ <additional_attributes>10.0;10.0;110.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>1498</x>
+ <y>763</y>
+ <w>91</w>
+ <h>21</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;-</panel_attributes>
+ <additional_attributes>10.0;10.0;110.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>1253</x>
+ <y>371</y>
+ <w>336</w>
+ <h>21</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;-</panel_attributes>
+ <additional_attributes>10.0;10.0;460.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>1162</x>
+ <y>252</y>
+ <w>21</w>
+ <h>56</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;.</panel_attributes>
+ <additional_attributes>10.0;10.0;10.0;60.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>1260</x>
+ <y>175</y>
+ <w>91</w>
+ <h>21</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;.</panel_attributes>
+ <additional_attributes>10.0;10.0;110.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>1260</x>
+ <y>196</y>
+ <w>98</w>
+ <h>210</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;.</panel_attributes>
+ <additional_attributes>10.0;10.0;120.0;280.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>1260</x>
+ <y>224</y>
+ <w>91</w>
+ <h>336</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;.</panel_attributes>
+ <additional_attributes>10.0;10.0;110.0;460.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>1260</x>
+ <y>252</y>
+ <w>91</w>
+ <h>455</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;.</panel_attributes>
+ <additional_attributes>10.0;10.0;110.0;630.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>168</x>
+ <y>546</y>
+ <w>63</w>
+ <h>21</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;.</panel_attributes>
+ <additional_attributes>10.0;10.0;70.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>1050</x>
+ <y>308</y>
+ <w>56</w>
+ <h>21</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;.</panel_attributes>
+ <additional_attributes>10.0;10.0;60.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>1050</x>
+ <y>364</y>
+ <w>56</w>
+ <h>21</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;.</panel_attributes>
+ <additional_attributes>10.0;10.0;60.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>UMLNote</id>
+ <coordinates>
+ <x>14</x>
+ <y>1008</y>
+ <w>112</w>
+ <h>35</h>
+ </coordinates>
+ <panel_attributes>UC is the abbreviation
+for unknown class.
+bg=white
+</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>1141</x>
+ <y>56</y>
+ <w>147</w>
+ <h>49</h>
+ </coordinates>
+ <panel_attributes>Graphics.py
+--
+findMainWindow()</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>1554</x>
+ <y>1267</y>
+ <w>147</w>
+ <h>119</h>
+ </coordinates>
+ <panel_attributes>Heater
+Cooler
+AdiabaticCompressor
+AdiabaticExpander
+Valve
+Pump
+Flash
+--
+</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>1554</x>
+ <y>1127</y>
+ <w>147</w>
+ <h>35</h>
+ </coordinates>
+ <panel_attributes>Mixer
+--
++ Pout_modes: list = [...]
+</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>1554</x>
+ <y>1169</y>
+ <w>147</w>
+ <h>35</h>
+ </coordinates>
+ <panel_attributes>Splitter
+--
++ CalcType_modes: list = [...]
+</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>1554</x>
+ <y>1218</y>
+ <w>147</w>
+ <h>35</h>
+ </coordinates>
+ <panel_attributes>CompoundSeparator
+--
++ SepFact_modes: list = [...]
+</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>1554</x>
+ <y>994</y>
+ <w>175</w>
+ <h>70</h>
+ </coordinates>
+ <panel_attributes>DistillationColumn
+--
++ EngStm1:string = 'EngStm1'+name
++ EngStm2: string = 'EngStm2'+name
++ Cspec_list: list = [...]
++ Rsepc_list: list = [...]
+
+</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>UMLClass</id>
+ <coordinates>
+ <x>1554</x>
+ <y>1071</y>
+ <w>175</w>
+ <h>49</h>
+ </coordinates>
+ <panel_attributes>ShortcutColumn
+--
++ EngStm1:string = 'EngStm1'+name
++ EngStm2: string = 'EngStm2'+name
+
+</panel_attributes>
+ <additional_attributes/>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>1498</x>
+ <y>1022</y>
+ <w>70</w>
+ <h>21</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;-</panel_attributes>
+ <additional_attributes>10.0;10.0;80.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>1498</x>
+ <y>1085</y>
+ <w>70</w>
+ <h>21</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;-</panel_attributes>
+ <additional_attributes>10.0;10.0;80.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>1498</x>
+ <y>1141</y>
+ <w>70</w>
+ <h>21</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;-</panel_attributes>
+ <additional_attributes>10.0;10.0;80.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>1498</x>
+ <y>1190</y>
+ <w>70</w>
+ <h>21</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;-</panel_attributes>
+ <additional_attributes>10.0;10.0;80.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>1498</x>
+ <y>1232</y>
+ <w>70</w>
+ <h>21</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;-</panel_attributes>
+ <additional_attributes>10.0;10.0;80.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>1498</x>
+ <y>1309</y>
+ <w>70</w>
+ <h>21</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;-</panel_attributes>
+ <additional_attributes>10.0;10.0;80.0;10.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>7</x>
+ <y>1064</y>
+ <w>133</w>
+ <h>28</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;-
+Association</panel_attributes>
+ <additional_attributes>10.0;20.0;170.0;20.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>7</x>
+ <y>1106</y>
+ <w>133</w>
+ <h>28</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;.
+Implements</panel_attributes>
+ <additional_attributes>10.0;20.0;170.0;20.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>7</x>
+ <y>1141</y>
+ <w>133</w>
+ <h>28</h>
+ </coordinates>
+ <panel_attributes>lt=&lt;&lt;-
+Inherits</panel_attributes>
+ <additional_attributes>10.0;20.0;170.0;20.0</additional_attributes>
+ </element>
+ <element>
+ <id>Relation</id>
+ <coordinates>
+ <x>7</x>
+ <y>1169</y>
+ <w>147</w>
+ <h>28</h>
+ </coordinates>
+ <panel_attributes>+'s are user-defined variables and methods
+Qt's methods does not have any symbols</panel_attributes>
+ <additional_attributes>80.0;20.0;120.0;20.0</additional_attributes>
+ </element>
+</diagram>