Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

readwriteformbase.h

Go to the documentation of this file.
00001 /***************************************************************************
00002  *                                                                         *
00003  *   readwriteformbase.h                                                                   *
00004  *                                                                         *
00005  *   This program is free software; you can redistribute it and/or modify  *
00006  *   it under the terms of the GNU General Public License as published by  *
00007  *   the Free Software Foundation; either version 2 of the License, or     *
00008  *   (at your option) any later version.                                   *
00009  *                                                                         *
00010  *   Read the file COPYING for details.                                    *
00011  *                                                                         *
00012  *   copyright: (C) 2003 by Jan Mueller                                    *
00013  *   email: janmueller7@hotmail.com                                        *
00014  *                                                                         *
00015  ***************************************************************************/
00016 
00017 #ifndef ReadWriteFormBase_h
00018 #define ReadWriteFormBase_h
00019 #include <readonlyformbase.h>
00020 #include <qmainwindow.h>
00021 #include <qevent.h>
00022 #include <qtimer.h>
00023 
00024 class QSqlCursor;
00025 class QAction;
00026 class FillLinkListBox;
00027 
00041 class ReadWriteFormBase: public ReadOnlyFormBase {
00042   Q_OBJECT
00043     
00044     private:
00045   ReadWriteFormBase(const ReadWriteFormBase&);
00046   ReadWriteFormBase& operator=(const ReadWriteFormBase&);
00047   bool rec_is_locked;
00048   bool valid;
00049   
00052   virtual void lockGui();
00055   virtual void unlockGui();
00058   void customEvent(QCustomEvent *e);
00060   virtual bool lockRec();
00063   virtual void unlockRec();
00064   
00065  protected:     
00066   QToolBar *rwtoolbar;
00067   QPtrList<FillLinkListBox> threads;
00068   QTimer threadtimer;
00072   virtual bool setData();
00073   virtual void initToolBar();
00074   QAction *writeAction;
00075   QAction *deleteAction;
00076   void waitForThreads();
00077   
00078  public:
00079   ReadWriteFormBase(LitUrl u, QObject *receiver, QString slot, QWidget *parent=0, const char *name=0);
00082   ~ReadWriteFormBase();
00083   bool threadsFinished();
00084   
00085   protected slots:
00086   virtual void setWorkingGui(bool work);
00087   virtual void setReadonlyGui(bool ro);
00088   virtual void setInvalidGui(bool inv);
00089   
00090   public slots:
00091   void checkThreads();
00092   virtual void copy();
00093   virtual void cut();
00094   virtual void paste();
00097   virtual void write();
00100   virtual void deleteRec();
00101   void createLink(LitUrl obj1, LitUrl obj2);
00102   void deleteLink(LitUrl obj1, LitUrl obj2);    
00103   void createPublicationAuthor(LitUrl publ, LitUrl author);     
00104   void deletePublicationAuthor(LitUrl publ, LitUrl author);             
00105   void createPartAuthor(LitUrl part, LitUrl author);            
00106   void deletePartAuthor(LitUrl part, LitUrl author);
00107   void createProjectBibliography(LitUrl pr, LitUrl pub);
00108   void deleteProjectBibliography(LitUrl pr, LitUrl pub);
00109   void newNote(LitUrl obj);
00110 };
00111 
00112 #endif

Generated on Sat Mar 27 19:20:43 2004 for Literature by doxygen 1.3.6-20040222