Today
-
r3644
(Added convenience constructor to DefinitionComparisonMessage...) committed by darren.pearce
- Added convenience constructor to DefinitionComparisonMessage. Was previously commented out while
working on new factored-out approach.
Sub-classes now use this.
Added convenience constructor to DefinitionComparisonMessage. Was previously commented out while
working on new factored-out approach.
Sub-classes now use this.
-
r3643
(DatabasePathClassDatum now allocates child indices automatic...) committed by darren.pearce
- DatabasePathClassDatum now allocates child indices automatically rather than requiring it to be
specified explicitly in the constructor. Old test rigs for DatabasePath still passed.
DatabasePathClassDatum now allocates child indices automatically rather than requiring it to be
specified explicitly in the constructor. Old test rigs for DatabasePath still passed.
-
-
r3641
(DatabasePath now passes its old test rig.
It now uses a Tree...) committed by darren.pearce
- DatabasePath now passes its old test rig.
It now uses a TreeMap from Integer to the AbstractDatabaseEntity. It also stores the first index
(now called a hierarchy index). The Datum class now has a hierarchyIndex (previously 'index') and a
childIndex (previously 'key'). This naming is clearer (hopefully!).
DatabasePath now passes its old test rig.
It now uses a TreeMap from Integer to the AbstractDatabaseEntity. It also stores the first index
(now called a hierarchy index). The Datum class now has a hierarchyIndex (previously 'index') and a
childIndex (previously 'key'). This naming is clearer (hopefully!).
-
r3640
(DatabasePath now has new constructor that allows the pre-pen...) committed by darren.pearce
- DatabasePath now has new constructor that allows the pre-pending of another definition (database
entity) to an existing listing. The sequence of definitions within the paths must all have
sequential indices as enforced with the other constructor. This allows a path like <table, column>
to be turned into <database, table, column>.
To facilitate this new constructor added getIdentifiers() method.
Put some comments in about needing to fix getDatabaseName, getTableName, getColumnName, etc.
Currently these methods don't work as expected due to the new approach where paths don't always
start with a database name. These problems are demonstrated by the TestDatabasePath test-rig in
which many of the tests fail at the moment. Fixing this in the next few commits.
DatabasePath now has new constructor that allows the pre-pending of another definition (database
entity) to an existing listing. The sequence of definitions within the paths must all have
sequential indices as enforced with the other constructor. This allows a path like <table, column>
to be turned into <database, table, column>.
To facilitate this new constructor added getIdentifiers() method.
Put some comments in about needing to fix getDatabaseName, getTableName, getColumnName, etc.
Currently these methods don't work as expected due to the new approach where paths don't always
start with a database name. These problems are demonstrated by the TestDatabasePath test-rig in
which many of the tests fail at the moment. Fixing this in the next few commits.
-
r3639
(Started work on factoring out database-level comparators.) committed by darren.pearce
- Started work on factoring out database-level comparators.
Started work on factoring out database-level comparators.
-
r3638
(Removal of redundant import.
) committed by darren.pearce
- Removal of redundant import.
Removal of redundant import.
-
r3637
(Removed redundant class TableComparator. The old sub-classes...) committed by darren.pearce
- Removed redundant class TableComparator. The old sub-classes now inherit directly from
DatabaseEntityComparator.
FullTableComparator now extends from new class CompositeDefinitionComparator which is a generic
aggregator of comparison messages from a list of 'sub' comparators.
Removed redundant class TableComparator. The old sub-classes now inherit directly from
DatabaseEntityComparator.
FullTableComparator now extends from new class CompositeDefinitionComparator which is a generic
aggregator of comparison messages from a list of 'sub' comparators.
-
r3636
(Removed some redundant imports.) committed by darren.pearce
- Removed some redundant imports.
Removed some redundant imports.
Last 7 days
-
r3635
(Many changes to the database comparison code.
The trigger f...) committed by darren.pearce
- Many changes to the database comparison code.
The trigger for these changes is that DatabasePath now allows paths like <table, column> rather than
requiring that all paths start with a database definition. e.g. <database, table, column> or
<database, table>. The empty sequence <> has also been removed. This is due to the generification of
the DatabasePath class which now uses the generic parameter to constrain the first argument. In
order to handle the empty sequence now, a 'top level' database entity called Catalog has now been
defined.
All the different constructors in the DatabasePath class have now been removed since the indices
defined in the meta-data classes (Datum) are used to ensure that any sequence has a sequence of
increasing integers. e.g. <table, column> or <table, primary key>.
Note that the refactoring of the DatabaseComparator has not been finished yet. So that everything
compiles, the DatabaseDefinitionComparisonReport class is now based on the new generic class
DefinitionComparisonMessage.
Essentially, the code is in a state of flux between two approaches. I'll finish this off tomorrow
morning hopefully. It will be a lot clearer by then.
Many changes to the database comparison code.
The trigger for these changes is that DatabasePath now allows paths like <table, column> rather than
requiring that all paths start with a database definition. e.g. <database, table, column> or
<database, table>. The empty sequence <> has also been removed. This is due to the generification of
the DatabasePath class which now uses the generic parameter to constrain the first argument. In
order to handle the empty sequence now, a 'top level' database entity called Catalog has now been
defined.
All the different constructors in the DatabasePath class have now been removed since the indices
defined in the meta-data classes (Datum) are used to ensure that any sequence has a sequence of
increasing integers. e.g. <table, column> or <table, primary key>.
Note that the refactoring of the DatabaseComparator has not been finished yet. So that everything
compiles, the DatabaseDefinitionComparisonReport class is now based on the new generic class
DefinitionComparisonMessage.
Essentially, the code is in a state of flux between two approaches. I'll finish this off tomorrow
morning hopefully. It will be a lot clearer by then.
-
run.jnlp (JNLP deployment (r3614b)) file uploaded by mavrikis
-
Labels:
Type-Installer
Featured
Java-WebStart
Labels:
Type-Installer
Featured
Java-WebStart
-
r3634
(Start of work towards generifying EntityComparison in the ba...) committed by darren.pearce
- Start of work towards generifying EntityComparison in the base class and generifying message types.
Start of work towards generifying EntityComparison in the base class and generifying message types.
-
r3633
(Renamed AbstractTableComparator to TableComparator. Is fine ...) committed by darren.pearce
- Renamed AbstractTableComparator to TableComparator. Is fine like this since have
'FullTableComparator' rather than going for AbstractTableComparator and TableComparator (for doing
the real work).
Renamed AbstractTableComparator to TableComparator. Is fine like this since have
'FullTableComparator' rather than going for AbstractTableComparator and TableComparator (for doing
the real work).
-
r3632
(FullTableComparator now chains calls on to the 5 'base' tabl...) committed by darren.pearce
- FullTableComparator now chains calls on to the 5 'base' table comparators, collecting all the
messages together.
FullTableComparator now chains calls on to the 5 'base' table comparators, collecting all the
messages together.
-
r3631
(Added various classes that are moving towards factoring out ...) committed by darren.pearce
- Added various classes that are moving towards factoring out the various comparisons that are all
currently done with DatabaseDefinitionComparator. Is work in progress at the moment. Will hopefully
be finished today/tomorrow. Is part of refamiliarisation/improvement to code clarity.
Added various classes that are moving towards factoring out the various comparisons that are all
currently done with DatabaseDefinitionComparator. Is work in progress at the moment. Will hopefully
be finished today/tomorrow. Is part of refamiliarisation/improvement to code clarity.
-
r3630
(DatabaseDefinitionComparisonMessage now provides convenience...) committed by darren.pearce
- DatabaseDefinitionComparisonMessage now provides convenience constructors. This provision has been
moved from DatabaseDefinitionComparisonReport.addMessage() so that the message class can stand alone
more easily in some small improvements to this code.
DatabaseDefinitionComparator calls to addMessage now changed so use new
DatabaseDefinitionComparisonMessage as appropriate.
DatabaseDefinitionComparisonMessage now provides convenience constructors. This provision has been
moved from DatabaseDefinitionComparisonReport.addMessage() so that the message class can stand alone
more easily in some small improvements to this code.
DatabaseDefinitionComparator calls to addMessage now changed so use new
DatabaseDefinitionComparisonMessage as appropriate.
-
migensystem.jar (JNLP deployment (3614b)) file uploaded by mavrikis
-
Labels:
Featured
Type-Package
Labels:
Featured
Type-Package
-
-
run.jnlp (JNLP deployment (r3614b)) file uploaded by mavrikis
-
Labels:
Featured
Type-Installer
OpSys-All
Labels:
Featured
Type-Installer
OpSys-All
-
-
r3629
(Added 'Activities World' label to the ecollaborator/activity...) committed by ToonT...@googlemail.com
- Added 'Activities World' label to the ecollaborator/activity-document panel. It is in message
bundle.
Added 'Activities World' label to the ecollaborator/activity-document panel. It is in message
bundle.
-
r3628
(The step amount option 'Random' is now in the message bundle...) committed by ToonT...@googlemail.com
- The step amount option 'Random' is now in the message bundle for customisation and localisation.
The step amount option 'Random' is now in the message bundle for customisation and localisation.
-
r3627
(Goal areas in activity documents now use the actual size of ...) committed by ToonT...@googlemail.com
- Goal areas in activity documents now use the actual size of the goal area to compute where the
subsequent elements should be placed. Eliminates large gap after goal areas.
Goal areas in activity documents now use the actual size of the goal area to compute where the
subsequent elements should be placed. Eliminates large gap after goal areas.
-
r3626
(Can now select the step used in animations in the activity d...) committed by ToonT...@googlemail.com
- Can now select the step used in animations in the activity document. Choices are Random, 1, 2, 3, or
4.
Can now select the step used in animations in the activity document. Choices are Random, 1, 2, 3, or
4.
-
r3625
(When the animation toolbar is added to an activity document ...) committed by ToonT...@googlemail.com
- When the animation toolbar is added to an activity document canvas the canvas component size is
reduced rather than the increasing the size of the entire component. Existing task layout no longer
affected.
When the animation toolbar is added to an activity document canvas the canvas component size is
reduced rather than the increasing the size of the entire component. Existing task layout no longer
affected.
-
r3624
(Moved the play (and new step) interface into a toolbar of ac...) committed by ToonT...@googlemail.com
- Moved the play (and new step) interface into a toolbar of activity document canvases rather than
using the title bar (limited UI options).
Moved the play (and new step) interface into a toolbar of activity document canvases rather than
using the title bar (limited UI options).
-
r3623
(Added some documentation to the EntityId class.
) committed by darren.pearce
- Added some documentation to the EntityId class.
Added some documentation to the EntityId class.
-
r3622
(Play/Pause menu now replaces play button in all the activity...) committed by ToonT...@googlemail.com
- Play/Pause menu now replaces play button in all the activity documents.
Play/Pause menu now replaces play button in all the activity documents.
-
r3621
(The play button is now a menu item in the 'My Document' acti...) committed by ToonT...@googlemail.com
- The play button is now a menu item in the 'My Document' activity document. Easily can replace all
play buttons with this menu. Menu will have other features soon.
The play button is now a menu item in the 'My Document' activity document. Easily can replace all
play buttons with this menu. Menu will have other features soon.
-
r3620
(New system for dealing with attributes in simple cases in pl...) committed by ser...@gmail.com
- New system for dealing with attributes in simple cases in place. Because of several ramifications,
the new algorithm for the calculation of relation-similarity between simple cases has had to be put
in place too. Sorry for the big commit.
Attributes are no longer fixed class variables in SimpleCase. Now the names of the attributes of a
simple case and their initial values are set at creation time. This allows the same class SimpleCase
to be used with other microworlds apart from eXpresser (e.g. ShapeBuilder).
Identity attributes are in place. Identity distances are calculated in SimpleCaseSimilarityMeasurer,
but are not integrated yet in CompositeCaseSimilarityMeasurer. This will be done after the relation
similarity is fixed (see bellow).
The new relation similarity has been implemented.
- In the former scheme, shapes were related to shapes (via the AttributeExpressions, aka tied
numbers). This presented several problems of directionality (i.e. if A.iterations, B.iterations and
C.moveDown use the same number, do the pairs A-B, B-C, and C-A have the same relation similarity?)
and cardinality (i.e. if A.iterations, A.moveDown, B.iterations and C.iterations use the same
number, do the pairs A-B, and B-C have the same relation similarity?).
- The new scheme links attributes with attributes. When two simple cases are compared for relations
similarity, a list is calculated for each attribute to see which other attributes (in the same or
other shapes) are connected to it via AttributeExpression). For each case, a Relation (new class in
this commit) is created. Relations are symmetrical, therefore if we compare A (with some A') in the
first example above, only two relations would be created for A (i.e. A.iterations-B.iterations,
A.iterations-C.moveDown); but if we compare A (with some A') in the second example, five relations
would be created (i.e. A.iterations-A.moveDown, A.iterations-B.iterations,
A.iterations-C.iterations, A.moveDown-B.iterations, A.moveDown-C.iterations). This relations are
compared to find the similarity between A and A' using the Jacquard index (i.e. rels(A
)-intersection-rels(A') / rels(A)-union-rel(A')).
This new calculation of the relations similarity does not work yet, because expressions are not
taking into account the links of subexpressions (i.e. it is not implemented yet that "5 + 4" is
linked to the attributes where that "4" is used, not just to the attributes where "5 + 4" is used).
This did not affect the former calculation of relations, but it affects the current one. This will
be implemented in the next commit (so this commit does not work perfectly, but at least it
compiles). The current scheme only works for constructions in which only expressions at the highest
level are shared.
Another important change is the clear distinction between distances and shapes when calculating
similarities (especially SimpleCaseSimilarityMeasurer); and the fact that distances are now weighted
(both the numerical distance and the identity distance).
Of course, in between all these major changes there is plenty of minor changes: new methods,
improved javadoc in some old methods, a couple of new classes (RelationEnd and Relation), etc.
New system for dealing with attributes in simple cases in place. Because of several ramifications,
the new algorithm for the calculation of relation-similarity between simple cases has had to be put
in place too. Sorry for the big commit.
Attributes are no longer fixed class variables in SimpleCase. Now the names of the attributes of a
simple case and their initial values are set at creation time. This allows the same class SimpleCase
to be used with other microworlds apart from eXpresser (e.g. ShapeBuilder).
Identity attributes are in place. Identity distances are calculated in SimpleCaseSimilarityMeasurer,
but are not integrated yet in CompositeCaseSimilarityMeasurer. This will be done after the relation
similarity is fixed (see bellow).
The new relation similarity has been implemented.
- In the former scheme, shapes were related to shapes (via the AttributeExpressions, aka tied
numbers). This presented several problems of directionality (i.e. if A.iterations, B.iterations and
C.moveDown use the same number, do the pairs A-B, B-C, and C-A have the same relation similarity?)
and cardinality (i.e. if A.iterations, A.moveDown, B.iterations and C.iterations use the same
number, do the pairs A-B, and B-C have the same relation similarity?).
- The new scheme links attributes with attributes. When two simple cases are compared for relations
similarity, a list is calculated for each attribute to see which other attributes (in the same or
other shapes) are connected to it via AttributeExpression). For each case, a Relation (new class in
this commit) is created. Relations are symmetrical, therefore if we compare A (with some A') in the
first example above, only two relations would be created for A (i.e. A.iterations-B.iterations,
A.iterations-C.moveDown); but if we compare A (with some A') in the second example, five relations
would be created (i.e. A.iterations-A.moveDown, A.iterations-B.iterations,
A.iterations-C.iterations, A.moveDown-B.iterations, A.moveDown-C.iterations). This relations are
compared to find the similarity between A and A' using the Jacquard index (i.e. rels(A
)-intersection-rels(A') / rels(A)-union-rel(A')).
This new calculation of the relations similarity does not work yet, because expressions are not
taking into account the links of subexpressions (i.e. it is not implemented yet that "5 + 4" is
linked to the attributes where that "4" is used, not just to the attributes where "5 + 4" is used).
This did not affect the former calculation of relations, but it affects the current one. This will
be implemented in the next commit (so this commit does not work perfectly, but at least it
compiles). The current scheme only works for constructions in which only expressions at the highest
level are shared.
Another important change is the clear distinction between distances and shapes when calculating
similarities (especially SimpleCaseSimilarityMeasurer); and the fact that distances are now weighted
(both the numerical distance and the identity distance).
Of course, in between all these major changes there is plenty of minor changes: new methods,
improved javadoc in some old methods, a couple of new classes (RelationEnd and Relation), etc.
Last 30 days
-
r3619
(Minor changes.
- Improved Javadoc.
- Some new methods that ...) committed by ser...@gmail.com
- Minor changes.
- Improved Javadoc.
- Some new methods that are needed for the new generic implementation of simple cases' attributes.
Committed as a last-point-before-failure. Changes needed now for the new scheme are going to break
the implementation; nothing will be committed until the changes have been finished and the new
implementation is working as the current one.
Minor changes.
- Improved Javadoc.
- Some new methods that are needed for the new generic implementation of simple cases' attributes.
Committed as a last-point-before-failure. Changes needed now for the new scheme are going to break
the implementation; nothing will be committed until the changes have been finished and the new
implementation is working as the current one.
-
r3618
(The result from the 'How many?' menu item for expressions no...) committed by ToonT...@googlemail.com
- The result from the 'How many?' menu item for expressions now updates when the embedded tied numbers
or the expression is changed. These kinds of numbers have a different background colour.
Also the distance between check boxes in goal boxes is reduced.
The result from the 'How many?' menu item for expressions now updates when the embedded tied numbers
or the expression is changed. These kinds of numbers have a different background colour.
Also the distance between check boxes in goal boxes is reduced.
-
r3617
('How many?' menu item for expressions now displays a number ...) committed by ToonT...@googlemail.com
- 'How many?' menu item for expressions now displays a number that is different in the slave panel
(General World). It doesn't yet consistently update when the expression is changed.
'How many?' menu item for expressions now displays a number that is different in the slave panel
(General World). It doesn't yet consistently update when the expression is changed.
-
r3616
(When a tab is selected in a property list then the slave mir...) committed by ToonT...@googlemail.com
- When a tab is selected in a property list then the slave mirror selects the corresponding tab.
When a tab is selected in a property list then the slave mirror selects the corresponding tab.
-
r3615
(Menu item label for subtraction now distinguishes between dr...) committed by ToonT...@googlemail.com
- Menu item label for subtraction now distinguishes between dropping on the left or right.
Property lists now have separate tabs for construction attributes and translation attributes.
Slave panel (General World) no longer has a mirror of the pattern creation wizard.
(Multiple changes since could not commit earlier due to server being down.)
Menu item label for subtraction now distinguishes between dropping on the left or right.
Property lists now have separate tabs for construction attributes and translation attributes.
Slave panel (General World) no longer has a mirror of the pattern creation wizard.
(Multiple changes since could not commit earlier due to server being down.)
-
migensystem-1-3614b.zip (migensystem-1-3614b (first implementation of model undo and ...) file uploaded by ToonT...@googlemail.com
-
Labels:
Featured
Type-Archive
Java-1.X
OpSys-All
Labels:
Featured
Type-Archive
Java-1.X
OpSys-All
-
r3614
(Renamed menu item from 'Create Snapshot' to 'Copy'.) committed by ToonT...@googlemail.com
- Renamed menu item from 'Create Snapshot' to 'Copy'.
Renamed menu item from 'Create Snapshot' to 'Copy'.
-
r3613
(Changed 'Rule' label to 'World Colouring Rule' and removed t...) committed by ToonT...@googlemail.com
- Changed 'Rule' label to 'World Colouring Rule' and removed the 'How many?' labels from rules.
Changed 'Rule' label to 'World Colouring Rule' and removed the 'How many?' labels from rules.
-
-
r3612
(Introduced a new configuration option undo-enabled (default ...) committed by ToonT...@googlemail.com
- Introduced a new configuration option undo-enabled (default is true) which enables the undo and redo
menu items (under Edit). Control-z is a short cut for undo. This implements undo of changes to the
model -- not changes to the canvas (e.g. dropping expressions on the canvas).
Note that this implementation has the advantage (and disadvantage) that it saves XML files for every
state of the model. Could in principle be used to replay a session.
Introduced a new configuration option undo-enabled (default is true) which enables the undo and redo
menu items (under Edit). Control-z is a short cut for undo. This implements undo of changes to the
model -- not changes to the canvas (e.g. dropping expressions on the canvas).
Note that this implementation has the advantage (and disadvantage) that it saves XML files for every
state of the model. Could in principle be used to replay a session.
-
-
-
r3611
(Done button is a goal area in an activity document is now on...) committed by ToonT...@googlemail.com
- Done button is a goal area in an activity document is now only enabled when all the check boxes are
ticked.
Resolves Issue 669 .
Done button is a goal area in an activity document is now only enabled when all the check boxes are
ticked.
Resolves Issue 669 .
-
r3610
(task-activity-document-N now takes an additional optional ar...) committed by ToonT...@googlemail.com
- task-activity-document-N now takes an additional optional argument which is the name of the next
activity that should be started when the DONE button is pressed.
Default configuration updated so that finishing Train Track starts Footpath which when finished
starts Garden.
Does most of Issue 669 .
task-activity-document-N now takes an additional optional argument which is the name of the next
activity that should be started when the DONE button is pressed.
Default configuration updated so that finishing Train Track starts Footpath which when finished
starts Garden.
Does most of Issue 669 .
-
r3609
(Abstracted goal areas in activity documents into their own c...) committed by ToonT...@googlemail.com
- Abstracted goal areas in activity documents into their own class. No change in functionality yet.
Also added the DONE button label to the Message Bundle.
Abstracted goal areas in activity documents into their own class. No change in functionality yet.
Also added the DONE button label to the Message Bundle.
-
-
r3608
(A new tab page is opened every time the user selects an acti...) committed by ToonT...@googlemail.com
- A new tab page is opened every time the user selects an activity. Resolves Issue 675 .
A new tab page is opened every time the user selects an activity. Resolves Issue 675 .
-
-
-
r3607
(New approach to attributes of Simple Cases, more general and...) committed by ser...@gmail.com
- New approach to attributes of Simple Cases, more general and scalable.
Attributes of a simple case can be numeric, identity, or relation.
Numeric attributes are integers, in some cases defined by expressions. They are added.
Identity attributes can be anything. They are checked for equality.
All simple cases must have the same attributes.
New approach to attributes of Simple Cases, more general and scalable.
Attributes of a simple case can be numeric, identity, or relation.
Numeric attributes are integers, in some cases defined by expressions. They are added.
Identity attributes can be anything. They are checked for equality.
All simple cases must have the same attributes.
|