Exemplo n.º 1
0
        public override DragDropEffects DoDragDrop(UIElement source, Point cursorPos)
        {
            this.ThemeItem.Load();
            ImageResourceThemeItem resourceThemeItem = (ImageResourceThemeItem)this.ThemeItem;

            byte[]      numArray    = ((ResourceThemeItem)resourceThemeItem).Save(false);
            IDataObject dataObject1 = Advent.Common.Interop.DataObject.CreateDataObject();
            IDataObject dataObject2 = dataObject1;

            VirtualFile[] virtualFileArray = new VirtualFile[1];
            virtualFileArray[0] = new VirtualFile()
            {
                Name          = this.ThemeItem.Name,
                LastWriteTime = DateTime.Now,
                Contents      = numArray
            };
            VirtualFile[] files = virtualFileArray;
            DataObjectExtensions.SetVirtualFiles(dataObject2, files);
            try
            {
                VmcStudioUtil.DragDropObject = (object)this;
                return(DataObjectExtensions.DoDragDrop(dataObject1, source, UIExtensions.Resize(resourceThemeItem.Image, 100), cursorPos, DragDropEffects.Copy));
            }
            finally
            {
                VmcStudioUtil.DragDropObject = (object)null;
            }
        }
Exemplo n.º 2
0
        private static bool ThemeItemsEqual(IThemeItem item1, IThemeItem item2)
        {
            ImageResourceThemeItem resourceThemeItem1 = item1 as ImageResourceThemeItem;
            ImageResourceThemeItem resourceThemeItem2 = item2 as ImageResourceThemeItem;

            if (resourceThemeItem1 == null || resourceThemeItem2 == null)
            {
                return(item1 == item2);
            }
            if (resourceThemeItem1.ResourceName == resourceThemeItem2.ResourceName && resourceThemeItem1.ResourceType == resourceThemeItem2.ResourceType)
            {
                return(resourceThemeItem1.DllName == resourceThemeItem2.DllName);
            }
            else
            {
                return(false);
            }
        }