00001 #ifndef _QDBTDEBUG_H
00002 #define _QDBTDEBUG_H
00003
00004 #include <qmainwindow.h>
00005 #include <qmap.h>
00006 #include <qstring.h>
00007
00008 #include <qdbt/qdbtglobal.h>
00009
00010 class QAction;
00011 class QTimer;
00012 class QComboBox;
00013 class QLabel;
00014 class QLineEdit;
00015
00016 class QdbtBaseCell;
00017 class QdbtBaseTabular;
00018
00026 class QDBT_EXPORT QdbtTabularDebug : public QMainWindow
00027 {
00028 Q_OBJECT
00029
00031 QdbtBaseTabular *_tab;
00032
00034 QLineEdit *_insertRow[ 2 ];
00036 QLineEdit *_insertCol[ 1 ];
00038 QLineEdit *_setDimension[ 2 ];
00040 QLineEdit *_removeRow[ 1 ];
00042 QLineEdit *_removeCol[ 1 ];
00044 QLineEdit *_exposeCell[ 2 ];
00046 QLineEdit *_editCell[ 2 ];
00048 QLineEdit *_changeCell[ 2 ];
00050 QLineEdit *_setKeyboardFocus[ 2 ];
00051
00053 QComboBox *_changeCellType;
00054
00056 QMap< QString, QdbtBaseCell * > _cells;
00057
00059 QLabel *_sizeLabel;
00060
00062 QLabel *_focusLabel;
00063
00065 int _MID_FitAll;
00067 int _MID_HeaderFont;
00069 int _MID_CascadeFont;
00071 int _MID_CellFont;
00073 int _MID_Update;
00075 int _MID_RedrawCascade;
00077 int _MID_RedrawHeader;
00078
00081 QTimer * _autoUpdateTimer;
00084 QLineEdit * _autoUpdateIntervalLE;
00086 QAction *_enableAction;
00088 QAction *_cascadeModeAction;
00090 QAction *_headerModeAction;
00092 QAction *_lockRowModeAction;
00094 QAction *_lockColModeAction;
00096 QAction *_selRowModeAction;
00098 QAction *_selMultModeAction;
00101 QAction *_ctrlModeAction;
00103 QAction *_shiftModeAction;
00105 QAction *_deselectModeAction;
00107 QAction *_jumpScrollModeAction;
00110 QAction *_vertSbModeAction;
00113 QAction *_horizDbModeAction;
00116 QAction *_tooltipsModeAction;
00118 QAction *_followFocusModeAction;
00121 QAction *_checkWidthAction;
00124 QAction *_traceAction;
00125
00127 QMap< int, const char * > _editResultMap;
00128
00130 int _supressTraceing;
00131
00132 public:
00133 QdbtTabularDebug( QdbtBaseTabular *, QWidget * = 0,
00134 const char * = 0, WFlags = WType_TopLevel );
00135 virtual ~QdbtTabularDebug();
00136
00137 static void attach();
00138
00139 private slots:
00140 void slotNewUpdateInterval();
00141 void slotUpdateToolBar();
00142 void slotTranslateMenuId( int );
00143 void slotButtonPressed( int );
00144 void slotNew();
00145
00146 void slotTrace_sectionClicked( int col );
00147 void slotTrace_selected( int row, bool state );
00148 void slotTrace_activated( int row );
00149 void slotTrace_cellSelected( int row, int col, bool state );
00150 void slotTrace_cellActivated( int row, int col );
00151 void slotTrace_cellEditDone( int row, int col, int action,
00152 const QString &oldText );
00153 void slotTrace_yOffsetChanged( int offset );
00154 void slotTrace_xOffsetChanged( int offset );
00155 void slotTrace_columnWidthChanged( int col, int width );
00156 void slotTrace_rightButtonClicked( int row, int col );
00157 void slotTraceMessage( const QString & );
00158 private:
00159 void trace( const QString & );
00160 void traceSignal( const QString & );
00161 };
00162
00163 #endif