mirror of
https://github.com/zxing/zxing.git
synced 2024-11-09 20:44:03 -08:00
Initial check in of rough, experimental iPhone code. Not to be used just yet; just here so we can collaborate a bit.
git-svn-id: https://zxing.googlecode.com/svn/trunk@228 59b500cc-1b3d-0410-9834-0bbf25fbcc57
This commit is contained in:
parent
759bef6f8a
commit
89c20544eb
39
iphone/experimental/Info.plist
Normal file
39
iphone/experimental/Info.plist
Normal file
|
@ -0,0 +1,39 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<!--
|
||||
Copyright 2008 Google Inc.
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>en</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>ZXing</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>zxing</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>0.1</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>ZXing</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0.0</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0</string>
|
||||
</dict>
|
||||
</plist>
|
36
iphone/experimental/Makefile
Normal file
36
iphone/experimental/Makefile
Normal file
|
@ -0,0 +1,36 @@
|
|||
# Copyright 2008 Google Inc.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
CC=/usr/local/bin/arm-apple-darwin-gcc -v
|
||||
LD=$(CC)
|
||||
|
||||
CFLAGS = -L$(HEAVENLY)
|
||||
LDFLAGS = -framework CoreFoundation \
|
||||
-framework Foundation \
|
||||
-framework UIKit \
|
||||
-framework CoreGraphics \
|
||||
-framework PhotoLibrary \
|
||||
-lobjc
|
||||
|
||||
all: ZXing
|
||||
|
||||
ZXing: ZXing.o ZXingApplication.o
|
||||
$(LD) $(LDFLAGS) -o $@ $^
|
||||
|
||||
%.o: %.m
|
||||
$(CC) -c $(CFLAGS) $< -o $@
|
||||
|
||||
clean:
|
||||
rm -f *.o ZXing
|
||||
rm -f ZXing.app/ZXing
|
3
iphone/experimental/README
Normal file
3
iphone/experimental/README
Normal file
|
@ -0,0 +1,3 @@
|
|||
This is a temporary checkin of a rough shell of an iPhone application, for
|
||||
purposes of experimentation and sharing with developers. It should not be
|
||||
expected to be complete or functional, or ready for use.
|
25
iphone/experimental/ZXing.m
Normal file
25
iphone/experimental/ZXing.m
Normal file
|
@ -0,0 +1,25 @@
|
|||
/*
|
||||
* Copyright 2008 Google Inc.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
|
||||
#import "ZXingApplication.h"
|
||||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
|
||||
return UIApplicationMain(argc, argv, [ZXingApplication class]);
|
||||
}
|
43
iphone/experimental/ZXingApplication.h
Normal file
43
iphone/experimental/ZXingApplication.h
Normal file
|
@ -0,0 +1,43 @@
|
|||
/*
|
||||
* Copyright 2008 Google Inc.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
#import <PhotoLibrary/CameraController.h>
|
||||
#import <UIKit/UIKit.h>
|
||||
#import <UIKit/UIApplication.h>
|
||||
|
||||
@interface ZXingApplication : UIApplication
|
||||
{
|
||||
CameraController* cameraController;
|
||||
|
||||
UIWindow* mainWindow;
|
||||
|
||||
UIView* previewView;
|
||||
UIView* decodeView;
|
||||
|
||||
UIImageView* decodeImageView;
|
||||
}
|
||||
|
||||
- (void) decodeImage: (id) param1;
|
||||
|
||||
- (void) cameraControllerReadyStateChanged: (id) param1;
|
||||
- (void) cameraController: (id) param1
|
||||
tookPicture: (id) param2
|
||||
withPreview: (id) preview
|
||||
jpegData: (id) param3
|
||||
imageProperties: (id) param4;
|
||||
|
||||
@end
|
97
iphone/experimental/ZXingApplication.m
Normal file
97
iphone/experimental/ZXingApplication.m
Normal file
|
@ -0,0 +1,97 @@
|
|||
/*
|
||||
* Copyright 2008 Google Inc.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#import <CoreGraphics/CGGeometry.h>
|
||||
#import <CoreGraphics/CGImage.h>
|
||||
#import <Foundation/Foundation.h>
|
||||
#import <UIKit/UIPushButton.h>
|
||||
#import <UIKit/UIWindow.h>
|
||||
#import <PhotoLibrary/CameraController.h>
|
||||
#import "ZXingApplication.h"
|
||||
|
||||
@implementation ZXingApplication
|
||||
|
||||
- (void) applicationDidFinishLaunching: (id) param1 {
|
||||
mainWindow = [[UIWindow alloc] initWithContentRect: [UIHardware
|
||||
fullScreenApplicationContentRect]];
|
||||
|
||||
[mainWindow orderFront: self];
|
||||
[mainWindow _setHidden: NO];
|
||||
|
||||
// Setup camera stuff
|
||||
cameraController = [[CameraController alloc] init];
|
||||
[cameraController startPreview];
|
||||
[[CameraController sharedInstance] setDelegate: self];
|
||||
|
||||
struct CGRect fullscreen_rect =
|
||||
[UIHardware fullScreenApplicationContentRect];
|
||||
fullscreen_rect.origin.x = 0.0f;
|
||||
fullscreen_rect.origin.y = 0.0f;
|
||||
fullscreen_rect.size.width = 320.0f;
|
||||
fullscreen_rect.size.height = 480.0f;
|
||||
|
||||
// Setup previewView
|
||||
previewView = [[UIView alloc] initWithFrame: fullscreen_rect];
|
||||
[previewView addSubview: [cameraController previewView]];
|
||||
|
||||
UIPushButton *decode_button =
|
||||
[[UIPushButton alloc] initWithFrame:
|
||||
CGRectMake(140.0f, 440.0f, 50.0f, 20.0f)];
|
||||
[decode_button setTitle: @"Decode"];
|
||||
[decode_button setEnabled: YES];
|
||||
[decode_button addTarget: self action: @selector(decodeImage:)
|
||||
forEvents: 255];
|
||||
|
||||
[previewView addSubview: decode_button];
|
||||
|
||||
// Setup decodeView
|
||||
decodeView = [[UIView alloc] initWithFrame: fullscreen_rect];
|
||||
decodeImageView = [[UIImageView alloc] initWithFrame:
|
||||
CGRectMake(0.0f, 0.0f,
|
||||
320.0f, 480.0f)];
|
||||
[decodeImageView setRotationBy: 90];
|
||||
[decodeView addSubview: decodeImageView];
|
||||
|
||||
[mainWindow setContentView: previewView];
|
||||
}
|
||||
|
||||
- (void) decodeImage: (id) param1 {
|
||||
[cameraController capturePhoto];
|
||||
|
||||
[mainWindow setContentView: decodeView];
|
||||
}
|
||||
|
||||
|
||||
- (void) cameraControllerReadyStateChanged: (id) param1 {
|
||||
}
|
||||
|
||||
- (void) cameraController: (id) param1
|
||||
tookPicture: (id) param2
|
||||
withPreview: (id) preview
|
||||
jpegData: (id) param3
|
||||
imageProperties: (id) param4 {
|
||||
[cameraController stopPreview];
|
||||
|
||||
CGImageRef orig_image = [preview imageRef];
|
||||
int orig_height = CGImageGetHeight(orig_image);
|
||||
int orig_width = CGImageGetWidth(orig_image);
|
||||
|
||||
[decodeImageView setImage: preview];
|
||||
// Height and width swapped since the image comes in rotated 90 degrees.
|
||||
[decodeImageView setFrame: CGRectMake(0.0f, 0.0f, orig_height, orig_width)];
|
||||
}
|
||||
|
||||
@end
|
BIN
iphone/experimental/icon.png
Normal file
BIN
iphone/experimental/icon.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 5.7 KiB |
Loading…
Reference in a new issue