Overview
Examples
Screenshots
Comparisons
Applications
Download
Documentation
Tutorials
Bazaar
Status & Roadmap
FAQ
Authors & License
Forums
Funding Ultimate++
Search on this site
Search in forums












SourceForge.net Logo
Home » U++ Library support » TreeCtrl » SetFocus with EditString as Node
Re: SetFocus with EditString as Node [message #40918 is a reply to message #40901] Mon, 07 October 2013 20:20 Go to previous messageGo to previous message
mirek is currently offline  mirek
Messages: 13984
Registered: November 2005
Ultimate Member
iST1 wrote on Sat, 05 October 2013 09:35

This is simple edit node example (based on <a href=" http://www.ultimatepp.org/forum/index.php?t=msg&th=6380& amp; amp;start=0&" target="_blank"></a>) with SetFocus problem when first "Add" button click:
class EditableTree : public TreeCtrl {
public:
	EditableTree() : selId_(-1) {
		editNode.SetCtrl(edit);
		OpenDeep(0, true);
	}
	
	void AddNode() {
		CloseEdit();
		
		int selId_ = Add(0);

   		edit.SetData("Node" + AsString(selId_));
   		edit.Show();
    	        edit.AutoSize();
		edit.SetFocus();//at first not select because IsOpen is false => why?

		SetNode(selId_, editNode);
	}
	
	void CloseEdit() {
		if (selId_ > 0) {
			SetNode(selId_, Node(~edit));
			edit.Hide();
		}
	}
	
private:
	int selId_;
    EditString edit;
   	TreeCtrl::Node editNode;
};

GUI_APP_MAIN
{	
	TopWindow wnd;
	Button btn;
	wnd.Add(btn.SetLabel("Add").LeftPos(10).TopPos(10));
	
	EditableTree tree;
	wnd.Add(tree.VSizePos(40).HSizePos());

	btn <<= callback(&tree, &EditableTree::AddNode);
        wnd.Run();
}



Should be fixed, however you have to use SetFocus AFTER SetNode,
because only widget that is descendant of open window can have focus and until SetNode, edit is not assigned to any window. However, TreeCtrl still needed fixing to make it work...
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message icon14.gif
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Hide expand/collapse ico
Next Topic: Node id calculation after removal ?
Goto Forum:
  


Current Time: Tue Jun 04 12:39:48 CEST 2024

Total time taken to generate the page: 0.01507 seconds