ChangeLog 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606
  1. 2002-12-18 Gonzalo Paniagua Javier <[email protected]>
  2. * BaseParser.cs: use MapPath and context to locate files.
  3. * Control.cs: implemented MapPathSecure.
  4. * TemplateControl.cs: use UrlUtils to generate the path.
  5. * TemplateControlParser.cs: use the context and MapPath.
  6. * UserControl.cs: implemented MapPath.
  7. * UserControlParser.cs: added context parameter to constructor.
  8. 2002-12-17 Gonzalo Paniagua Javier <[email protected]>
  9. * Control.cs: implemented MapPathSecure.
  10. * Page.cs: fixed Server property.
  11. 2002-12-15 Gonzalo Paniagua Javier <[email protected]>
  12. * DataBinder.cs: try the indexer if the property is not found in
  13. GetPropertyValue ().
  14. 2002-12-13 Gonzalo Paniagua Javier <[email protected]>
  15. * Control.cs: added AutoEventWireup internal property.
  16. * Page.cs: removed page events wire up from here.
  17. * TemplateControl.cs: new method WireupAutomaticEvents to hook up page
  18. and user controls events.
  19. * TemplateControlParser.cs: process the options that are applicable
  20. once we have the instance of the control.
  21. * TemplateParser.cs: also stores the options.
  22. * UserControl.cs: hook up events before initializing the control.
  23. 2002-12-12 Gonzalo Paniagua Javier <[email protected]>
  24. * Control.cs: new method to set bindingContainer value.
  25. * TemplateControl.cs: added controls are not binding containers.
  26. 2002-12-12 Gonzalo Paniagua Javier <[email protected]>
  27. * Control.cs: implemented TemplateSourceDirectory.
  28. * TemplateControl.cs: implemented LoadControl and LoadTemplate.
  29. 2002-11-27 Gonzalo Paniagua Javier <[email protected]>
  30. * UserControl.cs: fixed SetAttribute.
  31. * UserControlParser.cs: set the correct base type.
  32. 2002-11-26 Gonzalo Paniagua Javier <[email protected]>
  33. * TemplateParser.cs: fixed BaseType.
  34. * UserControlParser.cs: helper class to compile user controls.
  35. 2002-11-20 Gonzalo Paniagua Javier <[email protected]>
  36. * LosFormatter.cs: added DateTime to special types.
  37. 2002-11-12 Gonzalo Paniagua Javier <[email protected]>
  38. * LosFormatter.cs: added array serialization support. Disabled binary
  39. serialization and add some debugging code.
  40. * StateBag.cs: the length of the list of value can be less than the
  41. length if the list of keys when remaining values are null.
  42. 2002-11-07 Gonzalo Paniagua Javier <[email protected]>
  43. * Page.cs: return something useful in GetPostBackClientEvent.
  44. 2002-11-02 Gonzalo Paniagua Javier <[email protected]>
  45. * Page.cs: implemented FileDependecies and made it protected.
  46. 2002-10-31 Gonzalo Paniagua Javier <[email protected]>
  47. * Control.cs: save control names instead of the controls
  48. themselves to the ViewState.
  49. * LosFormatter.cs: added support for serializing unknown
  50. types. BinaryFormatter does not work so you better don't store anything
  51. of unknown Type in ViewState.
  52. * Page.cs: GetViewStateString works now using LosFormatter.
  53. Complete "Control execution lifecycle" by unloading all the child
  54. controls. Check for null in RaisePostBackEvents.
  55. LoadPageViewStateFromPersistenceMedium uses LosFormatter too.
  56. 2002-10-29 Gonzalo Paniagua Javier <[email protected]>
  57. * DataBinder.cs: implemented Eval and GetIndexedPropertyValue methods.
  58. 2002-10-27 Gonzalo Paniagua Javier <[email protected]>
  59. * LosFormatter.cs: Use WebEncoding.Encoding.
  60. * Control.cs:
  61. * Page.cs: fixed namespace.
  62. 2002-10-24 Gonzalo Paniagua Javier <[email protected]>
  63. * Page.cs: set the context in ProcessRequest. Added a few trace calls.
  64. * Control.cs: added some trace information.
  65. 2002-10-08 Gonzalo Paniagua Javier <[email protected]>
  66. * SimpleHandlerFactory.cs: new handler for .ashx files.
  67. 2002-09-28 Gonzalo Paniagua Javier <[email protected]>
  68. * System.Web.UI/PageHandlerFactory.cs: new file.
  69. * System.Web.UI/PageParser.cs:
  70. * System.Web.UI/TemplateControlParser.cs: we are now able to compile
  71. pages and use HttpApplication, HttpRuntime and SimpleWorkerRequest.
  72. 2002-09-25 Gonzalo Paniagua Javier <[email protected]>
  73. * Control.cs: implemented ObBubbleEvent.
  74. * Page.cs: temporary workaround to make POST work with xsp server.
  75. 2002-09-22 Gonzalo Paniagua Javier <[email protected]>
  76. * Page.cs: fixed InvokeEventMethod now that Type.GetMethod does not
  77. return pvt methods.
  78. 2002-09-11 Gonzalo Paniagua Javier <[email protected]>
  79. * SimpleWebHandlerParser.cs: New file.
  80. * WebServiceParser.cs: New file.
  81. 2002-08-22 Gonzalo Paniagua Javier <[email protected]>
  82. * LosFormatter.cs: almost fully implemented.
  83. 2002-08-18 Gonzalo Paniagua Javier <[email protected]>
  84. * CompiledTemplateBuilder.cs: InstantiateIn is virtual.
  85. * EmptyControlCollection.cs: throw correct exception.
  86. * LosFormatter.cs: stubbed out.
  87. * OutputCacheLocation.cs: little fix.
  88. 2002-08-16 Gonzalo Paniagua Javier <[email protected]>
  89. * System.Web.UI/ApplicationFileParser.cs:
  90. * System.Web.UI/BaseParser.cs:
  91. * System.Web.UI/PageParser.cs:
  92. * System.Web.UI/TemplateControl.cs:
  93. * System.Web.UI/TemplateControlParser.cs:
  94. * System.Web.UI/TemplateParser.cs: first steps to move xsp into
  95. System.Web.
  96. 2002-07-30 Gonzalo Paniagua Javier <[email protected]>
  97. * Page.cs: request to render postback script can be after form started
  98. rendering.
  99. 2002-07-22 Gonzalo Paniagua Javier <[email protected]>
  100. * Page.cs: added more page events to invoke automagically if some
  101. methods are defined.
  102. 2002-07-22 Gonzalo Paniagua Javier <[email protected]>
  103. * Control.cs:
  104. (SaveViewState): save state even when control is not visible.
  105. (SaveViewStateRecursive):
  106. (LoadViewStateRecursive): made internal.
  107. 2002-07-21 Gonzalo Paniagua Javier <[email protected]>
  108. * Page.cs: improved event raising to allow client postback for a wider
  109. variety of actions (clicking an hyperlink, ...).
  110. 2002-07-20 Gonzalo Paniagua Javier <[email protected]>
  111. * UserControl.cs: implemented Load/SaveViewState.
  112. 2002-07-20 Gonzalo Paniagua Javier <[email protected]>
  113. * AttributeCollection.cs:
  114. (Add): handle 'style' through styleCollection.
  115. * CssStyleCollection.cs:
  116. (fillStyle): renamed to FillStyle and made it internal.
  117. * Page.cs:
  118. (GetViewStateString): fixed, broken after other recent changes.
  119. (ProcessPostData): allow a second try for postback data after OnLoad.
  120. (ProcessRequest): clear controls collection, removed call to
  121. UnloadRecursive.
  122. 2002-07-19 Gonzalo Paniagua Javier <[email protected]>
  123. * Control.cs: uncommented Dispose.
  124. * Page.cs:
  125. (DeterminePostBackMode): more checkings.
  126. (GetPostBackClientHyperLink): implemented.
  127. (GetPostBackEventReference): added some comments with the HTML that MS
  128. generates for that.
  129. (ProcessRequest): fixed processing order. The page is unloaded after
  130. a request and regenerated from view state on subsequents posts.
  131. 2002-07-17 Gonzalo Paniagua Javier <[email protected]>
  132. * Control.cs: fixed related to ViewState. Added RemovedControl.
  133. * ControlCollection.cs: notify owner of control removal.
  134. * CssStyleCollection.cs: almost rewritten to make it render the style
  135. attribute after changes to it.
  136. * Page.cs: follow the guidelines in 'Control execution lifecycle'.
  137. Removed Xml code.
  138. * StateBag.cs: don't use IDictionary.GetEnumerator on the
  139. HybridDictionary: it makes the program give an InvalidCastException at
  140. runtime. Why?
  141. 2002-07-16 Gonzalo Paniagua Javier <[email protected]>
  142. * Page.cs: fire Init and Load events for all children.
  143. 2002-07-14 Gonzalo Paniagua Javier <[email protected]>
  144. * UserControl.cs: New file.
  145. 2002-07-13 Gonzalo Paniagua Javier <[email protected]>
  146. * ControlBuilderAttribute.cs: finished implementation.
  147. 2002-07-12 Gonzalo Paniagua Javier <[email protected]>
  148. * ConstructorNeedsTagAttribute.cs: the default constructor sets the
  149. property to false.
  150. 2002-07-12 Gonzalo Paniagua Javier <[email protected]>
  151. * System.Web.UI/AttributeCollection.cs: added CssStyleCollection.
  152. * System.Web.UI/CssStyleCollection.cs: use a StateBag instead of a
  153. Hashtable. Added internal .ctor.
  154. * System.Web.UI/DataBinding.cs: propertyType is a Type. Implemented
  155. Equals and GetHashCode.
  156. * System.Web.UI/DataBoundLiteralControl.cs:
  157. (LoadViewState):
  158. (SaveViewState): implemented.
  159. * System.Web.UI/Page.cs: FileDependencies is not public.
  160. * System.Web.UI/ParseChildrenAttribute.cs: give a value to Default.
  161. (GetHashCode):
  162. (Equals):
  163. (IsDefaultAttribute): implemented.
  164. 2002-07-08 Gonzalo Paniagua Javier <[email protected]>
  165. * Control.cs: fixed Visible property.
  166. * Page.cs: fixed GetViewStateString.
  167. 2002-07-05 Gonzalo Paniagua Javier <[email protected]>
  168. * System.Web.UI/Page.cs:
  169. (GetViewStateString): new function to give the server access to the
  170. generated view state string.
  171. (Validate): d'oh!
  172. 2002-07-05 Gonzalo Paniagua Javier <[email protected]>
  173. * Control.cs:
  174. (SaveViewstateRecursive): implemented.
  175. (SaveViewState): fixed.
  176. (IParserAccessor.AddParsedSubObject): don't use 'this'.
  177. * Page.cs: added code to save view state to an xml file. It's not
  178. being used right now.
  179. 2002-06-30 Gonzalo Paniagua Javier <[email protected]>
  180. * System.Web.UI/LiteralControl.cs:
  181. Fixes based on class status page:
  182. - Add attributes (DefaultEvent, ParseChildren).
  183. - Fix declarations.
  184. - Explicitly implement some interfaces (IPostBackDataHandler
  185. and IPostBackEventHandler).
  186. - Implemented some missing methods.
  187. 2002-06-29 Gonzalo Paniagua Javier <[email protected]>
  188. * Control.cs: reimplemented FindControls.
  189. * Page.cs:
  190. (.ctor): set the page for this control.
  191. (IsPostBack): return valid value.
  192. (DeterminePostBackMode): finished.
  193. (OnFormRender): render __VIEWSTATE (uses GetTypeHashCode()).
  194. (ProcessPostData): implemented. Raises change and postback events.
  195. (ProcessRequest): changed to support reuse of the instance.
  196. (RegisterRequiresPostBack): implemented.
  197. * ValidatorCollection.cs: implemented all methods.
  198. 2002-06-25 Gonzalo Paniagua Javier <[email protected]>
  199. * Control.cs:
  200. * Page.cs: first attemp to save view state.
  201. * HtmlForm.cs: don't render Action.
  202. 2002-06-24 Gonzalo Paniagua Javier <[email protected]>
  203. * Page.cs: implemented more properties using information we already
  204. have in Context.
  205. (OnFormRender):
  206. (OnFormPostRender):
  207. (VerifyRenderingInServerForm): implemented.
  208. 2002-06-22 Gonzalo Paniagua Javier <[email protected]>
  209. * Page.cs: changed InvokeEventMethod to use a GetMethod that works with
  210. out runtime. Renamed Page_Init and Page_Load.
  211. After this, we can load a dll and render HTML in linux.
  212. 2002-06-20 Gonzalo Paniagua Javier <[email protected]>
  213. * Control.cs:
  214. (AddedControl): new function that is called whenever a control is
  215. added to a collection of controls in a container. It sets the defaults
  216. except for Page.
  217. * ControlCollection.cs: call AddedControl in Add/AddAt.
  218. * DataBoundLiteralControl.cs: implemented constructor, Text, Render,
  219. SetStaticString and SetDataBoundString.
  220. * Page.cs: removed SetDefaults.
  221. 2002-06-19 Gonzalo Paniagua Javier <[email protected]>
  222. * CompiledTemplateBuilder.cs: new file. Used in the code generated
  223. by xsp.
  224. * Control.cs:
  225. (BindingContainer): implemented.
  226. (EnsureChildControls): avoid stack overflow.
  227. * DataBinder.cs: implemented Eval and PropertyValue.
  228. 2002-06-18 Gonzalo Paniagua Javier <[email protected]>
  229. * HtmlTextWriter.cs: fixed style attributes rendering (almost the same
  230. bug as in regular attributes).
  231. 2002-06-17 Gonzalo Paniagua Javier <[email protected]>
  232. * Control.cs: implemented PreventAutoID.
  233. * Page.cs:
  234. (SetDefaults): don't set ID automatically if Control.PreventAutoID has
  235. been called.
  236. 2002-06-12 Gonzalo Paniagua Javier <[email protected]>
  237. * Page.cs:
  238. (Validators): if the collection is null, create one.
  239. (GetPostBackEventReference 2): don't throw exception.
  240. (GetPostBackClientEvent): return a string with containing the method
  241. name, the control name and the argument.
  242. 2002-06-12 Gonzalo Paniagua Javier <[email protected]>
  243. * Page.cs: SetPage is now called SetDefaults and also sets a default
  244. ID for controls that don't have one yet.
  245. 2002-06-12 Gonzalo Paniagua Javier <[email protected]>
  246. * Page.cs:
  247. (GetPostBackClient):
  248. (RegisterRequiresPostBack): don't throw NotImplementedException to
  249. keep going.
  250. (ProcessRequest): set the current page as the Page property for *all*
  251. the controls, not just the direct children of the page.
  252. 2002-06-11 Gonzalo Paniagua Javier <[email protected]>
  253. * Control.cs:
  254. (MapPathSecure): until security is implemented, return the same path
  255. received as argument.
  256. (RenderControl): call OnPreRender before rendering the control. So
  257. AdRotator can read its configuration file.Is there any other place
  258. where this should be done?
  259. * HtmlTextWriter.cs:
  260. (AddAttribute): fixed. Now it really stores attributes.
  261. (RenderBeginTag): fixed a couple of bugs (little ones but hard to find).
  262. 2002-06-09 Gonzalo Paniagua Javier <[email protected]>
  263. * ControlCollection.cs:
  264. (AddAt): if index is -1 behave as a plain Add.
  265. 2002-06-06 Gonzalo Paniagua Javier <[email protected]>
  266. * Page.cs: for each child control to render, assign Control.Page.
  267. Probably also needed in HtmlContainerControl derived classes.
  268. 2002-06-05 Gonzalo Paniagua Javier <[email protected]>
  269. * AttributeCollection.cs: don't need a Hastable. StateBag now works
  270. fine and takes care of the details.
  271. * Control.cs: added HasChildren property.
  272. * StateBag.cs: fixed a couple of nasty bugs.
  273. 2002-06-05 Gonzalo Paniagua Javier <[email protected]>
  274. * Page.cs: run OnInit, OnLoad y PreRender before rendering the page.
  275. Invoke Page_Init and/or Page_Load if the user supplied them (though
  276. this should depend on AutoEventWireUp attribute of Page directive).
  277. 2002-06-04 Gonzalo Paniagua Javier <[email protected]>
  278. * Control.cs: don't throw exception in ControlID. By now, it returns ID.
  279. * Page.cs:
  280. (ProcessRequest): implemented.
  281. 2002-06-04 Gonzalo Paniagua Javier <[email protected]>
  282. * System.Web.UI/Page.cs: finished stubbing out. Implemented some
  283. methods.
  284. 2002-06-03 Gonzalo Paniagua Javier <[email protected]>
  285. * Page.cs:
  286. (FileDependencies): now is public public.
  287. (EnableViewStateMAC): uncommented and made protected.
  288. (GetTypeHashCode): added method.
  289. 2002-05-24 Duncan Mak <[email protected]>
  290. * TemplateControl.cs (SetStringResourcePointer): Fixed typo.
  291. * StateBag.cs (Item): Changed the visibility level of the this
  292. [object] indexer.
  293. Misc. formatting edits, fixing some bugs introduced by the indentation.
  294. * DataBinder.cs (Eval)
  295. (GetIndexedPropertyValue)
  296. (GetPropertyValue): Fixed return types.
  297. 2002-05-21 Miguel de Icaza <[email protected]>
  298. * HtmlTextWriter.cs: Use this to change the member instances.
  299. 2002-05-17 Duncan Mak <[email protected]>
  300. * AttributeCollection.cs:
  301. * ControlCollection.cs:
  302. * CssStyleCollection.cs:
  303. * DataBindingCollection.cs:
  304. * EmptyControlCollection.cs: Added missing Collection classes.
  305. 2002-05-17 Duncan Mak <[email protected]>
  306. * BaseParser.cs:
  307. * TemplateParser.cs: Implemented. BaseParser is weird because
  308. there is no documentation on what it does.
  309. * ControlBuilder.cs:
  310. * DataBinder.cs:
  311. * DataBinding.cs: Added.
  312. * DataBoundLiteralControl.cs:
  313. * Triplet.cs: Added.
  314. * RenderMethod.cs: Added this delegate for Control.cs
  315. 2002-05-15 Gonzalo Paniagua Javier <[email protected]>
  316. * ValidationPropertyAttribute.cs: a couple of fixes to make it compile.
  317. 2002-05-14 Duncan Mak <[email protected]>
  318. * ValidationPropertyAttribute.cs: Added to CVS.
  319. 2002-05-10 Duncan Mak <[email protected]>
  320. * ConstructorNeedsTagAttribute.cs:
  321. * ControlBuilderAttribute.cs:
  322. * ImageClickEventArgs.cs:
  323. * ParseChildrenAttribute.cs:
  324. * PartialCachingAttribute.cs:
  325. * PersistChildrenAttribute.cs:
  326. * PersistenceModeAttribute.cs:
  327. * TemplateContainerAttribute.cs: Added to CVS.
  328. * PersistanceMode.cs: Removed, fixed typo.
  329. * PersistenceMode.cs: Replacing above.
  330. * StateBag.cs (this): Fixed indexer, it takes a string as the
  331. index, not an object.
  332. * ValidatorCollection.cs: Fixed typo, ValidatedCollection to ValidatorCollection.
  333. * Page.cs (Validators): return type should be ValidatorCollection,
  334. not ValidatedCollection.
  335. * TagPrefixAttribute.cs: Added to CVS.
  336. 2002-05-07 Duncan Mak <[email protected]>
  337. * Utils.cs (GetClientValidatedEvent): Uncommented the 'Page' argument.
  338. 2002-03-26 Gaurav Vaish <[email protected]>
  339. * DataBindingHandlerAttribute.cs
  340. - Completed
  341. * ToolboxDataAttribute.cs - Completed
  342. 2002-01-03 Nick Drochak <[email protected]>
  343. * DesignTimeParseData.cs: initialze static member to avoid compile
  344. error
  345. * PropertyConverter.cs: remove uneeded exception variables from
  346. catch blocks.
  347. 2002-01-02 Nick Drochak <[email protected]>
  348. * DesignTimeParseData.cs: fix header to show correct class name
  349. 2001-12-21 Gaurav Vaish <[email protected]>
  350. * StateBag.cs - Completed
  351. 2001-12-19 Gaurav Vaish <[email protected]>
  352. * Pair.cs - Small undocumented class. Completed.
  353. 2001-12-18 Gaurav Vaish <[email protected]>
  354. * DesignTimeParseData.cs - Initial implementation
  355. * StateBag.cs - Initial implementation
  356. 2001-12-17 Gaurav Vaish <[email protected]>
  357. * PropertyConverter.cs - Undocumented class. Completed.
  358. * Utils.cs - Undocumented, private class.
  359. Initial implementation
  360. 2001-08-28 Bob Smith <[email protected]>
  361. * Control.cs: Figured out some undocumented API.
  362. * Added TODO.
  363. * BuildMethod.cs: Initial implementation.
  364. * BuildTemplateMethod.cs: Initial implementation.
  365. * HtmlTextWriterAttribute.cs: Initial implementation.
  366. * HtmlTextWriterStyle.cs: Initial implementation.
  367. * HtmlTextWriterTag.cs: Initial implementation.
  368. * IAttributeAccessor.cs: Initial implementation.
  369. * IDataBindingsAccessor.cs: Initial implementation.
  370. * ImageClickEventHandler.cs: Initial implementation.
  371. * INamingContainer.cs: Initial implementation.
  372. * IParserAccessor.cs: Initial implementation.
  373. * IPostBackDataHandler.cs: Initial implementation.
  374. * IPostBackEventHandler.cs: Initial implementation.
  375. * IStateManager.cs: Initial implementation.
  376. * ITagNameToTypeMapper.cs: Initial implementation.
  377. * ITemplate.cs: Initial implementation.
  378. * IValidator.cs: Initial implementation.
  379. * OutputCacheLocation.cs: Initial implementation.
  380. * PersistanceMode.cs: Initial implementation.
  381. * StateItem.cs: Initial implementation.
  382. 2001-08-27 Bob Smith <[email protected]>
  383. * Control.cs: Bug fixes and implementations.
  384. 2001-08-24 Bob Smith <[email protected]>
  385. * Control.cs: Bug fixes.
  386. 2001-08-23 Bob Smith <[email protected]>
  387. * Control.cs: More implementation. Events reworked for performance.
  388. 2001-08-22 Bob Smith <[email protected]>
  389. * LiteralControl.cs: Implemented.
  390. * Control.cs: Even more implementation (Events). What a beast.
  391. 2001-08-20 Bob Smith <[email protected]>
  392. * Control.cs: More implementation. Not done yet. Shutter.
  393. 2001-08-17 Bob Smith <[email protected]>
  394. * Control.cs: Partial implementation.