Annotation of OpenXM_contrib/gnuplot/beos/GPApp.h, Revision 1.1.1.1
1.1 ohara 1: /*[
2: * Copyright 1986 - 1993, 1998 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 __GNUPLOTAPP_H__
32: #define __GNUPLOTAPP_H__
33:
34: extern const char *APP_SIGNATURE;
35:
36: #define MAX_WINDOWS 10
37:
38: typedef struct plot_struct {
39: BWindow *window;
40: // GPBixmap *pixmap;
41: unsigned int posn_flags;
42: int x, y;
43: unsigned int width, height; /* window size */
44: unsigned int px, py; /* pointsize */
45: int ncommands, max_commands;
46: char **commands;
47: } plot_struct;
48:
49: class GPApp : public BApplication {
50: public:
51: GPApp();
52: virtual void ReadyToRun(void);
53: virtual void MessageReceived(BMessage *message);
54: virtual void RefsReceived(BMessage *message);
55:
56: private:
57: int32 window_count;
58: int32 next_untitled_number;
59: void prepare_plot(plot_struct *plot, int term_number);
60: void store_command(char *buffer, plot_struct *plot);
61: void display(plot_struct *plot);
62: int32 io_task(plot_struct *data);
63: int32 io_loop(void *data);
64: thread_id io_thread;
65: // BFilePanel *openPanel;
66: };
67: #endif
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>