<div dir="ltr"><div>Dear Linda, <br></div><div><br></div><div>Thanks for such a detailed final report and for all your contributions to make GRASS GUI easier and straightforward for users, especially first time users! And thanks much for this cool new experimental single window GUI, I'm eager to test :) <br></div><div><br></div><div>Once again, huge thanks to your mentors Anna, Vaclav, Stefan and Martin for their dedication and for their commitment to the project!! Great team!</div><div><br></div><div>I'm sure we'll keep seeing your contributions after GSoC!</div><div><br></div><div>All the best, <br></div><div>Vero<br></div><div><table><tbody><tr><td></td><td><br></td></tr></tbody></table></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">El dom, 22 ago 2021 a las 20:15, Linda Kladivová (<<a href="mailto:L.Kladivova@seznam.cz" target="_blank">L.Kladivova@seznam.cz</a>>) escribió:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div>Hello everyone,<div dir="ltr"><div dir="ltr"><p style="margin-bottom:0pt;line-height:normal"><br></p><div>I am sending my Final GSoC report. The more detailed version with permanent links on GitHub PRs and with several screenshots can be found at the project wiki: <a href="https://trac.osgeo.org/grass/wiki/GSoC/2021/SingleWindowLayout#FinalReport" target="_blank">https://trac.osgeo.org/grass/wiki/GSoC/2021/SingleWindowLayout#FinalReport</a> .<br></div><div><br></div><p>
<strong>Abstract:</strong><br>
The project was focused mainly on the extensive Graphical User 
Interface refactoring necessary to prepare GRASS for Single-Window GUI. 
In addition to a good programming base, the simple working Single-Window
 GUI prototype was built in a parallel environment. This Single-Window 
frame largely copies the design (mockup) which the author had proposed for the GSoC application (see <a href="https://trac.osgeo.org/grass/wiki/wxGUIDevelopment/SingleWindow" target="_blank"><span>​</span></a>[1]). All main functionality will be put into operation after the successful merge of PR [2] and PR [3]. <a href="https://github.com/OSGeo/grass/pull/1789" target="_blank"><span></span></a>However, to completely replace the current Multi-Window GUI solution, many other improvements are still expected.</p><p><br>
</p>
<p>
<strong>The state of the art BEFORE the start of GSoC:</strong><br>
Although the GRASS GUI has been enriched with many new features since 
last year, the basic Multi-Window GUI concept used in all historical 
GRASS versions has been preserved. As the name suggests Multi-Window GUI
 consists of several windows (frames) - the control window and additional separate map display windows. The control window includes a 
notebook containing 5 tabs in a standard 2D map view - Data, Display, 
Modules, Console, and Python.</p><p><br></p>
<p>
<strong>The state of the art AFTER GSoC:</strong><br>
A large part of the project was focused on GUI refactoring. The core work had to be done all at once in the PR <a href="https://github.com/OSGeo/grass/pull/1675" target="_blank"><span>​</span></a>[2]
 and since it overturns the core logic of map display widgets, it was decided to merge it after GSoC when the GRASS 8 will be released. To sum it up, we are probably not entirely done with the refactoring, but the main part was managed.
</p>
<p>
In addition, a Single-Window GUI prototype has been coded in a parallel environment. I with help of my mentors handled to get to the stage where most of the functions are working. There is just missing completion of 
PR [3]<span></span>
 and possible check/fix of workspaces functioning. It is important to emphasize here that I'm talking about basic functionality. To provide a 
really user-friendly environment, many other things will have to be changed or reprogrammed. All those steps are summed up in the "Next 
steps" paragraph.</p><p><br></p>
<p>
<strong>Conclusion:</strong><br>
To follow the project idea I wrote for the GSoC application, I succeeded
 (with help of my mentors) to provide the first steps for a new era of 
Single-Window GUI. Those steps have a form of refactoring as well as a 
new parallel simple Single-Window GUI prototype. I believe it's one big step forward and I am looking forward to further development of which I 
would like to be a part.</p><p><br></p><p>
<strong>Next Steps:</strong><br>
All these following points assume that the main functionality is working. In other words, we must have a merged main refactoring PR [2] and a merged PR [3]<a href="https://github.com/OSGeo/grass/pull/1789" target="_blank"><span></span></a> aiming at the implementation of the AuiNotebook closing event. Then several improvements are possible (and probably necessary):
</p>
<ul><li>Enable undocking the Map Display notebook tab to a separate window. It will allow each user to use the Single-Window GUI as the 
Multi-Window GUI.
</li><li>Fix switching to the Console pane in an automatic notebook if any information is written there.
</li><li>Check/test if workspaces are functioning properly.
</li><li>Focus on a newly added Map Display tab in the Display pane (now it may not be clear at first glance that it has been added).
</li><li>Modify the appearance for the dark mode. Some parts are ugly 
and illegible (names of AuiNotebook tabs, names of panes, ugly gradients
 etc.).
</li><li>Add the option for starting GRASS as the Single-Window GUI => we want GRASS geeks to try it out. :-)
</li></ul><p>
Other improvements mainly concern the organization of widgets and possible ideas for the future:
</p>
<ul><li>It is necessary to change the rendering of the 3D View panel. 
Now the 3D View pane is added as another panel under the Display tab - 
very problematic in terms of space.
</li><li>A part of the Console pane in the startup Single-Window layout is not visible. We should completely reorganize the Console tab, such as
 the Output window and Command prompt data outputs go into two separate 
tabs.
</li><li>If both Map Display tabs are displayed side by side, the status bar cannot fit in the space. The solution is to create a separate 
dialog, which will contain a check box and other settings for the Map 
Display notebook tab.
</li><li>Each user should be able to choose a convenient layout of widgets and save this setting for future sessions. It should be possible
 via perspectives.
</li><li>Creating, saving, and selecting perspectives along with switching to dark mode could be part of a new tab menu called "View".
</li></ul><p>Permanent links and screenshots can be found at [4] and [5].</p><p><br></p><p>[1] <a href="https://trac.osgeo.org/grass/wiki/wxGUIDevelopment/SingleWindow" target="_blank">https://trac.osgeo.org/grass/wiki/wxGUIDevelopment/SingleWindow</a></p><p>[2] <a href="https://github.com/OSGeo/grass/pull/1675" target="_blank"><span>​</span>https://github.com/OSGeo/grass/pull/1675</a></p><p>[3] <a href="https://github.com/OSGeo/grass/pull/1789" target="_blank">https://github.com/OSGeo/grass/pull/1789</a></p><p>[4] <a href="https://trac.osgeo.org/grass/wiki/GSoC/2021/SingleWindowLayout#FinalReport" target="_blank">https://trac.osgeo.org/grass/wiki/GSoC/2021/SingleWindowLayout#FinalReport</a></p><p>[5] <a href="https://trac.osgeo.org/grass/wiki/GSoC/2021/SingleWindowLayout#BrandnewScreenshotsofSingle-WindowGUI" target="_blank">https://trac.osgeo.org/grass/wiki/GSoC/2021/SingleWindowLayout#BrandnewScreenshotsofSingle-WindowGUI</a></p><p><br></p><p><span style="font-family:Arial;color:rgb(0,0,0);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap">Best,</span></p><p>Linda Kladivova<br></p></div></div></div>_______________________________________________<br>
grass-dev mailing list<br>
<a href="mailto:grass-dev@lists.osgeo.org" target="_blank">grass-dev@lists.osgeo.org</a><br>
<a href="https://lists.osgeo.org/mailman/listinfo/grass-dev" rel="noreferrer" target="_blank">https://lists.osgeo.org/mailman/listinfo/grass-dev</a><br>
</blockquote></div>