Multiple Item Drag and Drop
I'm working on an application where I need multiple item DnD between JTrees and JTables. I'm using Java 1.4.1
I have the basics of multiple item DnD working, by creating Transferable classes that contain a collection of items.
The problem I have is when I drag a multiple selection within a JTree (i.e. DragSource and DropTarget are the same) then my call to event.getCurrentDataFlavors() in my dragOver(DropTargetDragEvent event) method is not returning any data flavours unless I drag over to another JTree. If I now drag back over to the source JTree (so that DragSource and DropTarget are again the same) as if by magic I now get DataFlavours whilst dragging over the source container.
This is driving me nuts! :-)
Has anybody else seen this and do they have a solution?
I have the same problem here.
When I try to perform drag and drop in a JTree (DragSource and DropTarget are the same), calling event.getCurrentDataFlavors() in the dragOver(DropTargetDragEvent event) method in the DropTargetListener returns me nothing!!
However, the call of event.getCurrentDataFlavors() in the
drop(DropTargetDropEvent event) does return me the correct
information.
On the doc, the DropTargetDragEvent.getCurrentDataFlavors()
should mimic DropTargetDropEvent.getCurrentDataFlavors().
So, I suppose both functions should work in the same way
properly.
Is there anything wrong with my understanding or is that a bug
of the Java dnd?
Similar Messages
-
MULTIPLE-ROW drag and drop between 2 ALV grids
Hi,
Can anybody help me with acheiving MULTIPLE-ROW drag and drop functionality between 2 ALV grids.hi Prakash,
Actually I'm trying to develop multiple drag and drop between 2 ALV's. To understand the events properly, I started working on this sample program where it uses 1 ALV and splits it into 2 and uses single row drag and drop between them. Now I'm making it to work for multiple drag and drop, so that I can use it on my application. This is the code which I'm working on..
*& Report Z_ALV_GRID_CONTROLS_DRAG_DROP *
REPORT z_alv_grid_controls_drag_drop.
DATA : i_ztransactions TYPE TABLE OF ztransactions
WITH HEADER LINE.
DATA : i_ztransactions2 TYPE TABLE OF ztransactions
WITH HEADER LINE.
DATA : ok_code LIKE sy-ucomm .
DATA : mcontainer TYPE REF TO cl_gui_custom_container .
DATA : mcontleft TYPE REF TO cl_gui_container .
DATA : mcontright TYPE REF TO cl_gui_container .
DATA : msplitcont TYPE REF TO
cl_gui_easy_splitter_container .
DATA : malv_left TYPE REF TO cl_gui_alv_grid .
DATA : malv_right TYPE REF TO cl_gui_alv_grid .
DATA : mrow TYPE lvc_s_row .
DATA : gt_outtab_source TYPE ztransactions.
DATA : gt_outtab_target TYPE ztransactions.
DATA : g_repid LIKE sy-repid.
DATA: gs_layout TYPE lvc_s_layo ,
g_behaviour_alv TYPE REF TO cl_dragdrop .
DATA : mlines TYPE i .
CLASS lcl_dragdropobj DEFINITION
This is the Class of Drag Drop Object .
This Object is used as a temporary storage means
of the information extracted with drag
CLASS lcl_dragdropobj DEFINITION.
PUBLIC SECTION.
DATA: i_ztransactions TYPE ztransactions ,
index TYPE i ,
original_table(5) TYPE c ,
proceed_trans(1) TYPE c .
ENDCLASS. "lcl_dragdropobj DEFINITION
DATA : mdata TYPE REF TO lcl_dragdropobj .
CLASS DND_TOOLS DEFINITION
This class contains the methods responding to the
events ONDRAG , ONDROP , ONDROPCOMPLETE
of the ALV Grid Controls
CLASS dnd_tools DEFINITION .
PUBLIC SECTION .
METHODS:handle_user_command
FOR EVENT user_command OF
cl_gui_alv_grid
IMPORTING
e_ucomm.
METHODS : handle_drag_from_left
FOR EVENT ondrag OF
cl_gui_alv_grid
IMPORTING
e_row
e_dragdropobj .
METHODS : handle_dropcomplete_from_left
FOR EVENT ondropcomplete OF
cl_gui_alv_grid
IMPORTING
e_row
e_dragdropobj .
METHODS : handle_drag_from_right
FOR EVENT ondrag OF
cl_gui_alv_grid
IMPORTING
e_row
e_dragdropobj .
METHODS : handle_dropcomplete_from_right
FOR EVENT ondropcomplete OF
cl_gui_alv_grid
IMPORTING
e_row
e_dragdropobj .
METHODS : handle_drop_to_left
FOR EVENT ondrop OF
cl_gui_alv_grid
IMPORTING
e_dragdropobj .
METHODS : handle_drop_to_right
FOR EVENT ondrop OF
cl_gui_alv_grid
IMPORTING
e_dragdropobj .
ENDCLASS . "DND_TOOLS DEFINITION
CLASS DND_TOOLS IMPLEMENTATION
CLASS dnd_tools IMPLEMENTATION .
METHOD handle_drag_from_left .
METHOD handle_user_command.
DATA: lt_rows TYPE lvc_t_row.
DATA: lt_rows TYPE lvc_t_roid.
DATA: lt_row TYPE lvc_s_roid.
DATA: mdata TYPE REF TO lcl_dragdropobj .
DATA: dragdropobj TYPE REF TO lcl_dragdropobj .
get selected row
CALL METHOD malv_left->get_selected_rows
IMPORTING
et_row_no = lt_rows.
CALL METHOD cl_gui_cfw=>flush.
IF sy-subrc NE 0.
add your handling, for example
CALL FUNCTION 'POPUP_TO_INFORM'
EXPORTING
titel = g_repid
txt2 = sy-subrc
txt1 = 'Error in Flush'(500).
ENDIF.
CREATE OBJECT mdata.
LOOP AT lt_rows INTO lt_row.
mrow = lt_row .
READ TABLE i_ztransactions INDEX lt_row-row_id INTO
i_ztransactions.
MOVE i_ztransactions TO mdata->i_ztransactions .
MOVE lt_row-row_id TO mdata->index.
MOVE 'LEFT' TO mdata->original_table .
e_dragdropobj->object = mdata .
ENDLOOP.
ENDMETHOD. "handle_user_command
METHOD handle_dropcomplete_from_left .
NB : the following data object MDATA is local to
the method and contains the information from the
import parameter of the method E_DRAGDROPOBJ
DATA : mdata TYPE REF TO lcl_dragdropobj .
DATA: lt_rows TYPE lvc_t_roid.
DATA: lt_row TYPE lvc_s_roid.
CALL METHOD malv_left->get_selected_rows
IMPORTING
et_row_no = lt_rows.
CALL METHOD cl_gui_cfw=>flush.
IF sy-subrc NE 0.
add your handling, for example
CALL FUNCTION 'POPUP_TO_INFORM'
EXPORTING
titel = g_repid
txt2 = sy-subrc
txt1 = 'Error in Flush'(500).
ENDIF.
LOOP AT lt_rows INTO lt_row.
mdata ?= e_dragdropobj->object .
CHECK mdata->proceed_trans = 'X' .
mrow = mdata->index.
DELETE i_ztransactions INDEX mrow .
APPEND mdata->i_ztransactions TO i_ztransactions2 .
SORT i_ztransactions2 BY kunnr belnr .
DELETE i_ztransactions2 WHERE kunnr IS INITIAL .
DESCRIBE TABLE i_ztransactions LINES mlines .
IF mlines EQ 0 .
CLEAR i_ztransactions .
APPEND i_ztransactions TO i_ztransactions .
ENDIF .
ENDLOOP.
CALL METHOD malv_left->refresh_table_display.
CALL METHOD malv_right->refresh_table_display.
ENDMETHOD . "HANDLE_DROPCOMPLETE_FROM_LEFT
METHOD handle_drag_from_right.
mrow = e_row-index .
READ TABLE i_ztransactions2 INDEX mrow INTO
i_ztransactions2 .
CREATE OBJECT mdata .
MOVE i_ztransactions2 TO mdata->i_ztransactions .
MOVE mrow TO mdata->index .
MOVE 'RIGHT' TO mdata->original_table .
e_dragdropobj->object = mdata .
ENDMETHOD . "HANDLE_DRAG_FROM_RIGHT
METHOD handle_dropcomplete_from_right .
DATA : mdata TYPE REF TO lcl_dragdropobj .
mdata ?= e_dragdropobj->object .
CHECK mdata->proceed_trans = 'X' .
mrow = mdata->index .
DELETE i_ztransactions2 INDEX mrow .
APPEND mdata->i_ztransactions TO i_ztransactions .
SORT i_ztransactions BY kunnr belnr .
DELETE i_ztransactions WHERE kunnr IS INITIAL .
DESCRIBE TABLE i_ztransactions2 LINES mlines .
IF mlines EQ 0 .
CLEAR i_ztransactions2 .
APPEND i_ztransactions2 TO i_ztransactions2 .
ENDIF .
CALL METHOD malv_left->refresh_table_display.
CALL METHOD malv_right->refresh_table_display.
ENDMETHOD . "HANDLE_DROPCOMPLETE_FROM_RIGHT
METHOD handle_drop_to_left .
DATA : mdata TYPE REF TO lcl_dragdropobj .
mdata ?= e_dragdropobj->object .
IF mdata->original_table = 'RIGHT' .
mdata->proceed_trans = 'X' .
ELSE .
mdata->proceed_trans = ' ' .
ENDIF .
e_dragdropobj->object = mdata .
ENDMETHOD . "HANDLE_DROP_TO_LEFT
METHOD handle_drop_to_right .
DATA : mdata TYPE REF TO lcl_dragdropobj .
DATA: lt_rows TYPE lvc_t_roid.
DATA: lt_row TYPE lvc_s_roid.
CALL METHOD malv_left->get_selected_rows
IMPORTING
et_row_no = lt_rows.
CALL METHOD cl_gui_cfw=>flush.
IF sy-subrc NE 0.
add your handling, for example
CALL FUNCTION 'POPUP_TO_INFORM'
EXPORTING
titel = g_repid
txt2 = sy-subrc
txt1 = 'Error in Flush'(500).
ENDIF.
LOOP AT lt_rows INTO lt_row.
mdata ?= e_dragdropobj->object .
IF mdata->original_table = 'LEFT' .
mdata->proceed_trans = 'X' .
ELSE .
mdata->proceed_trans = ' ' .
ENDIF .
e_dragdropobj->object = mdata .
ENDLOOP.
ENDMETHOD . "HANDLE_DROP_TO_RIGHT
ENDCLASS . "DND_TOOLS IMPLEMENTATION
DATA : mlistener TYPE REF TO dnd_tools .
======================================================
START OF SELECTION
======================================================
START-OF-SELECTION .
PERFORM get_data .
CALL SCREEN 100 .
The screen 100 has the custom control MCONTAINER and
on the flow logic has the following modules :
PROCESS BEFORE OUTPUT.
MODULE STATUS_0100.
MODULE PREPARE_SCREEN .
PROCESS AFTER INPUT.
MODULE USER_COMMAND_0100.
(Off course not commented out in the real flow logic)
FORM GET_DATA *
FOR THIS EXAMPLE THE DATA SELECTION IS HARD CODED
FORM get_data .
CLEAR : i_ztransactions , i_ztransactions[] .
i_ztransactions-mandt = sy-mandt .
i_ztransactions-waers = 'EUR ' .
i_ztransactions-kunnr = '0000000001' .
i_ztransactions-belnr = '0000000001' .
i_ztransactions-bldat = '20030101' .
i_ztransactions-dmbtr = '1000' .
APPEND i_ztransactions .
i_ztransactions-belnr = '0000000002' .
i_ztransactions-bldat = '20030202' .
i_ztransactions-dmbtr = '1010' .
APPEND i_ztransactions .
i_ztransactions-belnr = '0000000003' .
i_ztransactions-bldat = '20030323' .
i_ztransactions-dmbtr = '1020' .
APPEND i_ztransactions .
i_ztransactions-belnr = '0000000004' .
i_ztransactions-bldat = '20030404' .
i_ztransactions-dmbtr = '1030' .
APPEND i_ztransactions .
i_ztransactions-belnr = '0000000005' .
i_ztransactions-bldat = '20030505' .
i_ztransactions-dmbtr = '1040' .
APPEND i_ztransactions .
i_ztransactions-belnr = '0000000006' .
i_ztransactions-bldat = '20030606' .
i_ztransactions-dmbtr = '1050' .
APPEND i_ztransactions .
i_ztransactions-belnr = '0000000007' .
i_ztransactions-bldat = '20030707' .
i_ztransactions-dmbtr = '1060' .
APPEND i_ztransactions .
i_ztransactions-belnr = '0000000008' .
i_ztransactions-bldat = '20030808' .
i_ztransactions-dmbtr = '1070' .
APPEND i_ztransactions .
i_ztransactions-belnr = '0000000009' .
i_ztransactions-bldat = '20030909' .
i_ztransactions-dmbtr = '1080' .
APPEND i_ztransactions .
i_ztransactions-belnr = '0000000010' .
i_ztransactions-bldat = '20031010' .
i_ztransactions-dmbtr = '1090' .
APPEND i_ztransactions .
CLEAR : i_ztransactions2 , i_ztransactions2[] .
APPEND i_ztransactions2 .
ENDFORM . "GET_DATA
*& Module STATUS_0100 OUTPUT
The PF STATUS STATUS100 called from the module below,
has on the Standard toolbar the buttons
BACK , EXIT and CANCEL .
These buttons are provided with function code = 'EXIT'
MODULE status_0100 OUTPUT.
SET TITLEBAR 'TITLEDRAGDROP' .
SET PF-STATUS 'STATUS100'.
ENDMODULE. " STATUS_0100 OUTPUT
Module USER_COMMAND_0100 INPUT
The following module checks the User Command and ends
the program
MODULE user_command_0100 INPUT.
IF ok_code = 'EXIT' .
CLEAR : mcontainer ,
mcontleft ,
mcontright ,
msplitcont ,
malv_left ,
malv_right .
LEAVE TO SCREEN 0 .
ENDIF .
ENDMODULE. " USER_COMMAND_0100 INPUT
*& Module PREPARE_SCREEN OUTPUT
MODULE prepare_screen OUTPUT.
IF mcontainer IS INITIAL .
CREATE OBJECT mcontainer
EXPORTING
container_name = 'MCONTAINER' .
CREATE OBJECT msplitcont
EXPORTING
parent = mcontainer
orientation = 1 .
mcontleft = msplitcont->top_left_container .
mcontright = msplitcont->bottom_right_container .
CREATE OBJECT malv_left
EXPORTING i_parent = mcontleft .
gs_layout-sel_mode = 'D'.
CREATE OBJECT malv_right
EXPORTING i_parent = mcontright .
gs_layout-sel_mode = 'D'.
PERFORM set_layout_capable_of_drag_dro
USING 'X' 'X' .
CALL METHOD malv_left->set_table_for_first_display
EXPORTING
i_structure_name = 'ZTRANSACTIONS'
is_layout = gs_layout
CHANGING
it_outtab = i_ztransactions[].
CALL METHOD malv_right->set_table_for_first_display
EXPORTING
i_structure_name = 'ZTRANSACTIONS'
is_layout = gs_layout
CHANGING
it_outtab = i_ztransactions2[].
CREATE OBJECT mlistener .
CALL METHOD malv_left->set_toolbar_interactive.
SET HANDLER mlistener->handle_drag_from_left
FOR malv_left .
SET HANDLER mlistener->handle_dropcomplete_from_left
FOR malv_left .
SET HANDLER mlistener->handle_drag_from_right
FOR malv_right.
SET HANDLER mlistener->handle_dropcomplete_from_right
FOR malv_right .
SET HANDLER mlistener->handle_drop_to_right
FOR malv_right .
SET HANDLER mlistener->handle_drop_to_left
FOR malv_left .
ENDIF .
ENDMODULE. " PREPARE_SCREEN OUTPUT
Form SET_LAYOUT_CAPABLE_OF_DRAG_DRO
Definition of a Drag & Drop behaviour for the ALV
grid
FORM set_layout_capable_of_drag_dro USING drag drop.
DATA : effect TYPE i ,
handle_alv TYPE i .
CREATE OBJECT g_behaviour_alv.
effect = cl_dragdrop=>move + cl_dragdrop=>copy .
CALL METHOD g_behaviour_alv->add
EXPORTING
flavor = 'Line'
dragsrc = drag
droptarget = drop
effect = effect.
CALL METHOD g_behaviour_alv->get_handle
IMPORTING
handle = handle_alv.
gs_layout-s_dragdrop-row_ddid = handle_alv.
ENDFORM. " SET_LAYOUT_CAPABLE_OF_DRAG_DRO -
Page Item Drag and Drop reset all items Displayed Field attribute
If I use the Drag and Drop feature it resets all items Displayed/Field attribute to yes. Is this just the way it is and it is to bad so sad for Nicholas or is there something I can do to be able to use drag and drop and still retain my setting for the Item's Displayed/Field attribute.
Any assitance is much appreciatedProbably the easiest way would be to have 2 arrays that hold
the data being sent to box A. Just add/or subtract from one that
you don't care if it changes, and leave the other one alone. When
you want to reset, just clear Array 2 and populate it again from
Array 1. For Box B, just reset the contents of the array to nothing
- myArrayB = new Array({item1:'',item2:''}) -
Drag and drop .webloc to desktop - placement question
Using an iMac with a secondary display...
General:
• What governs the location of an item dragged-and-dropped on to the desktop?
• Is this user-modifiable?
Specific:
While doing research, browsing the Web, I routinely save links by dragging the favicon located to the left of the URL of the currently displayed page to the desktop. This seems to work for all the modern browsers I've tried. I've done this for years with no problem.
Until recently, the resulting .webloc file icon lands on the spot where I finish dragging. Recently, the .webloc icon won't go there; instead it ends up in the apparent default location -- which at the moment is the middle-right of my main display. If there are open windows over that region --and there usually are on my very busy desktop-- I have to go to extra steps to get to the .weblocs. This new behavior occurs in the latest versions of Firefox, Safari, and Chrome.
This is about dropping .webloc files on the desktop. Dropping them on an open folder continues to work correctly. Dopping an ordinary item (file or folder) from an open folder to the desktop also works normally.
Suspicion:
I recently moved the external display from the physical right to the left of the main display and adjusted System Preferences-->Displays-->Arrangement accordingly.
Bottom line:
How can I restore the usual behavior, so the favicons become .webloc files exactly where I put them on the desktop?
Note: I know that F11 puts all open windows temporarily aside and I use that. But it ought to be possible to place those webloc files where I want them without any extra step.
TIAThis problem was fixed by installing 10.9.
-
Firefox crashes after dragging and dropping any component.
When the TorButton add-on is enabled, Firefox will crash when an attempt is made to drag and drop any component. This includes tabs, text, images, and any other item drag-and-drop-able under normal circumstances.
This is a known bug and info lives at https://bugzilla.mozilla.org/show_bug.cgi?id=715885 but I don't know if any fix has been found.
I am running version 3.6 of Firefox, which I recognize is rather out of date. This is because I have yet to update from OS X 10.4.
Thank you for any input you have.It looks like the patch for this crash hasn't been checked in, and unfortunately, since firefox 3.6.28 is the last planned update for 3.6, it doesn't look like it will ever be fixed on that branch :(
-
Hi,
I am trying to do a drag and drop where the droppable area will accept all of the drops as long as they are within the box. For some reason, it sometimes only accepts one, and other times accepts all, only if they are right on top of each other. Any help would be greatly appreciated!
This is the drag and drop portion of the code:
$(".drop").droppable({ accept: '.C'});
$(".C").draggable({revert: 'invalid'});
Files Here:https://www.dropbox.com/s/ynjd5vans42k56u/testtime.zip?dl=0Does this help?
drag-and-drop utility for Edge Animate(only x-axis) -
How do I drag and drop multiple files on a control?
LabVIEW supports dragging and dropping a single file on a path control, and have the path control populated appropriately. I want a user to be able to highlight multiple files (say, from the OS Find File window, or anywhere really) and drop them into a path array control in LabVIEW. I was hoping putting a path control in an array would do the trick, but it didn't. The mouse cursor changes to the "+" icon as it did for a single file, but when I release the button the system just beeps. Is this even doable?
Thanks, Bob MartinI guess I was hoping that the path control would realize it was in an array, and starting with the actual control where the drop occurred (if more than one item of the array is visible) start populating subsequent slots with the other file paths.
I'm not sure how much work would be involved, but maybe I could make a control in VB that would accept the drop event and output the path array I'm looking for. I've never made a control in VB for LabVIEW before, so I'm leary of how much time that would take. I'll add this to my list of "things to do that never seem to get enough priority to do." -
Drag and drop of multiple nodes between 2 trees
Hi,
I am trying to implement a drag and drop of multiple nodes between two different trees. A simple drag drop written on the lines of the demo code RSDEMO_DRAG_DROP_TREE_MULTI works perfectly fine. But my requirement is, when a child (leaf) node is dragged, if its parent is not present in the target tree, that too has to be dragged and dropped from left to right. When I try to manually add nodes to the target tree, it dumps because the node key table and drag drop object have fewer nodes than what I am trying to add. So it always dumps in the drag_drop_complete method.
I have also tried putting this code in the PBO of my screen, calling a subroutine to refresh my tree with all nodes required. But I realise that the PBO does not get called after a drag drop. Is there a way to achieve this? Any help would be greatly appreciated. Thank you.
Regards,
NithyaThere's a Multi-Select TreeView sample on the WindowsClient.com, you can download it. Then you can drag multi nodes as follows:
Code Snippet
private void Form2_Load(object sender, EventArgs e)
this.listBox1.AllowDrop = true;
this.listBox1.DragOver += new DragEventHandler(listBox1_DragOver);
this.listBox1.DragDrop += new DragEventHandler(listBox1_DragDrop);
this.multiSelectTreeView1.ItemDrag += new
ItemDragEventHandler(multiSelectTreeView1_ItemDrag);
void multiSelectTreeView1_ItemDrag(object sender, ItemDragEventArgs e)
this.multiSelectTreeView1.DoDragDrop(this.multiSelectTreeView1.SelectedNodes,
DragDropEffects.Move);
void listBox1_DragDrop(object sender, DragEventArgs e)
ArrayList selectNodes = e.Data.GetData(
e.Data.GetFormats()[0]) as ArrayList;
foreach (TreeNode node in selectNodes)
this.listBox1.Items.Add(node.Text);
void listBox1_DragOver(object sender, DragEventArgs e)
e.Effect = DragDropEffects.Move; -
Drag and Drop Layout with items attached to Page 0 Region Bug
Hi,
I have a region on P0 (P0_REGION) and multiple page items (not on page 0) are associated to the region. When I go to "Drag and Drop" the page items I see all the Page Items for the given page and all the Page Items that are linked to a P0 Region. For Example:
P0:
Region: P0_REGION
P100:
Items: P100_X, Region: P0_REGION
P200:
Items: P200_Y, Region: P0_REGION
Now on P200, click on "Drag and Drop" above P200_Y I'll see P100_X and P200_Y.
This is a bit of an issue if you have a lot of items that are linked to a region on Page 0 but actually belong to another page.
Is this a bug?
Thank you,
Martin Giffy D'Souza
[http://apex-smb.blogspot.com/]Look at the following link:
Drag and drop - like the builder? -
How to drag and drop item from list to another item in list and change their positions
I have a list field with multiple items. I want to select one item from list and drag and drop to another item in the list
after drop item on another item the position of items should be change. (Example:- if I select 1st item from list and drag and drop this item to 4th item in list after drop that item position of both item should be changed 1st item on 4th position and 4th item on 1st position)
I don't know how to do this.Please help me to find the solution.Hello Zoltan,
I do not believe that kind of option is built into the listboxes, but I was able to have similiar functionalities using property nodes. I have included an example program that I put together.
The big difference is that instead of dragging, you double click on the item you want to transfer. To highlight items as you go down the list, all you need to do is set the value to that list number.
Hope this helps you out!
Attachments:
Temp.vi 33 KB -
Drag and Drop Multiple Pictogram elements from the Palette
I have created custom Objects in the palette that can drag and drop individual pictogram elements using a class that extends AbstractAddFeature. What I would like to know if it is possible to drag and drop an item from the palette that contains multiple pictogram elements, such as task1, task2 and a connection between them? I cannot do this with my class from above since
@Override
public PictogramElement add(IAddContext context) {}
only returns one PictogramElement.Hi,
In my editor I am adding rectangle with associated label that are separate pictogram elements. However they are both linked to the same business object and more linked to each other.
Please look at example from my code:
@Override
public PictogramElement add(IAddContext context) {
final Task addedTask = (Task) context.getNewObject();
final ContainerShape target = context.getTargetContainer();
final IPeCreateService peCreateService = Graphiti.getPeCreateService();
final IGaService gaService = Graphiti.getGaService();
final ContainerShape containerShape = peCreateService.createContainerShape(target, true);
int width = 0;
int height = 0;
width = context.getWidth() <= 0 ? getWidth() : context.getWidth();
height = context.getHeight() <= 0 ? getHeight() : context.getHeight();
final Rectangle invisibleRectangle = gaService.createInvisibleRectangle(containerShape);
gaService.setLocationAndSize(invisibleRectangle, context.getX(), context.getY(), width, height);
// create and set visible rectangle inside invisible rectangle
RoundedRectangle roundedRectangle = gaService.createRoundedRectangle(invisibleRectangle, 20, 20);
roundedRectangle.setParentGraphicsAlgorithm(invisibleRectangle);
roundedRectangle.setStyle(addedTask.isOnlyLocal() ? onlyLocalStyle : getStyle());
if(!addedTask.isAtomic()) roundedRectangle.setLineStyle(LineStyle.DOT);
gaService.setLocationAndSize(roundedRectangle, 0, 0, width, height);
insertInside(peCreateService, gaService, width, height, containerShape, invisibleRectangle, addedTask);
ContainerShape labelShape = addLabel(target, addedTask.getId(), width, height, context.getX(), context.getY());
link(containerShape, new Object[] {addedTask, labelShape});
link(labelShape, new Object[] {addedTask, containerShape});
updatePictogramElement(labelShape);
layoutPictogramElement(labelShape);
addInternalPorts(addedTask, containerShape);
updatePictogramElement(containerShape);
return containerShape;
I think that linking or making somehow relation between pictogram elements should be enough. -
How can I drag and drop an item from one Tree control to another in LabVIEW 7.1?
You can use the mouse up and down event on the two tree controls but the problem is making the correct selection in the second tree control. I want to be able to switch over to the selection bar of the second tree control so that I can place my item in the correct position. I know all possible workarounds with double-clicks and so on... but I really want a windows drag and drop.
This is what I have for the moment. Please check the library below. I need to activate the selection bar of the second tree control somehow to get the position in the control. The VI below is written in LV 7.1
Attachments:
Drag&Drop.llb 65 KBHi Jones,
As far as I know this feature is currently not supported by the Tree control. A workaround, would be to use the vertical position of the mouse in the button up event to determine what line you�re dropping the item.
If you would like the Tree control to include the drag and drop feature, please submit this as a Product Suggestion under the feedback at www.ni.com/contact.
Good luck!
Best regards,
Philip C.
Applications Engineer
National Instruments
www.ni.com/ask
- Philip Courtois, Thinkbot Solutions -
Why am I having trouble importing vCards? I follow the Help Center instructions by dragging and dropping, but some don't sync into the cloud. And why can't I drag multiple vCards? I have over 4,000. Please tell me I don't have to do one at a time?
carolinechx wrote:
i know the description may be a little bit too confusing
Mostly because you are not using any capital letters or paragraph returns and your post is difficult to read. -
Hi - I keep receiving the following error message on a song I purchased from itunes and am now trying to drag and drop to my iPad: "you must download items from icloud before you can copy then to iPad" what does this mean - please help! Thank you
Hi Poonam26c,
If you do not have a local copy of a song which you have purchased (i.e. it is available via iTunes in the Cloud), you may need to redownload it before you can transfer it to your device. You may find the following article helpful:
Apple Support: Downloading past purchases from the iTunes Store, App Store, and iBooks Store
http://support.apple.com/kb/HT2519
Regards,
- Brenden -
I have an external hard drive that I have been using for years. All of a sudden my mac will not recognize the external as a "save as" device location. But the external does show up on my desktop and I can open it to drag and drop items. What happened and how do I get my mac to rerecognize the device?!?!?
Hi,
Check Finder>Preferences>Sidebar, is it checked there to show external drives?
Maybe you are looking for
-
ITunes 6.0 messing up ID3 tags and file names
Hey guys, i have just upgraded to iTunes 6.0. I have noticed that this new version is messing up my mp3 file names. When i start up iTunes, there would be files that have their Title, artist and other info either missing, reverted to the original mp3
-
HT4108 Video out issues. Ipad 3
After upgrading to ios 6.1.2 my ipad3 , both VGA and hdmi video connectors have stopped working. They work fine on my iPhone 4S. Anyone else had this problem?
-
Error while calling Subroutine from Script
HI Friends, I am getting a short dump whilecalling a suboutine from Script. Please suggest if am wrong with below code /: PERFORM GET_ADDRESS IN PROGRAM ZSUBROUTINES /: USING &MHND-KUNNR& /: CHANGING &ADRS-LINE0& /: CHANGING &ADRS-LINE1& /: ENDPERFOR
-
HDV and FCP Export to Quicktime Movie
Hi. Should I be able to "Export to Quicktime" a 90-minute FCP timeline and expect no hiccups? I keep trying and my Quicktime file has an occasional slight jump from one frame to another when I view it. This happens about once every 2-3 minutes. Is th
-
Hello, Is there any possibility to post scrap costs during production against the standard costs until the scrap occured without using a special material for making the scrap posting? For example: Standard cost production: 1000 No of operations: 4 St