diff options
author | akissinger <akissinger@7c02a99a-9b00-45e3-bf44-6f3dd7fddb64> | 2012-01-16 17:00:11 +0000 |
---|---|---|
committer | akissinger <akissinger@7c02a99a-9b00-45e3-bf44-6f3dd7fddb64> | 2012-01-16 17:00:11 +0000 |
commit | caaac57631bda3df581eac462cddd9473bc05b28 (patch) | |
tree | a87654230dc1e137937cd60fe0ced1cc5efb7302 /tikzit/src/osx | |
parent | 525059964fbaf380ad2c3079b965d64e7c6d06d1 (diff) |
graphs now store edges and nodes in an array, GraphicsView has actions for re-ordering the z-index of nodes and edges
git-svn-id: https://tikzit.svn.sourceforge.net/svnroot/tikzit/trunk@380 7c02a99a-9b00-45e3-bf44-6f3dd7fddb64
Diffstat (limited to 'tikzit/src/osx')
-rw-r--r-- | tikzit/src/osx/GraphicsView.h | 1 | ||||
-rw-r--r-- | tikzit/src/osx/GraphicsView.m | 40 |
2 files changed, 39 insertions, 2 deletions
diff --git a/tikzit/src/osx/GraphicsView.h b/tikzit/src/osx/GraphicsView.h index ddd005f..e963ac7 100644 --- a/tikzit/src/osx/GraphicsView.h +++ b/tikzit/src/osx/GraphicsView.h @@ -121,6 +121,7 @@ typedef enum { - (void)copy:(id)sender; - (void)paste:(id)sender; - (void)delete:(id)sender; +- (void)bringForward:(id)sender; - (void)flipHorizonal:(id)sender; - (void)flipVertical:(id)sender; - (void)reverseEdgeDirection:(id)sender; diff --git a/tikzit/src/osx/GraphicsView.m b/tikzit/src/osx/GraphicsView.m index 38ed1f0..f03f95c 100644 --- a/tikzit/src/osx/GraphicsView.m +++ b/tikzit/src/osx/GraphicsView.m @@ -999,7 +999,7 @@ static CGColorRef cgGrayColor, cgWhiteColor, cgClearColor = nil; } - (void)selectAll:(id)sender { - [pickSupport selectAllNodes:graph.nodes]; + [pickSupport selectAllNodes:[NSSet setWithArray:[graph nodes]]]; for (Node *n in [graph nodes]) { [[[nodeLayers objectForKey:n] selection] select]; @@ -1031,7 +1031,7 @@ static CGColorRef cgGrayColor, cgWhiteColor, cgClearColor = nil; } - (void)copy:(id)sender { - if ([pickSupport selectedNodes].count != 0) { + if ([[pickSupport selectedNodes] count] != 0) { Graph *clip = [graph copyOfSubgraphWithNodes:[pickSupport selectedNodes]]; NSString *tikz = [clip tikz]; NSData *data = [tikz dataUsingEncoding:NSUTF8StringEncoding]; @@ -1101,6 +1101,42 @@ static CGColorRef cgGrayColor, cgWhiteColor, cgClearColor = nil; } } +- (void)bringForward:(id)sender { + NSString *oldTikz = [graph tikz]; + [graph bringNodesForward:[pickSupport selectedNodes]]; + [graph bringEdgesForward:[pickSupport selectedEdges]]; + [self registerUndo:oldTikz withActionName:@"Bring Forward"]; + [self postGraphChange]; + [self refreshLayers]; +} + +- (void)sendBackward:(id)sender { + NSString *oldTikz = [graph tikz]; + [graph sendNodesBackward:[pickSupport selectedNodes]]; + [graph sendEdgesBackward:[pickSupport selectedEdges]]; + [self registerUndo:oldTikz withActionName:@"Send Backward"]; + [self postGraphChange]; + [self refreshLayers]; +} + +- (void)bringToFront:(id)sender { + NSString *oldTikz = [graph tikz]; + [graph bringNodesToFront:[pickSupport selectedNodes]]; + [graph bringEdgesToFront:[pickSupport selectedEdges]]; + [self registerUndo:oldTikz withActionName:@"Bring to Front"]; + [self postGraphChange]; + [self refreshLayers]; +} + +- (void)sendToBack:(id)sender { + NSString *oldTikz = [graph tikz]; + [graph sendNodesToBack:[pickSupport selectedNodes]]; + [graph sendEdgesToBack:[pickSupport selectedEdges]]; + [self registerUndo:oldTikz withActionName:@"Send to Back"]; + [self postGraphChange]; + [self refreshLayers]; +} + - (void)flipHorizonal:(id)sender { NSString *oldTikz = [graph tikz]; [graph flipHorizontalNodes:[pickSupport selectedNodes]]; |