Introducing the “Welcome to Xojo” Bundle!

New to Xojo and looking for guidance? We've put together a terrific bundle to welcome you! Xojo Bundle

This bundle includes six back issues of the magazine -- all of year 21 in printed book and digital formats -- plus a one-year subscription (beginning with 22.1) so you'll be learning all about Xojo for the next year. It's the perfect way to get started programming with Xojo. And you save as much as $35 over the non-bundle price!

This offer is only available for a limited time as supplies are limited, so hurry today and order this special bundle before the offer goes away!

Article Preview

Buy Now

Issue 4.4


DW Toolbar

Issue: 4.4 (March/April 2006)
Author: Greg Fiumara
Article Description: No description available.
Article Length (in bytes): 4,108
Starting Page Number: 8
Article Number: 4402
Related Web Link(s):


Full text of article...

The graphical user interface is all about accessing and processing information quickly. Within any program, graphics, or some other user interface element must be present in order to allow the user to proceed with tasks. Over the years, there have been several trends of popular elements, spanning from palette windows, to contextual menus, and now to NSToolbars. Even the REALbasic IDE uses a toolbar! Although REALbasic provides out-of-the-box support for such toolbars, their capability range is quite limited. It is with such devotion to the toolbar element that DarkWorks has released DW Toolbar to the RB community.

The first thing anyone will notice about this implementation of the Cocoa-esque toolbar is that a popup menu and an editfield are included in DarkWorks' example project. In fact, any kind of control can be embedded into the toolbar, providing for some very interesting and innovative tools. The more support the better, and REALbasic currently does not provide this type of support without subclassing as DarkWorks has done.

It is very easy for the user of a DW Toolbar-using application to resize or customize the toolbar from the developer suggested default setup. The developer has built in contextual menu support for changing icon and text size. Command-dragging rearranges toolbar elements from the running environment. Alas, DW Toolbar behaves --- for the most part --- just like a standard NSToolbar from a Cocoa development environment.

Although it is hard to argue or beg for more features in a free software item like DW Toolbar, some improvements may enhance its functionality. An example would be with menus within toolbar items, similar to a menu stemming from a "forward" or "back" button in a web browser. NSToolbars display the menu from a fixed position, near the triangle of the button. DW Toolbar uses a contextual menu to display the menu, and therefore the options list appears at the exact X, Y coordinate of the mouse pointer. Although this may be more convenient for the user, it is not expected behavior. Additionally, collapsing or expanding the toolbar is very cumbersome and awkward. It consists of resizing the window and then having the toolbar elements "disappear."

Another aspect many may dislike about this toolbar is that it adds around 300 kB to the compiled application, whereas REALbasic's built-in toolbar hardly adds to file size at all. Although 300 kB is nothing in today's world of broadband Internet and DVD storage, it is still a price to pay, and a burden on users who may not keep their technology up-to-date. There is little DarkWorks or anyone can do to correct this problem, except pressure REALsoftware for better toolbar support.

Nothing in this world is perfect, though many things come close. DW Toolbar from DarkWorks is one of those items that comes close. Inline comments assure developers that work on this control will continue in the future.

End of article.