Oct-04, 2011
- Release 10.0 of the SDL Component Suite
- Support of Embarcadero Delphi XE2, C++Builder XE2, and Rad Studio XE2
- Borland Delphi 2005 no longer supported
- SDL_geobasics: a collection of fundamental geodetic routines
- TMat4D allows to manage 4-dimensional hypercube matrices
- the new visual component TMiniCal implements a new calendar component
- the new class TStringSearch supports the search of strings with boolean search expressions
- the new visual component TRepSpeedButton implements a button which triggers repeated clicks when pressed
- the new class TPLSModel provides the computational engine for partial least squares (PLS) analysis
- the new class TCrossValidator allows to cross validate arbitrary statistical models
Important hints for adapting existing programs:
- The declaration of TCheckStateChangeEvent had to be changed - the State parameter is now a variable parameter. This affects the events TReportListView.OnCheckedChange and TReportListView.OnBeforeCheckedChange (unit SDL_replist). Thus you have to change the corresponding events in your program, by inserting a "var " statement before the "State" parameter.
- The declaration of TDendroShowObjLblEvent had to be extended by a color parameter. This affects the TDendrogram.OnBeforeShowObjLabel event. Please insert "; var Color: TColor" before the closing paranthesis of the event handler.
- SDL_datatable
- a cell state csImputed introduced (replacing csUser4)
- the method ExportAsCSV allows now to export row attributes, as well
- the new method CountEmptyCells counts the number of empty cells
- the new method CountImputedCells counts the number of imputed cells
- SDL_dendrogram
- TDendrogram has been redesigned to provide a fixed area where the object labels are displayed
- object labels are now displayed rotated by 90° if a TrueType font is used
- the function FindObject searches for a particular object in the dendrogram
- the properties MarkedObject and MarkedObjType allow to mark a particular object
- the property ForceStaggeredLabels may be used to control the automatic rotation of object labels
- new properties ColorEmptyArea and ColorLabelsBG control the background colors of the object label area and the empty corner.
- the new event OnCrossHairMove signals the movement of the crosshair
- SDL_dstruct
- the new method TBitFld.Clone creates a complete copy of an existing bit array
- SDL_filesys
- function InventPassWord has been extended by additional parameters
- new function FindFirstMatchInTextFile allows to search for a substring in a text file
- SDL_geoatlas
- bug fix: default width and height are now correct
- SDL_geobasics
- first release to public
- several new procedures and functions for converting UTM coordinates (GeoToUTMZone, LatLongToUPS, LatLongToUTM, UTMCentralMeridian, UTMToLatLong)
- constant array CountryData has been moved from SDL_geomap to SDL_geobasics
- SDL_geodb
- new readonly property DBVersion returns the version of the database structure
- SDL_geomap
- constant array CountryData has been moved from SDL_geomap to SDL_geobasics
- the structure TCalibData has been extended to support UTM projections
- new property Caption allows now direct access to CalibData.Caption
- new method ResizeMap allows to physically resize a map (both the image and the calibration data)
- calibration models extended by Universal Transverse Mercator (UTM) and equi-rectangular projection (see CalibModel)
- SaveCalDataAsXML and WriteCalDataToOpenXMLFile improved (format adjustments)
- calibration algorithm of conic conformal model improved
- bug fix: CalcExtentsAndResolution now calculates the correct map resolution if the map spans more than 180 degrees longitude
- bug fix: SaveLandmarks and WriteLandmarksToOpenXMLFile missed saving the landmark ids and the time stamps
- SDL_math1
- new function ConvertEndian rearranges the bytes of numeric values from little to big endian and vice versa
- new function InterpolZofXYRect calculates the z value at a particular position of a simple 3D surface
- bug fix: function DegreeToStr now creates minutes and seconds (e.g. 3°0' instead of 2°60') the correct way
- SDL_math2
- the procedure SimPLS implements the SIMPLS algorithm for partial least squares regression
- the new methods RidgeReg and RidgeRegStd provide the ridge regression algorithm
- TMathExpression: variable names may now contain German umlauts
- new class TStringSearch implemented
- the class TCurveFit uses now extended precision internally to avoid floating point overflow in special cases
- bug fix: TCurveFit.MeanX, TCurveFit.MeanY, TCurveFit.MeanDiff do no longer crash if no data has been entered
- SDL_matrix
- new class TMat4D allows to manage 4-dimensional hypercube matrices
- matrix classes can now be set to zero dimensions
- TMatrix.CopyFrom offers now an additional overloaded version to copy data from integer matrices (TIntMatrix).
- the methods SaveToStream and LoadFromStream now support file streams, as well
- new method TransposeAndMultiply allows to transpose and multiply in one step
- the new methods FillRandomGauss and FillRandomUniform fill the matrix of type TMatrix, TIntMatrix and TMat3D with uniformly or normally distributed random numbers
- SDL_ntabed
- bug fix: Cells marked as "csUser1".."csUser3" are now displayed correctly (instead of showing 3 question marks)
- SDL_numio
- new property SignificantDigits allows to control the number of significant digits for input in exponential notation
- new property ButHeight controls the height of the button
- TNumIO2 now offers an additional gauge bar which allows to set an approximate value by draging the mouse within a range gauge. The following new properties/events serve to control the gauge bar: GaugeColor, GaugeColorBg, GaugeColorFrame, GaugeFrameStyle, GaugeHeight, GaugeLeftMargin, GaugeTopMargin, GaugeVisible, GaugeWidth, OnGaugeChange.
- the new readonly property IntegerValue returns the (rounded) integer value of the input field
- SDL_numlab
- bug fix: NumLab displays minutes and seconds now correctly (e.g. 3°0' instead of 2°60')
- SDL_plot3d
- bug fix: The component does no longer raise an exception if one of the axes is perpenticular to the viewing plane
- bug fix: the method AutoScale now sets the Z scaling factor correctly
- SDL_rchart
- exception is raised if a logarithmic axis is set to negative values
- class TContourPlot now offers the method SetIsoParams to set the isohypses parameters at once
- the new readonly properties TContourPlot.MinPivot and TContourPlot.MaxPivot return the span of z-values of a contour plot
- bug fix: AutoRange, AutoRangeXOnly, and AutoRangeYOnly now work correctly for joint layers
- the property TContourPlot.SuppressPaint is now available for suppressing paint updates
- SDL_replist
- new method CenterScrollAndSelect scrolls the list view so that a particular row is selected and visible in the center of the list view
- the method AutoColWidth has been extended by an overloaded version which allows to restrict the maximum column width
- the new method DetermineMaxColWidth returns the required width of a column to avoid clipping its contents
- slight change in declaration of TCheckStateChangeEvent (State is now a variable parameter)
- new event OnBeforeCheckedChange allows to intervene during ticking off a check box
- the new array property RowEnabled allows to control which of the rows are disabled or enabled
- the new properties ColorDisabledBkgd and ColorDisabledText control the colors of disabled rows
- the new methods DisableAllRows and EnableAllRows change the enabled state of all rows
- new method FilterAndSort allows to filter the report listview and display only part of the contents
- new properties TRLData.ColumnCheckMode and TReportListView.ColumnCheckMode implement an additional checkbox mode (radio buttons) and replace the old properties TRLData.IsCheckedColumn and TReportListView.IsCheckedColumn, respectively.
- new functions TRLData.FirstCheckedElemInCol and TReportListView.FirstCheckedElemInCol return the index of the first checked element in a particular column.
- SDL_sdlbase
- TCrossHMode extended by an additional crosshair type (chBox)
- the new function FontIsTrueType tests whether a font is a TrueType font
- new type declarations TIntArray and TOnCheckAbortEvent
- SDL_sdlcolors
- method TColorArray.Assign implemented
- new function MeanColor for averaging two colors
- SDL_statis
- new class TPLSModel provides the computational engine for partial least squares (PLS) analysis
- the new class TCrossValidator allows to cross validate arbitrary statistical models
- SDL_stringl
- new function StringContains and StringContainsOtherThan implemented
- new function EnsureLeadingChar ensures that a string starts with a particular character
- new function IsUmlaut checks for German umlauts
- new function BinString returns a string from two alternatives
- SDL_vector
- new method MeanCenter implemented
Nov-04, 2010
- Release 9.7/XE of SDL Component Suite
- Support of both Embarcadero Delphi XE, C++Builder XE, and Rad Studio XE
May-31, 2010
- New Release 9.7 of the SDL Component Suite
- Support of both Embarcadero Delphi 2010, C++Builder 2010, and Rad Studio 2010
- new components available:
- SDL_onoffbut: a component to display binary switches
- SDL_sevenseg: 7-segment displays
- SDL_rotlab: rotable label
- SDL_boxplot
- bug fix: memory leak fixed (due to not freeing FLabels)
- SDL_complex
- new function CpxIsNearEqual tests if two complex numbers are almost equal
- SDL_datatable
- the new methods CRCofCellStates and CRCofNamesAndAttributes allow to calculate a CRC code over the cell states and the names and attributes of the table
- the methods ExchangeColumns and ExchangeRows allow to exchange two columns/rows
- the following new methods can be applied to cells having a particular cell state: SumOfMarkedCells (sums up cells), MinMaxOfMarkedCells (searches the minimum and maximum), and MeanVarOfMarkedCells (calculates the mean and the standard deviation)
- ClearNominalIDs clears all nominal IDs of a column
- the methods MirrorColumns and MirrorRows allow to mirror a data table
- new method CountValidCells counts all valid non-empty cells
- new method MinMaxOfValidCells finds minimum and maximum of valid non-empty cells
- the methods GeometricMeanOfNumCells, HarmonicMeanOfNumCells, MeanVarOfNumCells, QuartilesOfNumCells, CountNumCells, SumOfNumCells, MinMaxOfNumCells, and PercentileOfNumCells now account for categorial columns
- ExportAsASC and ExportAsCSV are now functions returning an error message if the file cannot be created or overwritten
- ImportASC and ReadFromASC now check if the file exists and return an error code if not
- greatly improved speed of ExportAsASC for large data matrices
- the method Changed has been renamed to ChangedData
- new method ChangedSetup allows to trigger the OnChangeSetup event programmatically
- new event OnChangeSetup is triggered when the layout of the table is changed
- bug fix: ImportFromCSV did not reset scaling information of variables
- bug fix: ImportFromCSV now marks empty cells as empty (instead of setting them to zero values)
- SDL_dendrogram
- new method RetrieveClusterClasses implemented
- method CalcClasses is now a function and returns TRUE if the max. number of classes is exceeded
- SDL_dstruct
- new method TStringArray.CopyRow implemented
- SDL_filesys
- the new function CountFiles counts all files matching particular search criteria
- bug fix: version [2] of ReadHeaderOfASC now correctly reads old ASC-file headers which do not specify any information on categorial values.
- SDL_gauge
- logarithmic scale implemented (property Logarithmic)
- new properties MinTicks and ShortTicks allow better control of scale ticks
- SDL_htmlsupport
- SDL_marksel
- new property ShowZeroAsCross allows to control symbol at index zero
- new property Enabled allows to disable the component
- SDL_math1
- new function CheckPowerOfTwo checks if an integer number is a power of two
- new function DistFromRect calculates the distance from a rectangular region
- bug fix: IsValidDecInt returns now correct result for isolated minus or plus signs
- SDL_math2
- new methods TCurveFit.QuartilesX and TCurveFit.QuartilesY calculate the quartiles of data in the TCurveFit container
- class TMathExpression supports now three new functions: nddens, ndint, and ndquant calculate the density, the integral, and the quantile of a standard normal distribution, respectively.
- ExportAsASC is now a function (instead of a procedure) returning an error message if the file cannot be created or overwritten
- the new method TCurveFit.CalcAnovaReg performs the analysis of variances
- bug fix: CalcCovar crashed if the target matrix was too small
- bug fix: TCurveFit.SpearmanRankCorr does not crash any more if more than approx. 1250 values are used for the calculation
- bug fix: TCurveFit.SmoothedSpline calculates the smoothed spline at position TCurveFit.MaxX as well
- SDL_matrix
- new method CRCofData calculates the CRC over all matrix cells
- new methods MirrorColumns and MirrorRows allow to mirror the matrix
- new methods ExchangeRows and ExchangeColumns allow to exchange to rows or columns of a matrix
- new function FindInSortedColumn searches a sorted column by a binary search
- bug fix: depending on the data the calculation of the determinant resulted in a wrong sign (but correct absolute values) for matrices of even dimension (bug was introduced with release 9.51)
- bug fix: sorting the matrix (both rows and columns) does no longer reduce the numeric precision to 12 significant digits
- SDL_meter
- TMeter component now supports logarithmic scales
- bug fix: second needle is now automatically limited to meter range when changing MeterMinValue or MeterMaxValue
- SDL_ntabed
- new property AutoAdvanceDir controls the direction of the automatic cell pointer movement when the "Enter" key is pressed
- the new event OnBeforeRenderCell allows to adjust individual cells
- mouse wheel support added
- new property DataReadOnly allows to switch the table editor into read-only mode
- new function GetClipMatrixSize retrieves the size of a text matrix in the clipboard
- popup menu of the heading area extended to support the selection of entire rows and columns
- the methods MirrorColumns and MirrorRows allow to mirror a data table
- sort speed improved by suppressing intermediate repaints
- the method Changed has been renamed to ChangedData
- new method ChangedHeading allows to trigger an OnHeadingChanged event
- bug fix: empty cells are now indicated by empty boxes again (instead of '???') - bug was introduced with release 9.51
- bug fix: inverted headers (when right clicking) operate now as expected
- bug fix: when interactively changing the row/column attributes the OnHeaderChanged event is triggered (instead of the OnChange event)
- bug fix: CopyContentsFrom did not copy scaling information
- bug fix: font changes show immediate effects now
- buf fix: changing any Nominal IDs now triggers the OnChange event
- SDL_numio
- the new public variable ButtonPivots allows to predefine a list of button pivot points
- the new method OutOfRange checks the validity of the current value
- up/down button in TNumIO2 now triggers OnChange event
- bug fix: TNumIO2.InputFormat = itDynamic works now as expected (did not accept floating point numbers)
- bug fix: isolated plus and minus signs are now allowed in TNumIO2
- bug fix: enabled/disabled states are now reflected in the button as well
- bug fix: TNumIO2 now accepts characters from numeric key pad, as well
- SDL_numlab
- flickering of the transparent NumLab component is eliminated if the color of the label value (property ColorLabText) is black
- SDL_plot3d
- speed of the assignment of values to the data grid improved
- property AutoCenter implemented
- caption of axes implemented (properties CaptionX, CaptionY, and CaptionZ)
- properties LabDistX, LabDistY, and LabDistZ control the distance of the caption from the axis
- SDL_polchart
- new property AutoCenter implemented
- bug fix: the grid does no longer become invisible when calling ShowGrafNewOnly
- SDL_progbar
- bug fix: rotated text now works under .NET as well
- SDL_rchart
- new element RectangleRelPix implemented
- the simple text labels (created by the method Text) can now be offset by a number of pixels and can be aligned individually
- isometric scales now try to maintain the center of the scale at the same position when resizing the chart
- a double click on the component does no longer trigger the MouseDown event in addition to the OnDblClick event
- MouseAction supports now maRubberBand and triggers the OnRubberBand event when the mouse is released
- bug fix: vertical alignment of TextLabels containing several lines is now working as expected
- bug fix: line of tkArrow element was offset by one pixel
- bug fix: caption of chart did not scale properly when printing the chart
- bug fix: problems with logarithmic scales upon interactive zooming fixed
- bug fix: black and white copy of chart showed colored labels
- bug fix: memory leak fixed (caused by not freeing TJointLayers and TColorArray)
- bug fix: crosshair of contour plot was not accessible under C++
- SDL_replist
- new property SecondarySortColumn controls the sorting behavior if two or more equal cells are to be sorted
- new property UseCtrlForMultiSel controls behavior when multi-row selection is active
- new properties EmptyMessage and ColorEmptyMsg allow to define a default message for empty report lists
- new method TRLData.CopyRow implemented
- new methods SetAllCheckmarksOfCol and InvertAllCheckmarksOfCol implemented
- bug fix: Assign method of TRLData did not copy column zero
- SDL_rot3d
- new property LineWidth allows to control the line width of the Line and DrawTo methods
- bug fix: colors of the Line method were restricted to the 16 basic Windows colors
- SDL_scale
- bug fix: memory leak fixed (caused by not freeing TDTScale)
- SDL_sdlbase
- TDoubleArray declared
- TRubberBandEvent and TOrientation declared
- the procedure DrawMarkOnCanvas supports now a few additional symbols
- SDL_statis
- two functions for appyling the Grubbs outlier test implemented: GrubbsCriticalValues and GrubbsTest
- bug fix: FDistriQuantile calculated incorrect quantiles for p values less than 0.5 and unequal degrees of freedom
- SDL_STRINGL
- new function CountStringInString implemented
- bug fix: ReadNextTagInString does not crash anymore if string is empty
- SDL_vector
- new method Mirror implemented
- new method FindInSortedVector implements a fast binary search
- the new method CRCofData calculates a CRC code over all vector cells
Mar-09, 2010
- New release 2.700 of DataLab. For a detailed list of improvements, please see the Datalab release history.
Oct-20, 2009
- Internal Release 9.6 of the SDL Component Suite. This release was available to existing customers only. The next public release is 9.7 (all changes of both version 9.6 and 9.7 are described in the 9.7 release history above)
Jun-23, 2009
- New release 2.650 of DataLab. For a detailed list of improvements, please see the Datalab release history.
Apr-28, 2009
- New release 2.640 of DataLab. For a detailed list of improvements, please see the Datalab release history.
Feb-11, 2009
- New release 2.630 of DataLab. For a detailed list of improvements, please see the Datalab release history.
Dec-01, 2008
- New Release 9.51 of the SDL Component Suite
- SDL_DENDROGRAM
- bug fix: Font property is now working as expected
- SDL_DSTRUCT
- search direction for the methods TStringArray.FindCell and TStringArray.FindCellExact has been changed (they now search the string array rowwise)
- bug fix: TAssocArray.Remove now works as expected
- SDL_MATH2
- new function PointIsInsideConvexHull checks whether a point is inside or outside of a convex hull
- bug fix: procedure Convex2DHull produced wrong results if the x-coordinates of two neighboring points were exactly equal
- SDL_MATRIX
- bug fix: methods Determinant and LUDecomposition now work correctly if first diagonal element is zero
- SDL_NTABED
- undefined cells are now indicated by the string '???'
- bug fix: copying a numeric value containing leading or trailing blanks from the Windows clipboard into a cell now works correctly
- SDL_NUMIO
- the TNumio2 component now offers an optional up/down button (properties But3D, ButColor, ButIncrem, ButSpace, ButVisible, and ButWidth)
- bug fix: tab key now shifts focus as expected
- SDL_RCHART
- bug fix: the font of the chart caption is now correctly taken from the Font property
Oct-31, 2008
- New Release 9.5 of the SDL Component Suite
- Support of both CodeGear Delphi 2009 and C++Builder 2009
- Delphi 5 and C++Builder 5 are no longer supported
- new components TColorArray, TColorScale, and TContourPlot
- SDL_COMPLEX
- bug fix: CpxMult now calculates the correct result
- SDL_DATATABLE
- data table now supports reading from CSV files and writing to CSV files - see ImportFromCSV and ExportAsCSV
- additional version of ReadFromASC to read from clipboard
- data table now supports columnwise measurement scales (interval, ratio, nominal, and categorial), see TMScaleType, MScaleType, NominalID, OrdinalOfNominalID, AddNominalID, and ElemNominal
- new methods InsertRow, InsertColumn, RemoveRow, and RemoveColumn allow to insert, delete, and append entire rows and columns
- new methods SortRowNames and SortRowAttributes sort the data according to the row names and the row attributes
- new methods SortColNames and SortColAttributes sort the data according to the column names and the column attributes
- method UnmarkAllCells resets all cell markings to zero values
- new property IsEmpty allows to control the "empty" state of a cell
- new property IsNumber tests a cell for a valid numeric value
- export and import of ASC files now allow for empty column/row identifiers and empty or NAN data cells by storing a special empty cell identifier
- bug fix: StandardizeNumCellColumns and StandardizeNumCellRows did not include the last row/column of the data matrix
- bug fix: assigning a Comment does no longer create a range check error
- QuartilesOfNumCells and PercentileOfNumCells calculate now more appropriate values for very small sample sizes
- bug fix: row attributes are now unchanged if ReadFromASC is used with ReplaceIDs set to FALSE
- SDL_DENDROGRAM
- object labels are now written using a transparent background
- distance scale now spans the entire width/height of the dendrogram window
- bug fix: AutoRange now scales the dendrogram area more properly
- bug fix: after startup, orientation of dendrogram always was downward, regardless of the property Orientation
- bug fix: dendrogram does not generate the "control has no parent window" error anymore when putting it on a form (bug was only active under Delphi 2007 and Delphi 2005)
- SDL_DSTRUCT
- Sort method now provides a secondary sorting key
- SDL_FILESYS
- new procedure ReadNextWordInTextFile implemented
- new function CheckTextFileType implemented
- function ReadHeaderOfASC extended to allow for the definition of nominal and ordinal variables
- SDL_FOURIER
- new function LineOfFreq transforms frequencies to spectral line indexes
- SDL_GEODB
- the methods AddBLOB, AddBorder, AddCity, AddLake, AddRiver, AddRoad, AddRoute, and AddTown are now functions which return the database entry of the newly created entry
- The type declaration of TgdbData has been changed to include the altitude of a database item (the length of the Name property has been decreased by 4 character to create room for the altitude parameter without changing the memory footprint of the type declaration).
- The methods AddBLOB, AddBorder, AddCity, AddLake, AddRiver, AddRoad, AddRoute, AddTown ReplaceBLOB, ReplaceBorder, ReplaceCity, ReplaceLake, ReplaceRiver, ReplaceRoad, ReplaceRoute, and ReplaceTown are now extended to accept altitude data.
- function GetMetaInfo returns now empty meta information if applied to a non-BLOB database entry
- SDL_GEOMAP
- constant array CountryData provides list of most important data on the countries of the world
- method CreateAndLoadEmptyMap improved: illegal parameter do not longer create exceptions; the labeling of the grid lines is now more concise; an additional callback routine allows to hook into customized drawing routines
- SDL_MATH1
- CalcScalePars now allows to force tick marks at integer values along the axis
- new fucntion EEngStr converts floating point numbers to unit prefix notation
- new procedures to store and load floating point numbers as IEEE hex strings: FPNumToHex, HexToDouble, HexToExtended, HexToSingle
- new procedure RoundDegrees implemented
- ScanDegrees now allows to omit the degree symbol if the input string is terminated by a geographic direction ('N','S', 'E', or 'W').
- bug fix: function DegreeToStr now creates minutes and seconds (e.g. 3°0' instead of 2°60') the correct way
- SDL_MATH2
- properties TCurveFit.SkewnessX and TCurveFit.SkewnessY implemented
- properties TCurveFit.KurtosisX and TCurveFit.KurtosisY implemented
- methods TCurveFit.CalcPowerFit, TCurveFit.CalcHoerlFit, and TCurveFit.CalcExponentialFit now rise an exception if the function cannot be fitted
- method TCurveFit.CalcCenteredPolyFit implemented
- method TCurveFit.CalcPolyFit now provides feedback on numerical instabilities (parameter NearSingular)
- TMathExpression now offers new function "sign" to calculate the sign of a variable
- methods TCurveFit.CalcLinFit, TCurveFit.CalcParabolFit, TCurveFit.CalcGaussFit, ... improved to create better fit with data shifted far away from the origin
- bug fix: TCurveFit.CalcCircleFit does not crash anymore, if radius becomes infinite
- bug fix: TMathExpression now calculates the correct result if argument of an odd power is negative
- bug fix: unary minus and signs are now interpreted correctly by TMathExpression
- bug fix: TCurveFit.CalcLinFit does not crash anymore if all data points are zero
- bug fix: TMathExpression.Evaluate: function Gauss does no longer create a range check error
- SDL_MATRIX
- new method Find searches for particular element in matrix
- MeanCenterColumns and MeanCenterRows implemented
- bug fix: methods Quartiles and Percentile calculate now more appropriate values for very small samples
- SDL_NTABED
- TNTabEd now supports empty cells - property IsEmpty allows to control the "empty" state of a cell
- AutoRowHeight and OptimizeRowHeight allow to control the adjustment of row heights
- the method AutoColWidth is now a function which returns the width the adjusted column
- new property BlockInternalPopup allows to remove default popup menus
- new property CommentEditingAllowed controls the interactive editing of comments
- new event OnHeadingChanged allows to react on any user-triggered changes of the orw and column headings
- new methods InsertRow, InsertColumn, RemoveRow, and RemoveColumn allow to insert, delete, and append entire rows and columns
- the new array properties PopupDCaptions, PopupMCaptions, PopupUCaptions, and PopupHCaptions allow to translate the various popup menu entries to other languages
- new property BoldSelHeads controls bold headings of selected cell
- new property TopRow scrolls grid to show a particular row at the top of the table
- new read-only property IsNumber tests a cell for a valid numeric value
- new methods SortRowNames and SortRowAttributes sort the data according to the row names and the row attributes
- new methods SortColNames and SortColAttributes sort the data according to the column names and the column attributes
- commands Select All and Empty Cells implemented in default data popup menu
- new read-only properties VisibleColCount and VisibleRowCount return then number of visible columns and rows
- bug fix: property PopupDMask and property PopupHMask now work as expected (paste and edit commands could not be switched off)
- bug fix: method Clear now resets the row and column attributes, as well
- bug fix: copy and paste routines now take care of cell states as well
- bug fix: assigning a comment does no longer create a range check error
- SDL_NUMIO
- new method TNumIO2.SetFocus implemented
- SDL_NUMLAB
- new display types dtEEng and dtEEngNoDP support the display of electrical engineering notation
- Enabled property now affects font color of left and right text and numeric label when set to FALSE
- SDL_RCHART
- setting the property ScaleNX/Y.MinTicks to zero forces tick marks to be displayed at every integer value along the axis
- bug fix: the color of the scale ticks and the color of the scale labels can now be set independently
- bug fix: the printing routines of TSmithChart work now as expected
- SDL_REPLIST
- LoadLinesFromFile now displays additional rows as expected
- Sort method now provides a secondary sorting key
- SDL_ROT3D
- properties ViewAngleX,Y,Z are now stored in Delphi form (DFM file) even if they use the default values
- SDL_SCALE
- new property Center implemented
- setting the property MinTicks to zero forces tick marks to be displayed at every integer value along the axis
- bug fix: TScale does not generate the "control has no parent window" error anymore when putting it on a form (bug was only active under Delphi 2007 and Delphi 2005)
- SDL_SDLBASE
- AbortMathProc has been moved from unit MATH2 to SDLBASE
- SDL_SDLCOLORS
- new component TColorArray supports the handling of arrays of colors
- new function RGBColorDistance calculates the distance between two colors.
- new functions RGBtoGrayColor and ColorToGrayColor implemented
- new function WavelengthToColor calculates the color associated with a particular wavelength of light
- SDL_STATIS
- new method EstimateProbDensity implements a variable kernel method to estimate densities of univariate distributions
- new method TRandGen.Standardize implemented
- TRandGen.tDistri, TRandGen.FDistri, and TRandGen.Chi2Distri implemented
- DeanDixonTest has been modified to test for the element which lies most outside of the bulk.
- bug fix: TRandGen.Random does not hang if all probabilities are set to zero values
- SDL_STRINGL
- new function SigDigStr implemented
- SDL_THUMBNAILS
- bug fix: NumSlidesVert now returns the correct number of rows
- SDL_UNIVCONST
- Math constants uc_lnMinDouble, uc_lnMaxDouble, uc_lnMaxExtended, uc_lnMinExtended, uc_lnMinReal, uc_lnMaxReal, uc_lnMinSingle, uc_lnMaxSingle added
- SDL_VECTOR
- new method Find searches a particular value in the vector
- new method Mode calculates the Mode of a sample distribution given by the vector elements
- bug fix: methods Quartiles and Percentile calculate now more appropriate values for very small samples
Jul-03, 2008
- New release 2.600 of DataLab. For a detailed list of improvements, please see the Datalab release history.
(news older than Jul 2008 removed)



