ChangeLog 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275
  1. 2009-09-15 Marek Habersack <[email protected]>
  2. * ListView.cs: CreateChildControls calls EnsureDataBound only if
  3. we're not in post-back and if data binding is required.
  4. 2009-09-08 Marek Habersack <[email protected]>
  5. * ListView.cs: if total row count has been retrieved from the
  6. view, don't reset it to the number of items returned from the data
  7. source. Fixes bug #535701
  8. 2009-09-01 Marek Habersack <[email protected]>
  9. * ListView.cs: LoadControlState must call OnTotalRowCountAvailable
  10. after restoring the state, so that all parties subscribed to that
  11. event are given chance to react accordingly.
  12. SetPageProperties should use values stored in
  13. PagePropertiesChangingEventArgs arguments after handler returns.
  14. 2009-06-25 Marek Habersack <[email protected]>
  15. * LinqDataSource.cs: make ContextType not throw an exception when
  16. ContextTypeName is not set, but rather return a null in that
  17. case.
  18. 2009-03-03 Marek Habersack <[email protected]>
  19. * ListView.cs: SetPageProperties invoked the
  20. PagePropertiesChanging event with the startRowIndex and
  21. maximumRows parameters reversed. Fixes bugs #481250 and #481252
  22. * DataPagerField.cs: GetQueryModeStartRowIndex must return 'true'
  23. if in query mode. Fixes bug #481248
  24. 2008-11-28 Marek Habersack <[email protected]>
  25. * ListView.cs: use the _correct_ operator when checking whether
  26. selected item index is within the data keys range.
  27. 2008-11-27 Marek Habersack <[email protected]>
  28. * ListView.cs: fixes in DoUpdate and DoDelete - check must be made
  29. that the requested item index is _smaller_ than the number of
  30. keys, not _bigger_.
  31. Enable using the lambda expression in CreateItemsInGroups - the
  32. gmcs bug preventing that was fixed.
  33. 2008-11-20 Marek Habersack <[email protected]>
  34. * ListView.cs: implemented the EditItem property.
  35. Use ConvertEmptyStringToNull in ExtractItemValues.
  36. 2008-11-19 Marek Habersack <[email protected]>
  37. * ListView.cs: added paremeter checks to AddControlToContainer.
  38. CreateInsertItem must instantiate the template and call raise the
  39. ItemCreated event.
  40. Added parameter checks to FindPlaceholder
  41. 2008-11-18 Marek Habersack <[email protected]>
  42. * ListViewContainer.cs: added
  43. * ListView.cs: implemented grouping support. With this ListView is
  44. feature complete.
  45. Refactored grouped/non-grouped rendering common code into separate
  46. methods.
  47. FindPlaceholder now looks for the placeholder recursively.
  48. Implemented forgotten UpdateItem method.
  49. Align group with empty items if there are no more data items.
  50. Each group is contained within ListViewContainer.
  51. * ListViewTableCell.cs: added
  52. 2008-11-15 Marek Habersack <[email protected]>
  53. * ListViewInsertEventArgs.cs: implemented the Values property.
  54. * ListView.cs: CreateChildControls uses the Items collection to
  55. store the created items.
  56. InsertNewItem triggers page validation if necessary.
  57. Part of InsertNewItem code refactored to DoInsert.
  58. Implemented handling of the Insert and Select commands.
  59. * TemplatePagerField.cs: implemented all the code.
  60. * DataPager.cs: CreatePagerFields now adds the new pager field
  61. control before creating data pagers in it and before binding to
  62. data. This avoids situation in which the field is parentless.
  63. FindPageableItemContainer now properly finds the container if it's
  64. placed directly in the Page.
  65. {Load,Save}ViewState don't use a Pair anymore, object array is
  66. used for compatibility with MS.NET
  67. * NumericPagerField.cs, NextPreviousPagerField.cs,
  68. DataPagerFieldCommandEventArgs.cs: minor refactoring
  69. * ListViewSelectEventArgs.cs: implemented all the code.
  70. * ListViewInsertedEventArgs.cs: Values allocates the dictionary on
  71. demand now.
  72. Initialize all the properties in constructor
  73. * DataPagerCommandEventArgs.cs: added
  74. * DataPagerField.cs: implemented IsTrackingViewState
  75. * DataPagerFieldItem.cs: implements the INonBindingContainer
  76. interface.
  77. 2008-11-13 Marek Habersack <[email protected]>
  78. * ListView.cs: implemented support for Edit, Update and Delete.
  79. Implemented ExtractItemValues.
  80. * ListViewDataItem.cs, ListViewItem.cs: implemented OnBubbleEvent.
  81. * ListViewDeletedEventArgs.cs, ListViewUpdateEventArgs.cs,
  82. ListViewEditEventArgs.cs, ListViewCancelEventArgs.cs,
  83. ListViewDeleteEventArgs.cs, ListViewUpdatedEventArgs.cs:
  84. implemented all the properties and methods.
  85. * HelperExtensions.cs: added
  86. 2008-11-06 Marek Habersack <[email protected]>
  87. * ListView.cs: implemented the sorting capability.
  88. * ListViewSortEventArgs.cs: implemented all the methods and
  89. properties.
  90. 2008-11-01 Marek Habersack <[email protected]>
  91. * ListView.cs: do not instantiate the layout template more than
  92. necessary.
  93. * NextPreviousPagerField.cs: moved some common code to the base
  94. class (the GetQueryModeStartRowIndex method)
  95. * DataPager.cs: do not call SetPageProperties more than
  96. necessary.
  97. * NumericPagerField.cs: implemented
  98. * DataPagerField.cs: added a helper method,
  99. GetQueryModeStartRowIndex, to be used by all the concrete
  100. implementations to calculate the starting row index in the query
  101. mode.
  102. 2008-10-31 Marek Habersack <[email protected]>
  103. * ListView.cs: use StartRowIndex and MaximumRows properties when
  104. calculating the total row count server paging case and when
  105. assigning to corresponding properties of the paged data source.
  106. 2008-10-30 Marek Habersack <[email protected]>
  107. * DataPagerFieldCollection.cs: implemented most of the methods and
  108. properties, so that using the DataPager is possible now.
  109. * PagePropertiesChangingEventArgs.cs: implemented all the methods
  110. and properties.
  111. * ListView.cs: {Save,Load}ControlState now uses constants to index
  112. state arrays. Total row count is stored in the control state.
  113. CreateChildControls () now uses dummy data to initialize child
  114. controls if no items were found after postback.
  115. CreateChildControls (IEnumerable, bool) now properly calculates
  116. total row count, calls OnTotalRowCountAvailable after creating the
  117. child controls and returns the total row count instead of the
  118. number of created child controls. This makes pager work
  119. correctly.
  120. Implemented SetPageProperties () to support paging.
  121. * NextPreviousPagerField.cs: Correctly order the Next/Previous
  122. buttons.
  123. When creating buttons, cast the new control properly before
  124. assigning properties.
  125. * TemplatePagerField.cs: added (stub)
  126. * DataPager.cs: added missing class attributes (ParseChildren,
  127. PersistChildren and SupportsEventValidation).
  128. {Save,Load}ControlState now use constants to index the state
  129. arrays.
  130. Properly implemented FindPageableItemContainer - it now looks for
  131. the container up the parenthood chain, querying all the naming
  132. containers for the named control.
  133. SetUpForNewContainer now accepts an additional parameter, so that
  134. the SetPageProperties method is called on the container whenever
  135. necessary.
  136. * NumericPagerField.cs: implemented the CreateField method.
  137. * ListViewPagedDataSource.cs: implemented data source
  138. enumerators.
  139. * DataPagerFieldItem.cs: implemented all the methods and properties.
  140. 2008-10-21 Atsushi Enomoto <[email protected]>
  141. * LinqDataSource.cs : set ContextTypeName too when ContextType is set.
  142. 2008-10-09 Atsushi Enomoto <[email protected]>
  143. * LinqDataSource.cs : implement ContextType/ContextTypeName.
  144. * LinqDataSourceView.cs : some ExecuteSelect() implementation.
  145. Cache type members which are from reflection.
  146. 2008-10-08 Atsushi Enomoto <[email protected]>
  147. * LinqDataSource.cs, LinqDataSourceView.cs :
  148. some more implementation.
  149. 2008-09-30 Marek Habersack <[email protected]>
  150. * ListView.cs: implemented all the events.
  151. CreateChildControls works with non-ICollection data sources now.
  152. CreateItemsWithoutGroups now counts items placed in the container
  153. and stores the container in a field, so that RemoveItems can
  154. properly delete the child controls.
  155. Implemented the RemoveItems method.
  156. Implemented Load/SaveControlState.
  157. Implemented LoadViewState.
  158. Implemented OnBubbleEvent.
  159. Implemented all the On* methods.
  160. * ListViewCommandEventArgs.cs: implemented the CommandSource and
  161. Item properties.
  162. * ListViewItemEventArgs.cs: implemented the Item property.
  163. 2008-09-18 Atsushi Enomoto <[email protected]>
  164. * LinqDataSource.cs, LinqDataSourceView.cs
  165. LinqDataSourceContextEventArgs.cs
  166. LinqDataSourceDeleteEventArgs.cs
  167. LinqDataSourceDisposeEventArgs.cs
  168. LinqDataSourceInsertEventArgs.cs
  169. LinqDataSourceSelectEventArgs.cs
  170. LinqDataSourceStatusEventArgs.cs
  171. LinqDataSourceUpdateEventArgs.cs : easy implementation parts.
  172. 2008-09-18 Atsushi Enomoto <[email protected]>
  173. * LinqDataSource.cs, LinqDataSourceView.cs
  174. LinqDataSourceContextEventArgs.cs
  175. LinqDataSourceDeleteEventArgs.cs
  176. LinqDataSourceDisposeEventArgs.cs
  177. LinqDataSourceInsertEventArgs.cs
  178. LinqDataSourceSelectEventArgs.cs
  179. LinqDataSourceStatusEventArgs.cs
  180. LinqDataSourceUpdateEventArgs.cs
  181. LinqDataSourceValidationException.cs : stubbed out.
  182. 2008-05-08 Marek Habersack <[email protected]>
  183. * DataPager.cs, DataPager.cs, DataPagerFieldCollection.cs,
  184. DataPagerFieldCommandEventArgs.cs, DataPagerField.cs,
  185. DataPagerFieldItem.cs, InsertItemPosition.cs,
  186. IPageableItemContainer.cs, ListViewCancelEventArgs.cs,
  187. ListViewCancelMode.cs, ListViewCommandEventArgs.cs, ListView.cs,
  188. ListViewDataItem.cs, ListViewDeletedEventArgs.cs,
  189. ListViewDeleteEventArgs.cs, ListViewEditEventArgs.cs,
  190. ListViewInsertedEventArgs.cs, ListViewInsertEventArgs.cs,
  191. ListViewItem.cs, ListViewItemEventArgs.cs, ListViewItemType.cs,
  192. ListViewPagedDataSource.cs, ListViewSelectEventArgs.cs,
  193. ListViewSortEventArgs.cs, ListViewTableRow.cs,
  194. ListViewUpdatedEventArgs.cs, ListViewUpdateEventArgs.cs,
  195. NextPreviousPagerField.cs, NumericPagerField.cs, PageEventArgs.cs,
  196. PagePropertiesChangingEventArgs.cs, TemplatePagerField.cs:
  197. added. NOTE: this is code in progress! It is not fully implemented
  198. and usable, please do not file bug reports for the code - patches
  199. are gladly accepted :)