Cenon Change Log - 2016

2016-01-12 Georg Fleischmann
    * DXFImport.m: declaration added for static V3Point transformOCS(V3Point pOCS, V3Point AZ);
      -> Fix, ALT Linux: missing declaration added for "implicit declaration error" (thank's to Michael Shigorin)
2016-01-13 Georg Fleischmann
    * propertyList.m: interface declarations for -VFLoatValue ('NSString' may not respond to '-VFloatValue')
      -> Fix, ALT Linux: missing declaration added for 'NSString' may not respond to '-VFloatValue' (thank's to Michael Shigorin)
2016-01-14 Georg Fleischmann
    * DocView.m: include vhfCompatibility.h for NSAppKitVersionNumber10_8
      vhfCompatibility.h: moved NSAppKitVersionNumber.. now available for all plattforms
      -> Fix, ALT Linux: missing declaration added (thank's to Michael Shigorin)

2016-01-27 Georg Fleischmann
    * Ship/*.rsc/*.lproj/ReadMe.rtf, Welcome.rtf: 2015 -> 2016

2016-01-27  Cenon 4.0.4 beta 7


2016-02-01 Georg Fleischmann
    * Warning clean-up: cString -> UTF8String,
                        xib: Minimum Size, Builds for: 10.4 -> Deployment Target

2016-02-08 Georg Fleischmann
    * DocView.m (-validateMenuItem:): no paste allowed without editable layer
      -> Fix, Paste: no paste possible without editable layer

2016-02-26 Georg Fleischmann
    * dvPasteboard.m (-copy:, -paste:andLink:): originalPaste retain/release added
      DocView.m (-delete:, -group:, -joinSelection:, -punch:): originalPaste: release added
      -> Fix, Paste: potential crash in certain environments

2016-02-29 Georg Fleischmann
    * GNUmakefile (Cenon, Import, Export): Copyright update, 4.0.4

2016-03-03 Ilonka Fleischmann
	* VArc.m (-contour:): open/unfilled section of arc fixed (related to change from 2015-08-10)
	  -> Fix, Contour: improved for unfilled section of arc

2016-03-07 Ilonka Fleischmann
	* VPath.m (-removeFaultGraphicsInSubpaths:, -optimizeSubPathsToClosedPath::): subPathCnt added for resizing subPathSplitted array

2016-03-11 Ilonka Fleischmann
 	* HPGLImport.m (-getArc::::): check, if arc has a length bevor importing
	  -> Fix, HPGL Import: don't import arcs without length

2016-03-11 Ilonka Fleischmann
 	* VArc.m (-propertyList): dont save arcs with zero angle
	  propertyList.m (propertyListFromArray()): check, if we get a plist from realObject
	  -> Fix, Save: don't save arcs with zero angle

2016-03-11  Cenon 4.0.4

2016-03-12 Ilonka Fleischmann
	* VPath.m (-optimizeSubPathsToClosedPath::): 'addedAtEnd' allocated with malloc, values of 'addedAtEnd' corrected (if new value added)
	  -> Fix, Contour: potential crash in contour fixed

2016-03-14  Cenon 4.0.4


2016-03-14 Georg Fleischmann
    * App.m (-loadModules): search added for "USER/Library/Extensions/Cenon_#.#" (#.# = version number of Cenon).
                            This helps developing multiple versions

TODO:
#2016-04-07 Georg Fleischmann
#    * Document.m (-printDocument:): printScale added (scale is correct for single page,
#                                    multiple page is different, why ?)
#      -> Fix, Printing (>= Mac OS 10.8): scale from Print-Settings reenabled (since 4.0.4b4)

2016-04-12 Georg Fleischmann
    * vhfMath.m (svPolynomial3()): division by 0 cought: x1 = (y1 != 0.0) ? (x - y / y1) : 0.0;
      -> Fix, Calculus: potential issue (division by zero)

2016-06-03 Ilonka Fleischmann (2016-05-23)
	* VPath.m (-removeFaultGraphicsInSubpaths:::, -optimizeSubPathsToClosedPath::::): subPathSplitted/addedAtEnd with NSZoneMalloc and pointer given to -optimize...::::
	  -> Fix, Contour: Crash in very complex paths fixed
	* VArc.m (-parallesObject:::): if no length between s and e we return nil (instead a null length line Or a 360 degree arc) [4.0.5]
	  -> Fix, Path Contour: improved

2016-07-23 Ilonka Fleischmann
	* VRectangle.m (-copy:) call -setDirectionCCW:isDirectionCCW to copy direction
	  -> Fix, Rectangle: copied rectangle includes direction

2016-08-04 Georg Fleischmann
    * DXFImport.m (-getPolyline:): TODOs added for group.flags
      DXFImport.m (-getVertex:):   ignore group.flag == 4 (SPLINE frame control point)
      -> DXF-Import: improved (skip SPLINE frame control point in POLYLINE)

Cenon 4.0.5 beta 1 (2016-08-09)

2016-08-17 Ilonka Fleischmann
	* VPath.m     (-contourOpenLeftOrRight:),
	  VPolyLine.m (-contourOpenLeftOrRight:) for inside correction we change direction for also milling against direction (Gegenlauf)
	  -> Fix, Contour left or right: with inside correction we move against milling direction [since 4.0.5 beta 1 ?]
	* DocView.m (-validateMenuItem:) for -pathSetStartPoint, validate only if element is closed
	  -> Fix, Set Start Point: start point can not be set for open paths

2016-08-18 Ilonka Fleischmann (2016-06-03 in 4.1)
	* VGraphic.m (-objectsOfClass:inArray:): also add objects from inside groups (recursive)

2016-08-31 Georg Fleischmann
    * VCurve.m (-sqrDistanceCurve:): prevent division by zero for n0 and n1
      VArc.m   (-sqrDistanceCurve:): prevent division by zero for n1
      -> Calculus: potential issue fixed (division by zero)

Cenon 4.0.5 beta 2 (2016-09-11)

2016-09-19 Ilonka Fleischmann
	* DocView.m (-initFromPropertyList:) if v == 8 ... we correct the default tileXYDirections from 4.0.3 from 0 0 to 1 1
	  -> Fix, Batch: 4.0.3 documents open with default-arrows pointing right/up [since 4.0.3]

2016-09-20 Ilonka Fleischmann
	* VPath (-contour:inlay:splitCurves:) inlay calculation both with splitCurves:YES works a lot better
	  -> Fix, Inlays: improved

2016-09-21 Ilonka Fleischmann
	* VPath.m (-optimizeSubPathsToClosedPath::::) if ( j > k ) wrong - removed
	  VPath.m (-directionOfSubPath::) we more points not only one
	  -> Fix, Contour + Filling: again some bugs less
	* dvUndo.m (-addPointTo:atPoint:redraw:) layer update:g to force recalculation
	  -> Fix, Output calculation: adding/removing a point to/from VPath or VPolyline now recalculates
	* DocView.m (-delete:) set layer dirty if we remove a point from a path or polyline
	  -> Fix, Output calculation: adding/removing a point to/from VPath or VPolyline now recalculates

2016-09-30 Ilonka Fleischmann
	* VPath.m (-getLastObjectOfSubPath2:): 30.0 * TOLERANCE instead 15

2016-10-03 Georg Fleischmann
    * Document.m (-setName:andDirectory:): -setZoneName: removed (crashing with Mac OS 10.12, Sierra)
      -> Mac OS 10.12 Sierra

2016-10-04 Georg Fleischmann
    * DocView.m (-caching): only return YES, if caching is active AND we actually have a cache
      DocView.h (-cache): return type changed to (NSView*)
      -> Fix, Document-Window: caching issues fixed, which could result in a crash when closing a document

Cenon 4.0.5 beta 3 (2016-10-09)

2016-10-20 Georg Fleischmann
    * VTextPath.m (-drawWithPrincipal:): division by zero avoided (length)
      VTextPath.m (-coordBounds, -bounds): asign [text lineHeight] to VFloat
      EPSExport.m (-epsVText): float -> VFloat for [text lineHeight]
    * VTextPath.m (-setFontSize:, -fontSize): float -> VFloat
      -> Fix, Text-Path: resize via Inspector works again [since 4.0.0]

2016-10-20 Georg Fleischmann
    * VHFImport/GNUmakefile,
      VHFExport/GNUmakefile: Copyright updated

Cenon 4.0.5 beta 4 (2016-10-23)

2016-11-13 Georg Fleischmann
    * Type1Font.m, DXFExportSub.m: include <VHFSystemAdditions.h>, capital VHF

Cenon 4.0.5 (2016-11-21)


2016-11-27 Georg Fleischmann
    * VPath.m (-drawGraduatedWithPrincipal:): catch division by zero for steps
      -> Fix, color shades: possible division by zero fixed

2016-12-07 Georg Fleischmann
    * DXFExportSub.m (-exportPath:): endIx of closed paths was set to begIx,
                                     voiding the endIx obtained from function (else missing)
      -> Fix, DXF-Export: export of closed Paths corrected [since 4.0.4]

2016-12-19 Georg Fleischmann
    * VTextPath.m (-getFlattenedObjectAt:): check for nil object (and empty list) from -getFlattenedObject
                                            float -> VFloat
      -> Fix, Text Path: handle return within text

2016-12-23 Georg Fleischmann
    * dvPasteboard.m (-paste:andLink:): secondPaste = nil;
    * IPAllLayers.m (-newLayer:, -setName:, -displayChanged:): send DocLayerListHasChanged notification
      IPAllLayers.m (-editingChanged:): new, to know if editing changed
      IPLayer.m, h (-editingChanged): new, update inspector
      IPLayerCell.m (-trackMouse:): call target's -editingChanged:, if available
      -> Fix, Inspector: inform modules, if layer is added, renamed, displayed, or editing changed
    * IPAllLayers.m (-setLayerList:): renew layer list, if order of layers changed
      -> Fix, Inspector: update layers, if order of layers has been changed by module

next Cenon 4.0.6 (2016-12-24)
