/// <summary>
        /// Reacts to a click for an action, triggers the action
        /// </summary>
        /// <param name="sender">Sender of the event</param>
        /// <param name="e">Event parameters</param>
        void Actions_Click(object sender, EventArgs e)
        {
            IBoxModule box;
            IBoxSelector selector;

            if (ControlHasFocus is IViewDisplayer)
            {
                box = ((IViewDisplayer)ControlHasFocus).SelectedBoxes[0];
                selector = ((FerdaDesktop)ControlHasFocus);
            }
            else //it is an archive
            {
                box = ((IArchiveDisplayer)ControlHasFocus).SelectedBox;
                selector = ((FerdaArchive)ControlHasFocus);
            }

            //run the action
            foreach (ActionInfo info in box.MadeInCreator.Actions)
            {
                if (info.label == sender.ToString())
                {
                    ActionExceptionCatcher catcher =
                        new ActionExceptionCatcher(projectManager, ResManager,
                        selector, propertiesDisplayer);
                    box.RunAction_async(catcher, info.name);
                    break;
                }
            }
        }
        /// <summary>
        /// Reacts to a click for an action, triggers the action
        /// </summary>
        /// <param name="sender">Sender of the event</param>
        /// <param name="e">Event parameters</param>
        void Actions_Click(object sender, EventArgs e)
        {
            ModulesManager.IBoxModule box = ParentTreeView.SelectedBox;

            //run the action
            foreach (Modules.ActionInfo info in box.MadeInCreator.Actions)
            {
                if (info.label == sender.ToString())
                {
                    ActionExceptionCatcher catcher =
                        new ActionExceptionCatcher(projectManager, ParentTreeView.ResManager,
                        parentTreeView, parentTreeView.PropertiesDisplayer);
                    box.RunAction_async(catcher, info.name);
                    break;
                }
            }

            //archiveDisplayer.Adapt(); i think there is no need for this in here
        }
        /// <summary>
        /// Reacts to a click for an action, triggers the action
        /// </summary>
        /// <param name="sender">Sender of the event</param>
        /// <param name="e">Event parameters</param>
        void Actions_Click(object sender, EventArgs e)
        {
            //this prevents executing anything when the event is not called from the
            //desktop (but from the main menu)
            if (Hover == null)
            {
                return;
            }

            BoxNode bn = Hover as BoxNode;
            IBoxModule box = bn.Box;

            //run the action
            foreach (ActionInfo info in box.MadeInCreator.Actions)
            {
                if (info.label == sender.ToString())
                {
                    ActionExceptionCatcher catcher =
                        new ActionExceptionCatcher(projectManager, ResManager, this, PropertiesDisplayer);
                    box.RunAction_async(catcher, info.name);
                    break;
                }
            }

            //archiveDisplayer.Adapt(); myslim ze to tady nemusi byt
        }