Changes between Version 5 and Version 6 of wxGUIDevelopment/SingleWindow
- Timestamp:
- 04/07/21 10:09:46 (4 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
wxGUIDevelopment/SingleWindow
v5 v6 35 35 36 36 Figure 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)]] 38 38 39 39 GRASS GIS Layer Manager contains the Menu from the top, then three dockable toolbars Workspace, Tools, and Misc (see figure 2). 40 40 41 41 Figure 2: Dockable toolbars in version 7.9 42 [[Image( )]]42 [[Image(dockable_toolbars.png)]] 43 43 44 44 The 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). 45 45 46 46 Figure 3: individual tabs - from left Data, Display, Modules, Console, Python, and 3D view 47 [[Image( )]]47 [[Image(tabs.png)]] 48 48 49 49 In 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. … … 53 53 54 54 Figure 4: Designed Single Window Layout 55 [[Image( )]]55 [[Image(single_layout_option.png)]] 56 56 57 57 The 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. … … 60 60 61 61 Figure 5: AUI demo - display of Map Displays tabs side by side 62 [[Image( )]]62 [[Image(split_displays.png)]] 63 63 64 64 Around 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. 65 65 66 66 Figure 6: AUI demo - another arrangement of dockable panes 67 [[Image( )]]67 [[Image(another_layout_option.png)]] 68 68 69 69 Panes 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). 70 70 71 71 Figure 7: AUI demo - panes minimization 72 [[Image( )]]72 [[Image(all_panes_minimized.png)]] 73 73 74 74 As 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.