summaryrefslogtreecommitdiff
path: root/tikzit/src/osx
diff options
context:
space:
mode:
authorakissinger <akissinger@7c02a99a-9b00-45e3-bf44-6f3dd7fddb64>2012-01-16 17:00:11 +0000
committerakissinger <akissinger@7c02a99a-9b00-45e3-bf44-6f3dd7fddb64>2012-01-16 17:00:11 +0000
commitcaaac57631bda3df581eac462cddd9473bc05b28 (patch)
treea87654230dc1e137937cd60fe0ced1cc5efb7302 /tikzit/src/osx
parent525059964fbaf380ad2c3079b965d64e7c6d06d1 (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.h1
-rw-r--r--tikzit/src/osx/GraphicsView.m40
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]];