Release Notes

 (Ancient History)

Ver 1.10 Beta - Build 127 (12/14/2004):
- Changed the edit boxes for the messages on the alert network client and send email actions so it would wrap the text at the end of the edit box.
- The graphics for the demo window and the main control window were put on top of a button, but the button kept popping through. This is fixed now.
- Fixed a problem (possibly not released at all) where the message below "Thanks for evaluating..." wasn't getting updated properly.
- Changed the auto update so it only downloads files that are newer than those on your system.
- Made a change so that if you save the control file as a name without an extension, it will default to ".xic". 

Ver 1.10 Beta - Build 126 (12/10/2004):
- Changed the program to be more effective in the event of X10 collisions.
- Added the Home Domination (TM) logo to the main control window. If clicked, it will bring up the website.
- Added the Home Domination (TM) logo to the demo window and added a Buy Now button that will bring you to the buy now page of the website.
- Changed the install to be able to start up Home Domination (TM) when finished.
- Fixed a couple things with sensor triggers so it's possible to make two macros act as a thermostat (one for on and one for off).
- I got a report that Home Domination (TM) was taking focus away from other programs every time a video snapshot was taken from a macro when the video tab was not displayed. I was never able to reproduce this problem on my machine, but I made a change which will hopefully solve this problem.

Ver 1.10 Beta - Build 125 (12/04/2004):
- It turns out that the change I made on the last build was causing incoming X10 codes to frequently get missed. I got that working again but then the switching didn't work at all. So in the interest of getting everyone running reliably again, I backed out that particular change, so now it is as it was before. So it's no longer tolerant of collisions, but it should at least function again.

Ver 1.10 Beta - Build 124 (11/30/2004):
- Changed the demo dialog so it doesn't show the auth code field right away unless you can't continue without it. Also added an "Enter Code" button to show that field on demand. 
- Added icons to the selection dialog that appears for selecting actions and for selecting triggers.
- Added some debug log messages (you won't see them) that will hopefully help me to fine tune Home Domination (TM) and make it more responsive.
- Fixed a problem with email commands where it may not send a reply email depending on what email program sent the command email. It should be fixed now though.
- If X10 activity is on the wire at the time an X10 command is sent, the serial communication gets hosed up. It used to be that the command would not get sent, and no error was logged. I fixed it though so it will log a warning message, try again approximately 5 seconds later, and keep trying until it succeeds. There is still a possibility a code could be missed, but it's not as likely now.

Ver 1.10 Beta - Build 123 (11/24/2004):
- The function name of "Temperature" wasn't being shown on the log.
- Fixed a problem with the "Log Macro Details" check box.
- Fixed a problem where clicking exit from the system tray icon wouldn't shut down properly (didn't save anything).
- Made it so you can type PWD instead of Password in email commands so there's less you need to type.
- Added a couple log messages so it would report if the reply to a command email was sent successfully or not.
- Added a log message for when a video snapshot is taken.
- Made the default size of the main control window larger.
- Changed it so if log macro details is unchecked on the log setup screen, the switches that are controlled by video devices will not be logged.
- Fixed a problem where the nag screen wasn't coming up when in demo mode. Made numerous other changes related to demo mode. Also made it so once the demo is over, it will continue to run, but the nag screen won't go away.
- Fixed a problem with video snapshots where if the path for the video wasn't specified, it included the program name in the base path, so it failed.
- Changed the "Stop Monitoring" button on the main control window to be "Exit" instead, since it was a bit confusing.
- The log message for macros that did switching weren't reporting the correct value for the "after" portion of the switching action.

Ver 1.10 Beta - Build 122 (11/19/2004):
- Fixed a problem where the Filter check box wouldn't work after the latest changes were made to the log.
- Fixed a problem where email commands wouldn't work properly if just the house and unit code were used (for example: set a9 on).
- When an email command was received, it incorrectly showed it as an error in the log.
- Fixed a problem with the network client install where it wouldn't put the program in the startup directory if requested.

Ver 1.10 Beta - Build 121 (11/16/2004):
- Changed the icons on the log file so they show the different functions detected by sensors or done by switches.
- Improved the look of many of the icons on the sensor, switch and log lists.
- Added many new log messages.
- Added icons to the sensors and switches window.
- Fixed a problem on the network client where the proper types were not getting sent for sensors and switches.

Ver 1.10 Beta - Build 120 (11/14/2004):
- Added graphics objects to the sensor and switch lists on the main control window showing what types of sensor or switch it is.
- Made it so the temperature sensors can log when the temperature changes by a specified amount.
- Changed the log format to be more consistent and added graphic objects showing the various types.

Ver 1.10 Beta - Build 119 (11/02/2004):
- Made it so you can enter a negative or decimal value for the compare data on a sensor trigger.
- Changed it so pins used for 1-wire are automatically set, and are not allowed to be changed from the U401/U421 item until the 1-Wire device is changed to a different pin, or removed.
- Changed the temp sensor device setup so you can add a sensor right from there.
- Solved a several minor problems related to Device Setup.
- Fixed a problem with the Day/Night Setup where unless you changed it wouldn't use the new settings after the program was restarted.
- Changed it so the temperature sensor display will update again if the window wasn't available when they were first updated.

Ver 1.10 Beta - Build 118 (10/25/2004):
- Fixed a crashing problem with deleting an IO sensor.
- Fixed a couple crashing problems with editing IO devices. One problem happened when automatically refreshing the tree after making a change. It would occasionally crash for no apparent reason. I added a refresh button instead, and for some reason it doesn't crash when the refresh button is pressed. It would be more convenient if it did it automatically, however at least it works reliably now.
- Added some graphics to the IO device list (a start to the "prettying up" initiative).
- Fixed a problem where when a macro ends, the triggers weren't getting reset, so it was possible that triggers would be missed later on.
- Changed the temperature sensor to be able to handle the DS18B20.
- Fixed a problem on the advanced video window where the JPEG quality would not save.
- On the Video Snapshot Storage window, the Filename Suffix field was editable and shouldn't have been. It's fixed now.

Ver 1.10 Beta - Build 117 (10/15/2004):
- The device.inf file was not up to date on the last release, so the USBmicro devices wouldn't function. It's been corrected now, however you may need to delete devices and re-add them if they were previously added.
- Changed it so if the USBm.dll file is not present, the program won't die.
- Finished changing the paddle switch for the new IO board scheme.
- Changed the sensors and switches dialog so after you add or change a sensor or switch, the list will stay pretty close to the same position it was before rather than going back up to the top.
- There were numerous places where editing the IO devices could cause the program to crash. The majority of these are fixed, however adding sensors from this dialog can still cause problems. 
- Changed the tree view in the IO device setup so it stays in the same state you last had it in. This was especially annoying when editing bits.

Ver 1.10 Beta - Build 116 (10/5/2004):
- Added support for USBmicro's U401 and U421 devices.
- Added support for 1-wire temperature sensors (DS18S20) using the U401/U421.
- The combo box on the video storage dialog was changed so you can only choose selected values rather than type what you like.

Ver 1.00 Beta 1 - Build 115 (8/23/2004):
- Split the Advanced dialog for video setup into Storage, Cleanup, and Advanced. The storage tab now allows you to make it put snapshots in a separate directory each day, week, month, or year. It also allows for static filenames for recent snapshots that can be used with web pages.
- Fixed a problem where if it deleted files based on quantity or size, it would delete the most recent files instead of oldest.
- Fixed a problem where the program could puke when switching from one control file to another.
- Changed the wording of "Trigger when status changes (and matches)" and "Trigger Once" to "Momentary" and "Trigger anytime status matches" and "Trigger anytime" to "Continuous".
- Added an "Observe DST" check box to the day / night setup window for whether or not to observe daylight savings time.

Ver 1.00 Beta 1 - Build 114 (8/15/2004):
- Fixed a problem with video where the program would crash (and sometimes the computer) after about 3200 pictures were snapped. It's working properly now.
- Put the title of each tab above the list in the tab so it's more clear which tab is active.
- Change the build process so it was more automatic and hopefully less problematic.

Ver 1.00 Beta 1 - Build 113 (8/5/2004):
- Changed the time trigger to have a recurring type of "Periodically" instead of "Hourly". Now you can choose the units in which to recur instead of just by hours.
- Changed the size of the Start Date control on the log setup screen.
- Added a help button to the main control window.

Ver 1.00 Beta 1 - Build 112 (8/1/2004):
- Removed the Show on Separate Dialog option when right clicking on the tabs since it isn't implemented yet.
- Added a button to automatically pop up a web site where you can get your latitude and longitude.
- Removed the button for picking a city since it's not done yet.
- Removed the toggle on/off option for switching since it's not done yet.
- Fixed a problem where the latitude and longitude fields were switched on the Day/Night setup window.
- Changed the latitude and longitude fields so positive or negative values can be entered instead of N, W, S, or E before the number.

Build 111 (7/29/2004):
- Changed the video source window so if you added a switch from that window, it would automatically select it.
- Fixed a problem where if you had multiple X10 cameras sharing the same video device, it wouldn't wait long enough after sending the switch code to turn the camera on. It also wasn't turning the other cameras for that video source off either.

Build 110 (7/26/2004):
- Fixed a problem where if it's the first time you ran the program, you wouldn't be allowed to create a control file.
- Changed the size of the columns in the various lists so they start out at better sizes. If you've already ran the program, you'll have to set up the sizes of the columns yourself however, sorry.

Build 109 (7/24/2004):
- Fixed a problem where if you didn't have a control file set up yet, it could blow up.

Build 108 (7/24/2004):
- Fixed a problem with video where multiple cameras share the same video hardware. Now if you have several X10 cameras attached, you can create a switch for each one that represents the camera and select it for the video source. When switching from one tab to the other, it will turn off the last active camera and turn on the new active camera.
- Fixed a problem with registration where some items were getting lost. Please register again!

Build 107 (7/20/2004):
- The column sizes on all of the child dialogs were not getting saved when exiting the program. It's fixed now.

Build 106 (7/18/2004):
- Changed the sensor, switch and macro tabs on the main screen so you can edit an item by double clicking on it.
- Fixed a problem with the email commands where it wouldn't dim the lights.
- Fixed a problem with the email commands where it wouldn't work if you had user accounts set up.
- Moved the filter button to the right instead of underneath so it would take up less screen realestate and is more consistent with the buttons on the other tabs.
- Added buttons on the sensor, switch and macro tabs on the main screen to move items up and down in the list. As of this build, they work somewhat but occasionally you need to click the move button several times to move it once.

Build 105 (7/10/2004):
- Changed the windows for selecting the sensor type, switch type, action type and trigger type to use show the selection items in a list and it displays a description of each item at the bottom. The action type selections are now in a tree form so they're easier to view.
- Changed the demo mode window and the beta mode window to be a litte more clear.

Build 104 (7/3/2004):
- Fixed a problem where newly added switches and sensors couldn't be controlled from the tabs of the main control window.
- Added online help for the Version Info and Registration windows.

Build 103 (6/29/2004):
- The Register button under Version Info / Registration Info now works.

Build 102 (6/22/2004):
- There was a problem where the little flashing house on the bottom right side of the screen could eventually get stuck, and I think it may be fixed now.
- Fixed a problem where the little house icon on the bottom right wouldn't flash on the main program.
- Removed an advanced button on the group trigger since that was for a feature that wasn't implemented yet and isn't likely to be soon.
- Changed it so if you pop up a second instance of the program it won't display as many error messages if you continue.
- Added an option to the play sound action to not interrupt any sounds that are currently playing.

Build 101 (6/15/2004):
- Fixed a lot of problems with the online help that I wasn't aware of before.

Build 100 (6/13/2004):
- Changed it so if users are set up, then a valid user name and password must be used on email command files.
- Made a change to the remote setup where it automatically picks a usable port as the default.
- Changed the network client so that the Automatically log in at startup option works, so now if it's not checked, it will display the setup dialog where you can choose which one to use.

Build 99 (6/06/2004):
- Changed the install to fix the shortcut to the help under Start / Programs / Home Domination
- Made it so the option to fill the log on screen with the stuff already in the log file at startup works.
- Added a logout button to the main control window.
- Changed the log in dialog box so it can be minimized.
- Added some help items.
- Updated web site to make it more search engine friendly.
- Removed the advanced button from the user dialog (for now).

Build 98 (5/28/2004):
- Fixed it so the auto update would work again.

Build 97 (5/26/2004):
- Added some help and updated the contents and index of the help. It's not done yet, but it's a lot better than it was.
- Removed the stop sensors from the advanced macro screen since it didn't work yet and the Start/Terminate Macro action that will be added will take care of that functionality in a better, more flexible way.
- Removed some non-working fields from the Log Setup that aren't likely to be finished before the build.

Build 96 (5/16/2004):
- If a video driver was corrupt and the program was in the startup group, the driver would crash the computer continuously until you could get the program not to run. Now it will detect when video crashed and ask if you want it disabled the second time.
- The network client was giving error messages if it was past 30 days, which shouldn't matter for the client.

Build 95 (5/12/2004):
- Fixed a problem with adding video where a time trigger could barf.
- Fixed a problem that happened when going into setup with no control file already.
- Fixed a problem when trying to add users for the first time.
- Fixed a problem when switching from a control file with video to one without.
- Fixed a problem where it wouldn't let you out of the dialog without canceling if you tried to add a buffered email.
- Changed the date and time controls on the time trigger to use actual date and time picker controls instead of just edit boxes.

Build 94 (4/30/2004):
- Fixed the install utility so it will add items to the program group and startup group.
- Fixed some problems with the dialog where your information is entered. Added a country field too.
- The processing to make the network client and IO board features optional has been added.
- Replaced a lot of hardcoded values with calls to a product info class.

Build 93 (4/23/2004):
- Fixed a couple problems with authorization codes.
- The processing to make video an optional feature has been added.

Build 92 (4/17/2004):
- Fixed a problem where it wouldn't write the security files on any operating system other than XP.

Build 91 (4/15/2004):
- Added a couple more message boxes to help find the problem Chris is having with the security stuff.

Build 90 (4/15/2004):
- Fixed a problem where the delay action was loading the unit and was always resetting it to 1 instead.
- Fixed a small memory leak
- Added some authorization code commands

Build 89 (4/13/2004):
- Changed the authorization code processing somewhat.

Build 88 (4/08/2004):
- It now uses external files to determine if the product is running as a demo or if the product was purchased.

Build 87 (3/30/2004):
- This is exactly the same as build 86 except the drop dead date is later.

Build 86 (3/11/2004):
- On the client, if you go into setup and click OK, it would clear everything out and try to send everything again, but it didn't resend the switches, sensors, or macros.
- The alert message was doing a case sensitive check against the user id, and it shouldn’t have taken the case into account. Alert messages could be dropped otherwise.
- There was a problem on the client when double clicking on a picture, the wrong picture would come up.
- Fixed a problem on the client where when first getting the pictures, it would get the oldest ones available instead of the most recent.
- There was a problem where the main program was sending all the thumbnails instead of the quantity the client asked for.

Build 85 (3/02/2004):
- Fixed a problem with the video thumbnails where they weren't getting removed when they should have been.
- Fixed a problem with the auto update when there isn't a control file or when auto backup is turned off.

Build 84 (2/25/2004):
- Fixed a problem where it would puke if starting the program from scratch with no registry settings or control file.
- Widened the default widths for the columns in list boxes.
- Changed a bunch of dialogs where the combo boxes should have been the drop list type instead of the drop down type (where you can type in them).

Build 83 (2/23/2004):
- Fixed a bunch of small problems with the auto update.

Build 82 (2/21/2004):
- Changed the auto update so it can download multiple sub-directories. Now the help file will get downloaded so the context sensitive help I added earlier should work.

Build 81 (2/18/2004):
- I added a lot of context sensitive help, however most of it is not complete yet.
- There was a problem where if a video source was shown on the top and the regular tab, it was getting confused.
- There's a problem where every time I do a "Show on Top" for a particular tab, it adds all the items to the tab again. That's because the dialog on top is requesting that the main program send the items, however all of the dialogs for that type are adding them in when they are received. I should either make it so the new dialog on top gets the data from the corresponding tab dialog, or make it so when any dialog requests data, it deletes data for all the dialogs of that type.
- Fixed a problem where the clients could receive duplicate snapshots if the top window had the video tab in it.
- Fixed a problem where if it was set up to take 3 snapshots (more than one probably), it would end up taking 6 snapshots with 2 duplicates for each time interval.

Build 80 (2/3/2004):
- Fixed a problem with video where the video preview wouldn't work when on the top of a split screen.
- Fixed the problem with the popup menu and made it so you can right click on a tab that is't the current tab and it will work properly.

Build 79 (1/31/2004):
- Made it so you can right click on a tab to display a different tab’s data on the top. It’s a little funky yet. It doesn’t display the menu right away, but instead displays a small box that you have to click on, then you can click the “Show On Top” option. It will only show the tab that is currently selected though, not necessarily the one you right click on. I’m still trying to figure out how to solve these problems yet.
- Mostly finished the action that takes a snap shot or video. Now the delay before snapping a picture works, and it can take several snapshots each time triggered with a user settable delay between them.
- I changed the default for the access type of the user info so it any unused bits will defaults to on. There was a problem when I added video authority where no existing user would be given authority to view video or take snapshots. This will continue to be a problem for any existing users, although authority can be explicitly given to existing users, however all new users will be given that authority by default, and this will not be a problem the next time I add an access type.

Build 78 (1/26/2004):
- Changed the email action so it makes sure it will work. It doesn't let you hit OK until everything required to send the email has been entered.
- Patched a security hole where it was using the user on the server to determine whether some things were allowed rather than using the user the client was logged in as.
- Added a socket command to get the current authorization level and changed it so if you try to take a snapshot when you're not authorized, it will beep.

Build 77 (1/24/2004):
- Fixed a problem where the program could bomb if you had auto update turned on.
- Added a delay action type so you can delay between actions. The switch action had a delay built in, but nothing else did, and this seemed to be the best way to handle it for all actions.
- Added support for security levels in the sensors, switches and macros.
- Add a type field to the list of actions.
- Changed the default width of the column headings to be the width of the title of the heading.
- Fixed a problem under sensors and switches where the status for the sensors wasn't present.
- Changed the progress dialog for the client program so the total was a little closer to right than before.

Build 76 (1/22/2004):
- Added a progress dialog for downloading a new version.
- Replace the variables with actual data on the Alert messages.
- Added a checkbox under user authorization to allow users to snap pictures or receive them.
- Fixed a problem with the activity triggers where if you had more than one activity trigger monitoring the same sensors, only the first trigger would recognize any activity.

Build 75 (1/16/2004):
- Fixed a problem where existing data files could not be loaded.
- Fixed a problem where if the COM port is set to an invalid one, or if you switch computers so the COM port is no longer valid, there was no way to change it to a valid one.

Build 74 (1/13/2004):
- Added a trigger type of "Activity Trigger". This allows you to monitor a group of sensors and only trigger after they are inactive for a period of time. It has the option of triggering immediately after that amount of inactivity, or only triggering after that amount of inactivity has occurred followed by activity. In either case, it won't trigger again until activity occurs, followed by the appropriate amount of inactivity.
- Finished the Alert action. This allows you to send an alert message to all clients or a client with a particular user name. This will pop up a message box on the client with the message that is programmed in.

Build 73 (1/9/2004):
- The video stuff was causing the larger picture to be displayed in the default viewer when it was single clicked instead of double clicked, but it's now fixed.
- Fixed a problem with the time trigger for weekly triggers on certain days.
- Fixed a problem where thumbnails would get screwed up after changing the setup, and I also made it so the stored thumbnails would get deleted when the number was greater than the max. It was just doing it on the tab, but not in the internal list which is used when sending images to the clients.
- Fixed a problem where if you changed the setup and later went back into setup and saved it, it wouldn't remove the * from the main screen.

Build 72 (1/4/2004):
- Fixed a problem where the client wouldn't get video snapshots. Also added a setting for the max snapshots in the client setup.

Build 71 (1/2/2004):
- Finished adding in the code to cleanup the video (the options on the advanced dialog for video setup).
- Fixed a couple things with the auto update feature. I noticed that a function I was calling to determine whether the internet was connected was not working as I expected however so it still may be a problem.

Build 70 (12/31/2003):
- Fixed a problem with the client where the video tabs wouldn't size correctly right away.
- Changed the drop dead date from 12/31/03 to 03/31/03.

Build 69 (12/29/2003):
- Changed how I was doing the main screen internally. All you will likley notice is that the screen should now redraw properly after other applications cover it up. Also, the log view is now in the tabs as well as the top portion. The log view and tab view check boxes were replaced with a single "Split View" check box. The tab view is always present now since it contains the log view too.
- Fixed a problem where the video thumbnails would get hosed up after going into setup.
- Fixed a problem with the user screen where when adding a new user, if you had a user before with the "Automatically log in" check box checked before that, after adding the new user none will have it checked.

Build 68 (11/26/2003):
- There was still a problem with it requiring a debug DLL, but that's been corrected now.
- Fixed a huge security hole where if anyone used a user name that wasn't in the list, it would let them have full access.
- It now saves pictures as JPEG files by default, and you can choose other formats as well.
- It transfers thumbnails as JPEG files now instead of bitmap files, which makes the client about 20 times faster when it comes to thumbnails.
- Made it so you if you double click on the thumbnail in the client, it will get the full picture and display it using the default graphic viewer.

Build 67 (11/23/2003):
- There was a problem with build 66 where it's requiring a debug DLL that nobody has on their systems but me, so pretty much only I can run it.
- Changed the video stuff so it shows the individual still pictures on the appropriate tab.
- Changed the sensors and switches so there's a way to see what was selected when moving between list boxes. I also changed the quick macro to use the selected sensor right away.
- Changed the video source setup dialog so the selected video source is more obvious.
- Finished the advanced video source setup dialog. I still have to make it do all that yet though.

Build 66 (11/21/2003):
- Video finally seems relatively reliable now, at least on the server. The client works fine too as long as it can download all the thumbnails within a minute. If not, it ends up canceling and restarting, but it seems to work after that.
- Changed it so it doesn't try to restart the video if you don't change anything under setup.
- Changed the sensor and switches lists to have the id in the list.

Build 65 (11/13/2003):
- Fixed another problem with sockets. It turns out that if there was a problem sending to a client, it wasn't terminating the client, and as a result, there would end up being many dead clients slowing things down.
- Changed it so it uses the date and time that the picture was actually taken for the thumbnail list on the video tabs rather than the date and time it was added to the list box.

Build 64 (11/11/2003):
- Might have finally fixed the problem with sockets when sending pictures to the client.
- Made it so if you double click on a thumbnail, it will display the full picture in the default viewer (not on the client yet though).

Build 63 (11/06/2003):
- Fixed a problem with how pictures were sent to the client
- Changed it so it doesn't use as much processing power when a video tab is not visible or if the preview window is disabled.
- Fixed a lot of general problems related to multiple video sources. It now will show the appropriate preview for the tab you're on.
- Added a delay before snapping a picture if it just started the video source, since it usually takes a few frames before the picture is decent.

Build 62 (11/04/2003):
- Got the client so it can take snapshots from the video. There are a lot of bugs with video yet, but there doesn't seem to be crash and burn type of bugs.
- Under the macro list, changed it back so it will do the advanced macro screen when you add a macro because I didn’t like the quick macro screen always popping up. You can still get the quick macro screen when adding macros under the sensors and switches dialog.
- When editing multiple switch or sensor items, fixed a problem where it would only do two.
- In the action dialog, changed it so you can select multiple switches and add them with one click.

Build 61 (10/26/2003):
- Added video support. This is not yet complete however so you may not want to get this release unless you backup your files first. It does seem to work relatively well however, but it is definately not yet complete.

Build 60 (10/07/2003):
- Changed the main screen to have tabs for the switch, sensor and macro views.
- Fixed a problem with the daylight savings time calculation.
- Fixed several problems where fields associated with a radio button were not getting grayed out when the radio button was not selected.
- Fixed a problem where the day/night button wasn't getting set on startup.

Build 59 (10/01/2003):
- Changed the client to automatically try to reconnect once per minute if it's disconnected.
- Fixed a problem with the max log entries and tray icon type not getting saved.
- Changed it so the server doesn't try to send more than the max log entries that the client is set to.

Build 58 (09/29/2003):
- Changed the macro conept a bit. Now macros will initially come up as "Quick Macros", which allow you to select one sensor and one switch, where the sensor will trigger the switch, and the switch can optionally be turned off after a certain amount of sensor inactivity. There's a button that will change to the advanced macro screen, which can do much more.
- Added a macro button on the sensors and switches dialog which will display all the macros that a switch is used in and let you edit one, or add a new one. If there are no macros, or the only macro is a quick macro, it won't ask, it will just display the quick macro dialog.
- Added a check box on the action dialog called "First" which makes it so you don't have to turn anything on if it's not checked. So you can turn something off after a certain amount of inactivity without ever having turned it on.

Build 57 (09/21/2003):
- Finished the additional end time options on the time trigger.
- Improved the triggers and macros by automatically setting the "Type" for time triggers, and the "Trigger When" for macros to the values that are the most common based on other settings you choose. It used to be you had to know what you're doing, and now, there's a good chance you can get it to work if you don't.
- Changed the sensors and switches lists so you can select multiple and it will display the change screens for all of them when you hit Change. For some reason though, it stops at two.
- Changed it so it requires all user names to be unique.
- Added a check box to the user info that if checked will cause that user to automatically be logged in on startup without having to enter the user and password.

Build 56:
- The icon was flashing all the time (starting in build 55), but now it's fixed.
- If you haven’t ever changed the dusk/dawn trigger to use a sensor, there was a problem saving the file because it couldn’t write a NULL pointer. It writes NULL pointers properly now.
- It was puking when I had my main .xic file loaded, made a change, tried to load Mike.xic without saving mine. It's fixed now.
- If you clicked on load and then cancel, it would puke. That's fixed now.
- I started changing the time triggers so the end time was settable, instead of just a duration. It's not quite done yet.

Build 55:
- Added a Day/Night setting under setup where you could set up the day/night mode to be calculated or use a sensor. The lattitude, longitude and time zone are all set up here too.
- On the macro screen, made the day and night a combo box rather than having to deal with all the adding sensor with all those crazy settings.
- When doing a load, and the change flag is set, it now asks if they want to save first.
- It now default the From thing on emails to "Home Domination (TM) Control Program".
- The IO switching delays are now settable from a registry setting.
- Changed the action name to default to "Action 1", "Action 2", etc.
- Now buffering the offs for IO sensors for 4/100 of a second as well as the ons
- On the macro triggers, changed the "All Triggers" option to have "(and)" after it and changed the "Any Triggers" option to have "(or)" after it. The whole combo box is now grayed out unless there is more than one trigger.
- Hopefully fixed a problem with day/night IO sensors.

Build 54:
Changed it so it doesn’t delay for X10 switches. It used to delay a half second between each switch. Now the delay should be dictated by the speed it can send the command.
Changed the internal delay for i/o switches to 50ms (1/20 second) so that when the all off or all on function happens, it doesnt fire them all at once. It should do the cool star wars lighting (slide to the left and right) rather than hitting them all.
Defaulted the paddle switch timeout to 1/10 second instead of 2/10.

Build 53:
I added a registry setting to turn on some test log messages for the IO sensors. Only Mike will probably be interested in this. To use it, you need to add a registry key under HKEY_CURRENT_USER, Software, HarryStrandSoftware, Debug, and create a DWORD value called "Show IO Switching" and set it to 1. You can set it to 0 or remove the key if you want to get rid of it.

Build 52:
Fixed a problem where it would blow up if you didn't have a data file set up already.
Added an Add Multiple button for both sensors and switches, where it will only ask for th type once, and it will keep adding switches or sensors until you cancel.
Fixed a problem with switching IO sensors from the main screen.
Added the "Day/Night Sensor" and "Don't show on activity list" check boxes for IO sensors.
Fixed a problem with paddle switches displaying it's status properly on the main screen.
Changed IO sensors to ignore brief on pulses and treat them as "off". On's must be constant for more than 1/10th of a second.
Changed the default byte value for switches to be 0 instead of 255.

Build 51:
If "Don’t show on main screen" is set for the IO sensors, it showed it anyway.
Don’t show the off values for sensors in the log (for IO sensors at least).
Removed the test messages for IO switches and sensors

Build 50:
Made numerous minor bug fixes and enhancements related to users and passwords.
I may have fixed a problem that may have caused excessive CPU usage.
Fixed it so when automatically downloading from the client, it would only send the client program (not tested yet).

Build 49:
Added users and passwords, and partially tied them into the program.
Fixed a problem with IO sensors.
Added a reboot action.
Changed the house colors on the icons.

Build 48:
Made it hog less processor time (down from about 50% on my machine to 1%).
The client can now have multiple settings stored by name, so you can quickly attach to any of numerous machines that are running the main program.
Changed the title to "Home Domination (TM) Client".
Changed it so passwords are not visible.

Build 47:
Added the version update ability to the client.
Fixed the Last Update Date on the version info window. 

Build 46:
Added a license agreement
Added a drop dead date
Finished the tray icon type setting
Finished the log item quantity for the client

Build 45:
Added the ability to automatically check and download new updates.
Changed the icon to a house with a rainbow over it.

Build 44:
Added the "Version Info" button which checks to see what the latest available version is, and allows you to update with one button.
Also put some other stuff into the dialogs that isn't yet functional, so ignore those parts when you find them.