Skip to content

Commit 93674f8

Browse files
committed
Initial commit
0 parents  commit 93674f8

23 files changed

+2108
-0
lines changed

.gitignore

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# Xcode
2+
build/*
3+
*.pbxuser
4+
!default.pbxuser
5+
*.mode1v3
6+
!default.mode1v3
7+
*.mode2v3
8+
!default.mode2v3
9+
*.perspectivev3
10+
!default.perspectivev3
11+
*.xcworkspace
12+
!default.xcworkspace
13+
xcuserdata
14+
profile
15+
*.moved-aside
16+
17+
InfoPlist.h

Classes/ArgumentsViewController.h

+22
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
//
2+
// ArgumentsViewController.h
3+
// MySQL.prefPane
4+
//
5+
// Copyright 2011 Iván Valdés Castillo. All rights reserved.
6+
// Copyright (c) Helmut K. C. Tessarek, 2015
7+
//
8+
9+
#import <Cocoa/Cocoa.h>
10+
11+
@interface MSPPArgumentsViewController : NSViewController <NSTableViewDelegate, NSTableViewDataSource> {
12+
NSTableView *tableView;
13+
@private
14+
NSMutableArray *arguments;
15+
NSMutableArray *parameters;
16+
}
17+
18+
@property (nonatomic, strong) IBOutlet NSTableView *tableView;
19+
20+
- (IBAction)addRow:(id)sender;
21+
22+
@end

Classes/ArgumentsViewController.m

+107
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,107 @@
1+
//
2+
// ArgumentsViewController.m
3+
// MySQL.prefPane
4+
//
5+
// Copyright 2011 Iván Valdés Castillo. All rights reserved.
6+
// Copyright (c) Helmut K. C. Tessarek, 2015
7+
//
8+
9+
#import "ArgumentsViewController.h"
10+
#import "Preferences.h"
11+
12+
@interface MSPPArgumentsViewController(/* Hidden Methods*/)
13+
@property (nonatomic, strong) NSMutableArray *arguments;
14+
@property (nonatomic, strong) NSMutableArray *parameters;
15+
- (void)removeArgument:(id)sender;
16+
- (void)updatePreferences;
17+
@end
18+
19+
@implementation MSPPArgumentsViewController
20+
@synthesize tableView;
21+
@synthesize arguments;
22+
@synthesize parameters;
23+
24+
#pragma mark - Initialization
25+
26+
- (instancetype)initWithCoder:(NSCoder *)aDecoder {
27+
self = [super initWithCoder:aDecoder];
28+
if (self) {
29+
self.arguments = [NSMutableArray arrayWithArray:[[MSPPPreferences sharedPreferences] objectForUserDefaultsKey:@"arguments"]];
30+
self.parameters = [NSMutableArray arrayWithArray:[[MSPPPreferences sharedPreferences] objectForUserDefaultsKey:@"parameters"]];
31+
}
32+
33+
return self;
34+
}
35+
36+
#pragma mark - Preferences management
37+
38+
- (void)updatePreferences {
39+
[[MSPPPreferences sharedPreferences] setObject:[NSArray arrayWithArray:self.arguments]
40+
forUserDefaultsKey:@"arguments"];
41+
[[MSPPPreferences sharedPreferences] setObject:[NSArray arrayWithArray:self.parameters]
42+
forUserDefaultsKey:@"parameters"];
43+
}
44+
45+
#pragma mark - Table View Tasks
46+
47+
- (NSInteger)numberOfRowsInTableView:(NSTableView *)tableView {
48+
return [self.arguments count];
49+
}
50+
51+
- (id)tableView:(NSTableView *)tableView objectValueForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row {
52+
if ([[tableColumn identifier] isEqualToString:@"argumentColumn"])
53+
return (self.arguments)[row];
54+
if ([[tableColumn identifier] isEqualToString:@"parametersColumn"])
55+
return (self.parameters)[row];
56+
57+
return nil;
58+
}
59+
60+
- (void)tableView:(NSTableView *)tableView setObjectValue:(id)object forTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row {
61+
if ([[tableColumn identifier] isEqualToString:@"argumentColumn"])
62+
(self.arguments)[row] = (NSString *)object;
63+
if ([[tableColumn identifier] isEqualToString:@"parametersColumn"])
64+
(self.parameters)[row] = (NSString *)object;
65+
66+
[self updatePreferences];
67+
}
68+
69+
- (BOOL)tableView:(NSTableView *)tableView shouldEditTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row {
70+
return [[tableColumn identifier] isEqualToString:@"argumentColumn"] || [[tableColumn identifier] isEqualToString:@"parametersColumn"];
71+
}
72+
73+
- (NSCell *)tableView:(NSTableView *)tableView dataCellForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row {
74+
NSCell *cell = [tableColumn dataCell];
75+
if ([[tableColumn identifier] isEqualToString:@"deleteColumn"]) {
76+
NSButtonCell *buttonCell = [[NSButtonCell alloc] init];
77+
[buttonCell setButtonType:NSMomentaryPushInButton];
78+
[buttonCell setBezeled:YES];
79+
[buttonCell setBezelStyle:NSSmallSquareBezelStyle];
80+
[buttonCell setTitle:@"-"];
81+
[buttonCell setTarget:self];
82+
[buttonCell setAction:@selector(removeArgument:)];
83+
return buttonCell;
84+
}
85+
return cell;
86+
}
87+
88+
#pragma mark - Interface Builder Actions
89+
90+
- (void)removeArgument:(id)sender {
91+
[self.arguments removeObjectAtIndex:[tableView selectedRow]];
92+
[self.parameters removeObjectAtIndex:[tableView selectedRow]];
93+
94+
[self updatePreferences];
95+
[self.tableView reloadData];
96+
}
97+
98+
- (IBAction)addRow:(id)sender {
99+
[self.arguments addObject:[NSString stringWithFormat:@"--option%lu",
100+
(unsigned long)[self.arguments count]]];
101+
[self.parameters addObject:[NSString stringWithFormat:@"value%lu",
102+
(unsigned long)[self.parameters count]]];
103+
104+
[self.tableView reloadData];
105+
}
106+
107+
@end

Classes/MBSliderButton.h

+38
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
/*
2+
Created on 28/02/2009
3+
Copyright 2009 Max Howell <max@methylblue.com>
4+
5+
This program is free software: you can redistribute it and/or modify
6+
it under the terms of the GNU General Public License as published by
7+
the Free Software Foundation, either version 3 of the License, or
8+
(at your option) any later version.
9+
10+
This program is distributed in the hope that it will be useful,
11+
but WITHOUT ANY WARRANTY; without even the implied warranty of
12+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13+
GNU General Public License for more details.
14+
15+
You should have received a copy of the GNU General Public License
16+
along with this program. If not, see <http://www.gnu.org/licenses/>.
17+
*/
18+
19+
#import <Cocoa/Cocoa.h>
20+
#import <PreferencePanes/PreferencePanes.h>
21+
22+
23+
@interface MSPPMBSliderButton : NSControl<NSAnimationDelegate>
24+
{
25+
NSPoint location;
26+
IBOutlet NSPreferencePane* prefpane;
27+
NSImage* knob;
28+
NSImage* surround;
29+
bool state;
30+
}
31+
32+
-(IBAction)moveLeft:(id)sender;
33+
-(IBAction)moveRight:(id)sender;
34+
35+
@property (NS_NONATOMIC_IOSONLY) NSInteger state;
36+
-(void)setState:(NSInteger)newstate animate:(bool)animate;
37+
38+
@end

0 commit comments

Comments
 (0)