Hi Alexandre,

Thanks! (more below)


On 28 March 2018 at 14:56, Alexandre Bergel <alexandre.ber...@me.com> wrote:
> Hi Alistair!
>
> Yes, this is something we thought about some times ago.
>
> After updating Roassal, try this:
> -=-=-=-=-=-=-=-=-=-=-=-=
> v := RTView new.
> b := [ :someClasses |
>         g := RTGrapher new.
>         g view: v.
>         ds := RTData new.
>         ds points: someClasses.
>         ds y: [ :cls | cls numberOfMethods ].
>         ds x: [ :cls | cls numberOfLinesOfCode ].
>         g add: ds.
>
>         g addDecorator: (RTRangeSelector new callback: [:es |
>                 | classesToZoomIn |
>                 classesToZoomIn := es collect: #model.
>                 v cleanAll.
>                 b value: classesToZoomIn
>         ]).
>         g build.
> ].
>
> b value: RTShape withAllSubclasses.
> v
> -=-=-=-=-=-=-=-=-=-=-=-=
>
> Let me know how it goes.

Great, it's working fine!

If you select an empty portion of the graph an error is raised -
"Error: No dataset has been added?".

I solved this with the following change, which simply ignores empty
areas and notifies the user:


RTRangeSelector>>callbackWithSelectedElements
    | selectedElements |
    selectedElements := self elementsWithinTheSelection.
    selectedElements ifEmpty: [
        UIManager default inform: 'Empty region selected, ignoring'.
        ^self ].
    self evaluateCallBackWithElements: selectedElements


That was a quick hack, so there could well be a better solution.

>From what I can see, there isn't a way to zoom back out or scroll left
and right.

I might modify RTRangeSelector so that a right click zooms out.  I'll
have to think about scrolling a bit more.


Thanks again!
Alistair


> Cheers,
> Alexandre
>
> --
> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> Alexandre Bergel  http://www.bergel.eu
> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>
>
>
>> On Mar 28, 2018, at 4:02 AM, Alistair Grant <akgrant0...@gmail.com> wrote:
>>
>> Hi Everyone,
>>
>> I'm using RTGrapher to display a simple line graph where the x-axis
>> has values from roughly 0 to 500,000 and the y-axis from 0 to 20.
>>
>> What I'd like to be able to do is to zoom in just the x-axis, i.e.
>> instead of displaying the entire 0 to 500,000 range, be able to narrow
>> it down in stages, to, e.g. 430,000 to 431,000.  The y-axis would be
>> unchanged, i.e. still 0 to 20.  Ideally I could then scroll left and
>> right along the x-axis.
>>
>> I can create a Spec widget with buttons to redraw the graph, but was
>> wondering if there was a better way.
>>
>> Thanks,
>> Alistair
>>
>
>

Reply via email to