Bug 297568 - Reference to plugin lost in equation after saving
Summary: Reference to plugin lost in equation after saving
Status: RESOLVED FIXED
Alias: None
Product: kst
Classification: Applications
Component: equations (show other bugs)
Version: 2.0.4
Platform: Microsoft Windows Microsoft Windows
: NOR normal
Target Milestone: ---
Assignee: kst
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-04-06 04:29 UTC by Ben Lewis
Modified: 2012-04-23 22:21 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ben Lewis 2012-04-06 04:29:36 UTC
User-Agent:       Mozilla/5.0 (Windows NT 6.1; WOW64; rv:11.0) Gecko/20100101 Firefox/11.0
Build Identifier: 

The reference to a vector generated by a plugin is lost after saving.  This only happens if the plugin is created after the equation and then the equation is edited to include a reference to the plugin vector.

Reproducible: Always

Steps to Reproduce:
1. Use Create > Vector to generate a vector called "INDEX" with say 100 points from 0..99 
2.Use Create > Equation to create an equation called "EQ1" to simulate raw data (e.g. SIN(x) with INDEX as the x-vector)
3. Create another equation "EQ2" that manipulates the raw data (e.g. 2*[EQ1:y]) 
3.Use Create > Filter Plugin > Despike to generate a new vector based on the simulated raw data (EQ1:y)
4. Now go back and edit the equation EQ2 to reference the despiked data instread of the raw data (i.e. 2*[EQ2:y])
5. Save the kst file, close and reopen.
6. Open the data manager to read the contents of EQ2. The reference to the plugin vector will be missing.
Actual Results:  
The equation loses its reference to the plugin vector after reopening the file.

Expected Results:  
The equation should not lose its reference to the plugin vector after closing and reopening the file. If an equation can not reference a vector created after itself then the user should be prevented from doing so.
Comment 1 Netterfield 2012-04-23 22:21:56 UTC
SVN commit 1291312 by netterfield:

When saving data objects, sort them first so that they are not saved
before things they depend on.  This will not fix old kst files where 
the data objects are out of order, but it will prevent bad kst files
from being created in the future.


 M  +2 -0      libkst/matrix.cpp  
 M  +6 -0      libkst/primitive.h  
 M  +1 -0      libkst/scalar.cpp  
 M  +1 -0      libkst/string_kst.cpp  
 M  +2 -0      libkst/vector.cpp  
 M  +50 -1     libkstapp/document.cpp  
 M  +4 -1      libkstapp/document.h  
 M  +0 -1      libkstmath/basicpluginfactory.cpp  
 M  +22 -0     libkstmath/dataobject.cpp  
 M  +5 -0      libkstmath/dataobject.h  
 M  +1 -5      libkstmath/equation.cpp  
 M  +4 -0      plugins/filters/despike/filterdespike.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1291312