[jbosstools-dev] VPE editor

Max Rydahl Andersen max.andersen at redhat.com
Thu Mar 13 05:35:55 EDT 2008


> I agree with lazy Visual Editor update idea, it should be implemented
> some way, for example Swing also does it for painting swing Components.
> It looks like now all events are processed in the same thread, where
> they were fired.

Doing it in a seperate thread is a different enhancement I think, but definitly
also worth it. The current idea is just to not update on every stroke since users
would normally write more than one letter and while he is typing the visual view
does not need to be updated 100% live (especially not when its update seem to be 
so slow in special cases).

> I have one more idea about VPE layout. I have crazy idea about getting
> rid of tabs at all. We have a Source/Visual part that have a split lets
> just have button that can hide source part or visual it almost the same
> like having source and visual tabs. You'll say, but we have preview tab.
> Why we cannot just let user switch visual part from edit mode to preview
> mode.

At first I liked this idea..but I actually think it has value to have multiple
tabs for things like preview and possible other types of preview, see e.g. 
http://www-128.ibm.com/developerworks/opensource/library/os-eclipse-iphone/?ca=dgr-eclipse-1
where they have different types of preview.

That being said if we had the "hide/show" visual editor then Source/Visual, Source and Visual could
be collapsed into one - leaving Source/Visual and Preview - but then we should definitly 
find a good shortcut for toggling the visual part.

> This way it could be any combination of source/visual editing/preview.

Yes, but sometime collapsing things too much can make users not realize the feature is there.

> All actions to control the editor can be placed to Editor Related
> toolbar it will contains:
> 1. Preview Mode toggle button with two states (preview/visual editing);
> 2. Show Source with two states (source visible/source invisible)
> 3. Show Visual (visual visible/visual invisible)
> 4. Enabling/disabling formatting toolbar
> 5. Refresh
> 7. Synchronize
> 4. Preferences

The problem with this is where should users click if they want the visual editor back ? 
That part will disappear when you click hide, how do you get it back ?

Maybe adding a simple toolbar to the editor that has:

1. the "selection bar" (the one that shows where you are in the xml)
2. Toggle for source/visual part (possibly let it be an dropdown button with option of what to show (Source only, Visual only, Visual/Source)

> For asynchronous preview set Synchronize

I don't understand this last option ? 

> So if we are generating ides about VPE, I also have some after playing with
>
> http://jira.jboss.com/jira/browse/JBIDE-1304,
> http://jira.jboss.com/jira/browse/JBIDE-1600,
> http://jira.jboss.com/jira/browse/JBIDE-1227
>
> I just have finished DocBook preview, it is preview because there are
> actually some issues in VPE that doesn't allow me to say it is editor.
> Short comment how to use it can be found here
> http://jira.jboss.com/jira/browse/JBIDE-1304#action_12402618 with
> several screen-shots.

Nice! I can use that for my Eclipsecon talk ;)

I think you should put these observations in to a VPE jira and we can take it from there.

/max

> During my quest I realized there are several problems with  VPE:
> 1. It always handle tags without prefixes as HTML tags
> 2. all tags without prefix is stored in same hash map in
> VpeTemplateManager and there is no way separate templates for html tags
> from docbook tags. That means I can use html tags in DocBook XML and it
> will work fine and vice versa.
> 3. It doesn't shows attributes for xml tags because some exceptions
> 4. There is no way to process <![CDATA[]> blocks
>
> What would be nice to have:
> 1. There is dialog with settings for unknown tags, it would be nice not
> only setup predefined parameters but do something meaningful: show
> unknown tag as known html tag
> 2. It wold be nice to say VPE use this template from eclipse workspace
> or local  file  system  or even load all templates from defined location
> (related to http://jira.jboss.com/jira/browse/JBIDE-1600)
> 3. VPE should provide the way to change default template for unknown tags.
> 4. VPE should allow points to location where to save templates created
> by Template Dialog mentioned above.
> 5. Combination of points 1 and 4 is a fast way to create simple
> templates as I did for DocBook.



> Regards
> Denis
>
> Snjezana Peco wrote:
>> Hi,
>>
>> I have two suggestions for improving performance in the VPE editor:
>>
>> - lazy Visual Editor update
>> The Visual editor is updated on every keystroke. I propose to postpone
>> the update for some time. This means - if a user enters a few keys
>> quickly, the Visual editor will be updated only once. There is the
>> org.eclipse.wst.sse.ui.sourcevalidation extenison point within the
>> Webtools project that can be used for adding this feature. It is also
>> possible to implement this feature using the code I added when fixing
>> http://jira.jboss.com/jira/browse/JBIDE-1479 (we could use 400 ms
>> during editing; this is the default value for the sourcevalidation
>> extenison point).
>>
>> - adding the Link (Synchronize) action to the Visual editor next to
>> the Preferences, Refresh, Page Design Options actions.
>> This action would be a check box similar to the "Link with editor" in
>> the Package Explorer view. It would be checked/enabled by default. In
>> that case, the VPE would behave as it does now. If the user disables
>> the action, the VPE wouldn't be updated (VpeController.notifyChanged()
>> wouldn't be called). This would be very useful when editing large JSP
>> files. The user could always call Refresh (or check Link) to show the
>> visual part of the editor.
>>
>> These features are easy to implement and don't require a lot of
>> changes in the code.
>>
>> Snjeza
>>
>>
>>
>>
>>
>>
>> _______________________________________________
>> jbosstools-dev mailing list
>> jbosstools-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/jbosstools-dev
>
> _______________________________________________
> jbosstools-dev mailing list
> jbosstools-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/jbosstools-dev
> 



-- 
Using Opera's revolutionary e-mail client: http://www.opera.com/mail/




More information about the jbosstools-dev mailing list