268 Commits

Author SHA1 Message Date
dsward2
c9d1b4e30a Updated to version macSVG 1.2 v1.2.0 2022-07-16 23:27:49 -05:00
dsward2
0239862f98 Update build architectures for X86_64 and Apple Silicon.
Replace the libssh2 library with the Swift package Libssh2Prebuild.

Made a minor change in text_on_an_animated_path.svg to work around a WebKit animation bug.
2022-07-16 02:03:19 -05:00
dsward2
83c8086660 Fix date in release notes. 2020-05-12 00:47:54 -05:00
dsward2
1d050119e5 Update release notes. v1.1.7 2020-05-12 00:46:57 -05:00
dsward2
b723a86e10 This commit fixes some bugs in StyleAttributesEditor and AnimationPathsPopoverViewController.
The README.md file is updated for release 1.1.7.
2020-05-12 00:31:58 -05:00
dsward2
5f00dd1eb2 This commit fixes a bug in path drawing for the Close Path and Continue command. It allows a new subpath to be started at a new coordinate after the path is closed. It is particularly useful with the 'fill-rule' attribute for the path element, for example: to define holes inside a closed path.
Some NSLog messages were removed in the file networking functions.

In SVGPathEditor, some usages of PathSegment were simplified.
2020-05-11 01:17:01 -05:00
dsward2
1324fc179e This commit fixes some bugs, mainly for path segments for the 'm' relative move command. 2020-05-05 12:42:32 -05:00
dsward2
7607411efb This commit fixes some bugs in the GradientEditorPopoverViewController, mainly when a gradient is edited after the initial setting. 2020-04-28 03:12:45 -05:00
dsward2
dbedf93ce0 This commit increments the macSVG version number to 1.7.7.
A bug was fixed in the AnimateElementEditor, in the repeatCount combo box.

More drag-and-drop bugs were fixed in the XML Outline Controller.
2020-04-27 10:56:09 -05:00
dsward2
5c902a89b6 This commit fixes some bugs in the Paste command for the XML outline view. The new method uses the selected elements in the outline, the state of the expansion controls, and the DTD to determine the best placement of the pasted elements. 2020-04-25 20:40:26 -05:00
dsward2
d25dff54f7 In NSOutlineView_Extensions mouseDown method, if user clicks on a row that is already selected, skip the call to deselectAll:. This fixes the problem with drag-and-drop for multiple items in the XML Outline View. 2020-04-25 00:48:39 -05:00
dsward2
2d69b46305 This commit fixes some bugs in the previous commit concerning the Paste function in the XML outline view. 2020-04-24 14:24:42 -05:00
dsward2
e45f4569b0 Implement Cut/Copy/Paste functions for SVG elements in XMLOutlineView. The implementation will try to validate the paste insertion into the selected element as child elements if the selected item is expanded - if not valid, or the selected item is not expanded, the pasted elements will be inserted after the selected item. Some bugs probably remain, but it mostly seems to be working, 2020-04-24 04:14:01 -05:00
dsward2
14b2b0d901 This commit fixes some bugs in the Path Segment Editor popover. Also, a few variable names were changed, and some old code was removed. 2020-04-23 01:13:40 -05:00
dsward2
14b07a4276 This commit adds a new PathSegment object to replace the use of a NSDictionary for path editing functions.
Also, some support for editing paths with relative coordinates was added, but several bugs remain to be fixed.

In several files, CGFloat data types were replaced with float types, to match WebKit's data types.
2020-04-19 03:00:26 -05:00
dsward2
d9a58ca03c In SVGPathEditor, this commit adds initial support for editing cubic curves with relative coordinates (the 'c' path segment command). Much more work is planned for relative coordinates in subsequent commits. 2020-04-01 02:40:17 -05:00
dsward2
9d430c24a1 In SVGPathEditor, several variables containing the word "previous" were renamed to use "existing" instead, where it was appropriate to refer to the original value of a coordinate variable. The use of "previous" to refer to a previous path segment variable remains unchanged. 2020-03-29 03:43:38 -05:00
dsward2
ce4b209ba4 In KeyValuesPopoverViewController and MacSVGPlugin, support was added to allow AnimateMotionElementEditor to support KeyTimes/KeySplines for path and npath animations. 2020-03-28 22:49:37 -05:00
dsward2
cd75666a2e In XMLOutlineController, fix the visibility checkbox functions to match the new cell view structures. 2020-03-27 17:47:54 -05:00
dsward2
2b17c773c4 Implement stepper actions in ToolSettingsPopoverViewController, synced with corresponding text fields, then reload the SVG web view with the popover is dismissed. 2020-03-27 15:19:47 -05:00
dsward2
7db087b7c5 In MacSVGDocument.xib, the outline view was replaced with a new one with improved identifiers for use in outlineView:viewForTableColumn:item: .
In XMLOutlineController, the outlineView:viewForTableColumn:item: and outlineView:objectValueForTableColumn:byItem: methods are improved for view-based outline views.

The multi-mode SVGIconView is replaced with three separate objects: FolderIconView, TargetIconView and TextIconView.
2020-03-27 01:31:09 -05:00
dsward2
d0524048db Replace CocoaHTTPServer with GCDWebServer - https://github.com/swisspol/GCDWebServer 2020-03-24 18:16:14 -05:00
dsward2
10de7a89f5 The URL was fixed for the Google SVG Search Website under the Help menu.
A couple of items were added to the README.md and RELEASE-NOTES.md files.
v1.1.6
2019-12-09 20:18:31 -06:00
dsward2
a8402ae596 Updated README.md, README.html and RELEASE-NOTES.md for macSVG v1.1.6. 2019-12-09 19:45:14 -06:00
dsward2
a838eeee99 This commit changes the management of the CocoaLumberjack dependency from Swift Package Manager to a Git submodule. The current Objective-C version of CocoaLumberjack was not structured correctly for use with Swift Package Manager, so it was difficult to configure the macSVG project to build without problems with search paths, etc. The Git submodule should resolve those issues for now. 2019-12-06 09:28:48 -06:00
dsward2
81d8acf0fb KeyValuesTableRowView was added back to the project. It now removes selection highlighting from the table in the keyTimes/keySplines/keyPoints table.
AnimationKeysView.xib was added to git.
2019-12-03 09:00:23 -06:00
dsward2
abb9112c3e This commit contains improvements in the popover view for editing the keyTimes, keySplines and keyPoints attributes in the animate, animateMotion and animateTransform elements. The new table view is designed to provide the correct number of values for the attributes. Each row contains a combo box for the keySplines value, with some common values available in a topdown menu (linear, ease-out, ease-in, ease-out/ease-ink) and a graph to illustrate the spline curve for that segment of the animation. Some bugs with semicolon delimiters for the attributes were fixed. 2019-12-03 06:16:45 -06:00
dsward2
3066708da2 This commit contains user interface improvements for editing the keyTimes, keySpines and keyPoints attributes for the animate, animateMotion and animateTransform elements. Some of the existing code in the individual plugins for those elements were consolidated into the plugin framework. Further improvements will be provided in the next commit.
A bug was fixed for item selection in the XML outline view, and a few table row view identifiers were changed in various places.
2019-11-21 11:32:22 -06:00
dsward2
e28a9e3867 In this commit, StylePropertiesTableRowView is deleted from StyleAttributesEditor. 2019-11-09 22:15:32 -06:00
dsward2
bfbf6a6081 This commit fixes some bugs in the Style Attribute Editor, which usually occurred when added a new style item. A bug was fixed for the "Apply Changes" button. The "Cancel" button now restores the existing settings to the table view. The rows in the table view can now be reordered.
A coding error was fixed in TimelineLablesTableViewDelegate.
2019-11-09 21:52:35 -06:00
dsward2
471147dd95 In the TimelineLabelsTableView, the option to allow an empty selection was enabled. The change fixes an unintended change an unintended editor panel, e.g., changing from CoordinatesAttributeEditor to AnimateTransformEditor when the coordinates stepper is clicked. 2019-11-07 01:37:31 -06:00
dsward2
2895363b39 This commit updates the URLs for online documentation at w3.org. This should fix the Help buttons on the document window. 2019-11-06 20:38:34 -06:00
dsward2
00ca01ecaf In TransformAttributeEditor, some selection bugs were fixed, and NSStepper controls were added alongside the text fields to conveniently increment or decrement the numerical values. 2019-11-04 09:06:41 -06:00
dsward2
65ba40e92b Fixed a bug in XMLOutlineController deleteElementAction. 2019-11-03 23:03:32 -06:00
dsward2
2ae868d751 This commit fixes a selection bug in the XMLOutlineView for elements like <text> which contain NSXMLTextKind nodes. It checks the table view to determine if the parent item is expanded before highlighting the NSXMLTextKind row.
A bug concerning element deletion in the outline view was also fixed.  It looks like a couple of minor bugs still remain.
2019-11-03 01:20:01 -06:00
dsward2
f186983ebd This commit fixes another NSOutlineView rowForItem bug, this time when clicking in the web view to select text items. 2019-11-02 00:55:38 -05:00
dsward2
02a8bb982b This commit attempts to work around a bug in NSOutlineView's rowForItem function, which returns the wrong row number for instances of NSXMLNode with duplicate values, where .kind = NSXMLTextKind. 2019-11-01 23:53:30 -05:00
dsward2
6bd309a895 This commit addresses some compiler warning messages about deprecated methods and ARC memory management in blocks. 2019-10-30 09:07:33 -05:00
dsward2
f1764538fd This commit updates some third-party source code.
The old CocoaAsyncSocket project was replaced with a built version of CocoaAsyncSocket.framework from the main GitHub repository - https://github.com/robbiehanson/CocoaAsyncSocket/releases/tag/7.6.3

The CocoaLumberjack project was replaced with an updated project acquired with the Swift Package Manager in Xcode at https://github.com/CocoaLumberjack/CocoaLumberjack.  SPM installs the source code in the Xcode DerivedData folder.  The new framework should be built from the CocoaLumberjack.xcworkspace file before building macSVG.
2019-10-29 21:08:28 -05:00
dsward2
6eac047a08 This commit updates the libssh2 library. It replaces the previous libssh2 that was generated by the DFSSHWrapper project, which no longer works for sandboxed applications. The existing DFSSHWrapper classes remain in use with the new libssh2 library.
The new version of libssh2 was built with MacPorts, then modified with install_name_tool to use the macOS built-in libraries for libssl and libcrypto in /usr/lib.  To inspect the modified load paths: otool -L libssh2.1.dylib
2019-10-28 23:26:30 -05:00
dsward2
3e850b2af1 This commit fixes some bugs in the XML outline view for tool tips, and the item type column to display an icon (folder, text, target, etc.) A userData property was added to SVGIconView to specify the icon type, instead of using the identifier property. 2019-10-28 02:49:52 -05:00
dsward2
38140db71d In MacSVGPlugin, the KeyValuesPopoverViewcController, KeyValuesTableRowView and KeySplinesView were added to the plugin framework for common use by the animation elements (animate, animateMotion and animateTransform). For now, the animation plugins define subclasses of the classes in the plugin framework.
For all NSTableViews, all calls to makeViewWithIdentifier:owner: now pass NULL as the owner.
2019-10-28 00:48:02 -05:00
dsward2
b5b8c18d01 The commit includes a couple of changes to ensure that JavaScript is enabled in the web view when the document window is created.
A few bugs were fixed for table views, and the XML outline view.
2019-10-24 09:58:45 -05:00
Douglas Ward
ef6d521c93 Update README.md
Fix typo.
2019-10-20 03:23:57 -05:00
dsward2
e7ed656a7c Fixed a typo in README.md 2019-10-20 03:22:32 -05:00
dsward2
f39beeba9f Updated README.md in advance of a future release.
Some dates in the source code were updated to 2019.
2019-10-20 03:20:18 -05:00
dsward2
61f0465064 Several deprecated API calls were replaced with modern API, including NSURLRequest changed to NSURLSessionDataTask, and several drag-and-drop methods for importing files (PNG, JPEG, SVG, TTF, etc.) into the XML outline view, the web view, and the Image element view. 2019-10-20 02:06:46 -05:00
dsward2
31d7513955 The MARKETING_VERSION is incremented to v 1.1.6.
All cell-based table views were converted to view-based.

A standard macOS Share button was added to the tool panel.  It is mainly useful for sending an AirDrop URL to an iPhone or Mac to quickly access the built-in macSVG web server.  It produces some warning messages in the log file about SHKRemoteView, but they seem to be common for AirDrop sharing applications and are apparently harmless.
2019-10-19 21:25:58 -05:00
dsward2
ad219ea929 In macSVGDocument, a standard macOS Share button was added. The Share button supports AirDrop, the easiest way to preview the current design on other devices like iPhones, other Macs, etc. The receiving iPhone will launch Safari and load the document from the macSVG HTTP server.
In SVGHttpConnection findFrontmostMacSVGDocument, the code was wrapped in a GCD dispatch_sync call to ensure that [NSApp OrderedDocuments] executes on the main thread.
2019-10-04 04:18:24 -05:00
dsward2
2f547e6a37 macOS 10.15 Catalina will be released soon, and apparently will include the WebKit Legacy framework, so this commit will make some initial changes to macSVG for Catalina.
The Generate HTML5 Video command should be working again for Macs that don't use Xeon processors.

The biggest set of changes is to suppress the warning messages for deprecated WebKit APIs.  This is done by wrapping some conditional code around the deprecated code, e.g.,

#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wdeprecated-declarations"
// deprecated APIs used here
#pragma clang diagnostic pop

More work needs to be done on this.

Several other deprecated macOS APIs were identified, and several were updated.

A subsequent commit is planned to update some third-party code, like CocoaAsyncSocket, CocoaHTTPServer, etc.
2019-10-04 02:49:42 -05:00