It’s been over a year and a half since the last major release, but this update definitely deserves it. WeatherLog’s interface hasn’t changed much since the first releases; it’s always been a menu-driven application that displays it’s data in lists and tables, usually organized through tabs. While this was perfectly usable, it resulted in a user experience that was often not very streamlined, with plenty of redundancy and a lack of organization. I’ve worked to continually minimize this to a degree, but it’s always been there.
That’s why I decided to work on an update that focused entirely on the UI. Almost nothing was untouched by this update. Nearly every dialog was simplified or reorganized, and in many cases made to visually look better.
A couple ideas in particular were the main motivators for WeatherLog 5.0. First, related functionality was combined as much as possible, as long as it would still make sense. For example, dataset management was previously done through five different dialogs, but because they all used the same interface (only different button text really), this could be reduced to one centralized dialog. Second, I moved all the windows to use GTK+’s header bars, which allows titles, toolbars, and menus to be combined into one simple compact title bar.
Here’s a showcase of some of the changes. The main view shows possibly the most dramatic change. The new interface is on the left, with the old on the right. (Click images to zoom.)
The menu bar and tool bar are completely gone; the buttons and functionality have simply been moved into the header bar. The tab switcher has been changed to a stack switcher so that it can be repositioned and have nice fancy transition animations. The search feature has been completely removed from dialogs, and instead incorporated directly into the header. Instead of the entire title being used to show the dataset name, it is now displayed on the dataset switcher button. There is still a GNOME-style app menu, but it’s display depends largely on the desktop environment of the user.
Other windows received similarly large changes. The Current Weather feature now shows an improved location selection in the same dialog as the data, allowing multiple searches from the same instance. The title is replaced with a stack switcher here as well.
The dataset management features are now in one dialog, with a simplified and cleaner display.
The new Preferences dialog is cleaner and better organized, with headers and extra spacing for clarity.
Other dialogs received less drastic changes. All were changed to use header bars, and in general there is now a greater focus on readability.
- All applicable windows and dialogs now use header bars.
- Weather dialog now includes location selection.
- Improved appearance of Weather dialog.
- Data Subset changes::
- Data Subset now allows multiple conditions for the same field.
- “Date” is now a valid subset field.
- Removed Data for Selected Dates. This functionality now exists as part of Data Subsets.
- Adding a condition now longer clears the condition input fields.
- Info, Charts, and Graphs dialogs are now merged into a single dialog.
- Removed Merge Datasets. This functionality is already covered by Copy Data.
- Removed the help.
- Enter key in dialogs should now activate the most used response.
- Combined search into the header bar.
- Change default case sensitivity to insensitive.
- Increased default window heights and widths.
- Added the app menu; removed the other menus.
- Added spacing to many dialogs.
- Search results dialog now shows the search term.
- Change Add Data autofill notification to display as a notification bar instead of a dialog.
- Renamed “General” info to “Overview”.
- Data columns are now resizeable.
- Redesigned Preferences dialog.
- Removed options:
- “Show dates in title”: no longer works with new header system
- “JSON indent” and “JSON indent amount”: not something that should be exposed user side.
- “Forecast period”: was not respected by OpenWeatherMap; did nothing.
- Added new dataset management window.
- Transitioned application class to GtkApplication.
- Removed no longer used dialogs and functions.
- Removed confirm_exit.
- Fixed Data in Range continuing when the close button had been pressed.
- Fixed Import throwing an error when the user tried to import a file in the wrong format.
- Fixed import errors.
- Fixed search insensitive case not working when the search term was not all lowercase.
Downloads and code are available on Github.
Project page: https://github.com/achesak/weatherlog
Release page: https://github.com/achesak/weatherlog/releases/tag/v5.0