uk.ac.vamsas.objects.core.Tree vtree)
{
Tree toTree = new Tree(datastore, alignFrame, vtree);
-
}
public Tree(VamsasAppDatastore datastore,
jalview.gui.AlignFrame alignFrame,
uk.ac.vamsas.objects.core.Tree vtree)
{
- super(datastore);
- tree = vtree;
- TreePanel tp = (TreePanel) getvObj2jv(tree);
- if (tp != null)
- {
- if (tree.isUpdated())
- {
- Cache.log
- .info("Update from vamsas document to alignment associated tree not implemented yet.");
- }
- }
- else
- {
- // make a new tree
- Object[] idata = recoverInputData(tree.getProvenance());
- try
- {
- if (idata != null && idata[0] != null)
- {
- inputData = (AlignmentView) idata[0];
- }
- ntree = getNtree();
- title = tree.getNewick(0).getTitle();
- if (title == null || title.length() == 0)
- {
- title = tree.getTitle(); // hack!!!!
- }
- } catch (Exception e)
- {
- Cache.log.warn("Problems parsing treefile '"
- + tree.getNewick(0).getContent() + "'", e);
- }
- }
+ super(datastore, vtree, TreePanel.class);
+ doJvUpdate();
}
private NewickFile getNtree() throws IOException
public Tree(VamsasAppDatastore datastore, TreePanel tp2, AlignmentI jal2,
uk.ac.vamsas.objects.core.Alignment alignment2)
{
- super(datastore);
+ super(datastore, tp2, uk.ac.vamsas.objects.core.Tree.class);
jal = jal2;
- tp = tp2;
+ tp = (TreePanel) jvobj;
alignment = alignment2;
- tree = (uk.ac.vamsas.objects.core.Tree) getjv2vObj(tp);
- if (tree == null)
+ tree = (uk.ac.vamsas.objects.core.Tree) vobj;
+ doSync();
+ }
+
+ /* (non-Javadoc)
+ * @see jalview.io.vamsas.DatastoreItem#addFromDocument()
+ */
+ public void addFromDocument()
+ {
+ tree = (uk.ac.vamsas.objects.core.Tree) vobj; // vtree;
+ TreePanel tp = (TreePanel) jvobj; // getvObj2jv(tree);
+ // make a new tree
+ Object[] idata = recoverInputData(tree.getProvenance());
+ try
+ {
+ if (idata != null && idata[0] != null)
+ {
+ inputData = (AlignmentView) idata[0];
+ }
+ ntree = getNtree();
+ title = tree.getNewick(0).getTitle();
+ if (title == null || title.length() == 0)
+ {
+ title = tree.getTitle(); // hack!!!!
+ }
+ } catch (Exception e)
{
- add();
+ Cache.log.warn("Problems parsing treefile '"
+ + tree.getNewick(0).getContent() + "'", e);
+ }
+ }
+
+ /* (non-Javadoc)
+ * @see jalview.io.vamsas.DatastoreItem#conflict()
+ */
+ public void conflict()
+ {
+ Cache.log
+ .info("Update (with conflict) from vamsas document to alignment associated tree not implemented yet.");
+ }
+
+ /* (non-Javadoc)
+ * @see jalview.io.vamsas.DatastoreItem#update()
+ */
+ public void updateToDoc()
+ {
+ if (isModifiable(tree.getModifiable()))
+ {
+ // synchronize(); // update();
+ // verify any changes.
+ log.info("TODO: Update tree in document from jalview.");
}
else
{
- if (isModifiable(tree.getModifiable()))
+ // handle conflict
+ log.info("TODO: Add the locally modified tree in Jalview as a new tree in document, leaving locked tree unchanged.");
+ }
+ }
+ /* (non-Javadoc)
+ * @see jalview.io.vamsas.DatastoreItem#updateFromDoc()
+ */
+ public void updateFromDoc()
+ {
+ // should probably just open a new tree panel in the same place as the old one
+ // TODO: Tree.updateFromDoc
+ /*
+ TreePanel tp = (TreePanel) jvobj; // getvObj2jv(tree);
+
+ // make a new tree
+ Object[] idata = recoverInputData(tree.getProvenance());
+ try
+ {
+ if (idata != null && idata[0] != null)
{
- // synchronize(); // update();
- // verify any changes.
- System.out.println("Update tree in document.");
+ inputData = (AlignmentView) idata[0];
}
- else
+ ntree = getNtree();
+ title = tree.getNewick(0).getTitle();
+ if (title == null || title.length() == 0)
{
- // handle conflict
- System.out.println("Add modified tree as new tree in document.");
+ title = tree.getTitle(); // hack!!!!
}
+ } catch (Exception e)
+ {
+ Cache.log.warn("Problems parsing treefile '"
+ + tree.getNewick(0).getContent() + "'", e);
+ }*/
+ log.debug("Update the local tree in jalview from the document.");
+
+ if (isModifiable(tree.getModifiable()))
+ {
+ // synchronize(); // update();
+ // verify any changes.
+ log.debug("Update tree in document from jalview.");
+ }
+ else
+ {
+ // handle conflict
+ log.debug("Add modified jalview tree as new tree in document.");
}
}
* add jalview object to vamsas document
*
*/
- public void add()
+ public void addToDocument()
{
tree = new uk.ac.vamsas.objects.core.Tree();
bindjvvobj(tp, tree);