David Coallier wrote:
> Hello everyone, I think some of you heard that I was working on
> the gantt chart support for the eZ Graph components.
> 
> So first of all, hello all :)
> 
> Ok, I don't like introductions, you don't like introductions,
> so let's get moving with the real stuff.
> 
> I have been overthinking the design of the gantt charts for a while
> now since I decided to take that task on me and I have came up
> with a few ideas and a bit of organizational structure for the
> whole development process.
> 
> The development will be split it 6 phases. The release process
> for a beta version will be able to start after completion of
> phase 4 where at that time, the datasets importing format should
> be nearly complete for beta.
> 
> 
> Here are the phases (Rough roadmap):
> -------------------------------------
> 
> 1) Initial development (rough draft: See
> http://dev.agoraproduction.com/ezc/designs/gantt/gantt001.png)
> 
> 2) Projects progress percentage viewing. (Seeing a canvas of another
> color over the bar of a project to see it's progress)
> 
> 3) Interval of your choice. Different types of interval. Dates with
> format of the choice, weeks, years, decardes, etc...
> 
> 4) The inclusion of subprojects. Important modifications (rewrite) of
> the datasets handling.
> 
> 5) Interval atomicity and extra precision of the project progress.
> 
> 6) Good look and feel (Renderer related)
> 
> 
> 
> Now, I am working on getting the phase 1 and 2 out before going to
> phase 3 (Trying to walk before running) and the first idea I had for
> the dataset format is looking like this:
> 
> /**
>  * The format for the importing of the data
>  * is quite simple.
>  *
>  * an array key for the name of the project composed
>  * of 3 parts. The first is the project week starting,
>  * the second is project week ending, and the last one
>  * (which is only in phase 2) is current progress.
>  */
> return array(
>     'Name X' => array(
>         '1', // Starting week
>         '5', // Ending week
>         'x', // Current progress @todo
>     ),
> 
>     'Name Y' => array(
>         '2',
>         '6',
>         'y',
>     ),
> 
>     'Name Z' => array(
>         '1.5',
>         '8',
>         'z',
>     ),
> );
> 
> This dataset will produce the graph I pasted the link to earlier:
> 
> http://dev.agoraproduction.com/ezc/designs/gantt/gantt001.png
> 
> 
> 
> So here I am asking you guys what you think. I have spent about 2 hours of
> code so far but nothing so important (Hence the reason why I am not posting
> code on that list). Just imagine that the code is very similar to the
> ones of lines with
> a few axis labelling differences and line height and size (so far).
> 
> What do you guys think about the stated plan, etc. How would YOU implement it.
> Just please don't make an endless thread with that, I don't care
> discussing but I do
> not like nitpicking or bikeshedding ;-)
> 
> Raise your opinions!

Hi David and everybody,

I don't know much about Gantt charts, but I think interoperability 
should be more important than how the chart will look like. What I mean 
is that it should be possible to import data from MS Project and other 
programs which create Gantt charts.

As Gantt charts can get very big, it would become awkward to set the 
data by using arrays, so support to load datasets from files should be 
added (similar with ezcGraphDatabaseTiein I guess). So why not also load 
an MS Project file as a dataset? And also save a dataset as an MS 
Project file.

Cheers,
Alex.

-- 
Alexandru Stanoi
eZ Components System Developer
eZ Systems | http://ez.no
-- 
Components mailing list
[email protected]
http://lists.ez.no/mailman/listinfo/components

Reply via email to