mirror of
https://github.com/MidnightCommander/mc
synced 2025-01-18 09:19:24 +03:00
Ticket #1483: Panel scrollbar
move dlg_broadcast_msg_to() function to public visibility scope Signed-off-by: Slava Zanko <slavazanko@gmail.com>
This commit is contained in:
parent
7abd8a1297
commit
d84b98af3b
@ -111,47 +111,6 @@ dlg_widget_prev (WDialog * h, GList * l)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* --------------------------------------------------------------------------------------------- */
|
/* --------------------------------------------------------------------------------------------- */
|
||||||
/**
|
|
||||||
* broadcast a message to all the widgets in a dialog that have
|
|
||||||
* the options set to flags. If flags is zero, the message is sent
|
|
||||||
* to all widgets.
|
|
||||||
*/
|
|
||||||
|
|
||||||
static void
|
|
||||||
dlg_broadcast_msg_to (WDialog * h, widget_msg_t msg, gboolean reverse, int flags)
|
|
||||||
{
|
|
||||||
GList *p, *first;
|
|
||||||
|
|
||||||
if (h->widgets == NULL)
|
|
||||||
return;
|
|
||||||
|
|
||||||
if (h->current == NULL)
|
|
||||||
h->current = h->widgets;
|
|
||||||
|
|
||||||
if (reverse)
|
|
||||||
p = dlg_widget_prev (h, h->current);
|
|
||||||
else
|
|
||||||
p = dlg_widget_next (h, h->current);
|
|
||||||
|
|
||||||
first = p;
|
|
||||||
|
|
||||||
do
|
|
||||||
{
|
|
||||||
Widget *w = WIDGET (p->data);
|
|
||||||
|
|
||||||
if (reverse)
|
|
||||||
p = dlg_widget_prev (h, p);
|
|
||||||
else
|
|
||||||
p = dlg_widget_next (h, p);
|
|
||||||
|
|
||||||
if ((flags == 0) || ((flags & w->options) != 0))
|
|
||||||
send_message (w, NULL, msg, 0, NULL);
|
|
||||||
}
|
|
||||||
while (first != p);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* --------------------------------------------------------------------------------------------- */
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Read histories from the ${XDG_CACHE_HOME}/mc/history file
|
* Read histories from the ${XDG_CACHE_HOME}/mc/history file
|
||||||
*/
|
*/
|
||||||
@ -1331,3 +1290,52 @@ dlg_get_title (const WDialog * h, size_t len)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* --------------------------------------------------------------------------------------------- */
|
/* --------------------------------------------------------------------------------------------- */
|
||||||
|
/**
|
||||||
|
* broadcast a message to all the widgets in a dialog that have
|
||||||
|
* the options set to flags. If flags is zero, the message is sent
|
||||||
|
* to all widgets.
|
||||||
|
*/
|
||||||
|
|
||||||
|
cb_ret_t
|
||||||
|
dlg_broadcast_msg_to (WDialog * h, widget_msg_t msg, gboolean reverse, int flags)
|
||||||
|
{
|
||||||
|
GList *p, *first;
|
||||||
|
cb_ret_t ret = MSG_NOT_HANDLED;
|
||||||
|
|
||||||
|
if (h->widgets == NULL)
|
||||||
|
return ret;
|
||||||
|
|
||||||
|
if (h->current == NULL)
|
||||||
|
h->current = h->widgets;
|
||||||
|
|
||||||
|
if (reverse)
|
||||||
|
p = dlg_widget_prev (h, h->current);
|
||||||
|
else
|
||||||
|
p = dlg_widget_next (h, h->current);
|
||||||
|
|
||||||
|
first = p;
|
||||||
|
|
||||||
|
do
|
||||||
|
{
|
||||||
|
Widget *w = WIDGET (p->data);
|
||||||
|
|
||||||
|
if (reverse)
|
||||||
|
p = dlg_widget_prev (h, p);
|
||||||
|
else
|
||||||
|
p = dlg_widget_next (h, p);
|
||||||
|
|
||||||
|
if ((flags == 0) || ((flags & w->options) != 0))
|
||||||
|
{
|
||||||
|
cb_ret_t widget_ret;
|
||||||
|
|
||||||
|
widget_ret = send_message (w, NULL, msg, 0, NULL);
|
||||||
|
if (ret == MSG_NOT_HANDLED && widget_ret != MSG_NOT_HANDLED)
|
||||||
|
ret = widget_ret;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
while (first != p);
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* --------------------------------------------------------------------------------------------- */
|
||||||
|
@ -160,6 +160,8 @@ void dlg_broadcast_msg (WDialog * h, widget_msg_t message);
|
|||||||
/* Default callback for dialogs */
|
/* Default callback for dialogs */
|
||||||
cb_ret_t dlg_default_callback (Widget * w, Widget * sender, widget_msg_t msg, int parm, void *data);
|
cb_ret_t dlg_default_callback (Widget * w, Widget * sender, widget_msg_t msg, int parm, void *data);
|
||||||
|
|
||||||
|
cb_ret_t dlg_broadcast_msg_to (WDialog * h, widget_msg_t msg, gboolean reverse, int flags);
|
||||||
|
|
||||||
/* Default paint routine for dialogs */
|
/* Default paint routine for dialogs */
|
||||||
void dlg_default_repaint (WDialog * h);
|
void dlg_default_repaint (WDialog * h);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user