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
