rendered paste body#include <SpreadSheetMainWindow.h>#include <KActionCollection>#include <KAction>#include <QTableView>#include <QTableWidget>#include <KStatusBar>#include <QLayout>#include <QLabel>#include <QMenu>#include <QAction>#include <QContextMenuEvent>#include <klocalizedstring.h>#include <QModelIndex>#include <QVariant>SpreadSheetMainWindow::SpreadSheetMainWindow(QWidget* /* parent */){ window()->setWindowTitle("SpreadSheet"); setActions(); m_table = new QTableWidget(100, 100); setCentralWidget(m_table); setStatusBar();}void SpreadSheetMainWindow::setStatusBar(){ m_labelCoord = new QLabel("Coord"); m_labelFormula = new QLabel("Formula"); statusBar()->addWidget(m_labelCoord); statusBar()->addWidget(m_labelFormula); connect(m_table, SIGNAL(currentCellChanged(int, int, int, int)), this, SLOT(onCellChanged(int, int)));}void SpreadSheetMainWindow::contextMenuEvent(QContextMenuEvent *event){ QMenu menu(this); menu.addAction(ki18n("cut").toString(), this, SLOT(onCut())); menu.addAction(ki18n("copy").toString(), this, SLOT(onCopy())); menu.addAction(ki18n("paste").toString(), this, SLOT(onPaste())); menu.exec(event->globalPos());}void SpreadSheetMainWindow::setActions(){ actionCollection()->addAction(KStandardAction::New, this, SLOT(onNew())); actionCollection()->addAction(KStandardAction::Open, this, SLOT(onOpen())); actionCollection()->addAction(KStandardAction::Save, this, SLOT(onSave())); actionCollection()->addAction(KStandardAction::SaveAs, this, SLOT(onSaveAs())); actionCollection()->addAction(KStandardAction::Cut, this, SLOT(onCut())); actionCollection()->addAction(KStandardAction::Copy, this, SLOT(onCopy())); actionCollection()->addAction(KStandardAction::Paste, this, SLOT(onPaste())); actionCollection()->addAction(KStandardAction::Quit, this, SLOT(close())); setupGUI();}void SpreadSheetMainWindow::onCellChanged(int row, int col){ m_labelCoord->setText(QString::number(row+1)+":"+QString::number(col+1)); m_labelFormula->setText(m_table->indexAt(QPoint(row, col)).data().toString());}void SpreadSheetMainWindow::onNew(){}void SpreadSheetMainWindow::onOpen(){}void SpreadSheetMainWindow::onSave(){}void SpreadSheetMainWindow::onSaveAs(){}void SpreadSheetMainWindow::onCut(){}void SpreadSheetMainWindow::onCopy(){}void SpreadSheetMainWindow::onPaste(){}