<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-3399985190174266183</id><updated>2025-11-21T21:06:07.178+05:30</updated><category term="3D"/><category term="Comments wildcard Imports Constrcutors"/><category term="Creativity Education"/><category term="Data Hiding Object OO"/><category term="Eclipse"/><category term="Eclipse Consultant Trainer"/><category term="Eclipse Day India 2010"/><category term="Eclipse Demo Camp"/><category term="Eclipse Demo Camp 2010"/><category term="Eclipse Demo Camp Bangalore GEF3D"/><category term="Eclipse Galileo"/><category term="Eclipse Galileo Motivation"/><category term="Eclipse Helios"/><category term="Eclipse India Summit"/><category term="Eclipse India Summit GEF Zest EMF Microsoft PDE"/><category term="Eclipse Startup Information"/><category term="Eclipse committers artist software engineer computer"/><category term="Eclipse day India 2010 Software Craftsmanship"/><category term="Eclipse samuel madhu Mind Graph Theory - Dreams Explained"/><category term="Eclipse static code analysis tool"/><category term="EclipseBible Eclipse Day India 2010"/><category term="Focus"/><category term="Future Eclipse Google EclipseBible"/><category term="GEF3D"/><category term="HTML5 Canvas 3D e4"/><category term="Modelling"/><category term="Multitasking"/><category term="Patterns in Eclipse Day India 2010"/><category term="Patterns in Eclipse EclipseBible"/><category term="Platform Chair"/><category term="Prioritise"/><category term="eclipse eclipseplugincentral eclipse.org IBM code"/><category term="eclipsebible Zero Defects Creativity"/><category term="eclipsebible eclipse commands"/><title type='text'>I Like Eclipse</title><subtitle type='html'>This blog is dedicated to the hundreds of developers in the Eclipse Community.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://eclipse-info.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default'/><link rel='alternate' type='text/html' href='http://eclipse-info.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default?start-index=26&amp;max-results=25'/><author><name>Madhu</name><uri>http://www.blogger.com/profile/05191409900046165475</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinHjYGa5FscB42dzdcnMkhHexfURSsCqOwLZK4PZcxCH0Wwygq1umSZmGAmS7t62S4J6UMaq2JtR9uDUoQq8XgI2ZoLPS8wMyNGUDtT04PQOXI5hmegqqgTKgaTAT6MQ/s220/Photo+on+2011-07-22+at+17.58+%232.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>34</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-3399985190174266183.post-6209970538734920618</id><published>2010-12-07T09:57:00.001+05:30</published><updated>2010-12-07T09:57:31.451+05:30</updated><title type='text'>EMF - An MDSD Approach</title><content type='html'>&lt;br /&gt;Please find the slides for my Eclipse Democamp 2010 Presentation in Bangalore - A quick introduction into MDSD and EMF. &lt;br /&gt;&lt;br /&gt;By the way you can find an interesting blog about MDSD at http://modeldrivensoftware.ning.com/profiles/blogs/the-evolution-of-code&lt;br /&gt;&lt;br /&gt;Regards,&lt;br /&gt;Madhu&lt;br /&gt;Eclipse Consultant and Trainer,&lt;br /&gt;http://eclipseBible.com&lt;div style=&quot;width:425px&quot; id=&quot;__ss_6055889&quot;&gt;&lt;strong style=&quot;display:block;margin:12px 0 4px&quot;&gt;&lt;a href=&quot;http://www.slideshare.net/madhusamuel/emf-an-mdsd-approach&quot; title=&quot;EMF - An MDSD Approach&quot;&gt;EMF - An MDSD Approach&lt;/a&gt;&lt;/strong&gt;&lt;object id=&quot;__sse6055889&quot; width=&quot;425&quot; height=&quot;355&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=emfmdsdapproach-101206210453-phpapp01&amp;stripped_title=emf-an-mdsd-approach&amp;userName=madhusamuel&quot; /&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;/&gt;&lt;param name=&quot;allowScriptAccess&quot; value=&quot;always&quot;/&gt;&lt;embed name=&quot;__sse6055889&quot; src=&quot;http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=emfmdsdapproach-101206210453-phpapp01&amp;stripped_title=emf-an-mdsd-approach&amp;userName=madhusamuel&quot; type=&quot;application/x-shockwave-flash&quot; allowscriptaccess=&quot;always&quot; allowfullscreen=&quot;true&quot; width=&quot;425&quot; height=&quot;355&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style=&quot;padding:5px 0 12px&quot;&gt;View more &lt;a href=&quot;http://www.slideshare.net/&quot;&gt;presentations&lt;/a&gt; from &lt;a href=&quot;http://www.slideshare.net/madhusamuel&quot;&gt;Madhu Samuel&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://eclipse-info.blogspot.com/feeds/6209970538734920618/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://eclipse-info.blogspot.com/2010/12/emf-mdsd-approach.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/6209970538734920618'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/6209970538734920618'/><link rel='alternate' type='text/html' href='http://eclipse-info.blogspot.com/2010/12/emf-mdsd-approach.html' title='EMF - An MDSD Approach'/><author><name>Madhu</name><uri>http://www.blogger.com/profile/05191409900046165475</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinHjYGa5FscB42dzdcnMkhHexfURSsCqOwLZK4PZcxCH0Wwygq1umSZmGAmS7t62S4J6UMaq2JtR9uDUoQq8XgI2ZoLPS8wMyNGUDtT04PQOXI5hmegqqgTKgaTAT6MQ/s220/Photo+on+2011-07-22+at+17.58+%232.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3399985190174266183.post-8594265267041876634</id><published>2010-12-07T08:05:00.006+05:30</published><updated>2010-12-08T19:00:10.212+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Eclipse Demo Camp 2010"/><title type='text'>Eclipse Demo Camp 2010 @ Bangalore</title><content type='html'>Its fun to spend an afternoon with eclipsers. Two weeks back, we had a fantastic &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://wiki.eclipse.org/Eclipse_DemoCamps_November_2010/Bangalore&quot;&gt;Eclipse Democamp in Bangalore&lt;/a&gt;&lt;/span&gt;. I think this is the biggest eclipse demo camp ever conducted in Bangalore with around 100 attendees turning out for the event.&lt;br /&gt;
&lt;br /&gt;
The demo camp was conducted at SAP Labs campus. We all got a warm welcome from the organizers. I feel the organizers have done a great job with an amazing democamp. The people behind the curtains are Ankur Sharma (Eclipse PDE Co-Lead, IBM), Ashwani Kr Sharma&amp;nbsp;(Committer - EMF Query, SAP)&amp;nbsp;and Saurav Sarker (Committer - EMF Query, SAP) and a handful more people from SAP Labs.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgImsyw2Gz6qkDKqxg9uejzjI7d4CjhAfKL9_4qZrqeaJ5HABrZ__sc87d4EsrVTm572obokBoQQ2OdLROibTWJ5y3KanJs05m0oeme8rLare8NKeDZS9ACAgivN78hSWUH8KWXdvY3ipeA/s1600/Audience.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgImsyw2Gz6qkDKqxg9uejzjI7d4CjhAfKL9_4qZrqeaJ5HABrZ__sc87d4EsrVTm572obokBoQQ2OdLROibTWJ5y3KanJs05m0oeme8rLare8NKeDZS9ACAgivN78hSWUH8KWXdvY3ipeA/s320/Audience.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
We all got a wonderful set of goodies which includes a cool hat.&lt;br /&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjMeO93vfKOSkVDQp_FSTDqw2MCWZUvRwisXc54J_vZqfyVGWMScRH08WjgDmuXHl3fAdLyFY14bnMcK73BoHKF7Hi7yz6RcjvV8gB7hQgruZBQiepeCS4dCw72tsYhlPEfr5TpJWSWSmW3/s1600/hat1.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;298&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjMeO93vfKOSkVDQp_FSTDqw2MCWZUvRwisXc54J_vZqfyVGWMScRH08WjgDmuXHl3fAdLyFY14bnMcK73BoHKF7Hi7yz6RcjvV8gB7hQgruZBQiepeCS4dCw72tsYhlPEfr5TpJWSWSmW3/s320/hat1.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Democamp Hat :)&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;br /&gt;
After each demo goodies were distributed to the audience for asking the best question. T-shirts from Eclipse Foundation were distributed to the presenters.&lt;br /&gt;
&lt;br /&gt;
The event started with a keynote from Mr. Harish Porval, VP, TIP Core UI and Modeling Tools, SAP Labs. SAP Labs have got big plans with Eclipse as their development platform.&lt;br /&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhxbcSFrm5795yjcSoIJYd_-TvhqJUxXCAZhElmmFT27C25wiY16pUqFrZtbEhAs3u8fPNsMEvE1Hq1cfoKcW4YHDclzSFaAS50LoXu_1UYF1VBVC2G-iDc-g6kl70EXYO62NAPt54Y7H-8/s1600/HarishPorval.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhxbcSFrm5795yjcSoIJYd_-TvhqJUxXCAZhElmmFT27C25wiY16pUqFrZtbEhAs3u8fPNsMEvE1Hq1cfoKcW4YHDclzSFaAS50LoXu_1UYF1VBVC2G-iDc-g6kl70EXYO62NAPt54Y7H-8/s320/HarishPorval.JPG&quot; width=&quot;242&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Harish Porval - Keynote&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;br /&gt;
I gave the first demo on behalf of &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;b&gt;&lt;a href=&quot;http://eclipsebible.com/&quot;&gt;http://eclipseBible.com&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhY_emFB94nXalbVnXdLjijjpiQMJKSi0GGnY2SM_trwrsAnpUYMtwPJShDpGZSViMsVM18VB458yDM_4cytlRxsJtw28UR0jeV-abQmu6XNxt_cNBKyKqssFwjGtTlylkoDbaAPXgekeMa/s1600/eclipseBible.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhY_emFB94nXalbVnXdLjijjpiQMJKSi0GGnY2SM_trwrsAnpUYMtwPJShDpGZSViMsVM18VB458yDM_4cytlRxsJtw28UR0jeV-abQmu6XNxt_cNBKyKqssFwjGtTlylkoDbaAPXgekeMa/s320/eclipseBible.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://eclipsebible.com/&quot;&gt;http://eclipseBible.com&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;br /&gt;
I demonstrated how EMF can reduce the development time and cost of production of software applications using MDSD concepts.&lt;br /&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEij-PWOZBcua19j5S_BFAdc8lIFXsPdI5r0XUicSonMNcBkDEk2K-gFTB7BlRBiMDIRR8mS8WsyuzVzKcbfx_3nReQpvfjwij4tApL6KtF4oqtURfrAiTKSFW9Q8ZuMAQUkoK7sG-YrFtzv/s1600/madhu.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;117&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEij-PWOZBcua19j5S_BFAdc8lIFXsPdI5r0XUicSonMNcBkDEk2K-gFTB7BlRBiMDIRR8mS8WsyuzVzKcbfx_3nReQpvfjwij4tApL6KtF4oqtURfrAiTKSFW9Q8ZuMAQUkoK7sG-YrFtzv/s320/madhu.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Madhu Samuel - &quot;EMF - An MDSD Approach&quot;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;br /&gt;
Saurav Sarkar from&amp;nbsp;EMF Model Query 2 Team at&amp;nbsp;SAP Labs presented EMF Model Query 2. Query 2 helps to search and&amp;nbsp;retrieve&amp;nbsp;data from your emf models. They use an in-built indexing mechanism to make the queries faster. You can find more about Query 2 &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://www.eclipse.org/modeling/emf/?project=query2&quot;&gt;here&lt;/a&gt;&lt;/span&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhlm4JwZqH_TAKvgzP3m8RPlIy2-LGpAjr40z-8YXRE30mJmzNsjU75QeVMMDb9Rg8nAbAvXBTz8QifohWnAbp27l_nHzxDyRjVbX8NYp8pjXmPwzIAXy-zX6KIoxmNJQBhAcQBiClf7uUu/s1600/Saurav.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhlm4JwZqH_TAKvgzP3m8RPlIy2-LGpAjr40z-8YXRE30mJmzNsjU75QeVMMDb9Rg8nAbAvXBTz8QifohWnAbp27l_nHzxDyRjVbX8NYp8pjXmPwzIAXy-zX6KIoxmNJQBhAcQBiClf7uUu/s320/Saurav.JPG&quot; width=&quot;223&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Saurav Sarkar - EMF Model Query2&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;br /&gt;
Ashok Pon Kumar from IBM presented the &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://www.android.com/&quot;&gt;Android Toolkit based on Eclipse&lt;/a&gt;&lt;/span&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi6ZE1V-lQSx_m2hSpqbAZLyqqENKle0nnL1Laem6CRDVAJH9BT_Uq0XiOyTJFjLgnOr0CtzbZGGanydj7SiBL-UbzwLu3QfSZG1M8P9U9bE1WzVeZwx4GTSrSBRvrnQ1P9YD8uzyZUOoxM/s1600/Ashok.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi6ZE1V-lQSx_m2hSpqbAZLyqqENKle0nnL1Laem6CRDVAJH9BT_Uq0XiOyTJFjLgnOr0CtzbZGGanydj7SiBL-UbzwLu3QfSZG1M8P9U9bE1WzVeZwx4GTSrSBRvrnQ1P9YD8uzyZUOoxM/s320/Ashok.JPG&quot; width=&quot;212&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Ashok Pon Kumar - Android Toolkit&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;br /&gt;
Ayushman Jain from IBM presented &lt;a href=&quot;http://eclipse.org/Xtext/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;Xtext &lt;/span&gt;&lt;/a&gt;with an example of how to create a custom language for Android. There were a few interesting queries from the audience. Its simply amazing to see that from a grammar file how &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://eclipse.org/Xtext/&quot;&gt;Xtext &lt;/a&gt;&lt;/span&gt;generates all the other components you need for your custom language (DSL) like parser, editor, navigator, validator, automatic code completion etc..&lt;br /&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhvlPNHDkKtQ_Qn7sCaIDoV44Vhl8-OuKicKfRqAZN54FYhDDn7rf-hKxffOq_F1Ce8fr2F8tFv9CCWDpiLVuTDRqiNt0m6f5K1rfCUI7M90nJWSTYR5qjHl_bxHpzudcgduhPiQA95ZH6E/s1600/Ayushman.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhvlPNHDkKtQ_Qn7sCaIDoV44Vhl8-OuKicKfRqAZN54FYhDDn7rf-hKxffOq_F1Ce8fr2F8tFv9CCWDpiLVuTDRqiNt0m6f5K1rfCUI7M90nJWSTYR5qjHl_bxHpzudcgduhPiQA95ZH6E/s1600/Ayushman.JPG&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Ayushman Jain - Xtext&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;br /&gt;
Deepak Azad (JDT UI Committer) from IBM presented &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://www.eclipse.org/egit/&quot;&gt;EGit&lt;/a&gt;&lt;/span&gt;. EGit integrates Git with Eclipse. Git is a distributed SCM tool. Deepak first explained about cvs and svn and how life is better with EGit. Unfortunately I missed the photograph of Deepak&#39;s talk.&lt;br /&gt;
&lt;br /&gt;
Lakshmi P (SWT Committer) from IBM presented the &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://wiki.eclipse.org/E4/XWTDesigner&quot;&gt;XWT Designer&lt;/a&gt;&lt;/span&gt;. XWT Designer is a next generation visual editor for SWT and JFace with XML in the background.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJJCQYwdd_iyV3nXAMgR8yWNIXR7YqsifqP5J-ujedC4efj2AYPlGTizxEzXHnR2bV3stE0DfNNGNPWGnphOWYWGcZs5I_ZKpWfaSS8tOuFTr3Ia3Hr8VmOXvnmJCUhsnIwvODAtlxvZNi/s1600/Lakshmi.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;225&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJJCQYwdd_iyV3nXAMgR8yWNIXR7YqsifqP5J-ujedC4efj2AYPlGTizxEzXHnR2bV3stE0DfNNGNPWGnphOWYWGcZs5I_ZKpWfaSS8tOuFTr3Ia3Hr8VmOXvnmJCUhsnIwvODAtlxvZNi/s320/Lakshmi.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Lakshmi P - XWT Designer&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;br /&gt;
Nayna Jain from IBM presented the embedded http server in Eclipse to create web applications.&lt;br /&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiAQkuCrkTvHueKAungSVZWJPGDGR1vzpWMF5euo30FO69pbpEaBbXLgRKMfIc0IwflGSSxX7RJrWsARMEF1RhFvQn7FApyaPjH-VNV0LGp7xqLZ9khun8DxLWSd7cltVWi08-IdCUX_SzT/s1600/Nayna.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiAQkuCrkTvHueKAungSVZWJPGDGR1vzpWMF5euo30FO69pbpEaBbXLgRKMfIc0IwflGSSxX7RJrWsARMEF1RhFvQn7FApyaPjH-VNV0LGp7xqLZ9khun8DxLWSd7cltVWi08-IdCUX_SzT/s320/Nayna.JPG&quot; width=&quot;240&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Nayna Jain - Embedded Http Server in Eclipse&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
Overall a fantastic afternoon, well organized. I would like to thank Vel Ganesh from Bosch for helping me with the snaps for this blog. And did I mention about the delicious snacks!!!&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;&lt;b&gt;madhu&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;b&gt;Eclipse Trainer and Consultant&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;b&gt;&lt;i&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://eclipsebible.com/&quot;&gt;http://eclipseBible.com&lt;/a&gt;&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;</content><link rel='replies' type='application/atom+xml' href='http://eclipse-info.blogspot.com/feeds/8594265267041876634/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://eclipse-info.blogspot.com/2010/12/eclipse-demo-camp-2010-bangalore.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/8594265267041876634'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/8594265267041876634'/><link rel='alternate' type='text/html' href='http://eclipse-info.blogspot.com/2010/12/eclipse-demo-camp-2010-bangalore.html' title='Eclipse Demo Camp 2010 @ Bangalore'/><author><name>Madhu</name><uri>http://www.blogger.com/profile/05191409900046165475</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinHjYGa5FscB42dzdcnMkhHexfURSsCqOwLZK4PZcxCH0Wwygq1umSZmGAmS7t62S4J6UMaq2JtR9uDUoQq8XgI2ZoLPS8wMyNGUDtT04PQOXI5hmegqqgTKgaTAT6MQ/s220/Photo+on+2011-07-22+at+17.58+%232.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgImsyw2Gz6qkDKqxg9uejzjI7d4CjhAfKL9_4qZrqeaJ5HABrZ__sc87d4EsrVTm572obokBoQQ2OdLROibTWJ5y3KanJs05m0oeme8rLare8NKeDZS9ACAgivN78hSWUH8KWXdvY3ipeA/s72-c/Audience.JPG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3399985190174266183.post-2299827168857316262</id><published>2010-07-15T12:26:00.001+05:30</published><updated>2010-07-15T12:33:25.892+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Platform Chair"/><title type='text'>The story of a Chair as a Platform!</title><content type='html'>&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://eclipse.org/&quot;&gt;Eclipse&lt;/a&gt;&lt;/span&gt; is a Rich Client Platform. A cozy chair is also a platform that can support &#39;rich&#39; clients.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjpawIoEYZJcgXr3-pA2IAuvkgxMdy0xLdjXsrcEdFuBLfz_ol1L6ouadBGJDh6ke01IUtz2JBJkudE5Kt99taWrvKVHDH8SklDh9aLt6xOyrOIm6KrxiWSMBkH_lfvyLR0I4WCZk42JYoI/s1600/LookAround.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjpawIoEYZJcgXr3-pA2IAuvkgxMdy0xLdjXsrcEdFuBLfz_ol1L6ouadBGJDh6ke01IUtz2JBJkudE5Kt99taWrvKVHDH8SklDh9aLt6xOyrOIm6KrxiWSMBkH_lfvyLR0I4WCZk42JYoI/s320/LookAround.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
My friend &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://dewdrop-world.blogspot.com/&quot;&gt;Hima&lt;/a&gt;&lt;/span&gt; was kind enough to cast my chair as a hero in her story - &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://dewdrop-world.blogspot.com/2010/07/chair_13.html&quot;&gt;The Chair&lt;/a&gt;&lt;/span&gt;. Take a break from your work and read a nice work of fiction.&lt;br /&gt;
&lt;br /&gt;
By the way, she is in the middle of a blogathon, a blog a day for the entire month of July. Pretty tough huh!&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;madhu&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;EclipseBible.com&lt;/i&gt;</content><link rel='replies' type='application/atom+xml' href='http://eclipse-info.blogspot.com/feeds/2299827168857316262/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://eclipse-info.blogspot.com/2010/07/story-of-chair-as-platform.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/2299827168857316262'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/2299827168857316262'/><link rel='alternate' type='text/html' href='http://eclipse-info.blogspot.com/2010/07/story-of-chair-as-platform.html' title='The story of a Chair as a Platform!'/><author><name>Madhu</name><uri>http://www.blogger.com/profile/05191409900046165475</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinHjYGa5FscB42dzdcnMkhHexfURSsCqOwLZK4PZcxCH0Wwygq1umSZmGAmS7t62S4J6UMaq2JtR9uDUoQq8XgI2ZoLPS8wMyNGUDtT04PQOXI5hmegqqgTKgaTAT6MQ/s220/Photo+on+2011-07-22+at+17.58+%232.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjpawIoEYZJcgXr3-pA2IAuvkgxMdy0xLdjXsrcEdFuBLfz_ol1L6ouadBGJDh6ke01IUtz2JBJkudE5Kt99taWrvKVHDH8SklDh9aLt6xOyrOIm6KrxiWSMBkH_lfvyLR0I4WCZk42JYoI/s72-c/LookAround.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3399985190174266183.post-5904853656855583450</id><published>2010-06-24T11:29:00.002+05:30</published><updated>2010-06-24T14:29:07.518+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Eclipse Helios"/><title type='text'>Eclipse Helios - A few interesting features!</title><content type='html'>&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;An year old wait is over. Helios is out in the wild. Today morning, I downloaded Helios. Oops, my friend of eclipse download link got stuck. I went to the download link for the common public - eclipse.org/downloads. There goes the Helios Modeling Package.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Its a little annoying to see that GMF is not included part of the default bundles of modeling package. But, there is a quick way to install GMF in no time. I just hit the &#39;Install Modeling Components&#39; toolbar button.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Some of the interesting features that captured my mind are,&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
1. Open an eclipse file from Command line&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj68M1K8iaBH192vwFQ_nwOo9jkHO_1CDbkW5KGrj9P6IcW2Xp3cYzZJlWrSyvBFja3dPUKIePcwbwg5eGA5eWbPk7D_ZLFc1zDqqSeIZUBQaKPgaV2D5cvEW6UfyQVp9hq6THl6JR7HhOE/s1600/CommandLine.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj68M1K8iaBH192vwFQ_nwOo9jkHO_1CDbkW5KGrj9P6IcW2Xp3cYzZJlWrSyvBFja3dPUKIePcwbwg5eGA5eWbPk7D_ZLFc1zDqqSeIZUBQaKPgaV2D5cvEW6UfyQVp9hq6THl6JR7HhOE/s320/CommandLine.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Based on SWT and the native launcher, the Eclipse Platform now supports opening a file from the command line. &amp;nbsp;If an instance of Eclipse is already running, that instance will open the file. Otherwise, a new instance will be started.&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
2. A brand new OSGi console. You can watch whats under the hood of your eclipse ide.&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjrjubxemgm4sBhbuKpLVqECOsy7dZ07TOKRuKZeCshd_QLqoH-2J-78ctg34lwNJcdHzY-fVk6AaH4wKB1vPUlW9zebye8-_Gb3-gZj3SfiHwzSiYGBcLIl0WT3kJ4CZQz8fs9ZtNZba0V/s1600/OSGiConsole.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjrjubxemgm4sBhbuKpLVqECOsy7dZ07TOKRuKZeCshd_QLqoH-2J-78ctg34lwNJcdHzY-fVk6AaH4wKB1vPUlW9zebye8-_Gb3-gZj3SfiHwzSiYGBcLIl0WT3kJ4CZQz8fs9ZtNZba0V/s320/OSGiConsole.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
To open OSGi console, go to your Console View and select &#39;Host OSGi Console&#39; from the view menu.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
3. Eclipse Market Place Client&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBqjSkxAROqeLKk6OJqzxnotJ3hmCNgCTuOhL38E6Ku5BFfFhimz1Zs4zGH9iXIELvP9PNoZRMNoN3obAZrhpkWCJGyVZjRLVNf0gwyw-dKmWTJ4_nCgRO0MVnHrGRWqyrV9tq4R-zvHtA/s1600/EclipseMarktePlace.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBqjSkxAROqeLKk6OJqzxnotJ3hmCNgCTuOhL38E6Ku5BFfFhimz1Zs4zGH9iXIELvP9PNoZRMNoN3obAZrhpkWCJGyVZjRLVNf0gwyw-dKmWTJ4_nCgRO0MVnHrGRWqyrV9tq4R-zvHtA/s320/EclipseMarktePlace.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; Thanks to the work by &lt;a href=&quot;http://tasktop.com/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;TaskTop&lt;/span&gt;&lt;/a&gt;, the creators of &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://www.eclipse.org/mylyn/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;Mylyn&lt;/span&gt;&lt;/a&gt;, &lt;/span&gt; y&lt;/span&gt;ou can browse through all the interesting eclipse based apps quick and fast. Go to Help &amp;gt; Eclipse Market Place.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
4. Headless Launch Support&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;A new headless plug-in &quot;org.eclipse.pde.launching&quot; is provided to launch applications without a user interface.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Thats all for now. Let me dig deep in to the Helios framework. &lt;a href=&quot;http://eclipse.org/helios/blogathon/reviews.php&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;View the other reviews on Eclipse Helios here&lt;/span&gt;&lt;/a&gt;.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;i&gt;madhu&lt;/i&gt;&lt;/div&gt;
&lt;div&gt;
&lt;i&gt;&lt;a href=&quot;http://eclipsebible.com/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;b&gt;EclipseBible.com&lt;/b&gt;&lt;/span&gt;&lt;/a&gt;&lt;/i&gt;&lt;/div&gt;
&lt;/span&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://eclipse-info.blogspot.com/feeds/5904853656855583450/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://eclipse-info.blogspot.com/2010/06/eclipse-helios-few-interesting-features.html#comment-form' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/5904853656855583450'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/5904853656855583450'/><link rel='alternate' type='text/html' href='http://eclipse-info.blogspot.com/2010/06/eclipse-helios-few-interesting-features.html' title='Eclipse Helios - A few interesting features!'/><author><name>Madhu</name><uri>http://www.blogger.com/profile/05191409900046165475</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinHjYGa5FscB42dzdcnMkhHexfURSsCqOwLZK4PZcxCH0Wwygq1umSZmGAmS7t62S4J6UMaq2JtR9uDUoQq8XgI2ZoLPS8wMyNGUDtT04PQOXI5hmegqqgTKgaTAT6MQ/s220/Photo+on+2011-07-22+at+17.58+%232.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj68M1K8iaBH192vwFQ_nwOo9jkHO_1CDbkW5KGrj9P6IcW2Xp3cYzZJlWrSyvBFja3dPUKIePcwbwg5eGA5eWbPk7D_ZLFc1zDqqSeIZUBQaKPgaV2D5cvEW6UfyQVp9hq6THl6JR7HhOE/s72-c/CommandLine.jpg" height="72" width="72"/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3399985190174266183.post-8568259612145142189</id><published>2010-04-28T21:11:00.000+05:30</published><updated>2010-04-28T21:11:31.477+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Patterns in Eclipse EclipseBible"/><title type='text'>Patterns in Eclipse</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
Last Friday at Eclipse Day India 2010, I talked about,&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgsgrlbXhZAqJVgFImckAJeasYTD5Ob8cwYI3MEWnjk_l3tYU9J0ORRBFzEIN_QJiEBH2ZhJ1pbZQZAckM2VQm71abmqs0b1x_5lnoLdqc-bD0oR4_hYX9oTV3WTd-0VmcN5nW7ALmPB6B6/s1600/Slide1.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;241&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgsgrlbXhZAqJVgFImckAJeasYTD5Ob8cwYI3MEWnjk_l3tYU9J0ORRBFzEIN_QJiEBH2ZhJ1pbZQZAckM2VQm71abmqs0b1x_5lnoLdqc-bD0oR4_hYX9oTV3WTd-0VmcN5nW7ALmPB6B6/s320/Slide1.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
Because brain is a pattern recognition system.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgXNdDfE41w6nSg2J3xNpNYzTNInzeqxNFb1nqCmknCuUJyoVYC_QnMEBzGzKnRWyONS22Iy1WKcFWy6P_Q_NuQ31ahHFxwLoFleFSu0jwGdHWle05aSu-i1VoX9plzEMPAVD6N1Q3Ysc9b/s1600/Slide2.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;236&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgXNdDfE41w6nSg2J3xNpNYzTNInzeqxNFb1nqCmknCuUJyoVYC_QnMEBzGzKnRWyONS22Iy1WKcFWy6P_Q_NuQ31ahHFxwLoFleFSu0jwGdHWle05aSu-i1VoX9plzEMPAVD6N1Q3Ysc9b/s320/Slide2.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
We saw the problem we face during software development.&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
We learned that &lt;i&gt;&quot;writing good code is not just a good will of the programmer, but a social responsibility of the programmer&quot;&lt;/i&gt;.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPXUNXffMuQzMlrJTiU61Q66IWmDKEMOnxflyCassbFOxXDMxAllrEwO81SIfz5c9BIyvCJEetoc8KQYKFqq0-wt98Q-FrxKgGKG7r2c9gJ7ucPy76kbpRGJYlSNJ3X89fQ-8xpmiNWodN/s1600/slide3.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;242&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPXUNXffMuQzMlrJTiU61Q66IWmDKEMOnxflyCassbFOxXDMxAllrEwO81SIfz5c9BIyvCJEetoc8KQYKFqq0-wt98Q-FrxKgGKG7r2c9gJ7ucPy76kbpRGJYlSNJ3X89fQ-8xpmiNWodN/s320/slide3.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
We started with the pattern story. We saw how Visitor pattern is used in Eclipse Platform.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqIf7TNdhXzgiTnNYzoZpdDRjexh3-VWyUnYtGZp8fDisSbha0nXhCMpjsIxXeGngncUUop_pYcODHG2SYtSmYGlZaQlgzRV4_GE4gzWFSlBOlxeA6Zkpn7f0vy2EAwTHo9-A2N1o-Djzc/s1600/slide4.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;241&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqIf7TNdhXzgiTnNYzoZpdDRjexh3-VWyUnYtGZp8fDisSbha0nXhCMpjsIxXeGngncUUop_pYcODHG2SYtSmYGlZaQlgzRV4_GE4gzWFSlBOlxeA6Zkpn7f0vy2EAwTHo9-A2N1o-Djzc/s320/slide4.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
We saw how Observer Pattern is used to track Workspace Changes.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1ir9Te3Yp8dWb0DDawNwa2o1l2MJDVip8MBSO2avJVUmf5wl99BQQByKz5XzvLnnM-jTfPSPfD4z9q3nf9vJCDmCRM_Rzb8B2J7CTtI4IASF__QQPZan5-27hMXq9v_FQGbD_kr_YUDlq/s1600/slide5_observerPattern.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;242&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1ir9Te3Yp8dWb0DDawNwa2o1l2MJDVip8MBSO2avJVUmf5wl99BQQByKz5XzvLnnM-jTfPSPfD4z9q3nf9vJCDmCRM_Rzb8B2J7CTtI4IASF__QQPZan5-27hMXq9v_FQGbD_kr_YUDlq/s320/slide5_observerPattern.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;And we talked about six other patterns and how its used in Eclipse Platform. If you are interested to look further, you can check &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://www.slideshare.net/madhusamuel/patterns-in-eclipse&quot;&gt;the slides of Patterns In Eclipse&lt;/a&gt;&lt;/span&gt;.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/&quot;&gt;&lt;/a&gt;&lt;span id=&quot;goog_1044376303&quot;&gt;&lt;/span&gt;&lt;span id=&quot;goog_1044376304&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;i&gt;madhu&lt;/i&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;&lt;i&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://eclipsebible.com/&quot;&gt;EclipseBible.com&lt;/a&gt;&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://eclipse-info.blogspot.com/feeds/8568259612145142189/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://eclipse-info.blogspot.com/2010/04/patterns-in-eclipse.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/8568259612145142189'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/8568259612145142189'/><link rel='alternate' type='text/html' href='http://eclipse-info.blogspot.com/2010/04/patterns-in-eclipse.html' title='Patterns in Eclipse'/><author><name>Madhu</name><uri>http://www.blogger.com/profile/05191409900046165475</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinHjYGa5FscB42dzdcnMkhHexfURSsCqOwLZK4PZcxCH0Wwygq1umSZmGAmS7t62S4J6UMaq2JtR9uDUoQq8XgI2ZoLPS8wMyNGUDtT04PQOXI5hmegqqgTKgaTAT6MQ/s220/Photo+on+2011-07-22+at+17.58+%232.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgsgrlbXhZAqJVgFImckAJeasYTD5Ob8cwYI3MEWnjk_l3tYU9J0ORRBFzEIN_QJiEBH2ZhJ1pbZQZAckM2VQm71abmqs0b1x_5lnoLdqc-bD0oR4_hYX9oTV3WTd-0VmcN5nW7ALmPB6B6/s72-c/Slide1.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3399985190174266183.post-5584523742711305620</id><published>2010-04-27T11:11:00.001+05:30</published><updated>2010-04-27T11:35:44.844+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="EclipseBible Eclipse Day India 2010"/><title type='text'>A Beautiful Day - Eclipse Day India 2010</title><content type='html'>&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;&quot;Ubuntu is&amp;nbsp;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: sans-serif; font-size: 12px; line-height: 19px;&quot;&gt;the essence of being human. Ubuntu speaks particularly about the fact that you can&#39;t exist as a human being in isolation. It speaks about our interconnectedness. You can&#39;t be human all by yourself, and when you have this quality - Ubuntu - you are known for your generosity.&quot;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: sans-serif; font-size: 12px; line-height: 19px;&quot;&gt;by &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Desmond_Tutu&quot;&gt;Archbishop Desmond Tutu&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: sans-serif; font-size: 12px; line-height: 19px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: sans-serif; font-size: 12px; line-height: 19px;&quot;&gt;The organizers were generous, the sponsors were generous, the speakers were generous and the eclipse community was generous. And what a day it lead to! A day to share the knowledge acquired with years of experience working at Eclipse. We had excellent talks as you can see in the &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://www.eclipseday.in/2010/04/schedule.html&quot;&gt;schedule&lt;/a&gt;&lt;/span&gt;.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: sans-serif; font-size: 12px; line-height: 19px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: sans-serif; font-size: 12px; line-height: 19px;&quot;&gt;Holding the true spirit of &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/goog_1473782128&quot;&gt;FOSS&lt;/a&gt;&lt;/span&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Free_and_open_source_software&quot;&gt; &lt;/a&gt;we had&amp;nbsp;free talks and&amp;nbsp;free food - who said its not free beer ;). The organizers had put lot of effort for free - to arrange the venue, print the handouts, host the website.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: sans-serif; font-size: 12px; line-height: 19px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: sans-serif; font-size: 12px; line-height: 19px;&quot;&gt;&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;background-color: white;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://eclipsebible.com/&quot;&gt;EclipseBible.com&lt;/a&gt;&lt;/span&gt; had sponsored the handouts for the event. &amp;nbsp;We offer eclipse training and consulting services. You can find the details at &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://training.eclipsebible.com/&quot;&gt;http://training.eclipsebible.com&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: sans-serif; font-size: 12px; line-height: 19px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: sans-serif; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 12px; line-height: 19px;&quot;&gt;The organizers were trying the best to cut the costs for the sponsors. &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://blog.ankursharma.org/&quot;&gt;Ankur &lt;/a&gt;&lt;/span&gt;even asked me to print the handouts (schedule + speaker bio) &amp;nbsp;in black and white to keep the cost less which I had to happily reject. The elegance of the eclipse should reflect even in the handouts distributed to the registrants.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: sans-serif; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 12px; line-height: 19px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: sans-serif; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 12px; line-height: 19px;&quot;&gt;People from around 35 companies turned out including Bosch, IBM, Adobe, Google, Wipro, Accenture, and lot of startups.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: sans-serif; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 12px; line-height: 19px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: sans-serif; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 12px; line-height: 19px;&quot;&gt;&lt;i&gt;madhu&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: sans-serif; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 12px; line-height: 19px;&quot;&gt;&lt;i&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://eclipsebible.com/&quot;&gt;EclipseBible.com&lt;/a&gt;&lt;/span&gt;&lt;/i&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://eclipse-info.blogspot.com/feeds/5584523742711305620/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://eclipse-info.blogspot.com/2010/04/beautiful-day-eclipse-day-india-2010.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/5584523742711305620'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/5584523742711305620'/><link rel='alternate' type='text/html' href='http://eclipse-info.blogspot.com/2010/04/beautiful-day-eclipse-day-india-2010.html' title='A Beautiful Day - Eclipse Day India 2010'/><author><name>Madhu</name><uri>http://www.blogger.com/profile/05191409900046165475</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinHjYGa5FscB42dzdcnMkhHexfURSsCqOwLZK4PZcxCH0Wwygq1umSZmGAmS7t62S4J6UMaq2JtR9uDUoQq8XgI2ZoLPS8wMyNGUDtT04PQOXI5hmegqqgTKgaTAT6MQ/s220/Photo+on+2011-07-22+at+17.58+%232.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3399985190174266183.post-2328993742997649552</id><published>2010-04-22T10:47:00.000+05:30</published><updated>2010-04-22T10:47:45.277+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Eclipse day India 2010 Software Craftsmanship"/><title type='text'>Eclipse Day India 2010 - 1 more day to go...</title><content type='html'>&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&quot;Not only individuals and interactions,&amp;nbsp;but also a Community of Professionals&quot;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
from &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://manifesto.softwarecraftsmanship.org/&quot;&gt;Manifesto of Software Craftsmanship&lt;/a&gt;&lt;/span&gt;.&lt;/div&gt;
&lt;br /&gt;
I believe the most important point in the manifesto of software craftsmanship is the third one - &quot;Not only individuals and interactions, but also a community of professionals&quot;. Only a community can bring awareness and spread the news of software craftsmanship among software professionals. The backing of a group will help an engineer to foster his/her imaginations into reality. A community is formed by constant gatherings and knowledge sharing sessions. Software Communities help to spread the news about good coding practices, ethical standards of engineers, responsibilities of software professionals to the society etc etc.&lt;br /&gt;
&lt;br /&gt;
This is exactly what we do in Eclipse Community gatherings. I am more than excited to attend &#39;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://www.eclipseday.in/&quot;&gt;The Eclipse Day India 2010&lt;/a&gt;&lt;/span&gt;&#39;. Hope to see you there.&lt;br /&gt;
&lt;br /&gt;
If you are not able to make it there, don&#39;t worry, tune to this blog, I will brief about the happenings of the event soon.&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;madhu&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://eclipsebible.com/&quot;&gt;eclipseBible.com&lt;/a&gt;&lt;/span&gt;&lt;/i&gt;</content><link rel='replies' type='application/atom+xml' href='http://eclipse-info.blogspot.com/feeds/2328993742997649552/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://eclipse-info.blogspot.com/2010/04/eclipse-day-india-2010-1-more-day-to-go.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/2328993742997649552'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/2328993742997649552'/><link rel='alternate' type='text/html' href='http://eclipse-info.blogspot.com/2010/04/eclipse-day-india-2010-1-more-day-to-go.html' title='Eclipse Day India 2010 - 1 more day to go...'/><author><name>Madhu</name><uri>http://www.blogger.com/profile/05191409900046165475</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinHjYGa5FscB42dzdcnMkhHexfURSsCqOwLZK4PZcxCH0Wwygq1umSZmGAmS7t62S4J6UMaq2JtR9uDUoQq8XgI2ZoLPS8wMyNGUDtT04PQOXI5hmegqqgTKgaTAT6MQ/s220/Photo+on+2011-07-22+at+17.58+%232.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3399985190174266183.post-1798288977580684651</id><published>2010-04-15T08:45:00.000+05:30</published><updated>2010-04-15T08:45:34.641+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Patterns in Eclipse Day India 2010"/><title type='text'>Eclipse Day India 2010 - 8 more days to go...</title><content type='html'>&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: center;&quot;&gt;
&quot;Patterns help you learn from other&#39;s successes instead of your own failures&quot;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: center;&quot;&gt;
by Mark Johnson.&lt;/div&gt;
&lt;div style=&quot;margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;&quot;&gt;
8 more days to go for Eclipse Day India 2010. What is more interesting than to talk about myself ;). Today, I would like to brief about my talk in Eclipse Day India 2010 - &quot;Patterns in Eclipse&quot;.&lt;/div&gt;
&lt;br /&gt;
My passion is to talk about better programming practices. Seeing well written code is a gift. A talk about writing good code may not go well with the &#39;Eclipse Plugin Development&#39; theme. Hence I chose the topic &#39;Patterns in Eclipse&#39;. Design patterns are solutions to recurring programming problems. The &#39;Gang of Four patterns&#39; are used extensively in the development of eclipse platform. I will brief about some of these patterns, and how they are implemented in eclipse platform. I hope this will motivate the audience,&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;To write cleaner code.&lt;/li&gt;
&lt;li&gt;To dig deep into the platform&lt;/li&gt;
&lt;li&gt;Increases interest to explore the platform.&lt;/li&gt;
&lt;li&gt;Help to absorb some of these patterns to his/her daily development work.&lt;/li&gt;
&lt;/ul&gt;
The following patterns will be covered,&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Singleton Pattern (Accessing Platform and PlatformUI services)&lt;/li&gt;
&lt;li&gt;Strategy Pattern (Customize a viewer using providers)&lt;/li&gt;
&lt;li&gt;Observer Pattern (Resource Change Listener, SWT Event Handling)&lt;/li&gt;
&lt;li&gt;Composite Pattern (During creation of widgets)&lt;/li&gt;
&lt;li&gt;Proxy, Bridge Patterns (To access the file system)&lt;/li&gt;
&lt;li&gt;Visitor Pattern (To traverse through the file system)&lt;/li&gt;
&lt;li&gt;IAdaptible and Adapter Factories&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Memento Pattern (Persisting workbench state)&lt;/li&gt;
&lt;li&gt;Virtual Proxy (Extension point mechanism)&lt;/li&gt;
&lt;/ul&gt;
All these patterns will be covered in 1 hour ;). I will flash the food in front and tell &amp;nbsp;&quot;Hope you had a great lunch&quot;. ;) Just kidding!&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;madhu&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;a href=&quot;http://eclipsebible.com/&quot;&gt;EclipseBible&lt;/a&gt;&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: small;&quot;&gt;References - Contributing to Eclipse: Principles, Patterns and Plugins, Head First Design Patterns, Design Patterns for Dummies, Object Oriented Analysis and Design with Applications, Clean Code: A Handbook of Agile Software Craftsmanship.&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://eclipse-info.blogspot.com/feeds/1798288977580684651/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://eclipse-info.blogspot.com/2010/04/eclipse-day-india-2010-8-more-days-to.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/1798288977580684651'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/1798288977580684651'/><link rel='alternate' type='text/html' href='http://eclipse-info.blogspot.com/2010/04/eclipse-day-india-2010-8-more-days-to.html' title='Eclipse Day India 2010 - 8 more days to go...'/><author><name>Madhu</name><uri>http://www.blogger.com/profile/05191409900046165475</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinHjYGa5FscB42dzdcnMkhHexfURSsCqOwLZK4PZcxCH0Wwygq1umSZmGAmS7t62S4J6UMaq2JtR9uDUoQq8XgI2ZoLPS8wMyNGUDtT04PQOXI5hmegqqgTKgaTAT6MQ/s220/Photo+on+2011-07-22+at+17.58+%232.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3399985190174266183.post-7788665498381757605</id><published>2010-04-13T09:35:00.000+05:30</published><updated>2010-04-13T09:35:39.306+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Eclipse Day India 2010"/><title type='text'>Eclipse Day India 2010 - 10 more days to go...</title><content type='html'>&lt;a href=&quot;http://blog.ankursharma.org/&quot; style=&quot;color: blue;&quot;&gt;Ankur Sharma&lt;/a&gt; and &lt;a href=&quot;http://blog.eclipse-tips.com/&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;Prakash GR&lt;/span&gt;&lt;/a&gt; teams up again to offer a feast of eclipse talks in the forthcoming &lt;a href=&quot;http://www.eclipseday.in/&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;Eclipse Day India 2010&lt;/span&gt;&lt;/a&gt;. The count down begins with just 10 more days to go.&lt;br /&gt;
&lt;br /&gt;It was great to see an idea taking shape to a concrete plan over the past few months. The event happens at the cozy Monarch Luxur Hotel, Infantry Road, Bangalore on 23rd of April, 2010.&amp;nbsp; &lt;br /&gt;&lt;br /&gt;The &lt;a href=&quot;http://www.eclipseday.in/p/schedule.html&quot; style=&quot;color: blue;&quot;&gt;agenda &lt;/a&gt;has lot of exciting talks. Even though I am eager to watch all the talks, few of my favourite talks are&amp;nbsp; &#39;Dependency Injection in e4&#39; by &lt;a href=&quot;http://tweakeclipse.blogspot.com/&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;Chetan Kumar Kotha&lt;/span&gt;&lt;/a&gt;. I had attended Chetan&#39;s talk in last year&#39;s Eclipse Summit India and was quite impressed. My next pick is &#39;OSGi Tutorial&#39; by Prakash GR. I try not to miss any talks taken by Prakash GR. Single sourcing with &lt;a href=&quot;http://eclipse.org/rap/&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;Rich Ajax Platform&lt;/span&gt;&lt;/a&gt; by Ankur Sharma is my next pick. RAP is a promising technology, but has less number of tutorials. A talk on RAP is a need of the time. &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;br /&gt;From the abstract review team, we were concerned about &quot;just one talk on &lt;a href=&quot;http://eclipse.org/e4/&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;e4&lt;/span&gt;&lt;/a&gt;&quot;. But, e4 1.0 is yet to release and there is enough time to gain the momentum.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://blog.ankursharma.org/2010/04/eclipse-day-india-2010.html&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;As Ankur said&lt;/span&gt;&lt;/a&gt;, eclipse is getting a lot of love from Bangalore. Its interesting to see how a technology influences the imagination of masses. On Eclipse Day we will have more&amp;nbsp; insights on how eclipse is used in various firms across the city.&lt;br /&gt;
&lt;br /&gt;&lt;i&gt;madhu&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;a href=&quot;http://eclipsebible.com/&quot; style=&quot;color: blue;&quot;&gt;EclipseBible&lt;/a&gt; &lt;/i&gt;</content><link rel='replies' type='application/atom+xml' href='http://eclipse-info.blogspot.com/feeds/7788665498381757605/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://eclipse-info.blogspot.com/2010/04/eclipse-day-india-2010-10-more-days-to.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/7788665498381757605'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/7788665498381757605'/><link rel='alternate' type='text/html' href='http://eclipse-info.blogspot.com/2010/04/eclipse-day-india-2010-10-more-days-to.html' title='Eclipse Day India 2010 - 10 more days to go...'/><author><name>Madhu</name><uri>http://www.blogger.com/profile/05191409900046165475</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinHjYGa5FscB42dzdcnMkhHexfURSsCqOwLZK4PZcxCH0Wwygq1umSZmGAmS7t62S4J6UMaq2JtR9uDUoQq8XgI2ZoLPS8wMyNGUDtT04PQOXI5hmegqqgTKgaTAT6MQ/s220/Photo+on+2011-07-22+at+17.58+%232.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3399985190174266183.post-4472959704204409733</id><published>2010-03-19T23:24:00.001+05:30</published><updated>2010-03-20T09:32:37.937+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Future Eclipse Google EclipseBible"/><title type='text'>When the world changes...</title><content type='html'>&lt;br /&gt;
Recently &lt;a href=&quot;http://slashdot.org/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;SlashDot&lt;/span&gt;&lt;/a&gt;&amp;nbsp;reported the amount of &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://hmi.ucsd.edu/pdf/HMI_2009_ConsumerReport_Dec9_2009.pdf&quot;&gt;information consumed by americans&lt;/a&gt;&lt;/span&gt;. It says that the americans spend more hours in front of TV than in front of computer....&lt;br /&gt;
&lt;br /&gt;
Guess what happened next?&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Google TV&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;
Mitchell Pronschinske writes at&amp;nbsp;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://eclipse.dzone.com/&quot;&gt;Dzone&lt;/a&gt;&lt;/span&gt;&amp;nbsp;&lt;i&gt;&quot;In an effort to trigger the mass adoption of web-on-television platforms, &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://www.google.co.in/&quot;&gt;Google&lt;/a&gt;&lt;/span&gt; is creating its own TV platform based on the &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://code.google.com/android&quot;&gt;Android OS&lt;/a&gt;&lt;/span&gt;. Google will work with &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://www.intel.com/&quot;&gt;Intel&lt;/a&gt;&lt;/span&gt; and &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://www.sony.net/&quot;&gt;Sony&lt;/a&gt;&lt;/span&gt; to develop &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://gbcghana.com/news/32609detail.html&quot;&gt;Google TV&lt;/a&gt;&lt;/span&gt;, which will combine television, web apps, web video, and other content on websites. &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Logitech&quot;&gt;Logitech&lt;/a&gt;&lt;/span&gt; is in charge of making the keyboard remote control. The final version will use &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://www.google.com/chrome&quot;&gt;Chrome&lt;/a&gt;&lt;/span&gt; ported to Android, rather than Android&#39;s WebKit browser.&quot;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;
It becomes more interesting in the report from NY Times …&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;&quot;In addition to the makers of traditional cable and satellite set-top boxes, &lt;a href=&quot;http://www.cisco.com/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;Cisco Systems&lt;/span&gt;&lt;/a&gt; and &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://www.motorola.com/Consumers/US-EN/GLP&quot;&gt;Motorola&lt;/a&gt;&lt;/span&gt;, many others have entered the game, including &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://www.microsoft.com/en/us/default.aspx&quot;&gt;Microsoft&lt;/a&gt;&lt;/span&gt;, &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://www.apple.com/&quot;&gt;Apple&lt;/a&gt;&lt;/span&gt;, &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/TiVo&quot;&gt;TiVo&lt;/a&gt;&lt;/span&gt; and start-up companies like &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://www.roku.com/&quot;&gt;Roku&lt;/a&gt;&lt;/span&gt; and &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://www.boxee.tv/&quot;&gt;Boxee&lt;/a&gt;&lt;/span&gt;, which already stream video from Netflix, MLB.com and other Web sites directly to television sets. &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://in.yahoo.com/?p=us&quot;&gt;Yahoo&lt;/a&gt;&lt;/span&gt; is also promoting a TV platform that uses small software programs called widgets to use certain Web services. &quot;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;
Lets imagine that in the future we develop apps by connecting our keyboards to Television. Once the line between computer monitors and television sets blur, the relevance of social media apps will increase again. This will blur the line between work and play hours. Eclipse IDE may integrate more and more social media apps.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcQrjNGm3dw6yoiF4eCpVqxCGD1kWxcbJQ7_EUzstw_abTPnvzw0RBndluAwptsp3_Y3ScTA8nBd6qz_Fn92NdQJFe5iVwRBEs4h4A_SjB_x5B7uKN6k6U0TOkHXtzqPQNnpEZ_PKlzpSI/s1600-h/FutureEclipse.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcQrjNGm3dw6yoiF4eCpVqxCGD1kWxcbJQ7_EUzstw_abTPnvzw0RBndluAwptsp3_Y3ScTA8nBd6qz_Fn92NdQJFe5iVwRBEs4h4A_SjB_x5B7uKN6k6U0TOkHXtzqPQNnpEZ_PKlzpSI/s320/FutureEclipse.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
In 2015, will Eclipse IDE look like this?&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;i&gt;madhu&lt;/i&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;i&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://eclipsebible.com/&quot;&gt;http://eclipsebible.com&lt;/a&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://eclipse-info.blogspot.com/feeds/4472959704204409733/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://eclipse-info.blogspot.com/2010/03/when-world-changes.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/4472959704204409733'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/4472959704204409733'/><link rel='alternate' type='text/html' href='http://eclipse-info.blogspot.com/2010/03/when-world-changes.html' title='When the world changes...'/><author><name>Madhu</name><uri>http://www.blogger.com/profile/05191409900046165475</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinHjYGa5FscB42dzdcnMkhHexfURSsCqOwLZK4PZcxCH0Wwygq1umSZmGAmS7t62S4J6UMaq2JtR9uDUoQq8XgI2ZoLPS8wMyNGUDtT04PQOXI5hmegqqgTKgaTAT6MQ/s220/Photo+on+2011-07-22+at+17.58+%232.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcQrjNGm3dw6yoiF4eCpVqxCGD1kWxcbJQ7_EUzstw_abTPnvzw0RBndluAwptsp3_Y3ScTA8nBd6qz_Fn92NdQJFe5iVwRBEs4h4A_SjB_x5B7uKN6k6U0TOkHXtzqPQNnpEZ_PKlzpSI/s72-c/FutureEclipse.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3399985190174266183.post-7239123544448556452</id><published>2010-03-09T19:59:00.004+05:30</published><updated>2010-03-09T20:05:18.163+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="eclipsebible Zero Defects Creativity"/><title type='text'>&quot;I have achieved Zero Defects&quot;</title><content type='html'>&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&quot;I have achieved Zero Defects&quot;,&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&amp;nbsp;A dream of every software engineer.&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Is it possible to achieve zero defects? Nothing is impossible. We have even reached the moon!!! But … seriously, do you think zero defects is possible? &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Fred_Brooks&quot;&gt;Fred Brooks&lt;/a&gt;&lt;/span&gt;, the author of &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/The_Mythical_Man-Month&quot;&gt;The Mythical Man Month&lt;/a&gt;&lt;/span&gt; says &quot;For each bug found during the testing phase, one hidden bug goes to the customer&quot;. These words are spoken from experience.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Now ask the same question to one of the managers who have not written a single line of code in the last 5 years. Probably, the reply would be &quot;Defects are induced because of the carelessness of the engineers&quot;. I am not exaggerating. This happens in our everyday life, in the world around us. After all, the world is not that fair.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Ask the same question to the so called careless engineer. The reply could be &quot;Its not possible to achieve zero defects, even though we can strive to reduce the defect count. We have even created tools to track down the bug count ...&quot;.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
I am an engineer. I represent the careless engineer that you can see and feel in every software firm. When the blame for the defects are put on me, I become emotional sometimes. I scream. I shout. &quot;Hey Manager, we engineers are careless. Because we too are human. And don&#39;t you know that to err is humane?&quot;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Can we blame the manager for all those bad deeds? After all, the managers have to deal with the end customer who, sometimes, doesn&#39;t even know what a &#39;program&#39; is. I know a customer who was not ready to accept even a single defect. He said &quot;I am paying 10 times for your damn software than I pay for the hardware. You are so expensive. If your product is not defect free, then why should I invest such a huge amount for your service?&quot;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
That’s a reasonable question. If customer pays, can&#39;t he expect a decent product. And when he pays a huge amount, can&#39;t he expect a defect free product. After all, we engineers also live in the financial world. We also know the importance of money. In fact, we too save money to buy products.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Customers, managers and engineers. Who is the actual culprit? Who can we put the blame to? We forgot one entity… the point of our discussion. The software system which carries the burden of the defects. But one difference. Software systems are not part of our real world. They live in the virtual world. The rules and laws in the virtual world are different.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
The hardware for which the customer pays live its life in the real world. You can touch it and feel it. In the real world, systems and events are more predictable. Because, the laws of physics applies here. If your mobile phone slips from your hand, your genius mind can track down the moment when it is going to hit the ground. You just need to know the weight of your mobile phone and height to the ground. Considering the dust in the atmosphere is negligible, you just need to apply the formula you learned in your school days to track when your mobile phone hits the ground. This is possible because the falling mobile phone is a continuous system. The engineers in &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://www.isro.org/&quot;&gt;ISRO &lt;/a&gt;&lt;/span&gt;and &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://www.nasa.gov/&quot;&gt;NASA&lt;/a&gt;&lt;/span&gt; send rockets to the outer space using the same logic. You can predict the output of continuous systems.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Take the values of all the variables in a software system along with the method stacks available in different threads, at any moment. This collection is the state of the software system at that moment. The virtual world is digital. In the digital world all systems are &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Discrete_system&quot;&gt;discrete&lt;/a&gt;&lt;/span&gt;. Means, the software system is nothing but a system which has &#39;n&#39; number of states. You can test these n number of states by n number of test cases. This will ensure that the software system is defect free. Then you can make the big announcement. &quot;I have achieved zero defects&quot;.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Consider that you have a simple java program which uses just a primitive &#39;int&#39; variable. The int has a size of 4 bytes and can take values in the range of -2,147,483,648 to 2,147,483,647. These are the different states this single variable can hold. Definitely I cannot have test cases to test all these states. I will test three generic conditions. I.e., what happens to this small system, when the int takes a negative value, zero and positive value. Now I have reduced the states which I need to test from 4294967295 cases to 3 cases. Now there is a chance for a hidden bug in the rest of the 4294967292 states which I have not tested.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
This example is a little exaggeration. But, …. If this is the case for a simple program with a single variable, what will be the case of a huge software system with thousands of variables and hundreds of threads? You can ensure zero defects by testing all those different states. If you are a manager, learn a bit about permutations and combinations so that you can calculate the number of test cases your test engineers should handle.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Coming back to reality, you cannot test all those states in the software systems. You need unacceptable duration of time and patience to do a complete exhaustive testing. By the time you finish your testing, years would&#39;ve passed, even the need for your software system to exist will not be there. Your test engineers would&#39;ve gone crazy, you would&#39;ve been completely lost, depressed and wouldn&#39;t have seen day light for years. Even your family would&#39;ve forgotten you. Man….&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
When the facts speak, the real world where we live has got strict deadlines and market pressures. The life time of products&#39; time-to-market are getting shorter and shorter. We have to build systems in a matter of months. We need to cater to the change of requirements coming here and then. We have millions of states in the software which are not tested, but hide bugs from our reach.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Hence, I have the feeling that what others have said before me….. &quot;Zero defects are not possible&quot;. But you can reduce the number of defects.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
How?&lt;/div&gt;
&lt;ul&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Follow &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://manifesto.softwarecraftsmanship.org/&quot;&gt;Manifesto of Software Craftsmanship&lt;/a&gt;&lt;/span&gt;.&lt;/li&gt;
&lt;li&gt;Recruit the right resources. Engineers who have got the passion to the craft and the attitude to improve his/her skills. They will contribute to the success of your organization without further supervision.&lt;/li&gt;
&lt;li&gt;Give the best possible infrastructure to your engineers - the latest machines, uncensored internet, library, gaming facilities for his/her mind to relax. Productivity is highest when the mind is relaxed.&lt;/li&gt;
&lt;li&gt;Provide flexible working hours. After all human mind has its own mood swings. Software cannot be written by just copy-pastes. You need to harness the creativity of the engineers. Creativity springs out of the mind when the time is right. You cannot ask someone to come out with a creative idea, say, in the next 1 hour.&lt;/li&gt;
&lt;li&gt;A quiet place to work. The highest productivity of an engineer is achieved when he/she write programs in a meditative state, where the mind finds the best solutions to the domain problems.&lt;/li&gt;
&lt;li&gt;Working from home facility.&lt;/li&gt;
&lt;li&gt;If defects are found, do not blame the engineer who wrote the program or the engineer who tested the app. Face the reality.&lt;/li&gt;
&lt;li&gt;Create a culture of knowledge sharing. Remember, people don&#39;t share knowledge in the absence of trust. Create a culture of trust.&lt;/li&gt;
&lt;li&gt;Do not micro manage. &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Micromanagement&quot;&gt;Micro management&lt;/a&gt;&lt;/span&gt; will lead to mediocrity. &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://eclipse-info.blogspot.com/2009/07/creativity.html&quot;&gt;Creativity&lt;/a&gt;&lt;/span&gt; is highest when the engineer is left to himself. Let the &lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://eclipse-info.blogspot.com/2009/07/creativity.html&quot;&gt;creativity&lt;/a&gt;&amp;nbsp;&lt;/span&gt;of the engineer flow freely to create the best quality software systems. Remember the old management quote - &quot;You can&#39;t manage What you can&#39;t measure&quot;.&lt;/li&gt;
&lt;li&gt;Boost the motivation level of your engineers.&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
The above factors will help to reduce the defects in software system. The leading innovative organizations in the world have already implemented most of these items. You can definitely create software products without any of the above mentioned criteria. But, if you want to build world-class products with less defects, not the mediocre products, you need to seriously think about the above points.&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;i&gt;madhu&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;&lt;a href=&quot;http://eclipsebible.com/&quot;&gt;http://eclipsebible.com/&lt;/a&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;i&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: small;&quot;&gt;References - The Mythical Man Month by Fred Brooks, Object Oriented Analysis and Design with Applications by Grady Booch and Others.&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://eclipse-info.blogspot.com/feeds/7239123544448556452/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://eclipse-info.blogspot.com/2010/03/i-have-achieved-zero-defects_09.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/7239123544448556452'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/7239123544448556452'/><link rel='alternate' type='text/html' href='http://eclipse-info.blogspot.com/2010/03/i-have-achieved-zero-defects_09.html' title='&quot;I have achieved Zero Defects&quot;'/><author><name>Madhu</name><uri>http://www.blogger.com/profile/05191409900046165475</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinHjYGa5FscB42dzdcnMkhHexfURSsCqOwLZK4PZcxCH0Wwygq1umSZmGAmS7t62S4J6UMaq2JtR9uDUoQq8XgI2ZoLPS8wMyNGUDtT04PQOXI5hmegqqgTKgaTAT6MQ/s220/Photo+on+2011-07-22+at+17.58+%232.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3399985190174266183.post-4539162285859441463</id><published>2010-03-03T07:16:00.002+05:30</published><updated>2010-03-03T07:19:32.895+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="eclipsebible eclipse commands"/><title type='text'>Basics of Eclipse Commands</title><content type='html'>I believe, technology adopters follow technologies that are easier to master. The maturity and openness of open source projects can be weighed by the number of tutorials, articles and books available to learn it. &lt;br /&gt;
&lt;br /&gt;
This presentation is my first donation to eclipse community on behalf of &lt;a href=&quot;http://eclipsebible.com/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: blue;&quot;&gt;eclipsebible.com&lt;/span&gt;&lt;/a&gt;. This presentation slides cover the basics of the eclipse commands extension point.&lt;br /&gt;
&lt;br /&gt;
madhu&lt;br /&gt;
&lt;div id=&quot;__ss_3317390&quot; style=&quot;width: 425px;&quot;&gt;&lt;strong style=&quot;display: block; margin: 12px 0 4px;&quot;&gt;&lt;a href=&quot;http://www.slideshare.net/madhusamuel/eclipse-commands&quot; title=&quot;Eclipse Commands&quot;&gt;Eclipse Commands&lt;/a&gt;&lt;/strong&gt;&lt;object height=&quot;355&quot; width=&quot;425&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=eclipsecommands-100302140048-phpapp01&amp;stripped_title=eclipse-commands&quot; /&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;/&gt;&lt;param name=&quot;allowScriptAccess&quot; value=&quot;always&quot;/&gt;&lt;embed src=&quot;http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=eclipsecommands-100302140048-phpapp01&amp;stripped_title=eclipse-commands&quot; type=&quot;application/x-shockwave-flash&quot; allowscriptaccess=&quot;always&quot; allowfullscreen=&quot;true&quot; width=&quot;425&quot; height=&quot;355&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;
&lt;div style=&quot;padding: 5px 0 12px;&quot;&gt;View more &lt;a href=&quot;http://www.slideshare.net/&quot;&gt;presentations&lt;/a&gt; from &lt;a href=&quot;http://www.slideshare.net/madhusamuel&quot;&gt;Madhu Samuel&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://eclipse-info.blogspot.com/feeds/4539162285859441463/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://eclipse-info.blogspot.com/2010/03/basics-of-eclipse-commands.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/4539162285859441463'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/4539162285859441463'/><link rel='alternate' type='text/html' href='http://eclipse-info.blogspot.com/2010/03/basics-of-eclipse-commands.html' title='Basics of Eclipse Commands'/><author><name>Madhu</name><uri>http://www.blogger.com/profile/05191409900046165475</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinHjYGa5FscB42dzdcnMkhHexfURSsCqOwLZK4PZcxCH0Wwygq1umSZmGAmS7t62S4J6UMaq2JtR9uDUoQq8XgI2ZoLPS8wMyNGUDtT04PQOXI5hmegqqgTKgaTAT6MQ/s220/Photo+on+2011-07-22+at+17.58+%232.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3399985190174266183.post-8848595658283888019</id><published>2010-01-31T21:35:00.001+05:30</published><updated>2010-01-31T21:39:18.051+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="HTML5 Canvas 3D e4"/><title type='text'>A new web of life - HTML 5!</title><content type='html'>&lt;div style=&quot;text-align: center;&quot;&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&quot;HTML5 is not a technical achievement, its a social movement&quot;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;Doug Schepers &lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;What is the significance of this article about HTML5 in eclipse community? Because... Web is getting &#39;richer&#39; clients. HTML5 provides all of the rich client powers to a browser. HTML5 is not just another markup language, its an open &#39;platform&#39; for building rich web applications.&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;Are you a fan of the first person shooter game &#39;&lt;a href=&quot;http://en.wikipedia.org/wiki/Doom_(series)&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #3333ff;&quot;&gt;Doom&lt;/span&gt;&lt;/a&gt;&#39; of 1990s? Then check the game &#39;&lt;a href=&quot;http://htmlfive.appspot.com/static/gifter.html&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #3333ff;&quot;&gt;Gifter&lt;/span&gt;&lt;/a&gt;&#39; in your favourite browser (oops, not IE). Its not coded using C or developed using a gaming engine. Its completely written in HTML 5. &lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;HTML 5 will stretch the browsers to its limits.  To be precise, the war will not be between just browsers, but between the engines that power the rendering of the browers. A rendering engine is a hidden piece of software that takes marked up content (eg. HTML) and formatting information (eg. CSS) and displays the formatted content on the screen. Believe it or not, today I opened an HTML5 powered site in my IE8, and guess what happened. The site killed my internet explorer. &lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;Some of the popular rendering engines are,&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;ul&gt;&lt;li&gt;Gecko - Used in Mozilla Firefox&lt;/li&gt;
&lt;li&gt;Webkit - Used in Chrome &amp;amp; Safari&lt;/li&gt;
&lt;li&gt;KHTML - Used in Konquerer&lt;/li&gt;
&lt;li&gt;Trident - Used in Internet Explorer&lt;/li&gt;
&lt;li&gt;Presto - Used in Opera&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;HTML 4.01 was around for a decade. The new &lt;a href=&quot;http://www.w3.org/TR/html5&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #3333ff;&quot;&gt;HTML 5 working draf&lt;/span&gt;&lt;/a&gt;t was released at the start of 2009.&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;Even though HTML5 gives you a lot of features, I will be discussing only those features the rich client developers are interested in.&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;Some of those exciting features are,&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;ul&gt;&lt;li&gt;Canvas element&lt;/li&gt;
&lt;li&gt;Drag and Drop support&lt;/li&gt;
&lt;li&gt;Interactive Elements&lt;/li&gt;
&lt;li&gt;Offline Web Applications&lt;/li&gt;
&lt;li&gt;Web Database Storage&lt;/li&gt;
&lt;li&gt;Video element&lt;/li&gt;
&lt;li&gt;Audio element&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;But don&#39;t limit your knowledge. You can find the rest of the features at &lt;a href=&quot;http://www.w3.org/TR/html5&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #3333ff;&quot;&gt;HTML 5 Draft&lt;/span&gt;&lt;/a&gt;. Lets find out more information about each of the above features.&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;hr /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;b&gt;Canvas Element&lt;/b&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;HTML 5 gives you a canvas element for drawing purpose. Most of the major browsers like Firefox, Safari, Opera, Chrome etc support the 2D canvas context. &lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;hr /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-weight: normal;&quot;&gt;What about 3D? &lt;/span&gt;An experimental build of &lt;/b&gt;&lt;a href=&quot;http://labs.opera.com/news/2008/11/25/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #3333ff;&quot;&gt;&lt;b&gt;Opera supports 3D canvas&lt;/b&gt;&lt;/span&gt;&lt;/a&gt;&lt;b&gt;.&lt;/b&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;hr /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;Can &lt;a href=&quot;http://eclipse.org/swt&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #3333ff;&quot;&gt;SWT&lt;/span&gt;&lt;/a&gt; be extended to support browser widgets? We have &lt;a href=&quot;http://eclipse.org/rap/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #3333ff;&quot;&gt;&lt;b&gt;RAP&lt;/b&gt;&lt;/span&gt;&lt;/a&gt;!!! GWT is out there within a hands reach.&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;i&gt;You want to try  out a sample code? Copy the below code and save it to a file &#39;canvas.htm&#39; and open it in canvas tag &lt;span class=&quot;Apple-style-span&quot; style=&quot;font-style: normal;&quot;&gt;&lt;i&gt;supported browser (eg: chorme, firefox, ...).&lt;/i&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;&gt;&amp;lt;!DOCTYPE HTML&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;&gt;&amp;lt;html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;&gt;&amp;lt;body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;&gt;&amp;lt;canvas id=&quot;myCanvas&quot;&amp;gt;I do not support canvas tag&amp;lt;/canvas&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;&gt;&amp;lt;script type=&quot;text/javascript&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;&gt;var canvas=document.getElementById(&#39;myCanvas&#39;);&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;&gt;var ctx=canvas.getContext(&#39;2d&#39;);&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;&gt;ctx.fillStyle=&#39;#00AA00&#39;;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;&gt;ctx.fillRect(0,0,100,100);&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;hr /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;b&gt;Drag and Drop&lt;/b&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;Check the &lt;a href=&quot;http://html5demos.com/drag&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #3333ff;&quot;&gt;drag and drop demo application&lt;/span&gt;&lt;/a&gt;. &lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;HTML5 provides an event based drag and drop support. You have events like &#39;dragstart&#39;, &#39;drag&#39;, &#39;dragenter&#39;, &#39;drop&#39;, &#39;dragend&#39; etc. There is a good &lt;a href=&quot;http://html5doctor.com/native-drag-and-drop/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #3333ff;&quot;&gt;tutorial &lt;/span&gt;&lt;/a&gt; which explains more about drag and drop.&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;hr /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;b&gt;Interactive Elements&lt;/b&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;Whats the limit of interactivity on a browser? The answer is that its &#39;limitless&#39;. HTML5 provides the following interactivity elements.&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;ul&gt;&lt;li&gt;datagrid - For grid control. This is similar to the &#39;grid layout&#39; in swt.&lt;/li&gt;
&lt;li&gt;menu - You can create menus.&lt;/li&gt;
&lt;li&gt;command - This is a command the user can invoke. Similar to the &#39;commands&#39; in eclipse.&lt;/li&gt;
&lt;li&gt;details - This is an additional information the user can obtain on demand.&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;There is an &lt;a href=&quot;http://www.ibm.com/developerworks/library/x-html5/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #3333ff;&quot;&gt;interesting article on ibm developerworks&lt;/span&gt;&lt;/a&gt; which explains more about the interactive components of html5.&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;hr /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;b&gt;Offline Web Applications&lt;/b&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;Gmail users might have noticed by now that you can use the inbox even if you are not connected to net. See the &lt;a href=&quot;http://html5demos.com/offlineapp&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #3333ff;&quot;&gt;offline web demo app&lt;/span&gt;&lt;/a&gt; at html5demos. &lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;This is achieved by using a caching mechanism. Using a manifest file, you convey to the browser to cache the required files. The browser will download the files at the client side. A simple, but powerful mechanism, which will change the way web apps are used.&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;hr /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;b&gt;Web Database Storage&lt;/b&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;This allows you to embed an sql based database in your web app. You can find &lt;a href=&quot;http://html5demos.com/database&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #3333ff;&quot;&gt;a demo of web database here&lt;/span&gt;&lt;/a&gt;.&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;Who will gain from the offline apps and web db storage? This will definitely be a boon for the web operating systems. How about rich client apps? What if you need to run rich client features in your browser? Definitely, you need to download all those rich UI code to the client&#39;s machine and web db storage comes handy.&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;hr /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;b&gt;Video and Audio&lt;/b&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;b&gt;&lt;br /&gt;
&lt;/b&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;Like the &amp;lt;image&amp;gt; tag, now you can embed videos with the &amp;lt;video&amp;gt; tag and audio with &amp;lt;audio&amp;gt; tag. &lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;A few interesting apps based on HTML 5 from &lt;a href=&quot;https://mozillalabs.com/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #3333ff;&quot;&gt;Mozilla Labs&lt;/span&gt;&lt;/a&gt; and &lt;a href=&quot;http://www.googlelabs.com/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #3333ff;&quot;&gt;Google Labs&lt;/span&gt;&lt;/a&gt; are listed below.&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;https://bespin.mozilla.com/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #3333ff;&quot;&gt;Mozilla Bespin&lt;/span&gt;&lt;/a&gt; is an extensible web code editor based on HTML 5.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://prism.mozilla.com/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #3333ff;&quot;&gt;Mozilla Prism&lt;/span&gt;&lt;/a&gt; lets users split web applications out of their  browser and run them directly on their desktop.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://wave.google.com/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #3333ff;&quot;&gt;Google Wave&lt;/span&gt;&lt;/a&gt; is an online tool for real time communication and collaboration.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://gears.google.com/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #3333ff;&quot;&gt;Google Gears&lt;/span&gt;&lt;/a&gt; is a plug-in that extends your browser to create a richer platform for web applications. Webmasters can use Gears on their websites to let users access information offline or provide you with content based on your geographical location.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.google.com/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #3333ff;&quot;&gt;Google Docs&lt;/span&gt;&lt;/a&gt; is a free, Web-based word processor, spreadsheet, presentation, and form application offered by Google.&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;The way we interface the world is about to change. Its happening around us. This is the best time to create the next killer app based on new web standards.&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;What is the strategy at Eclipse to compete against the web technologies? We do not compete, we synergize with the web technologies to give the best value to the end user. &lt;a href=&quot;http://eclipse.org/e4&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #3333ff;&quot;&gt;e4&lt;/span&gt;&lt;/a&gt; is the outcome. &lt;a href=&quot;http://eclipse.org/e4&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #3333ff;&quot;&gt;e4 &lt;/span&gt;&lt;/a&gt;is still under development. You can customize the look and feel of an &lt;a href=&quot;http://eclipse.org/e4&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #3333ff;&quot;&gt;e4 &lt;/span&gt;&lt;/a&gt;based app using css. You can modify the user interface using xml. Eclipse is adapting the open standards to create tomorrow&#39;s technologies and next generation rapid application development tools.  &lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;i&gt;madhu&lt;/i&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://eclipse-info.blogspot.com/feeds/8848595658283888019/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://eclipse-info.blogspot.com/2010/01/new-web-of-life-html-5.html#comment-form' title='8 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/8848595658283888019'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/8848595658283888019'/><link rel='alternate' type='text/html' href='http://eclipse-info.blogspot.com/2010/01/new-web-of-life-html-5.html' title='A new web of life - HTML 5!'/><author><name>Madhu</name><uri>http://www.blogger.com/profile/05191409900046165475</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinHjYGa5FscB42dzdcnMkhHexfURSsCqOwLZK4PZcxCH0Wwygq1umSZmGAmS7t62S4J6UMaq2JtR9uDUoQq8XgI2ZoLPS8wMyNGUDtT04PQOXI5hmegqqgTKgaTAT6MQ/s220/Photo+on+2011-07-22+at+17.58+%232.jpg'/></author><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3399985190174266183.post-4806346659223598561</id><published>2010-01-14T13:58:00.006+05:30</published><updated>2010-01-14T14:15:12.010+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Eclipse Consultant Trainer"/><title type='text'>Eclipse Consultant And Trainer</title><content type='html'>&lt;div style=&quot;text-align: center;&quot;&gt;&quot;Be the change that you want to see in the world&quot;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;M. K. Gandhi.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;You find a purpose on what you do when you know that you are serving something larger than yourself for a bigger cause.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I would like to announce my change in avatar from an organization man to a freelance Eclipse Consultant and Trainer.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;img src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZ3jx_mOpCFccjYYQuMXy3MUDLC0WnJCw-LaNDEKcfo0SVhWDZRLni3k092JNyx_1A0Ot67SyUeVADTPHl-lZ_wo9ZVCjeTMO7fV9DVVIjCCjNl5R8UkBOiHz5oR8mEwVig2BOFPJTpZ_2/s320/MyCard.JPG&quot; style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 184px;&quot; border=&quot;0&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5426509858631502258&quot; /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;And okey-dokey... My first client is one of the best I could get!&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;img src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjB84LNHyKhf0Zy6y1sZ4zD8eW9W_t59w4SNqlAUA22Sltky9vOwHcqeIROfWCGCfhurWbHvyQzxpu-XuU7AG7p0mUlCEeQ8jBelxTh2BaEG-kJaBNDgekTTJsq7HvFmwBdGD-6xkCZe3zh/s320/800px-Bosch-brand.svg.png&quot; style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 75px;&quot; border=&quot;0&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5426509718171777714&quot; /&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;This way I can spend more time with Eclipse Community,  learn and evangelise more about Eclipse and the new technologies.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;madhu&lt;/i&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://eclipse-info.blogspot.com/feeds/4806346659223598561/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://eclipse-info.blogspot.com/2010/01/eclipse-consultant-and-trainer.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/4806346659223598561'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/4806346659223598561'/><link rel='alternate' type='text/html' href='http://eclipse-info.blogspot.com/2010/01/eclipse-consultant-and-trainer.html' title='Eclipse Consultant And Trainer'/><author><name>Madhu</name><uri>http://www.blogger.com/profile/05191409900046165475</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinHjYGa5FscB42dzdcnMkhHexfURSsCqOwLZK4PZcxCH0Wwygq1umSZmGAmS7t62S4J6UMaq2JtR9uDUoQq8XgI2ZoLPS8wMyNGUDtT04PQOXI5hmegqqgTKgaTAT6MQ/s220/Photo+on+2011-07-22+at+17.58+%232.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZ3jx_mOpCFccjYYQuMXy3MUDLC0WnJCw-LaNDEKcfo0SVhWDZRLni3k092JNyx_1A0Ot67SyUeVADTPHl-lZ_wo9ZVCjeTMO7fV9DVVIjCCjNl5R8UkBOiHz5oR8mEwVig2BOFPJTpZ_2/s72-c/MyCard.JPG" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3399985190174266183.post-1613890761505095732</id><published>2009-12-31T10:14:00.001+05:30</published><updated>2009-12-31T10:20:26.230+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Eclipse"/><title type='text'>A warm welcome to 2010 with a KISS</title><content type='html'>As the new decade starts and the old decade fades away, I hope eclipse is taking the right turn with e4! &lt;br /&gt;&lt;br /&gt;The quality of software applications depends more on the mindset of the developers, than the technology they adopt. Hence, I hope in the coming decade, the eclipse community can work together to increase the awareness of better coding practises, better UI design, better inter-operating and open systems. &lt;br /&gt;&lt;br /&gt;The adoption of standards is gaining importance more than ever. Html 5 and web 2.0 along with the browser wars is speeding up the changes around us. &lt;br /&gt;&lt;br /&gt;This decade ends with an accelerated change of technologies and events. This is happening faster than anyone can comprehend. Clouds are up, Oracle rescued the Sun, Java and .Net talks, Microsoft supports open source, modelling gains importance, stock markets fluctuate, money and guns flow faster between continents, tsunamis and tornadoes struck the world, speculates water in the moon… hopes and despairs!&lt;br /&gt;&lt;br /&gt;The facts tell that the number one website has the most simple design with a single textbox. &lt;br /&gt;&lt;br /&gt;A warm welcome to 2010 and the new decade with a KISS (Keep It Simple and Stupid).&lt;br /&gt;&lt;br /&gt;madhu</content><link rel='replies' type='application/atom+xml' href='http://eclipse-info.blogspot.com/feeds/1613890761505095732/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://eclipse-info.blogspot.com/2009/12/warm-welcome-to-2010-with-kiss.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/1613890761505095732'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/1613890761505095732'/><link rel='alternate' type='text/html' href='http://eclipse-info.blogspot.com/2009/12/warm-welcome-to-2010-with-kiss.html' title='A warm welcome to 2010 with a KISS'/><author><name>Madhu</name><uri>http://www.blogger.com/profile/05191409900046165475</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinHjYGa5FscB42dzdcnMkhHexfURSsCqOwLZK4PZcxCH0Wwygq1umSZmGAmS7t62S4J6UMaq2JtR9uDUoQq8XgI2ZoLPS8wMyNGUDtT04PQOXI5hmegqqgTKgaTAT6MQ/s220/Photo+on+2011-07-22+at+17.58+%232.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3399985190174266183.post-3764980512639530964</id><published>2009-11-08T22:48:00.005+05:30</published><updated>2009-11-09T11:54:09.920+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Eclipse Demo Camp Bangalore GEF3D"/><title type='text'>Eclipse Demo Camp 2009 @ Bangalore</title><content type='html'>&lt;div&gt;&lt;div style=&quot;text-align: center; &quot;&gt;&lt;i&gt;&quot;We are drawn to a body of knowledge, because it shed light on our identity as well as on the world. We did not merely find a subject; the subject also found us.&quot;&lt;/i&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center; &quot;&gt;&lt;i&gt;by &lt;a href=&quot;http://en.wikipedia.org/wiki/A._P._J._Abdul_Kalam&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;APJ Abdul Kalam&lt;/span&gt;&lt;/a&gt;, former President and Chief Scientist of India!&lt;/i&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center; &quot;&gt;&lt;br /&gt;&lt;/div&gt;Thanks to &lt;a href=&quot;http://blog.eclipse-tips.com/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;Prakash GR&lt;/span&gt;&lt;/a&gt;&lt;a href=&quot;http://blog.eclipse-tips.com/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt; (Eclipse Tips Fame)&lt;/span&gt;&lt;/a&gt; and &lt;a href=&quot;http://blog.ankursharma.org/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;Ankur Sharma&lt;/span&gt;&lt;/a&gt;&#39;s efforts, we had an evening full of eclipse talks from eclipsers across the city on 5th of November, 2009.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The heavy rain that started at 5 in the evening did not stop anyone from attending the &lt;a href=&quot;http://wiki.eclipse.org/Eclipse_DemoCamps_November_2009/Bangalore&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;E&lt;/span&gt;&lt;/a&gt;&lt;a href=&quot;http://wiki.eclipse.org/Eclipse_DemoCamps_November_2009/Bangalore&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;clipse Demo Camp&lt;/span&gt;&lt;/a&gt;. The overwhelming response from the eclipsers from the city resulted in 10 presentations, the organizers even had to cut down a few presentations as the evening could not hold more than 10 presentations. Around 50-60 eclipsers gathered for the event.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Let me start with my presentation - &lt;a href=&quot;http://eclipse.org/gef3d/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;GEF3D&lt;/span&gt;&lt;/a&gt;. A concept to support 3D application development in Eclipse Editors. &lt;a href=&quot;http://jevopisdeveloperblog.blogspot.com/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;Jens Von Pilgrim&lt;/span&gt;&lt;/a&gt;, a research assistant from Fern University in Hagen, Germany conceptualized and implemented GEF3D. This was later supported by Kristian Duske with many more features in GEF3D.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The feature list provided by gef3d includes,&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Creation of 2D, 2.5D and 3D graphical editors.&lt;/li&gt;&lt;li&gt;Connect between multiple graphical editors in 3D space (For example, you can connect a use case diagram and class diagram using connections or traces between them)&lt;/li&gt;&lt;li&gt;Extend your existing GEF based 2D editors to 3D&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;GEF3D Team is planning a few more talks on the topic at various demo camps across Germany. Please visit &lt;a href=&quot;http://eclipse.org/gef3d/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;http://eclipse.org/gef3d/&lt;/span&gt;&lt;/a&gt; for more details.&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href=&quot;http://blog.ankursharma.org/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;Ankur Sharma&lt;/span&gt;&lt;/a&gt; presented Modelled UI in &lt;a href=&quot;http://eclipse.org/e4/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;e&lt;/span&gt;&lt;/a&gt;&lt;a href=&quot;http://eclipse.org/e4/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;4&lt;/span&gt;&lt;/a&gt;. It was amazing to see how you can model your UI with a few mouse clicks and model changes. If you want to try out &lt;a href=&quot;http://eclipse.org/e4/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;e4&lt;/span&gt;&lt;/a&gt;, which is a re-written eclipse from scratch, check the &lt;a href=&quot;http://download.eclipse.org/e4/downloads/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;e4 1.0M1&lt;/span&gt;&lt;/a&gt; release. The first version e4 1.0 is scheduled to release sometime around June, 2010 (I guess).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Shubhvardhan from IBM talked about invoking eclipse controls from Visual Studio Add-ons.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;Now more about, &lt;a href=&quot;http://studios.thoughtworks.com/agile-test-automation&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;Twist&lt;/span&gt;&lt;/a&gt; and &lt;a href=&quot;http://www.eclipse.org/swtbot/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;SWTBot&lt;/span&gt;&lt;/a&gt;. &lt;a href=&quot;http://ketan.padegaonkar.name/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;Ketan Padegaonkar&lt;/span&gt;&lt;/a&gt; presented the testing framework from ThoughtWorks - the &#39;&lt;a href=&quot;http://www.thoughtworks.com/twist&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;Twist&lt;/span&gt;&lt;/a&gt;&#39;. Its a functional testing tool which is a wrapper around SWTBot. Twist enables the tester to transform the indent of the business users (use cases) into automated tests.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;Ms. Rajam from &lt;a href=&quot;http://www.infosys.com/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;Infosys Technologies&lt;/span&gt;&lt;/a&gt; presented the Spring IDE using the MyEclipse Workbench. She travelled all the way from Chennai to present at the Bangalore Demo Camp. The spring IDE showed a perfect example for a language workbench. It reminds me the words from Martin Fowler on &lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;&lt;a href=&quot;http://martinfowler.com/articles/languageWorkbench.html&quot;&gt;Language Workbenches.&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#333333;&quot;&gt;Eclipse JDT Team Member &lt;a href=&quot;http://thecoderlounge.blogspot.com/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;Deepak Azad&lt;/span&gt;&lt;/a&gt; from IBM presented the new &lt;a href=&quot;http://wiki.eclipse.org/index.php/ATF/JSDT&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;Javascript Development Toolkit (JSDT)&lt;/span&gt;&lt;/a&gt;. Its a Javascript IDE based on the JDT framework. It includes most of the features provided by JDT, error markers, detailed flow analysis etc.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#333333;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#333333;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: rgb(51, 51, 51); &quot;&gt;Pradeep Balachandran from IBM presented &lt;a href=&quot;http://jazz.net/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;Jazz&lt;/span&gt;&lt;/a&gt;, the eclipse based new generation collaboration platform from IBM. The indent of Jazz is to make sure you follow the process during software development, and to ensure that you do not need to spend time with un-necessary documentations for the sake of following processes.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#333333;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#333333;&quot;&gt;Ibrahim Quraish from Nokia, explained how to create widgets for S60 devices using the &lt;a href=&quot;http://www.forum.nokia.com/Technology_Topics/Web_Technologies/Web_Runtime/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;Nokia WRT&lt;/span&gt;&lt;/a&gt; Eclipse Plugins. Interestingly, the IDE used to present the topic was &lt;a href=&quot;http://www.aptana.org/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;Aptana&lt;/span&gt;&lt;/a&gt;, not the Carbide IDE from Nokia, which is based on Eclipse. On further googling I could find out the &lt;a href=&quot;http://www.forum.nokia.com/Tools_Docs_and_Code/Tools/IDEs/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;list of IDEs Nokia uses for development&lt;/span&gt;&lt;/a&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#333333;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#333333;&quot;&gt;Anil Gudise from Genuitec briefed about &lt;a href=&quot;http://www.myeclipseide.com/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;MyEclipseTools&lt;/span&gt;&lt;/a&gt; and &lt;a href=&quot;http://www.poweredbypulse.com/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;Pulse&lt;/span&gt;&lt;/a&gt;. Ganeshraj from Hewlett Packard presented the &lt;a href=&quot;http://www.eclipseplugincentral.com/Web_Links-index-req-viewlink-cid-1560.html&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;C/C++ Remote Developer Plugin for Eclipse&lt;/span&gt;&lt;/a&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#333333;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#333333;&quot;&gt;You can check the snaps at, &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;line-height: 16px; font-family:Verdana, sans-serif;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;font-size:small;&quot;&gt;&lt;a href=&quot;http://picasaweb.google.com/grprakash/BangaloreDemoCampNov09&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;http://picasaweb.google.com/grprakash/BangaloreDemoCampNov09&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;font-family:Verdana, sans-serif;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;line-height: 16px; &quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;font-size:small;&quot;&gt;&lt;a href=&quot;http://picasaweb.google.com/madhusamuel/EclipseDemoCampBangalore2009&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;http://picasaweb.google.com/madhusamuel/EclipseDemoCampBangalore2009&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#333333;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: rgb(51, 51, 51); &quot;&gt;A few snaps are given below,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#333333;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiw9pIzx0VytcyDKa7GAt6kKO9YQ5m2tP3XPnLd3LL5V1s1ElTp1kGlziw0z5PbE9PSpRwH4wWNypTSUT_HSKqWjELRsOQlmvV1kL0iXWWP_JSDyCogxWcWiBb9uH50M5tmIzBMtVDsa5vW/s1600-h/Madhu_gef3d.JPG&quot;&gt;&lt;img src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiw9pIzx0VytcyDKa7GAt6kKO9YQ5m2tP3XPnLd3LL5V1s1ElTp1kGlziw0z5PbE9PSpRwH4wWNypTSUT_HSKqWjELRsOQlmvV1kL0iXWWP_JSDyCogxWcWiBb9uH50M5tmIzBMtVDsa5vW/s320/Madhu_gef3d.JPG&quot; border=&quot;0&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5401611163220782434&quot; style=&quot;display: block; margin-top: 0px; margin-right: auto; margin-bottom: 10px; margin-left: auto; text-align: center; cursor: pointer; width: 320px; height: 240px; &quot; /&gt;&lt;/a&gt;&lt;div style=&quot;text-align: center; &quot;&gt;Myself In Action (Gef3D Presentation)&lt;/div&gt;&lt;div style=&quot;text-align: center; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJWERId0gNCFs9Y1PINeuXkqGHOFedeUkdlXSR9FDs6W_tnZiF-_8PBxC3fSzHZgPwarCBROqg0iXewCc9wh-j-X3bRNc5utLrHrg7ZeE9MG58uo8jkYnHuWz4QwijKjOM9wLcQ7lRNCwO/s1600-h/Ankur_e4.JPG&quot;&gt;&lt;img src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJWERId0gNCFs9Y1PINeuXkqGHOFedeUkdlXSR9FDs6W_tnZiF-_8PBxC3fSzHZgPwarCBROqg0iXewCc9wh-j-X3bRNc5utLrHrg7ZeE9MG58uo8jkYnHuWz4QwijKjOM9wLcQ7lRNCwO/s320/Ankur_e4.JPG&quot; border=&quot;0&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5401611049509248658&quot; style=&quot;display: block; margin-top: 0px; margin-right: auto; margin-bottom: 10px; margin-left: auto; text-align: center; cursor: pointer; width: 320px; height: 240px; &quot; /&gt;&lt;/a&gt;&lt;div style=&quot;text-align: center; &quot;&gt;Ankur Sharma with e4&lt;/div&gt;&lt;div style=&quot;text-align: center; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg1X1L-qiSTu8jbnb3uc-D8u3KU4tXI2xSzkdiMdXW7DQ82d-mZ2tfvDJZqXYj9FcOXO__qHIqohSEesrwCfFLrvV1Xmbm0sGv5wEy9SKrfPJPokUvNRe62FUEgR7Vpz3VOsDbFlXs3PGAi/s1600-h/demoCamp2.JPG&quot;&gt;&lt;img src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg1X1L-qiSTu8jbnb3uc-D8u3KU4tXI2xSzkdiMdXW7DQ82d-mZ2tfvDJZqXYj9FcOXO__qHIqohSEesrwCfFLrvV1Xmbm0sGv5wEy9SKrfPJPokUvNRe62FUEgR7Vpz3VOsDbFlXs3PGAi/s320/demoCamp2.JPG&quot; border=&quot;0&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5401610939318090642&quot; style=&quot;display: block; margin-top: 0px; margin-right: auto; margin-bottom: 10px; margin-left: auto; text-align: center; cursor: pointer; width: 320px; height: 240px; &quot; /&gt;&lt;/a&gt;&lt;div style=&quot;text-align: center; &quot;&gt;Room was packed with Eclipsers&lt;/div&gt;&lt;div style=&quot;text-align: center; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh4zxEAVIOVMHSnKYPOTsLAt-62fQvEcsqm9Kyh1ts7e3uNKhErBBtXl9tocz33tT_w0iqtY6Dl2yl1OSQUmd4pTvY6C-d7OondHP20uktTm8IxRr4jEROHNBNBZPNuIjHJl4VoTab4hJLE/s1600-h/Pradeep_Jazz.JPG&quot;&gt;&lt;img src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh4zxEAVIOVMHSnKYPOTsLAt-62fQvEcsqm9Kyh1ts7e3uNKhErBBtXl9tocz33tT_w0iqtY6Dl2yl1OSQUmd4pTvY6C-d7OondHP20uktTm8IxRr4jEROHNBNBZPNuIjHJl4VoTab4hJLE/s320/Pradeep_Jazz.JPG&quot; border=&quot;0&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5401610726907766850&quot; style=&quot;display: block; margin-top: 0px; margin-right: auto; margin-bottom: 10px; margin-left: auto; text-align: center; cursor: pointer; width: 320px; height: 240px; &quot; /&gt;&lt;/a&gt;&lt;div style=&quot;text-align: center; &quot;&gt;Pradeep Balachandran explains Jazz&lt;/div&gt;&lt;div style=&quot;text-align: center; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEibISv4vqvAqTt7udkah11BIWXIRxD0J5nQtEpuhhxKyMtX9sCHb7cfjNCFmNIOJMhwHl9PaWHzpo8QOBZ1LwRdamL-ETmVkDXzTepusVoZ51HTbnKGm_-ZHdPbYsqOXzbwPhg2RqucrDs_/s1600-h/Twist_ketan2.JPG&quot;&gt;&lt;img src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEibISv4vqvAqTt7udkah11BIWXIRxD0J5nQtEpuhhxKyMtX9sCHb7cfjNCFmNIOJMhwHl9PaWHzpo8QOBZ1LwRdamL-ETmVkDXzTepusVoZ51HTbnKGm_-ZHdPbYsqOXzbwPhg2RqucrDs_/s320/Twist_ketan2.JPG&quot; border=&quot;0&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5401610223713834578&quot; style=&quot;display: block; margin-top: 0px; margin-right: auto; margin-bottom: 10px; margin-left: auto; text-align: center; cursor: pointer; width: 320px; height: 240px; &quot; /&gt;&lt;/a&gt;&lt;div style=&quot;text-align: center; &quot;&gt;Ketan Padegaonkar (Twist and SWTBot)&lt;/div&gt;&lt;div style=&quot;text-align: center; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiyN4yRxCNOlcsYWUGCLVxaKAcE87tYD8D2ziH99SbL9h8nR7OFgyDY_-84EqKZDFg8tWvAncZj7aeDSYFeqvYV7Gjibw7ivi-aXRAZ-fgOfDRCKoHk-y0nZmiwObUiPOVuG6hGxZS_fVUr/s1600-h/Rajan_SpringIDE.JPG&quot;&gt;&lt;img src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiyN4yRxCNOlcsYWUGCLVxaKAcE87tYD8D2ziH99SbL9h8nR7OFgyDY_-84EqKZDFg8tWvAncZj7aeDSYFeqvYV7Gjibw7ivi-aXRAZ-fgOfDRCKoHk-y0nZmiwObUiPOVuG6hGxZS_fVUr/s320/Rajan_SpringIDE.JPG&quot; border=&quot;0&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5401609951726030882&quot; style=&quot;display: block; margin-top: 0px; margin-right: auto; margin-bottom: 10px; margin-left: auto; text-align: center; cursor: pointer; width: 320px; height: 240px; &quot; /&gt;&lt;/a&gt;&lt;div style=&quot;text-align: center; &quot;&gt;Ms. Rajam explains Spring IDE&lt;/div&gt;&lt;div style=&quot;text-align: center; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjcEZe_gzGlgXIerxvoLycZtLRwP0r8O0DmiWY-ofFZl7lnrKD73kjvGeP_Cc8LYBwzJtXvwfkwK7epgvZuWQ7Jw5Vb9z2Qr9AqrQztRgyHMHbr8kylywwixWuvTg_eIbJphZv0s-coejvK/s1600-h/Shubhvardhan.JPG&quot;&gt;&lt;img style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 240px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjcEZe_gzGlgXIerxvoLycZtLRwP0r8O0DmiWY-ofFZl7lnrKD73kjvGeP_Cc8LYBwzJtXvwfkwK7epgvZuWQ7Jw5Vb9z2Qr9AqrQztRgyHMHbr8kylywwixWuvTg_eIbJphZv0s-coejvK/s320/Shubhvardhan.JPG&quot; border=&quot;0&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5401980642389492786&quot; /&gt;&lt;/a&gt;&lt;div style=&quot;text-align: center;&quot;&gt;Shubhvardhan (Visual Studio - Eclipse Add-ons)&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;i&gt;madhu&lt;/i&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://eclipse-info.blogspot.com/feeds/3764980512639530964/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://eclipse-info.blogspot.com/2009/11/eclipse-demo-camp-2009-bangalore.html#comment-form' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/3764980512639530964'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/3764980512639530964'/><link rel='alternate' type='text/html' href='http://eclipse-info.blogspot.com/2009/11/eclipse-demo-camp-2009-bangalore.html' title='Eclipse Demo Camp 2009 @ Bangalore'/><author><name>Madhu</name><uri>http://www.blogger.com/profile/05191409900046165475</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinHjYGa5FscB42dzdcnMkhHexfURSsCqOwLZK4PZcxCH0Wwygq1umSZmGAmS7t62S4J6UMaq2JtR9uDUoQq8XgI2ZoLPS8wMyNGUDtT04PQOXI5hmegqqgTKgaTAT6MQ/s220/Photo+on+2011-07-22+at+17.58+%232.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiw9pIzx0VytcyDKa7GAt6kKO9YQ5m2tP3XPnLd3LL5V1s1ElTp1kGlziw0z5PbE9PSpRwH4wWNypTSUT_HSKqWjELRsOQlmvV1kL0iXWWP_JSDyCogxWcWiBb9uH50M5tmIzBMtVDsa5vW/s72-c/Madhu_gef3d.JPG" height="72" width="72"/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3399985190174266183.post-5504295776828312549</id><published>2009-10-27T18:40:00.007+05:30</published><updated>2009-10-27T21:20:01.968+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="3D"/><category scheme="http://www.blogger.com/atom/ns#" term="Eclipse Demo Camp"/><category scheme="http://www.blogger.com/atom/ns#" term="GEF3D"/><category scheme="http://www.blogger.com/atom/ns#" term="Modelling"/><title type='text'>GEF3D in Action</title><content type='html'>Models, models, models... we hear this all the time...&lt;br /&gt;&lt;br /&gt;In computing world, modelling is all about arranging abstract objects (which we do not see) into the computer memory.  We stack objects, we pile objects, we queue objects, we order objects based on business and personal needs.&lt;br /&gt;&lt;br /&gt;The senior software developers who developed the modelling concepts encountered lot of troubles before the time of the modern modelling concepts. Hence, they understand the significance of modelling more than anyone else.&lt;br /&gt;&lt;br /&gt;How do you teach these modelling concepts to the next generation of developers? You need to teach modelling which is a concept of abstract ideas. Ideas which cannot be seen with the naked eyes, but which needs to be visualized in the brain. (Will people with spacial inabilities ever be able to learn modelling?)&lt;br /&gt;&lt;br /&gt;Scientifically, learning is an associative activity. Any new information, unless it is related with something we already know, can never be understood. Thats how brain works! Otherwise, we learn facts and concepts through our senses. We see and learn, we touch and learn, we smell and learn, we hear and learn, we taste and learn. Which senses are triggered when we read most of the articles and tutorials on modelling? To which &#39;data&#39; in the brain tissues should the new and young developers &#39;associate&#39; or &#39;link&#39; the new abstract modelling concepts?&lt;br /&gt;&lt;br /&gt;Forget about learning, how can we comprehend the massive amount of data piling around us. Complexity is the new norm! Impatience is the accepted emotion! We still need to use the five senses to see, touch, smell, hear and taste all the information around us.&lt;br /&gt;&lt;br /&gt;Never get lost in the jungle of information! GEF3D comes to the rescue.&lt;br /&gt;&lt;br /&gt;GEF3D helps you to visualize the models in 3-dimensional space. You will be able to &#39;see&#39; all the abstract data that flows around using proper use of GEF3D. Since we all are 3-d animals, 3D-fied (&lt;a href=&quot;http://jevopisdeveloperblog.blogspot.com/2009/04/you-will-be-3d-fied-resistance-is.html&quot;&gt;&lt;span style=&quot;color:#000099;&quot;&gt;as Jens says&lt;/span&gt;&lt;/a&gt;) models will revolutionize modelling. Any data if properly analysed, designed and implemented; can change or optimize the existing knowledge base.  More than 3-d models, what else do GEF3D provide? Any other features? &lt;br /&gt;&lt;br /&gt;How about 2.5D models! What is it? How about giving more meaning to 2D editors by connecting between multiple 2D editors.&lt;br /&gt;&lt;br /&gt;Want to learn more about tomorrow&#39;s 3-dimensional computing! Attend any of the GEF3D sessions at, &lt;br /&gt;&lt;ul&gt;&lt;li&gt;29-Oct-2009 : Eclipse Summit Europe at Ludwigsburg, Germany&lt;/li&gt;&lt;li&gt;05-Nov-2009 : Eclipse Demo Camp, Bangalore, India&lt;/li&gt;&lt;li&gt;23-Nov-2009 : Eclipse Demo Camp, Berlin, Germany&lt;/li&gt;&lt;li&gt;04-Dec-2009 : Eclipse Demo Camp, Hamburg, Germany&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;For more details see &lt;a href=&quot;http://eclipse.org/gef3d/&quot;&gt;http://eclipse.org/gef3d/&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;madhu&lt;/em&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://eclipse-info.blogspot.com/feeds/5504295776828312549/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://eclipse-info.blogspot.com/2009/10/gef3d-in-action.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/5504295776828312549'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/5504295776828312549'/><link rel='alternate' type='text/html' href='http://eclipse-info.blogspot.com/2009/10/gef3d-in-action.html' title='GEF3D in Action'/><author><name>Madhu</name><uri>http://www.blogger.com/profile/05191409900046165475</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinHjYGa5FscB42dzdcnMkhHexfURSsCqOwLZK4PZcxCH0Wwygq1umSZmGAmS7t62S4J6UMaq2JtR9uDUoQq8XgI2ZoLPS8wMyNGUDtT04PQOXI5hmegqqgTKgaTAT6MQ/s220/Photo+on+2011-07-22+at+17.58+%232.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3399985190174266183.post-6342089001955381195</id><published>2009-09-26T20:00:00.022+05:30</published><updated>2009-09-28T17:49:30.927+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Comments wildcard Imports Constrcutors"/><title type='text'>Comments, Imports and Constructors</title><content type='html'>&lt;div&gt;According to the &lt;a href=&quot;http://en.wikipedia.org/wiki/Butterfly_effect&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;color:#3333FF;&quot;&gt;butterfly effect&lt;/span&gt;&lt;/a&gt;, even the slightest and minutest events can change the course of events in future. Hence, each change is significant for shaping the future.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Progress of a society can be calculated by the amount of change happening in that society. A transforming society appreciates and experiments with new ideas. But, if the new idea is evaluated using the framework of old ideas, then the old ideas become more and more rigid.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I learnt three new things which conflicted with my existing understanding. In the below points I do not want to coin the term old approach and new approach, since they are just two ways of approaching a concept. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The best way to appreciate a new idea is to experiment and see whether it makes sense.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. &lt;span class=&quot;Apple-style-span&quot; style=&quot;text-decoration: underline;&quot;&gt;Writing Comments in Code&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;What I Knew : Write as much comments as possible in your programs. The more the better. It can never be more than needed. I heard about various code-comment ratio - 1:1, 1:5, 5:1.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;What I learnt *: Do not write a comment unless you feel that you failed to express your indent in your code. Means, write comments if your code is not expressive enough. If you have a public method &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&quot;public int findTotal(int amount1, int amount2)&quot;, &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;you can provide a comment &quot;Finds the total of amount1 and amount2&quot;. This comment is redundant. Anything redundant in your code can be avoided. The method and argument names convey the indent of the programmer. Redundant content in your classes will make it difficult and time consuming to understand. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;2. &lt;span class=&quot;Apple-style-span&quot; style=&quot;text-decoration: underline;&quot;&gt;Wildcard imports (import java.io.*)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;What I Knew : Never use wild card imports. Wild cards do not cause performance issues in java. Still the use of wild cards were considered as ineffective coding practise. The specific imports helps to identify the dependencies of your class. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;What I learnt* : Use wild card imports. You just need to know which packages your class depends on. All the specific imports clutter your classes with too much information. Incase you need to know the specific imports at any point of time, you can see those imports quickly using the advanced features of the latest editors. In Eclipse, just go for &#39;Ctrl+Shift+O&#39; to add specific imports. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Another reason is that specific dependencies are hard dependencies. Wild card imports reduces the coupling by avoiding the hard dependencies. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;3. &lt;span class=&quot;Apple-style-span&quot; style=&quot;text-decoration: underline;&quot;&gt;Default Constructors&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;What I knew : Always create default &#39;no-arg&#39; constructors in your class, even if you do not need it at the moment. Tomorrow, if you may need to sub-class your parent class without a default constructor, you may end up in agony. If your sub-class needs a &#39;no-arg&#39; constructor, you may have to write a &#39;no-arg&#39; constructor for the parent class at that time.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;What I learnt : Do not use default &#39;no-arg&#39; constructers unless you require it. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;What if my sub-class needs it tomorrow?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If your parent class doesn&#39;t indent to provide a &#39;no-arg&#39; constructor, then its a design decision. Your sub-class is supposed to use only the constructor which is provided by the parent class.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;madhu&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;font-size:small;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;font-size:x-small;&quot;&gt;* Courtesy - Clean Code by Robert C Martin&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://eclipse-info.blogspot.com/feeds/6342089001955381195/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://eclipse-info.blogspot.com/2009/09/comments-imports-and-constructors.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/6342089001955381195'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/6342089001955381195'/><link rel='alternate' type='text/html' href='http://eclipse-info.blogspot.com/2009/09/comments-imports-and-constructors.html' title='Comments, Imports and Constructors'/><author><name>Madhu</name><uri>http://www.blogger.com/profile/05191409900046165475</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinHjYGa5FscB42dzdcnMkhHexfURSsCqOwLZK4PZcxCH0Wwygq1umSZmGAmS7t62S4J6UMaq2JtR9uDUoQq8XgI2ZoLPS8wMyNGUDtT04PQOXI5hmegqqgTKgaTAT6MQ/s220/Photo+on+2011-07-22+at+17.58+%232.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3399985190174266183.post-1900187720258085771</id><published>2009-08-11T11:01:00.002+05:30</published><updated>2009-08-11T11:56:08.255+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Focus"/><category scheme="http://www.blogger.com/atom/ns#" term="Multitasking"/><category scheme="http://www.blogger.com/atom/ns#" term="Prioritise"/><title type='text'>Multitasking</title><content type='html'>Multitasking - the ability to do multiple tasks at a time. I am lost in the multitask world. &lt;br /&gt;&lt;br /&gt;15 years before, every morning my father used to drink his tea while he browse through the newspaper. This is one of the few multitasks he had done in his entire life (I guess). &lt;br /&gt;&lt;br /&gt;Today as soon as I wake up, I turn on my laptop, drink my tea, check my email, open planeteclipse, browse through multiple blogs, if there is a delay for a blog to open, I will go back to my email, in between I read the heading in the newspaper, I&#39;ll check the twitter account, how about linkedin account, new articles in newscientist.com, then i .... am I nuts? !!! &lt;br /&gt;&lt;br /&gt;Bhoom! Information explosion !!! &lt;br /&gt;&lt;br /&gt;Scientifically speaking, humans are designed to do only one thing at a time (females are an exception ;) ). Either I have to mutate to the new alpha persona with multitasking ability, or time for me to go back to the fundamentals of time management. &lt;br /&gt;&lt;br /&gt;Prioritize, do one thing at a time. &quot;Focus&quot;.&lt;br /&gt;&lt;br /&gt;madhu</content><link rel='replies' type='application/atom+xml' href='http://eclipse-info.blogspot.com/feeds/1900187720258085771/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://eclipse-info.blogspot.com/2009/08/multitasking.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/1900187720258085771'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/1900187720258085771'/><link rel='alternate' type='text/html' href='http://eclipse-info.blogspot.com/2009/08/multitasking.html' title='Multitasking'/><author><name>Madhu</name><uri>http://www.blogger.com/profile/05191409900046165475</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinHjYGa5FscB42dzdcnMkhHexfURSsCqOwLZK4PZcxCH0Wwygq1umSZmGAmS7t62S4J6UMaq2JtR9uDUoQq8XgI2ZoLPS8wMyNGUDtT04PQOXI5hmegqqgTKgaTAT6MQ/s220/Photo+on+2011-07-22+at+17.58+%232.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3399985190174266183.post-5933260459481516444</id><published>2009-07-31T10:45:00.007+05:30</published><updated>2009-07-31T12:03:01.159+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Creativity Education"/><title type='text'>Creativity</title><content type='html'>A few days back I had attended a talk by &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://www.ninedots.in/team.html&quot;&gt;Shankar Subramanian&lt;/a&gt; on the topic &#39;Creativity Unleashed&#39;. It was a very inspiring talk.&lt;br /&gt;&lt;br /&gt;What is creativity?&lt;br /&gt;&lt;br /&gt;According to the dictionary its &quot;the ability to create&quot;. Creativity is nothing but thinking in new ways. The ability to create something new.&lt;br /&gt;&lt;br /&gt;&quot;&lt;span style=&quot;font-style: italic;&quot;&gt;We are the way we are because we think we are the way we are&lt;/span&gt;&quot;, quote by myself till someone else claims the other way.&lt;br /&gt;&lt;br /&gt;From the day we are born to this world, lot of rules are imposed upon us. After long years of exposure to lot of rules, strong patterns of thought are formed in our brains. After a few more years, our entire behaviour follows certian patterns. Our behaviour, becomes more and more predictable. For example, if my wife interrupts me during my work, my behaviour is very predictable. The only emotion that comes to my mind at that time is &#39;anger&#39;. I don&#39;t mind giving part of the credit for my predictability to my education system as well. Some kind of work requries predictability, but definitely, predictability ruins innovation.&lt;br /&gt;&lt;br /&gt;If we take the lives of some of the greatest intellectuals in the last 1000 years, most of them did not have a normal education like the rest of the kids. A few of them had never seen schools, and a few of them were expelled from the schools. &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://en.wikipedia.org/wiki/Leonardo_da_Vinci&quot;&gt;Leonardo da Vinci&lt;/a&gt;, &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://en.wikipedia.org/wiki/Hans_Christian_Anderson&quot;&gt;Hans Anderson&lt;/a&gt; and &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://en.wikipedia.org/wiki/Niels_Bohr&quot;&gt;Niels Bhor&lt;/a&gt; were considered as retarded by their school teachers.  &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://en.wikipedia.org/wiki/Isaac_Newton&quot;&gt;Sir Isaac Newton&lt;/a&gt; was told as dunce, ie, stupid and slow to learn. &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://en.wikipedia.org/wiki/Thomas_Edison&quot;&gt;Thomas Alva Edison&lt;/a&gt;&#39;s teachers were irritated as he asked lot of questions, so they called him &#39;addled&#39;, ie, confused kid. &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://en.wikipedia.org/wiki/Albert_Einstein&quot;&gt;Albert Einstein&lt;/a&gt;&#39;s teacher had told him that he &quot;would never make a success of anything&quot;. These kids were considered as below average students by the teachers, but geniuses to the world.&lt;br /&gt;&lt;br /&gt;Who knows, may be the impression of less intelligence helped these kids. This resulted in less rules. No one imposed the existing ways of conventional thoughts into their brains. This helped them to think in their own creative ways. They never shelled themselves to the captivity of negativity. Instead, they learned things on their own. I heard this quote sometime back &quot;If I teach you, then thats the end&quot;. The quote makes more sense now a days.&lt;br /&gt;&lt;br /&gt;Now, we all are adults. Most of us have predictable thinking patterns formed strongly in our brains and minds. How can we break these patterns of thought? Does these patterns make us handicapped to be creative?&lt;br /&gt;&lt;br /&gt;The answer is &#39;No&#39;. You can be creative. Creativity can be taught.&lt;br /&gt;&lt;br /&gt;There are quite a number of tools which will help to break these patterns  and help you to be creative. &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://www.edwdebono.com/&quot;&gt;Edward De Bono&lt;/a&gt; has contributed lot of tools to these existing arsenal of creativity tools. Some of the tools are &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://en.wikipedia.org/wiki/Lateral_thinking&quot;&gt;Lateral Thinking&lt;/a&gt;, &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://en.wikipedia.org/wiki/Six_Thinking_Hats&quot;&gt;Six thinking hats&lt;/a&gt; etc.&lt;br /&gt;&lt;br /&gt;If you feel that your organization requires a talk on creativity, I recommend Shankar Subramanian. He is the founder and Principal Consultant of &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://www.ninedots.in/index.html&quot;&gt;Ninedots&lt;/a&gt;. Nindots is a consulting firm which helps to improve productivity and efficiency of organizations through personal development of employees.&lt;br /&gt;&lt;br /&gt;Lets talk about the topic which we all are comfortable with - The &lt;leo_highlight style=&quot;border-bottom: 2px solid rgb(255, 255, 150); background: transparent none repeat scroll 0% 0%; cursor: pointer; display: inline; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;&quot; id=&quot;leoHighlights_Underline_0&quot; onclick=&quot;leoHighlightsHandleClick(&#39;leoHighlights_Underline_0&#39;)&quot; onmouseover=&quot;leoHighlightsHandleMouseOver(&#39;leoHighlights_Underline_0&#39;)&quot; onmouseout=&quot;leoHighlightsHandleMouseOut(&#39;leoHighlights_Underline_0&#39;)&quot; leohighlights_keywords=&quot;eclipse&quot; leohighlights_url=&quot;http%3A//thebrowserhighlighter.com/leonardo/highlights/keywords?keywords%3Declipse&quot;&gt;Eclipse&lt;/leo_highlight&gt;. Web 2.0 has unleashed hell lot of possibilities. I hope &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://www.eclipse.org/e4/&quot;&gt;E4&lt;/a&gt; is moving in this direction. There will be a day when the entire world will be wired with high speed internet. On that day, I hope the creativity and capability of our engineers will help to transform &lt;leo_highlight style=&quot;border-bottom: 2px solid rgb(255, 255, 150); background: transparent none repeat scroll 0% 0%; cursor: pointer; display: inline; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;&quot; id=&quot;leoHighlights_Underline_1&quot; onclick=&quot;leoHighlightsHandleClick(&#39;leoHighlights_Underline_1&#39;)&quot; onmouseover=&quot;leoHighlightsHandleMouseOver(&#39;leoHighlights_Underline_1&#39;)&quot; onmouseout=&quot;leoHighlightsHandleMouseOut(&#39;leoHighlights_Underline_1&#39;)&quot; leohighlights_keywords=&quot;eclipse&quot; leohighlights_url=&quot;http%3A//thebrowserhighlighter.com/leonardo/highlights/keywords?keywords%3Declipse&quot;&gt;eclipse&lt;/leo_highlight&gt; into a complete web based platform. In future, we may teach the new engineers, &quot;huh... do you believe that &lt;leo_highlight style=&quot;border-bottom: 2px solid rgb(255, 255, 150); background: transparent none repeat scroll 0% 0%; cursor: pointer; display: inline; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;&quot; id=&quot;leoHighlights_Underline_2&quot; onclick=&quot;leoHighlightsHandleClick(&#39;leoHighlights_Underline_2&#39;)&quot; onmouseover=&quot;leoHighlightsHandleMouseOver(&#39;leoHighlights_Underline_2&#39;)&quot; onmouseout=&quot;leoHighlightsHandleMouseOut(&#39;leoHighlights_Underline_2&#39;)&quot; leohighlights_keywords=&quot;eclipse&quot; leohighlights_url=&quot;http%3A//thebrowserhighlighter.com/leonardo/highlights/keywords?keywords%3Declipse&quot;&gt;eclipse&lt;/leo_highlight&gt; was a desktop application, back then!&quot;.&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-style: italic;&quot;&gt;madhu&lt;/span&gt;&lt;br /&gt;&lt;input id=&quot;gwProxy&quot; type=&quot;hidden&quot;&gt;&lt;!--Session data--&gt;&lt;input onclick=&quot;jsCall();&quot; id=&quot;jsProxy&quot; type=&quot;hidden&quot;&gt;&lt;div id=&quot;refHTML&quot;&gt;&lt;/div&gt;&lt;input id=&quot;gwProxy&quot; type=&quot;hidden&quot;&gt;&lt;!--Session data--&gt;&lt;input onclick=&quot;jsCall();&quot; id=&quot;jsProxy&quot; type=&quot;hidden&quot;&gt;&lt;div id=&quot;refHTML&quot;&gt;&lt;/div&gt;&lt;span id=&quot;leoHighlights_iframe_modal_span_container&quot;&gt;&lt;div id=&quot;leoHighlights_iframe_modal_div_container&quot; style=&quot;border: 1px solid black; position: absolute; visibility: hidden; display: none; width: 394px; height: 40px; z-index: 32768; background-color: white;&quot; onmouseover=&quot;leoHighlightsHandleIFrameMouseOver();&quot; onmouseout=&quot;leoHighlightsHandleIFrameMouseOut();&quot;&gt;                                                     &lt;div id=&quot;leo_iFrame_closebar&quot; style=&quot;position: absolute; top: 0px; left: 0px; width: 394px; height: 40px; z-index: 32768; background-image: url(chrome://shim/content/highlightsFilter-1/header.gif);&quot;&gt;       &lt;a href=&quot;javascript: leoHighlightsIFrameClose();&quot;&gt;          &lt;div id=&quot;leo_iFrame_close&quot; style=&quot;position: absolute; top: 10px; left: 360px; width: 20px; height: 20px;&quot;&gt;          &lt;/div&gt;       &lt;/a&gt;    &lt;/div&gt;        &lt;iframe id=&quot;leoHighlights_iframe&quot; name=&quot;leoHighlights_iframe&quot; title=&quot;leoHighlights_iframe&quot; src=&quot;about:blank&quot; vspace=&quot;0&quot; hspace=&quot;0&quot; marginwidth=&quot;0&quot; marginheight=&quot;0&quot; style=&quot;position: absolute; top: 40px; left: 0px;&quot; width=&quot;250&quot; frameborder=&quot;0&quot; height=&quot;100&quot; scrolling=&quot;no&quot;&gt;    &lt;/iframe&gt;     &lt;/div&gt;  &lt;script defer=&quot;defer&quot; type=&quot;text/javascript&quot;&gt;    createInlineScriptElement(&quot;var%20LEO_HIGHLIGHTS_DEBUG%20%3D%20true%3B%0Avar%20LEO_HIGHLIGHTS_DEBUG_POS%20%3D%20false%3B%0Avar%20LEO_HIGHLIGHTS_INFINITE_LOOP_COUNT%20%3D%20300%3B%0Avar%20LEO_HIGHLIGHTS_MAX_HIGHLIGHTS%20%3D%20200%3B%0Avar%20LEO_HIGHLIGHTS_IFRAME_ID%20%3D%20%22leoHighlights_iframe%22%3B%0Avar%20LEO_HIGHLIGHTS_IFRAME_DIV_ID%20%3D%20%22leoHighlights_iframe_modal_div_container%22%3B%0Avar%20LEO_HIGHLIGHTS_SHOW_DELAY_MS%20%3D%20300%3B%0Avar%20LEO_HIGHLIGHTS_HIDE_DELAY_MS%20%3D%20750%3B%0Avar%20LEO_HIGHLIGHTS_BACKGROUND_STYLE_DEFAULT%20%3D%20%22transparent%20none%20repeat%20scroll%200%25%200%25%22%3B%0Avar%20LEO_HIGHLIGHTS_BACKGROUND_STYLE_HOVER%20%3D%20%20%20%22rgb%28245%2C245%2C0%29%20none%20repeat%20scroll%200%25%200%25%22%3B%0Avar%20_leoHighlightsPrevElem%20%3D%20null%3B%0A%0A/**%0A%20*%20General%20method%20used%20to%20debug%20exceptions%0A%20*%20%0A%20*%20@param%20location%0A%20*%20@param%20e%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsReportExeception%28location%2Ce%29%0A%7B%0A%20%20%20if%28LEO_HIGHLIGHTS_DEBUG%29%0A%20%20%20%7B%0A%20%20%20%20%20%20alert%28%22EXCEPTION%3A%20%22+location+%22%3A%20%22+e+%0A%20%20%20%20%20%20%20%20%20%20%20%20%22%5Cn%5Ct%22+e.name+%22%5Cn%5Ct%22+%28e.number%260xFFFF%29+%22%5Cn%5Ct%22+e.description%29%3B%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20is%20a%20dimensions%20object%0A%20*%20%0A%20*%20@param%20width%0A%20*%20@param%20height%0A%20*%20@return%0A%20*/%0Afunction%20LeoHighlightsDimension%28width%2Cheight%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09this.width%3Dwidth%3B%0A%20%20%20%09this.height%3Dheight%3B%0A%20%20%20%09this.toString%3Dfunction%28%29%20%7B%20return%20%28%22%28%22+this.width+%22%2C%22+this.height+%22%29%22%29%3B%7D%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22new%20LeoHighlightsDimension%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A%20*%20This%20is%20a%20Position%20object%0A%20*%20%0A%20*%20@param%20x%0A%20*%20@param%20y%0A%20*%20@return%0A%20*/%0Afunction%20LeoHighlightsPosition%28x%2Cy%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09this.x%3Dx%3B%0A%20%20%20%09this.y%3Dy%3B%0A%20%20%20%09this.toString%3Dfunction%28%29%20%7B%20return%20%28%22%28%22+this.x+%22%2C%22+this.y+%22%29%22%29%3B%7D%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22new%20LeoHighlightsPosition%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0Avar%20LEO_HIGHLIGHTS_ADJUSTMENT%20%3D%20new%20LeoHighlightsPosition%283%2C3%29%3B%0Avar%20LEO_HIGHLIGHTS_IFRAME_HOVER_SIZE%20%3D%20new%20LeoHighlightsDimension%28394%2C236%29%3B%0Avar%20LEO_HIGHLIGHTS_IFRAME_CLICK_SIZE%20%3D%20new%20LeoHighlightsDimension%28394%2C512%29%3B%0Avar%20LEO_HIGHLIGHTS_CLOSE_BAR_HEIGHT%20%3D%2040%3B%0Avar%20LEO_HIGHLIGHTS_DIV_HOVER_SIZE%20%3D%20new%20LeoHighlightsDimension%28LEO_HIGHLIGHTS_IFRAME_HOVER_SIZE.width%2C%0A%09%09%09LEO_HIGHLIGHTS_IFRAME_HOVER_SIZE.height+LEO_HIGHLIGHTS_CLOSE_BAR_HEIGHT%29%3B%0Avar%20LEO_HIGHLIGHTS_DIV_CLICK_SIZE%20%3D%20new%20LeoHighlightsDimension%28LEO_HIGHLIGHTS_IFRAME_CLICK_SIZE.width%2C%0A%09%09LEO_HIGHLIGHTS_IFRAME_CLICK_SIZE.height+LEO_HIGHLIGHTS_CLOSE_BAR_HEIGHT%29%3B%0A%0A%0A/**%0A%20*%20Sets%20the%20size%20of%20the%20passed%20in%20element%0A%20*%20%0A%20*%20@param%20elem%0A%20*%20@param%20dim%20%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsSetSize%28elem%2Cdim%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09//%20Set%20the%20popup%20location%0A%20%20%20%09elem.style.width%20%3D%20dim.width%20+%20%22px%22%3B%0A%20%20%20%09if%28elem.width%29%0A%20%20%20%09%09elem.width%3Ddim.width%3B%0A%20%20%20%09elem.style.height%20%20%3D%20dim.height%20+%20%22px%22%3B%0A%20%20%20%09if%28elem.height%29%0A%20%20%20%09%09elem.height%3Ddim.height%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsSetSize%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A%20*%20This%20can%20be%20used%20for%20a%20simple%20one%20argument%20callback%0A%20*%0A%20*%20@param%20callName%0A%20*%20@param%20argName%0A%20*%20@param%20argVal%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsSimpleGwCallBack%28callName%2CargName%2C%20argVal%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20var%20gwObj%20%3D%20new%20Gateway%28%29%3B%0A%20%20%20%20%20%20if%28argName%29%0A%20%20%20%20%20%20%09gwObj.addParam%28argName%2CargVal%29%3B%0A%20%20%20%20%20%20gwObj.callName%28callName%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsSimpleGwCallBack%28%29%20%22+callName%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20gets%20a%20url%20argument%20from%20the%20current%20document.%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsGetUrlArg%28url%2C%20name%20%29%0A%7B%0A%09%20%20name%20%3D%20name.replace%28/[%5C[]/%2C%22%5C%5C%5C[%22%29.replace%28/[%5C]]/%2C%22%5C%5C%5C]%22%29%3B%0A%09%20%20var%20regexS%20%3D%20%22[%5C%5C?%26]%22+name+%22%3D%28[^%26%23]*%29%22%3B%0A%09%20%20var%20regex%20%3D%20new%20RegExp%28%20regexS%20%29%3B%0A%09%20%20var%20results%20%3D%20regex.exec%28url%29%3B%0A%09%20%20if%28%20results%20%3D%3D%20null%20%29%0A%09%20%20%20%20return%20%22%22%3B%0A%09%20%20else%0A%09%20%20%20%20return%20results[1]%3B%0A%7D%0A%0A%0A/**%0A%20*%20This%20allows%20to%20redirect%20the%20top%20window%20to%20the%20passed%20in%20url%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsRedirectTop%28url%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%20%20%20%09%0A%20%20%20%09top.location%3Durl%3B%09%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsRedirectTop%28%29%22%2Ce%29%3B%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20is%20used%20to%20report%20events%20to%20the%20plugin%0A%20*%20@param%20key%0A%20*%20@param%20sub%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsEvent%28key%2C%20sub%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20var%20gwObj%20%3D%20new%20Gateway%28%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22key%22%2C%20key%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22sub%22%2C%20sub%29%3B%0A%20%20%20%20%20%20gwObj.callName%28%22leoHighlightsEvent%22%29%3B%09%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsEvent%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20will%20find%20an%20element%20by%20Id%0A%20*%20%0A%20*%20@param%20elemId%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsFindElementById%28elemId%29%0A%7B%0A%09try%0A%09%7B%0A%09%09var%20elem%3Ddocument.getElementById%28elemId%29%3B%0A%09%09if%28elem%29%0A%09%09%09return%20elem%3B%0A%09%09%0A%09%09/*%20This%20is%20the%20handling%20for%20IE%20*/%0A%09%09if%28document.all%29%0A%09%09%7B%0A%09%09%09elem%3Ddocument.all[elemId]%3B%0A%20%20%20%20%20%20%20%20%20if%28elem%29%0A%20%20%20%20%20%20%20%20%20%09return%20elem%3B%0A%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20for%20%28%20var%20i%20%3D%20%28document.all.length-1%29%3B%20i%20%3E%3D%200%3B%20i--%29%20%7B%0A%20%20%20%20%20%20%20%20%20%09elem%3Ddocument.all[i]%3B%0A%20%20%20%20%20%20%20%20%20%09if%28elem.id%3D%3DelemId%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20elem%3B%0A%20%20%20%20%20%20%20%20%20%7D%0A%09%09%7D%0A%09%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsFindElementById%28%29%22%2Ce%29%3B%0A%20%20%20%7D%0A%09return%20null%3B%0A%7D%0A%0A/**%0A%20*%20Get%20the%20location%20of%20one%20element%20relative%20to%20a%20parent%20reference%0A%20*%0A%20*%20@param%20ref%0A%20*%20%20%20%20%20%20%20%20%20%20%20the%20reference%20element%2C%20this%20must%20be%20a%20parent%20of%20the%20passed%20in%0A%20*%20%20%20%20%20%20%20%20%20%20%20element%0A%20*%20@param%20elem%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsGetLocation%28ref%2C%20elem%29%20%7B%0A%20%20%20var%20count%20%3D%200%3B%0A%20%20%20var%20location%20%3D%20new%20LeoHighlightsPosition%280%2C0%29%3B%0A%20%20%20var%20walk%20%3D%20elem%3B%0A%20%20%20while%20%28walk%20%21%3D%20null%20%26%26%20walk%20%21%3D%20ref%20%26%26%20count%20%3C%20LEO_HIGHLIGHTS_INFINITE_LOOP_COUNT%29%20%7B%0A%20%20%20%20%20%20location.x%20+%3D%20walk.offsetLeft%3B%0A%20%20%20%20%20%20location.y%20+%3D%20walk.offsetTop%3B%0A%20%20%20%20%20%20walk%20%3D%20walk.offsetParent%3B%0A%20%20%20%20%20%20count++%3B%0A%20%20%20%7D%0A%0A%20%20%20return%20location%3B%0A%7D%0A%0A/**%0A%20*%20This%20is%20used%20to%20update%20the%20position%20of%20an%20element%20as%20a%20popup%0A%20*%20%0A%20*%20@param%20IFrame%0A%20*%20@param%20anchor%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsUpdatePopupPos%28iFrame%2Canchor%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20//%20Gets%20the%20scrolled%20location%20for%20x%20and%20y%0A%20%20%20%20%20%20var%20scrolledPos%3Dnew%20LeoHighlightsPosition%280%2C0%29%3B%0A%20%20%20%20%20%20if%28%20self.pageYOffset%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20scrolledPos.x%20%3D%20self.pageXOffset%3B%0A%20%20%20%20%20%20%20%20%20scrolledPos.y%20%3D%20self.pageYOffset%3B%0A%20%20%20%20%20%20%7D%20else%20if%28%20document.documentElement%20%26%26%20document.documentElement.scrollTop%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20scrolledPos.x%20%3D%20document.documentElement.scrollLeft%3B%0A%20%20%20%20%20%20%20%20%20scrolledPos.y%20%3D%20document.documentElement.scrollTop%3B%0A%20%20%20%20%20%20%7D%20else%20if%28%20document.body%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20scrolledPos.x%20%3D%20document.body.scrollLeft%3B%0A%20%20%20%20%20%20%20%20%20scrolledPos.y%20%3D%20document.body.scrollTop%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20/*%20Get%20the%20total%20dimensions%20to%20see%20what%20scroll%20bars%20might%20be%20active%20*/%0A%20%20%20%20%20%20var%20totalDim%3Dnew%20LeoHighlightsDimension%280%2C0%29%0A%20%20%20%20%20%20if%20%28document.all%20%26%26%20document.documentElement%20%26%26%20%0A%20%20%20%20%20%20%09document.documentElement.clientHeight%26%26document.documentElement.clientWidth%29%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%09totalDim.width%20%3D%20document.documentElement.scrollWidth%3B%0A%20%20%20%20%20%20%09totalDim.height%20%3D%20document.documentElement.scrollHeight%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20else%20if%20%28document.all%29%0A%20%20%20%20%20%20%7B%20/*%20This%20is%20in%20IE%20*/%0A%20%20%20%20%20%09%20%09totalDim.width%20%3D%20document.body.scrollWidth%3B%0A%20%20%20%20%20%20%09totalDim.height%20%3D%20document.body.scrollHeight%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20else%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%09%20totalDim.width%20%3D%20document.width%3B%0A%20%20%20%20%20%20%09%20totalDim.height%20%3D%20document.height%3B%0A%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20//%20Gets%20the%20location%20of%20the%20available%20screen%20space%0A%20%20%20%20%20%20var%20centerDim%3Dnew%20LeoHighlightsDimension%280%2C0%29%3B%0A%20%20%20%20%20%20if%28self.innerWidth%20%26%26%20self.innerHeight%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20centerDim.width%20%3D%20self.innerWidth-%28totalDim.height%3Eself.innerHeight?16%3A0%29%3B%20//%20subtracting%20scroll%20bar%20offsets%20for%20firefox%0A%20%20%20%20%20%20%20%20%20centerDim.height%20%3D%20self.innerHeight-%28totalDim.width%3Eself.innerWidth?16%3A0%29%3B%20%20//%20subtracting%20scroll%20bar%20offsets%20for%20firefox%0A%20%20%20%20%20%20%7D%20else%20if%28%20document.documentElement%20%26%26%20document.documentElement.clientHeight%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20centerDim.width%20%3D%20document.documentElement.clientWidth%3B%0A%20%20%20%20%20%20%20%20%20centerDim.height%20%3D%20document.documentElement.clientHeight%3B%0A%20%20%20%20%20%20%7D%20else%20if%28%20document.body%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20centerDim.width%20%3D%20document.body.clientWidth%3B%0A%20%20%20%20%20%20%20%20%20centerDim.height%20%3D%20document.body.clientHeight%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20//%20Get%20the%20current%20dimension%20of%20the%20popup%20element%0A%20%20%20%20%20%20var%20iFrameDim%3Dnew%20LeoHighlightsDimension%28iFrame.offsetWidth%2CiFrame.offsetHeight%29%0A%20%20%20%20%20%20if%20%28iFrameDim.width%20%3C%3D%200%29%0A%20%20%20%20%20%20%09iFrameDim.width%20%3D%20iFrame.style.width.substring%280%2C%20iFrame.style.width.indexOf%28%27px%27%29%29%3B%0A%20%20%20%20%20%20if%20%28iFrameDim.height%20%3C%3D%200%29%0A%20%20%20%20%20%20%09iFrameDim.height%20%3D%20iFrame.style.height.substring%280%2C%20iFrame.style.height.indexOf%28%27px%27%29%29%3B%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20/*%20Calculate%20the%20position%2C%20lower%20right%20hand%20corner%20by%20default%20*/%0A%20%20%20%20%20%20var%20position%3Dnew%20LeoHighlightsPosition%280%2C0%29%3B%0A%20%20%20%20%20%20position.x%3DscrolledPos.x+centerDim.width-iFrameDim.width-LEO_HIGHLIGHTS_ADJUSTMENT.x%3B%0A%20%20%20%20%20%20position.y%3DscrolledPos.y+centerDim.height-iFrameDim.height-LEO_HIGHLIGHTS_ADJUSTMENT.y%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20if%28anchor%21%3Dnull%29%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20//centerDim%20in%20relation%20to%20the%20anchor%20element%20if%20available%0A%20%20%20%20%20%20%20%20%20var%20topOrBottom%20%3D%20false%3B%0A%20%20%20%20%20%20%20%20%20var%20anchorPos%3D_leoHighlightsGetLocation%28document.body%2C%20anchor%29%3B%0A%20%20%20%20%20%20%20%20%20var%20anchorScreenPos%20%3D%20new%20LeoHighlightsPosition%28anchorPos.x-scrolledPos.x%2CanchorPos.y-scrolledPos.y%29%3B%0A%20%20%20%20%20%20%20%20%20var%20anchorDim%3Dnew%20LeoHighlightsDimension%28anchor.offsetWidth%2Canchor.offsetHeight%29%0A%20%20%20%20%20%20%20%20%20if%20%28anchorDim.width%20%3C%3D%200%29%0A%20%20%20%20%20%20%20%20%20%09anchorDim.width%20%3D%20anchor.style.width.substring%280%2C%20anchor.style.width.indexOf%28%27px%27%29%29%3B%0A%20%20%20%20%20%20%20%20%20if%20%28anchorDim.height%20%3C%3D%200%29%0A%20%20%20%20%20%20%20%20%20%09anchorDim.height%20%3D%20anchor.style.height.substring%280%2C%20anchor.style.height.indexOf%28%27px%27%29%29%3B%0A%0A%20%20%20%20%20%20%20%20%20//%20Check%20if%20the%20popup%20can%20be%20shown%20above%20or%20below%20the%20element%0A%20%20%20%20%20%20%20%20%20if%20%28centerDim.height%20-%20anchorDim.height%20-%20iFrameDim.height%20-%20anchorScreenPos.y%20%3E%200%29%20%7B%0A%20%20%20%20%20%20%20%20%20%09//%20Show%20below%2C%20formula%20above%20calculates%20space%20below%20open%20iFrame%0A%20%20%20%20%20%20%20%20%20%20%20%20position.y%20%3D%20anchorPos.y%20+%20anchorDim.height%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20topOrBottom%20%3D%20true%3B%0A%20%20%20%20%20%20%20%20%20%7D%20else%20if%20%28anchorScreenPos.y%20-%20anchorDim.height%20-%20iFrameDim.height%20%3E%200%29%20%7B%0A%20%20%20%20%20%20%20%20%20%09//%20Show%20above%2C%20formula%20above%20calculates%20space%20above%20open%20iFrame%0A%20%20%20%20%20%20%20%20%20%09position.y%20%3D%20anchorPos.y%20-%20iFrameDim.height%20-%20anchorDim.height%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20topOrBottom%20%3D%20true%3B%0A%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20if%20%28topOrBottom%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20//%20We%20attempt%20top%20attach%20the%20window%20to%20the%20element%0A%20%20%20%20%20%20%20%20%20%09position.x%20%3D%20anchorPos.x%20-%20iFrameDim.width%20/%202%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20%28position.x%20%3C%200%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%09position.x%20%3D%200%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20else%20if%20%28position.x%20+%20iFrameDim.width%20%3E%20scrolledPos.x%20+%20centerDim.width%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%09position.x%20%3D%20scrolledPos.x%20+%20centerDim.width%20-%20iFrameDim.width%3B%0A%20%20%20%20%20%20%20%20%20%7D%20else%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20//%20Attempt%20to%20align%20on%20the%20right%20or%20left%20hand%20side%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20%28centerDim.width%20-%20anchorDim.Width%20-%20iFrameDim.width%20-%20anchorScreenPos.x%20%3E%200%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20position.x%20%3D%20anchorPos.x%20+%20anchorDim.width%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20else%20if%20%28anchorScreenPos.x%20-%20anchorDim.width%20-%20iFrameDim.width%20%3E%200%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%09position.x%20%3D%20anchorPos.x%20-%20anchorDim.width%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20else%20%20//%20default%20to%20below%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20position.y%20%3D%20anchorPos.y%20+%20anchorDim.height%3B%0A%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20/*%20Make%20sure%20that%20we%20don%27t%20go%20passed%20the%20right%20hand%20border%20*/%0A%20%20%20%20%20%20if%28position.x+iFrameDim.width%3EcenterDim.width-20%29%0A%20%20%20%20%20%20%09position.x%3DcenterDim.width-%28iFrameDim.width+20%29%3B%0A%20%20%20%20%20%20%09%09%0A%20%20%20%20%20%20//%20Make%20sure%20that%20we%20didn%27t%20go%20passed%20the%20start%0A%20%20%20%20%20%20if%28position.x%3C0%29%0A%20%20%20%20%20%20%20%20%20position.x%3D0%3B%0A%20%20%20%20%20%20if%28position.y%3C0%29%0A%20%20%20%20%20%20%09position.y%3D0%3B%0A%0A%20%20%20%20%20%20if%20%28LEO_HIGHLIGHTS_DEBUG_POS%26%26LEO_HIGHLIGHTS_DEBUG%29%20%7B%0A%20%20%20%20%20%20%20%20%20alert%28%22%20Popup%20info%20id%3A%20%20%20%20%20%20%20%22%20+iFrame.id+%22%20-%20%22+anchor.id%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5Cnscrolled%20%20%20%20%20%20%20%20%20%20%22%20+%20scrolledPos%20%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5Cncenter/visible%20%20%20%20%22%20+%20centerDim%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5Cnanchor%20%28absolute%29%20%22%20+%20anchorPos%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5Cnanchor%20%28screen%29%20%20%20%22%20+%20anchorScreenPos%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5CnSize%20%28anchor%29%20%20%20%20%20%22%20+%20anchorDim%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5CnSize%20%28popup%29%20%20%20%20%20%20%22%20+%20iFrameDim%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5CnResult%20pos%20%20%20%20%20%20%20%20%22%20+%20position%29%3B%0A%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20//%20Set%20the%20popup%20location%0A%20%20%20%20%20%20iFrame.style.left%20%3D%20position.x%20+%20%22px%22%3B%0A%20%20%20%20%20%20iFrame.style.top%20%20%3D%20position.y%20+%20%22px%22%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsUpdatePopupPos%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A%0A/**%0A%20*%20This%20will%20show%20the%20passed%20in%20element%20as%20a%20popup%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@param%20size%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsShowPopup%28anchorId%2Csize%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09var%20popup%3Dnew%20LeoHighlightsPopup%28anchorId%2Csize%29%3B%0A%20%20%20%09popup.show%28%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsShowPopup%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A%0A/**%0A%20*%20This%20will%20transform%20the%20passed%20in%20url%20to%20a%20rover%20url%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsGetRoverUrl%28url%29%0A%7B%0A%09var%20rover%3D%22711-36858-13496-14%22%3B%0A%09var%20roverUrl%3D%22http%3A//rover.ebay.com/rover/1/%22+rover+%22/4?%26mpre%3D%22+encodeURI%28url%29%3B%0A%09%0A%09return%20roverUrl%3B%0A%7D%0A%0A/**%0A%20*%20Class%20for%20a%20Popup%20%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@param%20size%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20LeoHighlightsPopup%28anchorId%2Csize%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09this.anchorId%3DanchorId%3B%0A%20%20%20%09this.anchor%3D_leoHighlightsFindElementById%28this.anchorId%29%3B%0A%20%20%20%09this.iFrame%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_ID%29%3B%0A%20%20%20%09this.iFrameDiv%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_DIV_ID%29%3B%0A%20%20%20%09%0A%20%20%20%09var%20url%3Dunescape%28this.anchor.getAttribute%28%27leoHighlights_url%27%29%29%3B%0A%0A%20%20%20%09this.iFrame.src%3Durl%3B%0A%0A%20%20%20%09leoHighlightsSetSize%28size%29%3B%0A%20%20%20%09%0A%20%20%20%09this.updatePos%3Dfunction%28%29%20%7B%20_leoHighlightsUpdatePopupPos%28this.iFrameDiv%2Cthis.anchor%29%7D%3B%0A%20%20%20%09this.show%3Dfunction%28%29%20%7Bthis.updatePos%28%29%3B%20this.iFrameDiv.style.visibility%20%3D%20%22visible%22%3B%20this.iFrameDiv.style.display%20%3D%20%22block%22%3B%20this.updatePos%28%29%3B%7D%20%20%20%09%09%0A%20%20%20%09this.scroll%3Dfunction%28%29%20%7B%20this.updatePos%28%29%3B%7D%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22new%20LeoHighlightsPopup%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/**%0A*%0A*%20This%20can%20be%20used%20to%20close%20an%20iframe%0A*%0A*%20@param%20id%0A*%20@return%0A*/%0Afunction%20leoHighlightsSetSize%28size%2CclickId%29%0A%7B%0A%09try%0A%09%7B%0A%09%09/*%20Get%20the%20appropriate%20sizes%20*/%0A%20%20%09%09var%20iFrame%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_ID%29%3B%0A%20%20%09%09var%20iFrameDiv%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_DIV_ID%29%3B%0A%20%20%09%09%0A%20%20%09%09/*%20Figure%20out%20the%20correct%20sizes%20*/%0A%20%20%09%09var%20iFrameSize%3D%28size%3D%3D1%29?LEO_HIGHLIGHTS_IFRAME_CLICK_SIZE%3ALEO_HIGHLIGHTS_IFRAME_HOVER_SIZE%3B%0A%20%20%09%09var%20divSize%3D%28size%3D%3D1%29?LEO_HIGHLIGHTS_DIV_CLICK_SIZE%3ALEO_HIGHLIGHTS_DIV_HOVER_SIZE%3B%0A%0A%20%20%09%09/*%20Refresh%20the%20iFrame%27s%20url%2C%20by%20removing%20the%20size%20arg%20and%20adding%20it%20again%20*/%0A%20%20%09%09var%20url%3DiFrame.src%3B%0A%20%20%09%09var%20idx%3Durl.indexOf%28%22%26size%3D%22%29%3B%0A%20%20%09%09if%28idx%3E%3D0%29%0A%20%20%09%09%09url%3Durl.substring%280%2Cidx%29%3B%0A%09%09url+%3D%28%22%26size%3D%22+size%29%3B%0A%09%09if%28clickId%29%0A%09%09%09url+%3D%28%22%26clickId%3D%22+clickId%29%3B%0A%09%09%0A%20%20%09%09iFrame.src%3Durl%3B%0A%20%20%09%09%0A%20%20%09%09/*%20Clear%20the%20hover%20flag%2C%20if%20the%20user%20shows%20this%20at%20full%20size%20*/%0A%20%20%09%09if%28size%3D%3D1%26%26_leoHighlightsPrevElem%29%0A%20%20%09%09%09_leoHighlightsPrevElem.hover%3Dfalse%3B%0A%20%20%09%09%0A%20%20%09%09_leoHighlightsSetSize%28iFrame%2CiFrameSize%29%3B%0A%20%20%09%09_leoHighlightsSetSize%28iFrameDiv%2CdivSize%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsSetSize%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A%20*%20Start%20the%20popup%20a%20little%20bit%20delayed.%0A%20*%20Somehow%20IE%20needs%20some%20time%20to%20find%20the%20element%20by%20id.%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@param%20size%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsShowPopup%28anchorId%2Csize%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%09%09var%20elem%3D_leoHighlightsFindElementById%28anchorId%29%3B%0A%20%20%09%09if%28_leoHighlightsPrevElem%26%26%28_leoHighlightsPrevElem%21%3Delem%29%29%0A%20%20%09%09%09_leoHighlightsPrevElem.shown%3Dfalse%3B%0A%20%20%09%09elem.shown%3Dtrue%3B%0A%09%09_leoHighlightsPrevElem%3Delem%3B%0A%20%20%20%09%0A%20%20%20%09/*%20FF%20needs%20to%20find%20the%20element%20first%20*/%0A%20%20%20%09_leoHighlightsFindElementById%28anchorId%29%3B%0A%20%20%20%09%0A%20%20%20%09setTimeout%28%22_leoHighlightsShowPopup%28%5C%27%22+anchorId+%22%5C%27%2C%5C%27%22+size+%22%5C%27%29%3B%22%2C10%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHighlightsShowPopup%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A*%0A*%20This%20can%20be%20used%20to%20close%20an%20iframe%0A*%0A*%20@param%20id%0A*%20@return%0A*/%0Afunction%20leoHighlightsHideElem%28id%29%0A%7B%0A%09try%0A%09%7B%0A%09%09/*%20Get%20the%20appropriate%20sizes%20*/%0A%20%20%09%09var%20elem%3D_leoHighlightsFindElementById%28id%29%3B%0A%20%20%09%09if%28elem%29%0A%20%20%09%09%09elem.style.visibility%3D%22hidden%22%3B%0A%20%20%09%09%0A%20%20%09%09/*%20Clear%20the%20page%20for%20the%20next%20run%20through%20*/%0A%20%20%09%09var%20iFrame%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_ID%29%3B%0A%20%20%09%09if%28iFrame%29%0A%20%20%09%09%09iFrame.src%3D%22about%3Ablank%22%3B%0A%20%20%09%09%0A%20%20%09%09%0A%20%20%09%09if%28_leoHighlightsPrevElem%29%0A%20%20%09%09%7B%0A%20%20%09%09%09_leoHighlightsPrevElem.shown%3Dfalse%3B%0A%20%20%09%09%09_leoHighlightsPrevElem%3Dnull%3B%0A%20%20%09%09%7D%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHideElem%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A*%0A*%20This%20can%20be%20used%20to%20close%20an%20iframe.%0A*%20Since%20the%20iFrame%20is%20reused%20the%20frame%20only%20gets%20hidden%0A*%0A*%20@return%0A*/%0Afunction%20leoHighlightsIFrameClose%28%29%0A%7B%0A%20%20try%0A%20%20%7B%0A%09%20%20_leoHighlightsSimpleGwCallBack%28%22LeoHighlightsHideIFrame%22%29%3B%0A%20%20%7D%0A%20%20catch%28e%29%0A%20%20%7B%0A%09%20%20_leoHighlightsReportExeception%28%22leoHighlightsIFrameClose%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20should%20handle%20the%20click%20events%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleClick%28anchorId%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%09%09var%20anchor%3D_leoHighlightsFindElementById%28anchorId%29%3B%0A%20%20%09%09anchor.hover%3Dfalse%3B%0A%20%20%09%09if%28anchor.startTimer%29%0A%20%20%09%09%09clearTimeout%28anchor.startTimer%29%3B%0A%20%20%20%09%0A%20%20%09%09leoHighlightsEvent%28%22clicked%22%29%3B%0A%20%20%20%09leoHighlightsShowPopup%28anchorId%2C1%29%3B%0A%20%20%20%09return%20false%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHighlightsHandleClick%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A%20*%20This%20should%20handle%20the%20hover%20events%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleHover%28anchorId%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%09%09var%20anchor%3D_leoHighlightsFindElementById%28anchorId%29%3B%0A%20%20%09%09anchor.hover%3Dtrue%3B%0A%20%20%09%09%0A%20%20%09%09leoHighlightsEvent%28%22hovered%22%29%3B%0A%20%20%20%09leoHighlightsShowPopup%28anchorId%2C0%29%3B%0A%20%20%20%09return%20false%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHighlightsHandleHover%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A%20*%20This%20will%20handle%20the%20mouse%20over%20setup%20timers%20for%20the%20appropriate%20timers%0A%20*%20%0A%20*%20@param%20id%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleMouseOver%28id%29%0A%7B%0A%09try%0A%09%7B%0A%09%09var%20anchor%3D_leoHighlightsFindElementById%28id%29%3B%09%09%0A%0A%09%09/*%20Clear%20the%20end%20timer%20if%20required%20*/%0A%09%09if%28anchor.endTimer%29%0A%09%09%09clearTimeout%28anchor.endTimer%29%3B%0A%09%09anchor.endTimer%3Dnull%3B%0A%09%09%0A%09%09anchor.style.background%3DLEO_HIGHLIGHTS_BACKGROUND_STYLE_HOVER%3B%0A%09%09%0A%09%09/*%20The%20element%20is%20already%20showing%20we%20are%20done%20*/%0A%09%09if%28anchor.shown%29%0A%09%09%09return%3B%0A%09%09%0A%09%09/*%20Setup%20the%20start%20timer%20if%20required%20*/%0A%09%09anchor.startTimer%3DsetTimeout%28function%28%29%7B%0A%09%09%09leoHighlightsHandleHover%28anchor.id%29%3B%0A%09%09%09anchor.hover%3Dtrue%3B%0A%09%09%09%7D%2C%0A%09%09%09LEO_HIGHLIGHTS_SHOW_DELAY_MS%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHandleMouseOver%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A%20*%20This%20will%20handle%20the%20mouse%20over%20setup%20timers%20for%20the%20appropriate%20timers%0A%20*%20%0A%20*%20@param%20id%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleMouseOut%28id%29%0A%7B%0A%09try%0A%09%7B%09%0A%09%09var%20anchor%3D_leoHighlightsFindElementById%28id%29%3B%0A%09%09%0A%09%09/*%20Clear%20the%20start%20timer%20if%20required%20*/%0A%09%09if%28anchor.startTimer%29%0A%09%09%09clearTimeout%28anchor.startTimer%29%3B%0A%09%09anchor.startTimer%3Dnull%3B%0A%09%09%0A%09%09anchor.style.background%3DLEO_HIGHLIGHTS_BACKGROUND_STYLE_DEFAULT%3B%0A%09%09if%28%21anchor.shown||%21anchor.hover%29%0A%09%09%09return%3B%0A%09%09%0A%09%09/*%20Setup%20the%20start%20timer%20if%20required%20*/%0A%09%09anchor.endTimer%3DsetTimeout%28function%28%29%7B%0A%09%09%09leoHighlightsHideElem%28LEO_HIGHLIGHTS_IFRAME_DIV_ID%29%3B%0A%09%09%09anchor.shown%3Dfalse%3B%0A%09%09%09_leoHighlightsPrevElem%3Dnull%3B%0A%09%09%09%7D%2CLEO_HIGHLIGHTS_HIDE_DELAY_MS%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHandleMouseOut%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A%20*%20This%20handles%20the%20mouse%20movement%20into%20the%20currently%20opened%20window.%0A%20*%20Just%20clear%20the%20close%20timer%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleIFrameMouseOver%28%29%0A%7B%0A%09try%0A%09%7B%0A%09%09if%28_leoHighlightsPrevElem%26%26_leoHighlightsPrevElem.endTimer%29%0A%09%09%09clearTimeout%28_leoHighlightsPrevElem.endTimer%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHandleIFrameMouseOver%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A%20*%20This%20handles%20the%20mouse%20movement%20into%20the%20currently%20opened%20window.%0A%20*%20Just%20clear%20the%20close%20timer%0A%20*%20%0A%20*%20@param%20id%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleIFrameMouseOut%28%29%0A%7B%0A%09try%0A%09%7B%0A%09%09if%28_leoHighlightsPrevElem%29%0A%09%09%09leoHighlightsHandleMouseOut%28_leoHighlightsPrevElem.id%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHandleIFrameMouseOut%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A/**%0A%20*%20This%20is%20a%20method%20is%20used%20to%20make%20the%20javascript%20within%20IE%20runnable%0A%20*/%0Avar%20leoHighlightsRanUpdateDivs%3Dfalse%3B%0Afunction%20leoHighlightsUpdateDivs%28%29%0A%7B%0A%09try%0A%09%7B%0A%09%09/*%20Check%20if%20this%20is%20an%20IE%20browser%20and%20if%20divs%20have%20been%20updated%20already%20*/%0A%09%09if%28document.all%26%26%21leoHighlightsRanUpdateDivs%29%0A%09%09%7B%0A%09%09%09leoHighlightsRanUpdateDivs%3Dtrue%3B%20//%20Set%20early%20to%20prevent%20running%20twice%0A%09%09%09for%28var%20i%3D0%3Bi%3CLEO_HIGHLIGHTS_MAX_HIGHLIGHTS%3Bi++%29%0A%09%09%09%7B%0A%09%09%09%09var%20id%3D%22leoHighlights_Underline_%22+i%3B%0A%09%09%09%09var%20elem%3D_leoHighlightsFindElementById%28id%29%3B%0A%09%09%09%09if%28elem%3D%3Dnull%29%0A%09%09%09%09%09break%3B%0A%09%09%09%09%0A%09%09%09%09if%28%21elem.leoChanged%29%0A%09%09%09%09%7B%0A%09%09%09%09%09elem.leoChanged%3Dtrue%3B%0A%09%09%09%09%0A%09%09%09%09%09/*%20This%20will%20make%20javaScript%20runnable%20*/%09%09%09%09%0A%09%09%09%09%09elem.outerHTML%3Delem.outerHTML%3B%0A%09%09%09%09%7D%0A%09%09%09%7D%0A%09%09%7D%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsUpdateDivs%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0Aif%28document.all%29%0A%09setTimeout%28leoHighlightsUpdateDivs%2C200%29%3B%0A%0A/**%0A%20*%20This%20is%20used%20to%20report%20events%20to%20the%20plugin%0A%20*%20@param%20key%0A%20*%20@param%20sub%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsEvent%28key%2C%20sub%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20var%20gwObj%20%3D%20new%20Gateway%28%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22key%22%2C%20key%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22sub%22%2C%20sub%29%3B%0A%20%20%20%20%20%20gwObj.callName%28%22LeoHighlightsEvent%22%29%3B%09%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHighlights%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/*----------------------------------------------------------------------*/%0A/*%20Methods%20provided%20to%20the%20highlight%20providers...%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20*/%0A/*----------------------------------------------------------------------*/%0A%0A/**%0A%20*%20This%20will%20redirect%20the%20top%20window%20to%20the%20passed%20in%20url%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@param%20parentId%0A%20*%20@return%0A%20*/%0Afunction%20leoHL_RedirectTop%28url%2CparentId%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%09%09leoHighlightsEvent%28%22clicked.2eBay%22%29%3B%0A%20%20%20%09_leoHighlightsRedirectTop%28url%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHL_RedirectTop%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20will%20set%20the%20size%20of%20the%20iframe%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@param%20parentId%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20leoHl_setSize%28size%2Curl%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09/*%20Get%20the%20clickId%20*/%0A%20%20%20%09var%20clickId%3D_leoHighlightsGetUrlArg%28%20url%2C%22clickId%22%29%0A%20%20%20%09%0A%20%20%20%20%20%20var%20gwObj%20%3D%20new%20Gateway%28%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22size%22%2Csize%29%3B%0A%20%20%20%20%20%20if%28clickId%29%0A%20%20%20%20%20%20%20%20%20gwObj.addParam%28%22clickId%22%2CclickId+%22_blah%22%29%3B%0A%20%20%20%20%20%20gwObj.callName%28%22LeoHighlightsSetSize%22%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHl_setSize%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A&quot;); &lt;/script&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://eclipse-info.blogspot.com/feeds/5933260459481516444/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://eclipse-info.blogspot.com/2009/07/creativity.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/5933260459481516444'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/5933260459481516444'/><link rel='alternate' type='text/html' href='http://eclipse-info.blogspot.com/2009/07/creativity.html' title='Creativity'/><author><name>Madhu</name><uri>http://www.blogger.com/profile/05191409900046165475</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinHjYGa5FscB42dzdcnMkhHexfURSsCqOwLZK4PZcxCH0Wwygq1umSZmGAmS7t62S4J6UMaq2JtR9uDUoQq8XgI2ZoLPS8wMyNGUDtT04PQOXI5hmegqqgTKgaTAT6MQ/s220/Photo+on+2011-07-22+at+17.58+%232.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3399985190174266183.post-4367420596319152605</id><published>2009-07-19T06:42:00.027+05:30</published><updated>2009-07-19T21:17:55.881+05:30</updated><title type='text'>Eclipse India Summit &#39;09 : Happenings from Day 2</title><content type='html'>The vision of Eclipse Summit India &#39;09 is to nurture new contributors and to create new proactive committers to the Eclipse community.  If Eclipse Community is getting diversified with lots of new projects, Indian Software Community is already diversified into lot of areas; its just a matter of time to organize and channelize the motivated young developers to the eclipse community.&lt;br /&gt;&lt;br /&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjrdkkjsywLCfG6hAS3eJdev8aiKVPkSSCG6N2UqgrbY0ezwiGDjBrSdjR_EsLeCqeJLiRAYalAxVymJ9mt09_IaSHlOdDjxkoJckPntmE4tTiUMEALJHWN8qI6OtNSSQanWBOArGNuUCZc/s1600-h/EclipseSummitIndiaLogo.png&quot;&gt;&lt;img style=&quot;margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 200px; height: 147px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjrdkkjsywLCfG6hAS3eJdev8aiKVPkSSCG6N2UqgrbY0ezwiGDjBrSdjR_EsLeCqeJLiRAYalAxVymJ9mt09_IaSHlOdDjxkoJckPntmE4tTiUMEALJHWN8qI6OtNSSQanWBOArGNuUCZc/s320/EclipseSummitIndiaLogo.png&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5360187885811016098&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;Annamalai,  Prakash GR and Chetan Kumar has already posted about the 2nd day of the Eclipse Summit India 09 on their blogs. Please check out &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://eclipseo.blogspot.com/&quot;&gt;Its Eclipse in Clips&lt;/a&gt; and &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://blog.eclipse-tips.com/&quot;&gt;Eclipse Tips&lt;/a&gt; and &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://tweakeclipse.blogspot.com/&quot;&gt;Eclipse Fever&lt;/a&gt; to get the perspective of the summit from the eyes of the organizers and speakers of the summit.&lt;br /&gt;&lt;br /&gt;On the 1st day I was hopping between sessions. As the rolling stone I did not gather much information for the developer in me, even though I could get lot of information and photos for my blog. My priority for the 2nd day was to gain some technical knowledge, so I opted to attend the 3 hour session &#39;Design patterns in Eclipse&#39; by Ilya Shinkarenko in the morning and the 3 hour session on OSGi by Sameera Jayasoma in the afternoon.&lt;br /&gt;&lt;br /&gt;Before the technical presentations, the 2nd day opened by the keynote talks by the platinum sponsors, and this time it was the turn of Oracle and IBM.&lt;br /&gt;&lt;br /&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj7n9OR1uLn5KtqHNrBe6bftSr1z8NLVjcAHRJhoildLOV61neeLv92XmHmJvSSvEV9QqlJfpIIsBD4qIArzb6crzrEzynfF3eCHMx1SugZWND-2rfOTCDP3u_mPoAjFGYxlZ609vBsfgZX/s1600-h/summit-2.jpg&quot;&gt;&lt;img style=&quot;margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 251px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj7n9OR1uLn5KtqHNrBe6bftSr1z8NLVjcAHRJhoildLOV61neeLv92XmHmJvSSvEV9QqlJfpIIsBD4qIArzb6crzrEzynfF3eCHMx1SugZWND-2rfOTCDP3u_mPoAjFGYxlZ609vBsfgZX/s320/summit-2.jpg&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5360188134783276258&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;(Clips from different sessions at Eclipse Summit India, Day 2)&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;For Oracle Mr. Dhiraj Bhandari from the sales team introduced their product. He presented &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://www.oracle.com/tools/enterprise-eclipse-pack.html&quot;&gt;OEPE (Oracle Enterprise Pack for Eclipse)&lt;/a&gt;. This pack consists of Oracle Enterprise Pack for Eclipse 11g,  support for Web Services,  JSF, ORM Workbench etc.&lt;br /&gt;&lt;br /&gt;One of the amazing feature he showed is the &#39;&lt;span style=&quot;font-style: italic;&quot;&gt;Fast swap&lt;/span&gt;&#39; feature. Earlier, if you have ever worked on a client-server software application, you know that it takes lot of time  for its &#39;code-deploy-test&#39; life cycle. Even if you need to make a small code change, you need to deploy the entire project and then execute it. Using the fast swap feature, just make the change in your code, save the changes and execute the server application :). The deployment happens automatically in the background, just like the compilation happens in the JDT. Its that simple.&lt;br /&gt;&lt;br /&gt;The Oracle&#39;s strategy - They are planning to phase out Weblogic Workbench, and more importance will be given to the JDeveloper and Eclipse Packs. It was a new information for me to hear that Oracle is the #2 committer to the eclipse community, after IBM!!!&lt;br /&gt;&lt;br /&gt;After Oracle, it was the turn of IBM to present their tool - &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://www-01.ibm.com/software/awdtools/developer/application/&quot;&gt;Rapid Application Developer for Websphere&lt;/a&gt;. IBM slides showed some interesting survery results from Gartner Group. Only 42% users are satisfied with the quality of the software products, only 34% of projects are successful, only 37% users are happy with the execution speed of the software products etc. IBM also featured Rational Data Architect, Rational Software Modeller and Rational Software Architect.&lt;br /&gt;&lt;br /&gt;After the keynote talks, I headed towards the talk &#39;Design Patterns in Eclipse&#39;. Ilya explained some of the patterns used in the eclipse framework using a sample RCP application. The patterns covered were,&lt;ul&gt;&lt;li&gt;Adaptibles  (Properties View). This can be related with the Extension Interface pattern from the traditional patterns.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Singleton&lt;br /&gt;eg: PlatformUI.getWorkbench(), Platform.getAdapterManager(), ResourcesPlugin.getWorkspace().&lt;br /&gt;&lt;br /&gt;The disadvantages of this pattern includes classloading issues, unpredictability in dyanmic OSGi environment etc&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Bridge Pattern&lt;br /&gt;eg: OSGi Service Registry&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Whiteboard Pattern (Pluggable Listeners)&lt;br /&gt;This is an OSGi pattern.&lt;br /&gt;eg: Usage of ServiceTracker to register listeners&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Proxy-Bridge Pattern (IResource to access the file system)&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Composite Pattern (IWorkspace)&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Observer Pattern - for tracking resource changes, event listeners in SWT.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Visitor Pattern&lt;br /&gt;eg: IResourceDelta and IResourceDeltaVisitor, IResource and IResourceVisitor etc&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Strategy Pattern - Layout managers in SWT&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Plugable Adapters - Label and Content providers in Jface&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Command pattern - IAction implementation&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Memento - For persisting UI state in Eclipse workbench.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Virtual Proxies - The lazy loading rule.&lt;/li&gt;&lt;/ul&gt;It was quite a useful session. Thanks Ilya for all the details.&lt;br /&gt;&lt;br /&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitrSVEZ1osohXrvSoKtlg4RUoJ-jzJAbWPzEnsaPNf5WFcr8chIXhbk797nj0cpv0nqRbI8dhT6sKgDrqTG99M2TCDi9n7oJnOaF8qbD9Ih68k8BsxMJK6BC1xyOpEUFxRNY4scGYbIvaS/s1600-h/summit-3.jpg&quot;&gt;&lt;img style=&quot;margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 234px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitrSVEZ1osohXrvSoKtlg4RUoJ-jzJAbWPzEnsaPNf5WFcr8chIXhbk797nj0cpv0nqRbI8dhT6sKgDrqTG99M2TCDi9n7oJnOaF8qbD9Ih68k8BsxMJK6BC1xyOpEUFxRNY4scGYbIvaS/s320/summit-3.jpg&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5360188417675752754&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;(Clips from different sessions at Eclipse Summit India, Day 2)&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;During the lunch session I could interact with the Platform team from IBM.  Post lunch I headed towards OSGi session by Sameera Jayasoma from Sri Lanka. He is a senior developer at &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://wso2.com/&quot;&gt;WSO2 Inc.&lt;/a&gt;&lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://wso2.com/&quot;&gt;, the open source SOA Company&lt;/a&gt;. He started his talk with a few words on &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://wso2.com/products/wso2-carbon/&quot;&gt;WSO2 Carbon&lt;/a&gt;. Then he explained the need for modular systems and went to the details of OSGi. The workshop had lot of hands-on demos. I created my first OSGi project :).&lt;br /&gt;&lt;br /&gt;The 3 hour long session gave some valuable information about OSGi internals.&lt;br /&gt;&lt;br /&gt;Meanwhile in the other rooms, Anshu Jain from IBM talked about &#39;Eclipse: A framework of frameworks&#39;; Janakiram MSV, Deputy General Manager, Bell Labs India talked about Google AppEngine for Java and Eclipse Developers; Krishna Venkataraman, Director, Product Management, Actuate Corp., presented Actuate&#39;s prestigious product BIRT; Srinivas Kantipudi talked about a few Eclipse Test Automation Tools, Munnangi Ravindra Babu talked about &#39;Fast track to develop online analytical applications using BIRT.&lt;br /&gt;&lt;br /&gt;There were a few Salt March get aways like T-shirts, gifts from quick contests etc.&lt;br /&gt;&lt;br /&gt;&lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://www.saltmarch.com/&quot;&gt;Salt March Media&lt;/a&gt; and &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://www.ancitconsulting.com/&quot;&gt;ANCIT consulting&lt;/a&gt; had done a great job by organzing such a mega event successfully. As the eclipse community grows in India, the credit definitely goes to organizations like these, who think about the future and act. As I had mentioned in my previous blogs, open source is not a charity always; many businesses thrive on the open source model; but as open source projects &#39;gets&#39; the revenue, it &#39;gives&#39; back to the community; its a win-win situation.&lt;br /&gt;&lt;br /&gt;And together, we grow as a community.&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-style: italic;&quot;&gt;madhu&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;input id=&quot;gwProxy&quot; type=&quot;hidden&quot;&gt;&lt;!--Session data--&gt;&lt;input onclick=&quot;jsCall();&quot; id=&quot;jsProxy&quot; type=&quot;hidden&quot;&gt;&lt;div id=&quot;refHTML&quot;&gt;&lt;/div&gt;&lt;input id=&quot;gwProxy&quot; type=&quot;hidden&quot;&gt;&lt;!--Session data--&gt;&lt;input onclick=&quot;jsCall();&quot; id=&quot;jsProxy&quot; type=&quot;hidden&quot;&gt;&lt;div id=&quot;refHTML&quot;&gt;&lt;/div&gt;&lt;span id=&quot;leoHighlights_iframe_modal_span_container&quot;&gt;&lt;div id=&quot;leoHighlights_iframe_modal_div_container&quot; style=&quot;border: 1px solid black; position: absolute; visibility: hidden; display: none; width: 394px; height: 40px; z-index: 32768; background-color: white;&quot; onmouseover=&quot;leoHighlightsHandleIFrameMouseOver();&quot; onmouseout=&quot;leoHighlightsHandleIFrameMouseOut();&quot;&gt;                                                     &lt;div id=&quot;leo_iFrame_closebar&quot; style=&quot;position: absolute; top: 0px; left: 0px; width: 394px; height: 40px; z-index: 32768; background-image: url(chrome://shim/content/highlightsFilter-1/header.gif);&quot;&gt;       &lt;a href=&quot;javascript:%20leoHighlightsIFrameClose();&quot;&gt;          &lt;div id=&quot;leo_iFrame_close&quot; style=&quot;position: absolute; top: 10px; left: 360px; width: 20px; height: 20px;&quot;&gt;          &lt;/div&gt;       &lt;/a&gt;    &lt;/div&gt;        &lt;iframe id=&quot;leoHighlights_iframe&quot; name=&quot;leoHighlights_iframe&quot; title=&quot;leoHighlights_iframe&quot; src=&quot;about:blank&quot; vspace=&quot;0&quot; hspace=&quot;0&quot; marginwidth=&quot;0&quot; marginheight=&quot;0&quot; style=&quot;position: absolute; top: 40px; left: 0px;&quot; width=&quot;250&quot; frameborder=&quot;0&quot; height=&quot;100&quot; scrolling=&quot;no&quot;&gt;    &lt;/iframe&gt;     &lt;/div&gt;  &lt;script defer=&quot;defer&quot; type=&quot;text/javascript&quot;&gt;    createInlineScriptElement(&quot;var%20LEO_HIGHLIGHTS_DEBUG%20%3D%20true%3B%0Avar%20LEO_HIGHLIGHTS_DEBUG_POS%20%3D%20false%3B%0Avar%20LEO_HIGHLIGHTS_INFINITE_LOOP_COUNT%20%3D%20300%3B%0Avar%20LEO_HIGHLIGHTS_MAX_HIGHLIGHTS%20%3D%20200%3B%0Avar%20LEO_HIGHLIGHTS_IFRAME_ID%20%3D%20%22leoHighlights_iframe%22%3B%0Avar%20LEO_HIGHLIGHTS_IFRAME_DIV_ID%20%3D%20%22leoHighlights_iframe_modal_div_container%22%3B%0Avar%20LEO_HIGHLIGHTS_SHOW_DELAY_MS%20%3D%20300%3B%0Avar%20LEO_HIGHLIGHTS_HIDE_DELAY_MS%20%3D%20750%3B%0Avar%20LEO_HIGHLIGHTS_BACKGROUND_STYLE_DEFAULT%20%3D%20%22transparent%20none%20repeat%20scroll%200%25%200%25%22%3B%0Avar%20LEO_HIGHLIGHTS_BACKGROUND_STYLE_HOVER%20%3D%20%20%20%22rgb%28245%2C245%2C0%29%20none%20repeat%20scroll%200%25%200%25%22%3B%0Avar%20_leoHighlightsPrevElem%20%3D%20null%3B%0A%0A/**%0A%20*%20General%20method%20used%20to%20debug%20exceptions%0A%20*%20%0A%20*%20@param%20location%0A%20*%20@param%20e%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsReportExeception%28location%2Ce%29%0A%7B%0A%20%20%20if%28LEO_HIGHLIGHTS_DEBUG%29%0A%20%20%20%7B%0A%20%20%20%20%20%20alert%28%22EXCEPTION%3A%20%22+location+%22%3A%20%22+e+%0A%20%20%20%20%20%20%20%20%20%20%20%20%22%5Cn%5Ct%22+e.name+%22%5Cn%5Ct%22+%28e.number%260xFFFF%29+%22%5Cn%5Ct%22+e.description%29%3B%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20is%20a%20dimensions%20object%0A%20*%20%0A%20*%20@param%20width%0A%20*%20@param%20height%0A%20*%20@return%0A%20*/%0Afunction%20LeoHighlightsDimension%28width%2Cheight%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09this.width%3Dwidth%3B%0A%20%20%20%09this.height%3Dheight%3B%0A%20%20%20%09this.toString%3Dfunction%28%29%20%7B%20return%20%28%22%28%22+this.width+%22%2C%22+this.height+%22%29%22%29%3B%7D%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22new%20LeoHighlightsDimension%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A%20*%20This%20is%20a%20Position%20object%0A%20*%20%0A%20*%20@param%20x%0A%20*%20@param%20y%0A%20*%20@return%0A%20*/%0Afunction%20LeoHighlightsPosition%28x%2Cy%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09this.x%3Dx%3B%0A%20%20%20%09this.y%3Dy%3B%0A%20%20%20%09this.toString%3Dfunction%28%29%20%7B%20return%20%28%22%28%22+this.x+%22%2C%22+this.y+%22%29%22%29%3B%7D%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22new%20LeoHighlightsPosition%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0Avar%20LEO_HIGHLIGHTS_ADJUSTMENT%20%3D%20new%20LeoHighlightsPosition%283%2C3%29%3B%0Avar%20LEO_HIGHLIGHTS_IFRAME_HOVER_SIZE%20%3D%20new%20LeoHighlightsDimension%28394%2C236%29%3B%0Avar%20LEO_HIGHLIGHTS_IFRAME_CLICK_SIZE%20%3D%20new%20LeoHighlightsDimension%28394%2C512%29%3B%0Avar%20LEO_HIGHLIGHTS_CLOSE_BAR_HEIGHT%20%3D%2040%3B%0Avar%20LEO_HIGHLIGHTS_DIV_HOVER_SIZE%20%3D%20new%20LeoHighlightsDimension%28LEO_HIGHLIGHTS_IFRAME_HOVER_SIZE.width%2C%0A%09%09%09LEO_HIGHLIGHTS_IFRAME_HOVER_SIZE.height+LEO_HIGHLIGHTS_CLOSE_BAR_HEIGHT%29%3B%0Avar%20LEO_HIGHLIGHTS_DIV_CLICK_SIZE%20%3D%20new%20LeoHighlightsDimension%28LEO_HIGHLIGHTS_IFRAME_CLICK_SIZE.width%2C%0A%09%09LEO_HIGHLIGHTS_IFRAME_CLICK_SIZE.height+LEO_HIGHLIGHTS_CLOSE_BAR_HEIGHT%29%3B%0A%0A%0A/**%0A%20*%20Sets%20the%20size%20of%20the%20passed%20in%20element%0A%20*%20%0A%20*%20@param%20elem%0A%20*%20@param%20dim%20%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsSetSize%28elem%2Cdim%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09//%20Set%20the%20popup%20location%0A%20%20%20%09elem.style.width%20%3D%20dim.width%20+%20%22px%22%3B%0A%20%20%20%09if%28elem.width%29%0A%20%20%20%09%09elem.width%3Ddim.width%3B%0A%20%20%20%09elem.style.height%20%20%3D%20dim.height%20+%20%22px%22%3B%0A%20%20%20%09if%28elem.height%29%0A%20%20%20%09%09elem.height%3Ddim.height%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsSetSize%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A%20*%20This%20can%20be%20used%20for%20a%20simple%20one%20argument%20callback%0A%20*%0A%20*%20@param%20callName%0A%20*%20@param%20argName%0A%20*%20@param%20argVal%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsSimpleGwCallBack%28callName%2CargName%2C%20argVal%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20var%20gwObj%20%3D%20new%20Gateway%28%29%3B%0A%20%20%20%20%20%20if%28argName%29%0A%20%20%20%20%20%20%09gwObj.addParam%28argName%2CargVal%29%3B%0A%20%20%20%20%20%20gwObj.callName%28callName%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsSimpleGwCallBack%28%29%20%22+callName%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20gets%20a%20url%20argument%20from%20the%20current%20document.%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsGetUrlArg%28url%2C%20name%20%29%0A%7B%0A%09%20%20name%20%3D%20name.replace%28/[%5C[]/%2C%22%5C%5C%5C[%22%29.replace%28/[%5C]]/%2C%22%5C%5C%5C]%22%29%3B%0A%09%20%20var%20regexS%20%3D%20%22[%5C%5C?%26]%22+name+%22%3D%28[^%26%23]*%29%22%3B%0A%09%20%20var%20regex%20%3D%20new%20RegExp%28%20regexS%20%29%3B%0A%09%20%20var%20results%20%3D%20regex.exec%28url%29%3B%0A%09%20%20if%28%20results%20%3D%3D%20null%20%29%0A%09%20%20%20%20return%20%22%22%3B%0A%09%20%20else%0A%09%20%20%20%20return%20results[1]%3B%0A%7D%0A%0A%0A/**%0A%20*%20This%20allows%20to%20redirect%20the%20top%20window%20to%20the%20passed%20in%20url%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsRedirectTop%28url%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%20%20%20%09%0A%20%20%20%09top.location%3Durl%3B%09%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsRedirectTop%28%29%22%2Ce%29%3B%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20is%20used%20to%20report%20events%20to%20the%20plugin%0A%20*%20@param%20key%0A%20*%20@param%20sub%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsEvent%28key%2C%20sub%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20var%20gwObj%20%3D%20new%20Gateway%28%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22key%22%2C%20key%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22sub%22%2C%20sub%29%3B%0A%20%20%20%20%20%20gwObj.callName%28%22leoHighlightsEvent%22%29%3B%09%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsEvent%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20will%20find%20an%20element%20by%20Id%0A%20*%20%0A%20*%20@param%20elemId%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsFindElementById%28elemId%29%0A%7B%0A%09try%0A%09%7B%0A%09%09var%20elem%3Ddocument.getElementById%28elemId%29%3B%0A%09%09if%28elem%29%0A%09%09%09return%20elem%3B%0A%09%09%0A%09%09/*%20This%20is%20the%20handling%20for%20IE%20*/%0A%09%09if%28document.all%29%0A%09%09%7B%0A%09%09%09elem%3Ddocument.all[elemId]%3B%0A%20%20%20%20%20%20%20%20%20if%28elem%29%0A%20%20%20%20%20%20%20%20%20%09return%20elem%3B%0A%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20for%20%28%20var%20i%20%3D%20%28document.all.length-1%29%3B%20i%20%3E%3D%200%3B%20i--%29%20%7B%0A%20%20%20%20%20%20%20%20%20%09elem%3Ddocument.all[i]%3B%0A%20%20%20%20%20%20%20%20%20%09if%28elem.id%3D%3DelemId%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20elem%3B%0A%20%20%20%20%20%20%20%20%20%7D%0A%09%09%7D%0A%09%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsFindElementById%28%29%22%2Ce%29%3B%0A%20%20%20%7D%0A%09return%20null%3B%0A%7D%0A%0A/**%0A%20*%20Get%20the%20location%20of%20one%20element%20relative%20to%20a%20parent%20reference%0A%20*%0A%20*%20@param%20ref%0A%20*%20%20%20%20%20%20%20%20%20%20%20the%20reference%20element%2C%20this%20must%20be%20a%20parent%20of%20the%20passed%20in%0A%20*%20%20%20%20%20%20%20%20%20%20%20element%0A%20*%20@param%20elem%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsGetLocation%28ref%2C%20elem%29%20%7B%0A%20%20%20var%20count%20%3D%200%3B%0A%20%20%20var%20location%20%3D%20new%20LeoHighlightsPosition%280%2C0%29%3B%0A%20%20%20var%20walk%20%3D%20elem%3B%0A%20%20%20while%20%28walk%20%21%3D%20null%20%26%26%20walk%20%21%3D%20ref%20%26%26%20count%20%3C%20LEO_HIGHLIGHTS_INFINITE_LOOP_COUNT%29%20%7B%0A%20%20%20%20%20%20location.x%20+%3D%20walk.offsetLeft%3B%0A%20%20%20%20%20%20location.y%20+%3D%20walk.offsetTop%3B%0A%20%20%20%20%20%20walk%20%3D%20walk.offsetParent%3B%0A%20%20%20%20%20%20count++%3B%0A%20%20%20%7D%0A%0A%20%20%20return%20location%3B%0A%7D%0A%0A/**%0A%20*%20This%20is%20used%20to%20update%20the%20position%20of%20an%20element%20as%20a%20popup%0A%20*%20%0A%20*%20@param%20IFrame%0A%20*%20@param%20anchor%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsUpdatePopupPos%28iFrame%2Canchor%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20//%20Gets%20the%20scrolled%20location%20for%20x%20and%20y%0A%20%20%20%20%20%20var%20scrolledPos%3Dnew%20LeoHighlightsPosition%280%2C0%29%3B%0A%20%20%20%20%20%20if%28%20self.pageYOffset%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20scrolledPos.x%20%3D%20self.pageXOffset%3B%0A%20%20%20%20%20%20%20%20%20scrolledPos.y%20%3D%20self.pageYOffset%3B%0A%20%20%20%20%20%20%7D%20else%20if%28%20document.documentElement%20%26%26%20document.documentElement.scrollTop%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20scrolledPos.x%20%3D%20document.documentElement.scrollLeft%3B%0A%20%20%20%20%20%20%20%20%20scrolledPos.y%20%3D%20document.documentElement.scrollTop%3B%0A%20%20%20%20%20%20%7D%20else%20if%28%20document.body%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20scrolledPos.x%20%3D%20document.body.scrollLeft%3B%0A%20%20%20%20%20%20%20%20%20scrolledPos.y%20%3D%20document.body.scrollTop%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20/*%20Get%20the%20total%20dimensions%20to%20see%20what%20scroll%20bars%20might%20be%20active%20*/%0A%20%20%20%20%20%20var%20totalDim%3Dnew%20LeoHighlightsDimension%280%2C0%29%0A%20%20%20%20%20%20if%20%28document.all%20%26%26%20document.documentElement%20%26%26%20%0A%20%20%20%20%20%20%09document.documentElement.clientHeight%26%26document.documentElement.clientWidth%29%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%09totalDim.width%20%3D%20document.documentElement.scrollWidth%3B%0A%20%20%20%20%20%20%09totalDim.height%20%3D%20document.documentElement.scrollHeight%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20else%20if%20%28document.all%29%0A%20%20%20%20%20%20%7B%20/*%20This%20is%20in%20IE%20*/%0A%20%20%20%20%20%09%20%09totalDim.width%20%3D%20document.body.scrollWidth%3B%0A%20%20%20%20%20%20%09totalDim.height%20%3D%20document.body.scrollHeight%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20else%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%09%20totalDim.width%20%3D%20document.width%3B%0A%20%20%20%20%20%20%09%20totalDim.height%20%3D%20document.height%3B%0A%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20//%20Gets%20the%20location%20of%20the%20available%20screen%20space%0A%20%20%20%20%20%20var%20centerDim%3Dnew%20LeoHighlightsDimension%280%2C0%29%3B%0A%20%20%20%20%20%20if%28self.innerWidth%20%26%26%20self.innerHeight%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20centerDim.width%20%3D%20self.innerWidth-%28totalDim.height%3Eself.innerHeight?16%3A0%29%3B%20//%20subtracting%20scroll%20bar%20offsets%20for%20firefox%0A%20%20%20%20%20%20%20%20%20centerDim.height%20%3D%20self.innerHeight-%28totalDim.width%3Eself.innerWidth?16%3A0%29%3B%20%20//%20subtracting%20scroll%20bar%20offsets%20for%20firefox%0A%20%20%20%20%20%20%7D%20else%20if%28%20document.documentElement%20%26%26%20document.documentElement.clientHeight%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20centerDim.width%20%3D%20document.documentElement.clientWidth%3B%0A%20%20%20%20%20%20%20%20%20centerDim.height%20%3D%20document.documentElement.clientHeight%3B%0A%20%20%20%20%20%20%7D%20else%20if%28%20document.body%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20centerDim.width%20%3D%20document.body.clientWidth%3B%0A%20%20%20%20%20%20%20%20%20centerDim.height%20%3D%20document.body.clientHeight%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20//%20Get%20the%20current%20dimension%20of%20the%20popup%20element%0A%20%20%20%20%20%20var%20iFrameDim%3Dnew%20LeoHighlightsDimension%28iFrame.offsetWidth%2CiFrame.offsetHeight%29%0A%20%20%20%20%20%20if%20%28iFrameDim.width%20%3C%3D%200%29%0A%20%20%20%20%20%20%09iFrameDim.width%20%3D%20iFrame.style.width.substring%280%2C%20iFrame.style.width.indexOf%28%27px%27%29%29%3B%0A%20%20%20%20%20%20if%20%28iFrameDim.height%20%3C%3D%200%29%0A%20%20%20%20%20%20%09iFrameDim.height%20%3D%20iFrame.style.height.substring%280%2C%20iFrame.style.height.indexOf%28%27px%27%29%29%3B%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20/*%20Calculate%20the%20position%2C%20lower%20right%20hand%20corner%20by%20default%20*/%0A%20%20%20%20%20%20var%20position%3Dnew%20LeoHighlightsPosition%280%2C0%29%3B%0A%20%20%20%20%20%20position.x%3DscrolledPos.x+centerDim.width-iFrameDim.width-LEO_HIGHLIGHTS_ADJUSTMENT.x%3B%0A%20%20%20%20%20%20position.y%3DscrolledPos.y+centerDim.height-iFrameDim.height-LEO_HIGHLIGHTS_ADJUSTMENT.y%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20if%28anchor%21%3Dnull%29%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20//centerDim%20in%20relation%20to%20the%20anchor%20element%20if%20available%0A%20%20%20%20%20%20%20%20%20var%20topOrBottom%20%3D%20false%3B%0A%20%20%20%20%20%20%20%20%20var%20anchorPos%3D_leoHighlightsGetLocation%28document.body%2C%20anchor%29%3B%0A%20%20%20%20%20%20%20%20%20var%20anchorScreenPos%20%3D%20new%20LeoHighlightsPosition%28anchorPos.x-scrolledPos.x%2CanchorPos.y-scrolledPos.y%29%3B%0A%20%20%20%20%20%20%20%20%20var%20anchorDim%3Dnew%20LeoHighlightsDimension%28anchor.offsetWidth%2Canchor.offsetHeight%29%0A%20%20%20%20%20%20%20%20%20if%20%28anchorDim.width%20%3C%3D%200%29%0A%20%20%20%20%20%20%20%20%20%09anchorDim.width%20%3D%20anchor.style.width.substring%280%2C%20anchor.style.width.indexOf%28%27px%27%29%29%3B%0A%20%20%20%20%20%20%20%20%20if%20%28anchorDim.height%20%3C%3D%200%29%0A%20%20%20%20%20%20%20%20%20%09anchorDim.height%20%3D%20anchor.style.height.substring%280%2C%20anchor.style.height.indexOf%28%27px%27%29%29%3B%0A%0A%20%20%20%20%20%20%20%20%20//%20Check%20if%20the%20popup%20can%20be%20shown%20above%20or%20below%20the%20element%0A%20%20%20%20%20%20%20%20%20if%20%28centerDim.height%20-%20anchorDim.height%20-%20iFrameDim.height%20-%20anchorScreenPos.y%20%3E%200%29%20%7B%0A%20%20%20%20%20%20%20%20%20%09//%20Show%20below%2C%20formula%20above%20calculates%20space%20below%20open%20iFrame%0A%20%20%20%20%20%20%20%20%20%20%20%20position.y%20%3D%20anchorPos.y%20+%20anchorDim.height%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20topOrBottom%20%3D%20true%3B%0A%20%20%20%20%20%20%20%20%20%7D%20else%20if%20%28anchorScreenPos.y%20-%20anchorDim.height%20-%20iFrameDim.height%20%3E%200%29%20%7B%0A%20%20%20%20%20%20%20%20%20%09//%20Show%20above%2C%20formula%20above%20calculates%20space%20above%20open%20iFrame%0A%20%20%20%20%20%20%20%20%20%09position.y%20%3D%20anchorPos.y%20-%20iFrameDim.height%20-%20anchorDim.height%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20topOrBottom%20%3D%20true%3B%0A%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20if%20%28topOrBottom%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20//%20We%20attempt%20top%20attach%20the%20window%20to%20the%20element%0A%20%20%20%20%20%20%20%20%20%09position.x%20%3D%20anchorPos.x%20-%20iFrameDim.width%20/%202%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20%28position.x%20%3C%200%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%09position.x%20%3D%200%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20else%20if%20%28position.x%20+%20iFrameDim.width%20%3E%20scrolledPos.x%20+%20centerDim.width%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%09position.x%20%3D%20scrolledPos.x%20+%20centerDim.width%20-%20iFrameDim.width%3B%0A%20%20%20%20%20%20%20%20%20%7D%20else%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20//%20Attempt%20to%20align%20on%20the%20right%20or%20left%20hand%20side%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20%28centerDim.width%20-%20anchorDim.Width%20-%20iFrameDim.width%20-%20anchorScreenPos.x%20%3E%200%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20position.x%20%3D%20anchorPos.x%20+%20anchorDim.width%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20else%20if%20%28anchorScreenPos.x%20-%20anchorDim.width%20-%20iFrameDim.width%20%3E%200%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%09position.x%20%3D%20anchorPos.x%20-%20anchorDim.width%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20else%20%20//%20default%20to%20below%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20position.y%20%3D%20anchorPos.y%20+%20anchorDim.height%3B%0A%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20/*%20Make%20sure%20that%20we%20don%27t%20go%20passed%20the%20right%20hand%20border%20*/%0A%20%20%20%20%20%20if%28position.x+iFrameDim.width%3EcenterDim.width-20%29%0A%20%20%20%20%20%20%09position.x%3DcenterDim.width-%28iFrameDim.width+20%29%3B%0A%20%20%20%20%20%20%09%09%0A%20%20%20%20%20%20//%20Make%20sure%20that%20we%20didn%27t%20go%20passed%20the%20start%0A%20%20%20%20%20%20if%28position.x%3C0%29%0A%20%20%20%20%20%20%20%20%20position.x%3D0%3B%0A%20%20%20%20%20%20if%28position.y%3C0%29%0A%20%20%20%20%20%20%09position.y%3D0%3B%0A%0A%20%20%20%20%20%20if%20%28LEO_HIGHLIGHTS_DEBUG_POS%26%26LEO_HIGHLIGHTS_DEBUG%29%20%7B%0A%20%20%20%20%20%20%20%20%20alert%28%22%20Popup%20info%20id%3A%20%20%20%20%20%20%20%22%20+iFrame.id+%22%20-%20%22+anchor.id%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5Cnscrolled%20%20%20%20%20%20%20%20%20%20%22%20+%20scrolledPos%20%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5Cncenter/visible%20%20%20%20%22%20+%20centerDim%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5Cnanchor%20%28absolute%29%20%22%20+%20anchorPos%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5Cnanchor%20%28screen%29%20%20%20%22%20+%20anchorScreenPos%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5CnSize%20%28anchor%29%20%20%20%20%20%22%20+%20anchorDim%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5CnSize%20%28popup%29%20%20%20%20%20%20%22%20+%20iFrameDim%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5CnResult%20pos%20%20%20%20%20%20%20%20%22%20+%20position%29%3B%0A%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20//%20Set%20the%20popup%20location%0A%20%20%20%20%20%20iFrame.style.left%20%3D%20position.x%20+%20%22px%22%3B%0A%20%20%20%20%20%20iFrame.style.top%20%20%3D%20position.y%20+%20%22px%22%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsUpdatePopupPos%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A%0A/**%0A%20*%20This%20will%20show%20the%20passed%20in%20element%20as%20a%20popup%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@param%20size%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsShowPopup%28anchorId%2Csize%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09var%20popup%3Dnew%20LeoHighlightsPopup%28anchorId%2Csize%29%3B%0A%20%20%20%09popup.show%28%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsShowPopup%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A%0A/**%0A%20*%20This%20will%20transform%20the%20passed%20in%20url%20to%20a%20rover%20url%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsGetRoverUrl%28url%29%0A%7B%0A%09var%20rover%3D%22711-36858-13496-14%22%3B%0A%09var%20roverUrl%3D%22http%3A//rover.ebay.com/rover/1/%22+rover+%22/4?%26mpre%3D%22+encodeURI%28url%29%3B%0A%09%0A%09return%20roverUrl%3B%0A%7D%0A%0A/**%0A%20*%20Class%20for%20a%20Popup%20%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@param%20size%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20LeoHighlightsPopup%28anchorId%2Csize%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09this.anchorId%3DanchorId%3B%0A%20%20%20%09this.anchor%3D_leoHighlightsFindElementById%28this.anchorId%29%3B%0A%20%20%20%09this.iFrame%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_ID%29%3B%0A%20%20%20%09this.iFrameDiv%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_DIV_ID%29%3B%0A%20%20%20%09%0A%20%20%20%09var%20url%3Dunescape%28this.anchor.getAttribute%28%27leoHighlights_url%27%29%29%3B%0A%0A%20%20%20%09this.iFrame.src%3Durl%3B%0A%0A%20%20%20%09leoHighlightsSetSize%28size%29%3B%0A%20%20%20%09%0A%20%20%20%09this.updatePos%3Dfunction%28%29%20%7B%20_leoHighlightsUpdatePopupPos%28this.iFrameDiv%2Cthis.anchor%29%7D%3B%0A%20%20%20%09this.show%3Dfunction%28%29%20%7Bthis.updatePos%28%29%3B%20this.iFrameDiv.style.visibility%20%3D%20%22visible%22%3B%20this.iFrameDiv.style.display%20%3D%20%22block%22%3B%20this.updatePos%28%29%3B%7D%20%20%20%09%09%0A%20%20%20%09this.scroll%3Dfunction%28%29%20%7B%20this.updatePos%28%29%3B%7D%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22new%20LeoHighlightsPopup%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/**%0A*%0A*%20This%20can%20be%20used%20to%20close%20an%20iframe%0A*%0A*%20@param%20id%0A*%20@return%0A*/%0Afunction%20leoHighlightsSetSize%28size%2CclickId%29%0A%7B%0A%09try%0A%09%7B%0A%09%09/*%20Get%20the%20appropriate%20sizes%20*/%0A%20%20%09%09var%20iFrame%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_ID%29%3B%0A%20%20%09%09var%20iFrameDiv%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_DIV_ID%29%3B%0A%20%20%09%09%0A%20%20%09%09/*%20Figure%20out%20the%20correct%20sizes%20*/%0A%20%20%09%09var%20iFrameSize%3D%28size%3D%3D1%29?LEO_HIGHLIGHTS_IFRAME_CLICK_SIZE%3ALEO_HIGHLIGHTS_IFRAME_HOVER_SIZE%3B%0A%20%20%09%09var%20divSize%3D%28size%3D%3D1%29?LEO_HIGHLIGHTS_DIV_CLICK_SIZE%3ALEO_HIGHLIGHTS_DIV_HOVER_SIZE%3B%0A%0A%20%20%09%09/*%20Refresh%20the%20iFrame%27s%20url%2C%20by%20removing%20the%20size%20arg%20and%20adding%20it%20again%20*/%0A%20%20%09%09var%20url%3DiFrame.src%3B%0A%20%20%09%09var%20idx%3Durl.indexOf%28%22%26size%3D%22%29%3B%0A%20%20%09%09if%28idx%3E%3D0%29%0A%20%20%09%09%09url%3Durl.substring%280%2Cidx%29%3B%0A%09%09url+%3D%28%22%26size%3D%22+size%29%3B%0A%09%09if%28clickId%29%0A%09%09%09url+%3D%28%22%26clickId%3D%22+clickId%29%3B%0A%09%09%0A%20%20%09%09iFrame.src%3Durl%3B%0A%20%20%09%09%0A%20%20%09%09/*%20Clear%20the%20hover%20flag%2C%20if%20the%20user%20shows%20this%20at%20full%20size%20*/%0A%20%20%09%09if%28size%3D%3D1%26%26_leoHighlightsPrevElem%29%0A%20%20%09%09%09_leoHighlightsPrevElem.hover%3Dfalse%3B%0A%20%20%09%09%0A%20%20%09%09_leoHighlightsSetSize%28iFrame%2CiFrameSize%29%3B%0A%20%20%09%09_leoHighlightsSetSize%28iFrameDiv%2CdivSize%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsSetSize%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A%20*%20Start%20the%20popup%20a%20little%20bit%20delayed.%0A%20*%20Somehow%20IE%20needs%20some%20time%20to%20find%20the%20element%20by%20id.%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@param%20size%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsShowPopup%28anchorId%2Csize%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%09%09var%20elem%3D_leoHighlightsFindElementById%28anchorId%29%3B%0A%20%20%09%09if%28_leoHighlightsPrevElem%26%26%28_leoHighlightsPrevElem%21%3Delem%29%29%0A%20%20%09%09%09_leoHighlightsPrevElem.shown%3Dfalse%3B%0A%20%20%09%09elem.shown%3Dtrue%3B%0A%09%09_leoHighlightsPrevElem%3Delem%3B%0A%20%20%20%09%0A%20%20%20%09/*%20FF%20needs%20to%20find%20the%20element%20first%20*/%0A%20%20%20%09_leoHighlightsFindElementById%28anchorId%29%3B%0A%20%20%20%09%0A%20%20%20%09setTimeout%28%22_leoHighlightsShowPopup%28%5C%27%22+anchorId+%22%5C%27%2C%5C%27%22+size+%22%5C%27%29%3B%22%2C10%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHighlightsShowPopup%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A*%0A*%20This%20can%20be%20used%20to%20close%20an%20iframe%0A*%0A*%20@param%20id%0A*%20@return%0A*/%0Afunction%20leoHighlightsHideElem%28id%29%0A%7B%0A%09try%0A%09%7B%0A%09%09/*%20Get%20the%20appropriate%20sizes%20*/%0A%20%20%09%09var%20elem%3D_leoHighlightsFindElementById%28id%29%3B%0A%20%20%09%09if%28elem%29%0A%20%20%09%09%09elem.style.visibility%3D%22hidden%22%3B%0A%20%20%09%09%0A%20%20%09%09/*%20Clear%20the%20page%20for%20the%20next%20run%20through%20*/%0A%20%20%09%09var%20iFrame%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_ID%29%3B%0A%20%20%09%09if%28iFrame%29%0A%20%20%09%09%09iFrame.src%3D%22about%3Ablank%22%3B%0A%20%20%09%09%0A%20%20%09%09%0A%20%20%09%09if%28_leoHighlightsPrevElem%29%0A%20%20%09%09%7B%0A%20%20%09%09%09_leoHighlightsPrevElem.shown%3Dfalse%3B%0A%20%20%09%09%09_leoHighlightsPrevElem%3Dnull%3B%0A%20%20%09%09%7D%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHideElem%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A*%0A*%20This%20can%20be%20used%20to%20close%20an%20iframe.%0A*%20Since%20the%20iFrame%20is%20reused%20the%20frame%20only%20gets%20hidden%0A*%0A*%20@return%0A*/%0Afunction%20leoHighlightsIFrameClose%28%29%0A%7B%0A%20%20try%0A%20%20%7B%0A%09%20%20_leoHighlightsSimpleGwCallBack%28%22LeoHighlightsHideIFrame%22%29%3B%0A%20%20%7D%0A%20%20catch%28e%29%0A%20%20%7B%0A%09%20%20_leoHighlightsReportExeception%28%22leoHighlightsIFrameClose%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20should%20handle%20the%20click%20events%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleClick%28anchorId%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%09%09var%20anchor%3D_leoHighlightsFindElementById%28anchorId%29%3B%0A%20%20%09%09anchor.hover%3Dfalse%3B%0A%20%20%09%09if%28anchor.startTimer%29%0A%20%20%09%09%09clearTimeout%28anchor.startTimer%29%3B%0A%20%20%20%09%0A%20%20%09%09leoHighlightsEvent%28%22clicked%22%29%3B%0A%20%20%20%09leoHighlightsShowPopup%28anchorId%2C1%29%3B%0A%20%20%20%09return%20false%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHighlightsHandleClick%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A%20*%20This%20should%20handle%20the%20hover%20events%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleHover%28anchorId%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%09%09var%20anchor%3D_leoHighlightsFindElementById%28anchorId%29%3B%0A%20%20%09%09anchor.hover%3Dtrue%3B%0A%20%20%09%09%0A%20%20%09%09leoHighlightsEvent%28%22hovered%22%29%3B%0A%20%20%20%09leoHighlightsShowPopup%28anchorId%2C0%29%3B%0A%20%20%20%09return%20false%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHighlightsHandleHover%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A%20*%20This%20will%20handle%20the%20mouse%20over%20setup%20timers%20for%20the%20appropriate%20timers%0A%20*%20%0A%20*%20@param%20id%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleMouseOver%28id%29%0A%7B%0A%09try%0A%09%7B%0A%09%09var%20anchor%3D_leoHighlightsFindElementById%28id%29%3B%09%09%0A%0A%09%09/*%20Clear%20the%20end%20timer%20if%20required%20*/%0A%09%09if%28anchor.endTimer%29%0A%09%09%09clearTimeout%28anchor.endTimer%29%3B%0A%09%09anchor.endTimer%3Dnull%3B%0A%09%09%0A%09%09anchor.style.background%3DLEO_HIGHLIGHTS_BACKGROUND_STYLE_HOVER%3B%0A%09%09%0A%09%09/*%20The%20element%20is%20already%20showing%20we%20are%20done%20*/%0A%09%09if%28anchor.shown%29%0A%09%09%09return%3B%0A%09%09%0A%09%09/*%20Setup%20the%20start%20timer%20if%20required%20*/%0A%09%09anchor.startTimer%3DsetTimeout%28function%28%29%7B%0A%09%09%09leoHighlightsHandleHover%28anchor.id%29%3B%0A%09%09%09anchor.hover%3Dtrue%3B%0A%09%09%09%7D%2C%0A%09%09%09LEO_HIGHLIGHTS_SHOW_DELAY_MS%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHandleMouseOver%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A%20*%20This%20will%20handle%20the%20mouse%20over%20setup%20timers%20for%20the%20appropriate%20timers%0A%20*%20%0A%20*%20@param%20id%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleMouseOut%28id%29%0A%7B%0A%09try%0A%09%7B%09%0A%09%09var%20anchor%3D_leoHighlightsFindElementById%28id%29%3B%0A%09%09%0A%09%09/*%20Clear%20the%20start%20timer%20if%20required%20*/%0A%09%09if%28anchor.startTimer%29%0A%09%09%09clearTimeout%28anchor.startTimer%29%3B%0A%09%09anchor.startTimer%3Dnull%3B%0A%09%09%0A%09%09anchor.style.background%3DLEO_HIGHLIGHTS_BACKGROUND_STYLE_DEFAULT%3B%0A%09%09if%28%21anchor.shown||%21anchor.hover%29%0A%09%09%09return%3B%0A%09%09%0A%09%09/*%20Setup%20the%20start%20timer%20if%20required%20*/%0A%09%09anchor.endTimer%3DsetTimeout%28function%28%29%7B%0A%09%09%09leoHighlightsHideElem%28LEO_HIGHLIGHTS_IFRAME_DIV_ID%29%3B%0A%09%09%09anchor.shown%3Dfalse%3B%0A%09%09%09_leoHighlightsPrevElem%3Dnull%3B%0A%09%09%09%7D%2CLEO_HIGHLIGHTS_HIDE_DELAY_MS%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHandleMouseOut%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A%20*%20This%20handles%20the%20mouse%20movement%20into%20the%20currently%20opened%20window.%0A%20*%20Just%20clear%20the%20close%20timer%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleIFrameMouseOver%28%29%0A%7B%0A%09try%0A%09%7B%0A%09%09if%28_leoHighlightsPrevElem%26%26_leoHighlightsPrevElem.endTimer%29%0A%09%09%09clearTimeout%28_leoHighlightsPrevElem.endTimer%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHandleIFrameMouseOver%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A%20*%20This%20handles%20the%20mouse%20movement%20into%20the%20currently%20opened%20window.%0A%20*%20Just%20clear%20the%20close%20timer%0A%20*%20%0A%20*%20@param%20id%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleIFrameMouseOut%28%29%0A%7B%0A%09try%0A%09%7B%0A%09%09if%28_leoHighlightsPrevElem%29%0A%09%09%09leoHighlightsHandleMouseOut%28_leoHighlightsPrevElem.id%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHandleIFrameMouseOut%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A/**%0A%20*%20This%20is%20a%20method%20is%20used%20to%20make%20the%20javascript%20within%20IE%20runnable%0A%20*/%0Avar%20leoHighlightsRanUpdateDivs%3Dfalse%3B%0Afunction%20leoHighlightsUpdateDivs%28%29%0A%7B%0A%09try%0A%09%7B%0A%09%09/*%20Check%20if%20this%20is%20an%20IE%20browser%20and%20if%20divs%20have%20been%20updated%20already%20*/%0A%09%09if%28document.all%26%26%21leoHighlightsRanUpdateDivs%29%0A%09%09%7B%0A%09%09%09leoHighlightsRanUpdateDivs%3Dtrue%3B%20//%20Set%20early%20to%20prevent%20running%20twice%0A%09%09%09for%28var%20i%3D0%3Bi%3CLEO_HIGHLIGHTS_MAX_HIGHLIGHTS%3Bi++%29%0A%09%09%09%7B%0A%09%09%09%09var%20id%3D%22leoHighlights_Underline_%22+i%3B%0A%09%09%09%09var%20elem%3D_leoHighlightsFindElementById%28id%29%3B%0A%09%09%09%09if%28elem%3D%3Dnull%29%0A%09%09%09%09%09break%3B%0A%09%09%09%09%0A%09%09%09%09if%28%21elem.leoChanged%29%0A%09%09%09%09%7B%0A%09%09%09%09%09elem.leoChanged%3Dtrue%3B%0A%09%09%09%09%0A%09%09%09%09%09/*%20This%20will%20make%20javaScript%20runnable%20*/%09%09%09%09%0A%09%09%09%09%09elem.outerHTML%3Delem.outerHTML%3B%0A%09%09%09%09%7D%0A%09%09%09%7D%0A%09%09%7D%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsUpdateDivs%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0Aif%28document.all%29%0A%09setTimeout%28leoHighlightsUpdateDivs%2C200%29%3B%0A%0A/**%0A%20*%20This%20is%20used%20to%20report%20events%20to%20the%20plugin%0A%20*%20@param%20key%0A%20*%20@param%20sub%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsEvent%28key%2C%20sub%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20var%20gwObj%20%3D%20new%20Gateway%28%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22key%22%2C%20key%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22sub%22%2C%20sub%29%3B%0A%20%20%20%20%20%20gwObj.callName%28%22LeoHighlightsEvent%22%29%3B%09%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHighlights%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/*----------------------------------------------------------------------*/%0A/*%20Methods%20provided%20to%20the%20highlight%20providers...%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20*/%0A/*----------------------------------------------------------------------*/%0A%0A/**%0A%20*%20This%20will%20redirect%20the%20top%20window%20to%20the%20passed%20in%20url%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@param%20parentId%0A%20*%20@return%0A%20*/%0Afunction%20leoHL_RedirectTop%28url%2CparentId%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%09%09leoHighlightsEvent%28%22clicked.2eBay%22%29%3B%0A%20%20%20%09_leoHighlightsRedirectTop%28url%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHL_RedirectTop%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20will%20set%20the%20size%20of%20the%20iframe%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@param%20parentId%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20leoHl_setSize%28size%2Curl%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09/*%20Get%20the%20clickId%20*/%0A%20%20%20%09var%20clickId%3D_leoHighlightsGetUrlArg%28%20url%2C%22clickId%22%29%0A%20%20%20%09%0A%20%20%20%20%20%20var%20gwObj%20%3D%20new%20Gateway%28%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22size%22%2Csize%29%3B%0A%20%20%20%20%20%20if%28clickId%29%0A%20%20%20%20%20%20%20%20%20gwObj.addParam%28%22clickId%22%2CclickId+%22_blah%22%29%3B%0A%20%20%20%20%20%20gwObj.callName%28%22LeoHighlightsSetSize%22%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHl_setSize%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A&quot;); &lt;/script&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://eclipse-info.blogspot.com/feeds/4367420596319152605/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://eclipse-info.blogspot.com/2009/07/eclipse-india-summit-09-happenings-from_19.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/4367420596319152605'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/4367420596319152605'/><link rel='alternate' type='text/html' href='http://eclipse-info.blogspot.com/2009/07/eclipse-india-summit-09-happenings-from_19.html' title='Eclipse India Summit &#39;09 : Happenings from Day 2'/><author><name>Madhu</name><uri>http://www.blogger.com/profile/05191409900046165475</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinHjYGa5FscB42dzdcnMkhHexfURSsCqOwLZK4PZcxCH0Wwygq1umSZmGAmS7t62S4J6UMaq2JtR9uDUoQq8XgI2ZoLPS8wMyNGUDtT04PQOXI5hmegqqgTKgaTAT6MQ/s220/Photo+on+2011-07-22+at+17.58+%232.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjrdkkjsywLCfG6hAS3eJdev8aiKVPkSSCG6N2UqgrbY0ezwiGDjBrSdjR_EsLeCqeJLiRAYalAxVymJ9mt09_IaSHlOdDjxkoJckPntmE4tTiUMEALJHWN8qI6OtNSSQanWBOArGNuUCZc/s72-c/EclipseSummitIndiaLogo.png" height="72" width="72"/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3399985190174266183.post-6092138441013150671</id><published>2009-07-17T19:44:00.014+05:30</published><updated>2009-07-17T21:46:02.925+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Eclipse India Summit GEF Zest EMF Microsoft PDE"/><title type='text'>Eclipse India Summit &#39;09 : Happenings from Day 1</title><content type='html'>A day full of eclipse presentations and trainings.&lt;br /&gt;&lt;br /&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgbi-exZRWHh16W8gULBl_8wcmQTXH4V8adbQFQCzWhrHJfPzFojV1lyK2o-Lz-OttvfF3jZ9R3Rpj0hDzwHByfmlYZB4W6PoV6ATv0GXox_JWZQ4fk5SvkJcVGW5NuDsCPS-OwDxBvaZ4A/s1600-h/EclipseSummitIndiaLogo.png&quot;&gt;&lt;img style=&quot;margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 200px; height: 147px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgbi-exZRWHh16W8gULBl_8wcmQTXH4V8adbQFQCzWhrHJfPzFojV1lyK2o-Lz-OttvfF3jZ9R3Rpj0hDzwHByfmlYZB4W6PoV6ATv0GXox_JWZQ4fk5SvkJcVGW5NuDsCPS-OwDxBvaZ4A/s320/EclipseSummitIndiaLogo.png&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5359448021035917522&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;At 9 in the morning,  I stepped into a hall full of eclipsers. I guess,  around 300 people were filled in that hall.&lt;br /&gt;&lt;br /&gt;Instead of the first session, I would like to comment on the last session taken today, not because I have short term memory loss as in &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://www.imdb.com/title/tt0209144/&quot;&gt;Memento&lt;/a&gt;, but because it was the most enthusiastic presentation of the day. The topic was &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://www.eclipse.org/modeling/emf/&quot;&gt;EMF&lt;/a&gt;, and it was taken by the young charismatic Chetan Kumar, the author of the blog &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://tweakeclipse.blogspot.com/&quot;&gt;Eclipse Fever&lt;/a&gt; and Annamalai Chokalingam, CEO of &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://www.ancitconsulting.com/&quot;&gt;ANCIT Consulting&lt;/a&gt;. The 3 hour session started with the need for modelling in software applications, popped from the basics to the advanced EMF areas like code generation, emf queries, emf transactions, dynamic emf, teneo etc.&lt;br /&gt;&lt;br /&gt;For EMF doubts may be you can contact Chetan at &quot;&lt;span style=&quot;font-style: italic;&quot;&gt;chetankumar at gmail dot com&lt;/span&gt;&quot; and Annamalai at &quot;&lt;span style=&quot;font-style: italic;&quot;&gt;training at ancitconsulting dot com&lt;/span&gt;&quot;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDxwoGr1lvD4Y7z7TLm9pHNT7Xje8mbU-jIQAmg4mfZZRMcPuc-CFxH5xXYwRsFc5dbDFtUo83J2XB28-JgcRoULa0Wf4cgcq_69dfHEkRpHhTs8k82ROtv50hWDlC3-0XL_WWDu2as8El/s1600-h/EIS-day1.jpg&quot;&gt;&lt;img style=&quot;margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 317px; height: 320px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDxwoGr1lvD4Y7z7TLm9pHNT7Xje8mbU-jIQAmg4mfZZRMcPuc-CFxH5xXYwRsFc5dbDFtUo83J2XB28-JgcRoULa0Wf4cgcq_69dfHEkRpHhTs8k82ROtv50hWDlC3-0XL_WWDu2as8El/s320/EIS-day1.jpg&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5359433880584803106&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;(Clips from different sessions at Eclipse Summit India)&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;Thats all about the last session; now coming back to the morning sessions, guess who did the keynote for the opening talk of Eclipse India Summit 09.&lt;br /&gt;&lt;br /&gt;The keynote opening talk was made by the Director, &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://www.microsoft.com/mtc/default.mspx&quot;&gt;MTC, Microsoft&lt;/a&gt; - Mr. Ramkumar Kothandaraman. Quite surprissing to see Microsoft presenter opening an opensource get together.&lt;br /&gt;&lt;br /&gt;Microsoft has a success story on apps that run on individual machines - like Windows OS, MS Office Suite etc.  But the future will be on apps that can talk with other systems with ease.  MS wants their systems to talk with other systems. Hence, they want to learn more about open systems, and the best place to look for open systems is the open source. MS will be looking to make a mark on standards that define how the systems should talk with each other.&lt;br /&gt;&lt;br /&gt;Mr. Ramkumar touched on topics like PHP support on windows applications; &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://www.microsoft.com/azure/default.mspx&quot;&gt;Azure&lt;/a&gt;, the cloud platform; Eclipse tools for Silver Light - the &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://www.eclipse4sl.org/&quot;&gt;Eclipse4SL&lt;/a&gt;;  Java API for OpenXML, &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://poi.apache.org/&quot;&gt;Poi for Apache&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;For more details you can check at &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://www.microsoft.com/web&quot;&gt;http://www.microsoft.com/web&lt;br /&gt;&lt;br /&gt;&lt;/a&gt;After the keynote talk, the actual presentations started on three different rooms; it was difficult to choose which talk to attend as all of them seemed too good to miss.&lt;br /&gt;&lt;br /&gt;The first talk was from Mr. Illya Shinkarenko. He is a self employed software architect based in Germany (&lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://www.eclipse-training.net/about_us&quot;&gt;Eclipse Training Alliance&lt;/a&gt;). He started with the architecture of a sample RCP application and quickly drifted to the advanced stuff, but explained in a simple manner.&lt;br /&gt;&lt;br /&gt;The topics he covered includes eclipse workbench, plugin philosophy, osgi services, extension and extension points, loose coupling between plugins, adapters, data binding, ....&lt;br /&gt;&lt;br /&gt;In the other rooms Annamalai Chokalingam (ANCIT Consulting) and Lavanya Konda took a 3 hour session on &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://eclipse.org/gef/&quot;&gt;GEF and Zest&lt;/a&gt;, which covered some of the advanced techniques and in-depth look into the graphical frameworks; The other talks were by Shaun Smith on &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://www.eclipse.org/eclipselink/&quot;&gt;Eclipse Link&lt;/a&gt;, Sunil Bannur and Mayank Kumar on &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://www.adobe.com/products/flex/&quot;&gt;Adobe Flex Builder&lt;/a&gt;. &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://labs.adobe.com/technologies/flashcatalyst/&quot;&gt;Adobe Flash Catalyst&lt;/a&gt; is a new interaction design tool to rapidly create user interfaces without coding.&lt;br /&gt;&lt;br /&gt;Prakash GR from the Eclipse Platform UI team and author of &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://blog.eclipse-tips.com/&quot;&gt;Eclipse Tips blog&lt;/a&gt;, presented the topic &#39;Patterns in Eclipse&#39;. It was quite a useful session for the plugin developers; a few tips and tricks were added bonus to the audience.&lt;br /&gt;&lt;br /&gt;After lunch, Ankur Sharma, the Eclipse Platform team member and author of the blog &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://eclipsepde.wordpress.com/&quot;&gt;Eclipse PDE&lt;/a&gt; briefed on various aspects of the target platform management in Eclipse. He talked about multiple target management, API tooling etc.&lt;br /&gt;&lt;br /&gt;Mahesh Shankaran had taken a design case study of a GEF based application with lot of advanced UI features.&lt;br /&gt;&lt;br /&gt;Salt March Media and ANCIT Consulting has done a good job with organizing such a successful event for the eclipse developers in Bangalore.&lt;br /&gt;&lt;br /&gt;Lots of sessions are pending, wait until tomorrow ....&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-style: italic;&quot;&gt;madhu&lt;/span&gt;&lt;br /&gt;&lt;input id=&quot;gwProxy&quot; type=&quot;hidden&quot;&gt;&lt;!--Session data--&gt;&lt;input onclick=&quot;jsCall();&quot; id=&quot;jsProxy&quot; type=&quot;hidden&quot;&gt;&lt;div id=&quot;refHTML&quot;&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://eclipse-info.blogspot.com/feeds/6092138441013150671/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://eclipse-info.blogspot.com/2009/07/eclipse-india-summit-09-happenings-from.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/6092138441013150671'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/6092138441013150671'/><link rel='alternate' type='text/html' href='http://eclipse-info.blogspot.com/2009/07/eclipse-india-summit-09-happenings-from.html' title='Eclipse India Summit &#39;09 : Happenings from Day 1'/><author><name>Madhu</name><uri>http://www.blogger.com/profile/05191409900046165475</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinHjYGa5FscB42dzdcnMkhHexfURSsCqOwLZK4PZcxCH0Wwygq1umSZmGAmS7t62S4J6UMaq2JtR9uDUoQq8XgI2ZoLPS8wMyNGUDtT04PQOXI5hmegqqgTKgaTAT6MQ/s220/Photo+on+2011-07-22+at+17.58+%232.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgbi-exZRWHh16W8gULBl_8wcmQTXH4V8adbQFQCzWhrHJfPzFojV1lyK2o-Lz-OttvfF3jZ9R3Rpj0hDzwHByfmlYZB4W6PoV6ATv0GXox_JWZQ4fk5SvkJcVGW5NuDsCPS-OwDxBvaZ4A/s72-c/EclipseSummitIndiaLogo.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3399985190174266183.post-7603006320837648178</id><published>2009-07-16T18:26:00.009+05:30</published><updated>2009-07-16T18:57:18.506+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Eclipse India Summit"/><title type='text'>Eclipse India Summit &#39;09</title><content type='html'>An &lt;a style=&quot;color: rgb(0, 0, 153);&quot; href=&quot;http://eclipse.org/&quot;&gt;eclipse&lt;/a&gt; carnival is hosted in Bangalore for the next two days.&lt;br /&gt;&lt;br /&gt;The organizers of the hugely successful &lt;a style=&quot;color: rgb(0, 0, 153);&quot; href=&quot;http://www.devmarch.com/developersummit/&quot;&gt;Great Indian Developer Summit&lt;/a&gt;, the &lt;a style=&quot;color: rgb(0, 0, 153);&quot; href=&quot;http://www.saltmarch.com/&quot;&gt;Salt March Media&lt;/a&gt; and the &lt;leo_highlight style=&quot;border-bottom: 2px solid rgb(255, 255, 150); background: transparent none repeat scroll 0% 0%; cursor: pointer; display: inline; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;&quot; id=&quot;leoHighlights_Underline_0&quot; onclick=&quot;leoHighlightsHandleClick(&#39;leoHighlights_Underline_0&#39;)&quot; onmouseover=&quot;leoHighlightsHandleMouseOver(&#39;leoHighlights_Underline_0&#39;)&quot; onmouseout=&quot;leoHighlightsHandleMouseOut(&#39;leoHighlights_Underline_0&#39;)&quot; leohighlights_keywords=&quot;eclipse&quot; leohighlights_url=&quot;http%3A//thebrowserhighlighter.com/leonardo/highlights/keywords?keywords%3Declipse&quot;&gt;eclipse&lt;/leo_highlight&gt; based consulting firm &lt;a style=&quot;color: rgb(0, 0, 153);&quot; href=&quot;http://www.ancitconsulting.com/&quot;&gt;ANCIT Consulting&lt;/a&gt; have joined hands together to create two days of eclipsing - &lt;a style=&quot;color: rgb(0, 0, 153);&quot; href=&quot;http://eclipsesummit.com/&quot;&gt;The Eclipse Summit India&lt;/a&gt;, 2009.&lt;br /&gt;&lt;br /&gt;This is conducted on 17th and 18th of July, 2009. Its exciting to be surrounded by &lt;leo_highlight style=&quot;border-bottom: 2px solid rgb(255, 255, 150); background: transparent none repeat scroll 0% 0%; cursor: pointer; display: inline; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;&quot; id=&quot;leoHighlights_Underline_1&quot; onclick=&quot;leoHighlightsHandleClick(&#39;leoHighlights_Underline_1&#39;)&quot; onmouseover=&quot;leoHighlightsHandleMouseOver(&#39;leoHighlights_Underline_1&#39;)&quot; onmouseout=&quot;leoHighlightsHandleMouseOut(&#39;leoHighlights_Underline_1&#39;)&quot; leohighlights_keywords=&quot;eclipse&quot; leohighlights_url=&quot;http%3A//thebrowserhighlighter.com/leonardo/highlights/keywords?keywords%3Declipse&quot;&gt;eclipse&lt;/leo_highlight&gt; hips and hops, bells and rings, yums and yummies for two days - technical presentations, get togethers, contests, evangelism etcetera.&lt;br /&gt;&lt;br /&gt;For the last two years ANCIT consulting conduct the &lt;leo_highlight style=&quot;border-bottom: 2px solid rgb(255, 255, 150); background: transparent none repeat scroll 0% 0%; cursor: pointer; display: inline; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;&quot; id=&quot;leoHighlights_Underline_2&quot; onclick=&quot;leoHighlightsHandleClick(&#39;leoHighlights_Underline_2&#39;)&quot; onmouseover=&quot;leoHighlightsHandleMouseOver(&#39;leoHighlights_Underline_2&#39;)&quot; onmouseout=&quot;leoHighlightsHandleMouseOut(&#39;leoHighlights_Underline_2&#39;)&quot; leohighlights_keywords=&quot;eclipse&quot; leohighlights_url=&quot;http%3A//thebrowserhighlighter.com/leonardo/highlights/keywords?keywords%3Declipse&quot;&gt;Eclipse&lt;/leo_highlight&gt; Demo Camps in Bangalore. The demo camps have nurtured and patted my interest in &lt;leo_highlight style=&quot;border-bottom: 2px solid rgb(255, 255, 150); background: transparent none repeat scroll 0% 0%; cursor: pointer; display: inline; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;&quot; id=&quot;leoHighlights_Underline_0&quot; onclick=&quot;leoHighlightsHandleClick(&#39;leoHighlights_Underline_0&#39;)&quot; onmouseover=&quot;leoHighlightsHandleMouseOver(&#39;leoHighlights_Underline_0&#39;)&quot; onmouseout=&quot;leoHighlightsHandleMouseOut(&#39;leoHighlights_Underline_0&#39;)&quot; leohighlights_keywords=&quot;eclipse&quot; leohighlights_url=&quot;http%3A//thebrowserhighlighter.com/leonardo/highlights/keywords?keywords%3Declipse&quot;&gt;Eclipse&lt;/leo_highlight&gt; and has created atleast one more &lt;leo_highlight style=&quot;border-bottom: 2px solid rgb(255, 255, 150); background: transparent none repeat scroll 0% 0%; cursor: pointer; display: inline; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;&quot; id=&quot;leoHighlights_Underline_1&quot; onclick=&quot;leoHighlightsHandleClick(&#39;leoHighlights_Underline_1&#39;)&quot; onmouseover=&quot;leoHighlightsHandleMouseOver(&#39;leoHighlights_Underline_1&#39;)&quot; onmouseout=&quot;leoHighlightsHandleMouseOut(&#39;leoHighlights_Underline_1&#39;)&quot; leohighlights_keywords=&quot;eclipse&quot; leohighlights_url=&quot;http%3A//thebrowserhighlighter.com/leonardo/highlights/keywords?keywords%3Declipse&quot;&gt;eclipse&lt;/leo_highlight&gt; enthusiast.&lt;br /&gt;&lt;br /&gt;For the next two days, tune to &lt;a style=&quot;color: rgb(0, 0, 153);&quot; href=&quot;http://eclipse-info.blogspot.com/&quot;&gt;my blog&lt;/a&gt; to see the latest updates, events and news from the happening zone.&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-style: italic;&quot;&gt;madhu&lt;/span&gt;&lt;br /&gt;&lt;div id=&quot;refHTML&quot;&gt;&lt;/div&gt;&lt;input id=&quot;gwProxy&quot; type=&quot;hidden&quot;&gt;&lt;!--Session data--&gt;&lt;input onclick=&quot;jsCall();&quot; id=&quot;jsProxy&quot; type=&quot;hidden&quot;&gt;&lt;div id=&quot;refHTML&quot;&gt;&lt;/div&gt;&lt;span id=&quot;leoHighlights_iframe_modal_span_container&quot;&gt;&lt;div id=&quot;leoHighlights_iframe_modal_div_container&quot; style=&quot;border: 1px solid black; position: absolute; visibility: hidden; display: none; width: 394px; height: 40px; z-index: 32768; background-color: white;&quot; onmouseover=&quot;leoHighlightsHandleIFrameMouseOver();&quot; onmouseout=&quot;leoHighlightsHandleIFrameMouseOut();&quot;&gt;                                                     &lt;div id=&quot;leo_iFrame_closebar&quot; style=&quot;position: absolute; top: 0px; left: 0px; width: 394px; height: 40px; z-index: 32768; background-image: url(chrome://shim/content/highlightsFilter-1/header.gif);&quot;&gt;       &lt;a href=&quot;javascript:%20leoHighlightsIFrameClose();&quot;&gt;          &lt;div id=&quot;leo_iFrame_close&quot; style=&quot;position: absolute; top: 10px; left: 360px; width: 20px; height: 20px;&quot;&gt;          &lt;/div&gt;       &lt;/a&gt;    &lt;/div&gt;        &lt;iframe id=&quot;leoHighlights_iframe&quot; name=&quot;leoHighlights_iframe&quot; title=&quot;leoHighlights_iframe&quot; src=&quot;about:blank&quot; vspace=&quot;0&quot; hspace=&quot;0&quot; marginwidth=&quot;0&quot; marginheight=&quot;0&quot; style=&quot;position: absolute; top: 40px; left: 0px;&quot; width=&quot;250&quot; frameborder=&quot;0&quot; height=&quot;100&quot; scrolling=&quot;no&quot;&gt;    &lt;/iframe&gt;     &lt;/div&gt;  &lt;script defer=&quot;defer&quot; type=&quot;text/javascript&quot;&gt;    createInlineScriptElement(&quot;var%20LEO_HIGHLIGHTS_DEBUG%20%3D%20true%3B%0Avar%20LEO_HIGHLIGHTS_DEBUG_POS%20%3D%20false%3B%0Avar%20LEO_HIGHLIGHTS_INFINITE_LOOP_COUNT%20%3D%20300%3B%0Avar%20LEO_HIGHLIGHTS_MAX_HIGHLIGHTS%20%3D%20200%3B%0Avar%20LEO_HIGHLIGHTS_IFRAME_ID%20%3D%20%22leoHighlights_iframe%22%3B%0Avar%20LEO_HIGHLIGHTS_IFRAME_DIV_ID%20%3D%20%22leoHighlights_iframe_modal_div_container%22%3B%0Avar%20LEO_HIGHLIGHTS_SHOW_DELAY_MS%20%3D%20300%3B%0Avar%20LEO_HIGHLIGHTS_HIDE_DELAY_MS%20%3D%20750%3B%0Avar%20LEO_HIGHLIGHTS_BACKGROUND_STYLE_DEFAULT%20%3D%20%22transparent%20none%20repeat%20scroll%200%25%200%25%22%3B%0Avar%20LEO_HIGHLIGHTS_BACKGROUND_STYLE_HOVER%20%3D%20%20%20%22rgb%28245%2C245%2C0%29%20none%20repeat%20scroll%200%25%200%25%22%3B%0Avar%20_leoHighlightsPrevElem%20%3D%20null%3B%0A%0A/**%0A%20*%20General%20method%20used%20to%20debug%20exceptions%0A%20*%20%0A%20*%20@param%20location%0A%20*%20@param%20e%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsReportExeception%28location%2Ce%29%0A%7B%0A%20%20%20if%28LEO_HIGHLIGHTS_DEBUG%29%0A%20%20%20%7B%0A%20%20%20%20%20%20alert%28%22EXCEPTION%3A%20%22+location+%22%3A%20%22+e+%0A%20%20%20%20%20%20%20%20%20%20%20%20%22%5Cn%5Ct%22+e.name+%22%5Cn%5Ct%22+%28e.number%260xFFFF%29+%22%5Cn%5Ct%22+e.description%29%3B%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20is%20a%20dimensions%20object%0A%20*%20%0A%20*%20@param%20width%0A%20*%20@param%20height%0A%20*%20@return%0A%20*/%0Afunction%20LeoHighlightsDimension%28width%2Cheight%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09this.width%3Dwidth%3B%0A%20%20%20%09this.height%3Dheight%3B%0A%20%20%20%09this.toString%3Dfunction%28%29%20%7B%20return%20%28%22%28%22+this.width+%22%2C%22+this.height+%22%29%22%29%3B%7D%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22new%20LeoHighlightsDimension%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A%20*%20This%20is%20a%20Position%20object%0A%20*%20%0A%20*%20@param%20x%0A%20*%20@param%20y%0A%20*%20@return%0A%20*/%0Afunction%20LeoHighlightsPosition%28x%2Cy%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09this.x%3Dx%3B%0A%20%20%20%09this.y%3Dy%3B%0A%20%20%20%09this.toString%3Dfunction%28%29%20%7B%20return%20%28%22%28%22+this.x+%22%2C%22+this.y+%22%29%22%29%3B%7D%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22new%20LeoHighlightsPosition%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0Avar%20LEO_HIGHLIGHTS_ADJUSTMENT%20%3D%20new%20LeoHighlightsPosition%283%2C3%29%3B%0Avar%20LEO_HIGHLIGHTS_IFRAME_HOVER_SIZE%20%3D%20new%20LeoHighlightsDimension%28394%2C236%29%3B%0Avar%20LEO_HIGHLIGHTS_IFRAME_CLICK_SIZE%20%3D%20new%20LeoHighlightsDimension%28394%2C512%29%3B%0Avar%20LEO_HIGHLIGHTS_CLOSE_BAR_HEIGHT%20%3D%2040%3B%0Avar%20LEO_HIGHLIGHTS_DIV_HOVER_SIZE%20%3D%20new%20LeoHighlightsDimension%28LEO_HIGHLIGHTS_IFRAME_HOVER_SIZE.width%2C%0A%09%09%09LEO_HIGHLIGHTS_IFRAME_HOVER_SIZE.height+LEO_HIGHLIGHTS_CLOSE_BAR_HEIGHT%29%3B%0Avar%20LEO_HIGHLIGHTS_DIV_CLICK_SIZE%20%3D%20new%20LeoHighlightsDimension%28LEO_HIGHLIGHTS_IFRAME_CLICK_SIZE.width%2C%0A%09%09LEO_HIGHLIGHTS_IFRAME_CLICK_SIZE.height+LEO_HIGHLIGHTS_CLOSE_BAR_HEIGHT%29%3B%0A%0A%0A/**%0A%20*%20Sets%20the%20size%20of%20the%20passed%20in%20element%0A%20*%20%0A%20*%20@param%20elem%0A%20*%20@param%20dim%20%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsSetSize%28elem%2Cdim%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09//%20Set%20the%20popup%20location%0A%20%20%20%09elem.style.width%20%3D%20dim.width%20+%20%22px%22%3B%0A%20%20%20%09if%28elem.width%29%0A%20%20%20%09%09elem.width%3Ddim.width%3B%0A%20%20%20%09elem.style.height%20%20%3D%20dim.height%20+%20%22px%22%3B%0A%20%20%20%09if%28elem.height%29%0A%20%20%20%09%09elem.height%3Ddim.height%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsSetSize%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A%20*%20This%20can%20be%20used%20for%20a%20simple%20one%20argument%20callback%0A%20*%0A%20*%20@param%20callName%0A%20*%20@param%20argName%0A%20*%20@param%20argVal%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsSimpleGwCallBack%28callName%2CargName%2C%20argVal%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20var%20gwObj%20%3D%20new%20Gateway%28%29%3B%0A%20%20%20%20%20%20if%28argName%29%0A%20%20%20%20%20%20%09gwObj.addParam%28argName%2CargVal%29%3B%0A%20%20%20%20%20%20gwObj.callName%28callName%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsSimpleGwCallBack%28%29%20%22+callName%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20gets%20a%20url%20argument%20from%20the%20current%20document.%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsGetUrlArg%28url%2C%20name%20%29%0A%7B%0A%09%20%20name%20%3D%20name.replace%28/[%5C[]/%2C%22%5C%5C%5C[%22%29.replace%28/[%5C]]/%2C%22%5C%5C%5C]%22%29%3B%0A%09%20%20var%20regexS%20%3D%20%22[%5C%5C?%26]%22+name+%22%3D%28[^%26%23]*%29%22%3B%0A%09%20%20var%20regex%20%3D%20new%20RegExp%28%20regexS%20%29%3B%0A%09%20%20var%20results%20%3D%20regex.exec%28url%29%3B%0A%09%20%20if%28%20results%20%3D%3D%20null%20%29%0A%09%20%20%20%20return%20%22%22%3B%0A%09%20%20else%0A%09%20%20%20%20return%20results[1]%3B%0A%7D%0A%0A%0A/**%0A%20*%20This%20allows%20to%20redirect%20the%20top%20window%20to%20the%20passed%20in%20url%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsRedirectTop%28url%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%20%20%20%09%0A%20%20%20%09top.location%3Durl%3B%09%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsRedirectTop%28%29%22%2Ce%29%3B%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20is%20used%20to%20report%20events%20to%20the%20plugin%0A%20*%20@param%20key%0A%20*%20@param%20sub%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsEvent%28key%2C%20sub%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20var%20gwObj%20%3D%20new%20Gateway%28%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22key%22%2C%20key%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22sub%22%2C%20sub%29%3B%0A%20%20%20%20%20%20gwObj.callName%28%22leoHighlightsEvent%22%29%3B%09%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsEvent%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20will%20find%20an%20element%20by%20Id%0A%20*%20%0A%20*%20@param%20elemId%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsFindElementById%28elemId%29%0A%7B%0A%09try%0A%09%7B%0A%09%09var%20elem%3Ddocument.getElementById%28elemId%29%3B%0A%09%09if%28elem%29%0A%09%09%09return%20elem%3B%0A%09%09%0A%09%09/*%20This%20is%20the%20handling%20for%20IE%20*/%0A%09%09if%28document.all%29%0A%09%09%7B%0A%09%09%09elem%3Ddocument.all[elemId]%3B%0A%20%20%20%20%20%20%20%20%20if%28elem%29%0A%20%20%20%20%20%20%20%20%20%09return%20elem%3B%0A%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20for%20%28%20var%20i%20%3D%20%28document.all.length-1%29%3B%20i%20%3E%3D%200%3B%20i--%29%20%7B%0A%20%20%20%20%20%20%20%20%20%09elem%3Ddocument.all[i]%3B%0A%20%20%20%20%20%20%20%20%20%09if%28elem.id%3D%3DelemId%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20elem%3B%0A%20%20%20%20%20%20%20%20%20%7D%0A%09%09%7D%0A%09%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsFindElementById%28%29%22%2Ce%29%3B%0A%20%20%20%7D%0A%09return%20null%3B%0A%7D%0A%0A/**%0A%20*%20Get%20the%20location%20of%20one%20element%20relative%20to%20a%20parent%20reference%0A%20*%0A%20*%20@param%20ref%0A%20*%20%20%20%20%20%20%20%20%20%20%20the%20reference%20element%2C%20this%20must%20be%20a%20parent%20of%20the%20passed%20in%0A%20*%20%20%20%20%20%20%20%20%20%20%20element%0A%20*%20@param%20elem%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsGetLocation%28ref%2C%20elem%29%20%7B%0A%20%20%20var%20count%20%3D%200%3B%0A%20%20%20var%20location%20%3D%20new%20LeoHighlightsPosition%280%2C0%29%3B%0A%20%20%20var%20walk%20%3D%20elem%3B%0A%20%20%20while%20%28walk%20%21%3D%20null%20%26%26%20walk%20%21%3D%20ref%20%26%26%20count%20%3C%20LEO_HIGHLIGHTS_INFINITE_LOOP_COUNT%29%20%7B%0A%20%20%20%20%20%20location.x%20+%3D%20walk.offsetLeft%3B%0A%20%20%20%20%20%20location.y%20+%3D%20walk.offsetTop%3B%0A%20%20%20%20%20%20walk%20%3D%20walk.offsetParent%3B%0A%20%20%20%20%20%20count++%3B%0A%20%20%20%7D%0A%0A%20%20%20return%20location%3B%0A%7D%0A%0A/**%0A%20*%20This%20is%20used%20to%20update%20the%20position%20of%20an%20element%20as%20a%20popup%0A%20*%20%0A%20*%20@param%20IFrame%0A%20*%20@param%20anchor%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsUpdatePopupPos%28iFrame%2Canchor%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20//%20Gets%20the%20scrolled%20location%20for%20x%20and%20y%0A%20%20%20%20%20%20var%20scrolledPos%3Dnew%20LeoHighlightsPosition%280%2C0%29%3B%0A%20%20%20%20%20%20if%28%20self.pageYOffset%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20scrolledPos.x%20%3D%20self.pageXOffset%3B%0A%20%20%20%20%20%20%20%20%20scrolledPos.y%20%3D%20self.pageYOffset%3B%0A%20%20%20%20%20%20%7D%20else%20if%28%20document.documentElement%20%26%26%20document.documentElement.scrollTop%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20scrolledPos.x%20%3D%20document.documentElement.scrollLeft%3B%0A%20%20%20%20%20%20%20%20%20scrolledPos.y%20%3D%20document.documentElement.scrollTop%3B%0A%20%20%20%20%20%20%7D%20else%20if%28%20document.body%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20scrolledPos.x%20%3D%20document.body.scrollLeft%3B%0A%20%20%20%20%20%20%20%20%20scrolledPos.y%20%3D%20document.body.scrollTop%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20/*%20Get%20the%20total%20dimensions%20to%20see%20what%20scroll%20bars%20might%20be%20active%20*/%0A%20%20%20%20%20%20var%20totalDim%3Dnew%20LeoHighlightsDimension%280%2C0%29%0A%20%20%20%20%20%20if%20%28document.all%20%26%26%20document.documentElement%20%26%26%20%0A%20%20%20%20%20%20%09document.documentElement.clientHeight%26%26document.documentElement.clientWidth%29%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%09totalDim.width%20%3D%20document.documentElement.scrollWidth%3B%0A%20%20%20%20%20%20%09totalDim.height%20%3D%20document.documentElement.scrollHeight%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20else%20if%20%28document.all%29%0A%20%20%20%20%20%20%7B%20/*%20This%20is%20in%20IE%20*/%0A%20%20%20%20%20%09%20%09totalDim.width%20%3D%20document.body.scrollWidth%3B%0A%20%20%20%20%20%20%09totalDim.height%20%3D%20document.body.scrollHeight%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20else%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%09%20totalDim.width%20%3D%20document.width%3B%0A%20%20%20%20%20%20%09%20totalDim.height%20%3D%20document.height%3B%0A%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20//%20Gets%20the%20location%20of%20the%20available%20screen%20space%0A%20%20%20%20%20%20var%20centerDim%3Dnew%20LeoHighlightsDimension%280%2C0%29%3B%0A%20%20%20%20%20%20if%28self.innerWidth%20%26%26%20self.innerHeight%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20centerDim.width%20%3D%20self.innerWidth-%28totalDim.height%3Eself.innerHeight?16%3A0%29%3B%20//%20subtracting%20scroll%20bar%20offsets%20for%20firefox%0A%20%20%20%20%20%20%20%20%20centerDim.height%20%3D%20self.innerHeight-%28totalDim.width%3Eself.innerWidth?16%3A0%29%3B%20%20//%20subtracting%20scroll%20bar%20offsets%20for%20firefox%0A%20%20%20%20%20%20%7D%20else%20if%28%20document.documentElement%20%26%26%20document.documentElement.clientHeight%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20centerDim.width%20%3D%20document.documentElement.clientWidth%3B%0A%20%20%20%20%20%20%20%20%20centerDim.height%20%3D%20document.documentElement.clientHeight%3B%0A%20%20%20%20%20%20%7D%20else%20if%28%20document.body%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20centerDim.width%20%3D%20document.body.clientWidth%3B%0A%20%20%20%20%20%20%20%20%20centerDim.height%20%3D%20document.body.clientHeight%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20//%20Get%20the%20current%20dimension%20of%20the%20popup%20element%0A%20%20%20%20%20%20var%20iFrameDim%3Dnew%20LeoHighlightsDimension%28iFrame.offsetWidth%2CiFrame.offsetHeight%29%0A%20%20%20%20%20%20if%20%28iFrameDim.width%20%3C%3D%200%29%0A%20%20%20%20%20%20%09iFrameDim.width%20%3D%20iFrame.style.width.substring%280%2C%20iFrame.style.width.indexOf%28%27px%27%29%29%3B%0A%20%20%20%20%20%20if%20%28iFrameDim.height%20%3C%3D%200%29%0A%20%20%20%20%20%20%09iFrameDim.height%20%3D%20iFrame.style.height.substring%280%2C%20iFrame.style.height.indexOf%28%27px%27%29%29%3B%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20/*%20Calculate%20the%20position%2C%20lower%20right%20hand%20corner%20by%20default%20*/%0A%20%20%20%20%20%20var%20position%3Dnew%20LeoHighlightsPosition%280%2C0%29%3B%0A%20%20%20%20%20%20position.x%3DscrolledPos.x+centerDim.width-iFrameDim.width-LEO_HIGHLIGHTS_ADJUSTMENT.x%3B%0A%20%20%20%20%20%20position.y%3DscrolledPos.y+centerDim.height-iFrameDim.height-LEO_HIGHLIGHTS_ADJUSTMENT.y%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20if%28anchor%21%3Dnull%29%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20//centerDim%20in%20relation%20to%20the%20anchor%20element%20if%20available%0A%20%20%20%20%20%20%20%20%20var%20topOrBottom%20%3D%20false%3B%0A%20%20%20%20%20%20%20%20%20var%20anchorPos%3D_leoHighlightsGetLocation%28document.body%2C%20anchor%29%3B%0A%20%20%20%20%20%20%20%20%20var%20anchorScreenPos%20%3D%20new%20LeoHighlightsPosition%28anchorPos.x-scrolledPos.x%2CanchorPos.y-scrolledPos.y%29%3B%0A%20%20%20%20%20%20%20%20%20var%20anchorDim%3Dnew%20LeoHighlightsDimension%28anchor.offsetWidth%2Canchor.offsetHeight%29%0A%20%20%20%20%20%20%20%20%20if%20%28anchorDim.width%20%3C%3D%200%29%0A%20%20%20%20%20%20%20%20%20%09anchorDim.width%20%3D%20anchor.style.width.substring%280%2C%20anchor.style.width.indexOf%28%27px%27%29%29%3B%0A%20%20%20%20%20%20%20%20%20if%20%28anchorDim.height%20%3C%3D%200%29%0A%20%20%20%20%20%20%20%20%20%09anchorDim.height%20%3D%20anchor.style.height.substring%280%2C%20anchor.style.height.indexOf%28%27px%27%29%29%3B%0A%0A%20%20%20%20%20%20%20%20%20//%20Check%20if%20the%20popup%20can%20be%20shown%20above%20or%20below%20the%20element%0A%20%20%20%20%20%20%20%20%20if%20%28centerDim.height%20-%20anchorDim.height%20-%20iFrameDim.height%20-%20anchorScreenPos.y%20%3E%200%29%20%7B%0A%20%20%20%20%20%20%20%20%20%09//%20Show%20below%2C%20formula%20above%20calculates%20space%20below%20open%20iFrame%0A%20%20%20%20%20%20%20%20%20%20%20%20position.y%20%3D%20anchorPos.y%20+%20anchorDim.height%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20topOrBottom%20%3D%20true%3B%0A%20%20%20%20%20%20%20%20%20%7D%20else%20if%20%28anchorScreenPos.y%20-%20anchorDim.height%20-%20iFrameDim.height%20%3E%200%29%20%7B%0A%20%20%20%20%20%20%20%20%20%09//%20Show%20above%2C%20formula%20above%20calculates%20space%20above%20open%20iFrame%0A%20%20%20%20%20%20%20%20%20%09position.y%20%3D%20anchorPos.y%20-%20iFrameDim.height%20-%20anchorDim.height%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20topOrBottom%20%3D%20true%3B%0A%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20if%20%28topOrBottom%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20//%20We%20attempt%20top%20attach%20the%20window%20to%20the%20element%0A%20%20%20%20%20%20%20%20%20%09position.x%20%3D%20anchorPos.x%20-%20iFrameDim.width%20/%202%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20%28position.x%20%3C%200%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%09position.x%20%3D%200%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20else%20if%20%28position.x%20+%20iFrameDim.width%20%3E%20scrolledPos.x%20+%20centerDim.width%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%09position.x%20%3D%20scrolledPos.x%20+%20centerDim.width%20-%20iFrameDim.width%3B%0A%20%20%20%20%20%20%20%20%20%7D%20else%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20//%20Attempt%20to%20align%20on%20the%20right%20or%20left%20hand%20side%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20%28centerDim.width%20-%20anchorDim.Width%20-%20iFrameDim.width%20-%20anchorScreenPos.x%20%3E%200%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20position.x%20%3D%20anchorPos.x%20+%20anchorDim.width%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20else%20if%20%28anchorScreenPos.x%20-%20anchorDim.width%20-%20iFrameDim.width%20%3E%200%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%09position.x%20%3D%20anchorPos.x%20-%20anchorDim.width%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20else%20%20//%20default%20to%20below%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20position.y%20%3D%20anchorPos.y%20+%20anchorDim.height%3B%0A%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20/*%20Make%20sure%20that%20we%20don%27t%20go%20passed%20the%20right%20hand%20border%20*/%0A%20%20%20%20%20%20if%28position.x+iFrameDim.width%3EcenterDim.width-20%29%0A%20%20%20%20%20%20%09position.x%3DcenterDim.width-%28iFrameDim.width+20%29%3B%0A%20%20%20%20%20%20%09%09%0A%20%20%20%20%20%20//%20Make%20sure%20that%20we%20didn%27t%20go%20passed%20the%20start%0A%20%20%20%20%20%20if%28position.x%3C0%29%0A%20%20%20%20%20%20%20%20%20position.x%3D0%3B%0A%20%20%20%20%20%20if%28position.y%3C0%29%0A%20%20%20%20%20%20%09position.y%3D0%3B%0A%0A%20%20%20%20%20%20if%20%28LEO_HIGHLIGHTS_DEBUG_POS%26%26LEO_HIGHLIGHTS_DEBUG%29%20%7B%0A%20%20%20%20%20%20%20%20%20alert%28%22%20Popup%20info%20id%3A%20%20%20%20%20%20%20%22%20+iFrame.id+%22%20-%20%22+anchor.id%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5Cnscrolled%20%20%20%20%20%20%20%20%20%20%22%20+%20scrolledPos%20%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5Cncenter/visible%20%20%20%20%22%20+%20centerDim%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5Cnanchor%20%28absolute%29%20%22%20+%20anchorPos%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5Cnanchor%20%28screen%29%20%20%20%22%20+%20anchorScreenPos%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5CnSize%20%28anchor%29%20%20%20%20%20%22%20+%20anchorDim%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5CnSize%20%28popup%29%20%20%20%20%20%20%22%20+%20iFrameDim%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5CnResult%20pos%20%20%20%20%20%20%20%20%22%20+%20position%29%3B%0A%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20//%20Set%20the%20popup%20location%0A%20%20%20%20%20%20iFrame.style.left%20%3D%20position.x%20+%20%22px%22%3B%0A%20%20%20%20%20%20iFrame.style.top%20%20%3D%20position.y%20+%20%22px%22%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsUpdatePopupPos%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A%0A/**%0A%20*%20This%20will%20show%20the%20passed%20in%20element%20as%20a%20popup%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@param%20size%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsShowPopup%28anchorId%2Csize%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09var%20popup%3Dnew%20LeoHighlightsPopup%28anchorId%2Csize%29%3B%0A%20%20%20%09popup.show%28%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsShowPopup%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A%0A/**%0A%20*%20This%20will%20transform%20the%20passed%20in%20url%20to%20a%20rover%20url%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsGetRoverUrl%28url%29%0A%7B%0A%09var%20rover%3D%22711-36858-13496-14%22%3B%0A%09var%20roverUrl%3D%22http%3A//rover.ebay.com/rover/1/%22+rover+%22/4?%26mpre%3D%22+encodeURI%28url%29%3B%0A%09%0A%09return%20roverUrl%3B%0A%7D%0A%0A/**%0A%20*%20Class%20for%20a%20Popup%20%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@param%20size%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20LeoHighlightsPopup%28anchorId%2Csize%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09this.anchorId%3DanchorId%3B%0A%20%20%20%09this.anchor%3D_leoHighlightsFindElementById%28this.anchorId%29%3B%0A%20%20%20%09this.iFrame%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_ID%29%3B%0A%20%20%20%09this.iFrameDiv%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_DIV_ID%29%3B%0A%20%20%20%09%0A%20%20%20%09var%20url%3Dunescape%28this.anchor.getAttribute%28%27leoHighlights_url%27%29%29%3B%0A%0A%20%20%20%09this.iFrame.src%3Durl%3B%0A%0A%20%20%20%09leoHighlightsSetSize%28size%29%3B%0A%20%20%20%09%0A%20%20%20%09this.updatePos%3Dfunction%28%29%20%7B%20_leoHighlightsUpdatePopupPos%28this.iFrameDiv%2Cthis.anchor%29%7D%3B%0A%20%20%20%09this.show%3Dfunction%28%29%20%7Bthis.updatePos%28%29%3B%20this.iFrameDiv.style.visibility%20%3D%20%22visible%22%3B%20this.iFrameDiv.style.display%20%3D%20%22block%22%3B%20this.updatePos%28%29%3B%7D%20%20%20%09%09%0A%20%20%20%09this.scroll%3Dfunction%28%29%20%7B%20this.updatePos%28%29%3B%7D%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22new%20LeoHighlightsPopup%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/**%0A*%0A*%20This%20can%20be%20used%20to%20close%20an%20iframe%0A*%0A*%20@param%20id%0A*%20@return%0A*/%0Afunction%20leoHighlightsSetSize%28size%2CclickId%29%0A%7B%0A%09try%0A%09%7B%0A%09%09/*%20Get%20the%20appropriate%20sizes%20*/%0A%20%20%09%09var%20iFrame%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_ID%29%3B%0A%20%20%09%09var%20iFrameDiv%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_DIV_ID%29%3B%0A%20%20%09%09%0A%20%20%09%09/*%20Figure%20out%20the%20correct%20sizes%20*/%0A%20%20%09%09var%20iFrameSize%3D%28size%3D%3D1%29?LEO_HIGHLIGHTS_IFRAME_CLICK_SIZE%3ALEO_HIGHLIGHTS_IFRAME_HOVER_SIZE%3B%0A%20%20%09%09var%20divSize%3D%28size%3D%3D1%29?LEO_HIGHLIGHTS_DIV_CLICK_SIZE%3ALEO_HIGHLIGHTS_DIV_HOVER_SIZE%3B%0A%0A%20%20%09%09/*%20Refresh%20the%20iFrame%27s%20url%2C%20by%20removing%20the%20size%20arg%20and%20adding%20it%20again%20*/%0A%20%20%09%09var%20url%3DiFrame.src%3B%0A%20%20%09%09var%20idx%3Durl.indexOf%28%22%26size%3D%22%29%3B%0A%20%20%09%09if%28idx%3E%3D0%29%0A%20%20%09%09%09url%3Durl.substring%280%2Cidx%29%3B%0A%09%09url+%3D%28%22%26size%3D%22+size%29%3B%0A%09%09if%28clickId%29%0A%09%09%09url+%3D%28%22%26clickId%3D%22+clickId%29%3B%0A%09%09%0A%20%20%09%09iFrame.src%3Durl%3B%0A%20%20%09%09%0A%20%20%09%09/*%20Clear%20the%20hover%20flag%2C%20if%20the%20user%20shows%20this%20at%20full%20size%20*/%0A%20%20%09%09if%28size%3D%3D1%26%26_leoHighlightsPrevElem%29%0A%20%20%09%09%09_leoHighlightsPrevElem.hover%3Dfalse%3B%0A%20%20%09%09%0A%20%20%09%09_leoHighlightsSetSize%28iFrame%2CiFrameSize%29%3B%0A%20%20%09%09_leoHighlightsSetSize%28iFrameDiv%2CdivSize%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsSetSize%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A%20*%20Start%20the%20popup%20a%20little%20bit%20delayed.%0A%20*%20Somehow%20IE%20needs%20some%20time%20to%20find%20the%20element%20by%20id.%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@param%20size%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsShowPopup%28anchorId%2Csize%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%09%09var%20elem%3D_leoHighlightsFindElementById%28anchorId%29%3B%0A%20%20%09%09if%28_leoHighlightsPrevElem%26%26%28_leoHighlightsPrevElem%21%3Delem%29%29%0A%20%20%09%09%09_leoHighlightsPrevElem.shown%3Dfalse%3B%0A%20%20%09%09elem.shown%3Dtrue%3B%0A%09%09_leoHighlightsPrevElem%3Delem%3B%0A%20%20%20%09%0A%20%20%20%09/*%20FF%20needs%20to%20find%20the%20element%20first%20*/%0A%20%20%20%09_leoHighlightsFindElementById%28anchorId%29%3B%0A%20%20%20%09%0A%20%20%20%09setTimeout%28%22_leoHighlightsShowPopup%28%5C%27%22+anchorId+%22%5C%27%2C%5C%27%22+size+%22%5C%27%29%3B%22%2C10%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHighlightsShowPopup%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A*%0A*%20This%20can%20be%20used%20to%20close%20an%20iframe%0A*%0A*%20@param%20id%0A*%20@return%0A*/%0Afunction%20leoHighlightsHideElem%28id%29%0A%7B%0A%09try%0A%09%7B%0A%09%09/*%20Get%20the%20appropriate%20sizes%20*/%0A%20%20%09%09var%20elem%3D_leoHighlightsFindElementById%28id%29%3B%0A%20%20%09%09if%28elem%29%0A%20%20%09%09%09elem.style.visibility%3D%22hidden%22%3B%0A%20%20%09%09%0A%20%20%09%09/*%20Clear%20the%20page%20for%20the%20next%20run%20through%20*/%0A%20%20%09%09var%20iFrame%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_ID%29%3B%0A%20%20%09%09if%28iFrame%29%0A%20%20%09%09%09iFrame.src%3D%22about%3Ablank%22%3B%0A%20%20%09%09%0A%20%20%09%09%0A%20%20%09%09if%28_leoHighlightsPrevElem%29%0A%20%20%09%09%7B%0A%20%20%09%09%09_leoHighlightsPrevElem.shown%3Dfalse%3B%0A%20%20%09%09%09_leoHighlightsPrevElem%3Dnull%3B%0A%20%20%09%09%7D%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHideElem%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A*%0A*%20This%20can%20be%20used%20to%20close%20an%20iframe.%0A*%20Since%20the%20iFrame%20is%20reused%20the%20frame%20only%20gets%20hidden%0A*%0A*%20@return%0A*/%0Afunction%20leoHighlightsIFrameClose%28%29%0A%7B%0A%20%20try%0A%20%20%7B%0A%09%20%20_leoHighlightsSimpleGwCallBack%28%22LeoHighlightsHideIFrame%22%29%3B%0A%20%20%7D%0A%20%20catch%28e%29%0A%20%20%7B%0A%09%20%20_leoHighlightsReportExeception%28%22leoHighlightsIFrameClose%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20should%20handle%20the%20click%20events%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleClick%28anchorId%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%09%09var%20anchor%3D_leoHighlightsFindElementById%28anchorId%29%3B%0A%20%20%09%09anchor.hover%3Dfalse%3B%0A%20%20%09%09if%28anchor.startTimer%29%0A%20%20%09%09%09clearTimeout%28anchor.startTimer%29%3B%0A%20%20%20%09%0A%20%20%09%09leoHighlightsEvent%28%22clicked%22%29%3B%0A%20%20%20%09leoHighlightsShowPopup%28anchorId%2C1%29%3B%0A%20%20%20%09return%20false%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHighlightsHandleClick%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A%20*%20This%20should%20handle%20the%20hover%20events%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleHover%28anchorId%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%09%09var%20anchor%3D_leoHighlightsFindElementById%28anchorId%29%3B%0A%20%20%09%09anchor.hover%3Dtrue%3B%0A%20%20%09%09%0A%20%20%09%09leoHighlightsEvent%28%22hovered%22%29%3B%0A%20%20%20%09leoHighlightsShowPopup%28anchorId%2C0%29%3B%0A%20%20%20%09return%20false%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHighlightsHandleHover%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A%20*%20This%20will%20handle%20the%20mouse%20over%20setup%20timers%20for%20the%20appropriate%20timers%0A%20*%20%0A%20*%20@param%20id%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleMouseOver%28id%29%0A%7B%0A%09try%0A%09%7B%0A%09%09var%20anchor%3D_leoHighlightsFindElementById%28id%29%3B%09%09%0A%0A%09%09/*%20Clear%20the%20end%20timer%20if%20required%20*/%0A%09%09if%28anchor.endTimer%29%0A%09%09%09clearTimeout%28anchor.endTimer%29%3B%0A%09%09anchor.endTimer%3Dnull%3B%0A%09%09%0A%09%09anchor.style.background%3DLEO_HIGHLIGHTS_BACKGROUND_STYLE_HOVER%3B%0A%09%09%0A%09%09/*%20The%20element%20is%20already%20showing%20we%20are%20done%20*/%0A%09%09if%28anchor.shown%29%0A%09%09%09return%3B%0A%09%09%0A%09%09/*%20Setup%20the%20start%20timer%20if%20required%20*/%0A%09%09anchor.startTimer%3DsetTimeout%28function%28%29%7B%0A%09%09%09leoHighlightsHandleHover%28anchor.id%29%3B%0A%09%09%09anchor.hover%3Dtrue%3B%0A%09%09%09%7D%2C%0A%09%09%09LEO_HIGHLIGHTS_SHOW_DELAY_MS%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHandleMouseOver%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A%20*%20This%20will%20handle%20the%20mouse%20over%20setup%20timers%20for%20the%20appropriate%20timers%0A%20*%20%0A%20*%20@param%20id%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleMouseOut%28id%29%0A%7B%0A%09try%0A%09%7B%09%0A%09%09var%20anchor%3D_leoHighlightsFindElementById%28id%29%3B%0A%09%09%0A%09%09/*%20Clear%20the%20start%20timer%20if%20required%20*/%0A%09%09if%28anchor.startTimer%29%0A%09%09%09clearTimeout%28anchor.startTimer%29%3B%0A%09%09anchor.startTimer%3Dnull%3B%0A%09%09%0A%09%09anchor.style.background%3DLEO_HIGHLIGHTS_BACKGROUND_STYLE_DEFAULT%3B%0A%09%09if%28%21anchor.shown||%21anchor.hover%29%0A%09%09%09return%3B%0A%09%09%0A%09%09/*%20Setup%20the%20start%20timer%20if%20required%20*/%0A%09%09anchor.endTimer%3DsetTimeout%28function%28%29%7B%0A%09%09%09leoHighlightsHideElem%28LEO_HIGHLIGHTS_IFRAME_DIV_ID%29%3B%0A%09%09%09anchor.shown%3Dfalse%3B%0A%09%09%09_leoHighlightsPrevElem%3Dnull%3B%0A%09%09%09%7D%2CLEO_HIGHLIGHTS_HIDE_DELAY_MS%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHandleMouseOut%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A%20*%20This%20handles%20the%20mouse%20movement%20into%20the%20currently%20opened%20window.%0A%20*%20Just%20clear%20the%20close%20timer%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleIFrameMouseOver%28%29%0A%7B%0A%09try%0A%09%7B%0A%09%09if%28_leoHighlightsPrevElem%26%26_leoHighlightsPrevElem.endTimer%29%0A%09%09%09clearTimeout%28_leoHighlightsPrevElem.endTimer%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHandleIFrameMouseOver%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A%20*%20This%20handles%20the%20mouse%20movement%20into%20the%20currently%20opened%20window.%0A%20*%20Just%20clear%20the%20close%20timer%0A%20*%20%0A%20*%20@param%20id%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleIFrameMouseOut%28%29%0A%7B%0A%09try%0A%09%7B%0A%09%09if%28_leoHighlightsPrevElem%29%0A%09%09%09leoHighlightsHandleMouseOut%28_leoHighlightsPrevElem.id%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHandleIFrameMouseOut%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A/**%0A%20*%20This%20is%20a%20method%20is%20used%20to%20make%20the%20javascript%20within%20IE%20runnable%0A%20*/%0Avar%20leoHighlightsRanUpdateDivs%3Dfalse%3B%0Afunction%20leoHighlightsUpdateDivs%28%29%0A%7B%0A%09try%0A%09%7B%0A%09%09/*%20Check%20if%20this%20is%20an%20IE%20browser%20and%20if%20divs%20have%20been%20updated%20already%20*/%0A%09%09if%28document.all%26%26%21leoHighlightsRanUpdateDivs%29%0A%09%09%7B%0A%09%09%09leoHighlightsRanUpdateDivs%3Dtrue%3B%20//%20Set%20early%20to%20prevent%20running%20twice%0A%09%09%09for%28var%20i%3D0%3Bi%3CLEO_HIGHLIGHTS_MAX_HIGHLIGHTS%3Bi++%29%0A%09%09%09%7B%0A%09%09%09%09var%20id%3D%22leoHighlights_Underline_%22+i%3B%0A%09%09%09%09var%20elem%3D_leoHighlightsFindElementById%28id%29%3B%0A%09%09%09%09if%28elem%3D%3Dnull%29%0A%09%09%09%09%09break%3B%0A%09%09%09%09%0A%09%09%09%09if%28%21elem.leoChanged%29%0A%09%09%09%09%7B%0A%09%09%09%09%09elem.leoChanged%3Dtrue%3B%0A%09%09%09%09%0A%09%09%09%09%09/*%20This%20will%20make%20javaScript%20runnable%20*/%09%09%09%09%0A%09%09%09%09%09elem.outerHTML%3Delem.outerHTML%3B%0A%09%09%09%09%7D%0A%09%09%09%7D%0A%09%09%7D%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsUpdateDivs%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0Aif%28document.all%29%0A%09setTimeout%28leoHighlightsUpdateDivs%2C200%29%3B%0A%0A/**%0A%20*%20This%20is%20used%20to%20report%20events%20to%20the%20plugin%0A%20*%20@param%20key%0A%20*%20@param%20sub%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsEvent%28key%2C%20sub%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20var%20gwObj%20%3D%20new%20Gateway%28%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22key%22%2C%20key%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22sub%22%2C%20sub%29%3B%0A%20%20%20%20%20%20gwObj.callName%28%22LeoHighlightsEvent%22%29%3B%09%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHighlights%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/*----------------------------------------------------------------------*/%0A/*%20Methods%20provided%20to%20the%20highlight%20providers...%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20*/%0A/*----------------------------------------------------------------------*/%0A%0A/**%0A%20*%20This%20will%20redirect%20the%20top%20window%20to%20the%20passed%20in%20url%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@param%20parentId%0A%20*%20@return%0A%20*/%0Afunction%20leoHL_RedirectTop%28url%2CparentId%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%09%09leoHighlightsEvent%28%22clicked.2eBay%22%29%3B%0A%20%20%20%09_leoHighlightsRedirectTop%28url%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHL_RedirectTop%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20will%20set%20the%20size%20of%20the%20iframe%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@param%20parentId%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20leoHl_setSize%28size%2Curl%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09/*%20Get%20the%20clickId%20*/%0A%20%20%20%09var%20clickId%3D_leoHighlightsGetUrlArg%28%20url%2C%22clickId%22%29%0A%20%20%20%09%0A%20%20%20%20%20%20var%20gwObj%20%3D%20new%20Gateway%28%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22size%22%2Csize%29%3B%0A%20%20%20%20%20%20if%28clickId%29%0A%20%20%20%20%20%20%20%20%20gwObj.addParam%28%22clickId%22%2CclickId+%22_blah%22%29%3B%0A%20%20%20%20%20%20gwObj.callName%28%22LeoHighlightsSetSize%22%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHl_setSize%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A&quot;); &lt;/script&gt;&lt;/span&gt;&lt;input id=&quot;gwProxy&quot; type=&quot;hidden&quot;&gt;&lt;!--Session data--&gt;&lt;input onclick=&quot;jsCall();&quot; id=&quot;jsProxy&quot; type=&quot;hidden&quot;&gt;&lt;div id=&quot;refHTML&quot;&gt;&lt;/div&gt;&lt;span id=&quot;leoHighlights_iframe_modal_span_container&quot;&gt;&lt;div id=&quot;leoHighlights_iframe_modal_div_container&quot; style=&quot;border: 1px solid black; position: absolute; visibility: hidden; display: none; width: 394px; height: 40px; z-index: 32768; background-color: white;&quot; onmouseover=&quot;leoHighlightsHandleIFrameMouseOver();&quot; onmouseout=&quot;leoHighlightsHandleIFrameMouseOut();&quot;&gt;                                                     &lt;div id=&quot;leo_iFrame_closebar&quot; style=&quot;position: absolute; top: 0px; left: 0px; width: 394px; height: 40px; z-index: 32768; background-image: url(chrome://shim/content/highlightsFilter-1/header.gif);&quot;&gt;       &lt;a href=&quot;javascript: leoHighlightsIFrameClose();&quot;&gt;          &lt;div id=&quot;leo_iFrame_close&quot; style=&quot;position: absolute; top: 10px; left: 360px; width: 20px; height: 20px;&quot;&gt;          &lt;/div&gt;       &lt;/a&gt;    &lt;/div&gt;        &lt;iframe id=&quot;leoHighlights_iframe&quot; name=&quot;leoHighlights_iframe&quot; title=&quot;leoHighlights_iframe&quot; src=&quot;about:blank&quot; vspace=&quot;0&quot; hspace=&quot;0&quot; marginwidth=&quot;0&quot; marginheight=&quot;0&quot; style=&quot;position: absolute; top: 40px; left: 0px;&quot; width=&quot;250&quot; frameborder=&quot;0&quot; height=&quot;100&quot; scrolling=&quot;no&quot;&gt;    &lt;/iframe&gt;     &lt;/div&gt;  &lt;script defer=&quot;defer&quot; type=&quot;text/javascript&quot;&gt;    createInlineScriptElement(&quot;var%20LEO_HIGHLIGHTS_DEBUG%20%3D%20true%3B%0Avar%20LEO_HIGHLIGHTS_DEBUG_POS%20%3D%20false%3B%0Avar%20LEO_HIGHLIGHTS_INFINITE_LOOP_COUNT%20%3D%20300%3B%0Avar%20LEO_HIGHLIGHTS_MAX_HIGHLIGHTS%20%3D%20200%3B%0Avar%20LEO_HIGHLIGHTS_IFRAME_ID%20%3D%20%22leoHighlights_iframe%22%3B%0Avar%20LEO_HIGHLIGHTS_IFRAME_DIV_ID%20%3D%20%22leoHighlights_iframe_modal_div_container%22%3B%0Avar%20LEO_HIGHLIGHTS_SHOW_DELAY_MS%20%3D%20300%3B%0Avar%20LEO_HIGHLIGHTS_HIDE_DELAY_MS%20%3D%20750%3B%0Avar%20LEO_HIGHLIGHTS_BACKGROUND_STYLE_DEFAULT%20%3D%20%22transparent%20none%20repeat%20scroll%200%25%200%25%22%3B%0Avar%20LEO_HIGHLIGHTS_BACKGROUND_STYLE_HOVER%20%3D%20%20%20%22rgb%28245%2C245%2C0%29%20none%20repeat%20scroll%200%25%200%25%22%3B%0Avar%20_leoHighlightsPrevElem%20%3D%20null%3B%0A%0A/**%0A%20*%20General%20method%20used%20to%20debug%20exceptions%0A%20*%20%0A%20*%20@param%20location%0A%20*%20@param%20e%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsReportExeception%28location%2Ce%29%0A%7B%0A%20%20%20if%28LEO_HIGHLIGHTS_DEBUG%29%0A%20%20%20%7B%0A%20%20%20%20%20%20alert%28%22EXCEPTION%3A%20%22+location+%22%3A%20%22+e+%0A%20%20%20%20%20%20%20%20%20%20%20%20%22%5Cn%5Ct%22+e.name+%22%5Cn%5Ct%22+%28e.number%260xFFFF%29+%22%5Cn%5Ct%22+e.description%29%3B%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20is%20a%20dimensions%20object%0A%20*%20%0A%20*%20@param%20width%0A%20*%20@param%20height%0A%20*%20@return%0A%20*/%0Afunction%20LeoHighlightsDimension%28width%2Cheight%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09this.width%3Dwidth%3B%0A%20%20%20%09this.height%3Dheight%3B%0A%20%20%20%09this.toString%3Dfunction%28%29%20%7B%20return%20%28%22%28%22+this.width+%22%2C%22+this.height+%22%29%22%29%3B%7D%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22new%20LeoHighlightsDimension%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A%20*%20This%20is%20a%20Position%20object%0A%20*%20%0A%20*%20@param%20x%0A%20*%20@param%20y%0A%20*%20@return%0A%20*/%0Afunction%20LeoHighlightsPosition%28x%2Cy%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09this.x%3Dx%3B%0A%20%20%20%09this.y%3Dy%3B%0A%20%20%20%09this.toString%3Dfunction%28%29%20%7B%20return%20%28%22%28%22+this.x+%22%2C%22+this.y+%22%29%22%29%3B%7D%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22new%20LeoHighlightsPosition%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0Avar%20LEO_HIGHLIGHTS_ADJUSTMENT%20%3D%20new%20LeoHighlightsPosition%283%2C3%29%3B%0Avar%20LEO_HIGHLIGHTS_IFRAME_HOVER_SIZE%20%3D%20new%20LeoHighlightsDimension%28394%2C236%29%3B%0Avar%20LEO_HIGHLIGHTS_IFRAME_CLICK_SIZE%20%3D%20new%20LeoHighlightsDimension%28394%2C512%29%3B%0Avar%20LEO_HIGHLIGHTS_CLOSE_BAR_HEIGHT%20%3D%2040%3B%0Avar%20LEO_HIGHLIGHTS_DIV_HOVER_SIZE%20%3D%20new%20LeoHighlightsDimension%28LEO_HIGHLIGHTS_IFRAME_HOVER_SIZE.width%2C%0A%09%09%09LEO_HIGHLIGHTS_IFRAME_HOVER_SIZE.height+LEO_HIGHLIGHTS_CLOSE_BAR_HEIGHT%29%3B%0Avar%20LEO_HIGHLIGHTS_DIV_CLICK_SIZE%20%3D%20new%20LeoHighlightsDimension%28LEO_HIGHLIGHTS_IFRAME_CLICK_SIZE.width%2C%0A%09%09LEO_HIGHLIGHTS_IFRAME_CLICK_SIZE.height+LEO_HIGHLIGHTS_CLOSE_BAR_HEIGHT%29%3B%0A%0A%0A/**%0A%20*%20Sets%20the%20size%20of%20the%20passed%20in%20element%0A%20*%20%0A%20*%20@param%20elem%0A%20*%20@param%20dim%20%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsSetSize%28elem%2Cdim%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09//%20Set%20the%20popup%20location%0A%20%20%20%09elem.style.width%20%3D%20dim.width%20+%20%22px%22%3B%0A%20%20%20%09if%28elem.width%29%0A%20%20%20%09%09elem.width%3Ddim.width%3B%0A%20%20%20%09elem.style.height%20%20%3D%20dim.height%20+%20%22px%22%3B%0A%20%20%20%09if%28elem.height%29%0A%20%20%20%09%09elem.height%3Ddim.height%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsSetSize%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A%20*%20This%20can%20be%20used%20for%20a%20simple%20one%20argument%20callback%0A%20*%0A%20*%20@param%20callName%0A%20*%20@param%20argName%0A%20*%20@param%20argVal%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsSimpleGwCallBack%28callName%2CargName%2C%20argVal%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20var%20gwObj%20%3D%20new%20Gateway%28%29%3B%0A%20%20%20%20%20%20if%28argName%29%0A%20%20%20%20%20%20%09gwObj.addParam%28argName%2CargVal%29%3B%0A%20%20%20%20%20%20gwObj.callName%28callName%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsSimpleGwCallBack%28%29%20%22+callName%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20gets%20a%20url%20argument%20from%20the%20current%20document.%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsGetUrlArg%28url%2C%20name%20%29%0A%7B%0A%09%20%20name%20%3D%20name.replace%28/[%5C[]/%2C%22%5C%5C%5C[%22%29.replace%28/[%5C]]/%2C%22%5C%5C%5C]%22%29%3B%0A%09%20%20var%20regexS%20%3D%20%22[%5C%5C?%26]%22+name+%22%3D%28[^%26%23]*%29%22%3B%0A%09%20%20var%20regex%20%3D%20new%20RegExp%28%20regexS%20%29%3B%0A%09%20%20var%20results%20%3D%20regex.exec%28url%29%3B%0A%09%20%20if%28%20results%20%3D%3D%20null%20%29%0A%09%20%20%20%20return%20%22%22%3B%0A%09%20%20else%0A%09%20%20%20%20return%20results[1]%3B%0A%7D%0A%0A%0A/**%0A%20*%20This%20allows%20to%20redirect%20the%20top%20window%20to%20the%20passed%20in%20url%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsRedirectTop%28url%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%20%20%20%09%0A%20%20%20%09top.location%3Durl%3B%09%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsRedirectTop%28%29%22%2Ce%29%3B%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20is%20used%20to%20report%20events%20to%20the%20plugin%0A%20*%20@param%20key%0A%20*%20@param%20sub%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsEvent%28key%2C%20sub%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20var%20gwObj%20%3D%20new%20Gateway%28%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22key%22%2C%20key%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22sub%22%2C%20sub%29%3B%0A%20%20%20%20%20%20gwObj.callName%28%22leoHighlightsEvent%22%29%3B%09%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsEvent%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20will%20find%20an%20element%20by%20Id%0A%20*%20%0A%20*%20@param%20elemId%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsFindElementById%28elemId%29%0A%7B%0A%09try%0A%09%7B%0A%09%09var%20elem%3Ddocument.getElementById%28elemId%29%3B%0A%09%09if%28elem%29%0A%09%09%09return%20elem%3B%0A%09%09%0A%09%09/*%20This%20is%20the%20handling%20for%20IE%20*/%0A%09%09if%28document.all%29%0A%09%09%7B%0A%09%09%09elem%3Ddocument.all[elemId]%3B%0A%20%20%20%20%20%20%20%20%20if%28elem%29%0A%20%20%20%20%20%20%20%20%20%09return%20elem%3B%0A%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20for%20%28%20var%20i%20%3D%20%28document.all.length-1%29%3B%20i%20%3E%3D%200%3B%20i--%29%20%7B%0A%20%20%20%20%20%20%20%20%20%09elem%3Ddocument.all[i]%3B%0A%20%20%20%20%20%20%20%20%20%09if%28elem.id%3D%3DelemId%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20elem%3B%0A%20%20%20%20%20%20%20%20%20%7D%0A%09%09%7D%0A%09%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsFindElementById%28%29%22%2Ce%29%3B%0A%20%20%20%7D%0A%09return%20null%3B%0A%7D%0A%0A/**%0A%20*%20Get%20the%20location%20of%20one%20element%20relative%20to%20a%20parent%20reference%0A%20*%0A%20*%20@param%20ref%0A%20*%20%20%20%20%20%20%20%20%20%20%20the%20reference%20element%2C%20this%20must%20be%20a%20parent%20of%20the%20passed%20in%0A%20*%20%20%20%20%20%20%20%20%20%20%20element%0A%20*%20@param%20elem%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsGetLocation%28ref%2C%20elem%29%20%7B%0A%20%20%20var%20count%20%3D%200%3B%0A%20%20%20var%20location%20%3D%20new%20LeoHighlightsPosition%280%2C0%29%3B%0A%20%20%20var%20walk%20%3D%20elem%3B%0A%20%20%20while%20%28walk%20%21%3D%20null%20%26%26%20walk%20%21%3D%20ref%20%26%26%20count%20%3C%20LEO_HIGHLIGHTS_INFINITE_LOOP_COUNT%29%20%7B%0A%20%20%20%20%20%20location.x%20+%3D%20walk.offsetLeft%3B%0A%20%20%20%20%20%20location.y%20+%3D%20walk.offsetTop%3B%0A%20%20%20%20%20%20walk%20%3D%20walk.offsetParent%3B%0A%20%20%20%20%20%20count++%3B%0A%20%20%20%7D%0A%0A%20%20%20return%20location%3B%0A%7D%0A%0A/**%0A%20*%20This%20is%20used%20to%20update%20the%20position%20of%20an%20element%20as%20a%20popup%0A%20*%20%0A%20*%20@param%20IFrame%0A%20*%20@param%20anchor%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsUpdatePopupPos%28iFrame%2Canchor%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20//%20Gets%20the%20scrolled%20location%20for%20x%20and%20y%0A%20%20%20%20%20%20var%20scrolledPos%3Dnew%20LeoHighlightsPosition%280%2C0%29%3B%0A%20%20%20%20%20%20if%28%20self.pageYOffset%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20scrolledPos.x%20%3D%20self.pageXOffset%3B%0A%20%20%20%20%20%20%20%20%20scrolledPos.y%20%3D%20self.pageYOffset%3B%0A%20%20%20%20%20%20%7D%20else%20if%28%20document.documentElement%20%26%26%20document.documentElement.scrollTop%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20scrolledPos.x%20%3D%20document.documentElement.scrollLeft%3B%0A%20%20%20%20%20%20%20%20%20scrolledPos.y%20%3D%20document.documentElement.scrollTop%3B%0A%20%20%20%20%20%20%7D%20else%20if%28%20document.body%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20scrolledPos.x%20%3D%20document.body.scrollLeft%3B%0A%20%20%20%20%20%20%20%20%20scrolledPos.y%20%3D%20document.body.scrollTop%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20/*%20Get%20the%20total%20dimensions%20to%20see%20what%20scroll%20bars%20might%20be%20active%20*/%0A%20%20%20%20%20%20var%20totalDim%3Dnew%20LeoHighlightsDimension%280%2C0%29%0A%20%20%20%20%20%20if%20%28document.all%20%26%26%20document.documentElement%20%26%26%20%0A%20%20%20%20%20%20%09document.documentElement.clientHeight%26%26document.documentElement.clientWidth%29%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%09totalDim.width%20%3D%20document.documentElement.scrollWidth%3B%0A%20%20%20%20%20%20%09totalDim.height%20%3D%20document.documentElement.scrollHeight%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20else%20if%20%28document.all%29%0A%20%20%20%20%20%20%7B%20/*%20This%20is%20in%20IE%20*/%0A%20%20%20%20%20%09%20%09totalDim.width%20%3D%20document.body.scrollWidth%3B%0A%20%20%20%20%20%20%09totalDim.height%20%3D%20document.body.scrollHeight%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20else%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%09%20totalDim.width%20%3D%20document.width%3B%0A%20%20%20%20%20%20%09%20totalDim.height%20%3D%20document.height%3B%0A%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20//%20Gets%20the%20location%20of%20the%20available%20screen%20space%0A%20%20%20%20%20%20var%20centerDim%3Dnew%20LeoHighlightsDimension%280%2C0%29%3B%0A%20%20%20%20%20%20if%28self.innerWidth%20%26%26%20self.innerHeight%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20centerDim.width%20%3D%20self.innerWidth-%28totalDim.height%3Eself.innerHeight?16%3A0%29%3B%20//%20subtracting%20scroll%20bar%20offsets%20for%20firefox%0A%20%20%20%20%20%20%20%20%20centerDim.height%20%3D%20self.innerHeight-%28totalDim.width%3Eself.innerWidth?16%3A0%29%3B%20%20//%20subtracting%20scroll%20bar%20offsets%20for%20firefox%0A%20%20%20%20%20%20%7D%20else%20if%28%20document.documentElement%20%26%26%20document.documentElement.clientHeight%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20centerDim.width%20%3D%20document.documentElement.clientWidth%3B%0A%20%20%20%20%20%20%20%20%20centerDim.height%20%3D%20document.documentElement.clientHeight%3B%0A%20%20%20%20%20%20%7D%20else%20if%28%20document.body%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20centerDim.width%20%3D%20document.body.clientWidth%3B%0A%20%20%20%20%20%20%20%20%20centerDim.height%20%3D%20document.body.clientHeight%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20//%20Get%20the%20current%20dimension%20of%20the%20popup%20element%0A%20%20%20%20%20%20var%20iFrameDim%3Dnew%20LeoHighlightsDimension%28iFrame.offsetWidth%2CiFrame.offsetHeight%29%0A%20%20%20%20%20%20if%20%28iFrameDim.width%20%3C%3D%200%29%0A%20%20%20%20%20%20%09iFrameDim.width%20%3D%20iFrame.style.width.substring%280%2C%20iFrame.style.width.indexOf%28%27px%27%29%29%3B%0A%20%20%20%20%20%20if%20%28iFrameDim.height%20%3C%3D%200%29%0A%20%20%20%20%20%20%09iFrameDim.height%20%3D%20iFrame.style.height.substring%280%2C%20iFrame.style.height.indexOf%28%27px%27%29%29%3B%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20/*%20Calculate%20the%20position%2C%20lower%20right%20hand%20corner%20by%20default%20*/%0A%20%20%20%20%20%20var%20position%3Dnew%20LeoHighlightsPosition%280%2C0%29%3B%0A%20%20%20%20%20%20position.x%3DscrolledPos.x+centerDim.width-iFrameDim.width-LEO_HIGHLIGHTS_ADJUSTMENT.x%3B%0A%20%20%20%20%20%20position.y%3DscrolledPos.y+centerDim.height-iFrameDim.height-LEO_HIGHLIGHTS_ADJUSTMENT.y%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20if%28anchor%21%3Dnull%29%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20//centerDim%20in%20relation%20to%20the%20anchor%20element%20if%20available%0A%20%20%20%20%20%20%20%20%20var%20topOrBottom%20%3D%20false%3B%0A%20%20%20%20%20%20%20%20%20var%20anchorPos%3D_leoHighlightsGetLocation%28document.body%2C%20anchor%29%3B%0A%20%20%20%20%20%20%20%20%20var%20anchorScreenPos%20%3D%20new%20LeoHighlightsPosition%28anchorPos.x-scrolledPos.x%2CanchorPos.y-scrolledPos.y%29%3B%0A%20%20%20%20%20%20%20%20%20var%20anchorDim%3Dnew%20LeoHighlightsDimension%28anchor.offsetWidth%2Canchor.offsetHeight%29%0A%20%20%20%20%20%20%20%20%20if%20%28anchorDim.width%20%3C%3D%200%29%0A%20%20%20%20%20%20%20%20%20%09anchorDim.width%20%3D%20anchor.style.width.substring%280%2C%20anchor.style.width.indexOf%28%27px%27%29%29%3B%0A%20%20%20%20%20%20%20%20%20if%20%28anchorDim.height%20%3C%3D%200%29%0A%20%20%20%20%20%20%20%20%20%09anchorDim.height%20%3D%20anchor.style.height.substring%280%2C%20anchor.style.height.indexOf%28%27px%27%29%29%3B%0A%0A%20%20%20%20%20%20%20%20%20//%20Check%20if%20the%20popup%20can%20be%20shown%20above%20or%20below%20the%20element%0A%20%20%20%20%20%20%20%20%20if%20%28centerDim.height%20-%20anchorDim.height%20-%20iFrameDim.height%20-%20anchorScreenPos.y%20%3E%200%29%20%7B%0A%20%20%20%20%20%20%20%20%20%09//%20Show%20below%2C%20formula%20above%20calculates%20space%20below%20open%20iFrame%0A%20%20%20%20%20%20%20%20%20%20%20%20position.y%20%3D%20anchorPos.y%20+%20anchorDim.height%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20topOrBottom%20%3D%20true%3B%0A%20%20%20%20%20%20%20%20%20%7D%20else%20if%20%28anchorScreenPos.y%20-%20anchorDim.height%20-%20iFrameDim.height%20%3E%200%29%20%7B%0A%20%20%20%20%20%20%20%20%20%09//%20Show%20above%2C%20formula%20above%20calculates%20space%20above%20open%20iFrame%0A%20%20%20%20%20%20%20%20%20%09position.y%20%3D%20anchorPos.y%20-%20iFrameDim.height%20-%20anchorDim.height%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20topOrBottom%20%3D%20true%3B%0A%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20if%20%28topOrBottom%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20//%20We%20attempt%20top%20attach%20the%20window%20to%20the%20element%0A%20%20%20%20%20%20%20%20%20%09position.x%20%3D%20anchorPos.x%20-%20iFrameDim.width%20/%202%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20%28position.x%20%3C%200%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%09position.x%20%3D%200%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20else%20if%20%28position.x%20+%20iFrameDim.width%20%3E%20scrolledPos.x%20+%20centerDim.width%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%09position.x%20%3D%20scrolledPos.x%20+%20centerDim.width%20-%20iFrameDim.width%3B%0A%20%20%20%20%20%20%20%20%20%7D%20else%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20//%20Attempt%20to%20align%20on%20the%20right%20or%20left%20hand%20side%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20%28centerDim.width%20-%20anchorDim.Width%20-%20iFrameDim.width%20-%20anchorScreenPos.x%20%3E%200%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20position.x%20%3D%20anchorPos.x%20+%20anchorDim.width%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20else%20if%20%28anchorScreenPos.x%20-%20anchorDim.width%20-%20iFrameDim.width%20%3E%200%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%09position.x%20%3D%20anchorPos.x%20-%20anchorDim.width%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20else%20%20//%20default%20to%20below%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20position.y%20%3D%20anchorPos.y%20+%20anchorDim.height%3B%0A%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20/*%20Make%20sure%20that%20we%20don%27t%20go%20passed%20the%20right%20hand%20border%20*/%0A%20%20%20%20%20%20if%28position.x+iFrameDim.width%3EcenterDim.width-20%29%0A%20%20%20%20%20%20%09position.x%3DcenterDim.width-%28iFrameDim.width+20%29%3B%0A%20%20%20%20%20%20%09%09%0A%20%20%20%20%20%20//%20Make%20sure%20that%20we%20didn%27t%20go%20passed%20the%20start%0A%20%20%20%20%20%20if%28position.x%3C0%29%0A%20%20%20%20%20%20%20%20%20position.x%3D0%3B%0A%20%20%20%20%20%20if%28position.y%3C0%29%0A%20%20%20%20%20%20%09position.y%3D0%3B%0A%0A%20%20%20%20%20%20if%20%28LEO_HIGHLIGHTS_DEBUG_POS%26%26LEO_HIGHLIGHTS_DEBUG%29%20%7B%0A%20%20%20%20%20%20%20%20%20alert%28%22%20Popup%20info%20id%3A%20%20%20%20%20%20%20%22%20+iFrame.id+%22%20-%20%22+anchor.id%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5Cnscrolled%20%20%20%20%20%20%20%20%20%20%22%20+%20scrolledPos%20%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5Cncenter/visible%20%20%20%20%22%20+%20centerDim%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5Cnanchor%20%28absolute%29%20%22%20+%20anchorPos%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5Cnanchor%20%28screen%29%20%20%20%22%20+%20anchorScreenPos%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5CnSize%20%28anchor%29%20%20%20%20%20%22%20+%20anchorDim%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5CnSize%20%28popup%29%20%20%20%20%20%20%22%20+%20iFrameDim%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5CnResult%20pos%20%20%20%20%20%20%20%20%22%20+%20position%29%3B%0A%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20//%20Set%20the%20popup%20location%0A%20%20%20%20%20%20iFrame.style.left%20%3D%20position.x%20+%20%22px%22%3B%0A%20%20%20%20%20%20iFrame.style.top%20%20%3D%20position.y%20+%20%22px%22%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsUpdatePopupPos%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A%0A/**%0A%20*%20This%20will%20show%20the%20passed%20in%20element%20as%20a%20popup%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@param%20size%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsShowPopup%28anchorId%2Csize%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09var%20popup%3Dnew%20LeoHighlightsPopup%28anchorId%2Csize%29%3B%0A%20%20%20%09popup.show%28%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsShowPopup%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A%0A/**%0A%20*%20This%20will%20transform%20the%20passed%20in%20url%20to%20a%20rover%20url%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsGetRoverUrl%28url%29%0A%7B%0A%09var%20rover%3D%22711-36858-13496-14%22%3B%0A%09var%20roverUrl%3D%22http%3A//rover.ebay.com/rover/1/%22+rover+%22/4?%26mpre%3D%22+encodeURI%28url%29%3B%0A%09%0A%09return%20roverUrl%3B%0A%7D%0A%0A/**%0A%20*%20Class%20for%20a%20Popup%20%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@param%20size%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20LeoHighlightsPopup%28anchorId%2Csize%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09this.anchorId%3DanchorId%3B%0A%20%20%20%09this.anchor%3D_leoHighlightsFindElementById%28this.anchorId%29%3B%0A%20%20%20%09this.iFrame%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_ID%29%3B%0A%20%20%20%09this.iFrameDiv%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_DIV_ID%29%3B%0A%20%20%20%09%0A%20%20%20%09var%20url%3Dunescape%28this.anchor.getAttribute%28%27leoHighlights_url%27%29%29%3B%0A%0A%20%20%20%09this.iFrame.src%3Durl%3B%0A%0A%20%20%20%09leoHighlightsSetSize%28size%29%3B%0A%20%20%20%09%0A%20%20%20%09this.updatePos%3Dfunction%28%29%20%7B%20_leoHighlightsUpdatePopupPos%28this.iFrameDiv%2Cthis.anchor%29%7D%3B%0A%20%20%20%09this.show%3Dfunction%28%29%20%7Bthis.updatePos%28%29%3B%20this.iFrameDiv.style.visibility%20%3D%20%22visible%22%3B%20this.iFrameDiv.style.display%20%3D%20%22block%22%3B%20this.updatePos%28%29%3B%7D%20%20%20%09%09%0A%20%20%20%09this.scroll%3Dfunction%28%29%20%7B%20this.updatePos%28%29%3B%7D%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22new%20LeoHighlightsPopup%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/**%0A*%0A*%20This%20can%20be%20used%20to%20close%20an%20iframe%0A*%0A*%20@param%20id%0A*%20@return%0A*/%0Afunction%20leoHighlightsSetSize%28size%2CclickId%29%0A%7B%0A%09try%0A%09%7B%0A%09%09/*%20Get%20the%20appropriate%20sizes%20*/%0A%20%20%09%09var%20iFrame%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_ID%29%3B%0A%20%20%09%09var%20iFrameDiv%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_DIV_ID%29%3B%0A%20%20%09%09%0A%20%20%09%09/*%20Figure%20out%20the%20correct%20sizes%20*/%0A%20%20%09%09var%20iFrameSize%3D%28size%3D%3D1%29?LEO_HIGHLIGHTS_IFRAME_CLICK_SIZE%3ALEO_HIGHLIGHTS_IFRAME_HOVER_SIZE%3B%0A%20%20%09%09var%20divSize%3D%28size%3D%3D1%29?LEO_HIGHLIGHTS_DIV_CLICK_SIZE%3ALEO_HIGHLIGHTS_DIV_HOVER_SIZE%3B%0A%0A%20%20%09%09/*%20Refresh%20the%20iFrame%27s%20url%2C%20by%20removing%20the%20size%20arg%20and%20adding%20it%20again%20*/%0A%20%20%09%09var%20url%3DiFrame.src%3B%0A%20%20%09%09var%20idx%3Durl.indexOf%28%22%26size%3D%22%29%3B%0A%20%20%09%09if%28idx%3E%3D0%29%0A%20%20%09%09%09url%3Durl.substring%280%2Cidx%29%3B%0A%09%09url+%3D%28%22%26size%3D%22+size%29%3B%0A%09%09if%28clickId%29%0A%09%09%09url+%3D%28%22%26clickId%3D%22+clickId%29%3B%0A%09%09%0A%20%20%09%09iFrame.src%3Durl%3B%0A%20%20%09%09%0A%20%20%09%09/*%20Clear%20the%20hover%20flag%2C%20if%20the%20user%20shows%20this%20at%20full%20size%20*/%0A%20%20%09%09if%28size%3D%3D1%26%26_leoHighlightsPrevElem%29%0A%20%20%09%09%09_leoHighlightsPrevElem.hover%3Dfalse%3B%0A%20%20%09%09%0A%20%20%09%09_leoHighlightsSetSize%28iFrame%2CiFrameSize%29%3B%0A%20%20%09%09_leoHighlightsSetSize%28iFrameDiv%2CdivSize%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsSetSize%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A%20*%20Start%20the%20popup%20a%20little%20bit%20delayed.%0A%20*%20Somehow%20IE%20needs%20some%20time%20to%20find%20the%20element%20by%20id.%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@param%20size%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsShowPopup%28anchorId%2Csize%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%09%09var%20elem%3D_leoHighlightsFindElementById%28anchorId%29%3B%0A%20%20%09%09if%28_leoHighlightsPrevElem%26%26%28_leoHighlightsPrevElem%21%3Delem%29%29%0A%20%20%09%09%09_leoHighlightsPrevElem.shown%3Dfalse%3B%0A%20%20%09%09elem.shown%3Dtrue%3B%0A%09%09_leoHighlightsPrevElem%3Delem%3B%0A%20%20%20%09%0A%20%20%20%09/*%20FF%20needs%20to%20find%20the%20element%20first%20*/%0A%20%20%20%09_leoHighlightsFindElementById%28anchorId%29%3B%0A%20%20%20%09%0A%20%20%20%09setTimeout%28%22_leoHighlightsShowPopup%28%5C%27%22+anchorId+%22%5C%27%2C%5C%27%22+size+%22%5C%27%29%3B%22%2C10%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHighlightsShowPopup%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A*%0A*%20This%20can%20be%20used%20to%20close%20an%20iframe%0A*%0A*%20@param%20id%0A*%20@return%0A*/%0Afunction%20leoHighlightsHideElem%28id%29%0A%7B%0A%09try%0A%09%7B%0A%09%09/*%20Get%20the%20appropriate%20sizes%20*/%0A%20%20%09%09var%20elem%3D_leoHighlightsFindElementById%28id%29%3B%0A%20%20%09%09if%28elem%29%0A%20%20%09%09%09elem.style.visibility%3D%22hidden%22%3B%0A%20%20%09%09%0A%20%20%09%09/*%20Clear%20the%20page%20for%20the%20next%20run%20through%20*/%0A%20%20%09%09var%20iFrame%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_ID%29%3B%0A%20%20%09%09if%28iFrame%29%0A%20%20%09%09%09iFrame.src%3D%22about%3Ablank%22%3B%0A%20%20%09%09%0A%20%20%09%09%0A%20%20%09%09if%28_leoHighlightsPrevElem%29%0A%20%20%09%09%7B%0A%20%20%09%09%09_leoHighlightsPrevElem.shown%3Dfalse%3B%0A%20%20%09%09%09_leoHighlightsPrevElem%3Dnull%3B%0A%20%20%09%09%7D%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHideElem%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A*%0A*%20This%20can%20be%20used%20to%20close%20an%20iframe.%0A*%20Since%20the%20iFrame%20is%20reused%20the%20frame%20only%20gets%20hidden%0A*%0A*%20@return%0A*/%0Afunction%20leoHighlightsIFrameClose%28%29%0A%7B%0A%20%20try%0A%20%20%7B%0A%09%20%20_leoHighlightsSimpleGwCallBack%28%22LeoHighlightsHideIFrame%22%29%3B%0A%20%20%7D%0A%20%20catch%28e%29%0A%20%20%7B%0A%09%20%20_leoHighlightsReportExeception%28%22leoHighlightsIFrameClose%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20should%20handle%20the%20click%20events%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleClick%28anchorId%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%09%09var%20anchor%3D_leoHighlightsFindElementById%28anchorId%29%3B%0A%20%20%09%09anchor.hover%3Dfalse%3B%0A%20%20%09%09if%28anchor.startTimer%29%0A%20%20%09%09%09clearTimeout%28anchor.startTimer%29%3B%0A%20%20%20%09%0A%20%20%09%09leoHighlightsEvent%28%22clicked%22%29%3B%0A%20%20%20%09leoHighlightsShowPopup%28anchorId%2C1%29%3B%0A%20%20%20%09return%20false%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHighlightsHandleClick%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A%20*%20This%20should%20handle%20the%20hover%20events%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleHover%28anchorId%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%09%09var%20anchor%3D_leoHighlightsFindElementById%28anchorId%29%3B%0A%20%20%09%09anchor.hover%3Dtrue%3B%0A%20%20%09%09%0A%20%20%09%09leoHighlightsEvent%28%22hovered%22%29%3B%0A%20%20%20%09leoHighlightsShowPopup%28anchorId%2C0%29%3B%0A%20%20%20%09return%20false%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHighlightsHandleHover%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A%20*%20This%20will%20handle%20the%20mouse%20over%20setup%20timers%20for%20the%20appropriate%20timers%0A%20*%20%0A%20*%20@param%20id%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleMouseOver%28id%29%0A%7B%0A%09try%0A%09%7B%0A%09%09var%20anchor%3D_leoHighlightsFindElementById%28id%29%3B%09%09%0A%0A%09%09/*%20Clear%20the%20end%20timer%20if%20required%20*/%0A%09%09if%28anchor.endTimer%29%0A%09%09%09clearTimeout%28anchor.endTimer%29%3B%0A%09%09anchor.endTimer%3Dnull%3B%0A%09%09%0A%09%09anchor.style.background%3DLEO_HIGHLIGHTS_BACKGROUND_STYLE_HOVER%3B%0A%09%09%0A%09%09/*%20The%20element%20is%20already%20showing%20we%20are%20done%20*/%0A%09%09if%28anchor.shown%29%0A%09%09%09return%3B%0A%09%09%0A%09%09/*%20Setup%20the%20start%20timer%20if%20required%20*/%0A%09%09anchor.startTimer%3DsetTimeout%28function%28%29%7B%0A%09%09%09leoHighlightsHandleHover%28anchor.id%29%3B%0A%09%09%09anchor.hover%3Dtrue%3B%0A%09%09%09%7D%2C%0A%09%09%09LEO_HIGHLIGHTS_SHOW_DELAY_MS%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHandleMouseOver%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A%20*%20This%20will%20handle%20the%20mouse%20over%20setup%20timers%20for%20the%20appropriate%20timers%0A%20*%20%0A%20*%20@param%20id%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleMouseOut%28id%29%0A%7B%0A%09try%0A%09%7B%09%0A%09%09var%20anchor%3D_leoHighlightsFindElementById%28id%29%3B%0A%09%09%0A%09%09/*%20Clear%20the%20start%20timer%20if%20required%20*/%0A%09%09if%28anchor.startTimer%29%0A%09%09%09clearTimeout%28anchor.startTimer%29%3B%0A%09%09anchor.startTimer%3Dnull%3B%0A%09%09%0A%09%09anchor.style.background%3DLEO_HIGHLIGHTS_BACKGROUND_STYLE_DEFAULT%3B%0A%09%09if%28%21anchor.shown||%21anchor.hover%29%0A%09%09%09return%3B%0A%09%09%0A%09%09/*%20Setup%20the%20start%20timer%20if%20required%20*/%0A%09%09anchor.endTimer%3DsetTimeout%28function%28%29%7B%0A%09%09%09leoHighlightsHideElem%28LEO_HIGHLIGHTS_IFRAME_DIV_ID%29%3B%0A%09%09%09anchor.shown%3Dfalse%3B%0A%09%09%09_leoHighlightsPrevElem%3Dnull%3B%0A%09%09%09%7D%2CLEO_HIGHLIGHTS_HIDE_DELAY_MS%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHandleMouseOut%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A%20*%20This%20handles%20the%20mouse%20movement%20into%20the%20currently%20opened%20window.%0A%20*%20Just%20clear%20the%20close%20timer%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleIFrameMouseOver%28%29%0A%7B%0A%09try%0A%09%7B%0A%09%09if%28_leoHighlightsPrevElem%26%26_leoHighlightsPrevElem.endTimer%29%0A%09%09%09clearTimeout%28_leoHighlightsPrevElem.endTimer%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHandleIFrameMouseOver%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A%20*%20This%20handles%20the%20mouse%20movement%20into%20the%20currently%20opened%20window.%0A%20*%20Just%20clear%20the%20close%20timer%0A%20*%20%0A%20*%20@param%20id%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleIFrameMouseOut%28%29%0A%7B%0A%09try%0A%09%7B%0A%09%09if%28_leoHighlightsPrevElem%29%0A%09%09%09leoHighlightsHandleMouseOut%28_leoHighlightsPrevElem.id%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHandleIFrameMouseOut%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A/**%0A%20*%20This%20is%20a%20method%20is%20used%20to%20make%20the%20javascript%20within%20IE%20runnable%0A%20*/%0Avar%20leoHighlightsRanUpdateDivs%3Dfalse%3B%0Afunction%20leoHighlightsUpdateDivs%28%29%0A%7B%0A%09try%0A%09%7B%0A%09%09/*%20Check%20if%20this%20is%20an%20IE%20browser%20and%20if%20divs%20have%20been%20updated%20already%20*/%0A%09%09if%28document.all%26%26%21leoHighlightsRanUpdateDivs%29%0A%09%09%7B%0A%09%09%09leoHighlightsRanUpdateDivs%3Dtrue%3B%20//%20Set%20early%20to%20prevent%20running%20twice%0A%09%09%09for%28var%20i%3D0%3Bi%3CLEO_HIGHLIGHTS_MAX_HIGHLIGHTS%3Bi++%29%0A%09%09%09%7B%0A%09%09%09%09var%20id%3D%22leoHighlights_Underline_%22+i%3B%0A%09%09%09%09var%20elem%3D_leoHighlightsFindElementById%28id%29%3B%0A%09%09%09%09if%28elem%3D%3Dnull%29%0A%09%09%09%09%09break%3B%0A%09%09%09%09%0A%09%09%09%09if%28%21elem.leoChanged%29%0A%09%09%09%09%7B%0A%09%09%09%09%09elem.leoChanged%3Dtrue%3B%0A%09%09%09%09%0A%09%09%09%09%09/*%20This%20will%20make%20javaScript%20runnable%20*/%09%09%09%09%0A%09%09%09%09%09elem.outerHTML%3Delem.outerHTML%3B%0A%09%09%09%09%7D%0A%09%09%09%7D%0A%09%09%7D%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsUpdateDivs%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0Aif%28document.all%29%0A%09setTimeout%28leoHighlightsUpdateDivs%2C200%29%3B%0A%0A/**%0A%20*%20This%20is%20used%20to%20report%20events%20to%20the%20plugin%0A%20*%20@param%20key%0A%20*%20@param%20sub%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsEvent%28key%2C%20sub%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20var%20gwObj%20%3D%20new%20Gateway%28%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22key%22%2C%20key%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22sub%22%2C%20sub%29%3B%0A%20%20%20%20%20%20gwObj.callName%28%22LeoHighlightsEvent%22%29%3B%09%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHighlights%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/*----------------------------------------------------------------------*/%0A/*%20Methods%20provided%20to%20the%20highlight%20providers...%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20*/%0A/*----------------------------------------------------------------------*/%0A%0A/**%0A%20*%20This%20will%20redirect%20the%20top%20window%20to%20the%20passed%20in%20url%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@param%20parentId%0A%20*%20@return%0A%20*/%0Afunction%20leoHL_RedirectTop%28url%2CparentId%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%09%09leoHighlightsEvent%28%22clicked.2eBay%22%29%3B%0A%20%20%20%09_leoHighlightsRedirectTop%28url%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHL_RedirectTop%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20will%20set%20the%20size%20of%20the%20iframe%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@param%20parentId%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20leoHl_setSize%28size%2Curl%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09/*%20Get%20the%20clickId%20*/%0A%20%20%20%09var%20clickId%3D_leoHighlightsGetUrlArg%28%20url%2C%22clickId%22%29%0A%20%20%20%09%0A%20%20%20%20%20%20var%20gwObj%20%3D%20new%20Gateway%28%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22size%22%2Csize%29%3B%0A%20%20%20%20%20%20if%28clickId%29%0A%20%20%20%20%20%20%20%20%20gwObj.addParam%28%22clickId%22%2CclickId+%22_blah%22%29%3B%0A%20%20%20%20%20%20gwObj.callName%28%22LeoHighlightsSetSize%22%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHl_setSize%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A&quot;); &lt;/script&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://eclipse-info.blogspot.com/feeds/7603006320837648178/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://eclipse-info.blogspot.com/2009/07/eclipse-india-summit-09.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/7603006320837648178'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/7603006320837648178'/><link rel='alternate' type='text/html' href='http://eclipse-info.blogspot.com/2009/07/eclipse-india-summit-09.html' title='Eclipse India Summit &#39;09'/><author><name>Madhu</name><uri>http://www.blogger.com/profile/05191409900046165475</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinHjYGa5FscB42dzdcnMkhHexfURSsCqOwLZK4PZcxCH0Wwygq1umSZmGAmS7t62S4J6UMaq2JtR9uDUoQq8XgI2ZoLPS8wMyNGUDtT04PQOXI5hmegqqgTKgaTAT6MQ/s220/Photo+on+2011-07-22+at+17.58+%232.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3399985190174266183.post-7731262698605742734</id><published>2009-07-12T13:14:00.010+05:30</published><updated>2009-07-12T18:50:47.185+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Eclipse static code analysis tool"/><title type='text'>On the fly analysis of code!</title><content type='html'>Long long ago, I wrote my first java program in notepad. I wrote my helloworld program, saved and compiled it using &#39;javac&#39;.&lt;br /&gt;&lt;br /&gt;A few compiler errors!!!&lt;br /&gt;&lt;br /&gt;I corrected those errors and executed the program. I was happy!&lt;br /&gt;&lt;br /&gt;A few years later....&lt;br /&gt;&lt;br /&gt;I met &lt;leo_highlight style=&quot;border-bottom: 2px solid rgb(255, 255, 150); background: transparent none repeat scroll 0% 0%; cursor: pointer; display: inline; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;&quot; id=&quot;leoHighlights_Underline_0&quot; onclick=&quot;leoHighlightsHandleClick(&#39;leoHighlights_Underline_0&#39;)&quot; onmouseover=&quot;leoHighlightsHandleMouseOver(&#39;leoHighlights_Underline_0&#39;)&quot; onmouseout=&quot;leoHighlightsHandleMouseOut(&#39;leoHighlights_Underline_0&#39;)&quot; leohighlights_keywords=&quot;eclipse&quot; leohighlights_url=&quot;http%3A//thebrowserhighlighter.com/leonardo/highlights/keywords?keywords%3Declipse&quot;&gt;eclipse&lt;/leo_highlight&gt;. I wrote my hello world java program using the jdt editor. As soon as I made an error, the java editor showed the errors in red jagged lines. I was excited. I no longer required to finish the entire program to see the compiler errors.&lt;br /&gt;&lt;br /&gt;Years passed again! I started to write bigger programs. I started to use a few static analysis tools to make sure my code is of good quality.  I use both PMD and Findbugs. But I feel as if I have gone a few years before. I feel as if I am using the notepad again.&lt;br /&gt;&lt;br /&gt;To see the code analysis results, I need to complete the coding, then execute the static analysis tools. PMD and Findbugs together might show more than 100 errors.&lt;br /&gt;&lt;br /&gt;It was good if the code analysis tools were integrated with JDT. If I type a piece of code, the code should be analysed by the tools on the fly and bring the results. The static analysis tool should not make the  end user to wait till he/she manually triggers the analysis.&lt;br /&gt;&lt;br /&gt;I could&#39;ve raised an &lt;leo_highlight style=&quot;border-bottom: 2px solid rgb(255, 255, 150); background: transparent none repeat scroll 0% 0%; cursor: pointer; display: inline; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;&quot; id=&quot;leoHighlights_Underline_1&quot; onclick=&quot;leoHighlightsHandleClick(&#39;leoHighlights_Underline_1&#39;)&quot; onmouseover=&quot;leoHighlightsHandleMouseOver(&#39;leoHighlights_Underline_1&#39;)&quot; onmouseout=&quot;leoHighlightsHandleMouseOut(&#39;leoHighlights_Underline_1&#39;)&quot; leohighlights_keywords=&quot;eclipse&quot; leohighlights_url=&quot;http%3A//thebrowserhighlighter.com/leonardo/highlights/keywords?keywords%3Declipse&quot;&gt;Eclipse&lt;/leo_highlight&gt; bug in bugzilla if we had a static analysis tool in &lt;leo_highlight style=&quot;border-bottom: 2px solid rgb(255, 255, 150); background: transparent none repeat scroll 0% 0%; cursor: pointer; display: inline; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;&quot; id=&quot;leoHighlights_Underline_2&quot; onclick=&quot;leoHighlightsHandleClick(&#39;leoHighlights_Underline_2&#39;)&quot; onmouseover=&quot;leoHighlightsHandleMouseOver(&#39;leoHighlights_Underline_2&#39;)&quot; onmouseout=&quot;leoHighlightsHandleMouseOut(&#39;leoHighlights_Underline_2&#39;)&quot; leohighlights_keywords=&quot;eclipse&quot; leohighlights_url=&quot;http%3A//thebrowserhighlighter.com/leonardo/highlights/keywords?keywords%3Declipse&quot;&gt;Eclipse&lt;/leo_highlight&gt; group of projects. How about putting up the analysis logic in the JDT editor? But the code analysis job will be the specialization of static code analysis tools, not JDT. How about JDT exposes some interfaces which the static analysis tools can make use of?&lt;br /&gt;&lt;br /&gt;Any thoughts / comments / action over this issue are welcome&lt;span style=&quot;font-style: italic;&quot;&gt;.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-style: italic;&quot;&gt;madhu&lt;/span&gt;&lt;br /&gt;&lt;div id=&quot;refHTML&quot;&gt;&lt;/div&gt;&lt;input id=&quot;gwProxy&quot; type=&quot;hidden&quot;&gt;&lt;!--Session data--&gt;&lt;input onclick=&quot;jsCall();&quot; id=&quot;jsProxy&quot; type=&quot;hidden&quot;&gt;&lt;div id=&quot;refHTML&quot;&gt;&lt;/div&gt;&lt;span id=&quot;leoHighlights_iframe_modal_span_container&quot;&gt;&lt;div id=&quot;leoHighlights_iframe_modal_div_container&quot; style=&quot;border: 1px solid black; position: absolute; visibility: hidden; display: none; width: 394px; height: 40px; z-index: 32768; background-color: white;&quot; onmouseover=&quot;leoHighlightsHandleIFrameMouseOver();&quot; onmouseout=&quot;leoHighlightsHandleIFrameMouseOut();&quot;&gt;                                                     &lt;div id=&quot;leo_iFrame_closebar&quot; style=&quot;position: absolute; top: 0px; left: 0px; width: 394px; height: 40px; z-index: 32768; background-image: url(chrome://shim/content/highlightsFilter-1/header.gif);&quot;&gt;       &lt;a href=&quot;javascript: leoHighlightsIFrameClose();&quot;&gt;          &lt;div id=&quot;leo_iFrame_close&quot; style=&quot;position: absolute; top: 10px; left: 360px; width: 20px; height: 20px;&quot;&gt;          &lt;/div&gt;       &lt;/a&gt;    &lt;/div&gt;        &lt;iframe id=&quot;leoHighlights_iframe&quot; name=&quot;leoHighlights_iframe&quot; title=&quot;leoHighlights_iframe&quot; src=&quot;about:blank&quot; vspace=&quot;0&quot; hspace=&quot;0&quot; marginwidth=&quot;0&quot; marginheight=&quot;0&quot; style=&quot;position: absolute; top: 40px; left: 0px;&quot; scrolling=&quot;no&quot; width=&quot;250&quot; frameborder=&quot;0&quot; height=&quot;100&quot;&gt;    &lt;/iframe&gt;     &lt;/div&gt;  &lt;script defer=&quot;defer&quot; type=&quot;text/javascript&quot;&gt;    createInlineScriptElement(&quot;var%20LEO_HIGHLIGHTS_DEBUG%20%3D%20true%3B%0Avar%20LEO_HIGHLIGHTS_DEBUG_POS%20%3D%20false%3B%0Avar%20LEO_HIGHLIGHTS_INFINITE_LOOP_COUNT%20%3D%20300%3B%0Avar%20LEO_HIGHLIGHTS_MAX_HIGHLIGHTS%20%3D%20200%3B%0Avar%20LEO_HIGHLIGHTS_IFRAME_ID%20%3D%20%22leoHighlights_iframe%22%3B%0Avar%20LEO_HIGHLIGHTS_IFRAME_DIV_ID%20%3D%20%22leoHighlights_iframe_modal_div_container%22%3B%0Avar%20LEO_HIGHLIGHTS_SHOW_DELAY_MS%20%3D%20300%3B%0Avar%20LEO_HIGHLIGHTS_HIDE_DELAY_MS%20%3D%20750%3B%0Avar%20LEO_HIGHLIGHTS_BACKGROUND_STYLE_DEFAULT%20%3D%20%22transparent%20none%20repeat%20scroll%200%25%200%25%22%3B%0Avar%20LEO_HIGHLIGHTS_BACKGROUND_STYLE_HOVER%20%3D%20%20%20%22rgb%28245%2C245%2C0%29%20none%20repeat%20scroll%200%25%200%25%22%3B%0Avar%20_leoHighlightsPrevElem%20%3D%20null%3B%0A%0A/**%0A%20*%20General%20method%20used%20to%20debug%20exceptions%0A%20*%20%0A%20*%20@param%20location%0A%20*%20@param%20e%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsReportExeception%28location%2Ce%29%0A%7B%0A%20%20%20if%28LEO_HIGHLIGHTS_DEBUG%29%0A%20%20%20%7B%0A%20%20%20%20%20%20alert%28%22EXCEPTION%3A%20%22+location+%22%3A%20%22+e+%0A%20%20%20%20%20%20%20%20%20%20%20%20%22%5Cn%5Ct%22+e.name+%22%5Cn%5Ct%22+%28e.number%260xFFFF%29+%22%5Cn%5Ct%22+e.description%29%3B%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20is%20a%20dimensions%20object%0A%20*%20%0A%20*%20@param%20width%0A%20*%20@param%20height%0A%20*%20@return%0A%20*/%0Afunction%20LeoHighlightsDimension%28width%2Cheight%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09this.width%3Dwidth%3B%0A%20%20%20%09this.height%3Dheight%3B%0A%20%20%20%09this.toString%3Dfunction%28%29%20%7B%20return%20%28%22%28%22+this.width+%22%2C%22+this.height+%22%29%22%29%3B%7D%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22new%20LeoHighlightsDimension%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A%20*%20This%20is%20a%20Position%20object%0A%20*%20%0A%20*%20@param%20x%0A%20*%20@param%20y%0A%20*%20@return%0A%20*/%0Afunction%20LeoHighlightsPosition%28x%2Cy%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09this.x%3Dx%3B%0A%20%20%20%09this.y%3Dy%3B%0A%20%20%20%09this.toString%3Dfunction%28%29%20%7B%20return%20%28%22%28%22+this.x+%22%2C%22+this.y+%22%29%22%29%3B%7D%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22new%20LeoHighlightsPosition%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0Avar%20LEO_HIGHLIGHTS_ADJUSTMENT%20%3D%20new%20LeoHighlightsPosition%283%2C3%29%3B%0Avar%20LEO_HIGHLIGHTS_IFRAME_HOVER_SIZE%20%3D%20new%20LeoHighlightsDimension%28394%2C236%29%3B%0Avar%20LEO_HIGHLIGHTS_IFRAME_CLICK_SIZE%20%3D%20new%20LeoHighlightsDimension%28394%2C512%29%3B%0Avar%20LEO_HIGHLIGHTS_CLOSE_BAR_HEIGHT%20%3D%2040%3B%0Avar%20LEO_HIGHLIGHTS_DIV_HOVER_SIZE%20%3D%20new%20LeoHighlightsDimension%28LEO_HIGHLIGHTS_IFRAME_HOVER_SIZE.width%2C%0A%09%09%09LEO_HIGHLIGHTS_IFRAME_HOVER_SIZE.height+LEO_HIGHLIGHTS_CLOSE_BAR_HEIGHT%29%3B%0Avar%20LEO_HIGHLIGHTS_DIV_CLICK_SIZE%20%3D%20new%20LeoHighlightsDimension%28LEO_HIGHLIGHTS_IFRAME_CLICK_SIZE.width%2C%0A%09%09LEO_HIGHLIGHTS_IFRAME_CLICK_SIZE.height+LEO_HIGHLIGHTS_CLOSE_BAR_HEIGHT%29%3B%0A%0A%0A/**%0A%20*%20Sets%20the%20size%20of%20the%20passed%20in%20element%0A%20*%20%0A%20*%20@param%20elem%0A%20*%20@param%20dim%20%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsSetSize%28elem%2Cdim%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09//%20Set%20the%20popup%20location%0A%20%20%20%09elem.style.width%20%3D%20dim.width%20+%20%22px%22%3B%0A%20%20%20%09if%28elem.width%29%0A%20%20%20%09%09elem.width%3Ddim.width%3B%0A%20%20%20%09elem.style.height%20%20%3D%20dim.height%20+%20%22px%22%3B%0A%20%20%20%09if%28elem.height%29%0A%20%20%20%09%09elem.height%3Ddim.height%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsSetSize%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A%20*%20This%20can%20be%20used%20for%20a%20simple%20one%20argument%20callback%0A%20*%0A%20*%20@param%20callName%0A%20*%20@param%20argName%0A%20*%20@param%20argVal%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsSimpleGwCallBack%28callName%2CargName%2C%20argVal%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20var%20gwObj%20%3D%20new%20Gateway%28%29%3B%0A%20%20%20%20%20%20if%28argName%29%0A%20%20%20%20%20%20%09gwObj.addParam%28argName%2CargVal%29%3B%0A%20%20%20%20%20%20gwObj.callName%28callName%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsSimpleGwCallBack%28%29%20%22+callName%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20gets%20a%20url%20argument%20from%20the%20current%20document.%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsGetUrlArg%28url%2C%20name%20%29%0A%7B%0A%09%20%20name%20%3D%20name.replace%28/[%5C[]/%2C%22%5C%5C%5C[%22%29.replace%28/[%5C]]/%2C%22%5C%5C%5C]%22%29%3B%0A%09%20%20var%20regexS%20%3D%20%22[%5C%5C?%26]%22+name+%22%3D%28[^%26%23]*%29%22%3B%0A%09%20%20var%20regex%20%3D%20new%20RegExp%28%20regexS%20%29%3B%0A%09%20%20var%20results%20%3D%20regex.exec%28url%29%3B%0A%09%20%20if%28%20results%20%3D%3D%20null%20%29%0A%09%20%20%20%20return%20%22%22%3B%0A%09%20%20else%0A%09%20%20%20%20return%20results[1]%3B%0A%7D%0A%0A%0A/**%0A%20*%20This%20allows%20to%20redirect%20the%20top%20window%20to%20the%20passed%20in%20url%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsRedirectTop%28url%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%20%20%20%09%0A%20%20%20%09top.location%3Durl%3B%09%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsRedirectTop%28%29%22%2Ce%29%3B%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20is%20used%20to%20report%20events%20to%20the%20plugin%0A%20*%20@param%20key%0A%20*%20@param%20sub%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsEvent%28key%2C%20sub%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20var%20gwObj%20%3D%20new%20Gateway%28%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22key%22%2C%20key%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22sub%22%2C%20sub%29%3B%0A%20%20%20%20%20%20gwObj.callName%28%22leoHighlightsEvent%22%29%3B%09%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsEvent%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20will%20find%20an%20element%20by%20Id%0A%20*%20%0A%20*%20@param%20elemId%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsFindElementById%28elemId%29%0A%7B%0A%09try%0A%09%7B%0A%09%09var%20elem%3Ddocument.getElementById%28elemId%29%3B%0A%09%09if%28elem%29%0A%09%09%09return%20elem%3B%0A%09%09%0A%09%09/*%20This%20is%20the%20handling%20for%20IE%20*/%0A%09%09if%28document.all%29%0A%09%09%7B%0A%09%09%09elem%3Ddocument.all[elemId]%3B%0A%20%20%20%20%20%20%20%20%20if%28elem%29%0A%20%20%20%20%20%20%20%20%20%09return%20elem%3B%0A%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20for%20%28%20var%20i%20%3D%20%28document.all.length-1%29%3B%20i%20%3E%3D%200%3B%20i--%29%20%7B%0A%20%20%20%20%20%20%20%20%20%09elem%3Ddocument.all[i]%3B%0A%20%20%20%20%20%20%20%20%20%09if%28elem.id%3D%3DelemId%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20elem%3B%0A%20%20%20%20%20%20%20%20%20%7D%0A%09%09%7D%0A%09%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsFindElementById%28%29%22%2Ce%29%3B%0A%20%20%20%7D%0A%09return%20null%3B%0A%7D%0A%0A/**%0A%20*%20Get%20the%20location%20of%20one%20element%20relative%20to%20a%20parent%20reference%0A%20*%0A%20*%20@param%20ref%0A%20*%20%20%20%20%20%20%20%20%20%20%20the%20reference%20element%2C%20this%20must%20be%20a%20parent%20of%20the%20passed%20in%0A%20*%20%20%20%20%20%20%20%20%20%20%20element%0A%20*%20@param%20elem%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsGetLocation%28ref%2C%20elem%29%20%7B%0A%20%20%20var%20count%20%3D%200%3B%0A%20%20%20var%20location%20%3D%20new%20LeoHighlightsPosition%280%2C0%29%3B%0A%20%20%20var%20walk%20%3D%20elem%3B%0A%20%20%20while%20%28walk%20%21%3D%20null%20%26%26%20walk%20%21%3D%20ref%20%26%26%20count%20%3C%20LEO_HIGHLIGHTS_INFINITE_LOOP_COUNT%29%20%7B%0A%20%20%20%20%20%20location.x%20+%3D%20walk.offsetLeft%3B%0A%20%20%20%20%20%20location.y%20+%3D%20walk.offsetTop%3B%0A%20%20%20%20%20%20walk%20%3D%20walk.offsetParent%3B%0A%20%20%20%20%20%20count++%3B%0A%20%20%20%7D%0A%0A%20%20%20return%20location%3B%0A%7D%0A%0A/**%0A%20*%20This%20is%20used%20to%20update%20the%20position%20of%20an%20element%20as%20a%20popup%0A%20*%20%0A%20*%20@param%20IFrame%0A%20*%20@param%20anchor%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsUpdatePopupPos%28iFrame%2Canchor%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20//%20Gets%20the%20scrolled%20location%20for%20x%20and%20y%0A%20%20%20%20%20%20var%20scrolledPos%3Dnew%20LeoHighlightsPosition%280%2C0%29%3B%0A%20%20%20%20%20%20if%28%20self.pageYOffset%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20scrolledPos.x%20%3D%20self.pageXOffset%3B%0A%20%20%20%20%20%20%20%20%20scrolledPos.y%20%3D%20self.pageYOffset%3B%0A%20%20%20%20%20%20%7D%20else%20if%28%20document.documentElement%20%26%26%20document.documentElement.scrollTop%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20scrolledPos.x%20%3D%20document.documentElement.scrollLeft%3B%0A%20%20%20%20%20%20%20%20%20scrolledPos.y%20%3D%20document.documentElement.scrollTop%3B%0A%20%20%20%20%20%20%7D%20else%20if%28%20document.body%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20scrolledPos.x%20%3D%20document.body.scrollLeft%3B%0A%20%20%20%20%20%20%20%20%20scrolledPos.y%20%3D%20document.body.scrollTop%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20/*%20Get%20the%20total%20dimensions%20to%20see%20what%20scroll%20bars%20might%20be%20active%20*/%0A%20%20%20%20%20%20var%20totalDim%3Dnew%20LeoHighlightsDimension%280%2C0%29%0A%20%20%20%20%20%20if%20%28document.all%20%26%26%20document.documentElement%20%26%26%20%0A%20%20%20%20%20%20%09document.documentElement.clientHeight%26%26document.documentElement.clientWidth%29%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%09totalDim.width%20%3D%20document.documentElement.scrollWidth%3B%0A%20%20%20%20%20%20%09totalDim.height%20%3D%20document.documentElement.scrollHeight%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20else%20if%20%28document.all%29%0A%20%20%20%20%20%20%7B%20/*%20This%20is%20in%20IE%20*/%0A%20%20%20%20%20%09%20%09totalDim.width%20%3D%20document.body.scrollWidth%3B%0A%20%20%20%20%20%20%09totalDim.height%20%3D%20document.body.scrollHeight%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20else%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%09%20totalDim.width%20%3D%20document.width%3B%0A%20%20%20%20%20%20%09%20totalDim.height%20%3D%20document.height%3B%0A%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20//%20Gets%20the%20location%20of%20the%20available%20screen%20space%0A%20%20%20%20%20%20var%20centerDim%3Dnew%20LeoHighlightsDimension%280%2C0%29%3B%0A%20%20%20%20%20%20if%28self.innerWidth%20%26%26%20self.innerHeight%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20centerDim.width%20%3D%20self.innerWidth-%28totalDim.height%3Eself.innerHeight?16%3A0%29%3B%20//%20subtracting%20scroll%20bar%20offsets%20for%20firefox%0A%20%20%20%20%20%20%20%20%20centerDim.height%20%3D%20self.innerHeight-%28totalDim.width%3Eself.innerWidth?16%3A0%29%3B%20%20//%20subtracting%20scroll%20bar%20offsets%20for%20firefox%0A%20%20%20%20%20%20%7D%20else%20if%28%20document.documentElement%20%26%26%20document.documentElement.clientHeight%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20centerDim.width%20%3D%20document.documentElement.clientWidth%3B%0A%20%20%20%20%20%20%20%20%20centerDim.height%20%3D%20document.documentElement.clientHeight%3B%0A%20%20%20%20%20%20%7D%20else%20if%28%20document.body%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20centerDim.width%20%3D%20document.body.clientWidth%3B%0A%20%20%20%20%20%20%20%20%20centerDim.height%20%3D%20document.body.clientHeight%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20//%20Get%20the%20current%20dimension%20of%20the%20popup%20element%0A%20%20%20%20%20%20var%20iFrameDim%3Dnew%20LeoHighlightsDimension%28iFrame.offsetWidth%2CiFrame.offsetHeight%29%0A%20%20%20%20%20%20if%20%28iFrameDim.width%20%3C%3D%200%29%0A%20%20%20%20%20%20%09iFrameDim.width%20%3D%20iFrame.style.width.substring%280%2C%20iFrame.style.width.indexOf%28%27px%27%29%29%3B%0A%20%20%20%20%20%20if%20%28iFrameDim.height%20%3C%3D%200%29%0A%20%20%20%20%20%20%09iFrameDim.height%20%3D%20iFrame.style.height.substring%280%2C%20iFrame.style.height.indexOf%28%27px%27%29%29%3B%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20/*%20Calculate%20the%20position%2C%20lower%20right%20hand%20corner%20by%20default%20*/%0A%20%20%20%20%20%20var%20position%3Dnew%20LeoHighlightsPosition%280%2C0%29%3B%0A%20%20%20%20%20%20position.x%3DscrolledPos.x+centerDim.width-iFrameDim.width-LEO_HIGHLIGHTS_ADJUSTMENT.x%3B%0A%20%20%20%20%20%20position.y%3DscrolledPos.y+centerDim.height-iFrameDim.height-LEO_HIGHLIGHTS_ADJUSTMENT.y%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20if%28anchor%21%3Dnull%29%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20//centerDim%20in%20relation%20to%20the%20anchor%20element%20if%20available%0A%20%20%20%20%20%20%20%20%20var%20topOrBottom%20%3D%20false%3B%0A%20%20%20%20%20%20%20%20%20var%20anchorPos%3D_leoHighlightsGetLocation%28document.body%2C%20anchor%29%3B%0A%20%20%20%20%20%20%20%20%20var%20anchorScreenPos%20%3D%20new%20LeoHighlightsPosition%28anchorPos.x-scrolledPos.x%2CanchorPos.y-scrolledPos.y%29%3B%0A%20%20%20%20%20%20%20%20%20var%20anchorDim%3Dnew%20LeoHighlightsDimension%28anchor.offsetWidth%2Canchor.offsetHeight%29%0A%20%20%20%20%20%20%20%20%20if%20%28anchorDim.width%20%3C%3D%200%29%0A%20%20%20%20%20%20%20%20%20%09anchorDim.width%20%3D%20anchor.style.width.substring%280%2C%20anchor.style.width.indexOf%28%27px%27%29%29%3B%0A%20%20%20%20%20%20%20%20%20if%20%28anchorDim.height%20%3C%3D%200%29%0A%20%20%20%20%20%20%20%20%20%09anchorDim.height%20%3D%20anchor.style.height.substring%280%2C%20anchor.style.height.indexOf%28%27px%27%29%29%3B%0A%0A%20%20%20%20%20%20%20%20%20//%20Check%20if%20the%20popup%20can%20be%20shown%20above%20or%20below%20the%20element%0A%20%20%20%20%20%20%20%20%20if%20%28centerDim.height%20-%20anchorDim.height%20-%20iFrameDim.height%20-%20anchorScreenPos.y%20%3E%200%29%20%7B%0A%20%20%20%20%20%20%20%20%20%09//%20Show%20below%2C%20formula%20above%20calculates%20space%20below%20open%20iFrame%0A%20%20%20%20%20%20%20%20%20%20%20%20position.y%20%3D%20anchorPos.y%20+%20anchorDim.height%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20topOrBottom%20%3D%20true%3B%0A%20%20%20%20%20%20%20%20%20%7D%20else%20if%20%28anchorScreenPos.y%20-%20anchorDim.height%20-%20iFrameDim.height%20%3E%200%29%20%7B%0A%20%20%20%20%20%20%20%20%20%09//%20Show%20above%2C%20formula%20above%20calculates%20space%20above%20open%20iFrame%0A%20%20%20%20%20%20%20%20%20%09position.y%20%3D%20anchorPos.y%20-%20iFrameDim.height%20-%20anchorDim.height%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20topOrBottom%20%3D%20true%3B%0A%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20if%20%28topOrBottom%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20//%20We%20attempt%20top%20attach%20the%20window%20to%20the%20element%0A%20%20%20%20%20%20%20%20%20%09position.x%20%3D%20anchorPos.x%20-%20iFrameDim.width%20/%202%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20%28position.x%20%3C%200%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%09position.x%20%3D%200%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20else%20if%20%28position.x%20+%20iFrameDim.width%20%3E%20scrolledPos.x%20+%20centerDim.width%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%09position.x%20%3D%20scrolledPos.x%20+%20centerDim.width%20-%20iFrameDim.width%3B%0A%20%20%20%20%20%20%20%20%20%7D%20else%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20//%20Attempt%20to%20align%20on%20the%20right%20or%20left%20hand%20side%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20%28centerDim.width%20-%20anchorDim.Width%20-%20iFrameDim.width%20-%20anchorScreenPos.x%20%3E%200%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20position.x%20%3D%20anchorPos.x%20+%20anchorDim.width%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20else%20if%20%28anchorScreenPos.x%20-%20anchorDim.width%20-%20iFrameDim.width%20%3E%200%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%09position.x%20%3D%20anchorPos.x%20-%20anchorDim.width%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20else%20%20//%20default%20to%20below%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20position.y%20%3D%20anchorPos.y%20+%20anchorDim.height%3B%0A%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20/*%20Make%20sure%20that%20we%20don%27t%20go%20passed%20the%20right%20hand%20border%20*/%0A%20%20%20%20%20%20if%28position.x+iFrameDim.width%3EcenterDim.width-20%29%0A%20%20%20%20%20%20%09position.x%3DcenterDim.width-%28iFrameDim.width+20%29%3B%0A%20%20%20%20%20%20%09%09%0A%20%20%20%20%20%20//%20Make%20sure%20that%20we%20didn%27t%20go%20passed%20the%20start%0A%20%20%20%20%20%20if%28position.x%3C0%29%0A%20%20%20%20%20%20%20%20%20position.x%3D0%3B%0A%20%20%20%20%20%20if%28position.y%3C0%29%0A%20%20%20%20%20%20%09position.y%3D0%3B%0A%0A%20%20%20%20%20%20if%20%28LEO_HIGHLIGHTS_DEBUG_POS%26%26LEO_HIGHLIGHTS_DEBUG%29%20%7B%0A%20%20%20%20%20%20%20%20%20alert%28%22%20Popup%20info%20id%3A%20%20%20%20%20%20%20%22%20+iFrame.id+%22%20-%20%22+anchor.id%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5Cnscrolled%20%20%20%20%20%20%20%20%20%20%22%20+%20scrolledPos%20%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5Cncenter/visible%20%20%20%20%22%20+%20centerDim%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5Cnanchor%20%28absolute%29%20%22%20+%20anchorPos%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5Cnanchor%20%28screen%29%20%20%20%22%20+%20anchorScreenPos%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5CnSize%20%28anchor%29%20%20%20%20%20%22%20+%20anchorDim%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5CnSize%20%28popup%29%20%20%20%20%20%20%22%20+%20iFrameDim%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20+%20%22%5CnResult%20pos%20%20%20%20%20%20%20%20%22%20+%20position%29%3B%0A%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20//%20Set%20the%20popup%20location%0A%20%20%20%20%20%20iFrame.style.left%20%3D%20position.x%20+%20%22px%22%3B%0A%20%20%20%20%20%20iFrame.style.top%20%20%3D%20position.y%20+%20%22px%22%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsUpdatePopupPos%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A%0A/**%0A%20*%20This%20will%20show%20the%20passed%20in%20element%20as%20a%20popup%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@param%20size%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsShowPopup%28anchorId%2Csize%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09var%20popup%3Dnew%20LeoHighlightsPopup%28anchorId%2Csize%29%3B%0A%20%20%20%09popup.show%28%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsShowPopup%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A%0A/**%0A%20*%20This%20will%20transform%20the%20passed%20in%20url%20to%20a%20rover%20url%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsGetRoverUrl%28url%29%0A%7B%0A%09var%20rover%3D%22711-36858-13496-14%22%3B%0A%09var%20roverUrl%3D%22http%3A//rover.ebay.com/rover/1/%22+rover+%22/4?%26mpre%3D%22+encodeURI%28url%29%3B%0A%09%0A%09return%20roverUrl%3B%0A%7D%0A%0A/**%0A%20*%20Class%20for%20a%20Popup%20%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@param%20size%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20LeoHighlightsPopup%28anchorId%2Csize%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09this.anchorId%3DanchorId%3B%0A%20%20%20%09this.anchor%3D_leoHighlightsFindElementById%28this.anchorId%29%3B%0A%20%20%20%09this.iFrame%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_ID%29%3B%0A%20%20%20%09this.iFrameDiv%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_DIV_ID%29%3B%0A%20%20%20%09%0A%20%20%20%09var%20url%3Dunescape%28this.anchor.getAttribute%28%27leoHighlights_url%27%29%29%3B%0A%0A%20%20%20%09this.iFrame.src%3Durl%3B%0A%0A%20%20%20%09leoHighlightsSetSize%28size%29%3B%0A%20%20%20%09%0A%20%20%20%09this.updatePos%3Dfunction%28%29%20%7B%20_leoHighlightsUpdatePopupPos%28this.iFrameDiv%2Cthis.anchor%29%7D%3B%0A%20%20%20%09this.show%3Dfunction%28%29%20%7Bthis.updatePos%28%29%3B%20this.iFrameDiv.style.visibility%20%3D%20%22visible%22%3B%20this.iFrameDiv.style.display%20%3D%20%22block%22%3B%20this.updatePos%28%29%3B%7D%20%20%20%09%09%0A%20%20%20%09this.scroll%3Dfunction%28%29%20%7B%20this.updatePos%28%29%3B%7D%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22new%20LeoHighlightsPopup%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/**%0A*%0A*%20This%20can%20be%20used%20to%20close%20an%20iframe%0A*%0A*%20@param%20id%0A*%20@return%0A*/%0Afunction%20leoHighlightsSetSize%28size%2CclickId%29%0A%7B%0A%09try%0A%09%7B%0A%09%09/*%20Get%20the%20appropriate%20sizes%20*/%0A%20%20%09%09var%20iFrame%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_ID%29%3B%0A%20%20%09%09var%20iFrameDiv%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_DIV_ID%29%3B%0A%20%20%09%09%0A%20%20%09%09/*%20Figure%20out%20the%20correct%20sizes%20*/%0A%20%20%09%09var%20iFrameSize%3D%28size%3D%3D1%29?LEO_HIGHLIGHTS_IFRAME_CLICK_SIZE%3ALEO_HIGHLIGHTS_IFRAME_HOVER_SIZE%3B%0A%20%20%09%09var%20divSize%3D%28size%3D%3D1%29?LEO_HIGHLIGHTS_DIV_CLICK_SIZE%3ALEO_HIGHLIGHTS_DIV_HOVER_SIZE%3B%0A%0A%20%20%09%09/*%20Refresh%20the%20iFrame%27s%20url%2C%20by%20removing%20the%20size%20arg%20and%20adding%20it%20again%20*/%0A%20%20%09%09var%20url%3DiFrame.src%3B%0A%20%20%09%09var%20idx%3Durl.indexOf%28%22%26size%3D%22%29%3B%0A%20%20%09%09if%28idx%3E%3D0%29%0A%20%20%09%09%09url%3Durl.substring%280%2Cidx%29%3B%0A%09%09url+%3D%28%22%26size%3D%22+size%29%3B%0A%09%09if%28clickId%29%0A%09%09%09url+%3D%28%22%26clickId%3D%22+clickId%29%3B%0A%09%09%0A%20%20%09%09iFrame.src%3Durl%3B%0A%20%20%09%09%0A%20%20%09%09/*%20Clear%20the%20hover%20flag%2C%20if%20the%20user%20shows%20this%20at%20full%20size%20*/%0A%20%20%09%09if%28size%3D%3D1%26%26_leoHighlightsPrevElem%29%0A%20%20%09%09%09_leoHighlightsPrevElem.hover%3Dfalse%3B%0A%20%20%09%09%0A%20%20%09%09_leoHighlightsSetSize%28iFrame%2CiFrameSize%29%3B%0A%20%20%09%09_leoHighlightsSetSize%28iFrameDiv%2CdivSize%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsSetSize%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A%20*%20Start%20the%20popup%20a%20little%20bit%20delayed.%0A%20*%20Somehow%20IE%20needs%20some%20time%20to%20find%20the%20element%20by%20id.%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@param%20size%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsShowPopup%28anchorId%2Csize%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%09%09var%20elem%3D_leoHighlightsFindElementById%28anchorId%29%3B%0A%20%20%09%09if%28_leoHighlightsPrevElem%26%26%28_leoHighlightsPrevElem%21%3Delem%29%29%0A%20%20%09%09%09_leoHighlightsPrevElem.shown%3Dfalse%3B%0A%20%20%09%09elem.shown%3Dtrue%3B%0A%09%09_leoHighlightsPrevElem%3Delem%3B%0A%20%20%20%09%0A%20%20%20%09/*%20FF%20needs%20to%20find%20the%20element%20first%20*/%0A%20%20%20%09_leoHighlightsFindElementById%28anchorId%29%3B%0A%20%20%20%09%0A%20%20%20%09setTimeout%28%22_leoHighlightsShowPopup%28%5C%27%22+anchorId+%22%5C%27%2C%5C%27%22+size+%22%5C%27%29%3B%22%2C10%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHighlightsShowPopup%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A*%0A*%20This%20can%20be%20used%20to%20close%20an%20iframe%0A*%0A*%20@param%20id%0A*%20@return%0A*/%0Afunction%20leoHighlightsHideElem%28id%29%0A%7B%0A%09try%0A%09%7B%0A%09%09/*%20Get%20the%20appropriate%20sizes%20*/%0A%20%20%09%09var%20elem%3D_leoHighlightsFindElementById%28id%29%3B%0A%20%20%09%09if%28elem%29%0A%20%20%09%09%09elem.style.visibility%3D%22hidden%22%3B%0A%20%20%09%09%0A%20%20%09%09/*%20Clear%20the%20page%20for%20the%20next%20run%20through%20*/%0A%20%20%09%09var%20iFrame%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_ID%29%3B%0A%20%20%09%09if%28iFrame%29%0A%20%20%09%09%09iFrame.src%3D%22about%3Ablank%22%3B%0A%20%20%09%09%0A%20%20%09%09%0A%20%20%09%09if%28_leoHighlightsPrevElem%29%0A%20%20%09%09%7B%0A%20%20%09%09%09_leoHighlightsPrevElem.shown%3Dfalse%3B%0A%20%20%09%09%09_leoHighlightsPrevElem%3Dnull%3B%0A%20%20%09%09%7D%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHideElem%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A*%0A*%20This%20can%20be%20used%20to%20close%20an%20iframe.%0A*%20Since%20the%20iFrame%20is%20reused%20the%20frame%20only%20gets%20hidden%0A*%0A*%20@return%0A*/%0Afunction%20leoHighlightsIFrameClose%28%29%0A%7B%0A%20%20try%0A%20%20%7B%0A%09%20%20_leoHighlightsSimpleGwCallBack%28%22LeoHighlightsHideIFrame%22%29%3B%0A%20%20%7D%0A%20%20catch%28e%29%0A%20%20%7B%0A%09%20%20_leoHighlightsReportExeception%28%22leoHighlightsIFrameClose%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20should%20handle%20the%20click%20events%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleClick%28anchorId%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%09%09var%20anchor%3D_leoHighlightsFindElementById%28anchorId%29%3B%0A%20%20%09%09anchor.hover%3Dfalse%3B%0A%20%20%09%09if%28anchor.startTimer%29%0A%20%20%09%09%09clearTimeout%28anchor.startTimer%29%3B%0A%20%20%20%09%0A%20%20%09%09leoHighlightsEvent%28%22clicked%22%29%3B%0A%20%20%20%09leoHighlightsShowPopup%28anchorId%2C1%29%3B%0A%20%20%20%09return%20false%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHighlightsHandleClick%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A%20*%20This%20should%20handle%20the%20hover%20events%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleHover%28anchorId%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%09%09var%20anchor%3D_leoHighlightsFindElementById%28anchorId%29%3B%0A%20%20%09%09anchor.hover%3Dtrue%3B%0A%20%20%09%09%0A%20%20%09%09leoHighlightsEvent%28%22hovered%22%29%3B%0A%20%20%20%09leoHighlightsShowPopup%28anchorId%2C0%29%3B%0A%20%20%20%09return%20false%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHighlightsHandleHover%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A%20*%20This%20will%20handle%20the%20mouse%20over%20setup%20timers%20for%20the%20appropriate%20timers%0A%20*%20%0A%20*%20@param%20id%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleMouseOver%28id%29%0A%7B%0A%09try%0A%09%7B%0A%09%09var%20anchor%3D_leoHighlightsFindElementById%28id%29%3B%09%09%0A%0A%09%09/*%20Clear%20the%20end%20timer%20if%20required%20*/%0A%09%09if%28anchor.endTimer%29%0A%09%09%09clearTimeout%28anchor.endTimer%29%3B%0A%09%09anchor.endTimer%3Dnull%3B%0A%09%09%0A%09%09anchor.style.background%3DLEO_HIGHLIGHTS_BACKGROUND_STYLE_HOVER%3B%0A%09%09%0A%09%09/*%20The%20element%20is%20already%20showing%20we%20are%20done%20*/%0A%09%09if%28anchor.shown%29%0A%09%09%09return%3B%0A%09%09%0A%09%09/*%20Setup%20the%20start%20timer%20if%20required%20*/%0A%09%09anchor.startTimer%3DsetTimeout%28function%28%29%7B%0A%09%09%09leoHighlightsHandleHover%28anchor.id%29%3B%0A%09%09%09anchor.hover%3Dtrue%3B%0A%09%09%09%7D%2C%0A%09%09%09LEO_HIGHLIGHTS_SHOW_DELAY_MS%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHandleMouseOver%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A%20*%20This%20will%20handle%20the%20mouse%20over%20setup%20timers%20for%20the%20appropriate%20timers%0A%20*%20%0A%20*%20@param%20id%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleMouseOut%28id%29%0A%7B%0A%09try%0A%09%7B%09%0A%09%09var%20anchor%3D_leoHighlightsFindElementById%28id%29%3B%0A%09%09%0A%09%09/*%20Clear%20the%20start%20timer%20if%20required%20*/%0A%09%09if%28anchor.startTimer%29%0A%09%09%09clearTimeout%28anchor.startTimer%29%3B%0A%09%09anchor.startTimer%3Dnull%3B%0A%09%09%0A%09%09anchor.style.background%3DLEO_HIGHLIGHTS_BACKGROUND_STYLE_DEFAULT%3B%0A%09%09if%28%21anchor.shown||%21anchor.hover%29%0A%09%09%09return%3B%0A%09%09%0A%09%09/*%20Setup%20the%20start%20timer%20if%20required%20*/%0A%09%09anchor.endTimer%3DsetTimeout%28function%28%29%7B%0A%09%09%09leoHighlightsHideElem%28LEO_HIGHLIGHTS_IFRAME_DIV_ID%29%3B%0A%09%09%09anchor.shown%3Dfalse%3B%0A%09%09%09_leoHighlightsPrevElem%3Dnull%3B%0A%09%09%09%7D%2CLEO_HIGHLIGHTS_HIDE_DELAY_MS%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHandleMouseOut%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A%20*%20This%20handles%20the%20mouse%20movement%20into%20the%20currently%20opened%20window.%0A%20*%20Just%20clear%20the%20close%20timer%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleIFrameMouseOver%28%29%0A%7B%0A%09try%0A%09%7B%0A%09%09if%28_leoHighlightsPrevElem%26%26_leoHighlightsPrevElem.endTimer%29%0A%09%09%09clearTimeout%28_leoHighlightsPrevElem.endTimer%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHandleIFrameMouseOver%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A%20*%20This%20handles%20the%20mouse%20movement%20into%20the%20currently%20opened%20window.%0A%20*%20Just%20clear%20the%20close%20timer%0A%20*%20%0A%20*%20@param%20id%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleIFrameMouseOut%28%29%0A%7B%0A%09try%0A%09%7B%0A%09%09if%28_leoHighlightsPrevElem%29%0A%09%09%09leoHighlightsHandleMouseOut%28_leoHighlightsPrevElem.id%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHandleIFrameMouseOut%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A/**%0A%20*%20This%20is%20a%20method%20is%20used%20to%20make%20the%20javascript%20within%20IE%20runnable%0A%20*/%0Avar%20leoHighlightsRanUpdateDivs%3Dfalse%3B%0Afunction%20leoHighlightsUpdateDivs%28%29%0A%7B%0A%09try%0A%09%7B%0A%09%09/*%20Check%20if%20this%20is%20an%20IE%20browser%20and%20if%20divs%20have%20been%20updated%20already%20*/%0A%09%09if%28document.all%26%26%21leoHighlightsRanUpdateDivs%29%0A%09%09%7B%0A%09%09%09leoHighlightsRanUpdateDivs%3Dtrue%3B%20//%20Set%20early%20to%20prevent%20running%20twice%0A%09%09%09for%28var%20i%3D0%3Bi%3CLEO_HIGHLIGHTS_MAX_HIGHLIGHTS%3Bi++%29%0A%09%09%09%7B%0A%09%09%09%09var%20id%3D%22leoHighlights_Underline_%22+i%3B%0A%09%09%09%09var%20elem%3D_leoHighlightsFindElementById%28id%29%3B%0A%09%09%09%09if%28elem%3D%3Dnull%29%0A%09%09%09%09%09break%3B%0A%09%09%09%09%0A%09%09%09%09if%28%21elem.leoChanged%29%0A%09%09%09%09%7B%0A%09%09%09%09%09elem.leoChanged%3Dtrue%3B%0A%09%09%09%09%0A%09%09%09%09%09/*%20This%20will%20make%20javaScript%20runnable%20*/%09%09%09%09%0A%09%09%09%09%09elem.outerHTML%3Delem.outerHTML%3B%0A%09%09%09%09%7D%0A%09%09%09%7D%0A%09%09%7D%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsUpdateDivs%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0Aif%28document.all%29%0A%09setTimeout%28leoHighlightsUpdateDivs%2C200%29%3B%0A%0A/**%0A%20*%20This%20is%20used%20to%20report%20events%20to%20the%20plugin%0A%20*%20@param%20key%0A%20*%20@param%20sub%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsEvent%28key%2C%20sub%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20var%20gwObj%20%3D%20new%20Gateway%28%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22key%22%2C%20key%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22sub%22%2C%20sub%29%3B%0A%20%20%20%20%20%20gwObj.callName%28%22LeoHighlightsEvent%22%29%3B%09%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHighlights%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/*----------------------------------------------------------------------*/%0A/*%20Methods%20provided%20to%20the%20highlight%20providers...%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20*/%0A/*----------------------------------------------------------------------*/%0A%0A/**%0A%20*%20This%20will%20redirect%20the%20top%20window%20to%20the%20passed%20in%20url%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@param%20parentId%0A%20*%20@return%0A%20*/%0Afunction%20leoHL_RedirectTop%28url%2CparentId%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%09%09leoHighlightsEvent%28%22clicked.2eBay%22%29%3B%0A%20%20%20%09_leoHighlightsRedirectTop%28url%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHL_RedirectTop%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20will%20set%20the%20size%20of%20the%20iframe%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@param%20parentId%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20leoHl_setSize%28size%2Curl%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09/*%20Get%20the%20clickId%20*/%0A%20%20%20%09var%20clickId%3D_leoHighlightsGetUrlArg%28%20url%2C%22clickId%22%29%0A%20%20%20%09%0A%20%20%20%20%20%20var%20gwObj%20%3D%20new%20Gateway%28%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22size%22%2Csize%29%3B%0A%20%20%20%20%20%20if%28clickId%29%0A%20%20%20%20%20%20%20%20%20gwObj.addParam%28%22clickId%22%2CclickId+%22_blah%22%29%3B%0A%20%20%20%20%20%20gwObj.callName%28%22LeoHighlightsSetSize%22%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHl_setSize%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A&quot;); &lt;/script&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://eclipse-info.blogspot.com/feeds/7731262698605742734/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://eclipse-info.blogspot.com/2009/07/on-fly-analysis-of-code.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/7731262698605742734'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/7731262698605742734'/><link rel='alternate' type='text/html' href='http://eclipse-info.blogspot.com/2009/07/on-fly-analysis-of-code.html' title='On the fly analysis of code!'/><author><name>Madhu</name><uri>http://www.blogger.com/profile/05191409900046165475</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinHjYGa5FscB42dzdcnMkhHexfURSsCqOwLZK4PZcxCH0Wwygq1umSZmGAmS7t62S4J6UMaq2JtR9uDUoQq8XgI2ZoLPS8wMyNGUDtT04PQOXI5hmegqqgTKgaTAT6MQ/s220/Photo+on+2011-07-22+at+17.58+%232.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3399985190174266183.post-4502347577717971167</id><published>2009-06-27T07:37:00.011+05:30</published><updated>2009-06-27T13:16:09.213+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Eclipse Galileo Motivation"/><title type='text'>Kudos to the Eclipse Galileo Developers!</title><content type='html'>When 40% of all the commercial projects are failing due to one or the other reasons, the technique and style of the eclipse developers have successfully delivered one more annual release of &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://eclipse.org/&quot;&gt;Eclipse Galileo&lt;/a&gt;. This is one of the modern  wonders. Nothing more than a set of &#39;strong minds&#39; are required for this kind of achievement.&lt;br /&gt;&lt;br /&gt;Any great idea can be spoiled by a careless mind. The same way, any small idea can be turned to a master piece by a great mind. The story of two magicians which wouldn&#39;t bring much excitement, when it got into the hands of a director like &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://en.wikipedia.org/wiki/Christopher_Nolan&quot;&gt;Christopher Nolan&lt;/a&gt;; it turned out to be one of my favourite movie and greatest hits. If you haven&#39;t watched the movie &#39;&lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://www.imdb.com/title/tt0482571/&quot;&gt;The Prestige&lt;/a&gt;&#39;, I urge you to watch it as soon as possible.&lt;br /&gt;&lt;br /&gt;The enthusiasm and vibrancy of the hundreds of minds in the Eclipse community, the electric current generated by their thoughts; these are still attracting lot of new people to the community. Framework projects, RnD projects, graphical projecs, modelling projects, bio projects ....&lt;br /&gt;&lt;br /&gt;There were many arguments last year. The complexity of some of the frameworks, the simplicity of some of the tools; the anger towards some of the eclipse processes; the sadness when the expected features had to be dropped out of the final delivery, the happiness when the customer/end user said &#39;&quot;See this new feature, Wow&#39;&quot;.&lt;br /&gt;&lt;br /&gt;Lot of emotions and lot of memories. The emotions which starts in the brain of a single person, when backed by the support of a highly motivated community results in successes similar to what happens in our Eclipse community.&lt;br /&gt;&lt;br /&gt;Open source is not a charity always. Hundreds of businesses are thriving upon the open source model. When one of the basic values of humans is followed, ie, &#39;give and then take&#39;; it results in success and content feeling. When we are following our values, when we are backed by a community with the same set of values, we are at our best.&lt;br /&gt;&lt;br /&gt;Many team members were flexing their brain muscles for a long time. Then one of them said on 24th of June, &quot;Guys, we are done for the year&quot;; Its time to relax and celebrate now. Some celebrate the success over a cup of coffee, some over the dance floor and some with a vacation trip.&lt;br /&gt;&lt;br /&gt;Life goes on; Eclipse goes on; Next year &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://www.eclipse.org/e4/&quot;&gt;e4&lt;/a&gt; is one of the most anticipated outputs from the community.&lt;br /&gt;&lt;br /&gt;I dedicate this blog to all those gurus who developed the basic eclipse framework and donated it to the open source community; to those who still develop new frameworks in the open source; You people dared to go to the wild, never knowing the dangers behind the hidden rocks and trees, you cleared the path for the rest of us.&lt;br /&gt;&lt;br /&gt;I like to convey my gratitude to the hardwork of the hundreds of developers who has worked towards the success of galileo, &quot;Dudes, you all have done a great job. You guys are making our jobs easier&quot;.&lt;br /&gt;&lt;br /&gt;How can this kind of success be repeated in the high percentage of failing commericial projects?&lt;br /&gt;&lt;br /&gt;You need to think out of the bondaries of your organizations, you need to come out of your conventional thoughts, you need to use your brain for what it is designed. &quot;Share&quot; and put some thought behind it, you will start to get the returns. As &lt;a style=&quot;color: rgb(51, 51, 255);&quot; href=&quot;http://www.objectmentor.com/omTeam/martin_r.html&quot;&gt;Robert C Martin&lt;/a&gt; says, don&#39;t sprint, run the marathon. When your muscles get tired and gets deprived of energy, its your mind which needs to give strength. If the mind losses focus, then the body will fail, our actions become meaningless and the projects fail. &lt;input id=&quot;gwProxy&quot; type=&quot;hidden&quot;&gt;&lt;!--Session data--&gt;&lt;input onclick=&quot;jsCall();&quot; id=&quot;jsProxy&quot; type=&quot;hidden&quot;&gt;&lt;br /&gt;&lt;br /&gt;Focus on what you need to achieve. Put your mind and body for it. The results will follow. Its all a mind game. You are a reflection of your mind!&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-style: italic;&quot;&gt;madhu&lt;/span&gt;&lt;br /&gt;&lt;div id=&quot;refHTML&quot;&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://eclipse-info.blogspot.com/feeds/4502347577717971167/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://eclipse-info.blogspot.com/2009/06/kudos-to-eclipse-galileo-developers.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/4502347577717971167'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3399985190174266183/posts/default/4502347577717971167'/><link rel='alternate' type='text/html' href='http://eclipse-info.blogspot.com/2009/06/kudos-to-eclipse-galileo-developers.html' title='Kudos to the Eclipse Galileo Developers!'/><author><name>Madhu</name><uri>http://www.blogger.com/profile/05191409900046165475</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinHjYGa5FscB42dzdcnMkhHexfURSsCqOwLZK4PZcxCH0Wwygq1umSZmGAmS7t62S4J6UMaq2JtR9uDUoQq8XgI2ZoLPS8wMyNGUDtT04PQOXI5hmegqqgTKgaTAT6MQ/s220/Photo+on+2011-07-22+at+17.58+%232.jpg'/></author><thr:total>0</thr:total></entry></feed>