ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/cvsroot/rxvt-unicode/src/rxvt.h
(Generate patch)

Comparing cvsroot/rxvt-unicode/src/rxvt.h (file contents):
Revision 1.198 by root, Thu Jan 12 00:35:39 2006 UTC vs.
Revision 1.202 by root, Fri Jan 13 05:13:09 2006 UTC

20#include "rxvttoolkit.h" 20#include "rxvttoolkit.h"
21#include "iom.h" 21#include "iom.h"
22#include "salloc.h" 22#include "salloc.h"
23 23
24#include "rxvtperl.h" 24#include "rxvtperl.h"
25
26#if defined (ISO_14755) || defined (ENABLE_PERL)
27# define ENABLE_OVERLAY 1
28#endif
29
30#if ENABLE_PERL
31# define ENABLE_FRILLS
32#endif
25 33
26#if ENABLE_FRILLS 34#if ENABLE_FRILLS
27# define ENABLE_XEMBED 1 35# define ENABLE_XEMBED 1
28# define ENABLE_EWMH 1 36# define ENABLE_EWMH 1
29# define CURSOR_BLINK 1 37# define CURSOR_BLINK 1
43#if defined (sun) && !defined (__sun__) 51#if defined (sun) && !defined (__sun__)
44# define __sun__ 1 52# define __sun__ 1
45#endif 53#endif
46 54
47#ifndef HAVE_XPOINTER 55#ifndef HAVE_XPOINTER
48typedef char *XPointer; 56typedef char *XPointer;
49#endif 57#endif
50 58
51#ifdef HAVE_TERMIOS_H 59#ifdef HAVE_TERMIOS_H
52# include <termios.h> 60# include <termios.h>
53typedef struct termios ttymode_t; 61typedef struct termios ttymode_t;
119 127
120// temporarily replace the process environment 128// temporarily replace the process environment
121extern char **environ; 129extern char **environ;
122extern char **rxvt_environ; // the original environ pointer 130extern char **rxvt_environ; // the original environ pointer
123 131
124struct temp_environ 132inline void set_environ (stringvec *envv)
125{ 133{
126 char **prev;
127
128 temp_environ (const stringvec *envv)
129 : prev(environ)
130 {
131 if (envv) 134 if (envv)
132 environ = (char **)envv->begin (); 135 environ = (char **)envv->begin ();
133 } 136}
134 137
135 temp_environ (char **env) 138inline void set_environ (char **envv)
136 : prev(environ) 139{
137 {
138 if (env) 140 if (envv)
139 environ = env; 141 environ = envv;
140 } 142}
141
142 ~temp_environ ()
143 {
144 environ = prev;
145 }
146};
147
148#define TEMP_ENV temp_environ temp_environ (envv)
149 143
150/* 144/*
151 ***************************************************************************** 145 *****************************************************************************
152 * STRUCTURES AND TYPEDEFS 146 * STRUCTURES AND TYPEDEFS
153 ***************************************************************************** 147 *****************************************************************************
241# define TERMENV "rxvt-unicode" 235# define TERMENV "rxvt-unicode"
242#endif 236#endif
243 237
244#if defined (NO_MOUSE_REPORT) && !defined (NO_MOUSE_REPORT_SCROLLBAR) 238#if defined (NO_MOUSE_REPORT) && !defined (NO_MOUSE_REPORT_SCROLLBAR)
245# define NO_MOUSE_REPORT_SCROLLBAR 1 239# define NO_MOUSE_REPORT_SCROLLBAR 1
246#endif
247
248#if defined (ISO_14755) || defined (ENABLE_PERL)
249# define ENABLE_OVERLAY 1
250#endif 240#endif
251 241
252/* now look for other badly set stuff */ 242/* now look for other badly set stuff */
253 243
254#if !defined (EACCESS) && defined(EAGAIN) 244#if !defined (EACCESS) && defined(EAGAIN)
1222#endif 1212#endif
1223 1213
1224 // modifies first argument(!) 1214 // modifies first argument(!)
1225 void paste (char *data, unsigned int len); 1215 void paste (char *data, unsigned int len);
1226 1216
1227 void flush (); 1217 long vt_emask, vt_emask_perl;
1218
1219 void vt_select_input ()
1220 {
1221 XSelectInput (display->display, vt, vt_emask | vt_emask_perl);
1222 }
1228 1223
1229#if TRANSPARENT 1224#if TRANSPARENT
1230 void rootwin_cb (XEvent &xev); 1225 void rootwin_cb (XEvent &xev);
1231 xevent_watcher rootwin_ev; 1226 xevent_watcher rootwin_ev;
1232#endif 1227#endif
1233 1228
1234 void x_cb (XEvent &xev); 1229 void x_cb (XEvent &xev);
1230 void flush ();
1235 xevent_watcher termwin_ev; 1231 xevent_watcher termwin_ev;
1236 xevent_watcher vt_ev; 1232 xevent_watcher vt_ev;
1237#ifdef HAVE_SCROLLBARS 1233#ifdef HAVE_SCROLLBARS
1238 xevent_watcher scrollbar_ev; 1234 xevent_watcher scrollbar_ev;
1239#endif 1235#endif

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines