Hi!

Thanks for the clarification.

I had supposed that the objects on the MapEditor where ILayers.
Beginners mistake I guess.
I need to do some serious reading on uDig.

Thanks for your patience with my silly questions.

Michelle

-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Jesse
Eichar
Sent: 25 February 2006 18:49
To: User-friendly Desktop Internet GIS
Subject: Re: [udig-devel] Drag and Drop and beyond.


You can drop it onto a map but you have to specify Map as the target.  
Or better would be MapEditor.  It is the job of the Drop action to 
determine where in the map and on which layer the image is dropped on 
to.  The DND framework just wants to know the if an image is dropped on 
to a MapEditor what DropAction do I call.  The drop action determine 
what happens.  If you were to drop onto a layer in the layers view then 
the target would be an ILayer.  But if you drop onto the Map editor then

it should be a Map or MapEditor.

Jesse

M.S.Bachler wrote:
> Hi!
>  
> So you are saying that I cannot drop an icon onto a map?
> I just want to check we are using the same terminology and I am not 
> missunderstanding as I am new to GIS in general.
>  
> There is a large main window (view) where you display the GIS data, 
> like a country ouline, with a layer showing rivers and a layer showing
roads etc. I am not sure what tha view window is called.This is where I
am trying to drop an icon. I thought, what I was seeing in this area was
the layers. I am NOT trying to drop it on the list of layers or the list
of projevts/maps, but the actual graphical area.
>  
> The people I am writing this for want to drag images of various fish 
> and birds and dwelling etc, onto certain positions on a 'map', and
they want a layer for each type of icon. So a layer showing all hut
icons, a layer showing all fish etc. So I created a view which actually
is in the same set of tabs as the layers list, from which they can drag
the icons onto the 'map'/graphics area. I assumed that these were the
ILayers I could drop onto?
>  
> Have I missunderstood? Exactly where are the Layer Objects that are 
> accepting the drop?
>  
> Thanks
>  
> Michelle
>  
>
> ________________________________
>
> From: [EMAIL PROTECTED] on behalf of Jesse 
> Eichar
> Sent: Fri 24/02/2006 17:56
> To: User-friendly Desktop Internet GIS
> Subject: Re: [udig-devel] Drag and Drop and beyond.
>
>
> A few possibilities:
>
> 1.  Are you dropping it onto a layer in the Layers View or Project 
> Explorer?  You can't drop it on the map because it is a map not a 
> Layer. 2.  Are you sure that the objects in the table are Image 
> objects?
>
> Those are the main things from off the top of my head.
> Jesse
>
> M.S.Bachler wrote:
>
>       OK,
>        
>       I tried your suggestions, but am still not getting the drop
class even enstatiated or the accept method called etc.
>       I am new to Eclipse and uDig programming so am probably doing 
> something really stupid.
>        
>       My extension is now:
>        
>       
>       <extension point="net.refractions.udig.ui.dropAction">
>       <action 
>           class="info.ecosensus.udig.actions.IconDropAction"
>           name="Icon Drag And Drop">
>           <destination class="net.refractions.udig.project.ILayer"/>
>           <acceptedType class="org.eclipse.swt.graphics.Image"/>
>       </action> 
>       </extension>
>        
>       The method that creates a table in the tabbed pane in my view
class 
> is:
>        
>       private TableViewer createTable(TabFolder folder, UIIconGroup 
> oIconGroup) {
>         
>           TabFolder tabFolder = folder;     
>           Table table = new Table(tabFolder, SWT.NONE);   
>           TableViewer viewer = new TableViewer(table);
>       
>
>           UDIGDragDropUtilities.addDragSupport(viewer);
>         
>           table.setBounds(new
org.eclipse.swt.graphics.Rectangle(0,0,258,460));      
>         
>           TableColumn column = new TableColumn(table, SWT.LEFT);
>           column.setText("Icon");
>           column.setWidth(65);
>         
>           TableColumn column2 = new TableColumn(table, SWT.LEFT);
>           column2.setText("Name");
>           column2.setWidth(150);
>            
>           table.setHeaderVisible(true);
>           table.setLinesVisible(true);
>         
>           Vector vtItems = oIconGroup.getItems();
>           vtItems = UIUtilities.sortList(vtItems);  
>           int count = vtItems.size();
>           UIIconItem oItem = null;
>           TableItem oTableItem = null;  
>           for (int i=0; i<count; i++) {
>              oItem = (UIIconItem)vtItems.elementAt(i);
>              oTableItem = new TableItem(table, SWT.LEFT, i);
>              oTableItem.setData(oItem);
>              oTableItem.setImage(0, oItem.getImage()); // An
org.eclipse.swt.graphics.Image
>              oTableItem.setText(1, oItem.getName());   
>           }
>         
>           return viewer;
>        }
>        
>       Can you spot what I am doing wrong to break the drop?
>        
>       Thanks for your help.
>        
>       Michelle
>        
>        
>        
>
>               -----Original Message-----
>               From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Jesse
Eichar
>               Sent: 23 February 2006 17:40
>               To: User-friendly Desktop Internet GIS
>               Subject: Re: [udig-devel] Drag and Drop and beyond.
>               
>               
>               To add drag and drop to a viewer so that it can properly
integrate 
> with uDig use the UDIGDragDropUtilities.addDragSupport(viewer).  This
will make it so you can drop what ever your table contains.  So for
example if your table contains Image objects then image objects will be
dragged from your view.  For a DropAction to work the accepted type must
be the object dragged from the viewer.  IE Images.
>               
>               Jesse
>               
>               
>               M.S.Bachler wrote:
>
>                       Hi!
>                       
>                       Did this get fixed? (see email below)
>                       
>                       I still can't get my string to be accepted on
the drop.
>                       
>                       The dragStart and dragSourceData methods in the
DragListener on the
>                       source object get called fine.
>                       But the accept method of the Drop class never
gets called. 
>                       (Not even the construtor of the Drop class seems
to get called!).
>                       Not sure if it is something I am doing wrong.
>                       
>                       The extension code I have is:
>                       
>                         <extension
point="net.refractions.udig.ui.dropAction">
>                                <action           
>
class="info.ecosensus.udig.actions.IconDropAction"
>                                     name="Icon Drag And Drop">
>                                       <destination
>                       class="net.refractions.udig.project.ILayer"/>
>                                     <acceptedType
class="org.eclipse.swt.widgets.Table"/>
>                       
>                                </action>         
>                          </extension>
>                       
>                       (was not sure what the accetedType should be. I
have tried various
>                       things)
>                       
>                       I have attached the IconDropAction class (drop)
and the IconView class
>                       (drag source)
>                       
>                       Any ideas?
>                       
>                       Michelle
>                       
>                       -----Original Message-----
>                       From: [EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]> 
>                       [mailto:[EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]> ] On Behalf Of Jesse
>                       Eichar
>                       Sent: 02 November 2005 17:50
>                       To: User-friendly Desktop Internet GIS
>                       Subject: Re: [udig-devel] Drag and Drop and
beyond.
>                       
>                       
>                       Hmmm.  It isn't the SLDDropAction that is
consuming the event it sounds 
>                       like the WizardDropAction is consuming the
event.  I think you may have 
>                       found a bug.  I'm looking at the code and it
seems to always accept the 
>                       string regardless of whether it can understand
it.  That said I'm not 
>                       sure why your extension is not being called.  As
far as I know the code 
>                       does not consume the data.  All the actions that
are valid should be
>                       ran.
>                       
>                       Have you put a break point in the accept method
to see if it is being 
>                       called?
>                       
>                       Jesse
>                       
>                       M.S.Bachler wrote:
>                       
>                         
>
>                               Hi!
>                               
>                               I am probably asking a stupid question,
but I have written a small 
>                               plugin to accept a string drop and
display a message of the string, 
>                               (just to get started).
>                               
>                               The problem is, I am not sure my code
ever gets activated.
>                               I assume that SLDDropAction code is
taking the action before it 
> gets to
>                                   
>
>                         
>
>                               me?
>                               
>                               My project,xml action is:
>                               
>                                <extension
point="net.refractions.udig.ui.dropAction">
>                                        <action           
>                                       
>
class="net.refractions.udig.test1.actions.StringDropAction"
>                                              name="String Drag and
Drop">
>                                           <destination
class="net.refractions.udig.project.ILayer"/>
>                                       <acceptedType
class="java.lang.String"/>
>                                             </action>         
>                                 </extension>
>                               
>                               StringDropAction class extends
IDropAction.
>                               
>                               Am I on the right track?
>                               What do I need to do to get my code to
be able to process the 
> drop? All
>                                   
>
>                         
>
>                               I get is a dialog window come up asking
me to select a data 
> source.
>                               
>                               Thanks
>                               
>                               Michelle
>                               
>                               -----Original Message-----
>                               From:
[EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]> 
>
[mailto:[EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]> ] On Behalf Of Jesse 
>                               Eichar
>                               Sent: 01 November 2005 01:52
>                               To: User-friendly Desktop Internet GIS
>                               Subject: Re: [udig-devel] Drag and Drop
and beyond.
>                               
>                               
>                               [snip]
>                               
>                                
>                               
>                                   
>
>                                       I am trying to understand how to
start approaching the D&D stuff I 
>                                       need
>                                          
>                                       
>                                             
>
>                                
>                               
>                                   
>
>                                       to do. If I drop a string or
image file onto a Map, I assume it would
>                                       need to create a new layer in
the layer manager (and assuming I have 
>                                       programmed where), ultimately
store the data in the database and then 
>                                       render the feature.
>                                       
>                                       
>                                          
>                                       
>                                             
>
>                               Are you going to be developing on uDig
1.1 or 1.0.x?  I have done a lot
>                               of the difficult work so there is a nice
framework for 1.1 but the 
>                               downside is that it not being released
until later this month.  I 
> don't
>                                   
>
>                         
>
>                               know what your timeline is like.
>                               
>                               You can look at
>
net.refractions.udig.project.ui.internal.actions.DropAction for an 
>                               example of an action taken when a url is
dropped on a a layer.  The 
>                               declaration of the drop action in the
project.xml goes something like:
>                                   <action
>                                         
>
class="net.refractions.udig.project.ui.internal.actions.SLDDropAction"
>                                         name="SLD Drag and Drop">
>                                      <destination
class="net.refractions.udig.project.ILayer"/>
>                                      <acceptedType
class="java.io.File"/>
>                                      <acceptedType
class="java.net.URL"/>
>                                      <acceptedType
class="java.lang.String"/>
>                                   </action>
>                               
>                               I'm going to put this example in the
drag and drop documenation I wrote
>                               for you.
>                               
>                                
>                               
>                                   
>
>                                       So I need to deal with Map,
LayerManager, RenderManager, Catalogue,
>                                       Feature and probably more? Ahhh!
I feel sleepless nights coming 
> on.
>                                       
>                                       
>                                          
>                                       
>                                             
>
>                               This depends on the work flow and
requirements.  Suppose you drop a
>                               string on layer in LayersView and the
drop action creates a feature by 
>                               interpreting the string and adds it to
the layer.  In this case 
> can use
>                                   
>
>                         
>
>                               the Layer.getResource() method to get a
FeatureStore (Class used for 
>                               adding/removing features from a
datastore) and add the feature 
> using
>                                   
>
>                       the
>                         
>
>                               FeatureStore.  In this case all you need
to know is the Layer and
>                               FeatureStore API.
>                               
>                               Now suppose you drop a image that some
how specifies a layer and all 
>                               the
>                               
>                               features in the layer.  In this case you
need to know Map, Layer,
>                               Catalog, Feature, DataStore, etc...
>                               
>                               Hope this helps.
>                               
>                               Jesse
>
_______________________________________________
>                               User-friendly Desktop Internet GIS
(uDig) http://udig.refractions.net <http://udig.refractions.net>  
>
http://lists.refractions.net/mailman/listinfo/udig-devel
<http://lists.refractions.net/mailman/listinfo/udig-devel> 
>
_______________________________________________
>                               User-friendly Desktop Internet GIS
(uDig) http://udig.refractions.net <http://udig.refractions.net> 
>
http://lists.refractions.net/mailman/listinfo/udig-devel 
> <http://lists.refractions.net/mailman/listinfo/udig-devel>
>                                
>                               
>                                   
>
>                       _______________________________________________
>                       User-friendly Desktop Internet GIS (uDig)
http://udig.refractions.net <http://udig.refractions.net> 
>
http://lists.refractions.net/mailman/listinfo/udig-devel 
> <http://lists.refractions.net/mailman/listinfo/udig-devel>
>                         
>                       
> ________________________________
>
>
>                       _______________________________________________
>                       User-friendly Desktop Internet GIS (uDig)
>                       http://udig.refractions.net
<http://udig.refractions.net> 
>
http://lists.refractions.net/mailman/listinfo/udig-devel 
> <http://lists.refractions.net/mailman/listinfo/udig-devel>
>                         
>
>
>       
> ________________________________
>
>
>       _______________________________________________
>       User-friendly Desktop Internet GIS (uDig)
>       http://udig.refractions.net
>       http://lists.refractions.net/mailman/listinfo/udig-devel
>         
>
>
>   
> ----------------------------------------------------------------------
> --
>
> _______________________________________________
> User-friendly Desktop Internet GIS (uDig) http://udig.refractions.net
> http://lists.refractions.net/mailman/listinfo/udig-devel
>   

_______________________________________________
User-friendly Desktop Internet GIS (uDig) http://udig.refractions.net
http://lists.refractions.net/mailman/listinfo/udig-devel
_______________________________________________
User-friendly Desktop Internet GIS (uDig)
http://udig.refractions.net
http://lists.refractions.net/mailman/listinfo/udig-devel

Reply via email to