2009-11-23 renato araujo oliveira * abstractmetabuilder.cpp: Fix topological sort for args with default expression 0 and value type. Reviewed by Lauro Moura 2009-11-20 Hugo Lima * CMakeLists.txt: - Fixes flags used with msvc. - Set the library output path to the tests directory, so the unit tests can find the apiextractory library on windows. Reviewed by Marcelo Lira * FindApiExtractor.cmake.in: Fixes various bugs on FindApiExtractor.cmake found when trying to compile generatorrunner on other platforms. * abstractmetalang.h: Export AbstractMetaField class. * reporthandler.cpp, typesystem.cpp, typesystem.h: Do not export global variables used only in typesystem.cpp. * CMakeLists.txt: Fix install command, so it works on windows. When compiling with msvc, use msvc specific flags, not the gcc ones. * reporthandler.cpp, reporthandler.h: Export a minimal set of classes in ReportHandler interface, to speep up compilation and avoid link errors on windows. 2009-11-19 Hugo Lima * typesystem.cpp: Do not exit with a assertion failure when the typesystem was not found. Reviewed by Marcelo Lira 2009-11-18 Hugo Lima * fileout.cpp: Do not attempt to write/read a file when the file name is a empty string. Reviewed by Marcelo Lira * apiextractormacros.h: Fix windows macros for dll export/import. Reviewed by Marcelo Lira * CMakeLists.txt, parser/rpp/pp-main.cpp: Removed unused parser file. 2009-11-16 Hugo Lima * tests/testabstractmetaclass.cpp, tests/testabstractmetatype.cpp: Fix apiextractor unit tests. Reviewed by Marcelo Lira * abstractmetalang.cpp, typesystem.h: Add public visibility for more classes. Reviewed by Marcelo Lira 2009-11-12 Hugo Lima * typesystem.h: Remove CustomTypeEntry class * typesystem.h: Remove JObjectWrapperTypeEntry class * typesystem.h: Remove QThreadTypeEntry class 2009-11-16 Marcelo Lira * typesystem.cpp: The type system parser now reuses TypeSystemTypeEntry for the any module file being parsed. The existing module retrieval is based on the module name given as attribute of the "typesystem" tag. This allows helps when a single module is described on multiple type system files. Reviewed by Renato Araujo 2009-11-14 Marcelo Lira * typesystem.cpp: fixed the appending of code injection to the module; previously only code injected from a file was being stored correctly in the module object, code written inside the 'inject-code' tag was always lost 2009-11-09 Luciano Wolf * doc/typesystem_specifying_types.rst: Documentation for container-type tag into typesystem. Reviewed by Hugo Parente 2009-11-05 Hugo Lima * abstractmetabuilder.cpp, tests/CMakeLists.txt, tests/testreverseoperators.cpp, tests/testreverseoperators.h: - All reverse operators are now properly tagged as "reverse operator". - Reverse operators aren't tagged as static methods anymore. - Reverse operators now have just one parameter, the one that matters. Reviewed by Marcelo Lira 2009-11-03 Lauro Neto * abstractmetabuilder.cpp: Remove the stream argument when modifying <> The global operator function was being added to a class' method list but without modifying the argument list by removing the owner class. It was removed a long time ago when working on boostpythongenerator. Reviewed by Hugo Parente 2009-10-31 Lauro Neto * abstractmetabuilder.cpp, doc/typesystem_specifying_types.rst: Use isStream instead of hardcoding QDataStream Also added documentation * typesystem.cpp, typesystem.h: Adding support to attribute stream in TypeEntry * abstractmetabuilder.cpp, abstractmetalang.h: Add m_stream attribute to AbstractMetaClass 2009-11-09 Marcelo Lira * abstractmetabuilder.cpp: The AbstractMetaBuilder::traverseFunction method for added functions now decide the usage pattern for the AbstractMetaTypes of the arguments. Reviewed by Hugo Parente 2009-11-05 renato araujo oliveira * typesystem.cpp: Propagate generate flag for child typesystems. Reviewed by Hugo Parente 2009-10-30 Hugo Lima * typesystem.cpp: Add "()" to the function signature of functions without parenteses. Without this the function without parenteses will be like an alien to all others APIExtractor functions. Reviewed by Marcelo Lira * abstractmetalang.cpp, abstractmetalang.h, tests/testaddfunction.cpp, typesystem.h: Added convenience method AbstractMetaFunction::injectedCodeSnips. It returns all code snips in a function. * abstractmetalang.cpp, abstractmetalang.h: Added convenience method AbstractMetaClass::findFunction. This function returns the first AbstractMetaFunction found with a given name or a null pointer if no functions were found. 2009-10-29 Hugo Lima * tests/testaddfunction.cpp, tests/testaddfunction.h, typesystem.cpp: Fix a crash when the function signature provided by add-function tag does not have parenteses. Reviewed by Marcelo Lira * doc/typesystem_arguments.rst, doc/typesystem_manipulating_objects.rst: Updated documentation of conversion-rule for argument-modification. Reviewed by Luciano Wolf 2009-10-23 Hugo Lima * doc/typesystem_manipulating_objects.rst, doc/typesystem_specifying_types.rst: Added documentation for tag conversion-rule. 2009-10-22 Hugo Lima * abstractmetabuilder.cpp, tests/testaddfunction.cpp: Added functions aren't marked as virtual anymore. Reviewed by Renato Araujo 2009-10-21 Hugo Lima * doc/_themes/pysidedocs/static/logo_openbossa.png, doc/_themes/pysidedocs/static/pysidedocs.css: Fixed the openbossa logo on the pysidedocs theme. 2009-10-21 Marcelo Lira * typesystem.h: Added documentation for the new class "AddedFunction" Reviewed by Marcelo Lira 2009-10-20 Hugo Lima * abstractmetabuilder.cpp, abstractmetabuilder.h, abstractmetalang.h, tests/testaddfunction.cpp, tests/testaddfunction.h, typesystem.cpp, typesystem.h: Added support for add-function tag into typesystem. * tests/CMakeLists.txt, tests/testaddfunction.cpp, tests/testaddfunction.h, typesystem.cpp, typesystem.h: Implemented a signature parser for the AddedFunction class. 2009-10-19 Marcelo Lira * typesystem.cpp, typesystem.h: improved AddedFunction struct with more informations; extended ComplexTypeEntry with a list of AddedFunctions * typesystem.cpp, typesystem.h: added AddFunction struct to type system collection of objects; the purpose is to allow the creation of new function/method signatures 2009-10-19 Hugo Lima * typesystem.cpp: Added an entry for AddFunction tag in the StackElement enum * CMakeLists.txt: Removed code that always add _d as debug postfix, debug postfix is usefull for some packagers but awful for other distros or simple raw builds, because debug libs will be generated with a difenrent name and all other projects are expecting the library name without the debug postfix, resulting in a linker error, because the library was not found. For all packagers that still want to set a debug postfix, just use the cmake flag: -DCMAKE_DEBUG_POSTFIX:STRING="my_debug_postfix" * tests/testutil.h: Avoid warning about an unused variable when not compiling as debug. 2009-10-21 Hugo Lima * doc/_themes/pysidedocs/static/pysidedocs.css: Fixed minor CSS issues on pysidedocs sphinx theme * doc/conf.py: Removed latex sphinx config options. 2009-10-17 Hugo Lima * doc/_templates/index.html, doc/_templates/layout.html, doc/_themes/pysidedocs/defindex.html, doc/_themes/pysidedocs/genindex-single.html, doc/_themes/pysidedocs/genindex-split.html, doc/_themes/pysidedocs/genindex.html, doc/_themes/pysidedocs/layout.html, doc/_themes/pysidedocs/modindex.html, doc/_themes/pysidedocs/opensearch.xml, doc/_themes/pysidedocs/page.html, doc/_themes/pysidedocs/search.html, doc/_themes/pysidedocs/static/.directory, doc/_themes/pysidedocs/static/bg_header.png, doc/_themes/pysidedocs/static/bg_topo.jpg, doc/_themes/pysidedocs/static/doctools.js, doc/_themes/pysidedocs/static/fakebar.png, doc/_themes/pysidedocs/static/jquery.js, doc/_themes/pysidedocs/static/logo_indt.jpg, doc/_themes/pysidedocs/static/logo_openbossa.png, doc/_themes/pysidedocs/static/logo_python.jpg, doc/_themes/pysidedocs/static/logo_qt.png, doc/_themes/pysidedocs/static/pysidedocs.css, doc/_themes/pysidedocs/static/pysidelogo.png, doc/_themes/pysidedocs/static/relbar_bg.png, doc/_themes/pysidedocs/static/searchtools.js, doc/_themes/pysidedocs/theme.conf, doc/conf.py: Added a new sphinx theme for APIExtractor documentation. This theme should be used on all sphinx-based pyside documentation. * doc/typesystem.rst, doc/typesystem_arguments.rst, doc/typesystem_documentation.rst, doc/typesystem_manipulating_objects.rst, doc/typesystem_modify_function.rst, doc/typesystem_solving_compilation.rst, doc/typesystem_specifying_types.rst, doc/typesystem_templates.rst: - Typesystem documentation broken in smaller parts, so it's more redable now (IMO). - Added cross referencing for nodes cited along the documentation. - Added documentation for the new and not implemented yet, add-function tag. * .gitignore: Added doc/_build to the git ignore list 2009-09-28 Hugo Lima * abstractmetalang.cpp, abstractmetalang.h: Add method AbstractMetaFunction::isCastOperator. 2009-10-02 Lauro Neto * CMakeLists.txt: Bump version to 0.3.2 * ChangeLog: Update changelog before bump 2009-09-24 Hugo Lima * typesystem.cpp: Handler::current renamed to Handler::m_current With kdevelop4 it's so easy :-D * docparser.cpp, typesystem.cpp: Fix bug#38. 2009-09-23 Hugo Lima * tests/CMakeLists.txt, tests/a.xml, tests/testmodifydocumentation.cpp, tests/testmodifydocumentation.h: Unit test to catch the bug#38. 2009-09-23 Renato Araujo Oliveira Filho * CMakeLists.txt: Created CMake flag LIB_DEBUG_POSTFIX for modify library name when using CMAKE_BUILD_TYPE=Debug. 2009-09-22 Renato Araujo Oliveira Filho * apiextractor.cpp: Fixed error when running generator whithout set correct global header. Rev: Hugo Lima 2009-09-18 Hugo Lima * abstractmetabuilder.cpp, abstractmetabuilder.h: Fixed bugs related to the strings returned by defaultValue and originalDefaultValue. - If there are no typesystem modifications, originalDefaultValue will be equals to defautlvalue, so originalDefaultValue will not be the same string found by the C++ parser, it will be usefull only to check if there are some default values modifications. * tests/testutil.h: Reset the type database before runing each test. * typesystem.cpp, typesystem.h: - Turn ctors of TypeDatabase private (It's a singleton!) - Makes possible to reset the TypeDatabase, this is usefull in unit tests when you need to make all unit tests independent of each other. * tests/testabstractmetaclass.cpp, tests/testabstractmetaclass.h: Add tests for defaultValue and originalDefaultValue methods. 2009-09-11 Hugo Lima * tests/testabstractmetatype.cpp, tests/testabstractmetatype.h: Added more tests for APIExtractor. 2009-09-10 Hugo Lima * abstractmetabuilder.cpp, abstractmetabuilder.h, tests/testabstractmetaclass.cpp, tests/testabstractmetaclass.h: Fix a bug related to function default values. ApiExtractor tries to modify the defaultValue every time, so then return value of originalDefaultValue() if diferent from the return value of defaultValue() when they dont need to be. Unit test included. 2009-09-11 Hugo Lima * abstractmetabuilder.cpp, abstractmetabuilder.h, apiextractor.cpp, apiextractor.h: Add the option to set the directory where all log files will be created. 2009-09-10 Renato Araujo Oliveira Filho * typesystem.cpp: Use specific Qt include headers for OS compatibility. Fixes Bug #49. Reviewed by Luciano Miguel Wolf * CMakeLists.txt: Avoid use of pkg_config for search for libraries. Fixes Bug #39. Reviewed by Luciano Miguel Wolf * ChangeLog: Created ChangeLog file. 2009-09-04 Hugo Lima * tests/CMakeLists.txt, tests/testabstractmetaclass.cpp, tests/testabstractmetaclass.h, tests/testabstractmetatype.cpp, tests/testabstractmetatype.h, tests/testenum.cpp, tests/testenum.h, tests/testutil.h: Added more tests for AbstractMetaClass and AbstractMetaEnum 2009-09-09 Renato Araujo Oliveira Filho * abstractmetalang.cpp: Check for constructors in isVirtual function. Fixes Bug #46. Reviewed by Hugo Parente 2009-09-08 Hugo Lima * CMakeLists.txt: Do not link with boost::graph library. Fix bug#37 2009-09-02 Lauro Neto * CMakeLists.txt: Bump version to 0.4 (current development version) 2009-08-31 Lauro Neto * CMakeLists.txt: Bump version to 0.3. 2009-09-01 Marcelo Lira * typesystem.cpp, typesystem.h: moved setInclude, addExtraIncludes and related methods from ComplexTypeEntry to TypeEntry, this way they will be also available on PrimitiveTypeEntry; the type system format now accepts the 'include' tag 2009-08-27 Chris Hills * apiextractor.cpp: Re-order include path for using non-system Qt libraries 2009-08-25 Renato Araujo Oliveira Filho * abstractmetabuilder.cpp, abstractmetalang.h: Create a new method to AbstractType: isValuePointer. Separeted value pointers from native pointer for help generators. Reviewed by Marcelo Lira 2009-08-26 Marcelo Lira * apiextractor.cpp: emits an error message when no type system file is passed to ApiExtractor::run Reviewed by Hugo Parente 2009-08-22 Lauro Neto * qtdocparser.cpp: Use name instead of fullname for classes in namespaces Reviewed by Hugo Parente * qtdocparser.cpp: Fix loading of xml files for classes in namespaces 2009-08-20 Marcelo Lira * abstractmetalang.cpp, abstractmetalang.h, qtdocparser.cpp: AbstractMetaClass::name() and AbstractMetaType::name() now return only the name of the class/type without namespace/scope information 2009-08-25 Renato Araujo Oliveira Filho * apiextractor.cpp: Changed acess to preprocessor file, to be reused in the same process. 2009-08-25 Hugo Lima * apiextractor.cpp: - Rewind the file pointer before runing the parser. - Fixed some code style issues. 2009-08-24 Hugo Lima * CMakeLists.txt: Fixed apiextractor version, so it now creates the symlinks for libapiextractor.so.0 and libapiextractor.so.0.x Reviewed by Lauro Moura * CMakeLists.txt: Backport: Fixed apiextractor version, so it now creates the symlinks for libapiextractor.so.0 and libapiextractor.so.0.x 2009-08-20 Hugo Lima * apiextractor.cpp, apiextractor.h: Added a lot of helper methods to APIExtractor interface Reviewed by Setanta 2009-08-21 Hugo Lima * apiextractor.cpp: Do not continue when an error occur in reading the typesystem file * reporthandler.cpp: - Fix compilation when using restritive security flags -Wformat - Werror=format-security in gcc Thanks Helio Castro. fixes bug#8 2009-08-21 Carlos Gonçalves * CMakeLists.txt: Allow defining the 'lib' dir (eg. 'lib64'). This is required by some distributions such as openSUSE, where 64-bit libraries are installed in lib64 directories and 32-bit libraries in the lib directories. 2009-08-20 Hugo Lima * typesystem.h: Added typedefs to QList and QList. * apiextractor.cpp, apiextractor.h: - Correctly initialize and delete the AbstractMetaBuilder - Fix typo in setSuppressWarning method - Added setSilent method * parser/rpp/pp-engine.h, parser/rpp/pp-environment.h: Add missing include directives in the C++ parser code. * CMakeLists.txt, apiextractor.cpp, apiextractor.h, fileout.h, generator.cpp, generator.h, typesystem.cpp, typesystem.h: Removed all generator stuff from APIExtractor, this stuff should be moved to the generator, and the apiextractor library should be just what their name means, an API extractor. This break the APIExtractor source compatibility with no mercy! 2009-08-19 Lauro Neto * CMakeLists.txt: Adding target 'dist' using git-archive. 2009-08-18 Marcelo Lira * CMakeLists.txt: updated API Extractor version to 0.2 * doc/conf.py: fixed API Extractor version on documentation 2009-08-17 Hugo Lima The genesis...