How to move items into folder?

Find and share HowTos to various installations / configurations!
4 posts • Page 1 of 1
AGorbatykh
Posts:59
Joined: Thu Dec 17, 2015 1:01 pm

How to move items into folder?

Post by AGorbatykh »

I'm using Tree-widget and can't find simple way to move folder (with subitems) into another folder. Is there an easy way to solve it?
I used .moveItem()-function but it's work a little wrong for me, because it moves after folder (not into).

Code: Select all

?// [TREE] [1] - [Initialize]
main()
{
  this.addColumn("");
  this.appendItem("", "folder1", "folder1");
  this.appendItem("folder1", "item1", "item1");
  this.appendItem("folder1", "item2", "item2");
  this.appendItem("folder1", "item3", "item3");
  this.appendItem("", "folder2", "folder2");
  this.appendItem("folder2", "item4", "item4");
  this.appendItem("folder2", "item5", "item5");
  this.appendItem("folder2", "item6", "item6");
  this.appendItem("", "folder3", "folder3");
  this.appendItem("folder3", "item7", "item7");
  this.appendItem("folder3", "item8", "item8");
  this.appendItem("folder3", "item9", "item9");
}
????????????????????????????????????????????????????????????????????????????????????????????????????
?// [BUTTON] [2] - [Clicked]
main()
{
  TREE.moveItem("folder2", "folder1");
}
I need to do as like in a picture: Image
Attachments
folders.png

mkoller
Posts:741
Joined: Fri Sep 17, 2010 9:03 am

Re: How to move items into folder?

Post by mkoller »

Hmmm ... it seems there is no easy way right now except when you know that the target folder node has already a child,
since then you can pass this child inside the target folder as the "after" item, e.g.
TREE.moveItem("folder2", "item1");
(as a workaround you can temporarily create a child node in the target folder if it would be empty otherwise and remove
this dummy child node after the move)

kilianvp
Posts:443
Joined: Fri Jan 16, 2015 10:29 am

Re: How to move items into folder?

Post by kilianvp »

you should take a look at pt_moveItemAt(unsigned newId, unsigned oldId, dyn_anytype &var, bool increase=false) from

pt.ctl


Code: Select all

// ============================================================================
// Function:    void pt_moveItemAt(unsigned newId, unsigned oldId, dyn_anytype &var, bool increase=false)
//

AGorbatykh
Posts:59
Joined: Thu Dec 17, 2015 1:01 pm

Re: How to move items into folder?

Post by AGorbatykh »

Yeah, thank you, guys! I've done it as you recommended:

Code: Select all

?// [BUTTON] [2] - [Clicked]
main()
{
  TREE.insertItem("folder1", ".", ".");
  TREE.moveItem("folder2", ".");
  TREE.removeItem(".");
}
I've create temporary item "." insert folder after it and delete temporary item.

4 posts • Page 1 of 1