Changes between Version 5 and Version 6 of wxGUIDevelopment/SingleWindow


Ignore:
Timestamp:
Apr 7, 2021, 10:09:46 AM (3 years ago)
Author:
lindakladivova
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • wxGUIDevelopment/SingleWindow

    v5 v6  
    3535
    3636Figure 1: Illustration of several open Map Display windows and their associated Map Display tabs.
    37 [[Image(file:///C:/Users/kladivoval/Documents/single_layout/rada.png)]]
     37[[Image(several_map_displays.png)]]
    3838
    3939GRASS GIS Layer Manager contains the Menu from the top, then three dockable toolbars Workspace, Tools, and Misc (see figure 2).
    4040
    4141Figure 2: Dockable toolbars in version 7.9
    42 [[Image()]]
     42[[Image(dockable_toolbars.png)]]
    4343
    4444The most spatially extensive widget is a notebook, which in a standard 2D projection contains 5 tabs - Data, Display, Modules, Console, and Python. When switching to 3D projection, this number is increased by the 3D view tab (Figure 3).
    4545
    4646Figure 3: individual tabs - from left Data, Display, Modules, Console, Python, and 3D view
    47 [[Image()]]
     47[[Image(tabs.png)]]
    4848
    4949In addition to the Data Catalog, the Data tab also contains the Data Catalog toolbar and the infobar object. Similarly, the Display tab now has its own group of buttons - Display toolbar. Buttons previously available through the main dockable toolbars at the top of the Layer Manager have been moved to these tabs. Thus, in version 7.9, each tab forms a certain whole which will be further preserved for a single layout.
     
    5353
    5454Figure 4: Designed Single Window Layout
    55 [[Image()]]
     55[[Image(single_layout_option.png)]]
    5656
    5757The design is based on the ''wx.Aui.Manager'' class, which is the central class of the AUI class framework. In this class, we create so-called panes i.e. panels with docking and floating behavior (more [https://wxpython.org/Phoenix/docs/html/wx.aui.AuiManager.html]). wx.Aui.Manager is not a new concept in GRASS. As we can see in Figure 2, it is already used for creating dockable toolbars in the upper part of the Layer Manager and in the Map Display. These tabs, as well as the Menu bar at the top of the software, will remain the same as in version 7.9.
     
    6060
    6161Figure 5: AUI demo - display of Map Displays tabs side by side
    62 [[Image()]]
     62[[Image(split_displays.png)]]
    6363
    6464Around the central map notebook, there are 5 dockable panes in a standard 2D projection - Data Catalog and Display on the left, Modules, Console, and Python on the right. When switching to 3D projection, this number is increased by the 3D view tab - which is displayed in the left part under the Display panel. Dockable panes can be pulled out and rearranged according to user's own preferences. One example can be seen in Figure 6.
    6565
    6666Figure 6: AUI demo - another arrangement of dockable panes
    67 [[Image()]]
     67[[Image(another_layout_option.png)]]
    6868
    6969Panes can only be maximized and minimized. The situation after minimizing all panes can be seen in Figure 7. Closing panes in the case of GRASS does not bring any special plus in my opinion - after closing it is usually hard to find and reopen the tab (hopefully the reader will tell me the truth :-)) and it would also involve the implementation of a check box mechanism to the menu bar as e.g. in QGIS. GRASS has most functionalities in the form of separate modules, which means that the number of tabs is a maximum of 6 (unlike QGIS having almost 20 tabs).
    7070
    7171Figure 7: AUI demo - panes minimization
    72 [[Image()]]
     72[[Image(all_panes_minimized.png)]]
    7373
    7474As I have mentioned above, each tab in version 7.9 forms a certain whole. The buttons in the Data Catalog toolbar in the Data tab are used to organize the data in this tab. Similarly, the Display tab has its own toolbar, which is used to add, delete, and further organize the layers displayed in Map Display. However, the disadvantage of this solution is that the Data Catalog toolbar and Display toolbar cannot be part of the respective panel in their original length, as they are too long. Therefore, there would have to be either placed horizontal toolbars on top of each other in the given panel or inserted one vertical toolbar on the left. Personally, I am more inclined to the option of creating two horizontal toolbars.