Drag and Drop objects with JavaFX properties

Has anyone tried to implement drag and drop functionality with objects containing JavaFX properties? The issue I'm running into is that the objects appear to need to be serializable, and the JavaFX properties are not serializable. I can implement Externalizable instead of Serializable, and basically serialize the values contained by the FX properties, but of course I lose any bindings by doing this (as the listeners underlying the bindings are not serialized).
The [url http://docs.oracle.com/javafx/2/api/javafx/scene/input/Clipboard.html]javadocs for Clipboard state "In addition to the common or built in types, you may put any arbitrary data onto the clipboard (assuming it is either a reference, or serializable. See more about references later)" but I don't see any further information about references (and at any rate, this doesn't really make sense since anything that's serializable would be a reference anyway). Is there a special DataFormat I can use to specify a reference in the local JVM so the reference gets passed without serialization?
I know this might not make sense without a code example; I just thought someone might have come across this closely enough to recognize the problem. I'll try to post a code example tonight...

Here's pretty much the simplest example I can come up with. I have a real-world example of needing to do this, but the object model for the real example is quite a bit more complex.
For the toy example, imagine we have a list of projects, some employees, and we want to assign each project to one or more employees. I have a Project class with a title and assignee. (In real life you can imagine other properties; due date, status, etc.) I'll keep a ListView with a bunch of unassigned projects (titles but assignees equal to null) and then a ListView for each of the employees.
To assign a project to an employee, the user should be able to drag from the "master" list view to one of the employee list views. When the project is dropped, we'll create a new project, set the assignee, and bind the title of the new project to the title of the project which was dragged. (Remember we want to be able to assign a single project to multiple employees.)
So here's the first shot:
A couple of simple model classes
Project.java
import java.io.Externalizable;
import java.io.IOException;
import java.io.ObjectInput;
import java.io.ObjectOutput;
import javafx.beans.property.ObjectProperty;
import javafx.beans.property.SimpleObjectProperty;
import javafx.beans.property.SimpleStringProperty;
import javafx.beans.property.StringProperty;
public class Project {
     private final StringProperty title ;
     private final ObjectProperty<Employee> assignee ;
     public Project(String title) {
          this.title = new SimpleStringProperty(this, "title", title);
          this.assignee = new SimpleObjectProperty<Employee>(this, "assignee");
     public Project() {
          this("");
     public StringProperty titleProperty() {
          return title ;
     public String getTitle() {
          return title.get() ;
     public void setTitle(String title) {
          this.title.set(title);
     public ObjectProperty<Employee> assigneeProperty() {
          return assignee ;
     public Employee getAssignee() {
          return assignee.get();
     public void setAssignee(Employee assignee) {
          this.assignee.set(assignee);
     @Override
     public String toString() {
          String t = title.get();
          Employee emp = assignee.get();
          if (emp==null) {
               return t;
          } else {
               return String.format("%s (%s)", t, emp.getName()) ;
}Employee.java
import java.io.Externalizable;
import java.io.IOException;
import java.io.ObjectInput;
import java.io.ObjectOutput;
import javafx.beans.property.SimpleStringProperty;
import javafx.beans.property.StringProperty;
public class Employee {
     private StringProperty name ;
     public Employee(String name) {
          this.name = new SimpleStringProperty(this,"name", name);
     public StringProperty nameProperty() {
          return name ;
     public String getName() {
          return name.get();
     public void setName(String name) {
          this.name.set(name);
}and the application
DnDExample.java
import javafx.application.Application;
import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
import javafx.collections.ObservableList;
import javafx.event.EventHandler;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.control.ListCell;
import javafx.scene.control.ListView;
import javafx.scene.control.TextField;
import javafx.scene.input.ClipboardContent;
import javafx.scene.input.DataFormat;
import javafx.scene.input.DragEvent;
import javafx.scene.input.Dragboard;
import javafx.scene.input.MouseEvent;
import javafx.scene.input.TransferMode;
import javafx.scene.layout.HBox;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;
import javafx.util.Callback;
public class DnDExample extends Application {
     private static final DataFormat PROJECT_DATA_FORMAT = new DataFormat("com.example.project"); // is there something special I can use here?
     @Override
     public void start(Stage primaryStage) {
          final HBox root = new HBox(5);
          final ListView<Project> allProjects = new ListView<Project>();
          final Employee fred = new Employee("Fred");
          final Employee ginger = new Employee("Ginger");
          final ListView<Project> fredsProjects = new ListView<Project>();
          final ListView<Project> gingersProjects = new ListView<Project>();
          final VBox employeeLists = new VBox(5);
          employeeLists.getChildren().addAll(new Label("Fred's Projects"), fredsProjects, new Label("Ginger's Projects"), gingersProjects);
          root.getChildren().addAll(allProjects, employeeLists);
          allProjects.setCellFactory(new Callback<ListView<Project>, ListCell<Project>>() {
               @Override
               public ListCell<Project> call(ListView<Project> listView) {
                    return new AllProjectListCell();
          allProjects.setEditable(true);
          final EventHandler<DragEvent> dragOverHandler = new EventHandler<DragEvent>() {
               @Override
               public void handle(DragEvent dragEvent) {
                    if (dragEvent.getDragboard().hasContent(PROJECT_DATA_FORMAT)) {
                         dragEvent.acceptTransferModes(TransferMode.COPY);
          fredsProjects.setOnDragOver(dragOverHandler);
          gingersProjects.setOnDragOver(dragOverHandler);
          fredsProjects.setOnDragDropped(new DragDropHandler(fred, fredsProjects.getItems()));
          gingersProjects.setOnDragDropped(new DragDropHandler(ginger, gingersProjects.getItems()));
          allProjects.getItems().addAll(new Project("Implement Drag and Drop"), new Project("Fix serialization problem"));
          Scene scene = new Scene(root, 600, 400);
          primaryStage.setScene(scene);
          primaryStage.show();
     public static void main(String[] args) {
          launch(args);
     private class DragDropHandler implements EventHandler<DragEvent> {
          private final Employee employee ;
          private final ObservableList<Project> itemList;
          DragDropHandler(Employee employee, ObservableList<Project> itemList) {
               this.employee = employee ;
               this.itemList = itemList ;
          @Override
          public void handle(DragEvent event) {
               Dragboard db = event.getDragboard();
               if (db.hasContent(PROJECT_DATA_FORMAT)) {
                    Project project = (Project) db.getContent(PROJECT_DATA_FORMAT);
                    Project assignedProject = new Project();
                    assignedProject.titleProperty().bind(project.titleProperty());
                    assignedProject.setAssignee(employee);
                    itemList.add(assignedProject);
     private class AllProjectListCell extends ListCell<Project> {
          private TextField textField ;
          private final EventHandler<MouseEvent> dragDetectedHandler ;
          AllProjectListCell() {               
               this.dragDetectedHandler = new EventHandler<MouseEvent>() {
                    @Override
                    public void handle(MouseEvent event) {
                         Dragboard db = startDragAndDrop(TransferMode.COPY);
                         ClipboardContent cc = new ClipboardContent();
                         cc.put(PROJECT_DATA_FORMAT, getItem());
                         db.setContent(cc);
                         event.consume();
               this.setEditable(true);
          @Override
          public void updateItem(final Project project, boolean empty) {
               super.updateItem(project, empty);
               if (empty) {
                    setText(null);
                    setGraphic(null);
                    setOnDragDetected(null);
               } else if (isEditing()) {
                    if (textField != null) {
                         textField.setText(getItem().getTitle());
                    setText(null) ;
                    setOnDragDetected(null);
                    setGraphic(textField);                    
               } else {
                    setText(project.getTitle());
                    setOnDragDetected(dragDetectedHandler);
          @Override
          public void startEdit() {
               super.startEdit();
               if (!isEmpty()) {
                    textField = new TextField(getItem().getTitle());
                    textField.setMinWidth(this.getWidth()-this.getGraphicTextGap());
                    textField.focusedProperty().addListener(new ChangeListener<Boolean>() {
                         @Override
                         public void changed(
                                   ObservableValue<? extends Boolean> observable,
                                   Boolean oldValue, Boolean newValue) {
                              if (! newValue) {
                                   getItem().setTitle(textField.getText());
                                   commitEdit(getItem());
                    setText(null);
                    setGraphic(textField);
                    setOnDragDetected(null);
          @Override
          public void cancelEdit() {
               super.cancelEdit();
               if (!isEmpty()) {
                    setText(getItem().getTitle());
                    setGraphic(null);
                    setOnDragDetected(dragDetectedHandler);
               } else {
                    setText(null);
                    setGraphic(null);
                    setOnDragDetected(null);
          @Override
          public void commitEdit(Project project) {
               super.commitEdit(project);
               if (!isEmpty()) {
                    setText(getItem().getTitle());
                    setGraphic(null);
                    setOnDragDetected(dragDetectedHandler);
}If you try to drag from the list on the left to one of the lists on the right, it will fail pretty quickly and tell you that the data need to be Serializable.
Simply adding "implements Serializable" to the Project and Employee classes doesn't work, as you find that SimpleStringProperty and SimpleObjectProperty are not Serializable. So instead I can use Externalizable:
public class Project implements Externalizable {
@Override
     public void writeExternal(ObjectOutput out) throws IOException {
          out.writeObject(title.get());
          out.writeObject(assignee.get());
     @Override
     public void readExternal(ObjectInput in) throws IOException,
               ClassNotFoundException {
          setTitle((String)in.readObject());
          setAssignee((Employee)in.readObject());
}and
public class Employee implements Externalizable {
     @Override
     public void writeExternal(ObjectOutput out) throws IOException {
          out.writeObject(name.get());
     @Override
     public void readExternal(ObjectInput in) throws IOException,
               ClassNotFoundException {
          setName((String) in.readObject());
}This makes the drag and drop work, but if you drop a project on one of the employee lists, then edit the project title in the master list, the binding is not respected. This is because deserialization creates a new SimpleStringProperty for the title, which is not the property to which the title of the new Project object is bound.
What I really want to do is to be able to drag and drop an object within the same JVM simply by passing the object by reference, rather than by serializing it. Is there a way to do this? Is there some DataFormat type I need?

Similar Messages

  • How to add text to a drag and drop object

    Hi everyone, I am quite a beginner with Flash so do excuse
    me. First, I am not sure if what I want to achieve may actually be
    impossible with Flash. I presently use MX 2004, but will shortly be
    upgrading to CS3. But if you know the answer for MX 2004 that would
    be really useful for now.
    I am writing a digital fiction story, and I want to create
    drag and drop objects. This I have managed to do. But I would like
    these drag and drop objects to also reveal text when they are
    actually pressed on. I have had no success so far in being able to
    achieve the two effects together.
    Does anyone know how I can achieve this? If, by chance, you
    know the action script that would be great. If you can explain to
    me in simple terms how I can achieve this I really would be
    grateful.
    Thanking you,
    Mary

    The script I posted would work on the main timeline - not in
    the timeline of the clip itself.
    So you made a movieclip out of the image and gave it the
    instance name "myclip". That's good.
    You edited that clip and added a dynamic text box with
    instance name "mytext". Be careful not to confuse the "instance"
    name of the text box with the "Var:" name. "myclip" should be the
    instance name. Also be careful to make sure you uncheck the
    "selectable" box. Edit your clip and click on the textbox to select
    it and look in the properties panel. There should be a button with
    Ab on it. If it is white background (highly likely), click it so it
    is not white. If the text is selectable, it will interfere with
    your button functions.
    While there is nothing wrong with creating nested clips
    within your movieclips, unless you plan to target them for
    something, there is no benefit. The only thing that needs an
    instance name inside the myclip is the textbox (based on what you
    are trying to do).
    You don't need any actionscript in the movieclip itself. If
    you can learn to place all your AS on the root timeline, you will
    be well ahead.
    If you placed that AS inside the clip, Flash wouldn't know
    what to do with it.
    Technically you can place the AS inside the clip on the layer
    you created but, if you did that, you would need to modify the
    script to the following:
    this.onPress = function() {
    this.mytext.text = "stop pressing so hard";
    startDrag(this);
    this.onRelease = function() {
    this.mytext.text = "";
    stopDrag();

  • Rollover text on a drag and drop object

    Hi folks, I wondered if someone could help me with this
    problem. Last week I was adding text to a drag and drop object on
    the press of a button and release of a button. This week, I am
    trying to get the drag and drop object to reveal text when the
    mouse rolls over it and again when the mouse releases it. I thought
    it should be pretty easy to fathom out the script for this, because
    I was given a lot of help last week. But I put in the attached
    code, and the object does not drag and drop, and neither does it
    show any text when the mouse rolls over it and off it.
    Can anyone tell me what I am doing wrong?
    Thanking you,
    Marchan

    The script I posted would work on the main timeline - not in
    the timeline of the clip itself.
    So you made a movieclip out of the image and gave it the
    instance name "myclip". That's good.
    You edited that clip and added a dynamic text box with
    instance name "mytext". Be careful not to confuse the "instance"
    name of the text box with the "Var:" name. "myclip" should be the
    instance name. Also be careful to make sure you uncheck the
    "selectable" box. Edit your clip and click on the textbox to select
    it and look in the properties panel. There should be a button with
    Ab on it. If it is white background (highly likely), click it so it
    is not white. If the text is selectable, it will interfere with
    your button functions.
    While there is nothing wrong with creating nested clips
    within your movieclips, unless you plan to target them for
    something, there is no benefit. The only thing that needs an
    instance name inside the myclip is the textbox (based on what you
    are trying to do).
    You don't need any actionscript in the movieclip itself. If
    you can learn to place all your AS on the root timeline, you will
    be well ahead.
    If you placed that AS inside the clip, Flash wouldn't know
    what to do with it.
    Technically you can place the AS inside the clip on the layer
    you created but, if you did that, you would need to modify the
    script to the following:
    this.onPress = function() {
    this.mytext.text = "stop pressing so hard";
    startDrag(this);
    this.onRelease = function() {
    this.mytext.text = "";
    stopDrag();

  • A drag and drop game with dynamic text response

    Hi,
    I am a teacher and my school has recently upgraded to Adobe Design Premium.  Our previous version was about 5 versions out of date.
    I teach A Level which requires students to create an Interactice Multimedia product.
    In the previous 6 years, I have taught students how to create simple drag and drop game with dynamic text responses.
    Since the upgrade to Actionscript 3.0 the dynamic text response has ceased working.
    When creating the game from scratch, I need to move to Actionscript 2.0 as 3.0 does not allow me to add actionscript to objects - I know and am sure that this is a better way of doing things, but I would prefer to keep working the way I am used to.
    I use a switch case statement which I have copied below to make the drag and drop work.  The objects I apply the code to work in that they can be dragged, however, my dynamic text box with a variable name of "answer" is no longer displaying the response when an answer is left on a dropzone (rectangle converted to a symbol and given an instance name).
    on(press) {
    startdrag(this);
    on(release) {
    stopdrag();
    switch(this._droptarget) {
      case "/dropzoneB":
       _root.answer="Well done";
       break;
      case "/dropzoneA":
      case "/dropzoneC":
       _root.answer="Hopeless";
       break;
      default:
       _root.answer="";
       break;
    Any help would be much apeciated.
    Thanks
    Adrian

    To drag in as3
    blie_btn is the instance of the object drawin on the stage. In AS3 you have to assign a even listener, in this case MOUSE_DOWN, and MOUSE_UP, as we want the drag to stop if the mouse is not clicked. Then we fire the functions, and tell the object to start drag.
    // Register mouse event functions
    blue_btn.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
    blue_btn.addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler);
    red_btn.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
    red_btn.addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler);
    // Define a mouse down handler (user is dragging)
    function mouseDownHandler(evt:MouseEvent):void {
         var object = evt.target;
         // we should limit dragging to the area inside the canvas
         object.startDrag();
    function mouseUpHandler(evt:MouseEvent):void {
         var obj = evt.target;
              obj.stopDrag();
    if you want to make the text do what you want then something like this might work.
    In the function, you could add a text box onto the stage, give it a instance of something like outputText
    and then:
    outputText = ("Bla Bla Bla");
    (^Not sure if this will work exactly^)
    PS. I am currently a A-level student

  • Drag and Drop Labels with line interconnected

    Dear all,
    As before, I use java.awt.dnd objects and java.awt.datatransfer objects to help me to drag and drop some labels with right-click my mouse.
    Now I would like to left-click my mouse to draw a line between the two labels by pressing the left-click on label 1 and drag and drop to label 2. Then I would like to see a now line created betwwen label 1 and 2. I have an idea to addMouseListener and addMouseMotionListener on the labels to get the position of the labels and draw a line with the position. But I found that both right-click and left-click can trigger this event. Can I give some restriction on that so only left-click can trigger this event.
    Also I cannot do it successfully as I found that after I rewrite the paintComponent method, the older image cannot be cleared and make the screen become verbose. Do I missing something on rewrite the paintComponent method? Also do you have any other suggestion on the task of drawing a line between the 2 labels?
    Thanks a lot!
    Peter

    Of course you can select only left click events :
    You simply add a test like that in your Mouse(Motion)Listener's methods :
    if (SwingUtilities.isLeftMouseButton(aMouseEvent)) {
    I hope this helps,
    Denis

  • Drag and drop objects in Captivate 4

    Hi,
    Is it possible to have a user click and drag an object on a slide in captivate 4?
    For e.g. - in a matching type-quiz, instead of creating the usual quiz - I want a user to click and place the correct object in the correct box. Can this effect be achieved?
    Thanks!

    With either (or both) of these Drag and Drop widgets, yes: http://www.infosemantics.com.au/dragdrop

  • Drag and Drop Interaction with 50+ Drop Targets

    Hello,
    I'm fairly new to Captivate 7 but very familiar with Flash. I'm tasked with a project that I would like to do with the drag and drop interaction widget from Captivate 7. Basically, we need our learners to identify the locations of our resorts on a map. Select the name of the resort, drag and drop it in the city/state or country where located. My question is can Captivate handle this task? To me, it seems as a large task for Captivate to handle, and so I was thinking of coding it in Flash.
    Here is what I need:
    1.- List of all the properties at bottom with the drop target being a map of the US or world and have the location for each property as the drop target.
    2.- When the resort/property is selected, the name will change to the three letter code. Example: New York City, when clicked = NYC and the map itself to reflect the 3 letter code once dropped on the map if correct.
    3. If incorrect, the listed item will revert to the long name and return to the list.
    4. If this can be graded, it would be best.
    I can break the project into different regions but if I wanted to keep all 300+ properties in one module, will it be an issue? At the very least, I would need to do a minimum of about 50 per module.
    Thanks all! I've found this forum to be extremely helpful and the members seem to be eager to help.

    var matchingTargetName:String =(event.target.name).substring(0, 1);
    Change the name of the target to A and B and the mc A1, A2, A3, A4... and B1, B2,B3...

  • Drag and Drop fails with JDK 7u6 in Linux

    Hi,
    I'm face with a strange bug on JavaFX 2.2 (JDK 7u6, Ubuntu 12); I implemented drag & drop feature of labels in a stage; first time, I open the stage, the drag & drop works well; when I close the stage and reopen it, it fails : I can drag the label but I cannot drop it on the target (the target events are not fired); I can reproduce the bug easily with the class below, you have just to instantiate the class TestDragAndDrop in an application class.
    On window 7, it works well, I cannot reproduce the bug.
    Thank you for your help,
    David
    public class TestDragAndDrop {
        public TestDragAndDrop() {
            Stage stage = new Stage();
            stage.setTitle("Hello Drag And Drop");
            Group root = new Group();
            Scene scene = new Scene(root, 400, 200);
            scene.setFill(Color.LIGHTGREEN);
            final Text source = new Text(50, 100, "DRAG ME");
            source.setScaleX(2.0);
            source.setScaleY(2.0);
            final Text target = new Text(250, 100, "DROP HERE");
            target.setScaleX(2.0);
            target.setScaleY(2.0);
            source.setOnDragDetected(new EventHandler <MouseEvent>() {
                public void handle(MouseEvent event) {
                    /* drag was detected, start drag-and-drop gesture*/
                    System.out.println("onDragDetected");
                    /* allow any transfer mode */
                    Dragboard db = source.startDragAndDrop(TransferMode.ANY);
                    /* put a string on dragboard */
                    ClipboardContent content = new ClipboardContent();
                    content.putString(source.getText());
                    db.setContent(content);
                    event.consume();
            target.setOnDragOver(new EventHandler <DragEvent>() {
                public void handle(DragEvent event) {
                    /* data is dragged over the target */
                    System.out.println("onDragOver");
                    /* accept it only if it is  not dragged from the same node
                     * and if it has a string data */
                    if (event.getGestureSource() != target &&
                            event.getDragboard().hasString()) {
                        /* allow for both copying and moving, whatever user chooses */
                        event.acceptTransferModes(TransferMode.COPY_OR_MOVE);
                    event.consume();
            target.setOnDragEntered(new EventHandler <DragEvent>() {
                public void handle(DragEvent event) {
                    /* the drag-and-drop gesture entered the target */
                    System.out.println("onDragEntered");
                    /* show to the user that it is an actual gesture target */
                    if (event.getGestureSource() != target &&
                            event.getDragboard().hasString()) {
                        target.setFill(Color.GREEN);
                    event.consume();
            target.setOnDragExited(new EventHandler <DragEvent>() {
                public void handle(DragEvent event) {
                    /* mouse moved away, remove the graphical cues */
                    target.setFill(Color.BLACK);
                    event.consume();
            target.setOnDragDropped(new EventHandler <DragEvent>() {
                public void handle(DragEvent event) {
                    /* data dropped */
                    System.out.println("onDragDropped");
                    /* if there is a string data on dragboard, read it and use it */
                    Dragboard db = event.getDragboard();
                    boolean success = false;
                    if (db.hasString()) {
                        target.setText(db.getString());
                        success = true;
                    /* let the source know whether the string was successfully
                     * transferred and used */
                    event.setDropCompleted(success);
                    event.consume();
            source.setOnDragDone(new EventHandler <DragEvent>() {
                public void handle(DragEvent event) {
                    /* the drag-and-drop gesture ended */
                    System.out.println("onDragDone");
                    /* if the data was successfully moved, clear it */
                    if (event.getTransferMode() == TransferMode.MOVE) {
                        source.setText("");
                    event.consume();
            root.getChildren().add(source);
            root.getChildren().add(target);
            stage.setScene(scene);
            stage.show();
        public static void main(String[] args) {
            Application.launch(args);

    DUUUUUUUDE! IT'S WORKING NOW!!!!
    When you originally asked, "What happens if you click on an image and move it to another folder?", I didn't really understand what you were talking about because I almost never have my workspace set up in a way that the folders are showing. I always hide them. So I didn't really understand what you were saying. Just a few minutes ago, I realized that that is what you were asking so I opened up the folder area and tried dragging thumbs into different folders and saw that it does work.
    So then, because of you mentioning that blue line and me know that I did see the blue line on occasion. I went back over into the thumbnails to find out if I always got the blue line or if it was a hit or miss thing. I couldn't believe my eyes when all of the sudden I saw that I no longer was getting that circle with the line through it, and low and behold, the thumbnail dropped right into position like it is supposed to!!!!
    The thing is, I don't know what I've learned from this. I thought, "well, what is different?" The only thing that I can think of is that I now have the folders showing in my workspace so I wondered if that was the secret but I just now hid the folders again like I usually do and the drag and drop into position is STILL WORKING!!!
    All I can figure is that somehow, dragging and dropping a thumbnail into a folder like that for the first time, triggered something so that I can now drag and drop among the thumbnail positions? Not sure. All I know is that for some reason, IT'S WORKING NOW!
    Now, for the second important part, I wonder if I drag and drop everything into the order that I want and then select all of the files and drag them into a new folder, will they stay in that order? I need to go experiment with that.
    If you hadn't kept at it and in turn had me keep trying stuff, it would have never happened because I had pretty much given up.
    Thanks Curt!
    You da man!!!

  • Why won't drag and drop work with Library Assets in Illustrator or InDesign?

    I've read a couple of threads with people having this issue, some dating back to late summer last year. I tried the fixes offered up in the responses, but haven't had success yet.
    All my programs are up-to-date, but I cannot drag and drop graphics from my library into InDesign or Illustrator. Photoshop is working fine.
    Are there any actual solutions to this yet?

    What kind of graphic are you talking about? In the Library panel (Illustrator) or CC Library panel (InDesign) graphics are identified with a small label to tell what their source is (Ai, ID, PS, SVG, etc.)
    And even though you say you have the latest version, exactly what version of InDesign do you have? You can see it in the About InDesign choice under the InDesign menu (Mac) or Help menu (Windows).

  • Wacky Drag and Drop issue with JNLP

    I'm sure I'll have to be a bit more descriptive but I'll just throw this out and see if anyone has any suggestions.
    I've got a swing app which is an administration tool to a rules engine I have built. I distribute the app to users using JNLP 1.2.
    Here's the problem. When I launch the app using JNLP, a portion of the app does not work. There is a panel in which I allow users to drag items off of a tree and onto a panel. They can drag and drop one item but when they attempt to drag and drop a second item it doesn't drop. If I take that same code which is being distributed via JNLP, copy it to the local machine and run it, it works. I can drag and drop all day long.
    There are no exceptions, no errors or funny gooey state things going on. I start the drag, the mouse pointer changes, I hover of the drop zone and let go of the mouse and it appears to drop, but the component does not show. Wacky.
    Does this set off any bells to anyone?
    Thanks,
    - Jay
    App compiled using 1.4.1_01.

    Ah ha.. Yes this does seem to the issue. Thanks for the response. I've tested it on a couple of machines and it works on the one's with 1.4.1 and it doesn't seem to work on 1.4.0 jre machines.
    NEW Question though, if I set my .jnlp to:
    <j2se version="1.4.1+"/>
    I get the 'ol 'Error Code 11 (11 Could not locate requested version'
    Is there any way to get this guy to auto-install???
    I've installed JRE 1.4.1 manually and it doesn't seem to pick that up either.
    Thanks...

  • Drag-and-drop issue with Linux, KDE

    My application used to work fine, but when i tested it on Linux drag and drop stopped working.
    I used snippet that would take list of supported DataFlavors of Transferable and used for loop to find a javafilelist one. (isJavaFileListType()).
    Well, now, it does that flava scan, but it doesn't find javafilelisttype in the list!
    I tried to retrieve String, serializedobject.. no use. It throws and illegal action exception of DnD or something like that.
    Does anybody know what's wrong, or had similar issues? I use j2 of v 1.5.2
    I shall provide you with more info if it's something totally new.

    I'd be interested in the answer to this too.
    It only just started happening to me a day or so ago, about the time that I think I did an OS upgrade.
    I'm on OSX 10.8.2.
    Its annoying.
    I can drop and drag in Finder but it just affects email.

  • Drag and Drop objects in web app

    Hi all,
    I have a web application in which i have an option to delete the listed items. now i have to place an image of recycle bin on the webpage and to give the utility of delete operation by only dragging the object from list and droping it into recycle bin. How can i do this? Is there any body who have already done this? Any reply will be welcomed.
    And guys no reply for my validation and 'scope' questions.
    Thanx in advance.

    http://www.googleisyourfriend.com/search?q=javascript+drag+and+drop&meta=

  • Zen 8/16/32GB: drag and drop (UMS) with Wi

    I am still unsure regarding the drag and drop capability of the Zen 8/6/32GB. From various post here and there, I understand that external SD card is UMS, but internal memory remains MTP.
    On the other side, the anythingbutipod guys report that:
    - In Vista it is easy drag and drop just as an MSC (UMS) thumb dri've.
    - Drag and drop on XP works as well but can be "problematic"
    Where do we go then?
    Is there somewhere any "enable UMS" menu setting?
    Message Edited by Tatami on 03-4-2008 02:3 PM

    From my experience, the difference between MTP and UMS for the Zen is that the UMS gives you a Dri've Letter and the MTP don't. With the MTP mode, the Zen as an icon would still show up in the Windows Explorer which I could drag and drop my files from my computer to the player and vice versa. At least that is what i face in Windows XP and Vista.
    Of course if you are using a 3rd party software, the MTP mode does not give you a dri've letter and it would be impossible to see the files. But if you are only requiring Drag and Drop then MTP and UMS makes no difference in Windows Explorer.

  • Unable to drag and drop images with manual sort in CS2 bridge

    I've had CS2 for several years now but for some reason, just never really needed to do a manual sort. Now that I DO need to, it doesn't seem to be working. I have the view set for manual and no matter what kind of working space I use, the program does not allow me to drag and drop the thumbnails into different positions. All I get is that circle with a diagonal line through it, showing me that what I'm trying isn't going to work.
    Any ideas?
    Windows XP
    2G of ram
    Bridge version 1.0.4.6 (104504)
    CS2

    DUUUUUUUDE! IT'S WORKING NOW!!!!
    When you originally asked, "What happens if you click on an image and move it to another folder?", I didn't really understand what you were talking about because I almost never have my workspace set up in a way that the folders are showing. I always hide them. So I didn't really understand what you were saying. Just a few minutes ago, I realized that that is what you were asking so I opened up the folder area and tried dragging thumbs into different folders and saw that it does work.
    So then, because of you mentioning that blue line and me know that I did see the blue line on occasion. I went back over into the thumbnails to find out if I always got the blue line or if it was a hit or miss thing. I couldn't believe my eyes when all of the sudden I saw that I no longer was getting that circle with the line through it, and low and behold, the thumbnail dropped right into position like it is supposed to!!!!
    The thing is, I don't know what I've learned from this. I thought, "well, what is different?" The only thing that I can think of is that I now have the folders showing in my workspace so I wondered if that was the secret but I just now hid the folders again like I usually do and the drag and drop into position is STILL WORKING!!!
    All I can figure is that somehow, dragging and dropping a thumbnail into a folder like that for the first time, triggered something so that I can now drag and drop among the thumbnail positions? Not sure. All I know is that for some reason, IT'S WORKING NOW!
    Now, for the second important part, I wonder if I drag and drop everything into the order that I want and then select all of the files and drag them into a new folder, will they stay in that order? I need to go experiment with that.
    If you hadn't kept at it and in turn had me keep trying stuff, it would have never happened because I had pretty much given up.
    Thanks Curt!
    You da man!!!

  • Highlight destination of drag and drop object

    If drag an object in a drag and drop interaction to its
    destination, is it possible for the destination hotspot to
    highlight itself
    see screenshot:
    http://www.lshtm.ac.uk/dl/programme/sample/highlight.gif
    As you can see as I drag object 0.09 to its destination, the
    destination site highlights itself to yellow. I want to create a
    similar effect in authorware
    thanks in advance
    Jon

    Look at the Overlapping function - set something to trigger
    when that is
    true. That may be hard to do when the mouse is down dragging
    something...
    Erik
    webacity wrote:
    > If drag an object in a drag and drop interaction to its
    destination, is it
    > possible for the destination hotspot to highlight itself
    > see screenshot: <a target=_blank
    class=ftalternatingbarlinklarge
    > href="
    http://www.lshtm.ac.uk/dl/programme/sample/highlight.gif
    > As">
    http://www.lshtm.ac.uk/dl/programme/sample/highlight.gif
    > As</a> you can see as I drag object 0.09 to its
    destination, the destination
    > site highlights itself to yellow. I want to create a
    similar effect in
    > authorware
    > thanks in advance
    > Jon
    >
    Erik Lord
    http://www.capemedia.net
    Adobe Community Expert - Authorware
    http://www.adobe.com/communities/experts/
    http://www.awaretips.net -
    samples, tips, products, faqs, and links!
    *Search the A'ware newsgroup archives*
    http://groups.google.com/groups?q=macromedia.authorware
    *The Blankenship Caveat: Note that direct linking to http
    content
    through any Authorware icon will likely fail if a proxy
    server is present!*

Maybe you are looking for