]> git.lyx.org Git - lyx.git/blob - src/frontends/gnome/mainapp.h
Fixes to insettabular/text + GNOME patch + KDE patch
[lyx.git] / src / frontends / gnome / mainapp.h
1 // -*- C++ -*-
2 /* This file is part of
3  * ====================================================== 
4  * 
5  *           LyX, The Document Processor
6  *       
7  *          Copyright 2000 The LyX Team.
8  *
9  * ====================================================== */
10
11 #ifndef GNOMELYX_MAINWIN
12 #define GNOMELYX_MAINWIN
13
14 #include <gnome--/app.h>
15 #include <gnome--/appbar.h>
16 #include <gtk--/frame.h>
17
18 #include "MenuBackend.h"
19
20 /*
21  This is (most probably) temporary class and it will be either merged with
22  LyXView or replaced by new implementation of GUI-dependend MainWindow class
23 */
24
25 class GLyxAppWin: public Gnome::App
26 {
27  public:
28   GLyxAppWin();
29   ~GLyxAppWin();
30
31   /// set menu of the window
32   void set_menu(Gnome::UI::Array &);
33   /// update menu
34   void update_menu(string path,
35                    int noelms,
36                    Gnome::UI::Array &);
37   /// add action area
38   void add_action(Gtk::Container &, string title, bool expand=false);
39   /// remove action area
40   void remove_action();
41   /// clears action area if Escape is pressed
42   gint key_pressed(GdkEventKey * e);
43   
44  protected:
45   /// init window widgets
46   void init();
47
48  protected:
49   // widgets
50   Gnome::AppBar status_;
51   Gtk::VBox box_;
52   Gtk::Widget *view_;
53
54   bool action_mode;
55   
56   // menu size
57   int menusize_;
58 };
59
60 #endif