private void UpdateListViewColumns(ResourceListView2 listView, ColumnDescriptor[] columns, ResourceListDataProvider dataProvider, bool setGroupProviders) { foreach (JetListViewColumn col in listView.Columns) { ConversationStructureColumn convStructureColumn = col as ConversationStructureColumn; if (convStructureColumn != null) { convStructureColumn.DataProvider = dataProvider as ConversationDataProvider; } ResourcePropsColumn propsCol = col as ResourcePropsColumn; if (propsCol != null) { foreach (ColumnDescriptor colDesc in columns) { int[] propIds = PropNamesToIDs(colDesc.PropNames, true); if (propsCol.PropIdsEqual(propIds)) { UpdateGroupProvider(setGroupProviders, colDesc, propsCol); break; } } } ResourceListView2Column rlvCol = col as ResourceListView2Column; if (rlvCol != null) { rlvCol.OwnerList = dataProvider.ResourceList; } } }
private JetListViewColumn FindColumn(int[] propIds) { foreach (JetListViewColumn col in _resourceListView.Columns) { ResourcePropsColumn propsCol = col as ResourcePropsColumn; if (propsCol != null) { for (int i = 0; i < propIds.Length; i++) { if (Array.IndexOf(propsCol.PropIds, propIds [i]) >= 0) { return(propsCol); } } } } return(null); }
private static void UpdateGroupProvider(bool setGroupProviders, ColumnDescriptor desc, ResourcePropsColumn colHdr) { if (setGroupProviders) { if (desc.GroupProvider != null) { colHdr.GroupProvider = new GroupProviderAdapter(desc.GroupProvider); } else { colHdr.GroupProvider = GetGroupProvider(colHdr.PropIds); } } else { colHdr.GroupProvider = null; } }
/// <summary> /// Returns an array of ColumnDescriptors describing the current column configuration /// of the ListView. /// </summary> /// <param name="listView">The list view for which the column configuration is returned.</param> /// <returns>An array of column descriptors.</returns> internal ColumnDescriptor[] ColumnDescriptorsFromList(ResourceListView2 listView) { ArrayList columnDescriptors = new ArrayList(); foreach (JetListViewColumn col in listView.Columns) { ResourcePropsColumn propsCol = col as ResourcePropsColumn; if (propsCol != null) { string[] propNames = new string[propsCol.PropIds.Length]; for (int i = 0; i < propsCol.PropIds.Length; i++) { int propId = propsCol.PropIds [i]; if (propId < 0) { propNames [i] = "-" + Core.ResourceStore.PropTypes [-propId].Name; } else { propNames [i] = Core.ResourceStore.PropTypes [propId].Name; } } int width; ColumnDescriptorFlags flags = 0; if (col.FixedSize) { flags |= ColumnDescriptorFlags.FixedSize; } if (col.AutoSize) { flags |= ColumnDescriptorFlags.AutoSize; width = col.AutoSizeMinWidth; } else { width = col.Width; } columnDescriptors.Add(new ColumnDescriptor(propNames, width, flags)); } } return((ColumnDescriptor[])columnDescriptors.ToArray(typeof(ColumnDescriptor))); }
private void VerifyPropColumn(int index, string propName) { ResourcePropsColumn col = (ResourcePropsColumn)_jetListView.Columns [index]; Assert.AreEqual(propName, _core.ResourceStore.PropTypes [col.PropIds [0]].Name); }