import QtQuick 2.2

Rectangle {
	property variant itemToStick;
	property int itemMinimumWidth;
	property string direction;
	property variant brother;

	Component.onCompleted:
	{
		if (direction === "left")
			anchors.right = itemToStick.left;
		else if (direction === "right")
			anchors.left = itemToStick.right;
	}

	width: 5
	height: parent.height
	anchors.top: parent.top;
	MouseArea
	{
		property int startX: 0;
		anchors.fill: parent
		onPressed: startX = mouseX;
		onPositionChanged:
		{
			parent.x += mouseX;
			var diff = 0;
			if (direction == "left")
				diff = mouseX - startX;
			else if (direction == "right")
				diff = -(mouseX - startX);

			if (itemMinimumWidth > itemToStick.width - diff)
			{
				brother.width = brother.width + diff;
				itemToStick.width = itemMinimumWidth;
			}
			else
			{
				brother.width = brother.width + diff;
				itemToStick.width = itemToStick.width - diff;
			}
		}
		cursorShape: Qt.SizeHorCursor
	}
}