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