Hi Maxim,

thank you for looking at my source, I changed this. Uploaded new commits
added to the pull request.

Dieter

Am 17.08.2017 um 15:14 schrieb Maxim Solodovnik:
> I have added few comments
> 
> On Thu, Aug 17, 2017 at 4:24 PM, Dieter Tremel
> <tre...@tremel-computer.de> wrote:
>> Hello Martin,
>>
>> made pull request #608 to wicket 7 branch. Hope it's all done as required.
>>
>> Did not rename till now, hope it is still possible. Just wanted to give
>> you a view.
>>
>> AJAX is not working yet, have a look at example, bar chart, AjaxCheckBox
>> for stacked percent.
>>
>> Cheers
>> Dieter
>>
>> Am 16.08.2017 um 14:06 schrieb Martin Grigorov:
>>> Hi Dieter.
>>>
>>> On Wed, Aug 16, 2017 at 12:53 PM, Dieter Tremel <tre...@tremel-computer.de>
>>> wrote:
>>>
>>>> Hi Martin,
>>>>
>>>> Google Chart is versioned
>>>> (https://developers.google.com/chart/interactive/docs/
>>>> release_notes#Releases)
>>>> but only in newer "frozen versions", 41 .. 45. 45 is current. Not ideal
>>>> for naming, since Google does not emphasize versioning at all.
>>>>
>>>> Perhaps we can create a name from "image vs. loader" based or "image vs
>>>> SVG/VML" based. googlecharts-parent is based on the deprecated image
>>>> api: https://developers.google.com/chart/image/ The current API is based
>>>> on function from a loaded library:
>>>> https://developers.google.com/chart/interactive/docs/basic_load_libs.
>>>> Please make a suggestion.
>>>>
>>>> My library (currently named gchart-parent) has been improved since my
>>>> first post:
>>>>  - better package structure
>>>>  - implemented OptionBuilder with fluent interface
>>>>  - make ChartOptions and JsonStringer model-aware, so values in options
>>>> can be IModel
>>>>  - offer ChartLibLoaderBehavior for Page to avoid double library loading
>>>> on pages with multiple charts by use of HeaderItem#getDependencies
>>>>  - more examples, new examples analog to Google's examples
>>>>  - tried to make chart redrawable by AJAX, but this is not finished, I
>>>> have problems calling the draw callbacks when adding to target. Here I
>>>> need some help. Should I write a post to us...@wicket.apache.org?
>>>>
>>>> I will prepare a pull request, but before I have to check:
>>>>  - find name (see above)
>>>>
>>>
>>> I think the best would be to rename the old to
>>> wicketstuff-google-image-charts and use wicketstuff-google-charts for the
>>> new one.
>>> Second option is to use wicketstuff-google-charts-loader for the new one.
>>>
>>>
>>>>  - learn maven toolchain definition
>>>>
>>>
>>> All you need is $HOME/.m2/toolchains.xml with content like [1]. Just fix
>>> the paths to match you local environment. You can remove entries for old
>>> JDKs.
>>>
>>>
>>>>  - learn again how to make a neat pull request
>>>>
>>>
>>> Fork the repo, make changes, create PR
>>>
>>>
>>>>  - fix AJAX issue
>>>>  - should I include my local git history in request or start with a
>>>> clean history?
>>>>
>>>
>>> This won't be easy!
>>> But if you are able to merge your code in the forked WicketStuff repo and
>>> preserve the history then do it.
>>> It is not something really important though!
>>>
>>>
>>>>  - I mixed some lambda expressions and stream use with some traditional
>>>> for loops. How should this be unified? Java 8 or not?
>>>>
>>>
>>> Java 8 code could be used only in WicketStuff master branch, i.e. Wicket
>>> 8.x.
>>> If this is OK for you then everything is OK.
>>> If you want to contribute it to wicket-7.x branch then it should be
>>> compileable with Java 7.
>>>
>>>
>>>>
>>>> Thank you for your help
>>>> Dieter
>>>>
>>>>
>>> 1.
>>> cat ~/.m2/toolchains.xml
>>> <?xml version="1.0" encoding="UTF8"?>
>>> <toolchains>
>>>   <toolchain>
>>>     <type>jdk</type>
>>>     <provides>
>>>       <version>1.6</version>
>>>       <vendor>oracle</vendor>
>>>     </provides>
>>>     <configuration>
>>>       <jdkHome>/home/martin/devel/java-6/</jdkHome>
>>>     </configuration>
>>>   </toolchain>
>>>   <toolchain>
>>>     <type>jdk</type>
>>>     <provides>
>>>       <version>1.7</version>
>>>       <vendor>oracle</vendor>
>>>     </provides>
>>>     <configuration>
>>>       <jdkHome>/home/martin/devel/java-7/</jdkHome>
>>>     </configuration>
>>>   </toolchain>
>>>   <toolchain>
>>>     <type>jdk</type>
>>>     <provides>
>>>       <version>1.8</version>
>>>       <vendor>oracle</vendor>
>>>     </provides>
>>>     <configuration>
>>>       <jdkHome>/home/martin/devel/java-8/</jdkHome>
>>>     </configuration>
>>>   </toolchain>
>>>   <toolchain>
>>>     <type>jdk</type>
>>>     <provides>
>>>       <version>1.9</version>
>>>       <vendor>oracle</vendor>
>>>     </provides>
>>>     <configuration>
>>>       <jdkHome>/home/martin/devel/java-9/</jdkHome>
>>>     </configuration>
>>>   </toolchain>
>>>  </toolchains>⏎
>>>
>>>
>>>
>>>> Am 13.08.2017 um 12:56 schrieb Martin Grigorov:
>>>>> Hi Dieter,
>>>>>
>>>>> Are Google Charts versioned ?
>>>>> Maybe we can add your library as wicketstuff-google-charts2, or whatever
>>>> is
>>>>> the correct version. As we did with Google Maps APIs.
>>>>>
>>>>> Please create a Pull Request!
>>>>> Thank you!
>>>>>
>>>>> Martin Grigorov
>>>>> Wicket Training and Consulting
>>>>> https://twitter.com/mtgrigorov
>>>>>
>>>>> On Mon, Aug 7, 2017 at 10:36 AM, Dieter Tremel <
>>>> tre...@tremel-computer.de>
>>>>> wrote:
>>>>>
>>>>>> Hello wicket-team,
>>>>>>
>>>>>> for a project visualizing metar weather data I used wicket-charts based
>>>>>> on Highcharts in a former version
>>>>>> (http://tremel-computer.no-ip.org:8080/metarstation/). Due to licensing
>>>>>> of Highcharts I decided to move to Google charts, but found the
>>>>>> implementation in wicketstuf outdated, since it depends on the image
>>>>>> chart API, which is deprecated since 2012.
>>>>>>
>>>>>> So I wrote a Google Charts component based on the actual API. I am
>>>>>> pleased with it, perhaps it could be helpful for other developers, so
>>>>>> I'd like to give it to wicketstuff.
>>>>>>
>>>>>> It is rather lightweight, just enough Java to render the necessary
>>>>>> JavaScript to the page header without knowledge of JavaScript. Knowledge
>>>>>> of the Google API is needed to use it, it does not hide anything of the
>>>>>> API, it should be quite feature complete. It is based at many points on
>>>>>> org.apache.wicket.ajax.json and allows the user to build Java-Objects
>>>>>> from compact JSON-Strings too, for example look at the essential class
>>>>>> ChartOptions. Most of the classes are easy to understand with knowledge
>>>>>> of the Google Charts API, since they are counterparts of the structure
>>>>>> there. Only OptionHelper as container for convenience methods is a bit
>>>>>> clumsy, but I have a different solution as a builder with a fluent
>>>>>> interface in mind. gchart is actually used in a new branch of my weather
>>>>>> app and does it's job there well.
>>>>>>
>>>>>> Perhaps you can have a look at it, if you like it, we can integrate it
>>>>>> in wicketstuff. The ZIP in the attachment has already the structure with
>>>>>> parent, lib and examples. I tried to write useful JavaDoc and some basic
>>>>>> unit tests. The example is a quickstart giving two charts on one page,
>>>>>> first one simple like Googles's Getting Started, the other more complex
>>>>>> with a overview how to use the lib's features.
>>>>>>
>>>>>> Three issues (see TODO lines integrated in the source) are existing, but
>>>>>> two are small, not blocking. The essential one is if the rendering of
>>>>>> JavaScript in Chart#renderHead(final IHeaderResponse response) is
>>>>>> sufficient for refreshing the chart by AJAX, I am not sure if. You can
>>>>>> decide this in a second, I believe, and give me some hints to make the
>>>>>> chart AJAX ready.
>>>>>>
>>>>>> I first wrote to Martin Grigorov since he helped me long ago to
>>>>>> contribute a bit to wicketstuff. He told me he is on vacation and I
>>>>>> should repeat the mail to the list.
>>>>>>
>>>>>> Dieter Tremel

Reply via email to