gosu 0.7.33 → 0.7.35

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. data/Gosu/Async.hpp +10 -8
  2. data/Gosu/Audio.hpp +6 -4
  3. data/Gosu/AutoLink.hpp +0 -0
  4. data/Gosu/Bitmap.hpp +4 -5
  5. data/Gosu/ButtonsX.hpp +1 -1
  6. data/Gosu/Color.hpp +8 -8
  7. data/Gosu/Font.hpp +2 -2
  8. data/Gosu/Graphics.hpp +4 -6
  9. data/Gosu/IO.hpp +11 -4
  10. data/Gosu/Image.hpp +9 -7
  11. data/Gosu/ImageData.hpp +10 -4
  12. data/Gosu/Input.hpp +4 -5
  13. data/Gosu/Sockets.hpp +10 -12
  14. data/Gosu/TR1.hpp +44 -0
  15. data/Gosu/TextInput.hpp +2 -2
  16. data/Gosu/Version.hpp +2 -2
  17. data/Gosu/WinUtility.hpp +5 -6
  18. data/Gosu/Window.hpp +5 -6
  19. data/GosuImpl/Async.cpp +4 -3
  20. data/GosuImpl/Audio/ALChannelManagement.hpp +23 -11
  21. data/GosuImpl/Audio/AudioFile.hpp +11 -3
  22. data/GosuImpl/Audio/AudioOpenAL.cpp +613 -0
  23. data/GosuImpl/Audio/AudioOpenAL.mm +1 -605
  24. data/GosuImpl/Audio/AudioSDL.cpp +12 -14
  25. data/GosuImpl/Audio/AudioToolboxFile.hpp +0 -1
  26. data/GosuImpl/Audio/OggFile.hpp +2 -0
  27. data/GosuImpl/Audio/SndFile.hpp +158 -0
  28. data/GosuImpl/DirectoriesWin.cpp +18 -18
  29. data/GosuImpl/Graphics/BitmapApple.mm +17 -19
  30. data/GosuImpl/Graphics/BitmapBMP.cpp +7 -2
  31. data/GosuImpl/Graphics/BitmapFreeImage.cpp +11 -12
  32. data/GosuImpl/Graphics/BitmapGDIplus.cpp +35 -31
  33. data/GosuImpl/Graphics/BitmapUtils.cpp +1 -1
  34. data/GosuImpl/Graphics/BlockAllocator.cpp +7 -8
  35. data/GosuImpl/Graphics/BlockAllocator.hpp +3 -4
  36. data/GosuImpl/Graphics/Common.hpp +3 -2
  37. data/GosuImpl/Graphics/DrawOp.hpp +2 -3
  38. data/GosuImpl/Graphics/DrawOpQueue.hpp +28 -20
  39. data/GosuImpl/Graphics/Font.cpp +13 -13
  40. data/GosuImpl/Graphics/FormattedString.hpp +93 -86
  41. data/GosuImpl/Graphics/Graphics.cpp +16 -14
  42. data/GosuImpl/Graphics/Image.cpp +7 -3
  43. data/GosuImpl/Graphics/LargeImageData.hpp +4 -5
  44. data/GosuImpl/Graphics/Macro.hpp +11 -11
  45. data/GosuImpl/Graphics/RenderState.hpp +5 -4
  46. data/GosuImpl/Graphics/TexChunk.cpp +3 -3
  47. data/GosuImpl/Graphics/TexChunk.hpp +4 -4
  48. data/GosuImpl/Graphics/Text.cpp +29 -30
  49. data/GosuImpl/Graphics/TextMac.cpp +9 -7
  50. data/GosuImpl/Graphics/TextTTFWin.cpp +3 -1
  51. data/GosuImpl/Graphics/TextTouch.mm +0 -1
  52. data/GosuImpl/Graphics/TextUnix.cpp +12 -4
  53. data/GosuImpl/Graphics/TextWin.cpp +4 -2
  54. data/GosuImpl/Graphics/Texture.cpp +7 -6
  55. data/GosuImpl/Graphics/Texture.hpp +3 -4
  56. data/GosuImpl/InputMac.mm +12 -15
  57. data/GosuImpl/InputTouch.mm +3 -3
  58. data/GosuImpl/InputWin.cpp +149 -159
  59. data/GosuImpl/InputX.cpp +0 -0
  60. data/GosuImpl/MacUtility.hpp +9 -4
  61. data/GosuImpl/RubyGosu.swg +38 -43
  62. data/GosuImpl/RubyGosu_wrap.cxx +89 -96
  63. data/GosuImpl/Sockets/CommSocket.cpp +5 -5
  64. data/GosuImpl/Sockets/Sockets.hpp +4 -4
  65. data/GosuImpl/TimingApple.cpp +2 -3
  66. data/GosuImpl/Utility.cpp +18 -0
  67. data/GosuImpl/WinMain.cpp +0 -1
  68. data/GosuImpl/WinUtility.cpp +2 -2
  69. data/GosuImpl/WindowMac.mm +20 -17
  70. data/GosuImpl/WindowTouch.mm +8 -7
  71. data/GosuImpl/WindowWin.cpp +12 -7
  72. data/GosuImpl/WindowX.cpp +67 -18
  73. data/lib/gosu.rb +14 -12
  74. data/linux/extconf.rb +11 -6
  75. metadata +8 -7
  76. data/GosuImpl/Audio/AudioAudiere.cpp +0 -448
  77. data/GosuImpl/RubyGosu_DllMain.cxx +0 -31
@@ -3,8 +3,7 @@
3
3
 
4
4
  #include <Gosu/Fwd.hpp>
5
5
  #include <Gosu/ImageData.hpp>
6
- #include <boost/none.hpp>
7
- #include <boost/shared_ptr.hpp>
6
+ #include <Gosu/TR1.hpp>
8
7
  #include <vector>
9
8
 
10
9
  namespace Gosu
@@ -12,7 +11,7 @@ namespace Gosu
12
11
  class LargeImageData : public ImageData
13
12
  {
14
13
  unsigned fullWidth, fullHeight, partsX, partsY, partWidth, partHeight;
15
- std::vector<boost::shared_ptr<ImageData> > parts;
14
+ std::vector<std::tr1::shared_ptr<ImageData> > parts;
16
15
 
17
16
  public:
18
17
  LargeImageData(Graphics& graphics, const Bitmap& source,
@@ -27,9 +26,9 @@ namespace Gosu
27
26
  double x4, double y4, Color c4,
28
27
  ZPos z, AlphaMode mode) const;
29
28
 
30
- boost::optional<GLTexInfo> glTexInfo() const
29
+ const GLTexInfo* glTexInfo() const
31
30
  {
32
- return boost::none;
31
+ return 0;
33
32
  }
34
33
 
35
34
  Bitmap toBitmap() const;
@@ -3,13 +3,12 @@
3
3
 
4
4
  #include <Gosu/Fwd.hpp>
5
5
  #include <Gosu/ImageData.hpp>
6
+ #include <Gosu/TR1.hpp>
6
7
  #include <GosuImpl/Graphics/Common.hpp>
7
8
  #include <GosuImpl/Graphics/DrawOpQueue.hpp>
8
- #include <boost/bind.hpp>
9
- #include <boost/foreach.hpp>
10
- #include <boost/scoped_ptr.hpp>
11
9
  #include <cmath>
12
10
  #include <algorithm>
11
+ #include <memory>
13
12
 
14
13
  class Gosu::Macro : public Gosu::ImageData
15
14
  {
@@ -23,12 +22,13 @@ public:
23
22
  {
24
23
  queue.compileTo(vertexArray);
25
24
  double left = 0, right = 0, top = 0, bottom = 0;
26
- BOOST_FOREACH (const ArrayVertex& av, vertexArray)
25
+ for (VertexArray::const_iterator it = vertexArray.begin(),
26
+ end = vertexArray.end(); it != end; ++it)
27
27
  {
28
- left = std::min<double>(left, av.vertices[0]);
29
- right = std::max<double>(right, av.vertices[0]);
30
- top = std::min<double>(top, av.vertices[1]);
31
- bottom = std::max<double>(bottom, av.vertices[1]);
28
+ left = std::min<double>(left, it->vertices[0]);
29
+ right = std::max<double>(right, it->vertices[0]);
30
+ top = std::min<double>(top, it->vertices[1]);
31
+ bottom = std::max<double>(bottom, it->vertices[1]);
32
32
  }
33
33
  w = std::ceil(right - left);
34
34
  h = std::ceil(bottom - top);
@@ -50,7 +50,7 @@ public:
50
50
  double x4, double y4, Color c4,
51
51
  ZPos z, AlphaMode mode) const
52
52
  {
53
- boost::function<void()> f = boost::bind(&Macro::realDraw, this, x1, y1, x2, y2, x3, y3);
53
+ std::tr1::function<void()> f = std::tr1::bind(&Macro::realDraw, this, x1, y1, x2, y2, x3, y3);
54
54
  graphics.scheduleGL(f, z);
55
55
  }
56
56
 
@@ -83,9 +83,9 @@ public:
83
83
  #endif
84
84
  }
85
85
 
86
- boost::optional<Gosu::GLTexInfo> glTexInfo() const
86
+ const Gosu::GLTexInfo* glTexInfo() const
87
87
  {
88
- return boost::none;
88
+ return 0;
89
89
  }
90
90
 
91
91
  Gosu::Bitmap toBitmap() const
@@ -34,11 +34,12 @@ public:
34
34
  glPopMatrix();
35
35
  glPushMatrix();
36
36
  #ifndef GOSU_IS_IPHONE
37
- glMultMatrixd(newTransform->data());
37
+ glMultMatrixd(&(*newTransform)[0]);
38
38
  #else
39
- boost::array<float, 16> matrix;
40
- matrix = *newTransform;
41
- glMultMatrixf(matrix.data());
39
+ float matrix[16];
40
+ for (int i = 0; i < 16; ++i)
41
+ matrix[i] = (*newTransform)[i];
42
+ glMultMatrixf(matrix);
42
43
  #endif
43
44
  transform = newTransform;
44
45
  }
@@ -5,7 +5,7 @@
5
5
  #include <Gosu/Graphics.hpp>
6
6
 
7
7
  Gosu::TexChunk::TexChunk(Graphics& graphics, Transforms& transforms, DrawOpQueueStack& queues,
8
- boost::shared_ptr<Texture> texture, int x, int y, int w, int h, int padding)
8
+ std::tr1::shared_ptr<Texture> texture, int x, int y, int w, int h, int padding)
9
9
  : graphics(&graphics), transforms(&transforms), queues(&queues),
10
10
  texture(texture), x(x), y(y), w(w), h(h), padding(padding)
11
11
  {
@@ -48,9 +48,9 @@ void Gosu::TexChunk::draw(double x1, double y1, Color c1,
48
48
  queues->back().scheduleDrawOp(newDrawOp, z);
49
49
  }
50
50
 
51
- boost::optional<Gosu::GLTexInfo> Gosu::TexChunk::glTexInfo() const
51
+ const Gosu::GLTexInfo* Gosu::TexChunk::glTexInfo() const
52
52
  {
53
- return info;
53
+ return &info;
54
54
  }
55
55
 
56
56
  Gosu::Bitmap Gosu::TexChunk::toBitmap() const
@@ -3,18 +3,18 @@
3
3
 
4
4
  #include <Gosu/Fwd.hpp>
5
5
  #include <Gosu/ImageData.hpp>
6
+ #include <Gosu/TR1.hpp>
6
7
  #include <GosuImpl/Graphics/Common.hpp>
7
8
  #include <memory>
8
9
  #include <vector>
9
10
  #include <stdexcept>
10
- #include <boost/shared_ptr.hpp>
11
11
 
12
12
  class Gosu::TexChunk : public Gosu::ImageData
13
13
  {
14
14
  Graphics* graphics;
15
15
  Transforms* transforms;
16
16
  DrawOpQueueStack* queues;
17
- boost::shared_ptr<Texture> texture;
17
+ std::tr1::shared_ptr<Texture> texture;
18
18
  int x, y, w, h, padding;
19
19
 
20
20
  // Cached for faster access.
@@ -22,7 +22,7 @@ class Gosu::TexChunk : public Gosu::ImageData
22
22
 
23
23
  public:
24
24
  TexChunk(Graphics& graphics, Transforms& transforms, DrawOpQueueStack& queues,
25
- boost::shared_ptr<Texture> texture, int x, int y, int w, int h, int padding);
25
+ std::tr1::shared_ptr<Texture> texture, int x, int y, int w, int h, int padding);
26
26
  ~TexChunk();
27
27
 
28
28
  unsigned int width() const
@@ -54,7 +54,7 @@ public:
54
54
  double x4, double y4, Color c4,
55
55
  ZPos z, AlphaMode mode) const;
56
56
 
57
- boost::optional<GLTexInfo> glTexInfo() const;
57
+ const GLTexInfo* glTexInfo() const;
58
58
  Gosu::Bitmap toBitmap() const;
59
59
  void insert(const Bitmap& bitmap, int x, int y);
60
60
  };
@@ -3,13 +3,10 @@
3
3
  #include <Gosu/Graphics.hpp>
4
4
  #include <Gosu/Image.hpp>
5
5
  #include <Gosu/Math.hpp>
6
+ #include <Gosu/TR1.hpp>
6
7
  #include <Gosu/Utility.hpp>
7
8
  #include <GosuImpl/Graphics/Common.hpp>
8
9
  #include <GosuImpl/Graphics/FormattedString.hpp>
9
- #include <boost/algorithm/string.hpp>
10
- #include <boost/bind.hpp>
11
- #include <boost/foreach.hpp>
12
- #include <boost/shared_ptr.hpp>
13
10
  #include <cassert>
14
11
  #include <cmath>
15
12
  #include <algorithm>
@@ -104,10 +101,10 @@ namespace Gosu
104
101
  if (text.entityAt(0))
105
102
  return entityBitmap(text.entityAt(0)).width();
106
103
 
107
- std::vector<FormattedString> parts = text.splitParts();
104
+ vector<FormattedString> parts = text.splitParts();
108
105
  unsigned result = 0;
109
- BOOST_FOREACH (const FormattedString& part, parts)
110
- result += Gosu::textWidth(part.unformat(), fontName, fontHeight, part.flagsAt(0));
106
+ for (unsigned i = 0; i < parts.size(); ++i)
107
+ result += Gosu::textWidth(parts[i].unformat(), fontName, fontHeight, parts[i].flagsAt(0));
111
108
  return result;
112
109
  }
113
110
 
@@ -145,13 +142,15 @@ namespace Gosu
145
142
  default:
146
143
  pos = 0;
147
144
  }
148
-
145
+
149
146
  for (Words::const_iterator cur = begin; cur != end; ++cur)
150
147
  {
151
- std::vector<FormattedString> parts = cur->text.splitParts();
148
+ vector<FormattedString> parts = cur->text.splitParts();
152
149
  int x = 0;
153
- BOOST_FOREACH (const FormattedString& part, parts)
150
+ for (int i = 0; i < parts.size(); ++i)
154
151
  {
152
+ FormattedString& part = parts[i];
153
+
155
154
  if (part.entityAt(0))
156
155
  {
157
156
  Gosu::Bitmap entity = entityBitmap(part.entityAt(0));
@@ -161,7 +160,7 @@ namespace Gosu
161
160
  continue;
162
161
  }
163
162
 
164
- std::wstring unformattedPart = part.unformat();
163
+ wstring unformattedPart = part.unformat();
165
164
  drawText(bmp, unformattedPart, trunc(pos) + x, trunc(top),
166
165
  part.colorAt(0), fontName, fontHeight, part.flagsAt(0));
167
166
  x += Gosu::textWidth(unformattedPart, fontName, fontHeight,
@@ -294,20 +293,20 @@ namespace Gosu
294
293
  void processText(TextBlockBuilder& builder, const FormattedString& text)
295
294
  {
296
295
  vector<FormattedString> paragraphs = text.splitLines();
297
- BOOST_FOREACH (FormattedString& fs, paragraphs)
298
- processParagraph(builder, fs);
296
+ for (int i = 0; i < paragraphs.size(); ++i)
297
+ processParagraph(builder, paragraphs[i]);
299
298
  }
300
299
  }
301
300
  }
302
301
 
303
- Gosu::Bitmap Gosu::createText(const std::wstring& text,
304
- const std::wstring& fontName, unsigned fontHeight, int lineSpacing,
302
+ Gosu::Bitmap Gosu::createText(const wstring& text,
303
+ const wstring& fontName, unsigned fontHeight, int lineSpacing,
305
304
  unsigned maxWidth, TextAlign align, unsigned fontFlags)
306
305
  {
307
306
  if (lineSpacing <= -static_cast<int>(fontHeight))
308
- throw std::logic_error("negative line spacing of more than line height impossible");
307
+ throw logic_error("negative line spacing of more than line height impossible");
309
308
 
310
- FormattedString fs(boost::replace_all_copy(text, L"\r\n", L"\n"), fontFlags);
309
+ FormattedString fs(text.c_str(), fontFlags);
311
310
  if (fs.length() == 0)
312
311
  return Bitmap(maxWidth, fontHeight);
313
312
 
@@ -323,10 +322,10 @@ Gosu::Bitmap Gosu::createText(const std::wstring& text,
323
322
  }
324
323
 
325
324
  // Very easy special case.
326
- Gosu::Bitmap Gosu::createText(const std::wstring& text,
327
- const std::wstring& fontName, unsigned fontHeight, unsigned fontFlags)
325
+ Gosu::Bitmap Gosu::createText(const wstring& text,
326
+ const wstring& fontName, unsigned fontHeight, unsigned fontFlags)
328
327
  {
329
- FormattedString fs(boost::replace_all_copy(text, L"\r\n", L"\n"), fontFlags);
328
+ FormattedString fs(text.c_str(), fontFlags);
330
329
  if (fs.length() == 0)
331
330
  return Bitmap(1, fontHeight);
332
331
 
@@ -340,7 +339,7 @@ Gosu::Bitmap Gosu::createText(const std::wstring& text,
340
339
  continue;
341
340
 
342
341
  unsigned x = 0;
343
- std::vector<FormattedString> parts = lines[i].splitParts();
342
+ vector<FormattedString> parts = lines[i].splitParts();
344
343
  for (int p = 0; p < parts.size(); ++p)
345
344
  {
346
345
  const FormattedString& part = parts[p];
@@ -348,17 +347,17 @@ Gosu::Bitmap Gosu::createText(const std::wstring& text,
348
347
  {
349
348
  Gosu::Bitmap entity = entityBitmap(part.entityAt(0));
350
349
  multiplyBitmapAlpha(entity, part.colorAt(0).alpha());
351
- bmp.resize(std::max(bmp.width(), x + entity.width()), bmp.height());
350
+ bmp.resize(max(bmp.width(), x + entity.width()), bmp.height());
352
351
  bmp.insert(entity, x, i * fontHeight);
353
352
  x += entity.width();
354
353
  continue;
355
354
  }
356
355
 
357
356
  assert(part.length() > 0);
358
- std::wstring unformattedText = part.unformat();
357
+ wstring unformattedText = part.unformat();
359
358
  unsigned partWidth =
360
359
  textWidth(unformattedText, fontName, fontHeight, part.flagsAt(0));
361
- bmp.resize(std::max(bmp.width(), x + partWidth), bmp.height());
360
+ bmp.resize(max(bmp.width(), x + partWidth), bmp.height());
362
361
  drawText(bmp, unformattedText, x, i * fontHeight, part.colorAt(0),
363
362
  fontName, fontHeight, part.flagsAt(0));
364
363
  x += partWidth;
@@ -370,23 +369,23 @@ Gosu::Bitmap Gosu::createText(const std::wstring& text,
370
369
 
371
370
  namespace
372
371
  {
373
- std::map<std::wstring, boost::shared_ptr<Gosu::Bitmap> > entities;
372
+ map<wstring, tr1::shared_ptr<Gosu::Bitmap> > entities;
374
373
  }
375
374
 
376
- void Gosu::registerEntity(const std::wstring& name, const Gosu::Bitmap& replacement)
375
+ void Gosu::registerEntity(const wstring& name, const Gosu::Bitmap& replacement)
377
376
  {
378
377
  entities[name].reset(new Bitmap(replacement));
379
378
  }
380
379
 
381
- bool Gosu::isEntity(const std::wstring& name)
380
+ bool Gosu::isEntity(const wstring& name)
382
381
  {
383
382
  return entities[name];
384
383
  }
385
384
 
386
- const Gosu::Bitmap& Gosu::entityBitmap(const std::wstring& name)
385
+ const Gosu::Bitmap& Gosu::entityBitmap(const wstring& name)
387
386
  {
388
- boost::shared_ptr<Gosu::Bitmap>& ptr = entities[name];
387
+ tr1::shared_ptr<Gosu::Bitmap>& ptr = entities[name];
389
388
  if (!ptr)
390
- throw std::runtime_error("Unknown entity: " + Gosu::wstringToUTF8(name));
389
+ throw runtime_error("Unknown entity: " + Gosu::wstringToUTF8(name));
391
390
  return *ptr;
392
391
  }
@@ -4,11 +4,10 @@
4
4
 
5
5
  #include <Gosu/Bitmap.hpp>
6
6
  #include <Gosu/Text.hpp>
7
+ #include <Gosu/TR1.hpp>
7
8
  #include <Gosu/Utility.hpp>
8
9
  #include <Gosu/IO.hpp>
9
10
  #include <GosuImpl/MacUtility.hpp>
10
- #include <boost/utility.hpp>
11
- #include <boost/cstdint.hpp>
12
11
  #include <cmath>
13
12
  #include <stdexcept>
14
13
  #include <map>
@@ -29,17 +28,20 @@ namespace Gosu
29
28
 
30
29
  namespace
31
30
  {
32
- class MacBitmap : boost::noncopyable
31
+ class MacBitmap
33
32
  {
34
- boost::uint32_t* buf;
33
+ std::tr1::uint32_t* buf;
35
34
  unsigned width, height;
36
35
  CGContextRef ctx;
36
+
37
+ MacBitmap(const MacBitmap&);
38
+ MacBitmap& operator=(const MacBitmap&);
37
39
 
38
40
  public:
39
- MacBitmap(boost::uint32_t* buf, unsigned width, unsigned height)
41
+ MacBitmap(std::tr1::uint32_t* buf, unsigned width, unsigned height)
40
42
  : buf(buf), width(width), height(height)
41
43
  {
42
- CGColorSpaceRef colorSpace = CGColorSpaceCreateWithName(kCGColorSpaceUserRGB);
44
+ CGColorSpaceRef colorSpace = CGColorSpaceCreateWithName(kCGColorSpaceGenericRGB);
43
45
  ctx = CGBitmapContextCreate (buf, width, height, 8, width * 4, colorSpace,
44
46
  kCGImageAlphaPremultipliedLast);
45
47
 
@@ -224,7 +226,7 @@ void Gosu::drawText(Bitmap& bitmap, const std::wstring& text, int x, int y,
224
226
  ATSULayoutAndStyle atlas(text, fontName, fontHeight, fontFlags);
225
227
  Rect rect = atlas.textExtents();
226
228
  unsigned width = rect.right + 1 - rect.left + 1; // add one pixel on OS X
227
- std::vector<boost::uint32_t> buf(width * fontHeight);
229
+ std::vector<std::tr1::uint32_t> buf(width * fontHeight);
228
230
  {
229
231
  MacBitmap helper(&buf[0], width, fontHeight);
230
232
  atlas.drawToContext(X2Fix(-rect.left), X2Fix(fontHeight / font.heightAt1Pt * font.descentAt1Pt),
@@ -1,4 +1,6 @@
1
1
  #include <windows.h>
2
+ #include <cassert>
3
+ #include <cstdio>
2
4
  #include <Gosu/Utility.hpp>
3
5
 
4
6
  // Adapted from http://www.codeproject.com/KB/GDI/xfont.aspx.
@@ -197,7 +199,7 @@ std::wstring getNameFromTTFFile(const std::wstring& filename)
197
199
 
198
200
  if (szTemp[0] != 0)
199
201
  {
200
- _ASSERTE(strlen(szTemp) < sizeof(lpFontProps->csName));
202
+ assert (strlen(szTemp) < sizeof(lpFontProps->csName));
201
203
 
202
204
  switch (ttRecord.uNameID)
203
205
  {
@@ -6,7 +6,6 @@
6
6
  #include <Gosu/Bitmap.hpp>
7
7
  #include <Gosu/Utility.hpp>
8
8
  #include <GosuImpl/MacUtility.hpp>
9
- #include <boost/algorithm/string.hpp>
10
9
  #include <map>
11
10
  #include <cmath>
12
11
  using namespace std;
@@ -7,7 +7,6 @@
7
7
  #include <glib.h>
8
8
  #include <SDL/SDL_ttf.h>
9
9
 
10
- #include <boost/utility.hpp>
11
10
  #include <string>
12
11
  #include <cstring>
13
12
  #include <stdexcept>
@@ -21,8 +20,11 @@ namespace Gosu
21
20
  {
22
21
  // Used for system fonts
23
22
  // Adapted from original version by Jan Lücker
24
- class PangoRenderer : boost::noncopyable
23
+ class PangoRenderer
25
24
  {
25
+ PangoRenderer(const PangoRenderer&);
26
+ PangoRenderer& operator=(const PangoRenderer&);
27
+
26
28
  int width, height;
27
29
 
28
30
  PangoContext* context;
@@ -161,12 +163,18 @@ namespace Gosu
161
163
 
162
164
  // Used for custom TTF files
163
165
  // Adapted from customFont class by José Tomás Tocino García (TheOm3ga)
164
- class SDLTTFRenderer : boost::noncopyable
166
+ class SDLTTFRenderer
165
167
  {
168
+ SDLTTFRenderer(const SDLTTFRenderer&);
169
+ SDLTTFRenderer& operator=(const SDLTTFRenderer&);
170
+
166
171
  TTF_Font* font;
167
172
 
168
- class SDLSurface : boost::noncopyable
173
+ class SDLSurface
169
174
  {
175
+ SDLSurface(const SDLSurface&);
176
+ SDLSurface& operator=(const SDLSurface&);
177
+
170
178
  SDL_Surface* surface;
171
179
 
172
180
  public:
@@ -5,7 +5,6 @@
5
5
  #include <Gosu/Text.hpp>
6
6
  #include <Gosu/Utility.hpp>
7
7
  #include <Gosu/WinUtility.hpp>
8
- #include <boost/utility.hpp>
9
8
  #include <cstdlib>
10
9
  #include <cwchar>
11
10
  #include <algorithm>
@@ -27,8 +26,11 @@ namespace Gosu
27
26
 
28
27
  namespace
29
28
  {
30
- class WinBitmap : boost::noncopyable
29
+ class WinBitmap
31
30
  {
31
+ WinBitmap(const WinBitmap&);
32
+ WinBitmap& operator=(const WinBitmap&);
33
+
32
34
  HDC dc;
33
35
  HBITMAP bitmap;
34
36
  char* pixels;