Hi,
On Wed, Dec 16, 2009 at 10:24 PM, Marius Dumitru Florea <
mariusdumitru.florea(a)xwiki.com> wrote:
Guillaume Lerouge wrote:
Hi,
On Wed, Dec 16, 2009 at 11:16 AM, Anamaria Stoica <anam.stoica(a)gmail.com
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?
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?
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#HProposal1Gadg…
> [2] -
>
http://dev.xwiki.org/xwiki/bin/view/Design/GadgetIntegration#HProposal2Mult…
http://incubator.myxwiki.org/xwiki/bin/view/Mockups/GadgetsIntegrationPropo…
> [5] -
>
http://incubator.myxwiki.org/xwiki/bin/view/Mockups/GadgetsIntegrationPropo…
>
>
>
> On Tue, Dec 8, 2009 at 12:04 PM, Jerome Velociter <jerome(a)xwiki.com>
> wrote:
>> On 12/8/09 10:02 AM, Anamaria Stoica wrote:
>>> On Tue, Dec 8, 2009 at 10:08 AM, Vincent Massol<vincent(a)massol.net>
> 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(than…
> <
>
http://incubator.myxwiki.org/xwiki/bin/view/Mockups/GadgetsIntegration%28th…
>>>>> 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+Integra…
>>> 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-co…
>> (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<
> anam.stoica(a)gmail.com
>>>>>> wrote:
>>>>>>
>>>>>> On Thu, Dec 3, 2009 at 3:57 PM, Ludovic
Dubost<ludovic(a)xwiki.org>
>>>>>> 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
>> devs(a)xwiki.org
>>
http://lists.xwiki.org/mailman/listinfo/devs
>>
>>
> _______________________________________________
> devs mailing list
> devs(a)xwiki.org
>
http://lists.xwiki.org/mailman/listinfo/devs
>
_______________________________________________
devs mailing list
devs(a)xwiki.org
http://lists.xwiki.org/mailman/listinfo/devs
_______________________________________________
devs mailing list
devs(a)xwiki.org
http://lists.xwiki.org/mailman/listinfo/devs
_______________________________________________
devs mailing list
devs(a)xwiki.org
http://lists.xwiki.org/mailman/listinfo/devs
--
Guillaume Lerouge
Product Manager - XWiki SAS
Skype: wikibc
Twitter: glerouge