Wednesday, June 24, 2009

end-of-life

For those who have missed it, GeoExt 0.5 is almost through the door.

GeoExt is a similar project as WebGIS Public. In fact GeoExt is well ahead of WebGIS Public and is also on its way of becoming a OSGEO project with community support, which means that WebGIS Public has now more or less reached end-of-life.

WebGIS Public was a fun and educational trip for me but I'll leave it up to GeoExt now. Hopefully I'll be able to contribute at some point. Grats to the GeoExt team!

Tuesday, March 17, 2009

New minor release

I commited some final changes and uploaded WebGIS Public 1.2.2 today. This release is just a minor bugfix release which is only documented in the SVN commit log.

One small new feature though is that WebGIS.MapAction now has a optional static property map that is set will be used by all created MapActions. This makes code nicer when using only one map in the application which I guess is the most common case as you don't have to pass it into the constructor of each MapAction.

I've also cleaned up the ant build scripts which may be useful for other javascript projects using Eclipse.

Wednesday, December 10, 2008

WebGIS.MapPanel

In version 1.2.0 the WebGIS.Map class was removed. This was because I tried to extend the OpenLayers.Map in a way that was unnecessary.

However, there are cases when coupling OpenLayers.Map to a Ext.Panel can be a bit tricky, like when using complex layouts that renders dynamically into the DOM.

Tricky things can be knowing when to initialize the map instance and consequently when and how to execute code after initialization has been done. I've been battling with those kind of things lately and created a generic class, WebGIS.MapPanel, for solving these problems more easily. It has a event which when fired guarantees that the map instance is rendered and ready for usage and it also resizes the map when needed. Example code:

var mapPanel = WebGIS.MapPanel({mapOptions: mapOptions});

mapPanel.on('afterMapRender', function() { mapPanel.map.zoomToMaxExtent(); });

Note that the mapOptions parameter is passed to the standard OpenLayers.Map constructor parameter options.

For more proper example usage, the class is used in the debug.js application example code in the project repository.

Wednesday, October 29, 2008

FeaturesGridPanel

Got curious on how to implement the attribute grid panel so I wrote initial implementation for the new class WebGIS.FeaturesGridPanel. I thought about writing specialized Ext.data classes to read OpenLayers features but dropped the idea. Perhaps it isn't worth the effort and the implementation now maps the features to an Ext.data.Store internally.

The class is of course far from finished, but the code is in the trunk for those interested.

Tuesday, October 28, 2008

All new

Well, it seems I thought it was time to create a blog for this project - so here it is. Lets hope it is more than a short-lived whim :)

Today I wrote proposals and skeleton code for a couple of new classes.

The idea is to create panels and grids (extending from Ext components of course) for the purpose of displaying and editing feature attributes and presenting identify results.

Check out the newly created issues for details about each proposal.