// File: /workspace/github_c_makefile_star2_O0/enzo1982[P]smooth/classes/gui/widgets/multi/tree/tree.cpp
// Function: smooth::GUI::Tree::Tree(smooth::String const&)
S::GUI::Tree::Tree(const String &iText) : ListEntry(iText)
{
	type	= classID;

	list.SetFlags(LF_ALLOWRESELECT);

	list.onSelectEntry.Connect(&onSelectEntry);

	Add(&list);

	headHotspot	= new Hotspot(Point(), Size(GetWidth(), 16));

	headHotspot->onMouseOver.Connect(&Tree::OnMouseOver, this);
	headHotspot->onMouseOut.Connect(&Tree::OnMouseOut, this);

	headHotspot->onLeftButtonDown.Connect(&onSelect);

	Add(headHotspot);

	hotspot->onLeftButtonDown.Disconnect(&ListEntry::OnSelectEntry, this);

	internalOnSelectEntry.Connect(&Tree::OnSelectEntry, this);

	onChangeSize.Connect(&Tree::OnChangeSize, this);
	onToggleMark.Connect(&Tree::OnToggleMark, this);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xd0, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x8(%rbp), %rdi
movq %rdi, -0xa0(%rbp)
movq -0x10(%rbp), %rsi
callq 0x59350
movq -0xa0(%rbp), %rdi
movq 0x142e7b(%rip), %rax    # 0x2088f0
addq $0x10, %rax
movq %rax, (%rdi)
addq $0x630, %rdi            # imm = 0x630
movq %rdi, -0x98(%rbp)
callq 0x5ca00
jmp 0xc5a91
movq -0xa0(%rbp), %rdi
addq $0xd00, %rdi            # imm = 0xD00
movq %rdi, -0xa8(%rbp)
callq 0x97290
jmp 0xc5aad
movq -0xa0(%rbp), %rdi
addq $0xd20, %rdi            # imm = 0xD20
movq %rdi, -0xb0(%rbp)
callq 0x8aae0
jmp 0xc5ac9
movq -0xa0(%rbp), %rdi
addq $0xd40, %rdi            # imm = 0xD40
movq %rdi, -0xb8(%rbp)
callq 0x8aae0
jmp 0xc5ae5
movq -0xa0(%rbp), %rdi
movq 0x1430cd(%rip), %rax    # 0x208bc0
movswl (%rax), %esi
addq $0x20, %rdi
callq 0x5a2e0
jmp 0xc5b01
movq -0xa0(%rbp), %rdi
addq $0x630, %rdi            # imm = 0x630
movl $0x2, %esi
callq 0x59730
jmp 0xc5b1b
movq -0xa0(%rbp), %rsi
movq %rsi, %rdi
addq $0xcb8, %rdi            # imm = 0xCB8
addq $0xd00, %rsi            # imm = 0xD00
callq 0xaf6e0
jmp 0xc5b3a
movq -0xa0(%rbp), %rdi
movq %rdi, %rsi
addq $0x630, %rsi            # imm = 0x630
movq (%rdi), %rax
movq 0x30(%rax), %rax
callq *%rax
jmp 0xc5b56
movl $0x5b8, %edi            # imm = 0x5B8
callq 0x59820
movq %rax, -0xc0(%rbp)
jmp 0xc5b69
leaq -0x24(%rbp), %rdi
callq 0x5b530
jmp 0xc5b74
movq -0xa0(%rbp), %rdi
callq 0x5a210
movl %eax, -0xc4(%rbp)
jmp 0xc5b88
movl -0xc4(%rbp), %esi
leaq -0x2c(%rbp), %rdi
movl $0x10, %edx
callq 0x59260
jmp 0xc5b9e
movq -0xc0(%rbp), %rdi
leaq -0x24(%rbp), %rsi
leaq -0x2c(%rbp), %rdx
callq 0x59c30
jmp 0xc5bb4
movq -0xa0(%rbp), %rcx
movq -0xc0(%rbp), %rax
movq %rax, 0xcf8(%rcx)
movq 0xcf8(%rcx), %rdi
addq $0x2b8, %rdi            # imm = 0x2B8
movq 0x1432da(%rip), %rax    # 0x208eb8
movq %rax, -0x40(%rbp)
movq $0x0, -0x38(%rbp)
movq -0x40(%rbp), %rsi
movq -0x38(%rbp), %rdx
callq 0xc8310
jmp 0xc5bf9
movq -0xa0(%rbp), %rcx
movq 0xcf8(%rcx), %rdi
addq $0x2d8, %rdi            # imm = 0x2D8
movq 0x1432e3(%rip), %rax    # 0x208ef8
movq %rax, -0x50(%rbp)
movq $0x0, -0x48(%rbp)
movq -0x50(%rbp), %rsi
movq -0x48(%rbp), %rdx
callq 0xc8310
jmp 0xc5c30
movq -0xa0(%rbp), %rsi
movq 0xcf8(%rsi), %rdi
addq $0x2f8, %rdi            # imm = 0x2F8
addq $0x5d0, %rsi            # imm = 0x5D0
callq 0x8e210
jmp 0xc5c53
movq -0xa0(%rbp), %rdi
movq 0xcf8(%rdi), %rsi
movq (%rdi), %rax
movq 0x30(%rax), %rax
callq *%rax
jmp 0xc5c6c
movq -0xa0(%rbp), %rcx
movq 0x5c0(%rcx), %rdi
addq $0x2f8, %rdi            # imm = 0x2F8
movq 0x142de8(%rip), %rax    # 0x208a70
movq %rax, -0x60(%rbp)
movq $0x0, -0x58(%rbp)
movq -0x60(%rbp), %rsi
movq -0x58(%rbp), %rdx
callq 0xc8450
jmp 0xc5ca3
movq -0xa0(%rbp), %rcx
movq 0x1430af(%rip), %rax    # 0x208d60
movq %rax, -0x70(%rbp)
movq $0x0, -0x68(%rbp)
movq -0x70(%rbp), %rsi
movq -0x68(%rbp), %rdx
movq 0x142fcc(%rip), %rdi    # 0x208c98
callq 0xc85d0
jmp 0xc5cd3
movq -0xa0(%rbp), %rcx
movq %rcx, %rdi
addq $0x298, %rdi            # imm = 0x298
movq 0x142635(%rip), %rax    # 0x208320
movq %rax, -0x80(%rbp)
movq $0x0, -0x78(%rbp)
movq -0x80(%rbp), %rsi
movq -0x78(%rbp), %rdx
callq 0xc8710
jmp 0xc5d06
movq -0xa0(%rbp), %rcx
movq %rcx, %rdi
addq $0x610, %rdi            # imm = 0x610
movq 0x14276a(%rip), %rax    # 0x208488
movq %rax, -0x90(%rbp)
movq $0x0, -0x88(%rbp)
movq -0x90(%rbp), %rsi
movq -0x88(%rbp), %rdx
callq 0xc8850
jmp 0xc5d45
addq $0xd0, %rsp
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
jmp 0xc5de4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
jmp 0xc5dd8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
jmp 0xc5dcc
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
jmp 0xc5dc0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
jmp 0xc5db4
movq -0xc0(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
movl $0x5b8, %esi            # imm = 0x5B8
callq 0x595b0
movq -0xb8(%rbp), %rdi
callq 0x8ad70
movq -0xb0(%rbp), %rdi
callq 0x8ad70
movq -0xa8(%rbp), %rdi
callq 0x97680
movq -0x98(%rbp), %rdi
callq 0x5bb70
movq -0xa0(%rbp), %rdi
callq 0x5dba0
movq -0x18(%rbp), %rdi
callq 0x5b6b0
nopl (%rax)