summaryrefslogtreecommitdiff
path: root/clutter/clutter-macros.h
Commit message (Collapse)AuthorAgeFilesLines
* Add version macros for Clutter 1.26Emmanuele Bassi2015-11-181-0/+18
|
* macros: Clang 3.4 and later versions can use deprecation macros for GCCTing-Wei Lan2015-07-141-1/+2
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=752272
* macros: Add fallback defines for non-GCC compilersEmmanuele Bassi2015-07-111-0/+3
| | | | | | | I forgot to add the fallback definitions in case we're not using GCC; without them, anybody using non-GCC compilers will get a build error. https://bugzilla.gnome.org/show_bug.cgi?id=752272
* Add macros for deprecating macrosEmmanuele Bassi2015-07-111-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | We want to be able to deprecate macros, but right now the best we can do is to wrap them with things like: #ifndef CLUTTER_DISABLE_DEPRECATED # define A_MACRO_I_WANT_TO_DEPRECATE ... #endif Which requires adding a new symbol to the build, and will cause a build error instead of a compiler/pre-processor warning. Fortunately, we can use the _Pragma() keyword introduced by C99 and supported by GCC to add a warning to the output, while leaving the macro itself intact. GCC does not have a "deprecated" pragma, so we have to use a generic warning; this also means we cannot do nifty things like concatenating strings and the like, as we do for the "deprecated" attribute. The macro deprecation symbol should have the same affordances as the function deprecation one, and evaluate to nothing if the required version is lower than the current version; or if the global toggle for deprecation warnings is in effect.
* Move header inclusion guard at the topEmmanuele Bassi2015-07-071-3/+3
| | | | | | | | GCC has some optimization for the inclusion guard, but they only work if the check is the outermost one. We're fairly inconsistent because of historical reasons, so we should ensure that we follow the same pattern in every public header.
* Add version macros for 1.24Emmanuele Bassi2015-04-141-0/+14
|
* Add 1.22 version macrosEmmanuele Bassi2014-12-111-0/+14
| | | | The 1.22 cycle did start a while ago.
* Provide 1.20 version macrosEmmanuele Bassi2014-05-191-0/+14
|
* Annotate all public symbolsEmmanuele Bassi2014-03-171-36/+42
| | | | | We are going to switch to compiler annotations to determine the visibility of the symbols.
* Add 1.18 version macrosEmmanuele Bassi2013-10-101-0/+14
| | | | We're still going to do a 1.x release cycle.
* Add version-related macros for 1.16Emmanuele Bassi2013-03-201-0/+14
|
* version: Add 1.14 version macrosEmanuele Aina2012-10-101-0/+14
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=685028
* docs: Annotation fixesEmmanuele Bassi2012-04-301-2/+2
| | | | | | The introspection scanner has become slightly more annoying, in the hope that people start fixing their annotations. As it turns out, it was the right move.
* Deprecate ClutterCairoTextureEmmanuele Bassi2012-04-271-20/+0
| | | | | | | | | | The ClutterCanvas content implementation should be used instead, to avoid stringing along the ClutterTexture API and implementation. This change requires some minor surgery, as the deprecated section already contains an header for the previously deprecated methods; plus, we don't want to deprecate clutter_cairo_set_source_color(). This means creating a new header to be used for Cairo-related API.
* macros: Define MIN_REQUIRED as the current versionEmmanuele Bassi2012-04-261-1/+1
| | | | | Otherwise we'll not warn on deprecations introduced in the current development cycle.
* version: Add 1.12 version macrosEmmanuele Bassi2012-03-221-0/+14
|
* Add ClutterCanvas, a drawing contentEmmanuele Bassi2012-03-161-0/+20
|
* Add flexible versioning schemeEmmanuele Bassi2012-02-271-7/+202
| | | | | | | | | | | | | GLib introduced macros that allows defining the lower and upper bounds of the API to be used by application code. The lower bound allows to define the minimum version that will trigger deprecation warnings; the upper bound defines the maximum version that will trigger compiler warnings for unavailable symbols. This scheme allows gradually porting application code to a new version of the API, especially in case of resynchronization after multiple development cycles.
* Move macros to their own headersEmmanuele Bassi2012-02-271-0/+56