1 2009-04-15 Marek Habersack <mhabersack@novell.com>
3 * TemplateParser.cs: use generic lists for import, namespace and
4 interface caches. If a namespace is added (e.g. by parsing the
5 Import directive), find the assembly in which namespace is
8 2009-04-07 Marek Habersack <mhabersack@novell.com>
10 * Control.cs: ApplyTheme - make sure Page is not null before using
13 2009-04-06 Marek Habersack <mhabersack@novell.com>
15 * Page.cs: ProcessRaiseCallbackEvent and ProcessGetCallbackResult
16 now return full exception trace if one is caught and we're running
19 2009-03-31 Marek Habersack <mhabersack@novell.com>
21 * Page.cs: SavePageViewState saves the list of controls which
22 require post back regardless of whether view state is disabled or
23 not. Fixes bug #490753
25 * ApplicationFileParser.cs, MasterPageParser.cs, PageParser.cs,
26 PageThemeFileParser.cs, PageThemeParser.cs, UserControlParser.cs,
27 WebHandlerParser.cs, WebServiceParser.cs: 2.0 constructors take a
28 VirtualPath instance for the virtualPath parameter, instead of a
31 2009-03-18 Marek Habersack <mhabersack@novell.com>
33 * Control.cs: AppRelativeResourceDirectory no longer returns a
34 hard-coded "~/" when template control's virtual path cannot be
35 determined. It returns application relative version of
36 TemplateSourceDirectory instead.
38 2009-03-13 Marek Habersack <mhabersack@novell.com>
40 * Control.cs: clear the controls cache on control removal. This
41 ensures that a subsequent FindControl call won't return the
44 2009-03-06 Marek Habersack <mhabersack@novell.com>
46 * XPathBinder.cs: use the pased namespace manager
48 * ControlBuilder.cs: BindingContainerType - if control type of the
49 containing builder is null, return typeof (Control)
51 2009-03-03 Rodrigo Kumpera <rkumpera@novell.com>
53 * Control.cs (FillControlCache): Remove useless control
54 parameter. It's always the same of 'this'.
56 2009-03-03 Rodrigo Kumpera <rkumpera@novell.com>
58 * DataBoundLiteralControl.cs: Don't init static literals
59 as they are lazily created.
61 2009-02-28 Gonzalo Paniagua Javier <gonzalo@novell.com>
68 * SimpleWebHandlerParser.cs: settings that have to be in
69 machine.config or the root level web.config now call
70 GetWebApplicationSection.
72 2009-02-28 Gonzalo Paniagua Javier <gonzalo@novell.com>
74 * ObjectStateFormatter.cs: use GetWebApplication
75 instead of GetSection for application level configuration.
77 2009-02-28 Gonzalo Paniagua Javier <gonzalo@novell.com>
79 * Control.cs: Avoid double OnInit in scenarios with two master
82 2009-02-26 Marek Habersack <mhabersack@novell.com>
84 * FileLevelControlBuilderAttribute.cs,
85 DataSourceCacheDurationConverter: hush the gmcs warnings
87 2009-02-20 Gonzalo Paniagua Javier <gonzalo@novell.com>
89 * TemplateControl.cs: implement the other ReadStringResource method.
90 Patch from Kornel Pal.
92 2009-02-20 Gonzalo Paniagua Javier <gonzalo@novell.com>
94 * ResourceBasedLiteralControl.cs: new Control. It's just
95 like a LiteralControl but will render itself from the bytes pointed to
96 by an IntPtr and not create any string from the underlying data unless
99 * TemplateControl.cs: implemented a bunch of methods
100 that are used from the precompiled assemblies for a web project. The
101 most notable change needed is to be able to read a win32 resource from
102 the dll of the control. The resource is a concatenation of literals
103 with plain text for the control and a specialized LiteralControl is
104 generated from different chunks of the resource.
106 * HtmlTextWriter.cs: new method that returns the HttpWriter in use.
108 2009-02-18 Gonzalo Paniagua Javier <gonzalo@novell.com>
110 * TemplateControl.cs: ReadStringResource returns null now.
112 2009-02-18 Gonzalo Paniagua Javier <gonzalo@novell.com>
114 * MasterPage.cs: the items in ContentPlaceHolders are lowercase.
116 2009-02-18 Marek Habersack <mhabersack@novell.com>
118 * TemplateParser.cs: don't initialize PageParserFilter in
119 LoadConfigDefaults, postpone it till the first time the
120 PageParserFilter property is accessed.
122 * ApplicationFileParser.cs, UserControlParser.cs: make sure
123 VirtualPath is set in the constructors.
125 2009-02-13 Marek Habersack <mhabersack@novell.com>
127 * TemplateParser.cs: PageParserFilter handling moved to here.
128 PagesConfig must use the current virtual path when retrieving the
129 section, or otherwise we'll miss the lower level web.configs.
130 Added the AddControl method, used by PageParserFilter.
131 Implementing filtering of: parsed directives and the base type, if
132 a page parser filter is present.
134 * PageParserFilter.cs: added missing 3.5 members and implemented
137 * PageParser.cs: moved PageParserFilter processing to
139 VirtualPath must be set before anything else.
140 Call page parser filter's directive preprocessing code from
141 AddDirective if a filter is present and a mastertype or
142 previouspagetype directive is parsed.
144 * MasterPageParser.cs: when PageParserFilter is present use it to
145 preprocess the MasterType directive.
147 2009-02-12 Marek Safar <marek.safar@gmail.com>
149 * ControlBuilder.cs, PageParserFilter.cs, CodeConstructType.cs:
150 Add few missing members.
152 2009-02-06 Gert Driesen <drieseng@users.sourceforge.net>
154 * Control.cs: Make IsViewStateEnabled available on 1.0 profile
155 and use it to determine if viewstate needs to be saved instead of
156 the newly introduced ViewStateShouldBeSaved. Remove
157 ViewStateShouldBeSaved.
159 2009-02-05 Marek Habersack <mhabersack@novell.com>
161 * Control.cs: if a control has been added to the controls
162 collection, removed and added again do not call OnInit (). At the
163 same time OnInit() should be called more than once if a control is
164 added to a container which, in turn, is then added to another
165 control. To achieve that a new state mask flag has been added -
166 REMOVED. Fixes bug #471305
168 2009-02-04 Marek Habersack <mhabersack@novell.com>
170 * Control.cs: update of the fix for bug #470993 - view state of
171 the child controls isn't saved when any of their parents has it
174 2009-01-30 Marek Habersack <mhabersack@novell.com>
176 * Control.cs: don't save the control's state if it's
177 disabled. Fixes bug #470993
179 2009-01-23 Marek Habersack <mhabersack@novell.com>
181 * HtmlTextWriter.cs: if OnTagRender returns false when called from
182 RenderBeginTag, push the tag to the stack regardless, and ignore
183 it in DoBeginTag and RenderEndTag. Fixes bug #463634
185 2009-01-13 Marek Habersack <mhabersack@novell.com>
187 * CodeBuilder.cs, RootBuilder.cs, CollectionBuilder.cs: updates
188 related to ControlBuilder cleanup.
190 * ControlBuilder.cs: code cleanup - no field should be visible
191 outside the class unless it's a constant or a read-only field.
193 2009-01-12 Marek Habersack <mhabersack@novell.com>
195 * TemplateParser.cs: line pragmas are on by default. Fixes bug
198 2009-01-09 Marek Habersack <mhabersack@novell.com>
200 * BaseParser.cs, PageParser.cs, UserControlParser.cs: use
201 VirtualPathUtility.GetDirectory instead of UrlUtils.GetDirectory.
203 2008-12-25 Gonzalo Paniagua Javier <gonzalo@novell.com>
205 * TemplateControl.cs: use IndexOf (char).
207 2008-12-18 Marek Habersack <mhabersack@novell.com>
209 * ControlBuilder.cs: BindingContainerType returns typeof (Page)
210 only when the current object is a RootBuilder and it's been
211 created for a page parser. Otherwise it returns typeof
212 (Control). Fixes bug #456305
214 2008-12-11 Marek Habersack <mhabersack@novell.com>
216 * MasterPageParser.cs: check if masterType is null before using it
219 * TemplateParser.cs: in the 2.0 profile when a custom control is
220 registered, do not compile it right away but store the tag name in
221 a registry to be compiled at a later stage.
223 2008-12-09 Gonzalo Paniagua Javier <gonzalo@novell.com>
225 * XhtmlTextWriter.cs: don't recreate the Hashtables every time, but
228 2008-12-10 Marek Habersack <mhabersack@novell.com>
230 * MasterPageParser.cs: do not compile anything while
231 parsing. MasterType virtual path is not compiled, but stored for
232 later. It is compiled when the MasterType property is requested
233 from within MasterPageCompiler.
235 * PageParser.cs: do not compile anything while
236 parsing. MasterPageFile, MasterType and PreviousPageType virtual
237 paths aren't compiled but checked for existence and stored for
238 later. Actual compilation happens when the MasterType and
239 PreviousPageType are requested from within PageCompiler.
241 * BaseParser.cs: added a new helper method, ThrowParseFileNotFound.
243 2008-12-03 Marek Habersack <mhabersack@novell.com>
245 * DataBinder.cs: clean up Eval for good this time.
246 GetIndexedPropertyValue should throw an exception when a string
247 indexer expression is used and the container is an IList.
249 2008-12-02 Gonzalo Paniagua Javier <gonzalo@novell.com>
251 * Page.cs: make sure we don't return null in Title.
253 2008-12-02 Marek Habersack <mhabersack@novell.com>
255 * DataBinder.cs: when Eval attempts to find Items [] in the
256 container, catch and ignore all exceptions - the null returned
257 from GetPropertyValue may be a legitimate return value.
259 * StateManagedCollection.cs: adding an item to the collection does
260 not call SetDirty as an item is added, thus not affecting the
261 indexes of its predecessors. Fixes bug #443100
262 Insert doesn't call SetDirtyObject as all objects are made dirty
263 in SetDirty which is called from here. Same applies to this [int]
266 2008-12-01 Marek Habersack <mhabersack@novell.com>
268 * MasterPage.cs: use List <string> for ContentPlaceHolders instead
270 CreateMasterPage now directly accesses the ContentPlaceHolders as
271 it is now a list of strings.
273 2008-11-28 Marek Habersack <mhabersack@novell.com>
275 * DataBinder.cs: do the proper thing in Eval when a non-indexed
276 property is requested on an object and not found. In that case try
277 to use the Items property.
279 2008-11-25 Marek Habersack <mhabersack@novell.com>
281 * RootBuilder.cs: use new API in AspComponentFoundry to retrieve
282 registered control type.
284 * TemplateControlParser.cs: AddControlImports () removed. Its
285 functionality is now implemented in ControlBuilder.AddChild in a
286 more elegant, fine grained and correct way.
288 * TemplateParser.cs: replaced some "" with String.Empty
290 * ControlBuilder.cs: AddChild now adds an import for child's
291 namespace if the control being added has been registered in the
292 web.config file. Possible fix for #447896 and #447898
294 * PageParser.cs, MasterPageParser.cs: do not call
295 AddControlImports, it no longer exists.
297 2008-11-21 Marek Habersack <mhabersack@novell.com>
299 * ControlBuilder.cs: in BindingContainerType if builder is a
300 RootBuilder and no naming container is found, return typeof
301 (Page). In the TemplateBuilder case return cb.ControlType, not
304 2008-11-18 Gonzalo Paniagua Javier <gonzalo@novell.com>
306 * ControlBuilder.cs: make sure the binding container container is a
309 2008-11-18 Marek Habersack <mhabersack@novell.com>
311 * ControlBuilder.cs: make sure no control implementing the
312 INonBindingContainer can be returned from BindingContainerType.
314 2008-11-18 Gonzalo Paniagua Javier <gonzalo@novell.com>
316 * ControlBuilder.cs: find the correct naming container even inside
317 user controls. A corner case of bug #445889.
319 2008-11-15 Marek Habersack <mhabersack@novell.com>
321 * INonBindingContainer.cs: added
323 * Control.cs: BindingContainer now checks if a control implements
324 INonBindingContainer interface in addition to the
325 BINDING_CONTAINER mask check.
327 * UserControl.cs: implements INonBindingContainer
329 * ControlBuilder.cs: use the new INonBindingContainer interface to
330 determine the binding container type in the BindingContainerType
331 property. If TemplateBuilder's ContainerType implements that
332 interface, the NamingContainer is queried for the binding
333 container type. If ContainerType is null, we return our own
334 ControlType (if we're TemplateBuilder)
336 2008-11-14 Marek Habersack <mhabersack@novell.com>
338 * DataBinder.cs: if Eval doesn't find the indicated property, try
339 to find an indexer property on the object and use the expression
340 value as its parameter. Fixes #444725
342 2008-11-13 Marek Habersack <mhabersack@novell.com>
344 * Control.cs: added ability to reset child names to a specific
345 value, not only to 0.
347 2008-10-29 Marek Habersack <mhabersack@novell.com>
349 * StateManagedCollection.cs: IList.Remove should call this.IndexOf
350 instead of items.IndexOf
352 2008-10-24 Marek Habersack <mhabersack@novell.com>
354 * TemplateControl.cs: pass content hash to
355 UserControlParser.GetCompiledType when compiling a control in
358 * UserControlParser.cs: when compiling a control using a text
359 reader, append a unique suffix to the "file path" - that way
360 controls compiled from different input streams won't conflict with
361 each other in the compilation cache.
363 2008-10-23 Marek Habersack <mhabersack@novell.com>
365 * TemplateControlParser.cs: added internal method
366 AddControlImports which adds namespaces named in the
367 pages/controls section of web.config
369 * MasterPageParser.cs: unconditionally add namespaces named in the
370 pages/controls section of web.config.
372 * PageParser.cs: add namespaces named in the pages/controls
373 section of web.config to the page whenever it uses a master page.
375 * StateManagedCollection.cs: modified {Load,Save}ViewState to
376 properly store/recreate the collection of controls and to use a
377 more consistent structure for the state.
379 2008-10-17 Marek Habersack <mhabersack@novell.com>
381 * Control.cs: added the ValidateEvent internal method, used by
382 classes descending from Control to automatically trigger event
385 * Page.cs: removed the CheckForValidationSupport method. It moved
387 RaisePostBackEvent no longer validates the events, this
388 functionality has been moved to Control.ValidateEvent.
390 2008-10-15 Marek Habersack <mhabersack@novell.com>
392 * Page.cs: Response caching is switched on only when output
393 caching is configured for this page instance. Fixes bug #435549.
395 2008-10-14 Marek Habersack <mhabersack@novell.com>
397 * Control.cs: SaveViewStateRecursive must return view state even
398 if EnableViewState is false. This is apparently what .NET does, as
399 some commercial ASP.NET controls take advantage of that via
402 2008-10-08 Marek Habersack <mhabersack@novell.com>
404 * DataBinder.cs: in Eval expression needs to be trimmed before
405 checking whether it's an empty string.
406 GetIndexedPropertyValue must explicitly look for the "Item"
407 property, the lack of the DefaultMember attribute on type must not
410 2008-10-03 Marek Habersack <mhabersack@novell.com>
412 * TemplateParser.cs: make sure the generated class name is a valid
413 language independent identifier. Fixes bug #431622
415 2008-09-29 Marek Habersack <mhabersack@novell.com>
417 * Page.cs: EnableViewState is initialized from the web
419 ViewState is saved only if EnableViewState is true for the page.
420 Optimized SavePageControlState implementation.
421 Implemented the UniqueFilePathSuffix and MaxPageStateFieldLength
423 Some coding style changes.
425 2008-09-25 Marek Habersack <mhabersack@novell.com>
427 * Page.cs: make sure view state is loaded for PreviousPage during
430 2008-09-13 Atsushi Enomoto <atsushi@ximian.com>
432 * IAutoFieldGenerator.cs : new in 3.5 SP1.
434 2008-09-13 Atsushi Enomoto <atsushi@ximian.com>
436 * CssClassPropertyAttribute.cs : new in 3.5 SP1.
438 2008-09-13 Atsushi Enomoto <atsushi@ximian.com>
440 * IBindableControl.cs : new in 3.5 SP1.
442 2008-09-01 Marek Habersack <mhabersack@novell.com>
444 * ControlBuilder.cs: CreatePropertyBuilder now correctly processes
445 property names with prefixes (e.g. 'prefix:PropertyName').
446 Original, parsed, tag name is stored to properly handle closing
448 CreateSubBuilder compares tagid to tagName case-insensitively now.
450 * TemplateControl.cs: changed the way in which ParseControl is
451 implemented for the 2.0+ profile. Still not quite there, but
452 better and closer to .NET
454 2008-08-31 Marek Habersack <mhabersack@novell.com>
456 * Control.cs: improved FillControlCache
458 * TemplateParser.cs: added support for the LinePragmas directive
461 * ControlBuilder.cs: if this instance is a TemplateBuilder do not
462 call MyNamingContainer, so that our own ContainerType can be used
463 as the binding container (if present).
464 Added a cache for children of TemplateBuilder, used later in
465 TemplateControlCompiler.
467 2008-08-26 Marek Habersack <mhabersack@novell.com>
469 * TemplateControlParser.cs: added support for the VirtualPath
470 attribute of the Reference directive.
471 In the 2.0 profile, all the references are compiled using
472 BuildManager.GetCompiledType now.
474 2008-08-13 Marek Habersack <mhabersack@novell.com>
476 * TemplateBuilder.cs: use a generic List to store the bindings on
479 2008-08-08 Marek Habersack <mhabersack@novell.com>
481 * StateManagedCollection.cs: set all the contained objects state
482 to dirty in SetDirty.
484 2008-07-28 Marek Habersack <mhabersack@novell.com>
486 * MasterPage.cs: decouple processing of content templates in
487 CreateMasterPage from checking whether all the content place
488 holder ids are defined. Fixes bug #325114
490 2008-07-22 Gert Driesen <drieseng@users.sourceforge.net>
492 * LosFormatter.cs (Deserialize): When stream is non-seekable, do not
493 attempt to use properties that require a seekable stream. Based on
494 patch provided by Dean Brettle (dean@brettle.com). Fixes bug #411115.
496 2008-07-16 Rodrigo Kumpera <rkumpera@novell.com>
497 * DataBoundLiteralControl.cs: Lazily create staticLiterals.
499 * DataBoundLiteralControl.cs (Render): Don't generate
500 an intermediate string, write the content directly.
502 2008-07-14 Marek Habersack <mhabersack@novell.com>
504 * Page.cs: fix the failing tests by moving the form
505 RaisePostBackEvent code up in RaisePostBackEvents, so that
506 Validate () isn't called together with the registered post back
509 2008-07-10 Roei Erez <roeie@mainsoft.com>
511 * ClientScriptManager.cs: Bug in javacript code, usind window scope instead of document.
513 2008-07-11 Marek Habersack <mhabersack@novell.com>
515 * Control.cs: if adapter exists for the given control, use it for
516 rendering. Patch from Christian Hergert
517 <christian.hergert@gmail.com>, thanks!
519 2008-07-10 Roei Erez <roeie@mainsoft.com>
521 * Page.cs: Differentiate between IPostBackEventHandler that was registered by the user,
522 and one that was given as post parameter, so that in case ther post data may trigger both
523 IPostBackEventHandler and IPostBackDataHandler, only the IPostBackDataHandler is actually triggered.
525 2008-07-09 Rodrigo Kumpera <rkumpera@novell.com>
527 * DataBinder.cs (GetDataItem): Commited stupid code.
529 2008-07-09 Rodrigo Kumpera <rkumpera@novell.com>
531 * DataBinder.cs (GetDataItem): Use a per-thread cache for
534 2008-07-02 Rodrigo Kumpera <rkumpera@novell.com>
536 * Control.cs: Fix the lookup in ResolveAdapter that I
537 broke in the previous change.
539 2008-07-02 Rodrigo Kumpera <rkumpera@novell.com>
541 * Control.cs: Optimize ResolveAdapter a bit more.
543 2008-07-02 Rodrigo Kumpera <rkumpera@novell.com>
545 * Control.cs: Optimize the Adapter property and ResolveAdapter a bit.
547 2008-07-01 Rodrigo Kumpera <rkumpera@novell.com>
549 * TemplateControl.cs: Kill a foreach loop.
551 2008-06-30 Marek Habersack <mhabersack@novell.com>
553 * TemplateParser.cs: use atomic incrementation for automatic class
554 name creation to avoid Monitor Enter/Exit.
556 * UserControlParser.cs: hush the warnings and remove unnecessary
559 * ControlCachePolicy.cs, PageParser.cs, ControlBuilder.cs,
560 TemplateParser.cs, SimpleWebHandlerParser.cs, TemplateControl.cs,
561 ApplicationFileParser.cs: hush the warnings
563 * Page.cs: Context is protected internal in .NET 3.5
564 Initialize encryption IVs before returning the transform.
566 * Control.cs: in 2.0 we should return the context associated with
567 the current page. In 1.0 we ignore the never set field _context
568 and keep walking up the parent chain. Also, Context is protected
572 2008-06-27 Zoltan Varga <vargaz@gmail.com>
574 * Control.cs (ResolveAdapter): Avoid calling the Context property getter
577 * TemplateControl.cs: Avoid collecting the automatic event info for each
580 2008-06-18 Juraj Skripsky <js@hotfeet.ch>
582 * Page.cs (ProcessException): Throw HttpUnhandledException instead of
583 TargetInvocationException to match .NET. Fixes bug #400482.
585 2008-06-18 Marek Habersack <mhabersack@novell.com>
587 * BasePartialCachingControl.cs: implemented the CachePolicy
590 * UserControl.cs: implemented the CachePolicy property.
592 * ControlCachePolicy.cs: implemented missing properties and
595 2008-06-11 Marek Habersack <mhabersack@novell.com>
597 * TemplateControl.cs: make sure 'type' isn't null in LoadControl
598 before attempting to use it.
600 2008-06-10 Noam Lampert <noaml@mainsoft.com>
602 * TemplateControl.jvm.cs: Don't assume that controls containing page-specific
603 callbacks (e.g. Page_LoadComplete) are necessarily Page derivatives.
605 2008-06-04 Juraj Skrispky <js@hotfeet.ch>
607 * PageParser.cs (ProcessMainAttributes): Take value of
608 enableEventValidation from web.config into account. Fixes bug #397099.
610 2008-06-04 Marek Habersack <mhabersack@novell.com>
612 * PageHandlerFactory.cs: this class should be public. Fixes bug
615 2008-05-30 Marek Habersack <mhabersack@novell.com>
617 * DataBindingCollection.cs, ExpressionBindingCollection.cs: do not
618 use synthetized event accessors (to avoid locks).
620 2008-05-28 Marek Habersack <mhabersack@novell.com>
622 * ReadOnlyDataSourceView.cs: added. Patch contributed by James
623 Fitzsimons <james.fitzsimons@gmail.com>, thanks!
625 * TemplateParser.cs: added support for #pragma checksum
627 2008-05-19 Juraj Skripsky <js@hotfeet.ch>
629 * Page.cs (ValidateCollection): Don't check _eventValidation, it
630 has nothing to do with the validators.
632 2008-05-16 Marek Habersack <mhabersack@novell.com>
634 * StateManagedCollection.cs: make {Save,Load}ViewState simpler.
636 2008-05-15 Marek Habersack <mhabersack@novell.com>
638 * StateManagedCollection.cs: do not query for index of an item in
641 2008-05-07 Marek Habersack <mhabersack@novell.com>
643 * TemplateParser.cs: added a stack of include directories, to
644 properly resolve file relative paths when the #include file=""
645 directive is used. Fixes bug #324536
647 2008-05-05 Igor Zelmanovich <igorz@mainsoft.com>
649 * HiddenFieldPageStatePersister.cs: add TARGET_J2EE def
650 * Page.cs: remove TARGET_J2EE def
651 * Page.jvm.cs: add new internal api such PageState and FacesContext.
652 all those changes make PageAdapter works with JSF under TARGET_J2EE.
654 2008-04-24 Marek Habersack <mhabersack@novell.com>
656 * RootBuilder.cs: when registering a custom control, add its path
657 to the parser dependencies. Fixes bug #377915
658 In the 2.0 profile, if the custom control being used was
659 registered from web.config and is found in the same directory what
660 the file being parsed, throw an exception. This behavior matches
663 * TemplateParser.cs: added new VirtualPath property, which stores
664 the virtual path to the file being parsed.
666 * PageParser.cs: set the VirtualPath property in the 2.0 profile
667 when constructing the parser.
669 2008-04-23 Marek Habersack <mhabersack@novell.com>
671 * TemplateParser.cs: constructs the VirtualPath using the current
672 parser's BaseVirtualDirectory. Fixes bug #381715
674 2008-04-19 Marek Habersack <mhabersack@novell.com>
676 * SimpleWebHandlerParser.cs: refactoring - move code between
677 constructors, reader should be set before initializing the rest of
678 the object. Fixes bug #381364
680 * TemplateParser.cs: RegisterCustomControl must use absolute
681 virtual path when querying the virtual path provider for
682 file. Fixes bug #381364
684 2008-04-18 Marek Habersack <mhabersack@novell.com>
686 * ObjectStateFormatter.cs: ObjectFormatter.WriteObject should not
687 use a converter if it can't convert _from_ the type of the object
688 being written to the stream. Fixes issues with serializing, e.g.,
691 2008-04-14 Marek Habersack <mhabersack@novell.com>
693 * SimpleWebHandlerParser.cs, TemplateParser.cs, AspGenerator.cs:
694 make sure streams are disposed the way they should be.
696 2008-04-10 Marek Habersack <mhabersack@novell.com>
698 * Control.cs: refactoring - IdSeparator property is internally
701 2008-04-08 Dean Brettle <dean@brettle.com>
703 * Page.cs (PageAdapter): fixed cast error when a ControlAdapter that
704 wasn't a PageAdapter was used.
706 2008-04-08 Marek Habersack <mhabersack@novell.com>
708 * TemplateParser.cs: CodeFile/Src handling uses
709 HostingEnvironment.VirtualPathProvider to check for file
712 2008-04-02 Marek Habersack <mhabersack@novell.com>
714 * Page.cs: make SetContext internal (used from tests).
716 2008-04-01 Marek Habersack <mhabersack@novell.com>
718 * TemplateControl.cs: ParseControl implemented for the 2.0
721 * UserControlParser.cs: added support for compiling controls
722 without input file (e.g. from TemplateControl.ParseControl).
724 * TemplateParser.cs: implemented VirtualPathProvider support for
725 registering UserControls.
726 If there is no input file path provided, auto-generate the class
727 name in the ClassName property getter.
729 2008-03-27 Marek Habersack <mhabersack@novell.com>
731 * Page.cs: added an implementation of the ClientQueryString
734 2008-03-13 Marek Habersack <mhabersack@novell.com>
736 * TemplateParser.cs: HttpApplication.BinaryDirectories property no longer
737 exists, use HttpApplication.BinDirectory instead.
739 2008-03-09 Dean Brettle <dean@brettle.com>
741 * Page.cs (SavePageControlState, LoadPageControlState): save/load
742 adapter state in 2.0 profile.
744 * Page.cs (CreateHtmlTextWriter): call Browser.CreateHtmlTextWriter()
747 * Page.cs (RenderPage): call CreateHtmlTextWriter() to get the writer
750 * Page.cs (DeterminePostBackMode, InitOutputCache,
751 RenderClientScriptFormDeclaration, InternalProcessRequest,
752 PageStatePersister): added support for PageAdapters.
754 * Control.cs (Adapter, ResolveAdapter): implemented. Adapter calls
755 ResolveAdapter and remembers result. ResolveAdapter checks for adapters
756 of the Type hierarchy until it finds one.
758 * Control.cs (SaveViewStateRecursive, LoadViewStateRecursive): save/load
759 adapter state in 2.0 profile.
761 * HtmlTextWriter.cs (BeginRender, EndRender): added empty virtual methods
762 required by 2.0 profile. These are called by corresponding methods of
763 System.Web.UI.Adapters.ControlAdapter.
765 * Page.cs, Control.cs: don't access Request.Browser if it couldn't have
766 any adapters/writers because there are no files in App_Browsers/.
768 2008-03-09 Marek Habersack <mhabersack@novell.com>
770 * TemplateControlParser.cs: 2.0 allows controls with extensions
771 different than .ascx, as long as they derive from
772 System.Web.UI.UserControl and a build provider is available for
775 * TemplateParser.cs: user controls must derive from
776 System.Web.UI.UserControl.
778 * SimpleWebHandlerParser.cs: if the input file doesn't contain the
779 correct directive string (tag name is empty for the <%@ %> tag),
780 use the default directive.
782 2008-02-28 Marek Habersack <mhabersack@novell.com>
784 * TemplateControlParser.cs: when registering a control, check for
785 the .ascx extension case-insensitively. Fixes bug #364995
787 2008-02-28 Igor Zelmanovich <igorz@mainsoft.com>
790 fixed exception propagation in case of multiple control with same id
793 2008-02-26 Marek Habersack <mhabersack@novell.com>
795 * TemplateParser.cs: a better error message.
797 * ControlBuilder.cs: if one of the parent builders is a
798 TemplateBuilder, use it as the naming container and use its
799 ContainerType property as the value of the BindingContainerType
802 2008-02-25 Marek Habersack <mhabersack@novell.com>
804 * ControlBuilder.cs: correctly chain up to the parent builder when
805 looking for the naming container.
807 2008-02-21 Marek Habersack <mhabersack@novell.com>
809 * ControlBuilder.cs: introduced a new internal property -
810 MyNamingContainer used by the public properties
811 NamingContainerType and BindingContainerType. This simplifies the
812 code in the latter property, as the binding container type must
813 almost always be the same as the naming container type. The only
814 exception is when we're inside a content builder, in which case we
815 return the parent's BindingContainerType. Fixes bug #363665
817 2008-02-12 Vladimir Krasnov <vladimirk@mainsoft.com>
819 * Page.jvm.cs: StateSerializer.readExternal and writeExternal fixed
820 to support viewstate encryption
822 2008-02-12 Vladimir Krasnov <vladimirk@mainsoft.com>
824 * ObjectStateFormatter.cs: revert of 91820
826 2008-02-08 Marek Habersack <mhabersack@novell.com>
828 * SimpleWebHandlerParser.cs: always return a non-null value from
829 the Program property.
831 * TemplateParser.cs: make sure that the Src attribute is treated
832 correctly in the 2.0 profile. Fixes bug #319016
834 2008-02-07 Vladimir Krasnov <vladimirk@mainsoft.com>
836 * Page.jvm.cs: added StateSerializer class, fixed processSaveState,
839 2008-02-07 Marek Habersack <mhabersack@novell.com>
841 * PageHandlerFactory.cs: call PageParser.GetCompiledPageInstance
842 only - that method calls the appropriate APIs for 1.1 and 2.0
845 2008-02-06 Vladimir Krasnov <vladimirk@mainsoft.com>
847 * Control.cs: fixed ResolveClientUrlInternal for portal url prefixes
849 2008-02-04 Marek Habersack <mhabersack@novell.com>
851 * SimpleWebHandlerParser.cs: use WebEncoding.FileEncoding when
852 reading the source file.
854 2008-01-30 Igor Zelmanovich <igorz@mainsoft.com>
856 * ObjectStateFormatter.cs:
857 ensure ReaderContext.GetCache called with positive arg to prevent from
858 ArgumentOutOfRange being thrown.
860 2008-01-29 Igor Zelmanovich <igorz@mainsoft.com>
862 * ObjectStateFormatter.cs: has public constructor.
864 2008-01-29 Vladimir Krasnov <vladimirk@mainsoft.com>
866 * Page.cs: performance optimization of DeterminePostBackMode
868 2008-01-24 Marek Habersack <mhabersack@novell.com>
870 * PageThemeFileParser.cs: the DefaultBaseType property removed.
872 * ApplicationFileParser.cs: added constructor which takes a
874 Removed the DefaultBaseType property.
875 Added the Reader property.
877 * MasterPage.cs: use BuildManager to create page instance.
879 * WebHandlerParser.cs: added a compatibility constructor.
881 * TemplateControl.cs: GetTypeFromControlPath uses
882 BuildManager.GetCompiledType for the 2.0+ profile.
884 * WebServiceParser.cs: added a compatibility internal
887 * SimpleWebHandlerParser.cs: properly treat context and
888 physicalPath parameters to the constructor, especially for the
889 2.0+ profile where they are obsolete.
890 Dependencies are added using virtual paths.
892 * PageThemeParser.cs: DefaultBaseType property removed.
894 * Page.cs: Style sheets and themes are compiled using
896 Previous page instance is compiled using BuildManager for the 2.0+
899 * MasterPageParser.cs: Use BuildManager to create instance and
901 Dependencies are added using virtual paths.
903 * SimpleHandlerFactory.cs: Use
904 BuildManager.CreateInstanceFromVirtualPath for the 2.0+ profile.
906 * UserControlParser.cs: if the parser is created using a
907 TextReader, take the input file path from the virtual path.
908 Added a new internal constructor which takes both a TextReader and
909 an inputFile parameters.
910 Set base type to the default in the constructors.
911 Use virtual path when setting master page dependency.
912 DefaultBaseTypename doesn't use a literal string in the 2.0+
913 profile, it gets the base type from the application
916 * TemplateControlParser.cs: Dependency on a control/page mentioned
917 in the Reference directive is registered using the virtual path.
918 TextReader property is an override now.
920 * TemplateParser.cs: RegisterCustomControl adds a dependency on
921 the virtual path, not the physical path. The custom control is
922 compiled using BuildManager.GetCompiledType for the 2.0+ profile.
923 RegisterNamespace does not add a dependency on the assembly.
924 LoadType does not add a dependency on the assembly.
925 Legacy Src attribute is handled properly now.
926 Dependency on code-behind (Src and CodeFile directive attributes)
927 is added using the code-behind file's virtual path.
928 GetAssemblyFromSource adds a dependency using the virtual path.
929 DefaultBaseType implemented here, using DefaultBaseTypeName which
930 is implemented in the descendant classes.
931 Added internal CodeBehindSource property, used by build
933 ClassName property works correctly if inputFile is missing
934 (e.g. when the parser has been created using a TextReader)
935 Added a virtual internal property TextReader to return the readed
936 which has been used to create the parser instance.
938 * PageHandlerFactory.cs: GetHandler uses
939 BuildManager.CreateInstanceFromVirtualPath for the 2.0+ profile.
941 * PageParser.cs: set the default base type in the constructors.
942 If the input file is not passed to a constructor, take the input
943 file path from the virtual path.
944 GetCompiledPageInstance uses BuildManager.CreateInstanceFromVirtualPath
945 for the 2.0+ profile.
946 MasterPage dependency is set using the virtual path of the master
948 MasterPage is compiled into a type using BuildManager.GetCompiledType.
949 GetCompiledPageType uses BuildManager.GetCompiledType for the 2.0
951 DefaultBaseType override removed, it is implemented in the
952 TemplateParser class.
953 DefaultBaseTypename doesn't use a literal string in the 2.0+
954 profile, it gets the base type from the application
957 2008-01-17 Igor Zelmanovich <igorz@mainsoft.com>
959 * Control.cs: fix ResolveUrl for some cases.
961 2008-01-17 Igor Zelmanovich <igorz@mainsoft.com>
963 * Control.cs: consider changes in BaseCompiler.cs.
965 2008-01-14 Igor Zelmanovich <igorz@mainsoft.com>
967 * Control.cs: fixed ResolveClientUrl.
968 use Context.FilePath instead of Context.CurrentExecutionPath for
969 resolvint app. releative path.
971 2008-13-01 Vladimir Krasnov <vladimirk@mainsoft.com>
973 * Page.jvm.cs: optimized SetupResponseWriter, fixed getChildCount and
975 * Control.jvm.cs: fixed getChildCount method
977 2008-01-09 Igor Zelmanovich <igorz@mainsoft.com>
980 * ClientScriptManager.cs:
983 2008-01-07 Igor Zelmanovich <igorz@mainsoft.com>
985 * Page.cs: added internal API
986 * IScriptManager.cs: added new internal interface.
988 2008-01-07 Igor Zelmanovich <igorz@mainsoft.com>
990 * ClientScriptManager.cs:
994 for TARGET_J2EE ensure page life cycle is completed in CrossPagePostBack.
996 2008-01-07 Marek Habersack <mhabersack@novell.com>
998 * TemplateParser.cs: handle legacy 'src' attribute in the 2.0
999 profile in the correct way. Fixes bug #319016
1000 BaseType is global by default.
1002 2008-01-02 Marek Habersack <mhabersack@novell.com>
1004 * TemplateParser.cs: added a wrapper class for server-side script
1005 snippets, to keep track of locations.
1006 Store main directive location for later use in DirectiveLocation
1009 2008-01-01 Igor Zelmanovich <igorz@mainsoft.com>
1012 make SubmitDisabledControls and SetFocus works in multiform environment
1014 2007-12-31 Vladimir Krasnov <vladimirk@mainsoft.com>
1016 * Page.cs: fixed thread abort handling in ProcessRequest
1018 2007-12-27 Marek Habersack <mhabersack@novell.com>
1020 * TemplateParser.cs: check for base type globality also when the
1021 default type is used.
1023 2007-12-26 Igor Zelmanovich <igorz@mainsoft.com>
1027 make Trace considers control state info.
1029 2007-12-20 Igor Zelmanovich <igorz@mainsoft.com>
1031 * Page.cs: refactoring:
1032 split method such InternalProcessRequest to several methods.
1033 It is required for implementing alternative hosting under TARGET_J2EE.
1035 2007-12-20 Marek Habersack <mhabersack@novell.com>
1037 * ClientScriptManager.cs: write hidden fields inside a div only in
1038 the 2.0 profile. Fixes bug #349991
1040 2007-12-20 Igor Zelmanovich <igorz@mainsoft.com>
1044 * ClientScriptManager.cs:
1045 refactoring: removed Page.LifeCycle internal API,
1046 used Control's stateMask flag instead.
1048 2007-12-17 Marek Habersack <mhabersack@novell.com>
1050 * TemplateParser.cs: support the 'Src' directive attribute on 2.0
1051 profile as well as on the 1.1 one. Fixes bug #319016
1053 2007-12-16 Igor Zelmanovich <igorz@mainsoft.com>
1055 * Page.cs: on CrossPagePostBack previous page is processed by Execute API,
1056 that allow CurrentHandler property works correctly during Page processing.
1058 2007-12-15 Marek Habersack <mhabersack@novell.com>
1060 * SimpleWebHandlerParser.cs: Default value for Debug is taken from
1061 the compilation config section.
1063 * TemplateParser.cs: Added LoadConfigDefaults here, loads default
1064 value for Debug from the compilation section.
1065 Cache CompilationConfig in methods where it is accessed more than
1067 Default value for Debug in ProcessMainAttributes is taken from the
1070 * PageParser.cs, TemplateControlParser.cs: LoadPagesConfigDefaults
1071 renamed to LoadConfigDefaults.
1073 2007-12-13 Marek Habersack <mhabersack@novell.com>
1075 * ClientScriptManager.cs, MasterPageParser.cs, Control.cs,
1076 Page.cs: speed optimization - use String.Concat instead of
1077 String.Format in some cases.
1079 2007-12-13 Igor Zelmanovich <igorz@mainsoft.com>
1082 - When Transfer/Execute is called with preserveForm=true, transferred
1083 page is not processed as PostBack but form collection is preserved.
1084 - When Execute is called more than once, PreviousPage property is set
1087 2007-11-22 Marek Habersack <mhabersack@novell.com>
1089 * OutputCacheParameters.cs: added the VaryByContentEncoding
1092 * Page.cs: added new InitCache overload.
1094 * TemplateParser.cs: added support for the VaryByContentEncodings
1095 attribute of the OutputCache directive.
1097 2007-11-19 Vladimir Krasnov <vladimirk@mainsoft.com>
1099 * Page.jvm.cs: IsMultiForm optimized, cached configuration call
1101 2007-11-14 Marek Habersack <mhabersack@novell.com>
1103 * SimpleWebHandlerParser.cs: expect GetTypeFromBin to be called
1104 with a fully qualified type name and act accordingly. Fixes bug
1107 2007-11-13 Igor Zelmanovich <igorz@mainsoft.com>
1109 * ClientScriptManager.cs:
1110 Ensure a script resource is included once in multi form environment.
1112 2007-11-07 Igor Zelmanovich <igorz@mainsoft.com>
1114 * PageParser.cs: fixed initial value of tracemode.
1116 2007-11-07 Igor Zelmanovich <igorz@mainsoft.com>
1118 * Control.cs: removes '#define MONO_TRACE'.
1119 It allows to run MONO in release mode without supplementary trace info.
1121 2007-11-07 Igor Zelmanovich <igorz@mainsoft.com>
1123 * Page.cs: added missing trace information for NET_2_0
1125 2007-11-06 Igor Zelmanovich <igorz@mainsoft.com>
1129 affects TARGET_J2EE only:
1130 validators state (isValid) is restored on GetBack.
1132 2007-11-06 Marek Habersack <mhabersack@novell.com>
1134 * Page.cs: formatting
1136 2007-11-05 Marek Habersack <mhabersack@novell.com>
1138 * ClientScriptManager.cs: EventStateFieldName is a constant now.
1140 * Page.cs: use full control ids when processing post data. Fixes
1143 2007-11-03 Marek Habersack <mhabersack@novell.com>
1145 * Control.cs: need to append a "/" to TemplateSourceDirectory
1146 before calling VirtualPathUtility.Combine, in order to get the
1147 correct physical path to the requested file. Combine looks for the
1148 last occurrence of "/" to determine where the relative paths
1151 * MinimizableAttributeTypeConverter.cs: don't throw on null value,
1152 call the base class method in that case.
1154 * SimpleWebHandlerParser.cs: don't NRE on a null assembly passed
1156 AddAssemblyByName must check the return value of
1157 Assembly.LoadWithPartialName, as the method doesn't throw on
1158 missing assembly, it returns null instead.
1160 * ClientScriptManager.cs: eventValidationArray is serialized in an
1161 optimized fashion, so that its serialized form occupies only as
1162 many slots as were actually used. It may result in that an array
1163 of 0 entries will be serialized and then
1164 restored. EnsureEventValidationArray takes that into consideration
1167 2007-11-01 Marek Habersack <mhabersack@novell.com>
1169 * Page.cs, ObjectStateFormatter.cs: use the new
1170 MachineKeySectionUtils class wherever necessary.
1172 2007-10-29 Marek Habersack <mhabersack@novell.com>
1174 * TemplateParser.cs: add the file pointed to by the Src or
1175 CodeFile attributes to the list of page cache dependencies.
1177 * PageParser.cs, UserControlParser.cs: Add the MasterPage file to
1178 the list of page cache dependencies.
1180 * MasterPageParser.cs: add the source pointed to by VirtualPath to
1181 the list of cache dependencies.
1183 2007-10-23 Marek Habersack <mhabersack@novell.com>
1185 * ClientScriptManager.cs: added two constants to define start/end
1186 script block comments rendering. 1.1 uses HTML comments, while 2.0
1189 * Page.cs: render script blocks with start/end comments taken from
1190 the ClientScriptManager constants above.
1192 2007-10-17 Marek Habersack <mhabersack@novell.com>
1194 * TemplateParser.cs: removed code that ignored the Async and
1195 AsyncTimeout attributes.
1197 * PageParser.cs: handle the Async and AsyncTimeout attributes
1198 here. Fixes bug #325450
1200 * Control.cs: properly configure control visibility in
1201 PreRenderRecursiveInternal. The check must be made by looking at
1202 the Visible value, not at the flags directly. Fixes bug #325303
1204 2007-10-03 Marek Habersack <mhabersack@novell.com>
1206 * Page.cs: complete implementation of ValidationGroups. Fixes bug
1207 #330423. Patch from Juraj Skripsky <juraj@hotfeet.ch>, thanks!
1209 2007-10-02 Marek Habersack <mhabersack@novell.com>
1211 * SimpleWebHandlerParser.cs: fix the way types are loaded from
1212 top-level assemblies.
1214 2007-10-01 Marek Habersack <mhabersack@novell.com>
1216 * Page.cs: do not set IsPostBack to true if we're in transfer from
1217 another page. Fixes bug #329341
1219 2007-09-18 Marek Habersack <mhabersack@novell.com>
1221 * TemplateParser.cs: VaryByControl OutputCache attribute is
1222 allowed for both controls and pages in 2.0.
1224 2007-09-11 Marek Habersack <mhabersack@novell.com>
1226 * WebServiceParser.cs: inputFile is a virtual path to the service,
1227 not a physical one in GetCompiledType.
1229 2007-09-05 Marek Habersack <mhabersack@novell.com>
1231 * RootBuilder.cs: make Foundry settable, but protect the backing
1232 field from being set to null.
1234 2007-09-04 Marek Habersack <mhabersack@novell.com>
1236 * TemplateParser.cs: don't optimize for case when 'name' is a full
1237 assembly name in AddAssemblyByName. Assembly.Load triggers the
1238 AssemblyResolve event on the current AppDomain if an assembly
1239 isn't found and we use this mechanism to map names like "App_Code"
1240 or "App_GlobalResources" to the real names of those dynamic
1243 2007-09-02 Igor Zelmanovich <igorz@mainsoft.com>
1245 * Page.jvm.cs: implemented IsMultiForm property to take
1246 the value from configuration.
1248 2007-08-30 Igor Zelmanovich <igorz@mainsoft.com>
1250 * Page.cs: fixed MaintainScrollPositionOnPostBack feature.
1252 2007-08-29 Marek Habersack <mhabersack@novell.com>
1254 * TemplateBuilder.cs: check for and store for later use the
1255 TemplateContainerAttribute. Added a nullable property
1256 TemplateInstance to return the value of the attribute.
1258 2007-08-29 Vladimir Krasnov <vladimirk@mainsoft.com>
1260 * Control.cs: optimized performance in InitControlsCache()
1262 2007-08-28 Marek Habersack <mhabersack@novell.com>
1264 * Page.cs: The following property values are returned from cached
1265 fields instead of looking them up on Context: Application,
1266 Response, Request, Cache (as determined by the tests).
1267 Added a backing field for the Session property.
1268 Session doesn't throw an exception when Context is null - it
1269 silently ignores it and throws a session not available exception.
1270 _context is never used directly, the Context property is used
1271 instead. Fixes bug #82606
1273 2007-08-23 Juraj Skripsky <js@hotfeet.ch>
1275 * Control.cs (InitControlsCache): Make the hash table case insensitive to
1276 make FindControl compatible with MS.net again. Add LAMESPEC note.
1278 2007-08-23 Marek Habersack <mhabersack@novell.com>
1280 * SimpleWebHandlerParser.cs: use
1281 HttpApplication.BinDirectoryAssemblies in AddAssembliesInBin and
1282 LoadAssemblyFromBin.
1283 Restore the old logic in GetTypeFromBin, also use
1284 HttpApplication.BinDirectoryAssemblies there.
1286 * TemplateParser.cs: use HttpApplication.BinDirectories to
1287 interate over the list of bin dirs.
1288 Use HttpApplication.BinDirectoryAssemblies in AddAssembliesInBin.
1290 2007-08-23 Igor Zelmanovich <igorz@mainsoft.com>
1292 * ClientScriptManager.cs: encode values of hidden fields.
1294 2007-08-21 Marek Habersack <mhabersack@novell.com>
1296 * SimpleWebHandlerParser.cs: use HttpApplication.PrivateBinPath
1297 enumerator when loading or adding assemblies from binary
1298 directories. Remove unused PrivateBinPath property.
1300 * ControlBuilder.cs: remove unused PrivateBinPath property.
1302 * TemplateParser.cs: use HttpApplication.PrivateBinPath when
1303 adding assemblis and loading types.
1305 2007-08-21 Igor Zelmanovich <igorz@mainsoft.com>
1307 * ClientScriptManager.cs: fixed onsubmit script for MultiForm environment
1309 2007-08-20 Marek Habersack <mhabersack@novell.com>
1311 * MasterPage.cs: use the place holder IDs collection instead of
1312 the placholder collection to see if we have the place holder in
1313 the master page. Fixes bug #82485.
1315 * MasterPageParser.cs: store the content place holder ids in the
1316 internal cache to gain access to them when needed.
1318 2007-08-19 Vladimir Krasnov <vladimirk@mainsoft.com>
1320 * MasterPageParser.jvm.cs: optimized GetDirectory call
1321 * PageTheme.cs: optimized string formatting in CreateSkinKey
1323 2007-08-19 Vladimir Krasnov <vladimirk@mainsoft.com>
1325 * Page.cs: ResetEventValidationState call moved back to
1326 InternalProcessRequest
1328 2007-08-19 Marek Habersack <mhabersack@novell.com>
1330 * Page.cs: make sure not to ever pass a null value as the value
1331 of the postCollection parameter to control's LoadPostData. The
1332 ProcessPostData's 'data' parameter is no longer passed to
1333 LoadPostData, instead we pass _requestValueCollection or an empty
1334 collection if it is null. The controls should always get all the
1335 request data, no matter if the 'data' parameter is null or
1336 not. Possible fix for bug #82477.
1338 2007-08-18 Gert Driesen <drieseng@users.sourceforge.net>
1340 * MasterPage.cs: Include relative URL of MasterPage in exception
1343 2007-08-18 Marek Habersack <mhabersack@novell.com>
1345 * MasterPage.cs: if a ContentPlaceHolder ID is not found in the
1346 associated MasterPage, throw an exception. This is compatible with
1347 what MS.NET does. Fixes bug #82447.
1349 2007-08-15 Igor Zelmanovich <igorz@mainsoft.com>
1352 - avoid NullRefferenceException from Title property
1353 when Page does not have <head runat="server>,
1354 - scriptManager.ResetEventValidationState () is called from Render.
1355 It allows multiply calling of RenderControl returns the same output.
1357 2007-08-14 Vladimir Krasnov <vladimirk@mainsoft.com>
1359 * Control.cs: optimized GetDirectory call in ResolveClientUrl
1361 2007-08-14 Vladimir Krasnov <vladimirk@mainsoft.com>
1363 * ClientScriptManager.cs: otimized string.Replace in GetScriptLiteral
1365 2007-08-14 Marek Habersack <mhabersack@novell.com>
1367 * Control.cs: include the actual exception when reporting control
1370 2007-08-10 Gert Driesen <drieseng@users.sourceforge.net>
1372 * PageParser.cs: Replace enableSessionState and readOnlySessionState
1373 bools with enum backed field. Move 1.0 profile code for checking value
1374 of EnableSessionState pages config to PagesConfigurationHandler.
1375 Fixes bug #82392 for 1.0 profile.
1377 2007-08-09 Marek Habersack <mhabersack@novell.com>
1379 * PageParser.cs: honor web.config enableSessionState
1380 ReadOnly setting instead of overwriting based on default value for
1381 page directive EnableSessionState. Patch from Joel Reed
1382 <joelwreed@comcast.com>, thanks! Fixes bug #82392
1384 2007-08-09 Vladimir Krasnov <vladimirk@mainsoft.com>
1386 * CssStyleCollection.cs: used ListDictionary instead of
1387 HybridDictionary as underlaying data structure
1389 2007-08-07 Vladimir Krasnov <vladimirk@mainsoft.com>
1391 * Control.cs: refactoring of LookForControlByName with caching
1393 2007-08-06 Igor Zelmanovich <igorz@mainsoft.com>
1395 * DataSourceView.cs: fixed:
1396 view raises onchange event when datasource is chenged.
1398 2007-08-06 Igor Zelmanovich <igorz@mainsoft.com>
1400 * Control.cs: fixed: control ID management.
1402 2007-08-06 Igor Zelmanovich <igorz@mainsoft.com>
1404 * Control.cs: refactoring: code formatting only.
1406 2007-08-05 Vladimir Krasnov <vladimirk@mainsoft.com>
1408 * HtmlTextWriter.cs: performance refactoring, optimized AddAttribute
1409 overloads, used StringComparer for tag, styles and attrs hashtables
1410 fixed AddAttribute, id attr should not be encoded by default
1412 2007-07-31 Vladimir Krasnov <vladimirk@mainsoft.com>
1414 * Control.cs: fixed AppRelativeTemplateSourceDirectory that should
1415 depend on AppRelativeVirtualPath
1416 * Control.jvm.cs: fixed TemplateSourceDirectory that should depend on
1417 AppRelativeTemplateSourceDirectory
1419 2007-07-30 Vladimir Krasnov <vladimirk@mainsoft.com>
1421 * Page.jvm.cs: fixed RenderResponse property, should not fail in no
1424 2007-07-29 Igor Zelmanovich <igorz@mainsoft.com>
1426 * Page.cs: added TARGET_J2EE variable at client side.
1428 2007-07-24 Igor Zelmanovich <igorz@mainsoft.com>
1430 * ClientScriptManager.cs:
1433 added new internal property IsMultiForm which returns false under
1434 !TARGET_J2EE (Portal). All client scripts are rendered
1435 according this property.
1437 2007-07-24 Igor Zelmanovich <igorz@mainsoft.com>
1439 * ClientScriptManager.cs: fixed: GetCallbackEventReference method.
1441 2007-07-23 Igor Zelmanovich <igorz@mainsoft.com>
1443 * Page.cs: refactoring: __doPostBack client script
1444 It is a part of adapting System.Web to work whith
1445 System.Web.Extensions (AJAX).
1447 2007-07-23 Konstantin Triger <kostat@mainsoft.com>
1449 * Control.cs: calculate AppRelativeTemplateSourceDirectory from HttpContext
1450 when control is not in control collection.
1452 2007-07-22 Konstantin Triger <kostat@mainsoft.com>
1455 TemplateControl.cs: base AppRelativeTemplateSourceDirectory property
1456 on TemplateControl; implement special behavior of Control.TemplateControl for
1457 TemplateControl instances.
1459 2007-07-18 Marek Habersack <mhabersack@novell.com>
1461 * ControlBuilder.cs: on the 2.0 profile BindingContainerType
1462 returns the associated control's base type when parent builder is
1463 absent instead of typeof (Control). It returns typeof (Control) if
1464 the parent builder type is determined to be a
1465 NamingContainer. This makes the generated code match the MS.NET
1466 output. Fixes bug #82119.
1468 2007-07-18 Igor Zelmanovich <igorz@mainsoft.com>
1471 * ClientScriptManager.cs:
1472 scripts, registered using RegisterClientScriptInclude,
1473 RegisterClientScriptResource and RegisterClientScriptBlock appear on Page
1474 in order matches the order in which the scripts were registered.
1476 2007-07-16 Igor Zelmanovich <igorz@mainsoft.com>
1478 * Control.cs: fixed EnsureID.
1479 ID is not assigned, if already was set.
1481 2007-07-12 Vladimir Krasnov <vladimirk@mainsoft.com>
1483 * ClientScriptManager.cs: refactored event validation data structure
1484 * Page.cs: fixed InternalProcessRequest, event validation list should
1485 be cleared before render
1487 2007-06-24 Vladimir Krasnov <vladimirk@mainsoft.com>
1489 * ObjectStateFormatter.cs: optimized loops in array formatters
1491 2007-07-03 Marek Habersack <mhabersack@novell.com>
1493 * SimpleWebHandlerParser.cs: improve directive
1494 pre-parsing. Directives can span multiple lines, they don't have
1495 to start at the beginning of the line and any content can follow
1496 them after the directive end. Also, do not trim the input since
1497 that might affect program content. Fixes bug #81993.
1499 2007-07-02 Marek Habersack <mhabersack@novell.com>
1501 * Control.cs: make sure TemplateSourceDirectory returns meaningful
1502 results in the 1.1 profile. Fixes bug #81950.
1504 2007-06-24 Vladimir Krasnov <vladimirk@mainsoft.com>
1506 * ObjectStateFormatter.cs: WriterContext.RegisterCache, refactored out
1509 2007-06-20 Marek Habersack <mhabersack@novell.com>
1511 * BasePartialCachingControl.cs: use HttpRuntime.InternalCache to
1512 keep the private entries.
1514 2007-06-18 Igor Zelmanovich <igorz@mainsoft.com>
1516 * Control.cs: revised the changes from r79982.
1518 2007-06-18 Igor Zelmanovich <igorz@mainsoft.com>
1520 * Control.cs: optimized flow in ResolveClientUrl.
1522 2007-06-15 Gert Driesen <drieseng@users.sourceforge.net>
1524 * ObjectStateFormatter.cs: Avoid NRE in Serialize. Fixes bug #81851.
1526 2007-06-09 Marek Habersack <mhabersack@novell.com>
1528 * TemplateControl.cs: make sure TemplateControl is set to the
1531 * Control.cs: TemplateControl property goes up the parent chain if
1532 the property isn't defined in the current control.
1533 TemplateSourceDir finally implemented correctly.
1535 2007-06-06 Marek Habersack <mhabersack@novell.com>
1537 * Control.cs: more changes to the way TemplateSourceDirectory
1538 works in the 2.0 profile. Take into account situations when a
1539 control is placed in a UserControl (.ascx) and only then fall back
1540 to the parent for its TemplateSourceDirectory.
1542 2007-06-05 Marek Habersack <mhabersack@novell.com>
1544 * Control.cs: TemplateSourceDirectory uses TemplateControl to
1545 lookup the virtual source directory in the 2.0 instead of the
1547 ResolveClientUrl copes with empty TemplateSourceDirectory in the
1548 correct way now - the check is made after the basePath checks.
1549 The changes above make ResolveClientUrl work properly when called
1550 from within a control residing in a TemplateControl.
1552 2007-05-30 Vladimir Krasnov <vladimirk@mainsoft.com>
1554 * HtmlTextWriter.cs: EncodeAttributeValue should call
1555 HtmlAttributeEncode as documented
1557 2007-05-24 Marek Habersack <mhabersack@novell.com>
1559 * PageParser.cs: added support for the PreviousPageType
1562 2007-05-23 Marek Habersack <mhabersack@novell.com>
1564 * TemplateParser.cs: use VirtualPathUtility.Combine to properly
1565 create the custom control's virtual path.
1567 2007-05-22 Marek Habersack <mhabersack@novell.com>
1569 * TemplateBuilder.cs: in the absence of containerAttribute,
1570 default to two-way binding direction.
1572 2007-05-21 Igor Zelmanovich <igorz@mainsoft.com>
1574 * DataSourceView.cs: refactoring: Update, Insert methods:
1575 exception is re-thrown from catch scope.
1576 It allows actual call stack be shown
1578 2007-05-17 Vladimir Krasnov <vladimirk@mainsoft.com>
1580 * TemplateControl.jvm.cs: refactored key for CachedString method
1582 2007-05-16 Vladimir Krasnov <vladimirk@mainsoft.com>
1584 * HtmlTextWriter.cs: refactoring, created hashtables for tags, styles
1585 and attributes arrays, that gives performance improvement in GetTagKey
1586 GetStyleKey and GetAttributeKey methods
1588 2007-05-15 Marek Habersack <mhabersack@novell.com>
1590 * TemplateControl.cs: implemented the 3-parameter overloads of
1591 GetLocalResourceObject and GetGlobalResourceObject.
1593 * TemplateParser.cs: refactoring - use HttpApplication.LoadType to
1594 actually look up types.
1596 * ControlBuilder.cs: as above
1598 2007-05-14 Marek Habersack <mhabersack@novell.com>
1600 * ClientScriptManager.cs: put the hidden field within a <div>, the
1603 2007-05-11 Gert Driesen <drieseng@users.sourceforge.net>
1605 * ControlBuilder.cs: Fixed exception message in MapType.
1607 2007-05-10 Marek Habersack <mhabersack@novell.com>
1609 * Control.cs: small formatting change
1611 2007-05-10 Igor Zelmanovich <igorz@mainsoft.com>
1613 * Page.cs: ExecuteRegisteredAsyncTasks:
1614 implimentation for TARGET_JVM doesn't use WaitHandle.WaitAll, but WaitOne
1616 2007-05-09 Vladimir Krasnov <vladimirk@mainsoft.com>
1618 * HtmlTextWriter.cs: used classes instead of sctrucs in TARGET_JVM for
1619 AddedTag, AddedStyle and AddedAttr members
1620 * TemplateControl.jvm.cs: refactored CachedString method
1622 2007-05-09 Marek Habersack <mhabersack@novell.com>
1624 * CollectionBuilder.cs: formatting changes
1626 * ControlBuilder.cs: if a control enables children as properties,
1627 has a default property and parser encounters a child tag/container
1628 with the default property name, discard the default property
1629 builder in order to avoid invalid sub builder invocation. An
1630 example is: <asp:DropDownList><Items></Items></asp:DropDownList>
1632 When checking for empty string, use Length not comparison with ""
1634 2007-05-08 Marek Habersack <mhabersack@novell.com>
1636 * CssStyleCollection.cs: put the style in the bag each time a key
1637 is set, otherwise resetting of a key has no effect on rendered
1640 2007-05-07 Marek Habersack <mhabersack@novell.com>
1642 * TemplateParser.cs: added support for implicit language
1643 detection. If the language isn't set explicitly in the Page
1644 directive, the language value taken from the configuration
1645 considered to be implicit - that is, it can be overwritten by the
1646 first <script> with the runat="server" and language="xx" sets the
1647 language for the parser. This makes it possible to have the
1648 default language set to "C#" and the inline code in, e.g.,
1651 * ControlBuilder.cs: when mapping types, catch casses of missing
1652 original and mapped types.
1653 If mapped type doesn't derive from the original type, throw an
1654 exception. Fixes bug #81553.
1656 2007-05-04 Marek Habersack <mhabersack@novell.com>
1658 * Control.cs: added an internal method to resolve a physical path
1659 to a file from its virtual path considering the possibility that a
1660 control is placed in a master page, which in turn is referenced
1661 from a directory another than that of master page itself.
1663 2007-05-03 Igor Zelmanovich <igorz@mainsoft.com>
1665 * AttributeCollection.cs:
1666 * DataBindingHandlerAttribute.cs:
1667 * HtmlTextWriter.cs:
1668 * PartialCachingControl.cs:
1669 * TemplateControl.cs:
1670 * TemplateControl.jvm.cs:
1674 2007-05-03 Igor Zelmanovich <igorz@mainsoft.com>
1676 * CssStyleCollection.cs: optimization:
1677 used StringBuilder instead string to hold value.
1678 When added key that not exists in collection, value is recalculated by
1679 appending required key to existing value.
1681 2007-05-02 Igor Zelmanovich <igorz@mainsoft.com>
1683 * Control.cs: ResolveClientUrl: optimization.
1684 if basePath is the same as TemplateSourceDirectory
1685 releativeUrl is returned as is.
1687 2007-05-02 Igor Zelmanovich <igorz@mainsoft.com>
1690 ResolveClientUrl considers TemplateSourceDirectory property.
1692 2007-05-01 Marek Habersack <mhabersack@novell.com>
1694 * PageParser.cs: clientTarget comparisons must be case-insensitive
1696 2007-04-30 Konstantin Triger <kostat@mainsoft.com>
1698 * DataBinder.cs: When formatting, threat empty string as null.
1700 2007-04-27 Marek Habersack <mhabersack@novell.com>
1702 * TemplateControlParser.cs: 2.0 allows 'Namespace' without the
1703 'Assembly' attribute on tag prefix registration.
1705 * TemplateParser.cs: do not rely on assembly name being not null.
1707 2007-04-19 Gert Driesen <drieseng@users.sourceforge.net>
1709 * TemplateParser.cs: On 2.0 profile, allow namespace in ClassName
1710 attribute. Fixes part of bug #81399.
1712 2007-04-11 Marek Habersack <mhabersack@novell.com>
1714 * Page.cs: check whether control passed to
1715 RegisterRequiresPostBack implements the IPostBackDataHandler
1718 2007-04-06 Marek Habersack <mhabersack@novell.com>
1720 * ClientScriptManager.cs: render the 'type' attribute in
1721 WriteScript and do not render the 'language' attribute when in
1724 * Page.cs: defaults for ViewStateEncrptionMode and AsyncTimeout
1725 are read from the pages section, if found.
1727 * TemplateControlParser.cs: added support for loading
1728 pages/controls defaults from web.config even if the page/control
1729 does not have its corresponding directive.
1730 Added support for reading the CompilationMode attribute.
1732 * PageParser.cs: added support for loading pages/controls defaults
1733 as above. Fixes bug #80915.
1734 Added support for reading the maxPageStateFieldLength setting.
1735 Added support for reading the pageParserFilter setting.
1737 * ControlBuilder.cs: allow tag mappings from code found
1738 in bin/* or App_Code/*. Fixes bug #80811.
1740 2007-03-29 Vladimir Krasnov <vladimirk@mainsoft.com>
1742 * TemplateControl.jvm.cs: performance improvement, added cache for
1743 methods and events in user code
1745 2007-03-26 Marek Habersack <mhabersack@novell.com>
1747 * TemplateControl.cs: make local resources work with master
1748 pages - use the AppRelativeVirtualPath for resource resolution.
1750 * TemplateParser.cs: support the meta:resourcekey attribute in
1751 Page and Control directives. Fixes bug #81204.
1753 2007-03-21 Marek Habersack <mhabersack@novell.com>
1755 * UnknownAttributeDescriptor.cs: an internal helper class for
1756 custom directive attributes support.
1758 * BaseParser.cs: ThrowParseException can now take variadic
1759 parameters, for convenience.
1761 * TemplateParser.cs: add support for custom attributes for the
1762 Page and Control directives.
1763 Added support for the CodeFileBaseClass directive. Fixes bug #81132
1765 2007-03-20 Igor Zelmanovich <igorz@mainsoft.com>
1767 * Control.cs: fixed ResolveClientUrl method.
1769 2007-03-18 Marek Habersack <mhabersack@novell.com>
1771 * BaseParser.cs: fix BaseVirtualDir to always return app-absolute
1774 2007-03-17 Marek Habersack <mhabersack@novell.com>
1776 * MasterPageParser.cs: remove superfluous #ifdef
1778 * TemplateParser.cs: use VirtualPathUtility here
1780 2007-03-14 Vladimir Krasnov <vladimirk@mainsoft.com>
1782 * TemplateControl.jvm.cs: fixed WireupAutomaticEvents, performance
1785 2007-03-13 Marek Habersack <mhabersack@novell.com>
1787 * TemplateParser.cs: name generated classes the same way MS.NET
1788 does - include the app-relative path to the control/page in the
1791 2007-03-13 Adar Wesley <adarw@mainsoft.com>
1793 * Page.cs: improved Async Page implementation.
1795 2007-03-13 Marek Habersack <mhabersack@novell.com>
1797 * TemplateControl.cs: implement AppRelativeVirtualPath. Closes bug
1800 2007-03-12 Marek Habersack <mhabersack@novell.com>
1802 * RootBuilder.cs: change the error text to be less misleading.
1804 2007-03-12 Igor Zelmanovich <igorz@mainsoft.com>
1806 * AttributeCollection.cs:
1807 * CssStyleCollection.cs: fixed: works w/o state bag.
1809 2007-03-12 Igor Zelmanovich <igorz@mainsoft.com>
1811 * HtmlTextWriter.cs: fixed:
1812 - Fixed writing background-image style attribute (different behavior in
1814 - Does not encode 'name' attribute.
1815 - Always encode style attributes (for 2.0 only).
1817 2007-03-06 Adar Wesley <adarw@mainsoft.com>
1819 * Page.cs: initial implementation of support for Async=true. Added
1820 initial support for ViewStateEncryption. Implemented
1821 CreateHtmlTextWriterFromType.
1823 * PageAsyncTask.cs: Created class to support Async pages.
1825 * ObjectStateFormatter.cs: Added support for ViewState encryption.
1827 * HtmlTextWriter.cs: Fixed constructor to accept null TextWriter
1828 to conform to MS behavior.
1830 2007-03-05 Vladimir Krasnov <vladimirk@mainsoft.com>
1832 * Control.jvm.cs: fixed TemplateSourceDirectory property
1834 2007-03-03 Marek Habersack <mhabersack@novell.com>
1836 * TemplateParser.cs: support but ignore the Async and AsyncTimeOut
1837 page directive attributes.
1838 Support the LinePragmas page directive attribute.
1840 * PageParser.cs: added support for the
1841 MaintainScrollPositionOnPostBack page directive attribute.
1843 2007-02-26 Igor Zelmanovich <igorz@mainsoft.com>
1845 * TemplateControl.cs:
1846 * TemplateControl.jvm.cs: fixed: AutoEventWireup feature:
1847 Method 'Page_XXX' is declared in the base class must be
1848 called even is private.
1850 2007-02-26 Vladimir Krasnov <vladimirk@mainsoft.com>
1852 * Control.cs: fixed AppRelativeTemplateSourceDirectory property, should
1853 not return AppRelativeTemplateSourceDirectory of master page
1855 2007-02-26 Igor Zelmanovich <igorz@mainsoft.com>
1857 * ClientScriptManager.cs: fixed: GetScriptLiteral escapes back-slash:
1859 2007-02-22 Igor Zelmanovich <igorz@mainsoft.com>
1861 * TemplateControl.cs: added missing property AppRelativeVirtualPath
1863 2007-02-21 Konstantin Triger <kostat@mainsoft.com>
1865 * TemplateParser.cs: remove CodeGenerator.IsValidLanguageIndependentIdentifier
1866 check from Global.asax inherits attribute to let inherits="A.B" construct.
1868 2007-02-20 Igor Zelmanovich <igorz@mainsoft.com>
1870 * ObjectStateFormatter.cs:
1871 optimization for serialization of primitive type arrays
1873 2007-02-19 Igor Zelmanovich <igorz@mainsoft.com>
1875 * ClientScriptManager.cs:
1878 implemented PostBackOptions.TrackFocus feature.
1880 2007-02-14 Igor Zelmanovich <igorz@mainsoft.com>
1882 * Page.cs: for 2.0: refactoring:
1883 prepare infrastructure for Form.SubmitDisabledControls feature
1885 2007-02-18 Eyal Alaluf <eyala@mainsoft.com>
1887 * Control.jvm.cs, Control.cs: Move TemplateSourceDirectory to .jvm file.
1888 * Control.jvm.cs, Page.jvm.cs: Centralize Portlet specific API in Page.jvm
1889 * Page.cs, Page.jvm.cs, ClientScriptManager.cs: Support for Http callbacks
1892 2007-02-14 Igor Zelmanovich <igorz@mainsoft.com>
1895 '__EVENTTARGET' and '__EVENTARGUMENT' hidden fields are
1896 registered only once.
1898 2007-02-14 Igor Zelmanovich <igorz@mainsoft.com>
1900 * Page.cs: for 2.0: '__doPostBack' declared as function of form.
1901 convention to use 'currForm' instead 'myForm'
1903 2007-02-14 Igor Zelmanovich <igorz@mainsoft.com>
1906 * ClientScriptManager.cs:
1907 including 'webform.js' requires '__doPostBack' on the form be rendered.
1909 2007-02-14 Igor Zelmanovich <igorz@mainsoft.com>
1912 * ClientScriptManager.cs:
1913 refactoring: 'theForm' variable is always declared on client.
1914 '__EVENTTARGET' and '__EVENTARGUMENT' hidden fields is rendered using
1915 RegisterHiddenField API. 'WebForm_OnSubmit' declared as function of form.
1917 2007-02-14 Vladimir Krasnov <vladimirk@mainsoft.com>
1919 * Page.cs: fixed OnInit, adding css should throw exception if no header
1922 2007-02-14 Igor Zelmanovich <igorz@mainsoft.com>
1924 * Page.cs: __doPostBack considers 2.0 features
1925 such RegisterOnSubmitStatement
1927 2007-02-14 Igor Zelmanovich <igorz@mainsoft.com>
1930 * ClientScriptManager.cs:
1931 implemented RegisterOnSubmitStatement for 2.0
1933 2007-02-13 Igor Zelmanovich <igorz@mainsoft.com>
1935 * ClientScriptManager.cs: EventValidation feature optimization on Callback.
1937 2007-02-13 Igor Zelmanovich <igorz@mainsoft.com>
1939 * Page.cs: fixed exception handling on Callback at client.
1941 2007-02-08 Marek Habersack <grendello@gmail.com>
1943 * Page.cs: Make sure to create specific cultures.
1945 2007-02-08 Vladimir Krasnov <vladimirk@mainsoft.com>
1947 * ClientScriptManager.cs: added array declaration also as member of
1948 form in TARGET_J2EE for j2ee portal support.
1949 Added validators context init for GetClientValidationEvent under
1950 TARGET_J2EE for j2ee portal support.
1951 * Page.cs: fixed OnFormPostRender, render array declarations after
1954 2007-02-04 Igor Zelmanovich <igorz@mainsoft.com>
1957 * ClientScriptManager.cs:
1958 client scripts (webform.js, callback.js and
1959 MaintainScrollPositionOnPostBack.js) were merged into one resource file.
1961 2007-02-04 Igor Zelmanovich <igorz@mainsoft.com>
1964 http://msdn2.microsoft.com/en-us/library/ms178141.aspx
1965 LAMESPEC: on Callback IsPostBack is set to false, but true.
1967 2007-02-04 Igor Zelmanovich <igorz@mainsoft.com>
1970 VerifyRenderingInServerForm does not fire exception when IsCallback
1972 2007-02-04 Igor Zelmanovich <igorz@mainsoft.com>
1975 * ClientScriptManager.cs:
1976 fixed RegisterClientScriptInclude: all includes that was registered before
1977 rendering are rendered at begin form.
1979 2007-02-02 Marek Habersack <grendello@gmail.com>
1981 * TemplateParser.cs: Do not register controls here.
1983 2007-02-02 Adar Wesley <adarw@mainsoft.com>
1985 * Control.cs: Changed UniqueId implementation to have '$' and not ':'
1986 to conform to MS. This led to updating several Tests that referenced
1987 the UniqueId as string.
1989 2007-01-30 Eyal Alaluf <eyala@mainsoft.com>
1991 * ClientScriptManager.cs: Fix Igor's last changes for TARGET_JVM.
1993 2007-01-29 Igor Zelmanovich <igorz@mainsoft.com>
1996 * ClientScriptManager.cs:
1997 CallBack works with EvantValidation.
1999 2007-01-25 Eyal Alaluf <eyala@mainsoft.com>
2001 * Page.cs: Change code to use the 'theForm' property when generating
2002 JavaScript code. Ensure that we pass 'theForm' as param to the JS funcs.
2003 * Page.jvm.cs, Control.jvm.cs: Implement the 'theForm' property to include
2004 the portlet namespace. Moved 'PortletNamespace' from Control.jvm.cs
2005 * Page.jvm.cs, Control.jvm.cs, ClientScriptManager.cs: Added support for
2006 saving hidden fields for TARGET_J2EE Portlets re-render.
2007 * Control.cs: Under TARGET_J2EE portal support add the PortletNamespace
2008 to all the control IDs to ensure they different between portlets.
2010 2007-01-24 Vladimir Krasnov <vladimirk@mainsoft.com>
2012 * Page.cs: fixed CheckForValidationSupport,
2013 SupportsEventValidationAttribute should be checked at only one level
2015 2007-01-23 Vladimir Krasnov <vladimirk@mainsoft.com>
2017 * TemplateControl.jvm.cs: ParseControl not supported, added limited
2018 implementation if TestDeviceFilter
2020 2007-01-22 Konstantin Triger <kostat@mainsoft.com>
2022 * ClientScriptManager.cs: ensure the callback client script is
2023 registered before the client script includes are rendered.
2025 2007-01-22 Konstantin Triger <kostat@mainsoft.com>
2027 * Page.cs, ClientScriptManager.cs: ensure the web form client script is
2028 registerd before the client script includes are rendered.
2030 2007-01-21 Konstantin Triger <kostat@mainsoft.com>
2032 * Page.cs: move the WriteClientScriptIncludes to the top of the form,
2033 according to the MSDN.
2035 2007-01-20 Miguel de Icaza <miguel@novell.com>
2037 * XhtmlTextWriter.cs: comment out unused code.
2039 * ThemeProvider.cs: comment out unused code.
2041 * DataSourceView.cs: Comment unused variable.
2043 * ClientScriptManager.cs: Put the expandoAttributes inside the 2.0
2046 * Control.cs: Put _templateControl inside the NET_2_0 ifdef
2048 2007-01-20 Marek Habersack <grendello@gmail.com>
2050 * TemplateParser.cs: Check whether the base type is in the root
2053 2007-01-18 Eyal Alaluf <eyala@mainsoft.com>
2055 * Control.jvm.cs: Added PortletNamespace property.
2057 2007-01-16 Vladimir Krasnov <vladimirk@mainsoft.com>
2059 * TemplateControl.jvm.cs: remover TemplateSourceDirectory propery
2060 * Control.cs: moved TemplateSourceDirectory from TemplateControl for
2061 TARGET_JVM, fixed AppRelativeTemplateSourceDirectory
2063 2007-01-16 Vladimir Krasnov <vladimirk@mainsoft.com>
2065 * TemplateControl.jvm.cs: added 2.0 event names for wiring up
2067 2007-01-15 Ilya Kharmatsky <ilya - at - decode-systems.com>
2069 - IsViewStateEnabled - removed check for non-null page, since
2070 the control by definition should come with enabled
2071 view state, even if it not 'attached' to the page
2072 - HasEvents() - implementation (still could produce bug in exotic scenarios
2073 when all events added to 'this' control has been removed
2074 through the property 'Events', but currently we can't see
2075 better implementation)
2077 2007-01-14 Eyal Alaluf <eyala@mainsoft.com>
2079 * Control.jvm.cs, Page.jvm.cs: Added TARGET_J2EE specific files.
2080 * Page.cs, ClientScriptManager.cs, Control.cs: Added J2EE portal
2081 support for TARGET_J2EE.
2083 2007-01-12 Miguel de Icaza <miguel@novell.com>
2085 * Control.cs: Remove comment, it provides no information about
2086 what could be wrong.
2088 2007-01-08 Vladimir Krasnov <vladimirk@mainsoft.com>
2090 * PageTheme.cs: implemented
2091 * Page.cs: fixed InitializeTheme, added PageTheme page initialization
2092 * TemplateControl.cs,
2093 * TemplateControl.jvm.cs: added XPath, XPathSelect overloads with
2094 IXmlNamespaceResolver parameter
2095 * XPathBinder.cs: added Eval, Select overloads with
2096 IXmlNamespaceResolver parameter, refactored
2098 2007-01-08 Vladimir Krasnov <vladimirk@mainsoft.com>
2100 * TemplateControl.jvm.cs: added GetGlobalResourceObject
2102 2007-01-07 Igor Zelmanovich <igorz@mainsoft.com>
2104 * Page.cs: refactoring: used RegisterHiddenField for _VIEWSTATE field.
2106 2007-01-04 Igor Zelmanovich <igorz@mainsoft.com>
2108 * Control.cs: ensure 'id' attribute will be rendered if
2109 ClientID was accessed but ID is generated by the Page,
2110 important for custom controls developing.
2112 2007-01-04 Igor Zelmanovich <igorz@mainsoft.com>
2114 * Page.cs: fixed: InitializeCulture should be called
2115 before creating controls.
2117 2007-01-03 Marek Habersack <grendello@gmail.com>
2119 * Page.cs: Make sure the ValidatorOnSubmit function is defined for the
2120 document before attempting to use it.
2122 2007-01-01 Vladimir Krasnov <vladimirk@mainsoft.com>
2124 * Control.cs: fixed ResolveClientUrl, wrong when control that calls
2125 this method and the page are in different folders
2127 2006-12-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2129 * Page.cs: show the validation summary when client validation and
2130 linkbuttons are used. Patch by Juraj Skripsky.
2132 2006-12-31 Igor Zelmanovich <igorz@mainsoft.com>
2134 * Page.cs: fixed: EventValidation is not performed for CallBack request.
2136 2006-12-27 Igor Zelmanovich <igorz@mainsoft.com>
2138 * Page.cs: fixed: RegisterRequiresPostBack feature.
2140 2006-12-21 Marek Habersack <grendello@gmail.com>
2142 * ControlBuilder.cs: Add support for tag mapping in 2.0
2144 2006-12-20 Marek Habersack <grendello@gmail.com>
2146 * TemplateParser.cs: make sure Context.ApplicationInstance is not
2147 valid before adding application assembly.
2149 2006-12-11 Igor Zelmanovich <igorz@mainsoft.com>
2151 * Page.cs: fixed and optimized ProcessPostData
2152 The "second try" used for controls that created at OnLoad.
2153 fixed for controls that use RgisterRequeresPostBack to handle post data.
2155 2006-11-29 Igor Zelmanovich <igorz@mainsoft.com>
2157 * Page.cs: The specified theme must exist as either an application theme.
2158 If the theme does not exist, an HttpException exception s thrown.
2160 2006-12-09 Marek Habersack <grendello@gmail.com>
2162 * HiddenFieldPageStatePersister.cs: Implement the 2.0 class (used
2163 also in the 1.x profile)
2165 * ObjectStateFormatter.cs: Implement the IStateFormatter interface
2167 * ClientScriptManager.cs: Use IStateFormatter instead of
2169 Use the IStateFormatter interface when registering the hidden
2170 field with the state.
2172 * LosFormatter.cs: Use ObjectStateFormatter
2174 * PageStatePersister.cs: Make the class available as internal for
2176 Constructor throws an exception on its page parameter being null.
2177 Implemented several properties: ControlState, ViewState, Page,
2180 * Page.cs: Use new state persister for all the profiles.
2181 Use the new HiddenFieldPageStatePersister class.
2183 * IStateFormatter.cs: Make the class available as internal for 1.x profile.
2185 2006-12-04 Vladimir Krasnov <vladimirk@mainsoft.com>
2187 * TemplateControl.jvm.cs: fixed TemplateSourceDirectory initialization
2189 2006-11-29 Marek Habersack <grendello@gmail.com>
2191 * TemplateParser.cs: if the OutputCache directive is present, make
2192 sure the cache does not expire the current output.
2194 2006-11-29 Igor Zelmanovich <igorz@mainsoft.com>
2196 * Page.cs: added missing methods and properties:
2200 UniqueFilePathSuffix
2201 MaxPageStateFieldLength
2202 ViewStateEncryptionMode
2203 AddOnPreRenderCompleteAsync
2204 AddOnPreRenderCompleteAsync
2205 ExecuteRegisteredAsyncTasks
2206 CreateHtmlTextWriterFromType
2207 RegisterRequiresViewStateEncryption
2209 2006-11-29 Igor Zelmanovich <igorz@mainsoft.com>
2211 * Page.cs: Master property returns null when no HttpContext.
2213 2006-11-29 Igor Zelmanovich <igorz@mainsoft.com>
2215 * Page.cs: InitializeCulture method is called before OnPreInit.
2217 2006-11-28 Marek Habersack <grendello@gmail.com>
2219 * TemplateControlParser.cs: Use the new TemplateParser methods to
2220 register controls/namespaces
2222 * TemplateParser.cs: Implement support for the
2223 system.web/pages/namespaces collection instead of hard-coding the
2224 namespaces into the source.
2225 Refactoring: added two internal methods to handle both the
2226 system.web/pages/controls registration and the Register directive.
2227 Added a new internal method to pull the system.web/pages/controls
2228 collection before parsing.
2230 2006-11-27 Marek Habersack <grendello@gmail.com>
2232 * SimpleWebHandlerParser.cs: Added support for looking up types in
2233 the top-level assemblies (App_Code et al)
2235 2006-11-27 Igor Zelmanovich <igorz@mainsoft.com>
2237 * Control.cs: implemented EnsureID method.
2239 2006-11-27 Igor Zelmanovich <igorz@mainsoft.com>
2241 * Control.cs: implemented Focus methods.
2243 2006-11-27 Igor Zelmanovich <igorz@mainsoft.com>
2245 * Page.cs: implemented SetFocus methods.
2248 2006-11-27 Igor Zelmanovich <igorz@mainsoft.com>
2250 * ClientScriptManager.cs: refactoring:
2251 extracted method RegisterWebFormClientScript
2253 2006-11-27 Igor Zelmanovich <igorz@mainsoft.com>
2255 * Control.cs: implemented OpenFile()
2257 2006-11-26 Igor Zelmanovich <igorz@mainsoft.com>
2261 implemented ClearChildState(), ClearChildControlState() and
2262 IsChildControlStateCleared
2264 2006-11-26 Igor Zelmanovich <igorz@mainsoft.com>
2267 * ClientScriptManager.cs:
2268 implemented RegisterExpandoAttribute feature
2270 2006-11-23 Igor Zelmanovich <igorz@mainsoft.com>
2272 * ListSourceHelper.cs: optimization of implementation
2274 2006-11-23 Igor Zelmanovich <igorz@mainsoft.com>
2276 * ListSourceHelper.cs: implemented
2278 2006-11-21 Igor Zelmanovich <igorz@mainsoft.com>
2280 * DataSourceView.cs: fixed: constructor throws ArgumentNullException
2282 2006-11-21 Igor Zelmanovich <igorz@mainsoft.com>
2284 * Page.cs: fixed: PreviousPage property
2285 when CrossPostBack is processed PreviousPage is initialized
2286 only if PreviousPage property is called.
2288 2006-11-21 Igor Zelmanovich <igorz@mainsoft.com>
2290 * DataSourceControl.cs: fixed: Focus(), EnableTheming
2292 2006-11-21 Marek Habersack <grendello@gmail.com>
2294 * Control.cs: Make ClientIDSeparator private for !NET_2_0
2296 2006-11-21 Igor Zelmanovich <igorz@mainsoft.com>
2298 * Page.cs: fixed: LoadControlState is called for controls
2299 that added on Load and latter
2301 2006-11-20 Marek Habersack <grendello@gmail.com>
2303 * Control.cs: Implementations of a few missing properties.
2305 * Page.cs: Added support for automatic culture detection from the
2308 * PageParser.cs: Added support for "auto" cultures in the Page
2311 2006-11-20 Igor Zelmanovich <igorz@mainsoft.com>
2313 * ClientScriptManager.cs: fixed: ValidateEvent feature:
2314 client side return eventArgument as empty string
2315 for controls that set it as null
2317 2006-11-18 Marek Habersack <grendello@gmail.com>
2319 * ClientScriptManager.cs: Implemented two missing
2320 GetPostBackEventReference overloads. Made one of the overloads
2321 internal for .NET < 2.0.
2323 2006-11-17 Marek Habersack <grendello@gmail.com>
2325 * PostBackOptions.cs: Renamed the constructors parameters to match
2326 those Microsoft .NET uses.
2327 targetControl must not be passed null to the constructor.
2329 * ClientScriptManager.cs: Support for event validation.
2330 Implemented a GetPostBackHyperlink overload.
2331 Implemented the RegisterForEventValidation methods.
2332 Implemented the ValidateEvent method.
2333 Added support for saving/restoring event validation state.
2335 * Page.cs: EnableEventValidation can be set only from the config
2336 files (the <pages> element), the Page directive or from
2337 Page_Init. After Page_Init returns, an exception is thrown.
2338 Made GetFormatter internal, so that ClientScriptManager can use
2340 Added the internal LifeCycle property which contains the current
2341 life cycle stage of the page request processing.
2342 Added calls to save/restore event validation state.
2343 Added checks for whether child controls of the page support event
2345 Added calls to ClientScriptManager.ValidateEvent in appropriate
2348 * PageLifeCycle.cs: Added the PageLifeCycle enum, used in event
2351 2006-11-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2354 * ObjectStateFormatter.cs: match MS 1.x and 2.0 behaviour for null and
2357 2006-11-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2359 * SimpleWebHandlerParser.cs: 'using' for file reading.
2361 2006-11-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2363 * Page.cs: revert r67514 until after tagging for the next release.
2365 2006-11-12 Igor Zelmanovich <igorz@mainsoft.com>
2367 * LiteralControl.cs: fixed: constructors & Text property
2369 2006-11-09 Igor Zelmanovich <igorz@mainsoft.com>
2371 * Page.cs: fixed: LoadControlState is called for controls
2372 that added on Load and latter, for 1.x refactoring only
2374 2006-11-02 Igor Zelmanovich <igorz@mainsoft.com>
2376 * ClientScriptManager.cs:
2377 fixed: checks arguments for null in public methods,
2378 fixed public interface.
2380 2006-10-23 Igor Zelmanovich <igorz@mainsoft.com>
2382 * PostBackOptions.cs: fixed: default values of properties
2384 2006-10-22 Igor Zelmanovich <igorz@mainsoft.com>
2386 * CssStyleCollection.cs:
2387 * AttributeCollection.cs:
2388 fixed: style collection is synchronized with style attribute
2390 2006-10-19 Igor Zelmanovich <igorz@mainsoft.com>
2392 * ClientScriptManager.cs: fixed: renders id attribute in hidden field
2394 2006-10-18 Marek Habersack <grendello@gmail.com>
2396 * TemplateParser.cs: reference System.Resources when compiling a
2399 * TemplateControl.cs: implement the GetGlobalResourceObject
2402 2006-10-12 Igor Zelmanovich <igorz@mainsoft.com>
2404 * Page.cs: fixed: for 2.0 only
2405 When Page processes Callback IsPostBack = false, but it still needs
2406 LoadViewState/ControlState and ProcessPostData
2408 2006-10-11 Igor Zelmanovich <igorz@mainsoft.com>
2410 * DataSourceSelectArguments.cs: fixed:
2411 SortExpression not returns null,
2412 Empty property returns new instance each time
2414 2006-10-10 Igor Zelmanovich <igorz@mainsoft.com>
2416 * DataSourceSelectArguments.cs:
2417 fixed: RaiseUnsupportedCapabilitiesError method.
2419 2006-10-09 Igor Zelmanovich <igorz@mainsoft.com>
2421 * DataSourceSelectArguments.cs: fixed: Equals method.
2423 2006-10-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2425 * CssStyleCollection.cs: don't clear the collection of properties, but
2428 2006-10-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2430 * CssStyleCollection.cs: 'style' can be modified on our back, so build
2431 the style table every time instead of keeping one that is not in sync.
2434 2006-09-25 Igor Zelmanovich <igorz@mainsoft.com>
2436 * Page.cs: fixed: Cross-page postback feature in ASP.NET 2.0
2437 When page is invoked by cross-page posting, PreviousPage processed all
2438 live-cycle up to OnLoadComplite included.
2439 IsPostBack, IsCallBack and IsCrossPagePostBack returns relevant values.
2441 2006-09-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2443 * TemplateParser.cs: patch by Joel Reed that makes use of the namespace
2444 collection from the PagesConfiguration to add new namespaces when
2445 generating the page/control code.
2447 2006-09-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2449 * PageParser.cs: support the EnableEventValidation attribute.
2451 2006-09-18 Igor Zelmanovich <igorz@mainsoft.com>
2453 * Page.cs: fixed: Title property works properly
2455 2006-09-17 Igor Zelmanovich <igorz@mainsoft.com>
2457 * ClientScriptManager.cs: added helper method
2459 2006-09-14 Igor Zelmanovich <igorz@mainsoft.com>
2461 * Page.cs: fixed: GetValidators(string), Validate(string) works properly
2463 2006-09-08 Robert Jordan <robertj@gmx.net>
2465 * Page.cs: assure that RenderTrace is called even if an
2466 exception occurred. Fixes bug #78930.
2468 2006-09-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2470 * TemplateControl.cs: search for the new Page_* event handlers in 2.0.
2471 Patch by Marek Habersack that fixes bug #78268.
2473 2006-09-07 Lluis Sanchez Gual <lluis@novell.com>
2475 * Page.cs: Use lowercase getElementById in the javascript that
2478 2006-08-22 Vladimir Krasnov <vladimirk@mainsoft.com>
2480 * KeyedListEnumerator.cs: fixed Current property to return real object
2481 instead of DictionaryEntry
2483 2006-09-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2485 * Page.cs: don't use the Browser object, as it slows down process
2486 request time *a lot*. Fixes bug #79206.
2488 2006-09-05 Konstantin Triger <kostat@mainsoft.com>
2490 * Page.cs: Imlemented InitOutputCache(OutputCacheParameters cacheSettings).
2491 * OutputCacheParameters.cs: added an implementation.
2493 2006-09-04 Igor Zelmanovich <igorz@mainsoft.com>
2495 * CssStyleCollection.cs: fixed: background-image style attribute
2497 2006-08-31 Konstantin Triger <kostat@mainsoft.com>
2499 * StaticPartialCachingControl.cs: added forwarding implementation for
2500 2.0 version of BuildCachedControl().
2502 2006-08-30 Igor Zelmanovich <igorz@mainsoft.com>
2504 * Page.cs: added internal method
2505 * ClientScriptManager.cs:
2507 2006-08-30 Igor Zelmanovich <igorz@mainsoft.com>
2509 * ClientScriptManager.cs: added helper method
2511 2006-08-22 Vladimir Krasnov <vladimirk@mainsoft.com>
2513 * Page.cs: fixed ApplyMasterPage, masterPageFile can be empty string
2514 if compiled with .net aspx parser
2515 fixed OnInit, GetStyleSheets may return null if no css files found by
2518 2006-08-22 Vladimir Krasnov <vladimirk@mainsoft.com>
2520 * TemplateControl.jvm.cs: fixed WireupAutomaticEvents, removed access
2521 modifiers check on event handlers
2523 2006-08-22 Vladimir Krasnov <vladimirk@mainsoft.com>
2525 * Control.cs: implemented AppRelativeTemplateSourceDirectory for aspx
2527 * TemplateControl.jvm.cs: fixed AppRelativeVirtualPath
2528 fixed TemplateSourceDirectory, should not work on master pages.
2530 2006-08-20 Vladimir Krasnov <vladimirk@mainsoft.com>
2532 * MasterPageParser.jvm.cs: fixed path resolving
2533 GetCompiledMasterInstance
2535 2006-08-17 Vladimir Krasnov <vladimirk@mainsoft.com>
2537 * TemplateControl.jvm.cs: fixed data binding API, implemented
2538 AppRelativeVirtualPath, ReadStringResource
2540 2006-08-17 Vladimir Krasnov <vladimirk@mainsoft.com>
2542 * Page.cs: added stubs to run aspx files compiled by .net
2544 2006-08-17 Vladimir Krasnov <vladimirk@mainsoft.com>
2546 * MasterPageParser.jvm.cs: implemented
2548 2006-08-10 Andrew Skiba <andrews@mainsoft.com>
2550 * Page.cs: render css path as a virtual path.
2552 2006-08-09 Robert Jordan <robertj@gmx.net>
2554 * Control.cs: add the 2.0 ResolveClientUrl method.
2555 Expose ResolveClientUrl as internal for the 1.1 profile.
2558 2006-08-08 Vladimir Krasnov <vladimirk@mainsoft.com>
2560 * added MasterPageParser.jvm.cs
2562 2006-08-08 Vladimir Krasnov <vladimirk@mainsoft.com>
2564 * ControlBuilder.jvm.cs: added BuildObject method
2566 2006-08-08 Vladimir Krasnov <vladimirk@mainsoft.com>
2568 * ParseChildrenAttribute.cs: fixed ChildControlType property to
2570 * UserControl.cs: fixed ParseChildren attribute to be compliant
2573 2006-08-08 Igor Zelmanovich <igorz@mainsoft.com>
2575 * Page.cs: implemented MaintainScrollPositionOnPostBack feature
2577 2006-08-06 Vladimir Krasnov <vladimirk@mainsoft.com>
2579 * Control.cs: fixed EnableTheming proprty, fixes bug when child
2580 control has EnableTheming=false and parent has true.
2582 2006-07-31 Vladimir Krasnov <vladimirk@mainsoft.com>
2584 * MasterPage.cs: fixed default values, fixed AddContentTemplate
2586 2006-07-31 Vladimir Krasnov <vladimirk@mainsoft.com>
2588 * Control.cs: fixed EnableTheming proprty, fixes the bug when skins
2589 are applied even if EnableTheming property was set to false.
2591 2006-07-24 Andrew Skiba <andrews@mainsoft.com>
2593 * DataSourceView.cs: refactor to keep the original exception stack.
2595 2006-07-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2597 * PostBackOptions.cs: default to String.Empty for several field values.
2598 Patch by Marek Habersack.
2600 2006-07-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2602 * Page.cs: when ProcessRequest is not called, get the session from
2603 the current context. Fixes bug #78730.
2605 2006-07-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2607 * Page.cs: fix IsPostback for AJAX calls to match MS behavior. Patch
2608 by Peijen Lin that closes bug #78646.
2610 2006-06-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2612 * TemplateControlParser.cs: fix compilation caching when more than one
2613 @control is compiled from source. Closes bug #78626.
2615 2006-06-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2617 * Page.cs: add the 2.0 Items property. Fixes bug #78467.
2619 2006-06-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2621 * Page.cs: use the new internal LosFormatter.SerializeToBase64.
2622 * LosFormatter.cs: always work on base 64 strings even if the
2623 input/output is on a Stream. Fixes bug #78640.
2625 2006-06-08 Konstantin Triger <kostat@mainsoft.com>
2627 * Page.cs: For loading themes, use '~/App_Themes' instead of
2628 './App_Themes' to enable theme support for files in sub folders.
2630 2006-05-25 Andrew Skiba <andrews@mainsoft.com>
2632 * Control.cs: move 2.0 stuff into ifdef NET_2_0
2634 2006-05-25 Andrew Skiba <andrews@mainsoft.com>
2636 * Page.cs, Control.cs: Fix the order of OnInit invocation of controls
2637 created via master page content (see
2638 http://lists.ximian.com/pipermail/mono-devel-list/2006-May/018585.html ).
2640 2006-05-11 Andrew Skiba <andrews@mainsoft.com>
2642 * Page.cs, PageTheme.cs: This patch uses LinkedStyleSheets from the
2643 PageTheme and from StyleSheetPageTheme to insert links in page header.
2645 2006-05-10 Andrew Skiba <andrews@mainsoft.com>
2647 * TemlpateParser.cs: surround file name with quotes
2649 2006-05-08 Chris Toshok <toshok@ximian.com>
2651 * ControlBuilder.cs (ResetState): set renderIndex to 0 here. This
2652 fixes the last thing keeping the test in #76818 from working.
2654 2006-05-07 Andrew Skiba <andrews@mainsoft.com>
2656 * Page.cs: if no theme is defined in aspx, read default from web.config.
2657 Same for the style sheet theme.
2659 2006-04-27 Andrew Skiba <andrews@mainsoft.com>
2661 * TemplateParser.cs: format according to
2662 http://lists.ximian.com/pipermail/mono-devel-list/2006-April/018096.html
2664 2006-04-25 Chris Toshok <toshok@ximian.com>
2666 * PageThemeParser.cs (LinkedStyleSheets): reformat.
2668 2006-04-25 Konstantin Triger <kostat@mainsoft.com>
2670 * Control.cs: implementation for IsViewStateEnabled.
2672 2006-04-25 Andrew Skiba <andrews@mainsoft.com>
2674 * Control.cs: fix null pointer exception
2676 2006-04-23 Andrew Skiba <andrews@mainsoft.com>
2678 * PageThemeParser.cs: add LinkedStyleSheets property
2680 2006-04-16 Andrew Skiba <andrews@mainsoft.com>
2682 * TemplateParser.cs: add internal method AddAssemblyByFileName
2684 2006-04-16 Konstantin Triger <kostat@mainsoft.com>
2686 * SimpleWebHandlerParser.cs: correctly resolve GACs dependencies.
2688 2006-04-11 Konstantin Triger <kostat@mainsoft.com>
2690 * Page.cs, TemplateControl.cs: refactoring implementing Page.GetDataItem().
2692 2006-04-10 Chris Toshok <toshok@ximian.com>
2694 * PageThemeFileParser.cs (AddDirective): allow Register directives
2697 2006-04-02 Chris Toshok <toshok@ximian.com>
2699 * Control.cs (DesignMode): always return false for now. Fixes
2702 2006-03-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2704 * ControlBuilder.cs: when creating a default property builder, handle
2707 * StringPropertyBuilder.cs: new builder used in TextBox 2.0.
2709 2006-03-15 Vladimir Krasnov <vladimirk@mainsoft.com>
2711 * ControlCollection.cs: fixed CopyTo method, fixes bug when if target
2714 2006-03-13 Chris Toshok <toshok@ximian.com>
2716 * HtmlTextWriterTag.cs: no [Serializable] in 2.0.
2718 * HtmlTextWriterAttribute.cs: same.
2720 * HtmlTextWriterStyle.cs: same.
2722 * VirtualReferenceType.cs: new enum.
2724 2006-03-13 Chris Toshok <toshok@ximian.com>
2726 * UserControl.cs: rework InitializeAsUserControl and
2727 InitializeAsUserControlInternal - the Internal variety doesn't set
2728 this.page to null now.
2730 * MasterPage.cs (CreateMasterPage): map the masterPageFile path,
2731 and also remove a line of spew.
2733 2006-03-09 Vladimir Krasnov <vladimirk@mainsoft.com>
2735 * Added PageParser.jvm.cs, WebServiceParser.jvm.cs
2737 2006-03-07 Chris Toshok <toshok@ximian.com>
2739 * Page.cs (InitializeStyleSheet): load the style sheet theme using
2740 ThemeDirectoryCompiler.
2741 (InitializeTheme): load the page's theme using
2742 ThemeDirectoryCompiler.
2743 (InternalProcessRequest): call InitializeTheme after OnPreInit.
2744 (FrameworkInitialize): call InitializeStyleSheet.
2745 (PageTheme,StyleSheetPageTheme): new properties to get the
2748 * Control.cs (ApplyStyleSheetSkin): new method. Calls ApplySkin
2749 on the ControlSkin (if there is one) for this control in the
2750 page's StyleSheetSkin.
2751 (ApplyThemeRecursively): applies the page's theme recursively to
2752 the control hierarchy. Must be done this way because the control
2753 tree is already present when we apply the theme (it has to be,
2754 since theme's override settings).
2756 * PageTheme.cs (GetControlSkin): add internal call to do the
2759 * PageThemeFileParser.cs: the parser object that represents each
2760 individual skin file.
2762 * PageThemeParser.cs: the parser object that represents the entire
2765 * PageThemeBuilder.cs: this class generates the right exception on
2766 the right event, but it's not hooked up yet.
2768 2006-03-02 Chris Toshok <toshok@ximian.com>
2770 * Control.cs (ApplyStyleSheetTheme): remove the exception, and add
2773 * Page.cs (Theme): implement setter/getter.
2774 (StyleSheetTheme): same.
2776 * PageParser.cs (ProcessMainAttributes): parse the Theme and
2777 StyleSheetTheme attributes.
2779 2006-02-27 Chris Toshok <toshok@ximian.com>
2781 * TemplateControl.cs: corcompare work.
2783 * ExpressionBindingCollection.cs: same.
2785 * HierarchicalDataSourceControl.cs: same.
2787 * PostBackOptions.cs: same.
2789 * ClientScriptManager.cs: same.
2791 * FilterableAttribute.cs: same.
2793 * ControlCollection.cs: same.
2795 * DataBindingCollection.cs: same.
2797 * PropertyEntry.cs: mark ctor internal.
2799 * SimpleWebHandlerParser.cs: mark the 2.0 ctor as internal.
2801 * Page.cs: stub out two Theme oriented 2.0 properties.
2803 * DataBinder.cs: remove the obsolete attribute on the ctor.
2805 * TwoWayBoundPropertyEntry.cs: remove this.
2807 * ControlBuilder.cs (BindingContainerType): virtual in 2.0.
2809 * ThemeProvider: new (stubbed) class.
2811 * SkinBuilder.cs: same.
2813 * PageTheme.cs: same.
2815 * ControlSkin.cs: same.
2817 * ControlSkinProc.cs: rename this to ControlSkinDelegate.cs.
2819 * SimplePropertyEntry.cs: mark ctor as internal.
2821 * IThemeResolutionService.cs: enable the 3 members of this
2824 2006-02-27 Chris Toshok <toshok@ximian.com>
2826 * ListSourceHelper.cs: this class is static.
2828 * Page.cs: add some EditorBrowsable attributes to the 2.0 events.
2830 2006-02-27 Chris Toshok <toshok@ximian.com>
2832 * DataSourceView.cs: Name isn't virtual.
2834 * DataSourceControl.cs: beat this class over the head with the
2837 * DataSourceControlBuilder.cs: new stubbed control builder for
2840 2006-02-23 Chris Toshok <toshok@ximian.com>
2842 * Page.cs: more corcompare work.
2844 2006-02-23 Chris Toshok <toshok@ximian.com>
2846 * Page.cs (ProcessCallbackData): track change to
2847 ICallbackEventHandler iface.
2849 * ICallbackEventHandler.cs: enable the proper members of this
2852 * DataSourceSelectArguments.cs: reformat getter/setters.
2854 2006-02-22 Cesar Lopez Nataren <cnataren@novell.com>
2856 * HtmlTextWriter.cs: Added method WriteEncodedText for the .NET 2.0 profile.
2858 2006-02-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2860 * WebHandlerParser.cs:
2861 * WebServiceParser.cs:
2862 * UserControlParser.cs:
2863 * PageParser.cs: added new ctor that uses a TextReader as input.
2865 * TemplateControlParser.cs: new Reader property.
2866 * SimpleWebHandlerParser.cs: new Reader property and ctor.
2868 2006-02-12 Cesar Lopez Nataren <cnataren@novell.com>
2870 * HtmlTextWriter.cs: Implemented IsValidFormAttribute and
2871 WriterBreak for the .NET 2.0 profile.
2873 2006-02-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2875 * IThemeResolutionService.cs: this is now added to the
2876 sources file, but some other stuff does not compile yet as the
2877 interface changed after the beta.
2879 * ObjectConverter.cs: removed extra attribute.
2881 * ObjectStateFormatter.cs: add IStateFormatter for 2.0.
2883 * ICallbackEventHandler.cs: update the interface, but commented the
2884 'good' stuff out, since other files need to be fixed too.
2886 2006-02-07 Chris Toshok <toshok@ximian.com>
2888 * ControlBuilder.cs: rename flushOutputStatements to
2889 methodStatements to at least reflect that they're in that method.
2891 2006-02-07 Chris Toshok <toshok@ximian.com>
2893 * MasterPage.cs (CreateMasterPage): don't nullref on null
2894 contentTemplateCollection.
2896 * ControlBuilder.cs: add a flushOutputStatements field.
2898 * PageParser.cs (ProcessMainAttributes): handle Title attribute.
2899 (Title): add getter.
2901 * Page.cs (Title): implement getter/setter.
2902 (InternalProcessRequest): after calling ApplyMasterPage, apply the
2903 page's Title directive if there is one.
2904 (AddContentTemplate): make the EditorBrowsable attribute apply to
2905 the method, not the field.
2907 2006-02-07 Chris Toshok <toshok@ximian.com>
2909 * MasterPage.cs: rework this file, adding some static methods
2910 gleaned from MS stack traces, and clear up the propogation of
2911 content templates between nested master pages.
2913 * Control.cs (TemplateControl): implement.
2915 * TemplateControl.cs: re-indent some of the code.
2916 (ReadStringRecource): according to msdn2, these throw
2917 NotSupportedException.
2919 * MasterPageParser.cs (HandleOption): implement. assign our
2920 master page's MasterPageFile from the UserControl property.
2922 * UserControl.cs (InitializeAsUserControlInternal): new method
2923 that allows initialization without a page.
2925 * UserControlParser.cs (ProcessMainAttributes): for 2.0 handle
2926 MasterPageFile attributes, so we can have nested master pages.
2927 (MasterPageFile): add a 2.0 specific property.
2929 * TemplateControlParser.cs: in .net 2.0, our base class is
2931 (HandleOptions): be consistent and call base.HandleOptions.
2933 * BaseTemplateParser.cs: new (stubbed) class.
2935 * MasterPageControlBuilder.cs: new file, not filled in (and really
2938 * Page.cs (InternalProcessRequest): call ApplyMasterPage.
2939 (SaveExistingContentTemplates): nuke.
2940 (ReapplyExistingContentTemplate): nuke.
2941 (ApplyMasterPage): if we have a master page, call
2942 MasterPage.ApplyMasterPageRecursive with it and add it to our
2944 (set_MasterPageFile): remove call to SaveExistingContentTemplates.
2945 (get_Master): call MasterPage.CreateMasterPage.
2946 (AddContentTemplate): keep track of the page's content templates
2947 in a local Hashtable - they aren't our master page's content
2950 2006-02-01 Chris Toshok <toshok@ximian.com>
2952 * TemplateParser.cs: CONFIGURATION_2_0 => NET_2_0, and replace
2953 calls to GetWebApplicationSection with GetSection.
2955 * SimpleWebHandlerParser.cs: same.
2959 * PageParser.cs: same.
2961 * BaseParser.cs: same.
2963 2006-01-27 Chris Toshok <toshok@ximian.com>
2965 * MasterPage.cs (ContentTemplatesInternal): add get/set for the
2968 * Page.cs (SaveExistingContentTemplates): store off the existing
2969 MasterPage content templates so they can be reapplied when setting
2970 MasterPageFile to something else.
2971 (ReapplyExistingContentTemplates): set masterPage's
2972 ContentTemplates to our saved copy.
2973 (set_MasterPageFile): save off the current content templates
2974 before clearing masterPage.
2975 (get_Master): reapply the saved content templates after we create
2978 2006-01-25 Chris Toshok <toshok@ximian.com>
2980 * ClientScriptManager.cs (RegisterClientScriptResource): last
2981 patch, I swear. How can 1 line of code have 3 bugs?
2983 2006-01-25 Chris Toshok <toshok@ximian.com>
2985 * ClientScriptManager.cs (RegisterClientScriptResource): gah, fix
2986 problem with last commit - unquote "resourceName" so it uses the
2987 parameter instead of the string constant.
2989 2006-01-22 Chris Toshok <toshok@ximian.com>
2991 * RootBuilder.cs (.cctor): use a 2.0 friendly hashtable ctor to
2994 * PageParser.cs (ProcessMainAttributes): i missed a
2995 CONFIGURATION_2_0 block.
2997 * BoundPropertyEntry.cs (.ctor): mark as internal to fix
3000 2006-01-18 Konstantin Triger <kostat@mainsoft.com>
3002 * ObjectStateFormatter.cs: preserve emptiness in ColorFormatter.
3004 2006-01-18 Konstantin Triger <kostat@mainsoft.com>
3006 * HtmlTextWriter.cs: perform case insensitive compare;
3007 return correct key in default case.
3009 2006-01-11 Chris Toshok <toshok@ximian.com>
3011 * ClientScriptManager.cs (RegisterClientScriptResource):
3014 2006-01-11 Vladimir Krasnov <vladimirk@mainsoft.com>
3016 * ObjectStateFormatter.cs: Removed TARGET_JVM parts in
3019 2006-01-10 Chris Toshok <toshok@ximian.com>
3021 * Page.cs (ValidateCollection): in NET_2_0 if event validation is
3024 2006-01-09 Chris Toshok <toshok@ximian.com>
3026 * Page.cs: fix a lot of indentation, and add the
3027 EnableEventValidation .net 2.0 property.
3029 2006-01-09 Vladimir Krasnov <vladimirk@mainsoft.com>
3031 * ObjectStateFormatter.cs: Merged TARGET_JVM parts in
3032 TypeFormatter.Read, TypeFormatter.Write from /main/5
3034 2006-01-09 Konstantin Triger <kostat@mainsoft.com>
3036 * Page.cs: make ProcessRequest virtual under TARGET_JVM.
3038 2006-01-04 Chris Toshok <toshok@ximian.com>
3040 * TemplateParser.cs (.ctor): kinda gross, but handle the
3041 AddAssembliesInBin case here.
3043 * SimpleWebHandlerParser.cs (.ctor): same.
3045 2006-01-04 Chris Toshok <toshok@ximian.com>
3047 * SimpleWebHandlerParser.cs: Remove the declaration of
3048 compilationConfig in the CONFIGURATION_2_0 case. it's
3050 (.ctor): ifdef out the AddAssembliesInBin call in the
3051 CONFIGURATION_2_0 case. need to revisit this.
3052 (CompilationConfig): add a CONFIGURATION_2_0 version.
3054 * BaseParser.cs: Remove the declaration of compilationConfig in
3055 the CONFIGURATION_2_0 case. it's unnecessary.
3057 2005-12-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3059 * Control.cs: use _controls instead of the property wherever possible.
3061 2005-12-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3063 * Control.cs: use the _controls field instead of the Controls property.
3066 2005-11-30 Sebastien Pouliot <sebastien@ximian.com>
3068 * KeyedList.cs: Fixed for IOrderedDictionary change in 2.0 final.
3070 * KeyedListEnumerator.cs: Now internal.
3072 2005-11-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3074 * ControlCollection.cs: allow 'null' in Remove.
3076 2005-11-28 Chris Toshok <toshok@ximian.com>
3078 * Page.cs (GetFormatter): CONFIGURATION_2_0 work.
3080 * TemplateParser.cs (..ctor): CONFIGURATION_2_0 work.
3081 (PagesConfig): add a CONFIGURATION_2_0 version that returns a
3084 * PageParser.cs (ProcessMainAttributes): CONFIGURATION_2_0 work.
3086 * BaseParser.cs (CompilationConfig): add a CONFIGURATION_2_0
3087 version that returns a CompilationSection.
3089 2005-11-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3091 * SimpleWebHandlerParser.cs: removed 'codebehind' related stuff.
3093 2005-11-09 Chris Toshok <toshok@ximian.com>
3095 * ViewStateEncryptionMode.cs: new 2.0 enum.
3097 2005-11-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3099 * TemplateParser.cs: fixes #76423. Not tested properly.
3101 2005-11-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3103 * Page.cs: call LoadViewStateRecursive when the Form collection has
3104 not been used by a different page (GetTypeHashCode). This fixes problems
3105 when calling Server.Transfer while preserving Form and QueryString,
3106 as the page we transfer to used the view state stored in the Form, which
3107 contained the serialized data for the page calling Server.Transfer
3110 2005-10-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3112 * Page.cs: add/remove the error before/after invoking OnError.
3114 2005-10-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3116 * Page.cs: call OnError when there's an exception (not for TAE). Fixes
3119 2005-10-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3121 * TemplateControl.cs:
3122 * PartialCachingControl.cs: if a control is cacheable, LoadControl
3123 returns a PartialCachingControl that holds the VaryBy* and takes care
3124 of partial caching and rendering. Fixes bug #76547.
3126 2005-10-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3128 * Page.cs: don't cache the 'Validate()' results. IsValid retests
3129 the validators again.
3131 2005-09-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3133 * DesignerDataBoundLiteralControl.cs: changed autoid api.
3134 * DataBoundLiteralControl.cs: changed autoid api.
3136 * Control.cs: fixlet for UniqueID and weird test case. Removed
3137 PreventAutoID and only use the property to set that value.
3139 * LiteralControl.cs: changed autoid api.
3141 2005-09-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3143 * AttributeCollection.cs: avoid code duplication and
3144 don't add "style" to the bag, or it will overwrite the settings made
3145 by CssStyleCollection.
3147 * CssStyleCollection.cs: make it throw where MS throws.
3148 Minimize the number of times we create the "style" string and take
3149 care of updating it for the AttributeCollection. FillStyle and
3150 BagToString are now private. One should use the 2.0 (internal in <2.0)
3153 2005-09-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3155 * Control.cs: fix HasChildViewStates.
3157 2005-09-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3159 * LosFormatter.cs: when the default ctor is used, MAC is disabled.
3162 2005-09-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3164 * ObjectTagBuilder.cs: only fail when no id and no attributes.
3166 2005-09-23 Sebastien Pouliot <sebastien@ximian.com>
3168 * DataBindingCollection.cs: Using an hashtable is a nice trick but
3169 we need to copy values (not the DictionaryEntry) in CopyTo.
3170 * Page.cs: IsValid throws an exception if the page hasn't be
3171 validated. VerifyRenderingInServerForm doesn't throw an exception
3172 during unit testing (without a context?) but does in normal ops.
3174 2005-09-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3176 * LosFormatter.cs: the exceptions thrown have a 500 httpCode. Really
3177 save the allocation of new MemoryStreams when possible. Thanks to
3180 2005-09-23 Ben Maurer <bmaurer@ximian.com>
3182 * HtmlTextWriter.cs: Initial support for escaping.
3184 2005-09-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3186 * ViewStateOutputHashStream.cs: Removed. It didn't last long.
3188 * Page.cs: almost restored to its previous state, but now that we found
3189 that LosFormatter ctor that takes 'enableMac', moved the logic to
3190 add the hash and validate there. Thanks to Sebastien for his input.
3192 * LosFormatter.cs: implemented the missing ctors and support for
3193 "MAC" validation of the data.
3195 2005-09-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3198 * ViewStateOutputHashStream.cs: added support for viewstate MAC. It
3199 prevents the viewstate being altered on the client and it's disabled
3200 by default as per the documentation, but MS machine.config has it
3201 enabled in machine.config.
3203 2005-09-22 Miguel de Icaza <miguel@novell.com>
3205 * DataBindingCollection.cs: Raise the event, remove MonoTODO.
3207 * MinimizableAttributeTypeConverter.cs: Fix warning, compare to a
3210 2005-09-21 Sebastien Pouliot <sebastien@ximian.com>
3212 * Control.cs: Added null checks for Trace as it can be null when
3213 rendering (like it was for 39 unit tests).
3215 2005-09-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3217 * Page.cs: reverted hacks used with the wrong method of getting a
3218 control rendered size.
3219 * Control.cs: if the trace is enabled, save control rendered size.
3221 2005-09-19 Sebastien Pouliot <sebastien@ximian.com>
3223 * Page.cs: Remove references to IPageParser (removed from 2.0 RC). We
3224 now use HtmlHeader directly.
3225 * UrlPropertyAttribute.cs: Removed AllowedTypes property (2.0 RC) and
3226 rewrote Equals to avoid dual type cast.
3228 2005-09-19 Sebastien Pouliot <sebastien@ximian.com>
3230 * SupportsEventValidationAttribute.cs: New attribute added in 2.0 RC.
3232 2005-09-19 Sebastien Pouliot <sebastien@ximian.com>
3234 * ControlBuilder.cs: Added BuildObject override for 2.0 profile.
3235 * TagPrefixAttribute.cs: Added LinkDemand for AspNetHostingPermission
3236 with Minimal level. Fixed checks on ctor.
3237 * TemplateBuilder.cs: Added LinkDemand and InheritanceDemand for
3238 AspNetHostingPermission with Minimal level.
3239 * TemplateContainerAttribute.cs: Added LinkDemand for
3240 AspNetHostingPermission with Minimal level.
3241 * TemplateControl.cs: Added LinkDemand and InheritanceDemand for
3242 AspNetHostingPermission with Minimal level. Fixed checks/exceptions.
3243 Stubbed IFilterResolutionService for CAS testing.
3244 * TemplateControlParser.cs: Added LinkDemand and InheritanceDemand for
3245 AspNetHostingPermission with Minimal level.
3246 * TemplateParser.cs: Added LinkDemand and InheritanceDemand for
3247 AspNetHostingPermission with Minimal level.
3248 * ThemeableAttribute.cs: Added LinkDemand for AspNetHostingPermission
3249 with Minimal level. Removed IDispose interface.
3250 * ToolboxDataAttribute.cs: Added LinkDemand for
3251 AspNetHostingPermission with Minimal level. Fixed IsDefaultAttribute
3252 to work on both 1.x and 2.0 profiles.
3253 * Triplet.cs: Added LinkDemand and (only for 1.x) InheritanceDemand
3254 for AspNetHostingPermission with Minimal level.
3255 * UserControl.cs: Added LinkDemand and InheritanceDemand for
3256 AspNetHostingPermission with Minimal level. Stubbed
3257 IFilterResolutionService for CAS testing.
3258 * UserControlControlBuilder.cs: Added LinkDemand and InheritanceDemand
3259 for AspNetHostingPermission with Minimal level.
3260 * ValidationPropertyAttribute.cs: Added LinkDemand for
3261 AspNetHostingPermission with Minimal level.
3262 * ValidatorCollection.cs: Added LinkDemand for AspNetHostingPermission
3264 * WebResourceAttribute.cs: Removed extra ctor and added setter to
3265 PerformSubstitution.
3266 * WebServiceParser.cs: Added LinkDemand and InheritanceDemand for
3267 AspNetHostingPermission with Minimal level.
3269 2005-09-15 Sebastien Pouliot <sebastien@ximian.com>
3271 * ParseChildrenAttribute.cs: Added LinkDemand for
3272 AspNetHostingPermission with Minimal level. Simplified Equals to avoid
3273 casting. Added new ctor and public fields (2.0). Changed
3274 ChildControlType setter visibility to internal.
3275 * PartialCachingAttribute.cs: Added LinkDemand for
3276 AspNetHostingPermission with Minimal level. Added new ctor and
3277 SqlDependency property (2.0).
3278 * PartialCachingControl.cs: Added LinkDemand and InheritanceDemand for
3279 AspNetHostingPermission with Minimal level.
3280 * PersistenceModeAttribute.cs: Added LinkDemand for
3281 AspNetHostingPermission with Minimal level. Simplified Equals to avoid
3283 * PersistChildrenAttribute.cs: Added LinkDemand for
3284 AspNetHostingPermission with Minimal level. Simplified Equals to avoid
3286 * PropertyConverter.cs: Added LinkDemand for AspNetHostingPermission
3287 with Minimal level. Class is static in 2.0.
3288 * RootBuilder.cs: Added LinkDemand and, for 2.0, InheritanceDemand for
3289 AspNetHostingPermission with Minimal level. Class is no more sealed in
3290 2.0. Added new (2.0) BuiltObjects property.
3291 * SimpleWebHandlerParser.cs: Added LinkDemand and InheritanceDemand
3292 for AspNetHostingPermission with Minimal level.
3293 * StateItem.cs: Added LinkDemand for AspNetHostingPermission with
3295 * StateBag.cs: Added LinkDemand for AspNetHostingPermission with
3296 Minimal level. Removed SetDirty() which was called (2.0) but did
3298 * StaticPartialCachingControl.cs: Added LinkDemand and
3299 InheritanceDemand for AspNetHostingPermission with Minimal level.
3301 2005-09-15 Sebastien Pouliot <sebastien@ximian.com>
3303 * Html32TextWriter.cs: Added LinkDemand and InheritanceDemand for
3304 AspNetHostingPermission with Minimal level. Added new 2.0 properties
3305 (but the generated HTML doesn't use them).
3306 * HtmlTextWriter.cs: Added LinkDemand and InheritanceDemand for
3307 AspNetHostingPermission with Minimal level.
3308 * ImageClickEventArgs.cs: Added LinkDemand for AspNetHostingPermission
3310 * LiteralControl.cs: Added LinkDemand and InheritanceDemand for
3311 AspNetHostingPermission with Minimal level. Default Text is null.
3312 * LosFormatter.cs: Added LinkDemand and InheritanceDemand for
3313 AspNetHostingPermission with Minimal level. Stubbed new 2.0 ctor.
3314 * ObjectConverter.cs: Added LinkDemand and InheritanceDemand for
3315 AspNetHostingPermission with Minimal level. Obsoleted ctor for 2.0.
3316 * ObjectTagBuilder.cs: Added LinkDemand for AspNetHostingPermission
3317 with Minimal level. Added check for null id (HttpException).
3318 * Page.cs: Added LinkDemand and InheritanceDemand for
3319 AspNetHostingPermission with Minimal level. Throw some HttpException
3320 when no context is available.
3321 * Pair.cs: Added LinkDemand for AspNetHostingPermission with Minimal
3322 level. InheritanceDemand too for 1.x.
3323 * PageParser.cs: Added LinkDemand for AspNetHostingPermission with
3326 2005-09-14 Sebastien Pouliot <sebastien@ximian.com>
3328 * DataBinder.cs: Added LinkDemand for AspNetHostingPermission with
3329 Minimal level. Fixed some exceptions.
3330 * DataBindingCollection.cs: Added LinkDemand for
3331 AspNetHostingPermission with Minimal level. Added 2.0 method and
3333 * DataBindingHandlerAttribute.cs: Added LinkDemand for
3334 AspNetHostingPermission with Minimal level.
3335 * DataBinding.cs: Added LinkDemand for AspNetHostingPermission with
3336 Minimal level. Simplified Equals (reduced casts).
3337 * DataBoundLiteralControl.cs: Added LinkDemand for
3338 AspNetHostingPermission with Minimal level. Implemented ITextControl
3340 * DesignerDataBoundLiteralControl.cs: Added LinkDemand for
3341 AspNetHostingPermission with Minimal level.
3342 * DesignTimeParseData.cs: Added LinkDemand for AspNetHostingPermission
3343 with Minimal level. Added new 2.0 properties.
3344 * DesignTimeTemplateParser.cs: Added LinkDemand for
3345 AspNetHostingPermission with Minimal level. Made class static and
3346 stubbed missing methods (2.0).
3347 * EmptyControlCollection.cs: Added LinkDemand and InheritanceDemand
3348 for AspNetHostingPermission with Minimal level. Changed Add* methods
3349 exceptions to HttpException.
3351 2005-09-14 Sebastien Pouliot <sebastien@ximian.com>
3353 * AttributeCollection.cs: Added LinkDemand for AspNetHostingPermission
3355 * BaseParser.cs: Added LinkDemand and InheritanceDemand for
3356 AspNetHostingPermission with Minimal level.
3357 * BasePartialCachingControl.cs: Added LinkDemand and InheritanceDemand
3358 for AspNetHostingPermission with Minimal level.
3359 * CompiledTemplateBuilder.cs: Added LinkDemand for
3360 AspNetHostingPermission with Minimal level.
3361 * ConstructorNeedsTagAttribute.cs: Added LinkDemand for
3362 AspNetHostingPermission with Minimal level.
3363 * ControlBuilderAttribute.cs: Added LinkDemand for
3364 AspNetHostingPermission with Minimal level. Simplified Equals and
3366 * ControlBuilder.cs: Added LinkDemand and InheritanceDemand for
3367 AspNetHostingPermission with Minimal level.
3368 * ControlCachePolicy.cs: Hided ctor and removed SupportsCaching setter
3369 * ControlCollection.cs: Added LinkDemand and InheritanceDemand for
3370 AspNetHostingPermission with Minimal level. Fixed possible stack
3371 overflow in Add* methods. Fixed CopyTo as we're not allocating the
3372 array based on the number of items.
3373 * Control.cs: Added LinkDemand and InheritanceDemand for
3374 AspNetHostingPermission with Minimal level. Fixed 2.0 signatures.
3375 * CssStyleCollection.cs: Added LinkDemand for AspNetHostingPermission
3377 * IStyleSheet.cs: Fixed parameter orders (2.0).
3379 2005-09-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3381 * TemplateParser.cs: default VS 2005 pages are compiled fine now.
3383 2005-09-07 Chris Toshok <toshok@ximian.com>
3385 * MinimizableAttributeTypeConverter.cs: new class, whose existence
3386 we know about because of corcompare, and for whose implementation
3387 we have exclusively nunit to thank.
3389 2005-09-06 Chris Toshok <toshok@ximian.com>
3391 * RootBuilder.cs (.cctor): doh, add all the new html controls
3394 2005-08-31 Chris Toshok <toshok@ximian.com>
3396 * DataSourceSelectArguments.cs (Empty): this is apparently,
3397 according to corcompare, a property, not a field. go figure.
3398 (Equals): implement.
3399 (IsEmpty): remove all mention of it.
3401 2005-08-29 Chris Toshok <toshok@ximian.com>
3403 * StateBag.cs (GetChar): add.
3405 2005-08-28 Chris Toshok <toshok@ximian.com>
3407 * Page.cs: more random corcompare work.
3408 (PageAdapter): implement.
3410 2005-08-28 Chris Toshok <toshok@ximian.com>
3412 * Page.cs (.ctor): set our initial ID to "__Page".
3413 (SmartNavigation): obsolete in 2.0.
3414 (FindControl): new implementation. Just check our own ID against
3415 the control we're looking for. otherwise pass it along to
3417 (GetPostBackClientHyperlink): obsolete in 2.0.
3419 2005-08-28 Chris Toshok <toshok@ximian.com>
3421 * ClientScriptManager.cs: public sealed in 2.0
3423 * IAdaptableTextWriter.cs: new 2.0 interface.
3425 * IHierarchyData.cs: fix return type for GetParent.
3427 2005-08-28 Chris Toshok <toshok@ximian.com>
3429 * Pair.cs: mark serializable and sealed in 2.0.
3431 2005-08-26 Sebastien Pouliot <sebastien@ximian.com>
3433 * CssStyleCollection.cs: Implemented setter for Value (2.0) using the
3434 existing (but internal) FillStyle method. Rewrote BagToString to use an
3435 HtmlTextWriter so we get the "right" format for background-image url.
3437 2005-08-26 Sebastien Pouliot <sebastien@ximian.com>
3439 * CssStyleCollection.cs: Implemented this[HtmlTextWriterStyle],
3440 Remove(HtmlTextWriterStyle) and the getter for Value (all 2.0). Removed
3441 the extra space from last patch because they break some unit tests.
3443 2005-08-26 Lluis Sanchez Gual <lluis@novell.com>
3445 * CssStyleCollection.cs: Added some spacing.
3446 * HtmlTextWriter.cs: Made style and attribute tables static.
3447 Implemented StaticGetStyleName().
3449 2005-08-26 Sebastien Pouliot <sebastien@ximian.com>
3451 * CssStyleCollection.cs: Stubbed new 2.0 stuff to allow TableStyleTest
3453 * HtmlTextWriter.cs: Fix style rendering for BackgroundImage in 2.0.
3454 The new rendering formats the value as "url(" + original + ")".
3456 2005-08-26 Sebastien Pouliot <sebastien@ximian.com>
3458 * HtmlTextWriter.cs: Added support for VerticalAlign style (as it
3459 depends on the HtmlTextWriterStyle ordering).
3461 2005-08-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3463 * HtmlTextWriter.cs: remove 'mistaken end of statement' and FIXME.
3465 2005-08-25 Sebastien Pouliot <sebastien@ximian.com>
3467 * HtmlTextWriterStyle.cs: Added missing VerticalAlign in 2.0 (which
3468 fixed the rest of the enum values).
3469 * UrlPropertyAttribute.cs: Removed the .ctor accepting an UrlTypes
3470 parameter to match 2.0 API. Added a setter to the AllowedTypes
3473 2005-08-24 Chris Toshok <toshok@ximian.com>
3475 * Control.cs (get_Adapter): Instead of throwing an exception, just
3476 return null, so we can write the rest of the Control specific
3477 Adapter code and just not enable any of those code paths until we
3478 have actual adapters. Also flag TODO.
3479 (EnsureChildControls): Call out to Adapter.CreateChildControls if
3481 (RenderChildren): call "RenderControl (writer, adapter)" if we
3483 (RenderControl): implement the adapter case naively.
3484 (LoadRecursive): call out to Adapter.OnLoad if we have one.
3485 (PreRenderRecursiveInternal): call out to Adapter.OnPrerender if
3487 (InitRecursive): call out to Adapter.OnInit if we have one.
3489 2005-08-24 Chris Toshok <toshok@ximian.com>
3491 * Page.cs (GetPostBackEventReference): track change to
3492 ClientScriptManager and don't call a removed method.
3494 * ClientScriptManager.cs: track more recent docs and corcompare
3497 2005-08-24 Sebastien Pouliot <sebastien@ximian.com>
3499 * KeyedList.cs: Fixed bug when removing an unexisting object.
3500 * StateManagedCollection.cs: Fixed API for beta2. Fixed buglets found
3501 in implementing RoleGroupCollection.
3503 2005-08-22 Sebastien Pouliot <sebastien@ximian.com>
3505 * Page.cs: Use Control property (and not the _control variable) to get
3506 the User (so the virtual Control property can be overriden properly).
3507 Sadly this doesn't seems to be the case for other properties (like
3510 2005-08-18 Dick Porter <dick@ximian.com>
3512 * ControlCachePolicy.cs, PersistChildrenAttribute.cs,
3513 UserControl.cs, DesignerDataBoundLiteralControl.cs,
3514 PageStatePersister.cs, DataBoundLiteralControl.cs, Control.cs,
3515 BasePartialCachingControl.cs, LiteralControl.cs: 2.0 API fixes and
3516 stubs and attribute fixes
3518 2005-08-13 Sebastien Pouliot <sebastien@ximian.com>
3520 * Control.cs: Add protected virtual SetDesignModeState, in 2.0
3521 profile, as this is required for the Login control.
3523 2005-08-11 Dick Porter <dick@ximian.com>
3525 * CssStyleCollection.cs: Tweak the css string format to pass a
3528 * AttributeCollection.cs: Don't NRE if someone sets the "style"
3531 2005-08-05 Ben Maurer <bmaurer@ximian.com>
3533 * HtmlTextWriter.cs: Revert the patch below, see test case
3535 2005-08-05 Dick Porter <dick@ximian.com>
3537 * HtmlTextWriter.cs: Make <option> tags render inline, to match
3540 2005-08-03 Ben Maurer <bmaurer@ximian.com>
3542 * HtmlTextWriter.cs: Optmize this not to do insane amounts of
3543 allocation for large pages, etc.
3545 2005-07-30 Chris Toshok <toshok@ximian.com>
3547 * Page.cs (VerifyRenderingInServerForm): copy MS's error message
3548 since our form-errors jsunit tests depend on it.
3550 2005-07-30 Chris Toshok <toshok@ximian.com>
3552 * DataBinder.cs (FormatResult): make internal, not private.
3554 2005-07-29 Ben Maurer <bmaurer@ximian.com>
3556 * StateBag.cs: Don't remove when tracking viewstate, as per msft
3559 2005-07-29 Ben Maurer <bmaurer@ximian.com>
3561 * StateBag.cs: Actually *remove* items that are null. Duh.
3563 2005-07-21 Peter Dennis Bartok <pbartok@novell.com>
3565 * Page.cs: Need to throw exception when accessing Request but no
3568 2005-07-20 Chris Toshok <toshok@ximian.com>
3570 * ClientScriptManager.cs (GetClientValidationEvent): the JS we
3571 stick in onclick handlers for buttons/links/etc.
3573 * Page.cs (GetSubmitStatements): new function to return
3574 scriptManager.WriteSubmitStatements. Used by HtmlForm.
3575 (AreValidatorsUplevel): used by many of the button/linkbutton
3576 controls (the ones that can CauseValidation) to tell whether or
3577 not to emit client side validation calls.
3579 2005-07-20 Chris Toshok <toshok@ximian.com>
3581 * WebResourceAttribute.cs: make internal (and available) in
3584 2005-07-20 Chris Toshok <toshok@ximian.com>
3586 * ClientScriptManager.cs (GetWebResourceUrl): make internal (but
3587 available) in !NET_2_0.
3589 2005-07-18 Peter Dennis Bartok <pbartok@novell.com>
3591 * Control.cs: Added IDataBindingsAccessor interface methods
3593 2005-07-18 Ben Maurer <bmaurer@ximian.com>
3595 * HtmlTextWriter.cs: Fix nested indentation
3597 2005-07-18 Peter Dennis Bartok <pbartok@novell.com>
3599 * Control.cs: Added missing IParserAccessor.AddParsedSubObject
3602 2005-07-18 Ben Maurer <bmaurer@ximian.com>
3604 * HtmlTextWriter.cs: Fix indentation (somewhat at least)
3606 2005-07-18 Peter Dennis Bartok <pbartok@novell.com>
3609 - Default name for controls on MS.Net is "_ctl" not "_ctrl"
3610 - MS does not append 'a' for auto-generated names
3612 2005-07-17 Ben Maurer <bmaurer@ximian.com>
3614 * AttributeCollection.cs: Use the invariant culture.
3616 * StateBag.cs: "Duh" optimization: return null when there are no
3617 dirty items in the view state
3619 2005-07-14 Ben Maurer <bmaurer@ximian.com>
3621 * StateBag.cs: A "short" version of my favorite method.
3623 * HtmlTextWriter.cs: New method to get the tag name staticly.
3625 2005-07-14 Duncan Mak <duncan@novell.com>
3627 * DataBindingHandlerAttribute.cs: Fixed after receiving some
3628 comments from Gonzalo.
3630 2005-07-13 Jackson Harper <jackson@ximian.com>
3632 * PropertyConverter.cs: No public constructors.
3634 2005-07-13 Ben Maurer <bmaurer@ximian.com>
3636 * HtmlTextWriter.cs: Remove debugging spew. Style cleanup
3638 2005-07-12 Ben Maurer <bmaurer@ximian.com>
3640 * HtmlTextWriter.cs: Make styles work.
3642 2005-07-11 Peter Dennis Bartok <pbartok@novell.com>
3644 * AttributeCollection.cs:
3645 - Changes to match MS behaviour, the "style" attribute is always
3646 added to the list, in addition to being added to the
3647 CssStyleCollection. Also added check for "style" attribute when
3648 setting via index setter
3649 - When "Style" attribute is added, CssStyleCollection is
3650 automatically created
3651 - The style keyword needs to be lowercase
3653 2005-07-11 Ben Maurer <bmaurer@ximian.com>
3655 * HtmlTextWriter.cs: Missing a PopEndTag here.
3657 * PropertyConverter.cs: Pass tests
3659 2005-07-09 Miguel de Icaza <miguel@novell.com>
3661 * DataBindingHandlerAttribute.cs: Create the "Default" property.
3663 2005-07-09 Duncan Mak <duncan@novell.com>
3665 * DataBindingHandlerAttribute.cs: Implemented.
3667 2005-07-08 Ben Maurer <bmaurer@ximian.com>
3669 * HtmlTextWriter.cs: Much better compliance with msft
3671 2005-07-08 Jackson Harper <jackson@ximian.com>
3673 * ToolbarDataAttribute.cs: New implementation.
3675 2005-07-07 Jackson Harper <jackson@ximian.com>
3677 * PropertyConverter.cs: New implementation.
3679 2005-07-07 Ben Maurer <bmaurer@ximian.com>
3681 * StateBag.cs: Noticed an issue where SetDirty was called when the
3684 2005-07-07 Ben Maurer <bmaurer@ximian.com>
3686 * StateBag.cs: Add a method that gets a string or else a default
3689 2005-07-07 Dick Porter <dick@ximian.com>
3691 * StateBag.cs: Added internal SetDirty (void) method to fix the
3694 2005-07-07 Sebastien Pouliot <sebastien@ximian.com>
3696 * HtmlTextWriter.cs: Small fixlet when attribute has no value.
3698 2005-07-07 Miguel de Icaza <miguel@novell.com>
3700 * HtmlTextWriter.cs: Return the stuff in lowercase to pass the
3703 * StateBag.cs: Add NET_2_0 SetDirty method to get the build
3706 2005-07-07 Sebastien Pouliot <sebastien@ximian.com>
3708 * HtmlTextWriter.cs: Small fixlet (required for the unit tests).
3710 2005-07-06 Ben Maurer <bmaurer@ximian.com>
3712 * HtmlTextWriter.cs: Make sure to clear attributes when they are
3715 * StateBag.cs: New impl
3717 2005-06-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3720 * Control.cs: avoid the creation of the EventHandlerList and accessing
3721 to it whenever possible. Fix ENABLE_THEMING constant.
3723 2005-06-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3725 * TemplateParser.cs:
3726 * TemplateControlParser.cs:
3727 * UserControlParser.cs: detect circular references when a control tries
3728 to register itself as a tag. Fixes bug #75376.
3730 2005-06-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3732 * PageParser.cs: don't try to compile the master page if it wan't
3733 provided. Use MapPath from the base classes instead of the long
3734 version. Fixes bug #75269 that prevented xsp2 from working properly.
3736 2005-06-13 Lluis Sanchez Gual <lluis@novell.com>
3738 * MasterPage.cs: Clear the default content of placeholders before
3739 adding the page content. Fixes bug #75193.
3741 2005-06-13 Lluis Sanchez Gual <lluis@novell.com>
3743 * PageParser.cs: Added MasterType property. Get the type from the
3744 MasterType directive.
3745 * MasterPageParser.cs: Added GetCompiledMasterType method.
3747 2005-06-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3751 * Control.cs: updates for 1.1 SP1
3753 2005-06-06 Lluis Sanchez Gual <lluis@novell.com>
3755 * Control.cs: Added new DataBind() overload for 2.0. The old
3756 method calls this new overload.
3758 2005-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3760 * TemplateParser.cs: ignore empty assembly.Location for in-memory
3761 generated assemblies.
3763 2005-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3765 * Page.cs: added AddContentTemplate method.
3767 2005-05-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3769 * AttributeCollection.cs: html-encode attribute values. Fixes
3772 2005-05-26 Lluis Sanchez Gual <lluis@novell.com>
3774 * DataSourceView.cs: Fix api.
3775 * NonVisualControlAttribute.cs: Implemented.
3776 * IDataItemContainer.cs: Added missing properties.
3777 * Control.cs: Added new EnableTheming and SkinID properties.
3778 * HierarchicalDataSourceControl.cs: Implemented missing methods.
3780 2005-05-13 Lluis Sanchez Gual <lluis@novell.com>
3782 * ControlCollection.cs: Added internal setter for ReadOnly.
3784 2005-05-09 Geoff Norotn <gnorton@customerdna.com>
3786 * TemplateParser.cs: Silently remove the CodeFile attribute that ASP.NET 2.0
3787 uses instead of codebehind.
3789 2005-05-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3791 * Page.cs: as setting CurrentCulture is slow, don't set it if the
3792 culture has not changed since before the page started processing.
3794 2005-05-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3796 * TemplateParser.cs: LoadWithPartialName returns null if the assembly is
3799 2005-04-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3801 * TemplateParser.cs:
3802 * SimpleWebHandlerParser.cs: removed values assigned and neved used.
3804 2005-04-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3806 * SimpleWebHandlerParser.cs:
3807 * TemplateParser.cs: always get the location (full path) for assemblies,
3808 even the ones from the GAC.
3810 * BaseCompiler.cs: check that DynamicBase directory exists before
3811 creating the TempFileCollection.
3813 2005-04-22 Lluis Sanchez Gual <lluis@novell.com>
3815 * ClientScriptManager.cs: Use a linked list instead of a Hashtable
3816 to store the scripts. In this way, scripts will be rendered in the
3817 same order as they have been registered. It shouldn't be slower
3818 since pages don't have many scripts.
3820 2005-04-21 Lluis Sanchez Gual <lluis@novell.com>
3822 * IEditableTextControl.cs: Implemented.
3823 * DataBinder.cs: Marked constructor as obsolete in 2.0.
3824 In GetDataItem, check for the IDataItemContainer interface
3826 * TemplateControl.cs: Improved check for data item.
3828 2005-04-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3830 * TemplateParser.cs: we still need LoadWithPartialName if Load fails.
3831 * Page.cs: ensure _requiresPostBack is emptied if we didn't have a copy
3832 for second postback.
3834 2005-04-20 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
3835 * TemplateParser.cs: Adding support for Strict/Explicit attributes
3836 for @Page/@Control directives as documented at
3837 http://msdn.microsoft.com/library/en-us/cpgenref/html/cpconControlDirective.asp.
3838 First step don't choke on them. Fixing #74671
3840 2005-04-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3842 * TemplateParser.cs: use Load instead of LoadWithPartialName. That was
3843 there from the time when Load wasn't working properly. First part of the
3846 2005-04-15 Lluis Sanchez Gual <lluis@novell.com>
3848 * ControlBuilder.cs: The BindingContainerType property happens
3849 to exist in 2.0, so I made it public. Added ParentTemplateBuilder,
3850 which is used to get the binding container that is managing
3851 the current two-way binding context.
3852 * TemplateBuilder.cs: Added some methods and an internal class
3853 to support two-way bindings.
3854 * CompiledBindableTemplateBuilder.cs: Implemented.
3855 * IBindableTemplate.cs: This interface inherits from ITemplate.
3857 2005-04-14 Lluis Sanchez Gual <lluis@novell.com>
3859 * ControlBuilder.cs: Added BindingContainerType property,
3860 which works like NamingContainerType but takes into account
3861 template builders with a specific container type (specified
3862 using the TemplateContainerAttribute.
3863 * StateManagedCollection.cs: Reimplemented Save/Load view
3864 state methods. The existing implementation was not correct
3867 2005-04-08 Lluis Sanchez Gual <lluis@novell.com>
3869 * DataSourceView.cs: Added null check.
3871 2005-04-07 Lluis Sanchez Gual <lluis@novell.com>
3873 * TemplateControl.cs:
3874 * Page.cs: Moved Eval and XPath from Page
3876 * StateManagedCollection.cs: Avoid saving null state.
3878 2005-04-01 Lluis Sanchez Gual <lluis@novell.com>
3880 * DataSourceView.cs: Rethrow exceptions not handled by operation
3882 * ITextControl.cs: Removed event.
3883 * CollectionBuilder.cs: Don't crash when a collection has more
3886 2005-03-23 Lluis Sanchez Gual <lluis@novell.com>
3888 * Control.cs: Added a new internal property: HasRenderMethodDelegate.
3889 * HtmlTextWriterAttribute.cs: Replaced wrong enum value.
3890 * HtmlTextWriter.cs: Register new ASP.NET 2.0 attributes
3892 2005-03-16 Lluis Sanchez Gual <lluis@novell.com>
3894 * ClientScriptManager.cs: Fix build.
3896 2005-03-11 Lluis Sanchez Gual <lluis@novell.com>
3898 * Utils.cs, Control.cs: Don't use Page.GetPostBackClientEvent
3899 since it is deprecated in 2.0.
3900 * Page.cs: Deprecated GetPostBackClientEvent and similar methods
3901 in 2.0. Moved callback management methods to ClientScriptManager.
3902 * ClientScriptManager.cs: Moved here deprecated methods from Page.
3903 In GetPostBackEventReference (PostBackOptions), don't use the
3904 WebForm_DoPostback script if the post can be done with a simple
3906 * PostBackOptions.cs: Fixed default values for some properties.
3908 2005-03-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3910 * Control.cs: in FindControl, throw if there's more than one control
3911 with the same ID. Fixes bug #73479.
3913 2005-03-04 Lluis Sanchez Gual <lluis@novell.com>
3915 * Page.cs: Load control state before loading view state, and the
3917 * DataSourceSelectArguments.cs: Fix recursive property call.
3919 2005-02-25 Lluis Sanchez Gual <lluis@novell.com>
3921 * DataSourceView.cs: Fixed incorrect implementation of
3922 RaiseUnsupportedCapabilityError.
3923 * IDataItemContainer.cs: Added new properties.
3924 * Page.cs: Implemented Form property.
3925 * Control.cs: Fixed formatting.
3926 * StateManagedCollection.cs: Track view state of items loaded
3929 2005-02-22 Lluis Sanchez Gual <lluis@novell.com>
3931 * FilterableAttribute.cs: Fix endless loop.
3933 2005-02-18 Lluis Sanchez Gual <lluis@novell.com>
3935 * Page.cs: Implemented missing events.
3937 2005-02-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3939 * BoundPropertyEntry.cs:
3941 * TwoWayBoundPropertyEntry.cs: implemented.
3943 2005-02-10 Lluis Sanchez Gual <lluis@novell.com>
3945 * Page.cs: Added support for validation groups. Some fixes in
3946 SavePageControlState().
3947 * IFilterResolutionService.cs: Removed extra field.
3948 * INavigateUIData.cs: Added missing field.
3949 * ICheckBoxControl.cs, IStaticTextControl.cs, ITextControl.cs:
3950 Implemented new interfaces.
3952 2005-02-04 Lluis Sanchez Gual <lluis@novell.com>
3954 * Page.cs: Implemented support for cross page postback. Implemented
3955 support for postback with options. Fixed several method and property
3957 * PostBackOptions.cs: Added some TODOs.
3959 2005-02-02 Lluis Sanchez Gual <lluis@novell.com>
3961 * ParseChildrenAttribute.cs: Set the correct default value for the
3964 2005-01-28 Lluis Sanchez Gual <lluis@novell.com>
3966 * ParseChildrenAttribute.cs: Added 2.0 property.
3967 * Pair.cs, Triplet.cs: Make classes serializable and sealed in 2.0.
3968 * Page.cs: Added support for control state.
3969 * TemplateBuilder.cs: ContainerType should be internal.
3970 * Control.cs: Added some new 2.0 methods.
3972 2005-01-21 Lluis Sanchez Gual <lluis@novell.com>
3974 * PageParser.cs: Read the MasterPageFile attribute.
3975 * UserControlParser.cs: Not sealed any more since we need to inherit from
3976 it. Added new constructor with an additional "type" parameter.
3977 * MasterPageParser.cs: Parser for master pages.
3978 * Page.cs: Added support for master pages.
3979 * MasterPage.cs: Implemented.
3981 2005-01-10 Lluis Sanchez Gual <lluis@novell.com>
3983 * TemplateBuilder.cs: Added a special constructor that takes an
3984 attribute provider as parameter. The container type for the template
3985 may be defined in a TemplateContainerAttribute.
3986 * ControlBuilder.cs: Create the TemplateBuilder using that special
3988 * TemplateContainerAttribute.cs: Added 2.0 property and ctor.
3990 2004-12-20 Lluis Sanchez Gual <lluis@novell.com>
3992 * IStyleSheet.cs: Added missing "using".
3993 * Page.cs: Implemented Header property.
3994 * CssStyleCollection.cs: Made BagToString method internal.
3995 * RootBuilder.cs: Register HtmlHead control.
3997 2004-12-17 Lluis Sanchez Gual <lluis@novell.com>
3999 * CssStyleCollection.cs: Minor (!) fix.
4000 * HtmlTextWriter.cs: Register names for new 2.0 styles.
4002 2004-12-17 Lluis Sanchez Gual <lluis@novell.com>
4004 * CssStyleCollection.cs: Make it work as a standalone collection.
4005 * HtmlTextWriter.cs: Added static method for getting style names.
4007 2004-12-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4009 * ControlCollection.cs: fix off-by-one and store a null at the end to
4010 remove the reference to the removed control.
4012 2004-12-10 Lluis Sanchez Gual <lluis@novell.com>
4014 * ClientScriptManager.cs: Added GetScriptLiteral helper method.
4016 2004-12-02 Lluis Sanchez Gual <lluis@novell.com>
4018 * Page.cs: Added support for callback events. Moved theform variable
4019 outside the __doPostBack function, so it can be used by other
4021 * StateBag.cs: Implemented SetDirty().
4023 2004-11-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4025 * Control.cs: when saving "Visible" into the ViewState, save the value
4026 for this precise control, as using the Visible property might give us
4027 Control's parent visibility. Fixes bug #69200.
4029 2004-11-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4031 * Control.cs: fixed ResolveUrl for relative URLs when using cookie-less
4034 * System.Web.Util/UrlUtils.cs: made (Insert|Get|Remove)SessionId use
4035 the appRoot + SessionID + vpath format.
4037 Fixes the 3 issues reported in bug #66623.
4039 2004-11-26 Lluis Sanchez Gual <lluis@novell.com>
4041 * Page.cs: Moved code for managing client scripts to ClientScriptManager,
4042 which is public in 2.0 and internal in 1.1.
4043 * ClientScriptManager.cs: Implemented.
4045 2004-11-25 Sanjay Gupta <gsanjay@novell.com>
4047 * DataSourceView.cs: Removed extra method.
4049 2004-11-24 Sanjay Gupta <gsanjay@novell.com>
4051 * DataSourveViewSelectCallback.cs: Corrected method signature.
4053 2004-11-23 Lluis Sanchez Gual <lluis@novell.com>
4055 * ControlBuilder.cs: Always check for the ParseChildrenAttribute,
4056 even if the class doesn't implement IParserAccessor.
4057 * WebResourceAttribute.cs: Allow multiple attributes of this type.
4059 2004-11-15 Lluis Sanchez Gual <lluis@novell.com>
4061 * DataSourceView.cs: Moved here implementation of DataSourceViewChanged
4062 from SqlDataSourceView.cs.
4064 2004-11-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4066 * Control.cs: unified a few bool fields into an int one.
4068 * ControlCollection.cs: use an array internally instead of always
4069 allocating an arraylist. Also added our own enumerator.
4071 * EmptyControlCollection.cs: there's no 'special' ctor now in the base
4074 2004-11-05 Sanjay Gupta <gsanjay@novell.com>
4076 * DataSourceView.cs: Changes in access modifiers of methods.
4078 2004-10-20 Sanjay Gupta <gsanjay@novell.com>
4080 * DataSourceCapabilities.cs: Added Flags attribute.
4081 * DataSourceSelectArguments.cs: Updated.
4082 * DataSourveView.cs: Updated.
4084 2004-10-19 Sanjay Gupta <gsanjay@novell.com>
4086 * HierarchicalDataSourceView.cs: Corrected class definition and updated.
4088 2004-10-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4090 * HierarchicalDataSourceView.cs: fix typo.
4092 2004-10-18 Sanjay Gupta <gsanjay@novell.com>
4094 * HierarchicalDataSourceView.cs: Updated.
4096 2004-10-18 Sanjay Gupta <gsanjay@novell.com>
4098 * DataSourceSelectArguments.cs: Initial implementation.
4100 2004-10-12 Sanjay Gupta <gsanjay@novell.com>
4102 * UrlPropertyAttribute.cs: Corrected implementation of Equals () method.
4104 2004-10-12 Sanjay Gupta <gsanjay@novell.com>
4106 * UrlTypes.cs: Updated.
4108 2004-10-12 Sanjay Gupta <gsanjay@novell.com>
4110 * UrlPropertyAttribute.cs: Added new file.
4112 2004-10-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4114 * Control.cs: even if the control has no children the naming container
4115 may contain the control we're looking for. Fixes bug #67304.
4117 2004-09-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4119 * AspGenerator.cs: added OtherTags.
4121 2004-09-24 Sanjay Gupta <gsanjay@novell.com>
4123 * ControlValuePropertyAttribute.cs: Initial implementation.
4125 2004-09-24 Sanjay Gupta <gsanjay@novell.com>
4127 * IPaginationContainer.cs: Corrected name of class.
4129 2004-09-24 Sanjay Gupta <gsanjay@novell.com>
4131 * IDReferencePropertyAttribute.cs: Completed implementation.
4133 2004-09-24 Sanjay Gupta <gsanjay@novell.com>
4135 * ThemeableAttribute.cs:
4136 * FilterableAttribute.cs: Code scrubbing and optimization.
4138 2004-09-14 Sanjay Gupta <gsanjay@novell.com>
4140 * ThemeableAttribute.cs: Completed implementation.
4142 2004-09-14 Sanjay Gupta <gsanjay@novell.com>
4144 * FilterableAttribute.cs: Completed implementation.
4146 2004-09-14 Sanjay Gupta <gsanjay@novell.com>
4148 * Control.cs: Added new attributes and a method.
4149 * FilterableAttribute.cs: New attribute, initial implementation.
4150 * ThemeableAttribute.cs: New attribute, initial implemenataion.
4152 2004-09-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4154 * TemplateParser.cs: ensure bin directory exists before trying to access
4155 it. Fixes bug #65446 (not closed yet due to dependencies).
4157 2004-09-09 Sanjay Gupta <gsanjay@novell.com>
4159 * Control.cs: Implemented methods of interface IExpressionAccessor.
4161 2004-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4163 * SimpleWebHandlerParser.cs: correctly cache Type instead of the
4164 assembly for ashx/asmx. Otherwise we need to open the file and check
4165 for the class name in there. Thanks to Ben for pointing this out.
4167 2004-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4169 * TemplateParser.cs: removed creation of StringWriter. It's not used.
4170 * Control.cs: don't create the EventHandlerList until requested.
4172 2004-09-03 Sanjay Gupta <gsanjay@novell.com>
4174 * Control.cs: Added new interfaces implemented in .Net 2.0.
4175 * ExpressionBinding.cs: Added new class.
4176 * ExpressionBindingCollection.cs: Added new class.
4178 2004-09-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4180 * LiteralControl.cs: stylized. This control has EnableViewState disabled
4181 by default and doesn't get an automatic ID. When text is null -> "".
4183 2004-08-31 Sanjay Gupta <gsanjay@novell.com>
4185 * ControlSkinProc.cs:
4186 * DataSourceViewOperationCallback.cs:
4187 * DataSourceViewSelectCallback.cs:
4188 * ExtractTemplateValuesMethod.cs: Explicit modifier "sealed" not
4189 required in definition as delegates by default are sealed.
4191 2004-08-31 Sanjay Gupta <gsanjay@novell.com>
4193 * IDReferencePropertyAttribute.cs: Corrected and changed from interface
4195 * IMobileTextWriter.cs: Corrected method signatures.
4197 2004-08-09 Sanjay Gupta <gsanjay@novell.com>
4199 * ControlSkinProc.cs:
4200 * DataSourceViewOperationCallback.cs:
4201 * DataSourceViewSelectCallback.cs:
4202 * ExtractTemplateValuesMethod.cs: Added new delegates.
4204 2004-08-06 Sanjay Gupta <gsanjay@novell.com>
4206 * IBindableTemplate.cs:
4207 * ICallbackEventHandler.cs:
4208 * IControlBuilderAccessor.cs:
4209 * IControlDesignerAccessor.cs:
4210 * IControlTypeFilter.cs:
4211 * IDataItemContainer.cs:
4212 * IDataSourceViewSchemaAccessor.cs:
4213 * IDReferencePropertyAttribute.cs:
4214 * IExpressionsAccessor.cs:
4215 * IFilterResolutionService.cs:
4216 * IItemPaginationInfo.cs:
4217 * IMobileTextWriter.cs:
4219 * IPaginationContainer.cs:
4220 * IPaginationInfo.cs:
4221 * IResourceResolutionService.cs:
4222 * IResourceUrlGenerator.cs:
4223 * IStateFormatter.cs:
4225 * IThemeResolutionService.cs:
4226 * IUrlResolutionService.cs:
4227 * IUserControlTypeResolutionService.cs: Added new files for Interfaces.
4229 2004-08-05 Sanjay Gupta <gsanjay@novell.com>
4231 * PostBackOptions.cs: Added new file and implemented the class.
4233 2004-08-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4235 * HtmlTextWriterTag.cs: readded author name.
4237 2004-08-04 Sanjay Gupta <gsanjay@novell.com>
4239 * HtmlTextWriterAttribute.cs:
4240 * HtmlTextWriterStyle.cs: Added .Net 2.0 enumerations.
4241 * CompilationMode.cs:
4242 * ConflictOptions.cs:
4243 * DataSourceCacheExpiry.cs:
4244 * DataSourceCapabilities.cs:
4245 * DataSourceOperation.cs:
4246 * TemplateContentType.cs:
4247 * TemplateInstance.cs:
4249 * VerificationConditionalOperator.cs:
4250 * VerificationReportLevel.cs:
4251 * VerificationRule.cs:
4252 * XhtmlMobileDocType.cs: Added enumerations.
4254 2004-07-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4256 * Control.cs: style. Reverted previous patch modification of
4257 TemplateSourceDirectory (failed when the control is reparented). Use
4258 HasControls() and Controls all over instead of _controls, as Controls
4259 property and HasControls() might be overriden.
4261 2004-07-27 Alon Gazit <along@mainsoft.com>
4263 * Control.cs: Changed the implementation of TemplateSourceDirectory
4264 and GetDefaultName(). replaced foreach statements with for statements,
4265 in order to improve performence.
4267 2004-07-27 Alon Gazit <along@mainsoft.com>
4269 * Page.cs: changed the implementation of GetViewStateString().
4270 if the view state object is null there is no need to perform
4273 2004-07-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4275 * TemplateControl.cs: don't include private methods of base classes when
4276 auto-attaching events. Fixes bug 61569.
4278 2004-07-14 Alon Gazit <along@mainsoft.com>
4280 * HtmlTextWriter.cs: changed the Hashtables to case insensitive.
4281 2004-07-08 Pablo Baena <pbaena@gmail.com>
4283 * Page.cs: added workaround for __doPostBack script on Netscape 4.xx
4285 2004-07-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4287 * Page.cs: added additional checks for saving/displaying trace data.
4289 * PageParser.cs: removed checks for trace enabled in configuration
4292 2004-06-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4294 * ControlCollection.cs: when clearing the control collection, tell the
4295 owners about the removal. Fixes bug #60800.
4297 2004-06-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4299 * Page.cs: don't nullify _context after processing the request as there
4300 are events not triggered yet. Fixes bug #60726.
4302 2004-06-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4304 * HtmlTextWriter.cs: only create a closing tag for unknown tags. Fixes
4307 2004-06-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4310 * UserControlParser.cs: set the page/user control base type even when no
4311 default directive provided. Fixes bug #60572.
4313 2004-06-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4315 * PageParser.cs: use default trace settings from web.config and check
4316 if trace is only requested for local connections. Fixes bug #60180.
4318 2004-06-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4320 * SimpleWebHandlerParser.cs: implemented GetCompiledTypeFromCache. When
4321 we read the default directive, check the cache for the Type and if
4322 present, don't keep reading and store the type found.
4324 * WebHandlerParser.cs:
4325 * WebServiceParser.cs: try GetCompiledTypeFromCache before actually
4328 2004-06-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4330 * Control.cs: properly fixed bug #59794.
4332 2004-06-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4335 (ResolveUrl): fixed typo when dealing with relative urls. Closes bug
4338 2004-06-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4340 * SimpleWebHandlerParser.cs:
4341 * TemplateParser.cs: pass the language when compiling from a file.
4343 2004-06-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4345 * SimpleWebHandlerParser.cs: if we have a global.asax, move its
4346 reference to the end to help mcs loading the assemblies. Fixes bug
4349 * TemplateParser.cs: same as above. Removed some kludges to workaround
4350 loading assemblies from bin path that are now in the runtime. Don't
4351 load the assemblies in bin if not needed, but still reference them
4354 2004-06-07 Alon Gazit <along@mainsoft.com>
4355 * Page.cs: Changed Page.ProcessPostData().
4356 After the change ,the state of controls that aren't visible is saved
4359 2004-06-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4361 * Page.cs: removed obsolete MonoTODO from RegisterOnSubmitStatement.
4363 2004-06-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4365 * Page.cs: IsPostBack also returns true when method is GET and we have
4366 viewstate information in the query string. Fixes bug #58151.
4368 2004-06-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4370 * Page.cs: removed obsolete TODO. Only check if Trace is enabled, not
4371 HttpRutime.TraceManager.
4373 * PageParser.cs: for 'trace' we have 2 variables now. Added support
4374 for 'buffer' attribute.
4376 2004-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4378 * Page.cs: implemented ClientTarget.
4379 * PageParser.cs: support for clientTarget and check for validity.
4381 2004-06-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4384 * Html32TextWriter.cs:
4385 * HtmlTextWriter.cs:
4386 * SimpleWebHandlerParser.cs:
4387 * TemplateControl.cs: Added protected missing members and attributes.
4389 2004-06-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4391 * ObjectStateFormatter.cs: use ObjectFormatter methods instead of
4392 calling a protected method of another object.
4394 2004-06-03 Atsushi Enomoto <atsushi@ximian.com>
4396 * ObjectStateFormatter.cs : csc build fix. Protected Read()/Write()
4397 (of other objects) are called in TypeConverterFormatter.
4399 2004-06-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4401 * ObjectStateFormatter.cs: before choosing the binary formatter, check
4402 if the object type has a TypeConverter that can convert to/from string.
4405 * Page.cs: call GetViewStateString from outside the WriteLine. This
4406 allows writing to the Response when getting the string without breaking
4409 2004-06-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4411 * HtmlTextWriter.cs: render end tag for unknown tags.
4412 Patch frmo Markus Krutner. Fixes bug #59466.
4414 2004-05-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4416 * Page.cs: call DeterminePostBackMode only once per request. Patch by
4419 2004-05-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4421 * Html32TextWriter.cs: stub contributed by Matthijs ter Woord
4424 * ObjectTagBuilder.cs: remove the HasBody override as MS does not have
4427 2004-05-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4429 * SimpleWebHandlerParser.cs:
4430 * TemplateParser.cs: for the assembly names given in the 'assembly'
4431 attribute, use LoadWithPartialName instead of Load.
4432 2004-03-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4434 * Page.cs: return HttpContext.Current if _context has not yet been
4435 assigned to. Fixes bug #55245.
4437 2004-03-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4439 * TemplateParser.cs: don't add import statement or assemblies from
4440 global.asax to every file. Fixes bug #55496.
4442 2004-03-09 Juraj Skripsky <juraj@hotfeet.ch>
4444 * DataBinder.cs: allow unquoted string expressions (e.g. "[test]") and
4445 handle single quotes and a few corner cases correctly (see test cases).
4447 2004-03-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4449 * TemplateControl.cs: fixed typos and added new method names to the set
4452 2004-02-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4454 * ControlBuilder.cs: added SetTagName().
4456 * ObjectTagBuilder.cs: use SetTagName so that we can properly close
4457 <object> builders if the closing tag is provided.
4459 2004-02-16 Jackson Harper <jackson@ximian.com>
4461 * Page.cs: Set cacheability for Location.DownStream.
4463 2004-02-10 Jackson Harper <jackson@ximian.com>
4465 * TemplateParser.cs: Use full path if the assembly is in the
4466 private bin directory. Patch by Gonzalo Paniagua Javier.
4468 2004-02-09 Jackson Harper <jackson@ximian.com>
4470 * Page.cs: Set cacheability for server side caching.
4472 2004-01-30 Jackson Harper <jackson@ximian.com>
4474 * Control.cs: Ensure that dynamically loaded controls are
4477 2004-01-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4479 * ApplicationFileParser.cs: check for error in directives. Use
4480 GlobalAsaxCompiler.CompileApplicationType for compiling.
4482 * ObjectTagBuilder.cs: load the Type and check for errors.
4484 * TemplateParser.cs: add assemblies and imports from global.asax.
4486 Now we properly create accessors for session and application objects in
4487 the application itself, pages and controls. First step for fixing
4490 2004-01-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4492 * TemplateControl.cs: small speedup for WireUpautomaticEvents. Thanks
4493 to Eric Lindvall for pointing this out.
4495 2004-01-15 Jackson Harper <jackson@ximian.com>
4497 * TemplateParser.cs: Detect if we are parsing a control or page
4499 * Page.cs: vary by params and vary by headers can be null now.
4501 2004-01-15 Martin Willemoes Hansen <mwh@sysrq.dk>
4503 * HtmlTextWriter.cs: Fixed OutputTab routine to generate correct
4506 2004-01-14 Jackson Harper <jackson@ximian.com>
4508 * Page.cs: If we have a postback that wasn't sent through a
4509 postback script (ie user hit submit on a input type=submit) call
4510 Validate so page validation occurs. This fixes bug #52770.
4512 2004-01-14 Jackson Harper <jackson@ximian.com>
4514 * Page.cs: Don't tell the response to cache anymore. This is done
4515 when the cacheability is modified by a callback. Set the cache's
4518 2004-01-14 Jackson Harper <jackson@ximian.com>
4520 * TemplateParser.cs: If varybyparam is set to "none" make it null
4521 so we dont get a param named null in the outputcache key.
4523 2004-01-14 Jackson Harper <jackson@ximian.com>
4525 * BasePartialCachingControl.cs: Use varyby attributes in key
4528 2004-01-14 Jackson Harper <jackson@ximian.com>
4530 * TemplateParser.cs: Add all the outputcache attribute error
4533 2004-01-13 Jackson Harper <jackson@ximian.com>
4535 * TemplateParser.cs: Add VaryByControls and Shared output cache
4536 properties. These are not assigned yet.
4537 * TemplateControlParser.cs: Do not ignore the OutputCache
4539 * BasePartialCachingControl.cs: Initial implementation. Keys are
4540 still not created properly.
4541 * StaticPartialCachingControl.cs: Assign properties in base class,
4542 implement CreateControl.
4544 2004-01-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4546 * ApplicationFileParser.cs: adde DefaultBaseTypeName property.
4548 * PageParser.cs: support validateRequest.
4550 * TemplateControlParser.cs: get default values from system.web/pages
4553 * TemplateParser.cs: added separate method for changing base type
4554 (Inherits or system.web/pages).
4556 * UserControlParser.cs: support system.web/pages defined base type.
4558 2004-01-11 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4560 * UserControl.cs: Added missing attribute, implemented method
4561 * Page.cs: Added missing attribute, implemented method
4563 2004-01-10 Jackson Harper <jackson@ximian.com>
4565 * Page.cs: Handle trace being enabled in the config file.
4567 2004-01-10 Jackson Harper <jackson@ximian.com>
4569 * Page.cs: Save trace data before rendering it.
4570 * System.Web.dll.sources: Add TraceData.cs
4572 2004-01-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4574 * Page.cs: removed a couple of MonoTODO on methods we're not gonna
4575 implement. Applied patch from Jan Jaros (mono-bug@jerryweb.info) to
4576 ensure that Unload event is raised. Fixes bug #52555.
4578 2004-01-02 Zoltan Varga <vargaz@freemail.hu>
4580 * KeyedList.cs: 'private' is not allowed on explicit interface
4581 implementations. Fixes 1.2 build.
4583 2003-12-31 Jackson Harper <jackson@ximian.com>
4585 * TemplateControlParser.cs: When registering tag prefixs make sure
4586 the file exists and throw the correct error if it does not.
4588 2003-12-25 Jackson Harper <jackson@ximian.com>
4590 * Page.cs: Throw error if the session is accessed when sessions
4593 2003-12-18 Jackson Harper <jackson@ximian.com>
4595 * Page.cs: Write Trace info.
4597 2003-12-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4599 * LosFormatter.cs: new ctor for 1.1. The default ctor is public.
4600 * Page.cs: added ViewStateUserKey and made RegisterclientScriptFile
4602 * PageParser.cs: the ctor is public.
4603 * PartialCachingAttribute.cs: added new ctor and Shared property.
4605 2003-12-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4607 * Page.cs: assign the ErrorPage to the context if we get an exception
4608 when processing the page which only calls Unload.
4610 * PageParser.cs: handle ErrorPage.
4612 2003-12-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4614 * ObjectStateFormatter.cs: added formatters for Unit and FontUnit, which
4615 are not [Serializable]. Fixes bug #52244.
4617 2003-12-16 Jackson Harper <jackson@ximian.com>
4619 * Page.cs: Render trace data when tracing is enabled.
4621 2003-12-15 Jackson Harper <jackson@ximian.com>
4623 * PageParser.cs: Add Trace and Trace mode attributes.
4625 2003-12-15 Jackson Harper <jackson@ximian.com>
4627 * Page.cs: Use the context trace object.
4629 2003-12-14 Alon Gazit <along@mainsoft.com>
4630 * AttributeCollection.cs: Changed AttributeCollection.Render().
4631 After the change attributes ,that their value is null, aren't
4634 2003-12-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4636 * Control.cs: remove a few dangling ^M, don't set values for fields
4637 that has the default value. If Visible is modified and we're tracking
4638 viewstate, save and restore it. Fixes bug #48689.
4640 2003-12-11 Jackson Harper <jackson@ximian.com>
4642 * Control.cs: Give null for the ID if it hasn't been explicitly
4643 set. This fixes bug #51520.
4645 2003-12-08 Jackson Harper <jackson@ximian.com>
4647 * PageParser.cs: Ignore the SmartNavigation attribute for now.
4649 2003-12-05 Jackson Harper <jackson@ximian.com>
4651 * DataBinder.cs (GetIndexedPropertyValue): Check if container is
4652 an IList and use a cast instead of reflection to retrieve the item
4653 if it is. Fixes bug #51759.
4655 2003-12-04 Alon Gazit <along@mainsoft.com>
4656 * Page.cs: Changed Page.ID so it will call Control.ID.
4659 2003-12-02 Jackson Harper <jackson@ximian.com>
4661 * Page.cs: Implemented registered array declarations. Patch by
4662 Benjamin Jemlich <pcgod@gmx.net>
4664 2003-12-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4666 * TemplateParser.cs: basic check for 'classname' attribute and added
4667 patch by pcgod@gmx.net for bug #51568, which fixes automatic class
4668 names for pages starting with a number.
4670 2003-11-30 Ben Maurer <bmaurer@users.sourceforge.net>
4672 * LosFormatter.cs: Use ObjectStateFormatter. Pretty big size
4675 * ObjectStateFormatter.cs: Comment out tracing.
4677 2003-11-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4679 * Page.cs: fixed UICulture, LCID and Culture. Set the thread
4680 [UI]Culture before processing the request.
4682 * PageParser.cs: read Culture, UICulture and LCID attributes. Added
4683 properties for these. Partially contributed by Mohammad Damt.
4687 2003-11-27 Jackson Harper <jackson@ximian.com>
4689 * TemplateParser.cs: Ignore aspCompat attribute. This fixes bug
4692 2003-11-22 Ben Maurer <bmaurer@users.sourceforge.net>
4694 * ObjectStateFormatter.cs: Fix bug when reading small ints.
4695 Add some tracing so we can see what is going on.
4697 2003-11-21 Jackson Harper <jackson@ximian.com>
4699 * Page.cs: Set vary by params when cache location is Server.
4701 2003-11-21 Ben Maurer <bmaurer@users.sourceforge.net>
4703 * ObjectStateFormatter.cs: v2 file. In v1.x this will be
4704 internal as LosFormatter will eventually use it to save
4707 2003-11-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4709 * PersistChildrenAttribute.cs:
4710 * PersistenceModeAttribute.cs: implemented.
4712 * TODO: Removed file.
4713 * OutputCacheLocation.cs:
4714 * TemplateControlParser.cs:
4715 * HtmlInputFile.cs: class status based fixes.
4717 2003-11-19 Jackson Harper <jackson@ximian.com>
4719 * Page.cs: Always set the cache expire time. Tell the response to
4720 cache itself for server side cached pages.
4722 2003-11-19 Jackson Harper <jackson@ximian.com>
4724 * Control.cs: Remove ResolveBaseUrl. ResolveUrl does the same
4725 thing, some corner cases still need work though. Was this the
4726 shortest lived method in the history of mono?
4728 2003-11-19 Jackson Harper <jackson@ximian.com>
4730 * Control.cs: New method for resolving urls that use ~/ to denote
4731 the applications base directory.
4733 2003-11-19 Jackson Harper <jackson@ximian.com>
4735 * TemplateParser.cs: Fix typo in error message.
4737 2003-11-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4739 * TemplateControlParser.cs: support @Reference. Fixes bug #49572. Thanks
4742 2003-11-19 Todd Berman <tberman@gentoo.org>
4745 * KeyedListEnumerator.cs: New v2 implementations.
4747 2003-11-17 Ben Maurer <bmaurer@users.sourceforge.net>
4749 * StateManagedCollection.cs: Implement.
4751 2003-11-13 Jackson Harper <jackson@ximian.com>
4753 * Page.cs: Initial implementation of InitOutputCache.
4754 * TemplateParser.cs: Page OutputCache options
4756 2003-11-09 Ben Maurer <bmaurer@users.sourceforge.net>
4758 * HierarchicalDataSourceControl.cs: Implement.
4760 2003-11-09 Ben Maurer <bmaurer@users.sourceforge.net>
4762 * XPathBinder.cs: Implemented.
4764 2003-11-08 Ben Maurer <bmaurer@users.sourceforge.net>
4766 * DataSourceView.cs:
4768 * ListSourceHelper.cs:
4769 * DataSourceControl.cs:
4770 * HierarchicalDataSourceView.cs:
4771 * IHierarchicalDataSource.cs: Move v2 stuff.
4773 2003-11-07 Jackson Harper <jackson@ximian.com>
4775 * Control.cs (ResolveUrl): Special case for urls that consist of
4776 only a page anchor. ie <a href="#top">. This fixes bug #50165.
4778 2003-11-07 Ben Maurer <bmaurer@users.sourceforge.net>
4780 * IHierarchicalEnumerable.cs:
4781 * IHierarchyData.cs:
4782 * INavigateUIData.cs: New v2 interfaces.
4784 2003-11-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4786 * Page.cs: patch by Alon Gazit <along@mainsoft.com> to remove extra
4787 space in generated javascript.
4789 2003-11-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4791 * LosFormatter.cs: encoding updates.
4792 * Page.cs: implemented CodePage and ContentType.
4793 * PageParser.cs: handle CodePage, ContentEncoding and ResponseEncoding
4796 2003-11-04 Ben Maurer <bmaurer@users.sourceforge.net>
4798 * Control.cs (GetWebResourceUrl): new v2 function
4799 * Page.cs (GetWebResourceUrl): ditto.
4800 make the JS we generate work with moz if the form is not a child
4802 * WebResourceAttribute.cs: Added, new v2 attribute.
4804 2003-10-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4806 * DesignTimeTemplateParser.cs: added FIXME related to PageParser.
4808 * PageParser.cs: initialize the parser in the constructor, not just
4809 before compiling and reference the application assembly.
4811 * SimpleWebHandlerParser.cs: reference the assembly that contains the
4814 * TemplateControl.cs:
4815 * TemplateControlParser.cs: fix BenM #1 bug. Now we pass correct virtual
4816 path and physical path when compiling a user control.
4818 * TemplateParser.cs: new AddApplicationAssembly ().
4819 * UserControlParser.cs: now we get valid values in the ctor.
4821 Referencing the application assembly fixes bug #49652.
4824 2003-10-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4826 * TemplateControl.cs: moved NoParamsInvoker class to its own file.
4828 2003-10-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4830 * BaseParser.cs: added CompilationConfig property.
4832 * TemplateParser.cs:
4833 * SimpleWebHandlerParser.cs: added CompilationConfig property.
4834 Don't hardcode assembly names any more, assemblies in bin are added
4835 depending on the configuration. The default language is also taken
4836 from the configuration.
4838 2003-10-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4840 * LosFormatter.cs: fixed bug #49604. Patch by yaronsh@mainsoft.com.
4842 2003-10-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4844 * Control.cs: removed some debug lines.
4845 * Page.cs: implemented RegisterOnSubmitStatement
4846 * TemplateControl.cs: fixed wire up for methods with no parameters.
4848 2003-10-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4850 * PageParser.cs: ignore ValidateRequest by now.
4852 2003-10-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4854 * System.Web.UI/TemplateControl.cs: support for wiring up events without
4857 2003-10-08 Pedro Martnez Juli <yoros@wanadoo.es>
4859 * PageParser.cs: drop some useless code.
4861 2002-10-29 Gaurav Vaish <gvaish_mono AT lycos.com>
4863 * Utils.cs : GetScriptLocation(HttpContext) - Partial Implementation.
4865 2003-10-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4867 * System.Web.UI/PageParser.cs:
4868 * System.Web.UI/TemplateControlParser.cs: honour the input file given
4871 2003-09-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4874 (ClearChildViewState): doh! Don't clear control viewstate but the
4875 viewstate of possible children.
4876 (LoadViewStateRecursive): load viewstate even when control is not
4879 The rest are just dangling ^M removed.
4881 * DataBoundLiteralControl.cs:
4882 (LoadViewState): we get an object [], not a string [].
4884 2003-09-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4886 * Control.cs: implemented ClearChildViewState ().
4888 2003-09-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4890 * Page.cs: store unique IDs for controls requiring postback. Fixes bug
4893 2003-09-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4895 * SimpleWebHandlerParser.cs: add the ashx/asmx file itself to the
4896 dependencies so that it's recompiled when changed.
4898 2003-09-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4900 * LosFormatter.cs: fixed Deserialize for empty viewstate.
4902 2003-08-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4904 * Page.cs: check if controls that require postback have
4905 been changed by an event and register them to be notified of data
4908 2003-08-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4910 * Control.cs: patch by yaronshkop@hotmail.com (Yaron Shkop) that fixes
4913 2003-08-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4915 * LosFormatter.cs: handle Unit and FonrUnit as special cases as they
4916 are not serializable. Fixes bug #47784.
4918 2003-08-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4920 * Control.cs: index the viewstates saved by the control position, not
4921 the control name. Fixes bug #47697.
4923 2003-08-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4925 * ControlCollection.cs:
4926 * EmptyControlCollection.cs: create a minimum ArrayList for this.
4928 * BaseParser.cs: added setter for BaseVirtualDir.
4930 * Page.cs: fixed message when restoring view state fails.
4931 * UserControlParser.cs: set the BaseVirtualDirectory to handle the case
4932 when a relative path to the control is given. Fixes bug #47685.
4934 2003-08-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4936 * Control.cs: when we load the viewstate for a control that has children
4937 viewstates and the child is not found, keep its viewstate around and
4938 wait until the child is added to load the viewstate. Fixes bug #47697.
4940 2003-08-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4942 * TemplateControl.cs: more Delegate.CreateDelegate fixes.
4944 2003-08-01 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4946 * PartialCachingControl.cs: is not abstract
4948 2003-08-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4950 * SimpleHandlerFactory.cs: implemented GetHandler.
4951 * WebHandlerParser.cs: new file that parses .ashx files.
4953 2003-07-30 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4955 * PersistenceModeAttribute.cs: Fixed wrong AttributeUsage
4957 2003-07-30 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4959 * UserControl.cs: Added attribute
4960 * BasePartialCachingControl.cs: New class and paritally implemented
4961 * DesignerDataBoundLiteralControl.cs: New class and implemented
4962 * DesignTimeTemplateParser.cs:
4963 * PartialCachingControl.cs:
4964 * StaticPartialCachingControl.cs: New class and paritally implemented
4966 2003-07-27 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4968 * ApplicationFileParser.cs: Fixed signature
4969 * DesignTimeParseData.cs: Added missing properties, implemented
4970 * Page.cs: Added attributes
4972 * TemplateControlParser.cs:
4973 * TemplateParser.cs:
4974 * UserControlParser.cs: Fixed signature
4976 2003-07-17 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4978 * HtmlControlPersistableAttribute.cs: Added
4979 * IgnoreUnknownContentAttribute.cs: Added
4981 2003-07-17 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4983 * IUserControlDesignerAccessor.cs: Added and implemented
4984 * Control.cs: Missing member added, added all attributes
4985 * Page.cs: Added attributes, fixed signature
4986 * TemplateControl.cs: Fixed signature, added all attributes
4987 * UserControl.cs: Added all attributes, added and implemented missing interface
4989 2003-07-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4991 * ControlCollection.cs: fixed bug #46472.
4993 2003-07-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4995 * SimpleWebHandlerParser.cs: implemented GetTypeFromBin.
4997 2003-07-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4999 * SimpleWebHandlerParser.cs: updated to new compilation interface.
5001 * TemplateParser.cs: use the new parameter when compiling.
5003 2003-07-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5005 * Page.cs: also keep the value for the second try on handling postback
5008 2003-05-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5010 * BaseParser.cs: fixed MapPath for non-rooted files.
5011 * PageParser.cs: don't pass a non-virtual file around.
5012 * TemplateControlParser.cs: InputFile uses MapPath now. Take care of
5013 the exception teh may be throw by MapPath on an invalid path.
5015 * TemplateParser.cs: removed unused method.
5016 * UserControlParser.cs: modified inputfile. The result is the same, but
5019 2003-05-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5021 * RootBuilder.cs: throw exception when the tagprefix is not valid or
5024 2003-05-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5026 * TemplateControlParser.cs: return after processing @Register.
5028 2003-05-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5030 * TemplateParser.cs: Added support for server side includes.
5032 2003-05-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5034 * TemplateControl.cs: fixed the flags used to find the methods that
5035 are automatically hooked up on events.
5037 * TemplateParser.cs: don't compile a source file directly. Use the
5040 2003-05-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5042 * BaseParser.cs: Location property is now here. Added a couple of
5043 convenience methods to throw a ParseException.
5045 * TemplateParser.cs:
5046 * TemplateControlParser.cs:
5047 * PageParser.cs: throw ParseException where appropiate.
5049 2003-05-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5051 * ApplicationFileParser.cs: use the generator to actually parse the
5054 * ControlBuilder.cs: small fix in NamingContainerType because
5055 TemplateBuilders have a null ControlType. When a control is appended
5056 to a parent, assign the child's parent.
5058 * UserControlParser.cs: fixed the value of InputFile.
5060 2003-04-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5062 * ApplicationFileParser.cs: store the Context and override
5063 BaseVirtualDir so that it's the application path.
5065 * BaseParser.cs: removed CurrentVirtualPath property.
5067 * TemplateControlParser.cs: use BaseVirtualDir.
5069 * UserControlParser.cs: removed CurrentVirtualPath.
5071 2003-04-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5073 * TemplateParser.cs: always reference all the assemblies in bin
5076 2003-04-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5078 * ApplicationFileParser.cs: it works now. Prior to these changes, we
5079 were using the compiler directly.
5081 * BaseParser.cs: added some useful properties and methods.
5083 * CodeBuilder.cs: use ILocation.
5084 * CodeRenderBuilder.cs: use ILocation.
5085 * CollectionBuilder.cs: use the RootBuilder to map tag names into Types.
5087 * ControlBuilder.cs: made it useful.
5089 * DataBindingBuilder.cs: the control type for data bound text is
5090 DataBoundLiteralControl now.
5092 * ObjectTagBuilder.cs: store some object tag attributes.
5094 * PageParser.cs: handle page-only directives.
5096 * RootBuilder.cs: bah.
5097 * SimpleWebHandlerParser.cs: made it dummy.
5098 * TemplateControl.cs: Modified file.
5100 * TemplateControlParser.cs: handle directives that are common to pages
5103 * TemplateParser.cs: utility methods and handling of directives that
5104 are common to app, page and user controls.
5106 * UserControl.cs: added ControlBuilderAttribute.
5108 * UserControlControlBuilder.cs: builder for user controls.
5109 * UserControlParser.cs: use the new interfaces.
5111 2003-04-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5113 * ControlBuilder.cs: line and fileName are protected now.
5115 * CodeBuilder.cs: base class for the next 2 files.
5116 * CodeRenderBuilder.cs: builder for code render.
5117 * DataBindingBuilder.cs: builder for data binding.
5119 2003-04-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5121 * ITagNameToTypeMapper.cs: made it internal.
5123 * ObjectTagBuilder.cs: builder for <object runat="server"> tag.
5125 * RootBuilder.cs: initial builder.
5127 2003-04-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5129 * CollectionBuilder.cs:
5130 * TemplateBuilder.cs: new classes derived from ControlBuilder that
5131 represent a property or a ITemplate.
5133 * ControlBuilder.cs: implemented all the missing bits.
5134 * TemplateParser.cs: added mapping from tag name to Type feature.
5136 2003-02-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5138 * Control.cs: have i definitely fixed naming container stuff this time?
5140 * LosFormatter.cs: activated binary serialization code.
5142 2003-02-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5145 (AddedControl): fixed default id assignation when the sequence of
5146 AddedControl until it's included in the page or one of its controls
5147 does not pass through a naming container.
5149 2003-02-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5151 * Control.cs: give different default names depending on the place where
5152 it is assigned. Implemented ResolveURl (no more ~ rendered in
5155 2003-02-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5157 * Control.cs: when adding a control, assign default names to th
5158 children that don't have one.
5160 2003-02-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5162 * SimpleWebHandlerParser.cs: modified to use the new parser interface.
5164 2003-01-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5166 * Control.cs: some more tweaks to naming containers stuff.
5167 * DataBinder.cs: don't throw exception if the container is null.
5169 * Page.cs: now we can render client scripts, startup scripts and hidden
5170 fields. Only render __VIEWSTATE if there is someone that will take care
5172 (RaisePostBackEvents): first try the last one that required raise event,
5173 then try __EVENTTARGET.
5175 2003-01-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5177 * Control.cs: fixes in UniqueID, FindControl, AddedControl,
5178 UnloadRecursive, InitRecursive. Reduced the size of __VIEWSTATE. Made
5179 FindControl work with NamingContainers.
5181 * ControlCollection.cs: notify the parent when clearing the collection.
5183 * LosFormatter.cs: Added debugging output and generate a valid
5184 viewstate even for unknown types.
5186 * Page.cs: GetPostBackEventReference now uses UniqueID. Reduced
5189 2003-01-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5191 * Page.cs: make it fire the LoadData related events also for controls
5192 such as ImageButton, whose variable(s) in the query string are of the
5193 form ctrl_name.x and only fire them once per control.
5195 2003-01-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5198 (GetPropertyValue): don't try to get the property as indexed
5200 2003-01-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5202 * DataBinder.cs: use TypeDescriptor to get the properties and their
5205 2003-01-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5208 (AddedControl): take the children to the same state of the parent.
5209 (InitRecursive): set the page of the children.
5211 * Page.cs: removed one line (it's done a few lines above).
5214 (OnInit): always call InitializeAsUserControl
5215 (InitializeAsUserControl): sets the page for the control.
5217 2003-01-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5219 * Control.cs: fixed bug #36037.
5221 2002-12-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5223 * BaseParser.cs: a couple of path fixes to make it work
5224 when the page is not in the root directory.
5226 2002-12-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5228 * Control.cs: fixed PreRenderRecursiveInternal. Thanks to kojoadams for
5231 2002-12-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5233 * BaseParser.cs: use MapPath and context to locate files.
5234 * Control.cs: implemented MapPathSecure.
5235 * TemplateControl.cs: use UrlUtils to generate the path.
5236 * TemplateControlParser.cs: use the context and MapPath.
5237 * UserControl.cs: implemented MapPath.
5238 * UserControlParser.cs: added context parameter to constructor.
5240 2002-12-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5242 * Control.cs: implemented MapPathSecure.
5243 * Page.cs: fixed Server property.
5245 2002-12-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5247 * DataBinder.cs: try the indexer if the property is not found in
5248 GetPropertyValue ().
5250 2002-12-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5252 * Control.cs: added AutoEventWireup internal property.
5254 * Page.cs: removed page events wire up from here.
5256 * TemplateControl.cs: new method WireupAutomaticEvents to hook up page
5257 and user controls events.
5259 * TemplateControlParser.cs: process the options that are applicable
5260 once we have the instance of the control.
5262 * TemplateParser.cs: also stores the options.
5264 * UserControl.cs: hook up events before initializing the control.
5267 2002-12-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5269 * Control.cs: new method to set bindingContainer value.
5270 * TemplateControl.cs: added controls are not binding containers.
5272 2002-12-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5274 * Control.cs: implemented TemplateSourceDirectory.
5275 * TemplateControl.cs: implemented LoadControl and LoadTemplate.
5277 2002-11-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5279 * UserControl.cs: fixed SetAttribute.
5280 * UserControlParser.cs: set the correct base type.
5282 2002-11-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5284 * TemplateParser.cs: fixed BaseType.
5285 * UserControlParser.cs: helper class to compile user controls.
5287 2002-11-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5289 * LosFormatter.cs: added DateTime to special types.
5291 2002-11-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5293 * LosFormatter.cs: added array serialization support. Disabled binary
5294 serialization and add some debugging code.
5296 * StateBag.cs: the length of the list of value can be less than the
5297 length if the list of keys when remaining values are null.
5299 2002-11-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5301 * Page.cs: return something useful in GetPostBackClientEvent.
5303 2002-11-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5305 * Page.cs: implemented FileDependecies and made it protected.
5307 2002-10-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5309 * Control.cs: save control names instead of the controls
5310 themselves to the ViewState.
5312 * LosFormatter.cs: added support for serializing unknown
5313 types. BinaryFormatter does not work so you better don't store anything
5314 of unknown Type in ViewState.
5316 * Page.cs: GetViewStateString works now using LosFormatter.
5317 Complete "Control execution lifecycle" by unloading all the child
5318 controls. Check for null in RaisePostBackEvents.
5319 LoadPageViewStateFromPersistenceMedium uses LosFormatter too.
5321 2002-10-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5323 * DataBinder.cs: implemented Eval and GetIndexedPropertyValue methods.
5325 2002-10-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5327 * LosFormatter.cs: Use WebEncoding.Encoding.
5330 * Page.cs: fixed namespace.
5332 2002-10-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5334 * Page.cs: set the context in ProcessRequest. Added a few trace calls.
5335 * Control.cs: added some trace information.
5337 2002-10-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5339 * SimpleHandlerFactory.cs: new handler for .ashx files.
5341 2002-09-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5343 * System.Web.UI/PageHandlerFactory.cs: new file.
5344 * System.Web.UI/PageParser.cs:
5345 * System.Web.UI/TemplateControlParser.cs: we are now able to compile
5346 pages and use HttpApplication, HttpRuntime and SimpleWorkerRequest.
5348 2002-09-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5350 * Control.cs: implemented ObBubbleEvent.
5351 * Page.cs: temporary workaround to make POST work with xsp server.
5353 2002-09-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5355 * Page.cs: fixed InvokeEventMethod now that Type.GetMethod does not
5358 2002-09-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5360 * SimpleWebHandlerParser.cs: New file.
5361 * WebServiceParser.cs: New file.
5363 2002-08-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5365 * LosFormatter.cs: almost fully implemented.
5367 2002-08-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5369 * CompiledTemplateBuilder.cs: InstantiateIn is virtual.
5370 * EmptyControlCollection.cs: throw correct exception.
5371 * LosFormatter.cs: stubbed out.
5372 * OutputCacheLocation.cs: little fix.
5374 2002-08-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5376 * System.Web.UI/ApplicationFileParser.cs:
5377 * System.Web.UI/BaseParser.cs:
5378 * System.Web.UI/PageParser.cs:
5379 * System.Web.UI/TemplateControl.cs:
5380 * System.Web.UI/TemplateControlParser.cs:
5381 * System.Web.UI/TemplateParser.cs: first steps to move xsp into
5384 2002-07-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5386 * Page.cs: request to render postback script can be after form started
5389 2002-07-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5391 * Page.cs: added more page events to invoke automagically if some
5392 methods are defined.
5394 2002-07-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5397 (SaveViewState): save state even when control is not visible.
5398 (SaveViewStateRecursive):
5399 (LoadViewStateRecursive): made internal.
5401 2002-07-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5403 * Page.cs: improved event raising to allow client postback for a wider
5404 variety of actions (clicking an hyperlink, ...).
5406 2002-07-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5408 * UserControl.cs: implemented Load/SaveViewState.
5410 2002-07-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5412 * AttributeCollection.cs:
5413 (Add): handle 'style' through styleCollection.
5415 * CssStyleCollection.cs:
5416 (fillStyle): renamed to FillStyle and made it internal.
5419 (GetViewStateString): fixed, broken after other recent changes.
5420 (ProcessPostData): allow a second try for postback data after OnLoad.
5421 (ProcessRequest): clear controls collection, removed call to
5424 2002-07-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5426 * Control.cs: uncommented Dispose.
5429 (DeterminePostBackMode): more checkings.
5430 (GetPostBackClientHyperLink): implemented.
5431 (GetPostBackEventReference): added some comments with the HTML that MS
5433 (ProcessRequest): fixed processing order. The page is unloaded after
5434 a request and regenerated from view state on subsequents posts.
5436 2002-07-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5438 * Control.cs: fixed related to ViewState. Added RemovedControl.
5440 * ControlCollection.cs: notify owner of control removal.
5442 * CssStyleCollection.cs: almost rewritten to make it render the style
5443 attribute after changes to it.
5445 * Page.cs: follow the guidelines in 'Control execution lifecycle'.
5448 * StateBag.cs: don't use IDictionary.GetEnumerator on the
5449 HybridDictionary: it makes the program give an InvalidCastException at
5452 2002-07-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5454 * Page.cs: fire Init and Load events for all children.
5456 2002-07-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5458 * UserControl.cs: New file.
5460 2002-07-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5462 * ControlBuilderAttribute.cs: finished implementation.
5464 2002-07-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5466 * ConstructorNeedsTagAttribute.cs: the default constructor sets the
5469 2002-07-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5471 * System.Web.UI/AttributeCollection.cs: added CssStyleCollection.
5473 * System.Web.UI/CssStyleCollection.cs: use a StateBag instead of a
5474 Hashtable. Added internal .ctor.
5476 * System.Web.UI/DataBinding.cs: propertyType is a Type. Implemented
5477 Equals and GetHashCode.
5479 * System.Web.UI/DataBoundLiteralControl.cs:
5481 (SaveViewState): implemented.
5483 * System.Web.UI/Page.cs: FileDependencies is not public.
5485 * System.Web.UI/ParseChildrenAttribute.cs: give a value to Default.
5488 (IsDefaultAttribute): implemented.
5490 2002-07-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5492 * Control.cs: fixed Visible property.
5493 * Page.cs: fixed GetViewStateString.
5495 2002-07-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5497 * System.Web.UI/Page.cs:
5498 (GetViewStateString): new function to give the server access to the
5499 generated view state string.
5502 2002-07-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5505 (SaveViewstateRecursive): implemented.
5506 (SaveViewState): fixed.
5507 (IParserAccessor.AddParsedSubObject): don't use 'this'.
5509 * Page.cs: added code to save view state to an xml file. It's not
5510 being used right now.
5512 2002-06-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5514 * System.Web.UI/LiteralControl.cs:
5515 Fixes based on class status page:
5517 - Add attributes (DefaultEvent, ParseChildren).
5519 - Explicitly implement some interfaces (IPostBackDataHandler
5520 and IPostBackEventHandler).
5521 - Implemented some missing methods.
5523 2002-06-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5525 * Control.cs: reimplemented FindControls.
5528 (.ctor): set the page for this control.
5529 (IsPostBack): return valid value.
5530 (DeterminePostBackMode): finished.
5531 (OnFormRender): render __VIEWSTATE (uses GetTypeHashCode()).
5532 (ProcessPostData): implemented. Raises change and postback events.
5533 (ProcessRequest): changed to support reuse of the instance.
5534 (RegisterRequiresPostBack): implemented.
5536 * ValidatorCollection.cs: implemented all methods.
5538 2002-06-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5541 * Page.cs: first attemp to save view state.
5543 * HtmlForm.cs: don't render Action.
5545 2002-06-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5547 * Page.cs: implemented more properties using information we already
5551 (VerifyRenderingInServerForm): implemented.
5553 2002-06-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5555 * Page.cs: changed InvokeEventMethod to use a GetMethod that works with
5556 out runtime. Renamed Page_Init and Page_Load.
5558 After this, we can load a dll and render HTML in linux.
5560 2002-06-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5563 (AddedControl): new function that is called whenever a control is
5564 added to a collection of controls in a container. It sets the defaults
5567 * ControlCollection.cs: call AddedControl in Add/AddAt.
5569 * DataBoundLiteralControl.cs: implemented constructor, Text, Render,
5570 SetStaticString and SetDataBoundString.
5572 * Page.cs: removed SetDefaults.
5574 2002-06-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5576 * CompiledTemplateBuilder.cs: new file. Used in the code generated
5580 (BindingContainer): implemented.
5581 (EnsureChildControls): avoid stack overflow.
5583 * DataBinder.cs: implemented Eval and PropertyValue.
5585 2002-06-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5587 * HtmlTextWriter.cs: fixed style attributes rendering (almost the same
5588 bug as in regular attributes).
5590 2002-06-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5592 * Control.cs: implemented PreventAutoID.
5595 (SetDefaults): don't set ID automatically if Control.PreventAutoID has
5598 2002-06-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5601 (Validators): if the collection is null, create one.
5602 (GetPostBackEventReference 2): don't throw exception.
5603 (GetPostBackClientEvent): return a string with containing the method
5604 name, the control name and the argument.
5606 2002-06-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5608 * Page.cs: SetPage is now called SetDefaults and also sets a default
5609 ID for controls that don't have one yet.
5611 2002-06-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5614 (GetPostBackClient):
5615 (RegisterRequiresPostBack): don't throw NotImplementedException to
5617 (ProcessRequest): set the current page as the Page property for *all*
5618 the controls, not just the direct children of the page.
5620 2002-06-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5623 (MapPathSecure): until security is implemented, return the same path
5624 received as argument.
5625 (RenderControl): call OnPreRender before rendering the control. So
5626 AdRotator can read its configuration file.Is there any other place
5627 where this should be done?
5629 * HtmlTextWriter.cs:
5630 (AddAttribute): fixed. Now it really stores attributes.
5631 (RenderBeginTag): fixed a couple of bugs (little ones but hard to find).
5633 2002-06-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5635 * ControlCollection.cs:
5636 (AddAt): if index is -1 behave as a plain Add.
5638 2002-06-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5640 * Page.cs: for each child control to render, assign Control.Page.
5641 Probably also needed in HtmlContainerControl derived classes.
5643 2002-06-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5645 * AttributeCollection.cs: don't need a Hastable. StateBag now works
5646 fine and takes care of the details.
5648 * Control.cs: added HasChildren property.
5650 * StateBag.cs: fixed a couple of nasty bugs.
5652 2002-06-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5654 * Page.cs: run OnInit, OnLoad y PreRender before rendering the page.
5655 Invoke Page_Init and/or Page_Load if the user supplied them (though
5656 this should depend on AutoEventWireUp attribute of Page directive).
5658 2002-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5660 * Control.cs: don't throw exception in ControlID. By now, it returns ID.
5663 (ProcessRequest): implemented.
5665 2002-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5667 * System.Web.UI/Page.cs: finished stubbing out. Implemented some
5670 2002-06-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5673 (FileDependencies): now is public public.
5674 (EnableViewStateMAC): uncommented and made protected.
5675 (GetTypeHashCode): added method.
5677 2002-05-24 Duncan Mak <duncan@ximian.com>
5679 * TemplateControl.cs (SetStringResourcePointer): Fixed typo.
5681 * StateBag.cs (Item): Changed the visibility level of the this
5684 Misc. formatting edits, fixing some bugs introduced by the indentation.
5686 * DataBinder.cs (Eval)
5687 (GetIndexedPropertyValue)
5688 (GetPropertyValue): Fixed return types.
5690 2002-05-21 Miguel de Icaza <miguel@ximian.com>
5692 * HtmlTextWriter.cs: Use this to change the member instances.
5694 2002-05-17 Duncan Mak <duncan@ximian.com>
5696 * AttributeCollection.cs:
5697 * ControlCollection.cs:
5698 * CssStyleCollection.cs:
5699 * DataBindingCollection.cs:
5700 * EmptyControlCollection.cs: Added missing Collection classes.
5702 2002-05-17 Duncan Mak <duncan@ximian.com>
5705 * TemplateParser.cs: Implemented. BaseParser is weird because
5706 there is no documentation on what it does.
5708 * ControlBuilder.cs:
5711 * DataBinding.cs: Added.
5713 * DataBoundLiteralControl.cs:
5714 * Triplet.cs: Added.
5716 * RenderMethod.cs: Added this delegate for Control.cs
5718 2002-05-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5720 * ValidationPropertyAttribute.cs: a couple of fixes to make it compile.
5722 2002-05-14 Duncan Mak <duncan@ximian.com>
5724 * ValidationPropertyAttribute.cs: Added to CVS.
5726 2002-05-10 Duncan Mak <duncan@ximian.com>
5728 * ConstructorNeedsTagAttribute.cs:
5729 * ControlBuilderAttribute.cs:
5730 * ImageClickEventArgs.cs:
5731 * ParseChildrenAttribute.cs:
5732 * PartialCachingAttribute.cs:
5733 * PersistChildrenAttribute.cs:
5734 * PersistenceModeAttribute.cs:
5735 * TemplateContainerAttribute.cs: Added to CVS.
5737 * PersistanceMode.cs: Removed, fixed typo.
5738 * PersistenceMode.cs: Replacing above.
5740 * StateBag.cs (this): Fixed indexer, it takes a string as the
5741 index, not an object.
5743 * ValidatorCollection.cs: Fixed typo, ValidatedCollection to ValidatorCollection.
5745 * Page.cs (Validators): return type should be ValidatorCollection,
5746 not ValidatedCollection.
5748 * TagPrefixAttribute.cs: Added to CVS.
5750 2002-05-07 Duncan Mak <duncan@ximian.com>
5752 * Utils.cs (GetClientValidatedEvent): Uncommented the 'Page' argument.
5754 2002-03-26 Gaurav Vaish <gvaish@iitk.ac.in>
5756 * DataBindingHandlerAttribute.cs
5758 * ToolboxDataAttribute.cs - Completed
5760 2002-01-03 Nick Drochak <ndrochak@gol.com>
5762 * DesignTimeParseData.cs: initialze static member to avoid compile
5764 * PropertyConverter.cs: remove uneeded exception variables from
5767 2002-01-02 Nick Drochak <ndrochak@gol.com>
5769 * DesignTimeParseData.cs: fix header to show correct class name
5771 2001-12-21 Gaurav Vaish <gvaish@iitk.ac.in>
5773 * StateBag.cs - Completed
5775 2001-12-19 Gaurav Vaish <gvaish@iitk.ac.in>
5777 * Pair.cs - Small undocumented class. Completed.
5779 2001-12-18 Gaurav Vaish <gvaish@iitk.ac.in>
5781 * DesignTimeParseData.cs - Initial implementation
5782 * StateBag.cs - Initial implementation
5784 2001-12-17 Gaurav Vaish <gvaish@iitk.ac.in>
5786 * PropertyConverter.cs - Undocumented class. Completed.
5787 * Utils.cs - Undocumented, private class.
5788 Initial implementation
5790 2001-08-28 Bob Smith <bob@thestuff.net>
5791 * Control.cs: Figured out some undocumented API.
5793 * BuildMethod.cs: Initial implementation.
5794 * BuildTemplateMethod.cs: Initial implementation.
5795 * HtmlTextWriterAttribute.cs: Initial implementation.
5796 * HtmlTextWriterStyle.cs: Initial implementation.
5797 * HtmlTextWriterTag.cs: Initial implementation.
5798 * IAttributeAccessor.cs: Initial implementation.
5799 * IDataBindingsAccessor.cs: Initial implementation.
5800 * ImageClickEventHandler.cs: Initial implementation.
5801 * INamingContainer.cs: Initial implementation.
5802 * IParserAccessor.cs: Initial implementation.
5803 * IPostBackDataHandler.cs: Initial implementation.
5804 * IPostBackEventHandler.cs: Initial implementation.
5805 * IStateManager.cs: Initial implementation.
5806 * ITagNameToTypeMapper.cs: Initial implementation.
5807 * ITemplate.cs: Initial implementation.
5808 * IValidator.cs: Initial implementation.
5809 * OutputCacheLocation.cs: Initial implementation.
5810 * PersistanceMode.cs: Initial implementation.
5811 * StateItem.cs: Initial implementation.
5813 2001-08-27 Bob Smith <bob@thestuff.net>
5815 * Control.cs: Bug fixes and implementations.
5817 2001-08-24 Bob Smith <bob@thestuff.net>
5819 * Control.cs: Bug fixes.
5821 2001-08-23 Bob Smith <bob@thestuff.net>
5823 * Control.cs: More implementation. Events reworked for performance.
5825 2001-08-22 Bob Smith <bob@thestuff.net>
5827 * LiteralControl.cs: Implemented.
5828 * Control.cs: Even more implementation (Events). What a beast.
5830 2001-08-20 Bob Smith <bob@thestuff.net>
5832 * Control.cs: More implementation. Not done yet. Shutter.
5834 2001-08-17 Bob Smith <bob@thestuff.net>
5836 * Control.cs: Partial implementation.