first commit
This commit is contained in:
commit
925bd4a7a2
14 changed files with 7146 additions and 0 deletions
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
build/**/*
|
2
English.lproj/InfoPlist.strings
Normal file
2
English.lproj/InfoPlist.strings
Normal file
|
@ -0,0 +1,2 @@
|
|||
/* Localized versions of Info.plist keys */
|
||||
|
4778
English.lproj/MainMenu.xib
Normal file
4778
English.lproj/MainMenu.xib
Normal file
File diff suppressed because it is too large
Load diff
BIN
Icon.icns
Normal file
BIN
Icon.icns
Normal file
Binary file not shown.
8
README
Normal file
8
README
Normal file
|
@ -0,0 +1,8 @@
|
|||
OS X application to let the synthesizer read texts.
|
||||
|
||||
Copy & paste text into the app, press "Speak" and Alex
|
||||
reads the text to you. You can pause the text and let
|
||||
him speak only selected parts.
|
||||
|
||||
Copyright (c) 2010 Jeena Paradies
|
||||
Released under the MIT license
|
32
Speaker-Info.plist
Normal file
32
Speaker-Info.plist
Normal file
|
@ -0,0 +1,32 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>English</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>${EXECUTABLE_NAME}</string>
|
||||
<key>CFBundleIconFile</key>
|
||||
<string>Icon.icns</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>net.jeena.apps.speaker</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>${PRODUCT_NAME}</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1</string>
|
||||
<key>LSMinimumSystemVersion</key>
|
||||
<string>${MACOSX_DEPLOYMENT_TARGET}</string>
|
||||
<key>NSMainNibFile</key>
|
||||
<string>MainMenu</string>
|
||||
<key>NSPrincipalClass</key>
|
||||
<string>NSApplication</string>
|
||||
</dict>
|
||||
</plist>
|
1402
Speaker.xcodeproj/jeena.mode1v3
Normal file
1402
Speaker.xcodeproj/jeena.mode1v3
Normal file
File diff suppressed because it is too large
Load diff
523
Speaker.xcodeproj/jeena.pbxuser
Normal file
523
Speaker.xcodeproj/jeena.pbxuser
Normal file
|
@ -0,0 +1,523 @@
|
|||
// !$*UTF8*$!
|
||||
{
|
||||
089C165DFE840E0CC02AAC07 /* English */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {518, 525}}";
|
||||
sepNavSelRange = "{0, 0}";
|
||||
sepNavVisRange = "{0, 45}";
|
||||
};
|
||||
};
|
||||
1FA38C25124D2411004B8852 /* Speaker */ = {
|
||||
isa = PBXExecutable;
|
||||
activeArgIndices = (
|
||||
);
|
||||
argumentStrings = (
|
||||
);
|
||||
autoAttachOnCrash = 1;
|
||||
breakpointsEnabled = 0;
|
||||
configStateDict = {
|
||||
};
|
||||
customDataFormattersEnabled = 1;
|
||||
dataTipCustomDataFormattersEnabled = 1;
|
||||
dataTipShowTypeColumn = 1;
|
||||
dataTipSortType = 0;
|
||||
debuggerPlugin = GDBDebugging;
|
||||
disassemblyDisplayState = 0;
|
||||
dylibVariantSuffix = "";
|
||||
enableDebugStr = 1;
|
||||
environmentEntries = (
|
||||
);
|
||||
executableSystemSymbolLevel = 0;
|
||||
executableUserSymbolLevel = 0;
|
||||
libgmallocEnabled = 0;
|
||||
name = Speaker;
|
||||
savedGlobals = {
|
||||
};
|
||||
showTypeColumn = 0;
|
||||
sourceDirectories = (
|
||||
);
|
||||
};
|
||||
1FA38C37124D2426004B8852 /* Source Control */ = {
|
||||
isa = PBXSourceControlManager;
|
||||
fallbackIsa = XCSourceControlManager;
|
||||
isSCMEnabled = 0;
|
||||
scmConfiguration = {
|
||||
repositoryNamesForRoots = {
|
||||
"" = "";
|
||||
};
|
||||
};
|
||||
};
|
||||
1FA38C38124D2426004B8852 /* Code sense */ = {
|
||||
isa = PBXCodeSenseManager;
|
||||
indexTemplatePath = "";
|
||||
};
|
||||
1FA38C56124D2CA0004B8852 /* XCBuildMessageTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
comments = "Invalid initializer";
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
fallbackIsa = XCBuildMessageTextBookmark;
|
||||
rLen = 1;
|
||||
rLoc = 21;
|
||||
rType = 1;
|
||||
};
|
||||
1FA38C57124D2CA0004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 20";
|
||||
rLen = 0;
|
||||
rLoc = 481;
|
||||
rType = 0;
|
||||
vrLen = 382;
|
||||
vrLoc = 139;
|
||||
};
|
||||
1FA38C5E124D2CD6004B8852 /* PBXBookmark */ = {
|
||||
isa = PBXBookmark;
|
||||
fRef = 1FA38C48124D27C8004B8852 /* play-icon.png */;
|
||||
};
|
||||
1FA38C5F124D2CD6004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D80F4B6AC300CF3369 /* SpeakerAppDelegate.h */;
|
||||
name = "SpeakerAppDelegate.h: 13";
|
||||
rLen = 10;
|
||||
rLoc = 255;
|
||||
rType = 0;
|
||||
vrLen = 380;
|
||||
vrLoc = 43;
|
||||
};
|
||||
1FA38C60124D2CD6004B8852 /* XCBuildMessageTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
comments = "Invalid initializer";
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
fallbackIsa = XCBuildMessageTextBookmark;
|
||||
rLen = 1;
|
||||
rLoc = 21;
|
||||
rType = 1;
|
||||
};
|
||||
1FA38C61124D2CD6004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 32";
|
||||
rLen = 0;
|
||||
rLoc = 1342;
|
||||
rType = 0;
|
||||
vrLen = 779;
|
||||
vrLoc = 77;
|
||||
};
|
||||
1FA38C6D124D2D0C004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 20";
|
||||
rLen = 0;
|
||||
rLoc = 481;
|
||||
rType = 0;
|
||||
vrLen = 779;
|
||||
vrLoc = 77;
|
||||
};
|
||||
1FA38C71124D2D1E004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 20";
|
||||
rLen = 0;
|
||||
rLoc = 481;
|
||||
rType = 0;
|
||||
vrLen = 779;
|
||||
vrLoc = 77;
|
||||
};
|
||||
1FA38C75124D2D34004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 20";
|
||||
rLen = 0;
|
||||
rLoc = 481;
|
||||
rType = 0;
|
||||
vrLen = 797;
|
||||
vrLoc = 77;
|
||||
};
|
||||
1FA38C77124D2D5A004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 20";
|
||||
rLen = 0;
|
||||
rLoc = 481;
|
||||
rType = 0;
|
||||
vrLen = 779;
|
||||
vrLoc = 77;
|
||||
};
|
||||
1FA38C7A124D2DA5004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 20";
|
||||
rLen = 0;
|
||||
rLoc = 481;
|
||||
rType = 0;
|
||||
vrLen = 760;
|
||||
vrLoc = 77;
|
||||
};
|
||||
1FA38C7F124D2DBB004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 20";
|
||||
rLen = 0;
|
||||
rLoc = 481;
|
||||
rType = 0;
|
||||
vrLen = 708;
|
||||
vrLoc = 0;
|
||||
};
|
||||
1FA38C84124D2DCA004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 20";
|
||||
rLen = 0;
|
||||
rLoc = 481;
|
||||
rType = 0;
|
||||
vrLen = 708;
|
||||
vrLoc = 0;
|
||||
};
|
||||
1FA38C88124D2DE9004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 20";
|
||||
rLen = 0;
|
||||
rLoc = 481;
|
||||
rType = 0;
|
||||
vrLen = 700;
|
||||
vrLoc = 77;
|
||||
};
|
||||
1FA38C8F124D3162004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D80F4B6AC300CF3369 /* SpeakerAppDelegate.h */;
|
||||
name = "SpeakerAppDelegate.h: 14";
|
||||
rLen = 0;
|
||||
rLoc = 324;
|
||||
rType = 0;
|
||||
vrLen = 458;
|
||||
vrLoc = 0;
|
||||
};
|
||||
1FA38C90124D3162004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 20";
|
||||
rLen = 0;
|
||||
rLoc = 481;
|
||||
rType = 0;
|
||||
vrLen = 695;
|
||||
vrLoc = 77;
|
||||
};
|
||||
1FA38C91124D3162004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 32";
|
||||
rLen = 0;
|
||||
rLoc = 1342;
|
||||
rType = 0;
|
||||
vrLen = 711;
|
||||
vrLoc = 140;
|
||||
};
|
||||
1FA38C95124D31AD004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 34";
|
||||
rLen = 0;
|
||||
rLoc = 1339;
|
||||
rType = 0;
|
||||
vrLen = 706;
|
||||
vrLoc = 208;
|
||||
};
|
||||
1FA38C98124D341C004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D80F4B6AC300CF3369 /* SpeakerAppDelegate.h */;
|
||||
name = "SpeakerAppDelegate.h: 15";
|
||||
rLen = 0;
|
||||
rLoc = 324;
|
||||
rType = 0;
|
||||
vrLen = 477;
|
||||
vrLoc = 0;
|
||||
};
|
||||
1FA38C99124D341C004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 24";
|
||||
rLen = 0;
|
||||
rLoc = 571;
|
||||
rType = 0;
|
||||
vrLen = 701;
|
||||
vrLoc = 208;
|
||||
};
|
||||
1FA38C9A124D341C004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 39";
|
||||
rLen = 0;
|
||||
rLoc = 1339;
|
||||
rType = 0;
|
||||
vrLen = 620;
|
||||
vrLoc = 409;
|
||||
};
|
||||
1FA38C9B124D34F4004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 41";
|
||||
rLen = 0;
|
||||
rLoc = 1312;
|
||||
rType = 0;
|
||||
vrLen = 655;
|
||||
vrLoc = 409;
|
||||
};
|
||||
1FA38C9E124D3516004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 46";
|
||||
rLen = 0;
|
||||
rLoc = 1334;
|
||||
rType = 0;
|
||||
vrLen = 662;
|
||||
vrLoc = 449;
|
||||
};
|
||||
1FA38CA8124D3666004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 30";
|
||||
rLen = 0;
|
||||
rLoc = 818;
|
||||
rType = 0;
|
||||
vrLen = 961;
|
||||
vrLoc = 208;
|
||||
};
|
||||
1FA38CAB124D3695004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 28";
|
||||
rLen = 0;
|
||||
rLoc = 625;
|
||||
rType = 0;
|
||||
vrLen = 1023;
|
||||
vrLoc = 207;
|
||||
};
|
||||
1FA38CAF124D36B6004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 33";
|
||||
rLen = 0;
|
||||
rLoc = 823;
|
||||
rType = 0;
|
||||
vrLen = 1079;
|
||||
vrLoc = 207;
|
||||
};
|
||||
1FA38CB3124D3718004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 18";
|
||||
rLen = 0;
|
||||
rLoc = 441;
|
||||
rType = 0;
|
||||
vrLen = 1108;
|
||||
vrLoc = 207;
|
||||
};
|
||||
1FA38CB5124D3736004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 33";
|
||||
rLen = 0;
|
||||
rLoc = 823;
|
||||
rType = 0;
|
||||
vrLen = 959;
|
||||
vrLoc = 207;
|
||||
};
|
||||
1FA38CB8124D3793004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 32";
|
||||
rLen = 0;
|
||||
rLoc = 818;
|
||||
rType = 0;
|
||||
vrLen = 1018;
|
||||
vrLoc = 207;
|
||||
};
|
||||
1FA38CBB124D37B2004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 32";
|
||||
rLen = 0;
|
||||
rLoc = 762;
|
||||
rType = 0;
|
||||
vrLen = 1029;
|
||||
vrLoc = 207;
|
||||
};
|
||||
1FA38CBE124D3887004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 32";
|
||||
rLen = 0;
|
||||
rLoc = 762;
|
||||
rType = 0;
|
||||
vrLen = 1029;
|
||||
vrLoc = 207;
|
||||
};
|
||||
1FA38CBF124D3897004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 32";
|
||||
rLen = 0;
|
||||
rLoc = 762;
|
||||
rType = 0;
|
||||
vrLen = 1004;
|
||||
vrLoc = 207;
|
||||
};
|
||||
1FA38CC1124D38C2004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 33";
|
||||
rLen = 0;
|
||||
rLoc = 818;
|
||||
rType = 0;
|
||||
vrLen = 1020;
|
||||
vrLoc = 207;
|
||||
};
|
||||
1FA38CD8124D437C004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 23";
|
||||
rLen = 0;
|
||||
rLoc = 482;
|
||||
rType = 0;
|
||||
vrLen = 360;
|
||||
vrLoc = 208;
|
||||
};
|
||||
1FA38CD9124D437D004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */;
|
||||
name = "SpeakerAppDelegate.m: 30";
|
||||
rLen = 0;
|
||||
rLoc = 662;
|
||||
rType = 0;
|
||||
vrLen = 1061;
|
||||
vrLoc = 207;
|
||||
};
|
||||
1FA38CDA124D437D004B8852 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 089C165DFE840E0CC02AAC07 /* English */;
|
||||
name = "InfoPlist.strings: 1";
|
||||
rLen = 0;
|
||||
rLoc = 0;
|
||||
rType = 0;
|
||||
vrLen = 45;
|
||||
vrLoc = 0;
|
||||
};
|
||||
1FA38CDB124D437D004B8852 /* PBXBookmark */ = {
|
||||
isa = PBXBookmark;
|
||||
fRef = 8D1107310486CEB800E47090 /* Speaker-Info.plist */;
|
||||
};
|
||||
1FA38CDC124D437D004B8852 /* PlistBookmark */ = {
|
||||
isa = PlistBookmark;
|
||||
fRef = 8D1107310486CEB800E47090 /* Speaker-Info.plist */;
|
||||
fallbackIsa = PBXBookmark;
|
||||
isK = 0;
|
||||
kPath = (
|
||||
CFBundleIdentifier,
|
||||
);
|
||||
name = "/Users/jeena/Projects/Speaker/Speaker-Info.plist";
|
||||
rLen = 0;
|
||||
rLoc = 9223372036854775807;
|
||||
};
|
||||
256AC3D80F4B6AC300CF3369 /* SpeakerAppDelegate.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {519, 403}}";
|
||||
sepNavSelRange = "{324, 0}";
|
||||
sepNavVisRange = "{0, 477}";
|
||||
};
|
||||
};
|
||||
256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {509, 930}}";
|
||||
sepNavSelRange = "{482, 0}";
|
||||
sepNavVisRange = "{208, 360}";
|
||||
};
|
||||
};
|
||||
29B97313FDCFA39411CA2CEA /* Project object */ = {
|
||||
activeBuildConfigurationName = Debug;
|
||||
activeExecutable = 1FA38C25124D2411004B8852 /* Speaker */;
|
||||
activeTarget = 8D1107260486CEB800E47090 /* Speaker */;
|
||||
addToTargets = (
|
||||
8D1107260486CEB800E47090 /* Speaker */,
|
||||
);
|
||||
codeSenseManager = 1FA38C38124D2426004B8852 /* Code sense */;
|
||||
executables = (
|
||||
1FA38C25124D2411004B8852 /* Speaker */,
|
||||
);
|
||||
perUserDictionary = {
|
||||
PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = {
|
||||
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
|
||||
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
|
||||
PBXFileTableDataSourceColumnWidthsKey = (
|
||||
20,
|
||||
340,
|
||||
20,
|
||||
48.16259765625,
|
||||
43,
|
||||
43,
|
||||
20,
|
||||
);
|
||||
PBXFileTableDataSourceColumnsKey = (
|
||||
PBXFileDataSource_FiletypeID,
|
||||
PBXFileDataSource_Filename_ColumnID,
|
||||
PBXFileDataSource_Built_ColumnID,
|
||||
PBXFileDataSource_ObjectSize_ColumnID,
|
||||
PBXFileDataSource_Errors_ColumnID,
|
||||
PBXFileDataSource_Warnings_ColumnID,
|
||||
PBXFileDataSource_Target_ColumnID,
|
||||
);
|
||||
};
|
||||
PBXPerProjectTemplateStateSaveDate = 307045393;
|
||||
PBXWorkspaceStateSaveDate = 307045393;
|
||||
};
|
||||
perUserProjectItems = {
|
||||
1FA38C56124D2CA0004B8852 /* XCBuildMessageTextBookmark */ = 1FA38C56124D2CA0004B8852 /* XCBuildMessageTextBookmark */;
|
||||
1FA38C57124D2CA0004B8852 /* PBXTextBookmark */ = 1FA38C57124D2CA0004B8852 /* PBXTextBookmark */;
|
||||
1FA38C5E124D2CD6004B8852 /* PBXBookmark */ = 1FA38C5E124D2CD6004B8852 /* PBXBookmark */;
|
||||
1FA38C5F124D2CD6004B8852 /* PBXTextBookmark */ = 1FA38C5F124D2CD6004B8852 /* PBXTextBookmark */;
|
||||
1FA38C60124D2CD6004B8852 /* XCBuildMessageTextBookmark */ = 1FA38C60124D2CD6004B8852 /* XCBuildMessageTextBookmark */;
|
||||
1FA38C61124D2CD6004B8852 /* PBXTextBookmark */ = 1FA38C61124D2CD6004B8852 /* PBXTextBookmark */;
|
||||
1FA38C6D124D2D0C004B8852 /* PBXTextBookmark */ = 1FA38C6D124D2D0C004B8852 /* PBXTextBookmark */;
|
||||
1FA38C71124D2D1E004B8852 /* PBXTextBookmark */ = 1FA38C71124D2D1E004B8852 /* PBXTextBookmark */;
|
||||
1FA38C75124D2D34004B8852 /* PBXTextBookmark */ = 1FA38C75124D2D34004B8852 /* PBXTextBookmark */;
|
||||
1FA38C77124D2D5A004B8852 /* PBXTextBookmark */ = 1FA38C77124D2D5A004B8852 /* PBXTextBookmark */;
|
||||
1FA38C7A124D2DA5004B8852 /* PBXTextBookmark */ = 1FA38C7A124D2DA5004B8852 /* PBXTextBookmark */;
|
||||
1FA38C7F124D2DBB004B8852 /* PBXTextBookmark */ = 1FA38C7F124D2DBB004B8852 /* PBXTextBookmark */;
|
||||
1FA38C84124D2DCA004B8852 /* PBXTextBookmark */ = 1FA38C84124D2DCA004B8852 /* PBXTextBookmark */;
|
||||
1FA38C88124D2DE9004B8852 /* PBXTextBookmark */ = 1FA38C88124D2DE9004B8852 /* PBXTextBookmark */;
|
||||
1FA38C8F124D3162004B8852 /* PBXTextBookmark */ = 1FA38C8F124D3162004B8852 /* PBXTextBookmark */;
|
||||
1FA38C90124D3162004B8852 /* PBXTextBookmark */ = 1FA38C90124D3162004B8852 /* PBXTextBookmark */;
|
||||
1FA38C91124D3162004B8852 /* PBXTextBookmark */ = 1FA38C91124D3162004B8852 /* PBXTextBookmark */;
|
||||
1FA38C95124D31AD004B8852 /* PBXTextBookmark */ = 1FA38C95124D31AD004B8852 /* PBXTextBookmark */;
|
||||
1FA38C98124D341C004B8852 /* PBXTextBookmark */ = 1FA38C98124D341C004B8852 /* PBXTextBookmark */;
|
||||
1FA38C99124D341C004B8852 /* PBXTextBookmark */ = 1FA38C99124D341C004B8852 /* PBXTextBookmark */;
|
||||
1FA38C9A124D341C004B8852 /* PBXTextBookmark */ = 1FA38C9A124D341C004B8852 /* PBXTextBookmark */;
|
||||
1FA38C9B124D34F4004B8852 /* PBXTextBookmark */ = 1FA38C9B124D34F4004B8852 /* PBXTextBookmark */;
|
||||
1FA38C9E124D3516004B8852 /* PBXTextBookmark */ = 1FA38C9E124D3516004B8852 /* PBXTextBookmark */;
|
||||
1FA38CA8124D3666004B8852 /* PBXTextBookmark */ = 1FA38CA8124D3666004B8852 /* PBXTextBookmark */;
|
||||
1FA38CAB124D3695004B8852 /* PBXTextBookmark */ = 1FA38CAB124D3695004B8852 /* PBXTextBookmark */;
|
||||
1FA38CAF124D36B6004B8852 /* PBXTextBookmark */ = 1FA38CAF124D36B6004B8852 /* PBXTextBookmark */;
|
||||
1FA38CB3124D3718004B8852 /* PBXTextBookmark */ = 1FA38CB3124D3718004B8852 /* PBXTextBookmark */;
|
||||
1FA38CB5124D3736004B8852 /* PBXTextBookmark */ = 1FA38CB5124D3736004B8852 /* PBXTextBookmark */;
|
||||
1FA38CB8124D3793004B8852 /* PBXTextBookmark */ = 1FA38CB8124D3793004B8852 /* PBXTextBookmark */;
|
||||
1FA38CBB124D37B2004B8852 /* PBXTextBookmark */ = 1FA38CBB124D37B2004B8852 /* PBXTextBookmark */;
|
||||
1FA38CBE124D3887004B8852 /* PBXTextBookmark */ = 1FA38CBE124D3887004B8852 /* PBXTextBookmark */;
|
||||
1FA38CBF124D3897004B8852 /* PBXTextBookmark */ = 1FA38CBF124D3897004B8852 /* PBXTextBookmark */;
|
||||
1FA38CC1124D38C2004B8852 /* PBXTextBookmark */ = 1FA38CC1124D38C2004B8852 /* PBXTextBookmark */;
|
||||
1FA38CD8124D437C004B8852 /* PBXTextBookmark */ = 1FA38CD8124D437C004B8852 /* PBXTextBookmark */;
|
||||
1FA38CD9124D437D004B8852 /* PBXTextBookmark */ = 1FA38CD9124D437D004B8852 /* PBXTextBookmark */;
|
||||
1FA38CDA124D437D004B8852 /* PBXTextBookmark */ = 1FA38CDA124D437D004B8852 /* PBXTextBookmark */;
|
||||
1FA38CDB124D437D004B8852 /* PBXBookmark */ = 1FA38CDB124D437D004B8852 /* PBXBookmark */;
|
||||
1FA38CDC124D437D004B8852 /* PlistBookmark */ = 1FA38CDC124D437D004B8852 /* PlistBookmark */;
|
||||
};
|
||||
sourceControlManager = 1FA38C37124D2426004B8852 /* Source Control */;
|
||||
userBuildSettings = {
|
||||
};
|
||||
};
|
||||
8D1107260486CEB800E47090 /* Speaker */ = {
|
||||
activeExec = 0;
|
||||
executables = (
|
||||
1FA38C25124D2411004B8852 /* Speaker */,
|
||||
);
|
||||
};
|
||||
}
|
297
Speaker.xcodeproj/project.pbxproj
Normal file
297
Speaker.xcodeproj/project.pbxproj
Normal file
|
@ -0,0 +1,297 @@
|
|||
// !$*UTF8*$!
|
||||
{
|
||||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 45;
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
1DDD58160DA1D0A300B32029 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 1DDD58140DA1D0A300B32029 /* MainMenu.xib */; };
|
||||
1FA38C49124D27C8004B8852 /* play-icon.png in Resources */ = {isa = PBXBuildFile; fileRef = 1FA38C48124D27C8004B8852 /* play-icon.png */; };
|
||||
1FA38CD3124D4349004B8852 /* Icon.icns in Resources */ = {isa = PBXBuildFile; fileRef = 1FA38CD2124D4349004B8852 /* Icon.icns */; };
|
||||
256AC3DA0F4B6AC300CF3369 /* SpeakerAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */; };
|
||||
8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; };
|
||||
8D11072D0486CEB800E47090 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; settings = {ATTRIBUTES = (); }; };
|
||||
8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
089C165DFE840E0CC02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
|
||||
1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = "<absolute>"; };
|
||||
13E42FB307B3F0F600E4EEF1 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = /System/Library/Frameworks/CoreData.framework; sourceTree = "<absolute>"; };
|
||||
1DDD58150DA1D0A300B32029 /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = English; path = English.lproj/MainMenu.xib; sourceTree = "<group>"; };
|
||||
1FA38C48124D27C8004B8852 /* play-icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "play-icon.png"; sourceTree = "<group>"; };
|
||||
1FA38CD2124D4349004B8852 /* Icon.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = Icon.icns; sourceTree = "<group>"; };
|
||||
256AC3D80F4B6AC300CF3369 /* SpeakerAppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpeakerAppDelegate.h; sourceTree = "<group>"; };
|
||||
256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SpeakerAppDelegate.m; sourceTree = "<group>"; };
|
||||
256AC3F00F4B6AF500CF3369 /* Speaker_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Speaker_Prefix.pch; sourceTree = "<group>"; };
|
||||
29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
|
||||
29B97324FDCFA39411CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = "<absolute>"; };
|
||||
29B97325FDCFA39411CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
|
||||
8D1107310486CEB800E47090 /* Speaker-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "Speaker-Info.plist"; sourceTree = "<group>"; };
|
||||
8D1107320486CEB800E47090 /* Speaker.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Speaker.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
8D11072E0486CEB800E47090 /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXFrameworksBuildPhase section */
|
||||
|
||||
/* Begin PBXGroup section */
|
||||
080E96DDFE201D6D7F000001 /* Classes */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
256AC3D80F4B6AC300CF3369 /* SpeakerAppDelegate.h */,
|
||||
256AC3D90F4B6AC300CF3369 /* SpeakerAppDelegate.m */,
|
||||
);
|
||||
name = Classes;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */,
|
||||
);
|
||||
name = "Linked Frameworks";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
1058C7A2FEA54F0111CA2CBB /* Other Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
29B97324FDCFA39411CA2CEA /* AppKit.framework */,
|
||||
13E42FB307B3F0F600E4EEF1 /* CoreData.framework */,
|
||||
29B97325FDCFA39411CA2CEA /* Foundation.framework */,
|
||||
);
|
||||
name = "Other Frameworks";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
19C28FACFE9D520D11CA2CBB /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8D1107320486CEB800E47090 /* Speaker.app */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
29B97314FDCFA39411CA2CEA /* Speaker */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
080E96DDFE201D6D7F000001 /* Classes */,
|
||||
29B97315FDCFA39411CA2CEA /* Other Sources */,
|
||||
29B97317FDCFA39411CA2CEA /* Resources */,
|
||||
29B97323FDCFA39411CA2CEA /* Frameworks */,
|
||||
19C28FACFE9D520D11CA2CBB /* Products */,
|
||||
);
|
||||
name = Speaker;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
29B97315FDCFA39411CA2CEA /* Other Sources */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
256AC3F00F4B6AF500CF3369 /* Speaker_Prefix.pch */,
|
||||
29B97316FDCFA39411CA2CEA /* main.m */,
|
||||
);
|
||||
name = "Other Sources";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
29B97317FDCFA39411CA2CEA /* Resources */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
1FA38CD2124D4349004B8852 /* Icon.icns */,
|
||||
1FA38C48124D27C8004B8852 /* play-icon.png */,
|
||||
8D1107310486CEB800E47090 /* Speaker-Info.plist */,
|
||||
089C165CFE840E0CC02AAC07 /* InfoPlist.strings */,
|
||||
1DDD58140DA1D0A300B32029 /* MainMenu.xib */,
|
||||
);
|
||||
name = Resources;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
29B97323FDCFA39411CA2CEA /* Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */,
|
||||
1058C7A2FEA54F0111CA2CBB /* Other Frameworks */,
|
||||
);
|
||||
name = Frameworks;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXGroup section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
8D1107260486CEB800E47090 /* Speaker */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "Speaker" */;
|
||||
buildPhases = (
|
||||
8D1107290486CEB800E47090 /* Resources */,
|
||||
8D11072C0486CEB800E47090 /* Sources */,
|
||||
8D11072E0486CEB800E47090 /* Frameworks */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = Speaker;
|
||||
productInstallPath = "$(HOME)/Applications";
|
||||
productName = Speaker;
|
||||
productReference = 8D1107320486CEB800E47090 /* Speaker.app */;
|
||||
productType = "com.apple.product-type.application";
|
||||
};
|
||||
/* End PBXNativeTarget section */
|
||||
|
||||
/* Begin PBXProject section */
|
||||
29B97313FDCFA39411CA2CEA /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "Speaker" */;
|
||||
compatibilityVersion = "Xcode 3.1";
|
||||
developmentRegion = English;
|
||||
hasScannedForEncodings = 1;
|
||||
knownRegions = (
|
||||
English,
|
||||
Japanese,
|
||||
French,
|
||||
German,
|
||||
);
|
||||
mainGroup = 29B97314FDCFA39411CA2CEA /* Speaker */;
|
||||
projectDirPath = "";
|
||||
projectRoot = "";
|
||||
targets = (
|
||||
8D1107260486CEB800E47090 /* Speaker */,
|
||||
);
|
||||
};
|
||||
/* End PBXProject section */
|
||||
|
||||
/* Begin PBXResourcesBuildPhase section */
|
||||
8D1107290486CEB800E47090 /* Resources */ = {
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */,
|
||||
1DDD58160DA1D0A300B32029 /* MainMenu.xib in Resources */,
|
||||
1FA38C49124D27C8004B8852 /* play-icon.png in Resources */,
|
||||
1FA38CD3124D4349004B8852 /* Icon.icns in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXResourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXSourcesBuildPhase section */
|
||||
8D11072C0486CEB800E47090 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8D11072D0486CEB800E47090 /* main.m in Sources */,
|
||||
256AC3DA0F4B6AC300CF3369 /* SpeakerAppDelegate.m in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXSourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXVariantGroup section */
|
||||
089C165CFE840E0CC02AAC07 /* InfoPlist.strings */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
089C165DFE840E0CC02AAC07 /* English */,
|
||||
);
|
||||
name = InfoPlist.strings;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
1DDD58140DA1D0A300B32029 /* MainMenu.xib */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
1DDD58150DA1D0A300B32029 /* English */,
|
||||
);
|
||||
name = MainMenu.xib;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXVariantGroup section */
|
||||
|
||||
/* Begin XCBuildConfiguration section */
|
||||
C01FCF4B08A954540054247B /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
COPY_PHASE_STRIP = NO;
|
||||
GCC_DYNAMIC_NO_PIC = NO;
|
||||
GCC_ENABLE_FIX_AND_CONTINUE = YES;
|
||||
GCC_MODEL_TUNING = G5;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
||||
GCC_PREFIX_HEADER = Speaker_Prefix.pch;
|
||||
INFOPLIST_FILE = "Speaker-Info.plist";
|
||||
INSTALL_PATH = "$(HOME)/Applications";
|
||||
PRODUCT_NAME = Speaker;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
C01FCF4C08A954540054247B /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
GCC_MODEL_TUNING = G5;
|
||||
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
||||
GCC_PREFIX_HEADER = Speaker_Prefix.pch;
|
||||
INFOPLIST_FILE = "Speaker-Info.plist";
|
||||
INSTALL_PATH = "$(HOME)/Applications";
|
||||
PRODUCT_NAME = Speaker;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
C01FCF4F08A954540054247B /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
|
||||
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
PREBINDING = NO;
|
||||
SDKROOT = macosx10.6;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
C01FCF5008A954540054247B /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
|
||||
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
PREBINDING = NO;
|
||||
SDKROOT = macosx10.6;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
/* End XCBuildConfiguration section */
|
||||
|
||||
/* Begin XCConfigurationList section */
|
||||
C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "Speaker" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
C01FCF4B08A954540054247B /* Debug */,
|
||||
C01FCF4C08A954540054247B /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
C01FCF4E08A954540054247B /* Build configuration list for PBXProject "Speaker" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
C01FCF4F08A954540054247B /* Debug */,
|
||||
C01FCF5008A954540054247B /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
/* End XCConfigurationList section */
|
||||
};
|
||||
rootObject = 29B97313FDCFA39411CA2CEA /* Project object */;
|
||||
}
|
23
SpeakerAppDelegate.h
Normal file
23
SpeakerAppDelegate.h
Normal file
|
@ -0,0 +1,23 @@
|
|||
//
|
||||
// SpeakerAppDelegate.h
|
||||
// Speaker
|
||||
//
|
||||
// Created by Jeena on 24.09.10.
|
||||
// Copyright 2010 __MyCompanyName__. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Cocoa/Cocoa.h>
|
||||
|
||||
@interface SpeakerAppDelegate : NSObject <NSApplicationDelegate> {
|
||||
NSWindow *window;
|
||||
NSTextView *textView;
|
||||
NSSpeechSynthesizer *synth;
|
||||
NSRange oldRange;
|
||||
}
|
||||
|
||||
@property (assign) IBOutlet NSWindow *window;
|
||||
@property (retain, nonatomic) IBOutlet NSTextView *textView;
|
||||
|
||||
-(IBAction)speakAction:(id)sender;
|
||||
|
||||
@end
|
59
SpeakerAppDelegate.m
Normal file
59
SpeakerAppDelegate.m
Normal file
|
@ -0,0 +1,59 @@
|
|||
//
|
||||
// SpeakerAppDelegate.m
|
||||
// Speaker
|
||||
//
|
||||
// Created by Jeena on 24.09.10.
|
||||
// Copyright 2010 __MyCompanyName__. All rights reserved.
|
||||
//
|
||||
|
||||
#import "SpeakerAppDelegate.h"
|
||||
|
||||
@implementation SpeakerAppDelegate
|
||||
|
||||
@synthesize window, textView;
|
||||
|
||||
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
|
||||
// Insert code here to initialize your application
|
||||
synth = [[NSSpeechSynthesizer alloc] init];
|
||||
oldRange = NSMakeRange(-1, -1);
|
||||
}
|
||||
|
||||
-(IBAction)speakAction:(id)sender {
|
||||
|
||||
if ([synth isSpeaking]) {
|
||||
|
||||
[synth pauseSpeakingAtBoundary:NSSpeechWordBoundary];
|
||||
|
||||
} else {
|
||||
NSRange range = [textView selectedRange];
|
||||
|
||||
if (range.location == [[[textView textStorage] string] length]) {
|
||||
range.location = 0;
|
||||
[textView setSelectedRange:NSMakeRange(0,0)];
|
||||
[textView scrollRangeToVisible:NSMakeRange(0,0)];
|
||||
}
|
||||
|
||||
if (range.length != oldRange.length || range.location != oldRange.location) {
|
||||
NSString *wholeText = [[textView textStorage] string];
|
||||
NSString *text = nil;
|
||||
|
||||
if (range.length > 0) { // selection
|
||||
text = [wholeText substringWithRange:range];
|
||||
} else { // only pointer
|
||||
text = [wholeText substringWithRange:NSMakeRange(range.location, [wholeText length] - range.location)];
|
||||
}
|
||||
|
||||
[synth startSpeakingString:text];
|
||||
|
||||
oldRange = range;
|
||||
|
||||
} else {
|
||||
|
||||
[synth continueSpeaking];
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@end
|
7
Speaker_Prefix.pch
Normal file
7
Speaker_Prefix.pch
Normal file
|
@ -0,0 +1,7 @@
|
|||
//
|
||||
// Prefix header for all source files of the 'Speaker' target in the 'Speaker' project
|
||||
//
|
||||
|
||||
#ifdef __OBJC__
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#endif
|
14
main.m
Normal file
14
main.m
Normal file
|
@ -0,0 +1,14 @@
|
|||
//
|
||||
// main.m
|
||||
// Speaker
|
||||
//
|
||||
// Created by Jeena on 24.09.10.
|
||||
// Copyright 2010 __MyCompanyName__. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Cocoa/Cocoa.h>
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
return NSApplicationMain(argc, (const char **) argv);
|
||||
}
|
BIN
play-icon.png
Normal file
BIN
play-icon.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.7 KiB |
Loading…
Add table
Add a link
Reference in a new issue