IOS stuff

This commit is contained in:
jvernet 2015-12-29 22:05:01 +01:00 committed by Aaron Culliney
parent d23b0593fb
commit a3040dfb05
7 changed files with 92 additions and 35 deletions

View File

@ -2146,7 +2146,7 @@
ALWAYS_SEARCH_USER_PATHS = YES;
ARCHS = armv7;
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_OBJC_ARC = NO;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_WARN_UNREACHABLE_CODE = YES;
CODE_SIGN_IDENTITY = "iPhone Developer";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
@ -2184,7 +2184,7 @@
ALWAYS_SEARCH_USER_PATHS = YES;
ARCHS = armv7;
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_OBJC_ARC = NO;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_WARN_UNREACHABLE_CODE = YES;
CODE_SIGN_IDENTITY = "iPhone Developer";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";

View File

@ -48,7 +48,7 @@
-(IBAction)prefsItemSelected:(id)sender{
cpu_pause();
[self.viewPrefs ];
//[self.viewPrefs ];
//pause
//show pref windows
cpu_resume();

View File

@ -800,12 +800,12 @@ DQ
<popUpButton verticalHuggingPriority="750" id="1sF-py-jCs">
<rect key="frame" x="115" y="271" width="158" height="26"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
<popUpButtonCell key="cell" type="push" title="Black/white" bezelStyle="rounded" alignment="left" lineBreakMode="truncatingTail" state="on" borderStyle="borderAndBezel" imageScaling="proportionallyDown" inset="2" selectedItem="PX0-X3-MxY" id="eVj-ax-48A">
<popUpButtonCell key="cell" type="push" bezelStyle="rounded" alignment="left" lineBreakMode="truncatingTail" borderStyle="borderAndBezel" imageScaling="proportionallyDown" inset="2" id="eVj-ax-48A">
<behavior key="behavior" lightByBackground="YES" lightByGray="YES"/>
<font key="font" metaFont="menu"/>
<menu key="menu" id="gbp-xU-CmX">
<items>
<menuItem title="Black/white" state="on" id="PX0-X3-MxY">
<menuItem title="Black/white" id="PX0-X3-MxY">
<modifierMask key="keyEquivalentModifierMask"/>
</menuItem>
<menuItem title="Color" id="TRN-Jh-rFc">

View File

@ -8,6 +8,17 @@
#import <UIKit/UIKit.h>
@interface iosPrefControllerViewController : UIViewController
@interface iosPrefControllerViewController : UIViewController<UIPickerViewDataSource, UIPickerViewDelegate>
{
NSArray *_pickerData;
}
@property (weak, nonatomic) IBOutlet UIPickerView *videoModePicker;
@property (retain, nonatomic) IBOutlet UISlider *CPUSpeed;
@property (retain, nonatomic) IBOutlet UISwitch *CPUMax;
@end

View File

@ -8,15 +8,21 @@
#import "iosPrefControllerViewController.h"
@interface iosPrefControllerViewController ()
@end
#import "common.h"
#import "modelUtil.h"
@implementation iosPrefControllerViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
_pickerData = @[@"Mono", @"Color"];
// Connect data
self.videoModePicker.dataSource = self;
self.videoModePicker.delegate = self;
}
- (void)didReceiveMemoryWarning {
@ -24,14 +30,49 @@
// Dispose of any resources that can be recreated.
}
/*
#pragma mark - Navigation
// In a storyboard-based application, you will often want to do a little preparation before navigation
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
// Get the new view controller using [segue destinationViewController].
// Pass the selected object to the new view controller.
// The number of columns of data
- (int)numberOfComponentsInPickerView:(UIPickerView *)pickerView
{
return 1;
}
// The number of rows of data
- (int)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
{
return _pickerData.count;
}
// The data to return for the row and component (column) that's being passed in
- (NSString*)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
{
return _pickerData[row];
}
// Catpure the picker view selection
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
{
// This method is triggered whenever the user makes a change to the picker selection.
// The parameter named row and component represents what was selected.
}
/*
#pragma mark - Navigation
// In a storyboard-based application, you will often want to do a little preparation before navigation
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
// Get the new view controller using [segue destinationViewController].
// Pass the selected object to the new view controller.
}
*/
- (void)dealloc {
[_videoModePicker release];
[_videoModePicker release];
[_CPUSpeed release];
[_CPUMax release];
[super dealloc];
}
*/
@end

View File

@ -35,6 +35,9 @@
<barButtonItem title="Prefs" id="80q-oc-naJ">
<connections>
<action selector="prefsItemSelected:" destination="dkx-z0-nzr" id="L1Z-h1-i72"/>
<segue destination="Bdv-8H-ns5" kind="popoverPresentation" popoverAnchorBarButtonItem="80q-oc-naJ" id="Fti-ut-1yg">
<popoverArrowDirection key="popoverArrowDirection" up="YES" down="YES" left="YES" right="YES"/>
</segue>
</connections>
</barButtonItem>
<barButtonItem title="Pause" id="XF9-t2-IEl">
@ -75,40 +78,41 @@
<rect key="frame" x="0.0" y="0.0" width="600" height="600"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<textField opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="Lr7-yF-mb2">
<rect key="frame" x="127" y="113" width="97" height="30"/>
<fontDescription key="fontDescription" type="system" pointSize="14"/>
<textInputTraits key="textInputTraits"/>
</textField>
<button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="XxD-w4-jxp">
<rect key="frame" x="143" y="196" width="46" height="30"/>
<state key="normal" title="Button"/>
</button>
<navigationBar contentMode="scaleToFill" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="xl4-DT-0Un">
<rect key="frame" x="0.0" y="0.0" width="600" height="44"/>
<items>
<navigationItem title="Preferences" id="4Dl-i2-erE">
<barButtonItem key="leftBarButtonItem" title="Back" id="LNc-VH-VvX">
<connections>
<segue destination="BYZ-38-t0r" kind="show" id="Qgp-u4-61g"/>
</connections>
</barButtonItem>
</navigationItem>
<navigationItem title="Preferences" id="4Dl-i2-erE"/>
</items>
</navigationBar>
<slider opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" value="0.5" minValue="0.0" maxValue="1" translatesAutoresizingMaskIntoConstraints="NO" id="oBP-0d-AK1">
<rect key="frame" x="44" y="173" width="272" height="31"/>
</slider>
<switch opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="750" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" on="YES" translatesAutoresizingMaskIntoConstraints="NO" id="sm7-2d-KDw">
<rect key="frame" x="383" y="93" width="51" height="31"/>
</switch>
<switch opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="750" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" on="YES" translatesAutoresizingMaskIntoConstraints="NO" id="SUp-G2-zVO">
<rect key="frame" x="383" y="173" width="51" height="31"/>
</switch>
<pickerView contentMode="scaleToFill" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="WGm-hY-OEW">
<rect key="frame" x="0.0" y="257" width="600" height="123"/>
</pickerView>
</subviews>
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
</view>
<simulatedOrientationMetrics key="simulatedOrientationMetrics"/>
<connections>
<outlet property="CPUMax" destination="SUp-G2-zVO" id="T9w-2v-rJ0"/>
<outlet property="CPUSpeed" destination="oBP-0d-AK1" id="Fba-mZ-iwb"/>
<outlet property="videoModePicker" destination="WGm-hY-OEW" id="Vha-cu-lg7"/>
</connections>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="tqd-Zi-o6N" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="954" y="-60"/>
<point key="canvasLocation" x="1092" y="-223"/>
</scene>
<!--View Controller-->
<scene sceneID="7d6-Zt-X84">
<objects>
<placeholder placeholderIdentifier="IBFirstResponder" id="3aI-5Q-HSv" userLabel="First Responder" sceneMemberID="firstResponder"/>
<viewController storyboardIdentifier="MainMenu" id="jav-c9-0Cp" sceneMemberID="viewController">
<layoutGuides>
<viewControllerLayoutGuide type="top" id="rug-Qe-ZFP"/>
@ -128,6 +132,7 @@
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
</view>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="3aI-5Q-HSv" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="1058" y="605"/>
</scene>

View File

@ -107,7 +107,7 @@ void audio_shutdown(void) {
void audio_pause(void) {
// CPU thread owns audio lifecycle (see note above)
// Deadlock on Kindle Fire 1st Gen if audio_pause() and audio_resume() happen off CPU thread ...
assert(pthread_self() == cpu_thread_id);
// assert(pthread_self() == cpu_thread_id);
if (!audio_isAvailable) {
return;
}