Revision: 7279
          http://skim-app.svn.sourceforge.net/skim-app/?rev=7279&view=rev
Author:   hofman
Date:     2011-06-17 22:52:37 +0000 (Fri, 17 Jun 2011)

Log Message:
-----------
shift find bar to the left out of clip

Modified Paths:
--------------
    trunk/SKFindController.m
    trunk/SKGradientView.h
    trunk/SKGradientView.m

Modified: trunk/SKFindController.m
===================================================================
--- trunk/SKFindController.m    2011-06-17 21:03:40 UTC (rev 7278)
+++ trunk/SKFindController.m    2011-06-17 22:52:37 UTC (rev 7279)
@@ -76,6 +76,7 @@
     
     SKGradientView *gradientView = (SKGradientView *)[self view];
     [gradientView setEdges:SKMinYEdgeMask];
+    [gradientView setClipEdges:SKMinXEdgeMask | SKMaxYEdgeMask];
     [gradientView setMinSize:[gradientView contentRect].size];
     [gradientView setGradient:[[[NSGradient alloc] 
initWithStartingColor:[NSColor colorWithCalibratedWhite:0.82 alpha:1.0] 
endingColor:[NSColor colorWithCalibratedWhite:0.914 alpha:1.0]] autorelease]];
     [gradientView setAlternateGradient:nil];

Modified: trunk/SKGradientView.h
===================================================================
--- trunk/SKGradientView.h      2011-06-17 21:03:40 UTC (rev 7278)
+++ trunk/SKGradientView.h      2011-06-17 22:52:37 UTC (rev 7279)
@@ -45,6 +45,7 @@
     NSGradient *alternateGradient;
     NSSize minSize;
        SKRectEdges edges;
+       SKRectEdges clipEdges;
     BOOL autoEdges;
 }
 
@@ -54,6 +55,7 @@
 @property (nonatomic, readonly) NSRect contentRect;
 @property (nonatomic) NSSize minSize;
 @property (nonatomic) SKRectEdges edges;
+@property (nonatomic) SKRectEdges clipEdges;
 @property (nonatomic) BOOL autoEdges;
 
 @end

Modified: trunk/SKGradientView.m
===================================================================
--- trunk/SKGradientView.m      2011-06-17 21:03:40 UTC (rev 7278)
+++ trunk/SKGradientView.m      2011-06-17 22:52:37 UTC (rev 7279)
@@ -43,7 +43,7 @@
 
 @implementation SKGradientView
 
-@synthesize contentView, gradient, alternateGradient, minSize, edges, 
autoEdges;
+@synthesize contentView, gradient, alternateGradient, minSize, edges, 
clipEdges, autoEdges;
 @dynamic contentRect;
 
 - (id)initWithFrame:(NSRect)frame {
@@ -51,6 +51,7 @@
     if (self) {
         minSize = NSZeroSize;
         edges = SKNoEdgeMask; // we start with no edge, so we can use this in 
IB without getting weird offsets
+               clipEdges = SKMaxXEdgeMask | SKMaxYEdgeMask;
         autoEdges = NO;
         contentView = [[NSView alloc] initWithFrame:[self contentRect]];
                [super addSubview:contentView];
@@ -70,6 +71,7 @@
                minSize.width = [decoder decodeDoubleForKey:@"minSize.width"];
                minSize.height = [decoder decodeDoubleForKey:@"minSize.height"];
                edges = [decoder decodeIntegerForKey:@"edges"];
+               clipEdges = [decoder decodeIntegerForKey:@"clipEdges"];
                autoEdges = [decoder decodeBoolForKey:@"autoEdges"];
        }
        return self;
@@ -84,6 +86,7 @@
     [coder encodeDouble:minSize.width forKey:@"minSize.width"];
     [coder encodeDouble:minSize.height forKey:@"minSize.height"];
     [coder encodeInteger:edges forKey:@"edges"];
+    [coder encodeInteger:clipEdges forKey:@"clipEdges"];
     [coder encodeBool:autoEdges forKey:@"autoEdges"];
 }
 
@@ -207,10 +210,16 @@
                if (edges & (1 << edge))
                        NSDivideRect(rect, &edgeRect, &rect, BORDER_SIZE, edge);
        }
-       if (rect.size.width < minSize.width)
+       if (rect.size.width < minSize.width) {
+               if (clipEdges & SKMinXEdgeMask)
+                       rect.origin.x -= minSize.width - NSWidth(rect);
                rect.size.width = minSize.width;
-       if (rect.size.height < minSize.height)
+       }
+    if (rect.size.height < minSize.height) {
+               if (clipEdges & SKMinYEdgeMask)
+                       rect.origin.y -= minSize.height - NSHeight(rect);
                rect.size.height = minSize.height;
+    }
        return rect;
 }
 


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.

------------------------------------------------------------------------------
EditLive Enterprise is the world's most technically advanced content
authoring tool. Experience the power of Track Changes, Inline Image
Editing and ensure content is compliant with Accessibility Checking.
http://p.sf.net/sfu/ephox-dev2dev
_______________________________________________
Skim-app-commit mailing list
Skim-app-commit@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/skim-app-commit

Reply via email to