On Mon, 28 Jan 2013 17:20:54 -0200 Gustavo Sverzut Barbieri <barbi...@profusion.mobi> said:
> On Mon, Jan 28, 2013 at 5:11 PM, Jeff Hoogland <jeffhoogl...@linux.com> wrote: > > That idea works great for a package manager (something on my eventual TODO > > list in the far off future). However that is just one example of where a > > columned list was useful - I still don't think there is any better way to > > lay out a task manager which needs to be able to be sorted by PID/Process > > Name/CPU or RAM usage for applications. > > the task manager is a different problem as it has less rows to show, > not dozen thousand lines (usually). Then you can more easily do with > table + scroller. tho you may end up with a few thousand lines if you include threads... but then its unusable for users... so reality is people will only need a few hundred on a bad day... :) > There is no automatic "click header to sort", but it's easy to > implement. Maybe I can have a try and let you know. i just think this is a good opportunity to point out that - even *IF* you had to do a columned thing with a table with 100000's of items... you CAN do it with a scroller+table+ manual sizing tweaks. you need to insert invisible rectangles into cells as sizing controls - if you want to manually size things, otherwise widget content is going to be the only thing doing the controlling. the other thing you can do is monitor table x/y position with move callbacks and as the table moves around - compare its position with the canvas viewport and then as cell elements logically come into view, create widgets and pack them into those cells. when they go out of the viewport, delete them. this means you keep only an active set. if you are smart - you dont delete, you recycle and have a pool of "objects to re-use" so you re just MOVING them around the table as it scrolls. use invisible rects to "fill in rows/columns" or even multilpe rows/columns all at once so you have only a few rects for the region of the table outside the current canvas viewport, and these are just "holding" the table size together. the rest you fill in as needed, or remove/recycle. this offers speed, memory efficiency and "infinite scrolling" but HOW to handle this depends really on your exact use case, what kind of data/layout you have etc. etc. genlist is a "specific common case pre-packaged" version of the above for you. the problem is that it has grown out of all proportion and is abused heavily. when i wrote genlist i knew it was limited but covered a very common case, and that would save people time, BUT they could do the above if they got fussy and were willing to do just a little bit of extra work themselves. so i'm just putting this here as a "fyi/on the record" example of what is possible, if you bother to go to the effort. thus a table can be used and "logically" can hold 1000000's of items - every package you have and file and more, as you LIMIT the active set of objects just to what you can SEE (plus a little). > -- > Gustavo Sverzut Barbieri > http://profusion.mobi embedded systems > -------------------------------------- > MSN: barbi...@gmail.com > Skype: gsbarbieri > Mobile: +55 (19) 9225-2202 > > ------------------------------------------------------------------------------ > Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS, > MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current > with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft > MVPs and experts. ON SALE this month only -- learn more at: > http://p.sf.net/sfu/learnnow-d2d > _______________________________________________ > enlightenment-devel mailing list > enlightenment-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel > -- ------------- Codito, ergo sum - "I code, therefore I am" -------------- The Rasterman (Carsten Haitzler) ras...@rasterman.com ------------------------------------------------------------------------------ Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS, MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft MVPs and experts. ON SALE this month only -- learn more at: http://p.sf.net/sfu/learnnow-d2d _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel