Bug 72662

Summary: autocompletion of X and Y vectors does not occur when using file pointing to datafile.
Product: [Applications] kst Reporter: Matthew Truch <matt>
Component: generalAssignee: kst
Status: RESOLVED FIXED    
Severity: normal    
Priority: NOR    
Version: 1.x   
Target Milestone: ---   
Platform: RedHat Enterprise Linux   
OS: Linux   
Latest Commit: Version Fixed In:

Description Matthew Truch 2004-01-14 22:29:34 UTC
Version:           0.95-devel (using KDE KDE 3.1)
Installed from:    RedHat RPMs
OS:          Linux

If you put a dirfile "pointer" in the File Name text box instead of an actual dirfile path (pointers are just text files which contain only the path to the actual dirfile) then autocompletion of the X and Y vectors never works (not only the first time you enter something from a file, but always).  

How to reproduce:

On my system, the actual dirfile is /data/rawdir/1073967931.c and there is a file called /data/etc/datafile.cur which only contains the text "/data/rawdir/1073967931.c" (no quotes).  

Start a new kst (no command line options).  Click on quickly create a new curve.  Type /data/etc/datafile.cur in the File Name field.  Click on the down arrow symbol (or start typing a field name) in either the X or Y vector text field.  

Actual Results: Nothing happens

Expected Results: Valid field names appear in a list and autocomplete when typing.
Comment 1 George Staikos 2004-01-16 02:41:12 UTC
Subject: kdeextragear-2/kst/kst/datasources/indirect

CVS commit by staikos: 

Indirect files need to pass the field list through.

CCMAIL: 72662-done@bugs.kde.org


  M +2 -0      indirect.cpp   1.2


--- kdeextragear-2/kst/kst/datasources/indirect/indirect.cpp  #1.1:1.2
@@ -24,4 +24,5 @@ IndirectSource::IndirectSource(const QSt
 : KstDataSource(filename, QString::null), _child(child) {
   _valid = true;
+  _fieldList = child->fieldList();
 }
 
@@ -41,4 +42,5 @@ KstObject::UpdateType IndirectSource::up
         if (p) {
           _child = p;
+          _fieldList = p->fieldList();
         } else {
           _valid = false;