Removed jwidget_select/deselect/set_selected/is_selected/is_deselected functions.

This commit is contained in:
David Capello 2010-07-03 15:03:26 -03:00
parent ee3e04386b
commit 447f6438a4
27 changed files with 153 additions and 194 deletions

View File

@ -92,8 +92,7 @@ void AdvancedModeCommand::execute(Context* context)
window->open_window_fg(); window->open_window_fg();
set_config_bool("AdvancedMode", "Warning", set_config_bool("AdvancedMode", "Warning", !donot_show->isSelected());
!jwidget_is_selected(donot_show));
} }
} }
} }

View File

@ -84,10 +84,7 @@ void ConfigureScreen::execute(Context* context)
load_resolutions(resolution, color_depth, pixel_scale); load_resolutions(resolution, color_depth, pixel_scale);
if (is_windowed_mode()) fullscreen->setSelected(!is_windowed_mode());
jwidget_deselect(fullscreen);
else
jwidget_select(fullscreen);
window->open_window_fg(); window->open_window_fg();
@ -96,8 +93,8 @@ void ConfigureScreen::execute(Context* context)
m_newMode.setHeight(m_resolutions[resolution->getSelectedItem()].second); m_newMode.setHeight(m_resolutions[resolution->getSelectedItem()].second);
m_newMode.setDepth(m_colordepths[color_depth->getSelectedItem()]); m_newMode.setDepth(m_colordepths[color_depth->getSelectedItem()]);
m_newMode.setScaling(m_pixelscale[pixel_scale->getSelectedItem()]); m_newMode.setScaling(m_pixelscale[pixel_scale->getSelectedItem()]);
m_newMode.setCard(jwidget_is_selected(fullscreen) ? GFX_AUTODETECT_FULLSCREEN: m_newMode.setCard(fullscreen->isSelected() ? GFX_AUTODETECT_FULLSCREEN:
GFX_AUTODETECT_WINDOWED); GFX_AUTODETECT_WINDOWED);
// Setup graphics mode // Setup graphics mode
if (currentGfxModeGuard.tryGfxMode(m_newMode)) { if (currentGfxModeGuard.tryGfxMode(m_newMode)) {

View File

@ -216,15 +216,15 @@ void ConfigureTools::execute(Context* context)
} }
if (settings->getTiledMode() != TILED_NONE) { if (settings->getTiledMode() != TILED_NONE) {
jwidget_select(tiled); tiled->setSelected(true);
if (settings->getTiledMode() & TILED_X_AXIS) jwidget_select(tiled_x); if (settings->getTiledMode() & TILED_X_AXIS) tiled_x->setSelected(true);
if (settings->getTiledMode() & TILED_Y_AXIS) jwidget_select(tiled_y); if (settings->getTiledMode() & TILED_Y_AXIS) tiled_y->setSelected(true);
} }
if (settings->getSnapToGrid()) jwidget_select(snap_to_grid); if (settings->getSnapToGrid()) snap_to_grid->setSelected(true);
if (settings->getGridVisible()) jwidget_select(view_grid); if (settings->getGridVisible()) view_grid->setSelected(true);
if (settings->getPixelGridVisible()) jwidget_select(pixel_grid); if (settings->getPixelGridVisible()) pixel_grid->setSelected(true);
if (settings->getUseOnionskin()) jwidget_select(check_onionskin); if (settings->getUseOnionskin()) check_onionskin->setSelected(true);
if (first_time) { if (first_time) {
// Append children // Append children
@ -400,7 +400,7 @@ static bool air_speed_slider_change_hook(JWidget widget, void *data)
static bool tiled_check_change_hook(JWidget widget, void *data) static bool tiled_check_change_hook(JWidget widget, void *data)
{ {
bool flag = jwidget_is_selected(widget); bool flag = widget->isSelected();
UIContext::instance()->getSettings()->setTiledMode(flag ? TILED_BOTH: TILED_NONE); UIContext::instance()->getSettings()->setTiledMode(flag ? TILED_BOTH: TILED_NONE);
@ -414,7 +414,7 @@ static bool tiled_xy_check_change_hook(JWidget widget, void *data)
int tiled_axis = (int)((size_t)data); int tiled_axis = (int)((size_t)data);
int tiled_mode = UIContext::instance()->getSettings()->getTiledMode(); int tiled_mode = UIContext::instance()->getSettings()->getTiledMode();
if (jwidget_is_selected(widget)) if (widget->isSelected())
tiled_mode |= tiled_axis; tiled_mode |= tiled_axis;
else else
tiled_mode &= ~tiled_axis; tiled_mode &= ~tiled_axis;
@ -427,20 +427,20 @@ static bool tiled_xy_check_change_hook(JWidget widget, void *data)
static bool snap_to_grid_check_change_hook(JWidget widget, void *data) static bool snap_to_grid_check_change_hook(JWidget widget, void *data)
{ {
UIContext::instance()->getSettings()->setSnapToGrid(jwidget_is_selected(widget)); UIContext::instance()->getSettings()->setSnapToGrid(widget->isSelected());
return false; return false;
} }
static bool view_grid_check_change_hook(JWidget widget, void *data) static bool view_grid_check_change_hook(JWidget widget, void *data)
{ {
UIContext::instance()->getSettings()->setGridVisible(jwidget_is_selected(widget)); UIContext::instance()->getSettings()->setGridVisible(widget->isSelected());
refresh_all_editors(); refresh_all_editors();
return false; return false;
} }
static bool pixel_grid_check_change_hook(JWidget widget, void *data) static bool pixel_grid_check_change_hook(JWidget widget, void *data)
{ {
UIContext::instance()->getSettings()->setPixelGridVisible(jwidget_is_selected(widget)); UIContext::instance()->getSettings()->setPixelGridVisible(widget->isSelected());
refresh_all_editors(); refresh_all_editors();
return false; return false;
} }
@ -475,7 +475,7 @@ static bool set_grid_button_select_hook(JWidget widget, void *data)
static bool onionskin_check_change_hook(JWidget widget, void *data) static bool onionskin_check_change_hook(JWidget widget, void *data)
{ {
UIContext::instance()->getSettings()->setUseOnionskin(jwidget_is_selected(widget)); UIContext::instance()->getSettings()->setUseOnionskin(widget->isSelected());
refresh_all_editors(); refresh_all_editors();
return false; return false;
} }

View File

@ -77,18 +77,17 @@ void DuplicateSpriteCommand::execute(Context* context)
dst_name->setText(buf); dst_name->setText(buf);
if (get_config_bool("DuplicateSprite", "Flatten", false)) if (get_config_bool("DuplicateSprite", "Flatten", false))
jwidget_select(flatten); flatten->setSelected(true);
/* open the window */ /* open the window */
window->open_window_fg(); window->open_window_fg();
if (window->get_killer() == jwidget_find_name(window, "ok")) { if (window->get_killer() == jwidget_find_name(window, "ok")) {
set_config_bool("DuplicateSprite", "Flatten", set_config_bool("DuplicateSprite", "Flatten", flatten->isSelected());
jwidget_is_selected(flatten));
// make a copy of the current sprite // make a copy of the current sprite
Sprite *sprite_copy; Sprite *sprite_copy;
if (jwidget_is_selected(flatten)) if (flatten->isSelected())
sprite_copy = Sprite::createFlattenCopy(*sprite); sprite_copy = Sprite::createFlattenCopy(*sprite);
else else
sprite_copy = new Sprite(*sprite); sprite_copy = new Sprite(*sprite);

View File

@ -107,9 +107,9 @@ void NewFileCommand::execute(Context* context)
// Select image-type // Select image-type
switch (imgtype) { switch (imgtype) {
case IMAGE_RGB: jwidget_select(radio1); break; case IMAGE_RGB: radio1->setSelected(true); break;
case IMAGE_GRAYSCALE: jwidget_select(radio2); break; case IMAGE_GRAYSCALE: radio2->setSelected(true); break;
case IMAGE_INDEXED: jwidget_select(radio3); break; case IMAGE_INDEXED: radio3->setSelected(true); break;
} }
// Select background color // Select background color
@ -122,9 +122,9 @@ void NewFileCommand::execute(Context* context)
bool ok = false; bool ok = false;
// Get the options // Get the options
if (jwidget_is_selected(radio1)) imgtype = IMAGE_RGB; if (radio1->isSelected()) imgtype = IMAGE_RGB;
else if (jwidget_is_selected(radio2)) imgtype = IMAGE_GRAYSCALE; else if (radio2->isSelected()) imgtype = IMAGE_GRAYSCALE;
else if (jwidget_is_selected(radio3)) imgtype = IMAGE_INDEXED; else if (radio3->isSelected()) imgtype = IMAGE_INDEXED;
w = width->getTextInt(); w = width->getTextInt();
h = height->getTextInt(); h = height->getTextInt();

View File

@ -108,13 +108,13 @@ void OptionsCommand::execute(Context* context)
// Others // Others
if (get_config_bool("Options", "MoveClick2", false)) if (get_config_bool("Options", "MoveClick2", false))
jwidget_select(move_click2); move_click2->setSelected(true);
if (get_config_bool("Options", "DrawClick2", false)) if (get_config_bool("Options", "DrawClick2", false))
jwidget_select(draw_click2); draw_click2->setSelected(true);
if (get_config_bool("Options", "MoveSmooth", true)) if (get_config_bool("Options", "MoveSmooth", true))
jwidget_select(check_smooth); check_smooth->setSelected(true);
// Checked background size // Checked background size
checked_bg->addItem("16x16"); checked_bg->addItem("16x16");
@ -125,7 +125,7 @@ void OptionsCommand::execute(Context* context)
// Zoom checked background // Zoom checked background
if (RenderEngine::getCheckedBgZoom()) if (RenderEngine::getCheckedBgZoom())
jwidget_select(checked_bg_zoom); checked_bg_zoom->setSelected(true);
// Checked background colors // Checked background colors
checked_bg_color1 = colorbutton_new(RenderEngine::getCheckedBgColor1(), IMAGE_RGB); checked_bg_color1 = colorbutton_new(RenderEngine::getCheckedBgColor1(), IMAGE_RGB);
@ -150,12 +150,12 @@ void OptionsCommand::execute(Context* context)
context->getSettings()->setGridColor(colorbutton_get_color(grid_color)); context->getSettings()->setGridColor(colorbutton_get_color(grid_color));
context->getSettings()->setPixelGridColor(colorbutton_get_color(pixel_grid_color)); context->getSettings()->setPixelGridColor(colorbutton_get_color(pixel_grid_color));
set_config_bool("Options", "MoveSmooth", jwidget_is_selected(check_smooth)); set_config_bool("Options", "MoveSmooth", check_smooth->isSelected());
set_config_bool("Options", "MoveClick2", jwidget_is_selected(move_click2)); set_config_bool("Options", "MoveClick2", move_click2->isSelected());
set_config_bool("Options", "DrawClick2", jwidget_is_selected(draw_click2)); set_config_bool("Options", "DrawClick2", draw_click2->isSelected());
RenderEngine::setCheckedBgType((RenderEngine::CheckedBgType)checked_bg->getSelectedItem()); RenderEngine::setCheckedBgType((RenderEngine::CheckedBgType)checked_bg->getSelectedItem());
RenderEngine::setCheckedBgZoom(jwidget_is_selected(checked_bg_zoom)); RenderEngine::setCheckedBgZoom(checked_bg_zoom->isSelected());
RenderEngine::setCheckedBgColor1(colorbutton_get_color(checked_bg_color1)); RenderEngine::setCheckedBgColor1(colorbutton_get_color(checked_bg_color1));
RenderEngine::setCheckedBgColor2(colorbutton_get_color(checked_bg_color2)); RenderEngine::setCheckedBgColor2(colorbutton_get_color(checked_bg_color2));
@ -175,7 +175,7 @@ static bool checked_bg_reset_hook(JWidget widget, void *data)
{ {
// Default values // Default values
checked_bg->setSelectedItem((int)RenderEngine::CHECKED_BG_16X16); checked_bg->setSelectedItem((int)RenderEngine::CHECKED_BG_16X16);
jwidget_select(checked_bg_zoom); checked_bg_zoom->setSelected(true);
colorbutton_set_color(checked_bg_color1, color_rgb(128, 128, 128)); colorbutton_set_color(checked_bg_color1, color_rgb(128, 128, 128));
colorbutton_set_color(checked_bg_color2, color_rgb(192, 192, 192)); colorbutton_set_color(checked_bg_color2, color_rgb(192, 192, 192));
return true; return true;

View File

@ -114,7 +114,7 @@ void ColorCurveCommand::execute(Context* context)
target_button_set_target(target_button, effect.target); target_button_set_target(target_button, effect.target);
if (get_config_bool("ColorCurve", "Preview", true)) if (get_config_bool("ColorCurve", "Preview", true))
jwidget_select(check_preview); check_preview->setSelected(true);
jview_attach(view_curve, curve_editor); jview_attach(view_curve, curve_editor);
jwidget_set_min_size(view_curve, 128, 64); jwidget_set_min_size(view_curve, 128, 64);
@ -165,7 +165,7 @@ static bool window_msg_proc(JWidget widget, JMessage msg)
case JI_SIGNAL_CHECK_CHANGE: case JI_SIGNAL_CHECK_CHANGE:
set_config_bool("ColorCurve", "Preview", set_config_bool("ColorCurve", "Preview",
jwidget_is_selected(msg->signal.from)); msg->signal.from->isSelected());
make_preview(); make_preview();
break; break;
} }
@ -175,7 +175,7 @@ static bool window_msg_proc(JWidget widget, JMessage msg)
static void make_preview() static void make_preview()
{ {
if (jwidget_is_selected(check_preview)) if (check_preview->isSelected())
preview_restart(preview); preview_restart(preview);
} }

View File

@ -122,10 +122,10 @@ void ConvolutionMatrixCommand::execute(Context* context)
target_button_set_target(target_button, effect.target); target_button_set_target(target_button, effect.target);
if (get_config_bool("ConvolutionMatrix", "Preview", true)) if (get_config_bool("ConvolutionMatrix", "Preview", true))
jwidget_select(check_preview); check_preview->setSelected(true);
if (context->getSettings()->getTiledMode() != TILED_NONE) if (context->getSettings()->getTiledMode() != TILED_NONE)
jwidget_select(check_tiled); check_tiled->setSelected(true);
jview_attach(view_convmatr, list_convmatr); jview_attach(view_convmatr, list_convmatr);
jwidget_set_min_size(view_convmatr, 128, 64); jwidget_set_min_size(view_convmatr, 128, 64);
@ -200,7 +200,7 @@ static void listbox_select_current_convmatr(JWidget listbox)
} }
if (select_this) { if (select_this) {
jwidget_select(select_this); select_this->setSelected(true);
list_change_hook(listbox, 0); list_change_hook(listbox, 0);
} }
} }
@ -316,16 +316,15 @@ static bool target_change_hook(JWidget widget, void *data)
static bool preview_change_hook(JWidget widget, void *data) static bool preview_change_hook(JWidget widget, void *data)
{ {
set_config_bool("ConvolutionMatrix", "Preview", set_config_bool("ConvolutionMatrix", "Preview", widget->isSelected());
jwidget_is_selected(widget));
make_preview(); make_preview();
return false; return false;
} }
static bool tiled_change_hook(JWidget widget, void *data) static bool tiled_change_hook(JWidget widget, void *data)
{ {
TiledMode tiled = jwidget_is_selected(widget) ? TILED_BOTH: TiledMode tiled = widget->isSelected() ? TILED_BOTH:
TILED_NONE; TILED_NONE;
// TODO avoid UIContext::instance, hold the context in some place // TODO avoid UIContext::instance, hold the context in some place
UIContext::instance()->getSettings()->setTiledMode(tiled); UIContext::instance()->getSettings()->setTiledMode(tiled);
@ -336,7 +335,7 @@ static bool tiled_change_hook(JWidget widget, void *data)
static void make_preview() static void make_preview()
{ {
if (jwidget_is_selected(check_preview)) if (check_preview->isSelected())
preview_restart(preview); preview_restart(preview);
} }

View File

@ -110,10 +110,10 @@ void DespeckleCommand::execute(Context* context)
entry_height->setTextf("%d", get_config_int("Median", "Height", 3)); entry_height->setTextf("%d", get_config_int("Median", "Height", 3));
if (get_config_bool("Median", "Preview", true)) if (get_config_bool("Median", "Preview", true))
jwidget_select(check_preview); check_preview->setSelected(true);
if (context->getSettings()->getTiledMode() != TILED_NONE) if (context->getSettings()->getTiledMode() != TILED_NONE)
jwidget_select(check_tiled); check_tiled->setSelected(true);
jwidget_add_child(box_target, target_button); jwidget_add_child(box_target, target_button);
jwidget_add_child(window, preview); jwidget_add_child(window, preview);
@ -171,15 +171,15 @@ static bool target_change_hook(JWidget widget, void *data)
static bool preview_change_hook(JWidget widget, void *data) static bool preview_change_hook(JWidget widget, void *data)
{ {
set_config_bool("Median", "Preview", jwidget_is_selected(widget)); set_config_bool("Median", "Preview", widget->isSelected());
make_preview(); make_preview();
return false; return false;
} }
static bool tiled_change_hook(JWidget widget, void *data) static bool tiled_change_hook(JWidget widget, void *data)
{ {
TiledMode tiled = jwidget_is_selected(widget) ? TILED_BOTH: TiledMode tiled = widget->isSelected() ? TILED_BOTH:
TILED_NONE; TILED_NONE;
// TODO save context in some place, don't use UIContext directly // TODO save context in some place, don't use UIContext directly
UIContext::instance()->getSettings()->setTiledMode(tiled); UIContext::instance()->getSettings()->setTiledMode(tiled);
@ -198,7 +198,7 @@ static void make_preview()
set_median_size(UIContext::instance()->getSettings()->getTiledMode(), set_median_size(UIContext::instance()->getSettings()->getTiledMode(),
MID(1, w, 32), MID(1, h, 32)); MID(1, w, 32), MID(1, h, 32));
if (jwidget_is_selected (check_preview)) if (check_preview->isSelected())
preview_restart(preview); preview_restart(preview);
} }

View File

@ -97,7 +97,7 @@ void InvertColorCommand::execute(Context* context)
target_button_set_target(target_button, effect.target); target_button_set_target(target_button, effect.target);
if (get_config_bool("InvertColor", "Preview", true)) if (get_config_bool("InvertColor", "Preview", true))
jwidget_select(check_preview); check_preview->setSelected(true);
jwidget_add_child(box_target, target_button); jwidget_add_child(box_target, target_button);
jwidget_add_child(window, preview); jwidget_add_child(window, preview);
@ -138,14 +138,14 @@ static bool target_change_hook(JWidget widget, void *data)
static bool preview_change_hook(JWidget widget, void *data) static bool preview_change_hook(JWidget widget, void *data)
{ {
set_config_bool("InvertColor", "Preview", jwidget_is_selected(widget)); set_config_bool("InvertColor", "Preview", widget->isSelected());
make_preview(); make_preview();
return false; return false;
} }
static void make_preview() static void make_preview()
{ {
if (jwidget_is_selected(check_preview)) if (check_preview->isSelected())
preview_restart(preview); preview_restart(preview);
} }

View File

@ -117,7 +117,7 @@ void ReplaceColorCommand::execute(Context* context)
jslider_set_value(slider_fuzziness, jslider_set_value(slider_fuzziness,
get_config_int("ReplaceColor", "Fuzziness", 0)); get_config_int("ReplaceColor", "Fuzziness", 0));
if (get_config_bool("ReplaceColor", "Preview", true)) if (get_config_bool("ReplaceColor", "Preview", true))
jwidget_select(check_preview); check_preview->setSelected(true);
jwidget_add_child(color_buttons_box, button_color1); jwidget_add_child(color_buttons_box, button_color1);
jwidget_add_child(color_buttons_box, button_color2); jwidget_add_child(color_buttons_box, button_color2);
@ -181,7 +181,7 @@ static bool slider_change_hook(JWidget widget, void *data)
static bool preview_change_hook(JWidget widget, void *data) static bool preview_change_hook(JWidget widget, void *data)
{ {
set_config_bool("ReplaceColor", "Preview", jwidget_is_selected(widget)); set_config_bool("ReplaceColor", "Preview", widget->isSelected());
make_preview(); make_preview();
return false; return false;
} }
@ -200,7 +200,7 @@ static void make_preview()
get_color_for_layer(sprite->getCurrentLayer(), to), get_color_for_layer(sprite->getCurrentLayer(), to),
MID(0, fuzziness, 255)); MID(0, fuzziness, 255));
if (jwidget_is_selected(check_preview)) if (check_preview->isSelected())
preview_restart(preview); preview_restart(preview);
} }

View File

@ -86,7 +86,7 @@ void dialogs_mask_color(Sprite* sprite)
button_cancel = jbutton_new(_("&Cancel")); button_cancel = jbutton_new(_("&Cancel"));
if (get_config_bool("MaskColor", "Preview", true)) if (get_config_bool("MaskColor", "Preview", true))
jwidget_select(check_preview); check_preview->setSelected(true);
button_1->user_data[1] = sprite; button_1->user_data[1] = sprite;
button_2->user_data[1] = sprite; button_2->user_data[1] = sprite;
@ -143,7 +143,7 @@ void dialogs_mask_color(Sprite* sprite)
jslider_get_value(slider_fuzziness)); jslider_get_value(slider_fuzziness));
set_config_bool("MaskColor", "Preview", set_config_bool("MaskColor", "Preview",
jwidget_is_selected(check_preview)); check_preview->isSelected());
} }
/* update boundaries and editors */ /* update boundaries and editors */
@ -203,7 +203,7 @@ static Mask *gen_mask(const Sprite* sprite)
static void mask_preview(Sprite* sprite) static void mask_preview(Sprite* sprite)
{ {
if (jwidget_is_selected(check_preview)) { if (check_preview->isSelected()) {
Mask* mask = gen_mask(sprite); Mask* mask = gen_mask(sprite);
sprite->generateMaskBoundaries(mask); sprite->generateMaskBoundaries(mask);

View File

@ -286,7 +286,7 @@ static bool button_msg_proc(JWidget widget, JMessage msg)
jradio_deselect_group(widget); jradio_deselect_group(widget);
jwidget_signal_off(widget); jwidget_signal_off(widget);
jwidget_select(widget); widget->setSelected(true);
jwidget_signal_on(widget); jwidget_signal_on(widget);
} }
} }
@ -298,8 +298,8 @@ static bool button_msg_proc(JWidget widget, JMessage msg)
if (widget->type == JI_BUTTON) { if (widget->type == JI_BUTTON) {
/* deselect the widget (maybe the user press the key, but /* deselect the widget (maybe the user press the key, but
before release it, changes the focus) */ before release it, changes the focus) */
if (jwidget_is_selected(widget)) if (widget->isSelected())
jwidget_deselect(widget); widget->setSelected(false);
} }
/* TODO theme specific stuff */ /* TODO theme specific stuff */
@ -317,14 +317,14 @@ static bool button_msg_proc(JWidget widget, JMessage msg)
if ((msg->key.scancode == KEY_ENTER) || if ((msg->key.scancode == KEY_ENTER) ||
(msg->key.scancode == KEY_ENTER_PAD) || (msg->key.scancode == KEY_ENTER_PAD) ||
(msg->key.scancode == KEY_SPACE)) { (msg->key.scancode == KEY_SPACE)) {
jwidget_select(widget); widget->setSelected(true);
return true; return true;
} }
} }
/* the underscored letter with Alt */ /* the underscored letter with Alt */
if ((msg->any.shifts & KB_ALT_FLAG) && if ((msg->any.shifts & KB_ALT_FLAG) &&
(jwidget_check_underscored(widget, msg->key.scancode))) { (jwidget_check_underscored(widget, msg->key.scancode))) {
jwidget_select(widget); widget->setSelected(true);
return true; return true;
} }
/* magnetic */ /* magnetic */
@ -337,7 +337,7 @@ static bool button_msg_proc(JWidget widget, JMessage msg)
process them) */ process them) */
jmanager_dispatch_messages(ji_get_default_manager()); jmanager_dispatch_messages(ji_get_default_manager());
jwidget_select(widget); widget->setSelected(true);
return true; return true;
} }
} }
@ -350,19 +350,16 @@ static bool button_msg_proc(JWidget widget, JMessage msg)
((msg->any.shifts & KB_ALT_FLAG) && ((msg->any.shifts & KB_ALT_FLAG) &&
(jwidget_check_underscored(widget, msg->key.scancode)))) { (jwidget_check_underscored(widget, msg->key.scancode)))) {
if (widget->type == JI_CHECK) { if (widget->type == JI_CHECK) {
/* swap the select status */ // Swap the select status
if (jwidget_is_selected(widget)) widget->setSelected(!widget->isSelected());
jwidget_deselect(widget);
else
jwidget_select(widget);
/* signal */ // Signal
jwidget_emit_signal(widget, JI_SIGNAL_CHECK_CHANGE); jwidget_emit_signal(widget, JI_SIGNAL_CHECK_CHANGE);
jwidget_dirty(widget); jwidget_dirty(widget);
} }
else if (widget->type == JI_RADIO) { else if (widget->type == JI_RADIO) {
if (jwidget_is_deselected(widget)) { if (!widget->isSelected()) {
jwidget_select(widget); widget->setSelected(true);
jwidget_emit_signal(widget, JI_SIGNAL_RADIO_CHANGE); jwidget_emit_signal(widget, JI_SIGNAL_RADIO_CHANGE);
} }
} }
@ -375,7 +372,7 @@ static bool button_msg_proc(JWidget widget, JMessage msg)
case JM_KEYRELEASED: case JM_KEYRELEASED:
if (jwidget_is_enabled(widget)) { if (jwidget_is_enabled(widget)) {
if (widget->type == JI_BUTTON) { if (widget->type == JI_BUTTON) {
if (jwidget_is_selected(widget)) { if (widget->isSelected()) {
button_selected_signal(widget); button_selected_signal(widget);
return true; return true;
} }
@ -388,33 +385,30 @@ static bool button_msg_proc(JWidget widget, JMessage msg)
case JI_BUTTON: case JI_BUTTON:
if (jwidget_is_enabled(widget)) { if (jwidget_is_enabled(widget)) {
jwidget_select(widget); widget->setSelected(true);
button->pressed_status = jwidget_is_selected(widget); button->pressed_status = widget->isSelected();
widget->captureMouse(); widget->captureMouse();
} }
return true; return true;
case JI_CHECK: case JI_CHECK:
if (jwidget_is_enabled(widget)) { if (jwidget_is_enabled(widget)) {
if (jwidget_is_selected(widget)) widget->setSelected(!widget->isSelected());
jwidget_deselect(widget);
else
jwidget_select(widget);
button->pressed_status = jwidget_is_selected(widget); button->pressed_status = widget->isSelected();
widget->captureMouse(); widget->captureMouse();
} }
return true; return true;
case JI_RADIO: case JI_RADIO:
if (jwidget_is_enabled(widget)) { if (jwidget_is_enabled(widget)) {
if (jwidget_is_deselected(widget)) { if (!widget->isSelected()) {
jwidget_signal_off(widget); jwidget_signal_off(widget);
jwidget_select(widget); widget->setSelected(true);
jwidget_signal_on(widget); jwidget_signal_on(widget);
button->pressed_status = jwidget_is_selected(widget); button->pressed_status = widget->isSelected();
widget->captureMouse(); widget->captureMouse();
} }
} }
@ -439,8 +433,8 @@ static bool button_msg_proc(JWidget widget, JMessage msg)
break; break;
case JI_RADIO: case JI_RADIO:
jwidget_deselect(widget); widget->setSelected(false);
jwidget_select(widget); widget->setSelected(true);
jwidget_emit_signal(widget, JI_SIGNAL_RADIO_CHANGE); jwidget_emit_signal(widget, JI_SIGNAL_RADIO_CHANGE);
break; break;
} }
@ -454,15 +448,15 @@ static bool button_msg_proc(JWidget widget, JMessage msg)
bool hasMouse = widget->hasMouseOver(); bool hasMouse = widget->hasMouseOver();
// Switch state when the mouse go out // Switch state when the mouse go out
if (( hasMouse && jwidget_is_selected(widget) != button->pressed_status) || if (( hasMouse && widget->isSelected() != button->pressed_status) ||
(!hasMouse && jwidget_is_selected(widget) == button->pressed_status)) { (!hasMouse && widget->isSelected() == button->pressed_status)) {
jwidget_signal_off(widget); jwidget_signal_off(widget);
if (hasMouse) { if (hasMouse) {
jwidget_set_selected(widget, button->pressed_status); widget->setSelected(button->pressed_status);
} }
else { else {
jwidget_set_selected(widget, !button->pressed_status); widget->setSelected(!button->pressed_status);
} }
jwidget_signal_on(widget); jwidget_signal_on(widget);
@ -518,7 +512,7 @@ static void button_request_size(JWidget widget, int *w, int *h)
static void button_selected_signal(JWidget widget) static void button_selected_signal(JWidget widget)
{ {
// deselect // deselect
jwidget_deselect(widget); widget->setSelected(false);
// emit the signal // emit the signal
bool used = jwidget_emit_signal(widget, JI_SIGNAL_BUTTON_SELECT); bool used = jwidget_emit_signal(widget, JI_SIGNAL_BUTTON_SELECT);
@ -558,6 +552,6 @@ static void button_deselect_group(JWidget widget, int radio_group)
if (widget->type == JI_RADIO) { if (widget->type == JI_RADIO) {
if (jradio_get_group(widget) == radio_group) if (jradio_get_group(widget) == radio_group)
jwidget_deselect(widget); widget->setSelected(false);
} }
} }

View File

@ -345,7 +345,7 @@ static JWidget convert_xmlelement_to_widget(TiXmlElement* elem)
jwidget_add_tooltip_text(widget, tooltip); jwidget_add_tooltip_text(widget, tooltip);
if (selected) if (selected)
jwidget_set_selected(widget, selected); widget->setSelected(selected);
if (disabled) if (disabled)
jwidget_disable(widget); jwidget_disable(widget);

View File

@ -450,7 +450,7 @@ static bool enter_to_path_in_entry()
{ {
JWidget listitem = jlistbox_get_selected_child(listbox1); JWidget listitem = jlistbox_get_selected_child(listbox1);
if (listitem) if (listitem)
jwidget_deselect(listitem); listitem->setSelected(false);
jlistbox_select_child(listbox1, reinterpret_cast<JWidget>(link->data)); jlistbox_select_child(listbox1, reinterpret_cast<JWidget>(link->data));
jlistbox_center_scroll(listbox1); jlistbox_center_scroll(listbox1);
break; break;

View File

@ -77,7 +77,7 @@ JWidget jlistbox_get_selected_child(JWidget widget)
{ {
JLink link; JLink link;
JI_LIST_FOR_EACH(widget->children, link) { JI_LIST_FOR_EACH(widget->children, link) {
if (jwidget_is_selected((JWidget)link->data)) if (((JWidget)link->data)->isSelected())
return (JWidget)link->data; return (JWidget)link->data;
} }
return 0; return 0;
@ -89,7 +89,7 @@ int jlistbox_get_selected_index(JWidget widget)
int i = 0; int i = 0;
JI_LIST_FOR_EACH(widget->children, link) { JI_LIST_FOR_EACH(widget->children, link) {
if (jwidget_is_selected((JWidget)link->data)) if (((JWidget)link->data)->isSelected())
return i; return i;
i++; i++;
} }
@ -105,18 +105,18 @@ void jlistbox_select_child(JWidget widget, JWidget listitem)
JI_LIST_FOR_EACH(widget->children, link) { JI_LIST_FOR_EACH(widget->children, link) {
child = (JWidget)link->data; child = (JWidget)link->data;
if (jwidget_is_selected(child)) { if (child->isSelected()) {
if ((listitem) && (child == listitem)) if ((listitem) && (child == listitem))
return; return;
jwidget_deselect(child); child->setSelected(false);
} }
} }
if (listitem) { if (listitem) {
JWidget view = jwidget_get_view(widget); JWidget view = jwidget_get_view(widget);
jwidget_select(listitem); listitem->setSelected(true);
if (view) { if (view) {
JRect vp = jview_get_viewport_position(view); JRect vp = jview_get_viewport_position(view);

View File

@ -140,7 +140,7 @@ static bool slider_msg_proc(JWidget widget, JMessage msg)
if (jwidget_is_disabled(widget)) if (jwidget_is_disabled(widget))
return true; return true;
jwidget_select(widget); widget->setSelected(true);
widget->captureMouse(); widget->captureMouse();
slider_press_x = msg->mouse.x; slider_press_x = msg->mouse.x;
@ -202,7 +202,7 @@ static bool slider_msg_proc(JWidget widget, JMessage msg)
case JM_BUTTONRELEASED: case JM_BUTTONRELEASED:
if (widget->hasCapture()) { if (widget->hasCapture()) {
jwidget_deselect(widget); widget->setSelected(false);
widget->releaseMouse(); widget->releaseMouse();
slider_setcursor(widget); slider_setcursor(widget);
} }

View File

@ -560,7 +560,7 @@ static bool scrollbar_msg_proc(JWidget widget, JMessage msg)
if (ret) if (ret)
return ret; return ret;
jwidget_select(widget); widget->setSelected(true);
widget->captureMouse(); widget->captureMouse();
// continue to JM_MOTION handler... // continue to JM_MOTION handler...
@ -600,7 +600,7 @@ static bool scrollbar_msg_proc(JWidget widget, JMessage msg)
break; break;
case JM_BUTTONRELEASED: case JM_BUTTONRELEASED:
jwidget_deselect(widget); widget->setSelected(false);
widget->releaseMouse(); widget->releaseMouse();
break; break;

View File

@ -452,38 +452,26 @@ void jwidget_disable(JWidget widget)
} }
} }
void jwidget_select(JWidget widget) void Widget::setSelected(bool state)
{ {
assert_valid_widget(widget); if (state) {
if (!(this->flags & JI_SELECTED)) {
this->flags |= JI_SELECTED;
jwidget_dirty(this);
if (!(widget->flags & JI_SELECTED)) { jwidget_emit_signal(this, JI_SIGNAL_SELECT);
widget->flags |= JI_SELECTED; }
jwidget_dirty(widget);
jwidget_emit_signal(widget, JI_SIGNAL_SELECT);
} }
} else {
if (this->flags & JI_SELECTED) {
this->flags &= ~JI_SELECTED;
jwidget_dirty(this);
void jwidget_deselect(JWidget widget) jwidget_emit_signal(this, JI_SIGNAL_DESELECT);
{ }
assert_valid_widget(widget);
if (widget->flags & JI_SELECTED) {
widget->flags &= ~JI_SELECTED;
jwidget_dirty(widget);
jwidget_emit_signal(widget, JI_SIGNAL_DESELECT);
} }
} }
void jwidget_set_selected(JWidget widget, bool state)
{
if (state)
jwidget_select(widget);
else
jwidget_deselect(widget);
}
bool jwidget_is_visible(JWidget widget) bool jwidget_is_visible(JWidget widget)
{ {
assert_valid_widget(widget); assert_valid_widget(widget);
@ -526,18 +514,9 @@ bool jwidget_is_disabled(JWidget widget)
return false; return false;
} }
bool jwidget_is_selected(JWidget widget) bool Widget::isSelected() const
{ {
assert_valid_widget(widget); return (this->flags & JI_SELECTED) ? true: false;
return (widget->flags & JI_SELECTED) ? true: false;
}
bool jwidget_is_deselected(JWidget widget)
{
assert_valid_widget(widget);
return !(jwidget_is_selected(widget));
} }
/**********************************************************************/ /**********************************************************************/

View File

@ -85,16 +85,11 @@ void jwidget_show(JWidget widget);
void jwidget_hide(JWidget widget); void jwidget_hide(JWidget widget);
void jwidget_enable(JWidget widget); void jwidget_enable(JWidget widget);
void jwidget_disable(JWidget widget); void jwidget_disable(JWidget widget);
void jwidget_select(JWidget widget);
void jwidget_deselect(JWidget widget);
void jwidget_set_selected(JWidget widget, bool state);
bool jwidget_is_visible(JWidget widget); bool jwidget_is_visible(JWidget widget);
bool jwidget_is_hidden(JWidget widget); bool jwidget_is_hidden(JWidget widget);
bool jwidget_is_enabled(JWidget widget); bool jwidget_is_enabled(JWidget widget);
bool jwidget_is_disabled(JWidget widget); bool jwidget_is_disabled(JWidget widget);
bool jwidget_is_selected(JWidget widget);
bool jwidget_is_deselected(JWidget widget);
/* children handle */ /* children handle */
@ -252,8 +247,8 @@ public:
// selected // selected
bool isSelected() { return jwidget_is_selected(this); } bool isSelected() const;
void setSelected(bool state) { jwidget_set_selected(this, state); } void setSelected(bool state);
// font // font

View File

@ -509,7 +509,7 @@ void jstandard_theme::draw_button(JWidget widget, JRect clip)
bg = COLOR_FACE; bg = COLOR_FACE;
/* selected */ /* selected */
if (jwidget_is_selected(widget)) { if (widget->isSelected()) {
fg = COLOR_BACKGROUND; fg = COLOR_BACKGROUND;
bg = COLOR_SELECTED; bg = COLOR_SELECTED;
@ -575,13 +575,13 @@ void jstandard_theme::draw_button(JWidget widget, JRect clip)
/* icon */ /* icon */
if (icon_bmp) { if (icon_bmp) {
if (jwidget_is_selected(widget)) if (widget->isSelected())
jrect_displace(&icon, 1, 1); jrect_displace(&icon, 1, 1);
/* enabled */ /* enabled */
if (jwidget_is_enabled(widget)) { if (jwidget_is_enabled(widget)) {
/* selected */ /* selected */
if (jwidget_is_selected(widget)) { if (widget->isSelected()) {
jdraw_inverted_sprite(ji_screen, icon_bmp, icon.x1, icon.y1); jdraw_inverted_sprite(ji_screen, icon_bmp, icon.x1, icon.y1);
} }
/* non-selected */ /* non-selected */
@ -763,7 +763,7 @@ void jstandard_theme::draw_listitem(JWidget widget, JRect clip)
bg = COLOR_FACE; bg = COLOR_FACE;
fg = COLOR_DISABLED; fg = COLOR_DISABLED;
} }
else if (jwidget_is_selected(widget)) { else if (widget->isSelected()) {
bg = COLOR_SELECTED; bg = COLOR_SELECTED;
fg = COLOR_BACKGROUND; fg = COLOR_BACKGROUND;
} }
@ -840,8 +840,8 @@ void jstandard_theme::draw_menuitem(JWidget widget, JRect clip)
/* background */ /* background */
rectfill(ji_screen, x1, y1, x2, y2, bg); rectfill(ji_screen, x1, y1, x2, y2, bg);
/* draw an indicator for selected items */ // Draw an indicator for selected items
if (jwidget_is_selected (widget)) { if (widget->isSelected()) {
BITMAP *icon = icons_bitmap[ICON_MENU_MARK]; BITMAP *icon = icons_bitmap[ICON_MENU_MARK];
int x = widget->rc->x1+4-icon->w/2; int x = widget->rc->x1+4-icon->w/2;
int y = (widget->rc->y1+widget->rc->y2)/2-icon->h/2; int y = (widget->rc->y1+widget->rc->y2)/2-icon->h/2;
@ -1095,7 +1095,7 @@ void jstandard_theme::draw_slider(JWidget widget, JRect clip)
rect(ji_screen, x1, y1, x2, y2, bg); rect(ji_screen, x1, y1, x2, y2, bg);
/* 3rd border */ /* 3rd border */
if (!jwidget_is_selected (widget)) { if (!widget->isSelected()) {
c1 = COLOR_BACKGROUND; c1 = COLOR_BACKGROUND;
c2 = COLOR_DISABLED; c2 = COLOR_DISABLED;
} }
@ -1242,7 +1242,7 @@ void jstandard_theme::draw_view_scrollbar(JWidget widget, JRect clip)
u1, v1, u2, v2, get_bg_color(widget)); u1, v1, u2, v2, get_bg_color(widget));
/* 1st border */ /* 1st border */
if (jwidget_is_selected(widget)) if (widget->isSelected())
jrectedge(ji_screen, u1, v1, u2, v2, jrectedge(ji_screen, u1, v1, u2, v2,
COLOR_DISABLED, COLOR_BACKGROUND); COLOR_DISABLED, COLOR_BACKGROUND);
else else
@ -1347,7 +1347,7 @@ void jstandard_theme::draw_textstring(const char *t, int fg_color, int bg_color,
else else
y = rect->y1; y = rect->y1;
if (jwidget_is_selected (widget)) { if (widget->isSelected()) {
x += selected_offset; x += selected_offset;
y += selected_offset; y += selected_offset;
} }
@ -1394,7 +1394,7 @@ void jstandard_theme::draw_icons(int x, int y, JWidget widget, int edge_icon)
{ {
draw_sprite(ji_screen, icons_bitmap[edge_icon], x, y); draw_sprite(ji_screen, icons_bitmap[edge_icon], x, y);
if (jwidget_is_selected(widget)) if (widget->isSelected())
draw_sprite(ji_screen, icons_bitmap[edge_icon+1], x, y); draw_sprite(ji_screen, icons_bitmap[edge_icon+1], x, y);
} }
@ -1428,15 +1428,15 @@ static bool theme_button_msg_proc(JWidget widget, JMessage msg)
case JM_KEYPRESSED: case JM_KEYPRESSED:
if (msg->key.scancode == KEY_ESC) { if (msg->key.scancode == KEY_ESC) {
jwidget_select(widget); widget->setSelected(true);
return true; return true;
} }
break; break;
case JM_KEYRELEASED: case JM_KEYRELEASED:
if (msg->key.scancode == KEY_ESC) { if (msg->key.scancode == KEY_ESC) {
if (jwidget_is_selected(widget)) { if (widget->isSelected()) {
jwidget_deselect(widget); widget->setSelected(false);
jwidget_close_window(widget); jwidget_close_window(widget);
return true; return true;
} }

View File

@ -631,7 +631,7 @@ void SkinneableTheme::draw_button(JWidget widget, JRect clip)
isMiniLook = skinPropery->isMiniLook(); isMiniLook = skinPropery->isMiniLook();
// selected // selected
if (jwidget_is_selected(widget)) { if (widget->isSelected()) {
fg = get_button_selected_text_color(); fg = get_button_selected_text_color();
bg = get_button_selected_face_color(); bg = get_button_selected_face_color();
part_nw = isMiniLook ? PART_TOOLBUTTON_NORMAL_NW: part_nw = isMiniLook ? PART_TOOLBUTTON_NORMAL_NW:
@ -676,7 +676,7 @@ void SkinneableTheme::draw_button(JWidget widget, JRect clip)
// icon // icon
if (icon_bmp) { if (icon_bmp) {
if (jwidget_is_selected(widget)) if (widget->isSelected())
jrect_displace(&icon, jrect_displace(&icon,
get_button_selected_offset(), get_button_selected_offset(),
get_button_selected_offset()); get_button_selected_offset());
@ -684,7 +684,7 @@ void SkinneableTheme::draw_button(JWidget widget, JRect clip)
// enabled // enabled
if (jwidget_is_enabled(widget)) { if (jwidget_is_enabled(widget)) {
// selected // selected
if (jwidget_is_selected(widget)) { if (widget->isSelected()) {
jdraw_inverted_sprite(ji_screen, icon_bmp, icon.x1, icon.y1); jdraw_inverted_sprite(ji_screen, icon_bmp, icon.x1, icon.y1);
} }
// non-selected // non-selected
@ -729,8 +729,8 @@ void SkinneableTheme::draw_check(JWidget widget, JRect clip)
/* icon */ /* icon */
set_alpha_blender(); set_alpha_blender();
draw_trans_sprite(ji_screen, draw_trans_sprite(ji_screen,
jwidget_is_selected(widget) ? m_part[PART_CHECK_SELECTED]: widget->isSelected() ? m_part[PART_CHECK_SELECTED]:
m_part[PART_CHECK_NORMAL], m_part[PART_CHECK_NORMAL],
icon.x1, icon.y1); icon.x1, icon.y1);
// draw focus // draw focus
@ -860,7 +860,7 @@ void SkinneableTheme::draw_listitem(JWidget widget, JRect clip)
bg = COLOR_FACE; bg = COLOR_FACE;
fg = COLOR_DISABLED; fg = COLOR_DISABLED;
} }
else if (jwidget_is_selected(widget)) { else if (widget->isSelected()) {
fg = get_listitem_selected_text_color(); fg = get_listitem_selected_text_color();
bg = get_listitem_selected_face_color(); bg = get_listitem_selected_face_color();
} }
@ -938,7 +938,7 @@ void SkinneableTheme::draw_menuitem(JWidget widget, JRect clip)
rectfill(ji_screen, x1, y1, x2, y2, bg); rectfill(ji_screen, x1, y1, x2, y2, bg);
/* draw an indicator for selected items */ /* draw an indicator for selected items */
if (jwidget_is_selected(widget)) { if (widget->isSelected()) {
BITMAP* icon = m_part[jwidget_is_enabled(widget) ? PART_CHECK_SELECTED: BITMAP* icon = m_part[jwidget_is_enabled(widget) ? PART_CHECK_SELECTED:
PART_CHECK_DISABLED]; PART_CHECK_DISABLED];
@ -1040,8 +1040,8 @@ void SkinneableTheme::draw_radio(JWidget widget, JRect clip)
/* icon */ /* icon */
set_alpha_blender(); set_alpha_blender();
draw_trans_sprite(ji_screen, draw_trans_sprite(ji_screen,
jwidget_is_selected(widget) ? m_part[PART_RADIO_SELECTED]: widget->isSelected() ? m_part[PART_RADIO_SELECTED]:
m_part[PART_RADIO_NORMAL], m_part[PART_RADIO_NORMAL],
icon.x1, icon.y1); icon.x1, icon.y1);
// draw focus // draw focus
@ -1274,7 +1274,7 @@ void SkinneableTheme::draw_combobox_button(JWidget widget, JRect clip)
int fg, bg, part_nw; int fg, bg, part_nw;
/* with mouse */ /* with mouse */
if (jwidget_is_selected(widget) || if (widget->isSelected() ||
(jwidget_is_enabled(widget) && widget->hasMouseOver())) { (jwidget_is_enabled(widget) && widget->hasMouseOver())) {
fg = get_button_hot_text_color(); fg = get_button_hot_text_color();
bg = get_button_hot_face_color(); bg = get_button_hot_face_color();
@ -1305,7 +1305,7 @@ void SkinneableTheme::draw_combobox_button(JWidget widget, JRect clip)
icon.x2 = icon.x1 + icon_bmp->w; icon.x2 = icon.x1 + icon_bmp->w;
icon.y2 = icon.y1 + icon_bmp->h; icon.y2 = icon.y1 + icon_bmp->h;
if (jwidget_is_selected(widget)) if (widget->isSelected())
jrect_displace(&icon, jrect_displace(&icon,
get_button_selected_offset(), get_button_selected_offset(),
get_button_selected_offset()); get_button_selected_offset());
@ -1478,7 +1478,7 @@ void SkinneableTheme::draw_textstring(const char *t, int fg_color, int bg_color,
else else
y = rect->y1; y = rect->y1;
if (jwidget_is_selected (widget)) { if (widget->isSelected()) {
x += selected_offset; x += selected_offset;
y += selected_offset; y += selected_offset;
} }
@ -1725,15 +1725,15 @@ bool SkinneableTheme::theme_frame_button_msg_proc(JWidget widget, JMessage msg)
case JM_KEYPRESSED: case JM_KEYPRESSED:
if (msg->key.scancode == KEY_ESC) { if (msg->key.scancode == KEY_ESC) {
jwidget_select(widget); widget->setSelected(true);
return true; return true;
} }
break; break;
case JM_KEYRELEASED: case JM_KEYRELEASED:
if (msg->key.scancode == KEY_ESC) { if (msg->key.scancode == KEY_ESC) {
if (jwidget_is_selected(widget)) { if (widget->isSelected()) {
jwidget_deselect(widget); widget->setSelected(false);
jwidget_close_window(widget); jwidget_close_window(widget);
return true; return true;
} }

View File

@ -232,7 +232,7 @@ static void colorbutton_draw(JWidget widget)
color_t color; color_t color;
// When the button is pushed, show the negative // When the button is pushed, show the negative
if (jwidget_is_selected(widget)) { if (widget->isSelected()) {
color = color_rgb(255-color_get_red(colorbutton->color), color = color_rgb(255-color_get_red(colorbutton->color),
255-color_get_green(colorbutton->color), 255-color_get_green(colorbutton->color),
255-color_get_blue(colorbutton->color)); 255-color_get_blue(colorbutton->color));

View File

@ -338,7 +338,7 @@ static void colorselector_set_color2(JWidget widget, color_t color,
// // Select the RGB button // // Select the RGB button
// jwidget_select(colorselector->rgb_button); // jwidget_select(colorselector->rgb_button);
jwidget_select(colorselector->model_buttons[m->model]); colorselector->model_buttons[m->model]->setSelected(true);
// Call the hook // Call the hook
select_model_hook(widget, (void*)m); select_model_hook(widget, (void*)m);

View File

@ -77,7 +77,7 @@ JWidget group_button_new(int w, int h, int first_selected, ...)
HOOK(radio, JI_SIGNAL_RADIO_CHANGE, radio_change_hook, vbox); HOOK(radio, JI_SIGNAL_RADIO_CHANGE, radio_change_hook, vbox);
if (c == first_selected) if (c == first_selected)
jwidget_select(radio); radio->setSelected(true);
if (hbox) if (hbox)
jwidget_add_child(hbox, radio); jwidget_add_child(hbox, radio);
@ -111,7 +111,7 @@ void group_button_select(JWidget group, int index)
JWidget sel = find_selected(group); JWidget sel = find_selected(group);
if (!sel || (size_t)sel->user_data[1] != index) { if (!sel || (size_t)sel->user_data[1] != index) {
jwidget_deselect(sel); sel->setSelected(false);
select_button(group, index); select_button(group, index);
} }
} }
@ -121,7 +121,7 @@ static JWidget find_selected(JWidget widget)
JWidget sel; JWidget sel;
JLink link; JLink link;
if (jwidget_is_selected(widget)) if (widget->isSelected())
return widget; return widget;
else { else {
JI_LIST_FOR_EACH(widget->children, link) JI_LIST_FOR_EACH(widget->children, link)
@ -138,7 +138,7 @@ static int select_button(JWidget widget, int index)
if (widget->type == JI_RADIO) { if (widget->type == JI_RADIO) {
if ((size_t)widget->user_data[1] == index) { if ((size_t)widget->user_data[1] == index) {
jwidget_select(widget); widget->setSelected(true);
return true; return true;
} }
} }

View File

@ -468,9 +468,9 @@ static bool tabs_button_msg_proc(JWidget widget, JMessage msg)
else if (msg->signal.num == JI_SIGNAL_DISABLE) { else if (msg->signal.num == JI_SIGNAL_DISABLE) {
assert(tabs != NULL); assert(tabs != NULL);
if (jwidget_is_selected(widget)) { if (widget->isSelected()) {
jmanager_stop_timer(tabs->getTimerId()); jmanager_stop_timer(tabs->getTimerId());
jwidget_deselect(widget); widget->setSelected(false);
} }
return true; return true;
} }

View File

@ -138,10 +138,7 @@ void target_button_set_target(JWidget widget, int target)
#define ACTIVATE_TARGET(name, TARGET) \ #define ACTIVATE_TARGET(name, TARGET) \
w = jwidget_find_name(widget, name); \ w = jwidget_find_name(widget, name); \
if (w != NULL) { \ if (w != NULL) { \
if ((target & TARGET) == TARGET) \ w->setSelected((target & TARGET) == TARGET); \
jwidget_select(w); \
else \
jwidget_deselect(w); \
} }
ACTIVATE_TARGET("r", TARGET_RED_CHANNEL); ACTIVATE_TARGET("r", TARGET_RED_CHANNEL);
@ -171,7 +168,7 @@ static bool channel_change_hook(JWidget widget, void *data)
return true; return true;
} }
if (jwidget_is_selected(widget)) if (widget->isSelected())
target |= flag; target |= flag;
else else
target &= ~flag; target &= ~flag;