From: <AFr...@ba...> - 2001-03-13 20:15:23
|
Hello. I am looking to either implement or extend an existing widget that by and large looks like a spreadsheet. Features that I am looking for: - horizonal and vertical scrollbars - column headers - optional row numbering - single and/or multi column selection (by clicking on the col header) - single and/or multi row selection (by clicking on the row number) - row selection with a checkbox - row insertion (which requires renumbering of rows/ids) - column insertion - column freezing - ability to scroll around on the grid with the cursor keys Optionally I would like to have it have these type of features: - column based datatypes (text, number, dropdown) - column based [un]locking of cells - inline cell editing based on the colum's datatype or the cell's datatype - copy insert of a row(s) I have implemented a DOM based version, more a (poor) proof of concept, of this using a table; however, it does not implement all of the features that I need. One of the primary problems is that my version does not fix the column headers and the row numbers to the sides of the grid. This makes the grid useful with only a screenful of data. Since I have the potential to have 60 columns and 150 rows, it is very unlikely that all of the data will fit on one screen. Also, since I have more than a screenful of data, it is essential that it displays a screenful of data ASAP. I was able to accomplish this by using the setTimeout function in JS. Talk about a hack... ;) I found the example on Scott Andrew's site: http://www.scottandrew.com/dhtml/demos/dynchart.html but this does not help with the scrolling issue. I am also concerned with the number of layers his approach creates. If I have a 60x150 grid I am looking at 9000 DIV tags just for the grid. That does not take any of the other layers that may be needed in to account. Being that I am not by any stretch of the imagination familiar enough with the DynAPI and all of the changes that it has been undergoing the past several weeks to know where to start on this I would appreciate any suggestions. At this point I have looked at modifying the dynapi.gui.ScollPane but I do not know if that is really where I should be starting. I would appreciate any suggestions that anyone can offer. Thanks, Andy |