public int GetListChanges(ref uint pcChanges, VSTREELISTITEMCHANGE[] prgListChanges) { if (prgListChanges == null) { pcChanges = (uint)_items.Length; return VSConstants.S_OK; } for (int i = 0; i < pcChanges; i++) { prgListChanges[i].grfChange = (uint)_VSTREEITEMCHANGESMASK.TCT_ITEMNAMECHANGED; prgListChanges[i].index = (uint)i; } return VSConstants.S_OK; }
private static void PrintList(IVsLiteTreeList list, int indent = 0) { uint count; list.GetItemCount(out count); for (int i = 0; i < count; i++) { string text; list.GetText((uint)i, VSTREETEXTOPTIONS.TTO_DEFAULT, out text); Console.Write("{1}new ExpectedPreviewItem(\"{0}\"", text, new string(' ', indent * 4)); int expandable; list.GetExpandable((uint)i, out expandable); if (expandable != 0) { Console.WriteLine(", "); int canRecurse; IVsLiteTreeList subList; list.GetExpandedList((uint)i, out canRecurse, out subList); PrintList(subList, indent + 1); } VSTREEDISPLAYDATA[] data = new VSTREEDISPLAYDATA[1]; list.GetDisplayData((uint)i, data); // TODO: Validate display data uint changeCnt = 0; list.GetListChanges(ref changeCnt, null); VSTREELISTITEMCHANGE[] changes = new VSTREELISTITEMCHANGE[changeCnt]; list.GetListChanges(ref changeCnt, changes); // TODO: Valiate changes if (i != count - 1) { Console.WriteLine("),"); } else { Console.WriteLine(")"); } } }
int IVsObjectList2.GetListChanges(ref uint pcChanges, VSTREELISTITEMCHANGE[] prgListChanges) { throw new NotImplementedException(); }
public int GetListChanges(ref uint pcChanges, VSTREELISTITEMCHANGE[] prgListChanges) { return VSConstants.E_FAIL; }
/// <summary> /// Get list changes. /// </summary> /// <param name="pcChanges"></param> /// <param name="prgListChanges"></param> /// <returns></returns> public int GetListChanges(ref uint pcChanges, VSTREELISTITEMCHANGE[] prgListChanges) { // Currently we do not have list changes, do not need to implement this. return VSConstants.E_NOTIMPL; }