2005-08-31 Iain McCoy * System.Windows.Serialization/Parser.cs, System.Windows.Serialization/data-classes.txt, Mono.Windows.Serialization/ParserToCode.cs, Mono.Windows.Serialization/ParserConsumerBase.cs Mono.Windows.Serialization/XamlParser.cs: initial support for x:Key and StaticResource - these exist mainly to support the styling system that will eventually live in System.Windows 2005-08-28 Iain McCoy * Test/Parser.cs, Test/ParserToCode.cs: added tests for objects as values of dependency properties 2005-08-28 Iain McCoy * Test/ObjectWriter.cs, Test/Parser.cs: renamed to match the new world * Test/CodeWriter.cs, Test/ParserToCode.cs: renamed to match the new world 2005-08-28 Iain McCoy * System.Windows.Serialization/Parser.cs: a bit more refactoring to reduce code duplication * Mono.Windows.Serialization/ParserToCode.cs: similarly, refactoring to reduce code duplication 2005-08-28 Iain McCoy * Mono.Windows.Serialization/ParserConsumerBase.cs: move dispatching to handlers based on nodes returned from the parser into a base class * Mono.Windows.Serialization/ParserToCode.cs: use ParserConsumerBase * System.Windows.Serialization/Parser.cs: use ParserConsumerBase, support for objects as values of dependency properties 2005-08-27 Iain McCoy * Mono.Windows.Serialization/XamlParser.cs: added support for objects as values of dependency properties * Mono.Windows.Serialization/ParserToCode.cs: added support for code generation for objects as values of dependency properties * Test/XamlParser.cs: a test of same * System.Windows.Serialization/data-classes.txt: some minor refinements to enable the above * System.Windows.Serialization/Parser.cs: stubs for instantiating objects as values of dependency properties 2005-08-26 Iain McCoy * System.Windows.Serialization/data-classes-builder.pl: tighten up access controls for members that don't exist in microsoft's impl (internal access only is appropriate for these members) * Test/XamlParser.cs: use reflection to access the newly tightened-up members 2005-08-26 Iain McCoy * Mono.Windows.Serialization/CodeWriter.cs, Mono.Windows.Serialization/ParserToCode.cs: renamed CodeWriter to ParserToCode in order to more closely parallel System.Windows.Serialization.Parser * Test/CodeWriter.cs: changed to test the new ParserToCode class 2005-08-24 Iain McCoy * Mono.Windows.Serialization/ObjectWriter.cs, System.Windows.Serialization/Parser.cs: renamed ObjectWriter to Parser, made interface more similar * Test/ObjectWriter.cs: changed to test the new Parser class 2005-08-24 Iain McCoy * Mono.Windows.Serialization/XamlParser.cs: make internal * Mono.Windows.Serialization/CodeWriter.cs: add private member so that the tests can get at the type for XamlParser * Test/XamlParser.cs: use reflection to get the XamlParser type out of CodeWriter, create an instance of it and get nodes from it 2005-08-23 Iain McCoy * System.Windows.Serialization/XamlParser.cs: rearrange class so that it presents a ReadNextNode() method, repeated calling of which will produce the next node with information about the Xaml file being parsed * Test/XamlParser.cs: rewrite tests so that they use the new interface of the parser * System.Windows.Serialization/CodeWriter.cs: changed code generator so that it consumes the event stream from the parser * Test/CodeWriter.cs: made tests friendly to the new way CodeWriter works * System.Windows.Serialization/CodeWriter.cs: changed object builder so that it consumes the event stream from the parser * Test/ObjectWriter.cs: made tests friendly to the new way ObjectWriter works 2005-08-07 Iain McCoy * System.Windows.Serialization/data-classes-builder.pl, System.Windows.Serialization/data-classes.txt: add stuff to generate the zillion little classes to carry information around * PresentationFramework.dll.sources, Makefile: invoke data-classes-builder.pl as needed. 2005-07-25 Iain McCoy * Test/CodeWriter.cs: updated tests to reflect change in code generator 2005-07-25 Iain McCoy * Test/XamlParser.cs: added tests for correct catching of non-existent processing instructions, attempting to set a dependency property on an object that is not a dependency object and for code elements. * Test/CodeWriter.cs: added tests for partial class generation and for giving a specific name to an object to be stored as a property value * Mono.Windows.Serialization/XamlParser.cs: be more paranoid about children of code elements, have better punctuation if objecting to an incorrect mapping and throw exceptions on unknown property types. 2005-07-24 Iain McCoy * Test/XamlParser.cs, Mono.Windows.Serialization/XamlParser.cs: added a test for inappropriate usage of the Class attribute and fixed bug revealed by the test * Test/ObjectWriter.cs, PresentationFramework_test.dll.sources: added tests for object builder (based on tests for code generator) 2005-07-23 Iain McCoy * Test/XamlParser.cs: added test for events and delegates as property values * Test/CodeWriter.cs: added tests for events and for delegates as property values 2005-07-19 Iain McCoy * Mono.Windows.Serialization/XamlWriter.cs: renamed to IXamlWriter.cs 2005-07-18 Iain McCoy * Mono.Windows.Serialization/*, Test/*: change stupid CreateElementText name of method on XamlWriter to something marginally more sensible 2005-07-18 Iain McCoy * Mono.Windows.Serialization/CodeWriter.cs, Test/CodeWriter.cs Test/XamlWriter.cs: fix bug with explicitly naming objects in IAddChild blocks and add tests for same * Mono.Windows.Serialization/ObjectWriter.cs: support for arbitrary objects as property values. 2005-07-18 Iain McCoy * Test/CodeWriter.cs: added a bunch of tests for the code generator * Mono.Windows.Serialization/CodeWriter.cs: fixed a few bugs turned up by the tests * Test/CodeWriter.cs, Test/XamlParser.cs: added copyright/license notices 2005-07-18 Iain McCoy * Mono.Windows.Serialization/XamlParser.cs: some refactoring and improvements in error reporting * Test/XamlParser.cs: added a few tests and improved the readability of the baked-in XAML documents somewhat. Additionally added some comments explaining the approach taken by the tests and test scaffolding. 2005-07-17 Iain McCoy * Test/XamlParser.cs: add a bunch of tests * Mono.Windows.Serialization/XamlParser.cs: improve error reporting, don't accept elements without namespaces 2005-07-16 Iain McCoy * Test/XamlParser.cs: fix a bug in property tests, add tests for dependency properties and complex objects as property values. Actually include file in svn, oops. 2005-07-15 Iain McCoy * System.Windows.Serialization/Mapper.cs: make assembly loading more resilient * Mono.Windows.Serialization/ObjectWriter.cs: do conversions from strings and support dependency properties 2005-07-15 Iain McCoy * Mono.Windows.Serialization/CodeWriter.cs: don't try to convert objects into their parent types. 2005-07-15 Iain McCoy * Mono.Windows.Serialization/CodeWriter.cs: Better debugging information * Mono.Windows.Serialization/XamlParser.cs: Better debugging information, consolidated push() code * Mono.Windows.Serialization/CodeWriter.cs: inverted sourceType and destType in endPropertyObject * Mono.Windows.Serialization/XamlParser.cs: changed parseElement so that it doesn't stuff up the stack on empty elements and replaced an if statement spanning CurrentState with a case statement for clarity 2005-07-14 Iain McCoy * Mono.Windows.Serialization/XamlParser.cs, Mono.Windows.Serialization/XamlWriter.cs, Mono.Windows.Serialization/CodeWriter.cs: Initial support for creating complex objects as values of properties 2005-07-13 Iain McCoy * Mono.Windows.Serialization/XamlParser.cs: fixed bug in the code detecting that the file's contents must be finished, where it forbade whitespace after the XAML code 2005-07-11 Iain McCoy * Makefile, Test/XamlParser.cs: added a few tests * Mono.Windows.Serialization/CodeWriter.cs, Mono.Windows.Serialization/XamlParser.cs: fixed some bugs that the new tests turned up 2005-07-08 Iain McCoy * Mono.Windows.Serialization/ObjectWriter.cs: code to build objects at runtime from a xaml file. Current problems are with events and delegates (current behaviour is untested and possibly useless) and DependencyProperties (not implemented yet) 2005-07-08 Iain McCoy * Mono.Windows.Serialization/XamlParser.cs, Mono.Windows.Serialization/XamlWriter.cs, Mono.Windows.Serialization/CodeWriter.cs: removed TypeConverter stuff from everything except CodeWriter. By using TypeDescriptor, the generator doesn't need to be told about the converter and since the framework will find it we don't have to search for it. 2005-07-08 Iain McCoy * Mono.Windows.Serialization/XamlParser.cs, Mono.Windows.Serialization/XamlWriter.cs, Mono.Windows.Serialization/CodeWriter.cs: support for x:Name attributes and for considering Name properties to have the same affect. 2005-07-06 Iain McCoy * Mono.Windows.Serialization/CodeWriter.cs: cleaned up a little, added support for the `partial' class modifier 2005-07-06 Iain McCoy * Mono.Windows.Serialization/Mapping.cs: removed in favour of System.Windows.Serialization/Mapper.cs * System.Windows.Serialization/Mapper.cs: Added because it is the microsoft-documented mapping API * Mono.Windows.Serialization/XamlParser.cs: transition to the new mapper system, also some general converging on the name DependencyProperty throughout instead of ContextProperty or AttachedProperty. 2005-07-05 Iain McCoy * Mono.Windows.Serialization/XamlParser.cs, Mono.Windows.Serialization/XamlWriter.cs, Mono.Windows.Serialization/CodeWriter.cs: add support for attached properties as attributes, supplementing the existing support for attached properties as elements 2005-07-05 Iain McCoy * Mono.Windows.Serialization/XamlParser.cs, Mono.Windows.Serialization/XamlWriter.cs, Mono.Windows.Serialization/CodeWriter.cs: add support for delegate properties and for events * Mono.Windows.Serialization/XamlParser.cs, Mono.Windows.Serialization/XamlWriter.cs, Mono.Windows.Serialization/CodeWriter.cs, Mono.Windows.Serialization/Mapper.cs: tighten up types so that Type and PropertyInfo are passed instead of strings 2005-07-03 Iain McCoy * Mono.Windows.Serialization/XamlParser.cs: added support for Code elements, provide fully qualified name of type to attach to, skip xmns: attributes when processing, * Mono.Windows.Serialization/XamlWriter.cs: added WriteCode member, ordered methods by type of thing dealt with * Mono.Windows.Serialization/CodeWriter.cs: added support for Code elements, call empty constructor for objects, call TypeConverter almost correctly. 2005-07-03 Iain McCoy * Mono.Windows.Serialization/CodeWriter.cs: use CodeDom to do code generation * Mono.Windows.Serialization/CodeWriter.cs: * Mono.Windows.Serialization/XamlWriter.cs: * Mono.Windows.Serialization/XamlParser.cs: initial TypeConverter support 2005-07-02 Iain McCoy * whole folder: implementation of Xaml-related namespaces