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