1.1 --- a/vymmodel.cpp Fri Jan 30 09:14:12 2009 +0000
1.2 +++ b/vymmodel.cpp Wed Feb 04 11:52:52 2009 +0000
1.3 @@ -694,19 +694,16 @@
1.4
1.5 FloatImageObj* VymModel::loadFloatImageInt (QString fn)
1.6 {
1.7 - BranchObj *bo=getSelectedBranch();
1.8 - if (bo)
1.9 + TreeItem *fi=createImage();
1.10 + if (fi)
1.11 {
1.12 - FloatImageObj *fio;
1.13 - bo->addFloatImage();
1.14 - fio=bo->getLastFloatImage();
1.15 - fio->load(fn);
1.16 + FloatImageObj *fio= ((FloatImageObj*)fi->getLMO());
1.17 + fio->load (fn);
1.18 reposition();
1.19 - // FIXME VM needed? scene()->update();
1.20 return fio;
1.21 }
1.22 return NULL;
1.23 -}
1.24 + }
1.25
1.26 void VymModel::loadFloatImage ()
1.27 {
1.28 @@ -1976,26 +1973,34 @@
1.29
1.30 void VymModel::createBranch()
1.31 {
1.32 + addNewBranchInt (-2);
1.33 + return;
1.34 +}
1.35 +
1.36 +TreeItem* VymModel::createImage()
1.37 +{
1.38 BranchObj *bo=getSelectedBranch();
1.39 if (bo)
1.40 {
1.41 - BranchObj *newbo=addNewBranchInt (-2); // FIXME VM Old model, merge with below
1.42 + FloatImageObj *newfio=bo->addFloatImage(); // FIXME VM Old model, merge with below
1.43
1.44 // Create TreeItem
1.45 QList<QVariant> cData;
1.46 - cData << "VM:createBranch" << "undef"<<"undef";
1.47 + cData << "VM:createImage" << "undef"<<"undef";
1.48 TreeItem *parti=bo->getTreeItem();
1.49 TreeItem *ti=new TreeItem (cData,parti);
1.50 - ti->setLMO (newbo);
1.51 - ti->setType (TreeItem::Branch);
1.52 + ti->setLMO (newfio);
1.53 + ti->setType (TreeItem::Image);
1.54 parti->appendChild (ti);
1.55
1.56 - if (newbo)
1.57 + if (newfio)
1.58 {
1.59 - newbo->setTreeItem (ti);
1.60 - select (newbo); // FIXME VM really needed here?
1.61 + newfio->setTreeItem (ti);
1.62 + select (newfio); // FIXME VM really needed here?
1.63 + return ti;
1.64 }
1.65 }
1.66 + return NULL;
1.67 }
1.68
1.69 MapCenterObj* VymModel::addMapCenter ()
1.70 @@ -2074,6 +2079,21 @@
1.71 // save scroll state. If scrolled, automatically select
1.72 // new branch in order to tmp unscroll parent...
1.73 newbo=bo->addBranch();
1.74 +
1.75 + // Create TreeItem
1.76 + QList<QVariant> cData;
1.77 + cData << "VM:createBranch" << "undef"<<"undef";
1.78 + TreeItem *parti=bo->getTreeItem();
1.79 + TreeItem *ti=new TreeItem (cData,parti);
1.80 + ti->setLMO (newbo);
1.81 + ti->setType (TreeItem::Branch);
1.82 + parti->appendChild (ti);
1.83 +
1.84 + if (newbo)
1.85 + {
1.86 + newbo->setTreeItem (ti);
1.87 + select (newbo); // FIXME VM really needed here?
1.88 + }
1.89
1.90 }else if (num==-1)
1.91 {
1.92 @@ -2086,7 +2106,6 @@
1.93 bo=(BranchObj*)bo->getParObj();
1.94 if (bo) newbo=bo->insertBranch(num);
1.95 }
1.96 - if (!newbo) return NULL;
1.97 }
1.98 return newbo;
1.99 }
1.100 @@ -2116,7 +2135,7 @@
1.101 QString ("Add new branch to %1").arg(getObjectName(bo)));
1.102
1.103 reposition();
1.104 - selection.update();
1.105 + // selection.update(); FIXME
1.106 latestSelectionString=getSelectString(newbo);
1.107 // In Network mode, the client needs to know where the new branch is,
1.108 // so we have to pass on this information via saveState.
1.109 @@ -2156,7 +2175,7 @@
1.110 QString ("Add branch before %1").arg(getObjectName(bo)));
1.111
1.112 reposition();
1.113 - selection.update();
1.114 + // selection.update(); FIXME
1.115 }
1.116 }
1.117 latestSelectionString=selection.getSelectString();
1.118 @@ -4330,7 +4349,7 @@
1.119 updateSelection (newsel);
1.120 }
1.121
1.122 -void VymModel::updateSelection(const QItemSelection &oldsel)
1.123 +void VymModel::updateSelection(const QItemSelection &)
1.124 {
1.125 QItemSelection newsel=selModel->selection();
1.126 /*
1.127 @@ -4800,7 +4819,6 @@
1.128 void VymModel::selectLastSelectedBranch()
1.129 {
1.130 TreeItem *ti=getSelectedBranchItem();
1.131 - BranchObj *bo1=getSelectedBranch();
1.132 if (ti)
1.133 {
1.134 ti=ti->getLastSelectedBranch();
1.135 @@ -4811,7 +4829,6 @@
1.136 void VymModel::selectParent()
1.137 {
1.138 TreeItem *ti=getSelectedItem();
1.139 - LinkableMapObj *lmo=getSelectedLMO();
1.140 TreeItem *par;
1.141 if (ti)
1.142 {