Commit Graph

362 Commits

Author SHA1 Message Date
Jamey Sharp dd5ece6065 Declare "struct foo" or "enum foo" as well as the typedef'd name "foo". 2006-10-07 01:27:03 -07:00
Josh Triplett 16ec51397e Handle "xidunion" instead of "union" for XID unions like DRAWABLE and FONTABLE 2006-10-07 00:15:24 -07:00
Jamey Sharp 7b786bd8f3 api_conv.pl: replace xcb_*_new with calls directly to xcb_generate_id, now that we have no type-safety XID wrappers. 2006-10-06 23:32:32 -07:00
Josh Triplett c73ff37b90 Refer to the "xlib lock" rather than the "IOLock" in xcbxlib.h 2006-10-06 20:14:48 -07:00
Josh Triplett 90eeb461be Remove XID wrapper structures and replace them with uint32_t typedefs
After positive feedback from several people, we have decided to remove the XID
wrapper structures that attempted to provide C type safety, and replace them
with uint32_t typedefs.  Feedback has indicated that these type-safety hacks
generated more trouble than help.

We will bump the libxcb soname at the next release.
2006-10-06 17:44:53 -07:00
Jamey Sharp 9bd2c0c58f Remove xcb_get_io_lock from the Xlib-specific API: it is no longer used. 2006-10-06 16:47:50 -07:00
Jamey Sharp 34168ab549 Remove the 'int *error' out-parameter for xcb_poll_for_event. 2006-10-06 16:35:36 -07:00
Jamey Sharp 40589db812 Add xcb_xlib_lock and xcb_xlib_unlock, a special-purpose two-level recursive lock just for libX11. 2006-10-04 15:01:00 -07:00
Jamey Sharp 57b0cd8fea Factor out pthread_mutex_lock and unlock calls for the iolock. 2006-10-04 14:52:49 -07:00
TORRI Vincent e7f473afbd fix some indentation, remove args of the main function (not needed), xcb_sync -> xcb_aux_sync. Jamey, it seems that your script transforms XCBGetSetup into a type, instead of a function. Same for XCBSetupVendor. Maybe there are other fuctions that have the same problem. 2006-09-30 13:06:58 +02:00
TORRI Vincent 408e745386 update tutorial to the new api. Add some doc about cursors. Add some colors to section 6 (Opening and closing the connection to an X server). Tell me if you want to keep colors or not (colors can be modified in xcb.css) 2006-09-30 12:45:12 +02:00
Jamey Sharp 15993fccd0 Release libxcb 1.0 RC1 (0.9.91). 2006-09-25 05:12:07 -07:00
Josh Triplett f7cd80142f Stop installing the protocol descriptions for extensions to an extensions/
subdirectory
2006-09-25 05:10:37 -07:00
Josh Triplett 0d7beff580 Actually install xcb-xlib.pc, and ship xcb-xlib.pc.in in distribution tarballs 2006-09-25 04:43:04 -07:00
Jamey Sharp d04e7777d3 Ensure api_conv.pl is idempotent on names of constants: XCB_[A-Z0-9_]+. 2006-09-25 04:19:25 -07:00
Jamey Sharp 0bccf7d2ee Move header files to $includedir/xcb (generally $prefix/include/xcb). 2006-09-25 04:19:25 -07:00
Josh Triplett 9100981d35 Split the Xlib compatibility functions into a separate library libxcb-xlib
We don't want to have to change the libxcb soname if we later manage to remove
the Xlib compatibility functions, and nothing except Xlib should ever use
them, so split them into a separate library.
2006-09-25 02:57:19 -07:00
Jamey Sharp 810dfb8862 Move debian/ directory to new branch "debian". 2006-09-25 02:10:44 -07:00
Jamey Sharp 46b7dbdd93 We no longer need xproto: do not list it as a dependency. 2006-09-25 02:00:23 -07:00
Jamey Sharp cf80bab8e6 Lowercase library names to correspond with the new API. 2006-09-25 01:42:12 -07:00
Ian Osgood a1a7646d5a Add XCBAllPlanes from xcb-image util library. 2006-09-24 14:10:20 -07:00
Josh Triplett dfbde9a4e9 Integrate top-level .gitignore into .gitignore for each subdirectory
In preparation for the repository split, move the relevant contents of the
top-level .gitignore into the .gitignore for each immediate subdirectory.
2006-09-24 03:19:54 -07:00
TORRI Vincent 905379e447 now, I know how to use api_conv.pl :) 2006-09-24 08:51:20 +02:00
Josh Triplett 16516a5e94 Remove the xcb_[extension]_init functions; use xcb_get_extension_data directly 2006-09-23 14:44:15 -07:00
Josh Triplett 9691890529 More fixups for incorrect API conversions by api_conv.pl 2006-09-23 14:17:52 -07:00
Josh Triplett 0a867d7233 Convert the XCB test suite to the new API 2006-09-23 13:59:40 -07:00
Jamey Sharp 63b38f3197 Apply const-names.xsl to the un-renamed XML; replace the XSL with the result. 2006-09-23 13:52:02 -07:00
Josh Triplett 86a4c0cc28 We do not conflict with Xmd.h anymore; remove the include hack from xcb_auth.c 2006-09-23 13:33:43 -07:00
Josh Triplett 4ff12a1a94 Fix some mis-conversions by api_conv.pl, and remove the now-unused Xmd types 2006-09-23 13:31:13 -07:00
Josh Triplett a3bd6f4760 The Great XCB Renaming
Rename API to follow a new naming convention:
* XCB_CONSTANTS_UPPERCASE_WITH_UNDERSCORES
* xcb_functions_lowercase_with_underscores
* xcb_types_lowercase_with_underscores_and_suffix_t
* expand all abbreviations like "req", "rep", and "iter"

Word boundaries for the names in the protocol descriptions fall:
* Wherever the protocol descriptions already have an underscore
* Between a lowercase letter and a subsequent uppercase letter
* Before the last uppercase letter in a string of uppercase letters followed
  by a lowercase letter (such as in LSBFirst between LSB and First)
* Before and after a string of digits (with exceptions for sized types like
  xcb_char2b_t and xcb_glx_float32_t to match the stdint.h convention)

Also fix up some particular naming issues:
* Rename shape_op and shape_kind to drop the "shape_" prefix, since otherwise
  these types end up as xcb_shape_shape_{op,kind}_t.
* Remove leading underscores from enums in the GLX protocol description,
  previously needed to ensure a word separator, but now redundant.

This renaming breaks code written for the previous API naming convention.  The
scripts in XCB's tools directory will convert code written for the old API to
use the new API; they work well enough that we used them to convert the
non-program-generated code in XCB, and when run on the old program-generated
code, they almost exactly reproduce the new program-generated code (modulo
whitespace and bugs in the old code generator).

Authors: Vincent Torri, Thomas Hunger, Josh Triplett
2006-09-23 12:22:22 -07:00
Jamey Sharp ca72e77774 Special cases to agree with the conventions Josh and I have hashed out. 2006-09-23 02:24:39 -07:00
Jamey Sharp 4168ddc13d Handle remaining incorrect API translations in api_conv.pl.
The big change is treating numbers as separate "words" in the
translation, which leads to funny-looking names like xcb_char_2_b_t, but
makes more sense than the alternative in other situations and was
suggested on the mailing list.

This version still disagrees with Vincent's last proposed XSL, but I
think my output is now preferable. Hopefully Josh has been thinking
along the same lines.
2006-09-22 22:53:17 -07:00
Jamey Sharp 91568d7070 Make xcb_conn.c agree that XCBSetupReq is now XCBSetupRequest. 2006-09-22 15:37:49 -07:00
Alan Coopersmith 2538acd8c8 List xproto.xml path explicitly instead of relying on GNU Make $< expansion
(Some non-gnu makes, such as Solaris make, only recognize $< in implicit
 suffix rules, not explicit ones like this.)
2006-09-22 15:11:39 -07:00
Jamey Sharp 2c8b5994b3 Shut down the connection in all "fatal" error cases. 2006-09-21 15:35:01 -07:00
Jamey Sharp 79e3227022 Add a private connection shutdown method for error cases. 2006-09-21 15:31:14 -07:00
Jamey Sharp 7f71bf9c0f Make all public functions do nothing on an error connection. 2006-09-21 15:18:57 -07:00
Jamey Sharp 0aa96bfc7a Convert connection functions to return error objects. 2006-09-21 15:17:18 -07:00
Jamey Sharp ac17ae62fe Provide a "has error" property for XCBConnection. 2006-09-21 15:17:18 -07:00
Jamey Sharp df7fb77d6e Refactor XCBPollForEvent with a shorter critical section.
This simplifies the patch for bug #8208 later.
2006-09-21 15:05:01 -07:00
Jamey Sharp b08ca2b4b4 XCB*Id is a variable, not a type: adjust API conventions accordingly. 2006-09-18 16:52:00 -07:00
Jamey Sharp 3cc0ddf0e6 Fix bug #7261: events do not signal the end of replies for that sequence number. 2006-09-18 14:49:22 -07:00
Jamey Sharp c912187f15 Handle names of constants during API conversion.
Use an XSLT stylesheet to get a list of all the constant names.
2006-09-18 00:25:26 -07:00
Jamey Sharp 06fba01443 Complete rewrite of api_conv.pl.
Now handles all API changes except constant names, which are treated like type names.
2006-09-17 23:38:57 -07:00
Jamey Sharp bf41af718d Simplify the API conversion tool without functionality changes. 2006-09-14 00:04:47 -07:00
Thomas Coppi cdffbdd7ef Prototype API conversion tool for upcoming lowercased XCB API. 2006-09-13 23:50:23 -07:00
Jamey Sharp a92716f1da Finish removing deprecated functions. Fixes build failure (oops). 2006-09-13 12:15:23 -07:00
Jamey Sharp 476ccc1ba3 Ignore xproto.xml that now gets copied in while building. 2006-09-12 13:43:17 -07:00
Jamey Sharp 0d7fb3afdd Remove deprecated public API functions in preparation for 1.0 release. Xlib-specific deprecation remains. 2006-09-12 13:25:49 -07:00
Bart Massey d4e768fc32 Cleaned up previous fix for GNU Make stuff.
Got "make distcheck" to work (whatever that does).
2006-09-12 00:42:11 -07:00