* ObjectStateFormatter.cs: Merged TARGET_JVM parts in
[mono.git] / mcs / class / System.Web / System.Web.UI / ChangeLog
1 2006-01-09  Vladimir Krasnov  <vladimirk@mainsoft.com>
2
3         * ObjectStateFormatter.cs: Merged TARGET_JVM parts in 
4         TypeFormatter.Read, TypeFormatter.Write from /main/5
5
6 2006-01-09  Konstantin Triger <kostat@mainsoft.com>
7
8         * Page.cs: make ProcessRequest virtual under TARGET_JVM.
9
10 2006-01-04  Chris Toshok  <toshok@ximian.com>
11
12         * TemplateParser.cs (.ctor): kinda gross, but handle the
13         AddAssembliesInBin case here.
14         
15         * SimpleWebHandlerParser.cs (.ctor): same.
16
17 2006-01-04  Chris Toshok  <toshok@ximian.com>
18
19         * SimpleWebHandlerParser.cs: Remove the declaration of
20         compilationConfig in the CONFIGURATION_2_0 case.  it's
21         unnecessary.
22         (.ctor): ifdef out the AddAssembliesInBin call in the
23         CONFIGURATION_2_0 case.  need to revisit this.
24         (CompilationConfig): add a CONFIGURATION_2_0 version.
25
26         * BaseParser.cs: Remove the declaration of compilationConfig in
27         the CONFIGURATION_2_0 case.  it's unnecessary.
28
29 2005-12-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
30
31         * Control.cs: use _controls instead of the property wherever possible.
32
33 2005-12-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
34
35         * Control.cs: use the _controls field instead of the Controls property.
36         Fixes bug #76919.
37
38 2005-11-30  Sebastien Pouliot  <sebastien@ximian.com>
39
40         * KeyedList.cs: Fixed for IOrderedDictionary change in 2.0 final.
41         Now internal.
42         * KeyedListEnumerator.cs: Now internal.
43
44 2005-11-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
45
46         * ControlCollection.cs: allow 'null' in Remove.
47
48 2005-11-28  Chris Toshok  <toshok@ximian.com>
49
50         * Page.cs (GetFormatter): CONFIGURATION_2_0 work.
51
52         * TemplateParser.cs (..ctor): CONFIGURATION_2_0 work.
53         (PagesConfig): add a CONFIGURATION_2_0 version that returns a
54         PagesSection.
55
56         * PageParser.cs (ProcessMainAttributes): CONFIGURATION_2_0 work.
57
58         * BaseParser.cs (CompilationConfig): add a CONFIGURATION_2_0
59         version that returns a CompilationSection.
60
61 2005-11-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
62
63         * SimpleWebHandlerParser.cs: removed 'codebehind' related stuff.
64
65 2005-11-09  Chris Toshok  <toshok@ximian.com>
66
67         * ViewStateEncryptionMode.cs: new 2.0 enum.
68
69 2005-11-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
70
71         * TemplateParser.cs: fixes #76423. Not tested properly.
72
73 2005-11-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
74
75         * Page.cs: call LoadViewStateRecursive when the Form collection has
76         not been used by a different page (GetTypeHashCode). This fixes problems
77         when calling Server.Transfer while preserving Form and QueryString,
78         as the page we transfer to used the view state stored in the Form, which
79         contained the serialized data for the page calling Server.Transfer
80         instead.
81
82 2005-10-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
83
84         * Page.cs: add/remove the error before/after invoking OnError.
85
86 2005-10-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
87
88         * Page.cs: call OnError when there's an exception (not for TAE). Fixes
89         bug #76572.
90
91 2005-10-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
92
93         * TemplateControl.cs:
94         * PartialCachingControl.cs: if a control is cacheable, LoadControl
95         returns a PartialCachingControl that holds the VaryBy* and takes care
96         of partial caching and rendering. Fixes bug #76547.
97
98 2005-10-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
99
100         * Page.cs: don't cache the 'Validate()' results. IsValid retests
101         the validators again.
102
103 2005-09-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
104
105         * DesignerDataBoundLiteralControl.cs: changed autoid api.
106         * DataBoundLiteralControl.cs: changed autoid api.
107
108         * Control.cs: fixlet for UniqueID and weird test case.  Removed
109         PreventAutoID and only use the property to set that value.
110
111         * LiteralControl.cs: changed autoid api.
112
113 2005-09-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
114
115         * AttributeCollection.cs: avoid code duplication and
116         don't add "style" to the bag, or it will overwrite the settings made
117         by CssStyleCollection.
118
119         * CssStyleCollection.cs: make it throw where MS throws.
120         Minimize the number of times we create the "style" string and take
121         care of updating it for the AttributeCollection. FillStyle and
122         BagToString are now private. One should use the 2.0 (internal in <2.0)
123         Value property.
124
125 2005-09-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
126
127         * Control.cs: fix HasChildViewStates.
128
129 2005-09-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
130
131         * LosFormatter.cs: when the default ctor is used, MAC is disabled.
132         Fixes bug #76240.
133
134 2005-09-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
135
136         * ObjectTagBuilder.cs: only fail when no id and no attributes.
137
138 2005-09-23  Sebastien Pouliot  <sebastien@ximian.com>
139
140         * DataBindingCollection.cs: Using an hashtable is a nice trick but
141         we need to copy values (not the DictionaryEntry) in CopyTo.
142         * Page.cs: IsValid throws an exception if the page hasn't be 
143         validated. VerifyRenderingInServerForm doesn't throw an exception
144         during unit testing (without a context?) but does in normal ops.
145
146 2005-09-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
147
148         * LosFormatter.cs: the exceptions thrown have a 500 httpCode. Really
149         save the allocation of new MemoryStreams when possible. Thanks to
150         Sebastien again.
151
152 2005-09-23  Ben Maurer  <bmaurer@ximian.com>
153
154         * HtmlTextWriter.cs: Initial support for escaping.
155
156 2005-09-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
157
158         * ViewStateOutputHashStream.cs: Removed. It didn't last long.
159
160         * Page.cs: almost restored to its previous state, but now that we found
161         that LosFormatter ctor that takes 'enableMac', moved the logic to
162         add the hash and validate there. Thanks to Sebastien for his input.
163         
164         * LosFormatter.cs: implemented the missing ctors and support for
165         "MAC" validation of the data.
166
167 2005-09-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
168
169         * Page.cs:
170         * ViewStateOutputHashStream.cs: added support for viewstate MAC. It
171         prevents the viewstate being altered on the client and it's disabled
172         by default as per the documentation, but MS machine.config has it
173         enabled in machine.config.
174
175 2005-09-22  Miguel de Icaza  <miguel@novell.com>
176
177         * DataBindingCollection.cs: Raise the event, remove MonoTODO.
178
179         * MinimizableAttributeTypeConverter.cs: Fix warning, compare to a
180         string. 
181
182 2005-09-21  Sebastien Pouliot  <sebastien@ximian.com>
183
184         * Control.cs: Added null checks for Trace as it can be null when 
185         rendering (like it was for 39 unit tests).
186
187 2005-09-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
188
189         * Page.cs: reverted hacks used with the wrong method of getting a
190         control rendered size.
191         * Control.cs: if the trace is enabled, save control rendered size.
192
193 2005-09-19  Sebastien Pouliot  <sebastien@ximian.com> 
194  
195         * Page.cs: Remove references to IPageParser (removed from 2.0 RC). We
196         now use HtmlHeader directly.
197         * UrlPropertyAttribute.cs: Removed AllowedTypes property (2.0 RC) and
198         rewrote Equals to avoid dual type cast.
199
200 2005-09-19  Sebastien Pouliot  <sebastien@ximian.com>
201
202         * SupportsEventValidationAttribute.cs: New attribute added in 2.0 RC.
203
204 2005-09-19  Sebastien Pouliot  <sebastien@ximian.com> 
205
206         * ControlBuilder.cs: Added BuildObject override for 2.0 profile.
207         * TagPrefixAttribute.cs: Added LinkDemand for AspNetHostingPermission
208         with Minimal level. Fixed checks on ctor.
209         * TemplateBuilder.cs: Added LinkDemand and InheritanceDemand for 
210         AspNetHostingPermission with Minimal level.
211         * TemplateContainerAttribute.cs: Added LinkDemand for 
212         AspNetHostingPermission with Minimal level.
213         * TemplateControl.cs: Added LinkDemand and InheritanceDemand for 
214         AspNetHostingPermission with Minimal level. Fixed checks/exceptions. 
215         Stubbed IFilterResolutionService for CAS testing.
216         * TemplateControlParser.cs: Added LinkDemand and InheritanceDemand for
217         AspNetHostingPermission with Minimal level.
218         * TemplateParser.cs: Added LinkDemand and InheritanceDemand for 
219         AspNetHostingPermission with Minimal level.
220         * ThemeableAttribute.cs: Added LinkDemand for AspNetHostingPermission
221         with Minimal level. Removed IDispose interface.
222         * ToolboxDataAttribute.cs: Added LinkDemand for 
223         AspNetHostingPermission with Minimal level. Fixed IsDefaultAttribute 
224         to work on both 1.x and 2.0 profiles.
225         * Triplet.cs: Added LinkDemand and (only for 1.x) InheritanceDemand 
226         for AspNetHostingPermission with Minimal level.
227         * UserControl.cs: Added LinkDemand and InheritanceDemand for 
228         AspNetHostingPermission with Minimal level. Stubbed 
229         IFilterResolutionService for CAS testing.
230         * UserControlControlBuilder.cs: Added LinkDemand and InheritanceDemand
231         for AspNetHostingPermission with Minimal level.
232         * ValidationPropertyAttribute.cs: Added LinkDemand for 
233         AspNetHostingPermission with Minimal level.
234         * ValidatorCollection.cs: Added LinkDemand for AspNetHostingPermission 
235         with Minimal level.
236         * WebResourceAttribute.cs: Removed extra ctor and added setter to 
237         PerformSubstitution.
238         * WebServiceParser.cs: Added LinkDemand and InheritanceDemand for 
239         AspNetHostingPermission with Minimal level.
240
241 2005-09-15  Sebastien Pouliot  <sebastien@ximian.com> 
242  
243         * ParseChildrenAttribute.cs: Added LinkDemand for 
244         AspNetHostingPermission with Minimal level. Simplified Equals to avoid
245         casting. Added new ctor and public fields (2.0). Changed 
246         ChildControlType setter visibility to internal.
247         * PartialCachingAttribute.cs: Added LinkDemand for 
248         AspNetHostingPermission with Minimal level. Added new ctor and 
249         SqlDependency property (2.0).
250         * PartialCachingControl.cs: Added LinkDemand and InheritanceDemand for
251         AspNetHostingPermission with Minimal level.
252         * PersistenceModeAttribute.cs: Added LinkDemand for 
253         AspNetHostingPermission with Minimal level. Simplified Equals to avoid
254         casting.
255         * PersistChildrenAttribute.cs: Added LinkDemand for 
256         AspNetHostingPermission with Minimal level. Simplified Equals to avoid 
257         casting.
258         * PropertyConverter.cs: Added LinkDemand for AspNetHostingPermission 
259         with Minimal level. Class is static in 2.0.
260         * RootBuilder.cs: Added LinkDemand and, for 2.0, InheritanceDemand for 
261         AspNetHostingPermission with Minimal level. Class is no more sealed in
262         2.0. Added new (2.0) BuiltObjects property.
263         * SimpleWebHandlerParser.cs: Added LinkDemand and InheritanceDemand 
264         for AspNetHostingPermission with Minimal level.
265         * StateItem.cs: Added LinkDemand for AspNetHostingPermission with 
266         Minimal level.
267         * StateBag.cs: Added LinkDemand for AspNetHostingPermission with 
268         Minimal level. Removed SetDirty() which was called (2.0) but did 
269         nothing.
270         * StaticPartialCachingControl.cs: Added LinkDemand and 
271         InheritanceDemand for AspNetHostingPermission with Minimal level.
272
273 2005-09-15  Sebastien Pouliot  <sebastien@ximian.com>
274
275         * Html32TextWriter.cs: Added LinkDemand and InheritanceDemand for 
276         AspNetHostingPermission with Minimal level. Added new 2.0 properties
277         (but the generated HTML doesn't use them).
278         * HtmlTextWriter.cs: Added LinkDemand and InheritanceDemand for 
279         AspNetHostingPermission with Minimal level.
280         * ImageClickEventArgs.cs: Added LinkDemand for AspNetHostingPermission
281         with Minimal level.
282         * LiteralControl.cs: Added LinkDemand and InheritanceDemand for 
283         AspNetHostingPermission with Minimal level. Default Text is null.
284         * LosFormatter.cs: Added LinkDemand and InheritanceDemand for 
285         AspNetHostingPermission with Minimal level. Stubbed new 2.0 ctor.
286         * ObjectConverter.cs: Added LinkDemand and InheritanceDemand for 
287         AspNetHostingPermission with Minimal level. Obsoleted ctor for 2.0.
288         * ObjectTagBuilder.cs: Added LinkDemand for AspNetHostingPermission 
289         with Minimal level. Added check for null id (HttpException).
290         * Page.cs: Added LinkDemand and InheritanceDemand for 
291         AspNetHostingPermission with Minimal level. Throw some HttpException 
292         when no context is available.
293         * Pair.cs: Added LinkDemand for AspNetHostingPermission with Minimal 
294         level. InheritanceDemand too for 1.x.
295         * PageParser.cs: Added LinkDemand for AspNetHostingPermission with 
296         Minimal level.
297
298 2005-09-14  Sebastien Pouliot  <sebastien@ximian.com>
299  
300         * DataBinder.cs: Added LinkDemand for AspNetHostingPermission with 
301         Minimal level. Fixed some exceptions.
302         * DataBindingCollection.cs: Added LinkDemand for 
303         AspNetHostingPermission with Minimal level. Added 2.0 method and 
304         event.
305         * DataBindingHandlerAttribute.cs: Added LinkDemand for 
306         AspNetHostingPermission with Minimal level.
307         * DataBinding.cs: Added LinkDemand for AspNetHostingPermission with
308         Minimal level. Simplified Equals (reduced casts).
309         * DataBoundLiteralControl.cs: Added LinkDemand for 
310         AspNetHostingPermission with Minimal level. Implemented ITextControl
311         for 2.0.
312         * DesignerDataBoundLiteralControl.cs: Added LinkDemand for 
313         AspNetHostingPermission with Minimal level.
314         * DesignTimeParseData.cs: Added LinkDemand for AspNetHostingPermission
315         with Minimal level. Added new 2.0 properties.
316         * DesignTimeTemplateParser.cs: Added LinkDemand for 
317         AspNetHostingPermission with Minimal level. Made class static and 
318         stubbed missing methods (2.0).
319         * EmptyControlCollection.cs: Added LinkDemand and InheritanceDemand 
320         for AspNetHostingPermission with Minimal level. Changed Add* methods
321         exceptions to HttpException.
322
323 2005-09-14  Sebastien Pouliot  <sebastien@ximian.com> 
324
325         * AttributeCollection.cs: Added LinkDemand for AspNetHostingPermission
326         with Minimal level.
327         * BaseParser.cs: Added LinkDemand and InheritanceDemand for 
328         AspNetHostingPermission with Minimal level.
329         * BasePartialCachingControl.cs: Added LinkDemand and InheritanceDemand
330         for AspNetHostingPermission with Minimal level.
331         * CompiledTemplateBuilder.cs: Added LinkDemand for 
332         AspNetHostingPermission with Minimal level.
333         * ConstructorNeedsTagAttribute.cs: Added LinkDemand for 
334         AspNetHostingPermission with Minimal level.
335         * ControlBuilderAttribute.cs: Added LinkDemand for 
336         AspNetHostingPermission with Minimal level. Simplified Equals and 
337         IsDefaultAttribute.
338         * ControlBuilder.cs: Added LinkDemand and InheritanceDemand for 
339         AspNetHostingPermission with Minimal level.
340         * ControlCachePolicy.cs: Hided ctor and removed SupportsCaching setter
341         * ControlCollection.cs: Added LinkDemand and InheritanceDemand for 
342         AspNetHostingPermission with Minimal level. Fixed possible stack 
343         overflow in Add* methods. Fixed CopyTo as we're not allocating the 
344         array based on the number of items.
345         * Control.cs: Added LinkDemand and InheritanceDemand for 
346         AspNetHostingPermission with Minimal level. Fixed 2.0 signatures.
347         * CssStyleCollection.cs: Added LinkDemand for AspNetHostingPermission 
348         with Minimal level.
349         * IStyleSheet.cs: Fixed parameter orders (2.0).
350
351 2005-09-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
352
353         * TemplateParser.cs: default VS 2005 pages are compiled fine now.
354
355 2005-09-07  Chris Toshok  <toshok@ximian.com>
356
357         * MinimizableAttributeTypeConverter.cs: new class, whose existence
358         we know about because of corcompare, and for whose implementation
359         we have exclusively nunit to thank.
360
361 2005-09-06  Chris Toshok  <toshok@ximian.com>
362
363         * RootBuilder.cs (.cctor): doh, add all the new html controls
364         here.
365
366 2005-08-31  Chris Toshok  <toshok@ximian.com>
367
368         * DataSourceSelectArguments.cs (Empty): this is apparently,
369         according to corcompare, a property, not a field.  go figure.
370         (Equals): implement.
371         (IsEmpty): remove all mention of it.
372         
373 2005-08-29  Chris Toshok  <toshok@ximian.com>
374
375         * StateBag.cs (GetChar): add.
376
377 2005-08-28  Chris Toshok  <toshok@ximian.com>
378
379         * Page.cs: more random corcompare work.
380         (PageAdapter): implement.
381         
382 2005-08-28  Chris Toshok  <toshok@ximian.com>
383
384         * Page.cs (.ctor): set our initial ID to "__Page".
385         (SmartNavigation): obsolete in 2.0.
386         (FindControl): new implementation.  Just check our own ID against
387         the control we're looking for.  otherwise pass it along to
388         base.FindControl.
389         (GetPostBackClientHyperlink): obsolete in 2.0.
390
391 2005-08-28  Chris Toshok  <toshok@ximian.com>
392
393         * ClientScriptManager.cs: public sealed in 2.0
394
395         * IAdaptableTextWriter.cs: new 2.0 interface.
396
397         * IHierarchyData.cs: fix return type for GetParent.
398
399 2005-08-28  Chris Toshok  <toshok@ximian.com>
400
401         * Pair.cs: mark serializable and sealed in 2.0.
402
403 2005-08-26  Sebastien Pouliot  <sebastien@ximian.com>
404
405         * CssStyleCollection.cs: Implemented setter for Value (2.0) using the
406         existing (but internal) FillStyle method. Rewrote BagToString to use an
407         HtmlTextWriter so we get the "right" format for background-image url.
408
409 2005-08-26  Sebastien Pouliot  <sebastien@ximian.com> 
410  
411         * CssStyleCollection.cs: Implemented this[HtmlTextWriterStyle], 
412         Remove(HtmlTextWriterStyle) and the getter for Value (all 2.0). Removed
413         the extra space from last patch because they break some unit tests.
414
415 2005-08-26  Lluis Sanchez Gual  <lluis@novell.com> 
416
417         * CssStyleCollection.cs: Added some spacing.
418         * HtmlTextWriter.cs: Made style and attribute tables static.
419           Implemented StaticGetStyleName().
420
421 2005-08-26  Sebastien Pouliot  <sebastien@ximian.com> 
422  
423         * CssStyleCollection.cs: Stubbed new 2.0 stuff to allow TableStyleTest
424         compilation. 
425         * HtmlTextWriter.cs: Fix style rendering for BackgroundImage in 2.0.
426         The new rendering formats the value as "url(" + original + ")".
427
428 2005-08-26  Sebastien Pouliot  <sebastien@ximian.com> 
429
430         * HtmlTextWriter.cs: Added support for VerticalAlign style (as it 
431         depends on the HtmlTextWriterStyle ordering).
432
433 2005-08-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
434
435         * HtmlTextWriter.cs: remove 'mistaken end of statement' and FIXME.
436
437 2005-08-25  Sebastien Pouliot  <sebastien@ximian.com> 
438
439         * HtmlTextWriterStyle.cs: Added missing VerticalAlign in 2.0 (which 
440         fixed the rest of the enum values).
441         * UrlPropertyAttribute.cs: Removed the .ctor accepting an UrlTypes
442         parameter to match 2.0 API. Added a setter to the AllowedTypes 
443         property.
444
445 2005-08-24  Chris Toshok  <toshok@ximian.com>
446
447         * Control.cs (get_Adapter): Instead of throwing an exception, just
448         return null, so we can write the rest of the Control specific
449         Adapter code and just not enable any of those code paths until we
450         have actual adapters.  Also flag TODO.
451         (EnsureChildControls): Call out to Adapter.CreateChildControls if
452         we have an adapter.
453         (RenderChildren): call "RenderControl (writer, adapter)" if we
454         have an adapter.
455         (RenderControl): implement the adapter case naively.
456         (LoadRecursive): call out to Adapter.OnLoad if we have one.
457         (PreRenderRecursiveInternal): call out to Adapter.OnPrerender if
458         we have one.
459         (InitRecursive): call out to Adapter.OnInit if we have one.
460
461 2005-08-24  Chris Toshok  <toshok@ximian.com>
462
463         * Page.cs (GetPostBackEventReference): track change to
464         ClientScriptManager and don't call a removed method.
465
466         * ClientScriptManager.cs: track more recent docs and corcompare
467         output.
468
469 2005-08-24  Sebastien Pouliot  <sebastien@ximian.com>
470
471         * KeyedList.cs: Fixed bug when removing an unexisting object.
472         * StateManagedCollection.cs: Fixed API for beta2. Fixed buglets found 
473         in implementing RoleGroupCollection.
474
475 2005-08-22  Sebastien Pouliot  <sebastien@ximian.com>
476
477         * Page.cs: Use Control property (and not the _control variable) to get
478         the User (so the virtual Control property can be overriden properly).
479         Sadly this doesn't seems to be the case for other properties (like 
480         Request).
481
482 2005-08-18  Dick Porter  <dick@ximian.com>
483
484         * ControlCachePolicy.cs, PersistChildrenAttribute.cs,
485         UserControl.cs, DesignerDataBoundLiteralControl.cs,
486         PageStatePersister.cs, DataBoundLiteralControl.cs, Control.cs,
487         BasePartialCachingControl.cs, LiteralControl.cs: 2.0 API fixes and
488         stubs and attribute fixes
489
490 2005-08-13  Sebastien Pouliot  <sebastien@ximian.com>
491
492         * Control.cs: Add protected virtual SetDesignModeState, in 2.0 
493         profile, as this is required for the Login control.
494
495 2005-08-11  Dick Porter  <dick@ximian.com>
496
497         * CssStyleCollection.cs: Tweak the css string format to pass a
498         unit test
499
500         * AttributeCollection.cs: Don't NRE if someone sets the "style"
501         attribute to null.
502
503 2005-08-05  Ben Maurer  <bmaurer@ximian.com>
504
505         * HtmlTextWriter.cs: Revert the patch below, see test case
506
507 2005-08-05  Dick Porter  <dick@ximian.com>
508
509         * HtmlTextWriter.cs: Make <option> tags render inline, to match
510         the ms output
511
512 2005-08-03  Ben Maurer  <bmaurer@ximian.com>
513
514         * HtmlTextWriter.cs: Optmize this not to do insane amounts of
515         allocation for large pages, etc.
516
517 2005-07-30  Chris Toshok  <toshok@ximian.com>
518
519         * Page.cs (VerifyRenderingInServerForm): copy MS's error message
520         since our form-errors jsunit tests depend on it.
521
522 2005-07-30  Chris Toshok  <toshok@ximian.com>
523
524         * DataBinder.cs (FormatResult): make internal, not private.
525
526 2005-07-29  Ben Maurer  <bmaurer@ximian.com>
527
528         * StateBag.cs: Don't remove when tracking viewstate, as per msft
529         docs.
530
531 2005-07-29  Ben Maurer  <bmaurer@ximian.com>
532
533         * StateBag.cs: Actually *remove* items that are null. Duh.
534
535 2005-07-21  Peter Dennis Bartok  <pbartok@novell.com>
536
537         * Page.cs: Need to throw exception when accessing Request but no
538           context exists
539
540 2005-07-20  Chris Toshok  <toshok@ximian.com>
541
542         * ClientScriptManager.cs (GetClientValidationEvent): the JS we
543         stick in onclick handlers for buttons/links/etc.
544
545         * Page.cs (GetSubmitStatements): new function to return
546         scriptManager.WriteSubmitStatements.  Used by HtmlForm.
547         (AreValidatorsUplevel): used by many of the button/linkbutton
548         controls (the ones that can CauseValidation) to tell whether or
549         not to emit client side validation calls.
550
551 2005-07-20  Chris Toshok  <toshok@ximian.com>
552
553         * WebResourceAttribute.cs: make internal (and available) in
554         !NET_2_0.
555
556 2005-07-20  Chris Toshok  <toshok@ximian.com>
557
558         * ClientScriptManager.cs (GetWebResourceUrl): make internal (but
559         available) in !NET_2_0.
560
561 2005-07-18  Peter Dennis Bartok  <pbartok@novell.com>
562
563         * Control.cs: Added IDataBindingsAccessor interface methods
564
565 2005-07-18  Ben Maurer  <bmaurer@ximian.com>
566
567         * HtmlTextWriter.cs: Fix nested indentation
568
569 2005-07-18  Peter Dennis Bartok  <pbartok@novell.com>
570
571         * Control.cs: Added missing IParserAccessor.AddParsedSubObject 
572           interface method
573
574 2005-07-18  Ben Maurer  <bmaurer@ximian.com>
575
576         * HtmlTextWriter.cs: Fix indentation (somewhat at least)
577
578 2005-07-18  Peter Dennis Bartok  <pbartok@novell.com>
579
580         * Control.cs:
581           - Default name for controls on MS.Net is "_ctl" not "_ctrl"
582           - MS does not append 'a' for auto-generated names
583
584 2005-07-17  Ben Maurer  <bmaurer@ximian.com>
585
586         * AttributeCollection.cs: Use the invariant culture.
587
588         * StateBag.cs: "Duh" optimization: return null when there are no
589         dirty items in the view state
590
591 2005-07-14  Ben Maurer  <bmaurer@ximian.com>
592
593         * StateBag.cs: A "short" version of my favorite method.
594
595         * HtmlTextWriter.cs: New method to get the tag name staticly.
596
597 2005-07-14  Duncan Mak  <duncan@novell.com>
598
599         * DataBindingHandlerAttribute.cs: Fixed after receiving some
600         comments from Gonzalo.
601
602 2005-07-13  Jackson Harper  <jackson@ximian.com>
603
604         * PropertyConverter.cs: No public constructors.
605
606 2005-07-13  Ben Maurer  <bmaurer@ximian.com>
607
608         * HtmlTextWriter.cs: Remove debugging spew. Style cleanup
609
610 2005-07-12  Ben Maurer  <bmaurer@ximian.com>
611
612         * HtmlTextWriter.cs: Make styles work.
613
614 2005-07-11  Peter Dennis Bartok  <pbartok@novell.com>
615
616         * AttributeCollection.cs: 
617           - Changes to match MS behaviour, the "style" attribute is always 
618             added to the list, in addition to being added to the 
619             CssStyleCollection. Also added check for "style" attribute when 
620             setting via index setter
621           - When "Style" attribute is added, CssStyleCollection is 
622             automatically created
623           - The style keyword needs to be lowercase
624
625 2005-07-11  Ben Maurer  <bmaurer@ximian.com>
626
627         * HtmlTextWriter.cs: Missing a PopEndTag here.
628
629         * PropertyConverter.cs: Pass tests
630
631 2005-07-09  Miguel de Icaza  <miguel@novell.com>
632
633         * DataBindingHandlerAttribute.cs: Create the "Default" property.
634
635 2005-07-09  Duncan Mak  <duncan@novell.com>
636
637         * DataBindingHandlerAttribute.cs: Implemented.
638
639 2005-07-08  Ben Maurer  <bmaurer@ximian.com>
640
641         * HtmlTextWriter.cs: Much better compliance with msft
642
643 2005-07-08  Jackson Harper  <jackson@ximian.com>
644
645         * ToolbarDataAttribute.cs: New implementation.
646
647 2005-07-07  Jackson Harper  <jackson@ximian.com>
648
649         * PropertyConverter.cs: New implementation.
650
651 2005-07-07  Ben Maurer  <bmaurer@ximian.com>
652
653         * StateBag.cs: Noticed an issue where SetDirty was called when the
654         key did not exist.
655
656 2005-07-07  Ben Maurer  <bmaurer@ximian.com>
657
658         * StateBag.cs: Add a method that gets a string or else a default
659         value.
660
661 2005-07-07  Dick Porter  <dick@ximian.com>
662
663         * StateBag.cs: Added internal SetDirty (void) method to fix the
664         build
665
666 2005-07-07  Sebastien Pouliot  <sebastien@ximian.com>
667
668         * HtmlTextWriter.cs: Small fixlet when attribute has no value.
669
670 2005-07-07  Miguel de Icaza  <miguel@novell.com>
671
672         * HtmlTextWriter.cs: Return the stuff in lowercase to pass the
673         tests. 
674
675         * StateBag.cs: Add NET_2_0 SetDirty method to get the build
676         going. 
677
678 2005-07-07  Sebastien Pouliot  <sebastien@ximian.com>
679
680         * HtmlTextWriter.cs: Small fixlet (required for the unit tests).
681
682 2005-07-06  Ben Maurer  <bmaurer@ximian.com>
683
684         * HtmlTextWriter.cs: Make sure to clear attributes when they are
685         written.
686
687         * StateBag.cs: New impl
688
689 2005-06-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
690
691         * Page.cs:
692         * Control.cs: avoid the creation of the EventHandlerList and accessing 
693         to it whenever possible. Fix ENABLE_THEMING constant.
694
695 2005-06-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
696
697         * TemplateParser.cs:
698         * TemplateControlParser.cs:
699         * UserControlParser.cs: detect circular references when a control tries
700         to register itself as a tag. Fixes bug #75376.
701
702 2005-06-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
703
704         * PageParser.cs: don't try to compile the master page if it wan't
705         provided. Use MapPath from the base classes instead of the long
706         version. Fixes bug #75269 that prevented xsp2 from working properly.
707
708 2005-06-13  Lluis Sanchez Gual <lluis@novell.com> 
709
710         * MasterPage.cs: Clear the default content of placeholders before
711         adding the page content. Fixes bug #75193.
712
713 2005-06-13  Lluis Sanchez Gual <lluis@novell.com>
714
715         * PageParser.cs: Added MasterType property. Get the type from the
716         MasterType directive.
717         * MasterPageParser.cs: Added GetCompiledMasterType method.
718
719 2005-06-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
720
721         * UserControl.cs:
722         * Page.cs:
723         * Control.cs: updates for 1.1 SP1
724
725 2005-06-06  Lluis Sanchez Gual <lluis@novell.com>
726
727         * Control.cs: Added new DataBind() overload for 2.0. The old
728         method calls this new overload.
729
730 2005-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
731
732         * TemplateParser.cs: ignore empty assembly.Location for in-memory
733         generated assemblies.
734
735 2005-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
736
737         * Page.cs: added AddContentTemplate method.
738
739 2005-05-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
740
741         * AttributeCollection.cs: html-encode attribute values. Fixes
742         bug #73771.
743
744 2005-05-26  Lluis Sanchez Gual <lluis@novell.com>
745
746         * DataSourceView.cs: Fix api.
747         * NonVisualControlAttribute.cs: Implemented.
748         * IDataItemContainer.cs: Added missing properties.
749         * Control.cs: Added new EnableTheming and SkinID properties.
750         * HierarchicalDataSourceControl.cs: Implemented missing methods.
751
752 2005-05-13  Lluis Sanchez Gual <lluis@novell.com>
753
754         * ControlCollection.cs: Added internal setter for ReadOnly.
755
756 2005-05-09 Geoff Norotn <gnorton@customerdna.com>
757
758         * TemplateParser.cs: Silently remove the CodeFile attribute that ASP.NET 2.0
759         uses instead of codebehind.
760
761 2005-05-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
762
763         * Page.cs: as setting CurrentCulture is slow, don't set it if the
764         culture has not changed since before the page started processing.
765
766 2005-05-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
767
768         * TemplateParser.cs: LoadWithPartialName returns null if the assembly is
769         not found.
770
771 2005-04-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
772
773         * TemplateParser.cs:
774         * SimpleWebHandlerParser.cs: removed values assigned and neved used.
775
776 2005-04-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
777
778         * SimpleWebHandlerParser.cs:
779         * TemplateParser.cs: always get the location (full path) for assemblies,
780         even the ones from the GAC.
781
782         * BaseCompiler.cs: check that DynamicBase directory exists before
783         creating the TempFileCollection.
784
785 2005-04-22  Lluis Sanchez Gual <lluis@novell.com>
786
787         * ClientScriptManager.cs: Use a linked list instead of a Hashtable
788         to store the scripts. In this way, scripts will be rendered in the
789         same order as they have been registered. It shouldn't be slower
790         since pages don't have many scripts.
791
792 2005-04-21  Lluis Sanchez Gual <lluis@novell.com>
793
794         * IEditableTextControl.cs: Implemented.
795         * DataBinder.cs: Marked constructor as obsolete in 2.0.
796         In GetDataItem, check for the IDataItemContainer interface
797         in the container.
798         * TemplateControl.cs: Improved check for data item.
799
800 2005-04-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
801
802         * TemplateParser.cs: we still need LoadWithPartialName if Load fails.
803         * Page.cs: ensure _requiresPostBack is emptied if we didn't have a copy
804         for second postback.
805
806 2005-04-20  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
807         * TemplateParser.cs: Adding support for Strict/Explicit attributes 
808         for @Page/@Control directives as documented at 
809         http://msdn.microsoft.com/library/en-us/cpgenref/html/cpconControlDirective.asp.
810         First step don't choke on them. Fixing #74671
811
812 2005-04-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
813
814         * TemplateParser.cs: use Load instead of LoadWithPartialName. That was
815         there from the time when Load wasn't working properly. First part of the
816         fix to 74500.
817
818 2005-04-15  Lluis Sanchez Gual <lluis@novell.com>
819
820         * ControlBuilder.cs: The BindingContainerType property happens
821         to exist in 2.0, so I made it public. Added ParentTemplateBuilder,
822         which is used to get the binding container that is managing
823         the current two-way binding context.
824         * TemplateBuilder.cs: Added some methods and an internal class
825         to support two-way bindings.
826         * CompiledBindableTemplateBuilder.cs: Implemented.
827         * IBindableTemplate.cs: This interface inherits from ITemplate.
828
829 2005-04-14  Lluis Sanchez Gual <lluis@novell.com>
830
831         * ControlBuilder.cs: Added BindingContainerType property,
832         which works like NamingContainerType but takes into account
833         template builders with a specific container type (specified
834         using the TemplateContainerAttribute.
835         * StateManagedCollection.cs: Reimplemented Save/Load view
836         state methods. The existing implementation was not correct
837         in all cases.
838
839 2005-04-08  Lluis Sanchez Gual <lluis@novell.com>
840
841         * DataSourceView.cs: Added null check.
842
843 2005-04-07  Lluis Sanchez Gual <lluis@novell.com>
844
845         * TemplateControl.cs:
846         * Page.cs: Moved Eval and XPath from Page
847         to TemplateControl.
848         * StateManagedCollection.cs: Avoid saving null state.
849
850 2005-04-01  Lluis Sanchez Gual <lluis@novell.com>
851
852         * DataSourceView.cs: Rethrow exceptions not handled by operation
853         callbacks.
854         * ITextControl.cs: Removed event.
855         * CollectionBuilder.cs: Don't crash when a collection has more
856         than one indexer.
857
858 2005-03-23  Lluis Sanchez Gual <lluis@novell.com>
859
860         * Control.cs: Added a new internal property: HasRenderMethodDelegate.
861         * HtmlTextWriterAttribute.cs: Replaced wrong enum value.
862         * HtmlTextWriter.cs: Register new ASP.NET 2.0 attributes
863
864 2005-03-16  Lluis Sanchez Gual  <lluis@novell.com>
865
866         * ClientScriptManager.cs: Fix build.
867
868 2005-03-11  Lluis Sanchez Gual <lluis@novell.com>
869
870         * Utils.cs, Control.cs: Don't use Page.GetPostBackClientEvent
871         since it is deprecated in 2.0.
872         * Page.cs: Deprecated GetPostBackClientEvent and similar methods
873         in 2.0. Moved callback management methods to ClientScriptManager.
874         * ClientScriptManager.cs: Moved here deprecated methods from Page.
875         In GetPostBackEventReference (PostBackOptions), don't use the
876         WebForm_DoPostback script if the post can be done with a simple
877         __doPostBack call.
878         * PostBackOptions.cs: Fixed default values for some properties.
879
880 2005-03-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
881
882         * Control.cs: in FindControl, throw if there's more than one control
883         with the same ID. Fixes bug #73479.
884
885 2005-03-04  Lluis Sanchez Gual <lluis@novell.com>
886
887         * Page.cs: Load control state before loading view state, and the
888         same for saving.
889         * DataSourceSelectArguments.cs: Fix recursive property call.
890
891 2005-02-25  Lluis Sanchez Gual <lluis@novell.com>
892
893         * DataSourceView.cs: Fixed incorrect implementation of
894         RaiseUnsupportedCapabilityError.
895         * IDataItemContainer.cs: Added new properties.
896         * Page.cs: Implemented Form property.
897         * Control.cs: Fixed formatting.
898         * StateManagedCollection.cs: Track view state of items loaded
899         in LoadViewState.
900
901 2005-02-22  Lluis Sanchez Gual <lluis@novell.com>
902
903         * FilterableAttribute.cs: Fix endless loop.
904
905 2005-02-18  Lluis Sanchez Gual <lluis@novell.com>
906
907         * Page.cs: Implemented missing events.
908
909 2005-02-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
910
911         * BoundPropertyEntry.cs:
912         * PropertyEntry.cs:
913         * TwoWayBoundPropertyEntry.cs: implemented.
914
915 2005-02-10  Lluis Sanchez Gual <lluis@novell.com>
916
917         * Page.cs: Added support for validation groups. Some fixes in
918         SavePageControlState().
919         * IFilterResolutionService.cs: Removed extra field.
920         * INavigateUIData.cs: Added missing field.
921         * ICheckBoxControl.cs, IStaticTextControl.cs, ITextControl.cs:
922         Implemented new interfaces.
923
924 2005-02-04  Lluis Sanchez Gual <lluis@novell.com>
925
926         * Page.cs: Implemented support for cross page postback. Implemented
927         support for postback with options. Fixed several method and property
928         signatures for 2.0.
929         * PostBackOptions.cs: Added some TODOs.
930
931 2005-02-02  Lluis Sanchez Gual <lluis@novell.com>
932
933         * ParseChildrenAttribute.cs: Set the correct default value for the
934         childType property.
935
936 2005-01-28  Lluis Sanchez Gual <lluis@novell.com>
937
938         * ParseChildrenAttribute.cs: Added 2.0 property.
939         * Pair.cs, Triplet.cs: Make classes serializable and sealed in 2.0.
940         * Page.cs: Added support for control state.
941         * TemplateBuilder.cs: ContainerType should be internal.
942         * Control.cs: Added some new 2.0 methods.
943
944 2005-01-21  Lluis Sanchez Gual <lluis@novell.com>
945
946         * PageParser.cs: Read the MasterPageFile attribute.
947         * UserControlParser.cs: Not sealed any more since we need to inherit from
948         it. Added new constructor with an additional "type" parameter.
949         * MasterPageParser.cs: Parser for master pages.
950         * Page.cs: Added support for master pages.
951         * MasterPage.cs: Implemented.
952
953 2005-01-10  Lluis Sanchez Gual <lluis@novell.com>
954         
955         * TemplateBuilder.cs: Added a special constructor that takes an
956         attribute provider as parameter. The container type for the template
957         may be defined in a TemplateContainerAttribute.
958         * ControlBuilder.cs: Create the TemplateBuilder using that special
959         constructor.
960         * TemplateContainerAttribute.cs: Added 2.0 property and ctor.
961
962 2004-12-20 Lluis Sanchez Gual  <lluis@novell.com>
963
964         * IStyleSheet.cs: Added missing "using".
965         * Page.cs: Implemented Header property.
966         * CssStyleCollection.cs: Made BagToString method internal.
967         * RootBuilder.cs: Register HtmlHead control.
968         
969 2004-12-17 Lluis Sanchez Gual  <lluis@novell.com>
970
971         * CssStyleCollection.cs: Minor (!) fix.
972         * HtmlTextWriter.cs: Register names for new 2.0 styles.
973
974 2004-12-17 Lluis Sanchez Gual <lluis@novell.com>
975
976         * CssStyleCollection.cs: Make it work as a standalone collection.
977         * HtmlTextWriter.cs: Added static method for getting style names.
978
979 2004-12-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
980
981         * ControlCollection.cs: fix off-by-one and store a null at the end to
982         remove the reference to the removed control.
983
984 2004-12-10 Lluis Sanchez Gual <lluis@novell.com>
985
986         * ClientScriptManager.cs: Added GetScriptLiteral helper method.
987         
988 2004-12-02 Lluis Sanchez Gual <lluis@novell.com>
989
990         * Page.cs: Added support for callback events. Moved theform variable
991         outside the __doPostBack function, so it can be used by other
992         scripts.
993         * StateBag.cs: Implemented SetDirty().
994
995 2004-11-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
996
997         * Control.cs: when saving "Visible" into the ViewState, save the value
998         for this precise control, as using the Visible property might give us
999         Control's parent visibility. Fixes bug #69200.
1000
1001 2004-11-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1002
1003         * Control.cs: fixed ResolveUrl for relative URLs when using cookie-less
1004         sessions.
1005
1006         * System.Web.Util/UrlUtils.cs: made (Insert|Get|Remove)SessionId use
1007         the appRoot + SessionID + vpath format.
1008
1009         Fixes the 3 issues reported in bug #66623.
1010
1011 2004-11-26 Lluis Sanchez Gual <lluis@novell.com>
1012
1013         * Page.cs: Moved code for managing client scripts to ClientScriptManager,
1014         which is public in 2.0 and internal in 1.1.
1015         * ClientScriptManager.cs: Implemented.
1016
1017 2004-11-25 Sanjay Gupta <gsanjay@novell.com>
1018
1019         * DataSourceView.cs: Removed extra method.
1020
1021 2004-11-24 Sanjay Gupta <gsanjay@novell.com>
1022         
1023         * DataSourveViewSelectCallback.cs: Corrected method signature.
1024
1025 2004-11-23 Lluis Sanchez Gual <lluis@novell.com>
1026
1027         * ControlBuilder.cs: Always check for the ParseChildrenAttribute,
1028         even if the class doesn't implement IParserAccessor.
1029         * WebResourceAttribute.cs: Allow multiple attributes of this type.
1030
1031 2004-11-15 Lluis Sanchez Gual <lluis@novell.com>
1032
1033         * DataSourceView.cs: Moved here implementation of DataSourceViewChanged 
1034         from SqlDataSourceView.cs.
1035
1036 2004-11-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1037
1038         * Control.cs: unified a few bool fields into an int one.
1039
1040         * ControlCollection.cs: use an array internally instead of always
1041         allocating an arraylist. Also added our own enumerator.
1042         
1043         * EmptyControlCollection.cs: there's no 'special' ctor now in the base
1044         class.
1045
1046 2004-11-05 Sanjay Gupta <gsanjay@novell.com>
1047
1048         * DataSourceView.cs: Changes in access modifiers of methods.
1049
1050 2004-10-20 Sanjay Gupta <gsanjay@novell.com>
1051
1052         * DataSourceCapabilities.cs: Added Flags attribute.
1053         * DataSourceSelectArguments.cs: Updated.
1054         * DataSourveView.cs: Updated.
1055
1056 2004-10-19 Sanjay Gupta <gsanjay@novell.com>
1057
1058         * HierarchicalDataSourceView.cs: Corrected class definition and updated.
1059
1060 2004-10-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1061
1062         * HierarchicalDataSourceView.cs: fix typo.
1063
1064 2004-10-18 Sanjay Gupta <gsanjay@novell.com>
1065
1066         * HierarchicalDataSourceView.cs: Updated.
1067
1068 2004-10-18 Sanjay Gupta <gsanjay@novell.com>
1069
1070         * DataSourceSelectArguments.cs: Initial implementation.
1071
1072 2004-10-12 Sanjay Gupta <gsanjay@novell.com>
1073
1074         * UrlPropertyAttribute.cs: Corrected implementation of Equals () method.
1075
1076 2004-10-12 Sanjay Gupta <gsanjay@novell.com>
1077
1078         * UrlTypes.cs: Updated.
1079
1080 2004-10-12 Sanjay Gupta <gsanjay@novell.com>
1081
1082         * UrlPropertyAttribute.cs: Added new file.
1083
1084 2004-10-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1085
1086         * Control.cs: even if the control has no children the naming container
1087         may contain the control we're looking for. Fixes bug #67304.
1088
1089 2004-09-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1090
1091         * AspGenerator.cs: added OtherTags.
1092
1093 2004-09-24 Sanjay Gupta <gsanjay@novell.com>
1094
1095         * ControlValuePropertyAttribute.cs: Initial implementation.
1096
1097 2004-09-24 Sanjay Gupta <gsanjay@novell.com>
1098
1099         * IPaginationContainer.cs: Corrected name of class.
1100
1101 2004-09-24 Sanjay Gupta <gsanjay@novell.com>
1102
1103         * IDReferencePropertyAttribute.cs: Completed implementation.
1104
1105 2004-09-24 Sanjay Gupta <gsanjay@novell.com>
1106
1107         * ThemeableAttribute.cs:
1108         * FilterableAttribute.cs: Code scrubbing and optimization.
1109
1110 2004-09-14 Sanjay Gupta <gsanjay@novell.com>
1111
1112         * ThemeableAttribute.cs: Completed implementation.
1113
1114 2004-09-14 Sanjay Gupta <gsanjay@novell.com>
1115
1116         * FilterableAttribute.cs: Completed implementation.
1117
1118 2004-09-14 Sanjay Gupta <gsanjay@novell.com>
1119
1120         * Control.cs: Added new attributes and a method.
1121         * FilterableAttribute.cs: New attribute, initial implementation.
1122         * ThemeableAttribute.cs: New attribute, initial implemenataion.
1123
1124 2004-09-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1125
1126         * TemplateParser.cs: ensure bin directory exists before trying to access
1127         it. Fixes bug #65446 (not closed yet due to dependencies).
1128
1129 2004-09-09 Sanjay Gupta <gsanjay@novell.com>
1130
1131         * Control.cs: Implemented methods of interface IExpressionAccessor.
1132
1133 2004-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1134
1135         * SimpleWebHandlerParser.cs: correctly cache Type instead of the
1136         assembly for ashx/asmx. Otherwise we need to open the file and check
1137         for the class name in there. Thanks to Ben for pointing this out.
1138
1139 2004-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1140
1141         * TemplateParser.cs: removed creation of StringWriter.  It's not used.
1142         * Control.cs: don't create the EventHandlerList until requested.
1143
1144 2004-09-03 Sanjay Gupta <gsanjay@novell.com>
1145         
1146         * Control.cs: Added new interfaces implemented in .Net 2.0. 
1147         * ExpressionBinding.cs: Added new class.
1148         * ExpressionBindingCollection.cs: Added new class.
1149         
1150 2004-09-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1151
1152         * LiteralControl.cs: stylized. This control has EnableViewState disabled
1153         by default and doesn't get an automatic ID. When text is null -> "".
1154
1155 2004-08-31 Sanjay Gupta <gsanjay@novell.com>
1156         
1157         * ControlSkinProc.cs:
1158         * DataSourceViewOperationCallback.cs:
1159         * DataSourceViewSelectCallback.cs:
1160         * ExtractTemplateValuesMethod.cs: Explicit modifier "sealed" not 
1161         required in definition as delegates by default are sealed.
1162         
1163 2004-08-31 Sanjay Gupta <gsanjay@novell.com>
1164
1165         * IDReferencePropertyAttribute.cs: Corrected and changed from interface
1166         to class.
1167         * IMobileTextWriter.cs: Corrected method signatures.
1168
1169 2004-08-09 Sanjay Gupta <gsanjay@novell.com>
1170
1171         * ControlSkinProc.cs:
1172         * DataSourceViewOperationCallback.cs:
1173         * DataSourceViewSelectCallback.cs:
1174         * ExtractTemplateValuesMethod.cs: Added new delegates.
1175
1176 2004-08-06 Sanjay Gupta <gsanjay@novell.com>
1177
1178         * IBindableTemplate.cs:
1179         * ICallbackEventHandler.cs:
1180         * IControlBuilderAccessor.cs:
1181         * IControlDesignerAccessor.cs:
1182         * IControlTypeFilter.cs:
1183         * IDataItemContainer.cs:
1184         * IDataSourceViewSchemaAccessor.cs:
1185         * IDReferencePropertyAttribute.cs:
1186         * IExpressionsAccessor.cs:
1187         * IFilterResolutionService.cs:
1188         * IItemPaginationInfo.cs:
1189         * IMobileTextWriter.cs:
1190         * IPageHeader.cs:
1191         * IPaginationContainer.cs:
1192         * IPaginationInfo.cs:
1193         * IResourceResolutionService.cs:
1194         * IResourceUrlGenerator.cs:
1195         * IStateFormatter.cs:
1196         * IStyleSheet.cs:
1197         * IThemeResolutionService.cs:
1198         * IUrlResolutionService.cs:
1199         * IUserControlTypeResolutionService.cs: Added new files for Interfaces.
1200
1201 2004-08-05 Sanjay Gupta <gsanjay@novell.com>
1202
1203         * PostBackOptions.cs: Added new file and implemented the class.
1204
1205 2004-08-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1206
1207         * HtmlTextWriterTag.cs: readded author name.
1208
1209 2004-08-04 Sanjay Gupta <gsanjay@novell.com>
1210
1211         * HtmlTextWriterAttribute.cs:
1212         * HtmlTextWriterStyle.cs: Added .Net 2.0 enumerations.
1213         * CompilationMode.cs:
1214         * ConflictOptions.cs:
1215         * DataSourceCacheExpiry.cs:
1216         * DataSourceCapabilities.cs:
1217         * DataSourceOperation.cs:
1218         * TemplateContentType.cs:
1219         * TemplateInstance.cs:
1220         * UrlTypes.cs:
1221         * VerificationConditionalOperator.cs:
1222         * VerificationReportLevel.cs:
1223         * VerificationRule.cs:
1224         * XhtmlMobileDocType.cs: Added enumerations.
1225
1226 2004-07-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1227
1228         * Control.cs: style. Reverted previous patch modification of
1229         TemplateSourceDirectory (failed when the control is reparented). Use
1230         HasControls() and Controls all over instead of _controls, as Controls
1231         property and HasControls() might be overriden.
1232
1233 2004-07-27 Alon Gazit <along@mainsoft.com>
1234
1235         * Control.cs: Changed the implementation of TemplateSourceDirectory
1236         and GetDefaultName(). replaced foreach statements with for statements, 
1237         in order to improve performence.
1238
1239 2004-07-27 Alon Gazit <along@mainsoft.com>
1240
1241         * Page.cs: changed the implementation of GetViewStateString().
1242         if the view state object is null there is no need to perform 
1243         Serialization.
1244         
1245 2004-07-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1246
1247         * TemplateControl.cs: don't include private methods of base classes when
1248         auto-attaching events. Fixes bug 61569.
1249
1250 2004-07-14 Alon Gazit <along@mainsoft.com>
1251
1252         * HtmlTextWriter.cs: changed the Hashtables to case insensitive.         
1253 2004-07-08 Pablo Baena <pbaena@gmail.com>
1254
1255         * Page.cs: added workaround for __doPostBack script on Netscape 4.xx
1256         
1257 2004-07-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1258
1259         * Page.cs: added additional checks for saving/displaying trace data.
1260
1261         * PageParser.cs: removed checks for trace enabled in configuration
1262         files.
1263
1264 2004-06-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1265
1266         * ControlCollection.cs: when clearing the control collection, tell the
1267         owners about the removal. Fixes bug #60800.
1268
1269 2004-06-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1270
1271         * Page.cs: don't nullify _context after processing the request as there
1272         are events not triggered yet. Fixes bug #60726.
1273
1274 2004-06-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1275
1276         * HtmlTextWriter.cs: only create a closing tag for unknown tags. Fixes
1277         bug #60681.
1278
1279 2004-06-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1280
1281         * PageParser.cs:
1282         * UserControlParser.cs: set the page/user control base type even when no
1283         default directive provided. Fixes bug #60572.
1284
1285 2004-06-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1286
1287         * PageParser.cs: use default trace settings from web.config and check
1288         if trace is only requested for local connections. Fixes bug #60180.
1289
1290 2004-06-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1291
1292         * SimpleWebHandlerParser.cs: implemented GetCompiledTypeFromCache. When 
1293         we read the default directive, check the cache for the Type and if
1294         present, don't keep reading and store the type found.
1295
1296         * WebHandlerParser.cs:
1297         * WebServiceParser.cs: try GetCompiledTypeFromCache before actually
1298         compiling.
1299
1300 2004-06-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1301
1302         * Control.cs: properly fixed bug #59794.
1303
1304 2004-06-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1305
1306         * Control.cs:
1307         (ResolveUrl): fixed typo when dealing with relative urls. Closes bug
1308         #59794.
1309
1310 2004-06-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1311
1312         * SimpleWebHandlerParser.cs:
1313         * TemplateParser.cs: pass the language when compiling from a file.
1314
1315 2004-06-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1316
1317         * SimpleWebHandlerParser.cs: if we have a global.asax, move its
1318         reference to the end to help mcs loading the assemblies. Fixes bug
1319         #58768.
1320
1321         * TemplateParser.cs: same as above. Removed some kludges to workaround
1322         loading assemblies from bin path that are now in the runtime. Don't
1323         load the assemblies in bin if not needed, but still reference them
1324         when compiling.
1325
1326 2004-06-07  Alon Gazit <along@mainsoft.com>
1327         * Page.cs: Changed Page.ProcessPostData().
1328         After the change ,the state of controls that aren't visible is saved 
1329         during a postback.
1330         
1331 2004-06-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1332
1333         * Page.cs: removed obsolete MonoTODO from RegisterOnSubmitStatement.
1334
1335 2004-06-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1336
1337         * Page.cs: IsPostBack also returns true when method is GET and we have
1338         viewstate information in the query string. Fixes bug #58151.
1339
1340 2004-06-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1341
1342         * Page.cs: removed obsolete TODO. Only check if Trace is enabled, not
1343         HttpRutime.TraceManager.
1344
1345         * PageParser.cs: for 'trace' we have 2 variables now.  Added support
1346         for 'buffer' attribute.
1347
1348 2004-06-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1349
1350         * Page.cs: implemented ClientTarget.
1351         * PageParser.cs: support for clientTarget and check for validity.
1352
1353 2004-06-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1354
1355         * Control.cs:
1356         * Html32TextWriter.cs:
1357         * HtmlTextWriter.cs:
1358         * SimpleWebHandlerParser.cs:
1359         * TemplateControl.cs: Added protected missing members and attributes.
1360
1361 2004-06-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1362
1363         * ObjectStateFormatter.cs: use ObjectFormatter methods instead of
1364         calling a protected method of another object.
1365
1366 2004-06-03  Atsushi Enomoto  <atsushi@ximian.com>
1367
1368         * ObjectStateFormatter.cs : csc build fix. Protected Read()/Write()
1369           (of other objects) are called in TypeConverterFormatter.
1370
1371 2004-06-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1372
1373         * ObjectStateFormatter.cs: before choosing the binary formatter, check
1374         if the object type has a TypeConverter that can convert to/from string.
1375         Fixes bug #59495.
1376
1377         * Page.cs: call GetViewStateString from outside the WriteLine. This
1378         allows writing to the Response when getting the string without breaking
1379         the HTML generated.
1380
1381 2004-06-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1382
1383         * HtmlTextWriter.cs: render end tag for unknown tags.
1384         Patch frmo Markus Krutner. Fixes bug #59466.
1385
1386 2004-05-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1387
1388         * Page.cs: call DeterminePostBackMode only once per request. Patch by
1389         Evain Jb.
1390
1391 2004-05-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1392
1393         * Html32TextWriter.cs: stub contributed by Matthijs ter Woord
1394         [meddochat].
1395
1396         * ObjectTagBuilder.cs: remove the HasBody override as MS does not have
1397         that.
1398
1399 2004-05-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1400
1401         * SimpleWebHandlerParser.cs:
1402         * TemplateParser.cs: for the assembly names given in the 'assembly'
1403         attribute, use LoadWithPartialName instead of Load.
1404 2004-03-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1405
1406         * Page.cs: return HttpContext.Current if _context has not yet been
1407         assigned to. Fixes bug #55245.
1408
1409 2004-03-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1410
1411         * TemplateParser.cs: don't add import statement or assemblies from
1412         global.asax to every file. Fixes bug #55496.
1413
1414 2004-03-09  Juraj Skripsky <juraj@hotfeet.ch>
1415
1416         * DataBinder.cs: allow unquoted string expressions (e.g. "[test]") and
1417         handle single quotes and a few corner cases correctly (see test cases).
1418
1419 2004-03-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1420
1421         * TemplateControl.cs: fixed typos and added new method names to the set
1422         of page events.
1423
1424 2004-02-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1425
1426         * ControlBuilder.cs: added SetTagName().
1427
1428         * ObjectTagBuilder.cs: use SetTagName so that we can properly close
1429         <object> builders if the closing tag is provided.
1430
1431 2004-02-16  Jackson Harper <jackson@ximian.com>
1432
1433         * Page.cs: Set cacheability for Location.DownStream.
1434         
1435 2004-02-10  Jackson Harper <jackson@ximian.com>
1436
1437         * TemplateParser.cs: Use full path if the assembly is in the
1438         private bin directory. Patch by Gonzalo Paniagua Javier.
1439         
1440 2004-02-09  Jackson Harper <jackson@ximian.com>
1441
1442         * Page.cs: Set cacheability for server side caching.
1443         
1444 2004-01-30  Jackson Harper <jackson@ximian.com>
1445
1446         * Control.cs: Ensure that dynamically loaded controls are
1447         initialized.
1448         
1449 2004-01-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1450
1451         * ApplicationFileParser.cs: check for error in directives. Use
1452         GlobalAsaxCompiler.CompileApplicationType for compiling.
1453         
1454         * ObjectTagBuilder.cs: load the Type and check for errors.
1455
1456         * TemplateParser.cs: add assemblies and imports from global.asax.
1457
1458         Now we properly create accessors for session and application objects in
1459         the application itself, pages and controls. First step for fixing
1460         bug #53387.
1461
1462 2004-01-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1463
1464         * TemplateControl.cs: small speedup for WireUpautomaticEvents. Thanks
1465         to Eric Lindvall for pointing this out.
1466
1467 2004-01-15  Jackson Harper <jackson@ximian.com>
1468
1469         * TemplateParser.cs: Detect if we are parsing a control or page
1470         properly.
1471         * Page.cs: vary by params and vary by headers can be null now.
1472         
1473 2004-01-15  Martin Willemoes Hansen  <mwh@sysrq.dk>
1474
1475         * HtmlTextWriter.cs: Fixed OutputTab routine to generate correct
1476         indention.
1477
1478 2004-01-14  Jackson Harper <jackson@ximian.com>
1479
1480         * Page.cs: If we have a postback that wasn't sent through a
1481         postback script (ie user hit submit on a input type=submit) call
1482         Validate so page validation occurs. This fixes bug #52770.
1483         
1484 2004-01-14  Jackson Harper <jackson@ximian.com>
1485
1486         * Page.cs: Don't tell the response to cache anymore. This is done
1487         when the cacheability is modified by a callback. Set the cache's
1488         duration.
1489         
1490 2004-01-14  Jackson Harper <jackson@ximian.com>
1491
1492         * TemplateParser.cs: If varybyparam is set to "none" make it null
1493         so we dont get a param named null in the outputcache key.
1494         
1495 2004-01-14  Jackson Harper <jackson@ximian.com>
1496
1497         * BasePartialCachingControl.cs: Use varyby attributes in key
1498         generation.
1499         
1500 2004-01-14  Jackson Harper <jackson@ximian.com>
1501
1502         * TemplateParser.cs: Add all the outputcache attribute error
1503         messages.
1504         
1505 2004-01-13  Jackson Harper <jackson@ximian.com>
1506
1507         * TemplateParser.cs: Add VaryByControls and Shared output cache
1508         properties. These are not assigned yet.
1509         * TemplateControlParser.cs: Do not ignore the OutputCache
1510         attribute.
1511         * BasePartialCachingControl.cs: Initial implementation. Keys are
1512         still not created properly.
1513         * StaticPartialCachingControl.cs: Assign properties in base class,
1514         implement CreateControl.
1515         
1516 2004-01-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1517
1518         * ApplicationFileParser.cs: adde DefaultBaseTypeName property.
1519
1520         * PageParser.cs: support validateRequest.
1521
1522         * TemplateControlParser.cs: get default values from system.web/pages
1523         section.
1524
1525         * TemplateParser.cs: added separate method for changing base type
1526         (Inherits or system.web/pages).
1527         
1528         * UserControlParser.cs: support system.web/pages defined base type.
1529
1530 2004-01-11  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1531
1532         * UserControl.cs: Added missing attribute, implemented method
1533         * Page.cs: Added missing attribute, implemented method
1534
1535 2004-01-10  Jackson Harper <jackson@ximian.com>
1536
1537         * Page.cs: Handle trace being enabled in the config file.
1538         
1539 2004-01-10  Jackson Harper <jackson@ximian.com>
1540
1541         * Page.cs: Save trace data before rendering it.
1542         * System.Web.dll.sources: Add TraceData.cs
1543         
1544 2004-01-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1545
1546         * Page.cs: removed a couple of MonoTODO on methods we're not gonna
1547         implement. Applied patch from Jan Jaros (mono-bug@jerryweb.info) to
1548         ensure that Unload event is raised. Fixes bug #52555.
1549
1550 2004-01-02  Zoltan Varga  <vargaz@freemail.hu>
1551
1552         * KeyedList.cs: 'private' is not allowed on explicit interface 
1553         implementations. Fixes 1.2 build.
1554
1555 2003-12-31  Jackson Harper <jackson@ximian.com>
1556
1557         * TemplateControlParser.cs: When registering tag prefixs make sure
1558         the file exists and throw the correct error if it does not.
1559         
1560 2003-12-25  Jackson Harper <jackson@ximian.com>
1561
1562         * Page.cs: Throw error if the session is accessed when sessions
1563         are disabled.
1564         
1565 2003-12-18  Jackson Harper <jackson@ximian.com>
1566
1567         * Page.cs: Write Trace info.
1568         
1569 2003-12-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1570
1571         * LosFormatter.cs: new ctor for 1.1. The default ctor is public.
1572         * Page.cs: added ViewStateUserKey and made RegisterclientScriptFile
1573         internal.
1574         * PageParser.cs: the ctor is public.
1575         * PartialCachingAttribute.cs: added new ctor and Shared property.
1576
1577 2003-12-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1578
1579         * Page.cs: assign the ErrorPage to the context if we get an exception
1580         when processing the page which only calls Unload.
1581
1582         * PageParser.cs: handle ErrorPage.
1583
1584 2003-12-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1585
1586         * ObjectStateFormatter.cs: added formatters for Unit and FontUnit, which
1587         are not [Serializable]. Fixes bug #52244.
1588
1589 2003-12-16  Jackson Harper <jackson@ximian.com>
1590
1591         * Page.cs: Render trace data when tracing is enabled.
1592         
1593 2003-12-15  Jackson Harper <jackson@ximian.com>
1594
1595         * PageParser.cs: Add Trace and Trace mode attributes.
1596         
1597 2003-12-15  Jackson Harper <jackson@ximian.com>
1598
1599         * Page.cs: Use the context trace object.
1600         
1601 2003-12-14  Alon Gazit <along@mainsoft.com>
1602         * AttributeCollection.cs: Changed AttributeCollection.Render().
1603         After the change attributes ,that their value is null, aren't 
1604         rendered.
1605
1606 2003-12-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1607
1608         * Control.cs: remove a few dangling ^M, don't set values for fields
1609         that has the default value. If Visible is modified and we're tracking
1610         viewstate, save and restore it. Fixes bug #48689.
1611
1612 2003-12-11  Jackson Harper <jackson@ximian.com>
1613
1614         * Control.cs: Give null for the ID if it hasn't been explicitly
1615         set. This fixes bug #51520.
1616         
1617 2003-12-08  Jackson Harper <jackson@ximian.com>
1618
1619         * PageParser.cs: Ignore the SmartNavigation attribute for now.
1620         
1621 2003-12-05  Jackson Harper <jackson@ximian.com>
1622
1623         * DataBinder.cs (GetIndexedPropertyValue): Check if container is
1624         an IList and use a cast instead of reflection to retrieve the item
1625         if it is. Fixes bug #51759.
1626         
1627 2003-12-04  Alon Gazit <along@mainsoft.com>
1628         * Page.cs: Changed Page.ID so it will call Control.ID.
1629         Fixed Bug 51682.          
1630
1631 2003-12-02  Jackson Harper <jackson@ximian.com>
1632
1633         * Page.cs: Implemented registered array declarations. Patch by
1634         Benjamin Jemlich <pcgod@gmx.net>
1635         
1636 2003-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1637
1638         * TemplateParser.cs: basic check for 'classname' attribute and added
1639         patch by pcgod@gmx.net for bug #51568, which fixes automatic class
1640         names for pages starting with a number.
1641
1642 2003-11-30 Ben Maurer  <bmaurer@users.sourceforge.net>
1643
1644         * LosFormatter.cs: Use ObjectStateFormatter. Pretty big size
1645         reduction.
1646
1647         * ObjectStateFormatter.cs: Comment out tracing.
1648
1649 2003-11-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1650
1651         * Page.cs: fixed UICulture, LCID and Culture. Set the thread
1652         [UI]Culture before processing the request.
1653
1654         * PageParser.cs: read Culture, UICulture and LCID attributes. Added
1655         properties for these. Partially contributed by Mohammad Damt.
1656
1657         Fixes bug #51511.
1658
1659 2003-11-27  Jackson Harper <jackson@ximian.com>
1660
1661         * TemplateParser.cs: Ignore aspCompat attribute. This fixes bug
1662         51434.
1663         
1664 2003-11-22 Ben Maurer  <bmaurer@users.sourceforge.net>
1665
1666         * ObjectStateFormatter.cs: Fix bug when reading small ints.
1667         Add some tracing so we can see what is going on.
1668
1669 2003-11-21  Jackson Harper <jackson@ximian.com>
1670
1671         * Page.cs: Set vary by params when cache location is Server.
1672         
1673 2003-11-21 Ben Maurer  <bmaurer@users.sourceforge.net>
1674
1675         * ObjectStateFormatter.cs: v2 file. In v1.x this will be
1676         internal as LosFormatter will eventually use it to save
1677         the view state.
1678
1679 2003-11-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1680
1681         * PersistChildrenAttribute.cs:
1682         * PersistenceModeAttribute.cs: implemented.
1683
1684         * TODO: Removed file.
1685         * OutputCacheLocation.cs:
1686         * TemplateControlParser.cs:
1687         * HtmlInputFile.cs: class status based fixes.
1688
1689 2003-11-19  Jackson Harper <jackson@ximian.com>
1690
1691         * Page.cs: Always set the cache expire time. Tell the response to
1692         cache itself for server side cached pages.
1693         
1694 2003-11-19  Jackson Harper <jackson@ximian.com>
1695
1696         * Control.cs: Remove ResolveBaseUrl. ResolveUrl does the same
1697         thing, some corner cases still need work though. Was this the
1698         shortest lived method in the history of mono?
1699         
1700 2003-11-19  Jackson Harper <jackson@ximian.com>
1701
1702         * Control.cs: New method for resolving urls that use ~/ to denote
1703         the applications base directory.
1704         
1705 2003-11-19  Jackson Harper <jackson@ximian.com>
1706
1707         * TemplateParser.cs: Fix typo in error message.
1708                 
1709 2003-11-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1710
1711         * TemplateControlParser.cs: support @Reference. Fixes bug #49572. Thanks
1712         to Sanjay Gupta.
1713
1714 2003-11-19  Todd Berman  <tberman@gentoo.org>
1715
1716         * KeyedList.cs:
1717         * KeyedListEnumerator.cs: New v2 implementations.
1718
1719 2003-11-17 Ben Maurer  <bmaurer@users.sourceforge.net>
1720
1721         * StateManagedCollection.cs: Implement.
1722
1723 2003-11-13  Jackson Harper  <jackson@ximian.com>
1724
1725         * Page.cs: Initial implementation of InitOutputCache.
1726         * TemplateParser.cs: Page OutputCache options
1727         
1728 2003-11-09 Ben Maurer  <bmaurer@users.sourceforge.net>
1729
1730         * HierarchicalDataSourceControl.cs: Implement.
1731
1732 2003-11-09 Ben Maurer  <bmaurer@users.sourceforge.net>
1733
1734         * XPathBinder.cs: Implemented.
1735
1736 2003-11-08 Ben Maurer  <bmaurer@users.sourceforge.net>
1737
1738         * DataSourceView.cs:
1739         * IDataSource.cs:
1740         * ListSourceHelper.cs:
1741         * DataSourceControl.cs:
1742         * HierarchicalDataSourceView.cs:
1743         * IHierarchicalDataSource.cs: Move v2 stuff.
1744
1745 2003-11-07 Jackson Harper <jackson@ximian.com>
1746
1747         * Control.cs (ResolveUrl): Special case for urls that consist of
1748         only a page anchor. ie <a href="#top">. This fixes bug #50165.
1749         
1750 2003-11-07 Ben Maurer  <bmaurer@users.sourceforge.net>
1751
1752         * IHierarchicalEnumerable.cs:
1753         * IHierarchyData.cs:
1754         * INavigateUIData.cs: New v2 interfaces.
1755         
1756 2003-11-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1757
1758         * Page.cs: patch by Alon Gazit <along@mainsoft.com> to remove extra
1759         space in generated javascript.
1760
1761 2003-11-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1762
1763         * LosFormatter.cs: encoding updates. 
1764         * Page.cs: implemented CodePage and ContentType.
1765         * PageParser.cs: handle CodePage, ContentEncoding and ResponseEncoding
1766         attributes.
1767
1768 2003-11-04 Ben Maurer  <bmaurer@users.sourceforge.net>
1769
1770         * Control.cs (GetWebResourceUrl): new v2 function
1771         * Page.cs (GetWebResourceUrl): ditto.
1772         make the JS we generate work with moz if the form is not a child
1773         of document.
1774         * WebResourceAttribute.cs: Added, new v2 attribute.
1775
1776 2003-10-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1777
1778         * DesignTimeTemplateParser.cs: added FIXME related to PageParser.
1779
1780         * PageParser.cs: initialize the parser in the constructor, not just
1781         before compiling and reference the application assembly.
1782
1783         * SimpleWebHandlerParser.cs: reference the assembly that contains the
1784         application Type.
1785
1786         * TemplateControl.cs:
1787         * TemplateControlParser.cs: fix BenM #1 bug. Now we pass correct virtual
1788         path and physical path when compiling a user control.
1789         
1790         * TemplateParser.cs: new AddApplicationAssembly ().
1791         * UserControlParser.cs: now we get valid values in the ctor.
1792
1793         Referencing the application assembly fixes bug #49652.
1794         
1795
1796 2003-10-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1797
1798         * TemplateControl.cs: moved NoParamsInvoker class to its own file.
1799
1800 2003-10-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1801
1802         * BaseParser.cs: added CompilationConfig property.
1803
1804         * TemplateParser.cs:
1805         * SimpleWebHandlerParser.cs: added CompilationConfig property.
1806         Don't hardcode assembly names any more, assemblies in bin are added
1807         depending on the configuration. The default language is also taken
1808         from the configuration.
1809
1810 2003-10-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1811
1812         * LosFormatter.cs: fixed bug #49604. Patch by yaronsh@mainsoft.com.
1813
1814 2003-10-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1815
1816         * Control.cs: removed some debug lines.
1817         * Page.cs: implemented RegisterOnSubmitStatement
1818         * TemplateControl.cs: fixed wire up for methods with no parameters.
1819
1820 2003-10-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1821
1822         * PageParser.cs: ignore ValidateRequest by now.
1823
1824 2003-10-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1825
1826         * System.Web.UI/TemplateControl.cs: support for wiring up events without
1827         parameters.
1828
1829 2003-10-08  Pedro Martnez Juli  <yoros@wanadoo.es>
1830
1831         * PageParser.cs: drop some useless code.
1832
1833 2002-10-29  Gaurav Vaish <gvaish_mono AT lycos.com>
1834
1835         * Utils.cs   : GetScriptLocation(HttpContext) - Partial Implementation.
1836
1837 2003-10-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1838
1839         * System.Web.UI/PageParser.cs:
1840         * System.Web.UI/TemplateControlParser.cs: honour the input file given
1841         as argument.
1842
1843 2003-09-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1844
1845         * Control.cs:
1846         (ClearChildViewState): doh! Don't clear control viewstate but the
1847         viewstate of possible children.
1848         (LoadViewStateRecursive): load viewstate even when control is not
1849         visible.
1850         Fixes bug #49024.
1851         The rest are just dangling ^M removed.
1852
1853         * DataBoundLiteralControl.cs:
1854         (LoadViewState): we get an object [], not a string [].
1855
1856 2003-09-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1857
1858         * Control.cs: implemented ClearChildViewState ().
1859
1860 2003-09-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1861
1862         * Page.cs: store unique IDs for controls requiring postback. Fixes bug
1863         #47985.
1864
1865 2003-09-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1866
1867         * SimpleWebHandlerParser.cs: add the ashx/asmx file itself to the
1868         dependencies so that it's recompiled when changed.
1869
1870 2003-09-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1871
1872         * LosFormatter.cs: fixed Deserialize for empty viewstate.
1873
1874 2003-08-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1875
1876         * Page.cs: check if controls that require postback have
1877         been changed by an event and register them to be notified of data
1878         changed event.
1879
1880 2003-08-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1881
1882         * Control.cs: patch by yaronshkop@hotmail.com (Yaron Shkop) that fixes
1883         bug #47866.
1884
1885 2003-08-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1886
1887         * LosFormatter.cs: handle Unit and FonrUnit as special cases as they
1888         are not serializable. Fixes bug #47784.
1889
1890 2003-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1891
1892         * Control.cs: index the viewstates saved by the control position, not
1893         the control name. Fixes bug #47697.
1894
1895 2003-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1896
1897         * ControlCollection.cs:
1898         * EmptyControlCollection.cs: create a minimum ArrayList for this.
1899
1900         * BaseParser.cs: added setter for BaseVirtualDir.
1901
1902         * Page.cs: fixed message when restoring view state fails.
1903         * UserControlParser.cs: set the BaseVirtualDirectory to handle the case
1904         when a relative path to the control is given. Fixes bug #47685.
1905
1906 2003-08-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1907
1908         * Control.cs: when we load the viewstate for a control that has children
1909         viewstates and the child is not found, keep its viewstate around and
1910         wait until the child is added to load the viewstate. Fixes bug #47697.
1911
1912 2003-08-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1913
1914         * TemplateControl.cs: more Delegate.CreateDelegate fixes.
1915
1916 2003-08-01  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1917
1918         * PartialCachingControl.cs: is not abstract
1919
1920 2003-08-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1921
1922         * SimpleHandlerFactory.cs: implemented GetHandler.
1923         * WebHandlerParser.cs: new file that parses .ashx files.
1924
1925 2003-07-30  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1926
1927         * PersistenceModeAttribute.cs: Fixed wrong AttributeUsage
1928
1929 2003-07-30  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1930
1931         * UserControl.cs: Added attribute
1932         * BasePartialCachingControl.cs: New class and paritally implemented
1933         * DesignerDataBoundLiteralControl.cs: New class and implemented
1934         * DesignTimeTemplateParser.cs:
1935         * PartialCachingControl.cs:
1936         * StaticPartialCachingControl.cs: New class and paritally implemented
1937
1938 2003-07-27  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1939
1940         * ApplicationFileParser.cs: Fixed signature
1941         * DesignTimeParseData.cs: Added missing properties, implemented
1942         * Page.cs: Added attributes
1943         * PageParser.cs:
1944         * TemplateControlParser.cs:
1945         * TemplateParser.cs:
1946         * UserControlParser.cs: Fixed signature
1947
1948 2003-07-17  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1949
1950         * HtmlControlPersistableAttribute.cs: Added
1951         * IgnoreUnknownContentAttribute.cs: Added
1952
1953 2003-07-17  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1954
1955         * IUserControlDesignerAccessor.cs: Added and implemented
1956         * Control.cs: Missing member added, added all attributes
1957         * Page.cs: Added attributes, fixed signature
1958         * TemplateControl.cs: Fixed signature, added all attributes
1959         * UserControl.cs: Added all attributes, added and implemented missing interface
1960         
1961 2003-07-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1962
1963         * ControlCollection.cs: fixed bug #46472.
1964
1965 2003-07-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1966
1967         * SimpleWebHandlerParser.cs: implemented GetTypeFromBin.
1968
1969 2003-07-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1970
1971         * SimpleWebHandlerParser.cs: updated to new compilation interface.
1972
1973         * TemplateParser.cs: use the new parameter when compiling.  
1974
1975 2003-07-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1976
1977         * Page.cs: also keep the value for the second try on handling postback
1978         events.
1979
1980 2003-05-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1981
1982         * BaseParser.cs: fixed MapPath for non-rooted files.
1983         * PageParser.cs: don't pass a non-virtual file around.
1984         * TemplateControlParser.cs: InputFile uses MapPath now.  Take care of
1985         the exception teh may be throw by MapPath on an invalid path.
1986
1987         * TemplateParser.cs: removed unused method.
1988         * UserControlParser.cs: modified inputfile. The result is the same, but 
1989         this one is better.
1990
1991 2003-05-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1992
1993         * RootBuilder.cs: throw exception when the tagprefix is not valid or
1994         not found.
1995
1996 2003-05-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1997
1998         * TemplateControlParser.cs: return after processing @Register.
1999
2000 2003-05-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2001
2002         * TemplateParser.cs: Added support for server side includes.
2003
2004 2003-05-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2005
2006         * TemplateControl.cs: fixed the flags used to find the methods that
2007         are automatically hooked up on events.
2008
2009         * TemplateParser.cs: don't compile a source file directly.  Use the
2010         cache instead.
2011
2012 2003-05-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2013
2014         * BaseParser.cs: Location property is now here. Added a couple of
2015         convenience methods to throw a ParseException.
2016
2017         * TemplateParser.cs:
2018         * TemplateControlParser.cs:
2019         * PageParser.cs: throw ParseException where appropiate.
2020
2021 2003-05-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2022
2023         * ApplicationFileParser.cs: use the generator to actually parse the
2024         file.
2025
2026         * ControlBuilder.cs: small fix in NamingContainerType because
2027         TemplateBuilders have a null ControlType. When a control is appended
2028         to a parent, assign the child's parent.
2029
2030         * UserControlParser.cs: fixed the value of InputFile.
2031
2032 2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2033
2034         * ApplicationFileParser.cs: store the Context and override
2035         BaseVirtualDir so that it's the application path.
2036
2037         * BaseParser.cs: removed CurrentVirtualPath property.
2038
2039         * TemplateControlParser.cs: use BaseVirtualDir.
2040
2041         * UserControlParser.cs: removed CurrentVirtualPath.
2042
2043 2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2044
2045         * TemplateParser.cs: always reference all the assemblies in bin
2046         directory.
2047
2048 2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2049
2050         * ApplicationFileParser.cs: it works now. Prior to these changes, we
2051         were using the compiler directly.
2052
2053         * BaseParser.cs: added some useful properties and methods.
2054
2055         * CodeBuilder.cs: use ILocation.
2056         * CodeRenderBuilder.cs: use ILocation.
2057         * CollectionBuilder.cs: use the RootBuilder to map tag names into Types.
2058
2059         * ControlBuilder.cs: made it useful.
2060
2061         * DataBindingBuilder.cs: the control type for data bound text is
2062         DataBoundLiteralControl now.
2063
2064         * ObjectTagBuilder.cs: store some object tag attributes.
2065
2066         * PageParser.cs: handle page-only directives.
2067
2068         * RootBuilder.cs: bah.
2069         * SimpleWebHandlerParser.cs: made it dummy.
2070         * TemplateControl.cs: Modified file.
2071
2072         * TemplateControlParser.cs: handle directives that are common to pages
2073         and user controls.
2074
2075         * TemplateParser.cs: utility methods and handling of directives that
2076         are common to app, page and user controls.
2077
2078         * UserControl.cs: added ControlBuilderAttribute.
2079
2080         * UserControlControlBuilder.cs: builder for user controls.
2081         * UserControlParser.cs: use the new interfaces.
2082
2083 2003-04-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2084
2085         * ControlBuilder.cs: line and fileName are protected now.
2086
2087         * CodeBuilder.cs: base class for the next 2 files.
2088         * CodeRenderBuilder.cs: builder for code render.
2089         * DataBindingBuilder.cs: builder for data binding.
2090
2091 2003-04-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2092
2093         * ITagNameToTypeMapper.cs: made it internal.
2094
2095         * ObjectTagBuilder.cs: builder for <object runat="server"> tag.
2096         * ObjectTag.cs:
2097         * RootBuilder.cs: initial builder.
2098
2099 2003-04-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2100
2101         * CollectionBuilder.cs:
2102         * TemplateBuilder.cs: new classes derived from ControlBuilder that
2103         represent a property or a ITemplate.
2104         
2105         * ControlBuilder.cs: implemented all the missing bits.
2106         * TemplateParser.cs: added mapping from tag name to Type feature.
2107
2108 2003-02-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2109
2110         * Control.cs: have i definitely fixed naming container stuff this time?
2111
2112         * LosFormatter.cs: activated binary serialization code.
2113
2114 2003-02-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2115
2116         * Control.cs:
2117         (AddedControl): fixed default id assignation when the sequence of
2118         AddedControl until it's included in the page or one of its controls
2119         does not pass through a naming container.
2120
2121 2003-02-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2122
2123         * Control.cs: give different default names depending on the place where
2124         it is assigned. Implemented ResolveURl (no more ~ rendered in
2125         attributes!).
2126
2127 2003-02-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2128
2129         * Control.cs: when adding a control, assign default names to th
2130         children that don't have one.
2131
2132 2003-02-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2133
2134         * SimpleWebHandlerParser.cs: modified to use the new parser interface.
2135
2136 2003-01-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2137
2138         * Control.cs: some more tweaks to naming containers stuff.
2139         * DataBinder.cs: don't throw exception if the container is null.
2140
2141         * Page.cs: now we can render client scripts, startup scripts and hidden
2142         fields. Only render __VIEWSTATE if there is someone that will take care
2143         of it.
2144         (RaisePostBackEvents): first try the last one that required raise event,
2145         then try __EVENTTARGET.
2146
2147 2003-01-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2148
2149         * Control.cs: fixes in UniqueID, FindControl, AddedControl,
2150         UnloadRecursive, InitRecursive. Reduced the size of __VIEWSTATE. Made
2151         FindControl work with NamingContainers.
2152         
2153         * ControlCollection.cs: notify the parent when clearing the collection.
2154
2155         * LosFormatter.cs: Added debugging output and generate a valid
2156         viewstate even for unknown types.
2157
2158         * Page.cs: GetPostBackEventReference now uses UniqueID. Reduced
2159         viewstate.
2160
2161 2003-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2162
2163         * Page.cs: make it fire the LoadData related events also for controls
2164         such as ImageButton, whose variable(s) in the query string are of the
2165         form ctrl_name.x and only fire them once per control.
2166
2167 2003-01-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2168
2169         * DataBinder.cs:
2170         (GetPropertyValue): don't try to get the property as indexed
2171
2172 2003-01-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2173
2174         * DataBinder.cs: use TypeDescriptor to get the properties and their
2175         values.
2176
2177 2003-01-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2178
2179         * Control.cs:
2180         (AddedControl): take the children to the same state of the parent.
2181         (InitRecursive): set the page of the children.
2182
2183         * Page.cs: removed one line (it's done a few lines above).
2184
2185         * UserControl.cs:
2186         (OnInit): always call InitializeAsUserControl
2187         (InitializeAsUserControl): sets the page for the control.
2188
2189 2003-01-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2190
2191         * Control.cs: fixed bug #36037.
2192
2193 2002-12-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2194
2195         * BaseParser.cs: a couple of path fixes to make it work
2196         when the page is not in the root directory.
2197
2198 2002-12-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2199
2200         * Control.cs: fixed PreRenderRecursiveInternal. Thanks to kojoadams for
2201         reporting the bug.
2202
2203 2002-12-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2204
2205         * BaseParser.cs: use MapPath and context to locate files.
2206         * Control.cs: implemented MapPathSecure.
2207         * TemplateControl.cs: use UrlUtils to generate the path.
2208         * TemplateControlParser.cs: use the context and MapPath.
2209         * UserControl.cs: implemented MapPath.
2210         * UserControlParser.cs: added context parameter to constructor.
2211
2212 2002-12-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2213
2214         * Control.cs: implemented MapPathSecure.
2215         * Page.cs: fixed Server property.
2216
2217 2002-12-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2218
2219         * DataBinder.cs: try the indexer if the property is not found in
2220         GetPropertyValue ().
2221
2222 2002-12-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2223
2224         * Control.cs: added AutoEventWireup internal property.
2225
2226         * Page.cs: removed page events wire up from here.
2227
2228         * TemplateControl.cs: new method WireupAutomaticEvents to hook up page
2229         and user controls events.
2230
2231         * TemplateControlParser.cs: process the options that are applicable
2232         once we have the instance of the control.
2233
2234         * TemplateParser.cs: also stores the options.
2235
2236         * UserControl.cs: hook up events before initializing the control.
2237
2238
2239 2002-12-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2240
2241         * Control.cs: new method to set bindingContainer value.
2242         * TemplateControl.cs: added controls are not binding containers.
2243
2244 2002-12-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2245
2246         * Control.cs: implemented TemplateSourceDirectory.
2247         * TemplateControl.cs: implemented LoadControl and LoadTemplate.
2248
2249 2002-11-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2250
2251         * UserControl.cs: fixed SetAttribute.
2252         * UserControlParser.cs: set the correct base type.
2253
2254 2002-11-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2255
2256         * TemplateParser.cs: fixed BaseType.
2257         * UserControlParser.cs: helper class to compile user controls.
2258
2259 2002-11-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2260
2261         * LosFormatter.cs: added DateTime to special types.
2262
2263 2002-11-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2264
2265         * LosFormatter.cs: added array serialization support. Disabled binary
2266         serialization and add some debugging code.
2267
2268         * StateBag.cs: the length of the list of value can be less than the
2269         length if the list of keys when remaining values are null.
2270
2271 2002-11-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2272
2273         * Page.cs: return something useful in GetPostBackClientEvent.
2274
2275 2002-11-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2276
2277         * Page.cs: implemented FileDependecies and made it protected.
2278
2279 2002-10-31  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2280
2281         * Control.cs: save control names instead of the controls
2282         themselves to the ViewState.
2283
2284         * LosFormatter.cs: added support for serializing unknown
2285         types. BinaryFormatter does not work so you better don't store anything
2286         of unknown Type in ViewState.
2287
2288         * Page.cs: GetViewStateString works now using LosFormatter.
2289         Complete "Control execution lifecycle" by unloading all the child
2290         controls. Check for null in RaisePostBackEvents.
2291         LoadPageViewStateFromPersistenceMedium uses LosFormatter too.
2292
2293 2002-10-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2294
2295         * DataBinder.cs: implemented Eval and GetIndexedPropertyValue methods.
2296
2297 2002-10-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2298
2299         * LosFormatter.cs: Use WebEncoding.Encoding.
2300
2301         * Control.cs:
2302         * Page.cs: fixed namespace.
2303
2304 2002-10-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2305
2306         * Page.cs: set the context in ProcessRequest. Added a few trace calls.
2307         * Control.cs: added some trace information.
2308
2309 2002-10-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2310
2311         * SimpleHandlerFactory.cs: new handler for .ashx files.
2312
2313 2002-09-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2314
2315         * System.Web.UI/PageHandlerFactory.cs: new file.
2316         * System.Web.UI/PageParser.cs:
2317         * System.Web.UI/TemplateControlParser.cs: we are now able to compile
2318         pages and use HttpApplication, HttpRuntime and SimpleWorkerRequest.
2319
2320 2002-09-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2321
2322         * Control.cs: implemented ObBubbleEvent.
2323         * Page.cs: temporary workaround to make POST work with xsp server.
2324
2325 2002-09-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2326
2327         * Page.cs: fixed InvokeEventMethod now that Type.GetMethod does not
2328         return pvt methods.
2329
2330 2002-09-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2331
2332         * SimpleWebHandlerParser.cs: New file.
2333         * WebServiceParser.cs: New file.
2334
2335 2002-08-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2336
2337         * LosFormatter.cs: almost fully implemented.
2338
2339 2002-08-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2340
2341         * CompiledTemplateBuilder.cs: InstantiateIn is virtual.
2342         * EmptyControlCollection.cs: throw correct exception.
2343         * LosFormatter.cs: stubbed out.
2344         * OutputCacheLocation.cs: little fix.
2345
2346 2002-08-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2347
2348         * System.Web.UI/ApplicationFileParser.cs:
2349         * System.Web.UI/BaseParser.cs:
2350         * System.Web.UI/PageParser.cs:
2351         * System.Web.UI/TemplateControl.cs:
2352         * System.Web.UI/TemplateControlParser.cs:
2353         * System.Web.UI/TemplateParser.cs: first steps to move xsp into
2354         System.Web.
2355
2356 2002-07-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2357
2358         * Page.cs: request to render postback script can be after form started
2359         rendering.
2360
2361 2002-07-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2362
2363         * Page.cs: added more page events to invoke automagically if some
2364         methods are defined.
2365
2366 2002-07-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2367
2368         * Control.cs:
2369         (SaveViewState): save state even when control is not visible.
2370         (SaveViewStateRecursive):
2371         (LoadViewStateRecursive): made internal.
2372
2373 2002-07-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2374
2375         * Page.cs: improved event raising to allow client postback for a wider
2376         variety of actions (clicking an hyperlink, ...).
2377
2378 2002-07-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2379
2380         * UserControl.cs: implemented Load/SaveViewState.
2381
2382 2002-07-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2383
2384         * AttributeCollection.cs:
2385         (Add): handle 'style' through styleCollection.
2386
2387         * CssStyleCollection.cs:
2388         (fillStyle): renamed to FillStyle and made it internal.
2389
2390         * Page.cs:
2391         (GetViewStateString): fixed, broken after other recent changes.
2392         (ProcessPostData): allow a second try for postback data after OnLoad.
2393         (ProcessRequest): clear controls collection, removed call to 
2394         UnloadRecursive.
2395
2396 2002-07-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2397
2398         * Control.cs: uncommented Dispose.
2399
2400         * Page.cs:
2401         (DeterminePostBackMode): more checkings.
2402         (GetPostBackClientHyperLink): implemented.
2403         (GetPostBackEventReference): added some comments with the HTML that MS
2404         generates for that.
2405         (ProcessRequest): fixed processing order. The page is unloaded after
2406         a request and regenerated from view state on subsequents posts.
2407
2408 2002-07-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2409
2410         * Control.cs: fixed related to ViewState. Added RemovedControl.
2411
2412         * ControlCollection.cs: notify owner of control removal.
2413         
2414         * CssStyleCollection.cs: almost rewritten to make it render the style
2415         attribute after changes to it.
2416
2417         * Page.cs: follow the guidelines in 'Control execution lifecycle'.
2418         Removed Xml code.
2419
2420         * StateBag.cs: don't use IDictionary.GetEnumerator on the
2421         HybridDictionary: it makes the program give an InvalidCastException at
2422         runtime. Why?
2423
2424 2002-07-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2425
2426         * Page.cs: fire Init and Load events for all children.
2427
2428 2002-07-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2429
2430         * UserControl.cs: New file.
2431
2432 2002-07-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2433
2434         * ControlBuilderAttribute.cs: finished implementation.
2435
2436 2002-07-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2437
2438         * ConstructorNeedsTagAttribute.cs: the default constructor sets the
2439         property to false.
2440
2441 2002-07-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2442
2443         * System.Web.UI/AttributeCollection.cs: added CssStyleCollection.
2444
2445         * System.Web.UI/CssStyleCollection.cs: use a StateBag instead of a
2446         Hashtable. Added internal .ctor.
2447
2448         * System.Web.UI/DataBinding.cs: propertyType is a Type. Implemented
2449         Equals and GetHashCode.
2450
2451         * System.Web.UI/DataBoundLiteralControl.cs:
2452         (LoadViewState):
2453         (SaveViewState): implemented.
2454
2455         * System.Web.UI/Page.cs: FileDependencies is not public.
2456
2457         * System.Web.UI/ParseChildrenAttribute.cs: give a value to Default.
2458         (GetHashCode):
2459         (Equals):
2460         (IsDefaultAttribute): implemented.
2461
2462 2002-07-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2463
2464         * Control.cs: fixed Visible property.
2465         * Page.cs: fixed GetViewStateString.
2466
2467 2002-07-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2468
2469         * System.Web.UI/Page.cs:
2470         (GetViewStateString): new function to give the server access to the
2471         generated view state string.
2472         (Validate): d'oh!
2473
2474 2002-07-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2475
2476         * Control.cs:
2477         (SaveViewstateRecursive): implemented.
2478         (SaveViewState): fixed.
2479         (IParserAccessor.AddParsedSubObject): don't use 'this'.
2480
2481         * Page.cs: added code to save view state to an xml file.  It's not
2482         being used right now.
2483
2484 2002-06-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2485
2486         * System.Web.UI/LiteralControl.cs: 
2487         Fixes based on class status page:
2488         
2489                 - Add attributes (DefaultEvent, ParseChildren).
2490                 - Fix declarations.
2491                 - Explicitly implement some interfaces (IPostBackDataHandler
2492                 and IPostBackEventHandler).
2493                 - Implemented some missing methods.
2494
2495 2002-06-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2496
2497         * Control.cs: reimplemented FindControls.
2498
2499         * Page.cs:
2500         (.ctor): set the page for this control.
2501         (IsPostBack): return valid value.
2502         (DeterminePostBackMode): finished.
2503         (OnFormRender): render __VIEWSTATE (uses GetTypeHashCode()).
2504         (ProcessPostData): implemented. Raises change and postback events.
2505         (ProcessRequest): changed to support reuse of the instance.
2506         (RegisterRequiresPostBack): implemented.
2507
2508         * ValidatorCollection.cs: implemented all methods.
2509
2510 2002-06-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2511
2512         * Control.cs:
2513         * Page.cs: first attemp to save view state.
2514
2515         * HtmlForm.cs: don't render Action.
2516
2517 2002-06-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2518
2519         * Page.cs: implemented more properties using information we already
2520         have in Context.
2521         (OnFormRender):
2522         (OnFormPostRender):
2523         (VerifyRenderingInServerForm): implemented.
2524
2525 2002-06-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2526
2527         * Page.cs: changed InvokeEventMethod to use a GetMethod that works with
2528         out runtime. Renamed Page_Init and Page_Load.
2529
2530         After this, we can load a dll and render HTML in linux.
2531
2532 2002-06-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2533
2534         * Control.cs:
2535         (AddedControl): new function that is called whenever a control is
2536         added to a collection of controls in a container. It sets the defaults
2537         except for Page.
2538         
2539         * ControlCollection.cs: call AddedControl in Add/AddAt.
2540
2541         * DataBoundLiteralControl.cs: implemented constructor, Text, Render,
2542         SetStaticString and SetDataBoundString.
2543
2544         * Page.cs: removed SetDefaults.
2545
2546 2002-06-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2547
2548         * CompiledTemplateBuilder.cs: new file. Used in the code generated
2549         by xsp.
2550
2551         * Control.cs:
2552         (BindingContainer): implemented.
2553         (EnsureChildControls): avoid stack overflow.
2554
2555         * DataBinder.cs: implemented Eval and PropertyValue.
2556
2557 2002-06-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2558
2559         * HtmlTextWriter.cs: fixed style attributes rendering (almost the same
2560         bug as in regular attributes).
2561
2562 2002-06-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2563
2564         * Control.cs: implemented PreventAutoID.
2565
2566         * Page.cs:
2567         (SetDefaults): don't set ID automatically if Control.PreventAutoID has
2568         been called.
2569
2570 2002-06-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2571
2572         * Page.cs:
2573         (Validators): if the collection is null, create one.
2574         (GetPostBackEventReference 2): don't throw exception.
2575         (GetPostBackClientEvent): return a string with containing the method
2576         name, the control name and the argument.
2577
2578 2002-06-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2579
2580         * Page.cs: SetPage is now called SetDefaults and also sets a default 
2581         ID for controls that don't have one yet.
2582
2583 2002-06-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2584
2585         * Page.cs:
2586         (GetPostBackClient):
2587         (RegisterRequiresPostBack): don't throw NotImplementedException to
2588         keep going.
2589         (ProcessRequest): set the current page as the Page property for *all*
2590         the controls, not just the direct children of the page.
2591
2592 2002-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2593
2594         * Control.cs:
2595         (MapPathSecure): until security is implemented, return the same path
2596         received as argument.
2597         (RenderControl): call OnPreRender before rendering the control. So
2598         AdRotator can read its configuration file.Is there any other place
2599         where this should be done?
2600
2601         * HtmlTextWriter.cs:
2602         (AddAttribute): fixed. Now it really stores attributes.
2603         (RenderBeginTag): fixed a couple of bugs (little ones but hard to find).
2604
2605 2002-06-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2606
2607         * ControlCollection.cs:
2608         (AddAt): if index is -1 behave as a plain Add.
2609
2610 2002-06-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2611
2612         * Page.cs: for each child control to render, assign Control.Page.
2613         Probably also needed in HtmlContainerControl derived classes.
2614         
2615 2002-06-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2616
2617         * AttributeCollection.cs: don't need a Hastable. StateBag now works 
2618         fine and takes care of the details.
2619
2620         * Control.cs: added HasChildren property.
2621
2622         * StateBag.cs: fixed a couple of nasty bugs.
2623
2624 2002-06-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2625
2626         * Page.cs: run OnInit, OnLoad y PreRender before rendering the page.
2627         Invoke Page_Init and/or Page_Load if the user supplied them (though 
2628         this should depend on AutoEventWireUp attribute of Page directive).
2629
2630 2002-06-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2631
2632         * Control.cs: don't throw exception in ControlID. By now, it returns ID.
2633
2634         * Page.cs: 
2635         (ProcessRequest): implemented.
2636
2637 2002-06-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2638
2639         * System.Web.UI/Page.cs: finished stubbing out. Implemented some
2640         methods.
2641
2642 2002-06-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2643
2644         * Page.cs:
2645         (FileDependencies): now is public public.
2646         (EnableViewStateMAC): uncommented and made protected. 
2647         (GetTypeHashCode): added method.
2648         
2649 2002-05-24  Duncan Mak  <duncan@ximian.com>
2650
2651         * TemplateControl.cs (SetStringResourcePointer): Fixed typo.
2652
2653         * StateBag.cs (Item): Changed the visibility level of the this
2654         [object] indexer.
2655
2656         Misc. formatting edits, fixing some bugs introduced by the indentation.
2657
2658         * DataBinder.cs (Eval)
2659         (GetIndexedPropertyValue)
2660         (GetPropertyValue): Fixed return types.
2661
2662 2002-05-21  Miguel de Icaza  <miguel@ximian.com>
2663
2664         * HtmlTextWriter.cs: Use this to change the member instances.
2665
2666 2002-05-17  Duncan Mak  <duncan@ximian.com>
2667
2668         * AttributeCollection.cs: 
2669         * ControlCollection.cs: 
2670         * CssStyleCollection.cs: 
2671         * DataBindingCollection.cs: 
2672         * EmptyControlCollection.cs: Added missing Collection classes.
2673
2674 2002-05-17  Duncan Mak  <duncan@ximian.com>
2675
2676         * BaseParser.cs:
2677         * TemplateParser.cs:  Implemented. BaseParser is weird because
2678         there is no documentation on what it does.
2679
2680         * ControlBuilder.cs:
2681         
2682         * DataBinder.cs: 
2683         * DataBinding.cs: Added. 
2684
2685         * DataBoundLiteralControl.cs: 
2686         * Triplet.cs: Added.
2687
2688         * RenderMethod.cs: Added this delegate for Control.cs
2689
2690 2002-05-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2691
2692         * ValidationPropertyAttribute.cs: a couple of fixes to make it compile.
2693
2694 2002-05-14  Duncan Mak  <duncan@ximian.com>
2695
2696         * ValidationPropertyAttribute.cs: Added to CVS.
2697
2698 2002-05-10  Duncan Mak  <duncan@ximian.com>
2699
2700         * ConstructorNeedsTagAttribute.cs: 
2701         * ControlBuilderAttribute.cs: 
2702         * ImageClickEventArgs.cs: 
2703         * ParseChildrenAttribute.cs: 
2704         * PartialCachingAttribute.cs: 
2705         * PersistChildrenAttribute.cs: 
2706         * PersistenceModeAttribute.cs: 
2707         * TemplateContainerAttribute.cs: Added to CVS.
2708
2709         * PersistanceMode.cs: Removed, fixed typo.
2710         * PersistenceMode.cs: Replacing above.
2711
2712         * StateBag.cs (this): Fixed indexer, it takes a string as the
2713         index, not an object.
2714
2715         * ValidatorCollection.cs: Fixed typo, ValidatedCollection to ValidatorCollection. 
2716
2717         * Page.cs (Validators): return type should be ValidatorCollection,
2718         not ValidatedCollection.
2719
2720         * TagPrefixAttribute.cs: Added to CVS.
2721
2722 2002-05-07  Duncan Mak  <duncan@ximian.com>
2723
2724         * Utils.cs (GetClientValidatedEvent): Uncommented the 'Page' argument.
2725
2726 2002-03-26   Gaurav Vaish <gvaish@iitk.ac.in>
2727
2728         * DataBindingHandlerAttribute.cs
2729                                    - Completed
2730         * ToolboxDataAttribute.cs  - Completed
2731
2732 2002-01-03  Nick Drochak  <ndrochak@gol.com>
2733
2734         * DesignTimeParseData.cs: initialze static member to avoid compile
2735         error
2736         * PropertyConverter.cs: remove uneeded exception variables from
2737         catch blocks.
2738
2739 2002-01-02  Nick Drochak  <ndrochak@gol.com>
2740
2741         * DesignTimeParseData.cs: fix header to show correct class name
2742
2743 2001-12-21   Gaurav Vaish <gvaish@iitk.ac.in>
2744
2745         * StateBag.cs             - Completed
2746
2747 2001-12-19   Gaurav Vaish <gvaish@iitk.ac.in>
2748
2749         * Pair.cs                 - Small undocumented class. Completed.
2750
2751 2001-12-18   Gaurav Vaish <gvaish@iitk.ac.in>
2752
2753         * DesignTimeParseData.cs  - Initial implementation
2754         * StateBag.cs             - Initial implementation
2755
2756 2001-12-17   Gaurav Vaish <gvaish@iitk.ac.in>
2757
2758         * PropertyConverter.cs    - Undocumented class. Completed.
2759         * Utils.cs                - Undocumented, private class.
2760                                     Initial implementation
2761
2762 2001-08-28  Bob Smith  <bob@thestuff.net>
2763         * Control.cs: Figured out some undocumented API.
2764         * Added TODO.
2765         * BuildMethod.cs: Initial implementation.
2766         * BuildTemplateMethod.cs: Initial implementation.
2767         * HtmlTextWriterAttribute.cs: Initial implementation.
2768         * HtmlTextWriterStyle.cs: Initial implementation.
2769         * HtmlTextWriterTag.cs: Initial implementation.
2770         * IAttributeAccessor.cs: Initial implementation.
2771         * IDataBindingsAccessor.cs: Initial implementation.
2772         * ImageClickEventHandler.cs: Initial implementation.
2773         * INamingContainer.cs: Initial implementation.
2774         * IParserAccessor.cs: Initial implementation.
2775         * IPostBackDataHandler.cs: Initial implementation.
2776         * IPostBackEventHandler.cs: Initial implementation.
2777         * IStateManager.cs: Initial implementation.
2778         * ITagNameToTypeMapper.cs: Initial implementation.
2779         * ITemplate.cs: Initial implementation.
2780         * IValidator.cs: Initial implementation.
2781         * OutputCacheLocation.cs: Initial implementation.
2782         * PersistanceMode.cs: Initial implementation.
2783         * StateItem.cs: Initial implementation.
2784
2785 2001-08-27  Bob Smith  <bob@thestuff.net>
2786
2787         * Control.cs: Bug fixes and implementations.
2788
2789 2001-08-24  Bob Smith  <bob@thestuff.net>
2790
2791         * Control.cs: Bug fixes.
2792
2793 2001-08-23  Bob Smith  <bob@thestuff.net>
2794
2795         * Control.cs: More implementation. Events reworked for performance.
2796
2797 2001-08-22  Bob Smith  <bob@thestuff.net>
2798
2799         * LiteralControl.cs: Implemented.
2800         * Control.cs: Even more implementation (Events). What a beast.
2801
2802 2001-08-20  Bob Smith  <bob@thestuff.net>
2803
2804         * Control.cs: More implementation. Not done yet. Shutter.
2805
2806 2001-08-17  Bob Smith  <bob@thestuff.net>
2807
2808         * Control.cs: Partial implementation.