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