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 2.3


ResizeWidget 1.4

Issue: 2.3 (December/January 2003)
Author: Greg Fiumara
Article Description: No description available.
Article Length (in bytes): 3,914
Starting Page Number: 9
Article Number: 2304
Related Web Link(s):


Full text of article...

In an age where too little information is unacceptable, one begins to wonder how they should organize their information. What is true of our world is also true for the users of your applications. When a user launches an application, they do not want to have to search around for advertised features or information that they need right away. As the developer, you need to accommodate these needs. That is just one of the many reasons why ResizeWidget from Quantum Meruit Software was written.

ResizeWidget is a Canvas-based window splitter control. Similar to applications like Mail.app and the code editor in REALbasic, ResizeWidget allows the user to resize and reposition objects within a window, such as EditField and ListBoxes, just by dragging on a piece of the window. With this solution, it is easy to cram much information into one window. Although having ResizeWidget may be similar to having a TabPanel or PagePanel in a window, the flexibility and overall look of a window splitter is much more appealing.

Setting up ResizeWidget for use in an application is quite simple. All one needs to do is create a Canvas and set its super to "ResizeWidget," one of many classes that must be imported into the project. Then, shift-command-drag an object binding from any control to the Canvas, and you are done! There is no code to write, unless the application uses an interface element whose top property is not zero. All other information needed, such as the maximum height and the appearance of the window splitter, is customizable in the Properties window.

ResizeWidget, like any other program or development aid, is not perfect. Although ResizeWidget is "just a window splitter," it is not up to standards with others. One noticeably missing feature is the lack of being able to have the widget automatically resize the controls to the maximum amount when double-clicked, as seen in Mail.app and various other applications. ResizeWidget is still in the 1.x stages. However, from the included documentation, which explains the various properties of the control, new features may appear later. In addition, the ResizeWidget class is encrypted and thus one cannot learn from the code after purchasing a license. Various "extras" such as automatic support for window splitter mouse cursors, the ability to have custom widget icons, and live resizing are added bonuses. Cross platform compatibility is another plus. On the test machine, the various controls that ResizeWidget was bound to resized very smoothly.

ResizeWidget fares well against other window splitter controls for REALbasic. One such control would be GrowBox from Alfred Van Hoek. GrowBox acts like an extra grow icon for a window within the window itself. While GrowBox has its pros, ResizeWidget's ease of setup and use may make it better for use in your project.

End of article.