Permalink
Browse files

* added menubar tooltips

* added menubar LRU menu for quickly starting tasks
* added keyed archiver persistence and data migration
* added checks for duplicate project and task names preventing from screwing up the data
* added option to configure the LRU size in the preferences
* added configuration for idle timeout and standby detection


git-svn-id: https://time-tracker-mac.googlecode.com/svn/trunk@76 4511c099-ca26-0410-9445-25cf1b1ba2ba
  • Loading branch information...
1 parent d68f63e commit 2ce3e2ca88264ef81b82429cf2038b6d23b9513c rburgst committed Jan 14, 2009
View
@@ -35,3 +35,20 @@ Packaged by Aaron VonderHaar <gruen0aermel@gmail.com>
* Window size and position is saved in the system defaults.
* Ensures that the display is refreshed when the main window is first
loaded (this was not the case when the window size/position was restored).
+
+
+LOTS OF MODIFICATIONS:
+* added filtering
+* added text filtering
+* added menubar tooltips
+* added menubar LRU menu for quickly starting tasks
+* added keyed archiver persistence and data migration
+* added ability to reassign work period to new task/project
+* added comments to work periods
+
+
+
+6.11.2008 RBUR:
+* added checks for duplicate project and task names preventing from screwing up the data
+* added option to configure the LRU size in the preferences
+* added configuration for idle timeout and standby detection
Oops, something went wrong.
Oops, something went wrong.
Binary file not shown.
View
@@ -15,5 +15,6 @@
- (NSString*) name;
- (id<IProject>) removeTask:(TTask*)task;
- (int) filteredTime:(NSPredicate*) filter;
+- (BOOL) doesTaskNameExist:(NSString*)name;
- (NSMutableArray *) matchingTasks:(NSPredicate*) filter;
@end
View
@@ -17,4 +17,5 @@
- (NSString*) name;
- (id<ITask>) removeWorkPeriod:(TWorkPeriod*)period;
- (int) filteredTime:(NSPredicate*) filter;
+- (int) taskId;
@end
View
@@ -1,5 +1,6 @@
/* MainController */
+
#import <Cocoa/Cocoa.h>
#import <Appkit/NSArrayController.h>
#import "TProject.h"
@@ -17,6 +18,8 @@
#define FILTER_MODE_WEEK 2
#define FILTER_MODE_MONTH 3
+#define DEFAULT_LRU_SIZE 5
+
@interface MainController : NSObject
{
NSColor *_normalCol;
@@ -63,7 +66,7 @@
IBOutlet NSMenuItem *startMenuItem;
IBOutlet NSArrayController *workPeriodController;
- IBOutlet NSArrayController *changeProjectController;
+// IBOutlet NSArrayController *changeProjectController;
// the start of the filtered interval
IBOutlet NSDate *_filterStartDate;
// the end of the filtered interval
@@ -84,6 +87,7 @@
id<IProject> _selProject;
id<ITask> _selTask;
NSArray *_filteredTasks;
+ NSMutableArray *_lruTasks;
TWorkPeriod *_curWorkPeriod;
TTimeTransformer *_timeValueFormatter;
TDateTransformer *_dateValueFormatter;
@@ -97,6 +101,15 @@
NSDate *_selectedfilterDate;
int timeSinceSave;
int _filterMode;
+
+ IBOutlet BOOL _autosaveCsv;
+ IBOutlet NSString *_autosaveCsvFilename;
+ IBOutlet NSString *_csvSeparatorChar;
+ int _maxLruSize;
+ NSMenu *_startMenu;
+ BOOL _showTimeInMenuBar;
+ int _idleTimeoutSeconds;
+ BOOL _enableStandbyDetection;
}
// actions
@@ -113,9 +126,16 @@
- (IBAction)clickedFilterDateCancel:(id) sender;
- (IBAction)changedProjectInEditWpDialog:(id) sender;
- (IBAction)filterComments: (id)sender;
+- (IBAction)actionExport:(id)sender;
- (void) provideTasksForEditWpDialog:(TProject*)project;
- (void) provideProjectsForEditWpDialog:(TProject*) selectedProject;
+
+- (TTask*) findTaskById:(int)taskId;
+- (NSArray*) lruTasks;
+- (void) selectTask:(TTask*) task project:(TProject*)project;
+- (void)reloadWorkPeriods;
+
- (void) timerFunc: (NSTimer *) timer;
- (void) stopTimer:(NSDate*)endTime;
- (void) stopTimer;
@@ -124,6 +144,7 @@
- (void) createProject;
- (int)idleTime;
- (void) saveData;
+- (void) loadData;
- (void) updateStartStopState;
- (void) updateProminentDisplay;
@@ -139,4 +160,28 @@
- (BOOL) validateUserInterfaceItem:(id)anItem;
- (TTask*) taskForWorkTimeIndex: (int) rowIndex timeIndex:(int*)resultIndex;
+
+
+// properties
+-(BOOL) autosaveCsv;
+-(void) setAutosaveCsv:(BOOL)autosave;
+
+-(NSString*) autosaveCsvFilename;
+-(void) setAutosaveCsvFilename:(NSString*)filename;
+
+-(NSString*) csvSeparatorChar;
+-(void) setCsvSeparatorChar:(NSString*) separator;
+
+-(int) maxLruSize;
+-(void) setMaxLruSize:(int)size;
+
+-(void) setShowTimeInMenuBar:(BOOL)show;
+-(BOOL) showTimeInMenuBar;
+
+-(void) setIdleTimeoutSeconds:(int)seconds;
+-(int) idleTimeoutSeconds;
+
+-(void) setEnableStandbyDetection:(BOOL)enable;
+-(BOOL) enableStandbyDetection;
@end
+
Oops, something went wrong.

0 comments on commit 2ce3e2c

Please sign in to comment.