Sunday, March 9, 2008

Bindings View

In the new Bindings View browser, keys and actions are grouped by type, in reverse order of inheritance tree depth. So, for instance, in your component, your custom components keys appear first, then your component's superclass, then WOComponent, etc. For model objects, your custom methods appear, then your _Class methods, then ERXGenericRecord, then EOGenericRecord, etc. This should help address the desire to show the mostly important bindings first (those being the ones that are directly on the class you're talking to), but also provide access to more specialized custom bindings.

The bindings inspector shows all the available bindings for a component, and turns red the ones that are currently invalid. Both the key and values are editable by double-clicking in the cell, or by dragging bindings from the browser onto the table view. You can also create new bindings with the "New Binding" button and remove existing bindings with the "Remove Binding" button (or by blanking out the value of a binding with the editor). Lastly, if you define a missing key or action as the binding, you can select it and click the "Add Key" button to go through the Add Key/Add Action dialog.

Here's an example of a binding name in editing mode.


And here is a snapshot of a binding being dragged to the inspector view. You can also drag onto HTML or WOD entries in the same way.




Here's dropping onto a binding in the HTML view.



And last, but not least, there are new Delete Tag and Unwrap Tag actions in the editor. Delete tag will remove the tag you're under, and all of its contents. If the tag is a WO tag, it will also remove the WOD entry if this is the last tag reference to it. Unwrap tag is the same, but only removes the tag and does not remove the tag's contents.

Note that all of these features are still Experimental (they are rewriting your WOD and HTML documents, which could mean they could decide to EAT your WOD and HTML documents). To try them out, grab the latest nightly and go to Window=>Show View=>Other... browse down to the "WOLips" category and select "Bindings (Experimental)".

One element that isn't quite there yet is undo ... Right now undo is handled separately in the WOD and HTML, so if you perform an operation that requires rewriting both, you will need to undo in each to undo the changes. I'm working on trying to figure out how to do a composite undo manager, but it's not there yet.

Check out the videos in the previous posts to see some of the slightly older versions of these features in action.

Saturday, March 8, 2008

Sneaky Peek 4

I think this is the last one: drag-and-drop onto inline, onto WOD, and onto the bindings inspector. I need to add a column editor onto the inspector view so you can type keypaths and literals into it as well, but that should be pretty easy.

Sneaky Peek 3

It's not hooked up to .wod files yet, but for inline bindings, it's available in nightly.

P.S. My tab color isn't actually bright red, that's just what I have set when I run my plugin development Eclipse.

Sunday, March 2, 2008

Sneaky Peek 2

Just because we're in Eclipse doesn't mean we can't be fancy.

Friday, February 29, 2008

WOLips 3.3 Stable!

Eclipse 3.3.2 is out, which has been holding us up releasing a stable WOLips for months.

We are pleased to finally announce the new stable build of WOLips based on Eclipse 3.3.2! WOLips 4118 (the previous stable build) was deployed June 26, so there are eight months (and 7000 lines of changelog entries) worth of coolness that have been going into the nightly builds just itching to get out.

Thanks to Ulrich and Anjo and our new committers from this year Daryl, Pierre, and Quinton for all the hard work.

And now for the disclaimer: The new build requires Eclipse 3.3 and is no longer compatible with Eclipse 3.2, so you will need to update your Eclipse as well as install the new WOLips. Eclipse 3.3.2 has not made it to the main download page on eclipse.org, yet, but you can download it from the direct download page.

The wiki installation tutorial has been updated for Leopard and Eclipse 3.3.2 here.

And the list of changes ...

Moved to Eclipse 3.3
Entity Modeler
* Converted to 3.3 Data Binding
* Substantial performance optimizations
* Standalone Entity Modeler
* Standalone Entity Modeler - Supports loading dependencies from IDEA projects
* Better focus management
* No more silent model loading failures
* Supports editing the entire model group together, not just a single model
* No more EO icons in non-EO perspectives
* Fixes for Vertical Inheritance Wizard
* Optionally hide non-class properties in Outline (on by default)
* Changing mandatory relationship flag changes allows-null and vice-versa
* More lenient qualifier parsing
* Reflexive many-to-many relationships in the Relationship Wizard
* Lots of visual cleanup
* Edit-in-place in Entity Modeler outline view
* MUCH better error dialog that supports jumping directly to the error
* MUCH faster plist parsing
* Renaming attributes and relationships updates dependent flattened properties
* Support for Project Wonder's partial entities
* Support for Project Wonder's JavaMemoryAdaptor database
* Backwards-compatible with EOModeler and CVS-stable plist format
* New option to not generate source for particular entities
* Gray out non-class attributes/relationships
* Remove jdbc2Info prior to SQL generation
EOModelDoc
WO Package Explorer
* The "sometimes I don't hear double-clicks" = Gone
* Display EOModels and Components as bundles
Profiling
* JProfiler 5.0 Support
Component Editor
* Ignore cmd-opt-1 when you're already in Java
* OGNL expressions are colorized separately
* Only show API bindings if an API files exists and is non-empty
* Added API binding declarations for id, style, and class onto all the WO core components
* Allow accessing to protected variables in packageless classes
* WO hyperlinks in the HTML editor
* Clicking WO hyperlinks open Java and Component
* WOO / Display Group Editor
* Experimental HTML Preview
* WO tags are colorized separately
* Fix for stupid missing HTML Editor preferences labels
* Component Outline View (inspired by WOB and Xylescope)
* Experimental Bindings Inspector
* Overview ruler available in HTML editor
* LOTS and LOTS of fixes to the fuzzy template parser and model
* Lots of performance work (though we do a lot more now, so YMMV)
* Weird occasional won't-go-away errors should go away now
* Support for binding name and binding value hyperlinks
* Support for component name completion in binding values (like WOHyperlink pageName)
* Better error handling during SQL generation
* Many more preferences for component validation
* Validation and formatting fixes for Javascript
* Integrate WOO file encoding declarations with Eclipse resource encoding
* Support for // VALID on inline bindings (only with Wonder's inline binding parser)
* Preference for spaces-and-equals during reformat
* Language labels on multilanguage component tabs
* Experimental support for drag-and-drop of Components from WO Package Explorer into HTML editor
* HTML breadcrumb trail ala WOB
* Height of WOD portion of split pane saved across editors
* WOD split pane can be (almost) fully collapsed
* cmd-click on missing / broken bindings opens Add Key or Add Action dialogs (ala WOB)
* Experimental Bindings Browser
JDT and Building
* Removed the oldest classpath container
* Lots of fixes for making SSDD builds easier
* Preference for turning on/off exception-helper dialogs
EOGenerator
* Added support for JavaEOGenerator
* Added Velocity EOGenerator
* Fixes for Windows
* Support for custom packages for _File files
* Support for easily Override-able templates
Wizards and Templates
* Improved every wizard
* Added D2W app and D2WS app wizards and templates
* Added support for custom project templates and override-able project templates
* Support for setting doctype and encoding in component wizard
* All projects now use the Wonder-style project layout (aka Fluffy Bunny Layout)
* Fixes for Windows in project templates
Workspace and Problems View
* Support for tagging components with logical organization
* Template Problems appear in their own category
* Lots of improvements to the component locator
* "Open Component" action (cmd-shift-x ... i know ... c was taken)
* Added Console to the default WOLips perspective
Misc
* New WOLips web service to support external tool integration
* WOLips.framework in project Wonder provides browser click-to-open support for components

Eclipse 3.3.2 is Out

It's not officially announced, but the new release version of Eclipse is now 3.3.2:

http://download.eclipse.org/eclipse/downloads/

Sneaky Peek

And for the record, Eclipse REALLY doesn't want you to be able to do these things. Note that this is not ready for usage, it's just a peek at what will be coming in a future release.