Ksetiwatch API Documentation


ksetiwatch.h

Go to the documentation of this file.
00001 /***************************************************************************/
00014 #ifndef KSETIWATCH_H
00015 #define KSETIWATCH_H
00016 
00017 #include <qlist.h>
00018 
00019 #include <kmainwindow.h>
00020 
00021 #include "setidefs.h"
00022 
00023 class KTabCtl;
00024 class QListViewItem;
00025 class QPopupMenu;
00026 class Analysis;
00027 class DataInfo;
00028 class UserInfo;
00029 class CompletedWUList;
00030 class Options;
00031 class About;
00032 class DockWidget;
00033 class SetiLoc;
00034 
00036 class KswOptions
00037 {
00038 public:
00039   int     RefreshInterval;    
00043   int     StatusFilterValue;  
00046   bool    hms;                
00049   bool    MinimizeToPanel;    
00051   bool    StartMinimized;     
00053   bool    DrawGrid;           
00055   QString SelectedLocation;   
00059   bool    ReportSpike;        
00061   bool    ReportGaussian;     
00063   bool    ReportPulse;        
00065   bool    ReportTriplet;      
00067   bool    ShowRecords;        
00069   WUScore Record;             
00072   bool    ShowText;           
00074   bool    FillMarker;         
00076   int     MarkerSize;         
00078   bool    PlaySound;          
00080   QString HighSignalSound;    
00082 };
00083 
00085 #define globalopts Ksetiwatch::globalOptions()
00086 
00093 class KsetiwatchApp : public KApplication
00094 {
00095 Q_OBJECT
00096 
00097 public:
00104   KsetiwatchApp(bool allowStyles = true, bool GUIEnabled = true);
00106   ~KsetiwatchApp();
00114   void commitData(QSessionManager& sm);
00116   bool closedBySessionManager() {return(sessionClose);}
00117 
00118 private:
00119   bool sessionClose;
00120 };
00121 
00130 class Ksetiwatch : public KMainWindow
00131 {
00132 Q_OBJECT
00133 
00134 public:
00137   struct TableColumn  {
00138                       QString text;        
00140                       int     width;       
00143                       int     alignment;   
00146                       };
00147 
00152   Ksetiwatch(const char* name=0);
00154   ~Ksetiwatch();
00159   bool startMinimized() {return globalopts->StartMinimized;}
00170   static SetiLoc* getLocation(const QString& name);
00176   static QList<SetiLoc>& locationList() {return(Ksetiwatch::SetiList);}
00181   static KswOptions* globalOptions() {return(&Ksetiwatch::GlobalOptions);}
00190   enum ListId {ListAdd, ListEdit, ListDelete, ListRemove};
00191 
00192 public slots: // Public slots
00201   void slotUpdateList(SetiLoc* loc, int type);
00203   void close();
00204 
00205 protected:
00209   bool event(QEvent *e);
00216   bool queryClose();
00222   bool queryExit();
00228   void startClients();
00234   void stopClients();
00235 
00236 private:
00237   static QList<SetiLoc> SetiList;
00238   static KswOptions     GlobalOptions;
00239   KTabCtl*         ktb;
00240   Analysis*        ana;
00241   DataInfo*        di;
00242   UserInfo*        ui;
00243   CompletedWUList* cwu;
00244   Options*         opt;
00245   About*           abt;
00246   DockWidget*      ksdock;
00247   QPopupMenu*      dockrightpopup;
00248   bool             readyToQuit;
00249   bool             locListCleared;
00250 
00251 private slots:
00253   void saveConfig();
00255   void readConfig();
00257   void handleTabSelection(int);
00259   void toggleIcon();
00260 
00261 signals: // Signals
00268   void listModified(SetiLoc*, int);
00269 };
00270 #endif
KDE Logo
This file is part of the documentation for Ksetiwatch API Version 2.6.1.
Documentation copyright © 2000-2003 Gordon Machel.
Generated on Fri Jun 6 00:28:14 2003 by doxygen 1.2.18, written by Dimitri van Heesch, © 1997-2002