void TransferFunctionEditor::loadState(Value& in) { transferFunction.loadState(in); setRange(transferFunction.GetMin(), transferFunction.GetMax()); transferFunctionAlphaScalingSlider.setValue(int(transferFunction.GetScale() * (transferFunctionAlphaScalingSlider.minimum() + transferFunctionAlphaScalingSlider.maximum()))); QVector<QPointF> points; for (int i = 0; i < transferFunction.GetAlphas().size(); i++) points.push_back(QPointF(transferFunction.GetAlphas()[i].x, transferFunction.GetAlphas()[i].y)); transferFunctionAlphaWidget.setPoints(points); if (in.HasMember("Colormap")) { ColorMap cmap; cmap.loadState(in["Colormap"]); int colorMapIndex; for(colorMapIndex = 0; colorMapIndex < colorMaps.size(); colorMapIndex++) if (colorMaps[colorMapIndex].getName() == cmap.getName()) break; if (colorMapIndex == colorMaps.size()) addColorMap(VColorMap(cmap)); colorMapComboBox.setCurrentIndex(colorMapIndex); } }