Cenon Change Log - 2011 2011-01-01 Cenon 3.9.3 Cenon 3.9.3 2011-01-10 Georg Fleischmann * IPAllLayers.m (-clickLayer:): endEditing of text -> Fix, Text: changing layers in Inspector ends editing of text 2011-02-14 Georg Fleischmann * UpdateController.m, h: isAutoCheck flag added, we don't allow skipping manual update check 2011-02-22 Georg Fleischmann * UpdateController.m (): if uninstalled, show price to buy @"" don't offer update for uninstalled versions -> Fix, Update-Panel: don't offer update to modules which are not installed 2011-02-25 Georg Fleischmann * UpdatePanel.xib: increase version field from 60 to 80, has to hold "3.9.3 / 1.1.6" -> Fix, Update-Panel: version field increased in size to display module version too * UpdateController.m (-checkForUpdateAndDisplayPanel): be tolerant with old-style version numbers -> Fix, Update-Panel: handle old-style two field version numbers like "1.11" * UpdateController.m (-checkForUpdateAndDisplayPanel): all compare: use option:NSNumericSearch -> Fix, Update-Panel: compare "3.10.0" and "3.9.0" correctly 2011-02-25 Georg Fleischmann * MoveMatrix.m (-mouseDown:): disable double click, which actually is a fast single click -> Fix, Layer-Inspector: Fast on/off of a layer doesn't open the Layer-Details Panel any more 2011-02-26 Ilonka Fleischmann * DXFImport.m (-init): initialize group.handle, state.color, blockScanner, rable, vivibleList 2011-02-28 Ilonka Fleischmann * VImage (-drawWithPrincipal:): line: 1295 draw without Cache: rect = NSIntersectionRect(bounds, [principal visibleRect]); allways ! -> Fix: Documents can be scaled now also with big images or lots of them 2011-03-03 Georg Fleischmann * VGraphic.m (-size, -setSize:): default implementation added to make dimension undo work for all objects * TPScale.xib: popup added (rel / abs), tool tips added TPScale.m, h: scalePopup DocView.m, h (scaleGTo::): new -> New, TransformPanel: absolute scale 2011-03-06 Georg Fleischmann * App.m (-applicationDidFinishLaunching:): automatically check for updates UpdateController.m (-checkForUpdate:): get installed modules after setting isAutoCheck to avoid printfs UpdateController.m (-checkForUpdateAndDisplayPanel): don't print versions on automatic check, with automatic check don't display Update-Panel, if there is no update available -> New: automatically check for updates if Cenon is started * Main.xib: Menu-Item for "Import ASCII" removed App.m (-importASCII:): disabled App.m (-validateMenuItem:): importASCII: removed -> Import ASCII moved to CAM module * App.m, h (-toolPanel): new (but not used) App.m (-showToolPanel:): post ToolPanelWillDisplay notification ToolPanel.xib: toolThread, toolSinking, toolWeb without image and disabled toolWeb and toolMark changed position and tag App.h: TOOL2D_WEB -> 6, TOOL2D_MARK -> 13 -> Tool Panel: special CAM icons removed 2011-03-08 Georg Fleischmann * ToolPanel.xib: width = 70, tool tips 2011-03-11 Georg Fleischmann * Menu.xib (English, German): Edit-Menu: tool-tips added * UpdateController.m (-checkForUpdate:): add skipVersion "&sk=#.#.#" * VArc.m, VCurve.m, VPath.m (-contour): build contour with stroke with alone, no need for distance -> Fix, Build Contour: works with stroked objects, even with a distance of zero 2011-03-11 Georg Fleischmann * UpdateController.m (-checkForUpdate:): check for update once a week only 2011-03-29 Georg Fleischmann * VPath.m, VPolyLine.m, VRectangle.m (-drawWithPrincipal:): stroke width for filled objects without stroke width is 0.1 now (1 pt was too much) -> Fix, default stroke width (on screen) for filled objects is 1/10 of a point now (was 1 pt) 2011-03-30 Georg Fleischmann * General.xib: switch added to turn off automatic update checks GeneralController.h: SWITCH_DISABLEAUTOUPDATE added GeneralController.m (-update:, -set:): SWITCH_DISABLEAUTOUPDATE added PreferenceMacros.h: Prefs_DisableAutoUpdate added, clean-up UpdateController.m (-checkForUpdates:): test for Prefs_DisableAutoUpdate, include PreferencesMacros.h -> Preferences-Switch to disable automatic check for updates * Document.m, h (exportLock, -exportLock, -setExportLock:): new Document.m (-newFromFile:, -save): load and save exportLock Document.m (-saveAs:): check for exportLock and pop-up Alert messages.h: EXPORTLOCK_STRING added Localized.strings: "This document is not supposed to be exported..." added -> encourage people to value other peoples copyright on their hard work 2011-04-04 Georg Fleischmann * dxfOperators.h: 3DLINE, 3DFACE added DXFImport.h (DXFGroup): group.z0 - z3 coordinates added, ID_Z0 - ID_Z3 added, IDXYZ* disabled DXFImport.m (-getGraphicFromData:): place and TODO-Logs added for 3D-Elements DXFImport.m (-scanGroup:): group.z0 - z3 added DXFImport.m (-get3DLine:, -addLine3D:..., -get3DFace:, -add3DFace:): new DXFImportSub.m (-addLine3D:..., -add3DFace:...): new VLine3D.m, h (+line3DWithPoints:, -setVertices3D:) new -> DXF-Import: import 3D Lines and 3D Face * VCurveFitCurve.m: new 2011-04-05 Georg Fleischmann * GraphicObjects.subproj/VCurveFit.m, h: new DocView.m (-buildContour:): /*for images call [VCurveFit fitGraphic:],*/ include VCurveFit.h -> New, Vectorization of Images creates nice Curves * Contour.xib: default distance = 0, prototype of text-field removed, scale added 2011-04-06 Georg Fleischmann * Main.xib: "Tools -> Vectorize Images..." added Vectorizer.m, h, xib: new App.m, h (-showVectorizer:): added DocView.m, h (-vectorizeWithTolerance:...): new ContourGraphicsChange.m, h (-setRemoveSource:): added -> New: Vectoriing Images. New panel in Tools -> Vectorizer * DocView.m (-buildContour:): really select path [path setSelected:YES] , not just added to slist [change setRemoveSource:] added, fitGraphic: added -> Fix, Build Contour: created graphics will be selected 2011-04-06 Ilonka Fleischmann * PathContour.m (-contourImage:width:): whiteStop added -> Fix ImageContour: we let a bit tolerance in White 2011-04-06 Ilonka Fleischmann * VPath.m (-pointWithNumBecomeStartPoint:): new VPath.m (-drawWithPrincipal:): call -drawStartAtScale: instead of -drawDirectionAtScale: VGraphic.h.m (-drawStartAtScale:): new, called from VPath drawWithPincipal to draw the start point DocView.h, m (-validateMenuItem:, -pathSetStartPoint:): entsprechend Main.xib: new menu item "Edit -> Set Start" "Y", connected to -pathSetStart: -> New, Set starting point of a selected Path 1. select a point of a Path 2. chose "Set Start" from the edit menu * VPath.h.m (-removePointWithNum:): [self deselectAll]; -> Fix Path Remove Point of Path: no other Point is shown selected after removing (es wird damit so dargestellt wie es stattfindet, anschliessend wird das Objekt geloescht) * VPath.h.m (-join:): getDirection if ![list count] etc. -> so we can force start and Direction of simple complex Paths 2011-04-14 Ilonka Fleischmann * VPath.m (-contour:inlay:splitCurves:): calc with lines if Curve pts inside start/end of curve -> Contour: more flexible if both curve pts are inside start/end of curve 2011-05-05 Ilonka Fleischmann * VPath.m (-contour:inlay:splitCurves:): calc parallel points always with cut if possible -> Fix Contour: better outline, less bugs 2011-05-10 Georg Fleischmann * Cenon 3.9.4 2011-05-28 Georg Fleischmann * VGraphics.h (excluded, -sExcluded, -setExcluded:): new VGraphics.m (-isExcluded, -setExcluded:): new, added where needed in propertyList and encoder, version = 5 ChangeDetail.m, h (ExcludeChangeDetail): added ExcludeGraphicsChange.m, h: new LocalizableStringsForGraphicsUndo.h: EXCLUDE_OP added undo.h: ExcludeGraphicsChange.h added Operations.strings: "Exclude/Include" added in all languages GNUMakefile: ExcludeGraphicsChange added English: IPLine.xib, IPText.xib, IPTextPath.xib: excludeSwitch added, connected to -setExclude: -> this can be used to allow inactive elements on a layer that are excluded from processing * Operations.string: French added, "Lock/Unlock" added for Danish and English -> Fix: French Operations added, Danish "Lock/Unlock" added 2011-05-30/31 Georg Fleischmann * NameGraphicsChange.m, h -> LabelGraphicsChange.m, h undo.h: #include "LabelGraphicsChange.h", NameGraphicsChange.h removed ChangeDetail.m, h: LabelChangeDetail added LocalizableStringsForGraphicsUndo.h: NAME_OP -> LABEL_OP IPBasicLevel.m, h: labelField, -setLabel: added IPMark.m, h: use -label, -setLabel methods, instead of special VMark methods GNUMakefile: NameGraphicsChange.m, h -> LabelGraphicsChange.m, h * VImage.m (-setName:): set label from this name, but without extension, -useStringWithString: to copy into imageFile VImage.m (-initFromPropertyList:): set label from imageFile by removing path extension IPImage.m (-setName:): don't add extension * VTextPath.m (-setLabel:, -label): subclassed to forward to path object * IPMark.m (-setPointZ:): check for zSwitch sender in matrix cell spacing of switch matrix = 0, cell height = 18, y = 8 ! IPArc.xib: excludeSwitch added, switches grouped in matrix IPCrosshairs.xib: lock switch moved to fit other object IPCurve.xib: excludeSwitch added, switches grouped in matrix, y = 4 here !!! IPGroup.xib: excludeSwitch added, Label-Field added IPImage.xib: excludeSwitch added, Tool-Tips for switches (English, German) IPLine.xib: excludeSwitch added, Label-Field added, switches grouped in matrix, tool-tips (English, German) IPMark.xib: excludeSwitch added, label connected to labelField/-setLabel: (not nameField), tool-tips for switches (English, German) IPPath.xib: excludeSwitch added, Label-Field added IPPolyLine.xib: excludeSwitch added, Label-Field added IPRectangle.xib: excludeSwitch added, Label-Field added IPText.xib: excludeSwitch added, Label-Field added, switches grouped in matrix, tool-tips (English, German) IPTextPath.xib: excludeSwitch added, switches grouped in matrix, tool-tips (English, German) IPSinking.xib: switch grouped in matrix IPThread.xib: excludeSwitch added, switches grouped in matrix, Label-Field added IPWeb.xib: excludeSwitch added, switches grouped in matrix, Label-Field added 2011-05-31 Georg Fleischmann * VText.m (-kernToFitHorizontal): use pointSize of font to determine the lines to make it work -> Fix, Apple: Fit Horizontal improved * Vectorizer.m, xib: allow values from 0 to 20 and divide by 4 to make it finer CurveFit.m (-fitGraphic:): p1 fixed, didn't find any lines and in turn left all lines * VTextPath.m (-respondsTo:, -methodSignatureForSelector:, -forwardInvocation:): added to allow flexible forwarding of methods to path and text from now on. 2011-06-06 Georg Fleischmann * VImage.m (-initFromPropertyList:): retain label 2011-06-08 Georg Fleischmnn * App.m (-loadModules): add CAM.bundle to loadedFiles to avboid duplicate loading 2011-06-30 Georg Fleischmann * IPImage.m (-update:, -setCompressionType:): use label for name to avoid extension 2011-07-05 Georg Fleischmann * App.m (-importPS:): check, if gs is installed messages.h (PSIMPORT_INSTALLGS_STRING): Import, "You need to install GhostScript..." added -> Import PDF/PS: Alert if GhostScript is not installed * *.lproj/Localizable.strings: Import, "DXF File exceeds maximum size!..." fixed -> [3.9.5] Fix, DXF-Import: Size alert was not translated * IPImage.m (-update:): check, if label == nil VImage.m (-setParameter): set label VImage.m (-init): call [super init] first, not last -> Fix, Image-Import: no exception, if label happens to be nil, set label for images dragged into document 2011-07-19 Georg Fleischmann * VImage.m (-setName:): retain to imageFile added 2011-08-25 Ilonka Fleischmann * VPath.m (NeedArc(), SmallAngle(), AngleNotSmallEnough()): w >= 0 instead of w > 0 VPath.m (-contour:inlay:splitCurves:): if ( needArc ) >= and <= to so w == 0 also korrekt VPolyLine.m (-contour:inlay:splitCurves:): (w == 0.0 && width == 0.0) instead of !w -> Fix Contour: No correction, and object has a width, corrected * VPath.m (-contour:inlay:splitCurves:): work with pathCopy = [[self copy] autorelease] -> Contour: We lost the close Path - Displaying will destroy (no Tolerance on Apple) * VPath.m (-contour:inlay:splitCurves:): autorelease pool VPath.m (-intersectionsForPtInside:with: -intersectionsForPtInside:with:subPath:): free(aPts) VPath.m (-subPathInsidePath::): free(iPts) and spIpts -> Fix: Memory Leak in Contour Calculation * Type1ImportSub.m (-addStrokeList:toList:): without sortList !!! 2011-08-26 Georg Fleischmann * App.m (-applicationDidFinishLaunching:): Update-Panel only for Apple * Cenon_main.m (main()): "cenon.tiff" -> "Cenon.tiff" (wrong since 2002-07) 2011-09-01 Georg Fleischmann * GNUstep, CenonInfo.plist: NSExecutable, NSMainNibFile, NSPrincipalClass added Copyright added For Cenon file type: NSHumanReadableName added For file types: NSRole = NSApplication; NSRole = Viewer; * GNUstep, Cenon_main.m: call NSApplicationMain(), standard behaviour now * Apple, VHFStringAdditions.m: +stringWithContentsOfFile: added with flexible loading of string file it's deprecated since Mac OS 10.5 and we want to keep it 2011-09-01 Ilonka Fleischmann * locations.h (SERIAL_EXT): added VRectangle.h (-setDirectionCCW:): added IPArc.xib: label fields added DocView.m,h (-insertLayerWithName:..) to place Layers we need 2011-09-03 Georg Fleischmann * PSImport.m (-importPS:): let OS find encoding, if it fails try NextSTEP-Encoding and Latin encoding -> Fix, PS-Import: fix import of special characters (Example: Ducks.ai) * Apple, VHFStringAdditions.m: +stringWithContentsOfFile: added more flexible loading, if Apples flexible method fails (ex. NextStep Encoding) 2011-12-02 Ilonka Fleischmann * ICUTImport.m,h: new App.m (-openFile:): icut format special treatment App.m (-listFromFile:): icut format added App.m (-import:, -openDocument:): cut, icut format added App.m (-initialize:): icut defaults added locations.h (CUT_EXT): added Info-Cenon__Application.plist /Source/Cenon/Icons/typeICut.icns 2011-12-03 Georg Fleischmann GNUmakefile: ICUTImportSub.m, h added VHFImport/GNUmakefile: ICUTImport.m, h added 2011-12-03 Georg Fleischmann * EPS.icns, PDF.icns, SVG.icns added to Icons folder and Project 2011-12-03 Georg Fleischmann * Fix, PS-Import: 1. try to determine encoding, 2. Latin Encoding, 3. Next Encoding (Example file) 2011-12-06 Ilonka Fleischmann * dvTile.m (-setTileWithLimits:, -buildTileCopies:): sequence from down to up to down to up -> Batch: sort columns more effective, 1. upwards, 2. downwards, 3. upwards, ... 2011-12-07 Ilonka Fleischmann * PreferencesPanel.m,h (-update:): new next Cenon 3.10.0