/// <summary>
        /// Deletes a macro and its displayable item
        /// </summary>
        /// <param name="item">The item to be deleted</param>
        /// <param name="macro">The macro attached to the item, to be deleted</param>
        public async void DeleteMacro(DisplayableTreeViewItem item, FileDeclaration macro)
        {
            bool result = await macro.Delete();

            if (result)
            {
                if (item.Parent is DisplayableTreeViewItem)
                {
                    Remove((item.Parent as DisplayableTreeViewItem), item);
                }
                else
                {
                    Remove(null, item);
                }

                CloseItemMacro(item);
            }
        }