Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

TxqFrame.h

Go to the documentation of this file.
00001 //--------------------------------------------------------------------
00002 //
00003 // File:    TxqFrame.h
00004 //
00005 // Purpose: Implementation of a Qt Widget to create a base window
00006 //          for scientific plotting.
00007 //
00008 // Version: $Id: TxqFrame.h,v 1.33 2002/01/14 23:47:23 kgl Exp $
00009 //
00010 // Copyright (c) 2000 by Tech-X Corporation.  All rights reserved.
00011 //
00012 // Author:  Kelly G. Luetkemeyer
00013 //
00014 //--------------------------------------------------------------------
00015 
00016 #ifndef TXQFRAME_H
00017 #define TXQFRAME_H 
00018 
00019 #ifndef QT_ALTERNATE_QTSMANIP
00020 #define QT_ALTERNATE_QTSMANIP
00021 #endif
00022 
00023 // config include
00024 #if defined(HAVE_CONFIG_H)
00025 #include <config.h>
00026 #endif 
00027 
00028 // Qt includes
00029 #include <qapp.h>
00030 #include <qwidget.h>
00031 #include <qframe.h>
00032 #include <qmenubar.h>
00033 #include <qpopmenu.h>
00034 #include <qpushbt.h>
00035 #include <qmsgbox.h>
00036 #include <qlayout.h>
00037 #include <qevent.h>
00038 #include <qwindowsstyle.h>
00039 #include <qplatinumstyle.h>
00040 #include <qmotifstyle.h>
00041 #include <qcdestyle.h>
00042 #include <qprinter.h>
00043 #include <qfiledialog.h>
00044 #include <qclipboard.h>
00045 #include <qtextstream.h>
00046 #include <qstatusbar.h>
00047 
00060 class TxqFrame : public QFrame
00061 {
00062   Q_OBJECT
00063 
00064 public:
00065 
00076   TxqFrame(QWidget* parent=0, const char *nm=0, WFlags f=WType_TopLevel);
00077 
00081   virtual ~TxqFrame();
00082 
00088   virtual void addToMenuBar(const QString & text, QPopupMenu * popup);
00089 
00096   virtual void addWidget(QWidget *w);
00097 
00107   virtual void addWidget(QWidget *w, int row, int col);
00108 
00121   virtual void addWidget(QWidget *w, int fromRow, int toRow, int fromCol, int toCol);
00122 
00129   virtual void addHWidget(QWidget *w);
00130 
00136   virtual void addWidgets(); 
00137  
00141   virtual void show();
00142  
00146   bool activate();
00147 
00152   void setName(QString name);
00153 
00158   virtual void setName(const char *nm) {
00159     QString s=nm;
00160     setName(s); 
00161   }
00162 
00168   virtual void setDestructClose(bool f);
00169 
00174   virtual void setIndex(const int index);
00175 
00180   virtual int getIndex();
00181 
00182 signals:
00183 
00188   void aboutToClose(int index);
00189 
00190 public slots:
00191 
00196   virtual void polish();
00197 
00201   virtual bool close( bool forceKill = true) ;
00202 
00203 protected:
00204 
00208   virtual void createWidgets();
00209 
00213   void createStatusBar();
00214 
00218   void createMenuBar();
00219 
00223   virtual void addFileMenuItems();
00224 
00228   virtual void addCloseMenuItem();
00229 
00233   virtual void addIconifyMenuItem();
00234 
00238   virtual void addSaveAsMenuItem();
00239 
00243   virtual void addDumpMenuItem();
00244 
00248   virtual void addPrintMenuItem();
00249 
00253   void addPrintPreviewMenuItem();
00254 
00258   virtual void addExitMenuItem();
00259 
00263   virtual void addEditMenuItems();
00264  
00268   virtual void addCutCopyPasteMenuItems();
00269 
00273   virtual void addStyleMenuItems();
00274 
00278   virtual void addStyleMenuItem();
00279 
00283   virtual void addViewMenuItems();
00284 
00288   virtual void addMenuBarItems();
00289 
00295   virtual void addSubMenuBarItems();
00296 
00300   void closeEvent( QCloseEvent* event);
00301 
00305   QMenuBar* getMenuBar() {return menuBar;}
00306 
00307 // protected data
00311   QMenuBar *menuBar;
00312 
00316   QStatusBar *statusBar;
00317  
00321   QPopupMenu *file;
00322 
00326   QPopupMenu *edit;
00327 
00331   QPopupMenu *view;
00332 
00336   QPopupMenu *style;
00337   
00341   QBoxLayout *topLayout;
00342 
00346   QGridLayout *layout;
00347 
00351   int sPlatinum;
00355   int sWindows;
00359   int sCDE;
00363   int sMotif;
00364 
00368   bool isPrint;
00369  
00373   QPrinter *printer;
00374 
00378   QString saveFileName;
00379 
00383   QString dumpDataFileName;
00384 
00388   bool dumpDataFlag;
00389 
00393   QTextStream *ts;
00394 
00398   QFile *dumpfile;
00399 
00404   QString selFilter;
00405 
00409   int vGridNumber;
00410 
00414   int hGridNumber;
00415 
00420   bool destructClose;
00421 
00422 protected slots:
00423  
00428   virtual void dumpData();
00429 
00433   virtual void saveAs();
00434 
00438   virtual void print();
00439 
00443   virtual void printPreview();
00444 
00448   virtual bool exit();
00449 
00453   bool iconify( bool forceKill = FALSE) ;
00454 
00458   virtual bool copy();
00459 
00463   virtual bool cut();
00464 
00468   virtual bool paste();
00469 
00473   virtual void motifStyle();
00474 
00478   virtual void windowsStyle();
00479 
00483   virtual void cdeStyle();
00484 
00488   void platinumStyle();
00489 
00490 private:
00491 
00495   void selectStyleMenu( int );
00496 
00500   QString clipText;
00501 
00505   int indexNumber;
00506 
00507 };
00508 
00509 
00510 #endif
Copyright Tech-X Corporation, all rights reserved.