diff options
author | Sven Weidauer <sven.weidauer@gmail.com> | 2011-01-19 20:19:43 +0000 |
---|---|---|
committer | Sven Weidauer <sven.weidauer@gmail.com> | 2011-01-19 20:19:43 +0000 |
commit | f85335a7f9fdbff012409bb2af8fecc81740eab0 (patch) | |
tree | f4f6678aa78b89b76fab7a10094f0cdd1b22be0f /cocoa/PSMTabBarControl/PSMTabStyle.h | |
parent | 5a259dadeb6b6b31f5cfe628cc62bfb7d86e25b4 (diff) | |
download | netsurf-f85335a7f9fdbff012409bb2af8fecc81740eab0.tar.gz netsurf-f85335a7f9fdbff012409bb2af8fecc81740eab0.tar.bz2 |
Implementing tabs and fixing scrolling.
svn path=/trunk/netsurf/; revision=11396
Diffstat (limited to 'cocoa/PSMTabBarControl/PSMTabStyle.h')
-rw-r--r-- | cocoa/PSMTabBarControl/PSMTabStyle.h | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/cocoa/PSMTabBarControl/PSMTabStyle.h b/cocoa/PSMTabBarControl/PSMTabStyle.h new file mode 100644 index 000000000..23c826fa6 --- /dev/null +++ b/cocoa/PSMTabBarControl/PSMTabStyle.h @@ -0,0 +1,57 @@ +// +// PSMTabStyle.h +// PSMTabBarControl +// +// Created by John Pannell on 2/17/06. +// Copyright 2006 Positive Spin Media. All rights reserved. +// + +/* +Protocol to be observed by all style delegate objects. These objects handle the drawing responsibilities for PSMTabBarCell; once the control has been assigned a style, the background and cells draw consistent with that style. Design pattern and implementation by David Smith, Seth Willits, and Chris Forsythe, all touch up and errors by John P. :-) +*/ + +#import "PSMTabBarCell.h" +#import "PSMTabBarControl.h" + +@protocol PSMTabStyle <NSObject> + +// identity +- (NSString *)name; + +// control specific parameters +- (CGFloat)leftMarginForTabBarControl; +- (CGFloat)rightMarginForTabBarControl; +- (CGFloat)topMarginForTabBarControl; +- (void)setOrientation:(PSMTabBarOrientation)value; + +// add tab button +- (NSImage *)addTabButtonImage; +- (NSImage *)addTabButtonPressedImage; +- (NSImage *)addTabButtonRolloverImage; + +// cell specific parameters +- (NSRect)dragRectForTabCell:(PSMTabBarCell *)cell orientation:(PSMTabBarOrientation)orientation; +- (NSRect)closeButtonRectForTabCell:(PSMTabBarCell *)cell withFrame:(NSRect)cellFrame; +- (NSRect)iconRectForTabCell:(PSMTabBarCell *)cell; +- (NSRect)indicatorRectForTabCell:(PSMTabBarCell *)cell; +- (NSRect)objectCounterRectForTabCell:(PSMTabBarCell *)cell; +- (CGFloat)minimumWidthOfTabCell:(PSMTabBarCell *)cell; +- (CGFloat)desiredWidthOfTabCell:(PSMTabBarCell *)cell; +- (CGFloat)tabCellHeight; + +// cell values +- (NSAttributedString *)attributedObjectCountValueForTabCell:(PSMTabBarCell *)cell; +- (NSAttributedString *)attributedStringValueForTabCell:(PSMTabBarCell *)cell; + +// drawing +- (void)drawTabCell:(PSMTabBarCell *)cell; +- (void)drawBackgroundInRect:(NSRect)rect; +- (void)drawTabBar:(PSMTabBarControl *)bar inRect:(NSRect)rect; + +@end + +@interface PSMTabBarControl (StyleAccessors) + +- (NSMutableArray *)cells; + +@end |