Uiinfrastructure API Docs  
 

PTGrowableSortedArrayWrapper Members

PTGrowableSortedArrayWrapper overview

Protected Static Fields

PTGSAW_MINIMUM_PCT_INCREASE MES- PTGSAW_MINIMUM_PCT_INCREASE is the minimum percent increase for the array

Public Instance Constructors

PTGrowableSortedArrayWrapper Constructor Initializes a new instance of the PTGrowableSortedArrayWrapper class.

Public Instance Methods

AddRow MES- Clients use the AddRow method to add a row to this array. NOTE: This will resort the entire array when adding a row. This can get very expensive. Therefore, this method should not be used for adding large numbers of rows. Use AddRows() instead.
AddRows MES- AddRows is the bulk equivalent of AddRow- it lets clients add multiple rows in a bulk operation. NOTE: This method only resorts the array once when adding bulk row. Therefore, this method should be used for adding large numbers of rows instead of calling AddRow() multiple times. AddRow will resort each time, which can get expensive.
AddRowWithoutSort ROB- Clients use the AddRow method to add a row to this array. Use SortArray to re-sort after adding multiple entries Added as to fix bug #51045:
ClearArray JF- Clears the entire array of Data.
ContainsPropID (inherited from PTSortedArrayWrapper) MES- ContainsPropID is used by clients to see if a given Property is represented by a column in the data.
Equals (inherited from Object)Determines whether the specified Object is equal to the current Object.
GetCount (inherited from PTSortedArrayWrapper) MES- GetCount returns the number of rows in our data set
GetHashCode (inherited from Object)Serves as a hash function for a particular type. GetHashCode is suitable for use in hashing algorithms and data structures like a hash table.
GetItem (inherited from PTSortedArrayWrapper) MES- GetItem is used by clients to retrieve data from the array
GetSort (inherited from PTSortedArrayWrapper) MES- GetSort returns the current sort array
GetType (inherited from Object)Gets the Type of the current instance.
InitializeOverloaded. MES- Initialize is equivalent to the PTSortedArrayWrapper call of the same name
RemoveRow MES- RemoveRow lets the client indicate the row number of a row to remove.
RemoveRows MES- RemoveRows is the bulk anologue of RemoveRow
SetItem (inherited from PTSortedArrayWrapper) JF- SetItem is used by clients modify one cell in the array.
SetItems (inherited from PTSortedArrayWrapper) JF- SetItems is used by clients modify a number of cells in the array.
Sort (inherited from PTSortedArrayWrapper) MES- Sort is used by clients to resort the internal data according to new criteria.
SortArray ROB- Resort the internal array. Use after calling AddRowWithoutSort multiple times. This is an alternative to calling AddRows with a 2d array. Added as to fix bug #51045:
ToString (inherited from Object)Returns a String that represents the current Object.

Protected Instance Fields

m_arrColumnIDs MES- We store the mapping of column IDs, because we sometimes have to rebuild m_hashPropIDtoColumn
m_arrData (inherited from PTSortedArrayWrapper) MES- m_arrData stores the actual data
m_arrSort (inherited from PTSortedArrayWrapper) MES- m_arrSort stores the current sort we're displaying
m_bSortOptimized (inherited from PTSortedArrayWrapper) MES- When the data is correctly sorted according to m_arrSort, we can skip the step of dereferencing rows through m_lstRowMapping. m_bSortOptimized holds a boolean to indicate if we can skip the dereferencing.
m_hashPropIDtoColumn (inherited from PTSortedArrayWrapper) MES- m_hashPropIDtoColumn stores a map of Property ID to the column that contains data for that property. Note that the map points to the actual column object.
m_iPercentIncrease MES- m_iPercentIncrease tells us how much we should grow by when we want to grow
m_lstRowMapping (inherited from PTSortedArrayWrapper) MES- m_lstRowMapping holds the row numbers. When we do a sort, we rearrange the items in m_lstRowMapping, but we do NOT rearrange the data itself. This layer of indirection lets us resort easily and relatively cheaply.
m_lstUnusedRowMapping MES- m_lstUnusedRowMapping is a list of the empty rows. We use this when we want to add a new row to the array- we may be able to sneak the data into an existing row. Every row should either be in m_lstRowMapping or m_lstUnusedRowMapping.

Protected Instance Methods

AddRowInternal MES- AddRowInternal is an internal helper function that does the heavy lifting when adding a row.
CalculateNextSize MES- CalculateNexSize is an internal helper function that figures out, based on the current size, what the next size would be (taking into account m_iPercentIncrease, etc.)
Finalize (inherited from Object)Allows an Object to attempt to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection.
GrowInternalArrayIfNeeded MES- GrowInternalArrayIfNeeded is an internal helper function that checks if m_arrData is large enough to hold more rows, and makes it larger if needed.
MapColumnIDs (inherited from PTSortedArrayWrapper) MES- MapColumnIDs is an internal function that sets up the m_hashPropIDtoColumn mapping based on an array of ColumnIDs
MemberwiseClone (inherited from Object)Creates a shallow copy of the current Object.
ResizeArray MES- ResizeArray is an internal helper function that changes the number of rows in an array (by creating a new array and copying the data over.)
SortInternal (inherited from PTSortedArrayWrapper) MES- SortInternal is an internal helper function that actually performs the sort based on m_arrSort.

See Also

PTGrowableSortedArrayWrapper Class | com.plumtree.uiinfrastructure.arraywrapper Namespace