2002-12-17 Gonzalo Paniagua Javier * Control.cs: implemented MapPathSecure. * Page.cs: fixed Server property. 2002-12-15 Gonzalo Paniagua Javier * DataBinder.cs: try the indexer if the property is not found in GetPropertyValue (). 2002-12-13 Gonzalo Paniagua Javier * Control.cs: added AutoEventWireup internal property. * Page.cs: removed page events wire up from here. * TemplateControl.cs: new method WireupAutomaticEvents to hook up page and user controls events. * TemplateControlParser.cs: process the options that are applicable once we have the instance of the control. * TemplateParser.cs: also stores the options. * UserControl.cs: hook up events before initializing the control. 2002-12-12 Gonzalo Paniagua Javier * Control.cs: new method to set bindingContainer value. * TemplateControl.cs: added controls are not binding containers. 2002-12-12 Gonzalo Paniagua Javier * Control.cs: implemented TemplateSourceDirectory. * TemplateControl.cs: implemented LoadControl and LoadTemplate. 2002-11-27 Gonzalo Paniagua Javier * UserControl.cs: fixed SetAttribute. * UserControlParser.cs: set the correct base type. 2002-11-26 Gonzalo Paniagua Javier * TemplateParser.cs: fixed BaseType. * UserControlParser.cs: helper class to compile user controls. 2002-11-20 Gonzalo Paniagua Javier * LosFormatter.cs: added DateTime to special types. 2002-11-12 Gonzalo Paniagua Javier * LosFormatter.cs: added array serialization support. Disabled binary serialization and add some debugging code. * StateBag.cs: the length of the list of value can be less than the length if the list of keys when remaining values are null. 2002-11-07 Gonzalo Paniagua Javier * Page.cs: return something useful in GetPostBackClientEvent. 2002-11-02 Gonzalo Paniagua Javier * Page.cs: implemented FileDependecies and made it protected. 2002-10-31 Gonzalo Paniagua Javier * Control.cs: save control names instead of the controls themselves to the ViewState. * LosFormatter.cs: added support for serializing unknown types. BinaryFormatter does not work so you better don't store anything of unknown Type in ViewState. * Page.cs: GetViewStateString works now using LosFormatter. Complete "Control execution lifecycle" by unloading all the child controls. Check for null in RaisePostBackEvents. LoadPageViewStateFromPersistenceMedium uses LosFormatter too. 2002-10-29 Gonzalo Paniagua Javier * DataBinder.cs: implemented Eval and GetIndexedPropertyValue methods. 2002-10-27 Gonzalo Paniagua Javier * LosFormatter.cs: Use WebEncoding.Encoding. * Control.cs: * Page.cs: fixed namespace. 2002-10-24 Gonzalo Paniagua Javier * Page.cs: set the context in ProcessRequest. Added a few trace calls. * Control.cs: added some trace information. 2002-10-08 Gonzalo Paniagua Javier * SimpleHandlerFactory.cs: new handler for .ashx files. 2002-09-28 Gonzalo Paniagua Javier * System.Web.UI/PageHandlerFactory.cs: new file. * System.Web.UI/PageParser.cs: * System.Web.UI/TemplateControlParser.cs: we are now able to compile pages and use HttpApplication, HttpRuntime and SimpleWorkerRequest. 2002-09-25 Gonzalo Paniagua Javier * Control.cs: implemented ObBubbleEvent. * Page.cs: temporary workaround to make POST work with xsp server. 2002-09-22 Gonzalo Paniagua Javier * Page.cs: fixed InvokeEventMethod now that Type.GetMethod does not return pvt methods. 2002-09-11 Gonzalo Paniagua Javier * SimpleWebHandlerParser.cs: New file. * WebServiceParser.cs: New file. 2002-08-22 Gonzalo Paniagua Javier * LosFormatter.cs: almost fully implemented. 2002-08-18 Gonzalo Paniagua Javier * CompiledTemplateBuilder.cs: InstantiateIn is virtual. * EmptyControlCollection.cs: throw correct exception. * LosFormatter.cs: stubbed out. * OutputCacheLocation.cs: little fix. 2002-08-16 Gonzalo Paniagua Javier * System.Web.UI/ApplicationFileParser.cs: * System.Web.UI/BaseParser.cs: * System.Web.UI/PageParser.cs: * System.Web.UI/TemplateControl.cs: * System.Web.UI/TemplateControlParser.cs: * System.Web.UI/TemplateParser.cs: first steps to move xsp into System.Web. 2002-07-30 Gonzalo Paniagua Javier * Page.cs: request to render postback script can be after form started rendering. 2002-07-22 Gonzalo Paniagua Javier * Page.cs: added more page events to invoke automagically if some methods are defined. 2002-07-22 Gonzalo Paniagua Javier * Control.cs: (SaveViewState): save state even when control is not visible. (SaveViewStateRecursive): (LoadViewStateRecursive): made internal. 2002-07-21 Gonzalo Paniagua Javier * Page.cs: improved event raising to allow client postback for a wider variety of actions (clicking an hyperlink, ...). 2002-07-20 Gonzalo Paniagua Javier * UserControl.cs: implemented Load/SaveViewState. 2002-07-20 Gonzalo Paniagua Javier * AttributeCollection.cs: (Add): handle 'style' through styleCollection. * CssStyleCollection.cs: (fillStyle): renamed to FillStyle and made it internal. * Page.cs: (GetViewStateString): fixed, broken after other recent changes. (ProcessPostData): allow a second try for postback data after OnLoad. (ProcessRequest): clear controls collection, removed call to UnloadRecursive. 2002-07-19 Gonzalo Paniagua Javier * Control.cs: uncommented Dispose. * Page.cs: (DeterminePostBackMode): more checkings. (GetPostBackClientHyperLink): implemented. (GetPostBackEventReference): added some comments with the HTML that MS generates for that. (ProcessRequest): fixed processing order. The page is unloaded after a request and regenerated from view state on subsequents posts. 2002-07-17 Gonzalo Paniagua Javier * Control.cs: fixed related to ViewState. Added RemovedControl. * ControlCollection.cs: notify owner of control removal. * CssStyleCollection.cs: almost rewritten to make it render the style attribute after changes to it. * Page.cs: follow the guidelines in 'Control execution lifecycle'. Removed Xml code. * StateBag.cs: don't use IDictionary.GetEnumerator on the HybridDictionary: it makes the program give an InvalidCastException at runtime. Why? 2002-07-16 Gonzalo Paniagua Javier * Page.cs: fire Init and Load events for all children. 2002-07-14 Gonzalo Paniagua Javier * UserControl.cs: New file. 2002-07-13 Gonzalo Paniagua Javier * ControlBuilderAttribute.cs: finished implementation. 2002-07-12 Gonzalo Paniagua Javier * ConstructorNeedsTagAttribute.cs: the default constructor sets the property to false. 2002-07-12 Gonzalo Paniagua Javier * System.Web.UI/AttributeCollection.cs: added CssStyleCollection. * System.Web.UI/CssStyleCollection.cs: use a StateBag instead of a Hashtable. Added internal .ctor. * System.Web.UI/DataBinding.cs: propertyType is a Type. Implemented Equals and GetHashCode. * System.Web.UI/DataBoundLiteralControl.cs: (LoadViewState): (SaveViewState): implemented. * System.Web.UI/Page.cs: FileDependencies is not public. * System.Web.UI/ParseChildrenAttribute.cs: give a value to Default. (GetHashCode): (Equals): (IsDefaultAttribute): implemented. 2002-07-08 Gonzalo Paniagua Javier * Control.cs: fixed Visible property. * Page.cs: fixed GetViewStateString. 2002-07-05 Gonzalo Paniagua Javier * System.Web.UI/Page.cs: (GetViewStateString): new function to give the server access to the generated view state string. (Validate): d'oh! 2002-07-05 Gonzalo Paniagua Javier * Control.cs: (SaveViewstateRecursive): implemented. (SaveViewState): fixed. (IParserAccessor.AddParsedSubObject): don't use 'this'. * Page.cs: added code to save view state to an xml file. It's not being used right now. 2002-06-30 Gonzalo Paniagua Javier * System.Web.UI/LiteralControl.cs: Fixes based on class status page: - Add attributes (DefaultEvent, ParseChildren). - Fix declarations. - Explicitly implement some interfaces (IPostBackDataHandler and IPostBackEventHandler). - Implemented some missing methods. 2002-06-29 Gonzalo Paniagua Javier * Control.cs: reimplemented FindControls. * Page.cs: (.ctor): set the page for this control. (IsPostBack): return valid value. (DeterminePostBackMode): finished. (OnFormRender): render __VIEWSTATE (uses GetTypeHashCode()). (ProcessPostData): implemented. Raises change and postback events. (ProcessRequest): changed to support reuse of the instance. (RegisterRequiresPostBack): implemented. * ValidatorCollection.cs: implemented all methods. 2002-06-25 Gonzalo Paniagua Javier * Control.cs: * Page.cs: first attemp to save view state. * HtmlForm.cs: don't render Action. 2002-06-24 Gonzalo Paniagua Javier * Page.cs: implemented more properties using information we already have in Context. (OnFormRender): (OnFormPostRender): (VerifyRenderingInServerForm): implemented. 2002-06-22 Gonzalo Paniagua Javier * Page.cs: changed InvokeEventMethod to use a GetMethod that works with out runtime. Renamed Page_Init and Page_Load. After this, we can load a dll and render HTML in linux. 2002-06-20 Gonzalo Paniagua Javier * Control.cs: (AddedControl): new function that is called whenever a control is added to a collection of controls in a container. It sets the defaults except for Page. * ControlCollection.cs: call AddedControl in Add/AddAt. * DataBoundLiteralControl.cs: implemented constructor, Text, Render, SetStaticString and SetDataBoundString. * Page.cs: removed SetDefaults. 2002-06-19 Gonzalo Paniagua Javier * CompiledTemplateBuilder.cs: new file. Used in the code generated by xsp. * Control.cs: (BindingContainer): implemented. (EnsureChildControls): avoid stack overflow. * DataBinder.cs: implemented Eval and PropertyValue. 2002-06-18 Gonzalo Paniagua Javier * HtmlTextWriter.cs: fixed style attributes rendering (almost the same bug as in regular attributes). 2002-06-17 Gonzalo Paniagua Javier * Control.cs: implemented PreventAutoID. * Page.cs: (SetDefaults): don't set ID automatically if Control.PreventAutoID has been called. 2002-06-12 Gonzalo Paniagua Javier * Page.cs: (Validators): if the collection is null, create one. (GetPostBackEventReference 2): don't throw exception. (GetPostBackClientEvent): return a string with containing the method name, the control name and the argument. 2002-06-12 Gonzalo Paniagua Javier * Page.cs: SetPage is now called SetDefaults and also sets a default ID for controls that don't have one yet. 2002-06-12 Gonzalo Paniagua Javier * Page.cs: (GetPostBackClient): (RegisterRequiresPostBack): don't throw NotImplementedException to keep going. (ProcessRequest): set the current page as the Page property for *all* the controls, not just the direct children of the page. 2002-06-11 Gonzalo Paniagua Javier * Control.cs: (MapPathSecure): until security is implemented, return the same path received as argument. (RenderControl): call OnPreRender before rendering the control. So AdRotator can read its configuration file.Is there any other place where this should be done? * HtmlTextWriter.cs: (AddAttribute): fixed. Now it really stores attributes. (RenderBeginTag): fixed a couple of bugs (little ones but hard to find). 2002-06-09 Gonzalo Paniagua Javier * ControlCollection.cs: (AddAt): if index is -1 behave as a plain Add. 2002-06-06 Gonzalo Paniagua Javier * Page.cs: for each child control to render, assign Control.Page. Probably also needed in HtmlContainerControl derived classes. 2002-06-05 Gonzalo Paniagua Javier * AttributeCollection.cs: don't need a Hastable. StateBag now works fine and takes care of the details. * Control.cs: added HasChildren property. * StateBag.cs: fixed a couple of nasty bugs. 2002-06-05 Gonzalo Paniagua Javier * Page.cs: run OnInit, OnLoad y PreRender before rendering the page. Invoke Page_Init and/or Page_Load if the user supplied them (though this should depend on AutoEventWireUp attribute of Page directive). 2002-06-04 Gonzalo Paniagua Javier * Control.cs: don't throw exception in ControlID. By now, it returns ID. * Page.cs: (ProcessRequest): implemented. 2002-06-04 Gonzalo Paniagua Javier * System.Web.UI/Page.cs: finished stubbing out. Implemented some methods. 2002-06-03 Gonzalo Paniagua Javier * Page.cs: (FileDependencies): now is public public. (EnableViewStateMAC): uncommented and made protected. (GetTypeHashCode): added method. 2002-05-24 Duncan Mak * TemplateControl.cs (SetStringResourcePointer): Fixed typo. * StateBag.cs (Item): Changed the visibility level of the this [object] indexer. Misc. formatting edits, fixing some bugs introduced by the indentation. * DataBinder.cs (Eval) (GetIndexedPropertyValue) (GetPropertyValue): Fixed return types. 2002-05-21 Miguel de Icaza * HtmlTextWriter.cs: Use this to change the member instances. 2002-05-17 Duncan Mak * AttributeCollection.cs: * ControlCollection.cs: * CssStyleCollection.cs: * DataBindingCollection.cs: * EmptyControlCollection.cs: Added missing Collection classes. 2002-05-17 Duncan Mak * BaseParser.cs: * TemplateParser.cs: Implemented. BaseParser is weird because there is no documentation on what it does. * ControlBuilder.cs: * DataBinder.cs: * DataBinding.cs: Added. * DataBoundLiteralControl.cs: * Triplet.cs: Added. * RenderMethod.cs: Added this delegate for Control.cs 2002-05-15 Gonzalo Paniagua Javier * ValidationPropertyAttribute.cs: a couple of fixes to make it compile. 2002-05-14 Duncan Mak * ValidationPropertyAttribute.cs: Added to CVS. 2002-05-10 Duncan Mak * ConstructorNeedsTagAttribute.cs: * ControlBuilderAttribute.cs: * ImageClickEventArgs.cs: * ParseChildrenAttribute.cs: * PartialCachingAttribute.cs: * PersistChildrenAttribute.cs: * PersistenceModeAttribute.cs: * TemplateContainerAttribute.cs: Added to CVS. * PersistanceMode.cs: Removed, fixed typo. * PersistenceMode.cs: Replacing above. * StateBag.cs (this): Fixed indexer, it takes a string as the index, not an object. * ValidatorCollection.cs: Fixed typo, ValidatedCollection to ValidatorCollection. * Page.cs (Validators): return type should be ValidatorCollection, not ValidatedCollection. * TagPrefixAttribute.cs: Added to CVS. 2002-05-07 Duncan Mak * Utils.cs (GetClientValidatedEvent): Uncommented the 'Page' argument. 2002-03-26 Gaurav Vaish * DataBindingHandlerAttribute.cs - Completed * ToolboxDataAttribute.cs - Completed 2002-01-03 Nick Drochak * DesignTimeParseData.cs: initialze static member to avoid compile error * PropertyConverter.cs: remove uneeded exception variables from catch blocks. 2002-01-02 Nick Drochak * DesignTimeParseData.cs: fix header to show correct class name 2001-12-21 Gaurav Vaish * StateBag.cs - Completed 2001-12-19 Gaurav Vaish * Pair.cs - Small undocumented class. Completed. 2001-12-18 Gaurav Vaish * DesignTimeParseData.cs - Initial implementation * StateBag.cs - Initial implementation 2001-12-17 Gaurav Vaish * PropertyConverter.cs - Undocumented class. Completed. * Utils.cs - Undocumented, private class. Initial implementation 2001-08-28 Bob Smith * Control.cs: Figured out some undocumented API. * Added TODO. * BuildMethod.cs: Initial implementation. * BuildTemplateMethod.cs: Initial implementation. * HtmlTextWriterAttribute.cs: Initial implementation. * HtmlTextWriterStyle.cs: Initial implementation. * HtmlTextWriterTag.cs: Initial implementation. * IAttributeAccessor.cs: Initial implementation. * IDataBindingsAccessor.cs: Initial implementation. * ImageClickEventHandler.cs: Initial implementation. * INamingContainer.cs: Initial implementation. * IParserAccessor.cs: Initial implementation. * IPostBackDataHandler.cs: Initial implementation. * IPostBackEventHandler.cs: Initial implementation. * IStateManager.cs: Initial implementation. * ITagNameToTypeMapper.cs: Initial implementation. * ITemplate.cs: Initial implementation. * IValidator.cs: Initial implementation. * OutputCacheLocation.cs: Initial implementation. * PersistanceMode.cs: Initial implementation. * StateItem.cs: Initial implementation. 2001-08-27 Bob Smith * Control.cs: Bug fixes and implementations. 2001-08-24 Bob Smith * Control.cs: Bug fixes. 2001-08-23 Bob Smith * Control.cs: More implementation. Events reworked for performance. 2001-08-22 Bob Smith * LiteralControl.cs: Implemented. * Control.cs: Even more implementation (Events). What a beast. 2001-08-20 Bob Smith * Control.cs: More implementation. Not done yet. Shutter. 2001-08-17 Bob Smith * Control.cs: Partial implementation.