Crankedup.com

 World Time Bar Source Code in C#
The source code for my World Time Bar freeware application. This application is still in beta and I am looking for feedback. The code exists as a C# Visual Studio .NET 2002 solution targeting the Microsoft .NET Framework 1.0 SP2.

Bugs:

  • Extreme slowdown when removing cities from database in the City Editor dialog.

Improvements Needed:

  • Save & Load City Database between launches (Save should only occur when leaving City Editor)
  • Remember window position between launches
  • Save & Load preferences
  • Discern format of OS Default Time Display (figure out if the default is 12:00 AM/PM or 24:00 - manual overriding of format is already possible from the Options dialog)
  • Resize main window width based on OS Default Time Display (this already works if the user wants to override the default from the Options dialog)
  • Use declaritive security to ensure app has necessary code access permissions at launch (read-only registry access, isolated storage)
  • Present user with dialog box when error occurs

Beta 3 [Click to Download the Visual Studio .NET 2002 C# Solution] 317 KB, Posted 2003-02-24

 
Click to Download Time Zone Conversion Classes for Microsoft .NET 1.0
Download:
C# .NET Time Zone Conversion Classes
timezone_2002-12-01.zip

This C# library for the Microsoft .NET Framework is based on an existing library by Anson Goldade (original version available from GotDotNet) and discussed in this forum thread. Anson's library is very capable but I needed to make a few changes to the classes to properly support my application.

This library is necessary because neither the System.Globalization namespace nor the System.TimeZone class support any TimeZone information except for the local machine settings. No conversions between different time zones are possible with either 1.0 or 1.1 of the .NET Framework. This library makes use of Win32 API functions documented in the Microsoft Platform SDK.

Anson's original description:

Converts local time in one time-zone to local time in another (or UTC). Resembles the TimeZone object in .NET but adds the conversion functions. Uses WindowsAPI functions on the platforms where they are available and when not available, the calculation is done manually.

The original library implements a C# struct for most functions because the struct is required for compatibility with the Win32 API calls. This struct is extremely well done but proves unwieldy when new fields and properties need to be added. For my needs, I have kept the original struct but moved almost all of its functionality into a new class. I keep the struct only as a means for compatibility with the Win32 API's. The new class contains the struct as a private member and adds a name member, ToString() function, CompareTo() functions, IComparable interface plus a few small bug fixes. Adding the name property allows a TimeZoneInfo object to provide a Daylight Savings Time neutral name. Hopefully Anson will incorporate some of these changes into his next release.

There is still a lot of room left for improvement in my additions to these C# classes. I hope to add serialization support in the near future as well as some much needed error checking.

 
 RTFTools for 4D
A small source code library that I wrote several years ago for the 4th Dimension database environment to enable developers to produce RTF documents quickly. Because 4D does not offer any native rich text support this library offers a simple and no-cost way for 4D-based database solutions to produce reports and pre-merged Word documents that are otherwise not possible.