home *** CD-ROM | disk | FTP | other *** search
/ Dream 52 / Amiga_Dream_52.iso / Linux / Divers / lyx-0.13.2.tar.gz / lyx-0.13.2.tar / lyx-0.13.2 / src / lyx_gui.h < prev    next >
C/C++ Source or Header  |  1998-04-23  |  2KB  |  88 lines

  1. // -*- C++ -*-
  2. /* This file is part of
  3.  * ======================================================
  4.  * 
  5.  *           LyX, The Document Processor
  6.  *      
  7.  *        Copyright (C) 1995 1996 Matthias Ettrich
  8.  *           and the LyX Team.
  9.  *
  10.  *======================================================*/
  11.  
  12. #ifndef _LYX_GUI_H_
  13. #define _LYX_GUI_H_
  14.  
  15. #ifdef __GNUG__
  16. #pragma interface
  17. #endif
  18.  
  19. class LyXView;
  20. class LyX;
  21. class Buffer;
  22.  
  23. /**
  24.   This class is going to be the entry point to {\em all} GUI funcionality.
  25.   From this object will all the things going on be initiated. However I
  26.   have not clearly figured out how this class is going to be, suggestions
  27.   are welcome. (Lgb)
  28.   */
  29. class LyXGUI {
  30. public:
  31.     /**@name Constructor */
  32.     //@{
  33.     
  34.     /** The only constructor allowed
  35.  
  36.       If gui is false, LyX will operate in non-X mode
  37.       */
  38.     LyXGUI(LyX *owner, int *argc, char *argv[], bool gui);
  39.     ///
  40.     ~LyXGUI();
  41.     //@}
  42.     
  43.     /**@name Members */
  44.     //@{
  45.     /**
  46.       This functions starts the ball. For XForms it runs a loop of
  47.       fl_check_forms(). For QT this will probably be .exec().
  48.       */
  49.     void runTime();
  50.     /** This will take care of the initializaton done after the
  51.       main initialization.
  52.       */
  53.     void init();
  54.     ///
  55.     LyXView *lyxViews; // or something so that several views
  56.     // on the same time can be allowed.
  57.  
  58.     /// Register the buffer with the first fount LyXView in lyxViews
  59.     void regBuf(Buffer*);
  60.     //@}
  61. private:
  62.     /**@name Construcor */
  63.     //@{
  64.     /// not allowed
  65.     LyXGUI(); // don't allow this
  66.     /// not allowed
  67.     LyXGUI(const LyXGUI&); // nor this
  68.     //@}
  69.     
  70.     /**@name Members */
  71.     //@{
  72.     ///
  73.     void setDefaults();
  74.     ///
  75.     void create_forms();
  76.     //@}
  77.  
  78.     /**@name Variables */
  79.     //@{
  80.     /// The LyX that owns this GUI.
  81.     LyX *_owner;
  82.     /// Do we have a gui?
  83.     bool gui;
  84.     //@}
  85. };
  86.  
  87. #endif
  88.