Michael Barnes has taken it a bit further, It still works fine (except for Java and classdef objects - they'll crash Octave if one tries to open those in the Variable Editor).
I always include it in my Windows builds (until at one day it no longer applies anymore) and I use it fairly frequently.

Closing this report as a duplicate of patch #8656 has seen more recent development. Hopefully someone will pick up the current state from there.

I've updated the patch. The variable editor is now refreshed every time `octave_link::set_workspace' gets called (i.e., every time it the octave interpreter waits for input). I'm open to better suggestions.

I fixed the thread safety issue and many other issues.

Remaining

Paste not working

Inserting/removing rows/cols (and Delete) not working (some untested code for it but no GUI interface)

This patch adds a basic Variable Editor to the GUI. It is not finished but I wanted some input before continuing with it.

The biggest issue right now is that the editor does not detect changes happening to the variable inside Octave. It will continue displaying the old value. I don't know if there is a way in Octave to intercept changes to certain variables or how this could be implemented. The simplest way would be to update the display completely once `octave_link::set_workspace' gets called. But this would only update the view when Octave has finished and is waiting for new input. Maybe that would be good enough at least for an initial release.

There are some other issues

Paste not working

Inserting/removing rows/cols not working

No support for structure arrays (completely untested)

No subeditor opens for internal structures (but the input is eval'd so it is somewhat usable at the moment)

Plotting doesn't work for cell arrays.

Delete does not support shifting and always inserts 0 (should be [] for cell arrays)

No variable from selection or transpose feature

No window splitting

No data brush

No printing

No undo support

No sort

...

And a potential thread safety issue. I call `symbol_table::varval' in `main_window' from the GUI thread to get the `octave_value'. It could be safely passed via signal but that would require registering `octave_value' as Qt metatype and I don't know what implications that would have (See http://qt-project.org/doc/qt-4.8/qmetatype.html#qRegisterMetaType).