void TransferFunctions3DPresets::deletePresetData(QString name, bool _2D, bool _3D) { //todo rewrite std::cout << "TODO rewrite TransferFunctions3DPresets::deletePresetData(QString name, bool _2D, bool _3D)" << std::endl; XmlOptionFile node = this->getPresetNode(name); if (_2D) node.descend("lookuptable2D").deleteNode(); if (_3D) node.descend("transferfunctions").deleteNode(); if (_2D && _3D) node.deleteNode(); emit changed(); }
void TransferFunctions3DPresets::save3D(QString name, ImagePtr image) { //create the node to be saved XmlOptionFile file = this->getCustomFile(); file = file.descend("Preset", "name", name); QDomNode tf3DNode = file.getElement("transferfunctions"); while (tf3DNode.hasChildNodes()) tf3DNode.removeChild(tf3DNode.firstChild()); ImageTF3DPtr transferFunctions = image->getTransferFunctions3D(); // For unsigned CT: Modify transfer function values temporarily prior to save if ((0 <= image->getMin()) && ("CT" == image->getModality())) { transferFunctions->unsignedCT(false); } transferFunctions->addXml(file.getElement("transferfunctions")); image->getShading().addXml(file.getElement("shading")); // Revert the transfer function values back again if ((0 <= image->getMin()) && ("CT" == image->getModality())) { transferFunctions->unsignedCT(true); } file.getElement().setAttribute("modality", image->getModality()); file.save(); }
void TransferFunctions3DPresets::save2D(QString name, ImagePtr image) { XmlOptionFile file = this->getCustomFile(); file = file.descend("Preset", "name", name); QDomNode tf2DNode = file.getElement("lookuptable2D"); while (tf2DNode.hasChildNodes()) tf2DNode.removeChild(tf2DNode.firstChild()); ImageLUT2DPtr LUT2D = image->getLookupTable2D(); // For unsigned CT: Modify transfer function values temporarily prior to save if ((0 <= image->getMin()) && ("CT" == image->getModality())) { LUT2D->unsignedCT(false); } LUT2D->addXml(file.getElement("lookuptable2D")); // Revert the transfer function values back again if ((0 <= image->getMin()) && ("CT" == image->getModality())) { LUT2D->unsignedCT(true); } file.getElement().setAttribute("modality", image->getModality()); file.save(); // emit changed(); }
void LayoutRepository::save(XmlOptionFile file) { XmlOptionFile layoutsNode = file.descend("layouts"); layoutsNode.removeChildren(); for (LayoutDataVector::iterator iter = mLayouts.begin(); iter != mLayouts.end(); ++iter) { if (!this->isCustom(iter->getUid())) continue; // dont store default layouts - they are created automatically. QDomElement layoutNode = file.getDocument().createElement("layout"); layoutsNode.getElement().appendChild(layoutNode); iter->addXml(layoutNode); } }
NetworkConnectionHandle::NetworkConnectionHandle(QString threadname, XmlOptionFile options) { mThread.reset(new QThread()); mThread->setObjectName(threadname); mClient.reset(new NetworkConnection(threadname)); connect(mClient.get(), &NetworkConnection::connectionInfoChanged, this, &NetworkConnectionHandle::onConnectionInfoChanged); mClient->moveToThread(mThread.get()); mOptions = options.descend(mClient->getUid()); mIp = this->createIpOption(); mPort = this->createPortOption(); mProtocols = this->createDialectOption(); mRole = this->createRoleOption(); this->onPropertiesChanged(); mThread->start(); }
TreeItemModel::TreeItemModel(XmlOptionFile options, VisServicesPtr services, QObject* parent) : QAbstractItemModel(parent), mServices(services), mOptions(options) { mSelectionModel = NULL; mNameIndex = 1; mColorIndex = 0; mViewGroupIndex = 2; mViewGroupCount = 3; this->createShowColumnsProperty(); this->onShowColumnsChanged(); mRepository = TreeRepository::create(options.descend("repository"), services); connect(mRepository.get(), &TreeRepository::invalidated, this, &TreeItemModel::beginResetModel); connect(mRepository.get(), &TreeRepository::loaded, this, &TreeItemModel::loaded); connect(mRepository.get(), &TreeRepository::changed, this, &TreeItemModel::onRepositoryChanged); }