X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fintl.C;h=b96fc747a0d392e78b226b75fdbe589f2172a982;hb=a858be7332e331e0244e4dba7b0931b6072ffd3d;hp=a3a1bdf83d7aa1a769456fbeac9f20e1983d11f1;hpb=35584afc1162dec2cf9fff79305e95cb3b75aefb;p=lyx.git diff --git a/src/intl.C b/src/intl.C index a3a1bdf83d..b96fc747a0 100644 --- a/src/intl.C +++ b/src/intl.C @@ -31,6 +31,9 @@ extern LyXRC* lyxrc; +// a wrapper around the callback static member. +extern "C" void C_Intl_DispatchCallback(FL_OBJECT *ob,long code); + Intl::Intl() : prim_lang(lyxrc->primary_kbmap), @@ -225,6 +228,10 @@ void Intl::DispatchCallback(FL_OBJECT *ob,long code) if (itl!=0) itl->Keymap(code); } +extern "C" void C_Intl_DispatchCallback(FL_OBJECT *ob,long code) +{ + Intl::DispatchCallback(ob,code); +} void Intl::InitKeyMapper(bool on) /* initialize key mapper */ @@ -253,13 +260,19 @@ void Intl::InitKeyMapper(bool on) fd_form_keymap->KeyOnBtn2->u_vdata=(void *)this; // add the callbacks. - fl_set_object_callback(fd_form_keymap->AcceptChset,DispatchCallback,27); - fl_set_object_callback(fd_form_keymap->Charset,DispatchCallback,26); - fl_set_object_callback(fd_form_keymap->Accept,DispatchCallback,0); - - fl_set_object_callback(fd_form_keymap->KeyOnBtn,DispatchCallback,23); - fl_set_object_callback(fd_form_keymap->KeyOffBtn,DispatchCallback,3); - fl_set_object_callback(fd_form_keymap->KeyOnBtn2,DispatchCallback,43); + fl_set_object_callback(fd_form_keymap->AcceptChset, + C_Intl_DispatchCallback,27); + fl_set_object_callback(fd_form_keymap->Charset, + C_Intl_DispatchCallback,26); + fl_set_object_callback(fd_form_keymap->Accept, + C_Intl_DispatchCallback,0); + + fl_set_object_callback(fd_form_keymap->KeyOnBtn, + C_Intl_DispatchCallback,23); + fl_set_object_callback(fd_form_keymap->KeyOffBtn, + C_Intl_DispatchCallback,3); + fl_set_object_callback(fd_form_keymap->KeyOnBtn2, + C_Intl_DispatchCallback,43); // Make sure pressing the close box does not kill LyX. (RvdK) fl_set_form_atclose(fd_form_keymap->KeyMap, CancelCloseBoxCB, 0);