Day 021 - The specific controls
I worked my way through the specific controls today, giving each a quick trial.
The calendar control seems to work well and has a nifty month/year toggle that makes it really easy to jump from month to month and year to year.Â
I was less impressed by the calendar control, which seemed to lack configurability, at least within the WinDev IDE. Perhaps more can be done via code.Â
The scheduler is essentially an organizer applied to more than one resource:
The organization chart is more than a simple report - you can interact with the chart and add/delete elements.Â
I think treemaps are pretty cool, although I have to admit that the only time I've ever used on personally is when running a disk space analysis tool like WinDirStat. Maybe if they're this easy I'll find other uses.
The carousel creates animated images/menus. You can't see it because this is a screen shot, but the images are in constant motion:
I'm a little skeptical about this control - it seems gimmicky. But the more user interface options the better, I suppose, as long as you use them with care.
I'm somewhat more skeptical about the rotating cube object, which looks kinda cool but seems mostly pointless. This one also took a long time to load up the first time I ran it, presumably because it relies on .NET 3.0 and had to load some libraries.Â
I can see Hide/Show being useful as a alternative (or supplement) to tabs.Â
You can draw primitive shapes with the Shape control.
Bar code support is included. Available types are:
- QR
- UPC-A
- UPC-E
- EAN8
- EAN13
- Code39
- Code93
- EAN128
- DATAMATRIX
The following types are also available but only for the prints performed via iPrintBarCode:
- Codabar
- Code11
- EAN128
- Interleaved 2 of 5
- MSI
- PDF417
Standalone scroll bars are included in this section, although they seem to me like they belong with the standard controls.
Range sliders are pretty interesting. You can move the slider as usual, but you can also increase/decrease the side of the "thumb" area. In this screen shot I've manipulated the range sliders to distort and zoom the right-hand image as compared to the original on the left.Â
Spin boxes, like sliders, are listed in this section but are really just common controls.Â
A variety of rating controls are available. I kind of like the percentage rating, which you can drag to a new value.Â
There's a webcam control that will record video, but I don't have a camera set up on this machine so I couldn't try it out.
On page 202 the tutorial mentioned the Conference control:
A Conference control is used to view and/or to listen to a video and/or sound in real time. This allows two users to communicate between themselves. The image and the voice of each user are transmitted in real time on each connected computer.Â
There's a separate project demonstrating this control, but when I loaded and tried to run it I got an error telling me the conference control is not available on Windows (or at least the version I'm running):
Digging around in the online help I discovered this note:Â
Caution: Conference controls are not supported anymore starting with Windows Vista.
Ah well, with Skype and the rest who needs to bother with a custom solution?Â
The HTML control displays a web page in a window. I don't think this is using IE because while IE displays the WinDev home page just fine, the HTML control warns of a script error:
WinDev has ActiveX/OLE controls, and comes with examples for Word, Excel and others. The code for using these controls seems pretty straightforward; you create a control instance and then you call methods/set properties.Â
On the OLE side, a WinDev application cannot be an OLE server, and only versions 1 and 2 are supported. An OLE control can only contain a single OLE object.Â
There are toolbar and ribbon controls.Toolbars have been around long enough that they're really standard controls; ribbons are somewhat newer.
There's a sidebar menu control, although I think these are now considered passé.Â
What isn't passé is XAML, Microsoft's user interface markup language. WinDev does include a basic XAML control.Â
There are just three XAML functions: XamlDisable, XamlEvent, and XamlProperty. Interestingly, XamlProperty applies to both Xaml and Carousel controls, indicating that the Carousel control itself is a XAML control.Â
If you're not familiar with XAML you may want to do some reading. There are a lot of UI markup languages out there, but for the Windows platform (especially for desktop development) XAML is compelling stuff.Â
That's it for the controls. Tomorrow, ergonomics and visual appearance. Â