QtiPlot  0.9.8.2
Table.h
Go to the documentation of this file.
1 /***************************************************************************
2  File : Table.h
3  Project : QtiPlot
4  --------------------------------------------------------------------
5  Copyright : (C) 2006 by Ion Vasilief, Knut Franke
6  Email (use @ for *) : ion_vasilief*yahoo.fr
7  Description : Table worksheet class
8 
9  ***************************************************************************/
10 
11 /***************************************************************************
12  * *
13  * This program is free software; you can redistribute it and/or modify *
14  * it under the terms of the GNU General Public License as published by *
15  * the Free Software Foundation; either version 2 of the License, or *
16  * (at your option) any later version. *
17  * *
18  * This program is distributed in the hope that it will be useful, *
19  * but WITHOUT ANY WARRANTY; without even the implied warranty of *
20  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
21  * GNU General Public License for more details. *
22  * *
23  * You should have received a copy of the GNU General Public License *
24  * along with this program; if not, write to the Free Software *
25  * Foundation, Inc., 51 Franklin Street, Fifth Floor, *
26  * Boston, MA 02110-1301 USA *
27  * *
28  ***************************************************************************/
29 #ifndef TABLE_H
30 #define TABLE_H
31 
32 #include <q3table.h>
33 #include <q3header.h>
34 #include <QVarLengthArray>
35 #include <QLocale>
36 
37 #include <MdiSubWindow.h>
38 #include <ScriptingEnv.h>
39 #include <Script.h>
40 
41 class MyTable : public Q3Table
42 {
43 public:
44  MyTable(QWidget * parent = 0, const char * name = 0);
45  MyTable(int numRows, int numCols, QWidget * parent = 0, const char * name = 0);
46 
47 private:
48  void activateNextCell();
49 };
50 
57 class Table: public MdiSubWindow, public scripted
58 {
59  Q_OBJECT
60 
61 public:
62  enum PlotDesignation{All = -1, None = 0, X = 1, Y = 2, Z = 3, xErr = 4, yErr = 5, Label = 6};
63  enum ColType{Numeric = 0, Text = 1, Date = 2, Time = 3, Month = 4, Day = 5};
64  enum NumericFormat{Default = 0, Decimal = 1, Scientific = 2};
65  enum ImportMode {
69  };
70 
71  Table(ScriptingEnv *env, int r,int c, const QString &label, ApplicationWindow* parent, const QString& name = QString(), Qt::WFlags f=0);
72 
73  Q3TableSelection getSelection();
74 
76  void setNumericPrecision(int prec);
78  void updateDecimalSeparators(const QLocale& oldSeparators);
79  void setAutoUpdateValues(bool on = true);
80  virtual QString sizeToString();
81 
82  double avg(int col, int startRow = 0, int endRow = -1);
83  double sum(int col, int startRow = 0, int endRow = -1);
84  double minColumnValue(int col, int startRow = 0, int endRow = -1);
85  double maxColumnValue(int col, int startRow = 0, int endRow = -1);
86  Table* extractData(const QString& name, const QString& condition, int startRow = 0, int endRow = -1);
87  static QDateTime dateTime(double val);
88  static double fromDateTime(const QDateTime& dt);
89  static double fromTime(const QTime& t);
90 
91 public slots:
92  MyTable* table(){return d_table;};
93  void copy(Table *m, bool values = true);
94  int numRows();
95  int numCols();
96  void setNumRows(int rows);
97  void setNumCols(int cols);
98  void resizeRows(int);
99  void resizeCols(int);
100 
102  double cell(int row, int col);
103  void setCell(int row, int col, double val);
104 
105  QString text(int row, int col);
106  QStringList columnsList();
107  QStringList colNames(){return col_label;}
108  QString colName(int col);
109  void setColName(int col, const QString& text, bool enumerateRight = false, bool warn = true);
110  QString colLabel(int col);
111  int colIndex(const QString& name);
112 
115  void setPlotDesignation(PlotDesignation pd, bool rightColumns = false);
116  QList<int> plotDesignations(){return col_plot_type;};
117 
118  void setHeader(QStringList header);
119  void loadHeader(QStringList header);
120  void setHeaderColType();
121  void setText(int row,int col,const QString & text);
122  void setRandomValues();
123  void setRandomValues(int col, int startRow = 0, int endRow = -1);
124  void setNormalRandomValues();
125  void setNormalRandomValues(int col, int startRow = 0, int endRow = -1, double sigma = 1.0);
126  void setAscValues();
127 
128  void cellEdited(int,int col);
129  void moveCurrentCell();
130  void clearCell(int row, int col);
131  bool isEmptyRow(int row);
132  bool isEmptyColumn(int col);
133  int nonEmptyRows();
134 
135  void print();
136  void print(QPrinter *);
137  void print(const QString& fileName);
138  void exportPDF(const QString& fileName);
139 
141 
142  bool eventFilter(QObject *object, QEvent *e);
143  void customEvent( QEvent* e);
145 
147 
148  void removeCol();
149  void removeCol(const QStringList& list);
150  void insertCol();
151  virtual void insertCols(int start, int count);
152  virtual void addCol(PlotDesignation pd = Y);
153  void addColumns(int c);
154  virtual void moveColumn(int, int, int);
155  void swapColumns(int, int);
156  void moveColumnBy(int cols);
157  void hideSelectedColumns();
158  void showAllColumns();
159  void hideColumn(int col, bool = true);
160  bool isColumnHidden(int col){return d_table->isColumnHidden(col);};
162 
164 
165 
168  void sortColAsc();
172  void sortColDesc();
177  void sortColumn(int col = -1, int order = 0);
182  void sortTableDialog();
184  void sort(int type = 0, int order = 0, const QString& leadCol = QString());
186  void sortColumns(int type = 0, int order = 0, const QString& leadCol = QString());
193  void sortColumns(const QStringList& cols, int type = 0, int order = 0, const QString& leadCol = QString());
198  void sortColumnsDialog();
200 
202 
203  void normalizeCol(int col=-1);
204  void normalizeSelection();
205  void normalize();
207 
208  QVarLengthArray<double> col(int ycol);
209  void columnRange(int c, double *min, double *max);
210 
211  int firstXCol();
212  bool noXColumn();
213  bool noYColumn();
214  int colX(int col);
215  int colY(int col, int xCol = -1, const QStringList& lst = QStringList());
216 
217  QStringList getCommands(){return commands;};
219  void clearCommands();
221  void setCommands(const QStringList& com);
223  void setCommands(const QString& com);
225  void setCommand(int col, const QString& com);
227  bool calculate(int col, int startRow, int endRow, bool forceMuParser = false, bool notifyChanges = true);
229  bool muParserCalculate(int col, int startRow, int endRow, bool notifyChanges = true);
231  bool calculate();
233  void updateValues(Table*, const QString& columnName);
234 
236 
237  void deleteSelectedRows();
238  void deleteRows(int startRow, int endRow);
239  void insertRow();
240  void moveRow(bool up = true);
242 
244 
245  void cutSelection();
246  void copySelection();
247  void clearSelection();
248  void pasteSelection();
249  void selectAllTable();
250  void deselect();
251  void clear();
253 
254  void init(int rows, int cols);
255  QStringList writableSelectedColumns();
256  QStringList selectedColumns();
257  QStringList selectedYColumns();
258  QStringList selectedErrColumns();
259  QStringList selectedYLabels();
260  QStringList drawableColumnSelection();
261  QStringList YColumns();
262  int selectedColsNumber();
263 
264  void setColumnWidth(int width, bool allCols);
265  void setColumnWidth(int col, int width);
266  int columnWidth(int col);
267  QStringList columnWidths();
268  void setColWidths(const QStringList& widths);
269  void adjustColumnsWidth(bool selection = true);
270 
271  void setSelectedCol(int col){selectedCol = col;};
272  int selectedColumn(){return selectedCol;};
273  int firstSelectedColumn();
274  int numSelectedRows();
275  bool isRowSelected(int row, bool full=false) { return d_table->isRowSelected(row, full); }
276  bool isColumnSelected(int col, bool full=false) { return d_table->isColumnSelected(col, full); }
278  void goToRow(int row);
280  void goToColumn(int col);
281 
282  void columnNumericFormat(int col, char *f, int *precision);
283  void columnNumericFormat(int col, int *f, int *precision);
284  int columnType(int col){return colTypes[col];};
285 
286  QList<int> columnTypes(){return colTypes;};
287  void setColumnTypes(QList<int> ctl){colTypes = ctl;};
288  void setColumnTypes(const QStringList& ctl);
289  void setColumnType(int col, ColType val) { colTypes[col] = val; }
290 
291  void saveToMemory(double **cells){d_saved_cells = cells;};
292  void saveToMemory();
293  void freeMemory();
294 
295  bool isReadOnlyColumn(int col);
296  void setReadOnlyColumn(int col, bool on = true);
297 
298  QString columnFormat(int col){return col_format[col];};
299  QStringList getColumnsFormat(){return col_format;};
300  void setColumnsFormat(const QStringList& lst);
301 
302  void setTextFormat(int col);
303  void setColNumericFormat(int col);
304  void setColNumericFormat(int f, int prec, int col, bool updateCells = true);
305  bool setDateFormat(const QString& format, int col, bool updateCells = true);
306  bool setTimeFormat(const QString& format, int col, bool updateCells = true);
307  void setMonthFormat(const QString& format, int col, bool updateCells = true);
308  void setDayFormat(const QString& format, int col, bool updateCells = true);
309 
310  bool exportExcel(const QString& fname, bool withLabels, bool exportComments, bool exportSelection);
311  bool exportOdsSpreadsheet(const QString& fname, bool withLabels, bool exportComments, bool exportSelection);
312  bool exportODF(const QString& fname, bool withLabels, bool exportComments, bool exportSelection);
313  bool exportASCII(const QString& fname, const QString& separator, bool withLabels = false,
314  bool exportComments = false, bool exportSelection = false);
315  void importASCII(const QString &fname, const QString &sep = "\t", int ignoredLines = 0, bool renameCols = false,
316  bool stripSpaces = false, bool simplifySpaces = false, bool importComments = false,
317  const QString& commentString = "", bool readOnly = false,
318  ImportMode importAs = Overwrite, const QLocale& importLocale = QLocale(), int endLine = 0, int maxRows = -1,
319  const QList<int>& newColTypes = QList<int>(), const QStringList& colFormats = QStringList());
320 
322 
323  virtual void save(const QString &fn, const QString& geometry, bool = false);
324  void restore(const QStringList& lst);
325 
326  QString saveHeader();
327  QString saveComments();
328  QString saveCommands();
329  QString saveColumnWidths();
330  QString saveColumnTypes();
331  QString saveReadOnlyInfo();
332  QString saveHiddenColumnsInfo();
333 
334  void setBackgroundColor(const QColor& col);
335  void setTextColor(const QColor& col);
336  void setHeaderColor(const QColor& col);
337  void setTextFont(const QFont& fnt);
338  void setHeaderFont(const QFont& fnt);
339 
340  int verticalHeaderWidth(){return d_table->verticalHeader()->width();};
341 
342  QString comment(int col);
343  void setColComment(int col, const QString& s);
344  QStringList colComments(){return comments;};
345  void setColComments(const QStringList& lst){comments = lst;};
346  void showComments(bool on = true);
348 
350  void notifyChanges();
351  void notifyChanges(const QString& colName);
352 
354  void colWidthModified(int, int, int);
355 
356 signals:
357  void changedColHeader(const QString&, const QString&);
358  void removedCol(const QString&);
359  void addedCol(const QString&);
360  void removedCol(int);
361  void colIndexChanged(int, int);
362  void modifiedData(Table *, const QString&);
363  void optionsDialog();
364  void colValuesDialog();
365  void resizedTable(QWidget*);
366  void showContextMenu(bool selection);
367 
368 protected:
370 
371 private:
372  void clearCol();
373 
376  QList<int> colTypes, col_plot_type;
379  double **d_saved_cells;
380 
382  void setColumnHeader(int index, const QString& label);
383 };
384 
385 #endif
void modifiedData(Table *, const QString &)
void setDayFormat(const QString &format, int col, bool updateCells=true)
Definition: Table.cpp:2392
int numSelectedRows()
Definition: Table.cpp:1196
void selectAllTable()
Definition: Table.cpp:1443
void restore(const QStringList &lst)
Definition: Table.cpp:3555
int selectedCol
Definition: Table.h:377
bool isColumnHidden(int col)
Definition: Table.h:160
void freeMemory()
Definition: Table.cpp:2195
QList< int > plotDesignations()
Definition: Table.h:116
int colIndex(const QString &name)
Definition: Table.cpp:2564
QStringList drawableColumnSelection()
Definition: Table.cpp:1151
void notifyChanges()
This slot notifies the main application that the table has been modified. Triggers the update of 2D p...
Definition: Table.cpp:3606
virtual void addCol(PlotDesignation pd=Y)
Definition: Table.cpp:1323
QString comment(int col)
Definition: Table.cpp:984
void activateNextCell()
Definition: Table.cpp:4003
void importASCII(const QString &fname, const QString &sep="\t", int ignoredLines=0, bool renameCols=false, bool stripSpaces=false, bool simplifySpaces=false, bool importComments=false, const QString &commentString="", bool readOnly=false, ImportMode importAs=Overwrite, const QLocale &importLocale=QLocale(), int endLine=0, int maxRows=-1, const QList< int > &newColTypes=QList< int >(), const QStringList &colFormats=QStringList())
Definition: Table.cpp:2727
QStringList getCommands()
Definition: Table.h:217
QList< int > columnTypes()
Definition: Table.h:286
QString saveColumnWidths()
Definition: Table.cpp:833
void changedColHeader(const QString &, const QString &)
bool isColumnSelected(int col, bool full=false)
Definition: Table.h:276
bool exportASCII(const QString &fname, const QString &separator, bool withLabels=false, bool exportComments=false, bool exportSelection=false)
Definition: Table.cpp:3129
void insertCol()
Definition: Table.cpp:1308
QVarLengthArray< double > col(int ycol)
Definition: Table.cpp:1217
bool exportExcel(const QString &fname, bool withLabels, bool exportComments, bool exportSelection)
Definition: Table.cpp:2975
void deleteSelectedRows()
Definition: Table.cpp:1402
QStringList YColumns()
Definition: Table.cpp:1120
void cutSelection()
Selection Operations.
Definition: Table.cpp:1437
void insertRow()
Definition: Table.cpp:1313
void setColumnType(int col, ColType val)
Definition: Table.h:289
QList< int > col_plot_type
Definition: Table.h:376
Definition: Table.h:41
static double fromTime(const QTime &t)
Definition: Table.cpp:2280
void showComments(bool on=true)
Definition: Table.cpp:3674
Definition: Table.h:62
Definition: Table.h:62
double minColumnValue(int col, int startRow=0, int endRow=-1)
Definition: Table.cpp:3936
void sortColumn(int col=-1, int order=0)
Sort the specified column.
Definition: Table.cpp:1984
void setBackgroundColor(const QColor &col)
Definition: Table.cpp:151
void setNormalRandomValues()
Definition: Table.cpp:2464
virtual void save(const QString &fn, const QString &geometry, bool=false)
Definition: Table.cpp:912
ImportMode
Definition: Table.h:65
bool muParserCalculate(int col, int startRow, int endRow, bool notifyChanges=true)
Compute specified cells from column formula (optimized for muParser).
Definition: Table.cpp:539
void setColumnsFormat(const QStringList &lst)
Definition: Table.cpp:2258
void setAutoUpdateValues(bool on=true)
Definition: Table.cpp:133
void moveRow(bool up=true)
Definition: Table.cpp:3858
void customEvent(QEvent *e)
Definition: Table.cpp:3413
Definition: Table.h:63
QString colLabel(int col)
Definition: Table.cpp:976
An interpreter for evaluating scripting code. Abstract.
Definition: ScriptingEnv.h:50
void setCommands(const QStringList &com)
Set all column formulae.
Definition: Table.cpp:509
add file as new rows to this table
Definition: Table.h:67
void clearCol()
Definition: Table.cpp:1373
void showAllColumns()
Definition: Table.cpp:3841
QStringList col_format
Definition: Table.h:375
void adjustColumnsWidth(bool selection=true)
Definition: Table.cpp:1028
int verticalHeaderWidth()
Definition: Table.h:340
void updateDecimalSeparators(const QLocale &oldSeparators)
Updates the decimal separators when importing ASCII files on user request.
Definition: Table.cpp:3702
void sortColumnsDialog()
Display a dialog with some options for sorting the selected columns.
Definition: Table.cpp:1840
void clearCell(int row, int col)
Definition: Table.cpp:1386
void clearSelection()
Definition: Table.cpp:1453
bool noYColumn()
Definition: Table.cpp:2717
void moveCurrentCell()
Definition: Table.cpp:3275
void pasteSelection()
Definition: Table.cpp:1566
void setAscValues()
Definition: Table.cpp:2673
int selectedColumn()
Definition: Table.h:272
void swapColumns(int, int)
Definition: Table.cpp:3762
Definition: Table.h:63
Q3TableSelection getSelection()
Definition: Table.cpp:820
void setHeaderFont(const QFont &fnt)
Definition: Table.cpp:179
void setRandomValues()
Definition: Table.cpp:2425
QStringList columnsList()
Definition: Table.cpp:1177
Definition: Table.h:62
void addedCol(const QString &)
void saveToMemory()
Definition: Table.cpp:2158
QList< int > colTypes
Definition: Table.h:376
QString saveHeader()
Definition: Table.cpp:874
QStringList selectedYLabels()
Definition: Table.cpp:1167
int colPlotDesignation(int col)
Definition: Table.h:113
void setReadOnlyColumn(int col, bool on=true)
Definition: Table.cpp:3735
int colX(int col)
Definition: Table.cpp:335
void sortTableDialog()
Display a dialog with some options for sorting all columns.
Definition: Table.cpp:1848
void setHeaderColor(const QColor &col)
Definition: Table.cpp:169
void colValuesDialog()
void removedCol(const QString &)
QString saveComments()
Definition: Table.cpp:862
add file as new columns to this table
Definition: Table.h:66
bool isEmptyColumn(int col)
Definition: Table.cpp:2101
void resizeRows(int)
Definition: Table.cpp:3446
void setCommand(int col, const QString &com)
Set formula for column col.
Definition: Table.cpp:516
void clear()
Definition: Table.cpp:3630
void normalizeCol(int col=-1)
Definition: Table.cpp:1812
void setText(int row, int col, const QString &text)
Definition: Table.cpp:2153
void deleteRows(int startRow, int endRow)
Definition: Table.cpp:1408
void setTextFont(const QFont &fnt)
Definition: Table.cpp:161
#define min(a, b)
Definition: ShapiroWilkTest.cpp:36
Definition: Table.h:62
Definition: Table.h:62
void copySelection()
Definition: Table.cpp:1521
void hideColumn(int col, bool=true)
Definition: Table.cpp:3823
static QDateTime dateTime(double val)
Definition: Table.cpp:2266
void copy(Table *m, bool values=true)
Definition: Table.cpp:3525
void optionsDialog()
void setHeaderColType()
Definition: Table.cpp:2571
void setColNumericFormat(int col)
Definition: Table.cpp:2210
bool exportODF(const QString &fname, bool withLabels, bool exportComments, bool exportSelection)
Definition: Table.cpp:2986
MyTable * d_table
Definition: Table.h:369
void setColComment(int col, const QString &s)
Definition: Table.cpp:992
QStringList selectedYColumns()
Definition: Table.cpp:1130
void normalizeSelection()
Definition: Table.cpp:1781
void hideSelectedColumns()
Definition: Table.cpp:3833
void moveColumnBy(int cols)
Definition: Table.cpp:3785
Definition: Table.h:62
QString colName(int col)
Definition: Table.cpp:1055
QtiPlot's main window.
Definition: ApplicationWindow.h:133
replace content of table with the imported file
Definition: Table.h:68
bool setTimeFormat(const QString &format, int col, bool updateCells=true)
Definition: Table.cpp:2321
Definition: Table.h:64
void deselect()
Definition: Table.cpp:1448
bool setDateFormat(const QString &format, int col, bool updateCells=true)
Definition: Table.cpp:2285
int firstXCol()
Definition: Table.cpp:965
void removeCol()
Definition: Table.cpp:1726
int columnWidth(int col)
Definition: Table.cpp:468
virtual QString sizeToString()
Size of the widget as a string.
Definition: Table.cpp:3852
void setPlotDesignation(PlotDesignation pd, bool rightColumns=false)
Definition: Table.cpp:397
int colY(int col, int xCol=-1, const QStringList &lst=QStringList())
Definition: Table.cpp:349
void setNumCols(int cols)
Definition: Table.cpp:3424
void updateValues(Table *, const QString &columnName)
Recalculates values in all columns with formulas containing.
Definition: Table.cpp:800
int numCols()
Definition: Table.cpp:2085
void sortColDesc()
Sort the current column in descending order.
Definition: Table.cpp:2075
double avg(int col, int startRow=0, int endRow=-1)
Definition: Table.cpp:3905
QStringList colComments()
Definition: Table.h:344
QStringList commands
Definition: Table.h:375
QString saveColumnTypes()
Definition: Table.cpp:841
QStringList getColumnsFormat()
Definition: Table.h:299
void setTextColor(const QColor &col)
Definition: Table.cpp:156
Definition: Table.h:62
bool exportOdsSpreadsheet(const QString &fname, bool withLabels, bool exportComments, bool exportSelection)
Definition: Table.cpp:2962
bool d_show_comments
Definition: Table.h:374
QStringList writableSelectedColumns()
Definition: Table.cpp:2649
ColType
Definition: Table.h:63
void setColName(int col, const QString &text, bool enumerateRight=false, bool warn=true)
Definition: Table.cpp:1063
void goToRow(int row)
Scroll to row (row starts with 1)
Definition: Table.cpp:3643
QStringList columnWidths()
Definition: Table.cpp:473
QStringList col_label
Definition: Table.h:375
Definition: Table.h:62
QString columnFormat(int col)
Definition: Table.h:298
Table * extractData(const QString &name, const QString &condition, int startRow=0, int endRow=-1)
Definition: Table.cpp:733
void setColWidths(const QStringList &widths)
Definition: Table.cpp:482
void setColComments(const QStringList &lst)
Definition: Table.h:345
void cellEdited(int, int col)
Definition: Table.cpp:300
void setColumnWidth(int width, bool allCols)
Definition: Table.cpp:1008
void setSelectedCol(int col)
Definition: Table.h:271
double ** d_saved_cells
Definition: Table.h:379
void sortColumns(int type=0, int order=0, const QString &leadCol=QString())
Sort selected columns as in sortColumns(const QStringList&,int,int,const QString&).
Definition: Table.cpp:1863
bool isEmptyRow(int row)
Definition: Table.cpp:2090
void sort(int type=0, int order=0, const QString &leadCol=QString())
Sort all columns as in sortColumns(const QStringList&,int,int,const QString&).
Definition: Table.cpp:1856
bool noXColumn()
Definition: Table.cpp:2707
MyTable * table()
Definition: Table.h:92
void showContextMenu()
Show the context menu.
void resizedTable(QWidget *)
void sortColAsc()
Sort the current column in ascending order.
Definition: Table.cpp:2070
int nonEmptyRows()
Definition: Table.cpp:2115
int columnType(int col)
Definition: Table.h:284
QString saveHiddenColumnsInfo()
Definition: Table.cpp:904
QStringList comments
Definition: Table.h:375
Definition: Table.h:63
QStringList selectedErrColumns()
Definition: Table.cpp:1140
void setHeader(QStringList header)
Definition: Table.cpp:2558
int selectedColsNumber()
Definition: Table.cpp:1207
void colWidthModified(int, int, int)
Notifies the main application that the width of a table column has been modified by the user...
Definition: Table.cpp:144
Definition: Table.h:64
void exportPDF(const QString &fileName)
Definition: Table.cpp:184
QStringList colNames()
Definition: Table.h:107
void addColumns(int c)
Definition: Table.cpp:1349
void columnNumericFormat(int col, char *f, int *precision)
Definition: Table.cpp:442
void saveToMemory(double **cells)
Definition: Table.h:291
void setMonthFormat(const QString &format, int col, bool updateCells=true)
Definition: Table.cpp:2359
Base class of all MDI client windows.
Definition: MdiSubWindow.h:51
Interface for maintaining a reference to the current ScriptingEnv.
Definition: Script.h:152
void loadHeader(QStringList header)
Definition: Table.cpp:2509
MyTable(QWidget *parent=0, const char *name=0)
Definition: Table.cpp:3995
Definition: Table.h:63
double maxColumnValue(int col, int startRow=0, int endRow=-1)
Definition: Table.cpp:3963
int d_numeric_precision
Definition: Table.h:378
void setTextFormat(int col)
Definition: Table.cpp:2204
void goToColumn(int col)
Scroll to column (column starts with 1)
Definition: Table.cpp:3652
PlotDesignation
Definition: Table.h:62
QString saveReadOnlyInfo()
Definition: Table.cpp:896
Definition: Table.h:64
NumericFormat
Definition: Table.h:64
double cell(int row, int col)
Return the value of the cell as a double.
Definition: Table.cpp:2125
bool isReadOnlyColumn(int col)
Definition: Table.cpp:3727
void setCell(int row, int col, double val)
Definition: Table.cpp:2136
MDI window providing a spreadsheet table with column logic.
Definition: Table.h:57
Definition: Table.h:63
void normalize()
Definition: Table.cpp:1793
void resizeCols(int)
Definition: Table.cpp:3480
void colIndexChanged(int, int)
void setNumRows(int rows)
Definition: Table.cpp:3419
void setColPlotDesignation(int col, PlotDesignation pd)
Definition: Table.cpp:420
bool calculate()
Compute selected cells from column formulae; use current cell if there's no selection.
Definition: Table.cpp:529
Definition: Table.h:63
QString saveCommands()
Definition: Table.cpp:849
QStringList selectedColumns()
Definition: Table.cpp:1110
double sum(int col, int startRow=0, int endRow=-1)
Definition: Table.cpp:3881
static double fromDateTime(const QDateTime &dt)
Definition: Table.cpp:2275
int firstSelectedColumn()
Definition: Table.cpp:1186
void init(int rows, int cols)
Definition: Table.cpp:76
void print()
Definition: Table.cpp:189
void columnRange(int c, double *min, double *max)
Definition: Table.cpp:1230
QString name()
Return the window name.
Definition: MdiSubWindow.h:84
void setColumnHeader(int index, const QString &label)
Internal function to change the column header.
Definition: Table.cpp:3662
Table(ScriptingEnv *env, int r, int c, const QString &label, ApplicationWindow *parent, const QString &name=QString(), Qt::WFlags f=0)
Definition: Table.cpp:70
int numRows()
Definition: Table.cpp:2080
void setColumnTypes(QList< int > ctl)
Definition: Table.h:287
virtual void moveColumn(int, int, int)
Definition: Table.cpp:3747
void clearCommands()
Clear all column formulae.
Definition: Table.cpp:502
bool isRowSelected(int row, bool full=false)
Definition: Table.h:275
virtual void insertCols(int start, int count)
Definition: Table.cpp:1269
bool commentsEnabled()
Definition: Table.h:347
void setNumericPrecision(int prec)
Sets the number of significant digits.
Definition: Table.cpp:3690
QString text(int row, int col)
Definition: Table.cpp:2148
bool eventFilter(QObject *object, QEvent *e)
Definition: Table.cpp:3297