On Thu, Dec 17, 2009 at 9:52 AM, Marius Dumitru Florea < [email protected]> wrote:
> Guillaume Lerouge wrote: > > Hi, > > > > On Wed, Dec 16, 2009 at 10:24 PM, Marius Dumitru Florea < > > [email protected]> wrote: > > > >> Guillaume Lerouge wrote: > >>> Hi, > >>> > >>> On Wed, Dec 16, 2009 at 11:16 AM, Anamaria Stoica < > [email protected] > >>> wrote: > >>> > >>>> Hi devs, > >>>> > >>>> I restructured a bit the Design page for Gadgets Integration [0]. I > >>>> introduced 2 new sections called 'Main Elements' and 'Full Proposals'. > >>>> > >>>> The 'Main Elements' section describes the general elements which would > >>>> be needed/affected by the integration like the Dashboard, Gadgets > >>>> Directory, Gadget Macros and Panel Wizard, providing several > >>>> implementation options for each of them. > >>>> > >>>> The next section 'Full Proposals' describes entire solutions for > >>>> Gadgets integration (the full story), by combining implementation > >>>> options for each element defined in the 'Main Elements' section. > >>>> > >>>> Right now there are only 2 Proposals: > >>>> * Proposal 1 - Gadgets added on Dashboards through Gadgets Directory, > >>>> and not WYSIWYG Insert Macro Dialog [1] > >>>> * Proposal 2 - Multiple Macros - each XWiki&Google Gadget as its own > >> Macro > >>>> [2] > >>>> , but other may be proposed by mixing other element options in the > >>>> 'Main Elements' section or introducing new ones. For example, Proposal > >>>> 1 could be modified to also use an extended WYSIWYG Insert Macro > >>>> dialog for gadgets. > >>>> > >>> I think an important bit of information that we're missing here is an > >>> evaluation of how long would either way take to implement. I'd be in > >> favor > >>> of going for Proposal 2 if the WYSIWYG dialog boxes were easier to > >> extend. > >>> However I'm afraid this is going to be a daunting task if done today. > >>> > >>> Thus for now I'm +1 for Proposal 1 (the downside being that we > introduce > >>> some duplication between macros and gadgets). > >> Hmm, IMO it is exactly the opposite. If gadgets are imported as macros > >> then the WYSIWYG editor doesn't have to know about gadgets and doesn't > >> have to be extended. If we implement a single generic gadget-macro then > >> it will require special handling from the WYSIWYG editor. > >> > >> I'm more for unifying the notion of gadget, panel or macro, thus I'm > >> more for proposal 2. > >> > > > > Ideally that's also what I would go for. I just want to be sure we're not > > launching ourselves into a daunting initiative. > > > > > Marius, if there's one macro per gadget, how do you create a dashboard > > (dashboard macro + a macro for every gadget) through the WYSIWYG? > > I see what you mean. So gadgets are supposed to work only inside a > dashboard? The idea of importing gadgets as macros was, I think, to be > able to use gadgets anywhere. > For Proposal 2, Gadgets are macros, and the Dashboard is also a macro. Gadgets should work anywhere AND inside dashboards, if added that way. You would either have (more or less): {{dashboard}} {{gadgetName1 .../}} {{gadgetName2 .../}} {{/dashboard}} - when inserted inside dashboards or directly: {{gadgetName1 .../}} - inserted anywhere The dashboard macro would only group the gadgets, on columns and support drag&drop for them. (like a more advanced container) Marius, to see what Guillaume is saying about extending the WYSIWYG Insert Macro Dialog, can you look at: ? * Insert any Macro-Gadget: http://incubator.myxwiki.org/xwiki/bin/view/Mockups/GadgetsIntegrationProposal2#HInsertGadgetMacroWYSIWYGDialog - here I put a Preview for the Macro-Gadget on the left, while editing the macro properties and * Insert Dashboard Macro: http://incubator.myxwiki.org/xwiki/bin/view/Mockups/GadgetsIntegrationProposal2#HInsertDashboardMacroWYSIWYGDialog - here the preview of the Dashboard displays a mini preview with small boxes for where the gadgets would go (but no content rendered), and an 'Add Gadgets' button, which would open yet another 'Insert Macro Dialog' Another option would be to drop the part with extending the WYSIWYG editor (pretty as it is in the Mockups) and simply insert the Macro-Gadgets like it's done now (no preview). Then the user would go in view mode, and edit the user preferences for the gadget (from here: http://incubator.myxwiki.org/xwiki/bin/view/Mockups/GadgetsIntegration#HGoogleGadgetWindow28EditingUserPreferences29). But this should evolve into the proposal above, as I think it's not user friendly at all... Now, my question is how would Inserting Macro-Gadgets inside a Dashboard Macro would work in this case (no WYSIWYG extended)? (from the user's point of view) > If we have a dashboard macro containing multiple gadget macros then we > hit the same problem as with any other nested macros (e.g. HTML inside > velocity). The WYSIWYG editor needs to be improved so that macro content > is edited also in rich text mode (if supported). But this is not going > to happen too soon, unless we raise its priority. > > > > > An option is to have the following behavior: as soon as one gadget macro > is > > added to a page, a dashboard is implicitly created. The WYSIWYG actually > > also becomes a dashboard creator. However I'm not sure we could have > gadget > > drag & drop reordering right in the WYSIWYG editor, could we? > > I don't think so. Sounds too complicated. > > Marius > > > > > Guillaume > > > > > >> Thanks, > >> Marius > >> > >>> Guillaume > >>> > >>> > >>>> The mockups page has been divided into 3: > >>>> * Mockups for GadgetsIntegration - General [3] > >>>> * Mockups for GadgetsIntegration - Proposal 1 [4] > >>>> * Mockups for GadgetsIntegration - Proposal 2 [5] > >>>> > >>>> Feedback and new ideas are very welcome > >>>> > >>>> Thanks! > >>>> Anamaria > >>>> > >>>> [0] - http://dev.xwiki.org/xwiki/bin/view/Design/GadgetIntegration > >>>> [1] - > >>>> > >> > http://dev.xwiki.org/xwiki/bin/view/Design/GadgetIntegration#HProposal1GadgetsaddedonDashboardsthroughGadgetsDirectory2CandnotWYSIWYGInsertMacroDialog > >>>> [2] - > >>>> > >> > http://dev.xwiki.org/xwiki/bin/view/Design/GadgetIntegration#HProposal2MultipleMacroseachXWiki26GoogleGadgetasitsownMacro > >>>> [3] - > >>>> > http://incubator.myxwiki.org/xwiki/bin/view/Mockups/GadgetsIntegration > >>>> [4] - > >>>> > >> > http://incubator.myxwiki.org/xwiki/bin/view/Mockups/GadgetsIntegrationProposal1 > >>>> [5] - > >>>> > >> > http://incubator.myxwiki.org/xwiki/bin/view/Mockups/GadgetsIntegrationProposal1 > >>>> > >>>> > >>>> On Tue, Dec 8, 2009 at 12:04 PM, Jerome Velociter <[email protected]> > >>>> wrote: > >>>>> On 12/8/09 10:02 AM, Anamaria Stoica wrote: > >>>>>> On Tue, Dec 8, 2009 at 10:08 AM, Vincent Massol<[email protected]> > >>>> wrote: > >>>>>>> On Dec 7, 2009, at 11:21 PM, Anamaria Stoica wrote: > >>>>>>> > >>>>>>> > >>>>>>>> Hi, > >>>>>>>> > >>>>>>>> To address Caty's feedback on > >>>>>>>> > >>>>>>>> > >> > http://incubator.myxwiki.org/xwiki/bin/view/Mockups/GadgetsIntegration(thanks<http://incubator.myxwiki.org/xwiki/bin/view/Mockups/GadgetsIntegration%28thanks> > >>>> < > >>>> > >> > http://incubator.myxwiki.org/xwiki/bin/view/Mockups/GadgetsIntegration%28thanks > >>>>>>>> Caty!): > >>>>>>>> > >>>>>>>> 1. Should Google Gadgets also be able to add on the side menus? > >>>>>>>> (where the > >>>>>>>> Panels currently are) > >>>>>>>> > >>>>>>>> I think users should be able to do this also. > >>>>>>>> > >>>>>>>> If so, it would make sense to also have a Gadgets macro (not only > a > >>>>>>>> dashboard macro). But how would it be connected to the dashboard > >>>>>>>> macro? Can > >>>>>>>> the content of a macro be other macros? Something like: > >>>>>>>> {{dashboard}} > >>>>>>>> {{gadget ../}}{{gadget ../}}{{gadget ../}} > >>>>>>>> {{gadget ../}} > >>>>>>>> {{gadget ../}} > >>>>>>>> {{/dashboard}} > >>>>>>>> , where each row is a stack(column) of the dashboard. > >>>>>>>> > >>>>>>> Yes that's very easy to do technically. One simple way is to allow > >>>>>>> wiki content inside the dashboard macro. Then it's a one liner to > >>>>>>> support it. > >>>>>>> > >>>>>>> Question: What would the dashboard macro do? Is it just for layout? > >> In > >>>>>>> which case I'd rather have a more generic {{layout}} macro that can > >> be > >>>>>>> used or not be used at will. Or even use the {{column}} macro that > we > >>>>>>> need to write in 2.0 syntax. See: > >>>>>>> - http://code.xwiki.org/xwiki/bin/view/Macros/ColumnMacro > >>>>>>> - > >> http://code.xwiki.org/xwiki/bin/view/Macros/DisplayPanelLayoutMacro > >>>>>>> > >>>>>> The dashboard should contain the gadgets on 3 columns, and support > >>>> drag&drop > >>>>>> for them, like here: > >>>>>> > >> > http://gsoc.myxwiki.org/xwiki/bin/view/Google+Gadget+and+OpenSocial+Integration/AppDashboard > >>>>>> or on iGoogle. > >>>>>> > >>>>>> Now, it's not clear whether the window of the gadget should be part > of > >>>> the > >>>>>> Dashboard or the Gadget's macro. > >>>>>> > >>>>>> Supporting drag&drop, the windows must be subclasses of isc.Window, > >>>> placed > >>>>>> inside a isc.VStack subclass, > >>>>>> which are placed inside a isc.HLayout subclass. (the last 2 > obviously > >>>> being > >>>>>> part of the Layout of the Dashboard) > >>>>>> (isc.Window, isc.VStack, isc.HLayout are classes in the SmartClient > >>>>>> library). > >>>>>> > >>>>> Question: are we sure we want to implement it with SmartClient? Isn't > >> it > >>>>> overkill ? > >>>>>> But the Gadgets outside of a Dashboard don't need to be placed > inside > >>>>>> isc.Window's, as they don't need drag&drop. > >>>>>> > >>>>>> How can the container of a Gadget be chosen depending on where it's > >>>> placed > >>>>>> (into a Dashboard, on a side menu Panel), > >>>>>> if the window is not part of the Layout? > >>>>>> > >>>>>> About DisplayPanelLayoutMacro&Column macros: > >>>>>> I think that a kind of DisplayPanelLayoutMacro in combination with a > >>>> kind of > >>>>>> ColumnMacro would work just fine. > >>>>>> > >>>>> for the record, I wrote a first draft of a column macro for syntax > 2.0 > >>>>> in the contrib sandbox : > >>>>> > >>>>> > >> > http://svn.xwiki.org/svnroot/xwiki/contrib/sandbox/xwiki-rendering-macro-column/ > >>>>> (it's actually two macro, {{section}} and {{column}} that work > >> together, > >>>>> you can read it as an example). > >>>>> > >>>>> Jerome. > >>>>>> I say a kind of, because the DisplayPanelLayoutMacro would have to > >>>> create a > >>>>>> isc.HLayout object and the ColumnMacro > >>>>>> a isc.VLayout object. > >>>>>> > >>>>>> But I'd rather use just one simple macro using the combination of > the > >> 2 > >>>>>> mentioned above called dashboard. > >>>>>> > >>>>>> > >>>>>> > >>>>>> > >>>>>>>> 2. "The thing is that we need to think about the functional > >>>>>>>> duplication of > >>>>>>>> the Panel Wizard and the new Dashboard." Caty > >>>>>>>> > >>>>>>>> <http://incubator.myxwiki.org/xwiki/bin/view/XWiki/AnamariaStoica > > > >>>>>>>> Yes, we need to think about the interface for (Gadgets&XWiki) > >>>> Gadgets > >>>>>>>> Directory and Panel Wizard. > >>>>>>>> > >>>>>>>> What would their roles be? Their content? (One would add Google > >>>>>>>> Gadgets/Panels to Dashboard macros, the other to side menus...?) > >>>>>>>> > >>>>>>>> Is one interface enough for Dashboard Gadgets and Panels? If so, > how > >>>>>>>> would > >>>>>>>> it look like? (where to put it, Panel Wizard is in Admin > interface) > >>>>>>>> > >>>>>>>> Also, should the Gadgets Directory support adding gadgets to any > >>>>>>>> Dashboard > >>>>>>>> macro in any page, or just to personal dashboard? > >>>>>>>> > >>>>>>> I think Gadgets and Panels should be one and the same, unless > there's > >>>>>>> a difference I don't see. The only difference I can think of is the > >>>>>>> source of the content but it's easy to make that generic. > >>>>>>> > >>>>>>> Another idea is to consider the panel as only the outside shell/box > >>>>>>> and inside the panel it should be possible to put wiki syntax, > >>>>>>> including a gadget representation. Thus everything would be a > panel. > >>>>>>> > >>>>>>> Thanks > >>>>>>> -Vincent > >>>>>>> > >>>>>>> > >>>>>>>> Thanks, > >>>>>>>> Anamaria > >>>>>>>> > >>>>>>>> > >>>>>>>> On Sat, Dec 5, 2009 at 10:56 PM, Anamaria Stoica< > >>>> [email protected] > >>>>>>>>> wrote: > >>>>>>>>> > >>>>>>>>> On Thu, Dec 3, 2009 at 3:57 PM, Ludovic Dubost<[email protected] > > > >>>>>>>>> wrote: > >>>>>>>>> > >>>>>>>>> > >>>>>>>>>> This should go beyond user profiles. Space home pages but any > page > >>>>>>>>>> should be able to be dashboard pages. > >>>>>>>>>> For these pages we would need a way to make them display as > >>>>>>>>>> dashboard > >>>>>>>>>> pages by default. > >>>>>>>>>> > >>>>>>>>>> We should also make it easy to make these pages dashboard pages > >>>>>>>>>> when in > >>>>>>>>>> the wysiwyg. Like include a "dashboard" macro. > >>>>>>>>>> > >>>>>>>>>> I view it like that: > >>>>>>>>>> > >>>>>>>>>> 1/ Open a page in wysiwyg > >>>>>>>>>> 2/ Type some text, include a dashboard macro > >>>>>>>>>> 3/ Save > >>>>>>>>>> > >>>>>>>>>> When in view the dashboard macro renders the dashboard settings > >>>>>>>>>> saved in > >>>>>>>>>> the content field of the dashboard macro or in XWiki objects > save > >>>>>>>>>> in the > >>>>>>>>>> page. > >>>>>>>>>> It adds JS tools to allow to move and change your gadgets and > >> panels > >>>>>>>>>> used in your dashboard. > >>>>>>>>>> > >>>>>>>>>> > >>>>>>>>> Gadgets on the iGoogle panel also have an Edit Settings action on > >>>>>>>>> the top > >>>>>>>>> right > >>>>>>>>> corner of every gadget, which opens a form with settings for that > >>>>>>>>> gadget. > >>>>>>>>> > >>>>>>>>> Question: > >>>>>>>>> If one user changes these settings, should they be visible to > >>>>>>>>> everyone, or > >>>>>>>>> just to the > >>>>>>>>> user editing them? (this way different users will see the gadgets > >>>>>>>>> with > >>>>>>>>> different settings > >>>>>>>>> for the same dashboard) > >>>>>>>>> > >>>>>>>>> On the personal dashboard is obvious that only you get to change > >>>>>>>>> them, and > >>>>>>>>> maybe view > >>>>>>>>> the dashboard, > >>>>>>>>> but what about any dashboard added as a macro on a regular page? > >>>>>>>>> > >>>>>>>>> I think the changes should be visible to everyone with view > rights > >>>>>>>>> on the > >>>>>>>>> page, and > >>>>>>>>> the settings editable for everyone with edit rights on the same > >> page. > >>>>>>>>> WDYT? > >>>>>>>>> > >>>>>>>>> > >>>>>>>>> > >>>>>>>>> > >>>>>>>>>> With this method we might not need the xpage=dashboard template, > >>>>>>>>>> as you > >>>>>>>>>> could just have an #if in the XWikiUserSheet which displays the > >>>>>>>>>> dashboard based on URL params. > >>>>>>>>>> The #if would make a call to the XWiki {{dashboard}} macro > >>>>>>>>>> > >>>>>>>>>> Ludovic > >>>>>>>>>> > >>>>>>>>>> Anamaria Stoica a écrit : > >>>>>>>>>> > >>>>>>>>>>> Hi devs, > >>>>>>>>>>> > >>>>>>>>>>> I'd like to start working on Gadgets Integration. (this is a > new > >>>>>>>>>>> > >>>>>>>>>> feature) > >>>>>>>>>> > >>>>>>>>>>> I've been working on the specs with Guillaume, and you can see > >> the > >>>>>>>>>> Design > >>>>>>>>>> > >>>>>>>>>>> page here: > >>>>>>>>>>> > >>>>>>> http://dev.xwiki.org/xwiki/bin/view/Design/GadgetIntegration > >>>>>>> > >>>>>>>>>>> The aim of the gadget integration is to provide XWiki users > with > >> a > >>>>>>>>>>> dashboard-like page that will display a list of gadgets. These > >>>>>>>>>>> gadgets > >>>>>>>>>>> > >>>>>>>>>> can > >>>>>>>>>> > >>>>>>>>>>> be either internal gadgets (similar to XWiki panels) or > external > >>>>>>>>>>> gadgets > >>>>>>>>>>> (coming from the Google Gadget repository for instance). Users > >> can > >>>>>>>>>> select > >>>>>>>>>> > >>>>>>>>>>> which gadgets to display on their dashboard from a gadget > >> directory > >>>>>>>>>> located > >>>>>>>>>> > >>>>>>>>>>> on the wiki. > >>>>>>>>>>> > >>>>>>>>>>> I've also created a few Mockups here > >>>>>>>>>>> > >>>>>>>>>>> > >> > http://incubator.myxwiki.org/xwiki/bin/view/Mockups/GadgetsIntegrationfor > >>>>>>>>>>> the Dashboard, Gadget Windows and Gadgets Directory. > >>>>>>>>>>> > >>>>>>>>>>> List of features: > >>>>>>>>>>> Dashboard > >>>>>>>>>>> - Dashboard for each user with drag&drop for Gadget Windows > >>>>>>>>>>> - Display both Google Gadgets and XWiki Gadgets (Panels) > >>>>>>>>>>> Directory > >>>>>>>>>>> - An internal directory with Gadgets in the wiki divided in 3 > >>>>>>>>>>> parts: > >>>>>>>>>>> * XWiki Gadgets defined in the wiki / in the farm > >> (current > >>>>>>>>>> Panels) > >>>>>>>>>> > >>>>>>>>>>> * Google Gadgets selected out of the global Google > >>>>>>>>>>> Directory by > >>>>>>>>>>> > >>>>>>>>>> wiki > >>>>>>>>>> > >>>>>>>>>>> admins > >>>>>>>>>>> * If allowed by wiki admins: full Google Gadgets > >> Directory > >>>>>>>>>>> I'd like to include all of the above with basic functionalities > >>>>>>>>>>> into > >>>>>>>>>>> > >>>>>>>>>> 2.2M1. > >>>>>>>>>> > >>>>>>>>>>> One thing is not clear at this point>> The relationship > between > >>>>>>>>>>> XWiki > >>>>>>>>>>> Gadgets and current Panels: > >>>>>>>>>>> > >>>>>>>>>>> They are basically the same thing (same content), but they will > >>>>>>>>>>> have > >>>>>>>>>>> different containers (drag&drop window with edit settings on > >>>>>>>>>>> Dashboard > >>>>>>>>>>> > >>>>>>>>>> and > >>>>>>>>>> > >>>>>>>>>>> present containers for the side menu Panels). > >>>>>>>>>>> > >>>>>>>>>>> Will all Panels make sense as XWiki Gadgets? If no, when a new > >>>>>>>>>>> Panel is > >>>>>>>>>>> created, how do you know it's meant to be only a side menu > Panel > >>>>>>>>>>> and not > >>>>>>>>>>> also a XWikiGadget? (this applies for current Panels as well) > >>>>>>>>>>> > >>>>>>>>>>> Also, very important: where should the interface for the > Gadgets > >>>>>>>>>>> > >>>>>>>>>> Directory > >>>>>>>>>> > >>>>>>>>>>> be placed? Appended to Panels.WebHome or new directory > >>>>>>>>>>> Gadgets.WebHome? > >>>>>>>>>>> > >>>>>>>>>> In > >>>>>>>>>> > >>>>>>>>>>> my opinion it needs a different interface from the Panel Wizard > >>>>>>>>>>> > >>>>>>>>>> Interface. > >>>>>>>>>> > >>>>>>>>>>> The Panel Wizard is in the Wiki Preferences (administration > >>>>>>>>>>> space) open > >>>>>>>>>>> > >>>>>>>>>> only > >>>>>>>>>> > >>>>>>>>>>> to Admins, but the Directory will have to be available to all > >> users > >>>>>>>>>> (even > >>>>>>>>>> > >>>>>>>>>>> browsable by everyone). > >>>>>>>>>>> > >>>>>>>>>>> An admin interface for picking Google Gadgets from iGoogle > >>>>>>>>>>> Directory > >>>>>>>>>>> > >>>>>>>>>> and/or > >>>>>>>>>> > >>>>>>>>>>> XWiki Panels for the Gadgets Directory might be needed. > >>>>>>>>>>> > >>>>>>>>>>> How should I treat the 2 of them (XWiki Gadgets vs side menu > >>>>>>>>>>> Panels)? > >>>>>>>>>>> > >>>>>>>>>>> Thanks, > >>>>>>>>>>> Anamaria > >>>>>>>>>>> > >>>>>>> _______________________________________________ > >>>>>>> devs mailing list > >>>>>>> [email protected] > >>>>>>> http://lists.xwiki.org/mailman/listinfo/devs > >>>>>>> > >>>>>>> > >>>>>> _______________________________________________ > >>>>>> devs mailing list > >>>>>> [email protected] > >>>>>> http://lists.xwiki.org/mailman/listinfo/devs > >>>>>> > >>>>> _______________________________________________ > >>>>> devs mailing list > >>>>> [email protected] > >>>>> http://lists.xwiki.org/mailman/listinfo/devs > >>>>> > >>>> _______________________________________________ > >>>> devs mailing list > >>>> [email protected] > >>>> http://lists.xwiki.org/mailman/listinfo/devs > >>>> > >>> > >>> > >> _______________________________________________ > >> devs mailing list > >> [email protected] > >> http://lists.xwiki.org/mailman/listinfo/devs > >> > > > > > > > _______________________________________________ > devs mailing list > [email protected] > http://lists.xwiki.org/mailman/listinfo/devs > _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs

