blob: c8f6cecddfd514d12d0964a7b67fb7ec51a56231 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
|
//
// PSMTabBarCell.h
// PSMTabBarControl
//
// Created by John Pannell on 10/13/05.
// Copyright 2005 Positive Spin Media. All rights reserved.
//
#import <Cocoa/Cocoa.h>
#import "PSMTabBarControl.h"
#import "PSMProgressIndicator.h"
@interface PSMTabBarCell : NSActionCell {
// sizing
NSRect _frame;
NSSize _stringSize;
NSInteger _currentStep;
BOOL _isPlaceholder;
// state
NSInteger _tabState;
NSTrackingRectTag _closeButtonTrackingTag; // left side tracking, if dragging
NSTrackingRectTag _cellTrackingTag; // right side tracking, if dragging
BOOL _closeButtonOver;
BOOL _closeButtonPressed;
PSMProgressIndicator *_indicator;
BOOL _isInOverflowMenu;
BOOL _hasCloseButton;
BOOL _isCloseButtonSuppressed;
BOOL _hasIcon;
BOOL _hasLargeImage;
NSInteger _count;
NSColor *_countColor;
BOOL _isEdited;
}
// creation/destruction
- (id)initWithControlView:(PSMTabBarControl *)controlView;
- (id)initPlaceholderWithFrame:(NSRect) frame expanded:(BOOL) value inControlView:(PSMTabBarControl *)controlView;
- (void)dealloc;
// accessors
- (id)controlView;
- (void)setControlView:(id)view;
- (NSTrackingRectTag)closeButtonTrackingTag;
- (void)setCloseButtonTrackingTag:(NSTrackingRectTag)tag;
- (NSTrackingRectTag)cellTrackingTag;
- (void)setCellTrackingTag:(NSTrackingRectTag)tag;
- (CGFloat)width;
- (NSRect)frame;
- (void)setFrame:(NSRect)rect;
- (void)setStringValue:(NSString *)aString;
- (NSSize)stringSize;
- (NSAttributedString *)attributedStringValue;
- (NSInteger)tabState;
- (void)setTabState:(NSInteger)state;
- (NSProgressIndicator *)indicator;
- (BOOL)isInOverflowMenu;
- (void)setIsInOverflowMenu:(BOOL)value;
- (BOOL)closeButtonPressed;
- (void)setCloseButtonPressed:(BOOL)value;
- (BOOL)closeButtonOver;
- (void)setCloseButtonOver:(BOOL)value;
- (BOOL)hasCloseButton;
- (void)setHasCloseButton:(BOOL)set;
- (void)setCloseButtonSuppressed:(BOOL)suppress;
- (BOOL)isCloseButtonSuppressed;
- (BOOL)hasIcon;
- (void)setHasIcon:(BOOL)value;
- (BOOL)hasLargeImage;
- (void)setHasLargeImage:(BOOL)value;
- (NSInteger)count;
- (void)setCount:(NSInteger)value;
- (NSColor *)countColor;
- (void)setCountColor:(NSColor *)value;
- (BOOL)isPlaceholder;
- (void)setIsPlaceholder:(BOOL)value;
- (NSInteger)currentStep;
- (void)setCurrentStep:(NSInteger)value;
- (BOOL)isEdited;
- (void)setIsEdited:(BOOL)value;
// component attributes
- (NSRect)indicatorRectForFrame:(NSRect)cellFrame;
- (NSRect)closeButtonRectForFrame:(NSRect)cellFrame;
- (CGFloat)minimumWidthOfCell;
- (CGFloat)desiredWidthOfCell;
// drawing
- (void)drawWithFrame:(NSRect) cellFrame inView:(NSView *)controlView;
// tracking the mouse
- (void)mouseEntered:(NSEvent *)theEvent;
- (void)mouseExited:(NSEvent *)theEvent;
// drag support
- (NSImage *)dragImage;
// archiving
- (void)encodeWithCoder:(NSCoder *)aCoder;
- (id)initWithCoder:(NSCoder *)aDecoder;
@end
@interface PSMTabBarControl (CellAccessors)
- (id<PSMTabStyle>)style;
@end
@interface NSObject (IdentifierAccesors)
- (NSImage *)largeImage;
@end
|