= GSoC 2016 !PyQt based GUI of GRASS automatically generated from XML = || Title: || '''!PyQt based GUI of GRASS automatically generated from XML''' || ||Student Name: || Ondrej Pesek, [http://www.cvut.cz Czech Technical University in Prague] || ||Organization: || [http://www.osgeo.org OSGeo - Open Source Geospatial Foundation] || || Mentor Name: || [http://grasswiki.osgeo.org/wiki/User:Wenzeslaus Vaclav Petras], Anna Petrasova || || GSoC proposal: || [https://summerofcode.withgoogle.com/dashboard/project/5665948409266176/details/ view proposal] || || Link to code: || [TODO] || Documentation: || [TODO] == Abstract == GUI forms (module dialogs) are now automatically generated from XML into wxPython. My idea is to create code that is generating the same code into more powerful Qt. == Goal == Create a table of individual widgets, their features and when their are used. Existing GUI in GRASS GIS and also in QGIS GRASS plugin and QGIS Processing plugin are good starting points. List of standard options in GRASS GIS [https://grass.osgeo.org/grass71/manuals/parser_standard_options.html] gives list of commonly used parameters which are likely to become specialized widgets (but it is not 1:1 - a lot of them are actually the same map selection widget just with different parameters). The general specification of options and flags is in the programming manual [https://grass.osgeo.org/programming7/gislib_cmdline_parsing.html]. There is more ways to do it. We will try to make more files. Nowadays, it is just one file with more than 1000 lines. It is not very readable. We hope that we can change it. == Timeline == |||||| '''timeline from proposal''' || |||| ||status|| ||MAY 23 - 29 ||Familiarization with the existing code|| || ||MAY 30 - JUNE 5 ||Generating of basic GUI|| || ||JUNE 6 - 19 ||Implementation of simple widgets|| || ||JUNE 20 - 25 ||Developing of QGIS plugin|| || ||'''Mid term evaluation''' || || || ||JUNE 27 - JULY 10 ||Implementation into QGIS plugin|| || ||JULY 11 - 24 ||Typing into GRASS-like interface|| || ||JULY 25 - 31 ||Clearing of code|| || ||AUGUST 1 - 7 ||Testing|| || ||AUGUST 8 - 15 ||Writing documentation|| || ||'''The end''' || == == |||||| '''timeline created meanwhile bounding''' || |||| ||status|| ||MAY 23 - 29 ||Familiarization with the existing code|| || ||MAY 30 - JUNE 5 ||Generating of basic GUI class|| || ||JUNE 6 - 19 ||GUI Grass class|| || ||JUNE 20 - 25 ||!UpdateThread|| || ||'''Mid term evaluation''' || || || ||JUNE 27 - JULY 3 ||!UpdateQThread|| || ||JULY 4 - 17 ||!TaskFrame|| || ||JULY 18 - 24 ||!CmdPanel|| || ||JULY 25 - 31 ||Clearing of code|| || ||AUGUST 1 - 7 ||Testing|| || ||AUGUST 8 - 15 ||Writing documentation|| || ||'''The end''' || == Requirements == [http://grass.osgeo.org/download/software/#g71x GRASS 7.1] == Development == === Weekly reports === ==== May 23 - 29 ====