~ubuntu-branches/ubuntu/hardy/texmacs/hardy

« back to all changes in this revision

Viewing changes to src/Texmacs/server.hpp

  • Committer: Bazaar Package Importer
  • Author(s): Ralf Treinen
  • Date: 2004-04-19 20:34:00 UTC
  • Revision ID: james.westby@ubuntu.com-20040419203400-g4e34ih0315wcn8v
Tags: upstream-1.0.3-R2
ImportĀ upstreamĀ versionĀ 1.0.3-R2

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
 
 
2
/******************************************************************************
 
3
* MODULE     : server.hpp
 
4
* DESCRIPTION: Main current graphical interface for user applications
 
5
* COPYRIGHT  : (C) 1999  Joris van der Hoeven
 
6
*******************************************************************************
 
7
* This software falls under the GNU general public license and comes WITHOUT
 
8
* ANY WARRANTY WHATSOEVER. See the file $TEXMACS_PATH/LICENSE for more details.
 
9
* If you don't have this file, write to the Free Software Foundation, Inc.,
 
10
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 
11
******************************************************************************/
 
12
 
 
13
#ifndef SERVER_H
 
14
#define SERVER_H
 
15
#include "editor.hpp"
 
16
#include "tm_widget.hpp"
 
17
#include "url.hpp"
 
18
 
 
19
class tm_buffer_rep;
 
20
class tm_view_rep;
 
21
class tm_window_rep;
 
22
typedef tm_buffer_rep* tm_buffer;
 
23
typedef tm_view_rep*   tm_view;
 
24
typedef tm_window_rep* tm_window;
 
25
class tm_widget;
 
26
class editor;
 
27
 
 
28
class server_rep: public abstract_struct {
 
29
public:
 
30
  server_rep ();
 
31
  virtual ~server_rep ();
 
32
  virtual void advance_banner () = 0;
 
33
 
 
34
  /* Control global server parameters */
 
35
  virtual void   set_input_language (string s) = 0;
 
36
  virtual void   set_output_language (string s) = 0;
 
37
  virtual string get_input_language () = 0;
 
38
  virtual string get_output_language () = 0;
 
39
  virtual void   set_font_rules (scheme_tree rules) = 0;
 
40
  virtual bool   kbd_get_command (string s, string& help, command& cmd) = 0;
 
41
  virtual void   insert_kbd_wildcard (string key, string im,
 
42
                                      bool post, bool l, bool r) = 0;
 
43
  virtual string kbd_pre_rewrite (string l) = 0;
 
44
  virtual string kbd_post_rewrite (string l) = 0;
 
45
  virtual void   set_variant_keys (string var, string unvar) = 0;
 
46
  virtual void   get_keycomb (string& s, int& status,
 
47
                              command& cmd, string& sh, string& help) = 0;
 
48
 
 
49
  /* Guile scheme motor */
 
50
  virtual bool exec_file (url u) = 0;
 
51
  virtual void exec_delayed (string s) = 0;
 
52
  virtual void exec_delayed (command cmd) = 0;
 
53
  virtual string preference (string var) = 0;
 
54
 
 
55
  /* TeXmacs layout */
 
56
  virtual void menu_widget (string menu, widget& w) = 0;
 
57
  virtual void menu_main (string menu) = 0;
 
58
  virtual void menu_icons (int which, string menu) = 0;
 
59
  virtual void show_header (bool flag) = 0;
 
60
  virtual void show_icon_bar (int which, bool flag) = 0;
 
61
  virtual void show_footer   (bool flag) = 0;
 
62
  virtual bool visible_header () = 0;
 
63
  virtual bool visible_icon_bar (int which) = 0;
 
64
  virtual bool visible_footer () = 0;
 
65
  virtual void set_shrinking_factor (int sf) = 0;
 
66
  virtual int  get_shrinking_factor () = 0;
 
67
 
 
68
  /* Buffer management */
 
69
  virtual url  get_name_buffer () = 0;
 
70
  virtual void set_name_buffer (url name) = 0;
 
71
  virtual void new_buffer () = 0;
 
72
  virtual void switch_to_buffer (url name) = 0;
 
73
  virtual void switch_to_active_buffer (url name) = 0;
 
74
  virtual void revert_buffer () = 0;
 
75
  virtual void kill_buffer () = 0;
 
76
  virtual void open_window () = 0;
 
77
  virtual void clone_window () = 0;
 
78
  virtual void kill_window () = 0;
 
79
  virtual void set_max_undo_depth (int i) = 0;
 
80
  virtual int  get_max_undo_depth () = 0;
 
81
  virtual bool no_bufs () = 0;
 
82
  virtual bool no_name () = 0;
 
83
  virtual bool help_buffer () = 0;
 
84
  virtual void revert_buffer (url name, tree doc) = 0;
 
85
  virtual void set_aux_buffer (string aux, url name, tree doc) = 0;
 
86
  virtual void set_help_buffer (url name, tree doc) = 0;
 
87
  virtual void browse_help (int delta) = 0;
 
88
 
 
89
  /* Projects */
 
90
  virtual void project_attach (string prj_name= "") = 0;
 
91
  virtual bool project_attached () = 0;
 
92
 
 
93
  /* Loading and saving files */
 
94
  virtual tree load_tree (url name, string f) = 0;
 
95
  virtual void load_buffer (url name, string f, int w=0, bool a=false)=0;
 
96
  virtual void save_buffer (url name, string fm) = 0;
 
97
  virtual void auto_save () = 0;
 
98
  virtual void delayed_autosave () = 0;
 
99
  virtual bool buffer_unsaved () = 0;
 
100
  virtual bool exists_unsaved_buffer () = 0;
 
101
  virtual void pretend_save_buffer () = 0;
 
102
 
 
103
  /* Get and set objects associated to server */
 
104
  virtual server_rep* get_server () = 0;
 
105
  virtual display     get_display () = 0;
 
106
  virtual bool        has_view () = 0;
 
107
  virtual tm_view     get_view (bool must_be_valid= true) = 0;
 
108
  virtual void        set_view (tm_view vw) = 0;
 
109
  virtual tm_buffer   get_buffer () = 0;
 
110
  virtual editor      get_editor () = 0;
 
111
  virtual tm_window   get_window () = 0;
 
112
  virtual tm_widget   get_meta () = 0;
 
113
  virtual color       get_color (string s) = 0;
 
114
  virtual int         get_nr_windows () = 0;
 
115
 
 
116
  virtual void style_update_menu () = 0;
 
117
  virtual void style_clear_cache () = 0;
 
118
  virtual void style_set_cache (
 
119
            tree style, hashmap<string,tree> H, tree drd) = 0;
 
120
  virtual void style_get_cache (
 
121
            tree style, hashmap<string,tree>& H, tree& drd, bool& flag) = 0;
 
122
 
 
123
  /* getting window properties */
 
124
  virtual void set_window_property (scheme_tree what, scheme_tree val) = 0;
 
125
  virtual void set_bool_window_property (string what, bool val) = 0;
 
126
  virtual void set_int_window_property (string what, int val) = 0;
 
127
  virtual void set_string_window_property (string what, string val) = 0;
 
128
  virtual scheme_tree get_window_property (scheme_tree what) = 0;
 
129
  virtual bool get_bool_window_property (string what) = 0;
 
130
  virtual int get_int_window_property (string what) = 0;
 
131
  virtual string get_string_window_property (string what) = 0;
 
132
 
 
133
  /* Routines concerning the current editor widget */
 
134
  virtual void get_visible (SI& x1, SI& y1, SI& x2, SI& y2) = 0;
 
135
  virtual void scroll_where (SI& x, SI& y) = 0;
 
136
  virtual void scroll_to (SI x, SI y) = 0;
 
137
  virtual void set_extents (SI x1, SI y1, SI x2, SI y2) = 0;
 
138
  virtual void set_left_footer (string s) = 0;
 
139
  virtual void set_right_footer (string s) = 0;
 
140
  virtual void set_message (string left, string right) = 0;
 
141
  virtual void interactive (string name, string& s, command call_back) = 0;
 
142
  virtual void dialogue_start (string name, widget wid, scheme_tree prg) = 0;
 
143
  virtual void dialogue_inquire (scheme_tree& arg) = 0;
 
144
  virtual void dialogue_end () = 0;
 
145
  virtual void choose_file (string title, string type, scheme_tree prg) = 0;
 
146
  virtual void full_screen_mode (bool on) = 0;
 
147
  virtual bool in_full_screen_mode () = 0;
 
148
 
 
149
  /* Misscelaneous routines */
 
150
  virtual void   interpose_handler () = 0;
 
151
  virtual void   wait_handler (string message, string arg) = 0;
 
152
  virtual void   set_script_status (int i) = 0;
 
153
  virtual void   focus_on_editor (editor ed) = 0;
 
154
  virtual void   set_printing_command (string s) = 0;
 
155
  virtual void   set_printer_page_type (string s) = 0;
 
156
  virtual void   set_printer_dpi (string dpi) = 0;
 
157
  virtual void   set_default_shrinking_factor (int sf) = 0;
 
158
  virtual int    get_default_shrinking_factor () = 0;
 
159
  virtual void   postscript_gc (string which= "*") = 0;
 
160
  virtual void   inclusions_gc (string which= "*") = 0;
 
161
  virtual string translate (string which, string from, string to) = 0;
 
162
  virtual bool   is_yes (string s) = 0;
 
163
  virtual void   quit () = 0;
 
164
  virtual tree   evaluate (string name, string session, tree expr) = 0;
 
165
  virtual void   shell    (string s) = 0;
 
166
};
 
167
 
 
168
class server {
 
169
  ABSTRACT(server);
 
170
  server (display dis);
 
171
};
 
172
ABSTRACT_CODE(server);
 
173
 
 
174
scheme_tree menu_merge (scheme_tree m1, scheme_tree m2);
 
175
server get_server ();
 
176
 
 
177
#endif // defined SERVER_H