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