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