[Molecuilder-devel] [SCM] branch GUIStates_using_ObservedValue created. v1.4.11-107-gb47abff

git at ins.uni-bonn.de git at ins.uni-bonn.de
Mon Jul 27 09:03:21 CEST 2015


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "".

The branch, GUIStates_using_ObservedValue has been created
        at  b47abff064ca6c1c30e67de797d8e0caeba61813 (commit)

- Log -----------------------------------------------------------------
commit b47abff064ca6c1c30e67de797d8e0caeba61813
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sat Jul 25 15:06:15 2015 +0200

    Revert "TEMP: Removed QtLogBox for the moment."
    
    This reverts commit 92df042994f7c0a88d2ebb7c6506fd351ed68a39.

commit 00d3632c7fa7a8799e6b6a50cc1e256654299bf3
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jul 19 23:54:14 2015 +0200

    TESTFIX: Marked molecule translation guicheck tests as XFAIL.
    
    - so far, we cannot use a MakroAction as a python function except if not
      arguments are required. Hence, for the moment we mark it as XFAIL.
    - The problem is with the boost::python::def function. We need to fill its
      arguments during compile-time but that would require some weird preprocessor
      magic going through all Actions contained in the MakroAction's sequence.

commit b33dcdfdaded609fa04eaa2495e51bfe4300e248
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jul 19 22:47:41 2015 +0200

    FIX: GLMoleculeObject_bond had both flipped ids and the side.
    
    - in essence, both do the same thing. We removed all switches that check the
      sides as flipped ids are actually nice and look good in the observerLog.
      We keep the side variable as it might come handy for checking which one we
      are.

commit ea091658023c2737b75aec0cd24a8c7ff3916755
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jul 19 22:22:53 2015 +0200

    FIX: GLWorldView and QtShapeList do not assert single source in recieveNotification() any more.

commit 19bc4cc03a49f716b1d846fb4a5ecee5b8ec7672
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Mon Jul 20 11:16:27 2015 +0200

    FIX: Fixing display of shapes in GLWorldView.
    
    - we propagate shape name via S/S system such that we may lookup the name in
      ShapeRegistry and do not have to rely on probably already deallocated
      lastchanged() shape. This affects ShapeAdded() and ShapeRemoved().
    - GLMoleculeObject_shape now copies the shape, ensuring that its present
      while its surface is tesselated.

commit b2bc49200adaf0e61c05f37adc4612cf71ef0b58
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jul 19 15:47:57 2015 +0200

    GLWorldScene lacked assert of Walker in atomClicked().

commit a7dd6fdf92d6b53191e61bb02351aa4f37efa8d3
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jul 19 15:47:19 2015 +0200

    Asserted that GLMoleculeObject_molecule::update() is never called.

commit 82b2c3f0788ef37d5452d1eca1bb1fc2bf9e2b9f
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jul 19 15:46:41 2015 +0200

    AddAtomBonds() now uses just id not ptr as param.

commit b2b58e8795806658b1826b946c4e486527b25d96
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jul 19 15:46:02 2015 +0200

    Avoided use of getId() on molecules and atoms in Qt code where possible.
    
    - it is ok if we are inside O/O functions or functions called from these
      functions.

commit 6bad8aaf6f9186b8b2c88f7450e20bb4a7b9c2ac
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jul 19 15:29:37 2015 +0200

    GLMoleculeObject_molecule does not use getAtomCount() anymore.
    
    - this removes any usage of getAtomCount() apart from ObservedValue's.

commit 834577c49f896c34887ca40809d96522a6397349
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jul 19 15:25:40 2015 +0200

    GLMoleculeObject_molecule also has ObservedValue for name.
    
    - this removes any (uncached) molecule::getName() from Qt code part.

commit 8d170f3d282ef6c9fa98795214be822adcac56d0
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jul 19 14:01:14 2015 +0200

    FIX: Setting molecule's name via QtMoleculeList item is again possible.
    
    - this is similar to checkForVisibilityChange(), only now for the name.
    - we required four Actions, i.e. this cannot be undone in a single step but
      needs four. However, right now it is not easily possible to construct
      MakroActions from inside the code at compile-time as we do not have
      access to modify parameters via their tokens.
    - using constructed MakroAction in QtMoleculeList for name change.

commit 6e280b0a98ef844794c6cdf6d544046e2e500a7b
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jul 19 13:35:26 2015 +0200

    Fixed formula usage in Qt part of code.
    
    - formula of a molecule is only access through ObservedValue or directly within
      the World's O/O system.
    - Molecule may disappear before selection event.
    - Atoms may disappear before selection event.

commit 35cb3c8d7d8f15c85ce65041e6001885fce892e4
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jul 19 09:08:38 2015 +0200

    QtMainWindow uses QtSelectionChangedAgent.
    
    - QtMoleculeListView and GLWorldView receive its signals. The latter passes it
      on to GLWorldScene.
    - QtMoleculeList has new MoleculeIdToIndex to allow QtMoleculeListView to
      (un)select specific rows on a given index.
    - GLWorldScene passes atom and molecule selection to GLMoleculeObject_molecule.
    - GLMoleculeObject_molecule passes atom selection to respective
      GLMoleculeObject_atom.

commit 28533e9a1336c37b970604e1e371ea30c467a9e4
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jul 19 08:36:38 2015 +0200

    Added QtSelectionChangedAgent to transform O/O to S/S system.
    
    - also this will be far more effective, as e.g. not all
      GLMoleculeOBject_molecule will receive SelectionChanged from World if just a
      single molecule has been selected.
    - Atom might not yet have a molecule, i.e. it is not drawn yet. We do nothing
      then.
    - recieveNotification allows for vanished atom (due to removal). We do nothing
      then.

commit bd1a4c8203cca6b6b5b6722ed7adfe5afdde6278
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jul 19 08:30:51 2015 +0200

    QtMoleculeItem_.. now shout when they receive subjectKilled().
    
    - this way we do not have this double system of both QtMoleculeList (in a lazy
      fashion) and each QtMoleculeList listens for moleculeRemoved (one through the
      Observer channel, the other through subjectKilled()).
    - we simply count the number of QtMoleculeItems that received subjectKilled()
      and if max is reached, the row is removed.
    - to prevent molecule id clash, insertion (of same id) after removal is ok.
      This works cause we first remove and then insert new item. Hence, having the
      same id is possible.

commit a62da4bf1e209ff5ed585d779e7879ad287efa0b
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Jul 16 10:29:09 2015 +0200

    FIX: Fixing "pure virtual function called" in QtMoleculeItem.
    
    - as a matter of fact this should not be a problem: Inside QtMoleculeItem's
      dstor body while signing off from the channels, it is no problem to receive
      a notification for a channel we have not signed off yet. The vtable has
      not been touched with respect to QtMoleculeItem.
      I really do not understand this issue. I have tried to reproduce it with
      a few mock classes that have the very same inheritance pattern and used
      locks to force the same case of a virtual function being called while
      inside the dstor's body but it does not reproduce the error.
    - the same holds for the cstor and again the vtable is created before the
      code pointer enters the cstor body, hence it should be no problem ...
    - the solution is to signOn..() and signOff..() on the highest level, i.e.
      on the most derived classes. This causes some code duplication but at
      least it works.

commit 0136d52ac341be8c1e24ea26b09af36ad982bd38
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Jul 16 01:26:09 2015 +0200

    World now first releases id and then destroys the atom/molecule.
    
    - this prevents any access to atoms/molecules in the phase of destruction.

commit 54a24aa3cfb8c174f59d9572566cde5a4c000685
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Jul 16 01:25:22 2015 +0200

    Qt4 instance use new lastChanged..Id() in place of lastChanged().

commit 17cd32b0c3ef5c75207ea4a55f30a481df495f6e
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Jul 16 01:23:30 2015 +0200

    Added lastChanged..Id() to both World and molecule.

commit 653478cd9fe3579c656f55a639edcf783d30d25e
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Wed Jul 15 17:22:04 2015 +0200

    GLWorldView no longer listens to WorldTime::TimeChanged.
    
    - molecules are re-created when the time changes anyway so the world view is
      informed about the change.
    - removed all commented-out lines.

commit bd6a00bb272bc4854106d2d7fad5ec8861de0b45
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Wed Jul 15 16:01:41 2015 +0200

    GLWorldView does not emit changed() on each general update() from the World and others.

commit 8cd7c8630c85118f5a86e7bfafc16d3139011a3e
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Wed Jul 15 15:56:58 2015 +0200

    DOCU: Updated documentation on Qt Gui construct.

commit 40b96def4ffe2b0be3a0b2666f57839ab8f07fe9
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Tue Jul 14 15:55:47 2015 +0200

    Fixing QtMoleculeList with list containing only formulas and ids.
    
    - COLUMNTYPE now belongs to QtMoleculeItem not QtMoleculeItemFactory.
    - callback function in QtMoleculeItem signature changed to molid and column.
    - QtMoleculeItem::getType() for obtaining the type to be used as argument in
      the callback.

commit c8d26b410eb40966f4de6b0b656a8f86fdfcebcc
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Fri Jul 10 12:54:51 2015 +0200

    Using static Observable::..NotificationsChannel() functions.

commit 6f77b02791e569d748a47227f3009473bee53829
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Tue Jul 7 03:10:10 2015 +0200

    QtMoleculeList::informDirtyState() does not need to lock refill_mutex anymore.
    
    - we simply write the QtMoleculeItem to the ToBeMoved list and convert it to
      the very first item in the row in updateItemStates().

commit 159102d9122f6d8a97f56ca41a68f71d8013ffcc
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Tue Jul 7 03:08:58 2015 +0200

    Fixing QtElementList::updateElement().

commit d786c35f4fdca6c5ed833969f1e384d06686d419
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Mon Jul 20 10:35:41 2015 +0200

    GLWorldScene propagates changed mol id to GLMoleculeObject_molecule.
    
    - GLWorldScene must emit MoleculeRemoved on last subjectKlled().
    - GLWorldScene has internal RemovalMolecule in case moleculeRemoved comes prior
      to moleculeInserted.

commit 955cea679b31b7874c93cb8d997b11bcaf2a16b6
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jun 21 14:16:19 2015 +0200

    GLMoleculeObject_molecule uses ObservedValue for internally representing atom's state.

commit f8fbf47e3e35404ef8d057676712bf7e08878c3a
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jun 21 06:49:13 2015 +0200

    QtMoleculeItem_... use ObservedValue for internally representing atom's state.
    
    - this affects atomcount, formula, and name. visibility depends on clicked
      state and occurrence is changed elsewhere.

commit f508ef44a036e3bcaf921765c047e775c9607fb7
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jun 21 06:46:32 2015 +0200

    GLMoleculeObject_bond uses ObservedValue for internally representing atom's state.

commit 3d0f78ac353fd92f60f96ac7578dcfaf534df5c9
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Fri Jun 19 19:37:50 2015 +0200

    GLMoleculeObject_atom uses ObservedValue for internally representing atom's state.
    
    - we use internal owner as ref to Observable.

commit 7638f112755fa8ccbf1ec03cd2b7a4bd692e664b
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jul 5 09:55:15 2015 +0200

    Requiring now CodePatterns 1.3.0 due to ObservedValue.
    
    - also we purge the GlobalObservablesInfo in cleanUp().

commit 54ea665580c5d60071c56c7c23e6f0ba2aaa04bc
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jun 21 14:16:57 2015 +0200

    Removed init() and signal WorldSelectionChanged() from GLWorldScene.

commit 721399df02f3fed601e321bd2f8318a06f620f48
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jul 19 18:36:06 2015 +0200

    TESTFIX: Added AdjacencyMatcher to correctly compare .adj files in save-adjacency regression test.
    
    - GuiChecks sees a different (but still valid) ordering in the .adj file in the
      save-adjacency regression test.

commit 7ea2f4fd918e40dcc85187f510ea4fa8968cd7f8
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jul 19 18:13:44 2015 +0200

    TESTFIX: selection molecule by name had escaped ticks.
    
    - also changed GuiCheck tests.

commit 3a149d887a554e55eaf654a7381718ebde6729af
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jul 19 12:03:43 2015 +0200

    FIX: Added Parameters Value_Elements to correctly set vector of elements from string.
    
    - this fixes that fit-potential action is not correctly called from python
      scripts. There, we require correct setter of a value from a given string.
      As all arguments to a python command must be given as single string,
      even if it is a vector of arguments, we must correctly decode this string
      again.

commit 41b0262cf4600210ddb43b6155cb578146dcfcf5
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Wed Jul 8 12:33:49 2015 +0200

    TESTFIX: regression test DepthFirstSearch had extra linebreak.

commit 7eec7973958e249602381c3036847dda9f095ce9
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Wed Jul 8 08:47:52 2015 +0200

    TESTFIX: atom selection regression tests with shapes were very noisy and hence very slow.

commit 86064e74a1b91d855053d83bf0c6178dff98fb8a
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Mon Jul 6 15:07:00 2015 +0200

    TESTFIX: regression test SubgraphDissection Redo was broken.
    
    - also changed derived GuiChecks test.

commit b79ab13124da2d9cf5984a6ab31dc3689637c2e2
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Fri Jun 19 13:45:49 2015 +0200

    Added TriangleMatcher to safely compare tesselation .dat files.
    
    - is used in tests/regression Tesselations, tests/Tesselations, and has its own
      regression test, too. Also added tests/GuiChecks.
    - added trianglematcher to testsuite dependencies.

commit a9fdf2516f1720a0d0b4d1fdb0836cd5ceb08a68
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jul 19 14:39:16 2015 +0200

    Added Action::setOptionValue() which allows setting the option via a string.
    
    - this is preparatory for allowing the creation of MakroActions inside the
      code. We need to set the options without going through dialogs in some
      way or another and without being completely inside the Actions as is the
      case for the COMMAND variants and the python function calls.

commit b81367a6d2a56f9b7ccdb045b35a230cc654abe7
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jul 19 08:15:39 2015 +0200

    Added getSelected..Ids() for both atoms and molecules.
    
    - added static function getKey() to _take in Helpers.

commit 9a5bd55b56896a362384426f746349832c66b136
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jul 19 22:58:57 2015 +0200

    FIX: atom_atominfo lacked some notifies or had them wrong.
    
    - ElementChanged only when element actually changes it not helpful
      (QtElementList has then no chance of detecting new atoms with default
      element of hydrogen).
    - TrajectoryChanged was signalled only when current timestep was added or
      removed, rather we signal always and assert that we do not remove or append
      the current time step.

commit 0b2949c267c5c8e02d6281cdbf765ccc75b91191
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jun 21 15:34:40 2015 +0200

    FIX: Molecule has new signal IndexChanged.
    
    - this has been overlooked so far, index may be changed similarly as for atoms.

commit 4a3a56a5c3d9a17d6ecdf86a6853016dd465c493
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jun 21 06:45:30 2015 +0200

    FIX: atom_bondedparticle signatures changed to more const versions.
    
    - added getBond() for obtaining bond in const manner.

commit 0eef0fbe990c828bd747722af4e13e6dd33050ed
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jul 19 20:29:39 2015 +0200

    Group item with atom count of 0 is confusing in QtMoleculeList, creating with empty string.

commit 2176d048bdd2b382f48d92914755ef7a0fa9e272
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Jul 19 12:03:05 2015 +0200

    executePythonScriptFile() calls executePythonScript() now.

commit f395492cef123ff81f9b1d2024fe29c9fe3a7e0e
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Mon Jul 20 00:21:57 2015 +0200

    FIX: QTUIFactory's test-single was not working right.

commit 72cf5c1f2647d866aa467638eb837671d9f5942c
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Fri Jun 19 19:35:50 2015 +0200

    FIX: tests/regression FragmentationAutomation had a white space after line break.

commit 2e516e1b584df3ca516bf7971bf24152c5cd6cab
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Fri Jun 19 13:51:08 2015 +0200

    FIX: Added molecuilderguitest to testsuite dependencies.

commit 8491f32f212ad839f57f2ea401ab4d8d1a1264d9
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Fri Jun 19 13:45:49 2015 +0200

    Added TriangleMatcher to safely compare tesselation .dat files.
    
    - is used in tests/regression Tesselations, tests/Tesselations, and has its own
      regression test, too.
    - added trianglematcher to testsuite dependencies.

commit d4c8694f2cbd423faa6c19ddec88eeb7e5f118a3
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Jun 18 03:53:26 2015 +0200

    FIX: MakroAction's outputAsPython() uses outputAsPython() not outputAsCLI().

commit 9a48804bc9927b9c662e2653a5f08e7a1b65538b
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Jun 18 03:32:03 2015 +0200

    FIX: QtMoleculeListView caused Command to be executed when selection changed internally.
    
    - we check via selecting but change is propagated via emit. Now we use
      DirectConnection.

commit a87d1e2e1fdd4b7739a97a917c411937f941852d
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Jun 18 02:56:26 2015 +0200

    FIX: ActionQueue::isIdle() states whether actions are executed or not.
    
    - QtUIFactory uses this to wait till test running next action.

commit 9ec4b8fd1c0781bcd20ad52c2755ad52ae89d518
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Jun 18 02:42:44 2015 +0200

    FIX: Cuboid_impl::getNormal() did not take numerical imprecision into account.

commit bcf0561c44a090831a61ab4b4118c79b38750317
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Jun 18 01:42:13 2015 +0200

    FIX: QtTimeLine would cause another WorldSetTime action.
    
    - we did not catch where setValue() was called from, from an obtained
      Observable update() or from changing the slider.
    - QtTimeLine needs DirectConnection for valueChanged.

commit 9fb2137ff4183dfa58b9083f255c8037873fb5ba
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Jun 18 01:41:07 2015 +0200

    FIX: QtElementList now uses new updateElement().
    
    - old refill() polls complete list of atoms of specific type in the moment
      an atom is destroyed ... now we only get informed about newly created
      atoms (safe) and changing elements (also safe).

commit 92df042994f7c0a88d2ebb7c6506fd351ed68a39
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Jun 18 01:39:28 2015 +0200

    TEMP: Removed QtLogBox for the moment.
    
    - ever and again causes SEGFAULT at QDebugStream::61 (QTextEdit::append()).

commit ea73ce1f1f7bfca1ca449bed235f03c42b10b58b
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Jun 18 00:09:10 2015 +0200

    Added QMutex to QtElementList for refill().

commit 7d0ddb4a2c0b433b55ce0a432f64c21bde6c9535
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Jun 18 00:06:29 2015 +0200

    FIX: QtMoleculeItem would not correctly signOff prior to molecule being destroyed.
    
    - all QtMoleculeItems signOn to molecule::AboutToBeRemoved.
    - getMolecule() may return NULL, is caught at two places.
    - getMoleculeId() for allowing QtMoleculeList to acess molid.

commit 9d4f964574dae09a31c613751f654551f61f308a
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Fri Jun 19 10:50:48 2015 +0200

    FIX: QtHomologyList::refill() is now called via signal/slot.

commit 7d0a4e076689218b5c7275f30d0ca5ee9341af8b
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Wed Jun 17 19:15:04 2015 +0200

    Storing the id of the main thread in static global variable.
    
    - this is preparatory for thread guard to be used in the context of Qt.

-----------------------------------------------------------------------


hooks/post-receive
-- 




More information about the Molecuilder-devel mailing list