1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

* ext/tk/tcltklib.c: [trial patch] On some environments, it gives

better responce about callbacks across threads. But on the other
  environments, it has no effect. 


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17115 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nagai 2008-06-12 16:51:12 +00:00
parent bbcd6dfc96
commit 283826f751
3 changed files with 12 additions and 6 deletions

View file

@ -42,7 +42,7 @@ TkFrame.new(base_frame) {|frame|
TkButton.new(frame) {
text 'Message Box'
command proc{showMessageBox $msgbox2_demo}
command proc{showMessageBox2 $msgbox2_demo}
}.pack('side'=>'left', 'expand'=>'yes')
}.pack('side'=>'bottom', 'fill'=>'x', 'pady'=>'2m')
@ -79,7 +79,7 @@ $msgboxType = TkVariable.new('ok')
'anchor'=>'w', 'fill'=>'x')
}
def showMessageBox(w)
def showMessageBox2(w)
button = Tk.messageBox('icon'=>$msgboxIcon.value, 'type'=>$msgboxType.value,
'title'=>'Message', 'parent'=>w,
'message'=>"\"#{$msgboxType.value}\" Type MessageBox",

View file

@ -41,7 +41,7 @@ TkFrame.new(base_frame) {|frame|
TkButton.new(frame) {
text 'メッセージボックス'
command proc{showMessageBox $msgbox2_demo}
command proc{showMessageBox2 $msgbox2_demo}
}.pack('side'=>'left', 'expand'=>'yes')
}.pack('side'=>'bottom', 'fill'=>'x', 'pady'=>'2m')
@ -78,7 +78,7 @@ $msgboxType = TkVariable.new('ok')
'anchor'=>'w', 'fill'=>'x')
}
def showMessageBox(w)
def showMessageBox2(w)
button = Tk.messageBox('icon'=>$msgboxIcon.value, 'type'=>$msgboxType.value,
'title'=>'Message', 'parent'=>w,
'message'=>"\"#{$msgboxType.value}\"タイプのメッセージボックス",

View file

@ -4,7 +4,7 @@
* Oct. 24, 1997 Y. Matsumoto
*/
#define TCLTKLIB_RELEASE_DATE "2008-06-11"
#define TCLTKLIB_RELEASE_DATE "2008-06-12"
#include "ruby.h"
@ -116,7 +116,7 @@ fprintf(stderr, ARG1, ARG2, ARG3); fprintf(stderr, "\n"); fflush(stderr); }
*/
/* release date */
const const char tcltklib_release_date[] = TCLTKLIB_RELEASE_DATE;
static const char tcltklib_release_date[] = TCLTKLIB_RELEASE_DATE;
/* finalize_proc_name */
static char *finalize_hook_name = "INTERP_FINALIZE_HOOK";
@ -424,9 +424,15 @@ Tcl_Interp *current_interp;
: USE_TOGGLE_WINDOW_MODE_FOR_IDLE 0
: DO_THREAD_SCHEDULE_AT_CALLBACK_DONE 0
*/
#ifdef RUBY_USE_NATIVE_THREAD
#define CONTROL_BY_STATUS_OF_RB_THREAD_WAITING_FOR_VALUE 1
#define USE_TOGGLE_WINDOW_MODE_FOR_IDLE 0
#define DO_THREAD_SCHEDULE_AT_CALLBACK_DONE 1
#else /* ! RUBY_USE_NATIVE_THREAD */
#define CONTROL_BY_STATUS_OF_RB_THREAD_WAITING_FOR_VALUE 1
#define USE_TOGGLE_WINDOW_MODE_FOR_IDLE 0
#define DO_THREAD_SCHEDULE_AT_CALLBACK_DONE 0
#endif
#if CONTROL_BY_STATUS_OF_RB_THREAD_WAITING_FOR_VALUE
static int have_rb_thread_waiting_for_value = 0;