annotate src/select.h @ 2420:ad56e5a6d09f

[xemacs-hg @ 2004-12-06 03:46:06 by ben] (none) README.packages: Document use of --package-prefix. Fix error in specifying standard package location. make-docfile.c: Use QXE_PATH_MAX. info.el: Correct doc string giving example package path. menubar-items.el: Move Prefix Rectangle command up one level. xemacs/packages.texi: Add long form of Lisp Reference Manual to links. Add links pointing to Lisp Reference Manual for more detailed package discussion. lispref/range-tables.texi: Document range-table changes. internals/internals.texi: Update history section. elhash.c, elhash.h, profile.c: Create inchash_eq() to allow direct incrementing of hash-table entry. Use in profile.c to try to reduce profiling overhead. Increase initial size of profile hash tables to reduce profiling overhead. buffer.c, device-msw.c, dialog-msw.c, dired-msw.c, editfns.c, event-msw.c, events.c, glyphs-msw.c, keymap.c, objects-msw.c, process-nt.c, syswindows.h, text.c, text.h, unexnt.c: Rename xetcs* -> qxetcs* for consistency with qxestr*. Rename ei*_c(_*) -> ei*_ascii(_*) since they work with ASCII-only strings not "C strings", whatever those are. This is the last place where "c" was incorrectly being used for "ascii". dialog-msw.c, dumper.c, event-msw.c, fileio.c, glyphs-gtk.c, glyphs-x.c, nt.c, process-nt.c, realpath.c, sysdep.c, sysfile.h, unexcw.c, unexnext.c, unexnt.c: Try to avoid differences in systems that do or do not include final null byte in PATH_MAX. Create PATH_MAX_INTERNAL and PATH_MAX_EXTERNAL and use them everywhere. Rewrite code in dumper.c to avoid use of PATH_MAX. When necessary in nt.c, use _MAX_PATH instead of MAX_PATH to be consistent with other places. text.c: Code to short-circuit when binary or Unicode was not working due to EOL wrapping. Fix this code to work when either no EOL autodetection or no CR's or LF's in the text. lisp.h, rangetab.c, rangetab.h, regex.c, search.c: Implement different types of ranges (open/closed start and end). Change default to be start-closed, end-open.
author ben
date Mon, 06 Dec 2004 03:46:07 +0000
parents abe6d1db359e
children 5e906dd5c3e9
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
414
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
1 /* Generic select data structures functions
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
2 Copyright (C) 1999 Andy Piper
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
3
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
4 This file is part of XEmacs.
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
5
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
6 XEmacs is free software; you can redistribute it and/or modify it
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
7 under the terms of the GNU General Public License as published by the
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
8 Free Software Foundation; either version 2, or (at your option) any
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
9 later version.
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
10
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
11 XEmacs is distributed in the hope that it will be useful, but WITHOUT
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
12 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
13 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
14 for more details.
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
15
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
16 You should have received a copy of the GNU General Public License
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
17 along with XEmacs; see the file COPYING. If not, write to
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
18 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
19 Boston, MA 02111-1307, USA. */
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
20
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
21 /* Synched up with: Not in FSF. */
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
22
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 414
diff changeset
23 #ifndef INCLUDED_select_h_
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 414
diff changeset
24 #define INCLUDED_select_h_
414
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
25
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
26 /* X Atoms */
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
27 extern Lisp_Object QPRIMARY, QSECONDARY, QSTRING, QINTEGER, QCLIPBOARD,
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
28 QTIMESTAMP, QTEXT, QDELETE, QMULTIPLE, QINCR, QEMACS_TMP, QTARGETS, QATOM,
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
29 QNULL, QATOM_PAIR, QCOMPOUND_TEXT;
414
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
30
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
31 /* Windows clipboard formats */
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
32 extern Lisp_Object QCF_TEXT, QCF_BITMAP, QCF_METAFILEPICT, QCF_SYLK, QCF_DIF,
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
33 QCF_TIFF, QCF_OEMTEXT, QCF_DIB, QCF_DIBV5, QCF_PALETTE, QCF_PENDATA,
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
34 QCF_RIFF, QCF_WAVE, QCF_UNICODETEXT, QCF_ENHMETAFILE, QCF_HDROP, QCF_LOCALE,
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
35 QCF_OWNERDISPLAY, QCF_DSPTEXT, QCF_DSPBITMAP, QCF_DSPMETAFILEPICT,
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
36 QCF_DSPENHMETAFILE;
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
37
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
38 /* Selection strategies */
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
39 extern Lisp_Object Qreplace_all, Qreplace_existing, Qappend;
414
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
40
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
41 /* "Selection owner couldn't convert selection" */
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
42 extern Lisp_Object Qselection_conversion_error;
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
43
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
44 /* Selection input & output */
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
45 Lisp_Object select_convert_in (Lisp_Object selection,
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
46 Lisp_Object type,
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
47 Lisp_Object value);
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
48 Lisp_Object select_convert_out (Lisp_Object selection,
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
49 Lisp_Object type,
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
50 Lisp_Object value);
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
51 Lisp_Object select_coerce (Lisp_Object selection,
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
52 Lisp_Object type,
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
53 Lisp_Object value);
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
54
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
55 /* Notifications */
414
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
56 void handle_selection_clear (Lisp_Object selection_symbol);
da8ed4261e83 Import from CVS: tag r21-2-15
cvs
parents:
diff changeset
57
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
58 void select_notify_buffer_kill (Lisp_Object buffer);
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
59
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
60 /* Lisp functions we export for other files' use */
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
61 EXFUN (Fregister_selection_data_type, 2);
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
62 EXFUN (Fselection_data_type_name, 2);
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
63 EXFUN (Favailable_selection_types, 2);
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
64 EXFUN (Fselection_owner_p, 1);
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
65 EXFUN (Fselection_exists_p, 3);
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
66 EXFUN (Fget_selection_timestamp, 1);
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
67
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 414
diff changeset
68 #endif /* INCLUDED_select_h_ */