Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
OpenDAS
dlib
Commits
0fae5ae6
Commit
0fae5ae6
authored
Jun 20, 2011
by
Davis King
Browse files
Added an event handler for when the user selects an overlay rectangle.
parent
92ac70dc
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
61 additions
and
2 deletions
+61
-2
dlib/gui_widgets/widgets.cpp
dlib/gui_widgets/widgets.cpp
+2
-0
dlib/gui_widgets/widgets.h
dlib/gui_widgets/widgets.h
+21
-0
dlib/gui_widgets/widgets_abstract.h
dlib/gui_widgets/widgets_abstract.h
+38
-2
No files found.
dlib/gui_widgets/widgets.cpp
View file @
0fae5ae6
...
@@ -5922,6 +5922,8 @@ namespace dlib
...
@@ -5922,6 +5922,8 @@ namespace dlib
{
{
rect_is_selected
=
true
;
rect_is_selected
=
true
;
selected_rect
=
best_idx
;
selected_rect
=
best_idx
;
if
(
orect_selected_event_handler
.
is_set
())
orect_selected_event_handler
(
overlay_rects
[
best_idx
]);
}
}
if
(
rect_is_selected
||
rect_was_selected
)
if
(
rect_is_selected
||
rect_was_selected
)
...
...
dlib/gui_widgets/widgets.h
View file @
0fae5ae6
...
@@ -3341,6 +3341,26 @@ namespace dlib
...
@@ -3341,6 +3341,26 @@ namespace dlib
event_handler
=
event_handler_
;
event_handler
=
event_handler_
;
}
}
template
<
typename
T
>
void
set_overlay_rect_selected_handler
(
T
&
object
,
void
(
T
::*
event_handler_
)(
const
overlay_rect
&
orect
)
)
{
auto_mutex
M
(
m
);
orect_selected_event_handler
=
make_mfp
(
object
,
event_handler_
);
}
void
set_overlay_rects_changed_handler
(
const
any_function
<
void
(
const
overlay_rect
&
orect
)
>&
event_handler_
)
{
auto_mutex
M
(
m
);
orect_selected_event_handler
=
event_handler_
;
}
private:
private:
...
@@ -3402,6 +3422,7 @@ namespace dlib
...
@@ -3402,6 +3422,7 @@ namespace dlib
rgb_alpha_pixel
default_rect_color
;
rgb_alpha_pixel
default_rect_color
;
std
::
string
default_rect_label
;
std
::
string
default_rect_label
;
any_function
<
void
()
>
event_handler
;
any_function
<
void
()
>
event_handler
;
any_function
<
void
(
const
overlay_rect
&
orect
)
>
orect_selected_event_handler
;
// restricted functions
// restricted functions
image_display
(
image_display
&
);
// copy constructor
image_display
(
image_display
&
);
// copy constructor
...
...
dlib/gui_widgets/widgets_abstract.h
View file @
0fae5ae6
...
@@ -2011,7 +2011,7 @@ namespace dlib
...
@@ -2011,7 +2011,7 @@ namespace dlib
>
>
void
set_graph_modified_handler
(
void
set_graph_modified_handler
(
T
&
object
,
T
&
object
,
void
(
T
::*
event_handler
_
)()
void
(
T
::*
event_handler
)()
);
);
/*!
/*!
requires
requires
...
@@ -2550,7 +2550,7 @@ namespace dlib
...
@@ -2550,7 +2550,7 @@ namespace dlib
>
>
void
set_overlay_rects_changed_handler
(
void
set_overlay_rects_changed_handler
(
T
&
object
,
T
&
object
,
void
(
T
::*
event_handler
_
)()
void
(
T
::*
event_handler
)()
);
);
/*
/*
requires
requires
...
@@ -2579,6 +2579,42 @@ namespace dlib
...
@@ -2579,6 +2579,42 @@ namespace dlib
- std::bad_alloc
- std::bad_alloc
*/
*/
template
<
typename
T
>
void
set_overlay_rect_selected_handler
(
T
&
object
,
void
(
T
::*
event_handler
)(
const
overlay_rect
&
orect
)
);
/*
requires
- event_handler is a valid pointer to a member function in T
ensures
- The event_handler function is called on object when the user selects
an overlay rectangle by double clicking on it. The selected rectangle
will be passed to event_handler().
- any previous calls to this function are overridden by this new call.
(i.e. you can only have one event handler associated with this
event at a time)
throws
- std::bad_alloc
*/
void
set_overlay_rects_changed_handler
(
const
any_function
<
void
(
const
overlay_rect
&
orect
)
>&
event_handler
);
/*
ensures
- The event_handler function is called when the user selects an overlay
rectangle by double clicking on it. The selected rectangle will be
passed to event_handler().
- any previous calls to this function are overridden by this new call.
(i.e. you can only have one event handler associated with this
event at a time)
throws
- std::bad_alloc
*/
private:
private:
// restricted functions
// restricted functions
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment