Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit26ea925

Browse files
committed
iui: usedyn marker for dynamic traits
As of Rust 1.37, trait objects without the `dyn` marker will producewarnings. This results in many warnings when building `iui`.Annotate all trait objects with this dyn marker.Signed-off-by: Sean Cross <sean@xobs.io>
1 parent4b597b4 commit26ea925

File tree

6 files changed

+42
-42
lines changed

6 files changed

+42
-42
lines changed

‎iui/src/controls/area.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,11 @@ pub trait AreaHandler {
2323
#[repr(C)]
2424
structRustAreaHandler{
2525
ui_area_handler:uiAreaHandler,
26-
trait_object:Box<AreaHandler>,
26+
trait_object:Box<dynAreaHandler>,
2727
}
2828

2929
implRustAreaHandler{
30-
fnnew(_ctx:&UI,trait_object:Box<AreaHandler>) ->Box<RustAreaHandler>{
30+
fnnew(_ctx:&UI,trait_object:Box<dynAreaHandler>) ->Box<RustAreaHandler>{
3131
returnBox::new(RustAreaHandler{
3232
ui_area_handler:uiAreaHandler{
3333
Draw:Some(draw),
@@ -148,7 +148,7 @@ define_control! {
148148

149149
implArea{
150150
/// Creates a new non-scrolling area.
151-
pubfnnew(ctx:&UI,area_handler:Box<AreaHandler>) ->Area{
151+
pubfnnew(ctx:&UI,area_handler:Box<dynAreaHandler>) ->Area{
152152
unsafe{
153153
letmut rust_area_handler =RustAreaHandler::new(ctx, area_handler);
154154
let area =Area::from_raw(ui_sys::uiNewArea(
@@ -162,7 +162,7 @@ impl Area {
162162
/// Creates a new scrolling area.
163163
pubfnnew_scrolling(
164164
ctx:&UI,
165-
area_handler:Box<AreaHandler>,
165+
area_handler:Box<dynAreaHandler>,
166166
width:i64,
167167
height:i64,
168168
) ->Area{

‎iui/src/controls/basic.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -51,19 +51,19 @@ impl Button {
5151
/// Run the given callback when the button is clicked.
5252
pubfnon_clicked<'ctx,F:FnMut(&mutButton) +'ctx>(&mutself,_ctx:&'ctxUI,callback:F){
5353
unsafe{
54-
letmut data:Box<Box<FnMut(&mutButton)>> =Box::new(Box::new(callback));
54+
letmut data:Box<Box<dynFnMut(&mutButton)>> =Box::new(Box::new(callback));
5555
ui_sys::uiButtonOnClicked(
5656
self.uiButton,
5757
Some(c_callback),
58-
&mut*dataas*mutBox<FnMut(&mutButton)>as*mutc_void,
58+
&mut*dataas*mutBox<dynFnMut(&mutButton)>as*mutc_void,
5959
);
6060
mem::forget(data);
6161
}
6262

6363
extern"C"fnc_callback(button:*mutuiButton,data:*mutc_void){
6464
unsafe{
6565
letmut button =Button{uiButton: button};
66-
mem::transmute::<*mutc_void,&mutBox<FnMut(&mutButton)>>(data)(&mut button)
66+
mem::transmute::<*mutc_void,&mutBox<dynFnMut(&mutButton)>>(data)(&mut button)
6767
}
6868
}
6969
}

‎iui/src/controls/entry.rs

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -65,19 +65,19 @@ impl NumericEntry for Spinbox {
6565

6666
fnon_changed<'ctx,F:FnMut(i32) +'ctx>(&mutself,_ctx:&'ctxUI,callback:F){
6767
unsafe{
68-
letmut data:Box<Box<FnMut(i32)>> =Box::new(Box::new(callback));
68+
letmut data:Box<Box<dynFnMut(i32)>> =Box::new(Box::new(callback));
6969
ui_sys::uiSpinboxOnChanged(
7070
self.uiSpinbox,
7171
Some(c_callback),
72-
&mut*dataas*mutBox<FnMut(i32)>as*mutc_void,
72+
&mut*dataas*mutBox<dynFnMut(i32)>as*mutc_void,
7373
);
7474
mem::forget(data);
7575
}
7676

7777
extern"C"fnc_callback(spinbox:*mutuiSpinbox,data:*mutc_void){
7878
unsafe{
7979
let val = ui_sys::uiSpinboxValue(spinbox);
80-
mem::transmute::<*mutc_void,&mutBox<FnMut(i32)>>(data)(val);
80+
mem::transmute::<*mutc_void,&mutBox<dynFnMut(i32)>>(data)(val);
8181
}
8282
}
8383
}
@@ -94,19 +94,19 @@ impl NumericEntry for Slider {
9494

9595
fnon_changed<'ctx,F:FnMut(i32) +'ctx>(&mutself,_ctx:&'ctxUI,callback:F){
9696
unsafe{
97-
letmut data:Box<Box<FnMut(i32)>> =Box::new(Box::new(callback));
97+
letmut data:Box<Box<dynFnMut(i32)>> =Box::new(Box::new(callback));
9898
ui_sys::uiSliderOnChanged(
9999
self.uiSlider,
100100
Some(c_callback),
101-
&mut*dataas*mutBox<FnMut(i32)>as*mutc_void,
101+
&mut*dataas*mutBox<dynFnMut(i32)>as*mutc_void,
102102
);
103103
mem::forget(data);
104104
}
105105

106106
extern"C"fnc_callback(slider:*mutuiSlider,data:*mutc_void){
107107
unsafe{
108108
let val = ui_sys::uiSliderValue(slider);
109-
mem::transmute::<*mutc_void,&mutBox<FnMut(i32)>>(data)(val);
109+
mem::transmute::<*mutc_void,&mutBox<dynFnMut(i32)>>(data)(val);
110110
}
111111
}
112112
}
@@ -163,11 +163,11 @@ impl TextEntry for Entry {
163163

164164
fnon_changed<'ctx,F:FnMut(String) +'ctx>(&mutself,_ctx:&'ctxUI,callback:F){
165165
unsafe{
166-
letmut data:Box<Box<FnMut(String)>> =Box::new(Box::new(callback));
166+
letmut data:Box<Box<dynFnMut(String)>> =Box::new(Box::new(callback));
167167
ui_sys::uiEntryOnChanged(
168168
self.uiEntry,
169169
Some(c_callback),
170-
&mut*dataas*mutBox<FnMut(String)>as*mutc_void,
170+
&mut*dataas*mutBox<dynFnMut(String)>as*mutc_void,
171171
);
172172
mem::forget(data);
173173
}
@@ -177,7 +177,7 @@ impl TextEntry for Entry {
177177
let string =CStr::from_ptr(ui_sys::uiEntryText(entry))
178178
.to_string_lossy()
179179
.into_owned();
180-
mem::transmute::<*mutc_void,&mutBox<FnMut(String)>>(data)(string);
180+
mem::transmute::<*mutc_void,&mutBox<dynFnMut(String)>>(data)(string);
181181
mem::forget(entry);
182182
}
183183
}
@@ -199,11 +199,11 @@ impl TextEntry for PasswordEntry {
199199

200200
fnon_changed<'ctx,F:FnMut(String) +'ctx>(&mutself,_ctx:&'ctxUI,callback:F){
201201
unsafe{
202-
letmut data:Box<Box<FnMut(String)>> =Box::new(Box::new(callback));
202+
letmut data:Box<Box<dynFnMut(String)>> =Box::new(Box::new(callback));
203203
ui_sys::uiEntryOnChanged(
204204
self.uiEntry,
205205
Some(c_callback),
206-
&mut*dataas*mutBox<FnMut(String)>as*mutc_void,
206+
&mut*dataas*mutBox<dynFnMut(String)>as*mutc_void,
207207
);
208208
mem::forget(data);
209209
}
@@ -213,7 +213,7 @@ impl TextEntry for PasswordEntry {
213213
let string =CStr::from_ptr(ui_sys::uiEntryText(entry))
214214
.to_string_lossy()
215215
.into_owned();
216-
mem::transmute::<*mutc_void,&mutBox<FnMut(String)>>(data)(string);
216+
mem::transmute::<*mutc_void,&mutBox<dynFnMut(String)>>(data)(string);
217217
mem::forget(entry);
218218
}
219219
}
@@ -235,11 +235,11 @@ impl TextEntry for MultilineEntry {
235235

236236
fnon_changed<'ctx,F:FnMut(String) +'ctx>(&mutself,_ctx:&'ctxUI,callback:F){
237237
unsafe{
238-
letmut data:Box<Box<FnMut(String)>> =Box::new(Box::new(callback));
238+
letmut data:Box<Box<dynFnMut(String)>> =Box::new(Box::new(callback));
239239
ui_sys::uiMultilineEntryOnChanged(
240240
self.uiMultilineEntry,
241241
Some(c_callback),
242-
&mut*dataas*mutBox<FnMut(String)>as*mutc_void,
242+
&mut*dataas*mutBox<dynFnMut(String)>as*mutc_void,
243243
);
244244
mem::forget(data);
245245
}
@@ -249,7 +249,7 @@ impl TextEntry for MultilineEntry {
249249
let string =CStr::from_ptr(ui_sys::uiMultilineEntryText(entry))
250250
.to_string_lossy()
251251
.into_owned();
252-
mem::transmute::<*mutc_void,&mutBox<FnMut(String)>>(data)(string);
252+
mem::transmute::<*mutc_void,&mutBox<dynFnMut(String)>>(data)(string);
253253
mem::forget(entry);
254254
}
255255
}
@@ -287,19 +287,19 @@ impl Combobox {
287287

288288
pubfnon_selected<F:FnMut(i32)>(&mutself,_ctx:&UI,callback:F){
289289
unsafe{
290-
letmut data:Box<Box<FnMut(i32)>> =Box::new(Box::new(callback));
290+
letmut data:Box<Box<dynFnMut(i32)>> =Box::new(Box::new(callback));
291291
ui_sys::uiComboboxOnSelected(
292292
self.uiCombobox,
293293
Some(c_callback),
294-
&mut*dataas*mutBox<FnMut(i32)>as*mutc_void,
294+
&mut*dataas*mutBox<dynFnMut(i32)>as*mutc_void,
295295
);
296296
mem::forget(data);
297297
}
298298

299299
extern"C"fnc_callback(combobox:*mutuiCombobox,data:*mutc_void){
300300
unsafe{
301301
let val = ui_sys::uiComboboxSelected(combobox);
302-
mem::transmute::<*mutc_void,&mutBox<FnMut(i32)>>(data)(val);
302+
mem::transmute::<*mutc_void,&mutBox<dynFnMut(i32)>>(data)(val);
303303
}
304304
}
305305
}
@@ -328,19 +328,19 @@ impl Checkbox {
328328

329329
pubfnon_toggled<F:FnMut(bool)>(&mutself,_ctx:&UI,callback:F){
330330
unsafe{
331-
letmut data:Box<Box<FnMut(bool)>> =Box::new(Box::new(callback));
331+
letmut data:Box<Box<dynFnMut(bool)>> =Box::new(Box::new(callback));
332332
ui_sys::uiCheckboxOnToggled(
333333
self.uiCheckbox,
334334
Some(c_callback),
335-
&mut*dataas*mutBox<FnMut(bool)>as*mutc_void,
335+
&mut*dataas*mutBox<dynFnMut(bool)>as*mutc_void,
336336
);
337337
mem::forget(data);
338338
}
339339

340340
extern"C"fnc_callback(checkbox:*mutuiCheckbox,data:*mutc_void){
341341
unsafe{
342342
let val = ui_sys::uiCheckboxChecked(checkbox) !=0;
343-
mem::transmute::<*mutc_void,&mutBox<FnMut(bool)>>(data)(val);
343+
mem::transmute::<*mutc_void,&mutBox<dynFnMut(bool)>>(data)(val);
344344
}
345345
}
346346
}
@@ -372,19 +372,19 @@ impl RadioButtons {
372372

373373
pubfnon_selected<'ctx,F:FnMut(i32) +'ctx>(&self,_ctx:&'ctxUI,callback:F){
374374
unsafe{
375-
letmut data:Box<Box<FnMut(i32)>> =Box::new(Box::new(callback));
375+
letmut data:Box<Box<dynFnMut(i32)>> =Box::new(Box::new(callback));
376376
ui_sys::uiRadioButtonsOnSelected(
377377
self.uiRadioButtons,
378378
Some(c_callback),
379-
&mut*dataas*mutBox<FnMut(i32)>as*mutc_void,
379+
&mut*dataas*mutBox<dynFnMut(i32)>as*mutc_void,
380380
);
381381
mem::forget(data);
382382
}
383383

384384
extern"C"fnc_callback(radio_buttons:*mutuiRadioButtons,data:*mutc_void){
385385
unsafe{
386386
let val = ui_sys::uiRadioButtonsSelected(radio_buttons);
387-
mem::transmute::<*mutc_void,&mutBox<FnMut(i32)>>(data)(val);
387+
mem::transmute::<*mutc_void,&mutBox<dynFnMut(i32)>>(data)(val);
388388
}
389389
}
390390
}

‎iui/src/controls/window.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -89,22 +89,22 @@ impl Window {
8989
/// the application when the window is closed.
9090
pubfnon_closing<'ctx,F:FnMut(&mutWindow) +'ctx>(&mutself,_ctx:&'ctxUI,mutcallback:F){
9191
unsafe{
92-
letmut data:Box<Box<FnMut(&mutWindow) ->bool>> =Box::new(Box::new(|window|{
92+
letmut data:Box<Box<dynFnMut(&mutWindow) ->bool>> =Box::new(Box::new(|window|{
9393
callback(window);
9494
false
9595
}));
9696
ui_sys::uiWindowOnClosing(
9797
self.uiWindow,
9898
Some(c_callback),
99-
&mut*dataas*mutBox<FnMut(&mutWindow) ->bool>as*mutc_void,
99+
&mut*dataas*mutBox<dynFnMut(&mutWindow) ->bool>as*mutc_void,
100100
);
101101
mem::forget(data);
102102
}
103103

104104
extern"C"fnc_callback(window:*mutuiWindow,data:*mutc_void) ->i32{
105105
unsafe{
106106
letmut window =Window{uiWindow: window};
107-
mem::transmute::<*mutc_void,Box<Box<FnMut(&mutWindow) ->bool>>>(data)(
107+
mem::transmute::<*mutc_void,Box<Box<dynFnMut(&mutWindow) ->bool>>>(data)(
108108
&mut window,
109109
)asi32
110110
}

‎iui/src/menus.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -48,11 +48,11 @@ impl MenuItem {
4848
/// Sets the function to be executed when the item is clicked/selected.
4949
pubfnon_clicked<'ctx,F:FnMut(&MenuItem,&Window) +'ctx>(&self,_ctx:&'ctxUI,callback:F){
5050
unsafe{
51-
letmut data:Box<Box<FnMut(&MenuItem,&Window)>> =Box::new(Box::new(callback));
51+
letmut data:Box<Box<dynFnMut(&MenuItem,&Window)>> =Box::new(Box::new(callback));
5252
ui_sys::uiMenuItemOnClicked(
5353
self.ui_menu_item,
5454
Some(c_callback),
55-
&mut*dataas*mutBox<FnMut(&MenuItem,&Window)>as*mutc_void,
55+
&mut*dataas*mutBox<dynFnMut(&MenuItem,&Window)>as*mutc_void,
5656
);
5757
mem::forget(data);
5858
}
@@ -67,7 +67,7 @@ impl MenuItem {
6767
ui_menu_item: menu_item,
6868
};
6969
let window =Window::from_raw(window);
70-
mem::transmute::<*mutc_void,&mutBox<FnMut(&MenuItem,&Window)>>(data)(
70+
mem::transmute::<*mutc_void,&mutBox<dynFnMut(&MenuItem,&Window)>>(data)(
7171
&menu_item,&window,
7272
);
7373
mem::forget(window);

‎iui/src/ui.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -135,10 +135,10 @@ impl UI {
135135
/// ```
136136
pubfnqueue_main<'ctx,F:FnMut() +'ctx>(&'ctxself,callback:F){
137137
unsafe{
138-
letmut data:Box<Box<FnMut()>> =Box::new(Box::new(callback));
138+
letmut data:Box<Box<dynFnMut()>> =Box::new(Box::new(callback));
139139
ui_sys::uiQueueMain(
140140
None,
141-
&mut*dataas*mutBox<FnMut()>as*mutc_void,
141+
&mut*dataas*mutBox<dynFnMut()>as*mutc_void,
142142
);
143143
mem::forget(data);
144144
}
@@ -147,10 +147,10 @@ impl UI {
147147
/// Set a callback to be run when the application quits.
148148
pubfnon_should_quit<'ctx,F:FnMut() +'ctx>(&'ctxself,callback:F){
149149
unsafe{
150-
letmut data:Box<Box<FnMut()>> =Box::new(Box::new(callback));
150+
letmut data:Box<Box<dynFnMut()>> =Box::new(Box::new(callback));
151151
ui_sys::uiOnShouldQuit(
152152
None,
153-
&mut*dataas*mutBox<FnMut()>as*mutc_void,
153+
&mut*dataas*mutBox<dynFnMut()>as*mutc_void,
154154
);
155155
mem::forget(data);
156156
}
@@ -167,7 +167,7 @@ pub struct EventLoop<'s> {
167167
// This PhantomData prevents UIToken from being Send and Sync
168168
_pd:PhantomData<*mut()>,
169169
// This callback gets run during "run_delay" loops.
170-
callback:Option<Box<FnMut() +'s>>,
170+
callback:Option<Box<dynFnMut() +'s>>,
171171
}
172172

173173
impl<'s>EventLoop<'s>{

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp