i tried to add popupmenu from my plugin. but not working. so i tried this
indirect way to add plugin
copy ShowRasterCellValue
to openjump/src/org/openjump/core/ui/plugin/layer/pirolraster

-- 
Thanks && Regards
Rashad
*** AddRasterImageLayerWizard.java	2011-02-08 10:47:01.495407000 +0530
--- AddRasterImageLayerWizard_new.java	2011-02-08 10:50:09.842597000 +0530
***************
*** 1,6 ****
--- 1,7 ----
  package org.openjump.core.rasterimage;
  
  import java.awt.Point;
+ import java.awt.Rectangle;
  import java.awt.geom.NoninvertibleTransformException;
  import java.io.File;
  import java.io.IOException;
***************
*** 25,30 ****
--- 26,32 ----
  import com.vividsolutions.jump.workbench.model.Layerable;
  import com.vividsolutions.jump.workbench.model.StandardCategoryNames;
  import com.vividsolutions.jump.workbench.ui.GUIUtil;
+ import com.vividsolutions.jump.workbench.ui.Viewport;
  import com.vividsolutions.jump.workbench.ui.images.famfam.IconLoaderFamFam;
  import com.vividsolutions.jump.workbench.ui.wizard.WizardDialog;
  import com.vividsolutions.jump.workbench.ui.wizard.WizardPanel;
***************
*** 193,200 ****
     * @param context
     * @return the RasterImage Envelope
     * @throws IOException
     */
!   protected Envelope getGeoReferencing(String fileName, boolean allwaysLookForTFWExtension, Point imageDimensions, WorkbenchContext context) throws IOException{
        double minx, maxx, miny, maxy;
        Envelope env = null;
        
--- 195,203 ----
     * @param context
     * @return the RasterImage Envelope
     * @throws IOException
+  * @throws NoninvertibleTransformException 
     */
!   protected Envelope getGeoReferencing(String fileName, boolean allwaysLookForTFWExtension, Point imageDimensions, WorkbenchContext context) throws IOException, NoninvertibleTransformException{
        double minx, maxx, miny, maxy;
        Envelope env = null;
        
***************
*** 325,331 ****
                    //logger.printWarning("user canceled");
                    return null;
                }
!               
                minx = Double.parseDouble((String) d
                       .getData(RasterImageWizardPanel.MINX_KEY));
                maxx = Double.parseDouble((String) d
--- 328,334 ----
                    //logger.printWarning("user canceled");
                    return null;
                }
!               try {
                minx = Double.parseDouble((String) d
                       .getData(RasterImageWizardPanel.MINX_KEY));
                maxx = Double.parseDouble((String) d
***************
*** 334,342 ****
                       .getData(RasterImageWizardPanel.MINY_KEY));
                maxy = Double.parseDouble((String) d
                       .getData(RasterImageWizardPanel.MAXY_KEY));
!   
                env = new Envelope(minx, maxx, miny, maxy);
!           }
            // creating world file
            this.worldFileHandler = new WorldFileHandler(fileName, this.allwaysLookForTFWExtension);
            this.worldFileHandler.writeWorldFile(env, imageDimensions.x, imageDimensions.y);
--- 337,361 ----
                       .getData(RasterImageWizardPanel.MINY_KEY));
                maxy = Double.parseDouble((String) d
                       .getData(RasterImageWizardPanel.MAXY_KEY));
!               
                env = new Envelope(minx, maxx, miny, maxy);
!              }
!               catch(java.lang.NumberFormatException e) {
!      		 Viewport viewport = context.getLayerViewPanel().getViewport();
!              Rectangle visibleRect = viewport.getPanel().getVisibleRect();
!              
!              int visibleX1 = visibleRect.x;
!              int visibleY1 = visibleRect.y;
!              int visibleX2 = visibleX1 + visibleRect.width;
!              int visibleY2 = visibleY1 + visibleRect.height;
!     		  Coordinate upperLeftVisible = viewport.toModelCoordinate(new Point(0,0));
!               Coordinate lowerRightVisible = viewport.toModelCoordinate(new Point(visibleX2, visibleY2));
!               
!              env = new Envelope(upperLeftVisible.x, lowerRightVisible.x, upperLeftVisible.y, lowerRightVisible.y);
! 
!              }
!               
!           } 
            // creating world file
            this.worldFileHandler = new WorldFileHandler(fileName, this.allwaysLookForTFWExtension);
            this.worldFileHandler.writeWorldFile(env, imageDimensions.x, imageDimensions.y);
/*


 *  $Author: MohammedRashad K.M $
 *  $Date: 2011-2-08 10:01:50 (Tue, 07 Jan 2011) $

 */
package org.openjump.core.ui.plugin.layer.pirolraster;

import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;

import javax.swing.JOptionPane;

import org.openjump.core.apitools.LayerTools;
import org.openjump.core.rasterimage.RasterImageLayer;
import org.openjump.core.rasterimage.sextante.OpenJUMPSextanteRasterLayer;
import org.openjump.core.rasterimage.sextante.rasterWrappers.GridExtent;


import com.vividsolutions.jump.I18N;
import com.vividsolutions.jump.workbench.WorkbenchContext;
import com.vividsolutions.jump.workbench.plugin.AbstractPlugIn;
import com.vividsolutions.jump.workbench.plugin.EnableCheckFactory;
import com.vividsolutions.jump.workbench.plugin.MultiEnableCheck;
import com.vividsolutions.jump.workbench.plugin.PlugInContext;



public class ShowRasterCellValuesPlugIn extends AbstractPlugIn {

    public ShowRasterCellValuesPlugIn() {
    
    }

    /**
     *@inheritDoc
     */
    public String getIconString() {
        return null;
    }

    /**
     * @inheritDoc
     */
    public String getName() {
        return "Show Cell Values";
      
    }
    
    /**
     *@inheritDoc
     */
    public boolean execute(final PlugInContext context) throws Exception {
        
        RasterImageLayer rLayer = (RasterImageLayer) LayerTools.getSelectedLayerable(context, RasterImageLayer.class);
        
        if (rLayer==null){
            //context.getWorkbenchFrame().warnUser(I18N.get("pirol.plugIns.EditAttributeByFormulaPlugIn.no-layer-selected"));
            context.getWorkbenchFrame().warnUser("no-layer-selected");
            return false;
        }
        
        context.getLayerViewPanel().addMouseListener(new MouseListener() {
			
			@Override
			public void mouseReleased(MouseEvent e) {
				// TODO Auto-generated method stub
				
			}
			
			@Override
			public void mousePressed(MouseEvent e) {
				// TODO Auto-generated method stub
				
			}
			
			@Override
			public void mouseExited(MouseEvent e) {
				// TODO Auto-generated method stub
				
			}
			
			@Override
			public void mouseEntered(MouseEvent e) {
				// TODO Auto-generated method stub
				
			}
			
			@Override
			public void mouseClicked(MouseEvent e) {
				  RasterImageLayer rLayer = (RasterImageLayer) LayerTools.getSelectedLayerable(context, RasterImageLayer.class);
			        
					      if (rLayer==null){
					            context.getWorkbenchFrame().warnUser(I18N.get("pirol.plugIns.EditAttributeByFormulaPlugIn.no-layer-selected"));
					            return;
					        }
					 
					       
			       OpenJUMPSextanteRasterLayer layer2 = new OpenJUMPSextanteRasterLayer();
			        layer2.create(rLayer,true);
			        
			       GridExtent gridExtent = new GridExtent(layer2);
			 
			             layer2.setWindowExtent(gridExtent);
					     
	JOptionPane.showMessageDialog(null, layer2.getCellValueAsDouble(e.getX(), e.getY()),"cell values",1);
					      // System.out.println(layer2.getCellValueAsDouble(e.getX(), e.getY()));
	
				
			}
		});
        

        return true;
    }

    
    
    public MultiEnableCheck createEnableCheck(WorkbenchContext workbenchContext) {
        EnableCheckFactory checkFactory = new EnableCheckFactory(workbenchContext);

        return new MultiEnableCheck().add(checkFactory.createWindowWithLayerNamePanelMustBeActiveCheck());
    
    }
}
------------------------------------------------------------------------------
The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE:
Pinpoint memory and threading errors before they happen.
Find and fix more than 250 security defects in the development cycle.
Locate bottlenecks in serial and parallel code that limit performance.
http://p.sf.net/sfu/intel-dev2devfeb
_______________________________________________
Jump-pilot-devel mailing list
Jump-pilot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel

Reply via email to