ICS

QicsTable Documentation Set

spreadsheet.h

/****************************************************************************
** $RCSfile: spread_h.html,v $ $Date: 2008/06/23 16:32:07 $
**
** Copyright ( C ) 2002-2003 Integrated Computer Solutions, Inc.
** All rights reserved.
**
** This file is part of an example program for QicsTable.  This example
** program may be used, distributed and modified without limitation.
**
*****************************************************************************/

#ifndef _SPREADSHEET_H
#define _SPREADSHEET_H

#include <QMainWindow>
#include <QicsRegion.h>


class QComboBox;
class QLineEdit;
class QicsDataModel;
class QicsTable;
#ifdef QSA
    class QSProject;
#endif

class Spreadsheet : public QMainWindow
{
   Q_OBJECT
public:
    Spreadsheet(QWidget* parent = 0);

protected:
    QicsDataModel *dm;
    QicsTable *table;

    QLineEdit* cellLineEdit;
    QComboBox* fontFamilyCombo;
    QComboBox* fontSizeCombo;

    QAction *boldAction;
    QAction *italicAction;
    QAction *underlineAction;
    QAction *textLeftAction;
    QAction *textCenterAction;
    QAction *textRightAction;

    QString fileName;

    int startSelectedRow, startSelectedColumn;
    int endSelectedRow, endSelectedColumn;

    QicsRegion  selectedRegion;

#ifdef QSA
    QSProject* project;
#endif

    // Protected methods

    void loadFile(QString);
    void writeFile(QString);

    void getSelectedRegion();
    void setFontCombos(const QFont&);

public slots:
     void setCellValue(int row, int col, int value);
     QString getCellValue(int row, int col);

     void sortAscending();
     void sortDescending();

private slots:
   void resized();
   void copy();
   void cut();
   void paste();

   void fileNew();

   void openFile();
   void saveFile();
   void saveFileAs();

   void insertRow();
   void insertColumn();
   void deleteRow();
   void deleteColumn();

   void formatFont();
   void formatBackgroundColor();
   void formatForegroundColor();

   void selectFont(int);
   void selectFontSize(int combo);
   void textAlignLeft();
   void textAlignRight();
   void textAlignCenter();
   void textBold();
   void textItalic();
   void textUnderline();

   void setCurrencyFormatter();

   void cellLineUpdate();
   void updateSelection(bool);

   void addSpan();
   void removeSpan();

   // Should really ifdef these out, but MOC complains....
   void showQSAWorkbench();
   void testScripts();
   void saveScripts();

#ifdef CREATE_OBJS_WITH_QICSTABLE
   void print();
#endif
};

#endif /* _SPREADSHEET_H */

All trademarks and copyrights on this page are properties of their respective owners.
The rest is copyright ©1999-2007 Integrated Computer Solutions, Inc.