// File: /workspace/github_c_makefile_star2_O0/enzo1982[P]smooth/classes/gui/widgets/basic/divider.cpp
// Function: smooth::GUI::Divider::Divider(int, int)
S::GUI::Divider::Divider(Int iPosition, Int iOrientation) : Widget(Point(), Size())
{
	type		= classID;

	flags		= iOrientation;
	orientation	= OR_FREE;
	position	= iPosition;

	dragging	= False;
	startPos	= 0;

	if (position == 0) position = 120;

	dragHotspot = new Hotspot(Point(), Size());
	dragHotspot->SetIndependent(True);

	dragHotspot->onMouseOver.Connect(&Divider::OnMouseOver, this);
	dragHotspot->onMouseOut.Connect(&Divider::OnMouseOut, this);

	dragHotspot->onMouseDragStart.Connect(&Divider::OnMouseDragStart, this);
	dragHotspot->onMouseDrag.Connect(&Divider::OnMouseDrag, this);
	dragHotspot->onMouseDragEnd.Connect(&Divider::OnMouseDragEnd, this);

	Add(dragHotspot);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xc0, %rsp
movq %rdi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
movl %edx, -0x10(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x98(%rbp)
leaq -0x18(%rbp), %rdi
movq %rdi, -0xa8(%rbp)
callq 0x5b530
leaq -0x20(%rbp), %rdi
movq %rdi, -0xa0(%rbp)
callq 0x59230
movq -0xa8(%rbp), %rsi
movq -0xa0(%rbp), %rdx
movq -0x98(%rbp), %rdi
callq 0x5c220
movq -0x98(%rbp), %rdi
movq 0x174478(%rip), %rax    # 0x208e80
addq $0x10, %rax
movq %rax, (%rdi)
addq $0x5c0, %rdi            # imm = 0x5C0
callq 0x5b530
jmp 0x94a1d
movq -0x98(%rbp), %rdi
addq $0x5d8, %rdi            # imm = 0x5D8
movq %rdi, -0xb0(%rbp)
callq 0x90210
jmp 0x94a39
movq -0x98(%rbp), %rdi
movq 0x174089(%rip), %rax    # 0x208ad0
movswl (%rax), %esi
addq $0x20, %rdi
callq 0x5a2e0
jmp 0x94a55
movq -0x98(%rbp), %rax
movl -0x10(%rbp), %ecx
movl %ecx, 0x30(%rax)
movw $0x80, 0xd0(%rax)
movl -0xc(%rbp), %ecx
movl %ecx, 0x5c8(%rax)
movb $0x0, 0x5b8(%rax)
movl $0x0, 0x5bc(%rax)
cmpl $0x0, 0x5c8(%rax)
jne 0x94ac3
movq -0x98(%rbp), %rax
movl $0x78, 0x5c8(%rax)
jmp 0x94ac3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x94c94
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x94c88
movl $0x5b8, %edi            # imm = 0x5B8
callq 0x59820
movq %rax, -0xb8(%rbp)
jmp 0x94ad6
leaq -0x34(%rbp), %rdi
callq 0x5b530
jmp 0x94ae1
leaq -0x3c(%rbp), %rdi
callq 0x59230
jmp 0x94aec
movq -0xb8(%rbp), %rdi
leaq -0x34(%rbp), %rsi
leaq -0x3c(%rbp), %rdx
callq 0x59c30
jmp 0x94b02
movq -0x98(%rbp), %rax
movq -0xb8(%rbp), %rcx
movq %rcx, 0x5d0(%rax)
movq 0x5d0(%rax), %rdi
movl $0x1, %esi
callq 0x5db80
jmp 0x94b2a
movq -0x98(%rbp), %rcx
movq 0x5d0(%rcx), %rdi
addq $0x2b8, %rdi            # imm = 0x2B8
movq 0x173e1a(%rip), %rax    # 0x208960
movq %rax, -0x50(%rbp)
movq $0x0, -0x48(%rbp)
movq -0x50(%rbp), %rsi
movq -0x48(%rbp), %rdx
callq 0x95a50
jmp 0x94b61
movq -0x98(%rbp), %rcx
movq 0x5d0(%rcx), %rdi
addq $0x2d8, %rdi            # imm = 0x2D8
movq 0x173a5b(%rip), %rax    # 0x2085d8
movq %rax, -0x60(%rbp)
movq $0x0, -0x58(%rbp)
movq -0x60(%rbp), %rsi
movq -0x58(%rbp), %rdx
callq 0x95a50
jmp 0x94b98
movq -0x98(%rbp), %rcx
movq 0x5d0(%rcx), %rdi
addq $0x3f8, %rdi            # imm = 0x3F8
movq 0x173c04(%rip), %rax    # 0x2087b8
movq %rax, -0x70(%rbp)
movq $0x0, -0x68(%rbp)
movq -0x70(%rbp), %rsi
movq -0x68(%rbp), %rdx
callq 0x95b90
jmp 0x94bcf
movq -0x98(%rbp), %rcx
movq 0x5d0(%rcx), %rdi
addq $0x418, %rdi            # imm = 0x418
movq 0x173af5(%rip), %rax    # 0x2086e0
movq %rax, -0x80(%rbp)
movq $0x0, -0x78(%rbp)
movq -0x80(%rbp), %rsi
movq -0x78(%rbp), %rdx
callq 0x95b90
jmp 0x94c06
movq -0x98(%rbp), %rcx
movq 0x5d0(%rcx), %rdi
addq $0x438, %rdi            # imm = 0x438
movq 0x173f2e(%rip), %rax    # 0x208b50
movq %rax, -0x90(%rbp)
movq $0x0, -0x88(%rbp)
movq -0x90(%rbp), %rsi
movq -0x88(%rbp), %rdx
callq 0x95b90
jmp 0x94c49
movq -0x98(%rbp), %rdi
movq 0x5d0(%rdi), %rsi
movq (%rdi), %rax
movq 0x30(%rax), %rax
callq *%rax
jmp 0x94c62
addq $0xc0, %rsp
popq %rbp
retq
movq -0xb8(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
movl $0x5b8, %esi            # imm = 0x5B8
callq 0x595b0
movq -0xb0(%rbp), %rdi
callq 0x90610
movq -0x98(%rbp), %rdi
callq 0x5bd90
movq -0x28(%rbp), %rdi
callq 0x5b6b0
nopl (%rax)