Revision: 2595
http://skim-app.svn.sourceforge.net/skim-app/?rev=2595&view=rev
Author: hofman
Date: 2007-07-31 06:24:48 -0700 (Tue, 31 Jul 2007)
Log Message:
-----------
Small improvements to side windows. Rename some methods and don't switch too
many key views for pages in presentation mode.
Modified Paths:
--------------
trunk/SKMainWindowController.m
trunk/SKSideWindow.h
trunk/SKSideWindow.m
Modified: trunk/SKMainWindowController.m
===================================================================
--- trunk/SKMainWindowController.m 2007-07-31 11:31:48 UTC (rev 2594)
+++ trunk/SKMainWindowController.m 2007-07-31 13:24:48 UTC (rev 2595)
@@ -652,13 +652,13 @@
if ([[leftSideWindow screen] isEqual:screen] == NO) {
[leftSideWindow orderOut:self];
[leftSideWindow moveToScreen:screen];
- [leftSideWindow hideSideWindow];
+ [leftSideWindow collapse];
[leftSideWindow orderFront:self];
}
if ([[rightSideWindow screen] isEqual:screen] == NO) {
[rightSideWindow orderOut:self];
[leftSideWindow moveToScreen:screen];
- [rightSideWindow hideSideWindow];
+ [rightSideWindow collapse];
[rightSideWindow orderFront:self];
}
} else if ([self isPresentation]) {
@@ -1644,7 +1644,7 @@
- (IBAction)searchPDF:(id)sender {
if ([self isFullScreen]) {
if ([leftSideWindow state] == NSDrawerClosedState || [leftSideWindow
state] == NSDrawerClosingState)
- [leftSideWindow showSideWindow];
+ [leftSideWindow expand];
} else if (NSWidth([leftSideContentBox frame]) <= 0.0) {
[self toggleLeftSidePane:sender];
}
@@ -1777,9 +1777,9 @@
if ([self isFullScreen]) {
[[SKPDFHoverWindow sharedHoverWindow] hide];
if ([leftSideWindow state] == NSDrawerOpenState || [leftSideWindow
state] == NSDrawerOpeningState)
- [leftSideWindow hideSideWindow];
+ [leftSideWindow collapse];
else
- [leftSideWindow showSideWindow];
+ [leftSideWindow expand];
} else if ([self isPresentation]) {
if ([leftSideWindow isVisible])
[self hideLeftSideWindow];
@@ -1816,9 +1816,9 @@
- (IBAction)toggleRightSidePane:(id)sender {
if ([self isFullScreen]) {
if ([rightSideWindow state] == NSDrawerOpenState || [rightSideWindow
state] == NSDrawerOpeningState)
- [rightSideWindow hideSideWindow];
+ [rightSideWindow collapse];
else
- [rightSideWindow showSideWindow];
+ [rightSideWindow expand];
} else {
NSRect sideFrame = [rightSideContentBox frame];
NSRect pdfFrame = [pdfContentBox frame];
@@ -1882,7 +1882,6 @@
if ([[mainWindow firstResponder] isDescendantOf:leftSideContentView])
[mainWindow makeFirstResponder:nil];
[leftSideWindow setMainView:leftSideContentView];
- [leftSideWindow setInitialFirstResponder:searchField];
[leftSideEdgeView setEdges:BDSKNoEdgeMask];
[findEdgeView setEdges:BDSKNoEdgeMask];
@@ -1890,16 +1889,16 @@
if ([self isPresentation]) {
savedLeftSidePaneState = [self leftSidePaneState];
[self setLeftSidePaneState:SKThumbnailSidePaneState];
- [leftSideWindow showSideWindow];
[leftSideWindow setLevel:[[self window] level] + 1];
[leftSideWindow setAlphaValue:0.95];
[leftSideWindow setEnabled:NO];
[leftSideWindow makeFirstResponder:thumbnailTableView];
+ [leftSideWindow expand];
} else {
- [leftSideWindow hideSideWindow];
+ [leftSideWindow makeFirstResponder:searchField];
+ [leftSideWindow collapse];
+ [leftSideWindow orderFront:self];
}
-
- [leftSideWindow orderFront:self];
}
- (void)showRightSideWindow {
@@ -1919,12 +1918,12 @@
[rightSideEdgeView setEdges:BDSKNoEdgeMask];
if ([self isPresentation]) {
- [rightSideWindow showSideWindow];
+ [rightSideWindow expand];
[leftSideWindow setLevel:[[self window] level] + 1];
[leftSideWindow setAlphaValue:0.95];
[leftSideWindow setEnabled:NO];
} else {
- [rightSideWindow hideSideWindow];
+ [rightSideWindow collapse];
}
[rightSideWindow orderFront:self];
@@ -2540,7 +2539,7 @@
}
- (void)hideRightSideWindow:(NSTimer *)timer {
- [rightSideWindow hideSideWindow];
+ [rightSideWindow collapse];
}
-
(NSRect)snapshotControllerTargetRectForMiniaturize:(SKSnapshotWindowController
*)controller {
@@ -2548,7 +2547,7 @@
if ([self isFullScreen] == NO && NSWidth([rightSideContentBox frame])
<= 0.0) {
[self toggleRightSidePane:self];
} else if ([self isFullScreen] && ([rightSideWindow state] ==
NSDrawerClosedState || [rightSideWindow state] == NSDrawerClosingState)) {
- [rightSideWindow showSideWindow];
+ [rightSideWindow expand];
[NSTimer scheduledTimerWithTimeInterval:1.0 target:self
selector:@selector(hideRightSideWindow:) userInfo:NULL repeats:NO];
}
[self setRightSidePaneState:SKSnapshotSidePaneState];
Modified: trunk/SKSideWindow.h
===================================================================
--- trunk/SKSideWindow.h 2007-07-31 11:31:48 UTC (rev 2594)
+++ trunk/SKSideWindow.h 2007-07-31 13:24:48 UTC (rev 2595)
@@ -51,8 +51,8 @@
- (void)moveToScreen:(NSScreen *)screen;
- (void)slideIn;
- (void)slideOut;
-- (void)showSideWindow;
-- (void)hideSideWindow;
+- (void)expand;
+- (void)collapse;
- (NSView *)mainView;
- (void)setMainView:(NSView *)newContentView;
- (NSRectEdge)edge;
@@ -70,12 +70,12 @@
NSRectEdge edge;
BOOL enabled;
BOOL resizing;
- BOOL isStatic;
+ BOOL acceptsMouseOver;
}
- (id)initWithFrame:(NSRect)frameRect edge:(NSRectEdge)anEdge;
-- (void)showWindow;
-- (void)hideWindow;
- (void)trackMouseOvers;
- (BOOL)isEnabled;
- (void)setEnabled:(BOOL)flag;
+- (BOOL)acceptsMouseOver;
+- (void)setAcceptsMouseOver:(BOOL)flag;
@end
Modified: trunk/SKSideWindow.m
===================================================================
--- trunk/SKSideWindow.m 2007-07-31 11:31:48 UTC (rev 2594)
+++ trunk/SKSideWindow.m 2007-07-31 13:24:48 UTC (rev 2595)
@@ -155,13 +155,15 @@
return state;
}
-- (void)showSideWindow {
- [[self contentView] showWindow];
+- (void)expand {
+ [[self contentView] setAcceptsMouseOver:NO];
+ [self slideIn];
[self makeKeyAndOrderFront:nil];
}
-- (void)hideSideWindow {
- [[self contentView] hideWindow];
+- (void)collapse {
+ [self slideOut];
+ [[self contentView] setAcceptsMouseOver:YES];
}
- (BOOL)isEnabled {
@@ -262,6 +264,21 @@
}
}
+- (BOOL)acceptsMouseOver {
+ return acceptsMouseOver;
+}
+
+- (void)setAcceptsMouseOver:(BOOL)flag {
+ if (acceptsMouseOver != flag) {
+ acceptsMouseOver = flag;
+ if (timer) {
+ [timer invalidate];
+ [timer release];
+ timer = nil;
+ }
+ }
+}
+
- (NSRect)resizeHandleRect {
NSRect rect, ignored;
NSDivideRect([self bounds], &rect, &ignored, CONTENT_INSET, edge ==
NSMaxXEdge ? NSMinXEdge : NSMaxXEdge);
@@ -412,7 +429,7 @@
NSRect resizeHandleRect = [self resizeHandleRect];
if (NSPointInRect(mouseLoc, resizeHandleRect) && [(SKSideWindow *)[self
window] state] == NSDrawerOpenState) {
if (enabled && [theEvent clickCount] == 2)
- [self hideWindow];
+ [(SKSideWindow *)[self window] collapse];
else
[self resizeWithEvent:theEvent];
} else
@@ -433,7 +450,7 @@
}
- (void)mouseExited:(NSEvent *)theEvent {
- if (isStatic)
+ if (acceptsMouseOver == NO)
return;
if (timer) {
[timer invalidate];
@@ -452,7 +469,7 @@
}
- (void)mouseEntered:(NSEvent *)theEvent {
- if (isStatic)
+ if (acceptsMouseOver == NO)
return;
if (NSPointInRect([NSEvent mouseLocation], [[self window] frame])) {
if (timer == nil)
@@ -464,24 +481,4 @@
}
}
-- (void)showWindow {
- isStatic = YES;
- if (timer) {
- [timer invalidate];
- [timer release];
- timer = nil;
- }
- [(SKSideWindow *)[self window] slideIn];
-}
-
-- (void)hideWindow {
- isStatic = NO;
- if (timer) {
- [timer invalidate];
- [timer release];
- timer = nil;
- }
- [(SKSideWindow *)[self window] slideOut];
-}
-
@end
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Skim-app-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/skim-app-commit