Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #38596

Re: Displaying a ragged array

From Martin Gregorie <martin@mydomain.invalid>
Newsgroups comp.lang.java.programmer
Subject Re: Displaying a ragged array
Date 2018-09-17 19:32 +0000
Organization albasani.net
Message-ID <pnovgf$rio$1@news.albasani.net> (permalink)
References <pnmkqh$7dp$1@news.albasani.net> <pnoc21$ga9$1@dont-email.me>

Show all headers | View raw


On Mon, 17 Sep 2018 16:00:03 +0200, Daniele Futtorovic wrote:

> I think you should compose, rather than inherit that (i.e. a
> DatastoreTableModel layer).
>
Why? 
 
> I don't see why it wouldn't (all you need to do is render missing values
> properly, see below). Also, will missing elements always be at the end,
> rather than interspersed?
>
Yes, missing elements will always be at the end. They are distinct from 
empty elements, which are represented by empty Strings. Missing elements 
are off the end of the ArrayList, i.e. get(n) would throw an 
IndexOutOfBoundsException if asked to fetch them. Datastore returns null 
and sets an error (testable with hasError()) if you try it.
 
>> I'll be very interested to hear how you've handled, or would handle,
>> this display problem.
> 
> A _display_ problem I would address at the _rendering_ level, rather
> than the model level. That is, using the TableCellRenderer and
> TableCellEditor.
>
The app is an editor for manipulating CSV files with embedded comment 
lines. Yes, I know that yoy can use a spreadsheet, but they can and do 
mess with fields that they think need special treatment, e.g. dates.

One problem I see with using a JTable is that, while a comment line can 
be handled as a line containing one field, it would be would be best 
treated as a complete line, because its width should not affect the first 
column width, i.e. the displayed width of the first fields on other lines.


-- 
Martin    | martin at
Gregorie  | gregorie dot org

Back to comp.lang.java.programmer | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Displaying a ragged array Martin Gregorie <martin@mydomain.invalid> - 2018-09-16 22:17 +0000
  Re: Displaying a ragged array Daniele Futtorovic <da.futt.news@laposte-dot-net.invalid> - 2018-09-17 16:00 +0200
    Re: Displaying a ragged array Martin Gregorie <martin@mydomain.invalid> - 2018-09-17 19:32 +0000
      Re: Displaying a ragged array Daniele Futtorovic <da.futt.news@laposte-dot-net.invalid> - 2018-09-17 23:29 +0200
        Re: Displaying a ragged array Martin Gregorie <martin@mydomain.invalid> - 2018-09-17 23:43 +0000
          Re: Displaying a ragged array Daniele Futtorovic <da.futt.news@laposte-dot-net.invalid> - 2018-09-19 18:12 +0200
            Re: Displaying a ragged array Martin Gregorie <martin@mydomain.invalid> - 2018-09-19 17:49 +0000
              Re: Displaying a ragged array Eric Sosman <esosman@comcast-dot-net.invalid> - 2018-09-19 14:25 -0400
                Re: Displaying a ragged array Martin Gregorie <martin@mydomain.invalid> - 2018-09-19 19:29 +0000
                Re: Displaying a ragged array Daniele Futtorovic <da.futt.news@laposte-dot-net.invalid> - 2018-09-20 15:30 +0200
                Re: Displaying a ragged array Martin Gregorie <martin@mydomain.invalid> - 2018-09-20 15:06 +0000
              Re: Displaying a ragged array Eric Douglas <e.d.programmer@gmail.com> - 2018-09-24 08:11 -0700
                Re: Displaying a ragged array Martin Gregorie <martin@mydomain.invalid> - 2018-09-24 17:52 +0000
                Re: Displaying a ragged array Eric Douglas <e.d.programmer@gmail.com> - 2018-09-24 12:01 -0700
                Re: Displaying a ragged array Martin Gregorie <martin@mydomain.invalid> - 2018-10-23 21:00 +0000
  Re: Displaying a ragged array Eric Sosman <esosman@comcast-dot-net.invalid> - 2018-09-17 10:17 -0400
    Re: Displaying a ragged array Martin Gregorie <martin@mydomain.invalid> - 2018-09-17 19:46 +0000
      Re: Displaying a ragged array Martin Gregorie <martin@mydomain.invalid> - 2018-09-17 23:53 +0000

csiph-web