QXRD  0.11.16
Public Member Functions | Private Attributes | List of all members
QcepDataObjectSpreadsheetWindow Class Reference

#include <qcepdataobjectspreadsheetwindow.h>

Inheritance diagram for QcepDataObjectSpreadsheetWindow:
Inheritance graph
[legend]
Collaboration diagram for QcepDataObjectSpreadsheetWindow:
Collaboration graph
[legend]

Public Member Functions

 QcepDataObjectSpreadsheetWindow (QcepExperimentWPtr expt, QcepDataObjectWPtr obj, QWidget *parent=0)
 
virtual ~QcepDataObjectSpreadsheetWindow ()
 
void closeEvent (QCloseEvent *event)
 
bool wantToClose ()
 
- Public Member Functions inherited from QcepDataObjectWindow
 QcepDataObjectWindow (QWidget *parent=0)
 
- Public Member Functions inherited from QcepMainWindow
 QcepMainWindow (QWidget *parent=0)
 
void possiblyClose ()
 
bool wantToClose ()
 

Private Attributes

QcepExperimentWPtr m_Experiment
 
QcepDataObjectWPtr m_Object
 
QSharedPointer< QcepSpreadsheetModelm_Model
 

Additional Inherited Members

- Public Slots inherited from QcepDataObjectWindow
void printMessage (QString msg, QDateTime ts=QDateTime::currentDateTime())
 
- Public Slots inherited from QcepMainWindow
void shrinkPanels (int fontSize, int spacing)
 
void setFontSize (int fontSize)
 
void setSpacing (int spacing)
 
virtual void printMessage (QString msg, QDateTime ts=QDateTime::currentDateTime())=0
 
- Protected Member Functions inherited from QcepMainWindow
void shrinkDockWidget (QDockWidget *dockWidget, int fontSize, int spacing)
 
void shrinkObject (QObject *obj, int fontSize, int spacing)
 
void setObjectSpacing (QObject *obj, int spacing)
 

Detailed Description

Definition at line 12 of file qcepdataobjectspreadsheetwindow.h.

Constructor & Destructor Documentation

QcepDataObjectSpreadsheetWindow::QcepDataObjectSpreadsheetWindow ( QcepExperimentWPtr  expt,
QcepDataObjectWPtr  obj,
QWidget *  parent = 0 
)
explicit

Definition at line 31 of file qcepdataobjectspreadsheetwindow.cpp.

References m_Experiment, m_Model, and m_Object.

31  :
32  QcepDataObjectWindow(parent),
33  m_Experiment(expt),
34  m_Object(obj),
35  m_Model()
36 {
37  setupUi(this);
38 
41 
42  if (objp && e) {
43  setWindowTitle(tr("%1 Data from %2")
44  .arg(objp->pathName())
45  .arg(e->get_ExperimentName()));
46  } else if (objp) {
47  setWindowTitle(tr("%1 Data")
48  .arg(objp->pathName()));
49  } else {
50  setWindowTitle("Unknown Data");
51  }
52 
53  if (objp) {
54  QSharedPointer<QcepImageDataBase> data = qSharedPointerDynamicCast<QcepImageDataBase>(objp);
55 
56  if (data) {
57  m_Model = QSharedPointer<QcepSpreadsheetModel>(
59  } else {
60 
61  QcepIntegratedDataPtr integ = qSharedPointerDynamicCast<QcepIntegratedData>(m_Object);
62 
63  if (integ) {
64  m_Model = QSharedPointer<QcepSpreadsheetModel>(
66  } else {
67 
68  QcepDataArrayPtr array = qSharedPointerDynamicCast<QcepDataArray>(m_Object);
69 
70  if (array) {
71  m_Model = QSharedPointer<QcepSpreadsheetModel>(
73  } else {
74 
75  QcepDataColumnPtr col = qSharedPointerDynamicCast<QcepDataColumn>(m_Object);
76 
77  if (col) {
78  m_Model = QSharedPointer<QcepSpreadsheetModel>(
80  } else {
81  QcepDataColumnScanPtr scan = qSharedPointerDynamicCast<QcepDataColumnScan>(m_Object);
82 
83  if (scan) {
84  m_Model = QSharedPointer<QcepSpreadsheetModel>(
86  } else {
87  QcepDataGroupPtr group = qSharedPointerDynamicCast<QcepDataGroup>(m_Object);
88 
89  if (group) {
90  m_Model = QSharedPointer<QcepSpreadsheetModel>(
92  }
93  }
94  }
95  }
96  }
97  }
98  }
99 
100  m_TableView->horizontalHeader()->setSectionResizeMode(QHeaderView::ResizeToContents);
101 
102  if (m_Model) {
103  m_TableView->setModel(m_Model.data());
104  }
105 
106  if (objp && m_Model) {
107  connect(objp.data(), SIGNAL(dataObjectChanged()), m_Model.data(), SLOT(onDataObjectChanged()));
108  }
109 
110  setAttribute(Qt::WA_DeleteOnClose, true);
111 }
QSharedPointer< QcepDataArray > QcepDataArrayPtr
QcepDataObjectWindow(QWidget *parent=0)
QSharedPointer< QcepDataGroup > QcepDataGroupPtr
QSharedPointer< QcepDataColumnScan > QcepDataColumnScanPtr
QSharedPointer< QcepDataColumn > QcepDataColumnPtr
QSharedPointer< QcepIntegratedData > QcepIntegratedDataPtr
QSharedPointer< QcepSpreadsheetModel > m_Model
QSharedPointer< QcepDataObject > QcepDataObjectPtr
QSharedPointer< QcepExperiment > QcepExperimentPtr
QcepDataObjectSpreadsheetWindow::~QcepDataObjectSpreadsheetWindow ( )
virtual

Definition at line 113 of file qcepdataobjectspreadsheetwindow.cpp.

114 {
115 #ifndef QT_NO_DEBUG
116  printf("Deleting Spreadsheet Window\n");
117 #endif
118 }

Member Function Documentation

void QcepDataObjectSpreadsheetWindow::closeEvent ( QCloseEvent *  event)

Definition at line 120 of file qcepdataobjectspreadsheetwindow.cpp.

References wantToClose().

121 {
122  if (wantToClose()) {
123  event -> accept();
124  } else {
125  event -> ignore();
126  }
127 }

Here is the call graph for this function:

bool QcepDataObjectSpreadsheetWindow::wantToClose ( )

Definition at line 129 of file qcepdataobjectspreadsheetwindow.cpp.

Referenced by closeEvent().

130 {
131  return QMessageBox::question(this, tr("Really Close?"),
132  tr("Do you really want to close the window %1 ?")
133  .arg(windowTitle()),
134  QMessageBox::Ok | QMessageBox::Cancel) == QMessageBox::Ok;
135 }

Here is the caller graph for this function:

Member Data Documentation

QcepExperimentWPtr QcepDataObjectSpreadsheetWindow::m_Experiment
private

Definition at line 30 of file qcepdataobjectspreadsheetwindow.h.

Referenced by QcepDataObjectSpreadsheetWindow().

QSharedPointer<QcepSpreadsheetModel> QcepDataObjectSpreadsheetWindow::m_Model
private

Definition at line 32 of file qcepdataobjectspreadsheetwindow.h.

Referenced by QcepDataObjectSpreadsheetWindow().

QcepDataObjectWPtr QcepDataObjectSpreadsheetWindow::m_Object
private

Definition at line 31 of file qcepdataobjectspreadsheetwindow.h.

Referenced by QcepDataObjectSpreadsheetWindow().


The documentation for this class was generated from the following files: