Making simple web app work with Grasshopper.
[mono.git] / mcs / class / System.Web / System.Web.UI / ChangeLog
1 2005-07-24 Eyal Alaluf (eyala@mainsoft.com)
2         * TemplateControl.jvm.cs: fixed resource loading
3     * PageHandlerFactory.jvm.cs: Added file
4
5 2005-07-19 Eyal Alaluf (eyala@mainsoft.com)
6         * Added TemplateControl.jvm.cs that implements Grasshopper (TARGET_J2EE)
7           limited model of compiling ASP pages.
8
9 2005-07-19 Eyal Alaluf (eyala@mainsoft.com)
10         * Added ControlBuilder.jvm.cs ObjectTagBuilder.jvm.cs as part of the TARGET_J2EE configuration.
11
12 2005-07-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
13
14         * AttributeCollection.cs: create the style collection if it wasn't
15         created before Add ("style"...).
16
17 2005-07-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
18
19         * AttributeCollection.cs: when the key added is 'style', use the style
20         collection.
21
22 2005-06-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
23
24         * Page.cs:
25         * Control.cs: avoid the creation of the EventHandlerList and accessing 
26         to it whenever possible. Fix ENABLE_THEMING constant.
27
28 2005-06-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
29
30         * TemplateParser.cs:
31         * TemplateControlParser.cs:
32         * UserControlParser.cs: detect circular references when a control tries
33         to register itself as a tag. Fixes bug #75376.
34
35 2005-06-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
36
37         * PageParser.cs: don't try to compile the master page if it wan't
38         provided. Use MapPath from the base classes instead of the long
39         version. Fixes bug #75269 that prevented xsp2 from working properly.
40
41 2005-06-13  Lluis Sanchez Gual <lluis@novell.com> 
42
43         * MasterPage.cs: Clear the default content of placeholders before
44         adding the page content. Fixes bug #75193.
45
46 2005-06-13  Lluis Sanchez Gual <lluis@novell.com>
47
48         * PageParser.cs: Added MasterType property. Get the type from the
49         MasterType directive.
50         * MasterPageParser.cs: Added GetCompiledMasterType method.
51
52 2005-06-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
53
54         * UserControl.cs:
55         * Page.cs:
56         * Control.cs: updates for 1.1 SP1
57
58 2005-06-06  Lluis Sanchez Gual <lluis@novell.com>
59
60         * Control.cs: Added new DataBind() overload for 2.0. The old
61         method calls this new overload.
62
63 2005-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
64
65         * TemplateParser.cs: ignore empty assembly.Location for in-memory
66         generated assemblies.
67
68 2005-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
69
70         * Page.cs: added AddContentTemplate method.
71
72 2005-05-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
73
74         * AttributeCollection.cs: html-encode attribute values. Fixes
75         bug #73771.
76
77 2005-05-26  Lluis Sanchez Gual <lluis@novell.com>
78
79         * DataSourceView.cs: Fix api.
80         * NonVisualControlAttribute.cs: Implemented.
81         * IDataItemContainer.cs: Added missing properties.
82         * Control.cs: Added new EnableTheming and SkinID properties.
83         * HierarchicalDataSourceControl.cs: Implemented missing methods.
84
85 2005-05-13  Lluis Sanchez Gual <lluis@novell.com>
86
87         * ControlCollection.cs: Added internal setter for ReadOnly.
88
89 2005-05-09 Geoff Norotn <gnorton@customerdna.com>
90
91         * TemplateParser.cs: Silently remove the CodeFile attribute that ASP.NET 2.0
92         uses instead of codebehind.
93
94 2005-05-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
95
96         * Page.cs: as setting CurrentCulture is slow, don't set it if the
97         culture has not changed since before the page started processing.
98
99 2005-05-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
100
101         * TemplateParser.cs: LoadWithPartialName returns null if the assembly is
102         not found.
103
104 2005-04-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
105
106         * TemplateParser.cs:
107         * SimpleWebHandlerParser.cs: removed values assigned and neved used.
108
109 2005-04-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
110
111         * SimpleWebHandlerParser.cs:
112         * TemplateParser.cs: always get the location (full path) for assemblies,
113         even the ones from the GAC.
114
115         * BaseCompiler.cs: check that DynamicBase directory exists before
116         creating the TempFileCollection.
117
118 2005-04-22  Lluis Sanchez Gual <lluis@novell.com>
119
120         * ClientScriptManager.cs: Use a linked list instead of a Hashtable
121         to store the scripts. In this way, scripts will be rendered in the
122         same order as they have been registered. It shouldn't be slower
123         since pages don't have many scripts.
124
125 2005-04-21  Lluis Sanchez Gual <lluis@novell.com>
126
127         * IEditableTextControl.cs: Implemented.
128         * DataBinder.cs: Marked constructor as obsolete in 2.0.
129         In GetDataItem, check for the IDataItemContainer interface
130         in the container.
131         * TemplateControl.cs: Improved check for data item.
132
133 2005-04-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
134
135         * TemplateParser.cs: we still need LoadWithPartialName if Load fails.
136         * Page.cs: ensure _requiresPostBack is emptied if we didn't have a copy
137         for second postback.
138
139 2005-04-20  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
140         * TemplateParser.cs: Adding support for Strict/Explicit attributes 
141         for @Page/@Control directives as documented at 
142         http://msdn.microsoft.com/library/en-us/cpgenref/html/cpconControlDirective.asp.
143         First step don't choke on them. Fixing #74671
144
145 2005-04-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
146
147         * TemplateParser.cs: use Load instead of LoadWithPartialName. That was
148         there from the time when Load wasn't working properly. First part of the
149         fix to 74500.
150
151 2005-04-15  Lluis Sanchez Gual <lluis@novell.com>
152
153         * ControlBuilder.cs: The BindingContainerType property happens
154         to exist in 2.0, so I made it public. Added ParentTemplateBuilder,
155         which is used to get the binding container that is managing
156         the current two-way binding context.
157         * TemplateBuilder.cs: Added some methods and an internal class
158         to support two-way bindings.
159         * CompiledBindableTemplateBuilder.cs: Implemented.
160         * IBindableTemplate.cs: This interface inherits from ITemplate.
161
162 2005-04-14  Lluis Sanchez Gual <lluis@novell.com>
163
164         * ControlBuilder.cs: Added BindingContainerType property,
165         which works like NamingContainerType but takes into account
166         template builders with a specific container type (specified
167         using the TemplateContainerAttribute.
168         * StateManagedCollection.cs: Reimplemented Save/Load view
169         state methods. The existing implementation was not correct
170         in all cases.
171
172 2005-04-08  Lluis Sanchez Gual <lluis@novell.com>
173
174         * DataSourceView.cs: Added null check.
175
176 2005-04-07  Lluis Sanchez Gual <lluis@novell.com>
177
178         * TemplateControl.cs:
179         * Page.cs: Moved Eval and XPath from Page
180         to TemplateControl.
181         * StateManagedCollection.cs: Avoid saving null state.
182
183 2005-04-01  Lluis Sanchez Gual <lluis@novell.com>
184
185         * DataSourceView.cs: Rethrow exceptions not handled by operation
186         callbacks.
187         * ITextControl.cs: Removed event.
188         * CollectionBuilder.cs: Don't crash when a collection has more
189         than one indexer.
190
191 2005-03-23  Lluis Sanchez Gual <lluis@novell.com>
192
193         * Control.cs: Added a new internal property: HasRenderMethodDelegate.
194         * HtmlTextWriterAttribute.cs: Replaced wrong enum value.
195         * HtmlTextWriter.cs: Register new ASP.NET 2.0 attributes
196
197 2005-03-16  Lluis Sanchez Gual  <lluis@novell.com>
198
199         * ClientScriptManager.cs: Fix build.
200
201 2005-03-11  Lluis Sanchez Gual <lluis@novell.com>
202
203         * Utils.cs, Control.cs: Don't use Page.GetPostBackClientEvent
204         since it is deprecated in 2.0.
205         * Page.cs: Deprecated GetPostBackClientEvent and similar methods
206         in 2.0. Moved callback management methods to ClientScriptManager.
207         * ClientScriptManager.cs: Moved here deprecated methods from Page.
208         In GetPostBackEventReference (PostBackOptions), don't use the
209         WebForm_DoPostback script if the post can be done with a simple
210         __doPostBack call.
211         * PostBackOptions.cs: Fixed default values for some properties.
212
213 2005-03-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
214
215         * Control.cs: in FindControl, throw if there's more than one control
216         with the same ID. Fixes bug #73479.
217
218 2005-03-04  Lluis Sanchez Gual <lluis@novell.com>
219
220         * Page.cs: Load control state before loading view state, and the
221         same for saving.
222         * DataSourceSelectArguments.cs: Fix recursive property call.
223
224 2005-02-25  Lluis Sanchez Gual <lluis@novell.com>
225
226         * DataSourceView.cs: Fixed incorrect implementation of
227         RaiseUnsupportedCapabilityError.
228         * IDataItemContainer.cs: Added new properties.
229         * Page.cs: Implemented Form property.
230         * Control.cs: Fixed formatting.
231         * StateManagedCollection.cs: Track view state of items loaded
232         in LoadViewState.
233
234 2005-02-22  Lluis Sanchez Gual <lluis@novell.com>
235
236         * FilterableAttribute.cs: Fix endless loop.
237
238 2005-02-18  Lluis Sanchez Gual <lluis@novell.com>
239
240         * Page.cs: Implemented missing events.
241
242 2005-02-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
243
244         * BoundPropertyEntry.cs:
245         * PropertyEntry.cs:
246         * TwoWayBoundPropertyEntry.cs: implemented.
247
248 2005-02-10  Lluis Sanchez Gual <lluis@novell.com>
249
250         * Page.cs: Added support for validation groups. Some fixes in
251         SavePageControlState().
252         * IFilterResolutionService.cs: Removed extra field.
253         * INavigateUIData.cs: Added missing field.
254         * ICheckBoxControl.cs, IStaticTextControl.cs, ITextControl.cs:
255         Implemented new interfaces.
256
257 2005-02-04  Lluis Sanchez Gual <lluis@novell.com>
258
259         * Page.cs: Implemented support for cross page postback. Implemented
260         support for postback with options. Fixed several method and property
261         signatures for 2.0.
262         * PostBackOptions.cs: Added some TODOs.
263
264 2005-02-02  Lluis Sanchez Gual <lluis@novell.com>
265
266         * ParseChildrenAttribute.cs: Set the correct default value for the
267         childType property.
268
269 2005-01-28  Lluis Sanchez Gual <lluis@novell.com>
270
271         * ParseChildrenAttribute.cs: Added 2.0 property.
272         * Pair.cs, Triplet.cs: Make classes serializable and sealed in 2.0.
273         * Page.cs: Added support for control state.
274         * TemplateBuilder.cs: ContainerType should be internal.
275         * Control.cs: Added some new 2.0 methods.
276
277 2005-01-21  Lluis Sanchez Gual <lluis@novell.com>
278
279         * PageParser.cs: Read the MasterPageFile attribute.
280         * UserControlParser.cs: Not sealed any more since we need to inherit from
281         it. Added new constructor with an additional "type" parameter.
282         * MasterPageParser.cs: Parser for master pages.
283         * Page.cs: Added support for master pages.
284         * MasterPage.cs: Implemented.
285
286 2005-01-10  Lluis Sanchez Gual <lluis@novell.com>
287         
288         * TemplateBuilder.cs: Added a special constructor that takes an
289         attribute provider as parameter. The container type for the template
290         may be defined in a TemplateContainerAttribute.
291         * ControlBuilder.cs: Create the TemplateBuilder using that special
292         constructor.
293         * TemplateContainerAttribute.cs: Added 2.0 property and ctor.
294
295 2004-12-20 Lluis Sanchez Gual  <lluis@novell.com>
296
297         * IStyleSheet.cs: Added missing "using".
298         * Page.cs: Implemented Header property.
299         * CssStyleCollection.cs: Made BagToString method internal.
300         * RootBuilder.cs: Register HtmlHead control.
301         
302 2004-12-17 Lluis Sanchez Gual  <lluis@novell.com>
303
304         * CssStyleCollection.cs: Minor (!) fix.
305         * HtmlTextWriter.cs: Register names for new 2.0 styles.
306
307 2004-12-17 Lluis Sanchez Gual <lluis@novell.com>
308
309         * CssStyleCollection.cs: Make it work as a standalone collection.
310         * HtmlTextWriter.cs: Added static method for getting style names.
311
312 2004-12-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
313
314         * ControlCollection.cs: fix off-by-one and store a null at the end to
315         remove the reference to the removed control.
316
317 2004-12-10 Lluis Sanchez Gual <lluis@novell.com>
318
319         * ClientScriptManager.cs: Added GetScriptLiteral helper method.
320         
321 2004-12-02 Lluis Sanchez Gual <lluis@novell.com>
322
323         * Page.cs: Added support for callback events. Moved theform variable
324         outside the __doPostBack function, so it can be used by other
325         scripts.
326         * StateBag.cs: Implemented SetDirty().
327
328 2004-11-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
329
330         * Control.cs: when saving "Visible" into the ViewState, save the value
331         for this precise control, as using the Visible property might give us
332         Control's parent visibility. Fixes bug #69200.
333
334 2004-11-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
335
336         * Control.cs: fixed ResolveUrl for relative URLs when using cookie-less
337         sessions.
338
339         * System.Web.Util/UrlUtils.cs: made (Insert|Get|Remove)SessionId use
340         the appRoot + SessionID + vpath format.
341
342         Fixes the 3 issues reported in bug #66623.
343
344 2004-11-26 Lluis Sanchez Gual <lluis@novell.com>
345
346         * Page.cs: Moved code for managing client scripts to ClientScriptManager,
347         which is public in 2.0 and internal in 1.1.
348         * ClientScriptManager.cs: Implemented.
349
350 2004-11-25 Sanjay Gupta <gsanjay@novell.com>
351
352         * DataSourceView.cs: Removed extra method.
353
354 2004-11-24 Sanjay Gupta <gsanjay@novell.com>
355         
356         * DataSourveViewSelectCallback.cs: Corrected method signature.
357
358 2004-11-23 Lluis Sanchez Gual <lluis@novell.com>
359
360         * ControlBuilder.cs: Always check for the ParseChildrenAttribute,
361         even if the class doesn't implement IParserAccessor.
362         * WebResourceAttribute.cs: Allow multiple attributes of this type.
363
364 2004-11-15 Lluis Sanchez Gual <lluis@novell.com>
365
366         * DataSourceView.cs: Moved here implementation of DataSourceViewChanged 
367         from SqlDataSourceView.cs.
368
369 2004-11-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
370
371         * Control.cs: unified a few bool fields into an int one.
372
373         * ControlCollection.cs: use an array internally instead of always
374         allocating an arraylist. Also added our own enumerator.
375         
376         * EmptyControlCollection.cs: there's no 'special' ctor now in the base
377         class.
378
379 2004-11-05 Sanjay Gupta <gsanjay@novell.com>
380
381         * DataSourceView.cs: Changes in access modifiers of methods.
382
383 2004-10-20 Sanjay Gupta <gsanjay@novell.com>
384
385         * DataSourceCapabilities.cs: Added Flags attribute.
386         * DataSourceSelectArguments.cs: Updated.
387         * DataSourveView.cs: Updated.
388
389 2004-10-19 Sanjay Gupta <gsanjay@novell.com>
390
391         * HierarchicalDataSourceView.cs: Corrected class definition and updated.
392
393 2004-10-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
394
395         * HierarchicalDataSourceView.cs: fix typo.
396
397 2004-10-18 Sanjay Gupta <gsanjay@novell.com>
398
399         * HierarchicalDataSourceView.cs: Updated.
400
401 2004-10-18 Sanjay Gupta <gsanjay@novell.com>
402
403         * DataSourceSelectArguments.cs: Initial implementation.
404
405 2004-10-12 Sanjay Gupta <gsanjay@novell.com>
406
407         * UrlPropertyAttribute.cs: Corrected implementation of Equals () method.
408
409 2004-10-12 Sanjay Gupta <gsanjay@novell.com>
410
411         * UrlTypes.cs: Updated.
412
413 2004-10-12 Sanjay Gupta <gsanjay@novell.com>
414
415         * UrlPropertyAttribute.cs: Added new file.
416
417 2004-10-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
418
419         * Control.cs: even if the control has no children the naming container
420         may contain the control we're looking for. Fixes bug #67304.
421
422 2004-09-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
423
424         * AspGenerator.cs: added OtherTags.
425
426 2004-09-24 Sanjay Gupta <gsanjay@novell.com>
427
428         * ControlValuePropertyAttribute.cs: Initial implementation.
429
430 2004-09-24 Sanjay Gupta <gsanjay@novell.com>
431
432         * IPaginationContainer.cs: Corrected name of class.
433
434 2004-09-24 Sanjay Gupta <gsanjay@novell.com>
435
436         * IDReferencePropertyAttribute.cs: Completed implementation.
437
438 2004-09-24 Sanjay Gupta <gsanjay@novell.com>
439
440         * ThemeableAttribute.cs:
441         * FilterableAttribute.cs: Code scrubbing and optimization.
442
443 2004-09-14 Sanjay Gupta <gsanjay@novell.com>
444
445         * ThemeableAttribute.cs: Completed implementation.
446
447 2004-09-14 Sanjay Gupta <gsanjay@novell.com>
448
449         * FilterableAttribute.cs: Completed implementation.
450
451 2004-09-14 Sanjay Gupta <gsanjay@novell.com>
452
453         * Control.cs: Added new attributes and a method.
454         * FilterableAttribute.cs: New attribute, initial implementation.
455         * ThemeableAttribute.cs: New attribute, initial implemenataion.
456
457 2004-09-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
458
459         * TemplateParser.cs: ensure bin directory exists before trying to access
460         it. Fixes bug #65446 (not closed yet due to dependencies).
461
462 2004-09-09 Sanjay Gupta <gsanjay@novell.com>
463
464         * Control.cs: Implemented methods of interface IExpressionAccessor.
465
466 2004-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
467
468         * SimpleWebHandlerParser.cs: correctly cache Type instead of the
469         assembly for ashx/asmx. Otherwise we need to open the file and check
470         for the class name in there. Thanks to Ben for pointing this out.
471
472 2004-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
473
474         * TemplateParser.cs: removed creation of StringWriter.  It's not used.
475         * Control.cs: don't create the EventHandlerList until requested.
476
477 2004-09-03 Sanjay Gupta <gsanjay@novell.com>
478         
479         * Control.cs: Added new interfaces implemented in .Net 2.0. 
480         * ExpressionBinding.cs: Added new class.
481         * ExpressionBindingCollection.cs: Added new class.
482         
483 2004-09-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
484
485         * LiteralControl.cs: stylized. This control has EnableViewState disabled
486         by default and doesn't get an automatic ID. When text is null -> "".
487
488 2004-08-31 Sanjay Gupta <gsanjay@novell.com>
489         
490         * ControlSkinProc.cs:
491         * DataSourceViewOperationCallback.cs:
492         * DataSourceViewSelectCallback.cs:
493         * ExtractTemplateValuesMethod.cs: Explicit modifier "sealed" not 
494         required in definition as delegates by default are sealed.
495         
496 2004-08-31 Sanjay Gupta <gsanjay@novell.com>
497
498         * IDReferencePropertyAttribute.cs: Corrected and changed from interface
499         to class.
500         * IMobileTextWriter.cs: Corrected method signatures.
501
502 2004-08-09 Sanjay Gupta <gsanjay@novell.com>
503
504         * ControlSkinProc.cs:
505         * DataSourceViewOperationCallback.cs:
506         * DataSourceViewSelectCallback.cs:
507         * ExtractTemplateValuesMethod.cs: Added new delegates.
508
509 2004-08-06 Sanjay Gupta <gsanjay@novell.com>
510
511         * IBindableTemplate.cs:
512         * ICallbackEventHandler.cs:
513         * IControlBuilderAccessor.cs:
514         * IControlDesignerAccessor.cs:
515         * IControlTypeFilter.cs:
516         * IDataItemContainer.cs:
517         * IDataSourceViewSchemaAccessor.cs:
518         * IDReferencePropertyAttribute.cs:
519         * IExpressionsAccessor.cs:
520         * IFilterResolutionService.cs:
521         * IItemPaginationInfo.cs:
522         * IMobileTextWriter.cs:
523         * IPageHeader.cs:
524         * IPaginationContainer.cs:
525         * IPaginationInfo.cs:
526         * IResourceResolutionService.cs:
527         * IResourceUrlGenerator.cs:
528         * IStateFormatter.cs:
529         * IStyleSheet.cs:
530         * IThemeResolutionService.cs:
531         * IUrlResolutionService.cs:
532         * IUserControlTypeResolutionService.cs: Added new files for Interfaces.
533
534 2004-08-05 Sanjay Gupta <gsanjay@novell.com>
535
536         * PostBackOptions.cs: Added new file and implemented the class.
537
538 2004-08-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
539
540         * HtmlTextWriterTag.cs: readded author name.
541
542 2004-08-04 Sanjay Gupta <gsanjay@novell.com>
543
544         * HtmlTextWriterAttribute.cs:
545         * HtmlTextWriterStyle.cs: Added .Net 2.0 enumerations.
546         * CompilationMode.cs:
547         * ConflictOptions.cs:
548         * DataSourceCacheExpiry.cs:
549         * DataSourceCapabilities.cs:
550         * DataSourceOperation.cs:
551         * TemplateContentType.cs:
552         * TemplateInstance.cs:
553         * UrlTypes.cs:
554         * VerificationConditionalOperator.cs:
555         * VerificationReportLevel.cs:
556         * VerificationRule.cs:
557         * XhtmlMobileDocType.cs: Added enumerations.
558
559 2004-07-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
560
561         * Control.cs: style. Reverted previous patch modification of
562         TemplateSourceDirectory (failed when the control is reparented). Use
563         HasControls() and Controls all over instead of _controls, as Controls
564         property and HasControls() might be overriden.
565
566 2004-07-27 Alon Gazit <along@mainsoft.com>
567
568         * Control.cs: Changed the implementation of TemplateSourceDirectory
569         and GetDefaultName(). replaced foreach statements with for statements, 
570         in order to improve performence.
571
572 2004-07-27 Alon Gazit <along@mainsoft.com>
573
574         * Page.cs: changed the implementation of GetViewStateString().
575         if the view state object is null there is no need to perform 
576         Serialization.
577         
578 2004-07-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
579
580         * TemplateControl.cs: don't include private methods of base classes when
581         auto-attaching events. Fixes bug 61569.
582
583 2004-07-14 Alon Gazit <along@mainsoft.com>
584
585         * HtmlTextWriter.cs: changed the Hashtables to case insensitive.         
586 2004-07-08 Pablo Baena <pbaena@gmail.com>
587
588         * Page.cs: added workaround for __doPostBack script on Netscape 4.xx
589         
590 2004-07-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
591
592         * Page.cs: added additional checks for saving/displaying trace data.
593
594         * PageParser.cs: removed checks for trace enabled in configuration
595         files.
596
597 2004-06-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
598
599         * ControlCollection.cs: when clearing the control collection, tell the
600         owners about the removal. Fixes bug #60800.
601
602 2004-06-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
603
604         * Page.cs: don't nullify _context after processing the request as there
605         are events not triggered yet. Fixes bug #60726.
606
607 2004-06-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
608
609         * HtmlTextWriter.cs: only create a closing tag for unknown tags. Fixes
610         bug #60681.
611
612 2004-06-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
613
614         * PageParser.cs:
615         * UserControlParser.cs: set the page/user control base type even when no
616         default directive provided. Fixes bug #60572.
617
618 2004-06-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
619
620         * PageParser.cs: use default trace settings from web.config and check
621         if trace is only requested for local connections. Fixes bug #60180.
622
623 2004-06-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
624
625         * SimpleWebHandlerParser.cs: implemented GetCompiledTypeFromCache. When 
626         we read the default directive, check the cache for the Type and if
627         present, don't keep reading and store the type found.
628
629         * WebHandlerParser.cs:
630         * WebServiceParser.cs: try GetCompiledTypeFromCache before actually
631         compiling.
632
633 2004-06-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
634
635         * Control.cs: properly fixed bug #59794.
636
637 2004-06-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
638
639         * Control.cs:
640         (ResolveUrl): fixed typo when dealing with relative urls. Closes bug
641         #59794.
642
643 2004-06-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
644
645         * SimpleWebHandlerParser.cs:
646         * TemplateParser.cs: pass the language when compiling from a file.
647
648 2004-06-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
649
650         * SimpleWebHandlerParser.cs: if we have a global.asax, move its
651         reference to the end to help mcs loading the assemblies. Fixes bug
652         #58768.
653
654         * TemplateParser.cs: same as above. Removed some kludges to workaround
655         loading assemblies from bin path that are now in the runtime. Don't
656         load the assemblies in bin if not needed, but still reference them
657         when compiling.
658
659 2004-06-07  Alon Gazit <along@mainsoft.com>
660         * Page.cs: Changed Page.ProcessPostData().
661         After the change ,the state of controls that aren't visible is saved 
662         during a postback.
663         
664 2004-06-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
665
666         * Page.cs: removed obsolete MonoTODO from RegisterOnSubmitStatement.
667
668 2004-06-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
669
670         * Page.cs: IsPostBack also returns true when method is GET and we have
671         viewstate information in the query string. Fixes bug #58151.
672
673 2004-06-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
674
675         * Page.cs: removed obsolete TODO. Only check if Trace is enabled, not
676         HttpRutime.TraceManager.
677
678         * PageParser.cs: for 'trace' we have 2 variables now.  Added support
679         for 'buffer' attribute.
680
681 2004-06-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
682
683         * Page.cs: implemented ClientTarget.
684         * PageParser.cs: support for clientTarget and check for validity.
685
686 2004-06-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
687
688         * Control.cs:
689         * Html32TextWriter.cs:
690         * HtmlTextWriter.cs:
691         * SimpleWebHandlerParser.cs:
692         * TemplateControl.cs: Added protected missing members and attributes.
693
694 2004-06-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
695
696         * ObjectStateFormatter.cs: use ObjectFormatter methods instead of
697         calling a protected method of another object.
698
699 2004-06-03  Atsushi Enomoto  <atsushi@ximian.com>
700
701         * ObjectStateFormatter.cs : csc build fix. Protected Read()/Write()
702           (of other objects) are called in TypeConverterFormatter.
703
704 2004-06-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
705
706         * ObjectStateFormatter.cs: before choosing the binary formatter, check
707         if the object type has a TypeConverter that can convert to/from string.
708         Fixes bug #59495.
709
710         * Page.cs: call GetViewStateString from outside the WriteLine. This
711         allows writing to the Response when getting the string without breaking
712         the HTML generated.
713
714 2004-06-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
715
716         * HtmlTextWriter.cs: render end tag for unknown tags.
717         Patch frmo Markus Krutner. Fixes bug #59466.
718
719 2004-05-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
720
721         * Page.cs: call DeterminePostBackMode only once per request. Patch by
722         Evain Jb.
723
724 2004-05-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
725
726         * Html32TextWriter.cs: stub contributed by Matthijs ter Woord
727         [meddochat].
728
729         * ObjectTagBuilder.cs: remove the HasBody override as MS does not have
730         that.
731
732 2004-05-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
733
734         * SimpleWebHandlerParser.cs:
735         * TemplateParser.cs: for the assembly names given in the 'assembly'
736         attribute, use LoadWithPartialName instead of Load.
737 2004-03-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
738
739         * Page.cs: return HttpContext.Current if _context has not yet been
740         assigned to. Fixes bug #55245.
741
742 2004-03-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
743
744         * TemplateParser.cs: don't add import statement or assemblies from
745         global.asax to every file. Fixes bug #55496.
746
747 2004-03-09  Juraj Skripsky <juraj@hotfeet.ch>
748
749         * DataBinder.cs: allow unquoted string expressions (e.g. "[test]") and
750         handle single quotes and a few corner cases correctly (see test cases).
751
752 2004-03-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
753
754         * TemplateControl.cs: fixed typos and added new method names to the set
755         of page events.
756
757 2004-02-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
758
759         * ControlBuilder.cs: added SetTagName().
760
761         * ObjectTagBuilder.cs: use SetTagName so that we can properly close
762         <object> builders if the closing tag is provided.
763
764 2004-02-16  Jackson Harper <jackson@ximian.com>
765
766         * Page.cs: Set cacheability for Location.DownStream.
767         
768 2004-02-10  Jackson Harper <jackson@ximian.com>
769
770         * TemplateParser.cs: Use full path if the assembly is in the
771         private bin directory. Patch by Gonzalo Paniagua Javier.
772         
773 2004-02-09  Jackson Harper <jackson@ximian.com>
774
775         * Page.cs: Set cacheability for server side caching.
776         
777 2004-01-30  Jackson Harper <jackson@ximian.com>
778
779         * Control.cs: Ensure that dynamically loaded controls are
780         initialized.
781         
782 2004-01-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
783
784         * ApplicationFileParser.cs: check for error in directives. Use
785         GlobalAsaxCompiler.CompileApplicationType for compiling.
786         
787         * ObjectTagBuilder.cs: load the Type and check for errors.
788
789         * TemplateParser.cs: add assemblies and imports from global.asax.
790
791         Now we properly create accessors for session and application objects in
792         the application itself, pages and controls. First step for fixing
793         bug #53387.
794
795 2004-01-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
796
797         * TemplateControl.cs: small speedup for WireUpautomaticEvents. Thanks
798         to Eric Lindvall for pointing this out.
799
800 2004-01-15  Jackson Harper <jackson@ximian.com>
801
802         * TemplateParser.cs: Detect if we are parsing a control or page
803         properly.
804         * Page.cs: vary by params and vary by headers can be null now.
805         
806 2004-01-15  Martin Willemoes Hansen  <mwh@sysrq.dk>
807
808         * HtmlTextWriter.cs: Fixed OutputTab routine to generate correct
809         indention.
810
811 2004-01-14  Jackson Harper <jackson@ximian.com>
812
813         * Page.cs: If we have a postback that wasn't sent through a
814         postback script (ie user hit submit on a input type=submit) call
815         Validate so page validation occurs. This fixes bug #52770.
816         
817 2004-01-14  Jackson Harper <jackson@ximian.com>
818
819         * Page.cs: Don't tell the response to cache anymore. This is done
820         when the cacheability is modified by a callback. Set the cache's
821         duration.
822         
823 2004-01-14  Jackson Harper <jackson@ximian.com>
824
825         * TemplateParser.cs: If varybyparam is set to "none" make it null
826         so we dont get a param named null in the outputcache key.
827         
828 2004-01-14  Jackson Harper <jackson@ximian.com>
829
830         * BasePartialCachingControl.cs: Use varyby attributes in key
831         generation.
832         
833 2004-01-14  Jackson Harper <jackson@ximian.com>
834
835         * TemplateParser.cs: Add all the outputcache attribute error
836         messages.
837         
838 2004-01-13  Jackson Harper <jackson@ximian.com>
839
840         * TemplateParser.cs: Add VaryByControls and Shared output cache
841         properties. These are not assigned yet.
842         * TemplateControlParser.cs: Do not ignore the OutputCache
843         attribute.
844         * BasePartialCachingControl.cs: Initial implementation. Keys are
845         still not created properly.
846         * StaticPartialCachingControl.cs: Assign properties in base class,
847         implement CreateControl.
848         
849 2004-01-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
850
851         * ApplicationFileParser.cs: adde DefaultBaseTypeName property.
852
853         * PageParser.cs: support validateRequest.
854
855         * TemplateControlParser.cs: get default values from system.web/pages
856         section.
857
858         * TemplateParser.cs: added separate method for changing base type
859         (Inherits or system.web/pages).
860         
861         * UserControlParser.cs: support system.web/pages defined base type.
862
863 2004-01-11  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
864
865         * UserControl.cs: Added missing attribute, implemented method
866         * Page.cs: Added missing attribute, implemented method
867
868 2004-01-10  Jackson Harper <jackson@ximian.com>
869
870         * Page.cs: Handle trace being enabled in the config file.
871         
872 2004-01-10  Jackson Harper <jackson@ximian.com>
873
874         * Page.cs: Save trace data before rendering it.
875         * System.Web.dll.sources: Add TraceData.cs
876         
877 2004-01-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
878
879         * Page.cs: removed a couple of MonoTODO on methods we're not gonna
880         implement. Applied patch from Jan Jaros (mono-bug@jerryweb.info) to
881         ensure that Unload event is raised. Fixes bug #52555.
882
883 2004-01-02  Zoltan Varga  <vargaz@freemail.hu>
884
885         * KeyedList.cs: 'private' is not allowed on explicit interface 
886         implementations. Fixes 1.2 build.
887
888 2003-12-31  Jackson Harper <jackson@ximian.com>
889
890         * TemplateControlParser.cs: When registering tag prefixs make sure
891         the file exists and throw the correct error if it does not.
892         
893 2003-12-25  Jackson Harper <jackson@ximian.com>
894
895         * Page.cs: Throw error if the session is accessed when sessions
896         are disabled.
897         
898 2003-12-18  Jackson Harper <jackson@ximian.com>
899
900         * Page.cs: Write Trace info.
901         
902 2003-12-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
903
904         * LosFormatter.cs: new ctor for 1.1. The default ctor is public.
905         * Page.cs: added ViewStateUserKey and made RegisterclientScriptFile
906         internal.
907         * PageParser.cs: the ctor is public.
908         * PartialCachingAttribute.cs: added new ctor and Shared property.
909
910 2003-12-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
911
912         * Page.cs: assign the ErrorPage to the context if we get an exception
913         when processing the page which only calls Unload.
914
915         * PageParser.cs: handle ErrorPage.
916
917 2003-12-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
918
919         * ObjectStateFormatter.cs: added formatters for Unit and FontUnit, which
920         are not [Serializable]. Fixes bug #52244.
921
922 2003-12-16  Jackson Harper <jackson@ximian.com>
923
924         * Page.cs: Render trace data when tracing is enabled.
925         
926 2003-12-15  Jackson Harper <jackson@ximian.com>
927
928         * PageParser.cs: Add Trace and Trace mode attributes.
929         
930 2003-12-15  Jackson Harper <jackson@ximian.com>
931
932         * Page.cs: Use the context trace object.
933         
934 2003-12-14  Alon Gazit <along@mainsoft.com>
935         * AttributeCollection.cs: Changed AttributeCollection.Render().
936         After the change attributes ,that their value is null, aren't 
937         rendered.
938
939 2003-12-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
940
941         * Control.cs: remove a few dangling ^M, don't set values for fields
942         that has the default value. If Visible is modified and we're tracking
943         viewstate, save and restore it. Fixes bug #48689.
944
945 2003-12-11  Jackson Harper <jackson@ximian.com>
946
947         * Control.cs: Give null for the ID if it hasn't been explicitly
948         set. This fixes bug #51520.
949         
950 2003-12-08  Jackson Harper <jackson@ximian.com>
951
952         * PageParser.cs: Ignore the SmartNavigation attribute for now.
953         
954 2003-12-05  Jackson Harper <jackson@ximian.com>
955
956         * DataBinder.cs (GetIndexedPropertyValue): Check if container is
957         an IList and use a cast instead of reflection to retrieve the item
958         if it is. Fixes bug #51759.
959         
960 2003-12-04  Alon Gazit <along@mainsoft.com>
961         * Page.cs: Changed Page.ID so it will call Control.ID.
962         Fixed Bug 51682.          
963
964 2003-12-02  Jackson Harper <jackson@ximian.com>
965
966         * Page.cs: Implemented registered array declarations. Patch by
967         Benjamin Jemlich <pcgod@gmx.net>
968         
969 2003-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
970
971         * TemplateParser.cs: basic check for 'classname' attribute and added
972         patch by pcgod@gmx.net for bug #51568, which fixes automatic class
973         names for pages starting with a number.
974
975 2003-11-30 Ben Maurer  <bmaurer@users.sourceforge.net>
976
977         * LosFormatter.cs: Use ObjectStateFormatter. Pretty big size
978         reduction.
979
980         * ObjectStateFormatter.cs: Comment out tracing.
981
982 2003-11-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
983
984         * Page.cs: fixed UICulture, LCID and Culture. Set the thread
985         [UI]Culture before processing the request.
986
987         * PageParser.cs: read Culture, UICulture and LCID attributes. Added
988         properties for these. Partially contributed by Mohammad Damt.
989
990         Fixes bug #51511.
991
992 2003-11-27  Jackson Harper <jackson@ximian.com>
993
994         * TemplateParser.cs: Ignore aspCompat attribute. This fixes bug
995         51434.
996         
997 2003-11-22 Ben Maurer  <bmaurer@users.sourceforge.net>
998
999         * ObjectStateFormatter.cs: Fix bug when reading small ints.
1000         Add some tracing so we can see what is going on.
1001
1002 2003-11-21  Jackson Harper <jackson@ximian.com>
1003
1004         * Page.cs: Set vary by params when cache location is Server.
1005         
1006 2003-11-21 Ben Maurer  <bmaurer@users.sourceforge.net>
1007
1008         * ObjectStateFormatter.cs: v2 file. In v1.x this will be
1009         internal as LosFormatter will eventually use it to save
1010         the view state.
1011
1012 2003-11-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1013
1014         * PersistChildrenAttribute.cs:
1015         * PersistenceModeAttribute.cs: implemented.
1016
1017         * TODO: Removed file.
1018         * OutputCacheLocation.cs:
1019         * TemplateControlParser.cs:
1020         * HtmlInputFile.cs: class status based fixes.
1021
1022 2003-11-19  Jackson Harper <jackson@ximian.com>
1023
1024         * Page.cs: Always set the cache expire time. Tell the response to
1025         cache itself for server side cached pages.
1026         
1027 2003-11-19  Jackson Harper <jackson@ximian.com>
1028
1029         * Control.cs: Remove ResolveBaseUrl. ResolveUrl does the same
1030         thing, some corner cases still need work though. Was this the
1031         shortest lived method in the history of mono?
1032         
1033 2003-11-19  Jackson Harper <jackson@ximian.com>
1034
1035         * Control.cs: New method for resolving urls that use ~/ to denote
1036         the applications base directory.
1037         
1038 2003-11-19  Jackson Harper <jackson@ximian.com>
1039
1040         * TemplateParser.cs: Fix typo in error message.
1041                 
1042 2003-11-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1043
1044         * TemplateControlParser.cs: support @Reference. Fixes bug #49572. Thanks
1045         to Sanjay Gupta.
1046
1047 2003-11-19  Todd Berman  <tberman@gentoo.org>
1048
1049         * KeyedList.cs:
1050         * KeyedListEnumerator.cs: New v2 implementations.
1051
1052 2003-11-17 Ben Maurer  <bmaurer@users.sourceforge.net>
1053
1054         * StateManagedCollection.cs: Implement.
1055
1056 2003-11-13  Jackson Harper  <jackson@ximian.com>
1057
1058         * Page.cs: Initial implementation of InitOutputCache.
1059         * TemplateParser.cs: Page OutputCache options
1060         
1061 2003-11-09 Ben Maurer  <bmaurer@users.sourceforge.net>
1062
1063         * HierarchicalDataSourceControl.cs: Implement.
1064
1065 2003-11-09 Ben Maurer  <bmaurer@users.sourceforge.net>
1066
1067         * XPathBinder.cs: Implemented.
1068
1069 2003-11-08 Ben Maurer  <bmaurer@users.sourceforge.net>
1070
1071         * DataSourceView.cs:
1072         * IDataSource.cs:
1073         * ListSourceHelper.cs:
1074         * DataSourceControl.cs:
1075         * HierarchicalDataSourceView.cs:
1076         * IHierarchicalDataSource.cs: Move v2 stuff.
1077
1078 2003-11-07 Jackson Harper <jackson@ximian.com>
1079
1080         * Control.cs (ResolveUrl): Special case for urls that consist of
1081         only a page anchor. ie <a href="#top">. This fixes bug #50165.
1082         
1083 2003-11-07 Ben Maurer  <bmaurer@users.sourceforge.net>
1084
1085         * IHierarchicalEnumerable.cs:
1086         * IHierarchyData.cs:
1087         * INavigateUIData.cs: New v2 interfaces.
1088         
1089 2003-11-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1090
1091         * Page.cs: patch by Alon Gazit <along@mainsoft.com> to remove extra
1092         space in generated javascript.
1093
1094 2003-11-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1095
1096         * LosFormatter.cs: encoding updates. 
1097         * Page.cs: implemented CodePage and ContentType.
1098         * PageParser.cs: handle CodePage, ContentEncoding and ResponseEncoding
1099         attributes.
1100
1101 2003-11-04 Ben Maurer  <bmaurer@users.sourceforge.net>
1102
1103         * Control.cs (GetWebResourceUrl): new v2 function
1104         * Page.cs (GetWebResourceUrl): ditto.
1105         make the JS we generate work with moz if the form is not a child
1106         of document.
1107         * WebResourceAttribute.cs: Added, new v2 attribute.
1108
1109 2003-10-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1110
1111         * DesignTimeTemplateParser.cs: added FIXME related to PageParser.
1112
1113         * PageParser.cs: initialize the parser in the constructor, not just
1114         before compiling and reference the application assembly.
1115
1116         * SimpleWebHandlerParser.cs: reference the assembly that contains the
1117         application Type.
1118
1119         * TemplateControl.cs:
1120         * TemplateControlParser.cs: fix BenM #1 bug. Now we pass correct virtual
1121         path and physical path when compiling a user control.
1122         
1123         * TemplateParser.cs: new AddApplicationAssembly ().
1124         * UserControlParser.cs: now we get valid values in the ctor.
1125
1126         Referencing the application assembly fixes bug #49652.
1127         
1128
1129 2003-10-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1130
1131         * TemplateControl.cs: moved NoParamsInvoker class to its own file.
1132
1133 2003-10-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1134
1135         * BaseParser.cs: added CompilationConfig property.
1136
1137         * TemplateParser.cs:
1138         * SimpleWebHandlerParser.cs: added CompilationConfig property.
1139         Don't hardcode assembly names any more, assemblies in bin are added
1140         depending on the configuration. The default language is also taken
1141         from the configuration.
1142
1143 2003-10-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1144
1145         * LosFormatter.cs: fixed bug #49604. Patch by yaronsh@mainsoft.com.
1146
1147 2003-10-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1148
1149         * Control.cs: removed some debug lines.
1150         * Page.cs: implemented RegisterOnSubmitStatement
1151         * TemplateControl.cs: fixed wire up for methods with no parameters.
1152
1153 2003-10-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1154
1155         * PageParser.cs: ignore ValidateRequest by now.
1156
1157 2003-10-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1158
1159         * System.Web.UI/TemplateControl.cs: support for wiring up events without
1160         parameters.
1161
1162 2003-10-08  Pedro Martnez Juli  <yoros@wanadoo.es>
1163
1164         * PageParser.cs: drop some useless code.
1165
1166 2002-10-29  Gaurav Vaish <gvaish_mono AT lycos.com>
1167
1168         * Utils.cs   : GetScriptLocation(HttpContext) - Partial Implementation.
1169
1170 2003-10-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1171
1172         * System.Web.UI/PageParser.cs:
1173         * System.Web.UI/TemplateControlParser.cs: honour the input file given
1174         as argument.
1175
1176 2003-09-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1177
1178         * Control.cs:
1179         (ClearChildViewState): doh! Don't clear control viewstate but the
1180         viewstate of possible children.
1181         (LoadViewStateRecursive): load viewstate even when control is not
1182         visible.
1183         Fixes bug #49024.
1184         The rest are just dangling ^M removed.
1185
1186         * DataBoundLiteralControl.cs:
1187         (LoadViewState): we get an object [], not a string [].
1188
1189 2003-09-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1190
1191         * Control.cs: implemented ClearChildViewState ().
1192
1193 2003-09-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1194
1195         * Page.cs: store unique IDs for controls requiring postback. Fixes bug
1196         #47985.
1197
1198 2003-09-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1199
1200         * SimpleWebHandlerParser.cs: add the ashx/asmx file itself to the
1201         dependencies so that it's recompiled when changed.
1202
1203 2003-09-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1204
1205         * LosFormatter.cs: fixed Deserialize for empty viewstate.
1206
1207 2003-08-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1208
1209         * Page.cs: check if controls that require postback have
1210         been changed by an event and register them to be notified of data
1211         changed event.
1212
1213 2003-08-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1214
1215         * Control.cs: patch by yaronshkop@hotmail.com (Yaron Shkop) that fixes
1216         bug #47866.
1217
1218 2003-08-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1219
1220         * LosFormatter.cs: handle Unit and FonrUnit as special cases as they
1221         are not serializable. Fixes bug #47784.
1222
1223 2003-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1224
1225         * Control.cs: index the viewstates saved by the control position, not
1226         the control name. Fixes bug #47697.
1227
1228 2003-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1229
1230         * ControlCollection.cs:
1231         * EmptyControlCollection.cs: create a minimum ArrayList for this.
1232
1233         * BaseParser.cs: added setter for BaseVirtualDir.
1234
1235         * Page.cs: fixed message when restoring view state fails.
1236         * UserControlParser.cs: set the BaseVirtualDirectory to handle the case
1237         when a relative path to the control is given. Fixes bug #47685.
1238
1239 2003-08-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1240
1241         * Control.cs: when we load the viewstate for a control that has children
1242         viewstates and the child is not found, keep its viewstate around and
1243         wait until the child is added to load the viewstate. Fixes bug #47697.
1244
1245 2003-08-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1246
1247         * TemplateControl.cs: more Delegate.CreateDelegate fixes.
1248
1249 2003-08-01  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1250
1251         * PartialCachingControl.cs: is not abstract
1252
1253 2003-08-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1254
1255         * SimpleHandlerFactory.cs: implemented GetHandler.
1256         * WebHandlerParser.cs: new file that parses .ashx files.
1257
1258 2003-07-30  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1259
1260         * PersistenceModeAttribute.cs: Fixed wrong AttributeUsage
1261
1262 2003-07-30  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1263
1264         * UserControl.cs: Added attribute
1265         * BasePartialCachingControl.cs: New class and paritally implemented
1266         * DesignerDataBoundLiteralControl.cs: New class and implemented
1267         * DesignTimeTemplateParser.cs:
1268         * PartialCachingControl.cs:
1269         * StaticPartialCachingControl.cs: New class and paritally implemented
1270
1271 2003-07-27  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1272
1273         * ApplicationFileParser.cs: Fixed signature
1274         * DesignTimeParseData.cs: Added missing properties, implemented
1275         * Page.cs: Added attributes
1276         * PageParser.cs:
1277         * TemplateControlParser.cs:
1278         * TemplateParser.cs:
1279         * UserControlParser.cs: Fixed signature
1280
1281 2003-07-17  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1282
1283         * HtmlControlPersistableAttribute.cs: Added
1284         * IgnoreUnknownContentAttribute.cs: Added
1285
1286 2003-07-17  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1287
1288         * IUserControlDesignerAccessor.cs: Added and implemented
1289         * Control.cs: Missing member added, added all attributes
1290         * Page.cs: Added attributes, fixed signature
1291         * TemplateControl.cs: Fixed signature, added all attributes
1292         * UserControl.cs: Added all attributes, added and implemented missing interface
1293         
1294 2003-07-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1295
1296         * ControlCollection.cs: fixed bug #46472.
1297
1298 2003-07-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1299
1300         * SimpleWebHandlerParser.cs: implemented GetTypeFromBin.
1301
1302 2003-07-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1303
1304         * SimpleWebHandlerParser.cs: updated to new compilation interface.
1305
1306         * TemplateParser.cs: use the new parameter when compiling.  
1307
1308 2003-07-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1309
1310         * Page.cs: also keep the value for the second try on handling postback
1311         events.
1312
1313 2003-05-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1314
1315         * BaseParser.cs: fixed MapPath for non-rooted files.
1316         * PageParser.cs: don't pass a non-virtual file around.
1317         * TemplateControlParser.cs: InputFile uses MapPath now.  Take care of
1318         the exception teh may be throw by MapPath on an invalid path.
1319
1320         * TemplateParser.cs: removed unused method.
1321         * UserControlParser.cs: modified inputfile. The result is the same, but 
1322         this one is better.
1323
1324 2003-05-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1325
1326         * RootBuilder.cs: throw exception when the tagprefix is not valid or
1327         not found.
1328
1329 2003-05-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1330
1331         * TemplateControlParser.cs: return after processing @Register.
1332
1333 2003-05-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1334
1335         * TemplateParser.cs: Added support for server side includes.
1336
1337 2003-05-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1338
1339         * TemplateControl.cs: fixed the flags used to find the methods that
1340         are automatically hooked up on events.
1341
1342         * TemplateParser.cs: don't compile a source file directly.  Use the
1343         cache instead.
1344
1345 2003-05-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1346
1347         * BaseParser.cs: Location property is now here. Added a couple of
1348         convenience methods to throw a ParseException.
1349
1350         * TemplateParser.cs:
1351         * TemplateControlParser.cs:
1352         * PageParser.cs: throw ParseException where appropiate.
1353
1354 2003-05-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1355
1356         * ApplicationFileParser.cs: use the generator to actually parse the
1357         file.
1358
1359         * ControlBuilder.cs: small fix in NamingContainerType because
1360         TemplateBuilders have a null ControlType. When a control is appended
1361         to a parent, assign the child's parent.
1362
1363         * UserControlParser.cs: fixed the value of InputFile.
1364
1365 2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1366
1367         * ApplicationFileParser.cs: store the Context and override
1368         BaseVirtualDir so that it's the application path.
1369
1370         * BaseParser.cs: removed CurrentVirtualPath property.
1371
1372         * TemplateControlParser.cs: use BaseVirtualDir.
1373
1374         * UserControlParser.cs: removed CurrentVirtualPath.
1375
1376 2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1377
1378         * TemplateParser.cs: always reference all the assemblies in bin
1379         directory.
1380
1381 2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1382
1383         * ApplicationFileParser.cs: it works now. Prior to these changes, we
1384         were using the compiler directly.
1385
1386         * BaseParser.cs: added some useful properties and methods.
1387
1388         * CodeBuilder.cs: use ILocation.
1389         * CodeRenderBuilder.cs: use ILocation.
1390         * CollectionBuilder.cs: use the RootBuilder to map tag names into Types.
1391
1392         * ControlBuilder.cs: made it useful.
1393
1394         * DataBindingBuilder.cs: the control type for data bound text is
1395         DataBoundLiteralControl now.
1396
1397         * ObjectTagBuilder.cs: store some object tag attributes.
1398
1399         * PageParser.cs: handle page-only directives.
1400
1401         * RootBuilder.cs: bah.
1402         * SimpleWebHandlerParser.cs: made it dummy.
1403         * TemplateControl.cs: Modified file.
1404
1405         * TemplateControlParser.cs: handle directives that are common to pages
1406         and user controls.
1407
1408         * TemplateParser.cs: utility methods and handling of directives that
1409         are common to app, page and user controls.
1410
1411         * UserControl.cs: added ControlBuilderAttribute.
1412
1413         * UserControlControlBuilder.cs: builder for user controls.
1414         * UserControlParser.cs: use the new interfaces.
1415
1416 2003-04-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1417
1418         * ControlBuilder.cs: line and fileName are protected now.
1419
1420         * CodeBuilder.cs: base class for the next 2 files.
1421         * CodeRenderBuilder.cs: builder for code render.
1422         * DataBindingBuilder.cs: builder for data binding.
1423
1424 2003-04-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1425
1426         * ITagNameToTypeMapper.cs: made it internal.
1427
1428         * ObjectTagBuilder.cs: builder for <object runat="server"> tag.
1429         * ObjectTag.cs:
1430         * RootBuilder.cs: initial builder.
1431
1432 2003-04-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1433
1434         * CollectionBuilder.cs:
1435         * TemplateBuilder.cs: new classes derived from ControlBuilder that
1436         represent a property or a ITemplate.
1437         
1438         * ControlBuilder.cs: implemented all the missing bits.
1439         * TemplateParser.cs: added mapping from tag name to Type feature.
1440
1441 2003-02-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1442
1443         * Control.cs: have i definitely fixed naming container stuff this time?
1444
1445         * LosFormatter.cs: activated binary serialization code.
1446
1447 2003-02-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1448
1449         * Control.cs:
1450         (AddedControl): fixed default id assignation when the sequence of
1451         AddedControl until it's included in the page or one of its controls
1452         does not pass through a naming container.
1453
1454 2003-02-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1455
1456         * Control.cs: give different default names depending on the place where
1457         it is assigned. Implemented ResolveURl (no more ~ rendered in
1458         attributes!).
1459
1460 2003-02-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1461
1462         * Control.cs: when adding a control, assign default names to th
1463         children that don't have one.
1464
1465 2003-02-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1466
1467         * SimpleWebHandlerParser.cs: modified to use the new parser interface.
1468
1469 2003-01-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1470
1471         * Control.cs: some more tweaks to naming containers stuff.
1472         * DataBinder.cs: don't throw exception if the container is null.
1473
1474         * Page.cs: now we can render client scripts, startup scripts and hidden
1475         fields. Only render __VIEWSTATE if there is someone that will take care
1476         of it.
1477         (RaisePostBackEvents): first try the last one that required raise event,
1478         then try __EVENTTARGET.
1479
1480 2003-01-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1481
1482         * Control.cs: fixes in UniqueID, FindControl, AddedControl,
1483         UnloadRecursive, InitRecursive. Reduced the size of __VIEWSTATE. Made
1484         FindControl work with NamingContainers.
1485         
1486         * ControlCollection.cs: notify the parent when clearing the collection.
1487
1488         * LosFormatter.cs: Added debugging output and generate a valid
1489         viewstate even for unknown types.
1490
1491         * Page.cs: GetPostBackEventReference now uses UniqueID. Reduced
1492         viewstate.
1493
1494 2003-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1495
1496         * Page.cs: make it fire the LoadData related events also for controls
1497         such as ImageButton, whose variable(s) in the query string are of the
1498         form ctrl_name.x and only fire them once per control.
1499
1500 2003-01-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1501
1502         * DataBinder.cs:
1503         (GetPropertyValue): don't try to get the property as indexed
1504
1505 2003-01-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1506
1507         * DataBinder.cs: use TypeDescriptor to get the properties and their
1508         values.
1509
1510 2003-01-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1511
1512         * Control.cs:
1513         (AddedControl): take the children to the same state of the parent.
1514         (InitRecursive): set the page of the children.
1515
1516         * Page.cs: removed one line (it's done a few lines above).
1517
1518         * UserControl.cs:
1519         (OnInit): always call InitializeAsUserControl
1520         (InitializeAsUserControl): sets the page for the control.
1521
1522 2003-01-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1523
1524         * Control.cs: fixed bug #36037.
1525
1526 2002-12-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1527
1528         * BaseParser.cs: a couple of path fixes to make it work
1529         when the page is not in the root directory.
1530
1531 2002-12-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1532
1533         * Control.cs: fixed PreRenderRecursiveInternal. Thanks to kojoadams for
1534         reporting the bug.
1535
1536 2002-12-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1537
1538         * BaseParser.cs: use MapPath and context to locate files.
1539         * Control.cs: implemented MapPathSecure.
1540         * TemplateControl.cs: use UrlUtils to generate the path.
1541         * TemplateControlParser.cs: use the context and MapPath.
1542         * UserControl.cs: implemented MapPath.
1543         * UserControlParser.cs: added context parameter to constructor.
1544
1545 2002-12-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1546
1547         * Control.cs: implemented MapPathSecure.
1548         * Page.cs: fixed Server property.
1549
1550 2002-12-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1551
1552         * DataBinder.cs: try the indexer if the property is not found in
1553         GetPropertyValue ().
1554
1555 2002-12-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1556
1557         * Control.cs: added AutoEventWireup internal property.
1558
1559         * Page.cs: removed page events wire up from here.
1560
1561         * TemplateControl.cs: new method WireupAutomaticEvents to hook up page
1562         and user controls events.
1563
1564         * TemplateControlParser.cs: process the options that are applicable
1565         once we have the instance of the control.
1566
1567         * TemplateParser.cs: also stores the options.
1568
1569         * UserControl.cs: hook up events before initializing the control.
1570
1571
1572 2002-12-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1573
1574         * Control.cs: new method to set bindingContainer value.
1575         * TemplateControl.cs: added controls are not binding containers.
1576
1577 2002-12-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1578
1579         * Control.cs: implemented TemplateSourceDirectory.
1580         * TemplateControl.cs: implemented LoadControl and LoadTemplate.
1581
1582 2002-11-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1583
1584         * UserControl.cs: fixed SetAttribute.
1585         * UserControlParser.cs: set the correct base type.
1586
1587 2002-11-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1588
1589         * TemplateParser.cs: fixed BaseType.
1590         * UserControlParser.cs: helper class to compile user controls.
1591
1592 2002-11-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1593
1594         * LosFormatter.cs: added DateTime to special types.
1595
1596 2002-11-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1597
1598         * LosFormatter.cs: added array serialization support. Disabled binary
1599         serialization and add some debugging code.
1600
1601         * StateBag.cs: the length of the list of value can be less than the
1602         length if the list of keys when remaining values are null.
1603
1604 2002-11-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1605
1606         * Page.cs: return something useful in GetPostBackClientEvent.
1607
1608 2002-11-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1609
1610         * Page.cs: implemented FileDependecies and made it protected.
1611
1612 2002-10-31  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1613
1614         * Control.cs: save control names instead of the controls
1615         themselves to the ViewState.
1616
1617         * LosFormatter.cs: added support for serializing unknown
1618         types. BinaryFormatter does not work so you better don't store anything
1619         of unknown Type in ViewState.
1620
1621         * Page.cs: GetViewStateString works now using LosFormatter.
1622         Complete "Control execution lifecycle" by unloading all the child
1623         controls. Check for null in RaisePostBackEvents.
1624         LoadPageViewStateFromPersistenceMedium uses LosFormatter too.
1625
1626 2002-10-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1627
1628         * DataBinder.cs: implemented Eval and GetIndexedPropertyValue methods.
1629
1630 2002-10-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1631
1632         * LosFormatter.cs: Use WebEncoding.Encoding.
1633
1634         * Control.cs:
1635         * Page.cs: fixed namespace.
1636
1637 2002-10-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1638
1639         * Page.cs: set the context in ProcessRequest. Added a few trace calls.
1640         * Control.cs: added some trace information.
1641
1642 2002-10-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1643
1644         * SimpleHandlerFactory.cs: new handler for .ashx files.
1645
1646 2002-09-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1647
1648         * System.Web.UI/PageHandlerFactory.cs: new file.
1649         * System.Web.UI/PageParser.cs:
1650         * System.Web.UI/TemplateControlParser.cs: we are now able to compile
1651         pages and use HttpApplication, HttpRuntime and SimpleWorkerRequest.
1652
1653 2002-09-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1654
1655         * Control.cs: implemented ObBubbleEvent.
1656         * Page.cs: temporary workaround to make POST work with xsp server.
1657
1658 2002-09-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1659
1660         * Page.cs: fixed InvokeEventMethod now that Type.GetMethod does not
1661         return pvt methods.
1662
1663 2002-09-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1664
1665         * SimpleWebHandlerParser.cs: New file.
1666         * WebServiceParser.cs: New file.
1667
1668 2002-08-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1669
1670         * LosFormatter.cs: almost fully implemented.
1671
1672 2002-08-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1673
1674         * CompiledTemplateBuilder.cs: InstantiateIn is virtual.
1675         * EmptyControlCollection.cs: throw correct exception.
1676         * LosFormatter.cs: stubbed out.
1677         * OutputCacheLocation.cs: little fix.
1678
1679 2002-08-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1680
1681         * System.Web.UI/ApplicationFileParser.cs:
1682         * System.Web.UI/BaseParser.cs:
1683         * System.Web.UI/PageParser.cs:
1684         * System.Web.UI/TemplateControl.cs:
1685         * System.Web.UI/TemplateControlParser.cs:
1686         * System.Web.UI/TemplateParser.cs: first steps to move xsp into
1687         System.Web.
1688
1689 2002-07-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1690
1691         * Page.cs: request to render postback script can be after form started
1692         rendering.
1693
1694 2002-07-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1695
1696         * Page.cs: added more page events to invoke automagically if some
1697         methods are defined.
1698
1699 2002-07-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1700
1701         * Control.cs:
1702         (SaveViewState): save state even when control is not visible.
1703         (SaveViewStateRecursive):
1704         (LoadViewStateRecursive): made internal.
1705
1706 2002-07-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1707
1708         * Page.cs: improved event raising to allow client postback for a wider
1709         variety of actions (clicking an hyperlink, ...).
1710
1711 2002-07-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1712
1713         * UserControl.cs: implemented Load/SaveViewState.
1714
1715 2002-07-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1716
1717         * AttributeCollection.cs:
1718         (Add): handle 'style' through styleCollection.
1719
1720         * CssStyleCollection.cs:
1721         (fillStyle): renamed to FillStyle and made it internal.
1722
1723         * Page.cs:
1724         (GetViewStateString): fixed, broken after other recent changes.
1725         (ProcessPostData): allow a second try for postback data after OnLoad.
1726         (ProcessRequest): clear controls collection, removed call to 
1727         UnloadRecursive.
1728
1729 2002-07-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1730
1731         * Control.cs: uncommented Dispose.
1732
1733         * Page.cs:
1734         (DeterminePostBackMode): more checkings.
1735         (GetPostBackClientHyperLink): implemented.
1736         (GetPostBackEventReference): added some comments with the HTML that MS
1737         generates for that.
1738         (ProcessRequest): fixed processing order. The page is unloaded after
1739         a request and regenerated from view state on subsequents posts.
1740
1741 2002-07-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1742
1743         * Control.cs: fixed related to ViewState. Added RemovedControl.
1744
1745         * ControlCollection.cs: notify owner of control removal.
1746         
1747         * CssStyleCollection.cs: almost rewritten to make it render the style
1748         attribute after changes to it.
1749
1750         * Page.cs: follow the guidelines in 'Control execution lifecycle'.
1751         Removed Xml code.
1752
1753         * StateBag.cs: don't use IDictionary.GetEnumerator on the
1754         HybridDictionary: it makes the program give an InvalidCastException at
1755         runtime. Why?
1756
1757 2002-07-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1758
1759         * Page.cs: fire Init and Load events for all children.
1760
1761 2002-07-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1762
1763         * UserControl.cs: New file.
1764
1765 2002-07-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1766
1767         * ControlBuilderAttribute.cs: finished implementation.
1768
1769 2002-07-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1770
1771         * ConstructorNeedsTagAttribute.cs: the default constructor sets the
1772         property to false.
1773
1774 2002-07-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1775
1776         * System.Web.UI/AttributeCollection.cs: added CssStyleCollection.
1777
1778         * System.Web.UI/CssStyleCollection.cs: use a StateBag instead of a
1779         Hashtable. Added internal .ctor.
1780
1781         * System.Web.UI/DataBinding.cs: propertyType is a Type. Implemented
1782         Equals and GetHashCode.
1783
1784         * System.Web.UI/DataBoundLiteralControl.cs:
1785         (LoadViewState):
1786         (SaveViewState): implemented.
1787
1788         * System.Web.UI/Page.cs: FileDependencies is not public.
1789
1790         * System.Web.UI/ParseChildrenAttribute.cs: give a value to Default.
1791         (GetHashCode):
1792         (Equals):
1793         (IsDefaultAttribute): implemented.
1794
1795 2002-07-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1796
1797         * Control.cs: fixed Visible property.
1798         * Page.cs: fixed GetViewStateString.
1799
1800 2002-07-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1801
1802         * System.Web.UI/Page.cs:
1803         (GetViewStateString): new function to give the server access to the
1804         generated view state string.
1805         (Validate): d'oh!
1806
1807 2002-07-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1808
1809         * Control.cs:
1810         (SaveViewstateRecursive): implemented.
1811         (SaveViewState): fixed.
1812         (IParserAccessor.AddParsedSubObject): don't use 'this'.
1813
1814         * Page.cs: added code to save view state to an xml file.  It's not
1815         being used right now.
1816
1817 2002-06-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1818
1819         * System.Web.UI/LiteralControl.cs: 
1820         Fixes based on class status page:
1821         
1822                 - Add attributes (DefaultEvent, ParseChildren).
1823                 - Fix declarations.
1824                 - Explicitly implement some interfaces (IPostBackDataHandler
1825                 and IPostBackEventHandler).
1826                 - Implemented some missing methods.
1827
1828 2002-06-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1829
1830         * Control.cs: reimplemented FindControls.
1831
1832         * Page.cs:
1833         (.ctor): set the page for this control.
1834         (IsPostBack): return valid value.
1835         (DeterminePostBackMode): finished.
1836         (OnFormRender): render __VIEWSTATE (uses GetTypeHashCode()).
1837         (ProcessPostData): implemented. Raises change and postback events.
1838         (ProcessRequest): changed to support reuse of the instance.
1839         (RegisterRequiresPostBack): implemented.
1840
1841         * ValidatorCollection.cs: implemented all methods.
1842
1843 2002-06-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1844
1845         * Control.cs:
1846         * Page.cs: first attemp to save view state.
1847
1848         * HtmlForm.cs: don't render Action.
1849
1850 2002-06-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1851
1852         * Page.cs: implemented more properties using information we already
1853         have in Context.
1854         (OnFormRender):
1855         (OnFormPostRender):
1856         (VerifyRenderingInServerForm): implemented.
1857
1858 2002-06-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1859
1860         * Page.cs: changed InvokeEventMethod to use a GetMethod that works with
1861         out runtime. Renamed Page_Init and Page_Load.
1862
1863         After this, we can load a dll and render HTML in linux.
1864
1865 2002-06-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1866
1867         * Control.cs:
1868         (AddedControl): new function that is called whenever a control is
1869         added to a collection of controls in a container. It sets the defaults
1870         except for Page.
1871         
1872         * ControlCollection.cs: call AddedControl in Add/AddAt.
1873
1874         * DataBoundLiteralControl.cs: implemented constructor, Text, Render,
1875         SetStaticString and SetDataBoundString.
1876
1877         * Page.cs: removed SetDefaults.
1878
1879 2002-06-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1880
1881         * CompiledTemplateBuilder.cs: new file. Used in the code generated
1882         by xsp.
1883
1884         * Control.cs:
1885         (BindingContainer): implemented.
1886         (EnsureChildControls): avoid stack overflow.
1887
1888         * DataBinder.cs: implemented Eval and PropertyValue.
1889
1890 2002-06-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1891
1892         * HtmlTextWriter.cs: fixed style attributes rendering (almost the same
1893         bug as in regular attributes).
1894
1895 2002-06-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1896
1897         * Control.cs: implemented PreventAutoID.
1898
1899         * Page.cs:
1900         (SetDefaults): don't set ID automatically if Control.PreventAutoID has
1901         been called.
1902
1903 2002-06-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1904
1905         * Page.cs:
1906         (Validators): if the collection is null, create one.
1907         (GetPostBackEventReference 2): don't throw exception.
1908         (GetPostBackClientEvent): return a string with containing the method
1909         name, the control name and the argument.
1910
1911 2002-06-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1912
1913         * Page.cs: SetPage is now called SetDefaults and also sets a default 
1914         ID for controls that don't have one yet.
1915
1916 2002-06-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1917
1918         * Page.cs:
1919         (GetPostBackClient):
1920         (RegisterRequiresPostBack): don't throw NotImplementedException to
1921         keep going.
1922         (ProcessRequest): set the current page as the Page property for *all*
1923         the controls, not just the direct children of the page.
1924
1925 2002-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1926
1927         * Control.cs:
1928         (MapPathSecure): until security is implemented, return the same path
1929         received as argument.
1930         (RenderControl): call OnPreRender before rendering the control. So
1931         AdRotator can read its configuration file.Is there any other place
1932         where this should be done?
1933
1934         * HtmlTextWriter.cs:
1935         (AddAttribute): fixed. Now it really stores attributes.
1936         (RenderBeginTag): fixed a couple of bugs (little ones but hard to find).
1937
1938 2002-06-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1939
1940         * ControlCollection.cs:
1941         (AddAt): if index is -1 behave as a plain Add.
1942
1943 2002-06-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1944
1945         * Page.cs: for each child control to render, assign Control.Page.
1946         Probably also needed in HtmlContainerControl derived classes.
1947         
1948 2002-06-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1949
1950         * AttributeCollection.cs: don't need a Hastable. StateBag now works 
1951         fine and takes care of the details.
1952
1953         * Control.cs: added HasChildren property.
1954
1955         * StateBag.cs: fixed a couple of nasty bugs.
1956
1957 2002-06-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1958
1959         * Page.cs: run OnInit, OnLoad y PreRender before rendering the page.
1960         Invoke Page_Init and/or Page_Load if the user supplied them (though 
1961         this should depend on AutoEventWireUp attribute of Page directive).
1962
1963 2002-06-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1964
1965         * Control.cs: don't throw exception in ControlID. By now, it returns ID.
1966
1967         * Page.cs: 
1968         (ProcessRequest): implemented.
1969
1970 2002-06-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1971
1972         * System.Web.UI/Page.cs: finished stubbing out. Implemented some
1973         methods.
1974
1975 2002-06-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1976
1977         * Page.cs:
1978         (FileDependencies): now is public public.
1979         (EnableViewStateMAC): uncommented and made protected. 
1980         (GetTypeHashCode): added method.
1981         
1982 2002-05-24  Duncan Mak  <duncan@ximian.com>
1983
1984         * TemplateControl.cs (SetStringResourcePointer): Fixed typo.
1985
1986         * StateBag.cs (Item): Changed the visibility level of the this
1987         [object] indexer.
1988
1989         Misc. formatting edits, fixing some bugs introduced by the indentation.
1990
1991         * DataBinder.cs (Eval)
1992         (GetIndexedPropertyValue)
1993         (GetPropertyValue): Fixed return types.
1994
1995 2002-05-21  Miguel de Icaza  <miguel@ximian.com>
1996
1997         * HtmlTextWriter.cs: Use this to change the member instances.
1998
1999 2002-05-17  Duncan Mak  <duncan@ximian.com>
2000
2001         * AttributeCollection.cs: 
2002         * ControlCollection.cs: 
2003         * CssStyleCollection.cs: 
2004         * DataBindingCollection.cs: 
2005         * EmptyControlCollection.cs: Added missing Collection classes.
2006
2007 2002-05-17  Duncan Mak  <duncan@ximian.com>
2008
2009         * BaseParser.cs:
2010         * TemplateParser.cs:  Implemented. BaseParser is weird because
2011         there is no documentation on what it does.
2012
2013         * ControlBuilder.cs:
2014         
2015         * DataBinder.cs: 
2016         * DataBinding.cs: Added. 
2017
2018         * DataBoundLiteralControl.cs: 
2019         * Triplet.cs: Added.
2020
2021         * RenderMethod.cs: Added this delegate for Control.cs
2022
2023 2002-05-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2024
2025         * ValidationPropertyAttribute.cs: a couple of fixes to make it compile.
2026
2027 2002-05-14  Duncan Mak  <duncan@ximian.com>
2028
2029         * ValidationPropertyAttribute.cs: Added to CVS.
2030
2031 2002-05-10  Duncan Mak  <duncan@ximian.com>
2032
2033         * ConstructorNeedsTagAttribute.cs: 
2034         * ControlBuilderAttribute.cs: 
2035         * ImageClickEventArgs.cs: 
2036         * ParseChildrenAttribute.cs: 
2037         * PartialCachingAttribute.cs: 
2038         * PersistChildrenAttribute.cs: 
2039         * PersistenceModeAttribute.cs: 
2040         * TemplateContainerAttribute.cs: Added to CVS.
2041
2042         * PersistanceMode.cs: Removed, fixed typo.
2043         * PersistenceMode.cs: Replacing above.
2044
2045         * StateBag.cs (this): Fixed indexer, it takes a string as the
2046         index, not an object.
2047
2048         * ValidatorCollection.cs: Fixed typo, ValidatedCollection to ValidatorCollection. 
2049
2050         * Page.cs (Validators): return type should be ValidatorCollection,
2051         not ValidatedCollection.
2052
2053         * TagPrefixAttribute.cs: Added to CVS.
2054
2055 2002-05-07  Duncan Mak  <duncan@ximian.com>
2056
2057         * Utils.cs (GetClientValidatedEvent): Uncommented the 'Page' argument.
2058
2059 2002-03-26   Gaurav Vaish <gvaish@iitk.ac.in>
2060
2061         * DataBindingHandlerAttribute.cs
2062                                    - Completed
2063         * ToolboxDataAttribute.cs  - Completed
2064
2065 2002-01-03  Nick Drochak  <ndrochak@gol.com>
2066
2067         * DesignTimeParseData.cs: initialze static member to avoid compile
2068         error
2069         * PropertyConverter.cs: remove uneeded exception variables from
2070         catch blocks.
2071
2072 2002-01-02  Nick Drochak  <ndrochak@gol.com>
2073
2074         * DesignTimeParseData.cs: fix header to show correct class name
2075
2076 2001-12-21   Gaurav Vaish <gvaish@iitk.ac.in>
2077
2078         * StateBag.cs             - Completed
2079
2080 2001-12-19   Gaurav Vaish <gvaish@iitk.ac.in>
2081
2082         * Pair.cs                 - Small undocumented class. Completed.
2083
2084 2001-12-18   Gaurav Vaish <gvaish@iitk.ac.in>
2085
2086         * DesignTimeParseData.cs  - Initial implementation
2087         * StateBag.cs             - Initial implementation
2088
2089 2001-12-17   Gaurav Vaish <gvaish@iitk.ac.in>
2090
2091         * PropertyConverter.cs    - Undocumented class. Completed.
2092         * Utils.cs                - Undocumented, private class.
2093                                     Initial implementation
2094
2095 2001-08-28  Bob Smith  <bob@thestuff.net>
2096         * Control.cs: Figured out some undocumented API.
2097         * Added TODO.
2098         * BuildMethod.cs: Initial implementation.
2099         * BuildTemplateMethod.cs: Initial implementation.
2100         * HtmlTextWriterAttribute.cs: Initial implementation.
2101         * HtmlTextWriterStyle.cs: Initial implementation.
2102         * HtmlTextWriterTag.cs: Initial implementation.
2103         * IAttributeAccessor.cs: Initial implementation.
2104         * IDataBindingsAccessor.cs: Initial implementation.
2105         * ImageClickEventHandler.cs: Initial implementation.
2106         * INamingContainer.cs: Initial implementation.
2107         * IParserAccessor.cs: Initial implementation.
2108         * IPostBackDataHandler.cs: Initial implementation.
2109         * IPostBackEventHandler.cs: Initial implementation.
2110         * IStateManager.cs: Initial implementation.
2111         * ITagNameToTypeMapper.cs: Initial implementation.
2112         * ITemplate.cs: Initial implementation.
2113         * IValidator.cs: Initial implementation.
2114         * OutputCacheLocation.cs: Initial implementation.
2115         * PersistanceMode.cs: Initial implementation.
2116         * StateItem.cs: Initial implementation.
2117
2118 2001-08-27  Bob Smith  <bob@thestuff.net>
2119
2120         * Control.cs: Bug fixes and implementations.
2121
2122 2001-08-24  Bob Smith  <bob@thestuff.net>
2123
2124         * Control.cs: Bug fixes.
2125
2126 2001-08-23  Bob Smith  <bob@thestuff.net>
2127
2128         * Control.cs: More implementation. Events reworked for performance.
2129
2130 2001-08-22  Bob Smith  <bob@thestuff.net>
2131
2132         * LiteralControl.cs: Implemented.
2133         * Control.cs: Even more implementation (Events). What a beast.
2134
2135 2001-08-20  Bob Smith  <bob@thestuff.net>
2136
2137         * Control.cs: More implementation. Not done yet. Shutter.
2138
2139 2001-08-17  Bob Smith  <bob@thestuff.net>
2140
2141         * Control.cs: Partial implementation.