Mon, 05 Mar 2018 22:40:34 +0200
Added LDObject serialization and refactored the internal resource managing to use it. No more tearing objects from one model into another, and this provides a stable way to keep an object's state in memory such as the edit history.
<?xml version="1.0" encoding="UTF-8"?> <ui version="4.0"> <class>EditRawUI</class> <widget class="QDialog" name="EditRawUI"> <property name="geometry"> <rect> <x>0</x> <y>0</y> <width>400</width> <height>87</height> </rect> </property> <property name="windowTitle"> <string>Edit LDraw Code</string> </property> <layout class="QVBoxLayout" name="verticalLayout"> <item> <widget class="QLabel" name="label"> <property name="text"> <string>LDraw code:</string> </property> </widget> </item> <item> <widget class="QLineEdit" name="code"> <property name="whatsThis"> <string><html><head/><body><p>The LDraw code of this object. The code written here is expected to be valid LDraw code, invalid code here results the object being turned into an error object. Please do refer to the <a href="http://www.ldraw.org/article/218.html"><span style=" text-decoration: underline; color:#0057ae;">official file format standard</span></a> for further information.</p></body></html></string> </property> </widget> </item> <item> <layout class="QHBoxLayout" name="horizontalLayout"> <item> <widget class="QLabel" name="errorIcon"> <property name="maximumSize"> <size> <width>16</width> <height>16</height> </size> </property> <property name="text"> <string/> </property> <property name="pixmap"> <pixmap resource="../../ldforge.qrc">:/icons/error.png</pixmap> </property> <property name="scaledContents"> <bool>true</bool> </property> </widget> </item> <item> <widget class="QLabel" name="errorDescription"> <property name="enabled"> <bool>true</bool> </property> <property name="styleSheet"> <string notr="true">color: #900</string> </property> <property name="text"> <string>Error description</string> </property> </widget> </item> <item> <widget class="QDialogButtonBox" name="buttonBox"> <property name="orientation"> <enum>Qt::Horizontal</enum> </property> <property name="standardButtons"> <set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set> </property> </widget> </item> </layout> </item> </layout> </widget> <resources> <include location="../../ldforge.qrc"/> </resources> <connections> <connection> <sender>buttonBox</sender> <signal>accepted()</signal> <receiver>EditRawUI</receiver> <slot>accept()</slot> <hints> <hint type="sourcelabel"> <x>248</x> <y>254</y> </hint> <hint type="destinationlabel"> <x>157</x> <y>274</y> </hint> </hints> </connection> <connection> <sender>buttonBox</sender> <signal>rejected()</signal> <receiver>EditRawUI</receiver> <slot>reject()</slot> <hints> <hint type="sourcelabel"> <x>316</x> <y>260</y> </hint> <hint type="destinationlabel"> <x>286</x> <y>274</y> </hint> </hints> </connection> </connections> </ui>