Allan Jardine
2c9ce2aa59
Fix: When filtering is applied to a table which has y-scrolling, and the filter was sufficient to make the scrolling disappear, the table width would increase by the scrollbar width. This was of course incorrect and the result of a change for 1.8.1 - we need to test is the scrollbar is present or not for the fix to be correct, which it now does. Unit test added.
...
Fix: As with the fix in 1.8.1 for the x-scrolling appearing when disabled the footer needs the same consideration as the header, otherwise it can be cut off visually.
2011-06-29 18:08:14 +01:00
Allan Jardine
38cf5b6928
Merge branch 'master' of github.com:DataTables/DataTables
2011-06-27 17:26:42 +01:00
Allan Jardine
2db0cb398f
Start 1.8.2 development
...
Updated: Split the Ajax parameter building into it's own function (_fnAjaxParameters) so it can be called through the oApi parameter. The intention is that external programs such as TableTools can build up the same parameter set as TableTools uses.
2011-06-27 17:25:52 +01:00
Allan Jardine
e34f232f86
Start 1.8.2 development
...
Updated: Split the Ajax parameter building into it's own function (_fnAjaxParameters) so it can be called through the oApi parameter. The intention is that exte
rnal programs such as TableTools can build up the same parameter set as TableToo
ls uses.
2011-06-27 17:23:43 +01:00
Allan Jardine
f7c7751b4b
DataTables 1.8.1 development finished
2011-06-25 19:56:53 +01:00
Allan Jardine
56a7564ee8
Dev fix: fnDestry wasn't reapplying original with correctly due to a mistake in an earlier commit - picked up by unit tests
2011-06-25 17:43:47 +01:00
Allan Jardine
3a63638916
Fix: Row alignment with x-scrolling disabled and the table too small to draw fully. Previously DataTables would emit an error about the columns not aligning in this case, and then try its best to draw the table, but this would end up looking quite bad. The fix is to not allow the table to draw smaller than it can possibly be when x-scrolling is disabled. This effects dynamically resizable tables - 5232
2011-06-25 15:29:07 +01:00
Allan Jardine
0d94f1af0c
Update: For objects, consider mDataProp which is sent from DataTables for sorting and filtering to get the correct order of the rows. This is useful for ColReorder and more generally it increases the flexability of the whole table
2011-06-25 08:34:54 +01:00
Allan Jardine
a3718fa6a9
New: Send mDataProp to the server for server-side processing. This is very simialr to the sNames parameter, but more convient when already using mDataProp
2011-06-25 08:33:06 +01:00
Allan Jardine
e00e6d39e3
Updated: Update to latest jQuery - 1.6.1
2011-06-25 07:54:38 +01:00
Allan Jardine
41bf4e28bd
Fix: Columns which are sortable but hidden have events attached to them for sorting, but this event handler is not removed when the column is made visible again for fnDestroy. Simply need to change the order of how the destroy is done - i.e. remove events just after the columns are made visible, not before - 5497
2011-06-25 07:40:30 +01:00
Allan Jardine
d21a8529ee
Fix: When complex expressions are built up with aoColumnDefs, resulting in the ability for a column to be turned "on and off" during initialisation, it would result in the column classes possibly not being correct for the sorting - 5472 - kudos to rups for this fix
2011-06-23 18:42:40 +01:00
Allan Jardine
c14169903f
New: Accessability features - the length changing control and filtering control are now wrapped in <label> tags (an explicit relationship to their input elements) to aid accessability. You can see this immediately by simply clicking on the "Search:" text now - it will focus the input of the text box, while for screen readers it will give the label text from the label.
...
New: The filtering input language string (oLanguage.sSearch) now has the "macro" _INPUT_ in it to allow the input element to be positioned anywhere in the string. For example if you gave "sSearch": "Data_INPUT_Tables" the output for the filter would be "Data<input.../>Tables". This is optional - if _INPUT_ is not given, then as before will will tack the input element on to the end of the given (or default) text string.
2011-06-21 21:48:28 +01:00
Allan Jardine
aaf9697bd6
Fix: The ability to use complex data structures in 1.8 means that arrays which are passed into to fnUpdate need not strictly be the same length as the number of columns in the table - therefore the warning that is given if you do this is wrong... no other code changes needed - just no need to generate the warning! Unit test added - 5396
2011-06-21 18:38:00 +01:00
Allan Jardine
bb26e08b4e
Examples fix: Details table has one extra column in it at the start, so this needs to be taken into account when sorting - 5422
2011-06-21 06:48:21 +01:00
Allan Jardine
6557642f75
Fix: The table width is not set when auto width is disabled so we should not set it when destroying the table - 5220
2011-06-20 18:08:10 +01:00
Allan Jardine
3f04293609
Start DataTables 1.8.1 development
2011-06-20 18:05:29 +01:00
Allan Jardine
839f5418a9
Fix: A couple of typos in the examples
2011-06-11 18:10:21 +01:00
Allan Jardine
5574025364
DataTables 1.8.0 :-)
2011-06-04 07:38:39 +01:00
Allan Jardine
8859dfe380
New: mDataProp can now be a function as well as either a string or an
...
integer. This allows dynamic reading of information from the source
object (for example getting the length of an array in the data source
object) as well as the deep object reading and array index reading
already available. The function is called with a single argument (the
data object) when being read and two arguments (the data object, new
value) when being set. This can be seen as an alternative to fnRender
but it makes sense to include this functionality here as an option.
2011-05-30 14:24:57 +01:00
Allan Jardine
2530ea1fdc
DataTables 1.8 beta 4 development complete
2011-05-29 19:36:42 +01:00
Allan Jardine
e08f95f5a2
Update: Unit tests which text the argument count for fnServerData updated to include oSettings being passed as fourth argument
...
New: sLoadingRecords tests added for Ajax source loading
2011-05-29 19:00:16 +01:00
Allan Jardine
e9afa984d4
Fix: When using server-side processing the new sLoadingRecords message is not used since the draw doesn't progress that far. As a result the same issue as was fixed in commit cc1908baaf
could occur and needs to be addressed here by checking for server-side processing. Regression picked up by unit tests
2011-05-28 11:17:31 +01:00
Allan Jardine
e769731746
Fix: Treat null the same as an empty string for type detection - i.e. don't try to detect a type on it. Regression picked up by unit tests
2011-05-28 11:06:38 +01:00
Allan Jardine
53908784fe
Fix: Couple of little jslint found issues
2011-05-28 10:27:39 +01:00
Allan Jardine
cc1908baaf
Fix: The check against sAjaxSource for the 'loading...' message should be null rather than an empty string since null is the default for sAjaxSource. This error would result in the loading message being shown if the table has no results initially
2011-05-27 19:20:01 +01:00
Allan Jardine
e6248382c6
Merge branch 'master' of github.com:DataTables/DataTables
2011-05-27 19:07:34 +01:00
Allan Jardine
2a9068fead
New: The object returned by $.ajax is assigned to jqXHR in the table's settings object now. This means that you can access the XHR in fnDrawCallback (or any of the other callback functions, or anything with access to the settings object!) to do further data manipulation if you wish.
2011-05-27 19:05:35 +01:00
Allan Jardine
42e50f6ba7
Fix: The return false in the click handler for the full numbers pagination numbers was somewhat too harsh and stopped other
...
events from being attached to those elements if the developer wanted. Just use preventDefault instead - 5105
2011-05-26 10:48:13 +01:00
Allan Jardine
2eacc63f87
Fix: If there was a nested table in the thead of our target table, then the getElementsByTagName was getting the wrong element - so use a more specific jQuery selector.
2011-05-19 18:58:32 +01:00
Allan Jardine
55c4e0ac9c
Fix: Oops - Committed debug by mistake. Remove...
2011-05-18 22:16:28 +01:00
Allan Jardine
5ca44c8405
Fix: The automatic type detection algorithim can incorrect give precidence to numeric sorting when an empty cell is found. This means that a column of dates with a single empty cell would be sorted as a string. The fix is to skip type detection on empty cells. This also means that the sorting algorithim needs to be updated since sType might not be defined for a column when it is sorted on now (if the data in the column is empty).
...
Fix: iDataSort, sDataType in the sort function should be declared as local parameters - should give a tiny bit more speed to the sort
2011-05-17 21:20:59 +01:00
Allan Jardine
12bbdad059
DataTables 1.8 beta 4 development starting point
...
Fix: If state saving is enabled, but sorting is not - then any saved filter would not be automatically applied. The fix is to call the filtering function at start up. Thanks to Michael Hamann and Roland Ramthun for finding and fixing this issue.
2011-05-15 18:03:21 +01:00
Allan Jardine
419ad58d0b
DataTables 1.8 beta 3
2011-05-14 10:58:24 +01:00
Allan Jardine
3ae5367ddc
Dev fix: Committed test case my mistake - reverting
2011-05-14 10:58:00 +01:00
Allan Jardine
7bef3d19b4
Fix: Tidy up the fnGetPosition API method and allow it to cope with getting a TH cell's position in the table as well as TR and TD elements. The input and output options for the function have not changed - just it's internal operation.
2011-05-14 10:48:14 +01:00
Allan Jardine
c56c84683c
New: fnUpdate has been updated (oh the irony) to accept either an individual value, an array or an object as the first parameter passed to it. The individual and array options behave exactly as they did before this change - the new option is the object being passed in. This allows fnupdate to be given a data object which is identical to data objects used by the table when using complex objects and mDataProp. How fnUpdate itself actually operates has also changed to be self calling, which makes the multipe column updates for arrays and objects much easier.
...
Fix: fnUpdate now works with TH elements in the body as well as TD elements
2011-05-14 10:35:57 +01:00
Allan Jardine
8eafb87f1e
New: New callback function fnPreDrawCallback which is called at the very start of each table draw (so rather like fnDrawCallback, just before the
...
draw!). This function is, like all other DataTables callbacks, execuated with the DataTables instance scope, and also takes a single parameter -
the DataTables settings object. The attached function can cancel the draw by returning false, anyother return (including undefined) results in the
full draw occuring).
2011-05-13 10:27:15 +01:00
Allan Jardine
a84eec581b
New: New language option sLoadingRecords which is used when the table's data is Ajax sourced, and at the first draw only. This provides an
...
indication that the data is currently being sourced from the server (i.e. Loading...) rather than showing 'No data available in table' - which is
not particularly friendly. Note that for server-side processing, DataTables will leave whatever is in TBODY when it makes the first Ajax request,
so with server-side processing you would need to put in a TR/TD into the static HTML table.
2011-05-13 10:19:29 +01:00
Allan Jardine
9cf1ff785e
Dev fix: The insertBefore for column visibility was incorrect if the next column was hidden as well. Need to 'fast-forward' to the next visible column to get the insert point.
2011-05-13 06:38:56 +01:00
Allan Jardine
844bbaf4ee
Fix: fnSetColumnVis didn't cope with TH elements in the body due to the use of a 'td' selector. The fix for this is to use _fnGetTdNodes() (since that can get an array of TD|TH nodes, which in turn allows a nice tidy up of the insert part of the function.
2011-05-12 21:34:48 +01:00
Allan Jardine
f27c487862
Fix: fnSetColumnVis was broken when used with deferred rendering due to the offset calculation done with the huge flat array of TD nodes. The fix is to simplify this somewhat and get an array for each row (when it is available) and process that using the optional parameter for _fnGetTdNodes. This doesn't result any any extra computation time, other than the addional time to call the function (but not to execute it), since it is just moving where the loop is.
2011-05-12 20:46:33 +01:00
Allan Jardine
97386476c8
Fix: A couple of little jslint tidy ups
2011-05-12 20:37:35 +01:00
Allan Jardine
99b674def8
Fix: New algorithim for calculating the column widths for a table when x-scrolling is enabled. Basically browsers need a bit of a hand when a width is assigned to any columns when x-scrolling as they tend to collapse the table to the min-width, even if we sent the column widths. So we need to keep track of what the table width should be by summing the user given values, and the automatic values
2011-05-12 20:32:18 +01:00
Allan Jardine
84a1940cad
Fix: Passing an integer for sWidth would cause the column width calculations to go completely off since they weren't actually used by the browser. Make use of the _fnStringToCss helper function for exactly this kind of thing.
2011-05-12 20:29:24 +01:00
Allan Jardine
0c493b6789
New: New column option - sContentPadding. What this option does is tag on an extra string to the content of the columns in the width calculation table, in order to take account of the fact that 'iii' is actually less wide than 'mm', but DataTables will pick 'iii' as the longer due to the string width. With sContentPadding you can add an extra string to any column to force DataTables to take account of this during the width calculation - the string in sContentPadding is not used anywhere else and is empty by default. This option will remain undocumented for the moment, since I suspect it will confuse more than help, but it is very useful to have around when x-scrolling.
2011-05-12 20:23:40 +01:00
Allan Jardine
fcc41bc535
Fix: When calculating the string width for column sizes, we know that we are going to be using strings for the display - so cast as a string, which means that we can take the length of any primitive (particularly numbers).
...
Fix: The max string width calculation was including HTML, which is just plain wrong since the HTML will be hidden. This is still not perfect since "iiii" takes less space than "mmm" in the browser display, but addressing that would take some serious clocks cycles, and this is good enough for now.
2011-05-12 20:18:48 +01:00
Allan Jardine
dd0e4023f0
Fix: _fnGetTdNodes works on a column data array basis, not visible columns, so _fnGetWidestNode need only deal with column indexes. It was possible before that the width calculation would be done in the wrong column if using hidden columns
2011-05-12 20:14:29 +01:00
Allan Jardine
c8c10d1fba
Fix: fnGetData should give the original data object, rather than the array that DataTables uses for rendering the actual table. This was part of the original commit for the 1.8 object handling, but in retrospect, the original data is much more useful.
2011-05-12 20:11:11 +01:00
Allan Jardine
b3f5ddaf96
Fix: When calculating the column widths, we should get the data to display, otherwise a null element (particularly when using a null mDataProp) can
...
cause issues with columns being skipped (due to the null return)
2011-05-11 08:53:33 +01:00