19d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project/* 29d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project * Copyright (C) 2007 The Android Open Source Project 39d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project * 49d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License"); 59d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project * you may not use this file except in compliance with the License. 69d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project * You may obtain a copy of the License at 79d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project * 89d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project * http://www.apache.org/licenses/LICENSE-2.0 99d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project * 109d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project * Unless required by applicable law or agreed to in writing, software 119d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS, 129d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 139d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project * See the License for the specific language governing permissions and 149d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project * limitations under the License. 159d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project */ 169d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project 179d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Projectpackage com.android.stk; 189d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project 199d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Projectimport android.app.Application; 209d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project 21d41f1d98d7bf42e9e867819593ad79f685604796Alex Yakavenkaimport com.android.internal.telephony.cat.Duration; 229d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project 239d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project/** 249d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project * Top-level Application class for STK app. 259d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project */ 269d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Projectabstract class StkApp extends Application { 279d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project // Application constants 289d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project public static final boolean DBG = true; 299d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project 309d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project // Identifiers for option menu items 319d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project static final int MENU_ID_END_SESSION = android.view.Menu.FIRST; 329d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project static final int MENU_ID_BACK = android.view.Menu.FIRST + 1; 339d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project static final int MENU_ID_HELP = android.view.Menu.FIRST + 2; 349d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project 359d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project // UI timeout, 30 seconds - used for display dialog and activities. 369d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project static final int UI_TIMEOUT = (40 * 1000); 379d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project 389d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project // Tone default timeout - 2 seconds 399d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project static final int TONE_DFEAULT_TIMEOUT = (2 * 1000); 409d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project 419d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project public static final String TAG = "STK App"; 429d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project 439d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project /** 449d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project * This function calculate the time in MS from a duration instance. 459d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project * returns zero when duration is null. 469d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project */ 479d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project public static int calculateDurationInMilis(Duration duration) { 489d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project int timeout = 0; 499d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project if (duration != null) { 509d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project switch (duration.timeUnit) { 519d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project case MINUTE: 529d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project timeout = 1000 * 60; 539d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project break; 549d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project case TENTH_SECOND: 55c2400dfd02c7209213474f0a82865a63d2a8b2e0Pierre Frojd timeout = 1000 / 10; 569d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project break; 579d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project case SECOND: 589d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project default: 599d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project timeout = 1000; 609d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project break; 619d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project } 629d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project timeout *= duration.timeInterval; 639d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project } 649d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project return timeout; 659d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project } 669d9730aecb72e830ef12d66ce6e084d8ae0928f2The Android Open Source Project} 67