Thanks Andun :)

Here are couple more comments:
1) WhiteboardBehavior.respond: how the string editedElement looks like?
Maybe it is better to create *enum* with element names and use
*switch*instead of nested if...else...if
2) WhiteboardBehavior.renderHead: I would recommend JSONArray instead of
concatenating JSONObject.toString(). The code will be very smple in this
case:
for (Element e : elementMap.values()) {
array.add(element.getJSON());
}
3) the bullet above also will require getJSON() method be changed to return
JSONObject
4) I also would change

Boolean hidden=null;
                try{
                        hidden=(Boolean)object.get("hidden");
                }catch(JSONException e){
                        //Add Error Handling
                }
this.hidden = hidden;

to be just:

try{
                        this.hidden=(Boolean)object.get("hidden");
                }catch(JSONException e){
                        //Add Error Handling
                }

less code, same effect :)



On Tue, Jul 16, 2013 at 1:54 AM, Andun Sameera <andun...@gmail.com> wrote:

> Hi Maxim,
>
> I think Andrey knows the licenses level details about images. Other than
> that I have fixed the things you have asked. You can build the
> Whiteboard-Wicket <https://github.com/andunslg/Whiteboard-Wicket> project
> and run the 
> Whiteboard-Wicket-Sample<https://github.com/andunslg/Whiteboard-Wicket-Sample>to
>  see whiteboard demo. I don't have a live deployment :(.
>
> Thanks!
>
>
> On Mon, Jul 15, 2013 at 11:03 PM, Maxim Solodovnik 
> <solomax...@gmail.com>wrote:
>
>> Additionally: there is no need to perform
>> hashmap.remove(key);
>> hashmap.put(key, value);
>>
>> according to javadoc: 
>> http://docs.oracle.com/javase/6/docs/api/java/util/HashMap.html#put(K,
>> V)
>> "If the map previously contained a mapping for the key, the old value is
>> replaced."
>>
>>
>> On Tue, Jul 16, 2013 at 12:32 AM, Maxim Solodovnik 
>> <solomax...@gmail.com>wrote:
>>
>>> Hello Andun,
>>> Can you please tell me what is the license for the images used in this
>>> Whiteboard component?
>>>
>>> Comments:
>>> 1) WhiteboardBehavior.respond method: heavy copy/paste should be removed
>>> 2) instead of having static getter for all of your elements you can have
>>> constructor accepting JSONObject
>>> 3) It is bad idea to manually concat strings in getJSON methods, please
>>> use "new JSONObject()....toString()"
>>> 4) Please remove all System.out.print* (replace with log.debug(...))
>>>
>>> after all of the above will be fixed I would like to take a look at
>>> working prototype. Do you have it's working? Or I need to locally start
>>> sample application for this?
>>>
>>>
>>> On Mon, Jul 8, 2013 at 10:58 PM, Andun Sameera <andun...@gmail.com>wrote:
>>>
>>>> Hi Maxim,
>>>>
>>>> I have implemented following,
>>>>
>>>>    - WhiteboardPanel
>>>>    - WhiteboardBehaviour with Synchronization implemented
>>>>
>>>> Now whiterboard working well I think. You can find the code in
>>>> https://github.com/andunslg/Whiteboard-Wicket and a sample app in
>>>> https://github.com/andunslg/Whiteboard-Wicket-Sample. I will do the
>>>> polishing part of the code.
>>>>
>>>> Thanks!
>>>> On Mon, Jul 8, 2013 at 6:33 AM, Maxim Solodovnik 
>>>> <solomax...@gmail.com>wrote:
>>>>
>>>>> Hello Andun,
>>>>>
>>>>> I'll take a look at your code today
>>>>>
>>>>> here is an example of pushing updates to the connected users:
>>>>>
>>>>> https://svn.apache.org/repos/asf/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/user/ChatPanel.java
>>>>>
>>>>>
>>>>> On Mon, Jul 8, 2013 at 12:15 AM, Andun Sameera <andun...@gmail.com>wrote:
>>>>>
>>>>>> Hi,
>>>>>>
>>>>>>
>>>>>> On Sun, Jul 7, 2013 at 10:03 PM, Andun Sameera <andun...@gmail.com>wrote:
>>>>>>
>>>>>>> Hi Maxim,
>>>>>>>
>>>>>>> Need your assistance in figuring out the whitboard synchronization
>>>>>>> logic. Currently what we have is this.
>>>>>>>
>>>>>>>    - WhiteboardBehaviour which can be applied in this format,
>>>>>>>
>>>>>>> WhiteboardBehavior whiteboardBehavior=new
>>>>>>> WhiteboardBehavior("whiteboard");
>>>>>>>
>>>>>>>    - When this is added to a page, all the whiteboard elements will
>>>>>>>    be added to a Map. Each Creation,Update will effect on this 
>>>>>>> collection
>>>>>>>    - Using this kind of a JavaScript, we can add elements to a
>>>>>>>    whiteboard.
>>>>>>>
>>>>>>> elementCollection=whiteboard.getMainCollection();
>>>>>>> elementCollection.acceptJsonStr('ChangedElementJSON');
>>>>>>>
>>>>>>>    - Using this kind of a JavaScript, we can load a whiteboard
>>>>>>>    using JSON string of all the elements
>>>>>>>
>>>>>>> elementCollection=whiteboard.getMainCollection();
>>>>>>> elementCollection.acceptJsonStr('elementLisyJSON');
>>>>>>>
>>>>>>> In the current test application, I use two buttons to add elements
>>>>>>> to whitebord and load whitebord from given JSON string.
>>>>>>>
>>>>>>> My question is what is the best way to implement Whiteboard
>>>>>>> Synchronization using these code in Wicket? I planned is this kind of
>>>>>>> approach,
>>>>>>>
>>>>>>>    - 1st person open the Whiteboard
>>>>>>>    - He is draws some elements and the element map in the
>>>>>>>    WhiteboardBehaviour get update
>>>>>>>    - 2nd person comes and open the whiteboard. The behavior found
>>>>>>>    that element map(This should be a static collection) is not empty. 
>>>>>>> Thus
>>>>>>>    load the content of whiteboard using the element map. 3rd, 4th 
>>>>>>> happens like
>>>>>>>    that
>>>>>>>
>>>>>>> I just implemented this in the code
>>>>>>
>>>>>>>
>>>>>>>    - When one person do a change in the whiteboard, element map wll
>>>>>>>    be updated. Meanwhile all the other have to be pushed with the new 
>>>>>>> change
>>>>>>>
>>>>>>> I am looking in to
>>>>>> http://www.wicket-library.com/wicket-examples-6.0.x/atmosphere/ to
>>>>>> do this task
>>>>>>
>>>>>>>
>>>>>>>    -
>>>>>>>    - There whiteboards get update with new change
>>>>>>>
>>>>>>> If this is OK how can we push updates to clients form wicket server
>>>>>>> to achieve 4th step? If you want to have a look a the current code, all 
>>>>>>> are
>>>>>>> in github.
>>>>>>>
>>>>>>> Thanks!
>>>>>>>
>>>>>>>
>>>>>>> On Sun, Jul 7, 2013 at 2:52 AM, Andun Sameera <andun...@gmail.com>wrote:
>>>>>>>
>>>>>>>> Hi Maxim,
>>>>>>>>
>>>>>>>> I have created the WhiteboardBehaviour in
>>>>>>>> https://github.com/andunslg/Whiteboard-Wicket. Also I have created
>>>>>>>> JAVA objects to map elements in Andrey Whiteboard. Now each and every
>>>>>>>> drawing on whiteboard are mapped in to a JAVA Object. Also other way 
>>>>>>>> around
>>>>>>>> is happening. Also all the elements are kept in a MAP.
>>>>>>>>
>>>>>>>> I have implemented all these in the repo. Still the code is in a
>>>>>>>> preliminary stage. But please have a look. There is a sample webapp in 
>>>>>>>> the
>>>>>>>> repo.
>>>>>>>>
>>>>>>>> Thanks!
>>>>>>>>
>>>>>>>>
>>>>>>>> On Sat, Jul 6, 2013 at 7:42 PM, Bogdanov Andrey <ba...@mail.ru>wrote:
>>>>>>>>
>>>>>>>>> Yes, you should be carefull with quotes and doublequotes. You
>>>>>>>>> could use any of them, but if you use single quotes inside string, 
>>>>>>>>> then you
>>>>>>>>> should use doublequotes to enclose the string. And vise versa.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Суббота, 6 июля 2013, 18:31 +05:30 от Andun Sameera <
>>>>>>>>> andun...@gmail.com>:
>>>>>>>>>
>>>>>>>>>   Got it working with this,
>>>>>>>>>
>>>>>>>>> collection.acceptJsonStr('{"id": "0", "type": "PointFree", "x":
>>>>>>>>> "-530", "y": "14"}')
>>>>>>>>>
>>>>>>>>> Thanks!
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Sat, Jul 6, 2013 at 6:22 PM, Andun Sameera 
>>>>>>>>> <andun...@gmail.com<https://e.mail.ru/sentmsg?mailto=mailto%3aandun...@gmail.com>
>>>>>>>>> > wrote:
>>>>>>>>>
>>>>>>>>> Sry for the previous mail!
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Hi Andreay,
>>>>>>>>>
>>>>>>>>> Is this syntax correct to add a element to Whiteboard?
>>>>>>>>>
>>>>>>>>> var collection = whiteboard.collections.main;
>>>>>>>>> collection.acceptJsonStr("{"
>>>>>>>>> id": 0, "type": "PointFree", "x": -530, "y": 14}");
>>>>>>>>>
>>>>>>>>> I get this error in Firebug console,
>>>>>>>>>
>>>>>>>>> SyntaxError: missing ) after argument list
>>>>>>>>>
>>>>>>>>> Thanks!
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Sat, Jul 6, 2013 at 6:21 PM, Andun Sameera 
>>>>>>>>> <andun...@gmail.com<https://e.mail.ru/sentmsg?mailto=mailto%3aandun...@gmail.com>
>>>>>>>>> > wrote:
>>>>>>>>>
>>>>>>>>> Hi Andreay,
>>>>>>>>>
>>>>>>>>> Is this syntax correct to add a element to Whiteboard?
>>>>>>>>>
>>>>>>>>> collection.acceptJsonStr(
>>>>>>>>>
>>>>>>>>> collection.acceptJsonStr(
>>>>>>>>>
>>>>>>>>> collection.acceptJsonStr({collection.acceptJsonStr({collection.acceptJsonStr({
>>>>>>>>>
>>>>>>>>> var collection = whiteboard.collections.main;
>>>>>>>>> collection.acceptJsonStr("{"id": 0, "type": "PointFree", "x":
>>>>>>>>> -530, "y": 14}");
>>>>>>>>>
>>>>>>>>> I get this error in Firebug console,
>>>>>>>>>
>>>>>>>>> SyntaxError: missing ) after argument list
>>>>>>>>>
>>>>>>>>> Thanks!
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Sat, Jul 6, 2013 at 12:48 AM, Andun Sameera 
>>>>>>>>> <andun...@gmail.com<https://e.mail.ru/sentmsg?mailto=mailto%3aandun...@gmail.com>
>>>>>>>>> > wrote:
>>>>>>>>>
>>>>>>>>> I got the update and will work on creating the Java Objects.
>>>>>>>>>
>>>>>>>>> Thanks!
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Fri, Jul 5, 2013 at 10:40 PM, Bogdanov Andrey 
>>>>>>>>> <ba...@mail.ru<https://e.mail.ru/sentmsg?mailto=mailto%3aba...@mail.ru>
>>>>>>>>> > wrote:
>>>>>>>>>
>>>>>>>>>  Hi Andun,
>>>>>>>>>
>>>>>>>>> Just now I pushed corrected version of whiteboard to the repo (
>>>>>>>>> https://github.com/bay73/whiteboard.git ).
>>>>>>>>> You could take it. I hope text element works well now.
>>>>>>>>> Thanks for finding this bug.
>>>>>>>>>
>>>>>>>>> Regards,
>>>>>>>>> Andrey
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Пятница,  5 июля 2013, 3:08 +05:30 от Andun Sameera <
>>>>>>>>> andun...@gmail.com<https://e.mail.ru/sentmsg?mailto=mailto%3aandun...@gmail.com>
>>>>>>>>> >:
>>>>>>>>> >Hi Andrey,
>>>>>>>>> >
>>>>>>>>> >Currently I am in the process of Mapping Whiteboard Elements to
>>>>>>>>> Java Objects. There I noticed that Text fields are bit buggy. I have
>>>>>>>>> attached a screen shot. When we draw a text box, we are shown a 
>>>>>>>>> label. But
>>>>>>>>> I can find a place to edit it. Also I tried with info tool. When I 
>>>>>>>>> enter a
>>>>>>>>> text using that, it overlaps as shown in screen shot. Is there a 
>>>>>>>>> fault in
>>>>>>>>> my code ? You can look at it in the git repo.
>>>>>>>>> >
>>>>>>>>> >Thanks!
>>>>>>>>> >
>>>>>>>>> >On Fri, Jul 5, 2013 at 2:10 AM, Andun Sameera  <
>>>>>>>>> andun...@gmail.com<https://e.mail.ru/sentmsg?mailto=mailto%3aandun...@gmail.com>>
>>>>>>>>>  wrote:
>>>>>>>>> >>Hi All,
>>>>>>>>> >>
>>>>>>>>> >>I have create the  
>>>>>>>>> >>https://github.com/andunslg/Whiteboard-Wicketrepo. I have committed 
>>>>>>>>> >>my POC code there and doing the development on that.
>>>>>>>>> >>
>>>>>>>>> >>Thanks!
>>>>>>>>> >>
>>>>>>>>> >>
>>>>>>>>> >>On Thu, Jul 4, 2013 at 12:10 PM, Maxim Solodovnik  <
>>>>>>>>> solomax...@gmail.com<https://e.mail.ru/sentmsg?mailto=mailto%3asolomax...@gmail.com>>
>>>>>>>>>  wrote:
>>>>>>>>> >>>sure, please create git repo!
>>>>>>>>> >>>
>>>>>>>>> >>>instead of using Wicket.ajax.get you can use normal
>>>>>>>>> *AjaxBehavior you can also create functions of it using 
>>>>>>>>> getCallbackFunction.
>>>>>>>>> >>>Old OM code had examples of that (was replaced with
>>>>>>>>> wicketjquieryui-calendar)
>>>>>>>>> >>>
>>>>>>>>> >>>
>>>>>>>>> >>>On Thu, Jul 4, 2013 at 3:45 AM, Andun Sameera  <
>>>>>>>>> andun...@gmail.com<https://e.mail.ru/sentmsg?mailto=mailto%3aandun...@gmail.com>>
>>>>>>>>>  wrote:
>>>>>>>>> >>>>Hi All,
>>>>>>>>> >>>>
>>>>>>>>> >>>>I have successfully did a first step integration of Andrey's
>>>>>>>>> whiteboard with Wicket. Now I can send the JSON string successfully 
>>>>>>>>> to the
>>>>>>>>> JAVA code. Now I know the way and will work on formalizing the thing!
>>>>>>>>> >>>>
>>>>>>>>> >>>>
>>>>>>>>> >>>>@Andrey
>>>>>>>>> >>>>
>>>>>>>>> >>>>Can you give me a example to add a onChnage method to main
>>>>>>>>> collection. I tried to do it. But is fails.
>>>>>>>>> >>>>
>>>>>>>>> >>>>@ Maxim
>>>>>>>>> >>>>
>>>>>>>>> >>>>Can I create a Git Repo for the task? Is it going to be a
>>>>>>>>> wicket-jquery-UI plug-in ? or else ?
>>>>>>>>> >>>>
>>>>>>>>> >>>>Thanks!
>>>>>>>>> >>>>
>>>>>>>>> >>>>
>>>>>>>>> >>>>On Wed, Jul 3, 2013 at 11:18 PM, Andun Sameera  <
>>>>>>>>> andun...@gmail.com<https://e.mail.ru/sentmsg?mailto=mailto%3aandun...@gmail.com>>
>>>>>>>>>  wrote:
>>>>>>>>> >>>>>Hi Andrey,
>>>>>>>>> >>>>>
>>>>>>>>> >>>>>OK will do it like that!
>>>>>>>>> >>>>>
>>>>>>>>> >>>>>Thanks!
>>>>>>>>> >>>>>
>>>>>>>>> >>>>>
>>>>>>>>> >>>>>On Wed, Jul 3, 2013 at 11:15 PM, Bogdanov Andrey  <
>>>>>>>>> ba...@mail.ru<https://e.mail.ru/sentmsg?mailto=mailto%3aba...@mail.ru>>
>>>>>>>>>  wrote:
>>>>>>>>> >>>>>> Hi Andun,
>>>>>>>>> >>>>>>
>>>>>>>>> >>>>>>Unfortunately I can't help you with wicket-ajax (I'm nit
>>>>>>>>> familiar with wicket).
>>>>>>>>> >>>>>>Only one remark about onChange - defining onChange for
>>>>>>>>> prototype is not a good idea, because whiteboard use two auxilary
>>>>>>>>> collections which need not to be synchronized. onChange function 
>>>>>>>>> should be
>>>>>>>>> defined only for one main collection.
>>>>>>>>> >>>>>>
>>>>>>>>> >>>>>>Regards,
>>>>>>>>> >>>>>>Andrey
>>>>>>>>> >>>>>>
>>>>>>>>> >>>>>>
>>>>>>>>> >>>>>>Среда,  3 июля 2013, 22:50 +05:30 от Andun Sameera <
>>>>>>>>> andun...@gmail.com<https://e.mail.ru/sentmsg?mailto=mailto%3aandun...@gmail.com>>:
>>>>>>>>> >>>>>>>Hi,
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>Considering the example which Andrey gave me early, I am
>>>>>>>>> planning to do
>>>>>>>>> >>>>>>>this,
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>   - Using the method given below, we can get a JSON string
>>>>>>>>> for any update
>>>>>>>>> >>>>>>>   happen in Closure WhiteBoard
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>// to be defined on using of collection
>>>>>>>>> >>>>>>>bay.whiteboard.Collection.prototype.onChange =
>>>>>>>>> function(element){
>>>>>>>>> >>>>>>>    alert(this.getJson(element));
>>>>>>>>> >>>>>>>}
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>   - I will do a Wicket.Ajax call in this JavaScript method
>>>>>>>>> to send this
>>>>>>>>> >>>>>>>   JSON string to the Server Side
>>>>>>>>> >>>>>>>   - There I process the string and map it to Java Objects
>>>>>>>>> >>>>>>>   - Then Synchronization happens
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>As the initial step to do that, I am trying to implement a
>>>>>>>>> simple,
>>>>>>>>> >>>>>>>application which can sent JavaScript Ajax calls to Wicket
>>>>>>>>> server. I use
>>>>>>>>> >>>>>>>this article
>>>>>>>>> >>>>>>>
>>>>>>>>> https://cwiki.apache.org/confluence/display/WICKET/Calling+Wicket+from+Javascript.
>>>>>>>>> >>>>>>>I have created the application given below.
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>public class HomePage extends WebPage {
>>>>>>>>> >>>>>>>    private static final long serialVersionUID = 1L;
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>    public HomePage(final PageParameters parameters) {
>>>>>>>>> >>>>>>>        super(parameters);
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>        final AbstractDefaultAjaxBehavior behave = new
>>>>>>>>> >>>>>>>AbstractDefaultAjaxBehavior() {
>>>>>>>>> >>>>>>>            protected void respond(final AjaxRequestTarget
>>>>>>>>> target) {
>>>>>>>>> >>>>>>>                target.add(new Label("foo", "Yeah I was
>>>>>>>>> just called from
>>>>>>>>> >>>>>>>Javascript!"));
>>>>>>>>> >>>>>>>            }
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>            public void renderHead(Component
>>>>>>>>> component,IHeaderResponse
>>>>>>>>> >>>>>>>response){
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>                String componentMarkupId =
>>>>>>>>> component.getMarkupId();
>>>>>>>>> >>>>>>>                String callbackUrl =
>>>>>>>>> getCallbackUrl().toString();
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>                response.render(
>>>>>>>>> >>>>>>>JavaScriptHeaderItem.forScript("var
>>>>>>>>> >>>>>>>componentMarkupId='"+componentMarkupId+"'; var
>>>>>>>>> >>>>>>>callbackUrl='"+callbackUrl+"';","values"));
>>>>>>>>> >>>>>>>            }
>>>>>>>>> >>>>>>>        };
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>        add(behave);
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>    }
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>}
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>and my HomePage.html,
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>><!DOCTYPE HTML>
>>>>>>>>> >>>>>>><html>
>>>>>>>>> >>>>>>><body>
>>>>>>>>> >>>>>>><script src="
>>>>>>>>> http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js
>>>>>>>>> >>>>>>>"></script>
>>>>>>>>> >>>>>>><script type="text/javascript">
>>>>>>>>> >>>>>>>    $(function() {
>>>>>>>>> >>>>>>>        var wcall = Wicket.Ajax.get({ u: '${callbackUrl}' +
>>>>>>>>> '' });
>>>>>>>>> >>>>>>>        alert(wcall);
>>>>>>>>> >>>>>>>    });
>>>>>>>>> >>>>>>></script>
>>>>>>>>> >>>>>>></body>
>>>>>>>>> >>>>>>></html>
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>Still I cant get this to a working position. When I start
>>>>>>>>> this application,
>>>>>>>>> >>>>>>>wicket-ajax.js file is not loading. Thus console gives
>>>>>>>>> following error,
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>ReferenceError: Wicket is not defined
>>>>>>>>> >>>>>>>[Break On This Error]
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>var wcall = Wicket.Ajax.get({ u: '${callbackUrl}' + '' });
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>Still cant find why wicket-ajax is not loaded to my
>>>>>>>>> application. Will let
>>>>>>>>> >>>>>>>you know further updates!
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>Thanks!
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>On Tue, Jul 2, 2013 at 2:08 PM, Andun Sameera <
>>>>>>>>> andun...@gmail.com<https://e.mail.ru/sentmsg?mailto=mailto%3aandun...@gmail.com>>
>>>>>>>>>  wrote:
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>> OK Maxim. Will do it like that!
>>>>>>>>> >>>>>>>>
>>>>>>>>> >>>>>>>>
>>>>>>>>> >>>>>>>> On Tue, Jul 2, 2013 at 2:05 PM, Maxim Solodovnik <
>>>>>>>>> solomax...@gmail.com<https://e.mail.ru/sentmsg?mailto=mailto%3asolomax...@gmail.com>>wrote:
>>>>>>>>> >>>>>>>>
>>>>>>>>> >>>>>>>>> I would totally disagree with
>>>>>>>>> >>>>>>>>> "At the Wicket Java code we save these elements as Java
>>>>>>>>> Objecst which
>>>>>>>>> >>>>>>>>> contains the JSON strings."
>>>>>>>>> >>>>>>>>>
>>>>>>>>> >>>>>>>>> Java objects should contain normal fields like "Point
>>>>>>>>> center; int
>>>>>>>>> >>>>>>>>> radius;" and be (de)serialized (from)into JSON if
>>>>>>>>> necessary.
>>>>>>>>> >>>>>>>>>
>>>>>>>>> >>>>>>>>>
>>>>>>>>> >>>>>>>>>  On Tue, Jul 2, 2013 at 2:27 PM, Andun Sameera <
>>>>>>>>> andun...@gmail.com<https://e.mail.ru/sentmsg?mailto=mailto%3aandun...@gmail.com>>wrote:
>>>>>>>>> >>>>>>>>>
>>>>>>>>> >>>>>>>>>> Hi Andrey,
>>>>>>>>> >>>>>>>>>>
>>>>>>>>> >>>>>>>>>> Great! If you can give me a example for,
>>>>>>>>> >>>>>>>>>>
>>>>>>>>> >>>>>>>>>> collection.onChange(element)
>>>>>>>>> >>>>>>>>>>
>>>>>>>>> >>>>>>>>>> it will be highly appreciated.
>>>>>>>>> >>>>>>>>>>
>>>>>>>>> >>>>>>>>>> @Maxim,
>>>>>>>>> >>>>>>>>>>
>>>>>>>>> >>>>>>>>>> After some thinking I cam across of this idea. Please
>>>>>>>>> correct me If I am
>>>>>>>>> >>>>>>>>>> wrong.
>>>>>>>>> >>>>>>>>>>
>>>>>>>>> >>>>>>>>>>    - All the whiteboard elements can be represented as
>>>>>>>>> JSON strings
>>>>>>>>> >>>>>>>>>>    (Have to find a way to add PDF,DOCs, Pictures to
>>>>>>>>> whiteboard in this way)
>>>>>>>>> >>>>>>>>>>    - At the Wicket Java code we save these elements as
>>>>>>>>> Java Objecst
>>>>>>>>> >>>>>>>>>>    which contains the JSON strings.
>>>>>>>>> >>>>>>>>>>    - To synchronize white board we can send these
>>>>>>>>> object to all the
>>>>>>>>> >>>>>>>>>>    viewers.
>>>>>>>>> >>>>>>>>>>    - To save/load we can use this already implemented
>>>>>>>>> JSON based
>>>>>>>>> >>>>>>>>>>    serialization and de-serialization.
>>>>>>>>> >>>>>>>>>>
>>>>>>>>> >>>>>>>>>> But have to find ways to get all these data from
>>>>>>>>> closure implementation
>>>>>>>>> >>>>>>>>>> to wicket!
>>>>>>>>> >>>>>>>>>>
>>>>>>>>> >>>>>>>>>> Thanks!
>>>>>>>>> >>>>>>>>>> On Tue, Jul 2, 2013 at 11:28 AM, Bogdanov Andrey <
>>>>>>>>> ba...@mail.ru<https://e.mail.ru/sentmsg?mailto=mailto%3aba...@mail.ru>>
>>>>>>>>>  wrote:
>>>>>>>>> >>>>>>>>>>
>>>>>>>>> >>>>>>>>>>> Hi Andun,
>>>>>>>>> >>>>>>>>>>>
>>>>>>>>> >>>>>>>>>>> Whiteboard consists of two main objects: ui-component
>>>>>>>>> >>>>>>>>>>> "bay.whiteboard.Whiteboard", which contains
>>>>>>>>> functionality for user
>>>>>>>>> >>>>>>>>>>> interaction and collections of objects
>>>>>>>>> "bay.whiteboard.Collection" which
>>>>>>>>> >>>>>>>>>>> contains list of objects and some stuff to manipulate
>>>>>>>>> them.
>>>>>>>>> >>>>>>>>>>> After createing WB with
>>>>>>>>> >>>>>>>>>>>    whiteboard = bay.whiteboard.Create();
>>>>>>>>> >>>>>>>>>>> you could access to collection as
>>>>>>>>> >>>>>>>>>>>   collection = whiteboard.collections.main; or
>>>>>>>>> >>>>>>>>>>>   collection = whiteboard.getMainCollection(); - i've
>>>>>>>>> just added this
>>>>>>>>> >>>>>>>>>>> method
>>>>>>>>> >>>>>>>>>>>
>>>>>>>>> >>>>>>>>>>> After that you could define
>>>>>>>>> >>>>>>>>>>>    collection.onChange(element) - method wich will be
>>>>>>>>> invoked every
>>>>>>>>> >>>>>>>>>>> time when some drawing elements add or change.
>>>>>>>>> >>>>>>>>>>> Also you could use methods:
>>>>>>>>> >>>>>>>>>>>     collection.getJson(element); -  to obtain json
>>>>>>>>> code for an element
>>>>>>>>> >>>>>>>>>>>      collection.jsonCode();   -  to obtain json code
>>>>>>>>> for whole
>>>>>>>>> >>>>>>>>>>> collection
>>>>>>>>> >>>>>>>>>>>      collection.acceptJsonStr(str); -  to add or
>>>>>>>>> change one element
>>>>>>>>> >>>>>>>>>>> described as json
>>>>>>>>> >>>>>>>>>>>      collection.parseJson(str); -  to rebuild all from
>>>>>>>>> the given json
>>>>>>>>> >>>>>>>>>>> string
>>>>>>>>> >>>>>>>>>>>
>>>>>>>>> >>>>>>>>>>>
>>>>>>>>> >>>>>>>>>>> As an example you could explore linkWebSocket method
>>>>>>>>> in ui.js, which
>>>>>>>>> >>>>>>>>>>> allows synchronize wb-content through webSocket
>>>>>>>>> >>>>>>>>>>>
>>>>>>>>> >>>>>>>>>>> Regards,
>>>>>>>>> >>>>>>>>>>> Andrey Bogdanov
>>>>>>>>> >>>>>>>>>>>
>>>>>>>>> >>>>>>>>>>> Вторник, 2 июля 2013, 1:25 +05:30 от Andun Sameera <
>>>>>>>>> andun...@gmail.com<https://e.mail.ru/sentmsg?mailto=mailto%3aandun...@gmail.com>
>>>>>>>>> >>>>>>>>>>> >:
>>>>>>>>> >>>>>>>>>>>
>>>>>>>>> >>>>>>>>>>>   Hi Andrey,
>>>>>>>>> >>>>>>>>>>>
>>>>>>>>> >>>>>>>>>>> I am moving in to this new thread to discuss about the
>>>>>>>>> clarifications,
>>>>>>>>> >>>>>>>>>>> improvements and integration of your Whiteboard to
>>>>>>>>> wicket. I have looked at
>>>>>>>>> >>>>>>>>>>> your code which can be found
>>>>>>>>> https://github.com/bay73/whiteboard . I
>>>>>>>>> >>>>>>>>>>> have following questions,
>>>>>>>>> >>>>>>>>>>>
>>>>>>>>> >>>>>>>>>>>    - In Wicket, I want map Whiteboard
>>>>>>>>> Elements(Rectangle, Circle,
>>>>>>>>> >>>>>>>>>>>    Text, etc.) to Java objects.
>>>>>>>>> >>>>>>>>>>>    - Thus we can send those object to all the
>>>>>>>>> Whiteboard viewers.
>>>>>>>>> >>>>>>>>>>>    - Using these objects there Whiteboards will be
>>>>>>>>> updated.
>>>>>>>>> >>>>>>>>>>>    - To do that, can I get some data from your code?
>>>>>>>>> which can be
>>>>>>>>> >>>>>>>>>>>    later used to create elements. I saw there is a
>>>>>>>>> serialization methods and
>>>>>>>>> >>>>>>>>>>>    deserilization method in base.js. If we can extend
>>>>>>>>> that mechanism to give
>>>>>>>>> >>>>>>>>>>>    some data when element is drawn or edited as an
>>>>>>>>> event, I can use them to
>>>>>>>>> >>>>>>>>>>>    create Java objects.
>>>>>>>>> >>>>>>>>>>>    - Also there should be a mechanism to draw elements
>>>>>>>>> on your
>>>>>>>>> >>>>>>>>>>>    Whiteboard by passing those data.
>>>>>>>>> >>>>>>>>>>>
>>>>>>>>> >>>>>>>>>>> Can we do these things?
>>>>>>>>> >>>>>>>>>>>
>>>>>>>>> >>>>>>>>>>> Thanks!
>>>>>>>>> >>>>>>>>>>> --
>>>>>>>>> >>>>>>>>>>> Regards
>>>>>>>>> >>>>>>>>>>> Andun S.L. Gunawardana
>>>>>>>>> >>>>>>>>>>> Undergraduate
>>>>>>>>> >>>>>>>>>>> Department of Computer Science And Engineering
>>>>>>>>> >>>>>>>>>>> University of Moratuwa
>>>>>>>>> >>>>>>>>>>> Sri Lanka
>>>>>>>>> >>>>>>>>>>>
>>>>>>>>> >>>>>>>>>>> Blog -   http://www.insightforfuture.blogspot.com/
>>>>>>>>> >>>>>>>>>>> LinkedIn -
>>>>>>>>> http://www.linkedin.com/pub/andun-s-l-gunawardana/34/646/703
>>>>>>>>> >>>>>>>>>>> Twitter -  http://twitter.com/AndunSLG
>>>>>>>>> >>>>>>>>>>>
>>>>>>>>> >>>>>>>>>>>
>>>>>>>>> >>>>>>>>>>>
>>>>>>>>> >>>>>>>>>>>
>>>>>>>>> >>>>>>>>>>>
>>>>>>>>> >>>>>>>>>>>
>>>>>>>>> >>>>>>>>>>>
>>>>>>>>> >>>>>>>>>>> --
>>>>>>>>> >>>>>>>>>>> Андрей Богданов
>>>>>>>>> >>>>>>>>>>>
>>>>>>>>> >>>>>>>>>>
>>>>>>>>> >>>>>>>>>>
>>>>>>>>> >>>>>>>>>>
>>>>>>>>> >>>>>>>>>> --
>>>>>>>>> >>>>>>>>>> Regards
>>>>>>>>> >>>>>>>>>> Andun S.L. Gunawardana
>>>>>>>>> >>>>>>>>>> Undergraduate
>>>>>>>>> >>>>>>>>>> Department of Computer Science And Engineering
>>>>>>>>> >>>>>>>>>> University of Moratuwa
>>>>>>>>> >>>>>>>>>> Sri Lanka
>>>>>>>>> >>>>>>>>>>
>>>>>>>>> >>>>>>>>>> Blog -   http://www.insightforfuture.blogspot.com/
>>>>>>>>> >>>>>>>>>> LinkedIn -
>>>>>>>>> http://www.linkedin.com/pub/andun-s-l-gunawardana/34/646/703
>>>>>>>>> >>>>>>>>>> Twitter -  http://twitter.com/AndunSLG
>>>>>>>>> >>>>>>>>>>
>>>>>>>>> >>>>>>>>>>
>>>>>>>>> >>>>>>>>>>
>>>>>>>>> >>>>>>>>>>
>>>>>>>>> >>>>>>>>>>
>>>>>>>>> >>>>>>>>>
>>>>>>>>> >>>>>>>>>
>>>>>>>>> >>>>>>>>>
>>>>>>>>> >>>>>>>>> --
>>>>>>>>> >>>>>>>>> WBR
>>>>>>>>> >>>>>>>>> Maxim aka solomax
>>>>>>>>> >>>>>>>>>
>>>>>>>>> >>>>>>>>
>>>>>>>>> >>>>>>>>
>>>>>>>>> >>>>>>>>
>>>>>>>>> >>>>>>>> --
>>>>>>>>> >>>>>>>> Regards
>>>>>>>>> >>>>>>>> Andun S.L. Gunawardana
>>>>>>>>> >>>>>>>> Undergraduate
>>>>>>>>> >>>>>>>> Department of Computer Science And Engineering
>>>>>>>>> >>>>>>>> University of Moratuwa
>>>>>>>>> >>>>>>>> Sri Lanka
>>>>>>>>> >>>>>>>>
>>>>>>>>> >>>>>>>> Blog -   http://www.insightforfuture.blogspot.com/
>>>>>>>>> >>>>>>>> LinkedIn -
>>>>>>>>> http://www.linkedin.com/pub/andun-s-l-gunawardana/34/646/703
>>>>>>>>> >>>>>>>> Twitter -  http://twitter.com/AndunSLG
>>>>>>>>> >>>>>>>>
>>>>>>>>> >>>>>>>>
>>>>>>>>> >>>>>>>>
>>>>>>>>> >>>>>>>>
>>>>>>>>> >>>>>>>>
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>--
>>>>>>>>> >>>>>>>Regards
>>>>>>>>> >>>>>>>Andun S.L. Gunawardana
>>>>>>>>> >>>>>>>Undergraduate
>>>>>>>>> >>>>>>>Department of Computer Science And Engineering
>>>>>>>>> >>>>>>>University of Moratuwa
>>>>>>>>> >>>>>>>Sri Lanka
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>>Blog -   http://www.insightforfuture.blogspot.com/
>>>>>>>>> >>>>>>>LinkedIn -
>>>>>>>>> http://www.linkedin.com/pub/andun-s-l-gunawardana/34/646/703
>>>>>>>>> >>>>>>>Twitter -  http://twitter.com/AndunSLG
>>>>>>>>> >>>>>>>
>>>>>>>>> >>>>>>
>>>>>>>>> >>>>>>
>>>>>>>>> >>>>>>--
>>>>>>>>> >>>>>>Андрей Богданов
>>>>>>>>> >>>>>
>>>>>>>>> >>>>>
>>>>>>>>> >>>>>
>>>>>>>>> >>>>>--
>>>>>>>>> >>>>>Regards
>>>>>>>>> >>>>>Andun S.L. Gunawardana
>>>>>>>>> >>>>>Undergraduate
>>>>>>>>> >>>>>Department of Computer Science And Engineering
>>>>>>>>> >>>>>University of Moratuwa
>>>>>>>>> >>>>>Sri Lanka
>>>>>>>>> >>>>>
>>>>>>>>> >>>>>Blog -  http://www.insightforfuture.blogspot.com/
>>>>>>>>> >>>>>LinkedIn -
>>>>>>>>> http://www.linkedin.com/pub/andun-s-l-gunawardana/34/646/703
>>>>>>>>> >>>>>Twitter - http://twitter.com/AndunSLG
>>>>>>>>> >>>>>
>>>>>>>>> >>>>>
>>>>>>>>> >>>>>
>>>>>>>>> >>>>>
>>>>>>>>> >>>>
>>>>>>>>> >>>>
>>>>>>>>> >>>>--
>>>>>>>>> >>>>Regards
>>>>>>>>> >>>>Andun S.L. Gunawardana
>>>>>>>>> >>>>Undergraduate
>>>>>>>>> >>>>Department of Computer Science And Engineering
>>>>>>>>> >>>>University of Moratuwa
>>>>>>>>> >>>>Sri Lanka
>>>>>>>>> >>>>
>>>>>>>>> >>>>Blog -  http://www.insightforfuture.blogspot.com/
>>>>>>>>> >>>>LinkedIn -
>>>>>>>>> http://www.linkedin.com/pub/andun-s-l-gunawardana/34/646/703
>>>>>>>>> >>>>Twitter - http://twitter.com/AndunSLG
>>>>>>>>> >>>>
>>>>>>>>> >>>>
>>>>>>>>> >>>>
>>>>>>>>> >>>>
>>>>>>>>> >>>
>>>>>>>>> >>>
>>>>>>>>> >>>--
>>>>>>>>> >>>WBR
>>>>>>>>> >>>Maxim aka solomax
>>>>>>>>> >>
>>>>>>>>> >>
>>>>>>>>> >>--
>>>>>>>>> >>Regards
>>>>>>>>> >>Andun S.L. Gunawardana
>>>>>>>>> >>Undergraduate
>>>>>>>>> >>Department of Computer Science And Engineering
>>>>>>>>> >>University of Moratuwa
>>>>>>>>> >>Sri Lanka
>>>>>>>>> >>
>>>>>>>>> >>Blog -  http://www.insightforfuture.blogspot.com/
>>>>>>>>> >>LinkedIn -
>>>>>>>>> http://www.linkedin.com/pub/andun-s-l-gunawardana/34/646/703
>>>>>>>>> >>Twitter - http://twitter.com/AndunSLG
>>>>>>>>> >>
>>>>>>>>> >>
>>>>>>>>> >>
>>>>>>>>> >>
>>>>>>>>> >
>>>>>>>>> >
>>>>>>>>> >--
>>>>>>>>> >Regards
>>>>>>>>> >Andun S.L. Gunawardana
>>>>>>>>> >Undergraduate
>>>>>>>>> >Department of Computer Science And Engineering
>>>>>>>>> >University of Moratuwa
>>>>>>>>> >Sri Lanka
>>>>>>>>> >
>>>>>>>>> >Blog -  http://www.insightforfuture.blogspot.com/
>>>>>>>>> >LinkedIn -
>>>>>>>>> http://www.linkedin.com/pub/andun-s-l-gunawardana/34/646/703
>>>>>>>>> >Twitter - http://twitter.com/AndunSLG
>>>>>>>>> >
>>>>>>>>> >
>>>>>>>>> >
>>>>>>>>> >
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Андрей Богданов
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Regards
>>>>>>>>> Andun S.L. Gunawardana
>>>>>>>>> Undergraduate
>>>>>>>>> Department of Computer Science And Engineering
>>>>>>>>> University of Moratuwa
>>>>>>>>> Sri Lanka
>>>>>>>>>
>>>>>>>>> Blog - http://www.insightforfuture.blogspot.com/
>>>>>>>>> LinkedIn -
>>>>>>>>> http://www.linkedin.com/pub/andun-s-l-gunawardana/34/646/703
>>>>>>>>> Twitter -http://twitter.com/AndunSLG
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Regards
>>>>>>>>> Andun S.L. Gunawardana
>>>>>>>>> Undergraduate
>>>>>>>>> Department of Computer Science And Engineering
>>>>>>>>> University of Moratuwa
>>>>>>>>> Sri Lanka
>>>>>>>>>
>>>>>>>>> Blog - http://www.insightforfuture.blogspot.com/
>>>>>>>>> LinkedIn -
>>>>>>>>> http://www.linkedin.com/pub/andun-s-l-gunawardana/34/646/703
>>>>>>>>> Twitter -http://twitter.com/AndunSLG
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Regards
>>>>>>>>> Andun S.L. Gunawardana
>>>>>>>>> Undergraduate
>>>>>>>>> Department of Computer Science And Engineering
>>>>>>>>> University of Moratuwa
>>>>>>>>> Sri Lanka
>>>>>>>>>
>>>>>>>>> Blog - http://www.insightforfuture.blogspot.com/
>>>>>>>>> LinkedIn -
>>>>>>>>> http://www.linkedin.com/pub/andun-s-l-gunawardana/34/646/703
>>>>>>>>> Twitter -http://twitter.com/AndunSLG
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Regards
>>>>>>>>> Andun S.L. Gunawardana
>>>>>>>>> Undergraduate
>>>>>>>>> Department of Computer Science And Engineering
>>>>>>>>> University of Moratuwa
>>>>>>>>> Sri Lanka
>>>>>>>>>
>>>>>>>>> Blog - http://www.insightforfuture.blogspot.com/
>>>>>>>>> LinkedIn -
>>>>>>>>> http://www.linkedin.com/pub/andun-s-l-gunawardana/34/646/703
>>>>>>>>> Twitter -http://twitter.com/AndunSLG
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Андрей Богданов
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Regards
>>>>>>>> Andun S.L. Gunawardana
>>>>>>>> Undergraduate
>>>>>>>> Department of Computer Science And Engineering
>>>>>>>> University of Moratuwa
>>>>>>>> Sri Lanka
>>>>>>>>
>>>>>>>> Blog - http://www.insightforfuture.blogspot.com/
>>>>>>>> LinkedIn -
>>>>>>>> http://www.linkedin.com/pub/andun-s-l-gunawardana/34/646/703
>>>>>>>> Twitter -http://twitter.com/AndunSLG
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Regards
>>>>>>> Andun S.L. Gunawardana
>>>>>>> Undergraduate
>>>>>>> Department of Computer Science And Engineering
>>>>>>> University of Moratuwa
>>>>>>> Sri Lanka
>>>>>>>
>>>>>>> Blog - http://www.insightforfuture.blogspot.com/
>>>>>>> LinkedIn -
>>>>>>> http://www.linkedin.com/pub/andun-s-l-gunawardana/34/646/703
>>>>>>> Twitter -http://twitter.com/AndunSLG
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> Thanks!
>>>>>>
>>>>>> --
>>>>>> Regards
>>>>>> Andun S.L. Gunawardana
>>>>>> Undergraduate
>>>>>> Department of Computer Science And Engineering
>>>>>> University of Moratuwa
>>>>>> Sri Lanka
>>>>>>
>>>>>> Blog - http://www.insightforfuture.blogspot.com/
>>>>>> LinkedIn -
>>>>>> http://www.linkedin.com/pub/andun-s-l-gunawardana/34/646/703
>>>>>> Twitter -http://twitter.com/AndunSLG
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> WBR
>>>>> Maxim aka solomax
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Regards
>>>> Andun S.L. Gunawardana
>>>> Undergraduate
>>>> Department of Computer Science And Engineering
>>>> University of Moratuwa
>>>> Sri Lanka
>>>>
>>>> Blog - http://www.insightforfuture.blogspot.com/
>>>> LinkedIn - http://www.linkedin.com/pub/andun-s-l-gunawardana/34/646/703
>>>> Twitter -http://twitter.com/AndunSLG
>>>>
>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> WBR
>>> Maxim aka solomax
>>>
>>
>>
>>
>> --
>> WBR
>> Maxim aka solomax
>>
>
>
>
> --
> Regards
> Andun S.L. Gunawardana
> Undergraduate
> Department of Computer Science And Engineering
> University of Moratuwa
> Sri Lanka
>
> Blog - http://www.insightforfuture.blogspot.com/
> LinkedIn - http://www.linkedin.com/pub/andun-s-l-gunawardana/34/646/703
> Twitter -http://twitter.com/AndunSLG
>
>
>
>
>



-- 
WBR
Maxim aka solomax

Reply via email to