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

Comparing rxvt-unicode/src/rxvt.h (file contents):
Revision 1.420 by root, Tue Dec 7 19:05:35 2010 UTC vs.
Revision 1.428 by sf-exg, Thu Jan 20 17:39:29 2011 UTC

27#else 27#else
28// stdlib.h might provide it 28// stdlib.h might provide it
29#endif 29#endif
30 30
31using namespace std; 31using namespace std;
32
33// we assume that Xlib.h defines XPointer, and it does since at least 1994...
32 34
33extern "C" { 35extern "C" {
34#include <X11/Xlib.h> 36#include <X11/Xlib.h>
35#include <X11/Xutil.h> 37#include <X11/Xutil.h>
36#include <X11/Xresource.h> 38#include <X11/Xresource.h>
97/* 99/*
98 ***************************************************************************** 100 *****************************************************************************
99 * SYSTEM HACKS 101 * SYSTEM HACKS
100 ***************************************************************************** 102 *****************************************************************************
101 */ 103 */
102
103#ifndef HAVE_XPOINTER
104typedef char *XPointer;
105#endif
106 104
107#include <termios.h> 105#include <termios.h>
108 106
109#include "background.h" 107#include "background.h"
110 108
155void rxvt_warn (const char *fmt,...) NOTHROW; 153void rxvt_warn (const char *fmt,...) NOTHROW;
156void rxvt_fatal (const char *fmt, ...) THROW ((class rxvt_failure_exception)) NORETURN; 154void rxvt_fatal (const char *fmt, ...) THROW ((class rxvt_failure_exception)) NORETURN;
157void rxvt_exit_failure () THROW ((class rxvt_failure_exception)) NORETURN; 155void rxvt_exit_failure () THROW ((class rxvt_failure_exception)) NORETURN;
158 156
159char * rxvt_strtrim (char *str) NOTHROW; 157char * rxvt_strtrim (char *str) NOTHROW;
160char ** rxvt_splitcommastring (const char *cs) NOTHROW; 158char ** rxvt_strsplit (char delim, const char *str) NOTHROW;
161void rxvt_freecommastring (char **cs) NOTHROW; 159
160static inline void
161rxvt_free_strsplit (char **ptr) NOTHROW
162{
163 free (ptr[0]);
164 free (ptr);
165}
162 166
163void * rxvt_malloc (size_t size); 167void * rxvt_malloc (size_t size);
164void * rxvt_calloc (size_t number, size_t size); 168void * rxvt_calloc (size_t number, size_t size);
165void * rxvt_realloc (void *ptr, size_t size); 169void * rxvt_realloc (void *ptr, size_t size);
166 170
189#else 193#else
190 if (envv) 194 if (envv)
191#endif 195#endif
192 environ = envv; 196 environ = envv;
193} 197}
198
199struct localise_env
200{
201 char **orig_env;
202
203 localise_env (char **new_env)
204 {
205 orig_env = environ;
206 environ = new_env;
207 }
208
209 ~localise_env ()
210 {
211 environ = orig_env;
212 }
213};
194 214
195/* 215/*
196 ***************************************************************************** 216 *****************************************************************************
197 * STRUCTURES AND TYPEDEFS 217 * STRUCTURES AND TYPEDEFS
198 ***************************************************************************** 218 *****************************************************************************
1318 void set_colorfgbg (); 1338 void set_colorfgbg ();
1319 bool set_color (rxvt_color &color, const char *name); 1339 bool set_color (rxvt_color &color, const char *name);
1320 void alias_color (int dst, int src); 1340 void alias_color (int dst, int src);
1321 void set_widthheight (unsigned int newwidth, unsigned int newheight); 1341 void set_widthheight (unsigned int newwidth, unsigned int newheight);
1322 void get_window_origin (int &x, int &y); 1342 void get_window_origin (int &x, int &y);
1323 Pixmap get_pixmap_property (int prop_id); 1343 Pixmap get_pixmap_property (Atom property);
1324 1344
1325 // screen.C 1345 // screen.C
1326 1346
1327 void lalloc (line_t &l) const 1347 void lalloc (line_t &l) const
1328 { 1348 {
1383 bool option (uint8_t opt) const NOTHROW 1403 bool option (uint8_t opt) const NOTHROW
1384 { 1404 {
1385 return options[opt >> 3] & (1 << (opt & 7)); 1405 return options[opt >> 3] & (1 << (opt & 7));
1386 } 1406 }
1387 1407
1388 void set_option (uint8_t opt, bool set = true) NOTHROW 1408 void set_option (uint8_t opt, bool set = true) NOTHROW;
1389 {
1390 if (!opt)
1391 return;
1392
1393 uint8_t mask = 1 << (opt & 7);
1394 uint8_t &val = options [opt >> 3];
1395
1396 val = val & ~mask | (set ? 0 : mask);
1397 }
1398 1409
1399 void set_privmode (unsigned bit, int set) NOTHROW 1410 void set_privmode (unsigned bit, int set) NOTHROW
1400 { 1411 {
1401 if (set) 1412 if (set)
1402 priv_modes |= bit; 1413 priv_modes |= bit;
1422 void scr_backindex () NOTHROW; 1433 void scr_backindex () NOTHROW;
1423 void scr_forwardindex () NOTHROW; 1434 void scr_forwardindex () NOTHROW;
1424#endif 1435#endif
1425 void scr_touch (bool refresh) NOTHROW; 1436 void scr_touch (bool refresh) NOTHROW;
1426 void scr_expose (int x, int y, int width, int height, bool refresh) NOTHROW; 1437 void scr_expose (int x, int y, int width, int height, bool refresh) NOTHROW;
1427 void scr_recolour () NOTHROW; 1438 void scr_recolour (bool refresh = true) NOTHROW;
1428 void scr_remap_chars () NOTHROW; 1439 void scr_remap_chars () NOTHROW;
1429 void scr_remap_chars (line_t &l) NOTHROW; 1440 void scr_remap_chars (line_t &l) NOTHROW;
1430 1441
1431 enum cursor_mode { SAVE, RESTORE }; 1442 enum cursor_mode { SAVE, RESTORE };
1432 1443

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines