Jump to content

Joel Bodenmann

Administrators
  • Posts

    2,620
  • Joined

  • Last visited

  • Days Won

    2

Posts posted by Joel Bodenmann

  1. The current GWIN list widget API doesn't provide any means to achieve this. If you want that behavior you either have to add a function to the GWIN list widget which allows you to specify the insertion position (which might require a few rewrites as the list uses a very light-weight internal list, but I don't remember the details) or you simply clear the entire list and add all items again - starting with the new one. Keep in mind that you should disable the list rendering during that period to keep things smooth.

  2. You can assign a different font to the keyboard widget. You can either use gwinSetFont() to only change that widget's font or you can use gwinSetDefaultFont() to change the default font of the entire application.

  3. Those functions belong to the GOS module and are used to interface the underlying system that µGFX is running on. gfxSystemTicks() is supposed to return the current systick value. gfxMillisecondsToTicks() is supposed to convert the number of milliseconds passed as an argument to number of system ticks.

    Those functions need to be implemented by the GOS port. All existing ports already have them implemented so if you're using an existing port like FreeRTOS, Linux, eCOS or anything else listed as supported you don't need to do anything. There are only two scenarios where you need to implement them yourself: You write a new port for a system that's not supported yet or you're  using the baremetal port (RAW32).

    The API docs of those functions can be found here: https://api.ugfx.io/group___g_o_s.html
    The documentation for the RAW32 implementation can be found here: https://wiki.ugfx.io/index.php/BareMetal

  4. v0.23.0 is available for download. Changelog:

    • Fixing bug with nested containers
    • Fixed bug when resizing widgets inside of containers
    • Fixing rendering issue when assigning a smaller image to an imagebox widget
    • Show static items as children of the background item in the design model tree
    • General code improvements
  5. Well, just call gwinXxxCreate() to create your widget when you receive the button press/release event.

    However, this is usually bad practice. When you have enough resources (mainly talking about RAM) you create all the widgets you need during startup/initialization and then you just use gwinShow() and gwinHide() to display the widgets correctly. The handling of touch inputs and so on is all handled through the GWIN visibility and enabled state.

  6. Glad to hear that you got it working!

    1. Yes, that's already implemented. Just assign the toggle(s) to the list widget
    2. Yes, selecting an item via a toggle is also already implemented. Of course, you'll have to do the "switching to another list" part yourself - just as you'd have to do with a touchscreen implementation.
    3. I don't think that the default list widget has a toggle input for that as it's not really the list's job. Instead, just assign a toggle to some other event (you can manually fire the event) to get a "BACK" event just as you're getting "UP", "DOWN" and "SELECT" events already from the list itself.
  7. Also, regarding the display controller initialization: This is an issue we're aware of. The current display driver interface is an artifact of when I started the library six years ago. Many things changed in that time especially our knowledge of how to handle something like this. Unfortunately, it's not possible to have just one ILI9341 driver that will always work as there are different chip revisions that require different initialization. Furthermore, the initialization depends on the attached display panel and so on.
    For this reason, µGFX 3.0 will have a different way of handling initialization. There will be an interface which allows you to overwrite the initialization sequence from the application level.

  8. I haven't checked your board file but when it comes to testing you can either assign the toggle to a widget (eg. pushbutton widgets accept toggle roles) and see whether the button visibly changes state. Other than that you can just setup a listener for toggle events yourself and check whether you receive anything. Thinking of this... you can also just call ginputGetToggleStatus() in your application to poll the state :P 

  9. Ah, sorry... I didn't read your post carefully enough (phone in the bus).

    As @inmarket said it's not an µGFX-Studio limitation: We need the underlying ICO decoder in the µGFX library itself. Other than that, all that the studio could do is converting any image to BMP/GIF/PNG or JPG and there are tools that do a much better job at that than the µGFX-Studio would :)

    Adding support for that in the µGFX-Studio once the underlying library supports it takes less than an hour of work.

×
×
  • Create New...