Upgrade SSP 1.7.0 to SSP 1.7.8 GUIX problem

Hi all.

I have updated a project from SSP 1.7.0 to 1.7.8.
I updated the GUIX with the new API, I have a problem that the drawing function is no longer called if the button is hide. I used the drawing function for show/hide the button according to a logical state of one pin.
Is there any solution to use the drawing function if the button is disabled?

Thank you

Paolo

  • Update.
    I moved the callback code of the button in the callback of the window when there is the SHOW event, but even if the functions are executed the button doesn't show :(.

    Paolo
  • In reply to Paolo Miatto:

    This is the code that worked with the old SSP

    inline bool headSwitchPress()
    {
        ioport_level_t p_head_sw_value;
        g_ioport.p_api->pinRead(HEAD_SW_PIN, &p_head_sw_value);

        return (p_head_sw_value == IOPORT_LEVEL_HIGH) ? false : true;
    }

    VOID close_forward_btn_draw(GX_TEXT_BUTTON *widget)
    {
        if (headSwitchPress()) {
            gx_widget_hide(widget);
        }
        else {
            gx_widget_show(widget);
        }

        gx_text_button_draw(widget);
    }

    Nobody has ideas on how to solve it?

    Thanks

    Paolo

  • In reply to Paolo Miatto:

    Good day, Paolo!

    How are things going for you? It seems that your inquiry is nit quite common since it is the latest update of SSP. I hope you could wait for responses from experts on this. Thank you for your patience.

    Best regards,
    Sai
    RenesasRulz Forum Moderator

    https://renesasrulz.com/
    https://academy.renesas.com/
    en-us.knowledgebase.renesas.com/
  • In reply to Sai:

    The widget is trying to “self-hide” and “self-show” inside it’s own drawing function. The fact that it worked at all in SSP 1.7.0 is a bug, once the widget is hidden the draw function should never be called until it is unhidden.

    Changing the widget visible status while drawing just isn’t the right way to do things.


    There must be some event, some reason for the widget to be visible or hidden. When that event occurs, that is the place to add the Hide/Show logic.
  • In reply to Jeremy:

    Hi Jeremy.
    I understood this, but the problem is that even if I put that part of the code in the show event of the window it doesn't work.
    I opened a ticket to Renesas on how to do it.

    Thank you
    Paolo
  • In reply to Paolo Miatto:

    Hi.
    I solved. Renesas sent me a correct example. They implemented my solution with the show event. Since it didn't suit me, I exported and re-exported the project. Now works.

    Best Regards
    Paolo