If I ever understand enough to get it written!!

I am working on my uDig plugin full time now, so fingers crossed.

Michelle

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


Just an aside: this is a really cool UI approach to data entry, very  
intuitive for end users!  Only good for points, but what the heck!  I  
like it, perhaps we could get this plug-in into the community site  
and genericized later on: the "drop palette" data entry system.

P

On 25-Feb-06, at 10:48 AM, Jesse Eichar wrote:

> 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:udig-
>> [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:udig- 
>> [EMAIL PROTECTED]>
[mailto:udig-devel- 
>> [EMAIL PROTECTED] <mailto:udig-devel-
>> [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:udig- 
>> [EMAIL PROTECTED]>
[mailto:udig-devel- 
>> [EMAIL PROTECTED] <mailto:udig-devel- 
>> [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
_______________________________________________
User-friendly Desktop Internet GIS (uDig)
http://udig.refractions.net
http://lists.refractions.net/mailman/listinfo/udig-devel

Reply via email to