From b31a94333c28c7e2102744f6b5ca551d2575b21b Mon Sep 17 00:00:00 2001 From: padawan Date: Fri, 7 Dec 2012 23:51:36 +0600 Subject: [PATCH] init --- .gitignore | 1 + README.md | 27 +- passGen/passGen.xcodeproj/project.pbxproj | 467 ++ .../contents.xcworkspacedata | 7 + .../UserInterfaceState (2).xcuserstate | Bin 0 -> 12166 bytes .../UserInterfaceState.xcuserstate | Bin 0 -> 17108 bytes .../xcschemes/passGen.xcscheme | 96 + .../xcschemes/xcschememanagement.plist | 27 + passGen/passGen/AppDelegate.h | 14 + passGen/passGen/AppDelegate.m | 17 + passGen/passGen/Model.h | 18 + passGen/passGen/Model.m | 44 + passGen/passGen/en.lproj/Credits.rtf | 29 + passGen/passGen/en.lproj/InfoPlist.strings | 2 + passGen/passGen/en.lproj/MainMenu.xib | 4663 +++++++++++++++++ passGen/passGen/main.m | 14 + passGen/passGen/passGen-Info.plist | 34 + passGen/passGen/passGen-Prefix.pch | 7 + .../passGenTests/en.lproj/InfoPlist.strings | 2 + passGen/passGenTests/passGenTests-Info.plist | 22 + passGen/passGenTests/passGenTests.h | 13 + passGen/passGenTests/passGenTests.m | 32 + 22 files changed, 5526 insertions(+), 10 deletions(-) create mode 100644 .gitignore create mode 100644 passGen/passGen.xcodeproj/project.pbxproj create mode 100644 passGen/passGen.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 passGen/passGen.xcodeproj/project.xcworkspace/xcuserdata/padawan.xcuserdatad/UserInterfaceState (2).xcuserstate create mode 100644 passGen/passGen.xcodeproj/project.xcworkspace/xcuserdata/padawan.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 passGen/passGen.xcodeproj/xcuserdata/padawan.xcuserdatad/xcschemes/passGen.xcscheme create mode 100644 passGen/passGen.xcodeproj/xcuserdata/padawan.xcuserdatad/xcschemes/xcschememanagement.plist create mode 100644 passGen/passGen/AppDelegate.h create mode 100644 passGen/passGen/AppDelegate.m create mode 100644 passGen/passGen/Model.h create mode 100644 passGen/passGen/Model.m create mode 100644 passGen/passGen/en.lproj/Credits.rtf create mode 100644 passGen/passGen/en.lproj/InfoPlist.strings create mode 100644 passGen/passGen/en.lproj/MainMenu.xib create mode 100644 passGen/passGen/main.m create mode 100644 passGen/passGen/passGen-Info.plist create mode 100644 passGen/passGen/passGen-Prefix.pch create mode 100644 passGen/passGenTests/en.lproj/InfoPlist.strings create mode 100644 passGen/passGenTests/passGenTests-Info.plist create mode 100644 passGen/passGenTests/passGenTests.h create mode 100644 passGen/passGenTests/passGenTests.m diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..496ee2c --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.DS_Store \ No newline at end of file diff --git a/README.md b/README.md index 630317e..eb1e56d 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,20 @@ -Проект 2. Идея и интерфейс приложения -============= +# Генератор паролей -Придумайте приложение для OS X, разработайте графический интерфейс и сдайте: +## Проблема +По работе мне очень часто приходится регистрировать аккаунты на различных сервисах и сайтах. Как правило логины есть, а вот пароли выдумывать не хочется. -1. Подробное описание в README.md или PDF. Описание должно включать: - * Проблему, которую решает приложение - * Аудитория приложения - * Пример сценария использования приложения - * Описание поведения (что происходит при загрузке, что происходит при нажатии на кнопку Х, и так далее). -2. Вся папка с проектом, в которой обязательно должен быть .xib-файл с графическим интерфейсом. +## Аудитория +Данная программа поможет всем кому нужно быстро сгенерировать уникальный устойчивый к подбору пароль. -[Сдать работу](https://u.hexlet.org/courses/4/assignments/6) \ No newline at end of file +## Пример +Допустим, нужно мне зарегистрировать 5 почтовых ящиков для новых сотрудников компании, тут то я и беру приложение и генерирую пароли, все легко и просто. + +## Описание +Приложение генерирует пароли по критериям - длина, наборы символов (цифры, нижний и верхний регистр) +![окно приложения](http://d3j5vwomefv46c.cloudfront.net/photos/large/698564513.png?key=321391&Expires=1354903156&Key-Pair-Id=APKAIYVGSUJFNRFZBBTA&Signature=oioZ320jHXithPdeKfO2jJfrznYcWVG0FT6EDkIWKaop2mNT-UFQrzT0NHYj-zuKSW-Q2fOb0U552d3OHvQ~0~PGWKh6-IyUGcrkyyh7bfvMN-plEk4-shzTYs3Na~PdD0dYVX7Ang44m-X25GV0nFt~RHVPJ4GNkl5sSdcfy70_) + +В окне приложения можно выбрать длину пароля, для этого можно исполльзовать элемент Stepper. +Включая Check Box можно добавлять наборы символов в пароль. _(По умолчанию включены)_ + +При нажатии кнопки "Генерировать" в поле появится новый сгенерированный пароль. +При нажатии на кнопку "✓" пароль скопируется в буфер. diff --git a/passGen/passGen.xcodeproj/project.pbxproj b/passGen/passGen.xcodeproj/project.pbxproj new file mode 100644 index 0000000..aaa57d4 --- /dev/null +++ b/passGen/passGen.xcodeproj/project.pbxproj @@ -0,0 +1,467 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + 2140E6B41652999200659CB4 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2140E6B31652999200659CB4 /* Cocoa.framework */; }; + 2140E6BE1652999200659CB4 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 2140E6BC1652999200659CB4 /* InfoPlist.strings */; }; + 2140E6C01652999200659CB4 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 2140E6BF1652999200659CB4 /* main.m */; }; + 2140E6C41652999200659CB4 /* Credits.rtf in Resources */ = {isa = PBXBuildFile; fileRef = 2140E6C21652999200659CB4 /* Credits.rtf */; }; + 2140E6C71652999200659CB4 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 2140E6C61652999200659CB4 /* AppDelegate.m */; }; + 2140E6CA1652999200659CB4 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 2140E6C81652999200659CB4 /* MainMenu.xib */; }; + 2140E6D21652999200659CB4 /* SenTestingKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2140E6D11652999200659CB4 /* SenTestingKit.framework */; }; + 2140E6D31652999200659CB4 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2140E6B31652999200659CB4 /* Cocoa.framework */; }; + 2140E6DB1652999200659CB4 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 2140E6D91652999200659CB4 /* InfoPlist.strings */; }; + 2140E6DE1652999200659CB4 /* passGenTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 2140E6DD1652999200659CB4 /* passGenTests.m */; }; + 2140E6F01652B13D00659CB4 /* Model.m in Sources */ = {isa = PBXBuildFile; fileRef = 2140E6EF1652B13D00659CB4 /* Model.m */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 2140E6D41652999200659CB4 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 2140E6A61652999200659CB4 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 2140E6AE1652999200659CB4; + remoteInfo = passGen; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXFileReference section */ + 2140E6AF1652999200659CB4 /* passGen.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = passGen.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 2140E6B31652999200659CB4 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; }; + 2140E6B61652999200659CB4 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = System/Library/Frameworks/AppKit.framework; sourceTree = SDKROOT; }; + 2140E6B71652999200659CB4 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = System/Library/Frameworks/CoreData.framework; sourceTree = SDKROOT; }; + 2140E6B81652999200659CB4 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; + 2140E6BB1652999200659CB4 /* passGen-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "passGen-Info.plist"; sourceTree = ""; }; + 2140E6BD1652999200659CB4 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; + 2140E6BF1652999200659CB4 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; + 2140E6C11652999200659CB4 /* passGen-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "passGen-Prefix.pch"; sourceTree = ""; }; + 2140E6C31652999200659CB4 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = en; path = en.lproj/Credits.rtf; sourceTree = ""; }; + 2140E6C51652999200659CB4 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; + 2140E6C61652999200659CB4 /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; }; + 2140E6C91652999200659CB4 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/MainMenu.xib; sourceTree = ""; }; + 2140E6D01652999200659CB4 /* passGenTests.octest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = passGenTests.octest; sourceTree = BUILT_PRODUCTS_DIR; }; + 2140E6D11652999200659CB4 /* SenTestingKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SenTestingKit.framework; path = Library/Frameworks/SenTestingKit.framework; sourceTree = DEVELOPER_DIR; }; + 2140E6D81652999200659CB4 /* passGenTests-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "passGenTests-Info.plist"; sourceTree = ""; }; + 2140E6DA1652999200659CB4 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; + 2140E6DC1652999200659CB4 /* passGenTests.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = passGenTests.h; sourceTree = ""; }; + 2140E6DD1652999200659CB4 /* passGenTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = passGenTests.m; sourceTree = ""; }; + 2140E6EE1652B13D00659CB4 /* Model.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Model.h; sourceTree = ""; }; + 2140E6EF1652B13D00659CB4 /* Model.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Model.m; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 2140E6AC1652999200659CB4 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 2140E6B41652999200659CB4 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 2140E6CC1652999200659CB4 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 2140E6D21652999200659CB4 /* SenTestingKit.framework in Frameworks */, + 2140E6D31652999200659CB4 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 2140E6A41652999200659CB4 = { + isa = PBXGroup; + children = ( + 2140E6B91652999200659CB4 /* passGen */, + 2140E6D61652999200659CB4 /* passGenTests */, + 2140E6B21652999200659CB4 /* Frameworks */, + 2140E6B01652999200659CB4 /* Products */, + ); + sourceTree = ""; + }; + 2140E6B01652999200659CB4 /* Products */ = { + isa = PBXGroup; + children = ( + 2140E6AF1652999200659CB4 /* passGen.app */, + 2140E6D01652999200659CB4 /* passGenTests.octest */, + ); + name = Products; + sourceTree = ""; + }; + 2140E6B21652999200659CB4 /* Frameworks */ = { + isa = PBXGroup; + children = ( + 2140E6B31652999200659CB4 /* Cocoa.framework */, + 2140E6D11652999200659CB4 /* SenTestingKit.framework */, + 2140E6B51652999200659CB4 /* Other Frameworks */, + ); + name = Frameworks; + sourceTree = ""; + }; + 2140E6B51652999200659CB4 /* Other Frameworks */ = { + isa = PBXGroup; + children = ( + 2140E6B61652999200659CB4 /* AppKit.framework */, + 2140E6B71652999200659CB4 /* CoreData.framework */, + 2140E6B81652999200659CB4 /* Foundation.framework */, + ); + name = "Other Frameworks"; + sourceTree = ""; + }; + 2140E6B91652999200659CB4 /* passGen */ = { + isa = PBXGroup; + children = ( + 2140E6C51652999200659CB4 /* AppDelegate.h */, + 2140E6C61652999200659CB4 /* AppDelegate.m */, + 2140E6C81652999200659CB4 /* MainMenu.xib */, + 2140E6EE1652B13D00659CB4 /* Model.h */, + 2140E6EF1652B13D00659CB4 /* Model.m */, + 2140E6BA1652999200659CB4 /* Supporting Files */, + ); + path = passGen; + sourceTree = ""; + }; + 2140E6BA1652999200659CB4 /* Supporting Files */ = { + isa = PBXGroup; + children = ( + 2140E6BB1652999200659CB4 /* passGen-Info.plist */, + 2140E6BC1652999200659CB4 /* InfoPlist.strings */, + 2140E6BF1652999200659CB4 /* main.m */, + 2140E6C11652999200659CB4 /* passGen-Prefix.pch */, + 2140E6C21652999200659CB4 /* Credits.rtf */, + ); + name = "Supporting Files"; + sourceTree = ""; + }; + 2140E6D61652999200659CB4 /* passGenTests */ = { + isa = PBXGroup; + children = ( + 2140E6DC1652999200659CB4 /* passGenTests.h */, + 2140E6DD1652999200659CB4 /* passGenTests.m */, + 2140E6D71652999200659CB4 /* Supporting Files */, + ); + path = passGenTests; + sourceTree = ""; + }; + 2140E6D71652999200659CB4 /* Supporting Files */ = { + isa = PBXGroup; + children = ( + 2140E6D81652999200659CB4 /* passGenTests-Info.plist */, + 2140E6D91652999200659CB4 /* InfoPlist.strings */, + ); + name = "Supporting Files"; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 2140E6AE1652999200659CB4 /* passGen */ = { + isa = PBXNativeTarget; + buildConfigurationList = 2140E6E11652999200659CB4 /* Build configuration list for PBXNativeTarget "passGen" */; + buildPhases = ( + 2140E6AB1652999200659CB4 /* Sources */, + 2140E6AC1652999200659CB4 /* Frameworks */, + 2140E6AD1652999200659CB4 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = passGen; + productName = passGen; + productReference = 2140E6AF1652999200659CB4 /* passGen.app */; + productType = "com.apple.product-type.application"; + }; + 2140E6CF1652999200659CB4 /* passGenTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 2140E6E41652999200659CB4 /* Build configuration list for PBXNativeTarget "passGenTests" */; + buildPhases = ( + 2140E6CB1652999200659CB4 /* Sources */, + 2140E6CC1652999200659CB4 /* Frameworks */, + 2140E6CD1652999200659CB4 /* Resources */, + 2140E6CE1652999200659CB4 /* ShellScript */, + ); + buildRules = ( + ); + dependencies = ( + 2140E6D51652999200659CB4 /* PBXTargetDependency */, + ); + name = passGenTests; + productName = passGenTests; + productReference = 2140E6D01652999200659CB4 /* passGenTests.octest */; + productType = "com.apple.product-type.bundle"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 2140E6A61652999200659CB4 /* Project object */ = { + isa = PBXProject; + attributes = { + LastUpgradeCheck = 0450; + ORGANIZATIONNAME = padawan; + }; + buildConfigurationList = 2140E6A91652999200659CB4 /* Build configuration list for PBXProject "passGen" */; + compatibilityVersion = "Xcode 3.2"; + developmentRegion = English; + hasScannedForEncodings = 0; + knownRegions = ( + en, + ); + mainGroup = 2140E6A41652999200659CB4; + productRefGroup = 2140E6B01652999200659CB4 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 2140E6AE1652999200659CB4 /* passGen */, + 2140E6CF1652999200659CB4 /* passGenTests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 2140E6AD1652999200659CB4 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 2140E6BE1652999200659CB4 /* InfoPlist.strings in Resources */, + 2140E6C41652999200659CB4 /* Credits.rtf in Resources */, + 2140E6CA1652999200659CB4 /* MainMenu.xib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 2140E6CD1652999200659CB4 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 2140E6DB1652999200659CB4 /* InfoPlist.strings in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 2140E6CE1652999200659CB4 /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "# Run the unit tests in this test bundle.\n\"${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests\"\n"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 2140E6AB1652999200659CB4 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 2140E6C01652999200659CB4 /* main.m in Sources */, + 2140E6C71652999200659CB4 /* AppDelegate.m in Sources */, + 2140E6F01652B13D00659CB4 /* Model.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 2140E6CB1652999200659CB4 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 2140E6DE1652999200659CB4 /* passGenTests.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 2140E6D51652999200659CB4 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 2140E6AE1652999200659CB4 /* passGen */; + targetProxy = 2140E6D41652999200659CB4 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + 2140E6BC1652999200659CB4 /* InfoPlist.strings */ = { + isa = PBXVariantGroup; + children = ( + 2140E6BD1652999200659CB4 /* en */, + ); + name = InfoPlist.strings; + sourceTree = ""; + }; + 2140E6C21652999200659CB4 /* Credits.rtf */ = { + isa = PBXVariantGroup; + children = ( + 2140E6C31652999200659CB4 /* en */, + ); + name = Credits.rtf; + sourceTree = ""; + }; + 2140E6C81652999200659CB4 /* MainMenu.xib */ = { + isa = PBXVariantGroup; + children = ( + 2140E6C91652999200659CB4 /* en */, + ); + name = MainMenu.xib; + sourceTree = ""; + }; + 2140E6D91652999200659CB4 /* InfoPlist.strings */ = { + isa = PBXVariantGroup; + children = ( + 2140E6DA1652999200659CB4 /* en */, + ); + name = InfoPlist.strings; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 2140E6DF1652999200659CB4 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_ENABLE_OBJC_EXCEPTIONS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.8; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = macosx; + }; + name = Debug; + }; + 2140E6E01652999200659CB4 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = YES; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_ENABLE_OBJC_EXCEPTIONS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.8; + SDKROOT = macosx; + }; + name = Release; + }; + 2140E6E21652999200659CB4 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + COMBINE_HIDPI_IMAGES = YES; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "passGen/passGen-Prefix.pch"; + INFOPLIST_FILE = "passGen/passGen-Info.plist"; + PRODUCT_NAME = "$(TARGET_NAME)"; + WRAPPER_EXTENSION = app; + }; + name = Debug; + }; + 2140E6E31652999200659CB4 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + COMBINE_HIDPI_IMAGES = YES; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "passGen/passGen-Prefix.pch"; + INFOPLIST_FILE = "passGen/passGen-Info.plist"; + PRODUCT_NAME = "$(TARGET_NAME)"; + WRAPPER_EXTENSION = app; + }; + name = Release; + }; + 2140E6E51652999200659CB4 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/passGen.app/Contents/MacOS/passGen"; + COMBINE_HIDPI_IMAGES = YES; + FRAMEWORK_SEARCH_PATHS = "\"$(DEVELOPER_LIBRARY_DIR)/Frameworks\""; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "passGen/passGen-Prefix.pch"; + INFOPLIST_FILE = "passGenTests/passGenTests-Info.plist"; + PRODUCT_NAME = "$(TARGET_NAME)"; + TEST_HOST = "$(BUNDLE_LOADER)"; + WRAPPER_EXTENSION = octest; + }; + name = Debug; + }; + 2140E6E61652999200659CB4 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/passGen.app/Contents/MacOS/passGen"; + COMBINE_HIDPI_IMAGES = YES; + FRAMEWORK_SEARCH_PATHS = "\"$(DEVELOPER_LIBRARY_DIR)/Frameworks\""; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "passGen/passGen-Prefix.pch"; + INFOPLIST_FILE = "passGenTests/passGenTests-Info.plist"; + PRODUCT_NAME = "$(TARGET_NAME)"; + TEST_HOST = "$(BUNDLE_LOADER)"; + WRAPPER_EXTENSION = octest; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 2140E6A91652999200659CB4 /* Build configuration list for PBXProject "passGen" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 2140E6DF1652999200659CB4 /* Debug */, + 2140E6E01652999200659CB4 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 2140E6E11652999200659CB4 /* Build configuration list for PBXNativeTarget "passGen" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 2140E6E21652999200659CB4 /* Debug */, + 2140E6E31652999200659CB4 /* Release */, + ); + defaultConfigurationIsVisible = 0; + }; + 2140E6E41652999200659CB4 /* Build configuration list for PBXNativeTarget "passGenTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 2140E6E51652999200659CB4 /* Debug */, + 2140E6E61652999200659CB4 /* Release */, + ); + defaultConfigurationIsVisible = 0; + }; +/* End XCConfigurationList section */ + }; + rootObject = 2140E6A61652999200659CB4 /* Project object */; +} diff --git a/passGen/passGen.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/passGen/passGen.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..5cd335a --- /dev/null +++ b/passGen/passGen.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/passGen/passGen.xcodeproj/project.xcworkspace/xcuserdata/padawan.xcuserdatad/UserInterfaceState (2).xcuserstate b/passGen/passGen.xcodeproj/project.xcworkspace/xcuserdata/padawan.xcuserdatad/UserInterfaceState (2).xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..14bb9c3b55d59b5538ecbeda4c1974f189a13a88 GIT binary patch literal 12166 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/passGen/passGen.xcodeproj/xcuserdata/padawan.xcuserdatad/xcschemes/xcschememanagement.plist b/passGen/passGen.xcodeproj/xcuserdata/padawan.xcuserdatad/xcschemes/xcschememanagement.plist new file mode 100644 index 0000000..3f9efeb --- /dev/null +++ b/passGen/passGen.xcodeproj/xcuserdata/padawan.xcuserdatad/xcschemes/xcschememanagement.plist @@ -0,0 +1,27 @@ + + + + + SchemeUserState + + passGen.xcscheme + + orderHint + 0 + + + SuppressBuildableAutocreation + + 2140E6AE1652999200659CB4 + + primary + + + 2140E6CF1652999200659CB4 + + primary + + + + + diff --git a/passGen/passGen/AppDelegate.h b/passGen/passGen/AppDelegate.h new file mode 100644 index 0000000..edd9e09 --- /dev/null +++ b/passGen/passGen/AppDelegate.h @@ -0,0 +1,14 @@ +// +// AppDelegate.h +// passGen +// +// Created by padawan on 13.11.12. +// Copyright (c) 2012 padawan. All rights reserved. +// + +#import + +@interface AppDelegate : NSObject +@property (assign) IBOutlet NSWindow *window; + +@end diff --git a/passGen/passGen/AppDelegate.m b/passGen/passGen/AppDelegate.m new file mode 100644 index 0000000..f0ebb35 --- /dev/null +++ b/passGen/passGen/AppDelegate.m @@ -0,0 +1,17 @@ +// +// AppDelegate.m +// passGen +// +// Created by padawan on 13.11.12. +// Copyright (c) 2012 padawan. All rights reserved. +// + +#import "AppDelegate.h" + +@implementation AppDelegate + +- (void)applicationDidFinishLaunching:(NSNotification *)aNotification +{ + // Insert code here to initialize your application +} +@end diff --git a/passGen/passGen/Model.h b/passGen/passGen/Model.h new file mode 100644 index 0000000..13d8b07 --- /dev/null +++ b/passGen/passGen/Model.h @@ -0,0 +1,18 @@ +// +// Model.h +// passGen +// +// Created by padawan on 13.11.12. +// Copyright (c) 2012 padawan. All rights reserved. +// + +#import +@interface Model : NSObject { + IBOutlet NSNumber *lengthPass; + IBOutlet NSTextField *passwordField; + IBOutlet NSButton *enableUpperCase, *enableLowerCase, *enableNumeric; + NSMutableArray *upperCase, *lowerCase, *numeric; +} +-(IBAction) generate:(id)sender; +-(IBAction)copyToClipboard:(id)sender; +@end diff --git a/passGen/passGen/Model.m b/passGen/passGen/Model.m new file mode 100644 index 0000000..ca6f1fc --- /dev/null +++ b/passGen/passGen/Model.m @@ -0,0 +1,44 @@ +// +// Model.m +// passGen +// +// Created by padawan on 13.11.12. +// Copyright (c) 2012 padawan. All rights reserved. +// + +#import "Model.h" + +@implementation Model +- (id) init { + self = [super init]; + if(self) { + lengthPass = [NSNumber numberWithInt:10]; + lowerCase = [NSMutableArray arrayWithObjects: + @"a", @"b", @"c", @"d", @"e", @"f", @"g", @"h", @"i", @"g", @"k", @"l", @"m", + @"n", @"o", @"p", @"q", @"r", @"s", @"t", @"u", @"v", @"w", @"x", @"y", @"z", + nil]; + upperCase = [NSMutableArray arrayWithObjects: + @"A", @"B", @"C", @"D", @"E", @"F", @"G", @"H", @"I", @"G", @"K", @"L", @"M", + @"N", @"O", @"P", @"Q", @"R", @"S", @"T", @"U", @"V", @"W", @"X", @"Y", @"Z", + nil]; + numeric = [NSMutableArray arrayWithObjects:@"0", @"1", @"2", @"3", @"4", @"5", @"6", @"7", @"8", @"9",nil]; + } + return self; +} + +-(IBAction)generate:(id)sender { + NSString *pass; + pass = [NSString string]; + +// [enableLowerCase intValue]; +// [passwordField setIntValue:1]; + for (int i=0; i<[lengthPass intValue]; i++) { + + } +} + +-(IBAction)copyToClipboard:(id)sender { + +} + +@end diff --git a/passGen/passGen/en.lproj/Credits.rtf b/passGen/passGen/en.lproj/Credits.rtf new file mode 100644 index 0000000..46576ef --- /dev/null +++ b/passGen/passGen/en.lproj/Credits.rtf @@ -0,0 +1,29 @@ +{\rtf0\ansi{\fonttbl\f0\fswiss Helvetica;} +{\colortbl;\red255\green255\blue255;} +\paperw9840\paperh8400 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural + +\f0\b\fs24 \cf0 Engineering: +\b0 \ + Some people\ +\ + +\b Human Interface Design: +\b0 \ + Some other people\ +\ + +\b Testing: +\b0 \ + Hopefully not nobody\ +\ + +\b Documentation: +\b0 \ + Whoever\ +\ + +\b With special thanks to: +\b0 \ + Mom\ +} diff --git a/passGen/passGen/en.lproj/InfoPlist.strings b/passGen/passGen/en.lproj/InfoPlist.strings new file mode 100644 index 0000000..477b28f --- /dev/null +++ b/passGen/passGen/en.lproj/InfoPlist.strings @@ -0,0 +1,2 @@ +/* Localized versions of Info.plist keys */ + diff --git a/passGen/passGen/en.lproj/MainMenu.xib b/passGen/passGen/en.lproj/MainMenu.xib new file mode 100644 index 0000000..b610d9e --- /dev/null +++ b/passGen/passGen/en.lproj/MainMenu.xib @@ -0,0 +1,4663 @@ + + + + 1080 + 12C3006 + 2844 + 1187.34 + 625.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 2844 + + + IBNSLayoutConstraint + NSBox + NSButton + NSButtonCell + NSCustomObject + NSMenu + NSMenuItem + NSStepper + NSStepperCell + NSTextField + NSTextFieldCell + NSUserDefaultsController + NSView + NSWindowTemplate + + + com.apple.InterfaceBuilder.CocoaPlugin + + + PluginDependencyRecalculationVersion + + + + + NSApplication + + + FirstResponder + + + NSApplication + + + Model + + + AMainMenu + + + + passGen + + 1048576 + 2147483647 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + submenuAction: + + passGen + + + + About passGen + + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Preferences… + , + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Services + + 1048576 + 2147483647 + + + submenuAction: + + Services + + _NSServicesMenu + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Hide passGen + h + 1048576 + 2147483647 + + + + + + Hide Others + h + 1572864 + 2147483647 + + + + + + Show All + + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Quit passGen + q + 1048576 + 2147483647 + + + + + _NSAppleMenu + + + + + File + + 1048576 + 2147483647 + + + submenuAction: + + File + + + + New + n + 1048576 + 2147483647 + + + + + + Open… + o + 1048576 + 2147483647 + + + + + + Open Recent + + 1048576 + 2147483647 + + + submenuAction: + + Open Recent + + + + Clear Menu + + 1048576 + 2147483647 + + + + + _NSRecentDocumentsMenu + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Close + w + 1048576 + 2147483647 + + + + + + Save… + s + 1048576 + 2147483647 + + + + + + Revert to Saved + + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Page Setup... + P + 1179648 + 2147483647 + + + + + + + Print… + p + 1048576 + 2147483647 + + + + + + + + + Edit + + 1048576 + 2147483647 + + + submenuAction: + + Edit + + + + Undo + z + 1048576 + 2147483647 + + + + + + Redo + Z + 1179648 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Cut + x + 1048576 + 2147483647 + + + + + + Copy + c + 1048576 + 2147483647 + + + + + + Paste + v + 1048576 + 2147483647 + + + + + + Paste and Match Style + V + 1572864 + 2147483647 + + + + + + Delete + + 1048576 + 2147483647 + + + + + + Select All + a + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Find + + 1048576 + 2147483647 + + + submenuAction: + + Find + + + + Find… + f + 1048576 + 2147483647 + + + 1 + + + + Find and Replace… + f + 1572864 + 2147483647 + + + 12 + + + + Find Next + g + 1048576 + 2147483647 + + + 2 + + + + Find Previous + G + 1179648 + 2147483647 + + + 3 + + + + Use Selection for Find + e + 1048576 + 2147483647 + + + 7 + + + + Jump to Selection + j + 1048576 + 2147483647 + + + + + + + + + Spelling and Grammar + + 1048576 + 2147483647 + + + submenuAction: + + Spelling and Grammar + + + + Show Spelling and Grammar + : + 1048576 + 2147483647 + + + + + + Check Document Now + ; + 1048576 + 2147483647 + + + + + + YES + YES + + + 2147483647 + + + + + + Check Spelling While Typing + + 1048576 + 2147483647 + + + + + + Check Grammar With Spelling + + 1048576 + 2147483647 + + + + + + Correct Spelling Automatically + + 2147483647 + + + + + + + + + Substitutions + + 1048576 + 2147483647 + + + submenuAction: + + Substitutions + + + + Show Substitutions + + 2147483647 + + + + + + YES + YES + + + 2147483647 + + + + + + Smart Copy/Paste + f + 1048576 + 2147483647 + + + 1 + + + + Smart Quotes + g + 1048576 + 2147483647 + + + 2 + + + + Smart Dashes + + 2147483647 + + + + + + Smart Links + G + 1179648 + 2147483647 + + + 3 + + + + Text Replacement + + 2147483647 + + + + + + + + + Transformations + + 2147483647 + + + submenuAction: + + Transformations + + + + Make Upper Case + + 2147483647 + + + + + + Make Lower Case + + 2147483647 + + + + + + Capitalize + + 2147483647 + + + + + + + + + Speech + + 1048576 + 2147483647 + + + submenuAction: + + Speech + + + + Start Speaking + + 1048576 + 2147483647 + + + + + + Stop Speaking + + 1048576 + 2147483647 + + + + + + + + + + + + Format + + 2147483647 + + + submenuAction: + + Format + + + + Font + + 2147483647 + + + submenuAction: + + Font + + + + Show Fonts + t + 1048576 + 2147483647 + + + + + + Bold + b + 1048576 + 2147483647 + + + 2 + + + + Italic + i + 1048576 + 2147483647 + + + 1 + + + + Underline + u + 1048576 + 2147483647 + + + + + + YES + YES + + + 2147483647 + + + + + + Bigger + + + 1048576 + 2147483647 + + + 3 + + + + Smaller + - + 1048576 + 2147483647 + + + 4 + + + + YES + YES + + + 2147483647 + + + + + + Kern + + 2147483647 + + + submenuAction: + + Kern + + + + Use Default + + 2147483647 + + + + + + Use None + + 2147483647 + + + + + + Tighten + + 2147483647 + + + + + + Loosen + + 2147483647 + + + + + + + + + Ligatures + + 2147483647 + + + submenuAction: + + Ligatures + + + + Use Default + + 2147483647 + + + + + + Use None + + 2147483647 + + + + + + Use All + + 2147483647 + + + + + + + + + Baseline + + 2147483647 + + + submenuAction: + + Baseline + + + + Use Default + + 2147483647 + + + + + + Superscript + + 2147483647 + + + + + + Subscript + + 2147483647 + + + + + + Raise + + 2147483647 + + + + + + Lower + + 2147483647 + + + + + + + + + YES + YES + + + 2147483647 + + + + + + Show Colors + C + 1048576 + 2147483647 + + + + + + YES + YES + + + 2147483647 + + + + + + Copy Style + c + 1572864 + 2147483647 + + + + + + Paste Style + v + 1572864 + 2147483647 + + + + + _NSFontMenu + + + + + Text + + 2147483647 + + + submenuAction: + + Text + + + + Align Left + { + 1048576 + 2147483647 + + + + + + Center + | + 1048576 + 2147483647 + + + + + + Justify + + 2147483647 + + + + + + Align Right + } + 1048576 + 2147483647 + + + + + + YES + YES + + + 2147483647 + + + + + + Writing Direction + + 2147483647 + + + submenuAction: + + Writing Direction + + + + YES + Paragraph + + 2147483647 + + + + + + CURlZmF1bHQ + + 2147483647 + + + + + + CUxlZnQgdG8gUmlnaHQ + + 2147483647 + + + + + + CVJpZ2h0IHRvIExlZnQ + + 2147483647 + + + + + + YES + YES + + + 2147483647 + + + + + + YES + Selection + + 2147483647 + + + + + + CURlZmF1bHQ + + 2147483647 + + + + + + CUxlZnQgdG8gUmlnaHQ + + 2147483647 + + + + + + CVJpZ2h0IHRvIExlZnQ + + 2147483647 + + + + + + + + + YES + YES + + + 2147483647 + + + + + + Show Ruler + + 2147483647 + + + + + + Copy Ruler + c + 1310720 + 2147483647 + + + + + + Paste Ruler + v + 1310720 + 2147483647 + + + + + + + + + + + + View + + 1048576 + 2147483647 + + + submenuAction: + + View + + + + Show Toolbar + t + 1572864 + 2147483647 + + + + + + Customize Toolbar… + + 1048576 + 2147483647 + + + + + + + + + Window + + 1048576 + 2147483647 + + + submenuAction: + + Window + + + + Minimize + m + 1048576 + 2147483647 + + + + + + Zoom + + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Bring All to Front + + 1048576 + 2147483647 + + + + + _NSWindowsMenu + + + + + Help + + 2147483647 + + + submenuAction: + + Help + + + + passGen Help + ? + 1048576 + 2147483647 + + + + + _NSHelpMenu + + + + _NSMainMenu + + + 7 + 2 + {{335, 390}, {207, 255}} + 1954021376 + passGen + NSWindow + + + + + 256 + + + + 268 + {{17, 190}, {96, 17}} + + + _NS:1535 + YES + + 68157504 + 272630784 + Длина пароля + + LucidaGrande + 13 + 1044 + + _NS:1535 + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + 3 + MAA + + + + NO + + + + 268 + {{118, 187}, {48, 22}} + + + _NS:9 + YES + + -2075131840 + 71304192 + 10 + + 10 + _NS:9 + + YES + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 6 + System + textColor + + + + NO + + + + 268 + {{172, 184}, {19, 27}} + + + _NS:1099 + YES + + 786464 + 0 + _NS:1099 + + 10 + 8 + 20 + 1 + YES + + NO + + + + 268 + {{116, 151}, {47, 18}} + + + _NS:9 + YES + + -2080374784 + 268435456 + A-Z + + _NS:9 + + 1211912448 + 2 + + NSImage + NSSwitch + + + NSSwitch + + + + 200 + 25 + + NO + + + + 268 + {{116, 131}, {45, 18}} + + + _NS:9 + YES + + -2080374784 + 268435456 + a-z + + _NS:9 + + 1211912448 + 2 + + + + + 200 + 25 + + NO + + + + 268 + {{116, 111}, {46, 18}} + + + _NS:9 + YES + + -2080374784 + 268435456 + 0-9 + + _NS:9 + + 1211912448 + 2 + + + + + 200 + 25 + + NO + + + + 268 + {{17, 153}, {55, 17}} + + + _NS:1535 + YES + + 68157504 + 272630784 + Наборы + + _NS:1535 + + + + + NO + + + + 12 + {{12, 176}, {183, 5}} + + + _NS:9 + {0, 0} + + 67108864 + 0 + Box + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + 3 + 2 + 0 + NO + + + + 12 + {{12, 102}, {183, 5}} + + + _NS:9 + {0, 0} + + 67108864 + 0 + Box + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + 3 + 2 + 0 + NO + + + + 268 + {{16, 217}, {175, 33}} + + + _NS:1535 + YES + + 68157504 + 272630784 + ГЕНЕРАТОР ПАРОЛЕЙ + + RussoOne-Regular + 15 + 16 + + _NS:1535 + + + + + NO + + + + 268 + {{22, 49}, {165, 22}} + + + _NS:9 + YES + + -2073034687 + 272630784 + + + пароль будет здесь + _NS:9 + + YES + + + + NO + + + + 268 + {{19, 79}, {80, 17}} + + + _NS:1535 + YES + + 68157504 + 272630784 + Ваш пароль + + _NS:1535 + + + + + NO + + + + 268 + {{16, 13}, {129, 32}} + + + _NS:9 + YES + + 67108864 + 134217728 + Генерировать + + _NS:9 + + 110379008 + 129 + + DQ + 200 + 25 + + NSSound + Purr + + + NO + + + + 268 + {{143, 13}, {50, 32}} + + _NS:9 + YES + + 67108864 + 134217728 + + + _NS:9 + + -2038284288 + 268435585 + Копировать в буфер + с + 200 + 25 + + NSSound + Submarine + + + NO + + + {207, 255} + + + {297, 250} + + {{0, 0}, {1280, 778}} + {10000000000000, 10000000000000} + YES + + + AppDelegate + + + NSFontManager + + + YES + + + + + + + terminate: + + + + 449 + + + + orderFrontStandardAboutPanel: + + + + 142 + + + + delegate + + + + 495 + + + + performMiniaturize: + + + + 37 + + + + arrangeInFront: + + + + 39 + + + + print: + + + + 86 + + + + runPageLayout: + + + + 87 + + + + clearRecentDocuments: + + + + 127 + + + + performClose: + + + + 193 + + + + toggleContinuousSpellChecking: + + + + 222 + + + + undo: + + + + 223 + + + + copy: + + + + 224 + + + + checkSpelling: + + + + 225 + + + + paste: + + + + 226 + + + + stopSpeaking: + + + + 227 + + + + cut: + + + + 228 + + + + showGuessPanel: + + + + 230 + + + + redo: + + + + 231 + + + + selectAll: + + + + 232 + + + + startSpeaking: + + + + 233 + + + + delete: + + + + 235 + + + + performZoom: + + + + 240 + + + + performFindPanelAction: + + + + 241 + + + + centerSelectionInVisibleArea: + + + + 245 + + + + toggleGrammarChecking: + + + + 347 + + + + toggleSmartInsertDelete: + + + + 355 + + + + toggleAutomaticQuoteSubstitution: + + + + 356 + + + + toggleAutomaticLinkDetection: + + + + 357 + + + + saveDocument: + + + + 362 + + + + revertDocumentToSaved: + + + + 364 + + + + runToolbarCustomizationPalette: + + + + 365 + + + + toggleToolbarShown: + + + + 366 + + + + hide: + + + + 367 + + + + hideOtherApplications: + + + + 368 + + + + unhideAllApplications: + + + + 370 + + + + newDocument: + + + + 373 + + + + openDocument: + + + + 374 + + + + raiseBaseline: + + + + 426 + + + + lowerBaseline: + + + + 427 + + + + copyFont: + + + + 428 + + + + subscript: + + + + 429 + + + + superscript: + + + + 430 + + + + tightenKerning: + + + + 431 + + + + underline: + + + + 432 + + + + orderFrontColorPanel: + + + + 433 + + + + useAllLigatures: + + + + 434 + + + + loosenKerning: + + + + 435 + + + + pasteFont: + + + + 436 + + + + unscript: + + + + 437 + + + + useStandardKerning: + + + + 438 + + + + useStandardLigatures: + + + + 439 + + + + turnOffLigatures: + + + + 440 + + + + turnOffKerning: + + + + 441 + + + + toggleAutomaticSpellingCorrection: + + + + 456 + + + + orderFrontSubstitutionsPanel: + + + + 458 + + + + toggleAutomaticDashSubstitution: + + + + 461 + + + + toggleAutomaticTextReplacement: + + + + 463 + + + + uppercaseWord: + + + + 464 + + + + capitalizeWord: + + + + 467 + + + + lowercaseWord: + + + + 468 + + + + pasteAsPlainText: + + + + 486 + + + + performFindPanelAction: + + + + 487 + + + + performFindPanelAction: + + + + 488 + + + + performFindPanelAction: + + + + 489 + + + + showHelp: + + + + 493 + + + + alignCenter: + + + + 518 + + + + pasteRuler: + + + + 519 + + + + toggleRuler: + + + + 520 + + + + alignRight: + + + + 521 + + + + copyRuler: + + + + 522 + + + + alignJustified: + + + + 523 + + + + alignLeft: + + + + 524 + + + + makeBaseWritingDirectionNatural: + + + + 525 + + + + makeBaseWritingDirectionLeftToRight: + + + + 526 + + + + makeBaseWritingDirectionRightToLeft: + + + + 527 + + + + makeTextWritingDirectionNatural: + + + + 528 + + + + makeTextWritingDirectionLeftToRight: + + + + 529 + + + + makeTextWritingDirectionRightToLeft: + + + + 530 + + + + performFindPanelAction: + + + + 535 + + + + addFontTrait: + + + + 421 + + + + addFontTrait: + + + + 422 + + + + modifyFont: + + + + 423 + + + + orderFrontFontPanel: + + + + 424 + + + + modifyFont: + + + + 425 + + + + window + + + + 532 + + + + generate: + + + + 911 + + + + copyToClipboard: + + + + 912 + + + + passwordField + + + + 913 + + + + enableLowerCase + + + + 914 + + + + enableNumeric + + + + 915 + + + + enableUpperCase + + + + 916 + + + + value: lengthPass + + + + + + value: lengthPass + value + lengthPass + 2 + + + 705 + + + + value: lengthPass + + + + + + value: lengthPass + value + lengthPass + 2 + + + 717 + + + + + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 29 + + + + + + + + + + + + + + 19 + + + + + + + + 56 + + + + + + + + 217 + + + + + + + + 83 + + + + + + + + 81 + + + + + + + + + + + + + + + + + 75 + + + + + 78 + + + + + 72 + + + + + 82 + + + + + 124 + + + + + + + + 77 + + + + + 73 + + + + + 79 + + + + + 112 + + + + + 74 + + + + + 125 + + + + + + + + 126 + + + + + 205 + + + + + + + + + + + + + + + + + + + + + + 202 + + + + + 198 + + + + + 207 + + + + + 214 + + + + + 199 + + + + + 203 + + + + + 197 + + + + + 206 + + + + + 215 + + + + + 218 + + + + + + + + 216 + + + + + + + + 200 + + + + + + + + + + + + + 219 + + + + + 201 + + + + + 204 + + + + + 220 + + + + + + + + + + + + + 213 + + + + + 210 + + + + + 221 + + + + + 208 + + + + + 209 + + + + + 57 + + + + + + + + + + + + + + + + + + 58 + + + + + 134 + + + + + 150 + + + + + 136 + + + + + 144 + + + + + 129 + + + + + 143 + + + + + 236 + + + + + 131 + + + + + + + + 149 + + + + + 145 + + + + + 130 + + + + + 24 + + + + + + + + + + + 92 + + + + + 5 + + + + + 239 + + + + + 23 + + + + + 295 + + + + + + + + 296 + + + + + + + + + 297 + + + + + 298 + + + + + 211 + + + + + + + + 212 + + + + + + + + + 195 + + + + + 196 + + + + + 346 + + + + + 348 + + + + + + + + 349 + + + + + + + + + + + + + + 350 + + + + + 351 + + + + + 354 + + + + + 371 + + + + + + + + 372 + + + + + 4 + 0 + + 4 + 1 + + 20 + + 1000 + + 8 + 29 + 3 + + + + 6 + 0 + + 6 + 1 + + 20 + + 1000 + + 8 + 29 + 3 + + + + 4 + 0 + + 4 + 1 + + 20 + + 1000 + + 8 + 29 + 3 + + + + 5 + 0 + + 5 + 1 + + 0.0 + + 1000 + + 6 + 24 + 2 + + + + 3 + 0 + + 4 + 1 + + 8 + + 1000 + + 6 + 24 + 3 + + + + 6 + 0 + + 6 + 1 + + 20 + + 1000 + + 8 + 29 + 3 + + + + 3 + 0 + + 4 + 1 + + 8 + + 1000 + + 6 + 24 + 3 + + + + 5 + 0 + + 5 + 1 + + 0.0 + + 1000 + + 6 + 24 + 2 + + + + 6 + 0 + + 6 + 1 + + 0.0 + + 1000 + + 6 + 24 + 2 + + + + 3 + 0 + + 4 + 1 + + 8 + + 1000 + + 6 + 24 + 3 + + + + 3 + 0 + + 4 + 1 + + 6 + + 1000 + + 6 + 24 + 3 + + + + 3 + 0 + + 4 + 1 + + 8 + + 1000 + + 6 + 24 + 3 + + + + 5 + 0 + + 5 + 1 + + 0.0 + + 1000 + + 6 + 24 + 2 + + + + 5 + 0 + + 5 + 1 + + 0.0 + + 1000 + + 6 + 24 + 2 + + + + 3 + 0 + + 4 + 1 + + 6 + + 1000 + + 6 + 24 + 3 + + + + 3 + 0 + + 4 + 1 + + 8 + + 1000 + + 6 + 24 + 3 + + + + 6 + 0 + + 6 + 1 + + 12 + + 1000 + + 8 + 29 + 3 + + + + 5 + 0 + + 5 + 1 + + 12 + + 1000 + + 8 + 29 + 3 + + + + 4 + 0 + + 4 + 1 + + 0.0 + + 1000 + + 6 + 24 + 2 + + + + 5 + 0 + + 5 + 1 + + 0.0 + + 1000 + + 6 + 24 + 2 + + + + 3 + 0 + + 4 + 1 + + 8 + + 1000 + + 6 + 24 + 3 + + + + 10 + 0 + + 10 + 1 + + 0.0 + + 1000 + + 6 + 24 + 2 + + + + 5 + 0 + + 6 + 1 + + 8 + + 1000 + + 6 + 24 + 3 + + + + 5 + 0 + + 5 + 1 + + 20 + + 1000 + + 8 + 29 + 3 + + + + 3 + 0 + + 4 + 1 + + 8 + + 1000 + + 6 + 24 + 3 + + + + 6 + 0 + + 6 + 1 + + 12 + + 1000 + + 8 + 29 + 3 + + + + 5 + 0 + + 5 + 1 + + 12 + + 1000 + + 8 + 29 + 3 + + + + 3 + 0 + + 4 + 1 + + 8 + + 1000 + + 6 + 24 + 3 + + + + 5 + 0 + + 5 + 1 + + 20 + + 1000 + + 8 + 29 + 3 + + + + 9 + 0 + + 9 + 1 + + 0.0 + + 1000 + + 6 + 24 + 2 + + + + + + + + + + + + + + + + + + + + 375 + + + + + + + + 376 + + + + + + + + + 377 + + + + + + + + 388 + + + + + + + + + + + + + + + + + + + + + + + 389 + + + + + 390 + + + + + 391 + + + + + 392 + + + + + 393 + + + + + 394 + + + + + 395 + + + + + 396 + + + + + 397 + + + + + + + + 398 + + + + + + + + 399 + + + + + + + + 400 + + + + + 401 + + + + + 402 + + + + + 403 + + + + + 404 + + + + + 405 + + + + + + + + + + + + 406 + + + + + 407 + + + + + 408 + + + + + 409 + + + + + 410 + + + + + 411 + + + + + + + + + + 412 + + + + + 413 + + + + + 414 + + + + + 415 + + + + + + + + + + + 416 + + + + + 417 + + + + + 418 + + + + + 419 + + + + + 420 + + + + + 450 + + + + + + + + 451 + + + + + + + + + + 452 + + + + + 453 + + + + + 454 + + + + + 457 + + + + + 459 + + + + + 460 + + + + + 462 + + + + + 465 + + + + + 466 + + + + + 485 + + + + + 490 + + + + + + + + 491 + + + + + + + + 492 + + + + + 494 + + + + + 496 + + + + + + + + 497 + + + + + + + + + + + + + + + + + 498 + + + + + 499 + + + + + 500 + + + + + 501 + + + + + 502 + + + + + 503 + + + + + + + + 504 + + + + + 505 + + + + + 506 + + + + + 507 + + + + + 508 + + + + + + + + + + + + + + + + 509 + + + + + 510 + + + + + 511 + + + + + 512 + + + + + 513 + + + + + 514 + + + + + 515 + + + + + 516 + + + + + 517 + + + + + 534 + + + + + 541 + + + + + + + + 542 + + + + + 656 + + + + + 657 + + + + + 683 + + + + + + 7 + 0 + + 0 + 1 + + 48 + + 1000 + + 3 + 9 + 1 + + + + + + 684 + + + + + 693 + + + + + 700 + + + + + 706 + + + + + + + + 707 + + + + + 737 + + + + + + + + 738 + + + + + 741 + + + + + + + + 742 + + + + + 745 + + + + + + + + 746 + + + + + 749 + + + + + + + + 750 + + + + + 754 + + + + + 758 + + + + + 782 + + + + + 784 + + + + + 786 + + + + + 803 + + + + + 805 + + + + + 806 + + + + + 808 + + + + + 810 + + + + + 816 + + + + + 818 + + + + + 819 + + + + + 823 + + + + + 824 + + + + + 825 + + + + + 826 + + + + + 827 + + + + + 852 + + + + + + 8 + 0 + + 0 + 1 + + 33 + + 1000 + + 3 + 9 + 1 + + + + + + 853 + + + + + 859 + + + + + 863 + + + + + 866 + + + + + 867 + + + + + 868 + + + + + + 7 + 0 + + 0 + 1 + + 165 + + 1000 + + 3 + 9 + 1 + + + + + + 869 + + + + + 875 + + + + + + + + 876 + + + + + 878 + + + + + 879 + + + + + 880 + + + + + 883 + + + + + 884 + + + + + 885 + + + + + + + + 886 + + + + + 887 + + + + + 888 + + + + + 895 + + + + + + + + 896 + + + + + 901 + + + + + 902 + + + + + 903 + + + + + 909 + + + + + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{380, 496}, {480, 360}} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + от 8 до 20 + + + + + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + AccessibilityHelp + + фы + + + ToolTip + + Копировать в буфер + + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + + + 916 + + + 0 + IBCocoaFramework + YES + 3 + + {11, 11} + {10, 3} + {15, 15} + + YES + + diff --git a/passGen/passGen/main.m b/passGen/passGen/main.m new file mode 100644 index 0000000..18d0fe9 --- /dev/null +++ b/passGen/passGen/main.m @@ -0,0 +1,14 @@ +// +// main.m +// passGen +// +// Created by padawan on 13.11.12. +// Copyright (c) 2012 padawan. All rights reserved. +// + +#import + +int main(int argc, char *argv[]) +{ + return NSApplicationMain(argc, (const char **)argv); +} diff --git a/passGen/passGen/passGen-Info.plist b/passGen/passGen/passGen-Info.plist new file mode 100644 index 0000000..62c5519 --- /dev/null +++ b/passGen/passGen/passGen-Info.plist @@ -0,0 +1,34 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIconFile + + CFBundleIdentifier + newitem.${PRODUCT_NAME:rfc1034identifier} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + APPL + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1 + LSMinimumSystemVersion + ${MACOSX_DEPLOYMENT_TARGET} + NSHumanReadableCopyright + Copyright © 2012 padawan. All rights reserved. + NSMainNibFile + MainMenu + NSPrincipalClass + NSApplication + + diff --git a/passGen/passGen/passGen-Prefix.pch b/passGen/passGen/passGen-Prefix.pch new file mode 100644 index 0000000..e5f3521 --- /dev/null +++ b/passGen/passGen/passGen-Prefix.pch @@ -0,0 +1,7 @@ +// +// Prefix header for all source files of the 'passGen' target in the 'passGen' project +// + +#ifdef __OBJC__ + #import +#endif diff --git a/passGen/passGenTests/en.lproj/InfoPlist.strings b/passGen/passGenTests/en.lproj/InfoPlist.strings new file mode 100644 index 0000000..477b28f --- /dev/null +++ b/passGen/passGenTests/en.lproj/InfoPlist.strings @@ -0,0 +1,2 @@ +/* Localized versions of Info.plist keys */ + diff --git a/passGen/passGenTests/passGenTests-Info.plist b/passGen/passGenTests/passGenTests-Info.plist new file mode 100644 index 0000000..b87d27a --- /dev/null +++ b/passGen/passGenTests/passGenTests-Info.plist @@ -0,0 +1,22 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + newitem.${PRODUCT_NAME:rfc1034identifier} + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + BNDL + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1 + + diff --git a/passGen/passGenTests/passGenTests.h b/passGen/passGenTests/passGenTests.h new file mode 100644 index 0000000..70d4b01 --- /dev/null +++ b/passGen/passGenTests/passGenTests.h @@ -0,0 +1,13 @@ +// +// passGenTests.h +// passGenTests +// +// Created by padawan on 13.11.12. +// Copyright (c) 2012 padawan. All rights reserved. +// + +#import + +@interface passGenTests : SenTestCase + +@end diff --git a/passGen/passGenTests/passGenTests.m b/passGen/passGenTests/passGenTests.m new file mode 100644 index 0000000..4591503 --- /dev/null +++ b/passGen/passGenTests/passGenTests.m @@ -0,0 +1,32 @@ +// +// passGenTests.m +// passGenTests +// +// Created by padawan on 13.11.12. +// Copyright (c) 2012 padawan. All rights reserved. +// + +#import "passGenTests.h" + +@implementation passGenTests + +- (void)setUp +{ + [super setUp]; + + // Set-up code here. +} + +- (void)tearDown +{ + // Tear-down code here. + + [super tearDown]; +} + +- (void)testExample +{ + STFail(@"Unit tests are not implemented yet in passGenTests"); +} + +@end