Develop and Download Open Source Software

Browse Subversion Repository

Annotation of /XspfManager/XspfMCoverFlowViewController.m

Parent Directory Parent Directory | Revision Log Revision Log


Revision 294 - (hide annotations) (download)
Sun Jan 31 00:59:59 2010 UTC (14 years, 2 months ago) by masaki
File size: 2426 byte(s)
[Mod] スプリットビューの左/上の最小幅を設定。
1 masaki 281 //
2     // XspfMCoverFlowViewController.m
3     // XspfManager
4     //
5     // Created by Hori,Masaki on 10/01/21.
6     // Copyright 2010 masakih. All rights reserved.
7     //
8    
9     #import "XspfMCoverFlowViewController.h"
10    
11     #import "MBCoverFlowView.h"
12     #import "XspfMListViewController.h"
13     #import "XspfMCoverFlowAccessoryViewController.h"
14    
15     #import "XspfMDragControl.h"
16    
17    
18     @implementation XspfMCoverFlowViewController
19    
20     - (id)init
21     {
22     self = [super initWithNibName:@"XspfMCoverFlowView" bundle:nil];
23    
24     return self;
25     }
26    
27     - (void)awakeFromNib
28     {
29     NSArrayController *rep = [self representedObject];
30    
31     coverFlow.imageKeyPath = @"thumbnail";
32     coverFlow.showsScrollbar = YES;
33 masaki 287 coverFlow.itemSize = NSMakeSize(200, 150);
34 masaki 281
35     [dragControl setDrawsBackground:NO];
36     [dragControl setDragPosition:NSImageAlignCenter];
37     [dragControl setVertical:NO];
38    
39     listViewController = [[XspfMListViewController alloc] init];
40     [listViewController view];
41     [listViewController setRepresentedObject:rep];
42     [listViewController recalculateKeyViewLoop];
43     [listPlaceHolder addSubview:[listViewController view]];
44     [[listViewController view] setFrame:[listPlaceHolder bounds]];
45     [self recalculateKeyViewLoop];
46    
47     accessoryController = [[XspfMCoverFlowAccessoryViewController alloc] init];
48     [accessoryController setXspfMDragControlDelegate:self];
49     coverFlow.dragControl = [accessoryController dragControl];
50     coverFlow.accessoryController = accessoryController;
51 masaki 290
52     coverFlow.action = @selector(openXspf:);
53 masaki 294
54     [splitView setDelegate:self];
55 masaki 281 }
56    
57     - (void)setRepresentedObject:(id)representedObject
58     {
59     [super setRepresentedObject:representedObject];
60 masaki 283 [listViewController setRepresentedObject:representedObject];
61 masaki 281
62     if(representedObject) {
63     [coverFlow bind:@"content" toObject:representedObject withKeyPath:@"arrangedObjects" options:nil];
64     [coverFlow bind:@"selectionIndex" toObject:representedObject withKeyPath:@"selectionIndex" options:nil];
65 masaki 283 } else {
66     [coverFlow unbind:@"content"];
67     [coverFlow unbind:@"selectionIndex"];
68 masaki 281 }
69     }
70    
71     - (void)dragControl:(XspfMDragControl *)control dragDelta:(NSSize)delta
72     {
73     HMLog(HMLogLevelDebug, @"Enter %@", NSStringFromSelector(_cmd));
74    
75     CGFloat libWidth = [coverFlow frame].size.height;
76     [splitView setPosition:libWidth - delta.height ofDividerAtIndex:0];
77     }
78    
79 masaki 294 #pragma mark#### NSSplitView Delegate ####
80     - (CGFloat)splitView:(NSSplitView *)splitView constrainMinCoordinate:(CGFloat)proposedMinimumPosition ofSubviewAt:(NSInteger)dividerIndex
81     {
82     return 130;
83     }
84 masaki 281
85 masaki 294
86    
87 masaki 281 @end

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26