34 #include <QVarLengthArray>
44 MyTable(QWidget * parent = 0,
const char * name = 0);
45 MyTable(
int numRows,
int numCols, QWidget * parent = 0,
const char * name = 0);
82 double avg(
int col,
int startRow = 0,
int endRow = -1);
83 double sum(
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);
89 static double fromTime(
const QTime& t);
105 QString
text(
int row,
int col);
109 void setColName(
int col,
const QString&
text,
bool enumerateRight =
false,
bool warn =
true);
136 void print(QPrinter *);
137 void print(
const QString& fileName);
151 virtual void insertCols(
int start,
int count);
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());
208 QVarLengthArray<double>
col(
int ycol);
215 int colY(
int col,
int xCol = -1,
const QStringList& lst = QStringList());
254 void init(
int rows,
int cols);
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);
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());
323 virtual void save(
const QString &fn,
const QString& geometry,
bool =
false);
324 void restore(
const QStringList& lst);
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)
Not implemented yet.
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
static double fromTime(const QTime &t)
Definition: Table.cpp:2280
void showComments(bool on=true)
Definition: Table.cpp:3674
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
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
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
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 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
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 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
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
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
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
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
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
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
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
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
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
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