gosu 1.1.0.pre1 → 1.1.0.pre2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 54c79a5d22ee53e69f48bcd2c1ffb20bf35672ee30d6f08890a9c3037a39fe24
4
- data.tar.gz: 6a5e06a31f1a7ad257be143a37a1163b324e7124cb56a97154c9eba9fb0686d8
3
+ metadata.gz: 70dc24184a235da8dc66f4bac07da231b87ab9f4a7469d06331ba048da6bc5b6
4
+ data.tar.gz: 0fab031220b2912e66d29e53e1c4dbee51823e042b75927e31415bca59056ac3
5
5
  SHA512:
6
- metadata.gz: 7db1b37245a24e569bbc623ec025a3e2d13fd61c7a011272e30cca9d4cf6970a2326ec159ee839236fc246ed177702c3de6942e46ba9297c50e51078f61cb564
7
- data.tar.gz: 0a75ca1ddf6de40050638cc33e8c41acdd68808b1c3942aaecff2219aaf44e8148398bdd27991d5f5d4e1757b8fec651f59c7b9bba82b140dffdcda7df5ab632
6
+ metadata.gz: 59567c7edd20676430b16a27f260fb64f6309d992215cf5f3e22cf8311d39a263945836b040ebd46cb9ee4e0e9a430a0cc1f84d35fc8b3ea8f1ca4b79b170bb6
7
+ data.tar.gz: 31afdb7a4465c4c59002a2a044202b43803db915c9ae6940fb87606b51e9907707591db591d6baa60c1aadf89104a045a12bfdeb81e7c80bed76dfb9d8284709
@@ -3,16 +3,20 @@
3
3
  # compatible, but I just call protected_update etc. in the Ruby wrapper so I can add this
4
4
  # custom debugging help:
5
5
  class Gosu::Window
6
- alias_method :initialize_with_options_hash, :initialize
6
+ alias_method :initialize_with_bitmask, :initialize
7
7
 
8
- def initialize width, height, *args
9
- if args.empty? or args.first.is_a? Hash
10
- options = args.first || {}
8
+ def initialize(width, height, *args)
9
+ $gosu_gl_blocks = nil
10
+
11
+ if args.first.is_a? Hash
12
+ flags = 0
13
+ flags |= 1 if args.first[:fullscreen]
14
+ flags |= 2 if args.first[:resizable]
15
+ flags |= 4 if args.first[:borderless]
16
+ initialize_with_bitmask(width, height, flags, args.first[:update_interval] || 16.666666)
11
17
  else
12
- options = { fullscreen: args[0], update_interval: args[1] }
18
+ initialize_with_bitmask(width, height, args[0] ? 1 : 0, args[1] || 16.666666)
13
19
  end
14
- $gosu_gl_blocks = nil
15
- initialize_with_options_hash width, height, options
16
20
  end
17
21
 
18
22
  %w(update draw needs_redraw? needs_cursor?
@@ -3218,45 +3218,6 @@ SWIGINTERN void Gosu_TextInput_set_selection_start(Gosu::TextInput *self,VALUE s
3218
3218
  std::string prefix = StringValueCStr(rb_prefix);
3219
3219
  self->set_selection_start(std::min(prefix.length(), self->text().length()));
3220
3220
  }
3221
- SWIGINTERN Gosu::Window *new_Gosu_Window(VALUE self,int width,int height,VALUE options=0){
3222
- unsigned flags = 0;
3223
- double update_interval = 16.666666;
3224
-
3225
- if (options) {
3226
- Check_Type(options, T_HASH);
3227
-
3228
- VALUE keys = rb_funcall(options, rb_intern("keys"), 0, NULL);
3229
- int keys_size = NUM2INT(rb_funcall(keys, rb_intern("size"), 0, NULL));
3230
-
3231
- for (int i = 0; i < keys_size; ++i) {
3232
- VALUE key = rb_ary_entry(keys, i);
3233
- const char* key_string = Gosu::cstr_from_symbol(key);
3234
-
3235
- VALUE value = rb_hash_aref(options, key);
3236
- if (!strcmp(key_string, "fullscreen")) {
3237
- if (RTEST(value)) flags |= Gosu::WF_FULLSCREEN;
3238
- }
3239
- else if (!strcmp(key_string, "resizable")) {
3240
- if (RTEST(value)) flags |= Gosu::WF_RESIZABLE;
3241
- }
3242
- else if (!strcmp(key_string, "borderless")) {
3243
- if (RTEST(value)) flags |= Gosu::WF_BORDERLESS;
3244
- }
3245
- else if (!strcmp(key_string, "update_interval")) {
3246
- update_interval = NUM2DBL(value);
3247
- }
3248
- else {
3249
- static bool issued_warning = false;
3250
- if (!issued_warning) {
3251
- issued_warning = true;
3252
- rb_warn("Unknown keyword argument: :%s", key_string);
3253
- }
3254
- }
3255
- }
3256
- }
3257
-
3258
- return new Gosu::Window(width, height, flags, update_interval);
3259
- }
3260
3221
  SWIGINTERN void Gosu_Window_set_width(Gosu::Window *self,unsigned int width){
3261
3222
  self->resize(width, self->height(), self->fullscreen());
3262
3223
  }
@@ -3339,6 +3300,12 @@ std::string SwigDirector_TextInput::filter(std::string text) const {
3339
3300
  }
3340
3301
 
3341
3302
 
3303
+ SwigDirector_Window::SwigDirector_Window(VALUE self,int width,int height,unsigned int window_flags,double update_interval): Gosu::Window(width, height, window_flags, update_interval), Swig::Director(self) {
3304
+
3305
+ }
3306
+
3307
+
3308
+
3342
3309
  SwigDirector_Window::~SwigDirector_Window() {
3343
3310
  }
3344
3311
 
@@ -9213,6 +9180,89 @@ fail:
9213
9180
 
9214
9181
  static swig_class SwigClassWindow;
9215
9182
 
9183
+ SWIGINTERN VALUE
9184
+ #ifdef HAVE_RB_DEFINE_ALLOC_FUNC
9185
+ _wrap_Window_allocate(VALUE self)
9186
+ #else
9187
+ _wrap_Window_allocate(int argc, VALUE *argv, VALUE self)
9188
+ #endif
9189
+ {
9190
+ VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_Gosu__Window);
9191
+ #ifndef HAVE_RB_DEFINE_ALLOC_FUNC
9192
+ rb_obj_call_init(vresult, argc, argv);
9193
+ #endif
9194
+ return vresult;
9195
+ }
9196
+
9197
+
9198
+ SWIGINTERN VALUE
9199
+ _wrap_new_Window(int argc, VALUE *argv, VALUE self) {
9200
+ VALUE arg1 = (VALUE) 0 ;
9201
+ int arg2 ;
9202
+ int arg3 ;
9203
+ unsigned int arg4 = (unsigned int) Gosu::WF_WINDOWED ;
9204
+ double arg5 = (double) 16.666666 ;
9205
+ int val2 ;
9206
+ int ecode2 = 0 ;
9207
+ int val3 ;
9208
+ int ecode3 = 0 ;
9209
+ unsigned int val4 ;
9210
+ int ecode4 = 0 ;
9211
+ double val5 ;
9212
+ int ecode5 = 0 ;
9213
+ const char *classname SWIGUNUSED = "Gosu::Window";
9214
+ Gosu::Window *result = 0 ;
9215
+
9216
+ if ((argc < 2) || (argc > 4)) {
9217
+ rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
9218
+ }
9219
+ arg1 = self;
9220
+ ecode2 = SWIG_AsVal_int(argv[0], &val2);
9221
+ if (!SWIG_IsOK(ecode2)) {
9222
+ SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","Window", 2, argv[0] ));
9223
+ }
9224
+ arg2 = static_cast< int >(val2);
9225
+ ecode3 = SWIG_AsVal_int(argv[1], &val3);
9226
+ if (!SWIG_IsOK(ecode3)) {
9227
+ SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "int","Window", 3, argv[1] ));
9228
+ }
9229
+ arg3 = static_cast< int >(val3);
9230
+ if (argc > 2) {
9231
+ ecode4 = SWIG_AsVal_unsigned_SS_int(argv[2], &val4);
9232
+ if (!SWIG_IsOK(ecode4)) {
9233
+ SWIG_exception_fail(SWIG_ArgError(ecode4), Ruby_Format_TypeError( "", "unsigned int","Window", 4, argv[2] ));
9234
+ }
9235
+ arg4 = static_cast< unsigned int >(val4);
9236
+ }
9237
+ if (argc > 3) {
9238
+ ecode5 = SWIG_AsVal_double(argv[3], &val5);
9239
+ if (!SWIG_IsOK(ecode5)) {
9240
+ SWIG_exception_fail(SWIG_ArgError(ecode5), Ruby_Format_TypeError( "", "double","Window", 5, argv[3] ));
9241
+ }
9242
+ arg5 = static_cast< double >(val5);
9243
+ }
9244
+ {
9245
+ try {
9246
+ if ( strcmp(rb_obj_classname(self), classname) != 0 ) {
9247
+ /* subclassed */
9248
+ result = (Gosu::Window *)new SwigDirector_Window(arg1,arg2,arg3,arg4,arg5);
9249
+ } else {
9250
+ result = (Gosu::Window *)new Gosu::Window(arg2,arg3,arg4,arg5);
9251
+ }
9252
+
9253
+ DATA_PTR(self) = result;
9254
+ SWIG_RubyAddTracking(result, self);
9255
+ }
9256
+ catch (const std::exception& e) {
9257
+ SWIG_exception(SWIG_RuntimeError, e.what());
9258
+ }
9259
+ }
9260
+ return self;
9261
+ fail:
9262
+ return Qnil;
9263
+ }
9264
+
9265
+
9216
9266
  SWIGINTERN void
9217
9267
  free_Gosu_Window(void *self) {
9218
9268
  Gosu::Window *arg1 = (Gosu::Window *)self;
@@ -10210,67 +10260,6 @@ fail:
10210
10260
  }
10211
10261
 
10212
10262
 
10213
- SWIGINTERN VALUE
10214
- #ifdef HAVE_RB_DEFINE_ALLOC_FUNC
10215
- _wrap_Window_allocate(VALUE self)
10216
- #else
10217
- _wrap_Window_allocate(int argc, VALUE *argv, VALUE self)
10218
- #endif
10219
- {
10220
- VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_Gosu__Window);
10221
- #ifndef HAVE_RB_DEFINE_ALLOC_FUNC
10222
- rb_obj_call_init(vresult, argc, argv);
10223
- #endif
10224
- return vresult;
10225
- }
10226
-
10227
-
10228
- SWIGINTERN VALUE
10229
- _wrap_new_Window(int argc, VALUE *argv, VALUE self) {
10230
- VALUE arg1 = (VALUE) 0 ;
10231
- int arg2 ;
10232
- int arg3 ;
10233
- VALUE arg4 = (VALUE) 0 ;
10234
- int val2 ;
10235
- int ecode2 = 0 ;
10236
- int val3 ;
10237
- int ecode3 = 0 ;
10238
- const char *classname SWIGUNUSED = "Gosu::Window";
10239
- Gosu::Window *result = 0 ;
10240
-
10241
- if ((argc < 2) || (argc > 3)) {
10242
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
10243
- }
10244
- arg1 = self;
10245
- ecode2 = SWIG_AsVal_int(argv[0], &val2);
10246
- if (!SWIG_IsOK(ecode2)) {
10247
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","Window", 2, argv[0] ));
10248
- }
10249
- arg2 = static_cast< int >(val2);
10250
- ecode3 = SWIG_AsVal_int(argv[1], &val3);
10251
- if (!SWIG_IsOK(ecode3)) {
10252
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "int","Window", 3, argv[1] ));
10253
- }
10254
- arg3 = static_cast< int >(val3);
10255
- if (argc > 2) {
10256
- arg4 = argv[2];
10257
- }
10258
- {
10259
- try {
10260
- result = (Gosu::Window *)new_Gosu_Window(arg1,arg2,arg3,arg4);
10261
- DATA_PTR(self) = result;
10262
- SWIG_RubyAddTracking(result, self);
10263
- }
10264
- catch (const std::exception& e) {
10265
- SWIG_exception(SWIG_RuntimeError, e.what());
10266
- }
10267
- }
10268
- return self;
10269
- fail:
10270
- return Qnil;
10271
- }
10272
-
10273
-
10274
10263
  SWIGINTERN VALUE
10275
10264
  _wrap_Window_widthe___(int argc, VALUE *argv, VALUE self) {
10276
10265
  Gosu::Window *arg1 = (Gosu::Window *) 0 ;
@@ -28,6 +28,7 @@ public:
28
28
  class SwigDirector_Window : public Gosu::Window, public Swig::Director {
29
29
 
30
30
  public:
31
+ SwigDirector_Window(VALUE self,int width,int height,unsigned int window_flags=Gosu::WF_WINDOWED,double update_interval=16.666666);
31
32
  virtual ~SwigDirector_Window();
32
33
  virtual void show();
33
34
  virtual bool tick();
@@ -32,8 +32,8 @@ const unsigned char* Gosu::ttf_data_by_name(const string& font_name, unsigned fo
32
32
  LOGFONT logfont = {
33
33
  0, 0, 0, 0,
34
34
  (font_flags & Gosu::FF_BOLD) ? FW_BOLD : FW_NORMAL,
35
- (font_flags & Gosu::FF_ITALIC) ? 1 : 0,
36
- (font_flags & Gosu::FF_UNDERLINE) ? 1 : 0,
35
+ static_cast<BYTE>((font_flags & Gosu::FF_ITALIC) ? TRUE : FALSE),
36
+ static_cast<BYTE>((font_flags & Gosu::FF_UNDERLINE) ? TRUE : FALSE),
37
37
  0 /* no strikethrough */,
38
38
  ANSI_CHARSET, OUT_OUTLINE_PRECIS, CLIP_DEFAULT_PRECIS, ANTIALIASED_QUALITY,
39
39
  DEFAULT_PITCH
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gosu
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0.pre1
4
+ version: 1.1.0.pre2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Julian Raschke