summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorArmin Burgmeier <armin@arbur.net>2010-10-25 23:27:28 +0200
committerMurray Cumming <murrayc@murrayc.com>2010-10-26 09:00:32 +0200
commit90cb33b842a17565262bb0646cfb6c3c32e6f292 (patch)
treea1e027a4d14f77c3728271df6340a5a48ff1ed75 /examples
parent8a9a3aba2f29721653a3f0c88489b64fdba06d70 (diff)
Fix the build with MSVC (really)v1.9.6
The previous commit only included the ChangeLog for some reason. 2009-10-26 Armin Burgmeier <armin@arbur.net> * MSVC_Net2005/cairomm/cairomm.rc.in: * MSVC_Net2008/cairomm/cairomm.rc.in: Replaced GENERIC_MAJOR_VERSION et al. by CAIROMM_MAJOR_VERSION, so that they are properly replaced during configure. * MSVC_Net2005/examples/image-surface/image-surface.vcproj: * MSVC_Net2005/examples/pdf-surface/pdf-surface.vcproj: * MSVC_Net2005/examples/ps-surface/ps-surface.vcproj: * MSVC_Net2005/examples/svg-surface/svg-surface.vcproj: * MSVC_Net2005/examples/text-rotate/text-rotate.vcproj: * MSVC_Net2005/examples/toy-text/toy-text.vcproj: * MSVC_Net2005/examples/user-font/user-font.vcproj: * MSVC_Net2008/examples/image-surface/image-surface.vcproj: * MSVC_Net2008/examples/pdf-surface/pdf-surface.vcproj: * MSVC_Net2008/examples/ps-surface/ps-surface.vcproj: * MSVC_Net2008/examples/svg-surface/svg-surface.vcproj: * MSVC_Net2008/examples/text-rotate/text-rotate.vcproj: * MSVC_Net2008/examples/toy-text/toy-text.vcproj: * MSVC_Net2008/examples/user-font/user-font.vcproj: Added $(SolutionDir)/cairomm to the include search paths, so that cairommconfig.h is found even if configure did not run. * cairomm/fontface.cc: MSVC does not allow to reinterpret_cast a bool to void*, so use an int instead. * examples/surfaces/image-surface.cc: * examples/surfaces/pdf-surface.cc: * examples/surfaces/ps-surface.cc: * examples/surfaces/svg-surface.cc: * examples/text/text-rotate.cc: Define _USE_MATH_DEFINES before including anything, to make sure we get the defines even if math.h is included indirectly via another header. * cairomm/context.cc: In set_dash(std::valarray<double>), copy the valarray into a vector and then call set_dash(std::vector<double>). The reason is that there is no guarantee that the memory in a std::valarray is contiguous, and also that in MSVC's STL (and also in the C++ standard) std::valarray<T>::operator[](size_t) const returns a T, not a const T&, so &dashes[0] is a compiler error if dashes is a const std::valarray<double>&.
Diffstat (limited to 'examples')
-rw-r--r--examples/surfaces/image-surface.cc12
-rw-r--r--examples/surfaces/pdf-surface.cc12
-rw-r--r--examples/surfaces/ps-surface.cc12
-rw-r--r--examples/surfaces/svg-surface.cc12
-rw-r--r--examples/text/text-rotate.cc10
5 files changed, 29 insertions, 29 deletions
diff --git a/examples/surfaces/image-surface.cc b/examples/surfaces/image-surface.cc
index 3a349f2..d8ea451 100644
--- a/examples/surfaces/image-surface.cc
+++ b/examples/surfaces/image-surface.cc
@@ -1,9 +1,3 @@
-#include <string>
-#include <iostream>
-#include <cairommconfig.h>
-#include <cairomm/context.h>
-#include <cairomm/surface.h>
-
/* M_PI is defined in math.h in the case of Microsoft Visual C++, Solaris,
* et. al.
*/
@@ -11,6 +5,12 @@
#define _USE_MATH_DEFINES
#endif
+#include <string>
+#include <iostream>
+#include <cairommconfig.h>
+#include <cairomm/context.h>
+#include <cairomm/surface.h>
+
#include <cmath>
int main()
diff --git a/examples/surfaces/pdf-surface.cc b/examples/surfaces/pdf-surface.cc
index a742918..630f196 100644
--- a/examples/surfaces/pdf-surface.cc
+++ b/examples/surfaces/pdf-surface.cc
@@ -1,9 +1,3 @@
-#include <string>
-#include <iostream>
-#include <cairommconfig.h>
-#include <cairomm/context.h>
-#include <cairomm/surface.h>
-
/* M_PI is defined in math.h in the case of Microsoft Visual C++, Solaris,
* et. al.
*/
@@ -11,6 +5,12 @@
#define _USE_MATH_DEFINES
#endif
+#include <string>
+#include <iostream>
+#include <cairommconfig.h>
+#include <cairomm/context.h>
+#include <cairomm/surface.h>
+
#include <cmath>
int main()
diff --git a/examples/surfaces/ps-surface.cc b/examples/surfaces/ps-surface.cc
index 73d630d..4e5bd2a 100644
--- a/examples/surfaces/ps-surface.cc
+++ b/examples/surfaces/ps-surface.cc
@@ -1,9 +1,3 @@
-#include <string>
-#include <iostream>
-#include <cairommconfig.h>
-#include <cairomm/context.h>
-#include <cairomm/surface.h>
-
/* M_PI is defined in math.h in the case of Microsoft Visual C++, Solaris,
* et. al.
*/
@@ -11,6 +5,12 @@
#define _USE_MATH_DEFINES
#endif
+#include <string>
+#include <iostream>
+#include <cairommconfig.h>
+#include <cairomm/context.h>
+#include <cairomm/surface.h>
+
#include <cmath>
int main()
diff --git a/examples/surfaces/svg-surface.cc b/examples/surfaces/svg-surface.cc
index 38f96c9..56e101d 100644
--- a/examples/surfaces/svg-surface.cc
+++ b/examples/surfaces/svg-surface.cc
@@ -1,9 +1,3 @@
-#include <string>
-#include <iostream>
-#include <cairommconfig.h>
-#include <cairomm/context.h>
-#include <cairomm/surface.h>
-
/* M_PI is defined in math.h in the case of Microsoft Visual C++, Solaris,
* et. al.
*/
@@ -11,6 +5,12 @@
#define _USE_MATH_DEFINES
#endif
+#include <string>
+#include <iostream>
+#include <cairommconfig.h>
+#include <cairomm/context.h>
+#include <cairomm/surface.h>
+
#include <cmath>
int main()
diff --git a/examples/text/text-rotate.cc b/examples/text/text-rotate.cc
index 530c2f7..69e02ff 100644
--- a/examples/text/text-rotate.cc
+++ b/examples/text/text-rotate.cc
@@ -16,11 +16,6 @@
* 02110-1301, USA.
*/
-#include <string>
-#include <iostream>
-#include <cairommconfig.h>
-#include <cairomm/cairomm.h>
-
/* M_PI is defined in math.h in the case of Microsoft Visual C++, and
* Solaris needs math.h for M_PI and floor()
*/
@@ -28,6 +23,11 @@
#define _USE_MATH_DEFINES
#endif
+#include <string>
+#include <iostream>
+#include <cairommconfig.h>
+#include <cairomm/cairomm.h>
+
#include <cmath>
// This example is based on the C cairo example of the same name