On Wed, Oct 12, 2016 at 11:52 AM, Geoffrey Hutchison
<geoff.hutchi...@gmail.com> wrote:
> Hi Marcus,
> As I've mentioned before, I'm working with Paul Boone here at Pitt on a new 
> script interface in Avogadro 2. Scripts (not just Python) will have a similar 
> API to the input generators, but will hand back a modified molecule to 
> Avogadro. Eventually, we'll implement a download-from-GitHub feature.
> I'm trying to do the least amount of refactoring:
> - Right now it seems like "Paste" doesn't actually modify the molecule - 
> instead, a new one is created. I'd like to adapt the paste command to work 
> like Avogadro v1 -- add more atoms and bonds to the current molecule

Sounds good.
> - I still have no idea how the UI for the molecule list is supposed to work. 
> I realize this is a Mac bug, but it seems like there should be a way to 
> "merge" or "split" those entries. However, since the undo stack is maintained 
> by the RWMolecule, I'm unclear on how you would implement undo/redo for those 
> concepts.

I would paste in the molecule being merged in, add that as an undoable
step, but not try to preserve the old undo/redo from the molecule
being merged.
> - I'm going to add selection to the RWMolecule and CJSON (i.e., which atoms 
> are currently selected). This will enable "regular paste" by including an 
> append() method with undo/redo support. Selections will also have undo/redo 
> support (i.e., the before and after bit vectors of selected atoms).

Sounds reasonable.
> - I'm going to take the InputGeneratorWidget out of avogadrolibs / molequeue 
> and put it into qtgui/ as InterfaceWidget. It will handle both input 
> generators and the new action scripts (i.e., parsing the JSON from the 
> scripts) - I will probably add small subclasses to handle the two different 
> types, e.g., the preview text in the input generators, etc.
I would not like to lose all the MoleQueue integration due to a Sierra
build issue, I am sure we can get to the bottom of it. I don't see any
issue refactoring a little, but to be honest, worst case we should
just import the MoleQueue client classes into Avogadro, that would
remove the dependency, and it would keep the functionality. There
would be some code duplication, but that isn't the end of the world.

We still don't have a Sierra machine for me to test that out on,
should hopefully get something soon.


Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
Avogadro-devel mailing list

Reply via email to