4.21
May 12th 2010
- In the previous releases only the operations whose name started
by operator could contain non alphanumeric characters,
this restriction is removed.
- require_once forms are now auto generated in Php when
the Php definition of an artifact contains ${require_once}
(this is the case for the new projects, you have to add it
by yourself if you want this feature in your existing projects).
The definition of an external class for Php is extended,
if a second line is present this one is considered to contain
the expected require_once form to produce.
New generation settings to choose how the path of the
required files are generated : without path, with absolute paths,
with relative paths, with path relative to the root directory.
- Add Reverse/roundtrip settings with a dedicated edition dialog
to specify through a regular expression the files and/or directories
whose must not be taken into account during a reverse and roundtrip,
allowing for instance to not reverse test programs.
- When you edit an attribute or an operation of a parametrized class
or nested in parametrized class(es) the name of the formal parameters
are now inserted in the list of proposed types.
- When several elements of the same type are selected in a diagram
the multiple selection menu allows you to use the drawing settings
of the first selected element for the other selected elements.
Have associated shortcut command Same drawing settings.
- Extension of the drawing setting show context :
- In diagrams the context of nested classes now contains the
the container class when you ask for to indicate the namespace
or java package or python package or module through
the drawing setting show context or equivalent.
Warning, this affects existing
class diagrams
- New drawing setting show context in members definition
for classes in class diagrams. Only active when you also ask
for to show the full members definition. To indicate or not
the context of class(es) referenced in the declaration of an
attribute or an operation like the context is indicated for
the classes depending on show context or
show classes and packages context.
- In sequence diagrams add new drawing settings show classes context
for class instances, and show context in messages for messages
(only active when you also ask for to show the full operations definition).
- In communication diagrams the drawing settings
show packages context
is renamed show classes and packages context
and now also apply on class instances.
To not change the already existing diagrams,
when you open an old diagram this setting is set to no
on the class intances.
New drawing settings show context in messages for messages
(only active when you also ask for to show the full operations definition).
- In object diagram the drawing settings show packages context
is renamed show classes and packages context
and now also apply on class instances.
To not change the already existing diagrams,
when you open an old diagram this setting is set to no
on the class intances.
- Add a button Apply in the drawing settings dialog
to apply the new settings without exiting the dialog.
Warning, the already applyied settings are not canceled through
the button cancel.
- The list of opened non modal dialogs is now given by the dynamic
menu Windows after the list of opened diagrams. This
allow you to raise one of them, or to close all of them with
the diagrams through the menu entry close all.
- Php Generator 1.9
To automatically generate the require_once forms when
the Php definition of an artifact contains ${require_once}.
- C++ Reverse 2.14
C++ Roundtrip 1.2
Java Catalog 2.16
Java Reverse 2.17
Java Roundtrip 1.4
Php Reverse 1.7
To not reverse/roundtrip unexpected directories and/or files
specified through regular expressions.
- C++ Generator 2.17
Java Generator 2.21
Idl Generator 2.14
Roundtrip body 1.12
Follow the new API.
- Plug-out upgrade 1.17
Add operations requireOnceWithPath, set_RequireOnceWithPath,
isRelativePath, set_IsRelativePath, isRootRelativePath
and set_IsRootRelativePath on class PhpSettings to acces to the new generation
settings relative to the generation of the require_once in Php.
Add operations reverseRoundtripDirRegExp, isReverseRoundtripDirRegExpCaseSensitive,
set_ReverseRoundtripDirRegExp, reverseRoundtripFileRegExp,
isReverseRoundtripFileRegExpCaseSensitive and set_ReverseRoundtripFileRegExp
on classes CppSettings, JavaSettings and PhpSettings.
- Plug-out empty
Upgraded by plug-out upgrade.
- fr.lang updated.
- The previous releases of BOUML cannot read a project
saved with this version. Obviously this release is
able to read the projects made by previous releases of BOUML.
4.20
April 18th 2010
- Remark : under Windows the png/svg exports of the diagrams
don't work when they are done by a plug-out
launched by -execnogui (they work with -exec)
- Add constraint on activity and activity action.
- Java Generator 2.20.1
Python Generator 1.4.1
when a nested class reference was produced the container
class(es) name was missing and only the nested class's
name was generated, fixed.
- State machine generator 1.4.2
Add the operation doActivity() on the class representing
the state machine, when you apply this operation the
do activity of the current state is executed
if it is not empty.
- Html documentation Generator 2.19
XMI2 Generator 1.13
XMI2 Import 1.8
To manage constraint on activities and activity actions.
- Plug-out upgrade 1.16.1
Previous release missed to change the call of UmlCom::bye
in internal operation UmlBaseItem::read_(), fixed.
To manage constraint on activities and activity actions.
- Plug-out empty
Upgraded by plug-out upgrade.
- The previous releases of BOUML cannot read a project
saved with this version. Obviously this release is
able to read the projects made by previous releases of BOUML.
4.19.3
April 11th 2010
- Add the new keyword ${inverse_name} producing the name of the inverse
role of a bi directional relation between classes.
- When you apply a plug-out when Bouml is started with the option
-exit, the return value of Bouml is the argument of the
operation UmlCom::bye(). This value is 0 when you apply an old
plug-out where bye doesn't have a parameter.
The return value is -1 if the plug-out execution can't be done
or if the plug-out doesn't connect to the modeler in less than 30
seconds.
- New option -execnogui, use it in place of -exec
when you don't want to see the GUI when you apply a plug-out
when Bouml is started.
In this case the messages normally written in
the trace window are produced on stdout.
You have to kill the process Bouml by yourself if you use
-execnogui without -exit.
- Python Generator 1.4
Extends the auto generated import to the classes referenced
by the attributes, associations and operations. Previously only
the inherited classes and dependencies stereotyped import or
from was taken into account.
Returns the number of errors through UmlCom::bye().
- C++ Generator 2.16
C++ Reverse 2.13
C++ Roundtrip 1.1
Java Generator 2.20
Java Catalog 2.15
Java Reverse 2.16
Java Roundtrip 1.3
Idl Generator 2.13
Php Generator 1.8
Php Reverse 1.6
Roundtrip body 1.11
Returns the number of errors through UmlCom::bye()
- Plug-out upgrade 1.16
To add a parameter of type int to UmlCom::bye,
it will be managed as the return value of the plug-out,
0 means no error.
You have to add by yourself an argument to the calls of
UmlCom::bye
- Plug-out empty
Upgraded by plug-out upgrade.
4.19.2 patch 1 (Windows)
March 29th 2010
- This release only exists for Windows.
- Since release 4.19 a crash could occurred
because of Microsoft Visual C++ compiler bug
when a nested relation was drawn in a class diagram and
changes was made concerning the drawn elements or the
diagram itself (including the case where a new nested relation
has to be drawn) ,
fixed.
4.19.2
March 28th 2010
- A crash could occurred when you opened a component
diagram referencing through a required or provided relation
a class deleted in a previous session,
fixed.
- When you closed Bouml though a shortcut (control-w by default)
while an additional window like an artifact source windows was
still open, Bouml crashed (without true consequence because if needed
the previously load project was already saved),
fixed.
- fr.lang de.lang es.lang updated.
4.19.1
March 14th 2010
- Since release 4.17.1 a crash could occurred when you did
some changes on a state present in an opened diagram but never visible
because of the diagram dimensions and the position of the scrollbars,
fixed.
- C++ Roundtrip 1.0.4
Java Roundtrip 1.2.3
To not empty the stereotypes when this is possible.
- Java Generator 2.19.2
To not duplicate imports both defined in artifact definition and through
dependencies.
4.19
February 27th 2010
- The message written to signal a message can't be added in a sequence diagram
contained wrong characters, fixed.
- Add lost/found messages in sequence diagram.
- Add interface icon using a simple circle, extends drawing mode
with it for classes in a class diagram, instances in a sequence
diagram and actors in a use case diagram.
To not change the already existing diagrams,
when you open an old diagram showing classes stereotyped interface
or instances of classes stereotyped interface, their drawing mode
is forced to class when it values natural (even
indirectly).
- In a sequence diagram, when an instance doesn't send nor receive message
the menu of the instance proposes to hide/show the life line. To allow
to draw a multiple instance with only one visible life line.
- XMI2 Generator 1.12.3
To manage lost/found messages.
- Plug-out API
The operation from() returns null for a UmlBaseMessage
corresponding to a found message.
The operation to() returns null for a UmlBaseMessage
corresponding to a lost message.
- fr.lang updated.
- The previous releases of BOUML cannot read a project
saved with this version. Obviously this release is
able to read the projects made by previous releases of BOUML.
4.18.2
February 13th 2010
- The class instances wasn't colored when you asked to
not draw the shadow in a sequence or communication diagrams, fixed.
- C++ Reverse 2.12.4
To set the C++ source and header directory for the additional packages
created during the reverse because all classes defined in a given directory
are not defined in the same namespace or some are defined in a namespace and some
others are defined out of a namespace, try to use path relative to root directory if
it is defined in the generation settings.
- C++ Roundtrip 1.0.3
The roundtrip was perturbed by the use of namespaces and produced a wrong
and inconsistent result, fixed.
In the previous releases of C++ reverse/roundtrip the C++ directory of source
and header files wasn't set for additional packages created to manage several
namespaces (see remark concerning the reverse above),
because of that the roundtrip may propose to delete classes defined under
these packages. If you used previous
releases of C++ reverse/roundtrip to reverse source codes using namespaces
you need to check the packages having empty C++ source and header directory
specifications to set them if needed.
To discard \r when comparing two strings to update or not an element.
- Java Roundtrip 1.2.2
To discard \r when comparing two strings to update or not an element.
- Uml projection 1.1.2
Projection to C++ missed to set C++ header definition
on already existing artifacts, fixed.
4.18.1
February 6th 2010
- A crash could occurred when you did some changes on relations
used by 'modeled' class instances (non pure graphical class instances)
or reload a project defining 'modeled' class instances, fixed.
- In a class diagram when the drawing setting draw all relations was false
the only way to show not yet drawn nesting relations was to set draw all relations
to true, then to remove undesired shown relations. Now the menu of a nested
class proposes to show the nesting relation when it is not yet drawn and the container
class is present.
- XMI2 Import 1.7.2
To replace newline by space in relations's name.
- C++ Reverse 2.12.3
C++ Roundtrip 1.0.2
The name of the parameters of the operations must be the name specified
in the definition when it is not empty, rather than the name
given in the declaration (regression introduced when I added roundtrip).
The instantiation of a template class inside the declaration or
the definition of its operations was reversed
as the class itself (without actuals), fixed.
- fr.lang updated.
4.18
January 24th 2010
- In the previous release changes done in an activity
diagram may crashed the memory under Windows because of a bug in
Microsoft Visual C++ compiler, this problem potentially also
existed in other cases, bypassed.
- I was forbidden to add a flow from an action to an object whose
is control was false, fixed.
- When you added a shortcut the indications control/shift/alt was removed when
you specified the key in case the current line was the last (generally the case),
fixed.
- Add the new shortcut commands Open project, Print and
Save as, default shortcuts are control o,
control p and control shift s.
Also add default shortcut control p printing the active shown diagram.
Warning, the default shortcut to generate Php source is
now control h rather than control p.
- XMI2 Generator 1.12.2
Improvement to know if a flow is a control or an object flow.
- C++ Generator 2.15.2
C++ Reverse 2.12.2
C++ Roundtrip 1.0.1
Java Generator 2.19.1
Idl Generator 2.12.1
Python Generator 1.3.1
Project control 1.2.4
Project synchro 1.2.3
XMI2 Import 1.7.1
File Control 1.0.5
Uml projection 1.1.1
Modified to not be potentially affected by Microsoft Visual C++ compiler bug.
- fr.lang, de.lang and es.lang updated.
- The previous releases of BOUML cannot read a project
saved with this version. Obviously this release is
able to read the projects made by previous releases of BOUML.
4.17.1
January 9th 2010
- A crash may occurred when drawing a class instances
non transparent and without drawing the shadows, fixed.
- Under Windows the default language was wrongly set to Spanish in case you previously used a
release older than the 1.15.1 and the environment variables LANG and LCID don't specify
English or French, fixed.
- Add related elements did nothing in a use case or deployment
diagram, fixed.
- When you manually resized an element in a diagram its self relations may be hidden
depending on the position of the self relation and the used corner, fixed.
- In a state diagram, when you added an element and it was automatically moved to be placed
in its container, its self relations didn't follow it and their cut points was poorly
placed, fixed.
- When you add a container in a state or activity diagram and its possible container wasn't
drawn but its sub elements was drawn, now the added container is automatically resized
to contain its sub elements. To try to not poorly move already placed elements to force
them to be inside the added container.
es.lang
January 3th 2010
- Complete version of es.lang to use Bouml in Spanish,
this version is newer than Bouml 4.17 and can be used with any releases since 4.15.1 (useless before).
Download es.lang
and indicate where you place it through the "Miscellaneous / Edit environment" dialog.
Many Thanks to Paulo Cesar Coronado.
4.17
January 1th 2010
- A crash occurred when you load an inconsistent model where two
operations share the same internal identifier, fixed.
- The optional parameters wasn't given to the init/check plug-outs
associated to the stereotypes part of profiles, fixed.
- The boxes representing the class instances was not produced in SVG
when you didn't ask for to draw the shadows and they aren't
transparent, fixed.
- Add the new shortcut commands Optimal scale, Optimal window size,
Zoom +, Zoom - and Zoom 100% for diagrams.
Also add control mouse wheel up/down management to
increase / decrease the zoom.
- In a diagram to move the mouse with the mid click pressed
moves the viewport accordingly.
- In a diagram add shift mouse wheel up/down management to
scroll left/right (mouse wheel up/down already did scroll up/down).
- Add the new shortcut commands Close and Quit to close
the project or quit, default shortcuts are control w and control q.
- When several resizable elements are selected in a diagram
the multiple selection menu allows you to resize them
to have the same width and/or height of the first selected element.
Have associated shortcut commands (Same width, Same height
and Same size)
- It is now possible to have a class diagram under a use case or a use case view,
this allows to define Iconix robustness diagram throw class diagram.
- XMI2 Generator 1.12.1
The post condition of an activity actions was not
exported, and the pre conditions wasn't exported
when the post condition was empty, fixed.
- C++ Roundtrip 1.0
New plug-out, please refer to the
documentation.
- C++ Reverse 2.12.1
For compatibility with the roundtrip now the #file property
is get from the project package rather than in the package where you start
a reverse.
To set the C++ source and header directory for the packages
created during the reverse, try to use path relative to root directory if
it is defined in the generation settings.
- Java Roundtrip 1.2.1
Fixe bugs.
To set the Java directory for the packages created during the
reverse even without associated Java package,
try to use path relative to root directory if it is defined.
- Java Reverse 2.15.1
Java Catalog 2.14.1
To set the Java directory for the packages created during the
reverse even without associated Java package,
try to use path relative to root directory if it is defined.
- Plug-out upgrade 1.15.2
To allow to create a class diagram under a use case or use case view
- Plug-out empty
Upgraded by plug-out upgrade.
- es.lang added allowing to use the modeler in Spain,
this work is in progress and some translations are still missing
(in this case the English is used).
Many thanks to Paulo Cesar Coronado for the translation.
So you can currently choose between English, French German and Spain.
- Recall : if you are volunteer to add the
translation for a new language contract me. The work consists
to translate more than 2000 short sentences with a tool
I developped for that (of course you don't have to change
the sources of Bouml).
- The previous releases of BOUML cannot read a project
saved with this version. Obviously this release is
able to read the projects made by previous releases of BOUML.
4.16.4
November 25th 2009
- Facilitates the adding in a diagram of a incoming/outgoing
line (transition, flow ...) to/from a small item already
having lines.
- When you moved a decentered line having a geometry (
,
,
or
),
the attached labels (name, stereotype ...) could be moved
more than expected, fixed.
4.16.3
November 18th 2009
- Facilitates the selection in diagrams of small items having
incoming and/or outgoing lines.
- When you add an element in a state diagram and its state container
is already drawn, force the added element to be inside its
state container or region. When you add a state the already
draw sub elements are moved to be inside the added state, but
because the added state is small this poorly place them.
- You can now decenter lines (relations, transition ...)
having a geometry (
,
,
or
),
when you change the geometry the line is first recentered
on both extremities.
- C++ Generator 2.15.1
A space was missing between the two last > in an inheritance
of a template class when the last actual is also a template class,
fixed.
4.16.2
November 8th 2009
- Except few exceptions when you resized element like classes
the edge didn't follow the cursor, fixed.
- It was difficult to select a line drawn between an element
to an other element placed inside the first one
(for instance between a state machine and a sub state drawn
inside its state machine), fixed.
- In activity diagrams the stereotype of an action is now written,
except for opaque actions when you ask for to show
their definition through the drawing settings.
- You can now change the parent of a state, pseudo state and region
through drag&drop in the browser while you stay inside the
container state machine.
- de.lang added allowing to use the modeler in German,
this work is in progress and some translations are still missing
(in this case the English is used).
Many thanks to Oliver Rudolph for the translation.
So you can currently choose between English, French and German.
- Recall : if you are volunteer to add the
translation for a new language contact me. The work consists
to translate more than 2000 short sentences with a tool
I developped for that (of course you don't have to change
the sources of Bouml).
4.16.1
October 26th 2009
- In all the previous releases an import project or
import as library or import tools
crashed the memory under Windows because of a bug in Microsoft Visual
C++ compiler, bypassed.
- The tools dialog had wrong/random wording due to illegal memory
accesses and some translation cases was missing, fixed.
- fr.lang updated
4.16
October 25th 2009
- The buttons show/edit body of the operation dialog had
a wrong/random wording due to illegal memory
accesses and some translation cases was missing,
fixed.
- In the previous release in a use case diagram a class was represented
as an actor even its stereotype was part of a profile and has
an associated icon. Now like for in a class diagram the icon
associated to the stereotype is used when the drawing setting
values natural.
- It is now possible to show/hide the visibility of the relations between
classes depending on the value of the drawing settings
show relation visibility. By default the visibility
of the relations of not shown.
- Messages in a sequence diagram can now be stereotyped (by textual
stereotype out of profile). Default message stereotypes can
be set through the default stereotype dialog.
- It is now possible to ask for to draw a decomposition indicator icon
in a state in a state diagram. By default the icon is not shown. The fact
the icon is drawn or not is under your responsability, Bouml doesn't check
if this is consistent or not.
- Plug-out upgrade 1.15.1
To manage stereotype on messages in a sequence diagram.
- XMI2 Generator 1.12
To export stereotype of messages through an extension.
- Plug-out empty
Upgraded by plug-out upgrade.
- fr.lang updated
- The previous releases of BOUML cannot read a project
saved with this version. Obviously this release is
able to read the projects made by previous releases of BOUML.
4.15.1
October 21th 2009
- Internationalization of the modeler's menus and dialogs using a
translation files specified through the environment dialog.
If you don't specify a translation file the English is used.
Note : when you change the language some global menus are unchanged
and description of buttons of already opened diagram too, to follow
the new language for all exist then restart the modeler.
Currently only the translation file fr.lang is available
to use French because I only speak French and English
If you are volunteer to add a
new translation contact me and I will send you the small tool I made
for that and how to do. I do not deny that it is quite laborious to translate
more that 2000 sentences, be sure you will have the courage to do that
before contacting me ;-)
4.15
September 26th 2009
- Allows to import a project as a library. A project imported as
a library can't be modified in the importing project,
but it can be updated to follow changes done in the imported
project.
In case the project imported as library contains others projects
imported as library this ones are not considered like that,
this means you can't update these sub projects separately but
you have to ask for to update the container project you
directly imported.
To simplify management you can't update a project imported
as library while the project is modified, this means you have
to save first your project or to reload it to forget changes
you don't want, and at the end of the update the project is saved, so you can't
undo an update.
This feature is dedicated to use projects defining
librairies, not to work at several on the same project,
for that see Project control
and Project synchro
- Project control 1.2.3
To manage case of projects imported as library
- The previous releases of BOUML cannot read a project
saved with this version. Obviously this release is
able to read the projects made by previous releases of BOUML.
4.14
September 12th 2009
- When you deleted a package through a plug-out the container
package was not marked modified and was not saved without an
other reason marking it modified, and an error occurred when you
reload the project, fixed.
- Under Windows, after exiting from Bouml using the [X]
button in the title bar (rather than through the menu),
the main window is closed but it is possible to have
the bouml.exe process still alive and looping
indefinitely (problem not reproducted signaled by only one user), bypassed.
- In a class diagram it is now possible to resize the classes
drawn with the standard representation (not using an icon)
- New drawing setting hide get/set operations applying
on 'official' get and set operations in class diagrams.
By default get and set operations are shown.
- New C++ generation setting inline force include in header,
when it is set the types referenced in the profile of the inline
operations produce includes in the header like this was
obligatory the case with the previous releases, else the code generator
doesn't take care if there are inline operations to compute
dependencies. This setting values true by default
for the already existing projects to not perturbate them,
but false by default when you create a new project.
- C++ Generator 2.15
a space was missing between the two last > in the
definition of a template class whose last formal has
a default value being a template form (i.e. finishing by a >)
and also in the instantiation of a template class where
the last actual is a template form but doesn't correspond
to the last formal (next formals having default value)
To manage new generation setting inline force include in header
To avoid a crash on exit when bouml exits before.
Follow the new API.
- C++ Reverse 2.12
Java Generator 2.19
Java Reverse 2.15
Java Roundtrip 1.2
Java Catalog 2.14
Php Generator 1.7
Php Reverse 1.5
Python Generator 1.3
Idl Generator 2.12
Roundtrip body 1.10
To avoid a crash on exit when bouml exits before, mainly for
java catalog because other plug-outs finish automatically.
Follow the new API.
- Plug-out upgrade 1.15
To manage new generation setting inline force include in header
To avoid a crash on exit when bouml exits before.
Follow the new API.
- XMI2 Generator 1.11.1
To export transition's description and tagged values.
- Plug-out empty
Upgraded by plug-out upgrade.
- The previous releases of BOUML cannot read a project
saved with this version. Obviously this release is
able to read the projects made by previous releases of BOUML.
4.13.1
July 8th 2009
- Improvement to diminuish the needed time to load a project,
mainly in case of projects containing Php definition
obtained by a reverse producing artifacts having a long
Php definition
- C++ Reverse 2.11.1
Java Reverse 2.14.1
Java Roundtrip 1.1.1
Java Catalog 2.13.1
Php Reverse 1.4.1
speed improvement
4.13
July 3th 2009
- Add active on activity, class and state
- Add type specification of function's parameters and return values
(pep-3107).
When a return type is specified (it is not empty) the keyword ${type}
produces the return type prefixed by ' -> '
When the type of a parameter is specified (it is not empty) the corresponding
${<n>} produces the type prefixed by ': ' if the keyword is
part of the parameter list definition (between ${(} and ${)})
The code generator doesn't place the types between two string delimiters
by itself, to produce a string with delimiters you have to enter these
delimiters in the type definition at UML level.
By default when you add a parameter the keyword ${<n>}
is absent, it is added only if you set the new generation setting
operation of Python 3 (pep-3107) (generation settings dialog Python[2]),
and you have to change by yourself the default operation definition in the
generation settings to add ${type} between ${)} and ':'
- Plug-out upgrade 1.14
Add operations isActive and set_isActive on
UmlBaseActivity, UmlBaseClass and UmlBaseState.
Add operations isPython_3_operation and set_IsPython_3_operation
on PythonSettings
- Python Generator 1.2
To manage type specification of function's parameters and return values
- C++ Generator 2.14
C++ Reverse 2.11
Java Generator 2.18
Java Reverse 2.14
Java Roundtrip 1.1
Java Catalog 2.13
Idl Generator 2.11
Php Generator 1.6
Php Reverse 1.4
Roundtrip body 1.9
Follow the new API.
- Html documentation Generator 2.18
To import/export isActive.
To manage type specification of function's parameters and return values
Fixe the generation of the description of the elements defined in Java and/or
Php and/or Python
- XMI2 Generator 1.11
XMI2 Import 1.7
To import/export isActive.
- Plug-out empty
Upgraded by plug-out upgrade.
- The previous releases of BOUML cannot read a project
saved with this version. Obviously this release is
able to read the projects made by previous releases of BOUML.
4.12.4
June 11th 2009
- Browser search allows now to search for elements depending
on their stereotype.
- The menu miscellaneous has the new toggle
completion in dialog, it is set by default to be
compatible to the behavior of the previous releases. When it is set
and you enter a string in a list of choices (combo box) in a
dialog, an auto completion/search is done, note this one is non
case sensitive (Qt limitation). If you don't like this
auto completion/search, unset the toggle.
- Internal extension of the Plug-out API for Java Roundtrip.
- C++ Generator 2.13
A dependency stereotyped friend produced a wrong code
in case the target class was a template, fixed.
Follow the new API.
- Plug-out upgrade 1.13
A crash occurred when you upgraded an old plug-out
without Python management, fixed.
Follow the new API.
- Java Roundtrip 1.0
New plug-out, please refer to the
documentation.
- C++ Reverse 2.10
Java Generator 2.17
Java Reverse 2.13
Java Catalog 2.12
Idl Generator 2.10
Php Generator 1.5
Php Reverse 1.3
Python Generator 1.1
Roundtrip body 1.8
Follow the new API.
- XMI Generator 1.4.6
When a parameter of an operation doesn't have type
the token UML:Parameter wasn't closed, fixed.
- XMI2 Generator 1.10.2
The base type of a class stereotyped typedef
is now produced in an extension form supposing you ask for them
Import Interface
May 5th 2009
New user contribution, please refer to contributions
4.12.3
April 29th 2009
- Since 4.12 because of change concerning the z-dimension of lines
in diagrams it was difficult to select small elements connected
to a line in diagram and to connect required '(' and provided 'O'
representations in a component diagram, fixed.
- You can now close all the opened diagrams through the entry
Close all added in the global menu Windows
4.12.2
April 18th 2009
- When you duplicated a state Bouml
could crash, fixed.
- When you deleted attribute or operation of a class through a plug-out
the drawing of the class wasn't updated in already opened diagrams,
(the deleted members was still visible), fixed.
- Python Generator 1.0.9
In the previous releases the first line of a docstring was indented,
then the next lines was produced without adding the current indentation.
Now all the lines of a docstring are indented to follow pep-0257.
- Plug-out upgrade 1.12.11
Add the operation importProject on UmlBasePackage,
returns the UmlPackage corresponding to the imported
project or 0/null in case of an error.
- Plug-out empty
Upgraded by plug-out upgrade.
4.12.1
March 28th 2009
- When a class is associated to a relation (for instance in case of a class relation)
and you deleted the class, the plug-out API operation
UmlRelation::association() wrongly returned the deleted class, fixed.
- In a diagram when two elements was link by a line (whatever it represented)
and one the element contained the other one, the line was not drawn. This
was mainly a problem in case of high-level transition from a composite
state with a target inside the composite state. Fixed.
- An auto scroll is now made if necessary when you move in a diagram the mouse
with the center or right click down.
- Python Generator 1.0.8
When a class referenced an other one placed in the same python package, the
python code generator wrongly produced <artifact name>.<class name>
rather than <package name>.<artifact name>.<class name>,
fixed.
In the special case of the artifact is named __init__ this one is now
not generated, this means <package name>.<class name> is produced
- XMI2 Generator 1.10.1
When you defined an association between a class and an actor an unexpected and
inconsistent attribute was generated, fixed.
4.12
March 15th 2009
- In a communication diagram, when you used the menu to
change the geometry of a junction between two instances without
supporting yet a message, Bouml crashed, fixed.
- When you duplicate an activity Bouml
may crash, fixed.
- In an activity diagram, when an activity partition
was in horizontal display mode, and you assigned any colour to it,
then close the diagram and re-open it, you got an error message
and a part of the diagram was lost, fixed.
- In a state diagram it was possible to resize choices by selecting
them with other elements and doing a rezise, same thing for
decision and merge in an activity diagram, fixed.
- The virtual desktop set through the environment dialog
was not taken into account when you started Bouml, fixed.
- Add new US diagram formats : Letter, Legal, Tabloid,
Letter landscape, Legal landscape and Ledger.
- Search and referenced by dialogs are now not modal,
also add buttons to mark/unmark found elements.
- It is now possible to add marked elements in class, use case,
component and deployment diagrams
though the diagram menu entry add marked elements.
- It is now possible to ask for to add related elements in
diagram for a class, use case, package, component, artifact
and deployment node.
A related element is an element having a relation with
the current element whose can be shown in the current diagram
and part of the browser.
- The previous releases of BOUML cannot read a project
saved with this version. Obviously this release is
able to read the projects made by previous releases of BOUML.
4.11
February, 15th 2009
- Add specification on activity and state, used
to indicate an implemented operation. Add entries in
menu of operation to create an implementing activity
or state, or to access to them.
- XMI2 Import 1.6
Import specification on activity and state.
The previous releases force the roles of the relation,
regions and entry/exit pseudo states to not be anonymous,
not done anymore.
- XMI2 Generator 1.10
Html documentation Generator 2.17
Export specification on activity and state.
- Plug-out upgrade 1.12.10
Add the operations specification and
set_Specification on UmlBaseActivity and
UmlBaseState. Add the operation methods on
UmlBaseOperation.
- Plug-out empty
Upgraded by plug-out upgrade.
- The previous releases of BOUML cannot read a project
saved with this version. Obviously this release is
able to read the projects made by previous releases of BOUML.
4.10
February, 7th 2009
- Add accept call, reply, create object, destroy object,
test identify, raise exception and reduce
activity actions.
- For Python a default definition of __init__ is now
specified through the generation settings, this one
is used when a class inherits other class(es), the
definition asks for mother class(es) initialization
through the form super(classname, self).__init__()
- In diagrams, now when you move a fragment the textes
in collision follow it.
- Python Generator 1.0.7
when a class inherits other class(es) without defining __init__
its auto generated definition now contains
super(classname, self).__init__()
- Plug-out upgrade 1.12.9
Bypass a bug on QVector assignment in Qt 2.3 (release used for Windows)
by modifying UmlBaseComponent::set_AssociatedClasses(),
UmlBaseArtifact::set_AssociatedClasses() and
UmlBaseParameterSet::set_Pins()
Add accept call, reply, create object, destroy object,
test identify, raise exception and reduce
activity actions management.
To access/modify the new Python generation settings giving
the default __init__ definition.
- XMI2 Import 1.5
XMI2 Generator 1.9
Forms produced / expected for provided and required interface
and for realizing classes was not the right ones, fixed.
Warning, the import of the forms
produced by the previous releases is not managed.
Import / export of added activity actions.
- Html documentation Generator 2.16
Generate added activity actions
Produce the initialization of the attributes, relations and
operation's parameters at UML level.
- Plug-out empty
Upgraded by plug-out upgrade.
- The previous releases of BOUML cannot read a project
saved with this version. Obviously this release is
able to read the projects made by previous releases of BOUML.
4.9.3
January, 25th 2009
- To confirm the edition of a relation whose target was a read-only class
and without properties on the first role produced an error message,
the only solution was to cancel the edition, fixed.
- Extends the referenced by command searching for elements
in diagrams. To be find in a diagram an element must be directly
represented, this means for instance an operation nor an
attribute can't be find in a class diagram.
- Add management of ${type} for Php in operation,
attribute and relation dialogs, a priori used in
comment for instance php-comment forms. Note
${t<n>} was already managed.
To establish through the generation settings
a default description for the class,
operation, attribute and relation using
@return, @var and @access forms
helps you to generate php-comments. Of course it is
also possible to write a plug-out modifying
the description to use these forms including
@param depending on the element definition.
- Php Generator 1.4.6
Add management of ${type} in operation
generation (other cases already managed),
a priori used in comment for instance php-comment forms.
- Php Reverse 1.2.2
Parse comments to search for @param,
@return, @var and @access forms.
- Java Generator 2.16.6
In the previous releases, for an operation declared abstract
of defined in an interface, when the '{' corresponding to the
start of the body was reached a ';' was produced and the generation
of the operation was done.
Now a ';' is produced and the generation continues after the
first '}' placed after ${body}.
- Html documentation Generator 2.15.1
The description of an operations or a class stopped when a '{'
was reached, and the description of an attribute or a relations
stopped when a ';' was reached, fixed.
4.9.2
January, 11th 2009
- A crash may occurred when you changed the
drawing setting depending on the changes made before, fixed.
- The Plug-out operation UmlBaseClass::isPythonExternal()
returned if the class was external for Php rather then for
Python, fixed.
- Add management of ${association} in Python for relations
and getters/setters associated to a relation.
- Fill in white the part containing the name/type of a combined fragment
when its color is transparent and its name/type is not empty.
- Python Generator 1.0.6
To manage ${association}.
4.9.1
January, 5th 2009
- In an activity, when you created an
element through an activity diagram placing the element directly on
a partition, this element was wrongly nested in the partition in
the browser, and it was impossible to reload the project.,
fixed.
When you load a project the elements wrongly
nested in a partition are automatically extracted to come back
to a consistent project.
- Java Reverse 2.12.5
Java Catalog 2.11.5
The last character of a comment may not be placed
in the description, fixed.
- XMI2 Generator 1.8.1
To export state entry, do behavior and exit.
- XMI2 Import 1.4.1
To import state entry, do behavior and exit.
Some changes to import file produced by AndroMDA
- State machine generator 1.4.1
A C++ virtual destructor with an empty body
is now defined on each class created by the generator.
4.9
December, 23th 2008
- The modeler entered in an infinite loop
when you tried to change the geometry of an extension (uni
directional association from a stereotype-class to a
meta class), fixed.
- When a class was present in at least two
of the provided required and realizing lists of a component
and you deleted the class, saved the model then reload it,
the model was inconsistent and a crash can occurred, fixed.
- Operation's parameters using accentued characters in their
name or type was wrong written in diagrams and some
dialogs and menus, fixed.
- Add activity partitions (swimlanes), please refer
to the documentation.
- In state and activity diagrams it is now possible to
resize forks and joins.
- Check a property (tagged value) is present
only one time when you valid the edition of an
element.
- Now Add inhnerited operations doesn't propose
getter and setter operations of mother
classes.
When you move an attribut or relation by drag&drop
the associated getter and setter operations
are now deleted (the marks allow to move an attribut or relation
and its associated getter and setter
operations).
- Java Generator 2.16.5
In the previous releases a dependency stereotyped
import to a nested class produced an import
form concerning the top container class. Now the
import form concerns the nested class.
- Java Reverse 2.12.4
Java Catalog 2.11.4
When the default definition of an element doesn't use
${description}, remove the first/last line in
the comment when it is empty or only contains spaces
or tabs
The comments placed before the first package or import
form in a reversed file are associated to the corresponding
artifact.
- Plug-out upgrade 1.12.8
To fixe definition of operations set_AssociatedDiagram
to take into account the case where you unassign
the association (diagram is null)
To add activity partitions
- Html documentation Generator 2.15
XMI2 Generator 1.8
XMI2 Import 1.4
To manage activity partitions.
- Plug-out empty
Upgraded by plug-out upgrade.
- The previous releases of BOUML cannot read a project
saved with this version. Obviously this release is
able to read the projects made by previous releases of BOUML.
- Note : Reference manual up to date
4.8.4
December, 7th 2008
- To validate the edition of a
relation whose first role is read only and without
property (tagged value) produced a crash, fixed.
- It is now possible to associate an icon to the
stereotypes defined in a profile by specifying
a picture file.
In a diagram the image is used without modification
when the scale is 100%, else it is resized.
This image is used in the diagrams for
classes when the drawing mode
is natural, components when you ask
for to use an icon, packages (context not written),
state actions (behavior not written),
activity object nodes, deployment nodes and artifacts.
In this case the name of the element is written under
the icon. These icons are not
exported in SVG.
The picture is also used in the browser when the
element is not deleted, the image is resized
to have its width and weight less or equal to 16.
For a plug-out the picture path is attached
to the property (tagged value)
stereotypeIconPath of the class-stereotype.
- It is possible to define a shortcut to do a browser search.
- C++ Generator 2.12.9
Java Generator 2.16.4
Idl Generator 2.9.5
Php Generator 1.4.5
Change in the generated indents to take into
account a class definition whose definition
is indented (definition starts by spaces or tabs).
- C++ Reverse 2.9.3
To not produce a syntax error on a forward declaration
of a struct, union or enum inside the definition
of a class, struct or union. Like it was already
made for a class, these forward declarations produce
an extra member in the model.
- XMI2 Generator 1.7.2
XMI2 Import 1.3.2
To manage stereotype icons.
- Roundtrip body 1.7.2
Indicate the line number where an invalid
preserved block starts.
- Rose project import 2.1.2
Fixe a possible crash.
4.8.3
November, 16th 2008
- Fixe problems concerning the duplication of getters
and setters
- C++ Generator 2.12.8
Java Generator 2.16.3
Idl Generator 2.9.4
Php Generator 1.4.4
Bypass a bug in the Qt operation QCString::remove
whose can indirectly produces a crash
- Global change 1.2
To manage Python
- Note : Reference manual up to date
4.8.2
November, 11th 2008
- Html documentation Generator 2.14.2
To also produce Python definitions.
Under Windows, for the C++ version, an extra dot may be added
at the end of the selected directory's name
returned by QFileDialog::getExistingDirector()
(problem detected by a user when the directory path
starts by //), add a hack to manage that.
- .pro Generator 2.1.5
Add the hask concerning the extra dot like for the Html generator.
- Deploy 1.1
Add Python management.
A class is deployed for a given language only when it is
non external and has a non empty definition.
Classes stereotyped stereotype or metaclass
are not deployed.
An associated artifact is created for a class only when it is
deployed for at least one language.
- Uml projection 1.1
To manage Python
- Plug-out upgrade 1.12.7
To add operations to access / modify Python definitions.
Note : you must define the C++ preprocessor variable
WITHPYTHON when your plug-out is implemented in C++ and you
defined WITHCPP WITHJAVA WITHPHP and WITHIDL.
- Plug-out empty
Upgraded by plug-out upgrade.
4.8.1
November, 3th 2008
- To modify through a plug-out some
generation settings can produce a crash, fixed.
You also have to fixe your plug-outs with plug-out upgrade.
- Add meta classes management. A meta class is a class stereotyped
metaclass.
The path of a meta class (by default
http://schema.omg.org/spec/UML/2.0/uml.xml or
http://schema.omg.org/spec/UML/2.1/uml.xml
depending on the XMI generation) is memorized
through the property (tagged value) metaclassPath.
- Modify the way a stereotype extends a meta classe.
In the previous releases you used the stereotype tab of the
class editor, and the extending classes was memorized in
the property (tagged value) stereotypeExtension.
Now an extension is suported by an uni directional
association from the stereotype (class stereotyped
stereotype) to a meta class (class stereotyped
metaclass). The explicit multiplicity 1
indicates the extension is required.
When you load a project the properties
stereotypeExtension of the stereotype are converted
to extensions, the needed meta classes are created.
You have to modify your plug-outs
to use the meta classes and extensions rather than
the properties stereotypeExtension on the
stereotypes.
- Plug-out upgrade 1.12.6
To fixe some setter operations on UmlSettings, CppSettings,
JavaSettings, IdlSettings and PhpSettings.
- XMI2 Generator 1.7.1
XMI2 Import 1.3.1
Html documentation Generator 2.14.1
To manage meta classes and extension.
- Deploy 1.0.1
To not deploy classes stereotyped stereotype nor
metaclass. Of course to apply it on a class view
part of a profile seems strange.
- Uml projection 1.0.2
To not project classes stereotyped stereotype nor
metaclass nor placed under a package stereotyped
profile.
- Plug-out empty
Upgraded by plug-out upgrade.
4.8 patch 1
October, 26th 2008
- Since the release 4.6 a crash occurred when
only one language is selected and you modified the parameters
list of an operation defined for an actor placed in a
use case or a use case view, fixed.
- To manage the special form used to initialize an enum item
in Java (value given in parameter rather than throw
an assignment).
- On attribute and relation add the property modifiers
derived, union (only active when derived
is set), ordered and unique.
- New drawing settings show attribute modifiers
and show relation modifiers
to how / hide property modifiers in class diagrams.
By default property modifiers are not shown.
- Java Generator 2.16.2 patch 1
To manage the special form used to initialize an enum item
(already managed by Java Reverse and Java Catalog).
- Python Generator 1.0.5
In the previous release the code generation
was done for Python 2.2 (explicit object
inheritance) depending on the 2.2 flag at
the generation setting level rather than at the
classes level, fixed.
In an operation definition ${class} produces
the name of the class containing the operation.
- Plug-out upgrade 1.12.5
To add the operations isDerived(), isDerivedUnion(), isOrdered(), isUnique()
set_isDerived() (set both if the property is derived and if yes
if it is derived union), set_isOrdered() and set_isUnique.
on UmlBaseAttribute and UmlBaseRelation
- Html documentation Generator 2.14
Export new property modifiers.
Upgraded by plug-out upgrade.
- XMI2 Generator 1.7
XMI2 Import 1.3
To manage new property modifiers.
To manage stereotypes extending several meta
classes.
Upgraded by plug-out upgrade.
- Plug-out empty
Upgraded by plug-out upgrade.
- The previous releases of BOUML cannot read a project
saved with this version. Obviously this release is
able to read the projects made by previous releases of BOUML.
4.7
October, 10th 2008
- The default screen set through the environment dialog is not
taken account account when it is invalid (for instance
when the left coordinate is greater than the right
coordinate). Bouml now warns you in this case, and
the environment dialog now doesn't allow wrong values.
- A state region can now contain states (including initial
and final), pseudo states and state actions.
- Import generation settings now also import C++ include,
Java import, Python import and Idl include definitions
- Plug-out upgrade 1.12.4
Modify the type of the first parameter of the operation
UmlBaseStateAction::create() to UmlItem.
- Plug-out empty
Upgraded by plug-out upgrade.
- The previous releases of BOUML cannot read a project
saved with this version. Obviously this release is
able to read the projects made by previous releases of BOUML.
4.6.1
September, 24th 2008
- Fixe a bug in the API with plug-outs occuring
when you ask for a sequence diagram definition
where an interaction use cover several
life lines.
Because of this bug the XMI2 generator can crash in
when used with the previous release of the modeler.
4.6
September, 22th 2008
- Under Windows, when the user configuration is wrong and
designates a non writable home directory contrarilly
to the directory given the environment variable
USERPROFILE, the environment dialog is show each
time you start the modeler, fixed.
- When only one target language is selected and you edit
an operation, a modification of a parameter impacting the default
definition of the operation was only done when you finish the
cell edition by clicking in an other cell of the parameters table.
Now this is also done when you go in an other tab or validate the
operation edition (to click on an other cell isn't necessary).
- A fragment can now reference a diagram, mainly to define
interaction use in sequence diagram. Arguments and
return value can also be specified through a string
(you have to give the full form containing parenthesis
and ':' if expected).
- XMI2 Generator 1.6
Export interaction uses, instance
destructions, and continuations.
Upgraded by plug-out upgrade.
- .pro Generator 2.1.4
Add WITHPHP and WITHPYTHON if at least two WITH*
are defined. Note : compatible with old
plug-outs without Php nor Python.
- Plug-out upgrade 1.12.3
On JavaSettings add operations
isForcePackagePrefixGeneration and
set_IsForcePackagePrefixGeneration.
On CppSetting add operations builtinIn, builtinOut,
builtinInOut and builtinReturn taking
a string in argument, if the argument is a type
defined in the first tab of the 'generation setting'
dialog the returned value is the parameter definition
depending on the direction, else a empty string/null.
Also add setter operations set_BuiltinIn, set_BuiltinOut,
set_BuiltinInOut and set_BuiltinReturn
taken in argument the type and the new parameter
definition, add the type if it is not yet defined through
the first tab of the 'generation setting' dialog.
On UmlBaseFragment add operations refer
returning the diagram referenced by the fragment or null,
arguments, covered returning
the list of covered instances (life lines).
On UmlBaseFragmentCompartment add operations
startContinuation and endContinuation.
Add two pseudo message kinds in aMessageKind :
aDestruction and anInteractionUse.
The pseudo message corresponding to an interaction use
is produced in the corresponding fragment and for only one
of the covered instances. In these two new cases the
operation to() returns as from()
Note : even the python management is not done in plug-outs,
you must define WITHPYTHON when
your plug-out is implemented in C++ and you
defined WITHCPP WITHJAVA WITHPHP and WITHIDL.
- Plug-out empty
Upgraded by plug-out upgrade.
- The previous releases of BOUML cannot read a project
saved with this version. Obviously this release is
able to read the projects made by previous releases of BOUML.
4.5.1
September, 8th 2008
- Some files like .boumlrc are created into your
home directory, unfortunatelly under Windows some
users have a wrong configuration (for instance the value of the
environment variable HOMEPATH is empty) and the
home directory is not writable. In this case
the value of the environment variable USERPROFILE
is used to specify the home directory.
- In the previous releases, to hide all the attributs/operations
of a class in a class diagram through individual attribute/operation
visibility and setting specify visible member rather than hidden
ones didn't have effect, fixed.
- Fixing in the operation dialog similar to the one made in
the Java generator, see below
- When only one target language is selected, when you modify
the operation parameters through the associated dialog, the definition
for the target language is now also updated (in the previous versions
you had to add/remove/modify parameters by hand in the tab associated
to the target language). However I encourage you to continue to
check the definition for the target language after modifying the
parameters (mainly for C++ where modifiers are produced depending on
the parameter types and directions).
If you don't like this feature, just set another language through
the menu Languages.
- Java Generator 2.16.1
In the previous releases, when the description or the
definition of an operation defined in an interface
or an @interface contains a '{', this character
was replaced by a ';' and the code generation
of the operation was stopped even when this '{'
didn't correspond to the beginning of the body.
Now this management is done only for the first '{'
placed after ${)}.
- XMI2 Generator 1.5.9
Fixings concerning sequence and communication
diagram export
- Global change 1.1.1
A tab can be specified (out of stereotype) through
\t like a return is specified through a \n.
- Project synchro 1.2.2
Project control 1.2.2
Java Reverse 2.12.3
Java Catalog 2.11.3
To use USERPROFILE when the user configuration
specify an invalid home directory under Windows.
4.5
August, 26th 2008
- Previous releases may crashs when
you load a project containing a modeled class instance
(part of the browser) having a relation valuing a
deleted modeled class instance (deletion was made in
a previous session)
, fixed.
- Add Java generation setting force package prefix generation.
This setting is set by default for compatibility with previous releases.
- Java Generator 2.16
In the previous releases the name of a referenced class
was prefixed by its package when it is not part of the current
package even if you asked for import generation
through dependencies stereotyped import.
Now a referenced class is not prefixed by its package when the class
or its package is imported and force package prefix generation
is not set.
- The previous releases of BOUML cannot read a project
saved with this version. Obviously this release is
able to read the projects made by previous releases of BOUML.
4.4.3
August, 16th 2008
- Previous releases may crashs when
you load a project containing modeled class instances
(part of the browser) specifying value for relation(s)
, fixed.
- Add keywords ${v<n>} to generate operation
parameter default value in Python like for C++ and Php.
- Modify management of asynchronous call in sequence diagrams
using overlapping activity bars : an activity bars
is now created on the receiver side like for synchronous calls.
- Sometimes the width of some duration bars in sequence
diagrams became too fine, fixed.
- Python Generator 1.0.4
To manage keywords ${v<n>}
- XMI2 Generator 1.5.8
To generate communication diagrams
(not managed by XMI import).
To generate sequence diagrams (not managed by XMI import).
The result is unspecified in case of
non consistent diagrams or diagrams not using
overlapping activity bars or when an
asynchronous call doesn't create a new overlapping
activity bars on the receiver side.
Bug fixed by Plug-out upgrade.
- Html documentation Generator 2.13.5
Spelling (attribute)
- Plug-out upgrade 1.12.2
In C++ the operation UmlBaseFragment::container()
of the plug-outs may return a non
initialized value, fixe this problem.
- Plug-out empty
Bug fixed by plug-out upgrade.
4.4.2
July, 14th 2008
- Improve performances of the modeler to diminuish
execution time of deletions.
- XMI2 Generator 1.5.7
To generate import and extend forms rather than dependencies
between use cases if needed (already managed
by XMI import).
To generate extension points.
To generate associations between use cases and actors
extracted from use case diagrams (not managed
by XMI import).
- XMI2 Import 1.2.11
To import extension points.
4.4.1
June, 29th 2008
- Add keywords ${v<n>} to generate operation
parameter default value in C++ and Php.
- Improve performances of the modeler to diminuish
execution time of some operations.
- C++ Generator 2.12.7
C++ Reverse 2.9.2
Php Generator 1.4.3
Php Reverse 1.2.1
Uml projection 1.0.1
Html documentation Generator 2.13.4
To manage keywords ${v<n>}
- Use case wizard 1.1.1 (C++ version)
Get character set from file .boumlrc
rather than from environment variable BOUML_CHARSET.
4.4
June, 10th 2008
- To manage case of users strangly killing Bouml execution
the first time it asks for environment definition.
Yes, some users did that ... sigh.
- New drawing setting named Show stereotype properties
allowing to show or not the tagged values associated to
a stereotype. By default they are not shown.
The values are shown in a note attached to the stereotyped element,
except for the attributes and operations of classes in a class diagram
whose are shown inside the class itself.
- new macro ${nAME} producing artifact's name
converted to lower case.
- Php Generator 1.4.2
Python Generator 1.0.3
Idl Generator 2.9.3
To manage ${nAME}
- Java Generator 2.15.2
To manage ${nAME}.
Now the dependencies stereotyped import also
apply on the classes declared external.
- C++ Generator 2.12.6
To manage ${nAME}.
To not generate extra ',' when actual(s) are missing
for parameterized class binding (formal(s) have default value)
- Java Reverse 2.12.2
Java Catalog 2.11.2
In the previous releases a form T<...X...>
produces a relation to the generic T when it is
part of the reverse classes or known through a
catalog. Now the form produces a relation to X
if X is a known class and T is defined through
the generation setting as the translation in Java
of a relation/attribute stereotype (this is the case
by default for List for instance)
- Roundtrip body 1.7.1
Explain why the body of an operation can't be updated.
- The previous releases of BOUML cannot read a project
saved with this version. Obviously this release is
able to read the projects made by previous releases of BOUML.
4.3.5
May, 26th 2008
- The class diagram menu entry Add classes of the selected class view
now also add the nested classes.
- Unselect elements in diagram before a copy
into the clipboard.
- C++ Generator 2.12.5
fixe bug concerning classes declared external.
4.3.4
May, 18th 2008
- Bugs fixing concerning the attribute in class-stereotype.
- The files .bouml .boumlrc and .bouml_shortcut
can't be read when the pathname of your homedir contains
non latin1 characters, for instance under Linux
when your login name use Cyrillic characters. Fixed.
- When a class instance is drawn in a diagram, :
is now written even if the instance is anonymous.
In an object diagram the instance name and class are now
underlined.
- Java Reverse 2.12.1
Java Catalog 2.11.1
Project synchro 1.2.1
Project control 1.2.1
To manage homedir containing
non latin1 characters.
4.3.3
May, 9th 2008
- To set the default screen through the environment dialog
in case of a multiple screens usage wasn't effect, fixed
- Fixe problem in the help dialog.
- When a class stereotyped typedef is read-only
and you edit it, the base type is empty in the
tab UML and the code preview in C++ tab
doesn't show the base type too. Fixed
- The forms @{...} are now substituted in the
code generated for the generalizations/realizations.
- Python Generator 1.0.2
Fixe a bug in the computation of the dependencies to
generate the import forms.
To substitute forms @{...} in the code generated
for the generalizations/realizations.
- C++ Generator 2.12.4
Java Generator 2.15.1
Php Generator 1.4.1
Idl Generator 2.9.2
To substitute forms @{...} in the code generated
for the generalizations/realizations.
4.3.2
May, 5th 2008
- Modify the attribution of the socket port number used
to exchange data between the modeler and the plug-outs.
The goal is to solve problems with firewall sometimes blocking
the plug-outs.
- In the previous releases some information was get from environment
variables, for instance BOUML_ID. Now these informations
are memorized in the file .boumlrc placed into the home
directory, and set through a dedicated dialog called through the
entry Set environment in the menu Miscellaneous.
This dialog is automatically called in case .boumlrc doesn't
exist, and of course the values set through the defined environment
variables are proposed.
The shortcuts are now saved in the file .bouml_shortcuts
- The chapter of the reference manual corresponding to the type of the
element selected in the browser is now shown by using the
F1 key or the help menu (About dialog is now
associated to the F2 key).
The chapter starting is used if no project is load,
if nothing is selected in the browser the chapter
browser items is used.
The directory where the documentation is placed can be specified
by setting the environment (see above), you can also indicate which
navigator will be used to show the HTML pages.
Two setups are now distributed for Windows, one of
them install the documentation.
- When you add an inherited operation the new operation is set not abtract.
If it is not empty the Php definition is now forced to contain
${body}, to help in case the inherited operation is abstract.
- In the diagrams add go up/down to change a little the level of
an element contrarilly to upper and lower.
Of course you can define shortcuts to these new commands.
- XMI2 Import 1.2.10
Little improvements.
- Project synchro 1.2
Project control 1.2
To not use environment variables. You must use the new release of
the modeler to create the file .boumlrc before using these
tools.
4.3.1
April, 27th 2008
- When a plug-out is launch from an other one the trace is
not cleared. It is also not cleared before the executions
of the check/init plug-out associated to the stereotype.
- When an element stop to be stereotyped by a stereotype
part of a profile, the properties associated to the stereotype
are now removed.
- XMI2 Generator 1.5.6
To generate profile imports associated to dependencies
stereotyped import between profiles.
Upgraded by Plug-out upgrade.
- XMI2 Import 1.2.9
To manage import of profiles defined in another XMI file.
Other little improvements.
Upgraded by Plug-out upgrade.
- C++ Generator 2.12.3
Except if you explicitly ask for, the code generator tries to produce
declarations in the header files and includes in the source files.
Unfortunatelly this was also true for the template classes, fixed.
- Plug-out upgrade 1.12.1
Fixe operation isToolRunning defined on UmlBaseItem.
- Plug-out empty
Upgraded by plug-out upgrade.
4.3
April, 20th 2008
- When a diagram is read-only it is now possible to do
some operations like to save it in a picture.
- In the previous releases the header file of a C++
class declared external in C++ was always included in the header
file of the other classes whatever it is used (by reference
or pointer, or by value).
Now it is included in the source file if you explicitly ask for
through a dependency, whatever it is used.
Note this is the reverse for the classes non declared external.
To not modify the behavior of the already existing
dependencies to classes declared external, their definition
is forced to #include in header.
- XMI2 Generator 1.5.5
To produce constraints
- XMI2 Import 1.2.8
To import constraints
- C++ Generator 2.12.2
To manage new behavior of dependencies to classes
declared external.
- Plug-out upgrade 1.12
In the class UmlBasePackage
the operation findNamespace is renamed findCppNamespace,
the operation findPackage is renamed findJavaPackage and
the operation findModule is renamed findIdlModule,
If you call these operations you have to modify
your code to use the new names.
In the class UmlBaseOperation add the operations
cppContextualBodyIndent, set_CppContextualBodyIndent,
javaContextualBodyIndent, set_JavaContextualBodyIndent,
phpContextualBodyIndent and
set_PhpContextualBodyIndent.
In the class PhpSettings add the static operations
isGenerateJavadocStyleComment and
set_IsGenerateJavadocStyleComment.
In the class UmlBaseClass add the static operation
findStereotype.
In the class UmlBasePackage add the static operation
updateProfiles.
In the class UmlBaseItem add the operation
applyStereotype.
In the class UmlBaseFragmentCompartment modify the C++ definition
texts() to bypass Microsoft Visual C++ limitation.
- Plug-out empty
Upgraded by plug-out upgrade.
- The previous releases of BOUML cannot read a project
saved with this version. Obviously this release is
able to read the projects made by previous releases of BOUML.
4.2.1
April, 5th 2008
- In the previous release the python body of an operation
was set when a plug-out asked for to set the Php
body. Of course this was also the case for php reverse
and roundtrip body. Fixed.
- In all the previous releases, when Bouml was compiled with a Qt3,
when you opened a dialog from an other one, the first dialog was
lowered, bypassed.
- Add profile management, refer to the
documentation.
The profile imports from an other one are not yet managed.
Warning : only the properties associated
to the profile can have a name containing two ':', the others
will be removed.
- When you import a project into an other one, the plug-outs,
attribute and relation stereotype correspondences and the class
stereotype correspondences between the languages are now also
added when they don't yet exist.
- In the shortcut definition the key Suppr is renamed
Delete. In the previous releases some shortcut
definitions may be lost when you reload a project, fixed.
- Modify the header added (then remove) when you set add operation
profile on body edition through the menu languages to
help external editor (BOUML_EDITOR) to compute the indent.
- Idl Generator 2.9.1
To prefix the class names by their module if necessary.
To not produce the ',' after the name of the last enumeration item
- Python Generator 1.0.1
Artifact's name was missing in some cases in the code
generated to reference classes, fixed.
Auto generation of import forms based on generalization, this
means a generalization is also implicitly a dependency
stereotyped import.
- XMI2 Import 1.2.7
In the previous releases nested components was imported out of the container
component, fixed.
To import profiles and stereotypes.
To import manifestations.
To manage files produced by Eclipse (aggregate definition on
other relation side)
- XMI2 Generator 1.5.4
To produce profiles and stereotypes.
To produce the associations between artifacts and
other artifact or classes
through manifestations.
To optionaly generate relation as Eclipse
(aggregate definition on other relation side)
To allow to place <xmi:Documentation exporter="Bouml" ...>
in comment else some tools refuse to import produced XMI
or have problem after the import(for instance
Rational Software Architech)
- Html documentation Generator 2.13.3
To produce Profile/Stereotype rather than
Package/Class if needed.
4.2
February, 17th 2008
- Since the 4.0 it was not possible to modify the Php definition
of an operation through a Plug-out without blocking it
(including the Php reverse), fixed.
- New drawing setting named show attribute initialization
allowing to write attribute initialization in a
class picture in a class diagram. This setting have sense only
when you also ask for to show the full members definition.
By default this setting is set to false.
- Default operation parameter direction is now in
rather than inout.
- XMI2 Import 1.2.6
Improve management of primitive types.
- C++ Reverse 2.9.1
To read anonymous namespaces (however they are
not reported in the model).
- Uml projection 1.0
New plug-out setting the definitions/declarations
with their default value according to the
generation settings. Create also the necessary
deployment views and artifacts.
Typically used after an XMI import to project
the imported model in the desired language.
Refer to the documentation.
- Because the format of the BOUML files is changed,
the previous releases of BOUML cannot read a project
saved with this version. Obviously this release is
able to read the projects made by previous releases of BOUML.
4.1
February, 3th 2008
- When several artifacts have the same name and you edit a class,
the shown artifact may not the right one, and if you change it
the class may not be associated to the desired one, fixed.
- New drawing setting named show members multiplicity
allowing to write attribute multiplicity in a
class picture in a class diagram. This setting have sense only
when you also ask for to show the full members definition
and when the drawing language is UML.
By default this setting is set to false.
- New drawing setting named max members width
allowing to limit attribute and operation width to a given
number of characters. When the number of
characters needed by an attribute or an operation is greater
than max members width, the string is cut to
max members width characters and "..." is added.
Note : the optionally written visibility and stereotype
are not taken into in the member width.
- XMI2 Import 1.2.5
Spaces are replaced by '_' in the name of an imported class,
attribute or relation.
Fixe bug on operation parameter multiplicity reading.
- Because the format of the BOUML files is changed,
the previous releases of BOUML cannot read a project
saved with this version. Obviously this release is
able to read the projects made by previous releases of BOUML.
4.0
January, 27th 2008
- In the previous releases the position of the
use cases in a use case diagram may
not be the right one when you re-open the diagram and
the zoom is not 100%, or when you change the zoom later,
fixed.
- It was possible to move in the browser an element by
drag&drop into a read-only one,
fixed.
- Add management of Python
Currently the scope of Python is not as large as it is
for C++ and Java, for instance there is no Python definitions
in the state machine and activities because this seems useless.
- In the previous releases a class was always drawn as
an actor in a use case diagram,
now this is just the default and a class
can be drawn as a class (without members), or using
boundary, control or entity icon.
The name of use case is not
anymore a separated label and the size of an actor now
depend on its name, so, the position of the incoming
and outgoing arrows and the position of the name
will be impacted.
- Python Generator 1.0
New plug-out generating code for Python.
Refer to the documentation.
- Roundtrip body 1.7
To roundtrip Php bodies.
Follow the new API.
- C++ Generator 2.12
C++ Reverse 2.9
Java Generator 2.15
Java Reverse 2.12
Java Catalog 2.11
Php Generator 1.4
Php Reverse 1.2
Idl Generator 2.9
Plug-out upgrade 1.11
Follow the new API.
- Plug-out upgrade and other Plug-outs will
be upgraded later to manage Python.
A reverse for Python will be available later.
- Because the format of the BOUML files is changed,
the previous releases of BOUML cannot read a project
saved with this version. Obviously this release is
able to read the projects made by previous releases of BOUML.
Previous releases
Historic of releases 3.x, 2.x and 1.x