1 2009-02-18 Marek Habersack <mhabersack@novell.com>
3 * TemplateParser.cs: don't initialize PageParserFilter in
4 LoadConfigDefaults, postpone it till the first time the
5 PageParserFilter property is accessed.
7 * ApplicationFileParser.cs, UserControlParser.cs: make sure
8 VirtualPath is set in the constructors.
10 2009-02-13 Marek Habersack <mhabersack@novell.com>
12 * TemplateParser.cs: PageParserFilter handling moved to here.
13 PagesConfig must use the current virtual path when retrieving the
14 section, or otherwise we'll miss the lower level web.configs.
15 Added the AddControl method, used by PageParserFilter.
16 Implementing filtering of: parsed directives and the base type, if
17 a page parser filter is present.
19 * PageParserFilter.cs: added missing 3.5 members and implemented
22 * PageParser.cs: moved PageParserFilter processing to
24 VirtualPath must be set before anything else.
25 Call page parser filter's directive preprocessing code from
26 AddDirective if a filter is present and a mastertype or
27 previouspagetype directive is parsed.
29 * MasterPageParser.cs: when PageParserFilter is present use it to
30 preprocess the MasterType directive.
32 2009-02-12 Marek Safar <marek.safar@gmail.com>
34 * ControlBuilder.cs, PageParserFilter.cs, CodeConstructType.cs:
35 Add few missing members.
37 2009-02-06 Gert Driesen <drieseng@users.sourceforge.net>
39 * Control.cs: Make IsViewStateEnabled available on 1.0 profile
40 and use it to determine if viewstate needs to be saved instead of
41 the newly introduced ViewStateShouldBeSaved. Remove
42 ViewStateShouldBeSaved.
44 2009-02-05 Marek Habersack <mhabersack@novell.com>
46 * Control.cs: if a control has been added to the controls
47 collection, removed and added again do not call OnInit (). At the
48 same time OnInit() should be called more than once if a control is
49 added to a container which, in turn, is then added to another
50 control. To achieve that a new state mask flag has been added -
51 REMOVED. Fixes bug #471305
53 2009-02-04 Marek Habersack <mhabersack@novell.com>
55 * Control.cs: update of the fix for bug #470993 - view state of
56 the child controls isn't saved when any of their parents has it
59 2009-01-30 Marek Habersack <mhabersack@novell.com>
61 * Control.cs: don't save the control's state if it's
62 disabled. Fixes bug #470993
64 2009-01-23 Marek Habersack <mhabersack@novell.com>
66 * HtmlTextWriter.cs: if OnTagRender returns false when called from
67 RenderBeginTag, push the tag to the stack regardless, and ignore
68 it in DoBeginTag and RenderEndTag. Fixes bug #463634
70 2009-01-13 Marek Habersack <mhabersack@novell.com>
72 * CodeBuilder.cs, RootBuilder.cs, CollectionBuilder.cs: updates
73 related to ControlBuilder cleanup.
75 * ControlBuilder.cs: code cleanup - no field should be visible
76 outside the class unless it's a constant or a read-only field.
78 2009-01-12 Marek Habersack <mhabersack@novell.com>
80 * TemplateParser.cs: line pragmas are on by default. Fixes bug
83 2009-01-09 Marek Habersack <mhabersack@novell.com>
85 * BaseParser.cs, PageParser.cs, UserControlParser.cs: use
86 VirtualPathUtility.GetDirectory instead of UrlUtils.GetDirectory.
88 2008-12-25 Gonzalo Paniagua Javier <gonzalo@novell.com>
90 * TemplateControl.cs: use IndexOf (char).
92 2008-12-18 Marek Habersack <mhabersack@novell.com>
94 * ControlBuilder.cs: BindingContainerType returns typeof (Page)
95 only when the current object is a RootBuilder and it's been
96 created for a page parser. Otherwise it returns typeof
97 (Control). Fixes bug #456305
99 2008-12-11 Marek Habersack <mhabersack@novell.com>
101 * MasterPageParser.cs: check if masterType is null before using it
104 * TemplateParser.cs: in the 2.0 profile when a custom control is
105 registered, do not compile it right away but store the tag name in
106 a registry to be compiled at a later stage.
108 2008-12-09 Gonzalo Paniagua Javier <gonzalo@novell.com>
110 * XhtmlTextWriter.cs: don't recreate the Hashtables every time, but
113 2008-12-10 Marek Habersack <mhabersack@novell.com>
115 * MasterPageParser.cs: do not compile anything while
116 parsing. MasterType virtual path is not compiled, but stored for
117 later. It is compiled when the MasterType property is requested
118 from within MasterPageCompiler.
120 * PageParser.cs: do not compile anything while
121 parsing. MasterPageFile, MasterType and PreviousPageType virtual
122 paths aren't compiled but checked for existence and stored for
123 later. Actual compilation happens when the MasterType and
124 PreviousPageType are requested from within PageCompiler.
126 * BaseParser.cs: added a new helper method, ThrowParseFileNotFound.
128 2008-12-03 Marek Habersack <mhabersack@novell.com>
130 * DataBinder.cs: clean up Eval for good this time.
131 GetIndexedPropertyValue should throw an exception when a string
132 indexer expression is used and the container is an IList.
134 2008-12-02 Gonzalo Paniagua Javier <gonzalo@novell.com>
136 * Page.cs: make sure we don't return null in Title.
138 2008-12-02 Marek Habersack <mhabersack@novell.com>
140 * DataBinder.cs: when Eval attempts to find Items [] in the
141 container, catch and ignore all exceptions - the null returned
142 from GetPropertyValue may be a legitimate return value.
144 * StateManagedCollection.cs: adding an item to the collection does
145 not call SetDirty as an item is added, thus not affecting the
146 indexes of its predecessors. Fixes bug #443100
147 Insert doesn't call SetDirtyObject as all objects are made dirty
148 in SetDirty which is called from here. Same applies to this [int]
151 2008-12-01 Marek Habersack <mhabersack@novell.com>
153 * MasterPage.cs: use List <string> for ContentPlaceHolders instead
155 CreateMasterPage now directly accesses the ContentPlaceHolders as
156 it is now a list of strings.
158 2008-11-28 Marek Habersack <mhabersack@novell.com>
160 * DataBinder.cs: do the proper thing in Eval when a non-indexed
161 property is requested on an object and not found. In that case try
162 to use the Items property.
164 2008-11-25 Marek Habersack <mhabersack@novell.com>
166 * RootBuilder.cs: use new API in AspComponentFoundry to retrieve
167 registered control type.
169 * TemplateControlParser.cs: AddControlImports () removed. Its
170 functionality is now implemented in ControlBuilder.AddChild in a
171 more elegant, fine grained and correct way.
173 * TemplateParser.cs: replaced some "" with String.Empty
175 * ControlBuilder.cs: AddChild now adds an import for child's
176 namespace if the control being added has been registered in the
177 web.config file. Possible fix for #447896 and #447898
179 * PageParser.cs, MasterPageParser.cs: do not call
180 AddControlImports, it no longer exists.
182 2008-11-21 Marek Habersack <mhabersack@novell.com>
184 * ControlBuilder.cs: in BindingContainerType if builder is a
185 RootBuilder and no naming container is found, return typeof
186 (Page). In the TemplateBuilder case return cb.ControlType, not
189 2008-11-18 Gonzalo Paniagua Javier <gonzalo@novell.com>
191 * ControlBuilder.cs: make sure the binding container container is a
194 2008-11-18 Marek Habersack <mhabersack@novell.com>
196 * ControlBuilder.cs: make sure no control implementing the
197 INonBindingContainer can be returned from BindingContainerType.
199 2008-11-18 Gonzalo Paniagua Javier <gonzalo@novell.com>
201 * ControlBuilder.cs: find the correct naming container even inside
202 user controls. A corner case of bug #445889.
204 2008-11-15 Marek Habersack <mhabersack@novell.com>
206 * INonBindingContainer.cs: added
208 * Control.cs: BindingContainer now checks if a control implements
209 INonBindingContainer interface in addition to the
210 BINDING_CONTAINER mask check.
212 * UserControl.cs: implements INonBindingContainer
214 * ControlBuilder.cs: use the new INonBindingContainer interface to
215 determine the binding container type in the BindingContainerType
216 property. If TemplateBuilder's ContainerType implements that
217 interface, the NamingContainer is queried for the binding
218 container type. If ContainerType is null, we return our own
219 ControlType (if we're TemplateBuilder)
221 2008-11-14 Marek Habersack <mhabersack@novell.com>
223 * DataBinder.cs: if Eval doesn't find the indicated property, try
224 to find an indexer property on the object and use the expression
225 value as its parameter. Fixes #444725
227 2008-11-13 Marek Habersack <mhabersack@novell.com>
229 * Control.cs: added ability to reset child names to a specific
230 value, not only to 0.
232 2008-10-29 Marek Habersack <mhabersack@novell.com>
234 * StateManagedCollection.cs: IList.Remove should call this.IndexOf
235 instead of items.IndexOf
237 2008-10-24 Marek Habersack <mhabersack@novell.com>
239 * TemplateControl.cs: pass content hash to
240 UserControlParser.GetCompiledType when compiling a control in
243 * UserControlParser.cs: when compiling a control using a text
244 reader, append a unique suffix to the "file path" - that way
245 controls compiled from different input streams won't conflict with
246 each other in the compilation cache.
248 2008-10-23 Marek Habersack <mhabersack@novell.com>
250 * TemplateControlParser.cs: added internal method
251 AddControlImports which adds namespaces named in the
252 pages/controls section of web.config
254 * MasterPageParser.cs: unconditionally add namespaces named in the
255 pages/controls section of web.config.
257 * PageParser.cs: add namespaces named in the pages/controls
258 section of web.config to the page whenever it uses a master page.
260 * StateManagedCollection.cs: modified {Load,Save}ViewState to
261 properly store/recreate the collection of controls and to use a
262 more consistent structure for the state.
264 2008-10-17 Marek Habersack <mhabersack@novell.com>
266 * Control.cs: added the ValidateEvent internal method, used by
267 classes descending from Control to automatically trigger event
270 * Page.cs: removed the CheckForValidationSupport method. It moved
272 RaisePostBackEvent no longer validates the events, this
273 functionality has been moved to Control.ValidateEvent.
275 2008-10-15 Marek Habersack <mhabersack@novell.com>
277 * Page.cs: Response caching is switched on only when output
278 caching is configured for this page instance. Fixes bug #435549.
280 2008-10-14 Marek Habersack <mhabersack@novell.com>
282 * Control.cs: SaveViewStateRecursive must return view state even
283 if EnableViewState is false. This is apparently what .NET does, as
284 some commercial ASP.NET controls take advantage of that via
287 2008-10-08 Marek Habersack <mhabersack@novell.com>
289 * DataBinder.cs: in Eval expression needs to be trimmed before
290 checking whether it's an empty string.
291 GetIndexedPropertyValue must explicitly look for the "Item"
292 property, the lack of the DefaultMember attribute on type must not
295 2008-10-03 Marek Habersack <mhabersack@novell.com>
297 * TemplateParser.cs: make sure the generated class name is a valid
298 language independent identifier. Fixes bug #431622
300 2008-09-29 Marek Habersack <mhabersack@novell.com>
302 * Page.cs: EnableViewState is initialized from the web
304 ViewState is saved only if EnableViewState is true for the page.
305 Optimized SavePageControlState implementation.
306 Implemented the UniqueFilePathSuffix and MaxPageStateFieldLength
308 Some coding style changes.
310 2008-09-25 Marek Habersack <mhabersack@novell.com>
312 * Page.cs: make sure view state is loaded for PreviousPage during
315 2008-09-13 Atsushi Enomoto <atsushi@ximian.com>
317 * IAutoFieldGenerator.cs : new in 3.5 SP1.
319 2008-09-13 Atsushi Enomoto <atsushi@ximian.com>
321 * CssClassPropertyAttribute.cs : new in 3.5 SP1.
323 2008-09-13 Atsushi Enomoto <atsushi@ximian.com>
325 * IBindableControl.cs : new in 3.5 SP1.
327 2008-09-01 Marek Habersack <mhabersack@novell.com>
329 * ControlBuilder.cs: CreatePropertyBuilder now correctly processes
330 property names with prefixes (e.g. 'prefix:PropertyName').
331 Original, parsed, tag name is stored to properly handle closing
333 CreateSubBuilder compares tagid to tagName case-insensitively now.
335 * TemplateControl.cs: changed the way in which ParseControl is
336 implemented for the 2.0+ profile. Still not quite there, but
337 better and closer to .NET
339 2008-08-31 Marek Habersack <mhabersack@novell.com>
341 * Control.cs: improved FillControlCache
343 * TemplateParser.cs: added support for the LinePragmas directive
346 * ControlBuilder.cs: if this instance is a TemplateBuilder do not
347 call MyNamingContainer, so that our own ContainerType can be used
348 as the binding container (if present).
349 Added a cache for children of TemplateBuilder, used later in
350 TemplateControlCompiler.
352 2008-08-26 Marek Habersack <mhabersack@novell.com>
354 * TemplateControlParser.cs: added support for the VirtualPath
355 attribute of the Reference directive.
356 In the 2.0 profile, all the references are compiled using
357 BuildManager.GetCompiledType now.
359 2008-08-13 Marek Habersack <mhabersack@novell.com>
361 * TemplateBuilder.cs: use a generic List to store the bindings on
364 2008-08-08 Marek Habersack <mhabersack@novell.com>
366 * StateManagedCollection.cs: set all the contained objects state
367 to dirty in SetDirty.
369 2008-07-28 Marek Habersack <mhabersack@novell.com>
371 * MasterPage.cs: decouple processing of content templates in
372 CreateMasterPage from checking whether all the content place
373 holder ids are defined. Fixes bug #325114
375 2008-07-22 Gert Driesen <drieseng@users.sourceforge.net>
377 * LosFormatter.cs (Deserialize): When stream is non-seekable, do not
378 attempt to use properties that require a seekable stream. Based on
379 patch provided by Dean Brettle (dean@brettle.com). Fixes bug #411115.
381 2008-07-16 Rodrigo Kumpera <rkumpera@novell.com>
382 * DataBoundLiteralControl.cs: Lazily create staticLiterals.
384 * DataBoundLiteralControl.cs (Render): Don't generate
385 an intermediate string, write the content directly.
387 2008-07-14 Marek Habersack <mhabersack@novell.com>
389 * Page.cs: fix the failing tests by moving the form
390 RaisePostBackEvent code up in RaisePostBackEvents, so that
391 Validate () isn't called together with the registered post back
394 2008-07-10 Roei Erez <roeie@mainsoft.com>
396 * ClientScriptManager.cs: Bug in javacript code, usind window scope instead of document.
398 2008-07-11 Marek Habersack <mhabersack@novell.com>
400 * Control.cs: if adapter exists for the given control, use it for
401 rendering. Patch from Christian Hergert
402 <christian.hergert@gmail.com>, thanks!
404 2008-07-10 Roei Erez <roeie@mainsoft.com>
406 * Page.cs: Differentiate between IPostBackEventHandler that was registered by the user,
407 and one that was given as post parameter, so that in case ther post data may trigger both
408 IPostBackEventHandler and IPostBackDataHandler, only the IPostBackDataHandler is actually triggered.
410 2008-07-09 Rodrigo Kumpera <rkumpera@novell.com>
412 * DataBinder.cs (GetDataItem): Commited stupid code.
414 2008-07-09 Rodrigo Kumpera <rkumpera@novell.com>
416 * DataBinder.cs (GetDataItem): Use a per-thread cache for
419 2008-07-02 Rodrigo Kumpera <rkumpera@novell.com>
421 * Control.cs: Fix the lookup in ResolveAdapter that I
422 broke in the previous change.
424 2008-07-02 Rodrigo Kumpera <rkumpera@novell.com>
426 * Control.cs: Optimize ResolveAdapter a bit more.
428 2008-07-02 Rodrigo Kumpera <rkumpera@novell.com>
430 * Control.cs: Optimize the Adapter property and ResolveAdapter a bit.
432 2008-07-01 Rodrigo Kumpera <rkumpera@novell.com>
434 * TemplateControl.cs: Kill a foreach loop.
436 2008-06-30 Marek Habersack <mhabersack@novell.com>
438 * TemplateParser.cs: use atomic incrementation for automatic class
439 name creation to avoid Monitor Enter/Exit.
441 * UserControlParser.cs: hush the warnings and remove unnecessary
444 * ControlCachePolicy.cs, PageParser.cs, ControlBuilder.cs,
445 TemplateParser.cs, SimpleWebHandlerParser.cs, TemplateControl.cs,
446 ApplicationFileParser.cs: hush the warnings
448 * Page.cs: Context is protected internal in .NET 3.5
449 Initialize encryption IVs before returning the transform.
451 * Control.cs: in 2.0 we should return the context associated with
452 the current page. In 1.0 we ignore the never set field _context
453 and keep walking up the parent chain. Also, Context is protected
457 2008-06-27 Zoltan Varga <vargaz@gmail.com>
459 * Control.cs (ResolveAdapter): Avoid calling the Context property getter
462 * TemplateControl.cs: Avoid collecting the automatic event info for each
465 2008-06-18 Juraj Skripsky <js@hotfeet.ch>
467 * Page.cs (ProcessException): Throw HttpUnhandledException instead of
468 TargetInvocationException to match .NET. Fixes bug #400482.
470 2008-06-18 Marek Habersack <mhabersack@novell.com>
472 * BasePartialCachingControl.cs: implemented the CachePolicy
475 * UserControl.cs: implemented the CachePolicy property.
477 * ControlCachePolicy.cs: implemented missing properties and
480 2008-06-11 Marek Habersack <mhabersack@novell.com>
482 * TemplateControl.cs: make sure 'type' isn't null in LoadControl
483 before attempting to use it.
485 2008-06-10 Noam Lampert <noaml@mainsoft.com>
487 * TemplateControl.jvm.cs: Don't assume that controls containing page-specific
488 callbacks (e.g. Page_LoadComplete) are necessarily Page derivatives.
490 2008-06-04 Juraj Skrispky <js@hotfeet.ch>
492 * PageParser.cs (ProcessMainAttributes): Take value of
493 enableEventValidation from web.config into account. Fixes bug #397099.
495 2008-06-04 Marek Habersack <mhabersack@novell.com>
497 * PageHandlerFactory.cs: this class should be public. Fixes bug
500 2008-05-30 Marek Habersack <mhabersack@novell.com>
502 * DataBindingCollection.cs, ExpressionBindingCollection.cs: do not
503 use synthetized event accessors (to avoid locks).
505 2008-05-28 Marek Habersack <mhabersack@novell.com>
507 * ReadOnlyDataSourceView.cs: added. Patch contributed by James
508 Fitzsimons <james.fitzsimons@gmail.com>, thanks!
510 * TemplateParser.cs: added support for #pragma checksum
512 2008-05-19 Juraj Skripsky <js@hotfeet.ch>
514 * Page.cs (ValidateCollection): Don't check _eventValidation, it
515 has nothing to do with the validators.
517 2008-05-16 Marek Habersack <mhabersack@novell.com>
519 * StateManagedCollection.cs: make {Save,Load}ViewState simpler.
521 2008-05-15 Marek Habersack <mhabersack@novell.com>
523 * StateManagedCollection.cs: do not query for index of an item in
526 2008-05-07 Marek Habersack <mhabersack@novell.com>
528 * TemplateParser.cs: added a stack of include directories, to
529 properly resolve file relative paths when the #include file=""
530 directive is used. Fixes bug #324536
532 2008-05-05 Igor Zelmanovich <igorz@mainsoft.com>
534 * HiddenFieldPageStatePersister.cs: add TARGET_J2EE def
535 * Page.cs: remove TARGET_J2EE def
536 * Page.jvm.cs: add new internal api such PageState and FacesContext.
537 all those changes make PageAdapter works with JSF under TARGET_J2EE.
539 2008-04-24 Marek Habersack <mhabersack@novell.com>
541 * RootBuilder.cs: when registering a custom control, add its path
542 to the parser dependencies. Fixes bug #377915
543 In the 2.0 profile, if the custom control being used was
544 registered from web.config and is found in the same directory what
545 the file being parsed, throw an exception. This behavior matches
548 * TemplateParser.cs: added new VirtualPath property, which stores
549 the virtual path to the file being parsed.
551 * PageParser.cs: set the VirtualPath property in the 2.0 profile
552 when constructing the parser.
554 2008-04-23 Marek Habersack <mhabersack@novell.com>
556 * TemplateParser.cs: constructs the VirtualPath using the current
557 parser's BaseVirtualDirectory. Fixes bug #381715
559 2008-04-19 Marek Habersack <mhabersack@novell.com>
561 * SimpleWebHandlerParser.cs: refactoring - move code between
562 constructors, reader should be set before initializing the rest of
563 the object. Fixes bug #381364
565 * TemplateParser.cs: RegisterCustomControl must use absolute
566 virtual path when querying the virtual path provider for
567 file. Fixes bug #381364
569 2008-04-18 Marek Habersack <mhabersack@novell.com>
571 * ObjectStateFormatter.cs: ObjectFormatter.WriteObject should not
572 use a converter if it can't convert _from_ the type of the object
573 being written to the stream. Fixes issues with serializing, e.g.,
576 2008-04-14 Marek Habersack <mhabersack@novell.com>
578 * SimpleWebHandlerParser.cs, TemplateParser.cs, AspGenerator.cs:
579 make sure streams are disposed the way they should be.
581 2008-04-10 Marek Habersack <mhabersack@novell.com>
583 * Control.cs: refactoring - IdSeparator property is internally
586 2008-04-08 Dean Brettle <dean@brettle.com>
588 * Page.cs (PageAdapter): fixed cast error when a ControlAdapter that
589 wasn't a PageAdapter was used.
591 2008-04-08 Marek Habersack <mhabersack@novell.com>
593 * TemplateParser.cs: CodeFile/Src handling uses
594 HostingEnvironment.VirtualPathProvider to check for file
597 2008-04-02 Marek Habersack <mhabersack@novell.com>
599 * Page.cs: make SetContext internal (used from tests).
601 2008-04-01 Marek Habersack <mhabersack@novell.com>
603 * TemplateControl.cs: ParseControl implemented for the 2.0
606 * UserControlParser.cs: added support for compiling controls
607 without input file (e.g. from TemplateControl.ParseControl).
609 * TemplateParser.cs: implemented VirtualPathProvider support for
610 registering UserControls.
611 If there is no input file path provided, auto-generate the class
612 name in the ClassName property getter.
614 2008-03-27 Marek Habersack <mhabersack@novell.com>
616 * Page.cs: added an implementation of the ClientQueryString
619 2008-03-13 Marek Habersack <mhabersack@novell.com>
621 * TemplateParser.cs: HttpApplication.BinaryDirectories property no longer
622 exists, use HttpApplication.BinDirectory instead.
624 2008-03-09 Dean Brettle <dean@brettle.com>
626 * Page.cs (SavePageControlState, LoadPageControlState): save/load
627 adapter state in 2.0 profile.
629 * Page.cs (CreateHtmlTextWriter): call Browser.CreateHtmlTextWriter()
632 * Page.cs (RenderPage): call CreateHtmlTextWriter() to get the writer
635 * Page.cs (DeterminePostBackMode, InitOutputCache,
636 RenderClientScriptFormDeclaration, InternalProcessRequest,
637 PageStatePersister): added support for PageAdapters.
639 * Control.cs (Adapter, ResolveAdapter): implemented. Adapter calls
640 ResolveAdapter and remembers result. ResolveAdapter checks for adapters
641 of the Type hierarchy until it finds one.
643 * Control.cs (SaveViewStateRecursive, LoadViewStateRecursive): save/load
644 adapter state in 2.0 profile.
646 * HtmlTextWriter.cs (BeginRender, EndRender): added empty virtual methods
647 required by 2.0 profile. These are called by corresponding methods of
648 System.Web.UI.Adapters.ControlAdapter.
650 * Page.cs, Control.cs: don't access Request.Browser if it couldn't have
651 any adapters/writers because there are no files in App_Browsers/.
653 2008-03-09 Marek Habersack <mhabersack@novell.com>
655 * TemplateControlParser.cs: 2.0 allows controls with extensions
656 different than .ascx, as long as they derive from
657 System.Web.UI.UserControl and a build provider is available for
660 * TemplateParser.cs: user controls must derive from
661 System.Web.UI.UserControl.
663 * SimpleWebHandlerParser.cs: if the input file doesn't contain the
664 correct directive string (tag name is empty for the <%@ %> tag),
665 use the default directive.
667 2008-02-28 Marek Habersack <mhabersack@novell.com>
669 * TemplateControlParser.cs: when registering a control, check for
670 the .ascx extension case-insensitively. Fixes bug #364995
672 2008-02-28 Igor Zelmanovich <igorz@mainsoft.com>
675 fixed exception propagation in case of multiple control with same id
678 2008-02-26 Marek Habersack <mhabersack@novell.com>
680 * TemplateParser.cs: a better error message.
682 * ControlBuilder.cs: if one of the parent builders is a
683 TemplateBuilder, use it as the naming container and use its
684 ContainerType property as the value of the BindingContainerType
687 2008-02-25 Marek Habersack <mhabersack@novell.com>
689 * ControlBuilder.cs: correctly chain up to the parent builder when
690 looking for the naming container.
692 2008-02-21 Marek Habersack <mhabersack@novell.com>
694 * ControlBuilder.cs: introduced a new internal property -
695 MyNamingContainer used by the public properties
696 NamingContainerType and BindingContainerType. This simplifies the
697 code in the latter property, as the binding container type must
698 almost always be the same as the naming container type. The only
699 exception is when we're inside a content builder, in which case we
700 return the parent's BindingContainerType. Fixes bug #363665
702 2008-02-12 Vladimir Krasnov <vladimirk@mainsoft.com>
704 * Page.jvm.cs: StateSerializer.readExternal and writeExternal fixed
705 to support viewstate encryption
707 2008-02-12 Vladimir Krasnov <vladimirk@mainsoft.com>
709 * ObjectStateFormatter.cs: revert of 91820
711 2008-02-08 Marek Habersack <mhabersack@novell.com>
713 * SimpleWebHandlerParser.cs: always return a non-null value from
714 the Program property.
716 * TemplateParser.cs: make sure that the Src attribute is treated
717 correctly in the 2.0 profile. Fixes bug #319016
719 2008-02-07 Vladimir Krasnov <vladimirk@mainsoft.com>
721 * Page.jvm.cs: added StateSerializer class, fixed processSaveState,
724 2008-02-07 Marek Habersack <mhabersack@novell.com>
726 * PageHandlerFactory.cs: call PageParser.GetCompiledPageInstance
727 only - that method calls the appropriate APIs for 1.1 and 2.0
730 2008-02-06 Vladimir Krasnov <vladimirk@mainsoft.com>
732 * Control.cs: fixed ResolveClientUrlInternal for portal url prefixes
734 2008-02-04 Marek Habersack <mhabersack@novell.com>
736 * SimpleWebHandlerParser.cs: use WebEncoding.FileEncoding when
737 reading the source file.
739 2008-01-30 Igor Zelmanovich <igorz@mainsoft.com>
741 * ObjectStateFormatter.cs:
742 ensure ReaderContext.GetCache called with positive arg to prevent from
743 ArgumentOutOfRange being thrown.
745 2008-01-29 Igor Zelmanovich <igorz@mainsoft.com>
747 * ObjectStateFormatter.cs: has public constructor.
749 2008-01-29 Vladimir Krasnov <vladimirk@mainsoft.com>
751 * Page.cs: performance optimization of DeterminePostBackMode
753 2008-01-24 Marek Habersack <mhabersack@novell.com>
755 * PageThemeFileParser.cs: the DefaultBaseType property removed.
757 * ApplicationFileParser.cs: added constructor which takes a
759 Removed the DefaultBaseType property.
760 Added the Reader property.
762 * MasterPage.cs: use BuildManager to create page instance.
764 * WebHandlerParser.cs: added a compatibility constructor.
766 * TemplateControl.cs: GetTypeFromControlPath uses
767 BuildManager.GetCompiledType for the 2.0+ profile.
769 * WebServiceParser.cs: added a compatibility internal
772 * SimpleWebHandlerParser.cs: properly treat context and
773 physicalPath parameters to the constructor, especially for the
774 2.0+ profile where they are obsolete.
775 Dependencies are added using virtual paths.
777 * PageThemeParser.cs: DefaultBaseType property removed.
779 * Page.cs: Style sheets and themes are compiled using
781 Previous page instance is compiled using BuildManager for the 2.0+
784 * MasterPageParser.cs: Use BuildManager to create instance and
786 Dependencies are added using virtual paths.
788 * SimpleHandlerFactory.cs: Use
789 BuildManager.CreateInstanceFromVirtualPath for the 2.0+ profile.
791 * UserControlParser.cs: if the parser is created using a
792 TextReader, take the input file path from the virtual path.
793 Added a new internal constructor which takes both a TextReader and
794 an inputFile parameters.
795 Set base type to the default in the constructors.
796 Use virtual path when setting master page dependency.
797 DefaultBaseTypename doesn't use a literal string in the 2.0+
798 profile, it gets the base type from the application
801 * TemplateControlParser.cs: Dependency on a control/page mentioned
802 in the Reference directive is registered using the virtual path.
803 TextReader property is an override now.
805 * TemplateParser.cs: RegisterCustomControl adds a dependency on
806 the virtual path, not the physical path. The custom control is
807 compiled using BuildManager.GetCompiledType for the 2.0+ profile.
808 RegisterNamespace does not add a dependency on the assembly.
809 LoadType does not add a dependency on the assembly.
810 Legacy Src attribute is handled properly now.
811 Dependency on code-behind (Src and CodeFile directive attributes)
812 is added using the code-behind file's virtual path.
813 GetAssemblyFromSource adds a dependency using the virtual path.
814 DefaultBaseType implemented here, using DefaultBaseTypeName which
815 is implemented in the descendant classes.
816 Added internal CodeBehindSource property, used by build
818 ClassName property works correctly if inputFile is missing
819 (e.g. when the parser has been created using a TextReader)
820 Added a virtual internal property TextReader to return the readed
821 which has been used to create the parser instance.
823 * PageHandlerFactory.cs: GetHandler uses
824 BuildManager.CreateInstanceFromVirtualPath for the 2.0+ profile.
826 * PageParser.cs: set the default base type in the constructors.
827 If the input file is not passed to a constructor, take the input
828 file path from the virtual path.
829 GetCompiledPageInstance uses BuildManager.CreateInstanceFromVirtualPath
830 for the 2.0+ profile.
831 MasterPage dependency is set using the virtual path of the master
833 MasterPage is compiled into a type using BuildManager.GetCompiledType.
834 GetCompiledPageType uses BuildManager.GetCompiledType for the 2.0
836 DefaultBaseType override removed, it is implemented in the
837 TemplateParser class.
838 DefaultBaseTypename doesn't use a literal string in the 2.0+
839 profile, it gets the base type from the application
842 2008-01-17 Igor Zelmanovich <igorz@mainsoft.com>
844 * Control.cs: fix ResolveUrl for some cases.
846 2008-01-17 Igor Zelmanovich <igorz@mainsoft.com>
848 * Control.cs: consider changes in BaseCompiler.cs.
850 2008-01-14 Igor Zelmanovich <igorz@mainsoft.com>
852 * Control.cs: fixed ResolveClientUrl.
853 use Context.FilePath instead of Context.CurrentExecutionPath for
854 resolvint app. releative path.
856 2008-13-01 Vladimir Krasnov <vladimirk@mainsoft.com>
858 * Page.jvm.cs: optimized SetupResponseWriter, fixed getChildCount and
860 * Control.jvm.cs: fixed getChildCount method
862 2008-01-09 Igor Zelmanovich <igorz@mainsoft.com>
865 * ClientScriptManager.cs:
868 2008-01-07 Igor Zelmanovich <igorz@mainsoft.com>
870 * Page.cs: added internal API
871 * IScriptManager.cs: added new internal interface.
873 2008-01-07 Igor Zelmanovich <igorz@mainsoft.com>
875 * ClientScriptManager.cs:
879 for TARGET_J2EE ensure page life cycle is completed in CrossPagePostBack.
881 2008-01-07 Marek Habersack <mhabersack@novell.com>
883 * TemplateParser.cs: handle legacy 'src' attribute in the 2.0
884 profile in the correct way. Fixes bug #319016
885 BaseType is global by default.
887 2008-01-02 Marek Habersack <mhabersack@novell.com>
889 * TemplateParser.cs: added a wrapper class for server-side script
890 snippets, to keep track of locations.
891 Store main directive location for later use in DirectiveLocation
894 2008-01-01 Igor Zelmanovich <igorz@mainsoft.com>
897 make SubmitDisabledControls and SetFocus works in multiform environment
899 2007-12-31 Vladimir Krasnov <vladimirk@mainsoft.com>
901 * Page.cs: fixed thread abort handling in ProcessRequest
903 2007-12-27 Marek Habersack <mhabersack@novell.com>
905 * TemplateParser.cs: check for base type globality also when the
906 default type is used.
908 2007-12-26 Igor Zelmanovich <igorz@mainsoft.com>
912 make Trace considers control state info.
914 2007-12-20 Igor Zelmanovich <igorz@mainsoft.com>
916 * Page.cs: refactoring:
917 split method such InternalProcessRequest to several methods.
918 It is required for implementing alternative hosting under TARGET_J2EE.
920 2007-12-20 Marek Habersack <mhabersack@novell.com>
922 * ClientScriptManager.cs: write hidden fields inside a div only in
923 the 2.0 profile. Fixes bug #349991
925 2007-12-20 Igor Zelmanovich <igorz@mainsoft.com>
929 * ClientScriptManager.cs:
930 refactoring: removed Page.LifeCycle internal API,
931 used Control's stateMask flag instead.
933 2007-12-17 Marek Habersack <mhabersack@novell.com>
935 * TemplateParser.cs: support the 'Src' directive attribute on 2.0
936 profile as well as on the 1.1 one. Fixes bug #319016
938 2007-12-16 Igor Zelmanovich <igorz@mainsoft.com>
940 * Page.cs: on CrossPagePostBack previous page is processed by Execute API,
941 that allow CurrentHandler property works correctly during Page processing.
943 2007-12-15 Marek Habersack <mhabersack@novell.com>
945 * SimpleWebHandlerParser.cs: Default value for Debug is taken from
946 the compilation config section.
948 * TemplateParser.cs: Added LoadConfigDefaults here, loads default
949 value for Debug from the compilation section.
950 Cache CompilationConfig in methods where it is accessed more than
952 Default value for Debug in ProcessMainAttributes is taken from the
955 * PageParser.cs, TemplateControlParser.cs: LoadPagesConfigDefaults
956 renamed to LoadConfigDefaults.
958 2007-12-13 Marek Habersack <mhabersack@novell.com>
960 * ClientScriptManager.cs, MasterPageParser.cs, Control.cs,
961 Page.cs: speed optimization - use String.Concat instead of
962 String.Format in some cases.
964 2007-12-13 Igor Zelmanovich <igorz@mainsoft.com>
967 - When Transfer/Execute is called with preserveForm=true, transferred
968 page is not processed as PostBack but form collection is preserved.
969 - When Execute is called more than once, PreviousPage property is set
972 2007-11-22 Marek Habersack <mhabersack@novell.com>
974 * OutputCacheParameters.cs: added the VaryByContentEncoding
977 * Page.cs: added new InitCache overload.
979 * TemplateParser.cs: added support for the VaryByContentEncodings
980 attribute of the OutputCache directive.
982 2007-11-19 Vladimir Krasnov <vladimirk@mainsoft.com>
984 * Page.jvm.cs: IsMultiForm optimized, cached configuration call
986 2007-11-14 Marek Habersack <mhabersack@novell.com>
988 * SimpleWebHandlerParser.cs: expect GetTypeFromBin to be called
989 with a fully qualified type name and act accordingly. Fixes bug
992 2007-11-13 Igor Zelmanovich <igorz@mainsoft.com>
994 * ClientScriptManager.cs:
995 Ensure a script resource is included once in multi form environment.
997 2007-11-07 Igor Zelmanovich <igorz@mainsoft.com>
999 * PageParser.cs: fixed initial value of tracemode.
1001 2007-11-07 Igor Zelmanovich <igorz@mainsoft.com>
1003 * Control.cs: removes '#define MONO_TRACE'.
1004 It allows to run MONO in release mode without supplementary trace info.
1006 2007-11-07 Igor Zelmanovich <igorz@mainsoft.com>
1008 * Page.cs: added missing trace information for NET_2_0
1010 2007-11-06 Igor Zelmanovich <igorz@mainsoft.com>
1014 affects TARGET_J2EE only:
1015 validators state (isValid) is restored on GetBack.
1017 2007-11-06 Marek Habersack <mhabersack@novell.com>
1019 * Page.cs: formatting
1021 2007-11-05 Marek Habersack <mhabersack@novell.com>
1023 * ClientScriptManager.cs: EventStateFieldName is a constant now.
1025 * Page.cs: use full control ids when processing post data. Fixes
1028 2007-11-03 Marek Habersack <mhabersack@novell.com>
1030 * Control.cs: need to append a "/" to TemplateSourceDirectory
1031 before calling VirtualPathUtility.Combine, in order to get the
1032 correct physical path to the requested file. Combine looks for the
1033 last occurrence of "/" to determine where the relative paths
1036 * MinimizableAttributeTypeConverter.cs: don't throw on null value,
1037 call the base class method in that case.
1039 * SimpleWebHandlerParser.cs: don't NRE on a null assembly passed
1041 AddAssemblyByName must check the return value of
1042 Assembly.LoadWithPartialName, as the method doesn't throw on
1043 missing assembly, it returns null instead.
1045 * ClientScriptManager.cs: eventValidationArray is serialized in an
1046 optimized fashion, so that its serialized form occupies only as
1047 many slots as were actually used. It may result in that an array
1048 of 0 entries will be serialized and then
1049 restored. EnsureEventValidationArray takes that into consideration
1052 2007-11-01 Marek Habersack <mhabersack@novell.com>
1054 * Page.cs, ObjectStateFormatter.cs: use the new
1055 MachineKeySectionUtils class wherever necessary.
1057 2007-10-29 Marek Habersack <mhabersack@novell.com>
1059 * TemplateParser.cs: add the file pointed to by the Src or
1060 CodeFile attributes to the list of page cache dependencies.
1062 * PageParser.cs, UserControlParser.cs: Add the MasterPage file to
1063 the list of page cache dependencies.
1065 * MasterPageParser.cs: add the source pointed to by VirtualPath to
1066 the list of cache dependencies.
1068 2007-10-23 Marek Habersack <mhabersack@novell.com>
1070 * ClientScriptManager.cs: added two constants to define start/end
1071 script block comments rendering. 1.1 uses HTML comments, while 2.0
1074 * Page.cs: render script blocks with start/end comments taken from
1075 the ClientScriptManager constants above.
1077 2007-10-17 Marek Habersack <mhabersack@novell.com>
1079 * TemplateParser.cs: removed code that ignored the Async and
1080 AsyncTimeout attributes.
1082 * PageParser.cs: handle the Async and AsyncTimeout attributes
1083 here. Fixes bug #325450
1085 * Control.cs: properly configure control visibility in
1086 PreRenderRecursiveInternal. The check must be made by looking at
1087 the Visible value, not at the flags directly. Fixes bug #325303
1089 2007-10-03 Marek Habersack <mhabersack@novell.com>
1091 * Page.cs: complete implementation of ValidationGroups. Fixes bug
1092 #330423. Patch from Juraj Skripsky <juraj@hotfeet.ch>, thanks!
1094 2007-10-02 Marek Habersack <mhabersack@novell.com>
1096 * SimpleWebHandlerParser.cs: fix the way types are loaded from
1097 top-level assemblies.
1099 2007-10-01 Marek Habersack <mhabersack@novell.com>
1101 * Page.cs: do not set IsPostBack to true if we're in transfer from
1102 another page. Fixes bug #329341
1104 2007-09-18 Marek Habersack <mhabersack@novell.com>
1106 * TemplateParser.cs: VaryByControl OutputCache attribute is
1107 allowed for both controls and pages in 2.0.
1109 2007-09-11 Marek Habersack <mhabersack@novell.com>
1111 * WebServiceParser.cs: inputFile is a virtual path to the service,
1112 not a physical one in GetCompiledType.
1114 2007-09-05 Marek Habersack <mhabersack@novell.com>
1116 * RootBuilder.cs: make Foundry settable, but protect the backing
1117 field from being set to null.
1119 2007-09-04 Marek Habersack <mhabersack@novell.com>
1121 * TemplateParser.cs: don't optimize for case when 'name' is a full
1122 assembly name in AddAssemblyByName. Assembly.Load triggers the
1123 AssemblyResolve event on the current AppDomain if an assembly
1124 isn't found and we use this mechanism to map names like "App_Code"
1125 or "App_GlobalResources" to the real names of those dynamic
1128 2007-09-02 Igor Zelmanovich <igorz@mainsoft.com>
1130 * Page.jvm.cs: implemented IsMultiForm property to take
1131 the value from configuration.
1133 2007-08-30 Igor Zelmanovich <igorz@mainsoft.com>
1135 * Page.cs: fixed MaintainScrollPositionOnPostBack feature.
1137 2007-08-29 Marek Habersack <mhabersack@novell.com>
1139 * TemplateBuilder.cs: check for and store for later use the
1140 TemplateContainerAttribute. Added a nullable property
1141 TemplateInstance to return the value of the attribute.
1143 2007-08-29 Vladimir Krasnov <vladimirk@mainsoft.com>
1145 * Control.cs: optimized performance in InitControlsCache()
1147 2007-08-28 Marek Habersack <mhabersack@novell.com>
1149 * Page.cs: The following property values are returned from cached
1150 fields instead of looking them up on Context: Application,
1151 Response, Request, Cache (as determined by the tests).
1152 Added a backing field for the Session property.
1153 Session doesn't throw an exception when Context is null - it
1154 silently ignores it and throws a session not available exception.
1155 _context is never used directly, the Context property is used
1156 instead. Fixes bug #82606
1158 2007-08-23 Juraj Skripsky <js@hotfeet.ch>
1160 * Control.cs (InitControlsCache): Make the hash table case insensitive to
1161 make FindControl compatible with MS.net again. Add LAMESPEC note.
1163 2007-08-23 Marek Habersack <mhabersack@novell.com>
1165 * SimpleWebHandlerParser.cs: use
1166 HttpApplication.BinDirectoryAssemblies in AddAssembliesInBin and
1167 LoadAssemblyFromBin.
1168 Restore the old logic in GetTypeFromBin, also use
1169 HttpApplication.BinDirectoryAssemblies there.
1171 * TemplateParser.cs: use HttpApplication.BinDirectories to
1172 interate over the list of bin dirs.
1173 Use HttpApplication.BinDirectoryAssemblies in AddAssembliesInBin.
1175 2007-08-23 Igor Zelmanovich <igorz@mainsoft.com>
1177 * ClientScriptManager.cs: encode values of hidden fields.
1179 2007-08-21 Marek Habersack <mhabersack@novell.com>
1181 * SimpleWebHandlerParser.cs: use HttpApplication.PrivateBinPath
1182 enumerator when loading or adding assemblies from binary
1183 directories. Remove unused PrivateBinPath property.
1185 * ControlBuilder.cs: remove unused PrivateBinPath property.
1187 * TemplateParser.cs: use HttpApplication.PrivateBinPath when
1188 adding assemblis and loading types.
1190 2007-08-21 Igor Zelmanovich <igorz@mainsoft.com>
1192 * ClientScriptManager.cs: fixed onsubmit script for MultiForm environment
1194 2007-08-20 Marek Habersack <mhabersack@novell.com>
1196 * MasterPage.cs: use the place holder IDs collection instead of
1197 the placholder collection to see if we have the place holder in
1198 the master page. Fixes bug #82485.
1200 * MasterPageParser.cs: store the content place holder ids in the
1201 internal cache to gain access to them when needed.
1203 2007-08-19 Vladimir Krasnov <vladimirk@mainsoft.com>
1205 * MasterPageParser.jvm.cs: optimized GetDirectory call
1206 * PageTheme.cs: optimized string formatting in CreateSkinKey
1208 2007-08-19 Vladimir Krasnov <vladimirk@mainsoft.com>
1210 * Page.cs: ResetEventValidationState call moved back to
1211 InternalProcessRequest
1213 2007-08-19 Marek Habersack <mhabersack@novell.com>
1215 * Page.cs: make sure not to ever pass a null value as the value
1216 of the postCollection parameter to control's LoadPostData. The
1217 ProcessPostData's 'data' parameter is no longer passed to
1218 LoadPostData, instead we pass _requestValueCollection or an empty
1219 collection if it is null. The controls should always get all the
1220 request data, no matter if the 'data' parameter is null or
1221 not. Possible fix for bug #82477.
1223 2007-08-18 Gert Driesen <drieseng@users.sourceforge.net>
1225 * MasterPage.cs: Include relative URL of MasterPage in exception
1228 2007-08-18 Marek Habersack <mhabersack@novell.com>
1230 * MasterPage.cs: if a ContentPlaceHolder ID is not found in the
1231 associated MasterPage, throw an exception. This is compatible with
1232 what MS.NET does. Fixes bug #82447.
1234 2007-08-15 Igor Zelmanovich <igorz@mainsoft.com>
1237 - avoid NullRefferenceException from Title property
1238 when Page does not have <head runat="server>,
1239 - scriptManager.ResetEventValidationState () is called from Render.
1240 It allows multiply calling of RenderControl returns the same output.
1242 2007-08-14 Vladimir Krasnov <vladimirk@mainsoft.com>
1244 * Control.cs: optimized GetDirectory call in ResolveClientUrl
1246 2007-08-14 Vladimir Krasnov <vladimirk@mainsoft.com>
1248 * ClientScriptManager.cs: otimized string.Replace in GetScriptLiteral
1250 2007-08-14 Marek Habersack <mhabersack@novell.com>
1252 * Control.cs: include the actual exception when reporting control
1255 2007-08-10 Gert Driesen <drieseng@users.sourceforge.net>
1257 * PageParser.cs: Replace enableSessionState and readOnlySessionState
1258 bools with enum backed field. Move 1.0 profile code for checking value
1259 of EnableSessionState pages config to PagesConfigurationHandler.
1260 Fixes bug #82392 for 1.0 profile.
1262 2007-08-09 Marek Habersack <mhabersack@novell.com>
1264 * PageParser.cs: honor web.config enableSessionState
1265 ReadOnly setting instead of overwriting based on default value for
1266 page directive EnableSessionState. Patch from Joel Reed
1267 <joelwreed@comcast.com>, thanks! Fixes bug #82392
1269 2007-08-09 Vladimir Krasnov <vladimirk@mainsoft.com>
1271 * CssStyleCollection.cs: used ListDictionary instead of
1272 HybridDictionary as underlaying data structure
1274 2007-08-07 Vladimir Krasnov <vladimirk@mainsoft.com>
1276 * Control.cs: refactoring of LookForControlByName with caching
1278 2007-08-06 Igor Zelmanovich <igorz@mainsoft.com>
1280 * DataSourceView.cs: fixed:
1281 view raises onchange event when datasource is chenged.
1283 2007-08-06 Igor Zelmanovich <igorz@mainsoft.com>
1285 * Control.cs: fixed: control ID management.
1287 2007-08-06 Igor Zelmanovich <igorz@mainsoft.com>
1289 * Control.cs: refactoring: code formatting only.
1291 2007-08-05 Vladimir Krasnov <vladimirk@mainsoft.com>
1293 * HtmlTextWriter.cs: performance refactoring, optimized AddAttribute
1294 overloads, used StringComparer for tag, styles and attrs hashtables
1295 fixed AddAttribute, id attr should not be encoded by default
1297 2007-07-31 Vladimir Krasnov <vladimirk@mainsoft.com>
1299 * Control.cs: fixed AppRelativeTemplateSourceDirectory that should
1300 depend on AppRelativeVirtualPath
1301 * Control.jvm.cs: fixed TemplateSourceDirectory that should depend on
1302 AppRelativeTemplateSourceDirectory
1304 2007-07-30 Vladimir Krasnov <vladimirk@mainsoft.com>
1306 * Page.jvm.cs: fixed RenderResponse property, should not fail in no
1309 2007-07-29 Igor Zelmanovich <igorz@mainsoft.com>
1311 * Page.cs: added TARGET_J2EE variable at client side.
1313 2007-07-24 Igor Zelmanovich <igorz@mainsoft.com>
1315 * ClientScriptManager.cs:
1318 added new internal property IsMultiForm which returns false under
1319 !TARGET_J2EE (Portal). All client scripts are rendered
1320 according this property.
1322 2007-07-24 Igor Zelmanovich <igorz@mainsoft.com>
1324 * ClientScriptManager.cs: fixed: GetCallbackEventReference method.
1326 2007-07-23 Igor Zelmanovich <igorz@mainsoft.com>
1328 * Page.cs: refactoring: __doPostBack client script
1329 It is a part of adapting System.Web to work whith
1330 System.Web.Extensions (AJAX).
1332 2007-07-23 Konstantin Triger <kostat@mainsoft.com>
1334 * Control.cs: calculate AppRelativeTemplateSourceDirectory from HttpContext
1335 when control is not in control collection.
1337 2007-07-22 Konstantin Triger <kostat@mainsoft.com>
1340 TemplateControl.cs: base AppRelativeTemplateSourceDirectory property
1341 on TemplateControl; implement special behavior of Control.TemplateControl for
1342 TemplateControl instances.
1344 2007-07-18 Marek Habersack <mhabersack@novell.com>
1346 * ControlBuilder.cs: on the 2.0 profile BindingContainerType
1347 returns the associated control's base type when parent builder is
1348 absent instead of typeof (Control). It returns typeof (Control) if
1349 the parent builder type is determined to be a
1350 NamingContainer. This makes the generated code match the MS.NET
1351 output. Fixes bug #82119.
1353 2007-07-18 Igor Zelmanovich <igorz@mainsoft.com>
1356 * ClientScriptManager.cs:
1357 scripts, registered using RegisterClientScriptInclude,
1358 RegisterClientScriptResource and RegisterClientScriptBlock appear on Page
1359 in order matches the order in which the scripts were registered.
1361 2007-07-16 Igor Zelmanovich <igorz@mainsoft.com>
1363 * Control.cs: fixed EnsureID.
1364 ID is not assigned, if already was set.
1366 2007-07-12 Vladimir Krasnov <vladimirk@mainsoft.com>
1368 * ClientScriptManager.cs: refactored event validation data structure
1369 * Page.cs: fixed InternalProcessRequest, event validation list should
1370 be cleared before render
1372 2007-06-24 Vladimir Krasnov <vladimirk@mainsoft.com>
1374 * ObjectStateFormatter.cs: optimized loops in array formatters
1376 2007-07-03 Marek Habersack <mhabersack@novell.com>
1378 * SimpleWebHandlerParser.cs: improve directive
1379 pre-parsing. Directives can span multiple lines, they don't have
1380 to start at the beginning of the line and any content can follow
1381 them after the directive end. Also, do not trim the input since
1382 that might affect program content. Fixes bug #81993.
1384 2007-07-02 Marek Habersack <mhabersack@novell.com>
1386 * Control.cs: make sure TemplateSourceDirectory returns meaningful
1387 results in the 1.1 profile. Fixes bug #81950.
1389 2007-06-24 Vladimir Krasnov <vladimirk@mainsoft.com>
1391 * ObjectStateFormatter.cs: WriterContext.RegisterCache, refactored out
1394 2007-06-20 Marek Habersack <mhabersack@novell.com>
1396 * BasePartialCachingControl.cs: use HttpRuntime.InternalCache to
1397 keep the private entries.
1399 2007-06-18 Igor Zelmanovich <igorz@mainsoft.com>
1401 * Control.cs: revised the changes from r79982.
1403 2007-06-18 Igor Zelmanovich <igorz@mainsoft.com>
1405 * Control.cs: optimized flow in ResolveClientUrl.
1407 2007-06-15 Gert Driesen <drieseng@users.sourceforge.net>
1409 * ObjectStateFormatter.cs: Avoid NRE in Serialize. Fixes bug #81851.
1411 2007-06-09 Marek Habersack <mhabersack@novell.com>
1413 * TemplateControl.cs: make sure TemplateControl is set to the
1416 * Control.cs: TemplateControl property goes up the parent chain if
1417 the property isn't defined in the current control.
1418 TemplateSourceDir finally implemented correctly.
1420 2007-06-06 Marek Habersack <mhabersack@novell.com>
1422 * Control.cs: more changes to the way TemplateSourceDirectory
1423 works in the 2.0 profile. Take into account situations when a
1424 control is placed in a UserControl (.ascx) and only then fall back
1425 to the parent for its TemplateSourceDirectory.
1427 2007-06-05 Marek Habersack <mhabersack@novell.com>
1429 * Control.cs: TemplateSourceDirectory uses TemplateControl to
1430 lookup the virtual source directory in the 2.0 instead of the
1432 ResolveClientUrl copes with empty TemplateSourceDirectory in the
1433 correct way now - the check is made after the basePath checks.
1434 The changes above make ResolveClientUrl work properly when called
1435 from within a control residing in a TemplateControl.
1437 2007-05-30 Vladimir Krasnov <vladimirk@mainsoft.com>
1439 * HtmlTextWriter.cs: EncodeAttributeValue should call
1440 HtmlAttributeEncode as documented
1442 2007-05-24 Marek Habersack <mhabersack@novell.com>
1444 * PageParser.cs: added support for the PreviousPageType
1447 2007-05-23 Marek Habersack <mhabersack@novell.com>
1449 * TemplateParser.cs: use VirtualPathUtility.Combine to properly
1450 create the custom control's virtual path.
1452 2007-05-22 Marek Habersack <mhabersack@novell.com>
1454 * TemplateBuilder.cs: in the absence of containerAttribute,
1455 default to two-way binding direction.
1457 2007-05-21 Igor Zelmanovich <igorz@mainsoft.com>
1459 * DataSourceView.cs: refactoring: Update, Insert methods:
1460 exception is re-thrown from catch scope.
1461 It allows actual call stack be shown
1463 2007-05-17 Vladimir Krasnov <vladimirk@mainsoft.com>
1465 * TemplateControl.jvm.cs: refactored key for CachedString method
1467 2007-05-16 Vladimir Krasnov <vladimirk@mainsoft.com>
1469 * HtmlTextWriter.cs: refactoring, created hashtables for tags, styles
1470 and attributes arrays, that gives performance improvement in GetTagKey
1471 GetStyleKey and GetAttributeKey methods
1473 2007-05-15 Marek Habersack <mhabersack@novell.com>
1475 * TemplateControl.cs: implemented the 3-parameter overloads of
1476 GetLocalResourceObject and GetGlobalResourceObject.
1478 * TemplateParser.cs: refactoring - use HttpApplication.LoadType to
1479 actually look up types.
1481 * ControlBuilder.cs: as above
1483 2007-05-14 Marek Habersack <mhabersack@novell.com>
1485 * ClientScriptManager.cs: put the hidden field within a <div>, the
1488 2007-05-11 Gert Driesen <drieseng@users.sourceforge.net>
1490 * ControlBuilder.cs: Fixed exception message in MapType.
1492 2007-05-10 Marek Habersack <mhabersack@novell.com>
1494 * Control.cs: small formatting change
1496 2007-05-10 Igor Zelmanovich <igorz@mainsoft.com>
1498 * Page.cs: ExecuteRegisteredAsyncTasks:
1499 implimentation for TARGET_JVM doesn't use WaitHandle.WaitAll, but WaitOne
1501 2007-05-09 Vladimir Krasnov <vladimirk@mainsoft.com>
1503 * HtmlTextWriter.cs: used classes instead of sctrucs in TARGET_JVM for
1504 AddedTag, AddedStyle and AddedAttr members
1505 * TemplateControl.jvm.cs: refactored CachedString method
1507 2007-05-09 Marek Habersack <mhabersack@novell.com>
1509 * CollectionBuilder.cs: formatting changes
1511 * ControlBuilder.cs: if a control enables children as properties,
1512 has a default property and parser encounters a child tag/container
1513 with the default property name, discard the default property
1514 builder in order to avoid invalid sub builder invocation. An
1515 example is: <asp:DropDownList><Items></Items></asp:DropDownList>
1517 When checking for empty string, use Length not comparison with ""
1519 2007-05-08 Marek Habersack <mhabersack@novell.com>
1521 * CssStyleCollection.cs: put the style in the bag each time a key
1522 is set, otherwise resetting of a key has no effect on rendered
1525 2007-05-07 Marek Habersack <mhabersack@novell.com>
1527 * TemplateParser.cs: added support for implicit language
1528 detection. If the language isn't set explicitly in the Page
1529 directive, the language value taken from the configuration
1530 considered to be implicit - that is, it can be overwritten by the
1531 first <script> with the runat="server" and language="xx" sets the
1532 language for the parser. This makes it possible to have the
1533 default language set to "C#" and the inline code in, e.g.,
1536 * ControlBuilder.cs: when mapping types, catch casses of missing
1537 original and mapped types.
1538 If mapped type doesn't derive from the original type, throw an
1539 exception. Fixes bug #81553.
1541 2007-05-04 Marek Habersack <mhabersack@novell.com>
1543 * Control.cs: added an internal method to resolve a physical path
1544 to a file from its virtual path considering the possibility that a
1545 control is placed in a master page, which in turn is referenced
1546 from a directory another than that of master page itself.
1548 2007-05-03 Igor Zelmanovich <igorz@mainsoft.com>
1550 * AttributeCollection.cs:
1551 * DataBindingHandlerAttribute.cs:
1552 * HtmlTextWriter.cs:
1553 * PartialCachingControl.cs:
1554 * TemplateControl.cs:
1555 * TemplateControl.jvm.cs:
1559 2007-05-03 Igor Zelmanovich <igorz@mainsoft.com>
1561 * CssStyleCollection.cs: optimization:
1562 used StringBuilder instead string to hold value.
1563 When added key that not exists in collection, value is recalculated by
1564 appending required key to existing value.
1566 2007-05-02 Igor Zelmanovich <igorz@mainsoft.com>
1568 * Control.cs: ResolveClientUrl: optimization.
1569 if basePath is the same as TemplateSourceDirectory
1570 releativeUrl is returned as is.
1572 2007-05-02 Igor Zelmanovich <igorz@mainsoft.com>
1575 ResolveClientUrl considers TemplateSourceDirectory property.
1577 2007-05-01 Marek Habersack <mhabersack@novell.com>
1579 * PageParser.cs: clientTarget comparisons must be case-insensitive
1581 2007-04-30 Konstantin Triger <kostat@mainsoft.com>
1583 * DataBinder.cs: When formatting, threat empty string as null.
1585 2007-04-27 Marek Habersack <mhabersack@novell.com>
1587 * TemplateControlParser.cs: 2.0 allows 'Namespace' without the
1588 'Assembly' attribute on tag prefix registration.
1590 * TemplateParser.cs: do not rely on assembly name being not null.
1592 2007-04-19 Gert Driesen <drieseng@users.sourceforge.net>
1594 * TemplateParser.cs: On 2.0 profile, allow namespace in ClassName
1595 attribute. Fixes part of bug #81399.
1597 2007-04-11 Marek Habersack <mhabersack@novell.com>
1599 * Page.cs: check whether control passed to
1600 RegisterRequiresPostBack implements the IPostBackDataHandler
1603 2007-04-06 Marek Habersack <mhabersack@novell.com>
1605 * ClientScriptManager.cs: render the 'type' attribute in
1606 WriteScript and do not render the 'language' attribute when in
1609 * Page.cs: defaults for ViewStateEncrptionMode and AsyncTimeout
1610 are read from the pages section, if found.
1612 * TemplateControlParser.cs: added support for loading
1613 pages/controls defaults from web.config even if the page/control
1614 does not have its corresponding directive.
1615 Added support for reading the CompilationMode attribute.
1617 * PageParser.cs: added support for loading pages/controls defaults
1618 as above. Fixes bug #80915.
1619 Added support for reading the maxPageStateFieldLength setting.
1620 Added support for reading the pageParserFilter setting.
1622 * ControlBuilder.cs: allow tag mappings from code found
1623 in bin/* or App_Code/*. Fixes bug #80811.
1625 2007-03-29 Vladimir Krasnov <vladimirk@mainsoft.com>
1627 * TemplateControl.jvm.cs: performance improvement, added cache for
1628 methods and events in user code
1630 2007-03-26 Marek Habersack <mhabersack@novell.com>
1632 * TemplateControl.cs: make local resources work with master
1633 pages - use the AppRelativeVirtualPath for resource resolution.
1635 * TemplateParser.cs: support the meta:resourcekey attribute in
1636 Page and Control directives. Fixes bug #81204.
1638 2007-03-21 Marek Habersack <mhabersack@novell.com>
1640 * UnknownAttributeDescriptor.cs: an internal helper class for
1641 custom directive attributes support.
1643 * BaseParser.cs: ThrowParseException can now take variadic
1644 parameters, for convenience.
1646 * TemplateParser.cs: add support for custom attributes for the
1647 Page and Control directives.
1648 Added support for the CodeFileBaseClass directive. Fixes bug #81132
1650 2007-03-20 Igor Zelmanovich <igorz@mainsoft.com>
1652 * Control.cs: fixed ResolveClientUrl method.
1654 2007-03-18 Marek Habersack <mhabersack@novell.com>
1656 * BaseParser.cs: fix BaseVirtualDir to always return app-absolute
1659 2007-03-17 Marek Habersack <mhabersack@novell.com>
1661 * MasterPageParser.cs: remove superfluous #ifdef
1663 * TemplateParser.cs: use VirtualPathUtility here
1665 2007-03-14 Vladimir Krasnov <vladimirk@mainsoft.com>
1667 * TemplateControl.jvm.cs: fixed WireupAutomaticEvents, performance
1670 2007-03-13 Marek Habersack <mhabersack@novell.com>
1672 * TemplateParser.cs: name generated classes the same way MS.NET
1673 does - include the app-relative path to the control/page in the
1676 2007-03-13 Adar Wesley <adarw@mainsoft.com>
1678 * Page.cs: improved Async Page implementation.
1680 2007-03-13 Marek Habersack <mhabersack@novell.com>
1682 * TemplateControl.cs: implement AppRelativeVirtualPath. Closes bug
1685 2007-03-12 Marek Habersack <mhabersack@novell.com>
1687 * RootBuilder.cs: change the error text to be less misleading.
1689 2007-03-12 Igor Zelmanovich <igorz@mainsoft.com>
1691 * AttributeCollection.cs:
1692 * CssStyleCollection.cs: fixed: works w/o state bag.
1694 2007-03-12 Igor Zelmanovich <igorz@mainsoft.com>
1696 * HtmlTextWriter.cs: fixed:
1697 - Fixed writing background-image style attribute (different behavior in
1699 - Does not encode 'name' attribute.
1700 - Always encode style attributes (for 2.0 only).
1702 2007-03-06 Adar Wesley <adarw@mainsoft.com>
1704 * Page.cs: initial implementation of support for Async=true. Added
1705 initial support for ViewStateEncryption. Implemented
1706 CreateHtmlTextWriterFromType.
1708 * PageAsyncTask.cs: Created class to support Async pages.
1710 * ObjectStateFormatter.cs: Added support for ViewState encryption.
1712 * HtmlTextWriter.cs: Fixed constructor to accept null TextWriter
1713 to conform to MS behavior.
1715 2007-03-05 Vladimir Krasnov <vladimirk@mainsoft.com>
1717 * Control.jvm.cs: fixed TemplateSourceDirectory property
1719 2007-03-03 Marek Habersack <mhabersack@novell.com>
1721 * TemplateParser.cs: support but ignore the Async and AsyncTimeOut
1722 page directive attributes.
1723 Support the LinePragmas page directive attribute.
1725 * PageParser.cs: added support for the
1726 MaintainScrollPositionOnPostBack page directive attribute.
1728 2007-02-26 Igor Zelmanovich <igorz@mainsoft.com>
1730 * TemplateControl.cs:
1731 * TemplateControl.jvm.cs: fixed: AutoEventWireup feature:
1732 Method 'Page_XXX' is declared in the base class must be
1733 called even is private.
1735 2007-02-26 Vladimir Krasnov <vladimirk@mainsoft.com>
1737 * Control.cs: fixed AppRelativeTemplateSourceDirectory property, should
1738 not return AppRelativeTemplateSourceDirectory of master page
1740 2007-02-26 Igor Zelmanovich <igorz@mainsoft.com>
1742 * ClientScriptManager.cs: fixed: GetScriptLiteral escapes back-slash:
1744 2007-02-22 Igor Zelmanovich <igorz@mainsoft.com>
1746 * TemplateControl.cs: added missing property AppRelativeVirtualPath
1748 2007-02-21 Konstantin Triger <kostat@mainsoft.com>
1750 * TemplateParser.cs: remove CodeGenerator.IsValidLanguageIndependentIdentifier
1751 check from Global.asax inherits attribute to let inherits="A.B" construct.
1753 2007-02-20 Igor Zelmanovich <igorz@mainsoft.com>
1755 * ObjectStateFormatter.cs:
1756 optimization for serialization of primitive type arrays
1758 2007-02-19 Igor Zelmanovich <igorz@mainsoft.com>
1760 * ClientScriptManager.cs:
1763 implemented PostBackOptions.TrackFocus feature.
1765 2007-02-14 Igor Zelmanovich <igorz@mainsoft.com>
1767 * Page.cs: for 2.0: refactoring:
1768 prepare infrastructure for Form.SubmitDisabledControls feature
1770 2007-02-18 Eyal Alaluf <eyala@mainsoft.com>
1772 * Control.jvm.cs, Control.cs: Move TemplateSourceDirectory to .jvm file.
1773 * Control.jvm.cs, Page.jvm.cs: Centralize Portlet specific API in Page.jvm
1774 * Page.cs, Page.jvm.cs, ClientScriptManager.cs: Support for Http callbacks
1777 2007-02-14 Igor Zelmanovich <igorz@mainsoft.com>
1780 '__EVENTTARGET' and '__EVENTARGUMENT' hidden fields are
1781 registered only once.
1783 2007-02-14 Igor Zelmanovich <igorz@mainsoft.com>
1785 * Page.cs: for 2.0: '__doPostBack' declared as function of form.
1786 convention to use 'currForm' instead 'myForm'
1788 2007-02-14 Igor Zelmanovich <igorz@mainsoft.com>
1791 * ClientScriptManager.cs:
1792 including 'webform.js' requires '__doPostBack' on the form be rendered.
1794 2007-02-14 Igor Zelmanovich <igorz@mainsoft.com>
1797 * ClientScriptManager.cs:
1798 refactoring: 'theForm' variable is always declared on client.
1799 '__EVENTTARGET' and '__EVENTARGUMENT' hidden fields is rendered using
1800 RegisterHiddenField API. 'WebForm_OnSubmit' declared as function of form.
1802 2007-02-14 Vladimir Krasnov <vladimirk@mainsoft.com>
1804 * Page.cs: fixed OnInit, adding css should throw exception if no header
1807 2007-02-14 Igor Zelmanovich <igorz@mainsoft.com>
1809 * Page.cs: __doPostBack considers 2.0 features
1810 such RegisterOnSubmitStatement
1812 2007-02-14 Igor Zelmanovich <igorz@mainsoft.com>
1815 * ClientScriptManager.cs:
1816 implemented RegisterOnSubmitStatement for 2.0
1818 2007-02-13 Igor Zelmanovich <igorz@mainsoft.com>
1820 * ClientScriptManager.cs: EventValidation feature optimization on Callback.
1822 2007-02-13 Igor Zelmanovich <igorz@mainsoft.com>
1824 * Page.cs: fixed exception handling on Callback at client.
1826 2007-02-08 Marek Habersack <grendello@gmail.com>
1828 * Page.cs: Make sure to create specific cultures.
1830 2007-02-08 Vladimir Krasnov <vladimirk@mainsoft.com>
1832 * ClientScriptManager.cs: added array declaration also as member of
1833 form in TARGET_J2EE for j2ee portal support.
1834 Added validators context init for GetClientValidationEvent under
1835 TARGET_J2EE for j2ee portal support.
1836 * Page.cs: fixed OnFormPostRender, render array declarations after
1839 2007-02-04 Igor Zelmanovich <igorz@mainsoft.com>
1842 * ClientScriptManager.cs:
1843 client scripts (webform.js, callback.js and
1844 MaintainScrollPositionOnPostBack.js) were merged into one resource file.
1846 2007-02-04 Igor Zelmanovich <igorz@mainsoft.com>
1849 http://msdn2.microsoft.com/en-us/library/ms178141.aspx
1850 LAMESPEC: on Callback IsPostBack is set to false, but true.
1852 2007-02-04 Igor Zelmanovich <igorz@mainsoft.com>
1855 VerifyRenderingInServerForm does not fire exception when IsCallback
1857 2007-02-04 Igor Zelmanovich <igorz@mainsoft.com>
1860 * ClientScriptManager.cs:
1861 fixed RegisterClientScriptInclude: all includes that was registered before
1862 rendering are rendered at begin form.
1864 2007-02-02 Marek Habersack <grendello@gmail.com>
1866 * TemplateParser.cs: Do not register controls here.
1868 2007-02-02 Adar Wesley <adarw@mainsoft.com>
1870 * Control.cs: Changed UniqueId implementation to have '$' and not ':'
1871 to conform to MS. This led to updating several Tests that referenced
1872 the UniqueId as string.
1874 2007-01-30 Eyal Alaluf <eyala@mainsoft.com>
1876 * ClientScriptManager.cs: Fix Igor's last changes for TARGET_JVM.
1878 2007-01-29 Igor Zelmanovich <igorz@mainsoft.com>
1881 * ClientScriptManager.cs:
1882 CallBack works with EvantValidation.
1884 2007-01-25 Eyal Alaluf <eyala@mainsoft.com>
1886 * Page.cs: Change code to use the 'theForm' property when generating
1887 JavaScript code. Ensure that we pass 'theForm' as param to the JS funcs.
1888 * Page.jvm.cs, Control.jvm.cs: Implement the 'theForm' property to include
1889 the portlet namespace. Moved 'PortletNamespace' from Control.jvm.cs
1890 * Page.jvm.cs, Control.jvm.cs, ClientScriptManager.cs: Added support for
1891 saving hidden fields for TARGET_J2EE Portlets re-render.
1892 * Control.cs: Under TARGET_J2EE portal support add the PortletNamespace
1893 to all the control IDs to ensure they different between portlets.
1895 2007-01-24 Vladimir Krasnov <vladimirk@mainsoft.com>
1897 * Page.cs: fixed CheckForValidationSupport,
1898 SupportsEventValidationAttribute should be checked at only one level
1900 2007-01-23 Vladimir Krasnov <vladimirk@mainsoft.com>
1902 * TemplateControl.jvm.cs: ParseControl not supported, added limited
1903 implementation if TestDeviceFilter
1905 2007-01-22 Konstantin Triger <kostat@mainsoft.com>
1907 * ClientScriptManager.cs: ensure the callback client script is
1908 registered before the client script includes are rendered.
1910 2007-01-22 Konstantin Triger <kostat@mainsoft.com>
1912 * Page.cs, ClientScriptManager.cs: ensure the web form client script is
1913 registerd before the client script includes are rendered.
1915 2007-01-21 Konstantin Triger <kostat@mainsoft.com>
1917 * Page.cs: move the WriteClientScriptIncludes to the top of the form,
1918 according to the MSDN.
1920 2007-01-20 Miguel de Icaza <miguel@novell.com>
1922 * XhtmlTextWriter.cs: comment out unused code.
1924 * ThemeProvider.cs: comment out unused code.
1926 * DataSourceView.cs: Comment unused variable.
1928 * ClientScriptManager.cs: Put the expandoAttributes inside the 2.0
1931 * Control.cs: Put _templateControl inside the NET_2_0 ifdef
1933 2007-01-20 Marek Habersack <grendello@gmail.com>
1935 * TemplateParser.cs: Check whether the base type is in the root
1938 2007-01-18 Eyal Alaluf <eyala@mainsoft.com>
1940 * Control.jvm.cs: Added PortletNamespace property.
1942 2007-01-16 Vladimir Krasnov <vladimirk@mainsoft.com>
1944 * TemplateControl.jvm.cs: remover TemplateSourceDirectory propery
1945 * Control.cs: moved TemplateSourceDirectory from TemplateControl for
1946 TARGET_JVM, fixed AppRelativeTemplateSourceDirectory
1948 2007-01-16 Vladimir Krasnov <vladimirk@mainsoft.com>
1950 * TemplateControl.jvm.cs: added 2.0 event names for wiring up
1952 2007-01-15 Ilya Kharmatsky <ilya - at - decode-systems.com>
1954 - IsViewStateEnabled - removed check for non-null page, since
1955 the control by definition should come with enabled
1956 view state, even if it not 'attached' to the page
1957 - HasEvents() - implementation (still could produce bug in exotic scenarios
1958 when all events added to 'this' control has been removed
1959 through the property 'Events', but currently we can't see
1960 better implementation)
1962 2007-01-14 Eyal Alaluf <eyala@mainsoft.com>
1964 * Control.jvm.cs, Page.jvm.cs: Added TARGET_J2EE specific files.
1965 * Page.cs, ClientScriptManager.cs, Control.cs: Added J2EE portal
1966 support for TARGET_J2EE.
1968 2007-01-12 Miguel de Icaza <miguel@novell.com>
1970 * Control.cs: Remove comment, it provides no information about
1971 what could be wrong.
1973 2007-01-08 Vladimir Krasnov <vladimirk@mainsoft.com>
1975 * PageTheme.cs: implemented
1976 * Page.cs: fixed InitializeTheme, added PageTheme page initialization
1977 * TemplateControl.cs,
1978 * TemplateControl.jvm.cs: added XPath, XPathSelect overloads with
1979 IXmlNamespaceResolver parameter
1980 * XPathBinder.cs: added Eval, Select overloads with
1981 IXmlNamespaceResolver parameter, refactored
1983 2007-01-08 Vladimir Krasnov <vladimirk@mainsoft.com>
1985 * TemplateControl.jvm.cs: added GetGlobalResourceObject
1987 2007-01-07 Igor Zelmanovich <igorz@mainsoft.com>
1989 * Page.cs: refactoring: used RegisterHiddenField for _VIEWSTATE field.
1991 2007-01-04 Igor Zelmanovich <igorz@mainsoft.com>
1993 * Control.cs: ensure 'id' attribute will be rendered if
1994 ClientID was accessed but ID is generated by the Page,
1995 important for custom controls developing.
1997 2007-01-04 Igor Zelmanovich <igorz@mainsoft.com>
1999 * Page.cs: fixed: InitializeCulture should be called
2000 before creating controls.
2002 2007-01-03 Marek Habersack <grendello@gmail.com>
2004 * Page.cs: Make sure the ValidatorOnSubmit function is defined for the
2005 document before attempting to use it.
2007 2007-01-01 Vladimir Krasnov <vladimirk@mainsoft.com>
2009 * Control.cs: fixed ResolveClientUrl, wrong when control that calls
2010 this method and the page are in different folders
2012 2006-12-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2014 * Page.cs: show the validation summary when client validation and
2015 linkbuttons are used. Patch by Juraj Skripsky.
2017 2006-12-31 Igor Zelmanovich <igorz@mainsoft.com>
2019 * Page.cs: fixed: EventValidation is not performed for CallBack request.
2021 2006-12-27 Igor Zelmanovich <igorz@mainsoft.com>
2023 * Page.cs: fixed: RegisterRequiresPostBack feature.
2025 2006-12-21 Marek Habersack <grendello@gmail.com>
2027 * ControlBuilder.cs: Add support for tag mapping in 2.0
2029 2006-12-20 Marek Habersack <grendello@gmail.com>
2031 * TemplateParser.cs: make sure Context.ApplicationInstance is not
2032 valid before adding application assembly.
2034 2006-12-11 Igor Zelmanovich <igorz@mainsoft.com>
2036 * Page.cs: fixed and optimized ProcessPostData
2037 The "second try" used for controls that created at OnLoad.
2038 fixed for controls that use RgisterRequeresPostBack to handle post data.
2040 2006-11-29 Igor Zelmanovich <igorz@mainsoft.com>
2042 * Page.cs: The specified theme must exist as either an application theme.
2043 If the theme does not exist, an HttpException exception s thrown.
2045 2006-12-09 Marek Habersack <grendello@gmail.com>
2047 * HiddenFieldPageStatePersister.cs: Implement the 2.0 class (used
2048 also in the 1.x profile)
2050 * ObjectStateFormatter.cs: Implement the IStateFormatter interface
2052 * ClientScriptManager.cs: Use IStateFormatter instead of
2054 Use the IStateFormatter interface when registering the hidden
2055 field with the state.
2057 * LosFormatter.cs: Use ObjectStateFormatter
2059 * PageStatePersister.cs: Make the class available as internal for
2061 Constructor throws an exception on its page parameter being null.
2062 Implemented several properties: ControlState, ViewState, Page,
2065 * Page.cs: Use new state persister for all the profiles.
2066 Use the new HiddenFieldPageStatePersister class.
2068 * IStateFormatter.cs: Make the class available as internal for 1.x profile.
2070 2006-12-04 Vladimir Krasnov <vladimirk@mainsoft.com>
2072 * TemplateControl.jvm.cs: fixed TemplateSourceDirectory initialization
2074 2006-11-29 Marek Habersack <grendello@gmail.com>
2076 * TemplateParser.cs: if the OutputCache directive is present, make
2077 sure the cache does not expire the current output.
2079 2006-11-29 Igor Zelmanovich <igorz@mainsoft.com>
2081 * Page.cs: added missing methods and properties:
2085 UniqueFilePathSuffix
2086 MaxPageStateFieldLength
2087 ViewStateEncryptionMode
2088 AddOnPreRenderCompleteAsync
2089 AddOnPreRenderCompleteAsync
2090 ExecuteRegisteredAsyncTasks
2091 CreateHtmlTextWriterFromType
2092 RegisterRequiresViewStateEncryption
2094 2006-11-29 Igor Zelmanovich <igorz@mainsoft.com>
2096 * Page.cs: Master property returns null when no HttpContext.
2098 2006-11-29 Igor Zelmanovich <igorz@mainsoft.com>
2100 * Page.cs: InitializeCulture method is called before OnPreInit.
2102 2006-11-28 Marek Habersack <grendello@gmail.com>
2104 * TemplateControlParser.cs: Use the new TemplateParser methods to
2105 register controls/namespaces
2107 * TemplateParser.cs: Implement support for the
2108 system.web/pages/namespaces collection instead of hard-coding the
2109 namespaces into the source.
2110 Refactoring: added two internal methods to handle both the
2111 system.web/pages/controls registration and the Register directive.
2112 Added a new internal method to pull the system.web/pages/controls
2113 collection before parsing.
2115 2006-11-27 Marek Habersack <grendello@gmail.com>
2117 * SimpleWebHandlerParser.cs: Added support for looking up types in
2118 the top-level assemblies (App_Code et al)
2120 2006-11-27 Igor Zelmanovich <igorz@mainsoft.com>
2122 * Control.cs: implemented EnsureID method.
2124 2006-11-27 Igor Zelmanovich <igorz@mainsoft.com>
2126 * Control.cs: implemented Focus methods.
2128 2006-11-27 Igor Zelmanovich <igorz@mainsoft.com>
2130 * Page.cs: implemented SetFocus methods.
2133 2006-11-27 Igor Zelmanovich <igorz@mainsoft.com>
2135 * ClientScriptManager.cs: refactoring:
2136 extracted method RegisterWebFormClientScript
2138 2006-11-27 Igor Zelmanovich <igorz@mainsoft.com>
2140 * Control.cs: implemented OpenFile()
2142 2006-11-26 Igor Zelmanovich <igorz@mainsoft.com>
2146 implemented ClearChildState(), ClearChildControlState() and
2147 IsChildControlStateCleared
2149 2006-11-26 Igor Zelmanovich <igorz@mainsoft.com>
2152 * ClientScriptManager.cs:
2153 implemented RegisterExpandoAttribute feature
2155 2006-11-23 Igor Zelmanovich <igorz@mainsoft.com>
2157 * ListSourceHelper.cs: optimization of implementation
2159 2006-11-23 Igor Zelmanovich <igorz@mainsoft.com>
2161 * ListSourceHelper.cs: implemented
2163 2006-11-21 Igor Zelmanovich <igorz@mainsoft.com>
2165 * DataSourceView.cs: fixed: constructor throws ArgumentNullException
2167 2006-11-21 Igor Zelmanovich <igorz@mainsoft.com>
2169 * Page.cs: fixed: PreviousPage property
2170 when CrossPostBack is processed PreviousPage is initialized
2171 only if PreviousPage property is called.
2173 2006-11-21 Igor Zelmanovich <igorz@mainsoft.com>
2175 * DataSourceControl.cs: fixed: Focus(), EnableTheming
2177 2006-11-21 Marek Habersack <grendello@gmail.com>
2179 * Control.cs: Make ClientIDSeparator private for !NET_2_0
2181 2006-11-21 Igor Zelmanovich <igorz@mainsoft.com>
2183 * Page.cs: fixed: LoadControlState is called for controls
2184 that added on Load and latter
2186 2006-11-20 Marek Habersack <grendello@gmail.com>
2188 * Control.cs: Implementations of a few missing properties.
2190 * Page.cs: Added support for automatic culture detection from the
2193 * PageParser.cs: Added support for "auto" cultures in the Page
2196 2006-11-20 Igor Zelmanovich <igorz@mainsoft.com>
2198 * ClientScriptManager.cs: fixed: ValidateEvent feature:
2199 client side return eventArgument as empty string
2200 for controls that set it as null
2202 2006-11-18 Marek Habersack <grendello@gmail.com>
2204 * ClientScriptManager.cs: Implemented two missing
2205 GetPostBackEventReference overloads. Made one of the overloads
2206 internal for .NET < 2.0.
2208 2006-11-17 Marek Habersack <grendello@gmail.com>
2210 * PostBackOptions.cs: Renamed the constructors parameters to match
2211 those Microsoft .NET uses.
2212 targetControl must not be passed null to the constructor.
2214 * ClientScriptManager.cs: Support for event validation.
2215 Implemented a GetPostBackHyperlink overload.
2216 Implemented the RegisterForEventValidation methods.
2217 Implemented the ValidateEvent method.
2218 Added support for saving/restoring event validation state.
2220 * Page.cs: EnableEventValidation can be set only from the config
2221 files (the <pages> element), the Page directive or from
2222 Page_Init. After Page_Init returns, an exception is thrown.
2223 Made GetFormatter internal, so that ClientScriptManager can use
2225 Added the internal LifeCycle property which contains the current
2226 life cycle stage of the page request processing.
2227 Added calls to save/restore event validation state.
2228 Added checks for whether child controls of the page support event
2230 Added calls to ClientScriptManager.ValidateEvent in appropriate
2233 * PageLifeCycle.cs: Added the PageLifeCycle enum, used in event
2236 2006-11-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2239 * ObjectStateFormatter.cs: match MS 1.x and 2.0 behaviour for null and
2242 2006-11-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2244 * SimpleWebHandlerParser.cs: 'using' for file reading.
2246 2006-11-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2248 * Page.cs: revert r67514 until after tagging for the next release.
2250 2006-11-12 Igor Zelmanovich <igorz@mainsoft.com>
2252 * LiteralControl.cs: fixed: constructors & Text property
2254 2006-11-09 Igor Zelmanovich <igorz@mainsoft.com>
2256 * Page.cs: fixed: LoadControlState is called for controls
2257 that added on Load and latter, for 1.x refactoring only
2259 2006-11-02 Igor Zelmanovich <igorz@mainsoft.com>
2261 * ClientScriptManager.cs:
2262 fixed: checks arguments for null in public methods,
2263 fixed public interface.
2265 2006-10-23 Igor Zelmanovich <igorz@mainsoft.com>
2267 * PostBackOptions.cs: fixed: default values of properties
2269 2006-10-22 Igor Zelmanovich <igorz@mainsoft.com>
2271 * CssStyleCollection.cs:
2272 * AttributeCollection.cs:
2273 fixed: style collection is synchronized with style attribute
2275 2006-10-19 Igor Zelmanovich <igorz@mainsoft.com>
2277 * ClientScriptManager.cs: fixed: renders id attribute in hidden field
2279 2006-10-18 Marek Habersack <grendello@gmail.com>
2281 * TemplateParser.cs: reference System.Resources when compiling a
2284 * TemplateControl.cs: implement the GetGlobalResourceObject
2287 2006-10-12 Igor Zelmanovich <igorz@mainsoft.com>
2289 * Page.cs: fixed: for 2.0 only
2290 When Page processes Callback IsPostBack = false, but it still needs
2291 LoadViewState/ControlState and ProcessPostData
2293 2006-10-11 Igor Zelmanovich <igorz@mainsoft.com>
2295 * DataSourceSelectArguments.cs: fixed:
2296 SortExpression not returns null,
2297 Empty property returns new instance each time
2299 2006-10-10 Igor Zelmanovich <igorz@mainsoft.com>
2301 * DataSourceSelectArguments.cs:
2302 fixed: RaiseUnsupportedCapabilitiesError method.
2304 2006-10-09 Igor Zelmanovich <igorz@mainsoft.com>
2306 * DataSourceSelectArguments.cs: fixed: Equals method.
2308 2006-10-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2310 * CssStyleCollection.cs: don't clear the collection of properties, but
2313 2006-10-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2315 * CssStyleCollection.cs: 'style' can be modified on our back, so build
2316 the style table every time instead of keeping one that is not in sync.
2319 2006-09-25 Igor Zelmanovich <igorz@mainsoft.com>
2321 * Page.cs: fixed: Cross-page postback feature in ASP.NET 2.0
2322 When page is invoked by cross-page posting, PreviousPage processed all
2323 live-cycle up to OnLoadComplite included.
2324 IsPostBack, IsCallBack and IsCrossPagePostBack returns relevant values.
2326 2006-09-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2328 * TemplateParser.cs: patch by Joel Reed that makes use of the namespace
2329 collection from the PagesConfiguration to add new namespaces when
2330 generating the page/control code.
2332 2006-09-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2334 * PageParser.cs: support the EnableEventValidation attribute.
2336 2006-09-18 Igor Zelmanovich <igorz@mainsoft.com>
2338 * Page.cs: fixed: Title property works properly
2340 2006-09-17 Igor Zelmanovich <igorz@mainsoft.com>
2342 * ClientScriptManager.cs: added helper method
2344 2006-09-14 Igor Zelmanovich <igorz@mainsoft.com>
2346 * Page.cs: fixed: GetValidators(string), Validate(string) works properly
2348 2006-09-08 Robert Jordan <robertj@gmx.net>
2350 * Page.cs: assure that RenderTrace is called even if an
2351 exception occurred. Fixes bug #78930.
2353 2006-09-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2355 * TemplateControl.cs: search for the new Page_* event handlers in 2.0.
2356 Patch by Marek Habersack that fixes bug #78268.
2358 2006-09-07 Lluis Sanchez Gual <lluis@novell.com>
2360 * Page.cs: Use lowercase getElementById in the javascript that
2363 2006-08-22 Vladimir Krasnov <vladimirk@mainsoft.com>
2365 * KeyedListEnumerator.cs: fixed Current property to return real object
2366 instead of DictionaryEntry
2368 2006-09-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2370 * Page.cs: don't use the Browser object, as it slows down process
2371 request time *a lot*. Fixes bug #79206.
2373 2006-09-05 Konstantin Triger <kostat@mainsoft.com>
2375 * Page.cs: Imlemented InitOutputCache(OutputCacheParameters cacheSettings).
2376 * OutputCacheParameters.cs: added an implementation.
2378 2006-09-04 Igor Zelmanovich <igorz@mainsoft.com>
2380 * CssStyleCollection.cs: fixed: background-image style attribute
2382 2006-08-31 Konstantin Triger <kostat@mainsoft.com>
2384 * StaticPartialCachingControl.cs: added forwarding implementation for
2385 2.0 version of BuildCachedControl().
2387 2006-08-30 Igor Zelmanovich <igorz@mainsoft.com>
2389 * Page.cs: added internal method
2390 * ClientScriptManager.cs:
2392 2006-08-30 Igor Zelmanovich <igorz@mainsoft.com>
2394 * ClientScriptManager.cs: added helper method
2396 2006-08-22 Vladimir Krasnov <vladimirk@mainsoft.com>
2398 * Page.cs: fixed ApplyMasterPage, masterPageFile can be empty string
2399 if compiled with .net aspx parser
2400 fixed OnInit, GetStyleSheets may return null if no css files found by
2403 2006-08-22 Vladimir Krasnov <vladimirk@mainsoft.com>
2405 * TemplateControl.jvm.cs: fixed WireupAutomaticEvents, removed access
2406 modifiers check on event handlers
2408 2006-08-22 Vladimir Krasnov <vladimirk@mainsoft.com>
2410 * Control.cs: implemented AppRelativeTemplateSourceDirectory for aspx
2412 * TemplateControl.jvm.cs: fixed AppRelativeVirtualPath
2413 fixed TemplateSourceDirectory, should not work on master pages.
2415 2006-08-20 Vladimir Krasnov <vladimirk@mainsoft.com>
2417 * MasterPageParser.jvm.cs: fixed path resolving
2418 GetCompiledMasterInstance
2420 2006-08-17 Vladimir Krasnov <vladimirk@mainsoft.com>
2422 * TemplateControl.jvm.cs: fixed data binding API, implemented
2423 AppRelativeVirtualPath, ReadStringResource
2425 2006-08-17 Vladimir Krasnov <vladimirk@mainsoft.com>
2427 * Page.cs: added stubs to run aspx files compiled by .net
2429 2006-08-17 Vladimir Krasnov <vladimirk@mainsoft.com>
2431 * MasterPageParser.jvm.cs: implemented
2433 2006-08-10 Andrew Skiba <andrews@mainsoft.com>
2435 * Page.cs: render css path as a virtual path.
2437 2006-08-09 Robert Jordan <robertj@gmx.net>
2439 * Control.cs: add the 2.0 ResolveClientUrl method.
2440 Expose ResolveClientUrl as internal for the 1.1 profile.
2443 2006-08-08 Vladimir Krasnov <vladimirk@mainsoft.com>
2445 * added MasterPageParser.jvm.cs
2447 2006-08-08 Vladimir Krasnov <vladimirk@mainsoft.com>
2449 * ControlBuilder.jvm.cs: added BuildObject method
2451 2006-08-08 Vladimir Krasnov <vladimirk@mainsoft.com>
2453 * ParseChildrenAttribute.cs: fixed ChildControlType property to
2455 * UserControl.cs: fixed ParseChildren attribute to be compliant
2458 2006-08-08 Igor Zelmanovich <igorz@mainsoft.com>
2460 * Page.cs: implemented MaintainScrollPositionOnPostBack feature
2462 2006-08-06 Vladimir Krasnov <vladimirk@mainsoft.com>
2464 * Control.cs: fixed EnableTheming proprty, fixes bug when child
2465 control has EnableTheming=false and parent has true.
2467 2006-07-31 Vladimir Krasnov <vladimirk@mainsoft.com>
2469 * MasterPage.cs: fixed default values, fixed AddContentTemplate
2471 2006-07-31 Vladimir Krasnov <vladimirk@mainsoft.com>
2473 * Control.cs: fixed EnableTheming proprty, fixes the bug when skins
2474 are applied even if EnableTheming property was set to false.
2476 2006-07-24 Andrew Skiba <andrews@mainsoft.com>
2478 * DataSourceView.cs: refactor to keep the original exception stack.
2480 2006-07-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2482 * PostBackOptions.cs: default to String.Empty for several field values.
2483 Patch by Marek Habersack.
2485 2006-07-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2487 * Page.cs: when ProcessRequest is not called, get the session from
2488 the current context. Fixes bug #78730.
2490 2006-07-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2492 * Page.cs: fix IsPostback for AJAX calls to match MS behavior. Patch
2493 by Peijen Lin that closes bug #78646.
2495 2006-06-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2497 * TemplateControlParser.cs: fix compilation caching when more than one
2498 @control is compiled from source. Closes bug #78626.
2500 2006-06-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2502 * Page.cs: add the 2.0 Items property. Fixes bug #78467.
2504 2006-06-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2506 * Page.cs: use the new internal LosFormatter.SerializeToBase64.
2507 * LosFormatter.cs: always work on base 64 strings even if the
2508 input/output is on a Stream. Fixes bug #78640.
2510 2006-06-08 Konstantin Triger <kostat@mainsoft.com>
2512 * Page.cs: For loading themes, use '~/App_Themes' instead of
2513 './App_Themes' to enable theme support for files in sub folders.
2515 2006-05-25 Andrew Skiba <andrews@mainsoft.com>
2517 * Control.cs: move 2.0 stuff into ifdef NET_2_0
2519 2006-05-25 Andrew Skiba <andrews@mainsoft.com>
2521 * Page.cs, Control.cs: Fix the order of OnInit invocation of controls
2522 created via master page content (see
2523 http://lists.ximian.com/pipermail/mono-devel-list/2006-May/018585.html ).
2525 2006-05-11 Andrew Skiba <andrews@mainsoft.com>
2527 * Page.cs, PageTheme.cs: This patch uses LinkedStyleSheets from the
2528 PageTheme and from StyleSheetPageTheme to insert links in page header.
2530 2006-05-10 Andrew Skiba <andrews@mainsoft.com>
2532 * TemlpateParser.cs: surround file name with quotes
2534 2006-05-08 Chris Toshok <toshok@ximian.com>
2536 * ControlBuilder.cs (ResetState): set renderIndex to 0 here. This
2537 fixes the last thing keeping the test in #76818 from working.
2539 2006-05-07 Andrew Skiba <andrews@mainsoft.com>
2541 * Page.cs: if no theme is defined in aspx, read default from web.config.
2542 Same for the style sheet theme.
2544 2006-04-27 Andrew Skiba <andrews@mainsoft.com>
2546 * TemplateParser.cs: format according to
2547 http://lists.ximian.com/pipermail/mono-devel-list/2006-April/018096.html
2549 2006-04-25 Chris Toshok <toshok@ximian.com>
2551 * PageThemeParser.cs (LinkedStyleSheets): reformat.
2553 2006-04-25 Konstantin Triger <kostat@mainsoft.com>
2555 * Control.cs: implementation for IsViewStateEnabled.
2557 2006-04-25 Andrew Skiba <andrews@mainsoft.com>
2559 * Control.cs: fix null pointer exception
2561 2006-04-23 Andrew Skiba <andrews@mainsoft.com>
2563 * PageThemeParser.cs: add LinkedStyleSheets property
2565 2006-04-16 Andrew Skiba <andrews@mainsoft.com>
2567 * TemplateParser.cs: add internal method AddAssemblyByFileName
2569 2006-04-16 Konstantin Triger <kostat@mainsoft.com>
2571 * SimpleWebHandlerParser.cs: correctly resolve GACs dependencies.
2573 2006-04-11 Konstantin Triger <kostat@mainsoft.com>
2575 * Page.cs, TemplateControl.cs: refactoring implementing Page.GetDataItem().
2577 2006-04-10 Chris Toshok <toshok@ximian.com>
2579 * PageThemeFileParser.cs (AddDirective): allow Register directives
2582 2006-04-02 Chris Toshok <toshok@ximian.com>
2584 * Control.cs (DesignMode): always return false for now. Fixes
2587 2006-03-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2589 * ControlBuilder.cs: when creating a default property builder, handle
2592 * StringPropertyBuilder.cs: new builder used in TextBox 2.0.
2594 2006-03-15 Vladimir Krasnov <vladimirk@mainsoft.com>
2596 * ControlCollection.cs: fixed CopyTo method, fixes bug when if target
2599 2006-03-13 Chris Toshok <toshok@ximian.com>
2601 * HtmlTextWriterTag.cs: no [Serializable] in 2.0.
2603 * HtmlTextWriterAttribute.cs: same.
2605 * HtmlTextWriterStyle.cs: same.
2607 * VirtualReferenceType.cs: new enum.
2609 2006-03-13 Chris Toshok <toshok@ximian.com>
2611 * UserControl.cs: rework InitializeAsUserControl and
2612 InitializeAsUserControlInternal - the Internal variety doesn't set
2613 this.page to null now.
2615 * MasterPage.cs (CreateMasterPage): map the masterPageFile path,
2616 and also remove a line of spew.
2618 2006-03-09 Vladimir Krasnov <vladimirk@mainsoft.com>
2620 * Added PageParser.jvm.cs, WebServiceParser.jvm.cs
2622 2006-03-07 Chris Toshok <toshok@ximian.com>
2624 * Page.cs (InitializeStyleSheet): load the style sheet theme using
2625 ThemeDirectoryCompiler.
2626 (InitializeTheme): load the page's theme using
2627 ThemeDirectoryCompiler.
2628 (InternalProcessRequest): call InitializeTheme after OnPreInit.
2629 (FrameworkInitialize): call InitializeStyleSheet.
2630 (PageTheme,StyleSheetPageTheme): new properties to get the
2633 * Control.cs (ApplyStyleSheetSkin): new method. Calls ApplySkin
2634 on the ControlSkin (if there is one) for this control in the
2635 page's StyleSheetSkin.
2636 (ApplyThemeRecursively): applies the page's theme recursively to
2637 the control hierarchy. Must be done this way because the control
2638 tree is already present when we apply the theme (it has to be,
2639 since theme's override settings).
2641 * PageTheme.cs (GetControlSkin): add internal call to do the
2644 * PageThemeFileParser.cs: the parser object that represents each
2645 individual skin file.
2647 * PageThemeParser.cs: the parser object that represents the entire
2650 * PageThemeBuilder.cs: this class generates the right exception on
2651 the right event, but it's not hooked up yet.
2653 2006-03-02 Chris Toshok <toshok@ximian.com>
2655 * Control.cs (ApplyStyleSheetTheme): remove the exception, and add
2658 * Page.cs (Theme): implement setter/getter.
2659 (StyleSheetTheme): same.
2661 * PageParser.cs (ProcessMainAttributes): parse the Theme and
2662 StyleSheetTheme attributes.
2664 2006-02-27 Chris Toshok <toshok@ximian.com>
2666 * TemplateControl.cs: corcompare work.
2668 * ExpressionBindingCollection.cs: same.
2670 * HierarchicalDataSourceControl.cs: same.
2672 * PostBackOptions.cs: same.
2674 * ClientScriptManager.cs: same.
2676 * FilterableAttribute.cs: same.
2678 * ControlCollection.cs: same.
2680 * DataBindingCollection.cs: same.
2682 * PropertyEntry.cs: mark ctor internal.
2684 * SimpleWebHandlerParser.cs: mark the 2.0 ctor as internal.
2686 * Page.cs: stub out two Theme oriented 2.0 properties.
2688 * DataBinder.cs: remove the obsolete attribute on the ctor.
2690 * TwoWayBoundPropertyEntry.cs: remove this.
2692 * ControlBuilder.cs (BindingContainerType): virtual in 2.0.
2694 * ThemeProvider: new (stubbed) class.
2696 * SkinBuilder.cs: same.
2698 * PageTheme.cs: same.
2700 * ControlSkin.cs: same.
2702 * ControlSkinProc.cs: rename this to ControlSkinDelegate.cs.
2704 * SimplePropertyEntry.cs: mark ctor as internal.
2706 * IThemeResolutionService.cs: enable the 3 members of this
2709 2006-02-27 Chris Toshok <toshok@ximian.com>
2711 * ListSourceHelper.cs: this class is static.
2713 * Page.cs: add some EditorBrowsable attributes to the 2.0 events.
2715 2006-02-27 Chris Toshok <toshok@ximian.com>
2717 * DataSourceView.cs: Name isn't virtual.
2719 * DataSourceControl.cs: beat this class over the head with the
2722 * DataSourceControlBuilder.cs: new stubbed control builder for
2725 2006-02-23 Chris Toshok <toshok@ximian.com>
2727 * Page.cs: more corcompare work.
2729 2006-02-23 Chris Toshok <toshok@ximian.com>
2731 * Page.cs (ProcessCallbackData): track change to
2732 ICallbackEventHandler iface.
2734 * ICallbackEventHandler.cs: enable the proper members of this
2737 * DataSourceSelectArguments.cs: reformat getter/setters.
2739 2006-02-22 Cesar Lopez Nataren <cnataren@novell.com>
2741 * HtmlTextWriter.cs: Added method WriteEncodedText for the .NET 2.0 profile.
2743 2006-02-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2745 * WebHandlerParser.cs:
2746 * WebServiceParser.cs:
2747 * UserControlParser.cs:
2748 * PageParser.cs: added new ctor that uses a TextReader as input.
2750 * TemplateControlParser.cs: new Reader property.
2751 * SimpleWebHandlerParser.cs: new Reader property and ctor.
2753 2006-02-12 Cesar Lopez Nataren <cnataren@novell.com>
2755 * HtmlTextWriter.cs: Implemented IsValidFormAttribute and
2756 WriterBreak for the .NET 2.0 profile.
2758 2006-02-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2760 * IThemeResolutionService.cs: this is now added to the
2761 sources file, but some other stuff does not compile yet as the
2762 interface changed after the beta.
2764 * ObjectConverter.cs: removed extra attribute.
2766 * ObjectStateFormatter.cs: add IStateFormatter for 2.0.
2768 * ICallbackEventHandler.cs: update the interface, but commented the
2769 'good' stuff out, since other files need to be fixed too.
2771 2006-02-07 Chris Toshok <toshok@ximian.com>
2773 * ControlBuilder.cs: rename flushOutputStatements to
2774 methodStatements to at least reflect that they're in that method.
2776 2006-02-07 Chris Toshok <toshok@ximian.com>
2778 * MasterPage.cs (CreateMasterPage): don't nullref on null
2779 contentTemplateCollection.
2781 * ControlBuilder.cs: add a flushOutputStatements field.
2783 * PageParser.cs (ProcessMainAttributes): handle Title attribute.
2784 (Title): add getter.
2786 * Page.cs (Title): implement getter/setter.
2787 (InternalProcessRequest): after calling ApplyMasterPage, apply the
2788 page's Title directive if there is one.
2789 (AddContentTemplate): make the EditorBrowsable attribute apply to
2790 the method, not the field.
2792 2006-02-07 Chris Toshok <toshok@ximian.com>
2794 * MasterPage.cs: rework this file, adding some static methods
2795 gleaned from MS stack traces, and clear up the propogation of
2796 content templates between nested master pages.
2798 * Control.cs (TemplateControl): implement.
2800 * TemplateControl.cs: re-indent some of the code.
2801 (ReadStringRecource): according to msdn2, these throw
2802 NotSupportedException.
2804 * MasterPageParser.cs (HandleOption): implement. assign our
2805 master page's MasterPageFile from the UserControl property.
2807 * UserControl.cs (InitializeAsUserControlInternal): new method
2808 that allows initialization without a page.
2810 * UserControlParser.cs (ProcessMainAttributes): for 2.0 handle
2811 MasterPageFile attributes, so we can have nested master pages.
2812 (MasterPageFile): add a 2.0 specific property.
2814 * TemplateControlParser.cs: in .net 2.0, our base class is
2816 (HandleOptions): be consistent and call base.HandleOptions.
2818 * BaseTemplateParser.cs: new (stubbed) class.
2820 * MasterPageControlBuilder.cs: new file, not filled in (and really
2823 * Page.cs (InternalProcessRequest): call ApplyMasterPage.
2824 (SaveExistingContentTemplates): nuke.
2825 (ReapplyExistingContentTemplate): nuke.
2826 (ApplyMasterPage): if we have a master page, call
2827 MasterPage.ApplyMasterPageRecursive with it and add it to our
2829 (set_MasterPageFile): remove call to SaveExistingContentTemplates.
2830 (get_Master): call MasterPage.CreateMasterPage.
2831 (AddContentTemplate): keep track of the page's content templates
2832 in a local Hashtable - they aren't our master page's content
2835 2006-02-01 Chris Toshok <toshok@ximian.com>
2837 * TemplateParser.cs: CONFIGURATION_2_0 => NET_2_0, and replace
2838 calls to GetWebApplicationSection with GetSection.
2840 * SimpleWebHandlerParser.cs: same.
2844 * PageParser.cs: same.
2846 * BaseParser.cs: same.
2848 2006-01-27 Chris Toshok <toshok@ximian.com>
2850 * MasterPage.cs (ContentTemplatesInternal): add get/set for the
2853 * Page.cs (SaveExistingContentTemplates): store off the existing
2854 MasterPage content templates so they can be reapplied when setting
2855 MasterPageFile to something else.
2856 (ReapplyExistingContentTemplates): set masterPage's
2857 ContentTemplates to our saved copy.
2858 (set_MasterPageFile): save off the current content templates
2859 before clearing masterPage.
2860 (get_Master): reapply the saved content templates after we create
2863 2006-01-25 Chris Toshok <toshok@ximian.com>
2865 * ClientScriptManager.cs (RegisterClientScriptResource): last
2866 patch, I swear. How can 1 line of code have 3 bugs?
2868 2006-01-25 Chris Toshok <toshok@ximian.com>
2870 * ClientScriptManager.cs (RegisterClientScriptResource): gah, fix
2871 problem with last commit - unquote "resourceName" so it uses the
2872 parameter instead of the string constant.
2874 2006-01-22 Chris Toshok <toshok@ximian.com>
2876 * RootBuilder.cs (.cctor): use a 2.0 friendly hashtable ctor to
2879 * PageParser.cs (ProcessMainAttributes): i missed a
2880 CONFIGURATION_2_0 block.
2882 * BoundPropertyEntry.cs (.ctor): mark as internal to fix
2885 2006-01-18 Konstantin Triger <kostat@mainsoft.com>
2887 * ObjectStateFormatter.cs: preserve emptiness in ColorFormatter.
2889 2006-01-18 Konstantin Triger <kostat@mainsoft.com>
2891 * HtmlTextWriter.cs: perform case insensitive compare;
2892 return correct key in default case.
2894 2006-01-11 Chris Toshok <toshok@ximian.com>
2896 * ClientScriptManager.cs (RegisterClientScriptResource):
2899 2006-01-11 Vladimir Krasnov <vladimirk@mainsoft.com>
2901 * ObjectStateFormatter.cs: Removed TARGET_JVM parts in
2904 2006-01-10 Chris Toshok <toshok@ximian.com>
2906 * Page.cs (ValidateCollection): in NET_2_0 if event validation is
2909 2006-01-09 Chris Toshok <toshok@ximian.com>
2911 * Page.cs: fix a lot of indentation, and add the
2912 EnableEventValidation .net 2.0 property.
2914 2006-01-09 Vladimir Krasnov <vladimirk@mainsoft.com>
2916 * ObjectStateFormatter.cs: Merged TARGET_JVM parts in
2917 TypeFormatter.Read, TypeFormatter.Write from /main/5
2919 2006-01-09 Konstantin Triger <kostat@mainsoft.com>
2921 * Page.cs: make ProcessRequest virtual under TARGET_JVM.
2923 2006-01-04 Chris Toshok <toshok@ximian.com>
2925 * TemplateParser.cs (.ctor): kinda gross, but handle the
2926 AddAssembliesInBin case here.
2928 * SimpleWebHandlerParser.cs (.ctor): same.
2930 2006-01-04 Chris Toshok <toshok@ximian.com>
2932 * SimpleWebHandlerParser.cs: Remove the declaration of
2933 compilationConfig in the CONFIGURATION_2_0 case. it's
2935 (.ctor): ifdef out the AddAssembliesInBin call in the
2936 CONFIGURATION_2_0 case. need to revisit this.
2937 (CompilationConfig): add a CONFIGURATION_2_0 version.
2939 * BaseParser.cs: Remove the declaration of compilationConfig in
2940 the CONFIGURATION_2_0 case. it's unnecessary.
2942 2005-12-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2944 * Control.cs: use _controls instead of the property wherever possible.
2946 2005-12-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2948 * Control.cs: use the _controls field instead of the Controls property.
2951 2005-11-30 Sebastien Pouliot <sebastien@ximian.com>
2953 * KeyedList.cs: Fixed for IOrderedDictionary change in 2.0 final.
2955 * KeyedListEnumerator.cs: Now internal.
2957 2005-11-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2959 * ControlCollection.cs: allow 'null' in Remove.
2961 2005-11-28 Chris Toshok <toshok@ximian.com>
2963 * Page.cs (GetFormatter): CONFIGURATION_2_0 work.
2965 * TemplateParser.cs (..ctor): CONFIGURATION_2_0 work.
2966 (PagesConfig): add a CONFIGURATION_2_0 version that returns a
2969 * PageParser.cs (ProcessMainAttributes): CONFIGURATION_2_0 work.
2971 * BaseParser.cs (CompilationConfig): add a CONFIGURATION_2_0
2972 version that returns a CompilationSection.
2974 2005-11-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2976 * SimpleWebHandlerParser.cs: removed 'codebehind' related stuff.
2978 2005-11-09 Chris Toshok <toshok@ximian.com>
2980 * ViewStateEncryptionMode.cs: new 2.0 enum.
2982 2005-11-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2984 * TemplateParser.cs: fixes #76423. Not tested properly.
2986 2005-11-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2988 * Page.cs: call LoadViewStateRecursive when the Form collection has
2989 not been used by a different page (GetTypeHashCode). This fixes problems
2990 when calling Server.Transfer while preserving Form and QueryString,
2991 as the page we transfer to used the view state stored in the Form, which
2992 contained the serialized data for the page calling Server.Transfer
2995 2005-10-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2997 * Page.cs: add/remove the error before/after invoking OnError.
2999 2005-10-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3001 * Page.cs: call OnError when there's an exception (not for TAE). Fixes
3004 2005-10-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3006 * TemplateControl.cs:
3007 * PartialCachingControl.cs: if a control is cacheable, LoadControl
3008 returns a PartialCachingControl that holds the VaryBy* and takes care
3009 of partial caching and rendering. Fixes bug #76547.
3011 2005-10-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3013 * Page.cs: don't cache the 'Validate()' results. IsValid retests
3014 the validators again.
3016 2005-09-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3018 * DesignerDataBoundLiteralControl.cs: changed autoid api.
3019 * DataBoundLiteralControl.cs: changed autoid api.
3021 * Control.cs: fixlet for UniqueID and weird test case. Removed
3022 PreventAutoID and only use the property to set that value.
3024 * LiteralControl.cs: changed autoid api.
3026 2005-09-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3028 * AttributeCollection.cs: avoid code duplication and
3029 don't add "style" to the bag, or it will overwrite the settings made
3030 by CssStyleCollection.
3032 * CssStyleCollection.cs: make it throw where MS throws.
3033 Minimize the number of times we create the "style" string and take
3034 care of updating it for the AttributeCollection. FillStyle and
3035 BagToString are now private. One should use the 2.0 (internal in <2.0)
3038 2005-09-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3040 * Control.cs: fix HasChildViewStates.
3042 2005-09-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3044 * LosFormatter.cs: when the default ctor is used, MAC is disabled.
3047 2005-09-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3049 * ObjectTagBuilder.cs: only fail when no id and no attributes.
3051 2005-09-23 Sebastien Pouliot <sebastien@ximian.com>
3053 * DataBindingCollection.cs: Using an hashtable is a nice trick but
3054 we need to copy values (not the DictionaryEntry) in CopyTo.
3055 * Page.cs: IsValid throws an exception if the page hasn't be
3056 validated. VerifyRenderingInServerForm doesn't throw an exception
3057 during unit testing (without a context?) but does in normal ops.
3059 2005-09-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3061 * LosFormatter.cs: the exceptions thrown have a 500 httpCode. Really
3062 save the allocation of new MemoryStreams when possible. Thanks to
3065 2005-09-23 Ben Maurer <bmaurer@ximian.com>
3067 * HtmlTextWriter.cs: Initial support for escaping.
3069 2005-09-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3071 * ViewStateOutputHashStream.cs: Removed. It didn't last long.
3073 * Page.cs: almost restored to its previous state, but now that we found
3074 that LosFormatter ctor that takes 'enableMac', moved the logic to
3075 add the hash and validate there. Thanks to Sebastien for his input.
3077 * LosFormatter.cs: implemented the missing ctors and support for
3078 "MAC" validation of the data.
3080 2005-09-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3083 * ViewStateOutputHashStream.cs: added support for viewstate MAC. It
3084 prevents the viewstate being altered on the client and it's disabled
3085 by default as per the documentation, but MS machine.config has it
3086 enabled in machine.config.
3088 2005-09-22 Miguel de Icaza <miguel@novell.com>
3090 * DataBindingCollection.cs: Raise the event, remove MonoTODO.
3092 * MinimizableAttributeTypeConverter.cs: Fix warning, compare to a
3095 2005-09-21 Sebastien Pouliot <sebastien@ximian.com>
3097 * Control.cs: Added null checks for Trace as it can be null when
3098 rendering (like it was for 39 unit tests).
3100 2005-09-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3102 * Page.cs: reverted hacks used with the wrong method of getting a
3103 control rendered size.
3104 * Control.cs: if the trace is enabled, save control rendered size.
3106 2005-09-19 Sebastien Pouliot <sebastien@ximian.com>
3108 * Page.cs: Remove references to IPageParser (removed from 2.0 RC). We
3109 now use HtmlHeader directly.
3110 * UrlPropertyAttribute.cs: Removed AllowedTypes property (2.0 RC) and
3111 rewrote Equals to avoid dual type cast.
3113 2005-09-19 Sebastien Pouliot <sebastien@ximian.com>
3115 * SupportsEventValidationAttribute.cs: New attribute added in 2.0 RC.
3117 2005-09-19 Sebastien Pouliot <sebastien@ximian.com>
3119 * ControlBuilder.cs: Added BuildObject override for 2.0 profile.
3120 * TagPrefixAttribute.cs: Added LinkDemand for AspNetHostingPermission
3121 with Minimal level. Fixed checks on ctor.
3122 * TemplateBuilder.cs: Added LinkDemand and InheritanceDemand for
3123 AspNetHostingPermission with Minimal level.
3124 * TemplateContainerAttribute.cs: Added LinkDemand for
3125 AspNetHostingPermission with Minimal level.
3126 * TemplateControl.cs: Added LinkDemand and InheritanceDemand for
3127 AspNetHostingPermission with Minimal level. Fixed checks/exceptions.
3128 Stubbed IFilterResolutionService for CAS testing.
3129 * TemplateControlParser.cs: Added LinkDemand and InheritanceDemand for
3130 AspNetHostingPermission with Minimal level.
3131 * TemplateParser.cs: Added LinkDemand and InheritanceDemand for
3132 AspNetHostingPermission with Minimal level.
3133 * ThemeableAttribute.cs: Added LinkDemand for AspNetHostingPermission
3134 with Minimal level. Removed IDispose interface.
3135 * ToolboxDataAttribute.cs: Added LinkDemand for
3136 AspNetHostingPermission with Minimal level. Fixed IsDefaultAttribute
3137 to work on both 1.x and 2.0 profiles.
3138 * Triplet.cs: Added LinkDemand and (only for 1.x) InheritanceDemand
3139 for AspNetHostingPermission with Minimal level.
3140 * UserControl.cs: Added LinkDemand and InheritanceDemand for
3141 AspNetHostingPermission with Minimal level. Stubbed
3142 IFilterResolutionService for CAS testing.
3143 * UserControlControlBuilder.cs: Added LinkDemand and InheritanceDemand
3144 for AspNetHostingPermission with Minimal level.
3145 * ValidationPropertyAttribute.cs: Added LinkDemand for
3146 AspNetHostingPermission with Minimal level.
3147 * ValidatorCollection.cs: Added LinkDemand for AspNetHostingPermission
3149 * WebResourceAttribute.cs: Removed extra ctor and added setter to
3150 PerformSubstitution.
3151 * WebServiceParser.cs: Added LinkDemand and InheritanceDemand for
3152 AspNetHostingPermission with Minimal level.
3154 2005-09-15 Sebastien Pouliot <sebastien@ximian.com>
3156 * ParseChildrenAttribute.cs: Added LinkDemand for
3157 AspNetHostingPermission with Minimal level. Simplified Equals to avoid
3158 casting. Added new ctor and public fields (2.0). Changed
3159 ChildControlType setter visibility to internal.
3160 * PartialCachingAttribute.cs: Added LinkDemand for
3161 AspNetHostingPermission with Minimal level. Added new ctor and
3162 SqlDependency property (2.0).
3163 * PartialCachingControl.cs: Added LinkDemand and InheritanceDemand for
3164 AspNetHostingPermission with Minimal level.
3165 * PersistenceModeAttribute.cs: Added LinkDemand for
3166 AspNetHostingPermission with Minimal level. Simplified Equals to avoid
3168 * PersistChildrenAttribute.cs: Added LinkDemand for
3169 AspNetHostingPermission with Minimal level. Simplified Equals to avoid
3171 * PropertyConverter.cs: Added LinkDemand for AspNetHostingPermission
3172 with Minimal level. Class is static in 2.0.
3173 * RootBuilder.cs: Added LinkDemand and, for 2.0, InheritanceDemand for
3174 AspNetHostingPermission with Minimal level. Class is no more sealed in
3175 2.0. Added new (2.0) BuiltObjects property.
3176 * SimpleWebHandlerParser.cs: Added LinkDemand and InheritanceDemand
3177 for AspNetHostingPermission with Minimal level.
3178 * StateItem.cs: Added LinkDemand for AspNetHostingPermission with
3180 * StateBag.cs: Added LinkDemand for AspNetHostingPermission with
3181 Minimal level. Removed SetDirty() which was called (2.0) but did
3183 * StaticPartialCachingControl.cs: Added LinkDemand and
3184 InheritanceDemand for AspNetHostingPermission with Minimal level.
3186 2005-09-15 Sebastien Pouliot <sebastien@ximian.com>
3188 * Html32TextWriter.cs: Added LinkDemand and InheritanceDemand for
3189 AspNetHostingPermission with Minimal level. Added new 2.0 properties
3190 (but the generated HTML doesn't use them).
3191 * HtmlTextWriter.cs: Added LinkDemand and InheritanceDemand for
3192 AspNetHostingPermission with Minimal level.
3193 * ImageClickEventArgs.cs: Added LinkDemand for AspNetHostingPermission
3195 * LiteralControl.cs: Added LinkDemand and InheritanceDemand for
3196 AspNetHostingPermission with Minimal level. Default Text is null.
3197 * LosFormatter.cs: Added LinkDemand and InheritanceDemand for
3198 AspNetHostingPermission with Minimal level. Stubbed new 2.0 ctor.
3199 * ObjectConverter.cs: Added LinkDemand and InheritanceDemand for
3200 AspNetHostingPermission with Minimal level. Obsoleted ctor for 2.0.
3201 * ObjectTagBuilder.cs: Added LinkDemand for AspNetHostingPermission
3202 with Minimal level. Added check for null id (HttpException).
3203 * Page.cs: Added LinkDemand and InheritanceDemand for
3204 AspNetHostingPermission with Minimal level. Throw some HttpException
3205 when no context is available.
3206 * Pair.cs: Added LinkDemand for AspNetHostingPermission with Minimal
3207 level. InheritanceDemand too for 1.x.
3208 * PageParser.cs: Added LinkDemand for AspNetHostingPermission with
3211 2005-09-14 Sebastien Pouliot <sebastien@ximian.com>
3213 * DataBinder.cs: Added LinkDemand for AspNetHostingPermission with
3214 Minimal level. Fixed some exceptions.
3215 * DataBindingCollection.cs: Added LinkDemand for
3216 AspNetHostingPermission with Minimal level. Added 2.0 method and
3218 * DataBindingHandlerAttribute.cs: Added LinkDemand for
3219 AspNetHostingPermission with Minimal level.
3220 * DataBinding.cs: Added LinkDemand for AspNetHostingPermission with
3221 Minimal level. Simplified Equals (reduced casts).
3222 * DataBoundLiteralControl.cs: Added LinkDemand for
3223 AspNetHostingPermission with Minimal level. Implemented ITextControl
3225 * DesignerDataBoundLiteralControl.cs: Added LinkDemand for
3226 AspNetHostingPermission with Minimal level.
3227 * DesignTimeParseData.cs: Added LinkDemand for AspNetHostingPermission
3228 with Minimal level. Added new 2.0 properties.
3229 * DesignTimeTemplateParser.cs: Added LinkDemand for
3230 AspNetHostingPermission with Minimal level. Made class static and
3231 stubbed missing methods (2.0).
3232 * EmptyControlCollection.cs: Added LinkDemand and InheritanceDemand
3233 for AspNetHostingPermission with Minimal level. Changed Add* methods
3234 exceptions to HttpException.
3236 2005-09-14 Sebastien Pouliot <sebastien@ximian.com>
3238 * AttributeCollection.cs: Added LinkDemand for AspNetHostingPermission
3240 * BaseParser.cs: Added LinkDemand and InheritanceDemand for
3241 AspNetHostingPermission with Minimal level.
3242 * BasePartialCachingControl.cs: Added LinkDemand and InheritanceDemand
3243 for AspNetHostingPermission with Minimal level.
3244 * CompiledTemplateBuilder.cs: Added LinkDemand for
3245 AspNetHostingPermission with Minimal level.
3246 * ConstructorNeedsTagAttribute.cs: Added LinkDemand for
3247 AspNetHostingPermission with Minimal level.
3248 * ControlBuilderAttribute.cs: Added LinkDemand for
3249 AspNetHostingPermission with Minimal level. Simplified Equals and
3251 * ControlBuilder.cs: Added LinkDemand and InheritanceDemand for
3252 AspNetHostingPermission with Minimal level.
3253 * ControlCachePolicy.cs: Hided ctor and removed SupportsCaching setter
3254 * ControlCollection.cs: Added LinkDemand and InheritanceDemand for
3255 AspNetHostingPermission with Minimal level. Fixed possible stack
3256 overflow in Add* methods. Fixed CopyTo as we're not allocating the
3257 array based on the number of items.
3258 * Control.cs: Added LinkDemand and InheritanceDemand for
3259 AspNetHostingPermission with Minimal level. Fixed 2.0 signatures.
3260 * CssStyleCollection.cs: Added LinkDemand for AspNetHostingPermission
3262 * IStyleSheet.cs: Fixed parameter orders (2.0).
3264 2005-09-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3266 * TemplateParser.cs: default VS 2005 pages are compiled fine now.
3268 2005-09-07 Chris Toshok <toshok@ximian.com>
3270 * MinimizableAttributeTypeConverter.cs: new class, whose existence
3271 we know about because of corcompare, and for whose implementation
3272 we have exclusively nunit to thank.
3274 2005-09-06 Chris Toshok <toshok@ximian.com>
3276 * RootBuilder.cs (.cctor): doh, add all the new html controls
3279 2005-08-31 Chris Toshok <toshok@ximian.com>
3281 * DataSourceSelectArguments.cs (Empty): this is apparently,
3282 according to corcompare, a property, not a field. go figure.
3283 (Equals): implement.
3284 (IsEmpty): remove all mention of it.
3286 2005-08-29 Chris Toshok <toshok@ximian.com>
3288 * StateBag.cs (GetChar): add.
3290 2005-08-28 Chris Toshok <toshok@ximian.com>
3292 * Page.cs: more random corcompare work.
3293 (PageAdapter): implement.
3295 2005-08-28 Chris Toshok <toshok@ximian.com>
3297 * Page.cs (.ctor): set our initial ID to "__Page".
3298 (SmartNavigation): obsolete in 2.0.
3299 (FindControl): new implementation. Just check our own ID against
3300 the control we're looking for. otherwise pass it along to
3302 (GetPostBackClientHyperlink): obsolete in 2.0.
3304 2005-08-28 Chris Toshok <toshok@ximian.com>
3306 * ClientScriptManager.cs: public sealed in 2.0
3308 * IAdaptableTextWriter.cs: new 2.0 interface.
3310 * IHierarchyData.cs: fix return type for GetParent.
3312 2005-08-28 Chris Toshok <toshok@ximian.com>
3314 * Pair.cs: mark serializable and sealed in 2.0.
3316 2005-08-26 Sebastien Pouliot <sebastien@ximian.com>
3318 * CssStyleCollection.cs: Implemented setter for Value (2.0) using the
3319 existing (but internal) FillStyle method. Rewrote BagToString to use an
3320 HtmlTextWriter so we get the "right" format for background-image url.
3322 2005-08-26 Sebastien Pouliot <sebastien@ximian.com>
3324 * CssStyleCollection.cs: Implemented this[HtmlTextWriterStyle],
3325 Remove(HtmlTextWriterStyle) and the getter for Value (all 2.0). Removed
3326 the extra space from last patch because they break some unit tests.
3328 2005-08-26 Lluis Sanchez Gual <lluis@novell.com>
3330 * CssStyleCollection.cs: Added some spacing.
3331 * HtmlTextWriter.cs: Made style and attribute tables static.
3332 Implemented StaticGetStyleName().
3334 2005-08-26 Sebastien Pouliot <sebastien@ximian.com>
3336 * CssStyleCollection.cs: Stubbed new 2.0 stuff to allow TableStyleTest
3338 * HtmlTextWriter.cs: Fix style rendering for BackgroundImage in 2.0.
3339 The new rendering formats the value as "url(" + original + ")".
3341 2005-08-26 Sebastien Pouliot <sebastien@ximian.com>
3343 * HtmlTextWriter.cs: Added support for VerticalAlign style (as it
3344 depends on the HtmlTextWriterStyle ordering).
3346 2005-08-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3348 * HtmlTextWriter.cs: remove 'mistaken end of statement' and FIXME.
3350 2005-08-25 Sebastien Pouliot <sebastien@ximian.com>
3352 * HtmlTextWriterStyle.cs: Added missing VerticalAlign in 2.0 (which
3353 fixed the rest of the enum values).
3354 * UrlPropertyAttribute.cs: Removed the .ctor accepting an UrlTypes
3355 parameter to match 2.0 API. Added a setter to the AllowedTypes
3358 2005-08-24 Chris Toshok <toshok@ximian.com>
3360 * Control.cs (get_Adapter): Instead of throwing an exception, just
3361 return null, so we can write the rest of the Control specific
3362 Adapter code and just not enable any of those code paths until we
3363 have actual adapters. Also flag TODO.
3364 (EnsureChildControls): Call out to Adapter.CreateChildControls if
3366 (RenderChildren): call "RenderControl (writer, adapter)" if we
3368 (RenderControl): implement the adapter case naively.
3369 (LoadRecursive): call out to Adapter.OnLoad if we have one.
3370 (PreRenderRecursiveInternal): call out to Adapter.OnPrerender if
3372 (InitRecursive): call out to Adapter.OnInit if we have one.
3374 2005-08-24 Chris Toshok <toshok@ximian.com>
3376 * Page.cs (GetPostBackEventReference): track change to
3377 ClientScriptManager and don't call a removed method.
3379 * ClientScriptManager.cs: track more recent docs and corcompare
3382 2005-08-24 Sebastien Pouliot <sebastien@ximian.com>
3384 * KeyedList.cs: Fixed bug when removing an unexisting object.
3385 * StateManagedCollection.cs: Fixed API for beta2. Fixed buglets found
3386 in implementing RoleGroupCollection.
3388 2005-08-22 Sebastien Pouliot <sebastien@ximian.com>
3390 * Page.cs: Use Control property (and not the _control variable) to get
3391 the User (so the virtual Control property can be overriden properly).
3392 Sadly this doesn't seems to be the case for other properties (like
3395 2005-08-18 Dick Porter <dick@ximian.com>
3397 * ControlCachePolicy.cs, PersistChildrenAttribute.cs,
3398 UserControl.cs, DesignerDataBoundLiteralControl.cs,
3399 PageStatePersister.cs, DataBoundLiteralControl.cs, Control.cs,
3400 BasePartialCachingControl.cs, LiteralControl.cs: 2.0 API fixes and
3401 stubs and attribute fixes
3403 2005-08-13 Sebastien Pouliot <sebastien@ximian.com>
3405 * Control.cs: Add protected virtual SetDesignModeState, in 2.0
3406 profile, as this is required for the Login control.
3408 2005-08-11 Dick Porter <dick@ximian.com>
3410 * CssStyleCollection.cs: Tweak the css string format to pass a
3413 * AttributeCollection.cs: Don't NRE if someone sets the "style"
3416 2005-08-05 Ben Maurer <bmaurer@ximian.com>
3418 * HtmlTextWriter.cs: Revert the patch below, see test case
3420 2005-08-05 Dick Porter <dick@ximian.com>
3422 * HtmlTextWriter.cs: Make <option> tags render inline, to match
3425 2005-08-03 Ben Maurer <bmaurer@ximian.com>
3427 * HtmlTextWriter.cs: Optmize this not to do insane amounts of
3428 allocation for large pages, etc.
3430 2005-07-30 Chris Toshok <toshok@ximian.com>
3432 * Page.cs (VerifyRenderingInServerForm): copy MS's error message
3433 since our form-errors jsunit tests depend on it.
3435 2005-07-30 Chris Toshok <toshok@ximian.com>
3437 * DataBinder.cs (FormatResult): make internal, not private.
3439 2005-07-29 Ben Maurer <bmaurer@ximian.com>
3441 * StateBag.cs: Don't remove when tracking viewstate, as per msft
3444 2005-07-29 Ben Maurer <bmaurer@ximian.com>
3446 * StateBag.cs: Actually *remove* items that are null. Duh.
3448 2005-07-21 Peter Dennis Bartok <pbartok@novell.com>
3450 * Page.cs: Need to throw exception when accessing Request but no
3453 2005-07-20 Chris Toshok <toshok@ximian.com>
3455 * ClientScriptManager.cs (GetClientValidationEvent): the JS we
3456 stick in onclick handlers for buttons/links/etc.
3458 * Page.cs (GetSubmitStatements): new function to return
3459 scriptManager.WriteSubmitStatements. Used by HtmlForm.
3460 (AreValidatorsUplevel): used by many of the button/linkbutton
3461 controls (the ones that can CauseValidation) to tell whether or
3462 not to emit client side validation calls.
3464 2005-07-20 Chris Toshok <toshok@ximian.com>
3466 * WebResourceAttribute.cs: make internal (and available) in
3469 2005-07-20 Chris Toshok <toshok@ximian.com>
3471 * ClientScriptManager.cs (GetWebResourceUrl): make internal (but
3472 available) in !NET_2_0.
3474 2005-07-18 Peter Dennis Bartok <pbartok@novell.com>
3476 * Control.cs: Added IDataBindingsAccessor interface methods
3478 2005-07-18 Ben Maurer <bmaurer@ximian.com>
3480 * HtmlTextWriter.cs: Fix nested indentation
3482 2005-07-18 Peter Dennis Bartok <pbartok@novell.com>
3484 * Control.cs: Added missing IParserAccessor.AddParsedSubObject
3487 2005-07-18 Ben Maurer <bmaurer@ximian.com>
3489 * HtmlTextWriter.cs: Fix indentation (somewhat at least)
3491 2005-07-18 Peter Dennis Bartok <pbartok@novell.com>
3494 - Default name for controls on MS.Net is "_ctl" not "_ctrl"
3495 - MS does not append 'a' for auto-generated names
3497 2005-07-17 Ben Maurer <bmaurer@ximian.com>
3499 * AttributeCollection.cs: Use the invariant culture.
3501 * StateBag.cs: "Duh" optimization: return null when there are no
3502 dirty items in the view state
3504 2005-07-14 Ben Maurer <bmaurer@ximian.com>
3506 * StateBag.cs: A "short" version of my favorite method.
3508 * HtmlTextWriter.cs: New method to get the tag name staticly.
3510 2005-07-14 Duncan Mak <duncan@novell.com>
3512 * DataBindingHandlerAttribute.cs: Fixed after receiving some
3513 comments from Gonzalo.
3515 2005-07-13 Jackson Harper <jackson@ximian.com>
3517 * PropertyConverter.cs: No public constructors.
3519 2005-07-13 Ben Maurer <bmaurer@ximian.com>
3521 * HtmlTextWriter.cs: Remove debugging spew. Style cleanup
3523 2005-07-12 Ben Maurer <bmaurer@ximian.com>
3525 * HtmlTextWriter.cs: Make styles work.
3527 2005-07-11 Peter Dennis Bartok <pbartok@novell.com>
3529 * AttributeCollection.cs:
3530 - Changes to match MS behaviour, the "style" attribute is always
3531 added to the list, in addition to being added to the
3532 CssStyleCollection. Also added check for "style" attribute when
3533 setting via index setter
3534 - When "Style" attribute is added, CssStyleCollection is
3535 automatically created
3536 - The style keyword needs to be lowercase
3538 2005-07-11 Ben Maurer <bmaurer@ximian.com>
3540 * HtmlTextWriter.cs: Missing a PopEndTag here.
3542 * PropertyConverter.cs: Pass tests
3544 2005-07-09 Miguel de Icaza <miguel@novell.com>
3546 * DataBindingHandlerAttribute.cs: Create the "Default" property.
3548 2005-07-09 Duncan Mak <duncan@novell.com>
3550 * DataBindingHandlerAttribute.cs: Implemented.
3552 2005-07-08 Ben Maurer <bmaurer@ximian.com>
3554 * HtmlTextWriter.cs: Much better compliance with msft
3556 2005-07-08 Jackson Harper <jackson@ximian.com>
3558 * ToolbarDataAttribute.cs: New implementation.
3560 2005-07-07 Jackson Harper <jackson@ximian.com>
3562 * PropertyConverter.cs: New implementation.
3564 2005-07-07 Ben Maurer <bmaurer@ximian.com>
3566 * StateBag.cs: Noticed an issue where SetDirty was called when the
3569 2005-07-07 Ben Maurer <bmaurer@ximian.com>
3571 * StateBag.cs: Add a method that gets a string or else a default
3574 2005-07-07 Dick Porter <dick@ximian.com>
3576 * StateBag.cs: Added internal SetDirty (void) method to fix the
3579 2005-07-07 Sebastien Pouliot <sebastien@ximian.com>
3581 * HtmlTextWriter.cs: Small fixlet when attribute has no value.
3583 2005-07-07 Miguel de Icaza <miguel@novell.com>
3585 * HtmlTextWriter.cs: Return the stuff in lowercase to pass the
3588 * StateBag.cs: Add NET_2_0 SetDirty method to get the build
3591 2005-07-07 Sebastien Pouliot <sebastien@ximian.com>
3593 * HtmlTextWriter.cs: Small fixlet (required for the unit tests).
3595 2005-07-06 Ben Maurer <bmaurer@ximian.com>
3597 * HtmlTextWriter.cs: Make sure to clear attributes when they are
3600 * StateBag.cs: New impl
3602 2005-06-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3605 * Control.cs: avoid the creation of the EventHandlerList and accessing
3606 to it whenever possible. Fix ENABLE_THEMING constant.
3608 2005-06-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3610 * TemplateParser.cs:
3611 * TemplateControlParser.cs:
3612 * UserControlParser.cs: detect circular references when a control tries
3613 to register itself as a tag. Fixes bug #75376.
3615 2005-06-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3617 * PageParser.cs: don't try to compile the master page if it wan't
3618 provided. Use MapPath from the base classes instead of the long
3619 version. Fixes bug #75269 that prevented xsp2 from working properly.
3621 2005-06-13 Lluis Sanchez Gual <lluis@novell.com>
3623 * MasterPage.cs: Clear the default content of placeholders before
3624 adding the page content. Fixes bug #75193.
3626 2005-06-13 Lluis Sanchez Gual <lluis@novell.com>
3628 * PageParser.cs: Added MasterType property. Get the type from the
3629 MasterType directive.
3630 * MasterPageParser.cs: Added GetCompiledMasterType method.
3632 2005-06-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3636 * Control.cs: updates for 1.1 SP1
3638 2005-06-06 Lluis Sanchez Gual <lluis@novell.com>
3640 * Control.cs: Added new DataBind() overload for 2.0. The old
3641 method calls this new overload.
3643 2005-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3645 * TemplateParser.cs: ignore empty assembly.Location for in-memory
3646 generated assemblies.
3648 2005-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3650 * Page.cs: added AddContentTemplate method.
3652 2005-05-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3654 * AttributeCollection.cs: html-encode attribute values. Fixes
3657 2005-05-26 Lluis Sanchez Gual <lluis@novell.com>
3659 * DataSourceView.cs: Fix api.
3660 * NonVisualControlAttribute.cs: Implemented.
3661 * IDataItemContainer.cs: Added missing properties.
3662 * Control.cs: Added new EnableTheming and SkinID properties.
3663 * HierarchicalDataSourceControl.cs: Implemented missing methods.
3665 2005-05-13 Lluis Sanchez Gual <lluis@novell.com>
3667 * ControlCollection.cs: Added internal setter for ReadOnly.
3669 2005-05-09 Geoff Norotn <gnorton@customerdna.com>
3671 * TemplateParser.cs: Silently remove the CodeFile attribute that ASP.NET 2.0
3672 uses instead of codebehind.
3674 2005-05-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3676 * Page.cs: as setting CurrentCulture is slow, don't set it if the
3677 culture has not changed since before the page started processing.
3679 2005-05-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3681 * TemplateParser.cs: LoadWithPartialName returns null if the assembly is
3684 2005-04-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3686 * TemplateParser.cs:
3687 * SimpleWebHandlerParser.cs: removed values assigned and neved used.
3689 2005-04-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3691 * SimpleWebHandlerParser.cs:
3692 * TemplateParser.cs: always get the location (full path) for assemblies,
3693 even the ones from the GAC.
3695 * BaseCompiler.cs: check that DynamicBase directory exists before
3696 creating the TempFileCollection.
3698 2005-04-22 Lluis Sanchez Gual <lluis@novell.com>
3700 * ClientScriptManager.cs: Use a linked list instead of a Hashtable
3701 to store the scripts. In this way, scripts will be rendered in the
3702 same order as they have been registered. It shouldn't be slower
3703 since pages don't have many scripts.
3705 2005-04-21 Lluis Sanchez Gual <lluis@novell.com>
3707 * IEditableTextControl.cs: Implemented.
3708 * DataBinder.cs: Marked constructor as obsolete in 2.0.
3709 In GetDataItem, check for the IDataItemContainer interface
3711 * TemplateControl.cs: Improved check for data item.
3713 2005-04-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3715 * TemplateParser.cs: we still need LoadWithPartialName if Load fails.
3716 * Page.cs: ensure _requiresPostBack is emptied if we didn't have a copy
3717 for second postback.
3719 2005-04-20 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
3720 * TemplateParser.cs: Adding support for Strict/Explicit attributes
3721 for @Page/@Control directives as documented at
3722 http://msdn.microsoft.com/library/en-us/cpgenref/html/cpconControlDirective.asp.
3723 First step don't choke on them. Fixing #74671
3725 2005-04-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3727 * TemplateParser.cs: use Load instead of LoadWithPartialName. That was
3728 there from the time when Load wasn't working properly. First part of the
3731 2005-04-15 Lluis Sanchez Gual <lluis@novell.com>
3733 * ControlBuilder.cs: The BindingContainerType property happens
3734 to exist in 2.0, so I made it public. Added ParentTemplateBuilder,
3735 which is used to get the binding container that is managing
3736 the current two-way binding context.
3737 * TemplateBuilder.cs: Added some methods and an internal class
3738 to support two-way bindings.
3739 * CompiledBindableTemplateBuilder.cs: Implemented.
3740 * IBindableTemplate.cs: This interface inherits from ITemplate.
3742 2005-04-14 Lluis Sanchez Gual <lluis@novell.com>
3744 * ControlBuilder.cs: Added BindingContainerType property,
3745 which works like NamingContainerType but takes into account
3746 template builders with a specific container type (specified
3747 using the TemplateContainerAttribute.
3748 * StateManagedCollection.cs: Reimplemented Save/Load view
3749 state methods. The existing implementation was not correct
3752 2005-04-08 Lluis Sanchez Gual <lluis@novell.com>
3754 * DataSourceView.cs: Added null check.
3756 2005-04-07 Lluis Sanchez Gual <lluis@novell.com>
3758 * TemplateControl.cs:
3759 * Page.cs: Moved Eval and XPath from Page
3761 * StateManagedCollection.cs: Avoid saving null state.
3763 2005-04-01 Lluis Sanchez Gual <lluis@novell.com>
3765 * DataSourceView.cs: Rethrow exceptions not handled by operation
3767 * ITextControl.cs: Removed event.
3768 * CollectionBuilder.cs: Don't crash when a collection has more
3771 2005-03-23 Lluis Sanchez Gual <lluis@novell.com>
3773 * Control.cs: Added a new internal property: HasRenderMethodDelegate.
3774 * HtmlTextWriterAttribute.cs: Replaced wrong enum value.
3775 * HtmlTextWriter.cs: Register new ASP.NET 2.0 attributes
3777 2005-03-16 Lluis Sanchez Gual <lluis@novell.com>
3779 * ClientScriptManager.cs: Fix build.
3781 2005-03-11 Lluis Sanchez Gual <lluis@novell.com>
3783 * Utils.cs, Control.cs: Don't use Page.GetPostBackClientEvent
3784 since it is deprecated in 2.0.
3785 * Page.cs: Deprecated GetPostBackClientEvent and similar methods
3786 in 2.0. Moved callback management methods to ClientScriptManager.
3787 * ClientScriptManager.cs: Moved here deprecated methods from Page.
3788 In GetPostBackEventReference (PostBackOptions), don't use the
3789 WebForm_DoPostback script if the post can be done with a simple
3791 * PostBackOptions.cs: Fixed default values for some properties.
3793 2005-03-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3795 * Control.cs: in FindControl, throw if there's more than one control
3796 with the same ID. Fixes bug #73479.
3798 2005-03-04 Lluis Sanchez Gual <lluis@novell.com>
3800 * Page.cs: Load control state before loading view state, and the
3802 * DataSourceSelectArguments.cs: Fix recursive property call.
3804 2005-02-25 Lluis Sanchez Gual <lluis@novell.com>
3806 * DataSourceView.cs: Fixed incorrect implementation of
3807 RaiseUnsupportedCapabilityError.
3808 * IDataItemContainer.cs: Added new properties.
3809 * Page.cs: Implemented Form property.
3810 * Control.cs: Fixed formatting.
3811 * StateManagedCollection.cs: Track view state of items loaded
3814 2005-02-22 Lluis Sanchez Gual <lluis@novell.com>
3816 * FilterableAttribute.cs: Fix endless loop.
3818 2005-02-18 Lluis Sanchez Gual <lluis@novell.com>
3820 * Page.cs: Implemented missing events.
3822 2005-02-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3824 * BoundPropertyEntry.cs:
3826 * TwoWayBoundPropertyEntry.cs: implemented.
3828 2005-02-10 Lluis Sanchez Gual <lluis@novell.com>
3830 * Page.cs: Added support for validation groups. Some fixes in
3831 SavePageControlState().
3832 * IFilterResolutionService.cs: Removed extra field.
3833 * INavigateUIData.cs: Added missing field.
3834 * ICheckBoxControl.cs, IStaticTextControl.cs, ITextControl.cs:
3835 Implemented new interfaces.
3837 2005-02-04 Lluis Sanchez Gual <lluis@novell.com>
3839 * Page.cs: Implemented support for cross page postback. Implemented
3840 support for postback with options. Fixed several method and property
3842 * PostBackOptions.cs: Added some TODOs.
3844 2005-02-02 Lluis Sanchez Gual <lluis@novell.com>
3846 * ParseChildrenAttribute.cs: Set the correct default value for the
3849 2005-01-28 Lluis Sanchez Gual <lluis@novell.com>
3851 * ParseChildrenAttribute.cs: Added 2.0 property.
3852 * Pair.cs, Triplet.cs: Make classes serializable and sealed in 2.0.
3853 * Page.cs: Added support for control state.
3854 * TemplateBuilder.cs: ContainerType should be internal.
3855 * Control.cs: Added some new 2.0 methods.
3857 2005-01-21 Lluis Sanchez Gual <lluis@novell.com>
3859 * PageParser.cs: Read the MasterPageFile attribute.
3860 * UserControlParser.cs: Not sealed any more since we need to inherit from
3861 it. Added new constructor with an additional "type" parameter.
3862 * MasterPageParser.cs: Parser for master pages.
3863 * Page.cs: Added support for master pages.
3864 * MasterPage.cs: Implemented.
3866 2005-01-10 Lluis Sanchez Gual <lluis@novell.com>
3868 * TemplateBuilder.cs: Added a special constructor that takes an
3869 attribute provider as parameter. The container type for the template
3870 may be defined in a TemplateContainerAttribute.
3871 * ControlBuilder.cs: Create the TemplateBuilder using that special
3873 * TemplateContainerAttribute.cs: Added 2.0 property and ctor.
3875 2004-12-20 Lluis Sanchez Gual <lluis@novell.com>
3877 * IStyleSheet.cs: Added missing "using".
3878 * Page.cs: Implemented Header property.
3879 * CssStyleCollection.cs: Made BagToString method internal.
3880 * RootBuilder.cs: Register HtmlHead control.
3882 2004-12-17 Lluis Sanchez Gual <lluis@novell.com>
3884 * CssStyleCollection.cs: Minor (!) fix.
3885 * HtmlTextWriter.cs: Register names for new 2.0 styles.
3887 2004-12-17 Lluis Sanchez Gual <lluis@novell.com>
3889 * CssStyleCollection.cs: Make it work as a standalone collection.
3890 * HtmlTextWriter.cs: Added static method for getting style names.
3892 2004-12-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3894 * ControlCollection.cs: fix off-by-one and store a null at the end to
3895 remove the reference to the removed control.
3897 2004-12-10 Lluis Sanchez Gual <lluis@novell.com>
3899 * ClientScriptManager.cs: Added GetScriptLiteral helper method.
3901 2004-12-02 Lluis Sanchez Gual <lluis@novell.com>
3903 * Page.cs: Added support for callback events. Moved theform variable
3904 outside the __doPostBack function, so it can be used by other
3906 * StateBag.cs: Implemented SetDirty().
3908 2004-11-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3910 * Control.cs: when saving "Visible" into the ViewState, save the value
3911 for this precise control, as using the Visible property might give us
3912 Control's parent visibility. Fixes bug #69200.
3914 2004-11-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3916 * Control.cs: fixed ResolveUrl for relative URLs when using cookie-less
3919 * System.Web.Util/UrlUtils.cs: made (Insert|Get|Remove)SessionId use
3920 the appRoot + SessionID + vpath format.
3922 Fixes the 3 issues reported in bug #66623.
3924 2004-11-26 Lluis Sanchez Gual <lluis@novell.com>
3926 * Page.cs: Moved code for managing client scripts to ClientScriptManager,
3927 which is public in 2.0 and internal in 1.1.
3928 * ClientScriptManager.cs: Implemented.
3930 2004-11-25 Sanjay Gupta <gsanjay@novell.com>
3932 * DataSourceView.cs: Removed extra method.
3934 2004-11-24 Sanjay Gupta <gsanjay@novell.com>
3936 * DataSourveViewSelectCallback.cs: Corrected method signature.
3938 2004-11-23 Lluis Sanchez Gual <lluis@novell.com>
3940 * ControlBuilder.cs: Always check for the ParseChildrenAttribute,
3941 even if the class doesn't implement IParserAccessor.
3942 * WebResourceAttribute.cs: Allow multiple attributes of this type.
3944 2004-11-15 Lluis Sanchez Gual <lluis@novell.com>
3946 * DataSourceView.cs: Moved here implementation of DataSourceViewChanged
3947 from SqlDataSourceView.cs.
3949 2004-11-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3951 * Control.cs: unified a few bool fields into an int one.
3953 * ControlCollection.cs: use an array internally instead of always
3954 allocating an arraylist. Also added our own enumerator.
3956 * EmptyControlCollection.cs: there's no 'special' ctor now in the base
3959 2004-11-05 Sanjay Gupta <gsanjay@novell.com>
3961 * DataSourceView.cs: Changes in access modifiers of methods.
3963 2004-10-20 Sanjay Gupta <gsanjay@novell.com>
3965 * DataSourceCapabilities.cs: Added Flags attribute.
3966 * DataSourceSelectArguments.cs: Updated.
3967 * DataSourveView.cs: Updated.
3969 2004-10-19 Sanjay Gupta <gsanjay@novell.com>
3971 * HierarchicalDataSourceView.cs: Corrected class definition and updated.
3973 2004-10-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3975 * HierarchicalDataSourceView.cs: fix typo.
3977 2004-10-18 Sanjay Gupta <gsanjay@novell.com>
3979 * HierarchicalDataSourceView.cs: Updated.
3981 2004-10-18 Sanjay Gupta <gsanjay@novell.com>
3983 * DataSourceSelectArguments.cs: Initial implementation.
3985 2004-10-12 Sanjay Gupta <gsanjay@novell.com>
3987 * UrlPropertyAttribute.cs: Corrected implementation of Equals () method.
3989 2004-10-12 Sanjay Gupta <gsanjay@novell.com>
3991 * UrlTypes.cs: Updated.
3993 2004-10-12 Sanjay Gupta <gsanjay@novell.com>
3995 * UrlPropertyAttribute.cs: Added new file.
3997 2004-10-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3999 * Control.cs: even if the control has no children the naming container
4000 may contain the control we're looking for. Fixes bug #67304.
4002 2004-09-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4004 * AspGenerator.cs: added OtherTags.
4006 2004-09-24 Sanjay Gupta <gsanjay@novell.com>
4008 * ControlValuePropertyAttribute.cs: Initial implementation.
4010 2004-09-24 Sanjay Gupta <gsanjay@novell.com>
4012 * IPaginationContainer.cs: Corrected name of class.
4014 2004-09-24 Sanjay Gupta <gsanjay@novell.com>
4016 * IDReferencePropertyAttribute.cs: Completed implementation.
4018 2004-09-24 Sanjay Gupta <gsanjay@novell.com>
4020 * ThemeableAttribute.cs:
4021 * FilterableAttribute.cs: Code scrubbing and optimization.
4023 2004-09-14 Sanjay Gupta <gsanjay@novell.com>
4025 * ThemeableAttribute.cs: Completed implementation.
4027 2004-09-14 Sanjay Gupta <gsanjay@novell.com>
4029 * FilterableAttribute.cs: Completed implementation.
4031 2004-09-14 Sanjay Gupta <gsanjay@novell.com>
4033 * Control.cs: Added new attributes and a method.
4034 * FilterableAttribute.cs: New attribute, initial implementation.
4035 * ThemeableAttribute.cs: New attribute, initial implemenataion.
4037 2004-09-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4039 * TemplateParser.cs: ensure bin directory exists before trying to access
4040 it. Fixes bug #65446 (not closed yet due to dependencies).
4042 2004-09-09 Sanjay Gupta <gsanjay@novell.com>
4044 * Control.cs: Implemented methods of interface IExpressionAccessor.
4046 2004-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4048 * SimpleWebHandlerParser.cs: correctly cache Type instead of the
4049 assembly for ashx/asmx. Otherwise we need to open the file and check
4050 for the class name in there. Thanks to Ben for pointing this out.
4052 2004-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4054 * TemplateParser.cs: removed creation of StringWriter. It's not used.
4055 * Control.cs: don't create the EventHandlerList until requested.
4057 2004-09-03 Sanjay Gupta <gsanjay@novell.com>
4059 * Control.cs: Added new interfaces implemented in .Net 2.0.
4060 * ExpressionBinding.cs: Added new class.
4061 * ExpressionBindingCollection.cs: Added new class.
4063 2004-09-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4065 * LiteralControl.cs: stylized. This control has EnableViewState disabled
4066 by default and doesn't get an automatic ID. When text is null -> "".
4068 2004-08-31 Sanjay Gupta <gsanjay@novell.com>
4070 * ControlSkinProc.cs:
4071 * DataSourceViewOperationCallback.cs:
4072 * DataSourceViewSelectCallback.cs:
4073 * ExtractTemplateValuesMethod.cs: Explicit modifier "sealed" not
4074 required in definition as delegates by default are sealed.
4076 2004-08-31 Sanjay Gupta <gsanjay@novell.com>
4078 * IDReferencePropertyAttribute.cs: Corrected and changed from interface
4080 * IMobileTextWriter.cs: Corrected method signatures.
4082 2004-08-09 Sanjay Gupta <gsanjay@novell.com>
4084 * ControlSkinProc.cs:
4085 * DataSourceViewOperationCallback.cs:
4086 * DataSourceViewSelectCallback.cs:
4087 * ExtractTemplateValuesMethod.cs: Added new delegates.
4089 2004-08-06 Sanjay Gupta <gsanjay@novell.com>
4091 * IBindableTemplate.cs:
4092 * ICallbackEventHandler.cs:
4093 * IControlBuilderAccessor.cs:
4094 * IControlDesignerAccessor.cs:
4095 * IControlTypeFilter.cs:
4096 * IDataItemContainer.cs:
4097 * IDataSourceViewSchemaAccessor.cs:
4098 * IDReferencePropertyAttribute.cs:
4099 * IExpressionsAccessor.cs:
4100 * IFilterResolutionService.cs:
4101 * IItemPaginationInfo.cs:
4102 * IMobileTextWriter.cs:
4104 * IPaginationContainer.cs:
4105 * IPaginationInfo.cs:
4106 * IResourceResolutionService.cs:
4107 * IResourceUrlGenerator.cs:
4108 * IStateFormatter.cs:
4110 * IThemeResolutionService.cs:
4111 * IUrlResolutionService.cs:
4112 * IUserControlTypeResolutionService.cs: Added new files for Interfaces.
4114 2004-08-05 Sanjay Gupta <gsanjay@novell.com>
4116 * PostBackOptions.cs: Added new file and implemented the class.
4118 2004-08-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4120 * HtmlTextWriterTag.cs: readded author name.
4122 2004-08-04 Sanjay Gupta <gsanjay@novell.com>
4124 * HtmlTextWriterAttribute.cs:
4125 * HtmlTextWriterStyle.cs: Added .Net 2.0 enumerations.
4126 * CompilationMode.cs:
4127 * ConflictOptions.cs:
4128 * DataSourceCacheExpiry.cs:
4129 * DataSourceCapabilities.cs:
4130 * DataSourceOperation.cs:
4131 * TemplateContentType.cs:
4132 * TemplateInstance.cs:
4134 * VerificationConditionalOperator.cs:
4135 * VerificationReportLevel.cs:
4136 * VerificationRule.cs:
4137 * XhtmlMobileDocType.cs: Added enumerations.
4139 2004-07-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4141 * Control.cs: style. Reverted previous patch modification of
4142 TemplateSourceDirectory (failed when the control is reparented). Use
4143 HasControls() and Controls all over instead of _controls, as Controls
4144 property and HasControls() might be overriden.
4146 2004-07-27 Alon Gazit <along@mainsoft.com>
4148 * Control.cs: Changed the implementation of TemplateSourceDirectory
4149 and GetDefaultName(). replaced foreach statements with for statements,
4150 in order to improve performence.
4152 2004-07-27 Alon Gazit <along@mainsoft.com>
4154 * Page.cs: changed the implementation of GetViewStateString().
4155 if the view state object is null there is no need to perform
4158 2004-07-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4160 * TemplateControl.cs: don't include private methods of base classes when
4161 auto-attaching events. Fixes bug 61569.
4163 2004-07-14 Alon Gazit <along@mainsoft.com>
4165 * HtmlTextWriter.cs: changed the Hashtables to case insensitive.
4166 2004-07-08 Pablo Baena <pbaena@gmail.com>
4168 * Page.cs: added workaround for __doPostBack script on Netscape 4.xx
4170 2004-07-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4172 * Page.cs: added additional checks for saving/displaying trace data.
4174 * PageParser.cs: removed checks for trace enabled in configuration
4177 2004-06-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4179 * ControlCollection.cs: when clearing the control collection, tell the
4180 owners about the removal. Fixes bug #60800.
4182 2004-06-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4184 * Page.cs: don't nullify _context after processing the request as there
4185 are events not triggered yet. Fixes bug #60726.
4187 2004-06-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4189 * HtmlTextWriter.cs: only create a closing tag for unknown tags. Fixes
4192 2004-06-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4195 * UserControlParser.cs: set the page/user control base type even when no
4196 default directive provided. Fixes bug #60572.
4198 2004-06-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4200 * PageParser.cs: use default trace settings from web.config and check
4201 if trace is only requested for local connections. Fixes bug #60180.
4203 2004-06-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4205 * SimpleWebHandlerParser.cs: implemented GetCompiledTypeFromCache. When
4206 we read the default directive, check the cache for the Type and if
4207 present, don't keep reading and store the type found.
4209 * WebHandlerParser.cs:
4210 * WebServiceParser.cs: try GetCompiledTypeFromCache before actually
4213 2004-06-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4215 * Control.cs: properly fixed bug #59794.
4217 2004-06-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4220 (ResolveUrl): fixed typo when dealing with relative urls. Closes bug
4223 2004-06-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4225 * SimpleWebHandlerParser.cs:
4226 * TemplateParser.cs: pass the language when compiling from a file.
4228 2004-06-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4230 * SimpleWebHandlerParser.cs: if we have a global.asax, move its
4231 reference to the end to help mcs loading the assemblies. Fixes bug
4234 * TemplateParser.cs: same as above. Removed some kludges to workaround
4235 loading assemblies from bin path that are now in the runtime. Don't
4236 load the assemblies in bin if not needed, but still reference them
4239 2004-06-07 Alon Gazit <along@mainsoft.com>
4240 * Page.cs: Changed Page.ProcessPostData().
4241 After the change ,the state of controls that aren't visible is saved
4244 2004-06-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4246 * Page.cs: removed obsolete MonoTODO from RegisterOnSubmitStatement.
4248 2004-06-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4250 * Page.cs: IsPostBack also returns true when method is GET and we have
4251 viewstate information in the query string. Fixes bug #58151.
4253 2004-06-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4255 * Page.cs: removed obsolete TODO. Only check if Trace is enabled, not
4256 HttpRutime.TraceManager.
4258 * PageParser.cs: for 'trace' we have 2 variables now. Added support
4259 for 'buffer' attribute.
4261 2004-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4263 * Page.cs: implemented ClientTarget.
4264 * PageParser.cs: support for clientTarget and check for validity.
4266 2004-06-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4269 * Html32TextWriter.cs:
4270 * HtmlTextWriter.cs:
4271 * SimpleWebHandlerParser.cs:
4272 * TemplateControl.cs: Added protected missing members and attributes.
4274 2004-06-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4276 * ObjectStateFormatter.cs: use ObjectFormatter methods instead of
4277 calling a protected method of another object.
4279 2004-06-03 Atsushi Enomoto <atsushi@ximian.com>
4281 * ObjectStateFormatter.cs : csc build fix. Protected Read()/Write()
4282 (of other objects) are called in TypeConverterFormatter.
4284 2004-06-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4286 * ObjectStateFormatter.cs: before choosing the binary formatter, check
4287 if the object type has a TypeConverter that can convert to/from string.
4290 * Page.cs: call GetViewStateString from outside the WriteLine. This
4291 allows writing to the Response when getting the string without breaking
4294 2004-06-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4296 * HtmlTextWriter.cs: render end tag for unknown tags.
4297 Patch frmo Markus Krutner. Fixes bug #59466.
4299 2004-05-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4301 * Page.cs: call DeterminePostBackMode only once per request. Patch by
4304 2004-05-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4306 * Html32TextWriter.cs: stub contributed by Matthijs ter Woord
4309 * ObjectTagBuilder.cs: remove the HasBody override as MS does not have
4312 2004-05-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4314 * SimpleWebHandlerParser.cs:
4315 * TemplateParser.cs: for the assembly names given in the 'assembly'
4316 attribute, use LoadWithPartialName instead of Load.
4317 2004-03-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4319 * Page.cs: return HttpContext.Current if _context has not yet been
4320 assigned to. Fixes bug #55245.
4322 2004-03-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4324 * TemplateParser.cs: don't add import statement or assemblies from
4325 global.asax to every file. Fixes bug #55496.
4327 2004-03-09 Juraj Skripsky <juraj@hotfeet.ch>
4329 * DataBinder.cs: allow unquoted string expressions (e.g. "[test]") and
4330 handle single quotes and a few corner cases correctly (see test cases).
4332 2004-03-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4334 * TemplateControl.cs: fixed typos and added new method names to the set
4337 2004-02-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4339 * ControlBuilder.cs: added SetTagName().
4341 * ObjectTagBuilder.cs: use SetTagName so that we can properly close
4342 <object> builders if the closing tag is provided.
4344 2004-02-16 Jackson Harper <jackson@ximian.com>
4346 * Page.cs: Set cacheability for Location.DownStream.
4348 2004-02-10 Jackson Harper <jackson@ximian.com>
4350 * TemplateParser.cs: Use full path if the assembly is in the
4351 private bin directory. Patch by Gonzalo Paniagua Javier.
4353 2004-02-09 Jackson Harper <jackson@ximian.com>
4355 * Page.cs: Set cacheability for server side caching.
4357 2004-01-30 Jackson Harper <jackson@ximian.com>
4359 * Control.cs: Ensure that dynamically loaded controls are
4362 2004-01-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4364 * ApplicationFileParser.cs: check for error in directives. Use
4365 GlobalAsaxCompiler.CompileApplicationType for compiling.
4367 * ObjectTagBuilder.cs: load the Type and check for errors.
4369 * TemplateParser.cs: add assemblies and imports from global.asax.
4371 Now we properly create accessors for session and application objects in
4372 the application itself, pages and controls. First step for fixing
4375 2004-01-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4377 * TemplateControl.cs: small speedup for WireUpautomaticEvents. Thanks
4378 to Eric Lindvall for pointing this out.
4380 2004-01-15 Jackson Harper <jackson@ximian.com>
4382 * TemplateParser.cs: Detect if we are parsing a control or page
4384 * Page.cs: vary by params and vary by headers can be null now.
4386 2004-01-15 Martin Willemoes Hansen <mwh@sysrq.dk>
4388 * HtmlTextWriter.cs: Fixed OutputTab routine to generate correct
4391 2004-01-14 Jackson Harper <jackson@ximian.com>
4393 * Page.cs: If we have a postback that wasn't sent through a
4394 postback script (ie user hit submit on a input type=submit) call
4395 Validate so page validation occurs. This fixes bug #52770.
4397 2004-01-14 Jackson Harper <jackson@ximian.com>
4399 * Page.cs: Don't tell the response to cache anymore. This is done
4400 when the cacheability is modified by a callback. Set the cache's
4403 2004-01-14 Jackson Harper <jackson@ximian.com>
4405 * TemplateParser.cs: If varybyparam is set to "none" make it null
4406 so we dont get a param named null in the outputcache key.
4408 2004-01-14 Jackson Harper <jackson@ximian.com>
4410 * BasePartialCachingControl.cs: Use varyby attributes in key
4413 2004-01-14 Jackson Harper <jackson@ximian.com>
4415 * TemplateParser.cs: Add all the outputcache attribute error
4418 2004-01-13 Jackson Harper <jackson@ximian.com>
4420 * TemplateParser.cs: Add VaryByControls and Shared output cache
4421 properties. These are not assigned yet.
4422 * TemplateControlParser.cs: Do not ignore the OutputCache
4424 * BasePartialCachingControl.cs: Initial implementation. Keys are
4425 still not created properly.
4426 * StaticPartialCachingControl.cs: Assign properties in base class,
4427 implement CreateControl.
4429 2004-01-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4431 * ApplicationFileParser.cs: adde DefaultBaseTypeName property.
4433 * PageParser.cs: support validateRequest.
4435 * TemplateControlParser.cs: get default values from system.web/pages
4438 * TemplateParser.cs: added separate method for changing base type
4439 (Inherits or system.web/pages).
4441 * UserControlParser.cs: support system.web/pages defined base type.
4443 2004-01-11 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4445 * UserControl.cs: Added missing attribute, implemented method
4446 * Page.cs: Added missing attribute, implemented method
4448 2004-01-10 Jackson Harper <jackson@ximian.com>
4450 * Page.cs: Handle trace being enabled in the config file.
4452 2004-01-10 Jackson Harper <jackson@ximian.com>
4454 * Page.cs: Save trace data before rendering it.
4455 * System.Web.dll.sources: Add TraceData.cs
4457 2004-01-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4459 * Page.cs: removed a couple of MonoTODO on methods we're not gonna
4460 implement. Applied patch from Jan Jaros (mono-bug@jerryweb.info) to
4461 ensure that Unload event is raised. Fixes bug #52555.
4463 2004-01-02 Zoltan Varga <vargaz@freemail.hu>
4465 * KeyedList.cs: 'private' is not allowed on explicit interface
4466 implementations. Fixes 1.2 build.
4468 2003-12-31 Jackson Harper <jackson@ximian.com>
4470 * TemplateControlParser.cs: When registering tag prefixs make sure
4471 the file exists and throw the correct error if it does not.
4473 2003-12-25 Jackson Harper <jackson@ximian.com>
4475 * Page.cs: Throw error if the session is accessed when sessions
4478 2003-12-18 Jackson Harper <jackson@ximian.com>
4480 * Page.cs: Write Trace info.
4482 2003-12-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4484 * LosFormatter.cs: new ctor for 1.1. The default ctor is public.
4485 * Page.cs: added ViewStateUserKey and made RegisterclientScriptFile
4487 * PageParser.cs: the ctor is public.
4488 * PartialCachingAttribute.cs: added new ctor and Shared property.
4490 2003-12-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4492 * Page.cs: assign the ErrorPage to the context if we get an exception
4493 when processing the page which only calls Unload.
4495 * PageParser.cs: handle ErrorPage.
4497 2003-12-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4499 * ObjectStateFormatter.cs: added formatters for Unit and FontUnit, which
4500 are not [Serializable]. Fixes bug #52244.
4502 2003-12-16 Jackson Harper <jackson@ximian.com>
4504 * Page.cs: Render trace data when tracing is enabled.
4506 2003-12-15 Jackson Harper <jackson@ximian.com>
4508 * PageParser.cs: Add Trace and Trace mode attributes.
4510 2003-12-15 Jackson Harper <jackson@ximian.com>
4512 * Page.cs: Use the context trace object.
4514 2003-12-14 Alon Gazit <along@mainsoft.com>
4515 * AttributeCollection.cs: Changed AttributeCollection.Render().
4516 After the change attributes ,that their value is null, aren't
4519 2003-12-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4521 * Control.cs: remove a few dangling ^M, don't set values for fields
4522 that has the default value. If Visible is modified and we're tracking
4523 viewstate, save and restore it. Fixes bug #48689.
4525 2003-12-11 Jackson Harper <jackson@ximian.com>
4527 * Control.cs: Give null for the ID if it hasn't been explicitly
4528 set. This fixes bug #51520.
4530 2003-12-08 Jackson Harper <jackson@ximian.com>
4532 * PageParser.cs: Ignore the SmartNavigation attribute for now.
4534 2003-12-05 Jackson Harper <jackson@ximian.com>
4536 * DataBinder.cs (GetIndexedPropertyValue): Check if container is
4537 an IList and use a cast instead of reflection to retrieve the item
4538 if it is. Fixes bug #51759.
4540 2003-12-04 Alon Gazit <along@mainsoft.com>
4541 * Page.cs: Changed Page.ID so it will call Control.ID.
4544 2003-12-02 Jackson Harper <jackson@ximian.com>
4546 * Page.cs: Implemented registered array declarations. Patch by
4547 Benjamin Jemlich <pcgod@gmx.net>
4549 2003-12-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4551 * TemplateParser.cs: basic check for 'classname' attribute and added
4552 patch by pcgod@gmx.net for bug #51568, which fixes automatic class
4553 names for pages starting with a number.
4555 2003-11-30 Ben Maurer <bmaurer@users.sourceforge.net>
4557 * LosFormatter.cs: Use ObjectStateFormatter. Pretty big size
4560 * ObjectStateFormatter.cs: Comment out tracing.
4562 2003-11-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4564 * Page.cs: fixed UICulture, LCID and Culture. Set the thread
4565 [UI]Culture before processing the request.
4567 * PageParser.cs: read Culture, UICulture and LCID attributes. Added
4568 properties for these. Partially contributed by Mohammad Damt.
4572 2003-11-27 Jackson Harper <jackson@ximian.com>
4574 * TemplateParser.cs: Ignore aspCompat attribute. This fixes bug
4577 2003-11-22 Ben Maurer <bmaurer@users.sourceforge.net>
4579 * ObjectStateFormatter.cs: Fix bug when reading small ints.
4580 Add some tracing so we can see what is going on.
4582 2003-11-21 Jackson Harper <jackson@ximian.com>
4584 * Page.cs: Set vary by params when cache location is Server.
4586 2003-11-21 Ben Maurer <bmaurer@users.sourceforge.net>
4588 * ObjectStateFormatter.cs: v2 file. In v1.x this will be
4589 internal as LosFormatter will eventually use it to save
4592 2003-11-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4594 * PersistChildrenAttribute.cs:
4595 * PersistenceModeAttribute.cs: implemented.
4597 * TODO: Removed file.
4598 * OutputCacheLocation.cs:
4599 * TemplateControlParser.cs:
4600 * HtmlInputFile.cs: class status based fixes.
4602 2003-11-19 Jackson Harper <jackson@ximian.com>
4604 * Page.cs: Always set the cache expire time. Tell the response to
4605 cache itself for server side cached pages.
4607 2003-11-19 Jackson Harper <jackson@ximian.com>
4609 * Control.cs: Remove ResolveBaseUrl. ResolveUrl does the same
4610 thing, some corner cases still need work though. Was this the
4611 shortest lived method in the history of mono?
4613 2003-11-19 Jackson Harper <jackson@ximian.com>
4615 * Control.cs: New method for resolving urls that use ~/ to denote
4616 the applications base directory.
4618 2003-11-19 Jackson Harper <jackson@ximian.com>
4620 * TemplateParser.cs: Fix typo in error message.
4622 2003-11-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4624 * TemplateControlParser.cs: support @Reference. Fixes bug #49572. Thanks
4627 2003-11-19 Todd Berman <tberman@gentoo.org>
4630 * KeyedListEnumerator.cs: New v2 implementations.
4632 2003-11-17 Ben Maurer <bmaurer@users.sourceforge.net>
4634 * StateManagedCollection.cs: Implement.
4636 2003-11-13 Jackson Harper <jackson@ximian.com>
4638 * Page.cs: Initial implementation of InitOutputCache.
4639 * TemplateParser.cs: Page OutputCache options
4641 2003-11-09 Ben Maurer <bmaurer@users.sourceforge.net>
4643 * HierarchicalDataSourceControl.cs: Implement.
4645 2003-11-09 Ben Maurer <bmaurer@users.sourceforge.net>
4647 * XPathBinder.cs: Implemented.
4649 2003-11-08 Ben Maurer <bmaurer@users.sourceforge.net>
4651 * DataSourceView.cs:
4653 * ListSourceHelper.cs:
4654 * DataSourceControl.cs:
4655 * HierarchicalDataSourceView.cs:
4656 * IHierarchicalDataSource.cs: Move v2 stuff.
4658 2003-11-07 Jackson Harper <jackson@ximian.com>
4660 * Control.cs (ResolveUrl): Special case for urls that consist of
4661 only a page anchor. ie <a href="#top">. This fixes bug #50165.
4663 2003-11-07 Ben Maurer <bmaurer@users.sourceforge.net>
4665 * IHierarchicalEnumerable.cs:
4666 * IHierarchyData.cs:
4667 * INavigateUIData.cs: New v2 interfaces.
4669 2003-11-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4671 * Page.cs: patch by Alon Gazit <along@mainsoft.com> to remove extra
4672 space in generated javascript.
4674 2003-11-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4676 * LosFormatter.cs: encoding updates.
4677 * Page.cs: implemented CodePage and ContentType.
4678 * PageParser.cs: handle CodePage, ContentEncoding and ResponseEncoding
4681 2003-11-04 Ben Maurer <bmaurer@users.sourceforge.net>
4683 * Control.cs (GetWebResourceUrl): new v2 function
4684 * Page.cs (GetWebResourceUrl): ditto.
4685 make the JS we generate work with moz if the form is not a child
4687 * WebResourceAttribute.cs: Added, new v2 attribute.
4689 2003-10-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4691 * DesignTimeTemplateParser.cs: added FIXME related to PageParser.
4693 * PageParser.cs: initialize the parser in the constructor, not just
4694 before compiling and reference the application assembly.
4696 * SimpleWebHandlerParser.cs: reference the assembly that contains the
4699 * TemplateControl.cs:
4700 * TemplateControlParser.cs: fix BenM #1 bug. Now we pass correct virtual
4701 path and physical path when compiling a user control.
4703 * TemplateParser.cs: new AddApplicationAssembly ().
4704 * UserControlParser.cs: now we get valid values in the ctor.
4706 Referencing the application assembly fixes bug #49652.
4709 2003-10-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4711 * TemplateControl.cs: moved NoParamsInvoker class to its own file.
4713 2003-10-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4715 * BaseParser.cs: added CompilationConfig property.
4717 * TemplateParser.cs:
4718 * SimpleWebHandlerParser.cs: added CompilationConfig property.
4719 Don't hardcode assembly names any more, assemblies in bin are added
4720 depending on the configuration. The default language is also taken
4721 from the configuration.
4723 2003-10-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4725 * LosFormatter.cs: fixed bug #49604. Patch by yaronsh@mainsoft.com.
4727 2003-10-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4729 * Control.cs: removed some debug lines.
4730 * Page.cs: implemented RegisterOnSubmitStatement
4731 * TemplateControl.cs: fixed wire up for methods with no parameters.
4733 2003-10-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4735 * PageParser.cs: ignore ValidateRequest by now.
4737 2003-10-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4739 * System.Web.UI/TemplateControl.cs: support for wiring up events without
4742 2003-10-08 Pedro Martnez Juli <yoros@wanadoo.es>
4744 * PageParser.cs: drop some useless code.
4746 2002-10-29 Gaurav Vaish <gvaish_mono AT lycos.com>
4748 * Utils.cs : GetScriptLocation(HttpContext) - Partial Implementation.
4750 2003-10-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4752 * System.Web.UI/PageParser.cs:
4753 * System.Web.UI/TemplateControlParser.cs: honour the input file given
4756 2003-09-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4759 (ClearChildViewState): doh! Don't clear control viewstate but the
4760 viewstate of possible children.
4761 (LoadViewStateRecursive): load viewstate even when control is not
4764 The rest are just dangling ^M removed.
4766 * DataBoundLiteralControl.cs:
4767 (LoadViewState): we get an object [], not a string [].
4769 2003-09-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4771 * Control.cs: implemented ClearChildViewState ().
4773 2003-09-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4775 * Page.cs: store unique IDs for controls requiring postback. Fixes bug
4778 2003-09-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4780 * SimpleWebHandlerParser.cs: add the ashx/asmx file itself to the
4781 dependencies so that it's recompiled when changed.
4783 2003-09-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4785 * LosFormatter.cs: fixed Deserialize for empty viewstate.
4787 2003-08-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4789 * Page.cs: check if controls that require postback have
4790 been changed by an event and register them to be notified of data
4793 2003-08-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4795 * Control.cs: patch by yaronshkop@hotmail.com (Yaron Shkop) that fixes
4798 2003-08-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4800 * LosFormatter.cs: handle Unit and FonrUnit as special cases as they
4801 are not serializable. Fixes bug #47784.
4803 2003-08-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4805 * Control.cs: index the viewstates saved by the control position, not
4806 the control name. Fixes bug #47697.
4808 2003-08-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4810 * ControlCollection.cs:
4811 * EmptyControlCollection.cs: create a minimum ArrayList for this.
4813 * BaseParser.cs: added setter for BaseVirtualDir.
4815 * Page.cs: fixed message when restoring view state fails.
4816 * UserControlParser.cs: set the BaseVirtualDirectory to handle the case
4817 when a relative path to the control is given. Fixes bug #47685.
4819 2003-08-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4821 * Control.cs: when we load the viewstate for a control that has children
4822 viewstates and the child is not found, keep its viewstate around and
4823 wait until the child is added to load the viewstate. Fixes bug #47697.
4825 2003-08-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4827 * TemplateControl.cs: more Delegate.CreateDelegate fixes.
4829 2003-08-01 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4831 * PartialCachingControl.cs: is not abstract
4833 2003-08-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4835 * SimpleHandlerFactory.cs: implemented GetHandler.
4836 * WebHandlerParser.cs: new file that parses .ashx files.
4838 2003-07-30 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4840 * PersistenceModeAttribute.cs: Fixed wrong AttributeUsage
4842 2003-07-30 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4844 * UserControl.cs: Added attribute
4845 * BasePartialCachingControl.cs: New class and paritally implemented
4846 * DesignerDataBoundLiteralControl.cs: New class and implemented
4847 * DesignTimeTemplateParser.cs:
4848 * PartialCachingControl.cs:
4849 * StaticPartialCachingControl.cs: New class and paritally implemented
4851 2003-07-27 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4853 * ApplicationFileParser.cs: Fixed signature
4854 * DesignTimeParseData.cs: Added missing properties, implemented
4855 * Page.cs: Added attributes
4857 * TemplateControlParser.cs:
4858 * TemplateParser.cs:
4859 * UserControlParser.cs: Fixed signature
4861 2003-07-17 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4863 * HtmlControlPersistableAttribute.cs: Added
4864 * IgnoreUnknownContentAttribute.cs: Added
4866 2003-07-17 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4868 * IUserControlDesignerAccessor.cs: Added and implemented
4869 * Control.cs: Missing member added, added all attributes
4870 * Page.cs: Added attributes, fixed signature
4871 * TemplateControl.cs: Fixed signature, added all attributes
4872 * UserControl.cs: Added all attributes, added and implemented missing interface
4874 2003-07-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4876 * ControlCollection.cs: fixed bug #46472.
4878 2003-07-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4880 * SimpleWebHandlerParser.cs: implemented GetTypeFromBin.
4882 2003-07-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4884 * SimpleWebHandlerParser.cs: updated to new compilation interface.
4886 * TemplateParser.cs: use the new parameter when compiling.
4888 2003-07-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4890 * Page.cs: also keep the value for the second try on handling postback
4893 2003-05-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4895 * BaseParser.cs: fixed MapPath for non-rooted files.
4896 * PageParser.cs: don't pass a non-virtual file around.
4897 * TemplateControlParser.cs: InputFile uses MapPath now. Take care of
4898 the exception teh may be throw by MapPath on an invalid path.
4900 * TemplateParser.cs: removed unused method.
4901 * UserControlParser.cs: modified inputfile. The result is the same, but
4904 2003-05-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4906 * RootBuilder.cs: throw exception when the tagprefix is not valid or
4909 2003-05-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4911 * TemplateControlParser.cs: return after processing @Register.
4913 2003-05-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4915 * TemplateParser.cs: Added support for server side includes.
4917 2003-05-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4919 * TemplateControl.cs: fixed the flags used to find the methods that
4920 are automatically hooked up on events.
4922 * TemplateParser.cs: don't compile a source file directly. Use the
4925 2003-05-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4927 * BaseParser.cs: Location property is now here. Added a couple of
4928 convenience methods to throw a ParseException.
4930 * TemplateParser.cs:
4931 * TemplateControlParser.cs:
4932 * PageParser.cs: throw ParseException where appropiate.
4934 2003-05-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4936 * ApplicationFileParser.cs: use the generator to actually parse the
4939 * ControlBuilder.cs: small fix in NamingContainerType because
4940 TemplateBuilders have a null ControlType. When a control is appended
4941 to a parent, assign the child's parent.
4943 * UserControlParser.cs: fixed the value of InputFile.
4945 2003-04-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4947 * ApplicationFileParser.cs: store the Context and override
4948 BaseVirtualDir so that it's the application path.
4950 * BaseParser.cs: removed CurrentVirtualPath property.
4952 * TemplateControlParser.cs: use BaseVirtualDir.
4954 * UserControlParser.cs: removed CurrentVirtualPath.
4956 2003-04-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4958 * TemplateParser.cs: always reference all the assemblies in bin
4961 2003-04-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4963 * ApplicationFileParser.cs: it works now. Prior to these changes, we
4964 were using the compiler directly.
4966 * BaseParser.cs: added some useful properties and methods.
4968 * CodeBuilder.cs: use ILocation.
4969 * CodeRenderBuilder.cs: use ILocation.
4970 * CollectionBuilder.cs: use the RootBuilder to map tag names into Types.
4972 * ControlBuilder.cs: made it useful.
4974 * DataBindingBuilder.cs: the control type for data bound text is
4975 DataBoundLiteralControl now.
4977 * ObjectTagBuilder.cs: store some object tag attributes.
4979 * PageParser.cs: handle page-only directives.
4981 * RootBuilder.cs: bah.
4982 * SimpleWebHandlerParser.cs: made it dummy.
4983 * TemplateControl.cs: Modified file.
4985 * TemplateControlParser.cs: handle directives that are common to pages
4988 * TemplateParser.cs: utility methods and handling of directives that
4989 are common to app, page and user controls.
4991 * UserControl.cs: added ControlBuilderAttribute.
4993 * UserControlControlBuilder.cs: builder for user controls.
4994 * UserControlParser.cs: use the new interfaces.
4996 2003-04-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4998 * ControlBuilder.cs: line and fileName are protected now.
5000 * CodeBuilder.cs: base class for the next 2 files.
5001 * CodeRenderBuilder.cs: builder for code render.
5002 * DataBindingBuilder.cs: builder for data binding.
5004 2003-04-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5006 * ITagNameToTypeMapper.cs: made it internal.
5008 * ObjectTagBuilder.cs: builder for <object runat="server"> tag.
5010 * RootBuilder.cs: initial builder.
5012 2003-04-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5014 * CollectionBuilder.cs:
5015 * TemplateBuilder.cs: new classes derived from ControlBuilder that
5016 represent a property or a ITemplate.
5018 * ControlBuilder.cs: implemented all the missing bits.
5019 * TemplateParser.cs: added mapping from tag name to Type feature.
5021 2003-02-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5023 * Control.cs: have i definitely fixed naming container stuff this time?
5025 * LosFormatter.cs: activated binary serialization code.
5027 2003-02-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5030 (AddedControl): fixed default id assignation when the sequence of
5031 AddedControl until it's included in the page or one of its controls
5032 does not pass through a naming container.
5034 2003-02-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5036 * Control.cs: give different default names depending on the place where
5037 it is assigned. Implemented ResolveURl (no more ~ rendered in
5040 2003-02-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5042 * Control.cs: when adding a control, assign default names to th
5043 children that don't have one.
5045 2003-02-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5047 * SimpleWebHandlerParser.cs: modified to use the new parser interface.
5049 2003-01-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5051 * Control.cs: some more tweaks to naming containers stuff.
5052 * DataBinder.cs: don't throw exception if the container is null.
5054 * Page.cs: now we can render client scripts, startup scripts and hidden
5055 fields. Only render __VIEWSTATE if there is someone that will take care
5057 (RaisePostBackEvents): first try the last one that required raise event,
5058 then try __EVENTTARGET.
5060 2003-01-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5062 * Control.cs: fixes in UniqueID, FindControl, AddedControl,
5063 UnloadRecursive, InitRecursive. Reduced the size of __VIEWSTATE. Made
5064 FindControl work with NamingContainers.
5066 * ControlCollection.cs: notify the parent when clearing the collection.
5068 * LosFormatter.cs: Added debugging output and generate a valid
5069 viewstate even for unknown types.
5071 * Page.cs: GetPostBackEventReference now uses UniqueID. Reduced
5074 2003-01-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5076 * Page.cs: make it fire the LoadData related events also for controls
5077 such as ImageButton, whose variable(s) in the query string are of the
5078 form ctrl_name.x and only fire them once per control.
5080 2003-01-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5083 (GetPropertyValue): don't try to get the property as indexed
5085 2003-01-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5087 * DataBinder.cs: use TypeDescriptor to get the properties and their
5090 2003-01-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5093 (AddedControl): take the children to the same state of the parent.
5094 (InitRecursive): set the page of the children.
5096 * Page.cs: removed one line (it's done a few lines above).
5099 (OnInit): always call InitializeAsUserControl
5100 (InitializeAsUserControl): sets the page for the control.
5102 2003-01-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5104 * Control.cs: fixed bug #36037.
5106 2002-12-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5108 * BaseParser.cs: a couple of path fixes to make it work
5109 when the page is not in the root directory.
5111 2002-12-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5113 * Control.cs: fixed PreRenderRecursiveInternal. Thanks to kojoadams for
5116 2002-12-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5118 * BaseParser.cs: use MapPath and context to locate files.
5119 * Control.cs: implemented MapPathSecure.
5120 * TemplateControl.cs: use UrlUtils to generate the path.
5121 * TemplateControlParser.cs: use the context and MapPath.
5122 * UserControl.cs: implemented MapPath.
5123 * UserControlParser.cs: added context parameter to constructor.
5125 2002-12-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5127 * Control.cs: implemented MapPathSecure.
5128 * Page.cs: fixed Server property.
5130 2002-12-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5132 * DataBinder.cs: try the indexer if the property is not found in
5133 GetPropertyValue ().
5135 2002-12-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5137 * Control.cs: added AutoEventWireup internal property.
5139 * Page.cs: removed page events wire up from here.
5141 * TemplateControl.cs: new method WireupAutomaticEvents to hook up page
5142 and user controls events.
5144 * TemplateControlParser.cs: process the options that are applicable
5145 once we have the instance of the control.
5147 * TemplateParser.cs: also stores the options.
5149 * UserControl.cs: hook up events before initializing the control.
5152 2002-12-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5154 * Control.cs: new method to set bindingContainer value.
5155 * TemplateControl.cs: added controls are not binding containers.
5157 2002-12-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5159 * Control.cs: implemented TemplateSourceDirectory.
5160 * TemplateControl.cs: implemented LoadControl and LoadTemplate.
5162 2002-11-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5164 * UserControl.cs: fixed SetAttribute.
5165 * UserControlParser.cs: set the correct base type.
5167 2002-11-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5169 * TemplateParser.cs: fixed BaseType.
5170 * UserControlParser.cs: helper class to compile user controls.
5172 2002-11-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5174 * LosFormatter.cs: added DateTime to special types.
5176 2002-11-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5178 * LosFormatter.cs: added array serialization support. Disabled binary
5179 serialization and add some debugging code.
5181 * StateBag.cs: the length of the list of value can be less than the
5182 length if the list of keys when remaining values are null.
5184 2002-11-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5186 * Page.cs: return something useful in GetPostBackClientEvent.
5188 2002-11-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5190 * Page.cs: implemented FileDependecies and made it protected.
5192 2002-10-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5194 * Control.cs: save control names instead of the controls
5195 themselves to the ViewState.
5197 * LosFormatter.cs: added support for serializing unknown
5198 types. BinaryFormatter does not work so you better don't store anything
5199 of unknown Type in ViewState.
5201 * Page.cs: GetViewStateString works now using LosFormatter.
5202 Complete "Control execution lifecycle" by unloading all the child
5203 controls. Check for null in RaisePostBackEvents.
5204 LoadPageViewStateFromPersistenceMedium uses LosFormatter too.
5206 2002-10-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5208 * DataBinder.cs: implemented Eval and GetIndexedPropertyValue methods.
5210 2002-10-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5212 * LosFormatter.cs: Use WebEncoding.Encoding.
5215 * Page.cs: fixed namespace.
5217 2002-10-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5219 * Page.cs: set the context in ProcessRequest. Added a few trace calls.
5220 * Control.cs: added some trace information.
5222 2002-10-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5224 * SimpleHandlerFactory.cs: new handler for .ashx files.
5226 2002-09-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5228 * System.Web.UI/PageHandlerFactory.cs: new file.
5229 * System.Web.UI/PageParser.cs:
5230 * System.Web.UI/TemplateControlParser.cs: we are now able to compile
5231 pages and use HttpApplication, HttpRuntime and SimpleWorkerRequest.
5233 2002-09-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5235 * Control.cs: implemented ObBubbleEvent.
5236 * Page.cs: temporary workaround to make POST work with xsp server.
5238 2002-09-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5240 * Page.cs: fixed InvokeEventMethod now that Type.GetMethod does not
5243 2002-09-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5245 * SimpleWebHandlerParser.cs: New file.
5246 * WebServiceParser.cs: New file.
5248 2002-08-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5250 * LosFormatter.cs: almost fully implemented.
5252 2002-08-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5254 * CompiledTemplateBuilder.cs: InstantiateIn is virtual.
5255 * EmptyControlCollection.cs: throw correct exception.
5256 * LosFormatter.cs: stubbed out.
5257 * OutputCacheLocation.cs: little fix.
5259 2002-08-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5261 * System.Web.UI/ApplicationFileParser.cs:
5262 * System.Web.UI/BaseParser.cs:
5263 * System.Web.UI/PageParser.cs:
5264 * System.Web.UI/TemplateControl.cs:
5265 * System.Web.UI/TemplateControlParser.cs:
5266 * System.Web.UI/TemplateParser.cs: first steps to move xsp into
5269 2002-07-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5271 * Page.cs: request to render postback script can be after form started
5274 2002-07-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5276 * Page.cs: added more page events to invoke automagically if some
5277 methods are defined.
5279 2002-07-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5282 (SaveViewState): save state even when control is not visible.
5283 (SaveViewStateRecursive):
5284 (LoadViewStateRecursive): made internal.
5286 2002-07-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5288 * Page.cs: improved event raising to allow client postback for a wider
5289 variety of actions (clicking an hyperlink, ...).
5291 2002-07-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5293 * UserControl.cs: implemented Load/SaveViewState.
5295 2002-07-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5297 * AttributeCollection.cs:
5298 (Add): handle 'style' through styleCollection.
5300 * CssStyleCollection.cs:
5301 (fillStyle): renamed to FillStyle and made it internal.
5304 (GetViewStateString): fixed, broken after other recent changes.
5305 (ProcessPostData): allow a second try for postback data after OnLoad.
5306 (ProcessRequest): clear controls collection, removed call to
5309 2002-07-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5311 * Control.cs: uncommented Dispose.
5314 (DeterminePostBackMode): more checkings.
5315 (GetPostBackClientHyperLink): implemented.
5316 (GetPostBackEventReference): added some comments with the HTML that MS
5318 (ProcessRequest): fixed processing order. The page is unloaded after
5319 a request and regenerated from view state on subsequents posts.
5321 2002-07-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5323 * Control.cs: fixed related to ViewState. Added RemovedControl.
5325 * ControlCollection.cs: notify owner of control removal.
5327 * CssStyleCollection.cs: almost rewritten to make it render the style
5328 attribute after changes to it.
5330 * Page.cs: follow the guidelines in 'Control execution lifecycle'.
5333 * StateBag.cs: don't use IDictionary.GetEnumerator on the
5334 HybridDictionary: it makes the program give an InvalidCastException at
5337 2002-07-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5339 * Page.cs: fire Init and Load events for all children.
5341 2002-07-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5343 * UserControl.cs: New file.
5345 2002-07-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5347 * ControlBuilderAttribute.cs: finished implementation.
5349 2002-07-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5351 * ConstructorNeedsTagAttribute.cs: the default constructor sets the
5354 2002-07-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5356 * System.Web.UI/AttributeCollection.cs: added CssStyleCollection.
5358 * System.Web.UI/CssStyleCollection.cs: use a StateBag instead of a
5359 Hashtable. Added internal .ctor.
5361 * System.Web.UI/DataBinding.cs: propertyType is a Type. Implemented
5362 Equals and GetHashCode.
5364 * System.Web.UI/DataBoundLiteralControl.cs:
5366 (SaveViewState): implemented.
5368 * System.Web.UI/Page.cs: FileDependencies is not public.
5370 * System.Web.UI/ParseChildrenAttribute.cs: give a value to Default.
5373 (IsDefaultAttribute): implemented.
5375 2002-07-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5377 * Control.cs: fixed Visible property.
5378 * Page.cs: fixed GetViewStateString.
5380 2002-07-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5382 * System.Web.UI/Page.cs:
5383 (GetViewStateString): new function to give the server access to the
5384 generated view state string.
5387 2002-07-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5390 (SaveViewstateRecursive): implemented.
5391 (SaveViewState): fixed.
5392 (IParserAccessor.AddParsedSubObject): don't use 'this'.
5394 * Page.cs: added code to save view state to an xml file. It's not
5395 being used right now.
5397 2002-06-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5399 * System.Web.UI/LiteralControl.cs:
5400 Fixes based on class status page:
5402 - Add attributes (DefaultEvent, ParseChildren).
5404 - Explicitly implement some interfaces (IPostBackDataHandler
5405 and IPostBackEventHandler).
5406 - Implemented some missing methods.
5408 2002-06-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5410 * Control.cs: reimplemented FindControls.
5413 (.ctor): set the page for this control.
5414 (IsPostBack): return valid value.
5415 (DeterminePostBackMode): finished.
5416 (OnFormRender): render __VIEWSTATE (uses GetTypeHashCode()).
5417 (ProcessPostData): implemented. Raises change and postback events.
5418 (ProcessRequest): changed to support reuse of the instance.
5419 (RegisterRequiresPostBack): implemented.
5421 * ValidatorCollection.cs: implemented all methods.
5423 2002-06-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5426 * Page.cs: first attemp to save view state.
5428 * HtmlForm.cs: don't render Action.
5430 2002-06-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5432 * Page.cs: implemented more properties using information we already
5436 (VerifyRenderingInServerForm): implemented.
5438 2002-06-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5440 * Page.cs: changed InvokeEventMethod to use a GetMethod that works with
5441 out runtime. Renamed Page_Init and Page_Load.
5443 After this, we can load a dll and render HTML in linux.
5445 2002-06-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5448 (AddedControl): new function that is called whenever a control is
5449 added to a collection of controls in a container. It sets the defaults
5452 * ControlCollection.cs: call AddedControl in Add/AddAt.
5454 * DataBoundLiteralControl.cs: implemented constructor, Text, Render,
5455 SetStaticString and SetDataBoundString.
5457 * Page.cs: removed SetDefaults.
5459 2002-06-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5461 * CompiledTemplateBuilder.cs: new file. Used in the code generated
5465 (BindingContainer): implemented.
5466 (EnsureChildControls): avoid stack overflow.
5468 * DataBinder.cs: implemented Eval and PropertyValue.
5470 2002-06-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5472 * HtmlTextWriter.cs: fixed style attributes rendering (almost the same
5473 bug as in regular attributes).
5475 2002-06-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5477 * Control.cs: implemented PreventAutoID.
5480 (SetDefaults): don't set ID automatically if Control.PreventAutoID has
5483 2002-06-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5486 (Validators): if the collection is null, create one.
5487 (GetPostBackEventReference 2): don't throw exception.
5488 (GetPostBackClientEvent): return a string with containing the method
5489 name, the control name and the argument.
5491 2002-06-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5493 * Page.cs: SetPage is now called SetDefaults and also sets a default
5494 ID for controls that don't have one yet.
5496 2002-06-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5499 (GetPostBackClient):
5500 (RegisterRequiresPostBack): don't throw NotImplementedException to
5502 (ProcessRequest): set the current page as the Page property for *all*
5503 the controls, not just the direct children of the page.
5505 2002-06-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5508 (MapPathSecure): until security is implemented, return the same path
5509 received as argument.
5510 (RenderControl): call OnPreRender before rendering the control. So
5511 AdRotator can read its configuration file.Is there any other place
5512 where this should be done?
5514 * HtmlTextWriter.cs:
5515 (AddAttribute): fixed. Now it really stores attributes.
5516 (RenderBeginTag): fixed a couple of bugs (little ones but hard to find).
5518 2002-06-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5520 * ControlCollection.cs:
5521 (AddAt): if index is -1 behave as a plain Add.
5523 2002-06-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5525 * Page.cs: for each child control to render, assign Control.Page.
5526 Probably also needed in HtmlContainerControl derived classes.
5528 2002-06-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5530 * AttributeCollection.cs: don't need a Hastable. StateBag now works
5531 fine and takes care of the details.
5533 * Control.cs: added HasChildren property.
5535 * StateBag.cs: fixed a couple of nasty bugs.
5537 2002-06-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5539 * Page.cs: run OnInit, OnLoad y PreRender before rendering the page.
5540 Invoke Page_Init and/or Page_Load if the user supplied them (though
5541 this should depend on AutoEventWireUp attribute of Page directive).
5543 2002-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5545 * Control.cs: don't throw exception in ControlID. By now, it returns ID.
5548 (ProcessRequest): implemented.
5550 2002-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5552 * System.Web.UI/Page.cs: finished stubbing out. Implemented some
5555 2002-06-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5558 (FileDependencies): now is public public.
5559 (EnableViewStateMAC): uncommented and made protected.
5560 (GetTypeHashCode): added method.
5562 2002-05-24 Duncan Mak <duncan@ximian.com>
5564 * TemplateControl.cs (SetStringResourcePointer): Fixed typo.
5566 * StateBag.cs (Item): Changed the visibility level of the this
5569 Misc. formatting edits, fixing some bugs introduced by the indentation.
5571 * DataBinder.cs (Eval)
5572 (GetIndexedPropertyValue)
5573 (GetPropertyValue): Fixed return types.
5575 2002-05-21 Miguel de Icaza <miguel@ximian.com>
5577 * HtmlTextWriter.cs: Use this to change the member instances.
5579 2002-05-17 Duncan Mak <duncan@ximian.com>
5581 * AttributeCollection.cs:
5582 * ControlCollection.cs:
5583 * CssStyleCollection.cs:
5584 * DataBindingCollection.cs:
5585 * EmptyControlCollection.cs: Added missing Collection classes.
5587 2002-05-17 Duncan Mak <duncan@ximian.com>
5590 * TemplateParser.cs: Implemented. BaseParser is weird because
5591 there is no documentation on what it does.
5593 * ControlBuilder.cs:
5596 * DataBinding.cs: Added.
5598 * DataBoundLiteralControl.cs:
5599 * Triplet.cs: Added.
5601 * RenderMethod.cs: Added this delegate for Control.cs
5603 2002-05-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5605 * ValidationPropertyAttribute.cs: a couple of fixes to make it compile.
5607 2002-05-14 Duncan Mak <duncan@ximian.com>
5609 * ValidationPropertyAttribute.cs: Added to CVS.
5611 2002-05-10 Duncan Mak <duncan@ximian.com>
5613 * ConstructorNeedsTagAttribute.cs:
5614 * ControlBuilderAttribute.cs:
5615 * ImageClickEventArgs.cs:
5616 * ParseChildrenAttribute.cs:
5617 * PartialCachingAttribute.cs:
5618 * PersistChildrenAttribute.cs:
5619 * PersistenceModeAttribute.cs:
5620 * TemplateContainerAttribute.cs: Added to CVS.
5622 * PersistanceMode.cs: Removed, fixed typo.
5623 * PersistenceMode.cs: Replacing above.
5625 * StateBag.cs (this): Fixed indexer, it takes a string as the
5626 index, not an object.
5628 * ValidatorCollection.cs: Fixed typo, ValidatedCollection to ValidatorCollection.
5630 * Page.cs (Validators): return type should be ValidatorCollection,
5631 not ValidatedCollection.
5633 * TagPrefixAttribute.cs: Added to CVS.
5635 2002-05-07 Duncan Mak <duncan@ximian.com>
5637 * Utils.cs (GetClientValidatedEvent): Uncommented the 'Page' argument.
5639 2002-03-26 Gaurav Vaish <gvaish@iitk.ac.in>
5641 * DataBindingHandlerAttribute.cs
5643 * ToolboxDataAttribute.cs - Completed
5645 2002-01-03 Nick Drochak <ndrochak@gol.com>
5647 * DesignTimeParseData.cs: initialze static member to avoid compile
5649 * PropertyConverter.cs: remove uneeded exception variables from
5652 2002-01-02 Nick Drochak <ndrochak@gol.com>
5654 * DesignTimeParseData.cs: fix header to show correct class name
5656 2001-12-21 Gaurav Vaish <gvaish@iitk.ac.in>
5658 * StateBag.cs - Completed
5660 2001-12-19 Gaurav Vaish <gvaish@iitk.ac.in>
5662 * Pair.cs - Small undocumented class. Completed.
5664 2001-12-18 Gaurav Vaish <gvaish@iitk.ac.in>
5666 * DesignTimeParseData.cs - Initial implementation
5667 * StateBag.cs - Initial implementation
5669 2001-12-17 Gaurav Vaish <gvaish@iitk.ac.in>
5671 * PropertyConverter.cs - Undocumented class. Completed.
5672 * Utils.cs - Undocumented, private class.
5673 Initial implementation
5675 2001-08-28 Bob Smith <bob@thestuff.net>
5676 * Control.cs: Figured out some undocumented API.
5678 * BuildMethod.cs: Initial implementation.
5679 * BuildTemplateMethod.cs: Initial implementation.
5680 * HtmlTextWriterAttribute.cs: Initial implementation.
5681 * HtmlTextWriterStyle.cs: Initial implementation.
5682 * HtmlTextWriterTag.cs: Initial implementation.
5683 * IAttributeAccessor.cs: Initial implementation.
5684 * IDataBindingsAccessor.cs: Initial implementation.
5685 * ImageClickEventHandler.cs: Initial implementation.
5686 * INamingContainer.cs: Initial implementation.
5687 * IParserAccessor.cs: Initial implementation.
5688 * IPostBackDataHandler.cs: Initial implementation.
5689 * IPostBackEventHandler.cs: Initial implementation.
5690 * IStateManager.cs: Initial implementation.
5691 * ITagNameToTypeMapper.cs: Initial implementation.
5692 * ITemplate.cs: Initial implementation.
5693 * IValidator.cs: Initial implementation.
5694 * OutputCacheLocation.cs: Initial implementation.
5695 * PersistanceMode.cs: Initial implementation.
5696 * StateItem.cs: Initial implementation.
5698 2001-08-27 Bob Smith <bob@thestuff.net>
5700 * Control.cs: Bug fixes and implementations.
5702 2001-08-24 Bob Smith <bob@thestuff.net>
5704 * Control.cs: Bug fixes.
5706 2001-08-23 Bob Smith <bob@thestuff.net>
5708 * Control.cs: More implementation. Events reworked for performance.
5710 2001-08-22 Bob Smith <bob@thestuff.net>
5712 * LiteralControl.cs: Implemented.
5713 * Control.cs: Even more implementation (Events). What a beast.
5715 2001-08-20 Bob Smith <bob@thestuff.net>
5717 * Control.cs: More implementation. Not done yet. Shutter.
5719 2001-08-17 Bob Smith <bob@thestuff.net>
5721 * Control.cs: Partial implementation.