It sounds like you might be running the risk of making an application 
which has lots of gee-wiz features, but is too fancy to be useful for 
the average punter.

I suspect that it would be worth introducing a buttonBar and using the 
"State Pattern" to determine how a mouse click is processed, depending 
on what StateButton is selected.

Ie, if the "PointEditing" button is selected on the button bar, then 
Left clicks are processed as adding a Point, Click Drags are processed 
as Pan, ... (or whatever).

Note that we have associated One button with one tool. Eg: Pan button 
triggers Pan Tool. But you could have Editing Button sets up Pan Tool 
for click/drag, EditingPoint Tool click, etc.

For default uses of buttons, I suggest you look at the Google Maps 
interface, as this will become the defacto UI that most users will be 
familiar with.

Steven M. Ottens wrote:
> Hi all,
>
> I'm working on an application which uses MapPaneOL and has the  
> following functionality:
> double click: zoom
> (left) drag: pan
> scrollwheel: zoom
> shift-drag: zoombox
> right click: getfeatureinfo
>
> But I also want to add measurement and possibly editing tools. This  
> means that I've basically run out of mouse buttons ;)
> What I need is this:
> (left) drag: drag
> left click: new point
> double click: end line (and back to panzoom mode)
> scroll: zoom
> And possibly: right click on line/nodes a menu with more functionality
>
> Right now we have the following buttons:
> - ZoomIn
> - ZoomOut
> - GetFeatureInfo
> - DragPan
> - Measurement
> And the widget:
> - PanZoomBar
>
> To be able to do what I want I need to adapt:
> - GetFeatureInfo to support right click
> - Measurement to support drag and scroll
> - PanZoomBar to become a button
>
> So my questions is:
> Should I create three new widgets to do what I want, or is it better  
> to modify the existing widgets in a way that makes it configurable to  
> do either the normal way or my way? Are other people interested in  
> this behavior?
>
> Steven
>
>
> -------------------------------------------------------------------------
> This SF.net email is sponsored by: Splunk Inc.
> Still grepping through log files to find problems?  Stop.
> Now Search log events and configuration files using AJAX and a browser.
> Download your FREE copy of Splunk now >>  http://get.splunk.com/
> _______________________________________________
> mapbuilder-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/mapbuilder-devel
>
>   


-- 
Cameron Shorter
Systems Architect, http://lisasoft.com.au
Tel: +61 (0)2 8570 5050
Mob: +61 (0)419 142 254


-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >>  http://get.splunk.com/
_______________________________________________
mapbuilder-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mapbuilder-devel

Reply via email to