9 changed files
BExplorer/BetterExplorer | ||
MainWindow.xaml.cs | ||
Shell | ||
Interop | ||
IListView.cs + | ||
User32.cs | ||
Defaults.cs | ||
FOperationProgressSink.cs | ||
Shell.csproj | ||
ShellViewEx.cs | ||
TooltipDataTemplateSelector.cs | ||
imdiskinst.exe | ||
MainWindow.xaml.cs
/BExplorer/BetterExplorer/MainWindow.xaml.cs/BExplorer/BetterExplorer/MainWindow.xaml.cs
Add comment 1 Plus using System;
Add comment 2 Plus using System.Runtime.InteropServices;
Add comment 3 Plus
Add comment 4 Plus namespace BExplorer.Shell.Interop {
Add comment 5 Plus [ComImport]
Add comment 6 Plus [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
Add comment 7 Plus [Guid("E5B16AF2-3990-4681-A609-1F060CD14269")]
Add comment 8 Plus public interface IListView {
Add comment 9 Plus void GetWindow(out IntPtr phwnd);
Add comment 10 Plus void ContextSensitiveHelp([In, MarshalAs(UnmanagedType.Bool)] bool fEnterMode);
Add comment 11 Plus void GetImageList(int index, out IntPtr iList);
Add comment 12 Plus void SetImageList(int index, IntPtr iList, out IntPtr iListDest);
Add comment 13 Plus void GetBackgroundColor(out IntPtr colorref);
Add comment 14 Plus void SetBackgroundColor(IntPtr colorref);
Add comment 15 Plus void GetTextColor(out IntPtr colorref);
Add comment 16 Plus void SetTextColor(IntPtr colorref);
Add comment 17 Plus void GetTextBackgroundColor(out IntPtr colorref);
Add comment 18 Plus void SetTextBackgroundColor(IntPtr colorref);
Add comment 19 Plus void GetHotLightColor(out IntPtr colorref);
Add comment 20 Plus void SetHotLightColor(IntPtr colorref);
Add comment 21 Plus void GetItemCount(out int count);
Add comment 22 Plus void SetItemCount(int count, uint p);
Add comment 23 Plus HResult GetItem(out IntPtr item);
Add comment 24 Plus HResult SetItem(IntPtr item);
Add comment 25 Plus HResult GetItemState(int iItem, LVIF mask, LVIS stateMask, out LVIS state);
Add comment 26 Plus HResult SetItemState(int iItem, LVIF mask, LVIS stateMask, LVIS state);
Add comment 27 Plus HResult GetItemText(int a, int b, out IntPtr c, int d);
Add comment 28 Plus HResult SetItemText(int a, int b, IntPtr c);
Add comment 29 Plus void GetBackgroundImage(out IntPtr bitmap);
Add comment 30 Plus void SetBackgroundImage(IntPtr bitmap);
Add comment 31 Plus void GetFocusedColumn(out int col);
Add comment 32 Plus void SetSelectionFlags(ulong a, ulong b);
Add comment 33 Plus HResult GetSelectedColumn(out int col);
Add comment 34 Plus HResult SetSelectedColumn(int col);
Add comment 35 Plus HResult GetView(out uint view);
Add comment 36 Plus HResult SetView(uint view);
Add comment 37 Plus HResult InsertItem(IntPtr item, out int index);
Add comment 38 Plus HResult DeleteItem(int index);
Add comment 39 Plus HResult DeleteAllItems();
Add comment 40 Plus HResult UpdateItem(int index);
Add comment 41 Plus HResult GetItemRect(LVITEMINDEX index, int a, out User32.RECT rect);
Add comment 42 Plus HResult GetSubItemRect(LVITEMINDEX index, int a, int b, out User32.RECT rect);
Add comment 43 Plus HResult HitTestSubItem(LVHITTESTINFO info);
Add comment 44 Plus HResult GetIncrSearchString(IntPtr a, int b, out int c);
Add comment 45 Plus HResult GetItemSpacing(bool a, out int b, out int c);
Add comment 46 Plus HResult SetIconSpacing(int a, int b, out int c, out int d);
Add comment 47 Plus HResult GetNextItem(LVITEMINDEX index, ulong flags, out LVITEMINDEX result);
Add comment 48 Plus HResult FindItem(LVITEMINDEX index, IntPtr info, out LVITEMINDEX item);
Add comment 49 Plus HResult GetSelectionMark(out LVITEMINDEX mark);
Add comment 50 Plus HResult SetSelectionMark(LVITEMINDEX index, out LVITEMINDEX result);
Add comment 51 Plus HResult GetItemPosition(LVITEMINDEX index, out POINT position);
Add comment 52 Plus HResult SetItemPosition(int a, POINT p);
Add comment 53 Plus HResult ScrollView(int a, int b);
Add comment 54 Plus HResult EnsureItemVisible(LVITEMINDEX item, Boolean b);
Add comment 55 Plus HResult EnsureSubItemVisible(LVITEMINDEX item, int a);
Add comment 56 Plus HResult EditSubItem(LVITEMINDEX item, int a);
Add comment 57 Plus HResult RedrawItems(int a, int b);
Add comment 58 Plus HResult ArrangeItems(int a);
Add comment 59 Plus HResult RecomputeItems(int a);
Add comment 60 Plus HResult GetEditControl(out IntPtr handle);
Add comment 61 Plus HResult EditLabel(LVITEMINDEX index, IntPtr a, out IntPtr handle);
Add comment 62 Plus HResult EditGroupLabel(int a);
Add comment 63 Plus HResult CancelEditLabel();
Add comment 64 Plus HResult GetEditItem(out LVITEMINDEX item, out int a);
Add comment 65 Plus HResult HitTest(ref LVHITTESTINFO result);
Add comment 66 Plus HResult GetStringWidth(IntPtr a, out int b);
Add comment 67 Plus HResult GetColumn(int a, out IntPtr col);
Add comment 68 Plus HResult SetColumn(int a, ref IntPtr col);
Add comment 69 Plus HResult GetColumnOrderArray(int a, out IntPtr b);
Add comment 70 Plus HResult SetColumnOrderArray(int a, ref IntPtr b);
Add comment 71 Plus HResult GetHeaderControl(out IntPtr header);
Add comment 72 Plus HResult InsertColumn(int a, ref IntPtr b, out int c);
Add comment 73 Plus HResult DeleteColumn(int a);
Add comment 74 Plus HResult CreateDragImage(int a, POINT b, out IntPtr c);
Add comment 75 Plus HResult GetViewRect(out User32.RECT rect);
Add comment 76 Plus HResult GetClientRect(Boolean a, out User32.RECT b);
Add comment 77 Plus HResult GetColumnWidth(int a, out int b);
Add comment 78 Plus HResult SetColumnWidth(int a, int b);
Add comment 79 Plus HResult GetCallbackMask(out long a);
Add comment 80 Plus HResult SetCallbackMask(out long b);
Add comment 81 Plus HResult GetTopIndex(out int a);
Add comment 82 Plus HResult GetCountPerPage(out int a);
Add comment 83 Plus HResult GetOrigin(out POINT p);
Add comment 84 Plus HResult GetSelectedCount(out int a);
Add comment 85 Plus HResult SortItems(bool a, IntPtr b, IntPtr c);
Add comment 86 Plus HResult GetExtendedStyle(out IntPtr s);
Add comment 87 Plus HResult SetExtendedStyle(long a, long b, out long c);
Add comment 88 Plus HResult GetHoverTime(out uint a);
Add comment 89 Plus HResult SetHoverTime(uint a, out uint b);
Add comment 90 Plus HResult GetToolTip(out IntPtr a);
Add comment 91 Plus HResult SetToolTip(IntPtr a, out IntPtr b);
Add comment 92 Plus HResult GetHotItem(out LVITEMINDEX a);
Add comment 93 Plus HResult SetHotItem(LVITEMINDEX a, out LVITEMINDEX b);
Add comment 94 Plus HResult GetHotCursor(out IntPtr a);
Add comment 95 Plus HResult SetHotCursor(IntPtr a, out IntPtr b);
Add comment 96 Plus HResult ApproximateViewRect(int a, out int b, out int c);
Add comment 97 Plus HResult SetRangeObject(int a, out IntPtr b);
Add comment 98 Plus HResult GetWorkAreas(int a, out User32.RECT b);
Add comment 99 Plus HResult SetWorkAreas(int a, ref User32.RECT b);
Add comment 100 Plus HResult GetWorkAreaCount(out IntPtr a);
Add comment 101 Plus HResult ResetEmptyText();
Add comment 102 Plus HResult EnableGroupView(int a);
Add comment 103 Plus HResult IsGroupViewEnabled(out Boolean result);
Add comment 104 Plus HResult SortGroups(IntPtr a, IntPtr b);
Add comment 105 Plus HResult GetGroupInfo(int a, int b, out IntPtr c);
Add comment 106 Plus HResult SetGroupInfo(int a, int b, IntPtr c);
Add comment 107 Plus HResult GetGroupRect(bool a, int b, int c, out User32.RECT d);
Add comment 108 Plus HResult GetGroupState(int a, long b, out long c);
Add comment 109 Plus HResult HasGroup(int a, out bool b);
Add comment 110 Plus HResult InsertGroup(int index, LVGROUP2 collumn,out int position);
Add comment 111 Plus HResult RemoveGroup(int index);
Add comment 112 Plus HResult InsertGroupSorted(IntPtr a, out int b);
Add comment 113 Plus HResult GetGroupMetrics(out IntPtr a);
Add comment 114 Plus HResult SetGroupMetrics(IntPtr a);
Add comment 115 Plus HResult RemoveAllGroups();
Add comment 116 Plus HResult GetFocusedGroup(out int a);
Add comment 117 Plus HResult GetGroupCount(out int a);
Add comment 118 Plus HResult SetOwnerDataCallback(IntPtr callback);
Add comment 119 Plus HResult GetTileViewInfo(out LVTILEVIEWINFO a);
Add comment 120 Plus HResult SetTileViewInfo(ref LVTILEVIEWINFO a);
Add comment 121 Plus HResult GetTileInfo(out IntPtr a);
Add comment 122 Plus HResult SetTileInfo(IntPtr a);
Add comment 123 Plus HResult GetInsertMark(out IntPtr a);
Add comment 124 Plus HResult SetInsertMark(IntPtr a);
Add comment 125 Plus HResult GetInsertMarkRect(out User32.RECT a);
Add comment 126 Plus HResult GetInsertMarkColor(out IntPtr a);
Add comment 127 Plus HResult SetInsertMarkColor(IntPtr a, out IntPtr b);
Add comment 128 Plus HResult HitTestInsertMark(POINT a, out IntPtr b);
Add comment 129 Plus HResult SetInfoTip(IntPtr a);
Add comment 130 Plus HResult GetOutlineColor(out IntPtr a);
Add comment 131 Plus HResult SetOutlineColor(IntPtr a, out IntPtr b);
Add comment 132 Plus HResult GetFrozenItem(out int a);
Add comment 133 Plus HResult SetFrozenItem(int a, int b);
Add comment 134 Plus HResult GetFrozenSlot(out User32.RECT a);
Add comment 135 Plus HResult SetFrozenSlot(int a, ref POINT p);
Add comment 136 Plus HResult GetViewMargin(out User32.RECT a);
Add comment 137 Plus HResult SetViewMargin(ref User32.RECT a);
Add comment 138 Plus HResult SetKeyboardSelected(LVITEMINDEX index);
Add comment 139 Plus HResult MapIndexToId(int a, out int b);
Add comment 140 Plus HResult MapIdToIndex(int a, out int b);
Add comment 141 Plus HResult IsItemVisible(LVITEMINDEX a, out bool b);
Add comment 142 Plus HResult GetGroupSubsetCount(out int a);
Add comment 143 Plus HResult SetGroupSubsetCount(int a);
Add comment 144 Plus HResult GetVisibleSlotCount(out int a);
Add comment 145 Plus HResult GetColumnMargin(ref User32.RECT a);
Add comment 146 Plus HResult SetSubItemCallback(IntPtr a);
Add comment 147 Plus HResult GetVisibleItemRange(out LVITEMINDEX a, out LVITEMINDEX b);
Add comment 148 Plus HResult SetTypeAheadFlags(uint a, uint b);
Add comment 149 Plus }
Add comment 150 Plus }
Add comment 151 Plus
TooltipDataTemplateSelector.cs
/Shell/TooltipDataTemplateSelector.cs/Shell/TooltipDataTemplateSelector.cs