private void DropCondition(string str, Point mouse)
        {
            SmartEvent el = events.EventAt(mouse.X, mouse.Y);

            switch (dropResult)
            {
            case DropResult.INSERT:
                el.InsertCondition(SmartFactory.GetInstance().ConditionFactory(str), el.GetInsertConditionIndexFromPos(mouse.X, mouse.Y));
                break;

            case DropResult.REPLACE:
                DrawableElement condition = el.GetElementFromPos(mouse.X, mouse.Y);
                el.ReplaceCondition(SmartFactory.GetInstance().ConditionFactory(str), (SmartCondition)condition);
                break;
            }
        }