Community Bonding Period
- Read OpenSCAD source and test files.
- Learnt some important Qt classes used in OpenSCAD.
- Explore different editors that can be integrated into OpenSCAD editor.
- Discussed with community about the editor and finalized QScintilla.
19th May Worked on Detachable rendering window.
20th May Read about QScintilla integration after discussion with community
21st May Completed the task of Detachable window and made a pull request in branch detatchrenderwindow of OpenSCAD.
- Submitted patch for detachable render window, which my mentor said, can be a good addition to https://github.com/openscad/openscad/pull/787.
- Discussed about the integration of editor.
- Added class Qscintilla and make two separate objects of QTextEditor and QScintilla classes in Editor class.
- Removed errors and Added some built in functions of QScintilla class so that its minimal functionality can be seen.
- Discussed about it with mentors and I got that two separate classes should be made say legacyEditor and ScintillaEditor which will inherit QTextEdit and QScintilla classes respectively and an Interface class Editor will be used to call the functions of both these classes.
- Refactored some code and made two separate classes as discussed.
- More code need to be refactored yet.
- Searched about how to change the color of rendered model.
- Checked rendersettings.cc renderer.cc preferences.cc. Preferences.cc has color scheme for preview but not for rendered model.
- The functions defined in legacyEditor.cc can be called in mainwin.cc by object of interface class i.e. Editor.
- Still not able to find the code that affects the color of rendered model. Struggling for it.
- Facing a segmentation fault because of toPlainText() function call in mainwin.cc at some places. Trying to solve it.
- Completed the editor class as interface and defined virtual functions into it using which the derived class functions can be called into the mainwin.cc
- The size of the editor is creating problem. It is not fitting into the DockWidget. Read about size hint, size policy and customizing Qt widgets.
- Cloned new openscad as a lot of changes are made by the developer and installed required libraries. Build OpenSCAD with Qt5 and remove errors caused to old libraries versions. My mentor suggested me to shift to Operating system Ubuntu 14.04 as 12.04 is not supporting new libraries required by OpenSCAD.
- Installed QScintilla editor API and read its example to understand how to it can be integrated into OpenSCAD.
- Made Scintilla class derived from Editor class.
- Install OS Ubuntu 14.04 lts.
- Cloned OpenSCAD and build required libraries
- Scintilla editor is not working. Trying to figure out the problem.
- As the editor is removed from MainWindow.ui file, the editor defined as object of legacyEditor is facing some size issues. Trying to figure out how to set its size equal to its parent editorDockContents.
- Integrated QScintilla editor into openscad with minimal functionality.
- Solved size problem of legacy and scintilla editors successfully. Now they are occupying the full editorDock widget space.