Re: [Planner Dev] Fixes for gantt bugz # 148637, 149359 and 149651





Richard Hult wrote:
On tis, 2004-08-10 at 01:33 +0100, lincoln phipps openmutual net wrote:

Richard,
	
	I've redone  this ...and in the best open source
tradition its completely refactored and has new features ;)


;)


I've still got the 10,000 day task limit in as I  think this
is an important sanity check which is already in place in
the Task dialog.


But why? If I'm not mistaken that does't even cover our 2038 limit. I
think it's rather odd to have two limits, one absolute, that is real,
and one relative that's just virtual.

OK - I'll remove it ;) I'll patch where its also in the task dialog
too.



For my new feature, you can now SHIFT+click drag a Fixed
duration task in gantt to update its duration (as opposed
to the work) (I always wanted to play with the modifier keys ;)


I wonder if dragging a fixed duration task should change the duration
instead, it will look very odd if dragging a task won't change it's
visual length.

Yup - OK I'll swap the logic....

Fixed work tasks drag = change in work,
Fixed work tasks SHIFT+drag = change in work (no difference from above),

Fixed Duration tasks drag = change in duration,
Fixed duration tasks SHIFT+drag = change in work (gantt stays fixed
	but work cell changes).


That funny safe time value was 1st Jan 2038 so I now use,
	mrp_time_compose( 2038,1,1,0,0,0);

as thats more obvious.


Hm, that's a pretty expensive function so a hardcoded value with a
comment is fine :)


Its only used a few times so not too bad. Where can I store
global constants i.e. not defines but const which all programs
can read ? Then I can calculate once and reuse.


The reason for both setting the time values to the correct
limits outside the loop and then checking for verflow within
the loop is that,

	t = planner_scale_time_next (t, priv->major_unit);

can actually overflow within the loop.  My checks seemed
safer on my testing.


Hm, ok.


I've fixed my comments.

I've moved this property undo to planner-task-cmd.c/planner-task-cmd.h
and it now handles both work and duration updates.


Great!

/Richard




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]