File: fltk_MainWindow.h

package info (click to toggle)
pose 3.0a3-3
  • links: PTS
  • area: contrib
  • in suites: potato
  • size: 15,500 kB
  • ctags: 20,548
  • sloc: ansic: 72,579; cpp: 50,198; perl: 1,336; python: 1,242; sh: 363; makefile: 290
file content (71 lines) | stat: -rw-r--r-- 2,012 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
/* -*- mode: C++; tab-width: 4 -*- */
/* ================================================================================== */
/* Copyright (c) 1998-1999 3Com Corporation or its subsidiaries. All rights reserved. */
/* ================================================================================== */

#ifndef __FLTK_MAINWINDOW_H__
#define __FLTK_MAINWINDOW_H__

#include <FL/Fl_Window.H>
#include <FL/Fl_Menu_Button.H>

class Document;
class LCD_window;


class MainWindow : public Fl_Window
{
public:
	// -----------------------------------------------------------------------------
	// constructor / destructor
	// -----------------------------------------------------------------------------

	MainWindow();

	// -----------------------------------------------------------------------------
	// public methods
	// -----------------------------------------------------------------------------

	void popupMenu() { (void) _menuButton->popup(); }

	Document* getDocument() { return _doc; }

	static MainWindow* getMainWindow() { return _sMainWindow; };

private:
public:

	// -----------------------------------------------------------------------------
	// private methods
	// -----------------------------------------------------------------------------

	void doLoadApplication();
	void doExportDatabase();
	void doEmulatorStart();
	Bool doEmulatorStop();
	void doQuit();
	void doSaveMemoryAs();
	void doSaveScreen();
	void doOpenMemory();

	void doEditLoggingPreferences();
	void doEditDebugPreferences();
	void doEditSkins();
	void doEditPreferences();

	friend void menuCallback( Fl_Menu_ *w, void *data );
	friend void docChangedCallback( int property, void *param );

	// -----------------------------------------------------------------------------
	// private data members
	// -----------------------------------------------------------------------------

	Fl_Menu_Button *_menuButton;
	LCD_window *_lcd;

	Document *_doc;

	static MainWindow* _sMainWindow;
};

#endif /* __FLTK_MAINWINDOW_H__ */