15fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy/*
25fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy * Copyright (C) 2010 The Android Open Source Project
35fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy *
45fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy * Licensed under the Apache License, Version 2.0 (the "License");
55fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy * you may not use this file except in compliance with the License.
65fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy * You may obtain a copy of the License at
75fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy *
85fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy *      http://www.apache.org/licenses/LICENSE-2.0
95fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy *
105fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy * Unless required by applicable law or agreed to in writing, software
115fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy * distributed under the License is distributed on an "AS IS" BASIS,
125fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
135fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy * See the License for the specific language governing permissions and
145fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy * limitations under the License.
155fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy */
165fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy
175fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guypackage com.android.test.hwui;
185fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy
195fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guyimport android.app.Activity;
205fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guyimport android.content.Context;
215fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guyimport android.content.res.Resources;
225fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guyimport android.graphics.Canvas;
235fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guyimport android.graphics.drawable.Drawable;
245fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guyimport android.os.Bundle;
255fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guyimport android.view.Gravity;
265fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guyimport android.view.View;
275fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guyimport android.widget.FrameLayout;
285fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy
295fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy@SuppressWarnings({"UnusedDeclaration"})
305fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guypublic class MoreNinePatchesActivity extends Activity {
315fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy    @Override
325fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy    protected void onCreate(Bundle savedInstanceState) {
335fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy        super.onCreate(savedInstanceState);
345fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy
355fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy        FrameLayout layout = new FrameLayout(this);
365fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy        PatchView b = new PatchView (this);
375fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy        b.setLayoutParams(new FrameLayout.LayoutParams(FrameLayout.LayoutParams.MATCH_PARENT,
385fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy                FrameLayout.LayoutParams.MATCH_PARENT, Gravity.CENTER));
395fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy        layout.addView(b);
405fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy        layout.setBackgroundColor(0xffffffff);
415fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy
425fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy        setContentView(layout);
435fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy    }
445fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy
455fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy    private class PatchView extends View {
465fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy        private final Drawable mDrawable1;
475fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy        private final Drawable mDrawable2;
485fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy        private final Drawable mDrawable3;
495fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy
505fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy        private PatchView(Context context) {
515fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy            super(context);
525fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy            Resources res = context.getResources();
535fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy            mDrawable1 = res.getDrawable(R.drawable.progress_vertical_holo_dark);
545fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy            mDrawable2 = res.getDrawable(R.drawable.scrubber_progress_vertical_holo_dark);
555fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy            mDrawable3 = res.getDrawable(R.drawable.scrubber_vertical_primary_holo);
565fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy        }
575fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy
585fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy        @Override
595fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy        protected void onDraw(Canvas canvas) {
605fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy            super.onDraw(canvas);
615fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy
625fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy            canvas.translate(100, 100);
635fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy            mDrawable1.setBounds(0, 0, 33, 120);
645fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy            mDrawable1.setLevel(5000);
655fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy            mDrawable1.draw(canvas);
665fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy
675fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy            canvas.translate(20, 0);
685fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy            mDrawable2.setBounds(0, 0, 33, 120);
695fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy            mDrawable2.setLevel(5000);
705fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy            mDrawable2.draw(canvas);
715fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy
725fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy            canvas.translate(20, 0);
735fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy            mDrawable3.setBounds(0, 0, 33, 120);
745fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy            mDrawable3.draw(canvas);
755fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy        }
765fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy    }
775fccb70de94f4270cff1ca35d59a289bdf37a89fRomain Guy}
78