= Mini project 2022: Redesigning a map display status bar combo box into a new settings dialog = || Title: || '''Redesigning a map display status bar combo box into a new settings dialog''' || || Student Name: || Linda Kladivova || || Organization: || [http://www.osgeo.org OSGeo - Open Source Geospatial Foundation] || || Mentor Name: || Anna Petrasova, Martin Landa, Vaclav Petras || || !GitHub Repository: || [https://github.com/lindakladivova view repository] || || Budget: || 1000 € (via GRASS GIS [https://grasswiki.osgeo.org/wiki/Student_Grants Student Grants]) == Abstract == The project builds on the work started within the GSoC 2021 project called First steps towards the GRASS GIS Single-Window GUI. Within this coding period, a simple prototype of Single-Window GUI was proposed and partly implemented. It looks good at first glance from screenshots, however, there are many shortcomings and missing features that need to be removed/implemented to provide the Single-Window GUI layout as an optional mode in version 8.2.0. == Goal == The core part of the work will be devoted to the reorganization of the map display status bar. At the moment, the status bar at the bottom of the map display window consists of a text section, a combo box, a mask and a check box. For the Single-Window GUI, the number of widgets must be reduced so that the check box on the right side of the status bar is not shrunk. The solution is to cancel the combo box occupying too much space and implement a new settings dialog accessible from the top map display toolbar. So, the goal of the project is to create the fully functional testable Single-Window GUI mode which addresses the map display window settings through a new dialog. A nice description of how it could look like is here: https://github.com/OSGeo/grass/issues/2017 . == Timeline == {{{#!th style="background: #ddd" rowspan=2 '''Time Period''' }}} {{{#!th style="background: #ddd" colspan=2 '''Milestones''' }}} |----------------------- {{{#!th style="background: #ddd" Tasks }}} {{{#!th style="background: #ddd" Status }}} |----------------------- {{{#!td January 3 - January 9 \\ ''Week 1'' }}} {{{#!td '''New Map Display settings dialog''' - Create Map Display settings dialog accessible from Map Display toolbar and move checkbox items there, see https://github.com/OSGeo/grass/pull/2031 }}} {{{#!td \\ WIP \\ }}} |----------------------- {{{#!td January 10 - January 17 \\ ''Week 2'' }}} {{{#!td '''Mask widget''' - Move mask to main statusbar }}} {{{#!td \\ TBD \\ }}} |----------------------- {{{#!td June 17 - June 23 \\ ''Week 3'' }}} {{{#!td '''Use defined projection checkbox''' - Move Use defined projection checkbox to Map Display settings }}} {{{#!td \\ TBD \\ }}} |----------------------- {{{#!td January 24 - January 30 \\ ''Week 4'' }}} {{{#!td '''Projection settings''' - Move Projection settings in GUI settings to the new Map Display settings }}} {{{#!td \\ TBD \\ }}} |----------------------- {{{#!td January 31 - February 6 \\ ''Week 5'' }}} {{{#!td '''Customize statusbar from Map Display settings''' - create radiobuttons in Map Display settings for customization statusbar widgets }}} {{{#!td \\ TBD \\ }}} |----------------------- {{{#!td February 7 - February 13\\ ''Week 6'' }}} {{{#!td '''Customize statusbar from Map Display settings''' - create radiobuttons in Map Display settings for customization statusbar widgets - remove statusbar combobox }}} {{{#!td \\ TBD \\ }}} |----------------------- {{{#!td February 14 - February 20 \\ ''Week 7'' }}} {{{#!td '''Merge Coordinates and Go To''' - merge Projection and Go to statusbar widgets to one general widget }}} {{{#!td \\ TBD \\ }}} |----------------------- {{{#!td February 21 - February 27 \\ ''Week 8'' }}} {{{#!td '''EPSG text widget''' - Add EPSG text widget to map display statusbar }}} {{{#!td \\ TBD \\ }}} |----------------------- {{{#!td }}} |----------------------- == Weekly reports == == Week 1 == '''1) What did I complete this week?'''\\ This week I worked on the new Map Display settings dialog which is accessible from the Map Display toolbar. I created a separate file for this purpose and proceed to move checkboxes from the Map Display status bar there - Render, !AlignExtent, Resolution, and !ShowRegion. The Render checkbox is also still accessible through the status bar, however other checkboxes were removed from the status bar combo box and are further available only from Map Display settings, for more info please see https://github.com/OSGeo/grass/pull/2031. Furthermore, I and Tomas Zigo managed to fix the closing event for the Map Notebook tab in the Single-Window GUI (see https://github.com/OSGeo/grass/pull/2072). [[Image(mapdisplay_settings.png, 400px, title=Figure 1: Map display settings after https://github.com/OSGeo/grass/pull/2031, align=center)]] '''2) What am I going to achieve for next week?'''\\ Now it's time to move more complicated items from the status bar combo box. First I am gonna start to work on the Mask which will be newly placed to the main window status bar. It seems like a more complicated task. '''3) Is there any blocking issue?'''\\ No, it isn't. == Week 2 == '''1) What did I complete this week?'''\\ This week I have worked on moving the Mask widget to the main status bar (https://github.com/OSGeo/grass/pull/2089). It has shown to be quite a complicated task because we need to change the way of how the Mask in status bar is updated. In addition, I have opened the PR on moving the "Use defined projection" checkbox to our new Map Display settings dialog (https://github.com/OSGeo/grass/pull/2087). '''2) What am I going to achieve for next week?'''\\ I am gonna finish the above-mentioned PRs. There is still quite lots of work and thinking - mainly on Mask. '''3) Is there any blocking issue?'''\\ No, it isn't. Just regarding the rest of the week :-) - I am leaving for the weekend skiing holiday today so I will start working again on Monday.