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

Comparing rxvt-unicode/src/rxvttoolkit.h (file contents):
Revision 1.25 by root, Sat Feb 18 15:48:23 2006 UTC vs.
Revision 1.30 by sasha, Fri Jun 8 20:04:12 2007 UTC

1/* 1/*----------------------------------------------------------------------*
2 * rxvttoolkit.h - provide toolkit-functionality for rxvt. 2 * File: rxvttoolkit.h - provide toolkit-functionality for rxvt.
3 *----------------------------------------------------------------------*
3 */ 4 *
5 * All portions of code are copyright by their respective author/s.
6 * Copyright (c) 2003-2006 Marc Lehmann <pcg@goof.com>
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation; either version 2 of the License, or
11 * (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, write to the Free Software
20 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
21 *----------------------------------------------------------------------*/
22
4#ifndef RXVT_TOOLKIT_H 23#ifndef RXVT_TOOLKIT_H
5#define RXVT_TOOLKIT_H 24#define RXVT_TOOLKIT_H
6 25
7#include <X11/Xlib.h> 26#include <X11/Xlib.h>
8 27
164 183
165 rxvt_screen (); 184 rxvt_screen ();
166#endif 185#endif
167 186
168 void set (rxvt_display *disp); 187 void set (rxvt_display *disp);
169 void set (rxvt_display *disp, int bitdepth); 188 void select_visual (int bitdepth);
170 void clear (); 189 void clear ();
171}; 190};
191
192#ifdef HAVE_AFTERIMAGE
193struct ASVisual;
194#endif
172 195
173struct rxvt_display : refcounted { 196struct rxvt_display : refcounted {
174 io_manager_vec<xevent_watcher> xw; 197 io_manager_vec<xevent_watcher> xw;
175 198
176 io_watcher x_ev; void x_cb (io_watcher &w, short revents); 199 io_watcher x_ev; void x_cb (io_watcher &w, short revents);
185 208
186//public 209//public
187 Display *dpy; 210 Display *dpy;
188 int screen; 211 int screen;
189 Window root; 212 Window root;
213#ifdef HAVE_AFTERIMAGE
214 struct ASVisual *asv;
215#endif
190 rxvt_term *selection_owner; 216 rxvt_term *selection_owner;
191 Atom xa[NUM_XA]; 217 Atom xa[NUM_XA];
192 bool is_local; 218 bool is_local;
193#ifdef POINTER_BLANK 219#ifdef POINTER_BLANK
194 Cursor blank_cursor; 220 Cursor blank_cursor;
215 void put_xim (rxvt_xim *xim); 241 void put_xim (rxvt_xim *xim);
216#endif 242#endif
217}; 243};
218 244
219#ifdef USE_XIM 245#ifdef USE_XIM
220struct im_watcher : watcher, callback0<void> { 246struct im_watcher : watcher, callback<void (void)> {
221 template<class O1, class O2> 247 template<class O, class M>
222 im_watcher (O1 *object, void (O2::*method) ()) 248 im_watcher (O object, M method)
223 : callback0<void> (object,method) 249 : callback<void (void)> (object, method)
224 { } 250 { }
225 251
226 void start (rxvt_display *display) 252 void start (rxvt_display *display)
227 { 253 {
228 display->reg (this); 254 display->reg (this);
232 display->unreg (this); 258 display->unreg (this);
233 } 259 }
234}; 260};
235#endif 261#endif
236 262
237struct xevent_watcher : watcher, callback1<void, XEvent &> { 263struct xevent_watcher : watcher, callback<void (XEvent &)> {
238 Window window; 264 Window window;
239 265
240 template<class O1, class O2> 266 template<class O, class M>
241 xevent_watcher (O1 *object, void (O2::*method) (XEvent &)) 267 xevent_watcher (O object, M method)
242 : callback1<void, XEvent &> (object,method) 268 : callback<void (XEvent &)> (object, method)
243 { } 269 { }
244 270
245 void start (rxvt_display *display, Window window) 271 void start (rxvt_display *display, Window window)
246 { 272 {
247 this->window = window; 273 this->window = window;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines