So ya apparently the menu item must be on the toolbar as well for this to work. 
Unfortunately when I use hidden:true it of course removes the visibility from 
the menu as well. Is there not another way to implement this so that menu items 
can be in the menu only but still toggle the rest of the toolbar? 



-----Original Message-----
From: Andrew Stewart 
Sent: October 05, 2010 9:04 AM
To: Andrew Stewart; 'Eric Lemoine'
Cc: [email protected]
Subject: RE: [Users] Adding a menu item to an existing Tbar, not working

I noticed that in the example the menu items are added to the toolbar as well 
as in the menu, is this required for it to work? Because I wasn't planning on 
setting it up this way as I wanted the menu separate, but I will try to add the 
items to the toolbar also and see if it changes anything.. Maybe I can just 
hide them after I add them. 



-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf Of 
Andrew Stewart
Sent: October 05, 2010 8:48 AM
To: 'Eric Lemoine'
Cc: [email protected]
Subject: Re: [Users] Adding a menu item to an existing Tbar, not working

Thank you for the suggestion, so it is almost working now. Unfortunately for 
some reason my pan tool is broken. Not sure why because I basically 
copied/pasted the code from my zoom tool which works good. Every other tool 
works when you click the redline ones they work until you click a different 
tool (other than pan) and it switches to that tool. Except only when I click on 
pan it goes back to the previous redline tool.. Makes no sense why. Very much 
appreciate the assistance, below is my code but I still cannot figure out why 
the pan tool goes back to using the previous redline tool but all others work.


//---------------------------------Begin ToolBar


        var ctrl, toolbarItems = [], action, actions = {};
        
                //Home Action
                action = new GeoExt.Action({
                text: "  Home",
                handler: function() {window.location.reload();},
                map: map,
                cls: 'x-btn-text-icon',
                tooltip: 'Home',
                icon: '../images/toolbar/home.gif'
                });
                
                actions["home"] = action;
                toolbarItems.push(action);
                toolbarItems.push('-');
                
                
                //Queries Action
                action = new GeoExt.Action({
                text: "  Queries",
                handler: function() 
{document.getElementById('show-btn').click();},
                map: map,
                cls: 'x-btn-text-icon',
                tooltip: 'Queries',
                icon: '../images/toolbar/query.gif'
                });
                
                actions["queries"] = action;
                toolbarItems.push(action);
                toolbarItems.push('-');
                
                //Zoom In Action
                action = new GeoExt.Action({
                text: "  Zoom In",
                control: new OpenLayers.Control.ZoomBox({alwaysZoom:true}),
                map: map,
                toggleGroup: "tools",
                group: "tools",
                cls: 'x-btn-text-icon',
                tooltip: 'Zoom In',
                icon: '../images/toolbar/zoomin.gif'
                });
                
                actions["zoom_in"] = action;
                toolbarItems.push(action);
                toolbarItems.push('-');
                
                //Zoom Out Action
                action = new GeoExt.Action({
                text: "  Zoom Out",
                control: new OpenLayers.Control.ZoomBox({alwaysZoom:true, 
out:true}),
                map: map,
                toggleGroup: "tools",
                group: "tools",
                cls: 'x-btn-text-icon',
                tooltip: 'Zoom Out',
                icon: '../images/toolbar/zoomout.gif'
                });
                
                actions["zoom_out"] = action;
                toolbarItems.push(action);
                toolbarItems.push('-');

                //Zoom Previous Action
                action = new GeoExt.Action({
                text: "  Zoom Previous",
                control: nav.previous,
                map: map,
                cls: 'x-btn-text-icon',
                tooltip: 'Zoom Previous',
                icon: '../images/toolbar/zoomprevious.gif'
                });
                
                actions["zoom_previous"] = action;
                toolbarItems.push(action);
                toolbarItems.push('-');
                
                //Pan Map Action
                action = new GeoExt.Action({
                text: "  Pan",
                control: new OpenLayers.Control.MouseDefaults(),
                map: map,
                toggleGroup: "tools",
                group: "tools",
                cls: 'x-btn-text-icon',
                tooltip: 'Pan',
                icon: '../images/toolbar/pan.gif'
                });
                
                actions["pan_map"] = action;
                toolbarItems.push(action);
                toolbarItems.push('-');

 
                //Center Map Action
                action = new GeoExt.Action({
                text: "  Center Map",
                control: click,
                map: map,
                toggleGroup: "tools",
                group: "tools",
                cls: 'x-btn-text-icon',
                tooltip: 'Center Map',
                icon: '../images/toolbar/mapcenterclick.gif'
                });
                
                actions["center_map"] = action;
                toolbarItems.push(action);
                toolbarItems.push('-');
                
                //Fit Map Action            
                action = new GeoExt.Action({
                text: "  Fit Map",
                handler: function(){var bounds = new 
OpenLayers.Bounds(-12688352.278757,6834703.490456,-12648605.022533,6864246.4030152);
 map.zoomToExtent(bounds)},
                map: map,
                cls: 'x-btn-text-icon',
                tooltip: 'Fit Map',
                icon: '../images/toolbar/overview.gif'
                });
                
                actions["fit_map"] = action;
                toolbarItems.push(action);
                toolbarItems.push('-');
                
                
  // -------- Begin RedLine Menu Items------------------------// 
  
  
               //Redline Line
                action = new GeoExt.Action({
                text: "Line",
                control: drawLine,
                map: map,
                toggleGroup: "tools",
                group: "tools"
                });
                
                actions["redline"] = action;
                
               
                //Redline Polgygon
                action = new GeoExt.Action({
                text: "Polygon",
                control: drawPolygon,
                map: map,
                toggleGroup: "tools",
                group: "tools"
                });
                
                actions["polygon"] = action;
                
                
                //Redline Point
                action = new GeoExt.Action({
                text: "Point",
                control: drawPoint,
                enableToggle: true,
                toggleGroup: "tools",
                group: "tools",
                map: map
                });
                
                actions["point"] = action;
                
                //Delete All Redlines
                action = new GeoExt.Action({
                text: "Delete Redlines",
                handler: function() {Ext.Msg.show({title:'Delete Red Lines?', 
msg: 'You are about to delete Redlines from map, are you sure?',buttons:        
      Ext.Msg.YESNOCANCEL,fn: processResult,animEl: 'elId',icon: 
Ext.MessageBox.QUESTION}); function processResult(){map.removeLayer(vlayer);}},
                map: map
                });
                
                actions["delete"] = action;
                
                //Create menu for Redlines
                toolbarItems.push({
                    text: 'Redline Toolbox',
                    toggleGroup: "tools",
                    group: "tools",
                    menu: new Ext.menu.Menu({
                        items: [
                        //Redline
                        new Ext.menu.CheckItem(actions["redline"]),
                        //Polygon
                        new Ext.menu.CheckItem(actions["polygon"]),
                        //Point
                        new Ext.menu.CheckItem(actions["point"]),
                        //Delete Redlines
                        new Ext.menu.CheckItem(actions["delete"])
                        ]
                       })
                   });
                

 //------------------End RedLine Menu Items -------------------// 
 
 
                //Print Action
                action = new GeoExt.Action({
                text: "  Print Map",
                handler: function() {window.print(); },
                map: map,
                cls: 'x-btn-text-icon',
                tooltip: 'Print Map',
                icon: '../images/toolbar/print.gif'
                });
                
                actions["print"] = action;
                toolbarItems.push(action);
                toolbarItems.push('-');
                
                 
                //Help Action
                action = new GeoExt.Action({
                text: "  Help",
                handler: function() {window_Help.show();},
                map: map,
                cls: 'x-btn-text-icon',
                tooltip: 'Display Help',
                icon: '../images/toolbar/help.gif'
                });
                
                actions["help"] = action;
                toolbarItems.push(action);
                toolbarItems.push('-');

                //Tutorial Action
                action = new GeoExt.Action({
                text: "  Tutorial",
                handler: function() {window_Tutorial.show();},
                map: map,
                cls: 'x-btn-text-icon',
                tooltip: 'Display Tutorial',
                icon: '../images/toolbar/tutorial.gif'
                });
                
                actions["tutorial"] = action;
                toolbarItems.push(action);
                toolbarItems.push('-');

           //Define MapPanel for use with GeoExt
            
            var mapPanel = new GeoExt.MapPanel({
            collapsed: false,
            height: 800,
            renderTo: '',
            map: map,
            center: lonLat,
            zoom: startupLevel,
            tbar: toolbarItems



-----Original Message-----
From: Eric Lemoine [mailto:[email protected]] 
Sent: October 05, 2010 12:19 AM
To: Andrew Stewart
Cc: [email protected]
Subject: Re: [Users] Adding a menu item to an existing Tbar, not working

On Monday, October 4, 2010, Andrew Stewart <[email protected]> wrote:
>
>
>
>
>
>
>
>
>
> I am trying to add a button with a menu to my existing toolbar but 
> unfortunately when I click on it the drawfeature control associated with the 
> button won't fire and the pan tool stays active. If I just add the 
> GeoExt.Action that adds redline directly
> to the tbar this works, but if I add the menu with it it doesn't. Not sure 
> what I am missing here just trying to get a menu because I want to allow the 
> drawfeature to use options for a line or polygon. Any help appreciated.

You may might a CheckItem for the Redline action. See the toolbar
example again, 
<http://trac.geoext.org/browser/core/trunk/geoext/examples/toolbar.js>.

-- 
Eric Lemoine

Camptocamp France SAS
Savoie Technolac, BP 352
73377 Le Bourget du Lac, Cedex

Tel : 00 33 4 79 44 44 96
Mail : [email protected]
http://www.camptocamp.com


[This message has been scanned for security content threats and viruses.]

[The City of Red Deer I.T. Services asks that you please consider the 
environment before printing this e-mail.]




_______________________________________________
Users mailing list
[email protected]
http://www.geoext.org/cgi-bin/mailman/listinfo/users


[This message has been scanned for security content threats and viruses.]

[The City of Red Deer I.T. Services asks that you please consider the 
environment before printing this e-mail.]




_______________________________________________
Users mailing list
[email protected]
http://www.geoext.org/cgi-bin/mailman/listinfo/users

Reply via email to