|
CWuestefeld
|
 |
« on: December 07, 2008, 10:12:12 AM » |
|
| Application Name | LifeSaver | | Version | 1.0.3311 | | Short Description | Keep a diary | | Supported OSes | Windows with .Net | | Web Page | none yet | | Download Link | Author's web site Or from attachment to this post, below. | | System Requirements | - .Net 2
- Internet Explorer (don't worry, you don't need to use it as your web browser)
| | Version History | - 2009-01-11 - 1.0.3311
- New feature: file menu now has MRU (Most Recently Used) file list for your convenience.
- 2009-01-11 - 1.0.3298
- Fix bug where changes to an entry didn't get saved if the user clicks next/prev too quickly.
- 2009-01-01 - 1.0.3288 (Release 1)
- Add EULA to installer and About box
- Fix installer to overwrite old version
- Fix bug where changing entry body text forced rebuild of calendar
- Fix bug where XML export didn't close file immediately
- Add meta data to XML export
- Remove BETA warnings
- 2008-12-21 - 1.0.3277.22049 (Beta)
- Add XML export
- Add ability to open a file from Explorer
- Fixed calendar colors (I hope)
- Added a bunch of graphics to make it pretty
- Added Delete, then disabled it because of a problem in the backend datastore
- Fixed the need to click away from the text editor to get changes to save
- Improved synchronization between entry date editor and calendar selector (there may still be issues here, I'm still chasing it)
- Fixed a bug in the browse to Previous feature (sometimes entries would be skipped when occurring on consecutive days)
- 2008-12-16 - 1.0.0.1 (alpha 2)
- Added password (remember, this isn't crypto)
- Added auto backup datafile
- Fix crash when you start app but don't open file for several minutes
- Fix crash when you try to re-open the same file that's already open
- Fix problem where "create new" diary over an existing one would open instead of creating new
- 2008-12-14 - First public alpha
| | Author | Chris Wuestefeld: CWuestefeld | DescriptionAt the surface, it's Yet Another Diary/Journal Application. But as I've complained here, as recently as last month, a fundamental problem with all Diary software I've found is that the data is locked into a proprietary datastore and format. This is absolutely antithetical to the purpose of a diary: long-term tracking of thoughts. At some point in the future, our current applications and the format in which they store the data will be obsolete; it's imperative that something like this be easily extractable, in a way that can be imported into future systems. Features- Entries formatted in rich text (HTML to facilitate export)
- Password-protected datastore (not cryptographically strong, but should be enough to keep out your little brother)
- Multiple entries allowed per day
- Browse next/previous entry
- Export to XML
Planned Features- Entry tagging, including browse by tag
- Full-text search
- Images attached to entries
- Score entries on user-defined criteria to track progress toward goals
Screenshots Known Issues- Previous version must be uninstalled before upgrading.
- Delete entry not allowed yet.
- There isn't yet any way to change your password.
|
|
|
« Last Edit: January 24, 2009, 03:19:05 PM by CWuestefeld »
|
Logged
|
|
|
|
|
computerfritze
|
 |
« Reply #1 on: December 07, 2008, 12:01:32 PM » |
|
Sounds good, all the software I found in the web about this is commercial, with freeware version, which nag all the time, or expensive shareware version, and of course the format.
|
|
|
|
|
Logged
|
-- Greets, computerfritze
|
|
|
|
CWuestefeld
|
 |
« Reply #2 on: December 12, 2008, 09:13:56 PM » |
|
I'm hoping to have an alpha ready this weekend. Basic operation and date browsing works now. I'm currently trying to figure out how to build an installer package, which is something I've never done before.
Anybody have pointers on building Visual Studio's setup projects, or links to more information on them?
|
|
|
|
|
Logged
|
|
|
|
|
|
mouser
|
 |
« Reply #3 on: December 12, 2008, 09:33:14 PM » |
|
nice 
|
|
|
|
|
Logged
|
|
|
|
|
app103
|
 |
« Reply #4 on: December 13, 2008, 08:58:57 AM » |
|
If you'd like to make an installer, I really like this one and it's quite easy to use. http://www.advancedinstaller.comFor most, the free version is plenty. You don't get asked to pay unless you try to use a feature that is locked in the free version.
|
|
|
|
|
Logged
|
|
|
|
|
CWuestefeld
|
 |
« Reply #5 on: December 14, 2008, 12:48:38 PM » |
|
I've just posted an alpha version of the app. The download link is http://www.thewuestefelds...nloads/LifeSaverSetup.zipAs I said in my update to the original post at the top: Known Issues- Minimal error handling in place.
- Create new diary over the top of an existing one doesn't actually create a new one, it just re-opens the existing one.
- Delete entry not implemented yet.
- Password protection not implemented yet (Actually, it's built into the datastore, it's just that the save/open code doesn't yet ask for a password)
Keep in mind that this is just the first public demo. I'm looking for feedback on the direction I'm going, as well as information on where it does or doesn't work. I'm particularly interested in the installer: what happens if you don't have .Net installed? What if you've got a newer .Net (3.0 or 3.5) but not 2.0?
|
|
|
|
|
Logged
|
|
|
|
|
mouser
|
 |
« Reply #6 on: December 14, 2008, 03:48:09 PM » |
|
i like the look of the interface.
|
|
|
|
|
Logged
|
|
|
|
|
superboyac
|
 |
« Reply #7 on: December 15, 2008, 11:28:38 AM » |
|
This is cool, CW. Man, there sure is a lot of talent here at DC.
|
|
|
|
|
Logged
|
|
|
|
|
puzzlebox
|
 |
« Reply #8 on: December 16, 2008, 04:30:07 AM » |
|
I know it's not yet finished but two things I've noticed: - 1. There was an error about LS not being able to open the diary because another process (presumably LS too) is using the diary file
- 2. I can read my entry when opening the lsd file in a text editor
|
|
|
|
|
Logged
|
|
|
|
|
CWuestefeld
|
 |
« Reply #9 on: December 16, 2008, 05:39:09 AM » |
|
- 1. There was an error about LS not being able to open the diary because another process (presumably LS too) is using the diary file
- 2. I can read my entry when opening the lsd file in a text editor
Thanks for the feedback, puzzlebox. I appreciate your taking the time to look at it. I'll look at #1 right away. You're probably right about the cause. I'm just starting to work on exception handling, and this is definitely one area I can make it better. I'm aware of #2. The version you're seeing has no protection at all. I've got a working implementation of password protection here, but even so, the underlying datastore will look exactly the same. The password protection I'm using is really only as strong as the stupid little lock on a diary: your little brother can still open it with a paperclip. If anyone has real secrets that need protection, I recommend using a serious crypto product like TrueCrypt. They've solved that problem better than I ever could. How much do you disagree with that decision?
|
|
|
|
|
Logged
|
|
|
|
|
tomos
|
 |
« Reply #10 on: December 16, 2008, 05:56:43 AM » |
|
just got around to installing this today looks good
was confused initially because as you add entries it doesnt refresh the list of entries automatically I have to click on a different date then click on todays date again to see the list of entries for today
I dont currently use a (software) diary but have been considering it so yours seems like a good place to start, thanks!
|
|
|
|
|
Logged
|
|
|
|
|
puzzlebox
|
 |
« Reply #11 on: December 16, 2008, 06:06:55 AM » |
|
another problem is when you click the lsd file, it doesn't open the diary... just opens the application.. also maybe you could configure it such that when opening the application it will try to open a default diary. if no default diary is found, then give option of creating new/searching lsd file (which could be in a "safer" removable disk). just a few suggestions.. 
|
|
|
|
|
Logged
|
|
|
|
|
tomos
|
 |
« Reply #12 on: December 16, 2008, 06:53:50 AM » |
|
more suggestions ;-) (minor though) the blue in the calandar is too light to be able to read the days of the week I had opened the programme (no files opened) - came here to make this post was looking at app again and this error message popped up [unhandled exception ... Object reference not set to instance of an object] that text wouldnt copy so I have a screenshot if you need it but the details copied: See the end of this message for details on invoking just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text ************** System.NullReferenceException: Object reference not set to an instance of an object. at LifeSaverApp.MainForm.ucCalendarBrowser1_OnRequestEntriesOnDate(Object sender, RequestEntriesOnDateEventArgs e) at LifeSaverApp.ucCalendarBrowser.GetEntriesForDate(DateTime ForDate) at LifeSaverApp.ucCalendarBrowser.monthCalendar1_DateChanged(Object sender, DateRangeEventArgs e) at System.Windows.Forms.MonthCalendar.OnDateChanged(DateRangeEventArgs drevent) at System.Windows.Forms.MonthCalendar.WmDateChanged(Message& m) at System.Windows.Forms.MonthCalendar.WmReflectCommand(Message& m) at System.Windows.Forms.MonthCalendar.WndProc(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Loaded Assemblies ************** mscorlib Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400) CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll ---------------------------------------- LifeSaverApp Assembly Version: 1.0.0.0 Win32 Version: 1.0.0.0 CodeBase: file:///C:/Program%20Files/LifeSaver/LifeSaverApp.exe ---------------------------------------- System.Windows.Forms Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400) CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll ---------------------------------------- System Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400) CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll ---------------------------------------- System.Drawing Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400) CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll ---------------------------------------- Design Assembly Version: 1.0.0.0 Win32 Version: 1.0.0.0 CodeBase: file:///C:/Program%20Files/LifeSaver/Design.DLL ---------------------------------------- Microsoft.mshtml Assembly Version: 7.0.3300.0 Win32 Version: 7.0.3300.0 CodeBase: file:///C:/Program%20Files/LifeSaver/Microsoft.mshtml.DLL ---------------------------------------- NeodatisODB Assembly Version: 1.0.3265.1363 Win32 Version: 1.0.3265.1363 CodeBase: file:///C:/Program%20Files/LifeSaver/NeodatisODB.DLL ----------------------------------------
************** JIT Debugging ************** To enable just-in-time (JIT) debugging, the .config file for this application or computer (machine.config) must have the jitDebugging value set in the system.windows.forms section. The application must also be compiled with debugging enabled.
For example:
<configuration> <system.windows.forms jitDebugging="true" /> </configuration>
When JIT debugging is enabled, any unhandled exception will be sent to the JIT debugger registered on the computer rather than be handled by this dialog box.
|
|
|
|
|
Logged
|
|
|
|
|
CWuestefeld
|
 |
« Reply #13 on: December 16, 2008, 06:55:20 AM » |
|
was confused initially because as you add entries it doesnt refresh the list of entries automatically
Actually, it's not that it doesn't refresh, it's that it doesn't actually commit the new entry until the HTML editor field loses focus. It's the fact that you're clicking off it that does it. I need to work out a better solution for this. another problem is when you click the lsd file, it doesn't open the diary... just opens the application..
OK. I plan to add this. also maybe you could configure it such that when opening the application it will try to open a default diary. if no default diary is found, then give option of creating new/searching lsd file (which could be in a "safer" removable disk).
I'm going to add an MRU list to the File menu. Does that come close enough? Also, I'm planning to add a "tip of the day" kind of thing, to tell a newbie that the first thing to do is create or open a diary, etc.
|
|
|
|
|
Logged
|
|
|
|
|
tomos
|
 |
« Reply #14 on: December 16, 2008, 07:10:56 AM » |
|
was confused initially because as you add entries it doesnt refresh the list of entries automatically
Actually, it's not that it doesn't refresh, it's that it doesn't actually commit the new entry until the HTML editor field loses focus. It's the fact that you're clicking off it that does it. I need to work out a better solution for this. the same problem is there when I open the file (when the html pane doesnt have focus) the list for today doesnt show until I click a different date & then click today again Adding new entries: (if possible) if it refreshed when "New Entry" was clicked it would be ideal Would it be possible (or is it) to add entries for dates other than current date ?I see it is possible using drop-down date on top
|
|
|
|
|
Logged
|
|
|
|
|
tomos
|
 |
« Reply #15 on: December 16, 2008, 07:24:15 AM » |
|
I had opened the programme (no files opened) - came here to make this post was looking at app again and this error message popped up
always get this if I open the app & dont immediately open a file if I click "continue" it works fine
|
|
|
|
|
Logged
|
|
|
|
|
CWuestefeld
|
 |
« Reply #16 on: December 16, 2008, 07:58:46 AM » |
|
always get this if I open the app & dont immediately open a file if I click "continue" it works fine
Thanks for the exception dump. That's extremely helpful. I can reproduce your problem, and I think I see how to fix it. But I don't understand why it occurs in the first place. It's the darnedest thing. Until you actually open a file, the calendar control is disabled. But after a minute or two it seems to get restless and raise a SelectionChanged event anyway. This makes no sense, since you couldn't have clicked on it to change the selection. But there it is. I should just be able to detect that I don't have any data yet, and suppress the propagation of the event in that case. the same problem is there when I open the file (when the html pane doesnt have focus) the list for today doesnt show until I click a different date & then click today again
I haven't seen that problem. I'll have to play with it more. Adding new entries: (if possible) if it refreshed when "New Entry" was clicked it would be ideal
That's probably part of the solution, but I don't know if it's sufficient...
|
|
|
|
|
Logged
|
|
|
|
|
CWuestefeld
|
 |
« Reply #17 on: December 16, 2008, 07:36:17 PM » |
|
New version just posted: 2008-12-16 - 1.0.0.1 (alpha 2)- Added password (remember, this isn't crypto)
- Added auto backup datafile
- Fix crash when you start app but don't open file for several minutes
- Fix crash when you try to re-open the same file that's already open
- Fix problem where "create new" diary over an existing one would open instead of creating new
|
|
|
|
|
Logged
|
|
|
|
|
deviantopian
|
 |
« Reply #18 on: December 17, 2008, 03:59:53 AM » |
|
On my computer the dates are black text on dark blue (see screenshot) - not easy to read. It's most likely to be because of my Windows XP Visual Style. Is there a way you can get around this? 
|
|
|
|
|
Logged
|
|
|
|
|
CWuestefeld
|
 |
« Reply #19 on: December 17, 2008, 05:45:50 AM » |
|
On my computer the dates are black text on dark blue (see screenshot) - not easy to read.
Thanks. Tomos reported something similar, but I didn't quite get it. Now I can see for myself. I'll see what I can do.
|
|
|
|
|
Logged
|
|
|
|
|
tomos
|
 |
« Reply #20 on: December 17, 2008, 06:12:59 AM » |
|
On my computer the dates are black text on dark blue (see screenshot) - not easy to read.
Thanks. Tomos reported something similar, but I didn't quite get it. Now I can see for myself. I'll see what I can do. actually I figured out this here - dou you know the way in titlebars in classic style it (often) uses two tones - well LS uses the lighter of those colours for the month background and for the days - in my case this is a very pale blue which makes the days of the weeek almost impossible to read  edit: thumbnailed image
|
|
|
|
« Last Edit: December 17, 2008, 06:16:47 AM by tomos »
|
Logged
|
|
|
|
|
CWuestefeld
|
 |
« Reply #21 on: December 18, 2008, 09:22:24 PM » |
|
I think I've got the calendar color thing licked, and at the same time, I did a lot to improve the overall look. I've implemented Delete, and in doing so discovered that there's a problem with the backend datastore I'm using  . So I'm going to have to disable the Delete feature until that gets fixed. I've submitted a bug, hopefully they'll address it quickly. Working on the XML export now, and the MRU file menu. That, and fixing the refresh issues that were reported, and I should be there.
|
|
|
|
|
Logged
|
|
|
|
|
CWuestefeld
|
 |
« Reply #22 on: December 21, 2008, 11:38:35 AM » |
|
New version posted: 1.0.3277.22049I'm calling this one a beta. All the planned features for launch are included except for MRU file menu. I think I've got the calendar sync issues ironed out, but there may be some ghosts still hiding in the machine. The Delete functionality was implemented, but I found an issue in the backend datastore that forces me to disable the feature for now. From the change log: - Add XML export
- Add ability to open a file from Explorer
- Fixed calendar colors (I hope)
- Added a bunch of graphics to make it pretty
- Added Delete, then disabled it because of a problem in the backend datastore
- Fixed the need to click away from the text editor to get changes to save
- Improved synchronization between entry date editor and calendar selector (there may still be issues here, I'm still chasing it)
- Fixed a bug in the browse to Previous feature (sometimes entries would be skipped when occurring on consecutive days)
From known issues list: - Installing an upgrade requires that you first uninstall the previous one.
- Delete entry not allowed yet.
- Reported refreshing problem when opening a diary having an entry for the current day
|
|
|
|
|
Logged
|
|
|
|
|
steeladept
|
 |
« Reply #23 on: December 21, 2008, 03:49:53 PM » |
|
This looks awesome. I can't wait to see what it looks like finished. Okay, I am trying the Alpha, but I have also learned that Alphas (and occasionally Betas) find issues late in development that force changes to make it not compatible, so I tend not to trust important data to it until release.
|
|
|
|
|
Logged
|
|
|
|
|
CWuestefeld
|
 |
« Reply #24 on: December 21, 2008, 05:55:45 PM » |
|
I have also learned that Alphas (and occasionally Betas) find issues late in development that force changes to make it not compatible
Right you are. As I mentioned, I found an issue in the datastore such that deleting entries corrupt the data. In this case, I've disabled the feature pending resolution from the Neodatis ODB people (which is otherwise fantastic), but who knows what else might lurk.
|
|
|
|
|
Logged
|
|
|
|
|