GanttChartMorph openOn: aCollectionOfActivities ?

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
23 messages Options
12
Reply | Threaded
Open this post in threaded view
|

Re: [Moose-dev] Re: Re: GanttChartMorph openOn: aCollectionOfActivities ?

abergel
I guess this is supported. Give me a few hours, I am away from my laptop

Alexandre



> Le 1 août 2015 à 00:58, H. Hirzel <[hidden email]> a écrit :
>
> And a more natural order of presentation without reordering the input?
>
> data := #(     #(prototype 8 12)
>                   #(web_publication 11 12)
>                   #(review 10 11)
>                  #(analysis 8 10)
>              ).
>
>
>> On 8/1/15, H. Hirzel <[hidden email]> wrote:
>> The SVG export accessible through the '...' menu works fine.
>>
>> A new question regarding the labeling of the x-axis.
>>
>> How do I specify that I want to see months
>>
>>    8  9   10  11  12
>>
>> only?
>>
>> data := #(     #(WP1 8 12)      #(WP2 8 10)     #(WP3 10 11)
>> #(WP4 11 12)
>>
>>
>>
>> And is something like this possible?
>>
>>
>>    8  9   10  11  12  1   2   3   4
>>
>>
>> --Hannes
>>
>>
>>> On 7/31/15, Alexandre Bergel <[hidden email]> wrote:
>>> The ‘…’ button, top right of a GTInspector that is showing a Roassal
>>> visualization.
>>>
>>> https://dl.dropboxusercontent.com/u/31543901/TMP/Screen%20Shot%202015-07-30%20at%2012.33.23%20PM.png
>>>
>>> Alexandre
>>> --
>>> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
>>> Alexandre Bergel  http://www.bergel.eu
>>> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>>>
>>>
>>>
>>>> On Jul 30, 2015, at 2:25 PM, H. Hirzel <[hidden email]> wrote:
>>>>
>>>> Which menu? Could you describe it verbally please where to click? The
>>>> picture did not come through.
>>>>
>>>> --Hannes
>>>>
>>>>> On 7/30/15, Alexandre Bergel <[hidden email]> wrote:
>>>>> Simply use the menu:
>>>>>
>>>>>
>>>>> Cheers,
>>>>> Alexandre
>>>>>
>>>>> --
>>>>> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
>>>>> Alexandre Bergel  http://www.bergel.eu
>>>>> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>>>>>
>>>>>
>>>>>
>>>>>> On Jul 30, 2015, at 11:59 AM, H. Hirzel <[hidden email]>
>>>>>> wrote:
>>>>>>
>>>>>> Alexandre,
>>>>>>
>>>>>> This is really agile ... version 1005 of Roassal loaded and version
>>>>>> 305 of Trachel :-)
>>>>>>
>>>>>> The GANTT chart works fine, see screen shot.
>>>>>>
>>>>>> How do I export it as SVG code in Roassal?
>>>>>>
>>>>>> --Hannes
>>>>>>
>>>>>>> On 7/29/15, Alexandre Bergel <[hidden email]> wrote:
>>>>>>> Pure agile development: the latest version is the one that count.
>>>>>>> You need to update two packages: Roassal2 and Trachel.
>>>>>>>
>>>>>>> Cheers,
>>>>>>> Alexandre
>>>>>>> --
>>>>>>> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
>>>>>>> Alexandre Bergel  http://www.bergel.eu
>>>>>>> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> On Jul 29, 2015, at 3:24 PM, H. Hirzel <[hidden email]>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>> Or a configuration? Which one?
>>>>>>>>
>>>>>>>> --HH
>>>>>>>>
>>>>>>>>> On 7/29/15, H. Hirzel <[hidden email]> wrote:
>>>>>>>>> Thanks for the updated GANTT script.
>>>>>>>>>
>>>>>>>>> My question was about the version of Roassal to load.
>>>>>>>>>
>>>>>>>>> Which one?
>>>>>>>>> I just go for version 1000?
>>>>>>>>>
>>>>>>>>> See screenshot.
>>>>>>>>>
>>>>>>>>> --Hannes
>>>>>>>>>
>>>>>>>>> On 7/29/15, Alexandre Bergel <[hidden email]> wrote:
>>>>>>>>>>>> You should load the latest Roassal.
>>>>>>>>>>>
>>>>>>>>>>> How do I do that? I just loaded Roassal into a fresh Pharo4.0
>>>>>>>>>>> image
>>>>>>>>>>> and RTTimeLine is not included.
>>>>>>>>>>
>>>>>>>>>> We did some refactoring.
>>>>>>>>>> Instead, you should do:
>>>>>>>>>>
>>>>>>>>>> -=-=-=-=-=-=-=-=
>>>>>>>>>>    data := #(#(WP1 0 5) #(WP2 5 8) #(WP3 7 10)).
>>>>>>>>>>
>>>>>>>>>>    b := RTTimeline new.
>>>>>>>>>>    
>>>>>>>>>>    s := RTTimelineSet new.
>>>>>>>>>>    s objects: data.
>>>>>>>>>>    s lineIdentifier: #first.
>>>>>>>>>>    s start: #second.
>>>>>>>>>>    s end: #third.
>>>>>>>>>>    b add: s.
>>>>>>>>>>    
>>>>>>>>>>    b axisX
>>>>>>>>>>        numberOfLabels: 5;
>>>>>>>>>>        labelRotation: -45;
>>>>>>>>>>        labelConversion: [ :v | Date year: 2015 day: v ].
>>>>>>>>>>
>>>>>>>>>>    d := RTVerticalTickLineDecorator new.
>>>>>>>>>>    d shape line color: Color white.
>>>>>>>>>>    b addDecorator: d.
>>>>>>>>>>    b
>>>>>>>>>> -=-=-=-=-=-=-=-=
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> The class RTTimelineExample contains many examples
>>>>>>>>>>
>>>>>>>>>> Let us know how it goes
>>>>>>>>>>
>>>>>>>>>> Alexandre
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>> Alexandre
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>> Le 9 mai 2015 à 19:06, H. Hirzel <[hidden email]> a
>>>>>>>>>>>>> écrit
>>>>>>>>>>>>> :
>>>>>>>>>>>>>
>>>>>>>>>>>>> Thank you for the examples, Alexandre!
>>>>>>>>>>>>>
>>>>>>>>>>>>> I have Pharo 4.0 with Roassal 2.0 installed
>>>>>>>>>>>>> (AlexandreBergel.718)
>>>>>>>>>>>>>
>>>>>>>>>>>>> I paste the following into a 'Playground' window and 'do it'.
>>>>>>>>>>>>>
>>>>>>>>>>>>> b := RTTimeLine new.
>>>>>>>>>>>>>
>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #WP1; start: 0;
>>>>>>>>>>>>> end:
>>>>>>>>>>>>> 5).
>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #WP2; start: 5;
>>>>>>>>>>>>> end:
>>>>>>>>>>>>> 8).
>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #WP3; start: 7;
>>>>>>>>>>>>> end:
>>>>>>>>>>>>> 10).
>>>>>>>>>>>>>
>>>>>>>>>>>>> b axisX numberOfLabels: 5.
>>>>>>>>>>>>> b
>>>>>>>>>>>>>
>>>>>>>>>>>>> I get the error message  that RTTimeLine is not known.
>>>>>>>>>>>>>
>>>>>>>>>>>>> What am I missing?
>>>>>>>>>>>>>
>>>>>>>>>>>>> --Hannes
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>> On 5/8/15, Alexandre Bergel <[hidden email]> wrote:
>>>>>>>>>>>>>> Hi Hannes!
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Here is a first shoot paired-programmed with Juraj using
>>>>>>>>>>>>>> Roassal:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> -=-=-=-=-=-=-=-=-=-=-=-=
>>>>>>>>>>>>>> b := RTTimeLine new.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #WP1; start: 0;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 5).
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #WP2; start: 5;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 8).
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #WP3; start: 7;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 10).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> b axisX numberOfLabels: 5.
>>>>>>>>>>>>>> b
>>>>>>>>>>>>>> -=-=-=-=-=-=-=-=-=-=-=-=
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Here some slightly more elaborated example:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> -=-=-=-=-=-=-=-=-=-=-=-=
>>>>>>>>>>>>>> “One color per entry"
>>>>>>>>>>>>>> | b d |
>>>>>>>>>>>>>> b := RTTimeLine new.
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c1; start: 0;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 5).
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c1; start: 6;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 8).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c2; start: 0;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 5).
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c2; start: 8;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 10).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c3; start: 0;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 10).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c4; start: 5;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 10).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c5; start: 5;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 8).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> d := RTVerticalTickLineDecorator new.
>>>>>>>>>>>>>> d shape line color: Color white.
>>>>>>>>>>>>>> b addDecorator: d.
>>>>>>>>>>>>>> b axisX
>>>>>>>>>>>>>>   numberOfLabels: 5;
>>>>>>>>>>>>>>   labelRotation: -45;
>>>>>>>>>>>>>>   labelConversion: [ :v | Date year: 2015 day: v ].
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> b shape color: (RTMultiLinearColorForIdentity new objects: b
>>>>>>>>>>>>>> entries).
>>>>>>>>>>>>>> b
>>>>>>>>>>>>>> -=-=-=-=-=-=-=-=-=-=-=-=
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> One color per timeline
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> -=-=-=-=-=-=-=-=-=-=-=-=
>>>>>>>>>>>>>> | b |
>>>>>>>>>>>>>> b := RTTimeLine new.
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c1; start: 0;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 5).
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c1; start: 6;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 8).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c2; start: 0;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 5).
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c2; start: 8;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 10).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c3; start: 0;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 10).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c4; start: 5;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 10).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c5; start: 5;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 8).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> d := RTVerticalTickLineDecorator new.
>>>>>>>>>>>>>> d shape line color: Color white.
>>>>>>>>>>>>>> b addDecorator: d.
>>>>>>>>>>>>>> b axisX
>>>>>>>>>>>>>>   numberOfLabels: 5;
>>>>>>>>>>>>>>   labelRotation: -45;
>>>>>>>>>>>>>>   labelConversion: [ :v | Date year: 2015 day: v ].
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> b shape color: (RTMultiLinearColorForIdentity new command:
>>>>>>>>>>>>>> #identifier;
>>>>>>>>>>>>>> objects: #(c1 c2 c3 c4 c5)).
>>>>>>>>>>>>>> b
>>>>>>>>>>>>>> -=-=-=-=-=-=-=-=-=-=-=-=
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Age of some classes:
>>>>>>>>>>>>>> -=-=-=-=-=-=-=-=-=-=-=-=
>>>>>>>>>>>>>> | b |
>>>>>>>>>>>>>> b := RTTimeLine new.
>>>>>>>>>>>>>> b extent: 500 @ 500.
>>>>>>>>>>>>>> ((RTShape withAllSubclasses sortedAs: #ageInDaysRounded)
>>>>>>>>>>>>>> select:
>>>>>>>>>>>>>> #hasMethods)
>>>>>>>>>>>>>>   do: [ :cls |
>>>>>>>>>>>>>>       e := RTTimeLineEntry new.
>>>>>>>>>>>>>>       e identifier: cls.
>>>>>>>>>>>>>>       e start: cls computeYoungestMethod ageInDays.
>>>>>>>>>>>>>>       e end: cls computeOldestMethod ageInDays.
>>>>>>>>>>>>>>       b addEntry: e ].
>>>>>>>>>>>>>> b
>>>>>>>>>>>>>> -=-=-=-=-=-=-=-=-=-=-=-=
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> All these examples are in the Roassal time line example menu.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> This is still an early version. Let us know how it goes!
>>>>>>>>>>>>>> https://www.facebook.com/ObjectProfile/posts/840542572699008
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Cheers,
>>>>>>>>>>>>>> Alexandre
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> --
>>>>>>>>>>>>>> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
>>>>>>>>>>>>>> Alexandre Bergel  http://www.bergel.eu
>>>>>>>>>>>>>> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On May 7, 2015, at 4:25 PM, H. Hirzel
>>>>>>>>>>>>>>> <[hidden email]>
>>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Hello
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Has somebody done a GANTT chart?
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> GanttChartMorph openOn: aCollectionOfActivities
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> ?
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Activities have
>>>>>>>>>>>>>>> - id
>>>>>>>>>>>>>>> - description
>>>>>>>>>>>>>>> - start date
>>>>>>>>>>>>>>> - end date
>>>>>>>>>>>>>>> ?
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Regards
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Hannes
>>>>>>>>>>>>>
>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>> Moose-dev mailing list
>>>>>>>>>>>>> [hidden email]
>>>>>>>>>>>>> https://www.iam.unibe.ch/mailman/listinfo/moose-dev
>>>>>>>>>>>
>>>>>>>>>>> _______________________________________________
>>>>>>>>>>> Moose-dev mailing list
>>>>>>>>>>> [hidden email]
>>>>>>>>>>> https://www.iam.unibe.ch/mailman/listinfo/moose-dev
>>>>>>>> <Roassal2_configurations_Screenshot from 2015-07-29
>>>>>>>> 18:23:50.png>_______________________________________________
>>>>>>>> Moose-dev mailing list
>>>>>>>> [hidden email]
>>>>>>>> https://www.iam.unibe.ch/mailman/listinfo/moose-dev
>>>>>> <Pharo_Roassal_GANTT_chart_Screenshot from 2015-07-30 14:55:31.png>
>
> _______________________________________________
> Moose-dev mailing list
> [hidden email]
> https://www.iam.unibe.ch/mailman/listinfo/moose-dev

Reply | Threaded
Open this post in threaded view
|

Re: [Moose-dev] Re: GanttChartMorph openOn: aCollectionOfActivities ?

abergel
In reply to this post by Hannes Hirzel
Sure, this is easy. Axis supports a method called #labelConversion: [ :aNumericalValue | … ]
You need to provide a bloc that returns a string.

For example:


| data b s |
data := #(#(c1 0 5) #(c1 6 8) #(c2 0 5) #(c2 8 10) #(c3 0 10) #(c4 5 10) #(c5 5 8)).

b := RTTimeline new.

s := RTTimelineSet new.
s objects: data.
s lineIdentifier: #first.
s start: #second.
s end: #third.
b add: s.

b axisY
title: 'Task'.
b axisX 
numberOfLabels: 10;
title: 'Week day';
labelConversion: [ :v | v \\ 7 + 1 ]. 

b build.
^ b view

Does this help?

Cheers,
Alexandre



On Aug 1, 2015, at 12:48 AM, H. Hirzel <[hidden email]> wrote:

The SVG export accessible through the '...' menu works fine.

A new question regarding the labeling of the x-axis.

How do I specify that I want to see months

   8  9   10  11  12

only?

data := #(     #(WP1 8 12)      #(WP2 8 10)     #(WP3 10 11)
#(WP4 11 12)



And is something like this possible?


   8  9   10  11  12  1   2   3   4


--Hannes


On 7/31/15, Alexandre Bergel <[hidden email]> wrote:
The ‘…’ button, top right of a GTInspector that is showing a Roassal
visualization.

https://dl.dropboxusercontent.com/u/31543901/TMP/Screen%20Shot%202015-07-30%20at%2012.33.23%20PM.png

Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel  http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.



On Jul 30, 2015, at 2:25 PM, H. Hirzel <[hidden email]> wrote:

Which menu? Could you describe it verbally please where to click? The
picture did not come through.

--Hannes

On 7/30/15, Alexandre Bergel <[hidden email]> wrote:
Simply use the menu:


Cheers,
Alexandre

--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel  http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.



On Jul 30, 2015, at 11:59 AM, H. Hirzel <[hidden email]>
wrote:

Alexandre,

This is really agile ... version 1005 of Roassal loaded and version
305 of Trachel :-)

The GANTT chart works fine, see screen shot.

How do I export it as SVG code in Roassal?

--Hannes

On 7/29/15, Alexandre Bergel <[hidden email]> wrote:
Pure agile development: the latest version is the one that count.
You need to update two packages: Roassal2 and Trachel.

Cheers,
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel  http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.



On Jul 29, 2015, at 3:24 PM, H. Hirzel <[hidden email]>
wrote:

Or a configuration? Which one?

--HH

On 7/29/15, H. Hirzel <[hidden email]> wrote:
Thanks for the updated GANTT script.

My question was about the version of Roassal to load.

Which one?
I just go for version 1000?

See screenshot.

--Hannes

On 7/29/15, Alexandre Bergel <[hidden email]> wrote:
You should load the latest Roassal.

How do I do that? I just loaded Roassal into a fresh Pharo4.0
image
and RTTimeLine is not included.

We did some refactoring.
Instead, you should do:

-=-=-=-=-=-=-=-=
data := #(#(WP1 0 5) #(WP2 5 8) #(WP3 7 10)).

b := RTTimeline new.

s := RTTimelineSet new.
s objects: data.
s lineIdentifier: #first.
s start: #second.
s end: #third.
b add: s.

b axisX
numberOfLabels: 5;
labelRotation: -45;
labelConversion: [ :v | Date year: 2015 day: v ].

d := RTVerticalTickLineDecorator new.
d shape line color: Color white.
b addDecorator: d.
b
-=-=-=-=-=-=-=-=



The class RTTimelineExample contains many examples

Let us know how it goes

Alexandre



Alexandre



Le 9 mai 2015 à 19:06, H. Hirzel <[hidden email]> a
écrit
:

Thank you for the examples, Alexandre!

I have Pharo 4.0 with Roassal 2.0 installed
(AlexandreBergel.718)

I paste the following into a 'Playground' window and 'do it'.

b := RTTimeLine new.

b addEntry: (RTTimeLineEntry new identifier: #WP1; start: 0;
end:
5).
b addEntry: (RTTimeLineEntry new identifier: #WP2; start: 5;
end:
8).
b addEntry: (RTTimeLineEntry new identifier: #WP3; start: 7;
end:
10).

b axisX numberOfLabels: 5.
b

I get the error message  that RTTimeLine is not known.

What am I missing?

--Hannes


On 5/8/15, Alexandre Bergel <[hidden email]> wrote:
Hi Hannes!

Here is a first shoot paired-programmed with Juraj using
Roassal:

-=-=-=-=-=-=-=-=-=-=-=-=
b := RTTimeLine new.

b addEntry: (RTTimeLineEntry new identifier: #WP1; start: 0;
end:
5).
b addEntry: (RTTimeLineEntry new identifier: #WP2; start: 5;
end:
8).
b addEntry: (RTTimeLineEntry new identifier: #WP3; start: 7;
end:
10).

b axisX numberOfLabels: 5.
b
-=-=-=-=-=-=-=-=-=-=-=-=



Here some slightly more elaborated example:

-=-=-=-=-=-=-=-=-=-=-=-=
“One color per entry"
| b d |
b := RTTimeLine new.
b addEntry: (RTTimeLineEntry new identifier: #c1; start: 0;
end:
5).
b addEntry: (RTTimeLineEntry new identifier: #c1; start: 6;
end:
8).

b addEntry: (RTTimeLineEntry new identifier: #c2; start: 0;
end:
5).
b addEntry: (RTTimeLineEntry new identifier: #c2; start: 8;
end:
10).

b addEntry: (RTTimeLineEntry new identifier: #c3; start: 0;
end:
10).

b addEntry: (RTTimeLineEntry new identifier: #c4; start: 5;
end:
10).

b addEntry: (RTTimeLineEntry new identifier: #c5; start: 5;
end:
8).

d := RTVerticalTickLineDecorator new.
d shape line color: Color white.
b addDecorator: d.
b axisX
  numberOfLabels: 5;
  labelRotation: -45;
  labelConversion: [ :v | Date year: 2015 day: v ].

b shape color: (RTMultiLinearColorForIdentity new objects: b
entries).
b
-=-=-=-=-=-=-=-=-=-=-=-=



One color per timeline


-=-=-=-=-=-=-=-=-=-=-=-=
| b |
b := RTTimeLine new.
b addEntry: (RTTimeLineEntry new identifier: #c1; start: 0;
end:
5).
b addEntry: (RTTimeLineEntry new identifier: #c1; start: 6;
end:
8).

b addEntry: (RTTimeLineEntry new identifier: #c2; start: 0;
end:
5).
b addEntry: (RTTimeLineEntry new identifier: #c2; start: 8;
end:
10).

b addEntry: (RTTimeLineEntry new identifier: #c3; start: 0;
end:
10).

b addEntry: (RTTimeLineEntry new identifier: #c4; start: 5;
end:
10).

b addEntry: (RTTimeLineEntry new identifier: #c5; start: 5;
end:
8).

d := RTVerticalTickLineDecorator new.
d shape line color: Color white.
b addDecorator: d.
b axisX
  numberOfLabels: 5;
  labelRotation: -45;
  labelConversion: [ :v | Date year: 2015 day: v ].

b shape color: (RTMultiLinearColorForIdentity new command:
#identifier;
objects: #(c1 c2 c3 c4 c5)).
b
-=-=-=-=-=-=-=-=-=-=-=-=


Age of some classes:
-=-=-=-=-=-=-=-=-=-=-=-=
| b |
b := RTTimeLine new.
b extent: 500 @ 500.
((RTShape withAllSubclasses sortedAs: #ageInDaysRounded)
select:
#hasMethods)
  do: [ :cls |
      e := RTTimeLineEntry new.
      e identifier: cls.
      e start: cls computeYoungestMethod ageInDays.
      e end: cls computeOldestMethod ageInDays.
      b addEntry: e ].
b
-=-=-=-=-=-=-=-=-=-=-=-=



All these examples are in the Roassal time line example menu.

This is still an early version. Let us know how it goes!
https://www.facebook.com/ObjectProfile/posts/840542572699008

Cheers,
Alexandre

--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel  http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.



On May 7, 2015, at 4:25 PM, H. Hirzel
<[hidden email]>
wrote:

Hello

Has somebody done a GANTT chart?

GanttChartMorph openOn: aCollectionOfActivities

?

Activities have
- id
- description
- start date
- end date
?

Regards

Hannes

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev



_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev



<Roassal2_configurations_Screenshot from 2015-07-29
18:23:50.png>_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev


<Pharo_Roassal_GANTT_chart_Screenshot from 2015-07-30 14:55:31.png>






<Roassal_timeline_x_axis_question_Screenshot from 2015-08-01.png>

-- 
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel  http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.



Reply | Threaded
Open this post in threaded view
|

Re: [Moose-dev] Re: GanttChartMorph openOn: aCollectionOfActivities ?

Hannes Hirzel
This worked fine. The code is very readable and easy to adapt once
there is an example. Thank you.

--Hannes

On 8/1/15, Alexandre Bergel <[hidden email]> wrote:

> Sure, this is easy. Axis supports a method called #labelConversion: [
> :aNumericalValue | … ]
> You need to provide a bloc that returns a string.
>
> For example:
>
>
>
> | data b s |
> data := #(#(c1 0 5) #(c1 6 8) #(c2 0 5) #(c2 8 10) #(c3 0 10) #(c4 5 10)
> #(c5 5 8)).
>
> b := RTTimeline new.
>
> s := RTTimelineSet new.
> s objects: data.
> s lineIdentifier: #first.
> s start: #second.
> s end: #third.
> b add: s.
>
> b axisY
> title: 'Task'.
> b axisX
> numberOfLabels: 10;
> title: 'Week day';
> labelConversion: [ :v | v \\ 7 + 1 ].
>
> b build.
> ^ b view
>
> Does this help?
>
> Cheers,
> Alexandre
>
>
>
>> On Aug 1, 2015, at 12:48 AM, H. Hirzel <[hidden email]> wrote:
>>
>> The SVG export accessible through the '...' menu works fine.
>>
>> A new question regarding the labeling of the x-axis.
>>
>> How do I specify that I want to see months
>>
>>    8  9   10  11  12
>>
>> only?
>>
>> data := #(     #(WP1 8 12)      #(WP2 8 10)     #(WP3 10 11)
>> #(WP4 11 12)
>>
>>
>>
>> And is something like this possible?
>>
>>
>>    8  9   10  11  12  1   2   3   4
>>
>>
>> --Hannes
>>
>>
>> On 7/31/15, Alexandre Bergel <[hidden email]> wrote:
>>> The ‘…’ button, top right of a GTInspector that is showing a Roassal
>>> visualization.
>>>
>>> https://dl.dropboxusercontent.com/u/31543901/TMP/Screen%20Shot%202015-07-30%20at%2012.33.23%20PM.png
>>>
>>> Alexandre
>>> --
>>> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
>>> Alexandre Bergel  http://www.bergel.eu
>>> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>>>
>>>
>>>
>>>> On Jul 30, 2015, at 2:25 PM, H. Hirzel <[hidden email]> wrote:
>>>>
>>>> Which menu? Could you describe it verbally please where to click? The
>>>> picture did not come through.
>>>>
>>>> --Hannes
>>>>
>>>> On 7/30/15, Alexandre Bergel <[hidden email]> wrote:
>>>>> Simply use the menu:
>>>>>
>>>>>
>>>>> Cheers,
>>>>> Alexandre
>>>>>
>>>>> --
>>>>> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
>>>>> Alexandre Bergel  http://www.bergel.eu
>>>>> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>>>>>
>>>>>
>>>>>
>>>>>> On Jul 30, 2015, at 11:59 AM, H. Hirzel <[hidden email]>
>>>>>> wrote:
>>>>>>
>>>>>> Alexandre,
>>>>>>
>>>>>> This is really agile ... version 1005 of Roassal loaded and version
>>>>>> 305 of Trachel :-)
>>>>>>
>>>>>> The GANTT chart works fine, see screen shot.
>>>>>>
>>>>>> How do I export it as SVG code in Roassal?
>>>>>>
>>>>>> --Hannes
>>>>>>
>>>>>> On 7/29/15, Alexandre Bergel <[hidden email]> wrote:
>>>>>>> Pure agile development: the latest version is the one that count.
>>>>>>> You need to update two packages: Roassal2 and Trachel.
>>>>>>>
>>>>>>> Cheers,
>>>>>>> Alexandre
>>>>>>> --
>>>>>>> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
>>>>>>> Alexandre Bergel  http://www.bergel.eu
>>>>>>> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> On Jul 29, 2015, at 3:24 PM, H. Hirzel <[hidden email]>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>> Or a configuration? Which one?
>>>>>>>>
>>>>>>>> --HH
>>>>>>>>
>>>>>>>> On 7/29/15, H. Hirzel <[hidden email]> wrote:
>>>>>>>>> Thanks for the updated GANTT script.
>>>>>>>>>
>>>>>>>>> My question was about the version of Roassal to load.
>>>>>>>>>
>>>>>>>>> Which one?
>>>>>>>>> I just go for version 1000?
>>>>>>>>>
>>>>>>>>> See screenshot.
>>>>>>>>>
>>>>>>>>> --Hannes
>>>>>>>>>
>>>>>>>>> On 7/29/15, Alexandre Bergel <[hidden email]> wrote:
>>>>>>>>>>>> You should load the latest Roassal.
>>>>>>>>>>>
>>>>>>>>>>> How do I do that? I just loaded Roassal into a fresh Pharo4.0
>>>>>>>>>>> image
>>>>>>>>>>> and RTTimeLine is not included.
>>>>>>>>>>
>>>>>>>>>> We did some refactoring.
>>>>>>>>>> Instead, you should do:
>>>>>>>>>>
>>>>>>>>>> -=-=-=-=-=-=-=-=
>>>>>>>>>> data := #(#(WP1 0 5) #(WP2 5 8) #(WP3 7 10)).
>>>>>>>>>>
>>>>>>>>>> b := RTTimeline new.
>>>>>>>>>>
>>>>>>>>>> s := RTTimelineSet new.
>>>>>>>>>> s objects: data.
>>>>>>>>>> s lineIdentifier: #first.
>>>>>>>>>> s start: #second.
>>>>>>>>>> s end: #third.
>>>>>>>>>> b add: s.
>>>>>>>>>>
>>>>>>>>>> b axisX
>>>>>>>>>> numberOfLabels: 5;
>>>>>>>>>> labelRotation: -45;
>>>>>>>>>> labelConversion: [ :v | Date year: 2015 day: v ].
>>>>>>>>>>
>>>>>>>>>> d := RTVerticalTickLineDecorator new.
>>>>>>>>>> d shape line color: Color white.
>>>>>>>>>> b addDecorator: d.
>>>>>>>>>> b
>>>>>>>>>> -=-=-=-=-=-=-=-=
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> The class RTTimelineExample contains many examples
>>>>>>>>>>
>>>>>>>>>> Let us know how it goes
>>>>>>>>>>
>>>>>>>>>> Alexandre
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>> Alexandre
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>> Le 9 mai 2015 à 19:06, H. Hirzel <[hidden email]> a
>>>>>>>>>>>>> écrit
>>>>>>>>>>>>> :
>>>>>>>>>>>>>
>>>>>>>>>>>>> Thank you for the examples, Alexandre!
>>>>>>>>>>>>>
>>>>>>>>>>>>> I have Pharo 4.0 with Roassal 2.0 installed
>>>>>>>>>>>>> (AlexandreBergel.718)
>>>>>>>>>>>>>
>>>>>>>>>>>>> I paste the following into a 'Playground' window and 'do it'.
>>>>>>>>>>>>>
>>>>>>>>>>>>> b := RTTimeLine new.
>>>>>>>>>>>>>
>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #WP1; start: 0;
>>>>>>>>>>>>> end:
>>>>>>>>>>>>> 5).
>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #WP2; start: 5;
>>>>>>>>>>>>> end:
>>>>>>>>>>>>> 8).
>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #WP3; start: 7;
>>>>>>>>>>>>> end:
>>>>>>>>>>>>> 10).
>>>>>>>>>>>>>
>>>>>>>>>>>>> b axisX numberOfLabels: 5.
>>>>>>>>>>>>> b
>>>>>>>>>>>>>
>>>>>>>>>>>>> I get the error message  that RTTimeLine is not known.
>>>>>>>>>>>>>
>>>>>>>>>>>>> What am I missing?
>>>>>>>>>>>>>
>>>>>>>>>>>>> --Hannes
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>> On 5/8/15, Alexandre Bergel <[hidden email]> wrote:
>>>>>>>>>>>>>> Hi Hannes!
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Here is a first shoot paired-programmed with Juraj using
>>>>>>>>>>>>>> Roassal:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> -=-=-=-=-=-=-=-=-=-=-=-=
>>>>>>>>>>>>>> b := RTTimeLine new.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #WP1; start: 0;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 5).
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #WP2; start: 5;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 8).
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #WP3; start: 7;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 10).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> b axisX numberOfLabels: 5.
>>>>>>>>>>>>>> b
>>>>>>>>>>>>>> -=-=-=-=-=-=-=-=-=-=-=-=
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Here some slightly more elaborated example:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> -=-=-=-=-=-=-=-=-=-=-=-=
>>>>>>>>>>>>>> “One color per entry"
>>>>>>>>>>>>>> | b d |
>>>>>>>>>>>>>> b := RTTimeLine new.
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c1; start: 0;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 5).
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c1; start: 6;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 8).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c2; start: 0;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 5).
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c2; start: 8;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 10).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c3; start: 0;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 10).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c4; start: 5;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 10).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c5; start: 5;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 8).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> d := RTVerticalTickLineDecorator new.
>>>>>>>>>>>>>> d shape line color: Color white.
>>>>>>>>>>>>>> b addDecorator: d.
>>>>>>>>>>>>>> b axisX
>>>>>>>>>>>>>>   numberOfLabels: 5;
>>>>>>>>>>>>>>   labelRotation: -45;
>>>>>>>>>>>>>>   labelConversion: [ :v | Date year: 2015 day: v ].
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> b shape color: (RTMultiLinearColorForIdentity new objects: b
>>>>>>>>>>>>>> entries).
>>>>>>>>>>>>>> b
>>>>>>>>>>>>>> -=-=-=-=-=-=-=-=-=-=-=-=
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> One color per timeline
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> -=-=-=-=-=-=-=-=-=-=-=-=
>>>>>>>>>>>>>> | b |
>>>>>>>>>>>>>> b := RTTimeLine new.
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c1; start: 0;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 5).
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c1; start: 6;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 8).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c2; start: 0;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 5).
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c2; start: 8;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 10).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c3; start: 0;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 10).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c4; start: 5;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 10).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> b addEntry: (RTTimeLineEntry new identifier: #c5; start: 5;
>>>>>>>>>>>>>> end:
>>>>>>>>>>>>>> 8).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> d := RTVerticalTickLineDecorator new.
>>>>>>>>>>>>>> d shape line color: Color white.
>>>>>>>>>>>>>> b addDecorator: d.
>>>>>>>>>>>>>> b axisX
>>>>>>>>>>>>>>   numberOfLabels: 5;
>>>>>>>>>>>>>>   labelRotation: -45;
>>>>>>>>>>>>>>   labelConversion: [ :v | Date year: 2015 day: v ].
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> b shape color: (RTMultiLinearColorForIdentity new command:
>>>>>>>>>>>>>> #identifier;
>>>>>>>>>>>>>> objects: #(c1 c2 c3 c4 c5)).
>>>>>>>>>>>>>> b
>>>>>>>>>>>>>> -=-=-=-=-=-=-=-=-=-=-=-=
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Age of some classes:
>>>>>>>>>>>>>> -=-=-=-=-=-=-=-=-=-=-=-=
>>>>>>>>>>>>>> | b |
>>>>>>>>>>>>>> b := RTTimeLine new.
>>>>>>>>>>>>>> b extent: 500 @ 500.
>>>>>>>>>>>>>> ((RTShape withAllSubclasses sortedAs: #ageInDaysRounded)
>>>>>>>>>>>>>> select:
>>>>>>>>>>>>>> #hasMethods)
>>>>>>>>>>>>>>   do: [ :cls |
>>>>>>>>>>>>>>       e := RTTimeLineEntry new.
>>>>>>>>>>>>>>       e identifier: cls.
>>>>>>>>>>>>>>       e start: cls computeYoungestMethod ageInDays.
>>>>>>>>>>>>>>       e end: cls computeOldestMethod ageInDays.
>>>>>>>>>>>>>>       b addEntry: e ].
>>>>>>>>>>>>>> b
>>>>>>>>>>>>>> -=-=-=-=-=-=-=-=-=-=-=-=
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> All these examples are in the Roassal time line example menu.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> This is still an early version. Let us know how it goes!
>>>>>>>>>>>>>> https://www.facebook.com/ObjectProfile/posts/840542572699008
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Cheers,
>>>>>>>>>>>>>> Alexandre
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> --
>>>>>>>>>>>>>> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
>>>>>>>>>>>>>> Alexandre Bergel  http://www.bergel.eu
>>>>>>>>>>>>>> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On May 7, 2015, at 4:25 PM, H. Hirzel
>>>>>>>>>>>>>>> <[hidden email]>
>>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Hello
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Has somebody done a GANTT chart?
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> GanttChartMorph openOn: aCollectionOfActivities
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> ?
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Activities have
>>>>>>>>>>>>>>> - id
>>>>>>>>>>>>>>> - description
>>>>>>>>>>>>>>> - start date
>>>>>>>>>>>>>>> - end date
>>>>>>>>>>>>>>> ?
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Regards
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Hannes
>>>>>>>>>>>>>
>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>> Moose-dev mailing list
>>>>>>>>>>>>> [hidden email]
>>>>>>>>>>>>> https://www.iam.unibe.ch/mailman/listinfo/moose-dev
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> _______________________________________________
>>>>>>>>>>> Moose-dev mailing list
>>>>>>>>>>> [hidden email]
>>>>>>>>>>> https://www.iam.unibe.ch/mailman/listinfo/moose-dev
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>> <Roassal2_configurations_Screenshot from 2015-07-29
>>>>>>>> 18:23:50.png>_______________________________________________
>>>>>>>> Moose-dev mailing list
>>>>>>>> [hidden email]
>>>>>>>> https://www.iam.unibe.ch/mailman/listinfo/moose-dev
>>>>>>>
>>>>>>>
>>>>>> <Pharo_Roassal_GANTT_chart_Screenshot from 2015-07-30 14:55:31.png>
>>>>>
>>>>>
>>>>
>>>
>>>
>>>
>> <Roassal_timeline_x_axis_question_Screenshot from 2015-08-01.png>
>
> --
> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> Alexandre Bergel  http://www.bergel.eu
> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>
>
>
>

12