Look&Feel: piDog DataView vs Xojo Listbox

  1. ‹ Older
  2. 5 weeks ago

    Jean-Yves P

    Jan 20 Pre-Release Testers, Xojo Pro Europe (France, Besançon)
    Edited 5 weeks ago

    -image-
    -image-

  3. jim m

    Jan 20 Pre-Release Testers Phoenix, Arizona piDog.com

    @SaschaSchneppmueller You asked us to tell you if we miss a feature the Xojo Listbox is offering but DataView does not.

    Thanks for catching that! I've added it for the next update.

    @SaschaSchneppmueller But what annoys me the most is that if I replace the Stock Xojo Listbox with a piDog DataView, the look and feel is totally different compared to a Stock Xojo Listbox. I really would like to replace the Xojo Listbox even in my biggest projects But the look and feel of the DataView without me manually setting each property of the DataView, is too much work.

    I'm working on creating a set of subclasses for specific looks.

    I'm working on:
    FileBrowser (Finder/Explorer)
    Sidebar
    Xojo ListBox (I may just make this the default setup)
    (Any others that would be useful?)

    Here's the finder look in Mojave so far
    -image-
    -image-
    I still need to incorporate native disclosure and use the correct NSColors for the text and other minor adjustments, then on to testing on other OS versions.

  4. Douglas H

    Jan 20 Pre-Release Testers, Xojo Pro
    Edited 5 weeks ago

    @Jean-YvesPochez you can really do a lot of things subclassing the xojo listbox.
    the only thing you can't do (I'm aware of) is having variable row heights.
    for that you need to subclass a canvas and it's much much more work.

    There are many things in piDog that I have taken advantage of that may be possible with subclass, but piDog saves me the bother. Others like variable row height and high column counts are not even feasible.

    Off the top of my head:

    • Variable row heights
    • Column count is limitless (not 64)
    • Span cells vertically
    • Span cells horizontally
    • Lock column(s) on the left side to act like row headings
    • Embed container controls in cells, making limitless possibilities
    • LOTS more events exposed, including header paint events etc
    • Several additional methods to control column width
    • User draggable column reorder
    • Code can refer to columns in original order; even if user moves them around
    • Save/restore via XML making it easy to retain state and user changes
    • Row drags are visual contents of row, not black placement bar, which IMHO is smoother UI
    • Both rows and columns have visible property without needing to set size to 0
    • Data on demand is very easy (though Kem's DOD class is also very good at this)
    • Very flexible drag and drop support -- Jim's added several things at my request

    There's undoubtably plenty more, but those are features that I have used. Could I do some of those via Listbox subclass? Sure, but for the price there is no way my time is worth it. I do license the source version, and in a very few specific cases modify the source to tweak for my needs. But in some cases where I have mentioned what I changed for my own purposes, Jim just exposed as new options in a future version. He's very responsive.

  5. Julia T

    Jan 20 Sandy Hook, Connecticut
    Edited 5 weeks ago

    I really love DataView in MacOS apps for its customizable look, re-orderable columns and so forth, but each time I've tried it under Windows it's failed miserably - it bogs down in the simplest of operations like horizontal scrolling. I'm not really doing anything fancy, just loading up the list and presenting it. Also as I recall (it's been a few months) there are some inconsistencies with the Xojo listbox conventions that make it not a perfect drop-in replacement, and I had to do a bunch of manual changes.

    OTOH, if Xojo would update its ancient ListBox with some customizable header formatting, I wouldn't really be looking for an alternative at all.

    Also I should add that Jim's responsiveness and support have been fantastic.

  6. Karen A

    Jan 20 Pre-Release Testers
    Edited 5 weeks ago

    I have not updated my listbox subclass for Dark Mode. I have had one request for that, but I have been very busy with my day job and I have not installed Mojave so have not dealt with Dark Mode at all...

    Would there be interest in such an update?

    - karen

  7. Joost R

    Jan 20 Pre-Release Testers, Xojo Pro The Netherlands

    @Bob K I agree the the Xojo listbox is very powerful with a little work. I still wish we had a true grid control that allowed embedding of controls/containers.

    +1

  8. [@Bob Keeney I agree the the Xojo listbox is very powerful with a little work. I still wish we had a true grid control that allowed embedding of controls/containers.]

    +1

  9. Beatrix W

    Jan 21 Pre-Release Testers Europe (Germany)

    Compared to macOS TableView both the Xojo listbox and the piDog Dataview are much slower. My main problem with DataView was changing the column widths. When data was loaded this just didn't work. With SQLite everything was fine. With Valentina changing the column widths was so slow.

    I would never expect when using a new component that it is a drop-in replacement. Especially with something as complex as a listbox.

  10. Sascha S

    Jan 21 Pre-Release Testers, Xojo Pro Germany

    @Beatrix W I would never expect when using a new component that it is a drop-in replacement. Especially with something as complex as a listbox.

    It is advertized as such, that's why i expect it to work like a drop-in replacement:

    It is an easy to use, drop-in replacement for Xojo’s Listbox control

    @jim m I'm working on creating a set of subclasses for specific looks.

    *like*

  11. jim m

    Jan 21 Pre-Release Testers Phoenix, Arizona piDog.com

    @Beatrix W With Valentina changing the column widths was so slow.

    I am thinking this is due to the rerendering of the cells at the new width for each frame. With internal data, it's immediate, but if the datasource is an on-demand database, the rendering requires a new query for each frame and that's going to have a noticeable lag. I could add a temporary cache for values currently displayed and that would eliminated any lag.

    @SaschaSchneppmueller It is advertized as such, that's why i expect it to work like a drop-in replacement:

    It is an easy to use, drop-in replacement for Xojo’s Listbox control

    I was thinking in terms of API drop-in, but I definitely see your point.

  12. 3 weeks ago

    jim m

    Feb 1 Pre-Release Testers Phoenix, Arizona piDog.com
    Edited 3 weeks ago

    I've update DataView to 1.14.0 and included a couple of subclasses Including a ListBox style one. (more to come)
    -image- -image- -image-
    Other OS's here

    Also did a bunch of work to improve column/window resizing and added a property - UseTempDataSourceForColumnResize to cache visible cells during resize operations.

    Try the current version here if you like.

  13. Sunil A

    Feb 1 Pre-Release Testers, Xojo Pro Kuwait

    @jim m , On Windows the fonts are not crisper like the Xojo Litbox. It looks dull. I tried to change the font and it won't change it for popup and dates and checkbox. Can you correct it.

  14. jim m

    Feb 1 Pre-Release Testers Phoenix, Arizona piDog.com

    I'll get the font rendering fixed up.

    The popup, date and checkbox fonts can be changed if the ControlCellsUseSystemFont property is set to false. There isn't a switch for it in the demo window currently though. I'll add that.

  15. jim m

    Feb 2 Pre-Release Testers Phoenix, Arizona piDog.com

    Ok, 1.14.0.1 is up and should deal with both.

  16. Sunil A

    Feb 2 Pre-Release Testers, Xojo Pro Kuwait

    @jim m, It became more sluggish. could you please check. I am checking this on windows 10.

  17. Andre K

    Feb 3 Pre-Release Testers

    @jim m Looks great, unfortunately it's beyond my budget but i may say it's worth every penny/cent. I didn't notice the slugginess that Sunil seems to see, maybe my hardware is a bit faster. (Also tested on Windows 10).

  18. jim m

    Feb 4 Pre-Release Testers Phoenix, Arizona piDog.com

    @Sunil A Can you give me more details? Where are you seeing slugishness? Scrolling, loading, selection dragging?

  19. 2 weeks ago

    Sunil A

    Feb 4 Pre-Release Testers, Xojo Pro Kuwait

    @jim m, what i meant is the font sluggishness. Please see the fonts for both heading and rows in the below image. compare it with Xojo Listbox and the DataView.
    -image-

  20. jim m

    Feb 4 Pre-Release Testers Phoenix, Arizona piDog.com

    I understand now. How does this look?
    -image-
    I'll try and have an update ready in the morning.

  21. Sunil A

    Feb 5 Pre-Release Testers, Xojo Pro Kuwait

    @jim m, Its better now. but not crispier like Xojo ListBox. The Fonts look little blurry in DataView, maybe because you are using canvas to draw the fonts.

or Sign Up to reply!