2007-12-13 Igor Zelmanovich <igorz@mainsoft.com>
[mono.git] / mcs / class / System.Web / System.Web.UI / ChangeLog
1 2007-12-13 Igor Zelmanovich <igorz@mainsoft.com>
2
3         * Page.cs:
4         - When Transfer/Execute is called with preserveForm=true, transferred 
5         page is not processed as PostBack but form collection is preserved.
6         - When Execute is called more than once, PreviousPage property is set 
7         correct.
8
9 2007-11-22  Marek Habersack  <mhabersack@novell.com>
10
11         * OutputCacheParameters.cs: added the VaryByContentEncoding
12         property.
13
14         * Page.cs: added new InitCache overload.
15
16         * TemplateParser.cs: added support for the VaryByContentEncodings
17         attribute of the OutputCache directive.
18
19 2007-11-19  Vladimir Krasnov  <vladimirk@mainsoft.com>
20
21         * Page.jvm.cs: IsMultiForm optimized, cached configuration call
22
23 2007-11-14  Marek Habersack  <mhabersack@novell.com>
24
25         * SimpleWebHandlerParser.cs: expect GetTypeFromBin to be called
26         with a fully qualified type name and act accordingly. Fixes bug
27         #341456.
28
29 2007-11-13 Igor Zelmanovich <igorz@mainsoft.com>
30
31         * ClientScriptManager.cs: 
32         Ensure a script resource is included once in multi form environment.
33
34 2007-11-07 Igor Zelmanovich <igorz@mainsoft.com>
35
36         * PageParser.cs: fixed initial value of tracemode.
37
38 2007-11-07 Igor Zelmanovich <igorz@mainsoft.com>
39
40         * Control.cs: removes '#define MONO_TRACE'.
41         It allows to run MONO in release mode without supplementary trace info. 
42
43 2007-11-07 Igor Zelmanovich <igorz@mainsoft.com>
44
45         * Page.cs: added missing trace information for NET_2_0
46
47 2007-11-06 Igor Zelmanovich <igorz@mainsoft.com>
48
49         * Page.cs:
50         * Page.jvm.cs:
51         affects TARGET_J2EE only:
52         validators state (isValid) is restored on GetBack.      
53
54 2007-11-06  Marek Habersack  <mhabersack@novell.com>
55
56         * Page.cs: formatting
57
58 2007-11-05  Marek Habersack  <mhabersack@novell.com>
59
60         * ClientScriptManager.cs: EventStateFieldName is a constant now.
61
62         * Page.cs: use full control ids when processing post data. Fixes
63         bug #317615
64
65 2007-11-03  Marek Habersack  <mhabersack@novell.com>
66
67         * Control.cs: need to append a "/" to TemplateSourceDirectory
68         before calling VirtualPathUtility.Combine, in order to get the
69         correct physical path to the requested file. Combine looks for the
70         last occurrence of "/" to determine where the relative paths
71         should be joined.
72
73         * MinimizableAttributeTypeConverter.cs: don't throw on null value,
74         call the base class method in that case.
75
76         * SimpleWebHandlerParser.cs: don't NRE on a null assembly passed
77         to AddAssembly.
78         AddAssemblyByName must check the return value of
79         Assembly.LoadWithPartialName, as the method doesn't throw on
80         missing assembly, it returns null instead.
81
82         * ClientScriptManager.cs: eventValidationArray is serialized in an
83         optimized fashion, so that its serialized form occupies only as
84         many slots as were actually used. It may result in that an array
85         of 0 entries will be serialized and then
86         restored. EnsureEventValidationArray takes that into consideration
87         now.
88
89 2007-11-01  Marek Habersack  <mhabersack@novell.com>
90
91         * Page.cs, ObjectStateFormatter.cs: use the new
92         MachineKeySectionUtils class wherever necessary.
93
94 2007-10-29  Marek Habersack  <mhabersack@novell.com>
95
96         * TemplateParser.cs: add the file pointed to by the Src or
97         CodeFile attributes to the list of page cache dependencies.
98
99         * PageParser.cs, UserControlParser.cs: Add the MasterPage file to
100         the list of page cache dependencies.
101
102         * MasterPageParser.cs: add the source pointed to by VirtualPath to
103         the list of cache dependencies.
104
105 2007-10-23  Marek Habersack  <mhabersack@novell.com>
106
107         * ClientScriptManager.cs: added two constants to define start/end
108         script block comments rendering. 1.1 uses HTML comments, while 2.0
109         uses a CDATA block.
110
111         * Page.cs: render script blocks with start/end comments taken from
112         the ClientScriptManager constants above.
113
114 2007-10-17  Marek Habersack  <mhabersack@novell.com>
115
116         * TemplateParser.cs: removed code that ignored the Async and
117         AsyncTimeout attributes.
118
119         * PageParser.cs: handle the Async and AsyncTimeout attributes
120         here. Fixes bug #325450
121
122         * Control.cs: properly configure control visibility in
123         PreRenderRecursiveInternal. The check must be made by looking at
124         the Visible value, not at the flags directly. Fixes bug #325303
125
126 2007-10-03  Marek Habersack  <mhabersack@novell.com>
127
128         * Page.cs: complete implementation of ValidationGroups. Fixes bug
129         #330423. Patch from Juraj Skripsky <juraj@hotfeet.ch>, thanks!
130
131 2007-10-02  Marek Habersack  <mhabersack@novell.com>
132
133         * SimpleWebHandlerParser.cs: fix the way types are loaded from
134         top-level assemblies.
135
136 2007-10-01  Marek Habersack  <mhabersack@novell.com>
137
138         * Page.cs: do not set IsPostBack to true if we're in transfer from
139         another page. Fixes bug #329341
140
141 2007-09-18  Marek Habersack  <mhabersack@novell.com>
142
143         * TemplateParser.cs: VaryByControl OutputCache attribute is
144         allowed for both controls and pages in 2.0.
145
146 2007-09-11  Marek Habersack  <mhabersack@novell.com>
147
148         * WebServiceParser.cs: inputFile is a virtual path to the service,
149         not a physical one in GetCompiledType.
150
151 2007-09-05  Marek Habersack  <mhabersack@novell.com>
152
153         * RootBuilder.cs: make Foundry settable, but protect the backing
154         field from being set to null.
155
156 2007-09-04  Marek Habersack  <mhabersack@novell.com>
157
158         * TemplateParser.cs: don't optimize for case when 'name' is a full
159         assembly name in AddAssemblyByName. Assembly.Load triggers the
160         AssemblyResolve event on the current AppDomain if an assembly
161         isn't found and we use this mechanism to map names like "App_Code"
162         or "App_GlobalResources" to the real names of those dynamic
163         assemblies.
164
165 2007-09-02 Igor Zelmanovich <igorz@mainsoft.com>
166
167         * Page.jvm.cs: implemented IsMultiForm property to take 
168         the value from configuration.
169
170 2007-08-30 Igor Zelmanovich <igorz@mainsoft.com>
171
172         * Page.cs: fixed MaintainScrollPositionOnPostBack feature.
173
174 2007-08-29  Marek Habersack  <mhabersack@novell.com>
175
176         * TemplateBuilder.cs: check for and store for later use the
177         TemplateContainerAttribute. Added a nullable property
178         TemplateInstance to return the value of the attribute.
179
180 2007-08-29  Vladimir Krasnov  <vladimirk@mainsoft.com>
181
182         * Control.cs: optimized performance in InitControlsCache()
183
184 2007-08-28  Marek Habersack  <mhabersack@novell.com>
185
186         * Page.cs: The following property values are returned from cached
187         fields instead of looking them up on Context: Application,
188         Response, Request, Cache (as determined by the tests).
189         Added a backing field for the Session property.
190         Session doesn't throw an exception when Context is null - it
191         silently ignores it and throws a session not available exception.
192         _context is never used directly, the Context property is used
193         instead. Fixes bug #82606
194
195 2007-08-23  Juraj Skripsky <js@hotfeet.ch>
196
197         * Control.cs (InitControlsCache): Make the hash table case insensitive to
198         make FindControl compatible with MS.net again. Add LAMESPEC note. 
199
200 2007-08-23  Marek Habersack  <mhabersack@novell.com>
201
202         * SimpleWebHandlerParser.cs: use
203         HttpApplication.BinDirectoryAssemblies in AddAssembliesInBin and
204         LoadAssemblyFromBin.
205         Restore the old logic in GetTypeFromBin, also use
206         HttpApplication.BinDirectoryAssemblies there.
207
208         * TemplateParser.cs: use HttpApplication.BinDirectories to
209         interate over the list of bin dirs.
210         Use HttpApplication.BinDirectoryAssemblies in AddAssembliesInBin.
211
212 2007-08-23 Igor Zelmanovich <igorz@mainsoft.com>
213
214         * ClientScriptManager.cs: encode values of hidden fields. 
215
216 2007-08-21  Marek Habersack  <mhabersack@novell.com>
217
218         * SimpleWebHandlerParser.cs: use HttpApplication.PrivateBinPath
219         enumerator when loading or adding assemblies from binary
220         directories. Remove unused PrivateBinPath property.
221
222         * ControlBuilder.cs: remove unused PrivateBinPath property.
223
224         * TemplateParser.cs: use HttpApplication.PrivateBinPath when
225         adding assemblis and loading types.
226
227 2007-08-21 Igor Zelmanovich <igorz@mainsoft.com>
228
229         * ClientScriptManager.cs: fixed onsubmit script for MultiForm environment 
230
231 2007-08-20  Marek Habersack  <mhabersack@novell.com>
232
233         * MasterPage.cs: use the place holder IDs collection instead of
234         the placholder collection to see if we have the place holder in
235         the master page. Fixes bug #82485.
236
237         * MasterPageParser.cs: store the content place holder ids in the
238         internal cache to gain access to them when needed.
239
240 2007-08-19  Vladimir Krasnov  <vladimirk@mainsoft.com>
241
242         * MasterPageParser.jvm.cs: optimized GetDirectory call
243         * PageTheme.cs: optimized string formatting in CreateSkinKey
244
245 2007-08-19  Vladimir Krasnov  <vladimirk@mainsoft.com>
246
247         * Page.cs: ResetEventValidationState call moved back to
248         InternalProcessRequest
249
250 2007-08-19  Marek Habersack  <mhabersack@novell.com>
251
252         * Page.cs: make sure not to ever pass a null value as the value
253         of the postCollection parameter to control's LoadPostData. The
254         ProcessPostData's 'data' parameter is no longer passed to
255         LoadPostData, instead we pass _requestValueCollection or an empty
256         collection if it is null. The controls should always get all the
257         request data, no matter if the 'data' parameter is null or
258         not. Possible fix for bug #82477.
259
260 2007-08-18  Gert Driesen  <drieseng@users.sourceforge.net>
261
262         * MasterPage.cs: Include relative URL of MasterPage in exception
263         message.
264
265 2007-08-18  Marek Habersack  <mhabersack@novell.com>
266
267         * MasterPage.cs: if a ContentPlaceHolder ID is not found in the
268         associated MasterPage, throw an exception. This is compatible with
269         what MS.NET does. Fixes bug #82447.
270
271 2007-08-15 Igor Zelmanovich <igorz@mainsoft.com>
272
273         * Page.cs: fixed: 
274         - avoid NullRefferenceException from Title property
275         when Page does not have <head runat="server>,
276         - scriptManager.ResetEventValidationState () is called from Render.
277         It allows multiply calling of RenderControl returns the same output.
278
279 2007-08-14  Vladimir Krasnov  <vladimirk@mainsoft.com>
280
281         * Control.cs: optimized GetDirectory call in ResolveClientUrl
282
283 2007-08-14  Vladimir Krasnov  <vladimirk@mainsoft.com>
284
285         * ClientScriptManager.cs: otimized string.Replace in GetScriptLiteral
286
287 2007-08-14  Marek Habersack  <mhabersack@novell.com>
288
289         * Control.cs: include the actual exception when reporting control
290         id clash.
291
292 2007-08-10  Gert Driesen  <drieseng@users.sourceforge.net>
293
294         * PageParser.cs: Replace enableSessionState and readOnlySessionState
295         bools with enum backed field. Move 1.0 profile code for checking value
296         of EnableSessionState pages config to PagesConfigurationHandler.
297         Fixes bug #82392 for 1.0 profile.
298
299 2007-08-09  Marek Habersack <mhabersack@novell.com>
300
301         * PageParser.cs: honor web.config enableSessionState
302         ReadOnly setting instead of overwriting based on default value for 
303         page directive EnableSessionState. Patch from Joel Reed
304         <joelwreed@comcast.com>, thanks! Fixes bug #82392
305
306 2007-08-09  Vladimir Krasnov  <vladimirk@mainsoft.com>
307
308         * CssStyleCollection.cs: used ListDictionary instead of
309         HybridDictionary as underlaying data structure
310
311 2007-08-07  Vladimir Krasnov  <vladimirk@mainsoft.com>
312
313         * Control.cs: refactoring of LookForControlByName with caching
314
315 2007-08-06 Igor Zelmanovich <igorz@mainsoft.com>
316
317         * DataSourceView.cs: fixed: 
318         view raises onchange event when datasource is chenged.                  
319
320 2007-08-06 Igor Zelmanovich <igorz@mainsoft.com>
321
322         * Control.cs: fixed: control ID management.                     
323
324 2007-08-06 Igor Zelmanovich <igorz@mainsoft.com>
325
326         * Control.cs: refactoring: code formatting only.                
327
328 2007-08-05  Vladimir Krasnov  <vladimirk@mainsoft.com>
329
330         * HtmlTextWriter.cs: performance refactoring, optimized AddAttribute
331         overloads, used StringComparer for tag, styles and attrs hashtables
332         fixed AddAttribute, id attr should not be encoded by default
333
334 2007-07-31  Vladimir Krasnov  <vladimirk@mainsoft.com>
335
336         * Control.cs: fixed AppRelativeTemplateSourceDirectory that should
337         depend on AppRelativeVirtualPath
338         * Control.jvm.cs: fixed TemplateSourceDirectory that should depend on
339         AppRelativeTemplateSourceDirectory
340
341 2007-07-30  Vladimir Krasnov  <vladimirk@mainsoft.com>
342
343         * Page.jvm.cs: fixed RenderResponse property, should not fail in no
344         Contex available
345
346 2007-07-29 Igor Zelmanovich <igorz@mainsoft.com>
347
348         * Page.cs: added TARGET_J2EE variable at client side.
349
350 2007-07-24 Igor Zelmanovich <igorz@mainsoft.com>
351
352         * ClientScriptManager.cs:
353         * Page.cs:
354         * Page.jvm.cs:
355         added new internal property IsMultiForm which returns false under
356         !TARGET_J2EE (Portal). All client scripts are rendered 
357         according this property.        
358                 
359 2007-07-24 Igor Zelmanovich <igorz@mainsoft.com>
360
361         * ClientScriptManager.cs: fixed: GetCallbackEventReference method.
362                 
363 2007-07-23 Igor Zelmanovich <igorz@mainsoft.com>
364
365         * Page.cs: refactoring: __doPostBack client script
366         It is a part of adapting System.Web to work whith 
367         System.Web.Extensions (AJAX).
368
369 2007-07-23 Konstantin Triger <kostat@mainsoft.com>
370
371         * Control.cs: calculate AppRelativeTemplateSourceDirectory from HttpContext
372                 when control is not in control collection.
373
374 2007-07-22 Konstantin Triger <kostat@mainsoft.com>
375
376         * Control.cs,
377                 TemplateControl.cs: base AppRelativeTemplateSourceDirectory property
378                 on TemplateControl; implement special behavior of Control.TemplateControl for
379                 TemplateControl instances.
380
381 2007-07-18  Marek Habersack  <mhabersack@novell.com>
382
383         * ControlBuilder.cs: on the 2.0 profile BindingContainerType
384         returns the associated control's base type when parent builder is
385         absent instead of typeof (Control). It returns typeof (Control) if
386         the parent builder type is determined to be a
387         NamingContainer. This makes the generated code match the MS.NET
388         output. Fixes bug #82119.
389
390 2007-07-18 Igor Zelmanovich <igorz@mainsoft.com>
391
392         * Page.cs:
393         * ClientScriptManager.cs:
394         scripts, registered using RegisterClientScriptInclude, 
395         RegisterClientScriptResource and RegisterClientScriptBlock appear on Page
396         in order matches the order in which the scripts were registered.
397
398 2007-07-16 Igor Zelmanovich <igorz@mainsoft.com>
399
400         * Control.cs: fixed EnsureID.
401         ID is not assigned, if already was set.
402
403 2007-07-12  Vladimir Krasnov  <vladimirk@mainsoft.com>
404
405         * ClientScriptManager.cs: refactored event validation data structure
406         * Page.cs: fixed InternalProcessRequest, event validation list should
407         be cleared before render
408
409 2007-06-24  Vladimir Krasnov  <vladimirk@mainsoft.com>
410
411         * ObjectStateFormatter.cs: optimized loops in array formatters
412
413 2007-07-03  Marek Habersack  <mhabersack@novell.com>
414
415         * SimpleWebHandlerParser.cs: improve directive
416         pre-parsing. Directives can span multiple lines, they don't have
417         to start at the beginning of the line and any content can follow
418         them after the directive end. Also, do not trim the input since
419         that might affect program content. Fixes bug #81993.
420
421 2007-07-02  Marek Habersack  <mhabersack@novell.com>
422
423         * Control.cs: make sure TemplateSourceDirectory returns meaningful
424         results in the 1.1 profile. Fixes bug #81950.
425
426 2007-06-24  Vladimir Krasnov  <vladimirk@mainsoft.com>
427
428         * ObjectStateFormatter.cs: WriterContext.RegisterCache, refactored out
429         parameter
430
431 2007-06-20  Marek Habersack  <mhabersack@novell.com>
432
433         * BasePartialCachingControl.cs: use HttpRuntime.InternalCache to
434         keep the private entries.
435
436 2007-06-18 Igor Zelmanovich <igorz@mainsoft.com>
437
438         * Control.cs: revised the changes from r79982.  
439
440 2007-06-18 Igor Zelmanovich <igorz@mainsoft.com>
441
442         * Control.cs: optimized flow in ResolveClientUrl.       
443
444 2007-06-15  Gert Driesen  <drieseng@users.sourceforge.net>
445
446         * ObjectStateFormatter.cs: Avoid NRE in Serialize. Fixes bug #81851.
447
448 2007-06-09  Marek Habersack  <mhabersack@novell.com>
449
450         * TemplateControl.cs: make sure TemplateControl is set to the
451         current control.
452
453         * Control.cs: TemplateControl property goes up the parent chain if
454         the property isn't defined in the current control.
455         TemplateSourceDir finally implemented correctly.
456
457 2007-06-06  Marek Habersack  <mhabersack@novell.com>
458
459         * Control.cs: more changes to the way TemplateSourceDirectory
460         works in the 2.0 profile. Take into account situations when a
461         control is placed in a UserControl (.ascx) and only then fall back
462         to the parent for its TemplateSourceDirectory.
463
464 2007-06-05  Marek Habersack  <mhabersack@novell.com>
465
466         * Control.cs: TemplateSourceDirectory uses TemplateControl to
467         lookup the virtual source directory in the 2.0 instead of the
468         Parent.
469         ResolveClientUrl copes with empty TemplateSourceDirectory in the
470         correct way now - the check is made after the basePath checks.
471         The changes above make ResolveClientUrl work properly when called
472         from within a control residing in a TemplateControl.
473
474 2007-05-30  Vladimir Krasnov  <vladimirk@mainsoft.com>
475
476         * HtmlTextWriter.cs: EncodeAttributeValue should call 
477         HtmlAttributeEncode as documented
478
479 2007-05-24  Marek Habersack  <mhabersack@novell.com>
480
481         * PageParser.cs: added support for the PreviousPageType
482         directive.
483
484 2007-05-23  Marek Habersack  <mhabersack@novell.com>
485
486         * TemplateParser.cs: use VirtualPathUtility.Combine to properly
487         create the custom control's virtual path.
488
489 2007-05-22  Marek Habersack  <mhabersack@novell.com>
490
491         * TemplateBuilder.cs: in the absence of containerAttribute,
492         default to two-way binding direction.
493
494 2007-05-21 Igor Zelmanovich <igorz@mainsoft.com>
495
496         * DataSourceView.cs: refactoring: Update, Insert methods:
497         exception is re-thrown from catch scope. 
498         It allows actual call stack be shown    
499
500 2007-05-17  Vladimir Krasnov  <vladimirk@mainsoft.com>
501
502         * TemplateControl.jvm.cs: refactored key for CachedString method
503
504 2007-05-16  Vladimir Krasnov  <vladimirk@mainsoft.com>
505
506         * HtmlTextWriter.cs: refactoring, created hashtables for tags, styles
507         and attributes arrays, that gives performance improvement in GetTagKey
508         GetStyleKey and GetAttributeKey methods
509
510 2007-05-15  Marek Habersack  <mhabersack@novell.com>
511
512         * TemplateControl.cs: implemented the 3-parameter overloads of
513         GetLocalResourceObject and GetGlobalResourceObject.
514
515         * TemplateParser.cs: refactoring - use HttpApplication.LoadType to
516         actually look up types.
517         
518         * ControlBuilder.cs: as above   
519
520 2007-05-14  Marek Habersack  <mhabersack@novell.com>
521
522         * ClientScriptManager.cs: put the hidden field within a <div>, the
523         way MS.NET does it.
524
525 2007-05-11  Gert Driesen  <drieseng@users.sourceforge.net>
526
527         * ControlBuilder.cs: Fixed exception message in MapType.
528
529 2007-05-10  Marek Habersack  <mhabersack@novell.com>
530
531         * Control.cs: small formatting change
532
533 2007-05-10 Igor Zelmanovich <igorz@mainsoft.com>
534
535         * Page.cs: ExecuteRegisteredAsyncTasks:
536         implimentation for TARGET_JVM doesn't use WaitHandle.WaitAll, but WaitOne
537
538 2007-05-09  Vladimir Krasnov  <vladimirk@mainsoft.com>
539
540         * HtmlTextWriter.cs: used classes instead of sctrucs in TARGET_JVM for
541         AddedTag, AddedStyle and AddedAttr members
542         * TemplateControl.jvm.cs: refactored CachedString method
543
544 2007-05-09  Marek Habersack  <mhabersack@novell.com>
545
546         * CollectionBuilder.cs: formatting changes
547
548         * ControlBuilder.cs: if a control enables children as properties,
549         has a default property and parser encounters a child tag/container
550         with the default property name, discard the default property
551         builder in order to avoid invalid sub builder invocation. An
552         example is: <asp:DropDownList><Items></Items></asp:DropDownList>
553         Formatting changes.
554         When checking for empty string, use Length not comparison with ""
555         
556 2007-05-08  Marek Habersack  <mhabersack@novell.com>
557
558         * CssStyleCollection.cs: put the style in the bag each time a key
559         is set, otherwise resetting of a key has no effect on rendered
560         style.
561
562 2007-05-07  Marek Habersack  <mhabersack@novell.com>
563
564         * TemplateParser.cs: added support for implicit language
565         detection. If the language isn't set explicitly in the Page
566         directive, the language value taken from the configuration
567         considered to be implicit - that is, it can be overwritten by the
568         first <script> with the runat="server" and language="xx" sets the
569         language for the parser. This makes it possible to have the
570         default language set to "C#" and the inline code in, e.g.,
571         VisualBasic. 
572
573         * ControlBuilder.cs: when mapping types, catch casses of missing
574         original and mapped types.
575         If mapped type doesn't derive from the original type, throw an
576         exception. Fixes bug #81553.
577
578 2007-05-04  Marek Habersack  <mhabersack@novell.com>
579
580         * Control.cs: added an internal method to resolve a physical path
581         to a file from its virtual path considering the possibility that a
582         control is placed in a master page, which in turn is referenced
583         from a directory another than that of master page itself.
584
585 2007-05-03 Igor Zelmanovich <igorz@mainsoft.com>
586
587         * AttributeCollection.cs:
588         * DataBindingHandlerAttribute.cs:
589         * HtmlTextWriter.cs:
590         * PartialCachingControl.cs:
591         * TemplateControl.cs:
592         * TemplateControl.jvm.cs:
593         * XPathBinder.cs:                                               
594         added missing API.      
595
596 2007-05-03 Igor Zelmanovich <igorz@mainsoft.com>
597
598         * CssStyleCollection.cs: optimization:
599         used StringBuilder instead string to hold value.
600         When added key that not exists in collection, value is recalculated by 
601         appending required key to existing value.       
602
603 2007-05-02 Igor Zelmanovich <igorz@mainsoft.com>
604
605         * Control.cs: ResolveClientUrl: optimization.
606         if basePath is the same as TemplateSourceDirectory 
607         releativeUrl is returned as is.
608
609 2007-05-02 Igor Zelmanovich <igorz@mainsoft.com>
610
611         * Control.cs:
612         ResolveClientUrl considers TemplateSourceDirectory property.
613
614 2007-05-01  Marek Habersack  <mhabersack@novell.com>
615
616         * PageParser.cs: clientTarget comparisons must be case-insensitive
617
618 2007-04-30 Konstantin Triger <kostat@mainsoft.com>
619
620         * DataBinder.cs: When formatting, threat empty string as null.
621
622 2007-04-27  Marek Habersack  <mhabersack@novell.com>
623
624         * TemplateControlParser.cs: 2.0 allows 'Namespace' without the
625         'Assembly' attribute on tag prefix registration.
626
627         * TemplateParser.cs: do not rely on assembly name being not null.
628
629 2007-04-19  Gert Driesen  <drieseng@users.sourceforge.net>
630
631         * TemplateParser.cs: On 2.0 profile, allow namespace in ClassName
632         attribute. Fixes part of bug #81399.
633
634 2007-04-11  Marek Habersack  <mhabersack@novell.com>
635
636         * Page.cs: check whether control passed to
637         RegisterRequiresPostBack implements the IPostBackDataHandler
638         interface.
639
640 2007-04-06  Marek Habersack  <mhabersack@novell.com>
641
642         * ClientScriptManager.cs: render the 'type' attribute in
643         WriteScript and do not render the 'language' attribute when in
644         NET_2_0+ mode.
645
646         * Page.cs: defaults for ViewStateEncrptionMode and AsyncTimeout
647         are read from the pages section, if found.
648
649         * TemplateControlParser.cs: added support for loading
650         pages/controls defaults from web.config even if the page/control
651         does not have its corresponding directive.
652         Added support for reading the CompilationMode attribute.
653
654         * PageParser.cs: added support for loading pages/controls defaults
655         as above. Fixes bug #80915.
656         Added support for reading the maxPageStateFieldLength setting.
657         Added support for reading the pageParserFilter setting.
658         
659         * ControlBuilder.cs: allow tag mappings from code found 
660         in bin/* or App_Code/*. Fixes bug #80811.
661
662 2007-03-29  Vladimir Krasnov  <vladimirk@mainsoft.com>
663
664         * TemplateControl.jvm.cs: performance improvement, added cache for
665         methods and events in user code
666
667 2007-03-26  Marek Habersack  <mhabersack@novell.com>
668
669         * TemplateControl.cs: make local resources work with master
670         pages - use the AppRelativeVirtualPath for resource resolution.
671
672         * TemplateParser.cs: support the meta:resourcekey attribute in
673         Page and Control directives. Fixes bug #81204.
674
675 2007-03-21  Marek Habersack  <mhabersack@novell.com>
676
677         * UnknownAttributeDescriptor.cs: an internal helper class for
678         custom directive attributes support.
679
680         * BaseParser.cs: ThrowParseException can now take variadic
681         parameters, for convenience.
682
683         * TemplateParser.cs: add support for custom attributes for the
684         Page and Control directives.
685         Added support for the CodeFileBaseClass directive. Fixes bug #81132
686
687 2007-03-20 Igor Zelmanovich <igorz@mainsoft.com>
688
689         * Control.cs: fixed ResolveClientUrl method.
690
691 2007-03-18  Marek Habersack  <mhabersack@novell.com>
692
693         * BaseParser.cs: fix BaseVirtualDir to always return app-absolute
694         paths.
695
696 2007-03-17  Marek Habersack  <mhabersack@novell.com>
697
698         * MasterPageParser.cs: remove superfluous #ifdef
699
700         * TemplateParser.cs: use VirtualPathUtility here
701
702 2007-03-14  Vladimir Krasnov  <vladimirk@mainsoft.com>
703
704         * TemplateControl.jvm.cs: fixed WireupAutomaticEvents, performance
705         optimization
706
707 2007-03-13  Marek Habersack  <mhabersack@novell.com>
708
709         * TemplateParser.cs: name generated classes the same way MS.NET
710         does - include the app-relative path to the control/page in the
711         class name.
712
713 2007-03-13  Adar Wesley <adarw@mainsoft.com>
714
715         * Page.cs: improved Async Page implementation.
716
717 2007-03-13  Marek Habersack  <mhabersack@novell.com>
718
719         * TemplateControl.cs: implement AppRelativeVirtualPath. Closes bug
720         #80634.
721
722 2007-03-12  Marek Habersack  <mhabersack@novell.com>
723
724         * RootBuilder.cs: change the error text to be less misleading.
725
726 2007-03-12 Igor Zelmanovich <igorz@mainsoft.com>
727
728         * AttributeCollection.cs:
729         * CssStyleCollection.cs: fixed: works w/o state bag.    
730
731 2007-03-12 Igor Zelmanovich <igorz@mainsoft.com>
732
733         * HtmlTextWriter.cs: fixed:
734         - Fixed writing background-image style attribute (different behavior in
735         1.1 and 2.0).
736         - Does not encode 'name' attribute.
737         - Always encode style attributes (for 2.0 only).
738
739 2007-03-06  Adar Wesley <adarw@mainsoft.com>
740
741         * Page.cs: initial implementation of support for Async=true.  Added 
742         initial support for ViewStateEncryption.  Implemented 
743         CreateHtmlTextWriterFromType.
744         
745         * PageAsyncTask.cs: Created class to support Async pages.
746
747         * ObjectStateFormatter.cs: Added support for ViewState encryption.
748
749         * HtmlTextWriter.cs: Fixed constructor to accept null TextWriter
750         to conform to MS behavior.
751
752 2007-03-05  Vladimir Krasnov  <vladimirk@mainsoft.com>
753
754         * Control.jvm.cs: fixed TemplateSourceDirectory property
755
756 2007-03-03  Marek Habersack  <mhabersack@novell.com>
757
758         * TemplateParser.cs: support but ignore the Async and AsyncTimeOut
759         page directive attributes.
760         Support the LinePragmas page directive attribute.
761
762         * PageParser.cs: added support for the
763         MaintainScrollPositionOnPostBack page directive attribute.
764
765 2007-02-26 Igor Zelmanovich <igorz@mainsoft.com>
766
767         * TemplateControl.cs:
768         * TemplateControl.jvm.cs: fixed: AutoEventWireup feature: 
769         Method 'Page_XXX' is declared in the base class must be 
770         called even is private.
771
772 2007-02-26  Vladimir Krasnov  <vladimirk@mainsoft.com>
773
774         * Control.cs: fixed AppRelativeTemplateSourceDirectory property, should
775         not return AppRelativeTemplateSourceDirectory of master page
776
777 2007-02-26 Igor Zelmanovich <igorz@mainsoft.com>
778
779         * ClientScriptManager.cs: fixed: GetScriptLiteral escapes back-slash:
780
781 2007-02-22 Igor Zelmanovich <igorz@mainsoft.com>
782
783         * TemplateControl.cs: added missing property AppRelativeVirtualPath
784
785 2007-02-21 Konstantin Triger <kostat@mainsoft.com>
786
787         * TemplateParser.cs: remove CodeGenerator.IsValidLanguageIndependentIdentifier
788                 check from Global.asax inherits attribute to let inherits="A.B" construct.
789
790 2007-02-20 Igor Zelmanovich <igorz@mainsoft.com>
791
792         * ObjectStateFormatter.cs:
793         optimization for serialization of primitive type arrays 
794
795 2007-02-19 Igor Zelmanovich <igorz@mainsoft.com>
796
797         * ClientScriptManager.cs:
798         * Control.cs:                    
799         * Page.cs:
800         implemented PostBackOptions.TrackFocus feature. 
801
802 2007-02-14 Igor Zelmanovich <igorz@mainsoft.com>
803
804         * Page.cs: for 2.0: refactoring:
805         prepare infrastructure for Form.SubmitDisabledControls feature   
806
807 2007-02-18  Eyal Alaluf <eyala@mainsoft.com>
808
809         * Control.jvm.cs, Control.cs: Move TemplateSourceDirectory to .jvm file.
810         * Control.jvm.cs, Page.jvm.cs: Centralize Portlet specific API in Page.jvm
811         * Page.cs, Page.jvm.cs, ClientScriptManager.cs: Support for Http callbacks
812           for J2EE portlets.
813
814 2007-02-14 Igor Zelmanovich <igorz@mainsoft.com>
815
816         * Page.cs: for 2.0: 
817         '__EVENTTARGET' and '__EVENTARGUMENT' hidden fields are 
818         registered only once.   
819
820 2007-02-14 Igor Zelmanovich <igorz@mainsoft.com>
821
822         * Page.cs: for 2.0: '__doPostBack' declared as function of form.
823         convention to use 'currForm' instead 'myForm'   
824
825 2007-02-14 Igor Zelmanovich <igorz@mainsoft.com>
826
827         * Page.cs:
828         * ClientScriptManager.cs:
829         including 'webform.js' requires '__doPostBack' on the form be rendered.  
830
831 2007-02-14 Igor Zelmanovich <igorz@mainsoft.com>
832
833         * Page.cs:
834         * ClientScriptManager.cs:
835         refactoring: 'theForm' variable is always declared on client. 
836         '__EVENTTARGET' and '__EVENTARGUMENT' hidden fields is rendered using 
837         RegisterHiddenField API. 'WebForm_OnSubmit' declared as function of form.       
838
839 2007-02-14  Vladimir Krasnov  <vladimirk@mainsoft.com>
840
841         * Page.cs: fixed OnInit, adding css should throw exception if no header
842         present on the page
843
844 2007-02-14 Igor Zelmanovich <igorz@mainsoft.com>
845
846         * Page.cs: __doPostBack considers 2.0 features 
847         such RegisterOnSubmitStatement
848
849 2007-02-14 Igor Zelmanovich <igorz@mainsoft.com>
850
851         * Page.cs:
852         * ClientScriptManager.cs:
853         implemented RegisterOnSubmitStatement for 2.0   
854
855 2007-02-13 Igor Zelmanovich <igorz@mainsoft.com>
856
857         * ClientScriptManager.cs: EventValidation feature optimization on Callback.
858
859 2007-02-13 Igor Zelmanovich <igorz@mainsoft.com>
860
861         * Page.cs: fixed exception handling on Callback at client.
862
863 2007-02-08  Marek Habersack  <grendello@gmail.com>
864
865         * Page.cs: Make sure to create specific cultures.
866
867 2007-02-08  Vladimir Krasnov  <vladimirk@mainsoft.com>
868
869         * ClientScriptManager.cs: added array declaration also as member of
870         form in TARGET_J2EE for j2ee portal support. 
871         Added validators context init for GetClientValidationEvent under
872         TARGET_J2EE for j2ee portal support.
873         * Page.cs: fixed OnFormPostRender, render array declarations after
874         postback script.
875         
876 2007-02-04 Igor Zelmanovich <igorz@mainsoft.com>
877
878         * Page.cs:
879         * ClientScriptManager.cs:
880         client scripts (webform.js, callback.js and 
881         MaintainScrollPositionOnPostBack.js) were merged into one resource file.
882
883 2007-02-04 Igor Zelmanovich <igorz@mainsoft.com>
884
885         * Page.cs:
886         http://msdn2.microsoft.com/en-us/library/ms178141.aspx   
887         LAMESPEC: on Callback IsPostBack is set to false, but true.
888
889 2007-02-04 Igor Zelmanovich <igorz@mainsoft.com>
890
891         * Page.cs: 
892         VerifyRenderingInServerForm does not fire exception when IsCallback
893
894 2007-02-04 Igor Zelmanovich <igorz@mainsoft.com>
895
896         * Page.cs:
897         * ClientScriptManager.cs:
898         fixed RegisterClientScriptInclude: all includes that was registered before 
899         rendering are rendered at begin form.           
900
901 2007-02-02  Marek Habersack  <grendello@gmail.com>
902
903         * TemplateParser.cs: Do not register controls here.
904
905 2007-02-02  Adar Wesley <adarw@mainsoft.com>
906
907         * Control.cs: Changed UniqueId implementation to have '$' and not ':'
908         to conform to MS.  This led to updating several Tests that referenced
909         the UniqueId as string.
910
911 2007-01-30  Eyal Alaluf <eyala@mainsoft.com>
912
913         * ClientScriptManager.cs: Fix Igor's last changes for TARGET_JVM.
914
915 2007-01-29 Igor Zelmanovich <igorz@mainsoft.com>
916
917         * Page.cs:
918         * ClientScriptManager.cs:
919         CallBack works with EvantValidation.            
920
921 2007-01-25  Eyal Alaluf <eyala@mainsoft.com>
922
923         * Page.cs: Change code to use the 'theForm' property when generating
924           JavaScript code. Ensure that we pass 'theForm' as param to the JS funcs.
925         * Page.jvm.cs, Control.jvm.cs: Implement the 'theForm' property to include
926           the portlet namespace. Moved 'PortletNamespace' from Control.jvm.cs
927     * Page.jvm.cs, Control.jvm.cs, ClientScriptManager.cs: Added support for
928           saving hidden fields for TARGET_J2EE Portlets re-render.
929         * Control.cs: Under TARGET_J2EE portal support add the PortletNamespace
930           to all the control IDs to ensure they different between portlets.
931
932 2007-01-24  Vladimir Krasnov  <vladimirk@mainsoft.com>
933
934         * Page.cs: fixed CheckForValidationSupport,
935         SupportsEventValidationAttribute should be checked at only one level
936
937 2007-01-23  Vladimir Krasnov  <vladimirk@mainsoft.com>
938
939         * TemplateControl.jvm.cs: ParseControl not supported, added limited
940         implementation if TestDeviceFilter
941
942 2007-01-22  Konstantin Triger <kostat@mainsoft.com>
943
944         * ClientScriptManager.cs: ensure the callback client script is
945                 registered before the client script includes are rendered.
946
947 2007-01-22  Konstantin Triger <kostat@mainsoft.com>
948
949         * Page.cs, ClientScriptManager.cs: ensure the web form client script is
950                 registerd before the client script includes are rendered.
951
952 2007-01-21  Konstantin Triger <kostat@mainsoft.com>
953
954         * Page.cs: move the WriteClientScriptIncludes to the top of the form,
955                 according to the MSDN.
956
957 2007-01-20  Miguel de Icaza  <miguel@novell.com>
958
959         * XhtmlTextWriter.cs: comment out unused code. 
960
961         * ThemeProvider.cs: comment out unused code.
962
963         * DataSourceView.cs: Comment unused variable. 
964
965         * ClientScriptManager.cs: Put the expandoAttributes inside the 2.0
966         code 
967
968         * Control.cs: Put _templateControl inside the NET_2_0 ifdef
969
970 2007-01-20  Marek Habersack  <grendello@gmail.com>
971
972         * TemplateParser.cs: Check whether the base type is in the root
973         namespace.
974
975 2007-01-18  Eyal Alaluf <eyala@mainsoft.com>
976
977         * Control.jvm.cs: Added PortletNamespace property.
978
979 2007-01-16  Vladimir Krasnov  <vladimirk@mainsoft.com>
980
981         * TemplateControl.jvm.cs: remover TemplateSourceDirectory propery
982         * Control.cs: moved TemplateSourceDirectory from TemplateControl for
983         TARGET_JVM, fixed AppRelativeTemplateSourceDirectory
984
985 2007-01-16  Vladimir Krasnov  <vladimirk@mainsoft.com>
986
987         * TemplateControl.jvm.cs: added 2.0 event names for wiring up
988
989 2007-01-15  Ilya Kharmatsky <ilya - at - decode-systems.com>
990         * Control.cs: 
991                 - IsViewStateEnabled - removed check for non-null page, since 
992                                  the control by definition should come with enabled
993                                  view state, even if it not 'attached' to the page
994                 - HasEvents() - implementation (still could produce bug in exotic scenarios
995                                 when all events added to 'this' control has been removed
996                                 through the property 'Events', but currently we can't see
997                                 better implementation)
998
999 2007-01-14  Eyal Alaluf <eyala@mainsoft.com>
1000
1001         * Control.jvm.cs, Page.jvm.cs: Added TARGET_J2EE specific files.
1002         * Page.cs, ClientScriptManager.cs, Control.cs: Added J2EE portal
1003           support for TARGET_J2EE.
1004
1005 2007-01-12  Miguel de Icaza  <miguel@novell.com>
1006
1007         * Control.cs: Remove comment, it provides no information about
1008         what could be wrong.
1009
1010 2007-01-08  Vladimir Krasnov  <vladimirk@mainsoft.com>
1011
1012         * PageTheme.cs: implemented
1013         * Page.cs: fixed InitializeTheme, added PageTheme page initialization
1014         * TemplateControl.cs, 
1015         * TemplateControl.jvm.cs: added XPath, XPathSelect overloads with
1016         IXmlNamespaceResolver parameter
1017         * XPathBinder.cs: added Eval, Select overloads with
1018         IXmlNamespaceResolver parameter, refactored
1019
1020 2007-01-08  Vladimir Krasnov  <vladimirk@mainsoft.com>
1021
1022         * TemplateControl.jvm.cs: added GetGlobalResourceObject
1023
1024 2007-01-07 Igor Zelmanovich <igorz@mainsoft.com>
1025
1026         * Page.cs: refactoring: used RegisterHiddenField for _VIEWSTATE field.
1027
1028 2007-01-04 Igor Zelmanovich <igorz@mainsoft.com>
1029
1030         * Control.cs: ensure 'id' attribute will be rendered if 
1031         ClientID was accessed but ID is generated by the Page, 
1032         important for custom controls developing.
1033
1034 2007-01-04 Igor Zelmanovich <igorz@mainsoft.com>
1035
1036         * Page.cs: fixed: InitializeCulture should be called 
1037         before creating controls.
1038
1039 2007-01-03  Marek Habersack  <grendello@gmail.com>
1040
1041         * Page.cs: Make sure the ValidatorOnSubmit function is defined for the
1042         document before attempting to use it.
1043
1044 2007-01-01  Vladimir Krasnov  <vladimirk@mainsoft.com>
1045
1046         * Control.cs: fixed ResolveClientUrl, wrong when control that calls
1047         this method and the page are in different folders
1048
1049 2006-12-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1050
1051         * Page.cs: show the validation summary when client validation and
1052         linkbuttons are used. Patch by Juraj Skripsky.
1053
1054 2006-12-31 Igor Zelmanovich <igorz@mainsoft.com>
1055
1056         * Page.cs: fixed: EventValidation is not performed for CallBack request.
1057
1058 2006-12-27 Igor Zelmanovich <igorz@mainsoft.com>
1059
1060         * Page.cs: fixed: RegisterRequiresPostBack feature.
1061
1062 2006-12-21  Marek Habersack  <grendello@gmail.com>
1063
1064         * ControlBuilder.cs: Add support for tag mapping in 2.0
1065
1066 2006-12-20  Marek Habersack  <grendello@gmail.com>
1067
1068         * TemplateParser.cs: make sure Context.ApplicationInstance is not
1069         valid before adding application assembly.
1070
1071 2006-12-11 Igor Zelmanovich <igorz@mainsoft.com>
1072
1073         * Page.cs: fixed and optimized ProcessPostData
1074         The "second try" used for controls that created at OnLoad.
1075         fixed for controls that use RgisterRequeresPostBack to handle post data.
1076
1077 2006-11-29 Igor Zelmanovich <igorz@mainsoft.com>
1078
1079         * Page.cs: The specified theme must exist as either an application theme. 
1080         If the theme does not exist, an HttpException exception s thrown.
1081
1082 2006-12-09  Marek Habersack  <grendello@gmail.com>
1083
1084         * HiddenFieldPageStatePersister.cs: Implement the 2.0 class (used
1085         also in the 1.x profile)
1086
1087         * ObjectStateFormatter.cs: Implement the IStateFormatter interface
1088
1089         * ClientScriptManager.cs: Use IStateFormatter instead of
1090         LosFormatter.
1091         Use the IStateFormatter interface when registering the hidden
1092         field with the state.
1093
1094         * LosFormatter.cs: Use ObjectStateFormatter
1095
1096         * PageStatePersister.cs: Make the class available as internal for
1097         1.x profile.
1098         Constructor throws an exception on its page parameter being null.
1099         Implemented several properties: ControlState, ViewState, Page,
1100         StateFormatter
1101
1102         * Page.cs: Use new state persister for all the profiles.
1103         Use the new HiddenFieldPageStatePersister class.
1104
1105         * IStateFormatter.cs: Make the class available as internal for 1.x profile.
1106
1107 2006-12-04  Vladimir Krasnov  <vladimirk@mainsoft.com>
1108
1109         * TemplateControl.jvm.cs: fixed TemplateSourceDirectory initialization
1110
1111 2006-11-29  Marek Habersack  <grendello@gmail.com>
1112
1113         * TemplateParser.cs: if the OutputCache directive is present, make
1114         sure the cache does not expire the current output.
1115
1116 2006-11-29 Igor Zelmanovich <igorz@mainsoft.com>
1117
1118         * Page.cs: added missing methods and properties:
1119         AsyncMode
1120         AsyncTimeout
1121         IsAsync
1122         UniqueFilePathSuffix
1123         MaxPageStateFieldLength
1124         ViewStateEncryptionMode
1125         AddOnPreRenderCompleteAsync
1126         AddOnPreRenderCompleteAsync
1127         ExecuteRegisteredAsyncTasks
1128         CreateHtmlTextWriterFromType
1129         RegisterRequiresViewStateEncryption
1130
1131 2006-11-29 Igor Zelmanovich <igorz@mainsoft.com>
1132
1133         * Page.cs: Master property returns null when no HttpContext.
1134
1135 2006-11-29 Igor Zelmanovich <igorz@mainsoft.com>
1136
1137         * Page.cs: InitializeCulture method is called before OnPreInit.
1138
1139 2006-11-28  Marek Habersack  <grendello@gmail.com>
1140
1141         * TemplateControlParser.cs: Use the new TemplateParser methods to
1142         register controls/namespaces
1143
1144         * TemplateParser.cs: Implement support for the
1145         system.web/pages/namespaces collection instead of hard-coding the
1146         namespaces into the source.
1147         Refactoring: added two internal methods to handle both the
1148         system.web/pages/controls registration and the Register directive.
1149         Added a new internal method to pull the system.web/pages/controls
1150         collection before parsing.
1151
1152 2006-11-27  Marek Habersack  <grendello@gmail.com>
1153
1154         * SimpleWebHandlerParser.cs: Added support for looking up types in
1155         the top-level assemblies (App_Code et al)
1156
1157 2006-11-27 Igor Zelmanovich <igorz@mainsoft.com>
1158
1159         * Control.cs: implemented EnsureID method.
1160
1161 2006-11-27 Igor Zelmanovich <igorz@mainsoft.com>
1162
1163         * Control.cs: implemented Focus methods.
1164
1165 2006-11-27 Igor Zelmanovich <igorz@mainsoft.com>
1166
1167         * Page.cs: implemented SetFocus methods.
1168         * PageLifeCycle.cs:     
1169
1170 2006-11-27 Igor Zelmanovich <igorz@mainsoft.com>
1171
1172         * ClientScriptManager.cs: refactoring:
1173         extracted method RegisterWebFormClientScript    
1174
1175 2006-11-27 Igor Zelmanovich <igorz@mainsoft.com>
1176
1177         * Control.cs: implemented OpenFile()
1178
1179 2006-11-26 Igor Zelmanovich <igorz@mainsoft.com>
1180
1181         * Page.cs:
1182         * Control.cs:
1183         implemented ClearChildState(), ClearChildControlState() and 
1184         IsChildControlStateCleared      
1185
1186 2006-11-26 Igor Zelmanovich <igorz@mainsoft.com>
1187
1188         * Page.cs:
1189         * ClientScriptManager.cs:
1190         implemented RegisterExpandoAttribute feature    
1191
1192 2006-11-23 Igor Zelmanovich <igorz@mainsoft.com>
1193
1194         * ListSourceHelper.cs: optimization of implementation 
1195
1196 2006-11-23 Igor Zelmanovich <igorz@mainsoft.com>
1197
1198         * ListSourceHelper.cs: implemented 
1199
1200 2006-11-21 Igor Zelmanovich <igorz@mainsoft.com>
1201
1202         * DataSourceView.cs: fixed: constructor throws ArgumentNullException 
1203
1204 2006-11-21 Igor Zelmanovich <igorz@mainsoft.com>
1205
1206         * Page.cs: fixed: PreviousPage property
1207         when CrossPostBack is processed PreviousPage is initialized 
1208         only if PreviousPage property is called.         
1209
1210 2006-11-21 Igor Zelmanovich <igorz@mainsoft.com>
1211
1212         * DataSourceControl.cs: fixed: Focus(), EnableTheming 
1213
1214 2006-11-21  Marek Habersack  <grendello@gmail.com>
1215
1216         * Control.cs: Make ClientIDSeparator private for !NET_2_0
1217
1218 2006-11-21 Igor Zelmanovich <igorz@mainsoft.com>
1219
1220         * Page.cs: fixed: LoadControlState is called for controls 
1221         that added on Load and latter
1222
1223 2006-11-20  Marek Habersack  <grendello@gmail.com>
1224
1225         * Control.cs: Implementations of a few missing properties.
1226
1227         * Page.cs: Added support for automatic culture detection from the
1228         user's browser.
1229
1230         * PageParser.cs: Added support for "auto" cultures in the Page
1231         directive.
1232
1233 2006-11-20 Igor Zelmanovich <igorz@mainsoft.com>
1234
1235         * ClientScriptManager.cs: fixed: ValidateEvent feature:
1236         client side return eventArgument as empty string 
1237         for controls that set it as null        
1238
1239 2006-11-18  Marek Habersack  <grendello@gmail.com>
1240
1241         * ClientScriptManager.cs: Implemented two missing
1242         GetPostBackEventReference overloads. Made one of the overloads
1243         internal for .NET < 2.0.
1244
1245 2006-11-17  Marek Habersack  <grendello@gmail.com>
1246
1247         * PostBackOptions.cs: Renamed the constructors parameters to match
1248         those Microsoft .NET uses.
1249         targetControl must not be passed null to the constructor.
1250
1251         * ClientScriptManager.cs: Support for event validation.
1252         Implemented a GetPostBackHyperlink overload.
1253         Implemented the RegisterForEventValidation methods.
1254         Implemented the ValidateEvent method.
1255         Added support for saving/restoring event validation state.
1256
1257         * Page.cs: EnableEventValidation can be set only from the config
1258         files (the <pages> element), the Page directive or from
1259         Page_Init. After Page_Init returns, an exception is thrown.
1260         Made GetFormatter internal, so that ClientScriptManager can use
1261         it.
1262         Added the internal LifeCycle property which contains the current
1263         life cycle stage of the page request processing.
1264         Added calls to save/restore event validation state.
1265         Added checks for whether child controls of the page support event
1266         validation or not.
1267         Added calls to ClientScriptManager.ValidateEvent in appropriate
1268         places.
1269
1270         * PageLifeCycle.cs: Added the PageLifeCycle enum, used in event
1271         validation.
1272
1273 2006-11-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1274
1275         * LosFormatter.cs:
1276         * ObjectStateFormatter.cs: match MS 1.x and 2.0 behaviour for null and
1277         empty strings.
1278
1279 2006-11-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1280
1281         * SimpleWebHandlerParser.cs: 'using' for file reading.
1282
1283 2006-11-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1284
1285         * Page.cs: revert r67514 until after tagging for the next release. 
1286
1287 2006-11-12 Igor Zelmanovich <igorz@mainsoft.com>
1288
1289         * LiteralControl.cs: fixed: constructors & Text property
1290
1291 2006-11-09 Igor Zelmanovich <igorz@mainsoft.com>
1292
1293         * Page.cs: fixed: LoadControlState is called for controls 
1294         that added on Load and latter, for 1.x refactoring only
1295
1296 2006-11-02 Igor Zelmanovich <igorz@mainsoft.com>
1297
1298         * ClientScriptManager.cs: 
1299         fixed: checks arguments for null in public methods,
1300         fixed public interface.
1301
1302 2006-10-23 Igor Zelmanovich <igorz@mainsoft.com>
1303
1304         * PostBackOptions.cs: fixed: default values of properties 
1305
1306 2006-10-22 Igor Zelmanovich <igorz@mainsoft.com>
1307
1308         * CssStyleCollection.cs:
1309         * AttributeCollection.cs:
1310         fixed: style collection is synchronized with style attribute 
1311
1312 2006-10-19 Igor Zelmanovich <igorz@mainsoft.com>
1313
1314         * ClientScriptManager.cs: fixed: renders id attribute in hidden field
1315
1316 2006-10-18  Marek Habersack  <grendello@gmail.com>
1317
1318         * TemplateParser.cs: reference System.Resources when compiling a
1319         control.
1320
1321         * TemplateControl.cs: implement the GetGlobalResourceObject
1322         ASP.NET 2.0 APIs.
1323
1324 2006-10-12 Igor Zelmanovich <igorz@mainsoft.com>
1325
1326         * Page.cs: fixed: for 2.0 only
1327         When Page processes Callback IsPostBack = false, but it still needs
1328         LoadViewState/ControlState and ProcessPostData
1329
1330 2006-10-11 Igor Zelmanovich <igorz@mainsoft.com>
1331
1332         * DataSourceSelectArguments.cs: fixed: 
1333         SortExpression not returns null,
1334         Empty property returns new instance each time
1335
1336 2006-10-10 Igor Zelmanovich <igorz@mainsoft.com>
1337
1338         * DataSourceSelectArguments.cs: 
1339         fixed: RaiseUnsupportedCapabilitiesError method.
1340
1341 2006-10-09 Igor Zelmanovich <igorz@mainsoft.com>
1342
1343         * DataSourceSelectArguments.cs: fixed: Equals method.
1344
1345 2006-10-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1346
1347         * CssStyleCollection.cs: don't clear the collection of properties, but
1348         create a new one.
1349
1350 2006-10-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1351
1352         * CssStyleCollection.cs: 'style' can be modified on our back, so build
1353         the style table every time instead of keeping one that is not in sync.
1354         Fixes bug #79587.
1355
1356 2006-09-25 Igor Zelmanovich <igorz@mainsoft.com>
1357
1358         * Page.cs: fixed: Cross-page postback feature in ASP.NET 2.0
1359         When page is invoked by cross-page posting, PreviousPage processed all 
1360         live-cycle up to OnLoadComplite included.
1361         IsPostBack, IsCallBack and IsCrossPagePostBack returns relevant values.
1362
1363 2006-09-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1364
1365         * TemplateParser.cs: patch by Joel Reed that makes use of the namespace
1366         collection from the PagesConfiguration to add new namespaces when
1367         generating the page/control code.
1368
1369 2006-09-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1370
1371         * PageParser.cs: support the EnableEventValidation attribute.
1372
1373 2006-09-18 Igor Zelmanovich <igorz@mainsoft.com>
1374
1375         * Page.cs: fixed: Title property works properly
1376
1377 2006-09-17 Igor Zelmanovich <igorz@mainsoft.com>
1378
1379         * ClientScriptManager.cs: added helper method
1380
1381 2006-09-14 Igor Zelmanovich <igorz@mainsoft.com>
1382
1383         * Page.cs: fixed: GetValidators(string), Validate(string) works properly
1384
1385 2006-09-08  Robert Jordan  <robertj@gmx.net>
1386
1387         * Page.cs: assure that RenderTrace is called even if an
1388         exception occurred. Fixes bug #78930.
1389
1390 2006-09-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1391
1392         * TemplateControl.cs: search for the new Page_* event handlers in 2.0.
1393         Patch by Marek Habersack that fixes bug #78268.
1394
1395 2006-09-07 Lluis Sanchez Gual  <lluis@novell.com>
1396
1397         * Page.cs: Use lowercase getElementById in the javascript that
1398         checks the browser.
1399
1400 2006-08-22  Vladimir Krasnov  <vladimirk@mainsoft.com>
1401
1402         * KeyedListEnumerator.cs: fixed Current property to return real object
1403         instead of DictionaryEntry
1404
1405 2006-09-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1406
1407         * Page.cs: don't use the Browser object, as it slows down process
1408         request time *a lot*. Fixes bug #79206.
1409
1410 2006-09-05 Konstantin Triger <kostat@mainsoft.com>
1411
1412         * Page.cs: Imlemented InitOutputCache(OutputCacheParameters cacheSettings).
1413         * OutputCacheParameters.cs: added an implementation.
1414
1415 2006-09-04 Igor Zelmanovich <igorz@mainsoft.com>
1416
1417         * CssStyleCollection.cs: fixed: background-image style attribute
1418
1419 2006-08-31 Konstantin Triger <kostat@mainsoft.com>
1420
1421         * StaticPartialCachingControl.cs: added forwarding implementation for
1422                 2.0 version of BuildCachedControl().
1423
1424 2006-08-30 Igor Zelmanovich <igorz@mainsoft.com>
1425
1426         * Page.cs: added internal method
1427         * ClientScriptManager.cs:
1428
1429 2006-08-30 Igor Zelmanovich <igorz@mainsoft.com>
1430
1431         * ClientScriptManager.cs: added helper method
1432
1433 2006-08-22  Vladimir Krasnov  <vladimirk@mainsoft.com>
1434
1435         * Page.cs: fixed ApplyMasterPage, masterPageFile can be empty string
1436         if compiled with .net aspx parser
1437         fixed OnInit, GetStyleSheets may return null if no css files found by
1438         .net aspx parser
1439
1440 2006-08-22  Vladimir Krasnov  <vladimirk@mainsoft.com>
1441
1442         * TemplateControl.jvm.cs: fixed WireupAutomaticEvents, removed access
1443         modifiers check on event handlers
1444
1445 2006-08-22  Vladimir Krasnov  <vladimirk@mainsoft.com>
1446
1447         * Control.cs: implemented AppRelativeTemplateSourceDirectory for aspx 
1448         parser 2.0
1449         * TemplateControl.jvm.cs: fixed AppRelativeVirtualPath
1450         fixed TemplateSourceDirectory, should not work on master pages. 
1451
1452 2006-08-20  Vladimir Krasnov  <vladimirk@mainsoft.com>
1453
1454         * MasterPageParser.jvm.cs: fixed path resolving
1455         GetCompiledMasterInstance
1456
1457 2006-08-17  Vladimir Krasnov  <vladimirk@mainsoft.com>
1458
1459         * TemplateControl.jvm.cs: fixed data binding API, implemented
1460         AppRelativeVirtualPath, ReadStringResource
1461
1462 2006-08-17  Vladimir Krasnov  <vladimirk@mainsoft.com>
1463
1464         * Page.cs: added stubs to run aspx files compiled by .net
1465
1466 2006-08-17  Vladimir Krasnov  <vladimirk@mainsoft.com>
1467
1468         * MasterPageParser.jvm.cs: implemented
1469
1470 2006-08-10  Andrew Skiba <andrews@mainsoft.com>
1471
1472         * Page.cs: render css path as a virtual path.
1473
1474 2006-08-09  Robert Jordan  <robertj@gmx.net>
1475
1476         * Control.cs: add the 2.0 ResolveClientUrl method.
1477         Expose ResolveClientUrl as internal for the 1.1 profile.
1478         Fixes bug #77539.
1479
1480 2006-08-08  Vladimir Krasnov  <vladimirk@mainsoft.com>
1481
1482         * added MasterPageParser.jvm.cs
1483
1484 2006-08-08  Vladimir Krasnov  <vladimirk@mainsoft.com>
1485
1486         * ControlBuilder.jvm.cs: added BuildObject method
1487
1488 2006-08-08  Vladimir Krasnov  <vladimirk@mainsoft.com>
1489
1490         * ParseChildrenAttribute.cs: fixed ChildControlType property to
1491         compliant to .net
1492         * UserControl.cs: fixed ParseChildren attribute to be compliant
1493         to .net
1494
1495 2006-08-08 Igor Zelmanovich <igorz@mainsoft.com>
1496
1497         * Page.cs: implemented MaintainScrollPositionOnPostBack feature
1498
1499 2006-08-06  Vladimir Krasnov  <vladimirk@mainsoft.com>
1500
1501         * Control.cs: fixed EnableTheming proprty, fixes bug when child 
1502         control has EnableTheming=false and parent has true.
1503
1504 2006-07-31  Vladimir Krasnov  <vladimirk@mainsoft.com>
1505         
1506         * MasterPage.cs: fixed default values, fixed AddContentTemplate
1507
1508 2006-07-31  Vladimir Krasnov  <vladimirk@mainsoft.com>
1509
1510         * Control.cs: fixed EnableTheming proprty, fixes the bug when skins 
1511         are applied even if EnableTheming property was set to false.
1512
1513 2006-07-24 Andrew Skiba <andrews@mainsoft.com>
1514
1515         * DataSourceView.cs: refactor to keep the original exception stack.
1516
1517 2006-07-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1518
1519         * PostBackOptions.cs: default to String.Empty for several field values.
1520         Patch by Marek Habersack.
1521
1522 2006-07-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1523
1524         * Page.cs: when ProcessRequest is not called, get the session from
1525         the current context. Fixes bug #78730.
1526
1527 2006-07-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1528
1529         * Page.cs: fix IsPostback for AJAX calls to match MS behavior. Patch
1530         by Peijen Lin that closes bug #78646.
1531
1532 2006-06-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1533
1534         * TemplateControlParser.cs: fix compilation caching when more than one
1535         @control is compiled from source. Closes bug #78626.
1536
1537 2006-06-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1538
1539         * Page.cs: add the 2.0 Items property. Fixes bug #78467.
1540
1541 2006-06-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1542
1543         * Page.cs: use the new internal LosFormatter.SerializeToBase64.
1544         * LosFormatter.cs: always work on base 64 strings even if the
1545         input/output is on a Stream. Fixes bug #78640.
1546
1547 2006-06-08 Konstantin Triger <kostat@mainsoft.com>
1548
1549         * Page.cs: For loading themes, use '~/App_Themes' instead of
1550         './App_Themes' to enable theme support for files in sub folders.
1551
1552 2006-05-25  Andrew Skiba  <andrews@mainsoft.com>
1553
1554         * Control.cs: move 2.0 stuff into ifdef NET_2_0
1555
1556 2006-05-25  Andrew Skiba  <andrews@mainsoft.com>
1557
1558         * Page.cs, Control.cs: Fix the order of OnInit invocation of controls
1559         created via master page content (see 
1560         http://lists.ximian.com/pipermail/mono-devel-list/2006-May/018585.html ).
1561
1562 2006-05-11  Andrew Skiba  <andrews@mainsoft.com>
1563
1564         * Page.cs, PageTheme.cs: This patch uses LinkedStyleSheets from the
1565         PageTheme and from StyleSheetPageTheme to insert links in page header.
1566
1567 2006-05-10  Andrew Skiba  <andrews@mainsoft.com>
1568
1569         * TemlpateParser.cs: surround file name with quotes
1570
1571 2006-05-08  Chris Toshok  <toshok@ximian.com>
1572
1573         * ControlBuilder.cs (ResetState): set renderIndex to 0 here.  This
1574         fixes the last thing keeping the test in #76818 from working.
1575
1576 2006-05-07 Andrew Skiba <andrews@mainsoft.com>
1577
1578         * Page.cs: if no theme is defined in aspx, read default from web.config.
1579         Same for the style sheet theme.
1580
1581 2006-04-27 Andrew Skiba <andrews@mainsoft.com>
1582
1583         * TemplateParser.cs: format according to
1584         http://lists.ximian.com/pipermail/mono-devel-list/2006-April/018096.html
1585
1586 2006-04-25  Chris Toshok  <toshok@ximian.com>
1587
1588         * PageThemeParser.cs (LinkedStyleSheets): reformat.
1589
1590 2006-04-25 Konstantin Triger <kostat@mainsoft.com>
1591
1592         * Control.cs: implementation for IsViewStateEnabled.
1593
1594 2006-04-25 Andrew Skiba <andrews@mainsoft.com>
1595
1596         * Control.cs: fix null pointer exception
1597
1598 2006-04-23 Andrew Skiba <andrews@mainsoft.com>
1599
1600         * PageThemeParser.cs: add LinkedStyleSheets property
1601
1602 2006-04-16 Andrew Skiba <andrews@mainsoft.com>
1603
1604         * TemplateParser.cs: add internal method AddAssemblyByFileName
1605
1606 2006-04-16 Konstantin Triger <kostat@mainsoft.com>
1607
1608         * SimpleWebHandlerParser.cs: correctly resolve GACs dependencies.
1609
1610 2006-04-11 Konstantin Triger <kostat@mainsoft.com>
1611
1612         * Page.cs, TemplateControl.cs: refactoring implementing Page.GetDataItem().
1613
1614 2006-04-10  Chris Toshok  <toshok@ximian.com>
1615
1616         * PageThemeFileParser.cs (AddDirective): allow Register directives
1617         in skin files.
1618
1619 2006-04-02  Chris Toshok  <toshok@ximian.com>
1620
1621         * Control.cs (DesignMode): always return false for now.  Fixes
1622         #77991.
1623
1624 2006-03-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1625
1626         * ControlBuilder.cs: when creating a default property builder, handle
1627         strings specially.
1628
1629         * StringPropertyBuilder.cs: new builder used in TextBox 2.0.
1630
1631 2006-03-15  Vladimir Krasnov  <vladimirk@mainsoft.com>
1632
1633         * ControlCollection.cs: fixed CopyTo method, fixes bug when if target 
1634         index is not zero
1635
1636 2006-03-13  Chris Toshok  <toshok@ximian.com>
1637
1638         * HtmlTextWriterTag.cs: no [Serializable] in 2.0.
1639
1640         * HtmlTextWriterAttribute.cs: same.
1641
1642         * HtmlTextWriterStyle.cs: same.
1643
1644         * VirtualReferenceType.cs: new enum.
1645
1646 2006-03-13  Chris Toshok  <toshok@ximian.com>
1647
1648         * UserControl.cs: rework InitializeAsUserControl and
1649         InitializeAsUserControlInternal - the Internal variety doesn't set
1650         this.page to null now.
1651
1652         * MasterPage.cs (CreateMasterPage): map the masterPageFile path,
1653         and also remove a line of spew.
1654
1655 2006-03-09  Vladimir Krasnov  <vladimirk@mainsoft.com>
1656
1657         * Added PageParser.jvm.cs, WebServiceParser.jvm.cs
1658
1659 2006-03-07  Chris Toshok  <toshok@ximian.com>
1660
1661         * Page.cs (InitializeStyleSheet): load the style sheet theme using
1662         ThemeDirectoryCompiler.
1663         (InitializeTheme): load the page's theme using
1664         ThemeDirectoryCompiler.
1665         (InternalProcessRequest): call InitializeTheme after OnPreInit.
1666         (FrameworkInitialize): call InitializeStyleSheet.
1667         (PageTheme,StyleSheetPageTheme): new properties to get the
1668         respective themes.
1669
1670         * Control.cs (ApplyStyleSheetSkin): new method.  Calls ApplySkin
1671         on the ControlSkin (if there is one) for this control in the
1672         page's StyleSheetSkin.
1673         (ApplyThemeRecursively): applies the page's theme recursively to
1674         the control hierarchy.  Must be done this way because the control
1675         tree is already present when we apply the theme (it has to be,
1676         since theme's override settings).
1677
1678         * PageTheme.cs (GetControlSkin): add internal call to do the
1679         lookup for us.
1680
1681         * PageThemeFileParser.cs: the parser object that represents each
1682         individual skin file.
1683
1684         * PageThemeParser.cs: the parser object that represents the entire
1685         theme directory.
1686
1687         * PageThemeBuilder.cs: this class generates the right exception on
1688         the right event, but it's not hooked up yet.
1689
1690 2006-03-02  Chris Toshok  <toshok@ximian.com>
1691
1692         * Control.cs (ApplyStyleSheetTheme): remove the exception, and add
1693         a MonoTODO.
1694
1695         * Page.cs (Theme): implement setter/getter.
1696         (StyleSheetTheme): same.
1697         
1698         * PageParser.cs (ProcessMainAttributes): parse the Theme and
1699         StyleSheetTheme attributes.
1700
1701 2006-02-27  Chris Toshok  <toshok@ximian.com>
1702
1703         * TemplateControl.cs: corcompare work.
1704
1705         * ExpressionBindingCollection.cs: same.
1706
1707         * HierarchicalDataSourceControl.cs: same.
1708
1709         * PostBackOptions.cs: same.
1710
1711         * ClientScriptManager.cs: same.
1712
1713         * FilterableAttribute.cs: same.
1714
1715         * ControlCollection.cs: same.
1716
1717         * DataBindingCollection.cs: same.
1718         
1719         * PropertyEntry.cs: mark ctor internal.
1720
1721         * SimpleWebHandlerParser.cs: mark the 2.0 ctor as internal.
1722
1723         * Page.cs: stub out two Theme oriented 2.0 properties.
1724
1725         * DataBinder.cs: remove the obsolete attribute on the ctor.
1726
1727         * TwoWayBoundPropertyEntry.cs: remove this.
1728         
1729         * ControlBuilder.cs (BindingContainerType): virtual in 2.0.
1730
1731         * ThemeProvider: new (stubbed) class.
1732
1733         * SkinBuilder.cs: same.
1734
1735         * PageTheme.cs: same.
1736
1737         * ControlSkin.cs: same.
1738         
1739         * ControlSkinProc.cs: rename this to ControlSkinDelegate.cs.
1740         
1741         * SimplePropertyEntry.cs: mark ctor as internal.
1742
1743         * IThemeResolutionService.cs: enable the 3 members of this
1744         interface.
1745
1746 2006-02-27  Chris Toshok  <toshok@ximian.com>
1747
1748         * ListSourceHelper.cs: this class is static.
1749
1750         * Page.cs: add some EditorBrowsable attributes to the 2.0 events.
1751
1752 2006-02-27  Chris Toshok  <toshok@ximian.com>
1753
1754         * DataSourceView.cs: Name isn't virtual.
1755
1756         * DataSourceControl.cs: beat this class over the head with the
1757         corcompare stick.
1758
1759         * DataSourceControlBuilder.cs: new stubbed control builder for
1760         DataSourceControl.
1761
1762 2006-02-23  Chris Toshok  <toshok@ximian.com>
1763
1764         * Page.cs: more corcompare work.
1765
1766 2006-02-23  Chris Toshok  <toshok@ximian.com>
1767
1768         * Page.cs (ProcessCallbackData): track change to
1769         ICallbackEventHandler iface.
1770
1771         * ICallbackEventHandler.cs: enable the proper members of this
1772         interface.
1773
1774         * DataSourceSelectArguments.cs: reformat getter/setters.
1775         
1776 2006-02-22  Cesar Lopez Nataren  <cnataren@novell.com>
1777
1778         * HtmlTextWriter.cs: Added method WriteEncodedText for the .NET 2.0 profile.
1779
1780 2006-02-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1781
1782         * WebHandlerParser.cs:
1783         * WebServiceParser.cs:
1784         * UserControlParser.cs:
1785         * PageParser.cs: added new ctor that uses a TextReader as input.
1786
1787         * TemplateControlParser.cs: new Reader property.
1788         * SimpleWebHandlerParser.cs: new Reader property and ctor.
1789
1790 2006-02-12  Cesar Lopez Nataren  <cnataren@novell.com>
1791
1792         * HtmlTextWriter.cs: Implemented IsValidFormAttribute and
1793         WriterBreak for the .NET 2.0 profile.
1794
1795 2006-02-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1796
1797         * IThemeResolutionService.cs: this is now added to the
1798         sources file, but some other stuff does not compile yet as the
1799         interface changed after the beta.
1800
1801         * ObjectConverter.cs: removed extra attribute.
1802
1803         * ObjectStateFormatter.cs: add IStateFormatter for 2.0.
1804
1805         * ICallbackEventHandler.cs: update the interface, but commented the
1806         'good' stuff out, since other files need to be fixed too.
1807
1808 2006-02-07  Chris Toshok  <toshok@ximian.com>
1809
1810         * ControlBuilder.cs: rename flushOutputStatements to
1811         methodStatements to at least reflect that they're in that method.
1812
1813 2006-02-07  Chris Toshok  <toshok@ximian.com>
1814
1815         * MasterPage.cs (CreateMasterPage): don't nullref on null
1816         contentTemplateCollection.
1817
1818         * ControlBuilder.cs: add a flushOutputStatements field.
1819
1820         * PageParser.cs (ProcessMainAttributes): handle Title attribute.
1821         (Title): add getter.
1822         
1823         * Page.cs (Title): implement getter/setter.
1824         (InternalProcessRequest): after calling ApplyMasterPage, apply the
1825         page's Title directive if there is one.
1826         (AddContentTemplate): make the EditorBrowsable attribute apply to
1827         the method, not the field.
1828         
1829 2006-02-07  Chris Toshok  <toshok@ximian.com>
1830
1831         * MasterPage.cs: rework this file, adding some static methods
1832         gleaned from MS stack traces, and clear up the propogation of
1833         content templates between nested master pages.
1834
1835         * Control.cs (TemplateControl): implement.
1836
1837         * TemplateControl.cs: re-indent some of the code.
1838         (ReadStringRecource): according to msdn2, these throw
1839         NotSupportedException.
1840
1841         * MasterPageParser.cs (HandleOption): implement.  assign our
1842         master page's MasterPageFile from the UserControl property.
1843
1844         * UserControl.cs (InitializeAsUserControlInternal): new method
1845         that allows initialization without a page.
1846
1847         * UserControlParser.cs (ProcessMainAttributes): for 2.0 handle
1848         MasterPageFile attributes, so we can have nested master pages.
1849         (MasterPageFile): add a 2.0 specific property.
1850         
1851         * TemplateControlParser.cs: in .net 2.0, our base class is
1852         BaseTemplateParser.
1853         (HandleOptions): be consistent and call base.HandleOptions.
1854
1855         * BaseTemplateParser.cs: new (stubbed) class.
1856
1857         * MasterPageControlBuilder.cs: new file, not filled in (and really
1858         not used either.)
1859
1860         * Page.cs (InternalProcessRequest): call ApplyMasterPage.
1861         (SaveExistingContentTemplates): nuke.
1862         (ReapplyExistingContentTemplate): nuke.
1863         (ApplyMasterPage): if we have a master page, call
1864         MasterPage.ApplyMasterPageRecursive with it and add it to our
1865         controls.
1866         (set_MasterPageFile): remove call to SaveExistingContentTemplates.
1867         (get_Master): call MasterPage.CreateMasterPage.
1868         (AddContentTemplate): keep track of the page's content templates
1869         in a local Hashtable - they aren't our master page's content
1870         templates.
1871
1872 2006-02-01  Chris Toshok  <toshok@ximian.com>
1873
1874         * TemplateParser.cs: CONFIGURATION_2_0 => NET_2_0, and replace
1875         calls to GetWebApplicationSection with GetSection.
1876
1877         * SimpleWebHandlerParser.cs: same.
1878
1879         * Page.cs: same.
1880
1881         * PageParser.cs: same.
1882
1883         * BaseParser.cs: same.
1884
1885 2006-01-27  Chris Toshok  <toshok@ximian.com>
1886
1887         * MasterPage.cs (ContentTemplatesInternal): add get/set for the
1888         actual Hashtable.
1889
1890         * Page.cs (SaveExistingContentTemplates): store off the existing
1891         MasterPage content templates so they can be reapplied when setting
1892         MasterPageFile to something else.
1893         (ReapplyExistingContentTemplates): set masterPage's
1894         ContentTemplates to our saved copy.
1895         (set_MasterPageFile): save off the current content templates
1896         before clearing masterPage.
1897         (get_Master): reapply the saved content templates after we create
1898         the new MasterPage.
1899         
1900 2006-01-25  Chris Toshok  <toshok@ximian.com>
1901
1902         * ClientScriptManager.cs (RegisterClientScriptResource): last
1903         patch, I swear.  How can 1 line of code have 3 bugs?
1904
1905 2006-01-25  Chris Toshok  <toshok@ximian.com>
1906
1907         * ClientScriptManager.cs (RegisterClientScriptResource): gah, fix
1908         problem with last commit - unquote "resourceName" so it uses the
1909         parameter instead of the string constant.
1910
1911 2006-01-22  Chris Toshok  <toshok@ximian.com>
1912
1913         * RootBuilder.cs (.cctor): use a 2.0 friendly hashtable ctor to
1914         quiet mcs.
1915
1916         * PageParser.cs (ProcessMainAttributes): i missed a
1917         CONFIGURATION_2_0 block.
1918
1919         * BoundPropertyEntry.cs (.ctor): mark as internal to fix
1920         corcompare.
1921
1922 2006-01-18 Konstantin Triger <kostat@mainsoft.com>
1923
1924         * ObjectStateFormatter.cs: preserve emptiness in ColorFormatter.
1925
1926 2006-01-18 Konstantin Triger <kostat@mainsoft.com>
1927
1928         * HtmlTextWriter.cs: perform case insensitive compare;
1929           return correct key in default case.
1930
1931 2006-01-11  Chris Toshok  <toshok@ximian.com>
1932
1933         * ClientScriptManager.cs (RegisterClientScriptResource):
1934         implement.
1935
1936 2006-01-11  Vladimir Krasnov  <vladimirk@mainsoft.com>
1937
1938         * ObjectStateFormatter.cs: Removed TARGET_JVM parts in 
1939         TypeFormatter.Read
1940
1941 2006-01-10  Chris Toshok  <toshok@ximian.com>
1942
1943         * Page.cs (ValidateCollection): in NET_2_0 if event validation is
1944         off, return true.
1945
1946 2006-01-09  Chris Toshok  <toshok@ximian.com>
1947
1948         * Page.cs: fix a lot of indentation, and add the
1949         EnableEventValidation .net 2.0 property.
1950
1951 2006-01-09  Vladimir Krasnov  <vladimirk@mainsoft.com>
1952
1953         * ObjectStateFormatter.cs: Merged TARGET_JVM parts in 
1954         TypeFormatter.Read, TypeFormatter.Write from /main/5
1955
1956 2006-01-09  Konstantin Triger <kostat@mainsoft.com>
1957
1958         * Page.cs: make ProcessRequest virtual under TARGET_JVM.
1959
1960 2006-01-04  Chris Toshok  <toshok@ximian.com>
1961
1962         * TemplateParser.cs (.ctor): kinda gross, but handle the
1963         AddAssembliesInBin case here.
1964         
1965         * SimpleWebHandlerParser.cs (.ctor): same.
1966
1967 2006-01-04  Chris Toshok  <toshok@ximian.com>
1968
1969         * SimpleWebHandlerParser.cs: Remove the declaration of
1970         compilationConfig in the CONFIGURATION_2_0 case.  it's
1971         unnecessary.
1972         (.ctor): ifdef out the AddAssembliesInBin call in the
1973         CONFIGURATION_2_0 case.  need to revisit this.
1974         (CompilationConfig): add a CONFIGURATION_2_0 version.
1975
1976         * BaseParser.cs: Remove the declaration of compilationConfig in
1977         the CONFIGURATION_2_0 case.  it's unnecessary.
1978
1979 2005-12-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1980
1981         * Control.cs: use _controls instead of the property wherever possible.
1982
1983 2005-12-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1984
1985         * Control.cs: use the _controls field instead of the Controls property.
1986         Fixes bug #76919.
1987
1988 2005-11-30  Sebastien Pouliot  <sebastien@ximian.com>
1989
1990         * KeyedList.cs: Fixed for IOrderedDictionary change in 2.0 final.
1991         Now internal.
1992         * KeyedListEnumerator.cs: Now internal.
1993
1994 2005-11-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1995
1996         * ControlCollection.cs: allow 'null' in Remove.
1997
1998 2005-11-28  Chris Toshok  <toshok@ximian.com>
1999
2000         * Page.cs (GetFormatter): CONFIGURATION_2_0 work.
2001
2002         * TemplateParser.cs (..ctor): CONFIGURATION_2_0 work.
2003         (PagesConfig): add a CONFIGURATION_2_0 version that returns a
2004         PagesSection.
2005
2006         * PageParser.cs (ProcessMainAttributes): CONFIGURATION_2_0 work.
2007
2008         * BaseParser.cs (CompilationConfig): add a CONFIGURATION_2_0
2009         version that returns a CompilationSection.
2010
2011 2005-11-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2012
2013         * SimpleWebHandlerParser.cs: removed 'codebehind' related stuff.
2014
2015 2005-11-09  Chris Toshok  <toshok@ximian.com>
2016
2017         * ViewStateEncryptionMode.cs: new 2.0 enum.
2018
2019 2005-11-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2020
2021         * TemplateParser.cs: fixes #76423. Not tested properly.
2022
2023 2005-11-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2024
2025         * Page.cs: call LoadViewStateRecursive when the Form collection has
2026         not been used by a different page (GetTypeHashCode). This fixes problems
2027         when calling Server.Transfer while preserving Form and QueryString,
2028         as the page we transfer to used the view state stored in the Form, which
2029         contained the serialized data for the page calling Server.Transfer
2030         instead.
2031
2032 2005-10-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2033
2034         * Page.cs: add/remove the error before/after invoking OnError.
2035
2036 2005-10-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2037
2038         * Page.cs: call OnError when there's an exception (not for TAE). Fixes
2039         bug #76572.
2040
2041 2005-10-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2042
2043         * TemplateControl.cs:
2044         * PartialCachingControl.cs: if a control is cacheable, LoadControl
2045         returns a PartialCachingControl that holds the VaryBy* and takes care
2046         of partial caching and rendering. Fixes bug #76547.
2047
2048 2005-10-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2049
2050         * Page.cs: don't cache the 'Validate()' results. IsValid retests
2051         the validators again.
2052
2053 2005-09-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2054
2055         * DesignerDataBoundLiteralControl.cs: changed autoid api.
2056         * DataBoundLiteralControl.cs: changed autoid api.
2057
2058         * Control.cs: fixlet for UniqueID and weird test case.  Removed
2059         PreventAutoID and only use the property to set that value.
2060
2061         * LiteralControl.cs: changed autoid api.
2062
2063 2005-09-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2064
2065         * AttributeCollection.cs: avoid code duplication and
2066         don't add "style" to the bag, or it will overwrite the settings made
2067         by CssStyleCollection.
2068
2069         * CssStyleCollection.cs: make it throw where MS throws.
2070         Minimize the number of times we create the "style" string and take
2071         care of updating it for the AttributeCollection. FillStyle and
2072         BagToString are now private. One should use the 2.0 (internal in <2.0)
2073         Value property.
2074
2075 2005-09-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2076
2077         * Control.cs: fix HasChildViewStates.
2078
2079 2005-09-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2080
2081         * LosFormatter.cs: when the default ctor is used, MAC is disabled.
2082         Fixes bug #76240.
2083
2084 2005-09-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2085
2086         * ObjectTagBuilder.cs: only fail when no id and no attributes.
2087
2088 2005-09-23  Sebastien Pouliot  <sebastien@ximian.com>
2089
2090         * DataBindingCollection.cs: Using an hashtable is a nice trick but
2091         we need to copy values (not the DictionaryEntry) in CopyTo.
2092         * Page.cs: IsValid throws an exception if the page hasn't be 
2093         validated. VerifyRenderingInServerForm doesn't throw an exception
2094         during unit testing (without a context?) but does in normal ops.
2095
2096 2005-09-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2097
2098         * LosFormatter.cs: the exceptions thrown have a 500 httpCode. Really
2099         save the allocation of new MemoryStreams when possible. Thanks to
2100         Sebastien again.
2101
2102 2005-09-23  Ben Maurer  <bmaurer@ximian.com>
2103
2104         * HtmlTextWriter.cs: Initial support for escaping.
2105
2106 2005-09-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2107
2108         * ViewStateOutputHashStream.cs: Removed. It didn't last long.
2109
2110         * Page.cs: almost restored to its previous state, but now that we found
2111         that LosFormatter ctor that takes 'enableMac', moved the logic to
2112         add the hash and validate there. Thanks to Sebastien for his input.
2113         
2114         * LosFormatter.cs: implemented the missing ctors and support for
2115         "MAC" validation of the data.
2116
2117 2005-09-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2118
2119         * Page.cs:
2120         * ViewStateOutputHashStream.cs: added support for viewstate MAC. It
2121         prevents the viewstate being altered on the client and it's disabled
2122         by default as per the documentation, but MS machine.config has it
2123         enabled in machine.config.
2124
2125 2005-09-22  Miguel de Icaza  <miguel@novell.com>
2126
2127         * DataBindingCollection.cs: Raise the event, remove MonoTODO.
2128
2129         * MinimizableAttributeTypeConverter.cs: Fix warning, compare to a
2130         string. 
2131
2132 2005-09-21  Sebastien Pouliot  <sebastien@ximian.com>
2133
2134         * Control.cs: Added null checks for Trace as it can be null when 
2135         rendering (like it was for 39 unit tests).
2136
2137 2005-09-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2138
2139         * Page.cs: reverted hacks used with the wrong method of getting a
2140         control rendered size.
2141         * Control.cs: if the trace is enabled, save control rendered size.
2142
2143 2005-09-19  Sebastien Pouliot  <sebastien@ximian.com> 
2144  
2145         * Page.cs: Remove references to IPageParser (removed from 2.0 RC). We
2146         now use HtmlHeader directly.
2147         * UrlPropertyAttribute.cs: Removed AllowedTypes property (2.0 RC) and
2148         rewrote Equals to avoid dual type cast.
2149
2150 2005-09-19  Sebastien Pouliot  <sebastien@ximian.com>
2151
2152         * SupportsEventValidationAttribute.cs: New attribute added in 2.0 RC.
2153
2154 2005-09-19  Sebastien Pouliot  <sebastien@ximian.com> 
2155
2156         * ControlBuilder.cs: Added BuildObject override for 2.0 profile.
2157         * TagPrefixAttribute.cs: Added LinkDemand for AspNetHostingPermission
2158         with Minimal level. Fixed checks on ctor.
2159         * TemplateBuilder.cs: Added LinkDemand and InheritanceDemand for 
2160         AspNetHostingPermission with Minimal level.
2161         * TemplateContainerAttribute.cs: Added LinkDemand for 
2162         AspNetHostingPermission with Minimal level.
2163         * TemplateControl.cs: Added LinkDemand and InheritanceDemand for 
2164         AspNetHostingPermission with Minimal level. Fixed checks/exceptions. 
2165         Stubbed IFilterResolutionService for CAS testing.
2166         * TemplateControlParser.cs: Added LinkDemand and InheritanceDemand for
2167         AspNetHostingPermission with Minimal level.
2168         * TemplateParser.cs: Added LinkDemand and InheritanceDemand for 
2169         AspNetHostingPermission with Minimal level.
2170         * ThemeableAttribute.cs: Added LinkDemand for AspNetHostingPermission
2171         with Minimal level. Removed IDispose interface.
2172         * ToolboxDataAttribute.cs: Added LinkDemand for 
2173         AspNetHostingPermission with Minimal level. Fixed IsDefaultAttribute 
2174         to work on both 1.x and 2.0 profiles.
2175         * Triplet.cs: Added LinkDemand and (only for 1.x) InheritanceDemand 
2176         for AspNetHostingPermission with Minimal level.
2177         * UserControl.cs: Added LinkDemand and InheritanceDemand for 
2178         AspNetHostingPermission with Minimal level. Stubbed 
2179         IFilterResolutionService for CAS testing.
2180         * UserControlControlBuilder.cs: Added LinkDemand and InheritanceDemand
2181         for AspNetHostingPermission with Minimal level.
2182         * ValidationPropertyAttribute.cs: Added LinkDemand for 
2183         AspNetHostingPermission with Minimal level.
2184         * ValidatorCollection.cs: Added LinkDemand for AspNetHostingPermission 
2185         with Minimal level.
2186         * WebResourceAttribute.cs: Removed extra ctor and added setter to 
2187         PerformSubstitution.
2188         * WebServiceParser.cs: Added LinkDemand and InheritanceDemand for 
2189         AspNetHostingPermission with Minimal level.
2190
2191 2005-09-15  Sebastien Pouliot  <sebastien@ximian.com> 
2192  
2193         * ParseChildrenAttribute.cs: Added LinkDemand for 
2194         AspNetHostingPermission with Minimal level. Simplified Equals to avoid
2195         casting. Added new ctor and public fields (2.0). Changed 
2196         ChildControlType setter visibility to internal.
2197         * PartialCachingAttribute.cs: Added LinkDemand for 
2198         AspNetHostingPermission with Minimal level. Added new ctor and 
2199         SqlDependency property (2.0).
2200         * PartialCachingControl.cs: Added LinkDemand and InheritanceDemand for
2201         AspNetHostingPermission with Minimal level.
2202         * PersistenceModeAttribute.cs: Added LinkDemand for 
2203         AspNetHostingPermission with Minimal level. Simplified Equals to avoid
2204         casting.
2205         * PersistChildrenAttribute.cs: Added LinkDemand for 
2206         AspNetHostingPermission with Minimal level. Simplified Equals to avoid 
2207         casting.
2208         * PropertyConverter.cs: Added LinkDemand for AspNetHostingPermission 
2209         with Minimal level. Class is static in 2.0.
2210         * RootBuilder.cs: Added LinkDemand and, for 2.0, InheritanceDemand for 
2211         AspNetHostingPermission with Minimal level. Class is no more sealed in
2212         2.0. Added new (2.0) BuiltObjects property.
2213         * SimpleWebHandlerParser.cs: Added LinkDemand and InheritanceDemand 
2214         for AspNetHostingPermission with Minimal level.
2215         * StateItem.cs: Added LinkDemand for AspNetHostingPermission with 
2216         Minimal level.
2217         * StateBag.cs: Added LinkDemand for AspNetHostingPermission with 
2218         Minimal level. Removed SetDirty() which was called (2.0) but did 
2219         nothing.
2220         * StaticPartialCachingControl.cs: Added LinkDemand and 
2221         InheritanceDemand for AspNetHostingPermission with Minimal level.
2222
2223 2005-09-15  Sebastien Pouliot  <sebastien@ximian.com>
2224
2225         * Html32TextWriter.cs: Added LinkDemand and InheritanceDemand for 
2226         AspNetHostingPermission with Minimal level. Added new 2.0 properties
2227         (but the generated HTML doesn't use them).
2228         * HtmlTextWriter.cs: Added LinkDemand and InheritanceDemand for 
2229         AspNetHostingPermission with Minimal level.
2230         * ImageClickEventArgs.cs: Added LinkDemand for AspNetHostingPermission
2231         with Minimal level.
2232         * LiteralControl.cs: Added LinkDemand and InheritanceDemand for 
2233         AspNetHostingPermission with Minimal level. Default Text is null.
2234         * LosFormatter.cs: Added LinkDemand and InheritanceDemand for 
2235         AspNetHostingPermission with Minimal level. Stubbed new 2.0 ctor.
2236         * ObjectConverter.cs: Added LinkDemand and InheritanceDemand for 
2237         AspNetHostingPermission with Minimal level. Obsoleted ctor for 2.0.
2238         * ObjectTagBuilder.cs: Added LinkDemand for AspNetHostingPermission 
2239         with Minimal level. Added check for null id (HttpException).
2240         * Page.cs: Added LinkDemand and InheritanceDemand for 
2241         AspNetHostingPermission with Minimal level. Throw some HttpException 
2242         when no context is available.
2243         * Pair.cs: Added LinkDemand for AspNetHostingPermission with Minimal 
2244         level. InheritanceDemand too for 1.x.
2245         * PageParser.cs: Added LinkDemand for AspNetHostingPermission with 
2246         Minimal level.
2247
2248 2005-09-14  Sebastien Pouliot  <sebastien@ximian.com>
2249  
2250         * DataBinder.cs: Added LinkDemand for AspNetHostingPermission with 
2251         Minimal level. Fixed some exceptions.
2252         * DataBindingCollection.cs: Added LinkDemand for 
2253         AspNetHostingPermission with Minimal level. Added 2.0 method and 
2254         event.
2255         * DataBindingHandlerAttribute.cs: Added LinkDemand for 
2256         AspNetHostingPermission with Minimal level.
2257         * DataBinding.cs: Added LinkDemand for AspNetHostingPermission with
2258         Minimal level. Simplified Equals (reduced casts).
2259         * DataBoundLiteralControl.cs: Added LinkDemand for 
2260         AspNetHostingPermission with Minimal level. Implemented ITextControl
2261         for 2.0.
2262         * DesignerDataBoundLiteralControl.cs: Added LinkDemand for 
2263         AspNetHostingPermission with Minimal level.
2264         * DesignTimeParseData.cs: Added LinkDemand for AspNetHostingPermission
2265         with Minimal level. Added new 2.0 properties.
2266         * DesignTimeTemplateParser.cs: Added LinkDemand for 
2267         AspNetHostingPermission with Minimal level. Made class static and 
2268         stubbed missing methods (2.0).
2269         * EmptyControlCollection.cs: Added LinkDemand and InheritanceDemand 
2270         for AspNetHostingPermission with Minimal level. Changed Add* methods
2271         exceptions to HttpException.
2272
2273 2005-09-14  Sebastien Pouliot  <sebastien@ximian.com> 
2274
2275         * AttributeCollection.cs: Added LinkDemand for AspNetHostingPermission
2276         with Minimal level.
2277         * BaseParser.cs: Added LinkDemand and InheritanceDemand for 
2278         AspNetHostingPermission with Minimal level.
2279         * BasePartialCachingControl.cs: Added LinkDemand and InheritanceDemand
2280         for AspNetHostingPermission with Minimal level.
2281         * CompiledTemplateBuilder.cs: Added LinkDemand for 
2282         AspNetHostingPermission with Minimal level.
2283         * ConstructorNeedsTagAttribute.cs: Added LinkDemand for 
2284         AspNetHostingPermission with Minimal level.
2285         * ControlBuilderAttribute.cs: Added LinkDemand for 
2286         AspNetHostingPermission with Minimal level. Simplified Equals and 
2287         IsDefaultAttribute.
2288         * ControlBuilder.cs: Added LinkDemand and InheritanceDemand for 
2289         AspNetHostingPermission with Minimal level.
2290         * ControlCachePolicy.cs: Hided ctor and removed SupportsCaching setter
2291         * ControlCollection.cs: Added LinkDemand and InheritanceDemand for 
2292         AspNetHostingPermission with Minimal level. Fixed possible stack 
2293         overflow in Add* methods. Fixed CopyTo as we're not allocating the 
2294         array based on the number of items.
2295         * Control.cs: Added LinkDemand and InheritanceDemand for 
2296         AspNetHostingPermission with Minimal level. Fixed 2.0 signatures.
2297         * CssStyleCollection.cs: Added LinkDemand for AspNetHostingPermission 
2298         with Minimal level.
2299         * IStyleSheet.cs: Fixed parameter orders (2.0).
2300
2301 2005-09-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2302
2303         * TemplateParser.cs: default VS 2005 pages are compiled fine now.
2304
2305 2005-09-07  Chris Toshok  <toshok@ximian.com>
2306
2307         * MinimizableAttributeTypeConverter.cs: new class, whose existence
2308         we know about because of corcompare, and for whose implementation
2309         we have exclusively nunit to thank.
2310
2311 2005-09-06  Chris Toshok  <toshok@ximian.com>
2312
2313         * RootBuilder.cs (.cctor): doh, add all the new html controls
2314         here.
2315
2316 2005-08-31  Chris Toshok  <toshok@ximian.com>
2317
2318         * DataSourceSelectArguments.cs (Empty): this is apparently,
2319         according to corcompare, a property, not a field.  go figure.
2320         (Equals): implement.
2321         (IsEmpty): remove all mention of it.
2322         
2323 2005-08-29  Chris Toshok  <toshok@ximian.com>
2324
2325         * StateBag.cs (GetChar): add.
2326
2327 2005-08-28  Chris Toshok  <toshok@ximian.com>
2328
2329         * Page.cs: more random corcompare work.
2330         (PageAdapter): implement.
2331         
2332 2005-08-28  Chris Toshok  <toshok@ximian.com>
2333
2334         * Page.cs (.ctor): set our initial ID to "__Page".
2335         (SmartNavigation): obsolete in 2.0.
2336         (FindControl): new implementation.  Just check our own ID against
2337         the control we're looking for.  otherwise pass it along to
2338         base.FindControl.
2339         (GetPostBackClientHyperlink): obsolete in 2.0.
2340
2341 2005-08-28  Chris Toshok  <toshok@ximian.com>
2342
2343         * ClientScriptManager.cs: public sealed in 2.0
2344
2345         * IAdaptableTextWriter.cs: new 2.0 interface.
2346
2347         * IHierarchyData.cs: fix return type for GetParent.
2348
2349 2005-08-28  Chris Toshok  <toshok@ximian.com>
2350
2351         * Pair.cs: mark serializable and sealed in 2.0.
2352
2353 2005-08-26  Sebastien Pouliot  <sebastien@ximian.com>
2354
2355         * CssStyleCollection.cs: Implemented setter for Value (2.0) using the
2356         existing (but internal) FillStyle method. Rewrote BagToString to use an
2357         HtmlTextWriter so we get the "right" format for background-image url.
2358
2359 2005-08-26  Sebastien Pouliot  <sebastien@ximian.com> 
2360  
2361         * CssStyleCollection.cs: Implemented this[HtmlTextWriterStyle], 
2362         Remove(HtmlTextWriterStyle) and the getter for Value (all 2.0). Removed
2363         the extra space from last patch because they break some unit tests.
2364
2365 2005-08-26  Lluis Sanchez Gual  <lluis@novell.com> 
2366
2367         * CssStyleCollection.cs: Added some spacing.
2368         * HtmlTextWriter.cs: Made style and attribute tables static.
2369           Implemented StaticGetStyleName().
2370
2371 2005-08-26  Sebastien Pouliot  <sebastien@ximian.com> 
2372  
2373         * CssStyleCollection.cs: Stubbed new 2.0 stuff to allow TableStyleTest
2374         compilation. 
2375         * HtmlTextWriter.cs: Fix style rendering for BackgroundImage in 2.0.
2376         The new rendering formats the value as "url(" + original + ")".
2377
2378 2005-08-26  Sebastien Pouliot  <sebastien@ximian.com> 
2379
2380         * HtmlTextWriter.cs: Added support for VerticalAlign style (as it 
2381         depends on the HtmlTextWriterStyle ordering).
2382
2383 2005-08-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2384
2385         * HtmlTextWriter.cs: remove 'mistaken end of statement' and FIXME.
2386
2387 2005-08-25  Sebastien Pouliot  <sebastien@ximian.com> 
2388
2389         * HtmlTextWriterStyle.cs: Added missing VerticalAlign in 2.0 (which 
2390         fixed the rest of the enum values).
2391         * UrlPropertyAttribute.cs: Removed the .ctor accepting an UrlTypes
2392         parameter to match 2.0 API. Added a setter to the AllowedTypes 
2393         property.
2394
2395 2005-08-24  Chris Toshok  <toshok@ximian.com>
2396
2397         * Control.cs (get_Adapter): Instead of throwing an exception, just
2398         return null, so we can write the rest of the Control specific
2399         Adapter code and just not enable any of those code paths until we
2400         have actual adapters.  Also flag TODO.
2401         (EnsureChildControls): Call out to Adapter.CreateChildControls if
2402         we have an adapter.
2403         (RenderChildren): call "RenderControl (writer, adapter)" if we
2404         have an adapter.
2405         (RenderControl): implement the adapter case naively.
2406         (LoadRecursive): call out to Adapter.OnLoad if we have one.
2407         (PreRenderRecursiveInternal): call out to Adapter.OnPrerender if
2408         we have one.
2409         (InitRecursive): call out to Adapter.OnInit if we have one.
2410
2411 2005-08-24  Chris Toshok  <toshok@ximian.com>
2412
2413         * Page.cs (GetPostBackEventReference): track change to
2414         ClientScriptManager and don't call a removed method.
2415
2416         * ClientScriptManager.cs: track more recent docs and corcompare
2417         output.
2418
2419 2005-08-24  Sebastien Pouliot  <sebastien@ximian.com>
2420
2421         * KeyedList.cs: Fixed bug when removing an unexisting object.
2422         * StateManagedCollection.cs: Fixed API for beta2. Fixed buglets found 
2423         in implementing RoleGroupCollection.
2424
2425 2005-08-22  Sebastien Pouliot  <sebastien@ximian.com>
2426
2427         * Page.cs: Use Control property (and not the _control variable) to get
2428         the User (so the virtual Control property can be overriden properly).
2429         Sadly this doesn't seems to be the case for other properties (like 
2430         Request).
2431
2432 2005-08-18  Dick Porter  <dick@ximian.com>
2433
2434         * ControlCachePolicy.cs, PersistChildrenAttribute.cs,
2435         UserControl.cs, DesignerDataBoundLiteralControl.cs,
2436         PageStatePersister.cs, DataBoundLiteralControl.cs, Control.cs,
2437         BasePartialCachingControl.cs, LiteralControl.cs: 2.0 API fixes and
2438         stubs and attribute fixes
2439
2440 2005-08-13  Sebastien Pouliot  <sebastien@ximian.com>
2441
2442         * Control.cs: Add protected virtual SetDesignModeState, in 2.0 
2443         profile, as this is required for the Login control.
2444
2445 2005-08-11  Dick Porter  <dick@ximian.com>
2446
2447         * CssStyleCollection.cs: Tweak the css string format to pass a
2448         unit test
2449
2450         * AttributeCollection.cs: Don't NRE if someone sets the "style"
2451         attribute to null.
2452
2453 2005-08-05  Ben Maurer  <bmaurer@ximian.com>
2454
2455         * HtmlTextWriter.cs: Revert the patch below, see test case
2456
2457 2005-08-05  Dick Porter  <dick@ximian.com>
2458
2459         * HtmlTextWriter.cs: Make <option> tags render inline, to match
2460         the ms output
2461
2462 2005-08-03  Ben Maurer  <bmaurer@ximian.com>
2463
2464         * HtmlTextWriter.cs: Optmize this not to do insane amounts of
2465         allocation for large pages, etc.
2466
2467 2005-07-30  Chris Toshok  <toshok@ximian.com>
2468
2469         * Page.cs (VerifyRenderingInServerForm): copy MS's error message
2470         since our form-errors jsunit tests depend on it.
2471
2472 2005-07-30  Chris Toshok  <toshok@ximian.com>
2473
2474         * DataBinder.cs (FormatResult): make internal, not private.
2475
2476 2005-07-29  Ben Maurer  <bmaurer@ximian.com>
2477
2478         * StateBag.cs: Don't remove when tracking viewstate, as per msft
2479         docs.
2480
2481 2005-07-29  Ben Maurer  <bmaurer@ximian.com>
2482
2483         * StateBag.cs: Actually *remove* items that are null. Duh.
2484
2485 2005-07-21  Peter Dennis Bartok  <pbartok@novell.com>
2486
2487         * Page.cs: Need to throw exception when accessing Request but no
2488           context exists
2489
2490 2005-07-20  Chris Toshok  <toshok@ximian.com>
2491
2492         * ClientScriptManager.cs (GetClientValidationEvent): the JS we
2493         stick in onclick handlers for buttons/links/etc.
2494
2495         * Page.cs (GetSubmitStatements): new function to return
2496         scriptManager.WriteSubmitStatements.  Used by HtmlForm.
2497         (AreValidatorsUplevel): used by many of the button/linkbutton
2498         controls (the ones that can CauseValidation) to tell whether or
2499         not to emit client side validation calls.
2500
2501 2005-07-20  Chris Toshok  <toshok@ximian.com>
2502
2503         * WebResourceAttribute.cs: make internal (and available) in
2504         !NET_2_0.
2505
2506 2005-07-20  Chris Toshok  <toshok@ximian.com>
2507
2508         * ClientScriptManager.cs (GetWebResourceUrl): make internal (but
2509         available) in !NET_2_0.
2510
2511 2005-07-18  Peter Dennis Bartok  <pbartok@novell.com>
2512
2513         * Control.cs: Added IDataBindingsAccessor interface methods
2514
2515 2005-07-18  Ben Maurer  <bmaurer@ximian.com>
2516
2517         * HtmlTextWriter.cs: Fix nested indentation
2518
2519 2005-07-18  Peter Dennis Bartok  <pbartok@novell.com>
2520
2521         * Control.cs: Added missing IParserAccessor.AddParsedSubObject 
2522           interface method
2523
2524 2005-07-18  Ben Maurer  <bmaurer@ximian.com>
2525
2526         * HtmlTextWriter.cs: Fix indentation (somewhat at least)
2527
2528 2005-07-18  Peter Dennis Bartok  <pbartok@novell.com>
2529
2530         * Control.cs:
2531           - Default name for controls on MS.Net is "_ctl" not "_ctrl"
2532           - MS does not append 'a' for auto-generated names
2533
2534 2005-07-17  Ben Maurer  <bmaurer@ximian.com>
2535
2536         * AttributeCollection.cs: Use the invariant culture.
2537
2538         * StateBag.cs: "Duh" optimization: return null when there are no
2539         dirty items in the view state
2540
2541 2005-07-14  Ben Maurer  <bmaurer@ximian.com>
2542
2543         * StateBag.cs: A "short" version of my favorite method.
2544
2545         * HtmlTextWriter.cs: New method to get the tag name staticly.
2546
2547 2005-07-14  Duncan Mak  <duncan@novell.com>
2548
2549         * DataBindingHandlerAttribute.cs: Fixed after receiving some
2550         comments from Gonzalo.
2551
2552 2005-07-13  Jackson Harper  <jackson@ximian.com>
2553
2554         * PropertyConverter.cs: No public constructors.
2555
2556 2005-07-13  Ben Maurer  <bmaurer@ximian.com>
2557
2558         * HtmlTextWriter.cs: Remove debugging spew. Style cleanup
2559
2560 2005-07-12  Ben Maurer  <bmaurer@ximian.com>
2561
2562         * HtmlTextWriter.cs: Make styles work.
2563
2564 2005-07-11  Peter Dennis Bartok  <pbartok@novell.com>
2565
2566         * AttributeCollection.cs: 
2567           - Changes to match MS behaviour, the "style" attribute is always 
2568             added to the list, in addition to being added to the 
2569             CssStyleCollection. Also added check for "style" attribute when 
2570             setting via index setter
2571           - When "Style" attribute is added, CssStyleCollection is 
2572             automatically created
2573           - The style keyword needs to be lowercase
2574
2575 2005-07-11  Ben Maurer  <bmaurer@ximian.com>
2576
2577         * HtmlTextWriter.cs: Missing a PopEndTag here.
2578
2579         * PropertyConverter.cs: Pass tests
2580
2581 2005-07-09  Miguel de Icaza  <miguel@novell.com>
2582
2583         * DataBindingHandlerAttribute.cs: Create the "Default" property.
2584
2585 2005-07-09  Duncan Mak  <duncan@novell.com>
2586
2587         * DataBindingHandlerAttribute.cs: Implemented.
2588
2589 2005-07-08  Ben Maurer  <bmaurer@ximian.com>
2590
2591         * HtmlTextWriter.cs: Much better compliance with msft
2592
2593 2005-07-08  Jackson Harper  <jackson@ximian.com>
2594
2595         * ToolbarDataAttribute.cs: New implementation.
2596
2597 2005-07-07  Jackson Harper  <jackson@ximian.com>
2598
2599         * PropertyConverter.cs: New implementation.
2600
2601 2005-07-07  Ben Maurer  <bmaurer@ximian.com>
2602
2603         * StateBag.cs: Noticed an issue where SetDirty was called when the
2604         key did not exist.
2605
2606 2005-07-07  Ben Maurer  <bmaurer@ximian.com>
2607
2608         * StateBag.cs: Add a method that gets a string or else a default
2609         value.
2610
2611 2005-07-07  Dick Porter  <dick@ximian.com>
2612
2613         * StateBag.cs: Added internal SetDirty (void) method to fix the
2614         build
2615
2616 2005-07-07  Sebastien Pouliot  <sebastien@ximian.com>
2617
2618         * HtmlTextWriter.cs: Small fixlet when attribute has no value.
2619
2620 2005-07-07  Miguel de Icaza  <miguel@novell.com>
2621
2622         * HtmlTextWriter.cs: Return the stuff in lowercase to pass the
2623         tests. 
2624
2625         * StateBag.cs: Add NET_2_0 SetDirty method to get the build
2626         going. 
2627
2628 2005-07-07  Sebastien Pouliot  <sebastien@ximian.com>
2629
2630         * HtmlTextWriter.cs: Small fixlet (required for the unit tests).
2631
2632 2005-07-06  Ben Maurer  <bmaurer@ximian.com>
2633
2634         * HtmlTextWriter.cs: Make sure to clear attributes when they are
2635         written.
2636
2637         * StateBag.cs: New impl
2638
2639 2005-06-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2640
2641         * Page.cs:
2642         * Control.cs: avoid the creation of the EventHandlerList and accessing 
2643         to it whenever possible. Fix ENABLE_THEMING constant.
2644
2645 2005-06-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2646
2647         * TemplateParser.cs:
2648         * TemplateControlParser.cs:
2649         * UserControlParser.cs: detect circular references when a control tries
2650         to register itself as a tag. Fixes bug #75376.
2651
2652 2005-06-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2653
2654         * PageParser.cs: don't try to compile the master page if it wan't
2655         provided. Use MapPath from the base classes instead of the long
2656         version. Fixes bug #75269 that prevented xsp2 from working properly.
2657
2658 2005-06-13  Lluis Sanchez Gual <lluis@novell.com> 
2659
2660         * MasterPage.cs: Clear the default content of placeholders before
2661         adding the page content. Fixes bug #75193.
2662
2663 2005-06-13  Lluis Sanchez Gual <lluis@novell.com>
2664
2665         * PageParser.cs: Added MasterType property. Get the type from the
2666         MasterType directive.
2667         * MasterPageParser.cs: Added GetCompiledMasterType method.
2668
2669 2005-06-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2670
2671         * UserControl.cs:
2672         * Page.cs:
2673         * Control.cs: updates for 1.1 SP1
2674
2675 2005-06-06  Lluis Sanchez Gual <lluis@novell.com>
2676
2677         * Control.cs: Added new DataBind() overload for 2.0. The old
2678         method calls this new overload.
2679
2680 2005-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2681
2682         * TemplateParser.cs: ignore empty assembly.Location for in-memory
2683         generated assemblies.
2684
2685 2005-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2686
2687         * Page.cs: added AddContentTemplate method.
2688
2689 2005-05-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2690
2691         * AttributeCollection.cs: html-encode attribute values. Fixes
2692         bug #73771.
2693
2694 2005-05-26  Lluis Sanchez Gual <lluis@novell.com>
2695
2696         * DataSourceView.cs: Fix api.
2697         * NonVisualControlAttribute.cs: Implemented.
2698         * IDataItemContainer.cs: Added missing properties.
2699         * Control.cs: Added new EnableTheming and SkinID properties.
2700         * HierarchicalDataSourceControl.cs: Implemented missing methods.
2701
2702 2005-05-13  Lluis Sanchez Gual <lluis@novell.com>
2703
2704         * ControlCollection.cs: Added internal setter for ReadOnly.
2705
2706 2005-05-09 Geoff Norotn <gnorton@customerdna.com>
2707
2708         * TemplateParser.cs: Silently remove the CodeFile attribute that ASP.NET 2.0
2709         uses instead of codebehind.
2710
2711 2005-05-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2712
2713         * Page.cs: as setting CurrentCulture is slow, don't set it if the
2714         culture has not changed since before the page started processing.
2715
2716 2005-05-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2717
2718         * TemplateParser.cs: LoadWithPartialName returns null if the assembly is
2719         not found.
2720
2721 2005-04-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2722
2723         * TemplateParser.cs:
2724         * SimpleWebHandlerParser.cs: removed values assigned and neved used.
2725
2726 2005-04-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2727
2728         * SimpleWebHandlerParser.cs:
2729         * TemplateParser.cs: always get the location (full path) for assemblies,
2730         even the ones from the GAC.
2731
2732         * BaseCompiler.cs: check that DynamicBase directory exists before
2733         creating the TempFileCollection.
2734
2735 2005-04-22  Lluis Sanchez Gual <lluis@novell.com>
2736
2737         * ClientScriptManager.cs: Use a linked list instead of a Hashtable
2738         to store the scripts. In this way, scripts will be rendered in the
2739         same order as they have been registered. It shouldn't be slower
2740         since pages don't have many scripts.
2741
2742 2005-04-21  Lluis Sanchez Gual <lluis@novell.com>
2743
2744         * IEditableTextControl.cs: Implemented.
2745         * DataBinder.cs: Marked constructor as obsolete in 2.0.
2746         In GetDataItem, check for the IDataItemContainer interface
2747         in the container.
2748         * TemplateControl.cs: Improved check for data item.
2749
2750 2005-04-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2751
2752         * TemplateParser.cs: we still need LoadWithPartialName if Load fails.
2753         * Page.cs: ensure _requiresPostBack is emptied if we didn't have a copy
2754         for second postback.
2755
2756 2005-04-20  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
2757         * TemplateParser.cs: Adding support for Strict/Explicit attributes 
2758         for @Page/@Control directives as documented at 
2759         http://msdn.microsoft.com/library/en-us/cpgenref/html/cpconControlDirective.asp.
2760         First step don't choke on them. Fixing #74671
2761
2762 2005-04-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2763
2764         * TemplateParser.cs: use Load instead of LoadWithPartialName. That was
2765         there from the time when Load wasn't working properly. First part of the
2766         fix to 74500.
2767
2768 2005-04-15  Lluis Sanchez Gual <lluis@novell.com>
2769
2770         * ControlBuilder.cs: The BindingContainerType property happens
2771         to exist in 2.0, so I made it public. Added ParentTemplateBuilder,
2772         which is used to get the binding container that is managing
2773         the current two-way binding context.
2774         * TemplateBuilder.cs: Added some methods and an internal class
2775         to support two-way bindings.
2776         * CompiledBindableTemplateBuilder.cs: Implemented.
2777         * IBindableTemplate.cs: This interface inherits from ITemplate.
2778
2779 2005-04-14  Lluis Sanchez Gual <lluis@novell.com>
2780
2781         * ControlBuilder.cs: Added BindingContainerType property,
2782         which works like NamingContainerType but takes into account
2783         template builders with a specific container type (specified
2784         using the TemplateContainerAttribute.
2785         * StateManagedCollection.cs: Reimplemented Save/Load view
2786         state methods. The existing implementation was not correct
2787         in all cases.
2788
2789 2005-04-08  Lluis Sanchez Gual <lluis@novell.com>
2790
2791         * DataSourceView.cs: Added null check.
2792
2793 2005-04-07  Lluis Sanchez Gual <lluis@novell.com>
2794
2795         * TemplateControl.cs:
2796         * Page.cs: Moved Eval and XPath from Page
2797         to TemplateControl.
2798         * StateManagedCollection.cs: Avoid saving null state.
2799
2800 2005-04-01  Lluis Sanchez Gual <lluis@novell.com>
2801
2802         * DataSourceView.cs: Rethrow exceptions not handled by operation
2803         callbacks.
2804         * ITextControl.cs: Removed event.
2805         * CollectionBuilder.cs: Don't crash when a collection has more
2806         than one indexer.
2807
2808 2005-03-23  Lluis Sanchez Gual <lluis@novell.com>
2809
2810         * Control.cs: Added a new internal property: HasRenderMethodDelegate.
2811         * HtmlTextWriterAttribute.cs: Replaced wrong enum value.
2812         * HtmlTextWriter.cs: Register new ASP.NET 2.0 attributes
2813
2814 2005-03-16  Lluis Sanchez Gual  <lluis@novell.com>
2815
2816         * ClientScriptManager.cs: Fix build.
2817
2818 2005-03-11  Lluis Sanchez Gual <lluis@novell.com>
2819
2820         * Utils.cs, Control.cs: Don't use Page.GetPostBackClientEvent
2821         since it is deprecated in 2.0.
2822         * Page.cs: Deprecated GetPostBackClientEvent and similar methods
2823         in 2.0. Moved callback management methods to ClientScriptManager.
2824         * ClientScriptManager.cs: Moved here deprecated methods from Page.
2825         In GetPostBackEventReference (PostBackOptions), don't use the
2826         WebForm_DoPostback script if the post can be done with a simple
2827         __doPostBack call.
2828         * PostBackOptions.cs: Fixed default values for some properties.
2829
2830 2005-03-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2831
2832         * Control.cs: in FindControl, throw if there's more than one control
2833         with the same ID. Fixes bug #73479.
2834
2835 2005-03-04  Lluis Sanchez Gual <lluis@novell.com>
2836
2837         * Page.cs: Load control state before loading view state, and the
2838         same for saving.
2839         * DataSourceSelectArguments.cs: Fix recursive property call.
2840
2841 2005-02-25  Lluis Sanchez Gual <lluis@novell.com>
2842
2843         * DataSourceView.cs: Fixed incorrect implementation of
2844         RaiseUnsupportedCapabilityError.
2845         * IDataItemContainer.cs: Added new properties.
2846         * Page.cs: Implemented Form property.
2847         * Control.cs: Fixed formatting.
2848         * StateManagedCollection.cs: Track view state of items loaded
2849         in LoadViewState.
2850
2851 2005-02-22  Lluis Sanchez Gual <lluis@novell.com>
2852
2853         * FilterableAttribute.cs: Fix endless loop.
2854
2855 2005-02-18  Lluis Sanchez Gual <lluis@novell.com>
2856
2857         * Page.cs: Implemented missing events.
2858
2859 2005-02-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2860
2861         * BoundPropertyEntry.cs:
2862         * PropertyEntry.cs:
2863         * TwoWayBoundPropertyEntry.cs: implemented.
2864
2865 2005-02-10  Lluis Sanchez Gual <lluis@novell.com>
2866
2867         * Page.cs: Added support for validation groups. Some fixes in
2868         SavePageControlState().
2869         * IFilterResolutionService.cs: Removed extra field.
2870         * INavigateUIData.cs: Added missing field.
2871         * ICheckBoxControl.cs, IStaticTextControl.cs, ITextControl.cs:
2872         Implemented new interfaces.
2873
2874 2005-02-04  Lluis Sanchez Gual <lluis@novell.com>
2875
2876         * Page.cs: Implemented support for cross page postback. Implemented
2877         support for postback with options. Fixed several method and property
2878         signatures for 2.0.
2879         * PostBackOptions.cs: Added some TODOs.
2880
2881 2005-02-02  Lluis Sanchez Gual <lluis@novell.com>
2882
2883         * ParseChildrenAttribute.cs: Set the correct default value for the
2884         childType property.
2885
2886 2005-01-28  Lluis Sanchez Gual <lluis@novell.com>
2887
2888         * ParseChildrenAttribute.cs: Added 2.0 property.
2889         * Pair.cs, Triplet.cs: Make classes serializable and sealed in 2.0.
2890         * Page.cs: Added support for control state.
2891         * TemplateBuilder.cs: ContainerType should be internal.
2892         * Control.cs: Added some new 2.0 methods.
2893
2894 2005-01-21  Lluis Sanchez Gual <lluis@novell.com>
2895
2896         * PageParser.cs: Read the MasterPageFile attribute.
2897         * UserControlParser.cs: Not sealed any more since we need to inherit from
2898         it. Added new constructor with an additional "type" parameter.
2899         * MasterPageParser.cs: Parser for master pages.
2900         * Page.cs: Added support for master pages.
2901         * MasterPage.cs: Implemented.
2902
2903 2005-01-10  Lluis Sanchez Gual <lluis@novell.com>
2904         
2905         * TemplateBuilder.cs: Added a special constructor that takes an
2906         attribute provider as parameter. The container type for the template
2907         may be defined in a TemplateContainerAttribute.
2908         * ControlBuilder.cs: Create the TemplateBuilder using that special
2909         constructor.
2910         * TemplateContainerAttribute.cs: Added 2.0 property and ctor.
2911
2912 2004-12-20 Lluis Sanchez Gual  <lluis@novell.com>
2913
2914         * IStyleSheet.cs: Added missing "using".
2915         * Page.cs: Implemented Header property.
2916         * CssStyleCollection.cs: Made BagToString method internal.
2917         * RootBuilder.cs: Register HtmlHead control.
2918         
2919 2004-12-17 Lluis Sanchez Gual  <lluis@novell.com>
2920
2921         * CssStyleCollection.cs: Minor (!) fix.
2922         * HtmlTextWriter.cs: Register names for new 2.0 styles.
2923
2924 2004-12-17 Lluis Sanchez Gual <lluis@novell.com>
2925
2926         * CssStyleCollection.cs: Make it work as a standalone collection.
2927         * HtmlTextWriter.cs: Added static method for getting style names.
2928
2929 2004-12-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2930
2931         * ControlCollection.cs: fix off-by-one and store a null at the end to
2932         remove the reference to the removed control.
2933
2934 2004-12-10 Lluis Sanchez Gual <lluis@novell.com>
2935
2936         * ClientScriptManager.cs: Added GetScriptLiteral helper method.
2937         
2938 2004-12-02 Lluis Sanchez Gual <lluis@novell.com>
2939
2940         * Page.cs: Added support for callback events. Moved theform variable
2941         outside the __doPostBack function, so it can be used by other
2942         scripts.
2943         * StateBag.cs: Implemented SetDirty().
2944
2945 2004-11-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2946
2947         * Control.cs: when saving "Visible" into the ViewState, save the value
2948         for this precise control, as using the Visible property might give us
2949         Control's parent visibility. Fixes bug #69200.
2950
2951 2004-11-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2952
2953         * Control.cs: fixed ResolveUrl for relative URLs when using cookie-less
2954         sessions.
2955
2956         * System.Web.Util/UrlUtils.cs: made (Insert|Get|Remove)SessionId use
2957         the appRoot + SessionID + vpath format.
2958
2959         Fixes the 3 issues reported in bug #66623.
2960
2961 2004-11-26 Lluis Sanchez Gual <lluis@novell.com>
2962
2963         * Page.cs: Moved code for managing client scripts to ClientScriptManager,
2964         which is public in 2.0 and internal in 1.1.
2965         * ClientScriptManager.cs: Implemented.
2966
2967 2004-11-25 Sanjay Gupta <gsanjay@novell.com>
2968
2969         * DataSourceView.cs: Removed extra method.
2970
2971 2004-11-24 Sanjay Gupta <gsanjay@novell.com>
2972         
2973         * DataSourveViewSelectCallback.cs: Corrected method signature.
2974
2975 2004-11-23 Lluis Sanchez Gual <lluis@novell.com>
2976
2977         * ControlBuilder.cs: Always check for the ParseChildrenAttribute,
2978         even if the class doesn't implement IParserAccessor.
2979         * WebResourceAttribute.cs: Allow multiple attributes of this type.
2980
2981 2004-11-15 Lluis Sanchez Gual <lluis@novell.com>
2982
2983         * DataSourceView.cs: Moved here implementation of DataSourceViewChanged 
2984         from SqlDataSourceView.cs.
2985
2986 2004-11-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2987
2988         * Control.cs: unified a few bool fields into an int one.
2989
2990         * ControlCollection.cs: use an array internally instead of always
2991         allocating an arraylist. Also added our own enumerator.
2992         
2993         * EmptyControlCollection.cs: there's no 'special' ctor now in the base
2994         class.
2995
2996 2004-11-05 Sanjay Gupta <gsanjay@novell.com>
2997
2998         * DataSourceView.cs: Changes in access modifiers of methods.
2999
3000 2004-10-20 Sanjay Gupta <gsanjay@novell.com>
3001
3002         * DataSourceCapabilities.cs: Added Flags attribute.
3003         * DataSourceSelectArguments.cs: Updated.
3004         * DataSourveView.cs: Updated.
3005
3006 2004-10-19 Sanjay Gupta <gsanjay@novell.com>
3007
3008         * HierarchicalDataSourceView.cs: Corrected class definition and updated.
3009
3010 2004-10-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3011
3012         * HierarchicalDataSourceView.cs: fix typo.
3013
3014 2004-10-18 Sanjay Gupta <gsanjay@novell.com>
3015
3016         * HierarchicalDataSourceView.cs: Updated.
3017
3018 2004-10-18 Sanjay Gupta <gsanjay@novell.com>
3019
3020         * DataSourceSelectArguments.cs: Initial implementation.
3021
3022 2004-10-12 Sanjay Gupta <gsanjay@novell.com>
3023
3024         * UrlPropertyAttribute.cs: Corrected implementation of Equals () method.
3025
3026 2004-10-12 Sanjay Gupta <gsanjay@novell.com>
3027
3028         * UrlTypes.cs: Updated.
3029
3030 2004-10-12 Sanjay Gupta <gsanjay@novell.com>
3031
3032         * UrlPropertyAttribute.cs: Added new file.
3033
3034 2004-10-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3035
3036         * Control.cs: even if the control has no children the naming container
3037         may contain the control we're looking for. Fixes bug #67304.
3038
3039 2004-09-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3040
3041         * AspGenerator.cs: added OtherTags.
3042
3043 2004-09-24 Sanjay Gupta <gsanjay@novell.com>
3044
3045         * ControlValuePropertyAttribute.cs: Initial implementation.
3046
3047 2004-09-24 Sanjay Gupta <gsanjay@novell.com>
3048
3049         * IPaginationContainer.cs: Corrected name of class.
3050
3051 2004-09-24 Sanjay Gupta <gsanjay@novell.com>
3052
3053         * IDReferencePropertyAttribute.cs: Completed implementation.
3054
3055 2004-09-24 Sanjay Gupta <gsanjay@novell.com>
3056
3057         * ThemeableAttribute.cs:
3058         * FilterableAttribute.cs: Code scrubbing and optimization.
3059
3060 2004-09-14 Sanjay Gupta <gsanjay@novell.com>
3061
3062         * ThemeableAttribute.cs: Completed implementation.
3063
3064 2004-09-14 Sanjay Gupta <gsanjay@novell.com>
3065
3066         * FilterableAttribute.cs: Completed implementation.
3067
3068 2004-09-14 Sanjay Gupta <gsanjay@novell.com>
3069
3070         * Control.cs: Added new attributes and a method.
3071         * FilterableAttribute.cs: New attribute, initial implementation.
3072         * ThemeableAttribute.cs: New attribute, initial implemenataion.
3073
3074 2004-09-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3075
3076         * TemplateParser.cs: ensure bin directory exists before trying to access
3077         it. Fixes bug #65446 (not closed yet due to dependencies).
3078
3079 2004-09-09 Sanjay Gupta <gsanjay@novell.com>
3080
3081         * Control.cs: Implemented methods of interface IExpressionAccessor.
3082
3083 2004-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3084
3085         * SimpleWebHandlerParser.cs: correctly cache Type instead of the
3086         assembly for ashx/asmx. Otherwise we need to open the file and check
3087         for the class name in there. Thanks to Ben for pointing this out.
3088
3089 2004-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3090
3091         * TemplateParser.cs: removed creation of StringWriter.  It's not used.
3092         * Control.cs: don't create the EventHandlerList until requested.
3093
3094 2004-09-03 Sanjay Gupta <gsanjay@novell.com>
3095         
3096         * Control.cs: Added new interfaces implemented in .Net 2.0. 
3097         * ExpressionBinding.cs: Added new class.
3098         * ExpressionBindingCollection.cs: Added new class.
3099         
3100 2004-09-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3101
3102         * LiteralControl.cs: stylized. This control has EnableViewState disabled
3103         by default and doesn't get an automatic ID. When text is null -> "".
3104
3105 2004-08-31 Sanjay Gupta <gsanjay@novell.com>
3106         
3107         * ControlSkinProc.cs:
3108         * DataSourceViewOperationCallback.cs:
3109         * DataSourceViewSelectCallback.cs:
3110         * ExtractTemplateValuesMethod.cs: Explicit modifier "sealed" not 
3111         required in definition as delegates by default are sealed.
3112         
3113 2004-08-31 Sanjay Gupta <gsanjay@novell.com>
3114
3115         * IDReferencePropertyAttribute.cs: Corrected and changed from interface
3116         to class.
3117         * IMobileTextWriter.cs: Corrected method signatures.
3118
3119 2004-08-09 Sanjay Gupta <gsanjay@novell.com>
3120
3121         * ControlSkinProc.cs:
3122         * DataSourceViewOperationCallback.cs:
3123         * DataSourceViewSelectCallback.cs:
3124         * ExtractTemplateValuesMethod.cs: Added new delegates.
3125
3126 2004-08-06 Sanjay Gupta <gsanjay@novell.com>
3127
3128         * IBindableTemplate.cs:
3129         * ICallbackEventHandler.cs:
3130         * IControlBuilderAccessor.cs:
3131         * IControlDesignerAccessor.cs:
3132         * IControlTypeFilter.cs:
3133         * IDataItemContainer.cs:
3134         * IDataSourceViewSchemaAccessor.cs:
3135         * IDReferencePropertyAttribute.cs:
3136         * IExpressionsAccessor.cs:
3137         * IFilterResolutionService.cs:
3138         * IItemPaginationInfo.cs:
3139         * IMobileTextWriter.cs:
3140         * IPageHeader.cs:
3141         * IPaginationContainer.cs:
3142         * IPaginationInfo.cs:
3143         * IResourceResolutionService.cs:
3144         * IResourceUrlGenerator.cs:
3145         * IStateFormatter.cs:
3146         * IStyleSheet.cs:
3147         * IThemeResolutionService.cs:
3148         * IUrlResolutionService.cs:
3149         * IUserControlTypeResolutionService.cs: Added new files for Interfaces.
3150
3151 2004-08-05 Sanjay Gupta <gsanjay@novell.com>
3152
3153         * PostBackOptions.cs: Added new file and implemented the class.
3154
3155 2004-08-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3156
3157         * HtmlTextWriterTag.cs: readded author name.
3158
3159 2004-08-04 Sanjay Gupta <gsanjay@novell.com>
3160
3161         * HtmlTextWriterAttribute.cs:
3162         * HtmlTextWriterStyle.cs: Added .Net 2.0 enumerations.
3163         * CompilationMode.cs:
3164         * ConflictOptions.cs:
3165         * DataSourceCacheExpiry.cs:
3166         * DataSourceCapabilities.cs:
3167         * DataSourceOperation.cs:
3168         * TemplateContentType.cs:
3169         * TemplateInstance.cs:
3170         * UrlTypes.cs:
3171         * VerificationConditionalOperator.cs:
3172         * VerificationReportLevel.cs:
3173         * VerificationRule.cs:
3174         * XhtmlMobileDocType.cs: Added enumerations.
3175
3176 2004-07-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3177
3178         * Control.cs: style. Reverted previous patch modification of
3179         TemplateSourceDirectory (failed when the control is reparented). Use
3180         HasControls() and Controls all over instead of _controls, as Controls
3181         property and HasControls() might be overriden.
3182
3183 2004-07-27 Alon Gazit <along@mainsoft.com>
3184
3185         * Control.cs: Changed the implementation of TemplateSourceDirectory
3186         and GetDefaultName(). replaced foreach statements with for statements, 
3187         in order to improve performence.
3188
3189 2004-07-27 Alon Gazit <along@mainsoft.com>
3190
3191         * Page.cs: changed the implementation of GetViewStateString().
3192         if the view state object is null there is no need to perform 
3193         Serialization.
3194         
3195 2004-07-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3196
3197         * TemplateControl.cs: don't include private methods of base classes when
3198         auto-attaching events. Fixes bug 61569.
3199
3200 2004-07-14 Alon Gazit <along@mainsoft.com>
3201
3202         * HtmlTextWriter.cs: changed the Hashtables to case insensitive.         
3203 2004-07-08 Pablo Baena <pbaena@gmail.com>
3204
3205         * Page.cs: added workaround for __doPostBack script on Netscape 4.xx
3206         
3207 2004-07-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3208
3209         * Page.cs: added additional checks for saving/displaying trace data.
3210
3211         * PageParser.cs: removed checks for trace enabled in configuration
3212         files.
3213
3214 2004-06-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3215
3216         * ControlCollection.cs: when clearing the control collection, tell the
3217         owners about the removal. Fixes bug #60800.
3218
3219 2004-06-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3220
3221         * Page.cs: don't nullify _context after processing the request as there
3222         are events not triggered yet. Fixes bug #60726.
3223
3224 2004-06-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3225
3226         * HtmlTextWriter.cs: only create a closing tag for unknown tags. Fixes
3227         bug #60681.
3228
3229 2004-06-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3230
3231         * PageParser.cs:
3232         * UserControlParser.cs: set the page/user control base type even when no
3233         default directive provided. Fixes bug #60572.
3234
3235 2004-06-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3236
3237         * PageParser.cs: use default trace settings from web.config and check
3238         if trace is only requested for local connections. Fixes bug #60180.
3239
3240 2004-06-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3241
3242         * SimpleWebHandlerParser.cs: implemented GetCompiledTypeFromCache. When 
3243         we read the default directive, check the cache for the Type and if
3244         present, don't keep reading and store the type found.
3245
3246         * WebHandlerParser.cs:
3247         * WebServiceParser.cs: try GetCompiledTypeFromCache before actually
3248         compiling.
3249
3250 2004-06-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3251
3252         * Control.cs: properly fixed bug #59794.
3253
3254 2004-06-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3255
3256         * Control.cs:
3257         (ResolveUrl): fixed typo when dealing with relative urls. Closes bug
3258         #59794.
3259
3260 2004-06-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3261
3262         * SimpleWebHandlerParser.cs:
3263         * TemplateParser.cs: pass the language when compiling from a file.
3264
3265 2004-06-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3266
3267         * SimpleWebHandlerParser.cs: if we have a global.asax, move its
3268         reference to the end to help mcs loading the assemblies. Fixes bug
3269         #58768.
3270
3271         * TemplateParser.cs: same as above. Removed some kludges to workaround
3272         loading assemblies from bin path that are now in the runtime. Don't
3273         load the assemblies in bin if not needed, but still reference them
3274         when compiling.
3275
3276 2004-06-07  Alon Gazit <along@mainsoft.com>
3277         * Page.cs: Changed Page.ProcessPostData().
3278         After the change ,the state of controls that aren't visible is saved 
3279         during a postback.
3280         
3281 2004-06-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3282
3283         * Page.cs: removed obsolete MonoTODO from RegisterOnSubmitStatement.
3284
3285 2004-06-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3286
3287         * Page.cs: IsPostBack also returns true when method is GET and we have
3288         viewstate information in the query string. Fixes bug #58151.
3289
3290 2004-06-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3291
3292         * Page.cs: removed obsolete TODO. Only check if Trace is enabled, not
3293         HttpRutime.TraceManager.
3294
3295         * PageParser.cs: for 'trace' we have 2 variables now.  Added support
3296         for 'buffer' attribute.
3297
3298 2004-06-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3299
3300         * Page.cs: implemented ClientTarget.
3301         * PageParser.cs: support for clientTarget and check for validity.
3302
3303 2004-06-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3304
3305         * Control.cs:
3306         * Html32TextWriter.cs:
3307         * HtmlTextWriter.cs:
3308         * SimpleWebHandlerParser.cs:
3309         * TemplateControl.cs: Added protected missing members and attributes.
3310
3311 2004-06-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3312
3313         * ObjectStateFormatter.cs: use ObjectFormatter methods instead of
3314         calling a protected method of another object.
3315
3316 2004-06-03  Atsushi Enomoto  <atsushi@ximian.com>
3317
3318         * ObjectStateFormatter.cs : csc build fix. Protected Read()/Write()
3319           (of other objects) are called in TypeConverterFormatter.
3320
3321 2004-06-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3322
3323         * ObjectStateFormatter.cs: before choosing the binary formatter, check
3324         if the object type has a TypeConverter that can convert to/from string.
3325         Fixes bug #59495.
3326
3327         * Page.cs: call GetViewStateString from outside the WriteLine. This
3328         allows writing to the Response when getting the string without breaking
3329         the HTML generated.
3330
3331 2004-06-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3332
3333         * HtmlTextWriter.cs: render end tag for unknown tags.
3334         Patch frmo Markus Krutner. Fixes bug #59466.
3335
3336 2004-05-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3337
3338         * Page.cs: call DeterminePostBackMode only once per request. Patch by
3339         Evain Jb.
3340
3341 2004-05-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3342
3343         * Html32TextWriter.cs: stub contributed by Matthijs ter Woord
3344         [meddochat].
3345
3346         * ObjectTagBuilder.cs: remove the HasBody override as MS does not have
3347         that.
3348
3349 2004-05-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3350
3351         * SimpleWebHandlerParser.cs:
3352         * TemplateParser.cs: for the assembly names given in the 'assembly'
3353         attribute, use LoadWithPartialName instead of Load.
3354 2004-03-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3355
3356         * Page.cs: return HttpContext.Current if _context has not yet been
3357         assigned to. Fixes bug #55245.
3358
3359 2004-03-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3360
3361         * TemplateParser.cs: don't add import statement or assemblies from
3362         global.asax to every file. Fixes bug #55496.
3363
3364 2004-03-09  Juraj Skripsky <juraj@hotfeet.ch>
3365
3366         * DataBinder.cs: allow unquoted string expressions (e.g. "[test]") and
3367         handle single quotes and a few corner cases correctly (see test cases).
3368
3369 2004-03-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3370
3371         * TemplateControl.cs: fixed typos and added new method names to the set
3372         of page events.
3373
3374 2004-02-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3375
3376         * ControlBuilder.cs: added SetTagName().
3377
3378         * ObjectTagBuilder.cs: use SetTagName so that we can properly close
3379         <object> builders if the closing tag is provided.
3380
3381 2004-02-16  Jackson Harper <jackson@ximian.com>
3382
3383         * Page.cs: Set cacheability for Location.DownStream.
3384         
3385 2004-02-10  Jackson Harper <jackson@ximian.com>
3386
3387         * TemplateParser.cs: Use full path if the assembly is in the
3388         private bin directory. Patch by Gonzalo Paniagua Javier.
3389         
3390 2004-02-09  Jackson Harper <jackson@ximian.com>
3391
3392         * Page.cs: Set cacheability for server side caching.
3393         
3394 2004-01-30  Jackson Harper <jackson@ximian.com>
3395
3396         * Control.cs: Ensure that dynamically loaded controls are
3397         initialized.
3398         
3399 2004-01-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3400
3401         * ApplicationFileParser.cs: check for error in directives. Use
3402         GlobalAsaxCompiler.CompileApplicationType for compiling.
3403         
3404         * ObjectTagBuilder.cs: load the Type and check for errors.
3405
3406         * TemplateParser.cs: add assemblies and imports from global.asax.
3407
3408         Now we properly create accessors for session and application objects in
3409         the application itself, pages and controls. First step for fixing
3410         bug #53387.
3411
3412 2004-01-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3413
3414         * TemplateControl.cs: small speedup for WireUpautomaticEvents. Thanks
3415         to Eric Lindvall for pointing this out.
3416
3417 2004-01-15  Jackson Harper <jackson@ximian.com>
3418
3419         * TemplateParser.cs: Detect if we are parsing a control or page
3420         properly.
3421         * Page.cs: vary by params and vary by headers can be null now.
3422         
3423 2004-01-15  Martin Willemoes Hansen  <mwh@sysrq.dk>
3424
3425         * HtmlTextWriter.cs: Fixed OutputTab routine to generate correct
3426         indention.
3427
3428 2004-01-14  Jackson Harper <jackson@ximian.com>
3429
3430         * Page.cs: If we have a postback that wasn't sent through a
3431         postback script (ie user hit submit on a input type=submit) call
3432         Validate so page validation occurs. This fixes bug #52770.
3433         
3434 2004-01-14  Jackson Harper <jackson@ximian.com>
3435
3436         * Page.cs: Don't tell the response to cache anymore. This is done
3437         when the cacheability is modified by a callback. Set the cache's
3438         duration.
3439         
3440 2004-01-14  Jackson Harper <jackson@ximian.com>
3441
3442         * TemplateParser.cs: If varybyparam is set to "none" make it null
3443         so we dont get a param named null in the outputcache key.
3444         
3445 2004-01-14  Jackson Harper <jackson@ximian.com>
3446
3447         * BasePartialCachingControl.cs: Use varyby attributes in key
3448         generation.
3449         
3450 2004-01-14  Jackson Harper <jackson@ximian.com>
3451
3452         * TemplateParser.cs: Add all the outputcache attribute error
3453         messages.
3454         
3455 2004-01-13  Jackson Harper <jackson@ximian.com>
3456
3457         * TemplateParser.cs: Add VaryByControls and Shared output cache
3458         properties. These are not assigned yet.
3459         * TemplateControlParser.cs: Do not ignore the OutputCache
3460         attribute.
3461         * BasePartialCachingControl.cs: Initial implementation. Keys are
3462         still not created properly.
3463         * StaticPartialCachingControl.cs: Assign properties in base class,
3464         implement CreateControl.
3465         
3466 2004-01-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3467
3468         * ApplicationFileParser.cs: adde DefaultBaseTypeName property.
3469
3470         * PageParser.cs: support validateRequest.
3471
3472         * TemplateControlParser.cs: get default values from system.web/pages
3473         section.
3474
3475         * TemplateParser.cs: added separate method for changing base type
3476         (Inherits or system.web/pages).
3477         
3478         * UserControlParser.cs: support system.web/pages defined base type.
3479
3480 2004-01-11  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
3481
3482         * UserControl.cs: Added missing attribute, implemented method
3483         * Page.cs: Added missing attribute, implemented method
3484
3485 2004-01-10  Jackson Harper <jackson@ximian.com>
3486
3487         * Page.cs: Handle trace being enabled in the config file.
3488         
3489 2004-01-10  Jackson Harper <jackson@ximian.com>
3490
3491         * Page.cs: Save trace data before rendering it.
3492         * System.Web.dll.sources: Add TraceData.cs
3493         
3494 2004-01-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3495
3496         * Page.cs: removed a couple of MonoTODO on methods we're not gonna
3497         implement. Applied patch from Jan Jaros (mono-bug@jerryweb.info) to
3498         ensure that Unload event is raised. Fixes bug #52555.
3499
3500 2004-01-02  Zoltan Varga  <vargaz@freemail.hu>
3501
3502         * KeyedList.cs: 'private' is not allowed on explicit interface 
3503         implementations. Fixes 1.2 build.
3504
3505 2003-12-31  Jackson Harper <jackson@ximian.com>
3506
3507         * TemplateControlParser.cs: When registering tag prefixs make sure
3508         the file exists and throw the correct error if it does not.
3509         
3510 2003-12-25  Jackson Harper <jackson@ximian.com>
3511
3512         * Page.cs: Throw error if the session is accessed when sessions
3513         are disabled.
3514         
3515 2003-12-18  Jackson Harper <jackson@ximian.com>
3516
3517         * Page.cs: Write Trace info.
3518         
3519 2003-12-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3520
3521         * LosFormatter.cs: new ctor for 1.1. The default ctor is public.
3522         * Page.cs: added ViewStateUserKey and made RegisterclientScriptFile
3523         internal.
3524         * PageParser.cs: the ctor is public.
3525         * PartialCachingAttribute.cs: added new ctor and Shared property.
3526
3527 2003-12-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3528
3529         * Page.cs: assign the ErrorPage to the context if we get an exception
3530         when processing the page which only calls Unload.
3531
3532         * PageParser.cs: handle ErrorPage.
3533
3534 2003-12-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3535
3536         * ObjectStateFormatter.cs: added formatters for Unit and FontUnit, which
3537         are not [Serializable]. Fixes bug #52244.
3538
3539 2003-12-16  Jackson Harper <jackson@ximian.com>
3540
3541         * Page.cs: Render trace data when tracing is enabled.
3542         
3543 2003-12-15  Jackson Harper <jackson@ximian.com>
3544
3545         * PageParser.cs: Add Trace and Trace mode attributes.
3546         
3547 2003-12-15  Jackson Harper <jackson@ximian.com>
3548
3549         * Page.cs: Use the context trace object.
3550         
3551 2003-12-14  Alon Gazit <along@mainsoft.com>
3552         * AttributeCollection.cs: Changed AttributeCollection.Render().
3553         After the change attributes ,that their value is null, aren't 
3554         rendered.
3555
3556 2003-12-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3557
3558         * Control.cs: remove a few dangling ^M, don't set values for fields
3559         that has the default value. If Visible is modified and we're tracking
3560         viewstate, save and restore it. Fixes bug #48689.
3561
3562 2003-12-11  Jackson Harper <jackson@ximian.com>
3563
3564         * Control.cs: Give null for the ID if it hasn't been explicitly
3565         set. This fixes bug #51520.
3566         
3567 2003-12-08  Jackson Harper <jackson@ximian.com>
3568
3569         * PageParser.cs: Ignore the SmartNavigation attribute for now.
3570         
3571 2003-12-05  Jackson Harper <jackson@ximian.com>
3572
3573         * DataBinder.cs (GetIndexedPropertyValue): Check if container is
3574         an IList and use a cast instead of reflection to retrieve the item
3575         if it is. Fixes bug #51759.
3576         
3577 2003-12-04  Alon Gazit <along@mainsoft.com>
3578         * Page.cs: Changed Page.ID so it will call Control.ID.
3579         Fixed Bug 51682.          
3580
3581 2003-12-02  Jackson Harper <jackson@ximian.com>
3582
3583         * Page.cs: Implemented registered array declarations. Patch by
3584         Benjamin Jemlich <pcgod@gmx.net>
3585         
3586 2003-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3587
3588         * TemplateParser.cs: basic check for 'classname' attribute and added
3589         patch by pcgod@gmx.net for bug #51568, which fixes automatic class
3590         names for pages starting with a number.
3591
3592 2003-11-30 Ben Maurer  <bmaurer@users.sourceforge.net>
3593
3594         * LosFormatter.cs: Use ObjectStateFormatter. Pretty big size
3595         reduction.
3596
3597         * ObjectStateFormatter.cs: Comment out tracing.
3598
3599 2003-11-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3600
3601         * Page.cs: fixed UICulture, LCID and Culture. Set the thread
3602         [UI]Culture before processing the request.
3603
3604         * PageParser.cs: read Culture, UICulture and LCID attributes. Added
3605         properties for these. Partially contributed by Mohammad Damt.
3606
3607         Fixes bug #51511.
3608
3609 2003-11-27  Jackson Harper <jackson@ximian.com>
3610
3611         * TemplateParser.cs: Ignore aspCompat attribute. This fixes bug
3612         51434.
3613         
3614 2003-11-22 Ben Maurer  <bmaurer@users.sourceforge.net>
3615
3616         * ObjectStateFormatter.cs: Fix bug when reading small ints.
3617         Add some tracing so we can see what is going on.
3618
3619 2003-11-21  Jackson Harper <jackson@ximian.com>
3620
3621         * Page.cs: Set vary by params when cache location is Server.
3622         
3623 2003-11-21 Ben Maurer  <bmaurer@users.sourceforge.net>
3624
3625         * ObjectStateFormatter.cs: v2 file. In v1.x this will be
3626         internal as LosFormatter will eventually use it to save
3627         the view state.
3628
3629 2003-11-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3630
3631         * PersistChildrenAttribute.cs:
3632         * PersistenceModeAttribute.cs: implemented.
3633
3634         * TODO: Removed file.
3635         * OutputCacheLocation.cs:
3636         * TemplateControlParser.cs:
3637         * HtmlInputFile.cs: class status based fixes.
3638
3639 2003-11-19  Jackson Harper <jackson@ximian.com>
3640
3641         * Page.cs: Always set the cache expire time. Tell the response to
3642         cache itself for server side cached pages.
3643         
3644 2003-11-19  Jackson Harper <jackson@ximian.com>
3645
3646         * Control.cs: Remove ResolveBaseUrl. ResolveUrl does the same
3647         thing, some corner cases still need work though. Was this the
3648         shortest lived method in the history of mono?
3649         
3650 2003-11-19  Jackson Harper <jackson@ximian.com>
3651
3652         * Control.cs: New method for resolving urls that use ~/ to denote
3653         the applications base directory.
3654         
3655 2003-11-19  Jackson Harper <jackson@ximian.com>
3656
3657         * TemplateParser.cs: Fix typo in error message.
3658                 
3659 2003-11-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3660
3661         * TemplateControlParser.cs: support @Reference. Fixes bug #49572. Thanks
3662         to Sanjay Gupta.
3663
3664 2003-11-19  Todd Berman  <tberman@gentoo.org>
3665
3666         * KeyedList.cs:
3667         * KeyedListEnumerator.cs: New v2 implementations.
3668
3669 2003-11-17 Ben Maurer  <bmaurer@users.sourceforge.net>
3670
3671         * StateManagedCollection.cs: Implement.
3672
3673 2003-11-13  Jackson Harper  <jackson@ximian.com>
3674
3675         * Page.cs: Initial implementation of InitOutputCache.
3676         * TemplateParser.cs: Page OutputCache options
3677         
3678 2003-11-09 Ben Maurer  <bmaurer@users.sourceforge.net>
3679
3680         * HierarchicalDataSourceControl.cs: Implement.
3681
3682 2003-11-09 Ben Maurer  <bmaurer@users.sourceforge.net>
3683
3684         * XPathBinder.cs: Implemented.
3685
3686 2003-11-08 Ben Maurer  <bmaurer@users.sourceforge.net>
3687
3688         * DataSourceView.cs:
3689         * IDataSource.cs:
3690         * ListSourceHelper.cs:
3691         * DataSourceControl.cs:
3692         * HierarchicalDataSourceView.cs:
3693         * IHierarchicalDataSource.cs: Move v2 stuff.
3694
3695 2003-11-07 Jackson Harper <jackson@ximian.com>
3696
3697         * Control.cs (ResolveUrl): Special case for urls that consist of
3698         only a page anchor. ie <a href="#top">. This fixes bug #50165.
3699         
3700 2003-11-07 Ben Maurer  <bmaurer@users.sourceforge.net>
3701
3702         * IHierarchicalEnumerable.cs:
3703         * IHierarchyData.cs:
3704         * INavigateUIData.cs: New v2 interfaces.
3705         
3706 2003-11-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3707
3708         * Page.cs: patch by Alon Gazit <along@mainsoft.com> to remove extra
3709         space in generated javascript.
3710
3711 2003-11-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3712
3713         * LosFormatter.cs: encoding updates. 
3714         * Page.cs: implemented CodePage and ContentType.
3715         * PageParser.cs: handle CodePage, ContentEncoding and ResponseEncoding
3716         attributes.
3717
3718 2003-11-04 Ben Maurer  <bmaurer@users.sourceforge.net>
3719
3720         * Control.cs (GetWebResourceUrl): new v2 function
3721         * Page.cs (GetWebResourceUrl): ditto.
3722         make the JS we generate work with moz if the form is not a child
3723         of document.
3724         * WebResourceAttribute.cs: Added, new v2 attribute.
3725
3726 2003-10-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3727
3728         * DesignTimeTemplateParser.cs: added FIXME related to PageParser.
3729
3730         * PageParser.cs: initialize the parser in the constructor, not just
3731         before compiling and reference the application assembly.
3732
3733         * SimpleWebHandlerParser.cs: reference the assembly that contains the
3734         application Type.
3735
3736         * TemplateControl.cs:
3737         * TemplateControlParser.cs: fix BenM #1 bug. Now we pass correct virtual
3738         path and physical path when compiling a user control.
3739         
3740         * TemplateParser.cs: new AddApplicationAssembly ().
3741         * UserControlParser.cs: now we get valid values in the ctor.
3742
3743         Referencing the application assembly fixes bug #49652.
3744         
3745
3746 2003-10-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3747
3748         * TemplateControl.cs: moved NoParamsInvoker class to its own file.
3749
3750 2003-10-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3751
3752         * BaseParser.cs: added CompilationConfig property.
3753
3754         * TemplateParser.cs:
3755         * SimpleWebHandlerParser.cs: added CompilationConfig property.
3756         Don't hardcode assembly names any more, assemblies in bin are added
3757         depending on the configuration. The default language is also taken
3758         from the configuration.
3759
3760 2003-10-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3761
3762         * LosFormatter.cs: fixed bug #49604. Patch by yaronsh@mainsoft.com.
3763
3764 2003-10-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3765
3766         * Control.cs: removed some debug lines.
3767         * Page.cs: implemented RegisterOnSubmitStatement
3768         * TemplateControl.cs: fixed wire up for methods with no parameters.
3769
3770 2003-10-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3771
3772         * PageParser.cs: ignore ValidateRequest by now.
3773
3774 2003-10-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3775
3776         * System.Web.UI/TemplateControl.cs: support for wiring up events without
3777         parameters.
3778
3779 2003-10-08  Pedro Martnez Juli  <yoros@wanadoo.es>
3780
3781         * PageParser.cs: drop some useless code.
3782
3783 2002-10-29  Gaurav Vaish <gvaish_mono AT lycos.com>
3784
3785         * Utils.cs   : GetScriptLocation(HttpContext) - Partial Implementation.
3786
3787 2003-10-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3788
3789         * System.Web.UI/PageParser.cs:
3790         * System.Web.UI/TemplateControlParser.cs: honour the input file given
3791         as argument.
3792
3793 2003-09-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3794
3795         * Control.cs:
3796         (ClearChildViewState): doh! Don't clear control viewstate but the
3797         viewstate of possible children.
3798         (LoadViewStateRecursive): load viewstate even when control is not
3799         visible.
3800         Fixes bug #49024.
3801         The rest are just dangling ^M removed.
3802
3803         * DataBoundLiteralControl.cs:
3804         (LoadViewState): we get an object [], not a string [].
3805
3806 2003-09-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3807
3808         * Control.cs: implemented ClearChildViewState ().
3809
3810 2003-09-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3811
3812         * Page.cs: store unique IDs for controls requiring postback. Fixes bug
3813         #47985.
3814
3815 2003-09-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3816
3817         * SimpleWebHandlerParser.cs: add the ashx/asmx file itself to the
3818         dependencies so that it's recompiled when changed.
3819
3820 2003-09-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3821
3822         * LosFormatter.cs: fixed Deserialize for empty viewstate.
3823
3824 2003-08-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3825
3826         * Page.cs: check if controls that require postback have
3827         been changed by an event and register them to be notified of data
3828         changed event.
3829
3830 2003-08-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3831
3832         * Control.cs: patch by yaronshkop@hotmail.com (Yaron Shkop) that fixes
3833         bug #47866.
3834
3835 2003-08-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3836
3837         * LosFormatter.cs: handle Unit and FonrUnit as special cases as they
3838         are not serializable. Fixes bug #47784.
3839
3840 2003-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3841
3842         * Control.cs: index the viewstates saved by the control position, not
3843         the control name. Fixes bug #47697.
3844
3845 2003-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3846
3847         * ControlCollection.cs:
3848         * EmptyControlCollection.cs: create a minimum ArrayList for this.
3849
3850         * BaseParser.cs: added setter for BaseVirtualDir.
3851
3852         * Page.cs: fixed message when restoring view state fails.
3853         * UserControlParser.cs: set the BaseVirtualDirectory to handle the case
3854         when a relative path to the control is given. Fixes bug #47685.
3855
3856 2003-08-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3857
3858         * Control.cs: when we load the viewstate for a control that has children
3859         viewstates and the child is not found, keep its viewstate around and
3860         wait until the child is added to load the viewstate. Fixes bug #47697.
3861
3862 2003-08-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3863
3864         * TemplateControl.cs: more Delegate.CreateDelegate fixes.
3865
3866 2003-08-01  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
3867
3868         * PartialCachingControl.cs: is not abstract
3869
3870 2003-08-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3871
3872         * SimpleHandlerFactory.cs: implemented GetHandler.
3873         * WebHandlerParser.cs: new file that parses .ashx files.
3874
3875 2003-07-30  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
3876
3877         * PersistenceModeAttribute.cs: Fixed wrong AttributeUsage
3878
3879 2003-07-30  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
3880
3881         * UserControl.cs: Added attribute
3882         * BasePartialCachingControl.cs: New class and paritally implemented
3883         * DesignerDataBoundLiteralControl.cs: New class and implemented
3884         * DesignTimeTemplateParser.cs:
3885         * PartialCachingControl.cs:
3886         * StaticPartialCachingControl.cs: New class and paritally implemented
3887
3888 2003-07-27  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
3889
3890         * ApplicationFileParser.cs: Fixed signature
3891         * DesignTimeParseData.cs: Added missing properties, implemented
3892         * Page.cs: Added attributes
3893         * PageParser.cs:
3894         * TemplateControlParser.cs:
3895         * TemplateParser.cs:
3896         * UserControlParser.cs: Fixed signature
3897
3898 2003-07-17  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
3899
3900         * HtmlControlPersistableAttribute.cs: Added
3901         * IgnoreUnknownContentAttribute.cs: Added
3902
3903 2003-07-17  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
3904
3905         * IUserControlDesignerAccessor.cs: Added and implemented
3906         * Control.cs: Missing member added, added all attributes
3907         * Page.cs: Added attributes, fixed signature
3908         * TemplateControl.cs: Fixed signature, added all attributes
3909         * UserControl.cs: Added all attributes, added and implemented missing interface
3910         
3911 2003-07-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3912
3913         * ControlCollection.cs: fixed bug #46472.
3914
3915 2003-07-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3916
3917         * SimpleWebHandlerParser.cs: implemented GetTypeFromBin.
3918
3919 2003-07-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3920
3921         * SimpleWebHandlerParser.cs: updated to new compilation interface.
3922
3923         * TemplateParser.cs: use the new parameter when compiling.  
3924
3925 2003-07-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3926
3927         * Page.cs: also keep the value for the second try on handling postback
3928         events.
3929
3930 2003-05-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3931
3932         * BaseParser.cs: fixed MapPath for non-rooted files.
3933         * PageParser.cs: don't pass a non-virtual file around.
3934         * TemplateControlParser.cs: InputFile uses MapPath now.  Take care of
3935         the exception teh may be throw by MapPath on an invalid path.
3936
3937         * TemplateParser.cs: removed unused method.
3938         * UserControlParser.cs: modified inputfile. The result is the same, but 
3939         this one is better.
3940
3941 2003-05-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3942
3943         * RootBuilder.cs: throw exception when the tagprefix is not valid or
3944         not found.
3945
3946 2003-05-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3947
3948         * TemplateControlParser.cs: return after processing @Register.
3949
3950 2003-05-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3951
3952         * TemplateParser.cs: Added support for server side includes.
3953
3954 2003-05-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3955
3956         * TemplateControl.cs: fixed the flags used to find the methods that
3957         are automatically hooked up on events.
3958
3959         * TemplateParser.cs: don't compile a source file directly.  Use the
3960         cache instead.
3961
3962 2003-05-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3963
3964         * BaseParser.cs: Location property is now here. Added a couple of
3965         convenience methods to throw a ParseException.
3966
3967         * TemplateParser.cs:
3968         * TemplateControlParser.cs:
3969         * PageParser.cs: throw ParseException where appropiate.
3970
3971 2003-05-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3972
3973         * ApplicationFileParser.cs: use the generator to actually parse the
3974         file.
3975
3976         * ControlBuilder.cs: small fix in NamingContainerType because
3977         TemplateBuilders have a null ControlType. When a control is appended
3978         to a parent, assign the child's parent.
3979
3980         * UserControlParser.cs: fixed the value of InputFile.
3981
3982 2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3983
3984         * ApplicationFileParser.cs: store the Context and override
3985         BaseVirtualDir so that it's the application path.
3986
3987         * BaseParser.cs: removed CurrentVirtualPath property.
3988
3989         * TemplateControlParser.cs: use BaseVirtualDir.
3990
3991         * UserControlParser.cs: removed CurrentVirtualPath.
3992
3993 2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3994
3995         * TemplateParser.cs: always reference all the assemblies in bin
3996         directory.
3997
3998 2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3999
4000         * ApplicationFileParser.cs: it works now. Prior to these changes, we
4001         were using the compiler directly.
4002
4003         * BaseParser.cs: added some useful properties and methods.
4004
4005         * CodeBuilder.cs: use ILocation.
4006         * CodeRenderBuilder.cs: use ILocation.
4007         * CollectionBuilder.cs: use the RootBuilder to map tag names into Types.
4008
4009         * ControlBuilder.cs: made it useful.
4010
4011         * DataBindingBuilder.cs: the control type for data bound text is
4012         DataBoundLiteralControl now.
4013
4014         * ObjectTagBuilder.cs: store some object tag attributes.
4015
4016         * PageParser.cs: handle page-only directives.
4017
4018         * RootBuilder.cs: bah.
4019         * SimpleWebHandlerParser.cs: made it dummy.
4020         * TemplateControl.cs: Modified file.
4021
4022         * TemplateControlParser.cs: handle directives that are common to pages
4023         and user controls.
4024
4025         * TemplateParser.cs: utility methods and handling of directives that
4026         are common to app, page and user controls.
4027
4028         * UserControl.cs: added ControlBuilderAttribute.
4029
4030         * UserControlControlBuilder.cs: builder for user controls.
4031         * UserControlParser.cs: use the new interfaces.
4032
4033 2003-04-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4034
4035         * ControlBuilder.cs: line and fileName are protected now.
4036
4037         * CodeBuilder.cs: base class for the next 2 files.
4038         * CodeRenderBuilder.cs: builder for code render.
4039         * DataBindingBuilder.cs: builder for data binding.
4040
4041 2003-04-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4042
4043         * ITagNameToTypeMapper.cs: made it internal.
4044
4045         * ObjectTagBuilder.cs: builder for <object runat="server"> tag.
4046         * ObjectTag.cs:
4047         * RootBuilder.cs: initial builder.
4048
4049 2003-04-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4050
4051         * CollectionBuilder.cs:
4052         * TemplateBuilder.cs: new classes derived from ControlBuilder that
4053         represent a property or a ITemplate.
4054         
4055         * ControlBuilder.cs: implemented all the missing bits.
4056         * TemplateParser.cs: added mapping from tag name to Type feature.
4057
4058 2003-02-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4059
4060         * Control.cs: have i definitely fixed naming container stuff this time?
4061
4062         * LosFormatter.cs: activated binary serialization code.
4063
4064 2003-02-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4065
4066         * Control.cs:
4067         (AddedControl): fixed default id assignation when the sequence of
4068         AddedControl until it's included in the page or one of its controls
4069         does not pass through a naming container.
4070
4071 2003-02-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4072
4073         * Control.cs: give different default names depending on the place where
4074         it is assigned. Implemented ResolveURl (no more ~ rendered in
4075         attributes!).
4076
4077 2003-02-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4078
4079         * Control.cs: when adding a control, assign default names to th
4080         children that don't have one.
4081
4082 2003-02-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4083
4084         * SimpleWebHandlerParser.cs: modified to use the new parser interface.
4085
4086 2003-01-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4087
4088         * Control.cs: some more tweaks to naming containers stuff.
4089         * DataBinder.cs: don't throw exception if the container is null.
4090
4091         * Page.cs: now we can render client scripts, startup scripts and hidden
4092         fields. Only render __VIEWSTATE if there is someone that will take care
4093         of it.
4094         (RaisePostBackEvents): first try the last one that required raise event,
4095         then try __EVENTTARGET.
4096
4097 2003-01-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4098
4099         * Control.cs: fixes in UniqueID, FindControl, AddedControl,
4100         UnloadRecursive, InitRecursive. Reduced the size of __VIEWSTATE. Made
4101         FindControl work with NamingContainers.
4102         
4103         * ControlCollection.cs: notify the parent when clearing the collection.
4104
4105         * LosFormatter.cs: Added debugging output and generate a valid
4106         viewstate even for unknown types.
4107
4108         * Page.cs: GetPostBackEventReference now uses UniqueID. Reduced
4109         viewstate.
4110
4111 2003-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4112
4113         * Page.cs: make it fire the LoadData related events also for controls
4114         such as ImageButton, whose variable(s) in the query string are of the
4115         form ctrl_name.x and only fire them once per control.
4116
4117 2003-01-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4118
4119         * DataBinder.cs:
4120         (GetPropertyValue): don't try to get the property as indexed
4121
4122 2003-01-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4123
4124         * DataBinder.cs: use TypeDescriptor to get the properties and their
4125         values.
4126
4127 2003-01-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4128
4129         * Control.cs:
4130         (AddedControl): take the children to the same state of the parent.
4131         (InitRecursive): set the page of the children.
4132
4133         * Page.cs: removed one line (it's done a few lines above).
4134
4135         * UserControl.cs:
4136         (OnInit): always call InitializeAsUserControl
4137         (InitializeAsUserControl): sets the page for the control.
4138
4139 2003-01-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4140
4141         * Control.cs: fixed bug #36037.
4142
4143 2002-12-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4144
4145         * BaseParser.cs: a couple of path fixes to make it work
4146         when the page is not in the root directory.
4147
4148 2002-12-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4149
4150         * Control.cs: fixed PreRenderRecursiveInternal. Thanks to kojoadams for
4151         reporting the bug.
4152
4153 2002-12-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4154
4155         * BaseParser.cs: use MapPath and context to locate files.
4156         * Control.cs: implemented MapPathSecure.
4157         * TemplateControl.cs: use UrlUtils to generate the path.
4158         * TemplateControlParser.cs: use the context and MapPath.
4159         * UserControl.cs: implemented MapPath.
4160         * UserControlParser.cs: added context parameter to constructor.
4161
4162 2002-12-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4163
4164         * Control.cs: implemented MapPathSecure.
4165         * Page.cs: fixed Server property.
4166
4167 2002-12-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4168
4169         * DataBinder.cs: try the indexer if the property is not found in
4170         GetPropertyValue ().
4171
4172 2002-12-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4173
4174         * Control.cs: added AutoEventWireup internal property.
4175
4176         * Page.cs: removed page events wire up from here.
4177
4178         * TemplateControl.cs: new method WireupAutomaticEvents to hook up page
4179         and user controls events.
4180
4181         * TemplateControlParser.cs: process the options that are applicable
4182         once we have the instance of the control.
4183
4184         * TemplateParser.cs: also stores the options.
4185
4186         * UserControl.cs: hook up events before initializing the control.
4187
4188
4189 2002-12-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4190
4191         * Control.cs: new method to set bindingContainer value.
4192         * TemplateControl.cs: added controls are not binding containers.
4193
4194 2002-12-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4195
4196         * Control.cs: implemented TemplateSourceDirectory.
4197         * TemplateControl.cs: implemented LoadControl and LoadTemplate.
4198
4199 2002-11-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4200
4201         * UserControl.cs: fixed SetAttribute.
4202         * UserControlParser.cs: set the correct base type.
4203
4204 2002-11-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4205
4206         * TemplateParser.cs: fixed BaseType.
4207         * UserControlParser.cs: helper class to compile user controls.
4208
4209 2002-11-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4210
4211         * LosFormatter.cs: added DateTime to special types.
4212
4213 2002-11-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4214
4215         * LosFormatter.cs: added array serialization support. Disabled binary
4216         serialization and add some debugging code.
4217
4218         * StateBag.cs: the length of the list of value can be less than the
4219         length if the list of keys when remaining values are null.
4220
4221 2002-11-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4222
4223         * Page.cs: return something useful in GetPostBackClientEvent.
4224
4225 2002-11-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4226
4227         * Page.cs: implemented FileDependecies and made it protected.
4228
4229 2002-10-31  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4230
4231         * Control.cs: save control names instead of the controls
4232         themselves to the ViewState.
4233
4234         * LosFormatter.cs: added support for serializing unknown
4235         types. BinaryFormatter does not work so you better don't store anything
4236         of unknown Type in ViewState.
4237
4238         * Page.cs: GetViewStateString works now using LosFormatter.
4239         Complete "Control execution lifecycle" by unloading all the child
4240         controls. Check for null in RaisePostBackEvents.
4241         LoadPageViewStateFromPersistenceMedium uses LosFormatter too.
4242
4243 2002-10-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4244
4245         * DataBinder.cs: implemented Eval and GetIndexedPropertyValue methods.
4246
4247 2002-10-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4248
4249         * LosFormatter.cs: Use WebEncoding.Encoding.
4250
4251         * Control.cs:
4252         * Page.cs: fixed namespace.
4253
4254 2002-10-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4255
4256         * Page.cs: set the context in ProcessRequest. Added a few trace calls.
4257         * Control.cs: added some trace information.
4258
4259 2002-10-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4260
4261         * SimpleHandlerFactory.cs: new handler for .ashx files.
4262
4263 2002-09-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4264
4265         * System.Web.UI/PageHandlerFactory.cs: new file.
4266         * System.Web.UI/PageParser.cs:
4267         * System.Web.UI/TemplateControlParser.cs: we are now able to compile
4268         pages and use HttpApplication, HttpRuntime and SimpleWorkerRequest.
4269
4270 2002-09-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4271
4272         * Control.cs: implemented ObBubbleEvent.
4273         * Page.cs: temporary workaround to make POST work with xsp server.
4274
4275 2002-09-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4276
4277         * Page.cs: fixed InvokeEventMethod now that Type.GetMethod does not
4278         return pvt methods.
4279
4280 2002-09-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4281
4282         * SimpleWebHandlerParser.cs: New file.
4283         * WebServiceParser.cs: New file.
4284
4285 2002-08-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4286
4287         * LosFormatter.cs: almost fully implemented.
4288
4289 2002-08-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4290
4291         * CompiledTemplateBuilder.cs: InstantiateIn is virtual.
4292         * EmptyControlCollection.cs: throw correct exception.
4293         * LosFormatter.cs: stubbed out.
4294         * OutputCacheLocation.cs: little fix.
4295
4296 2002-08-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4297
4298         * System.Web.UI/ApplicationFileParser.cs:
4299         * System.Web.UI/BaseParser.cs:
4300         * System.Web.UI/PageParser.cs:
4301         * System.Web.UI/TemplateControl.cs:
4302         * System.Web.UI/TemplateControlParser.cs:
4303         * System.Web.UI/TemplateParser.cs: first steps to move xsp into
4304         System.Web.
4305
4306 2002-07-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4307
4308         * Page.cs: request to render postback script can be after form started
4309         rendering.
4310
4311 2002-07-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4312
4313         * Page.cs: added more page events to invoke automagically if some
4314         methods are defined.
4315
4316 2002-07-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4317
4318         * Control.cs:
4319         (SaveViewState): save state even when control is not visible.
4320         (SaveViewStateRecursive):
4321         (LoadViewStateRecursive): made internal.
4322
4323 2002-07-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4324
4325         * Page.cs: improved event raising to allow client postback for a wider
4326         variety of actions (clicking an hyperlink, ...).
4327
4328 2002-07-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4329
4330         * UserControl.cs: implemented Load/SaveViewState.
4331
4332 2002-07-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4333
4334         * AttributeCollection.cs:
4335         (Add): handle 'style' through styleCollection.
4336
4337         * CssStyleCollection.cs:
4338         (fillStyle): renamed to FillStyle and made it internal.
4339
4340         * Page.cs:
4341         (GetViewStateString): fixed, broken after other recent changes.
4342         (ProcessPostData): allow a second try for postback data after OnLoad.
4343         (ProcessRequest): clear controls collection, removed call to 
4344         UnloadRecursive.
4345
4346 2002-07-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4347
4348         * Control.cs: uncommented Dispose.
4349
4350         * Page.cs:
4351         (DeterminePostBackMode): more checkings.
4352         (GetPostBackClientHyperLink): implemented.
4353         (GetPostBackEventReference): added some comments with the HTML that MS
4354         generates for that.
4355         (ProcessRequest): fixed processing order. The page is unloaded after
4356         a request and regenerated from view state on subsequents posts.
4357
4358 2002-07-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4359
4360         * Control.cs: fixed related to ViewState. Added RemovedControl.
4361
4362         * ControlCollection.cs: notify owner of control removal.
4363         
4364         * CssStyleCollection.cs: almost rewritten to make it render the style
4365         attribute after changes to it.
4366
4367         * Page.cs: follow the guidelines in 'Control execution lifecycle'.
4368         Removed Xml code.
4369
4370         * StateBag.cs: don't use IDictionary.GetEnumerator on the
4371         HybridDictionary: it makes the program give an InvalidCastException at
4372         runtime. Why?
4373
4374 2002-07-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4375
4376         * Page.cs: fire Init and Load events for all children.
4377
4378 2002-07-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4379
4380         * UserControl.cs: New file.
4381
4382 2002-07-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4383
4384         * ControlBuilderAttribute.cs: finished implementation.
4385
4386 2002-07-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4387
4388         * ConstructorNeedsTagAttribute.cs: the default constructor sets the
4389         property to false.
4390
4391 2002-07-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4392
4393         * System.Web.UI/AttributeCollection.cs: added CssStyleCollection.
4394
4395         * System.Web.UI/CssStyleCollection.cs: use a StateBag instead of a
4396         Hashtable. Added internal .ctor.
4397
4398         * System.Web.UI/DataBinding.cs: propertyType is a Type. Implemented
4399         Equals and GetHashCode.
4400
4401         * System.Web.UI/DataBoundLiteralControl.cs:
4402         (LoadViewState):
4403         (SaveViewState): implemented.
4404
4405         * System.Web.UI/Page.cs: FileDependencies is not public.
4406
4407         * System.Web.UI/ParseChildrenAttribute.cs: give a value to Default.
4408         (GetHashCode):
4409         (Equals):
4410         (IsDefaultAttribute): implemented.
4411
4412 2002-07-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4413
4414         * Control.cs: fixed Visible property.
4415         * Page.cs: fixed GetViewStateString.
4416
4417 2002-07-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4418
4419         * System.Web.UI/Page.cs:
4420         (GetViewStateString): new function to give the server access to the
4421         generated view state string.
4422         (Validate): d'oh!
4423
4424 2002-07-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4425
4426         * Control.cs:
4427         (SaveViewstateRecursive): implemented.
4428         (SaveViewState): fixed.
4429         (IParserAccessor.AddParsedSubObject): don't use 'this'.
4430
4431         * Page.cs: added code to save view state to an xml file.  It's not
4432         being used right now.
4433
4434 2002-06-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4435
4436         * System.Web.UI/LiteralControl.cs: 
4437         Fixes based on class status page:
4438         
4439                 - Add attributes (DefaultEvent, ParseChildren).
4440                 - Fix declarations.
4441                 - Explicitly implement some interfaces (IPostBackDataHandler
4442                 and IPostBackEventHandler).
4443                 - Implemented some missing methods.
4444
4445 2002-06-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4446
4447         * Control.cs: reimplemented FindControls.
4448
4449         * Page.cs:
4450         (.ctor): set the page for this control.
4451         (IsPostBack): return valid value.
4452         (DeterminePostBackMode): finished.
4453         (OnFormRender): render __VIEWSTATE (uses GetTypeHashCode()).
4454         (ProcessPostData): implemented. Raises change and postback events.
4455         (ProcessRequest): changed to support reuse of the instance.
4456         (RegisterRequiresPostBack): implemented.
4457
4458         * ValidatorCollection.cs: implemented all methods.
4459
4460 2002-06-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4461
4462         * Control.cs:
4463         * Page.cs: first attemp to save view state.
4464
4465         * HtmlForm.cs: don't render Action.
4466
4467 2002-06-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4468
4469         * Page.cs: implemented more properties using information we already
4470         have in Context.
4471         (OnFormRender):
4472         (OnFormPostRender):
4473         (VerifyRenderingInServerForm): implemented.
4474
4475 2002-06-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4476
4477         * Page.cs: changed InvokeEventMethod to use a GetMethod that works with
4478         out runtime. Renamed Page_Init and Page_Load.
4479
4480         After this, we can load a dll and render HTML in linux.
4481
4482 2002-06-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4483
4484         * Control.cs:
4485         (AddedControl): new function that is called whenever a control is
4486         added to a collection of controls in a container. It sets the defaults
4487         except for Page.
4488         
4489         * ControlCollection.cs: call AddedControl in Add/AddAt.
4490
4491         * DataBoundLiteralControl.cs: implemented constructor, Text, Render,
4492         SetStaticString and SetDataBoundString.
4493
4494         * Page.cs: removed SetDefaults.
4495
4496 2002-06-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4497
4498         * CompiledTemplateBuilder.cs: new file. Used in the code generated
4499         by xsp.
4500
4501         * Control.cs:
4502         (BindingContainer): implemented.
4503         (EnsureChildControls): avoid stack overflow.
4504
4505         * DataBinder.cs: implemented Eval and PropertyValue.
4506
4507 2002-06-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4508
4509         * HtmlTextWriter.cs: fixed style attributes rendering (almost the same
4510         bug as in regular attributes).
4511
4512 2002-06-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4513
4514         * Control.cs: implemented PreventAutoID.
4515
4516         * Page.cs:
4517         (SetDefaults): don't set ID automatically if Control.PreventAutoID has
4518         been called.
4519
4520 2002-06-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4521
4522         * Page.cs:
4523         (Validators): if the collection is null, create one.
4524         (GetPostBackEventReference 2): don't throw exception.
4525         (GetPostBackClientEvent): return a string with containing the method
4526         name, the control name and the argument.
4527
4528 2002-06-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4529
4530         * Page.cs: SetPage is now called SetDefaults and also sets a default 
4531         ID for controls that don't have one yet.
4532
4533 2002-06-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4534
4535         * Page.cs:
4536         (GetPostBackClient):
4537         (RegisterRequiresPostBack): don't throw NotImplementedException to
4538         keep going.
4539         (ProcessRequest): set the current page as the Page property for *all*
4540         the controls, not just the direct children of the page.
4541
4542 2002-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4543
4544         * Control.cs:
4545         (MapPathSecure): until security is implemented, return the same path
4546         received as argument.
4547         (RenderControl): call OnPreRender before rendering the control. So
4548         AdRotator can read its configuration file.Is there any other place
4549         where this should be done?
4550
4551         * HtmlTextWriter.cs:
4552         (AddAttribute): fixed. Now it really stores attributes.
4553         (RenderBeginTag): fixed a couple of bugs (little ones but hard to find).
4554
4555 2002-06-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4556
4557         * ControlCollection.cs:
4558         (AddAt): if index is -1 behave as a plain Add.
4559
4560 2002-06-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4561
4562         * Page.cs: for each child control to render, assign Control.Page.
4563         Probably also needed in HtmlContainerControl derived classes.
4564         
4565 2002-06-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4566
4567         * AttributeCollection.cs: don't need a Hastable. StateBag now works 
4568         fine and takes care of the details.
4569
4570         * Control.cs: added HasChildren property.
4571
4572         * StateBag.cs: fixed a couple of nasty bugs.
4573
4574 2002-06-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4575
4576         * Page.cs: run OnInit, OnLoad y PreRender before rendering the page.
4577         Invoke Page_Init and/or Page_Load if the user supplied them (though 
4578         this should depend on AutoEventWireUp attribute of Page directive).
4579
4580 2002-06-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4581
4582         * Control.cs: don't throw exception in ControlID. By now, it returns ID.
4583
4584         * Page.cs: 
4585         (ProcessRequest): implemented.
4586
4587 2002-06-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4588
4589         * System.Web.UI/Page.cs: finished stubbing out. Implemented some
4590         methods.
4591
4592 2002-06-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4593
4594         * Page.cs:
4595         (FileDependencies): now is public public.
4596         (EnableViewStateMAC): uncommented and made protected. 
4597         (GetTypeHashCode): added method.
4598         
4599 2002-05-24  Duncan Mak  <duncan@ximian.com>
4600
4601         * TemplateControl.cs (SetStringResourcePointer): Fixed typo.
4602
4603         * StateBag.cs (Item): Changed the visibility level of the this
4604         [object] indexer.
4605
4606         Misc. formatting edits, fixing some bugs introduced by the indentation.
4607
4608         * DataBinder.cs (Eval)
4609         (GetIndexedPropertyValue)
4610         (GetPropertyValue): Fixed return types.
4611
4612 2002-05-21  Miguel de Icaza  <miguel@ximian.com>
4613
4614         * HtmlTextWriter.cs: Use this to change the member instances.
4615
4616 2002-05-17  Duncan Mak  <duncan@ximian.com>
4617
4618         * AttributeCollection.cs: 
4619         * ControlCollection.cs: 
4620         * CssStyleCollection.cs: 
4621         * DataBindingCollection.cs: 
4622         * EmptyControlCollection.cs: Added missing Collection classes.
4623
4624 2002-05-17  Duncan Mak  <duncan@ximian.com>
4625
4626         * BaseParser.cs:
4627         * TemplateParser.cs:  Implemented. BaseParser is weird because
4628         there is no documentation on what it does.
4629
4630         * ControlBuilder.cs:
4631         
4632         * DataBinder.cs: 
4633         * DataBinding.cs: Added. 
4634
4635         * DataBoundLiteralControl.cs: 
4636         * Triplet.cs: Added.
4637
4638         * RenderMethod.cs: Added this delegate for Control.cs
4639
4640 2002-05-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4641
4642         * ValidationPropertyAttribute.cs: a couple of fixes to make it compile.
4643
4644 2002-05-14  Duncan Mak  <duncan@ximian.com>
4645
4646         * ValidationPropertyAttribute.cs: Added to CVS.
4647
4648 2002-05-10  Duncan Mak  <duncan@ximian.com>
4649
4650         * ConstructorNeedsTagAttribute.cs: 
4651         * ControlBuilderAttribute.cs: 
4652         * ImageClickEventArgs.cs: 
4653         * ParseChildrenAttribute.cs: 
4654         * PartialCachingAttribute.cs: 
4655         * PersistChildrenAttribute.cs: 
4656         * PersistenceModeAttribute.cs: 
4657         * TemplateContainerAttribute.cs: Added to CVS.
4658
4659         * PersistanceMode.cs: Removed, fixed typo.
4660         * PersistenceMode.cs: Replacing above.
4661
4662         * StateBag.cs (this): Fixed indexer, it takes a string as the
4663         index, not an object.
4664
4665         * ValidatorCollection.cs: Fixed typo, ValidatedCollection to ValidatorCollection. 
4666
4667         * Page.cs (Validators): return type should be ValidatorCollection,
4668         not ValidatedCollection.
4669
4670         * TagPrefixAttribute.cs: Added to CVS.
4671
4672 2002-05-07  Duncan Mak  <duncan@ximian.com>
4673
4674         * Utils.cs (GetClientValidatedEvent): Uncommented the 'Page' argument.
4675
4676 2002-03-26   Gaurav Vaish <gvaish@iitk.ac.in>
4677
4678         * DataBindingHandlerAttribute.cs
4679                                    - Completed
4680         * ToolboxDataAttribute.cs  - Completed
4681
4682 2002-01-03  Nick Drochak  <ndrochak@gol.com>
4683
4684         * DesignTimeParseData.cs: initialze static member to avoid compile
4685         error
4686         * PropertyConverter.cs: remove uneeded exception variables from
4687         catch blocks.
4688
4689 2002-01-02  Nick Drochak  <ndrochak@gol.com>
4690
4691         * DesignTimeParseData.cs: fix header to show correct class name
4692
4693 2001-12-21   Gaurav Vaish <gvaish@iitk.ac.in>
4694
4695         * StateBag.cs             - Completed
4696
4697 2001-12-19   Gaurav Vaish <gvaish@iitk.ac.in>
4698
4699         * Pair.cs                 - Small undocumented class. Completed.
4700
4701 2001-12-18   Gaurav Vaish <gvaish@iitk.ac.in>
4702
4703         * DesignTimeParseData.cs  - Initial implementation
4704         * StateBag.cs             - Initial implementation
4705
4706 2001-12-17   Gaurav Vaish <gvaish@iitk.ac.in>
4707
4708         * PropertyConverter.cs    - Undocumented class. Completed.
4709         * Utils.cs                - Undocumented, private class.
4710                                     Initial implementation
4711
4712 2001-08-28  Bob Smith  <bob@thestuff.net>
4713         * Control.cs: Figured out some undocumented API.
4714         * Added TODO.
4715         * BuildMethod.cs: Initial implementation.
4716         * BuildTemplateMethod.cs: Initial implementation.
4717         * HtmlTextWriterAttribute.cs: Initial implementation.
4718         * HtmlTextWriterStyle.cs: Initial implementation.
4719         * HtmlTextWriterTag.cs: Initial implementation.
4720         * IAttributeAccessor.cs: Initial implementation.
4721         * IDataBindingsAccessor.cs: Initial implementation.
4722         * ImageClickEventHandler.cs: Initial implementation.
4723         * INamingContainer.cs: Initial implementation.
4724         * IParserAccessor.cs: Initial implementation.
4725         * IPostBackDataHandler.cs: Initial implementation.
4726         * IPostBackEventHandler.cs: Initial implementation.
4727         * IStateManager.cs: Initial implementation.
4728         * ITagNameToTypeMapper.cs: Initial implementation.
4729         * ITemplate.cs: Initial implementation.
4730         * IValidator.cs: Initial implementation.
4731         * OutputCacheLocation.cs: Initial implementation.
4732         * PersistanceMode.cs: Initial implementation.
4733         * StateItem.cs: Initial implementation.
4734
4735 2001-08-27  Bob Smith  <bob@thestuff.net>
4736
4737         * Control.cs: Bug fixes and implementations.
4738
4739 2001-08-24  Bob Smith  <bob@thestuff.net>
4740
4741         * Control.cs: Bug fixes.
4742
4743 2001-08-23  Bob Smith  <bob@thestuff.net>
4744
4745         * Control.cs: More implementation. Events reworked for performance.
4746
4747 2001-08-22  Bob Smith  <bob@thestuff.net>
4748
4749         * LiteralControl.cs: Implemented.
4750         * Control.cs: Even more implementation (Events). What a beast.
4751
4752 2001-08-20  Bob Smith  <bob@thestuff.net>
4753
4754         * Control.cs: More implementation. Not done yet. Shutter.
4755
4756 2001-08-17  Bob Smith  <bob@thestuff.net>
4757
4758         * Control.cs: Partial implementation.