Code::Blocks
Developer forums (C::B DEVELOPMENT STRICTLY!) => Plugins development => Topic started by: ethicalstar on December 16, 2008, 11:05:16 am
-
Hi everyone!
I just looked the whole site for a uml plugin development in codeblocks. It is not under development. Is anyone interested to join me and do it?
I am new to codeblocks so i dont know abt plugin development. If anyone could help me with plugin creation docs, it would be nice..
tnx.
-
2 years back somebody has written and suggested the name "UML::Blocks" . May be we can choose this as the name...
What do u think?
-
submitted for registration at Sourceforge.net with unix name "umlblocks".. :D
So it begins...
-
Do you have a working prototype or it's in planning phase? :)
-
If you have not started you might see if UMLPad is worth adapting to Code::Blocks.
http://web.tiscali.it/ggbhome/umlpad/umlpad.htm
It uses ANSI(non unicode) wxWidgets 2.6/2.8 written in C++.
Lic GPL
Tim S
-
Maybe you can checkout BOUML as well: http://bouml.free.fr/index.html
It's developed under QT, fast, quite complete.
-
If you have not started you might see if UMLPad is worth adapting to Code::Blocks.
http://web.tiscali.it/ggbhome/umlpad/umlpad.htm
It uses ANSI(non unicode) wxWidgets 2.6/2.8 written in C++.
Lic GPL
Tim S
Its in planning phase! I like to see UML diagrams generation directly from codeblocks.
-
Maybe you can checkout BOUML as well: http://bouml.free.fr/index.html
It's developed under QT, fast, quite complete.
Tnx. It is very interesting...
-
Maybe you can checkout BOUML as well: http://bouml.free.fr/index.html
It's developed under QT, fast, quite complete.
But Qt needs its own "qmake ". and also wxWidgets is used in codeblocks development. We have to find something that uses WxWidgets or any other framework that does not depend on Makefile change.
-
ethicalstar:
(cue ancient wizard)
It has been ages since I first asked someone to make an UML plugin for Codeblocks. Aeons passed, and no brave hero volunteered to vanquish the demon of non-uml darkness. May the Great Spirits keep you safe in your dangerous quest! :lol:
Translation: I support your idea 100%! :D
Speaking of which, I've also been looking for a plugin that lists you the include chain for a file, it'd be very useful :) (hint: The command "CPP -M[M] file" does it, but it needs to keep track of include dirs)
-
The wxShapeFramework project may be could be util for your UML plugin:
http://sourceforge.net/projects/wxsf/ (http://sourceforge.net/projects/wxsf/)
-
ethicalstar:
(cue ancient wizard)
It has been ages since I first asked someone to make an UML plugin for Codeblocks. Aeons passed, and no brave hero volunteered to vanquish the demon of non-uml darkness. May the Great Spirits keep you safe in your dangerous quest! :lol:
Translation: I support your idea 100%! :D
Speaking of which, I've also been looking for a plugin that lists you the include chain for a file, it'd be very useful :) (hint: The command "CPP -M[M] file" does it, but it needs to keep track of include dirs)
Tnx rickg22!
I hope that We can do it together this time...
-
The wxShapeFramework project may be could be util for your UML plugin:
http://sourceforge.net/projects/wxsf/ (http://sourceforge.net/projects/wxsf/)
tnx alb_cb_moon ! I will look into it...
-
Hi everyone!
I just looked the whole site for a uml plugin development in codeblocks. It is not under development. Is anyone interested to join me and do it?
I am new to codeblocks so i dont know abt plugin development. If anyone could help me with plugin creation docs, it would be nice..
tnx.
I am interested in helping out on this project.
I have not created an Plugin myself, but have compiled the default plugin template and Compile Code::Blocks from source on Windows.
Tim S
PS: I am trying once more to get UML Pad to compile and link to Unicode wxWidgets.
-
Its in planning phase! I like to see UML diagrams generation directly from codeblocks.
Yes, the generating of UML diagrams from C++ source code would be a very important feature.
Do, you think it is worth it to plan to generate C++ code from UML diagrams?
Tim S
Edit: I think Umbrello an KDE UML program is also worth checking out.
http://en.wikipedia.org/wiki/Umbrello_UML_Modeller
http://uml.sourceforge.net/index.php
Gaphor is written in Python so could be not worth checking out.
http://gaphor.devjavu.com/
http://www.ohloh.net/p/gaphor
Software Licence Language Output Format Widget Toolkit
Umbrello GPL C++ XML/XMI KDE
UML Pad GPL C++ XML wxWidgets
BOUML GPL C++ ?? Qt
Gaphor GPL Python ?? GTK+
ClassBuilder zlib/libpng C++ ?? MFC/AFX
astade GPL C++ ?? wxWidgets
Edit: added classbuilder and Links
Edit: added astade.tigris.org
Links
http://sourceforge.net/projects/uml/
http://web.tiscali.it/ggbhome/umlpad/umlpad.htm
http://sourceforge.net/projects/bouml/
http://www.ohloh.net/p/gaphor
http://sourceforge.net/projects/classbuilder
http://astade.tigris.org/
-
Speaking of which, I've also been looking for a plugin that lists you the include chain for a file, it'd be very useful :) (hint: The command "CPP -M[M] file" does it, but it needs to keep track of include dirs)
I was able to produce such output with my preprocessor library, for which I also wrote a plugin. You feed it with g++'s defines and include dirs, and it'll do all the preprocessing stage. From this process you could extract the "include chain". I did it when I was "debugging" it. I even wrote a new string class to speed up the process (I also wrote an article of the whole design and benchmarks and put the link somewhere in the forums). I'm sure the library needs more testing. At least the tests I ran produced the same output as g++.
I could arrange a source download if you want to check it out. I also have the documentation of the library and a document explaining the design (this one is in Spanish, but that wouldn't be a problem for you :wink:).
-
Its in planning phase! I like to see UML diagrams generation directly from codeblocks.
Yes, the generating of UML diagrams from C++ source code would be a very important feature.
Do, you think it is worth it to plan to generate C++ code from UML diagrams?
Tim S
Edit: I think Umbrello an KDE UML program is also worth checking out.
http://en.wikipedia.org/wiki/Umbrello_UML_Modeller
http://uml.sourceforge.net/index.php
Gaphor is written in Python so could be not worth checking out.
http://gaphor.devjavu.com/
http://www.ohloh.net/p/gaphor
Software Licence Language Output Format Widget Toolkit
Umbrello GPL C++ XML/XMI KDE
UML Pad GPL C++ XML wxWidgets
BOUML GPL C++ ?? Qt
Gaphor GPL Python ?? GTK+
Hi stahta01!
Nice info.. I also think that Umbrello is great. Similarly BOUML but to be economic with dependencies in codeblocks, i think it is better to use something that uses wxWidgets ( although i actually prefer GTK+) . I will wait for your reply and if we decide, we can start trying UML Pad...
-
Hi everyone!
I just looked the whole site for a uml plugin development in codeblocks. It is not under development. Is anyone interested to join me and do it?
I am new to codeblocks so i dont know abt plugin development. If anyone could help me with plugin creation docs, it would be nice..
tnx.
I am interested in helping out on this project.
I have not created an Plugin myself, but have compiled the default plugin template and Compile Code::Blocks from source on Windows.
Tim S
PS: I am trying once more to get UML Pad to compile and link to Unicode wxWidgets.
Gr8!!! We can try UML pad...
-
There is also Class Builder:
http://members.lycos.nl/JimmyVenema/ClassBuilder/ClassBuilder.htm (http://members.lycos.nl/JimmyVenema/ClassBuilder/ClassBuilder.htm)
It is developped in C++, targets C++ and is released under the the zlib/libpng License
Look(ed?) quite promising and can reverse C++ project (not perfect but good).
Dje
-
Gr8!!! We can try UML pad...
I am still working on Unicode version of UML Pad under wxWidgets 2.8.
I have gotten it to compile with wxWidgets 2.9 Unicode, but 2.8 needs more changes.
Update: The UML Pad uses std::string instead of wxString; I need to convert it to use wxString.
Tried converting for 5 try; it appears that I succeeded, but more testing is needed.
Tim S
-
I need added to project https://sourceforge.net/projects/umlblocks/ so I can submit this UMLPad Unicode version for 2.8 wxWidgets.
Edit: It is being complied as a standalone exe seperate from the Code::Blocks exe.
I have no idea how to put it into a C::B plugin and I not sure we should till we know more or at least I know more about Code::Blocks Plugins.
I suggest we start with a small C::B plugin that converts C++ into an XML file that can be displayed inside of our Unicode UML Pad as an class diagram.
I suggest cbUmlPad as the exe name of our Unicode UML Pad. I also suggest that we decide on an standard class name prefix; something like "umlb" short for UmlBlocks.
Tim S
-
Info I learned converting UML Pad to Unicode.
std::string does not support UTF16.
So, I assumed ASCII or UTF8; this is NOT really valid, but should mostly be true.
How to convert to wxString from std::string.
string(variableName.mb_str())
How to convert to std::string from wxString.
wxString(variableName.c_str(),wxConvUTF8)
What wxg prefix means on files in UML Pad; means wxGlade the IDE used to create it.
wxWidgets 2.9 defaults to basing wxString on std::string or std::wstring.
To turn this off set wxUSE_STD_STRING to 0 in setup.h; this make wx2.9 more like wx2.8.
Also, makes it harder to get UMLPad to compile, but I was getting better/different compile errors using wx2.9 with wxUSE_STD_STRING=0.
Tim S
-
Hi
How to convert to wxString from std::string.
string(variableName.mb_str())
Well, I always use utf8_str() :
string(variableName.utf8_str().data());
I think it is easier to read, but I don't know if the result is different.
--
Jérémie
-
FYI:
I have finished Upgrading UMLPad to Unicode.
I uploaded it to
https://picmicroproject.svn.sourceforge.net/svnroot/picmicroproject/Tools/CASE/cbUmlPad/
Note: The BMP Files were not uploaded, so they are needed from the Original site.
Edit: Will move it to https://sourceforge.net/projects/umlblocks/ in a few days.
I just noticed that I was added to access for umlblocks an hour ago.
I plan to read up about how to do SVN Admin first, I think I might not have done it right on my picmicroproject site.
Tim S
PS: I am upgrading my computer, if all works well will be back tomorrow. But, if I goof up could be days.
-
I am planning on Uploading cbUmlPad to https://sourceforge.net/projects/umlblocks/ today.
Tim S
I have moved it under a branch; since I am guessing the final project will be little or nothing like UmlPad.
http://umlblocks.svn.sourceforge.net/viewvc/umlblocks/branches/cbUmlPad/
-
I have looked and the best Open Source project to get "reverse engineering" code to convert C++ to UML; still seems to be Umbrello in my opinion. Note, this is just based on project description. I plan know to look at the code of the Umbrello project. Tim S
http://uml.sourceforge.net/feature.php
-
http://uml.sourceforge.net/feature.php
I personally work a lot with BoUML. It's really working very well - including reverse engineering. But: It's QT.
So... I believe making a C::B plugin out of UMLPad will be enough work already... don't worry so much about other "tools" have nicer features etc... An UML tool can be quite simple and already really powerful.
-
http://uml.sourceforge.net/feature.php
I personally work a lot with BoUML. It's really working very well - including reverse engineering. But: It's QT.
So... I believe making a C::B plugin out of UMLPad will be enough work already... don't worry so much about other "tools" have nicer features etc... An UML tool can be quite simple and already really powerful.
While, I agree with what you said.
The project main objective is to convert C++ to an UML diagram; I just hope to use UMLPad for some display code.
I am liking Umbrello better than BoUML because it output is an XML file and the project is in SVN.
My second choice for code to do "C++ to an UML diagram" is the BoUML project.
Once, we figure out how to convert C++ to UML; then, we can start on displaying the UML diagram in Code::Blocks. Last, we can work on Editing the UML diagram and saving the results
Tim S
-
Hi!
I just want to add another UML software that I used for over a year: ArgoUML.
http://argouml.tigris.org/
It's written in Java (with BSD Open Source License), but may be worthwhile to look at it: it has a lot of features, supports all 9 UML 1.4 Diagrams and it's stable.
A nice feature it has is a dynamic list of "critics": while you draw your diagram, it gives you a list of possible improvements or missing things.
Moreover it supports import/export of XMI files (standard XML file format for UML Tools).
Features list: http://argouml.tigris.org/features.html
Being written in Java, you can also run it from your browser using Java Web Start (see main page for instructions).
Good luck for your plugin!
Alessandro
-
I am planning on Uploading cbUmlPad to https://sourceforge.net/projects/umlblocks/ today.
Tim S
I have moved it under a branch; since I am guessing the final project will be little or nothing like UmlPad.
http://umlblocks.svn.sourceforge.net/viewvc/umlblocks/branches/cbUmlPad/
The latest SVN source for those interested is located at: https://umlblocks.svn.sourceforge.net/svnroot/umlblocks
-
@stahta01
An code plugin for 'Code::Blocks' :
https://github.com/LexRudera/UmlBlocks (https://github.com/LexRudera/UmlBlocks)
after some adjustments, it compiles and load under svn10127 (wxWidgets unicode 2.8.12, wxShapeFramework 1.13, TDM-GCC 4.7.1 ) https://github.com/LETARTARE/UmlBlocks (https://github.com/LETARTARE/UmlBlocks)
wxShapeFramework -> http://sourceforge.net/projects/wxsf/ (http://sourceforge.net/projects/wxsf/)
After ...must be tested.
-
@stahta01
An code plugin for 'Code::Blocks' :
https://github.com/LexRudera/UmlBlocks (https://github.com/LexRudera/UmlBlocks)
after some adjustments, it compiles and load under svn10127 (wxWidgets unicode 2.8.12, wxShapeFramework 1.13, TDM-GCC 4.7.1 ) https://github.com/LETARTARE/UmlBlocks (https://github.com/LETARTARE/UmlBlocks)
wxShapeFramework -> http://sourceforge.net/projects/wxsf/ (http://sourceforge.net/projects/wxsf/)
After ...must be tested.
@LETARTARE:
I plan to look at both of the Git Projects yours and the LexRudera one.
I gave up on this thread long ago; since, I did NOT know enough C++ to help write it.
I still do NOT know much C++; so; other than testing and Precompiled Header (PCH) type changes not much I will be able to do.
Tim S.
-
@LETARTARE:
I created a git repo forked from LexRudera/UmlBlocks repo.
https://github.com/stahta01/UmlBlocks/tree/cb_svn
The main difference, between your fork and my fork, at this time is I created a new CB project called UmlBlocks_cbsvn which uses an Global Var called cb_svn.
I did NOT like either yours nor LexRudera CB project and decided making another was better than editing either of yours.
I will work on the Precompiled Header (PCH) type changes and then do testing using a recent CB SVN version.
Tim S.
-
Is any menu option except for "New UML Diagram" and "New Class" supposed to do anything?
Those are the only two I figured out how to use.
Is it possible to edit an UML Class?
Is it possible to save an UML Diagram?
Possible bugs; after I install the UML Plugin:
1. After restarting CB, the UML menu becomes the first menu (as in before the File menu).
2. The New Class form extends down too far for good display.
(Possible cause of this is I use a fixed Taskbar in Windows 7; several apps have issues with having a default height being to big)
Tim S.
-
I just drop 0.3 to meet
- declaration -> *.hpp
- definitions -> *.cpp
Unfortunately, the tests are discouraging ! Too few features installed.
Is it possible to edit an UML Class?
yes, but it is the only feasible action !! you have to capture the elements of the class in a dialog.
Is it possible to save an UML Diagram?
no, we can not do anything.
Too much work to do, I do not have time.
It's a shame, the basic ideas are good.