On Thu, Jan 25, 2018 at 10:13 AM, Yuri Khan <yuri.v.k...@gmail.com> wrote:

> On Thu, Jan 25, 2018 at 3:18 PM, Kian Karas <kian.karas....@gmail.com>
> wrote:
>
> > It's an industrial device with a 4.5" screen. The only input method is a
> > keypad. The keypad has up/down/left/right/enter/back buttons (and some
> other
> > domain specific keys). The before mentioned keys are used to navigate a
> menu
> > system.
> >
> > The menu system is a tree structure with multiple levels. It is used to
> > access new views (different from the menu view; domain specific
> functions),
> > status information (e.g. serial no., SW version, etc.) and change
> settings.
>
> The menu system is a tree structure, but each screen is a flat list.
> So yes, you’d need a list, not a tree.
>
The tree view was selected because it required the least code. No one on
the team had any prior experience with GTK. It was really easy to get
going. But i realize now, that it is too simple for what we would like.


>
> > Here's a screenshot of status information, including the string that does
> > not fit (last row):
> > https://imgur.com/a/4XlTK
>
> This way of organizing information is sometimes called a property
> list. Initially a two-column table seems to be an obvious
> implementation, but it suffers from this particular problem when
> horizontal space is limited.
>
> How long is that NATID? I see 13 digits and an indication there are
> more.

 It is 19 characters, but you could imagine we run into the same problem in
the future with another text.


> Is there any convention to split that into groups, like you see
> 1234 5678 9012 3456 on bank cards?

That would help readability. At the
> same time, it introduces natural points to wrap lines.
>
>     Part Number         71-000000
>     Version                47.11D
>     Build Number          kk-5910
>     NATID          8988 1697 0000
>                         0000 0013
>
If a row is to span multiple lines, it might improve readability but how to
indicate to the user that the multi-line row is only in partial view? If
"Part Number" is in view, the second line of the "NATID" would not be.
I think I would still prefer scrolling the left column some how (without a
visible scrollbar). I haven't yet looked into how I could do that so any
suggestions would be appreciated ;) I think I would like a solution where
the ellipses would be shown in either (or both!?) sides of the string to
indicate it's possible to scroll to that side.


> Also it looks like the left column is too wide. The longest visible
> label is Build Number but the NATID value starts way to the right. If
> wrapping is not an option, I’d try to make the labels shorter. In a
> pinch, “Number” can be shortened to “#”.
>
My problem is all about compromising, and making the left column less
readable, would be one compromise. However, I don't think it's a good
compromise and it is not a general solution (there might be cases where
there is no reasonable mnemonic).


> Lastly, for this screen, you could skip the list box altogether and
> organize the property list as a single column GtkBox, where each child
> is a single row GtkBox, with the label in the left cell and value in
> the right cell. This approach takes you off the listbox grid; you can
> have one row with a long label and a short value, and another row with
> a short label and a long value.
>
>     Part Number           71-000000
>     Version                  47.11D
>     Build Number            kk-5910
>     NATID  8988 1697 0000 0000 0013
>
 I have thought about this possibility of loosing the fixed column width.
It's a good compromise. It will introduces a lot code complexity in my menu
object, but that's just the way it must be.

Sorry for turning it into a “what you want is wrong” discussion :)
>
No, I appreciate it! I realize now that the easy fix to the tree view
implementation I hoped for does not exist.

I'll need to decide between the list view and your suggested box-in-box
solution.
_______________________________________________
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list

Reply via email to