<div class="gmail_quote">2012/10/24 Milian Wolff <span dir="ltr"><<a href="mailto:mail@milianw.de" target="_blank">mail@milianw.de</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

Hey Miha,<br>
<br>
we just sat together and discussed and reviewed the visual things of the file-<br>
templates branches. All in all we agree that we are going to merge that beast<br>
into master (I'll do that tomorrow) and then continue from there on.<br></blockquote><div><br>That's great! <br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


<br>
Here is a list of stuff that needs to be done:<br>
<br>
- new project wizard should reduce on clutter<br>
--- merge single language items (see also below)<br>
--- add icons if possible<br>
<br>
- new file from template<br>
-- test category twice in .desktop file of e.g. test_qtestlib.desktop<br>
(Category=Test/Test/C++)<br>
-- where comes the identifier page from?<br>
-- test cases wizard page:<br>
--- tab order wrong<br>
--- fast adding of test cases with the keyboard (enter to add next e.g.),<br>
proper focus management, etc. pp.<br>
-- move c++/qt category to c++ (qt) i.e. next to c,c++,python,... </blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
- general<br>
-- prevent collapse in trees of templates<br>
-- remove root node in outermost template<br>
-- simplify categories (no Basic/Basic, merge parent/child nodes if there is<br>
only a single child<br>
<br>
- templates config<br>
-- "load": rename to "import from file" or similar<br>
-- "extract" -> rename to "adapt" or similar, and ensure that the extracted<br>
project is directly opened as a project in kdevelop, ready for editing.<br>
-- expand all trees<br>
-- share is broken (still missing the khns provider?)<br>
<br>
- aborting KHNS dialog during download of project template crashes<br>
<br>
Other than that, good work. We can try to improve all the things above in the<br>
next days when I've merged this code into master. </blockquote><div><br>Wow, that is a good detailed list. I had hopes of coming to meet you, but we had one physics  conference last weekend and there's another one coming this weekend, so that's off. <br>

<br>Yes, there is still no KHNS provider for file templates. Probably my fault because I still haven't written an email to Frank ever since the last one bounced (in August). As for the rest, I will have some spare time this week and weekend afternoons, so I can fix the things you listed. <br>
 </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Regarding the unittest<br>
branch though, I cannot merge master into it to try it out... Lots of<br>
apparently unrelated conflicts... Could you have a look at that please?<br></blockquote><div>Ugh, I haven't tried merging it for some time, so some conflicts are to be expected. I'll merge and fix them now. <br></div>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div><br>
<br>
On Monday 17 September 2012 12:27:56 Miha Čančula wrote:<br>
> Hello!<br>
><br>
> I worked on templates for code generation this summer as part of GSoC<br>
> (branch "file-templates"), as well as a framework for finding,<br>
</div>> running**and reporting unit tests (branch "unittest"). Both branches<br>
<div><div>> are in kdevelop<br>
> and kdevplatform repositories, and 'unittest' also has a component in<br>
> kdev-php. Also, they are not related in any way, so I would prefer merging<br>
> them separately.<br>
><br>
> I was busy with schoolwork since the end of GSoC, but now I finally<br>
> finished my school obligations for this year, so I have the rest of<br>
> September free to focus on KDevelop. I'm sure that some work will be needed<br>
> for merging both branches, so I'd like to do it soon while I still have<br>
> enough time.<br>
><br>
> I am asking for a review of both code and functionality for both projects.<br>
> Because they are rather large changes, I didn't create a review request on<br>
> ReviewBoard, but I will do so if needed. I'm providing a short summary of<br>
> changes so you know where to look:<br>
><br>
> 1. Templates<br>
>  * kdevplatform:<br>
>    - in language/codegen, I have added utility classes for rendering<br>
> templates with Grantlee. These are mainly SourceFileTemplate,<br>
> TemplateRenderer, and CodeDescription. They are all documented. There are<br>
> also TemplatesModel and MultiLevelListView which are useful for navigating<br>
> through installed templates.<br>
>    - the class assistant in createclass.{h,cpp}, along with UI files and<br>
> licenses was moved to a plugin in plugins/filetemplates. I have<br>
> refactored/replaced much of the code there.<br>
>    - added an interface in language/interfaces for a CreateClassHelper,<br>
> with implements language-specific parts of code generation.<br>
>    - in templates, I created some Grantlee filters, as well as convenience<br>
> inclusion templates.<br>
>  * kdevelop:<br>
>    - remove C++ specific class generator in languages/cpp/cppcreateclass.h.<br>
> Replaced it with a CreateClassHelper implementation.<br>
>    - in file_templates, there is now a large number of templates for<br>
> classes, unit tests, and other things (like cmake modules). These will be<br>
> put on kde-files instead of the code repository, except perhaps the basic<br>
> ones for each language. I would still like some comments on this.<br>
><br>
> 2. Unit tests<br>
>  * kdevplatform:<br>
>    - in interfaces, added new interfaces: ITestSuite (for a single test<br>
> suite) and ITestController<br>
>    - in shell, a TestController implementation<br>
>    - in plugins/testview, a plugin that shows all found tests and allows<br>
> the user to run them and see results<br>
>    - in plugins/patchreview, the option of running tests before submitting<br>
> a patch<br>
>  * kdevelop:<br>
>    - in cmakemanager, an implementation of ITestSuite for tests declared in<br>
> CMake files with add_test. It works with KDE's wrapper, as well as with a<br>
> custom wrapper macro. CMakeManager now also looks through source files to<br>
> find declaration for test cases, which only works with QTestLib.<br>
>  * php:<br>
>    - again, an implementation of ITestSuite for running with phpUnit. Test<br>
> suites are found as classes which inherit from PHPUnit_Framework_TestCase.<br>
><br>
> That's it in short, quite possibly I missed some minor change in another<br>
> folder. All new API I introduced is documented in the source files, and<br>
> working with templates is already on Techbase (<br>
> <a href="http://techbase.kde.org/Development/Tutorials#KDevelop" target="_blank">http://techbase.kde.org/Development/Tutorials#KDevelop</a>) and Userbase. There<br>
> also unit tests wherever I could add them.<br>
><br>
> So, please try to look at the source and the new functionality. I have just<br>
> merged changes from master to both 'file-templates' branches, so you can<br>
> compile it right away. And let me know if I can make reviewing any easier,<br>
> either with a review request or in any other way.<br>
><br>
> Thank you,<br>
> Miha Čančula<br>
</div></div><div><div>--<br>
Milian Wolff<br>
<a href="mailto:mail@milianw.de" target="_blank">mail@milianw.de</a><br>
<a href="http://milianw.de" target="_blank">http://milianw.de</a></div></div><br>--<br>
KDevelop-devel mailing list<br>
<a href="mailto:KDevelop-devel@kdevelop.org" target="_blank">KDevelop-devel@kdevelop.org</a><br>
<a href="https://barney.cs.uni-potsdam.de/mailman/listinfo/kdevelop-devel" target="_blank">https://barney.cs.uni-potsdam.de/mailman/listinfo/kdevelop-devel</a><br>
<br></blockquote></div><br>