I don't think there is one perfect implementation.  And that's why we have 
beads.  I think locked columns and individual cell selection are much easier 
with the current implementation, but I agree that variable row height will 
probably be easier if all cells are in a row container.

We just need volunteers to create the other implementations.

-Alex

On 5/2/20, 12:17 AM, "Piotr Zarzycki" <[email protected]> wrote:

    Hi,
    
    I absolutely agree with Greg. In fact before I read his email I was digging
    into DataGrid and my initial thought was - when I set rowHeight = NaN - My
    rows should be adjusted automatically by the browser - why it does not
    happen? This is exactly because of that:
    
    In browser I think things would be a lot easier if the
    > internal 'lists' were managed as a single list of native rows instead of
    > composed columns of lists for DataGrids (specifically in the browser).
    
    
    Carlos do you think it would be good to change that implementation in the
    way as Greg is proposing ? Do you have time to work on that ?
    
    Thanks,
    Piotr
    
    czw., 30 kwi 2020 o 20:48 Greg Dove <[email protected]> napisał(a):
    
    > For the variable rowHeight - that works fine for individual lists, but for
    > datagrid that needs to match across the corresponding renderers for each
    > item in the other columns, I did not check to see how that part works.
    >
    > I haven't looked at the current Jewel implementation of DataGrid yet, but 
I
    > do think that in general we have a lot of 'Flex'/swf thinking in the way
    > things work for DataGrid support, and I am not sure it is the best way for
    > browsers. I understand the need for this in emulation components, but
    > perhaps even the implementation there is not important if the external api
    > remains the same. In browser I think things would be a lot easier if the
    > internal 'lists' were managed as a single list of native rows instead of
    > composed columns of lists for DataGrids (specifically in the browser).
    > Columns could probably be managed then by custom uid-style classes for
    > styling of their parts of the 'rows'.
    >
    > I think this probably covers off things like variable row height more
    > height easily, and makes hover/selection at row level etc easier. And
    > things like snapping the scrolling to the renderers (via native snap-to
    > support for scroll snapping iiuc) should be much easier also I think. Do I
    > have time to work on this ? No - definitely not anytime real soon. But I
    > had been thinking about it after digging into internals of DataGrid
    > recently.
    >
    >
    >
    >
    >
    >
    > On Fri, May 1, 2020 at 3:52 AM Alex Harui <[email protected]>
    > wrote:
    >
    > > I haven't looked at Jewel's Lists in detail, but if they have switched 
to
    > > scenario 2 (virtual rendering is probably a good default), then there 
are
    > > assumptions in the beads about fixed rowHeight.  But to handle 5, you
    > would
    > > start with the earlier beads that did 1 and forget virtual rendering for
    > > now.  Then you should be able to not worry about fixed rowheight any 
more
    > > since our vertical layouts for containers certainly handle different
    > > children heights.  The beads for 5 should just set a width and let the
    > > browser layout the children as blocks.
    > >
    > > HTH,
    > > -Alex
    > >
    > > On 4/30/20, 8:47 AM, "Piotr Zarzycki" <[email protected]>
    > wrote:
    > >
    > >     I thought I do understand what do you mean, but now I'm confused.
    > > Where do
    > >     you see complexity ? In amount of rows and calculations what height
    > of
    > > the
    > >     rows are ?
    > >
    > >     czw., 30 kwi 2020 o 17:44 Alex Harui <[email protected]>
    > > napisał(a):
    > >
    > >     > IMO, there are various tricks to handle a few thousand rows if the
    > >     > renderers are simple.  For example, feeding in rows with a timer.
    > > If the
    > >     > computer can handle the memory required for a few thousand
    > renderers
    > > the
    > >     > main issue is the time to create and render for the first time.
    > >     >
    > >     > It is when you get out to 10,000 rows or the renderers are
    > > complex/slow
    > >     > that it doesn't make sense to keep every renderer in memory and
    > > that's why
    > >     > the complexity goes up.
    > >     >
    > >     > Also, schedule-wise, you might start with 5 now and then take more
    > > time to
    > >     > work on 7 or 8.
    > >     >
    > >     > HTH,
    > >     > -Alex
    > >     >
    > >     > On 4/30/20, 8:33 AM, "Piotr Zarzycki" <[email protected]>
    > > wrote:
    > >     >
    > >     >     Hi Alex,
    > >     >
    > >     >     It's hard to say, cause we are heavily using DataGrid in whole
    > >     > application.
    > >     >     Each view contains some list. We have for example now view
    > called
    > >     >     "Correspondence" where in theory could be hundreds rows or
    > maybe
    > > even
    > >     >     thousands.
    > >     >
    > >     >     Thanks,
    > >     >     Piotr
    > >     >
    > >     >     czw., 30 kwi 2020 o 17:27 Alex Harui <[email protected]
    > >
    > >     > napisał(a):
    > >     >
    > >     >     > Piotr,  how many rows of data are there?
    > >     >     >
    > >     >     > IMO, there are multiple scenarios of increasing complexity.
    > > That's
    > >     > one of
    > >     >     > the reasons we have beads in Royale.  The vast majority of
    > our
    > > work
    > >     > so far
    > >     >     > has been to handle the simpler scenarios.  The ones I can
    > > think of
    > >     > are:
    > >     >     >
    > >     >     > 1) few rows, fixed height, pixel scrolling
    > >     >     > 2) lots of rows, fixed height, pixel scrolling
    > >     >     > 3) lots of rows, fixed height, row scrolling
    > >     >     > 4) few rows, fixed height, row scrolling
    > >     >     > 5) few rows, variable height, pixel scrolling
    > >     >     > 6) few rows, variable height, row scrolling
    > >     >     > 7) lots of rows, variable height, row scrolling
    > >     >     > 8) lots of rows, variable height, pixel scrolling
    > >     >     >
    > >     >     > We've done 1 & 2 as beads.  5 should be not-too-hard
    > although I
    > >     > certainly
    > >     >     > be wrong about that.  If you can live with 5, then see if 
you
    > > and/or
    > >     > Carlos
    > >     >     > and other volunteers can come up with the beads for it.
    > There
    > > is a
    > >     > big
    > >     >     > jump in complexity after 5, especially 7 & 8.
    > >     >     >
    > >     >     > HTH,
    > >     >     > -Alex
    > >     >     >
    > >     >     > On 4/30/20, 6:54 AM, "Piotr Zarzycki" <
    > > [email protected]>
    > >     > wrote:
    > >     >     >
    > >     >     >     Just for the reference when you setup variableRowHeight 
=
    > > true
    > >     > in flex
    > >     >     >     DataGrid looks like that -
    > >     >     >
    > >     >
    > >
    > 
https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fibb.co%2FD7K9dLs&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609623612&amp;sdata=sUdKOR6zDPo4XRfeXYfIB16e2X6yy6MmVDWvntYZ3no%3D&amp;reserved=0
    > >     >     >
    > >     >     >     czw., 30 kwi 2020 o 15:51 Piotr Zarzycki <
    > >     > [email protected]>
    > >     >     >     napisał(a):
    > >     >     >
    > >     >     >     > Hi Carlos,
    > >     >     >     >
    > >     >     >     > I also do not see any other option than generate each
    > > height
    > >     > of the
    > >     >     > row
    > >     >     >     > based on the largest height in each row. It is
    > > definitely not
    > >     > an
    > >     >     > option to
    > >     >     >     > force people use rowHeight - That model definitely 
fail
    > > in our
    > >     >     > application
    > >     >     >     > where there are different portion of text in rows. One
    > > row
    > >     > will have
    > >     >     > 30
    > >     >     >     > height the second one 45 because there more text to
    > > display
    > >     > and so
    > >     >     > on.
    > >     >     >     >
    > >     >     >     > Right now Jewel DataGrid doesn't have
    > variableRowHeight.
    > > To me
    > >     > it
    > >     >     > should
    > >     >     >     > in some form appear and if:
    > >     >     >     >
    > >     >     >     >  variableRowHeight = true - Row height is being
    > > calculated
    > >     >     > dynamically.
    > >     >     >     > Each row can have different height. Setup rowHeight
    > when
    > > that
    > >     > option
    > >     >     > is
    > >     >     >     > true won't have affect.
    > >     >     >     >   variableRowHeight = false - default state. Setup
    > > rowHeight
    > >     > has some
    > >     >     >     > effect. Each row has some predefined default height 
ex.
    > > 35.
    > >     >     >     >
    > >     >     >     > Thoughts ?
    > >     >     >     >
    > >     >     >     > Thanks,
    > >     >     >     > Piotr
    > >     >     >     >
    > >     >     >     > pt., 10 kwi 2020 o 17:35 Carlos Rovira <
    > >     > [email protected]>
    > >     >     >     > napisał(a):
    > >     >     >     >
    > >     >     >     >>  Hi Piotr,
    > >     >     >     >>
    > >     >     >     >> I was taking a look at the issue. Some initial
    > thoughts:
    > >     >     >     >>
    > >     >     >     >> List has "variableRowHeight: true" (defined in Theme)
    > > and
    > >     > rowHeight
    > >     >     > =
    > >     >     >     >> NaN; by
    > >     >     >     >> default
    > >     >     >     >> (as we can see in first List example in TDJ. We can
    > have
    > >     > different
    > >     >     > heights
    > >     >     >     >> for each item renderer, while second example has
    > > rowHeight
    > >     > defined
    > >     >     > and
    > >     >     >     >> that
    > >     >     >     >> makes all items has the same height (Side note: Here
    > > there's
    > >     > a bug
    > >     >     > since
    > >     >     >     >> defining rowHeight should remove "variableRowHeight",
    > > since
    > >     > both
    > >     >     > should be
    > >     >     >     >> mutually exclusive).
    > >     >     >     >>
    > >     >     >     >> In DataGrid, we have lots of Lists becoming columns.
    > So
    > > to
    > >     > make DG
    > >     >     > work as
    > >     >     >     >> List I think we need to sync all rows to match the
    > > bigger
    > >     > height per
    > >     >     >     >> renderer in all lists.
    > >     >     >     >>
    > >     >     >     >> I think there's no other way to do this.
    > >     >     >     >>
    > >     >     >     >> If not, other options is to avoid DG have
    > > "variableRowHeight"
    > >     > and
    > >     >     > force
    > >     >     >     >> people to use "rowHeight".
    > >     >     >     >>
    > >     >     >     >> I don't remember what Flex allow to do here, but 
maybe
    > > is
    > >     > something
    > >     >     > to
    > >     >     >     >> discuss a bit to see what could be the best for 
Royale
    > > Jewel
    > >     >     > DataGrid.
    > >     >     >     >>
    > >     >     >     >> Thanks
    > >     >     >     >>
    > >     >     >     >> Carlos
    > >     >     >     >>
    > >     >     >     >>
    > >     >     >     >>
    > >     >     >     >>
    > >     >     >     >> El vie., 10 abr. 2020 a las 15:45, Piotr Zarzycki (<
    > >     >     >     >> [email protected]>) escribió:
    > >     >     >     >>
    > >     >     >     >> > Hi Carlos,
    > >     >     >     >> >
    > >     >     >     >> > We have switched in our application to DataGrid.
    > > There are
    > >     >     > unfortunately
    > >     >     >     >> > some custom adjustment to have it properly working,
    > > but we
    > >     > can
    > >     >     > move
    > >     >     >     >> forward
    > >     >     >     >> > with that.
    > >     >     >     >> > However I have found something which I believe
    > should
    > > be
    > >     > fixed
    > >     >     > sooner
    > >     >     >     >> than
    > >     >     >     >> > later.
    > >     >     >     >> >
    > >     >     >     >> > When rowHeight is not set and there are different
    > > amount of
    > >     > data
    > >     >     > in data
    > >     >     >     >> > grid cells rows are being cut and data are not
    > > displaying
    > >     > fully.
    > >     >     > I have
    > >     >     >     >> > pushed to TourDeJewel example which shows the 
issue.
    > >     >     >     >> >
    > >     >     >     >> > Thanks,
    > >     >     >     >> > --
    > >     >     >     >> >
    > >     >     >     >> > Piotr Zarzycki
    > >     >     >     >> >
    > >     >     >     >> > Patreon: *
    > >     >     >
    > >     >
    > >
    > 
https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609623612&amp;sdata=kKWcwxHbBUFbNqIn6cbOe4PzzIJ7ZXHi%2BaDGA8pAHOY%3D&amp;reserved=0
    > >     >     >     >> > <
    > >     >     >
    > >     >
    > >
    > 
https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609633601&amp;sdata=SrEazJzdmJ6KYFuZRDRBmt0Uk7%2BF8ZixRu5db2ol%2B00%3D&amp;reserved=0
    > >     >     > >*
    > >     >     >     >> >
    > >     >     >     >>
    > >     >     >     >>
    > >     >     >     >> --
    > >     >     >     >> Carlos Rovira
    > >     >     >     >>
    > >     >     >
    > >     >
    > >
    > 
https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fabout.me%2Fcarlosrovira&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609633601&amp;sdata=iDtaQK5fHFY6flba5jUruY2JHsnIH%2Fjach3RozTxN%2B4%3D&amp;reserved=0
    > >     >     >     >>
    > >     >     >     >
    > >     >     >     >
    > >     >     >     > --
    > >     >     >     >
    > >     >     >     > Piotr Zarzycki
    > >     >     >     >
    > >     >     >     > Patreon: *
    > >     >     >
    > >     >
    > >
    > 
https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609633601&amp;sdata=SrEazJzdmJ6KYFuZRDRBmt0Uk7%2BF8ZixRu5db2ol%2B00%3D&amp;reserved=0
    > >     >     >     > <
    > >     >     >
    > >     >
    > >
    > 
https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609633601&amp;sdata=SrEazJzdmJ6KYFuZRDRBmt0Uk7%2BF8ZixRu5db2ol%2B00%3D&amp;reserved=0
    > >     >     > >*
    > >     >     >     >
    > >     >     >
    > >     >     >
    > >     >     >     --
    > >     >     >
    > >     >     >     Piotr Zarzycki
    > >     >     >
    > >     >     >     Patreon: *
    > >     >     >
    > >     >
    > >
    > 
https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609633601&amp;sdata=SrEazJzdmJ6KYFuZRDRBmt0Uk7%2BF8ZixRu5db2ol%2B00%3D&amp;reserved=0
    > >     >     >     <
    > >     >     >
    > >     >
    > >
    > 
https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609633601&amp;sdata=SrEazJzdmJ6KYFuZRDRBmt0Uk7%2BF8ZixRu5db2ol%2B00%3D&amp;reserved=0
    > >     >     > >*
    > >     >     >
    > >     >     >
    > >     >     >
    > >     >
    > >     >     --
    > >     >
    > >     >     Piotr Zarzycki
    > >     >
    > >     >     Patreon: *
    > >     >
    > >
    > 
https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609633601&amp;sdata=SrEazJzdmJ6KYFuZRDRBmt0Uk7%2BF8ZixRu5db2ol%2B00%3D&amp;reserved=0
    > >     >     <
    > >     >
    > >
    > 
https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609633601&amp;sdata=SrEazJzdmJ6KYFuZRDRBmt0Uk7%2BF8ZixRu5db2ol%2B00%3D&amp;reserved=0
    > >     > >*
    > >     >
    > >     >
    > >     >
    > >
    > >     --
    > >
    > >     Piotr Zarzycki
    > >
    > >     Patreon: *
    > >
    > 
https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609633601&amp;sdata=SrEazJzdmJ6KYFuZRDRBmt0Uk7%2BF8ZixRu5db2ol%2B00%3D&amp;reserved=0
    > >     <
    > >
    > 
https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609633601&amp;sdata=SrEazJzdmJ6KYFuZRDRBmt0Uk7%2BF8ZixRu5db2ol%2B00%3D&amp;reserved=0
    > > >*
    > >
    > >
    > >
    >
    
    
    -- 
    
    Piotr Zarzycki
    
    Patreon: 
*https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609643604&amp;sdata=GQpRF%2F%2FMYdF7v08zgb1Kjvlf7zUFmLAuWDaVp9fe0eE%3D&amp;reserved=0
    
<https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609643604&amp;sdata=GQpRF%2F%2FMYdF7v08zgb1Kjvlf7zUFmLAuWDaVp9fe0eE%3D&amp;reserved=0>*
    

Reply via email to