Initial release of Maemo 5 port of gnuplot
[gnuplot] / src / beos / GPWindow.h
1 /*[
2  * Copyright 1986 - 1993, 1998, 2004   Thomas Williams, Colin Kelley
3  *
4  * Permission to use, copy, and distribute this software and its
5  * documentation for any purpose with or without fee is hereby granted,
6  * provided that the above copyright notice appear in all copies and
7  * that both that copyright notice and this permission notice appear
8  * in supporting documentation.
9  *
10  * Permission to modify the software is granted, but not the right to
11  * distribute the complete modified source code.  Modifications are to
12  * be distributed as patches to the released version.  Permission to
13  * distribute binaries produced by compiling modified sources is granted,
14  * provided you
15  *   1. distribute the corresponding source modifications from the
16  *    released version in the form of a patch file along with the binaries,
17  *   2. add special version identification to distinguish your version
18  *    in addition to the base release version number,
19  *   3. provide your name and address as the primary contact for the
20  *    support of your modified version, and
21  *   4. retain our contact information in regard to use of the base
22  *    software.
23  * Permission to distribute the released version of the source code along
24  * with corresponding source modifications in the form of a patch file is
25  * granted with same provisions 2 through 4 for binary distributions.
26  *
27  * This software is provided "as is" without express or implied warranty
28  * to the extent permitted by applicable law.
29 ]*/
30
31 #ifndef __GNUPLINDOW_H__
32 #define __GNUPLINDOW_H__
33
34 class GPWindow : public BWindow {
35         public:
36                                                 GPWindow(BRect frame);
37                                                 GPWindow(BRect frame, plot_struct *plot);
38                                                 ~GPWindow();
39                 virtual bool    QuitRequested();
40                 virtual void    MessageReceived(BMessage *message);
41                 virtual void    FrameResized(float width, float height);
42
43                 status_t                Save(BMessage *message);
44
45         private:
46                 void                    _InitWindow(void);
47                 void                    Register(bool need_id);
48                 void                    Unregister(void);
49
50                 BMenuBar                *menubar;
51                 BView                   *plotview;
52 //              GPView                  *plotview;
53                 BMenuItem               *saveitem;
54                 BMessage                *savemessage;
55                 int32                   window_id;
56                 BFilePanel              *savePanel;
57 };
58
59 #endif