Moving from MZ-Tools 3.0 to 8.0 Part 3: One top-level menu, two toolbars

One of the goals for MZ-Tools 8.0 was to improve the usability accessing its features, that is, its buttons. In particular, each feature should require less clicks to be reached. In MZ-Tools 3.0 the MZ-Tools menu was a submenu of the Tools menu, but in MZ-Tools 8.0 it has been moved to a top-level menu:


However, most people prefer to have the most used features at one click of distance using a toolbar. In MZ-Tools 3.0 there was a single “Main” toolbar, and it had a dropdown menu with “Other Utilities”. One common request was to move buttons from the “Other Utilities” dropdown menu to the “Main” toolbar, something that was not possible. So, in MZ-Tools 8.0 there are two toolbars: “Main” and “Other Utilities”:

Two toolbars

Initially they are in separate rows by default, but you can place them in the same row, depending on the width of your screen. As a side note, buttons on toolbars and menus are now provided with “true color” (even in VB6/VB5) and not with 16 colors.

Some people wanted to create its own toolbar with the most used commands, something that it is not possible with VB6/VB5/VBA add-ins, because while you can move the buttons, they are “disconnected” from the add-in or customizations are lost after shutdown, because add-ins create all the buttons when loaded and destroy them when unloaded. MZ-Tools 8.0 provides a workaround to create your own customized toolbars, just allowing you to hide the buttons that you don’t want to be visible, not only on the “Main” toolbar like in MZ-Tools 3.0, but also on the new “Other Utilities” toolbar and on the context menus of the Project Explorer, code window, etc. This is done through the “Options” window, “Personal Options” tab, “Toolbars and Menus” section:

Toolbars and Menus Options

Hiding unused buttons allows you to get smaller toolbars that you can place in the same row even in small screens. At this time, it is not possible to change the order of the buttons on a toolbar, but it is something that could be implemented in a future release.