On 6/6/11 1:43 PM, "Marlon Pierce" <[email protected]> wrote:

>-----BEGIN PGP SIGNED MESSAGE-----
>Hash: SHA1
>
>I cleaned it up a bit already, but let me look at the init.  There is
>still a bug associated with deleting gadgets that have been moved.

Moved or deleted? Can you elaborate on the bug a bit?

> 
>
>
>Marlon
>
>
>On 6/6/11 1:36 PM, Franklin, Matthew B. wrote:
>> On 6/6/11 1:10 PM, "[email protected]" <[email protected]> wrote:
>> 
>>> Author: mpierce
>>> Date: Mon Jun  6 17:10:32 2011
>>> New Revision: 1132706
>>>
>>> URL: http://svn.apache.org/viewvc?rev=1132706&view=rev
>>> Log:
>>> Reorganizing the widget deletion code (RAVE-41) so that most of the
>>> action takes place in rave.js rather than home.jsp.  Probably this
>>>needs
>>> a better design pattern applied to it.
>> 
>> Thanks for taking that on.  I haven't had a ton of time to look over the
>> delete code yet, but from what I have seen, it looks like there should
>>be
>> no reason that we can't do what is left in the home.jsp in the ui.init
>> function of rave.js (init the buttons for all widgets with one
>> expression).  This would allow us to move the script includes for
>>jquery,
>> etc back to the bottom of the page, which is where we really want them.
>> 
>> I can go ahead and make this change unless Marlon or others who have
>>been
>> working on it want to give it a go.
>> 
>> -Matt
>> 
>>>
>>>
>>> Modified:
>>>    
>>> incubator/rave/trunk/rave-portal/src/main/webapp/WEB-INF/views/home.jsp
>>>    incubator/rave/trunk/rave-portal/src/main/webapp/script/rave.js
>>>
>>> Modified: 
>>> incubator/rave/trunk/rave-portal/src/main/webapp/WEB-INF/views/home.jsp
>>> URL: 
>>> 
>>>http://svn.apache.org/viewvc/incubator/rave/trunk/rave-portal/src/main/w
>>>eb
>>> app/WEB-INF/views/home.jsp?rev=1132706&r1=1132705&r2=1132706&view=diff
>>> 
>>>========================================================================
>>>==
>>> ====
>>> --- 
>>> incubator/rave/trunk/rave-portal/src/main/webapp/WEB-INF/views/home.jsp
>>> (original)
>>> +++ 
>>> incubator/rave/trunk/rave-portal/src/main/webapp/WEB-INF/views/home.jsp
>>> Mon Jun  6 17:10:32 2011
>>> @@ -64,41 +64,35 @@
>>>         <div class="widget-title-bar" >
>>>             <span
>>> 
>>>id="widget-${regionWidget.id}-title">${regionWidget.widget.title}</span>
>>>             
>>> -            <span id="widget-${regionWidget.id}-toolbar"
>>> style="float:right;">
>>> -              <button id="widget-${regionWidget.id}-max"
>>> class="widget-toolbar-btn"></button>
>>> -                                             <button 
>>> id="widget-${regionWidget.id}-remove"
>>> class="widget-toolbar-btn"></button>
>>> -                                             <script>
>>> -              $("#widget-${regionWidget.id}-max").button({
>>> -                text: false,
>>> -                icons: {
>>> -                  primary: "ui-icon-arrow-4-diag"
>>> -                }
>>> -              }).click(function() {
>>> -                alert("not implemented yet.");
>>> -              });
>>> -                                             
>>> $("#widget-${regionWidget.id}-remove").button({
>>> -                                         text: false,
>>> -                                         icons: {
>>> -                                           primary: "ui-icon-close"
>>> -                                         }
>>> -                                       }).unbind("click").click(function() 
>>> {
>>> -                                           alert("remove gadget");
>>> -                                         rave.api.rpc.removeWidget({
>>> -                                             regionWidgetId: 
>>> "${regionWidget.id}",
>>> -                                             pageId: "${defaultPage.id}",
>>> -                                             region: {
>>> -                                                 id : 
>>> rave.getGadgetRegion("${regionWidget.id}")
>>> -                                             },
>>> -                                             succCB: function() {
>>> -                                                     
>>> $("#widget-wrapper-${regionWidget.id}").remove();
>>> -                                             }
>>> -                                           });
>>> -                                       });
>>> -                                             
>>> rave.mapGadgetToRegion("${regionWidget.id}", "${region.id}");
>>> -                                             </script>
>>> -                                           </span>
>>> -            
>>> -        </div>
>>> +                           <!-- These are toolbar buttons -->
>>> +                           <span id="widget-${regionWidget.id}-toolbar" 
>>> style="float:right;">
>>> +                             <button id="widget-${regionWidget.id}-max"
>>> +                                                    
>>> class="widget-toolbar-btn"
>>> +                                                    
>>> onclick="rave.toolbarMaximize(this)"></button>
>>> +                             <button id="widget-${regionWidget.id}-remove"
>>> +                                                    
>>> class="widget-toolbar-btn"
>>> +                                                    
>>> 
>>>onclick="rave.toolbarDelete(this,${regionWidget.id},${region.id},${defau
>>>lt
>>> Page.id})">
>>> +                             </button>
>>> +                             <script>
>>> +                                    //This decorates the toolbar buttons.  
>>> As currently written,
>>> +                                    //it needs to be in the forEach loop.
>>> +                                    
>>> $("#widget-${regionWidget.id}-max").button({
>>> +                                    text: false,
>>> +                                    icons: {
>>> +                                    primary: "ui-icon-arrow-4-diag"
>>> +                                    }
>>> +                                    });
>>> +
>>> +                                    
>>> $("#widget-${regionWidget.id}-remove").button({
>>> +                                    text: false,
>>> +                                    icons: {
>>> +                                    primary: "ui-icon-close"
>>> +                                    }
>>> +                                    });
>>> +                             </script>
>>> +
>>> +                           </span>
>>> +             </div>
>>>         <div class="widget" id="widget-${regionWidget.id}-body">
>>>                      <!-- 
>>>                                     Among other things, the render-widget 
>>> tag will populate the
>>> widgets[] array.
>>>
>>> Modified: 
>>>incubator/rave/trunk/rave-portal/src/main/webapp/script/rave.js
>>> URL: 
>>> 
>>>http://svn.apache.org/viewvc/incubator/rave/trunk/rave-portal/src/main/w
>>>eb
>>> app/script/rave.js?rev=1132706&r1=1132705&r2=1132706&view=diff
>>> 
>>>========================================================================
>>>==
>>> ====
>>> --- incubator/rave/trunk/rave-portal/src/main/webapp/script/rave.js
>>> (original)
>>> +++ incubator/rave/trunk/rave-portal/src/main/webapp/script/rave.js Mon
>>> Jun  6 17:10:32 2011
>>> @@ -105,6 +105,36 @@ var rave = rave || (function() {
>>>
>>>     })();
>>>
>>> +    /**
>>> +     * Group widget toolbar functions
>>> +     */
>>> +    var toolbar = (function() {
>>> +             function init(){
>>> +             }
>>> +             function maximizeAction(button){
>>> +                           alert("Maximize: "+button.id+" not yet 
>>> implemented.");
>>> +                           
>>> +             };
>>> +             function 
>>>deleteAction(button,myRegionWidgetId,myRegionId,myPageId){
>>> +//                         alert("Delete:"+button.id+" 
>>> "+myRegionWidgetId+" "+myRegionId+"
>>> "+myPageId);
>>> +                           rave.api.rpc.removeWidget({
>>> +                                    regionWidgetId: myRegionWidgetId,
>>> +                                    pageId : myPageId,
>>> +                                    region: {
>>> +                                             id : myRegionId
>>> +                                    },
>>> +                                    succCB: function() {
>>> +                                             
>>> $("#widget-wrapper-"+myRegionWidgetId).remove();
>>> +                                    }
>>> +                           });
>>> +                           rave.mapGadgetToRegion(myRegionWidgetId, 
>>> myRegionId);
>>> +             };
>>> +             return {
>>> +                           maximizeAction : maximizeAction,
>>> +                           deleteAction : deleteAction
>>> +             }
>>> +    })();
>>> +
>>>     function initializeProviders() {
>>>               //Current providers are rave.wookie and rave.opensocial.
>>>               //Providers register themselves when loaded, so
>>> @@ -161,14 +191,6 @@ var rave = rave || (function() {
>>>     }
>>>      
>>>      /**
>>> -     * Deletes the gadget/widget from the display.
>>> -     * TODO: must be implemented.
>>> -     */
>>> -    function deleteWidgetFromPage() {
>>> -             return null;
>>> -    }
>>> -    
>>> -    /**
>>>       * Map a widget to the region where it is located.
>>>       * 
>>>       * @param widgetId: id of the widget (not DOM id)
>>> @@ -248,10 +270,6 @@ var rave = rave || (function() {
>>>          */
>>>         getContext: getContext,
>>>
>>> -           /**
>>> -           * Remove a selected gadget from the page
>>> -           */
>>> -           deleteGadget : deleteWidgetFromPage,
>>>
>>>             /**
>>>              * Change or delete gadget to region map entry.
>>> @@ -261,6 +279,12 @@ var rave = rave || (function() {
>>>             /**
>>>              * Get the region where a widget/gadget belongs to.
>>>              */
>>> -           getGadgetRegion : getGadgetRegion
>>> +             getGadgetRegion : getGadgetRegion,
>>> +
>>> +             /**
>>> +                   * These are exposed toolbar actions, associated with 
>>> widget toolbar
>>> buttons
>>> +                   */
>>> +             toolbarMaximize : toolbar.maximizeAction,
>>> +             toolbarDelete : toolbar.deleteAction
>>>     }
>>> })();
>>> \ No newline at end of file
>>>
>>>
>> 
>-----BEGIN PGP SIGNATURE-----
>Version: GnuPG/MacGPG2 v2.0.16 (Darwin)
>Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
>
>iQEcBAEBAgAGBQJN7RGsAAoJEEfVXEODPFIDMhUH/3W4Z268Gp83016hxXuiimhg
>y0ok5VDfb3Ra/G0HzlAbdMnamE4izKN0EQYWkFGFHGLphVA8s5xJ50cDdAa03HB6
>BT/ppftWvzZGH6IkzA9Fx0J2H0PEGlWBoJaomQPzuuOXAQGrtDZAW1qK7F6HSXx5
>c6wcJCNbpnty8kvg5eZGG7QSY25BSud8aHwaxyBDYrKZ24cSkmQYTrZT/NcNu+8k
>DaHjjD71SNM16hC66LIiSRFUQx9y1g2u5NLpxdIIyNeoFo2eGDpBzIbK84qRbaOP
>IC5+O83lmQD0NAaIbF5HyckcRrIHwusB+q5ZNZcdus6KOUTjNBOinCRaBXz3eLk=
>=yQ7p
>-----END PGP SIGNATURE-----

Reply via email to