ExpenSplit


The above post was where ExpenSplit was referenced for the first time. It has been updated a few times after that (even made public as a CPP!) and this page will try to capture those changes.

v1.0 Release 1 was the first non-zero version I shared with my Superpartner. The 'zero' version can be seen in the video embedded in the post above and do note that the name is different there. Actually even the v1.0 had a different name as seen below:

v1.5 Release 2 finally got the current name. It also got a major overhaul of the GUI, algorithm and functionality (these haven't changed much in the newer versions). But this version was still exclusively available only to Her so the next version should be treated as the 'real' introduction of this program.

v1.6 Release 3 got a unique GUI background instead of the bland grey panels seen in the other programs. It also inherited all their bells & whistles like a splash screen:
The streamlined Java wrapper for the MATLAB executable was used to display the startup time at the bottom left of the GUI window. Separate 32-bit & 64-bit programs were provided, which would be updated accordingly. As far as functionality goes, there were barely any tweaks.

v1.7 Release 4 was compiled and packaged entirely from within MATLAB R2014a so that there would be only one executable file to run. This choice was made because the new compiler adds splash screen to the program itself and not just the installer.
This also sadly meant that the Java wrapper was not used anymore to display the startup time in the GUI window. Other (minor) tweaks might have been made.

v1.7.2 Release 5 introduced updated GUI with nicer resizing behaviour of the table columns! It was compiled using MATLAB R2015a which sadly meant one had to deal with a new (and larger than before) MCR. The 'Update' button was no longer permanent. It appeared at its usual place only if an update (or no internet connection) was found during startup so the startup time was slightly longer than before.

v1.8(.4) Release 6(E) introduced revamped GUI matching the look-&-feel of other programs (listed above). This meant that the 3 tables were stacked inside a single panel and the 5 buttons at the bottom of the GUI (along with the 'Update' button) were relocated to a toolbar. A progress bar was shown during startup but no check for an update was made anymore. Apart from other minor GUI & Code changes, a major change was that (all) the errors were 'caught' (instead of the program just sounding off an annoying 'ding') and all the gory details were displayed so that debugging could be facilitated. This version was compiled with MATLAB R2016a/18b and no reference to 'x64' was made anywhere.

v2.0 Release 7 migrated the GUI based on GUIDE to AppDesigner. This meant a slightly tweaked GUI with almost the same functionality. Most visible tweaks were that the figure toolbar had become the menubar, and the leafy background was removed. [A couple of features involving flexible grids and setting of minimum widths for grids had to be removed as they were not (are still not) supported in AppDesigner.] This version was compiled with MATLAB R2019a (continuing till R2022a)!

v3.0 Release 8 was a major upgrade. Almost all aspects of the program were tinkered with. See this post for all the changes / updates introduced in this release. A major change not discussed in that post was the introduction of new icon and splash screen (consistent with the new features):
Splash Screen for v3.0
This version was compiled with MATLAB R2022b/23a.

v3.2 Release 9 is a minor upgrade but includes a major feature update: Unequal sharing / splitting. Also the GUI (re)implements flexible grid (remember the times before the migration to AppDesigner!) so different tables can be resized as needed. A few other minor bug fixes and code enhancements may have happened too. This version is compiled with MATLAB R2023b/24a so new MCR needs to be downloaded again!

No comments:

Post a Comment