X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=pcsx_rearmed.git;a=blobdiff_plain;f=macosx%2Fplugins%2FDFInput%2Fmacsrc%2FMappingCell.m;fp=macosx%2Fplugins%2FDFInput%2Fmacsrc%2FMappingCell.m;h=0000000000000000000000000000000000000000;hp=0fb43bd19c7d985cd7f180e169e233f538d83842;hb=aa1fc44b4532dc68be2482730a275f8a3ba8a039;hpb=ef79bbde537d6b9c745a7d86cb9df1d04c35590d diff --git a/macosx/plugins/DFInput/macsrc/MappingCell.m b/macosx/plugins/DFInput/macsrc/MappingCell.m deleted file mode 100644 index 0fb43bd1..00000000 --- a/macosx/plugins/DFInput/macsrc/MappingCell.m +++ /dev/null @@ -1,89 +0,0 @@ -/* - * Copyright (c) 2010, Wei Mingzhi . - * All Rights Reserved. - * - * Based on: HIDInput by Gil Pedersen. - * Copyright (c) 2004, Gil Pedersen. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, see . - */ - -#import "MappingCell.h" -#import "ControllerList.h" -#import "cfg.h" - -@implementation MappingCell - -- (id)initTextCell:(NSString *)aString { - self = [super initTextCell:aString]; - [self setEditable:NO]; - return self; -} - -- (void)selectWithFrame:(NSRect)aRect inView:(NSView *)controlView editor:(NSText *)textObj delegate:(id)anObject start:(int)selStart length:(int)selLength -{ - [super selectWithFrame:aRect inView:controlView editor:textObj delegate:anObject start:selStart length:selLength]; - - int whichPad = [ControllerList currentController]; - NSTableView *tableView = (NSTableView *)[self controlView]; - int i, changed = 0, row; - NSEvent *endEvent; - NSPoint where = {0.0, 0.0}; - - /* start a modal session */ - NSModalSession session = [NSApp beginModalSessionForWindow:[tableView window]]; - [NSApp runModalSession:session]; - - /* delay for a little while to allow user to release the button pressed to activate the element */ - [NSThread sleepUntilDate:[NSDate dateWithTimeIntervalSinceNow:0.15]]; - - InitAxisPos(whichPad); - - /* wait for 10 seconds for user to press a key */ - for (i = 0; i < 10; i++) { - [NSApp runModalSession:session]; - row = [tableView selectedRow]; - if (row < DKEY_TOTAL) { - changed = ReadDKeyEvent(whichPad, [ControllerList getButtonOfRow:row]); - } else { - row -= DKEY_TOTAL; - changed = ReadAnalogEvent(whichPad, row / 4, row % 4); - } - - if (changed) break; - } - - [NSApp endModalSession:session]; - - /* move selection to the next list element */ - [self endEditing:textObj]; - if (changed == 1) { - int nextRow = [tableView selectedRow] + 1; - if (nextRow >= [tableView numberOfRows]) { - [tableView deselectAll:self]; - return; - } - [tableView selectRow:nextRow byExtendingSelection:NO]; - - /* discard any events we have received while waiting for the button press */ - endEvent = [NSEvent otherEventWithType:NSApplicationDefined location:where - modifierFlags:0 timestamp:(NSTimeInterval)0 - windowNumber:0 context:[NSGraphicsContext currentContext] subtype:0 data1:0 data2:0]; - [NSApp postEvent:endEvent atStart:NO]; - [NSApp discardEventsMatchingMask:NSAnyEventMask beforeEvent:endEvent]; - } - [[tableView window] makeFirstResponder:tableView]; -} - -@end