19066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/*
29066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Copyright (C) 2006 The Android Open Source Project
39066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *
49066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License");
59066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * you may not use this file except in compliance with the License.
69066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * You may obtain a copy of the License at
79066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *
89066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *      http://www.apache.org/licenses/LICENSE-2.0
99066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *
109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Unless required by applicable law or agreed to in writing, software
119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS,
129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * See the License for the specific language governing permissions and
149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * limitations under the License.
159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */
169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectpackage android.view;
189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
19ee592fe4e60e940599fc1ccf43a98eb80961feb8Xavier Ducrohetimport com.android.layoutlib.bridge.MockView;
209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.content.Context;
229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.graphics.Canvas;
239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.graphics.Rect;
249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.util.AttributeSet;
259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/**
279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Mock version of the SurfaceView.
289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Only non override public methods from the real SurfaceView have been added in there.
299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Methods that take an unknown class as parameter or as return object, have been removed for now.
3046d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet *
319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * TODO: generate automatically.
329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *
339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */
349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectpublic class SurfaceView extends MockView {
359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public SurfaceView(Context context) {
379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        this(context, null);
389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
3946d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet
409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public SurfaceView(Context context, AttributeSet attrs) {
419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        this(context, attrs , 0);
429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public SurfaceView(Context context, AttributeSet attrs, int defStyle) {
459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        super(context, attrs, defStyle);
469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
4746d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet
489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public SurfaceHolder getHolder() {
499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mSurfaceHolder;
509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    private SurfaceHolder mSurfaceHolder = new SurfaceHolder() {
5346d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet
5446d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet        @Override
559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        public boolean isCreating() {
569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            return false;
579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        }
589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
5946d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet        @Override
609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        public void addCallback(Callback callback) {
619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        }
629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
6346d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet        @Override
649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        public void removeCallback(Callback callback) {
659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        }
6646d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet
6746d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet        @Override
689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        public void setFixedSize(int width, int height) {
699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        }
709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
7146d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet        @Override
729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        public void setSizeFromLayout() {
739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        }
749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
7546d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet        @Override
769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        public void setFormat(int format) {
779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        }
789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
7946d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet        @Override
809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        public void setType(int type) {
819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        }
829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
8346d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet        @Override
849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        public void setKeepScreenOn(boolean screenOn) {
859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        }
8646d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet
8746d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet        @Override
889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        public Canvas lockCanvas() {
899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            return null;
909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        }
919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
9246d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet        @Override
939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        public Canvas lockCanvas(Rect dirty) {
949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            return null;
959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        }
969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
9746d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet        @Override
989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        public void unlockCanvasAndPost(Canvas canvas) {
999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        }
1009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
10146d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet        @Override
1029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        public Surface getSurface() {
1039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            return null;
1049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        }
1059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
10646d43ccfd8cef75b4315828073c094cf1efb05ffXavier Ducrohet        @Override
1079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        public Rect getSurfaceFrame() {
1089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            return null;
1099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        }
1109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    };
1119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project}
1129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
113