[Kst] [Bug 108025] Matrix and image reworking

George Staikos staikos at kde.org
Tue Jun 28 00:34:02 CEST 2005


------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
         
http://bugs.kde.org/show_bug.cgi?id=108025         




------- Additional Comments From staikos kde org  2005-06-28 00:34 -------
Kst contains types, just as a typical computer application.  In C++, there
are primitive types (POD) and derived types (classes).  In Kst, we have the
following categorization:

Primitive Types         Derived Types           Interpretations
-------------------------------------------------------------------------
KstScalar               KstPSD                  KstVCurve
KstString               KstEquation             KstImage*
KstVector               KstHistogram
KstRVector              KstPlugin
KstAVector              KstCSD
KstSVector
KstMatrix*
KstRMatrix
KstAMatrix
KstSMatrix



KstMatrix and KstImage are presently wrong in Kst.  They are both derived
types, and yet one represents primitive underived data (though it is not
implemented that way), and the other is used directly to interpret that
data as a visualization.


Primitive types can be created by the user, or loaded from storage.  The
present data loading mechanism is flawed in that it only supports loading
one type of data from disk: vectors.  KstDataSource needs to be expanded
with a keyed plugin mechanism and needs to drop binary compatibility
issues [-internally- -only-] so that it can be extended to support these
other primitive types.  This key is implemented in the development code.

The next step is to create Kst?Matrix classes which behave as close as
possible to the same way Kst?Vector does, with an interface as close as
possible to that of Kst?Vector.  Once this is done, the KstDataSource
interface can be extended to support loading them (as well as all other
primitive types).  The Matrix dialog will become an equivalent to the
Vector dialog.

Note that Matrix needs to be a primitive type internally too.  It should
not use KstVector.

After matrices are renovated, KstImage needs to be converted into a
KstBaseCurve and adjusted somewhat to be a generic curve with a matrix
for storing data.  It is desired at some point to be able to render all
sort of different image formats easily with this class.  This change,
however, depends on changes to Kst2DPlot to an extent, and should wait
for those changes.  (they are minor)


More information about the Kst mailing list