/**
* 文 件 名: MT_GlobalConfig.java
* 描 述: 对系统中使用到全集变量进行统一管理
* 版 权: Copyright (c)20010-2011 motone All Rights Reserved.
* 公 司: 摩通科技
* 作 者: 魏景春
* 版 本: 1.0
* 创建时间: 2011-1-19
*
* 修改历史:
* 时间 作者 版本 描述
* ------------------------------------------------------------------
* 2011-1-19 魏景春 1.0 1.0 Version
*/
package com.mogoo.launcher2.config;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import android.content.Context;
import android.util.DisplayMetrics;
import android.view.WindowManager;
import com.mogoo.launcher.R;
public class Mogoo_GlobalConfig {
public static int SCREEN_HEIGHT = 1000;
public static int SCREEN_WIDTH = 1001;
public static int SCREEN_SUPPORT_LANDSCAPE = 1002;
public static int SCREEN_SUPPORT_WIDGET = 1003;
public static int VIBRATION_VIEW = 1004;
public static int REFLECTION_WIDTH_PORT = 1100;
public static int REFLECTION_WIDTH_LAND = 1101;
public static int REFLECTION_HEIGHT_PORT = 1102;
public static int REFLECTION_HEIGHT_LAND = 1103;
public static int REFLECTION_GAP = 1104;
public static int ICON_WIDTH = 1200;
public static int ICON_HEIGHT = 1201;
public static int ICON_RADIAN = 1203;
public static int FRAME_ANGLE = 1204;
public static int FRAME_COUNT = 1205;
// 桌面单元格高度
public static int WORKSPACE_CELL_HEIGHT = 1300;
// 桌面单元格宽度
public static int WORKSPACE_CELL_WIDTH = 1301;
// 桌面单元格左padding
public static int WORKSPACE_CELL_PADDING_LEFT = 1302;
// 桌面单元格右padding
public static int WORKSPACE_CELL_PADDING_RIGHT = 1303;
// 桌面单元格上padding
public static int WORKSPACE_CELL_PADDING_TOP = 1304;
// 桌面单元格下padding
public static int WORKSPACE_CELL_PADDING_BOTTOM = 1305;
public static int WORKSPACE_SHORT_AXIS_CELLS_PORT = 1306;
public static int WORKSPACE_SHORT_AXIS_CELLS_LAND = 1307;
public static int WORKSPACE_LONG_AXIS_CELLS_PORT = 1308;
public static int WORKSPACE_LONG_AXIS_CELLS_LAND = 1309;
public static int WORKSPACE_DEFAULT_SCREEN = 1310;
public static int WORKSPACE_SCREEN_COUNT = 1311;
public static int WORKSPACE_SCREEN_TYPE = 1312;
// 距离上边距的距离
public static int WORKSPACE_LONG_AXIS_START_PADDING = 1313;
// 距离下边距的距离
public static int WORKSPACE_LONG_AXIS_END_PADDING = 1314;
// 距离左边距的距离
public static int WORKSPACE_SHORT_AXIS_START_PADDING = 1315;
// 距离右边距的距离
public static int WORKSPACE_SHORT_AXIS_END_PADDING = 1316;
public static int FRAME_ZERO_ANGLE = 1317;
public static int WORKSPACE_CELL_MARGIN_TOP = 1318;
public static int WORKSPACE_CELL_MARGIN_LEFT = 1319;
public static int WORKSPACE_CELL_MARGIN_RIGHT = 1320;
public static int WORKSPACE_CELL_MARGIN_BOTTOM = 1321;
public static int DOCK_MAX_ICON_COUNT_LAND = 1400;
public static int DOCK_MAX_ICON_COUNT_PORT = 1401;
public static int DOCK_CELL_HEIGHT = 1402;
public static int DOCK_HEIGHT = 1601;
public static int DOCK_CELL_WIDTH = 1403;
public static int DOCK_CELL_PADDING_LEFT = 1404;
public static int DOCK_CELL_PADDING_RIGHT = 1405;
public static int DOCK_CELL_PADDING_TOP = 1406;
public static int IPHONE_FOLDER_START_Y = 1500;
// 操作系统版本
public static final int OS_VERSION = 1600;
// 文件夹生成的面积百分比
public static int FOLDER_GENERATE_AREA_RATE = 1700;
// 文件夹接受桌面图标的面积百分比
public static int FOLDER_ACCEPT_AREA_RATE = 1701;
// 文件夹是否打开的停留时间是值
public static int FOLDER_STAY_TIME = 1702;
public static int FOLDER_OPEN_BOTTOM_HEIGHT = 1703;
//add by 袁业奔 2011-9-7
public static int WORKSPACE_SCREEN_MAXCOUNT = 1704;
public static int WORKSPACE_SCREEN_MINCOUNT = 1705;
//end
//add by 袁业奔 2011-9-21
//指示器点之间的距离
public static int INDICATOR_MARGIN=1706;
//出现文件夹图标时绘制的宽
public static int ICON_FODLER_BG_WIDTH=1077;
//出现文件夹图标时绘制的高
public static int ICON_FODLER_BG_HEIGHT=1078;
//文件夹图标中的图标缩略图
public static int SCALE_ICON_SIZE=1079;
public static final int SCALE_CELL_SIZE = 1080;
public static final int FOLDER_PADDING_SIZE = 1081;
public static final int SCALE_ICON_PADDING_SIZE = 1082;
//end
public static final int LOCK_MUSIC_PANEL = 1083;
//图标圆角
public static final int RADII = 1084;
//update by 袁业奔 2011-10-25
// public static int ICON_SCALE_SIZE = 45;//45
public static final int ICON_SCALE_SIZE = 1085;
//end
//图标上方短信计数器数字字体大小
public static final int ICON_COUNT_INFO_TEXT_SIZE = 1086;
//add by huangyue 2011-11-4
// public static int ICON_SCALE_SIZE = 45;//45
public static final int DATE_TEXT_SIZE = 1087;
public static final int DAY_TEXT_SIZE = 1088;
public static final int DATE_HEIGHT_FIX_VALUE = 1089;
//end
public static final String OS_VERSION_2_1 = "2.1";
public static final String OS_VERSION_2_2 = "2.2";
public static boolean LOG_DEBUG = false;
public static boolean LOG_INFO = true;
public static boolean LOG_WARN = true;
public static boolean LOG_ERROR = true;
public static final int SCREEN_TYPE_SEARCH = 1;
public static final int SCREEN_TYPE_SHORTCUT = 2;
public static final int SCREEN_TYPE_WIDGET = 3;
// 目标类型
public final static int TARGET_NULL = 0; // 空白单元格
public final static int TARGET_SHORTCUT = 1;// 快捷方式
public final static int TARGET_FOLDER = 2;// 文件夹
private static HashMap<Integer, Object> configCache = new HashMap<Integer, Object>();
// TODO: disabled by achellies
//private static WindowManager windowManager = WindowManagerImpl.getDefault();
private static WindowManager windowManager;
public static boolean PLAY_ANIMATION = true;
public static final int FOLDER_BASE_INDEX = 10000;
public static final boolean DEAL_WITH_SYSTEM_ICON = true;
public static final boolean ICON_FOLDER = true;
// land模式下单元格数
private static int workspaceCellCountsForLandscape = 0;
// port模式下单元格数
private static int workspaceCellCountsForPortscape = 0;
/**
* 初始化全局配置参数 @ author: 魏景春
*/
public static void init() {
configCache.clear();
//update by 袁业奔 2011-9-20
// configCache.put(ICON_WIDTH, 86);
// configCache.put(ICON_HEIGHT, 86);
//end
configCache.put(SCREEN_SUPPORT_LANDSCAPE, false);
// configCache.put(WORKSPACE_SCREEN_TYPE, new int
// []{SCREEN_TYPE_SEARCH,SCREEN_TYPE_SHORTCUT,
// SCREEN_TYPE_SHORTCUT,SCREEN_TYPE_SHORTCUT,SCREEN_TYPE_SHORTCUT,SCREEN_TYPE_WIDGET});
configCache.put(WORKSPACE_SCREEN_TYPE, new int[] { SCREEN_TYPE_SEARCH,
SCREEN_TYPE_SHORTCUT, SCREEN_TYPE_SHORTCUT,
SCREEN_TYPE_SHORTCUT, SCREEN_TYPE_SHORTCUT,
SCREEN_TYPE_SHORTCUT });
configCache.put(WORKSPACE_LONG_AXIS_CELLS_PORT, 4);
configCache.put(WORKSPACE_SHORT_AXIS_CELLS_PORT, 4);
configCache.put(WORKSPACE_LONG_AXIS_CELLS_LAND, 4);
configCache.put(WORKSPACE_SHORT_AXIS_CELLS_LAND, 4);
// float[] angles = {-2f,-1.5f, -0.5f, 0.5f,1.5f,2f};
// float[] angles = { -1.8f, -1.3f, -0.6f, 0.6f, 1.3f, 1.8f };
float[] angles = { -1.3f, -0.3f,0.3f,1.3f };
configCache.put(FRAME_ZERO_ANGLE, 3);
configCache.put(FRAME_ANGLE, angles);
configCache.put(FRAME_COUNT, angles.length);
int[] vibrationView = { R.id.workspace, R.id.dockWorkSpace,
R.id.folderWorkspace };
configCache.put(VIBRATION_VIEW, vibrationView);
//update by 袁业奔 2011-9-20
// configCache.put(REFLECTION_WIDTH_PORT, 86);
// configCache.put(REFLECTION_HEIGHT_PORT, 30);
//end
configCache.put(REFLECTION_WIDTH_LAND, 57);
configCache.put(REFLECTION_HEIGHT_LAND, 21);
configCache.put(REFLECTION_GAP, 1);
configCache.put(FOLDER_GENERATE_AREA_RATE, 0.7f);
configCache.put(FOLDER_ACCEPT_AREA_RATE, 0.65f);
configCache.put(FOLDER_STAY_TIME, 1000);
configCache.put(FOLDER_OPEN_BOTTOM_HEIGHT, 50);
configCache.put(OS_VERSION, OS_VERSION_2_2);
//add by 袁业奔 2011-9-7
configCache.put(WORKSPACE_SCREEN_MAXCOUNT,13);
configCache.put(WORKSPACE_SCREEN_MINCOUNT,2);
//end
//add by yeben 2011-10-12 是否隐藏音乐控制面板
configCache.put(LOCK_MUSIC_PANEL,false);
//end
}
static {
init();
}
/**
* 初始化日志级别 @ author: 魏景春
*
* @param logLevel
* 日志级别(1: debug;2:info;3:warn;4:error)
*/
public static void initLogLevel(int logLevel) {
}
/**
* 添加配置参数 @ author: 魏景春
*
* @param key
* 参数项到key值
* @param value
* 参数值
*/
public static void setConfigParm(int key, Object value) {
configCache.put(key, value);
}
public static int getIntByKey(int key) {
return (Integer) configCache.get(key);
}
public static int getRefectionWidth() {
if (isPortrait()) {
return (Integer) configCache.get(REFLECTION_WIDTH_PORT);
} else {
return (Integer) configCache.get(REFLECTION_WIDTH_LAND);
}
}
public static int getReflectionHeight() {
if (isPortrait()) {
return (Integer) configCache.get(REFLECTION_HEIGHT_PORT);
} else {
return (Integer) configCache.get(REFLECTION_HEIGHT_LAND);
}
}
public static int getReflectionGap() {
return (Integer) configCache.get(REFLECTION_GAP);
}
public static int getIconWidth() {
return (Integer) configCache.get(ICON_WIDTH);
}
public static int getIconHeight() {
return (Integer) configCache.get(ICON_HEIGHT);
}
public static int getIconRadian() {
return 0;
}
public static float[] getFrameAngle() {
return (float[]) configCache.get(FRAME_ANGLE);
}
public static int getFrameCount() {
return (Integer) configCache.get(FRAME_COUNT);
}
public static int getZeroAngleFrame() {
return (Integer) configCache.get(FRAME_ZERO_ANGLE);
}
/**
* 取得单元格的高度 @ author: 张永辉
*
* @return 返回单元格的高度
*/
public static int getWorkspaceCellHeight() {
if (configCache.get(WORKSPACE_CELL_HEIGHT) != null) {
return (Integer) configCache.get(WORKSPACE_CELL_HEIGHT);
} else {
return 0;
}
}
/**
* 取得单元格的宽度 @ author: 张永辉
*
* @return
*/
public static int getWorkspaceCellWidth() {
if (configCache.get(WORKSPACE_CELL_WIDTH) != null) {
return (Integer) configCache.get(WORKSPACE_CELL_WIDTH);
} else {
return 0;
}
}
/**
* 取得单元格的左pading @ author: 张永辉
*
* @return
*/
public static int getWorkspaceCellPaddingLeft() {
if (configCache.get(WORKSPACE_CELL_PADDING_LEFT) != null) {
return (Integer) configCache.get(WORKSPACE_CELL_PADDING_LEFT);
} else {
return 5;
}
}
/**
* 取得单元格的右pading @ author: 张永辉
*
* @return
*/
public static int getWorkspaceCellPaddingRight() {
if (configCache.get(WORKSPACE_CELL_PADDING_RIGHT) != null) {
return (Integer) configCache.get(WORKSPACE_CELL_PADDING_RIGHT);
} else {
return 5;
}
}
/**
* 取得单元格的上pading @ author: 张永辉
*
* @return
*/
public static int getWorkspaceCellPaddingTop() {
if (configCache.get(WORKSPACE_CELL_PADDING_TOP) != null) {
return (Integer) configCache.get(WORKSPACE_CELL_PADDING_TOP);
} else {
return 5;
}
}
/**
* 取得单元格的下pading @ author: 张永辉
*
* @return
*/
public static int getWorkspaceCellPaddingBottom() {
if (configCache.get(WORKSPACE_CELL_PADDING_BOTTOM) != null) {
return (Integer) configCache.get(WORKSPACE_CELL_PADDING_BOTTOM);
} else {
return 5;
}
}
/**
* marginTop
*
* @author: 张永辉
* @Date:2011-3-25
* @return
*/
public static int getWorkspaceCellMarginTop() {
// if(configCache.get(WORKSPACE_CELL_MARGIN_TOP)!=null){
// return (Integer)configCache.get(WORKSPACE_CELL_MARGIN_TOP) ;
// }else{
// return 6 ;
// }
return 6;
}
/**
* marginLeft
*
* @author: 张永辉
* @Date:2011-3-25
* @return
*/
public static int getWorkspaceCellMarginLeft() {
if (configCache.get(WORKSPACE_CELL_MARGIN_LEFT) != null) {
return (Integer) configCache.get(WORKSPACE_CELL_MARGIN_LEFT);
} else {
return 4;
}
}
/**
* marginRight
*
* @author: 张永辉
* @Date:2011-3-25
* @return
*/
public static int getWorkspaceCellMarginRight() {
if (configCache.get(WORKSPACE_CELL_MARGIN_RIGHT) != null) {
return (Integer) configCache.get(WORKSPACE_CELL_MARGIN_RIGHT);
} else {
return 4;
}
}
/**
* marginBottom
*
* @author: 张永辉
* @Date:2011-3-25
* @return
*/
public static int getWorkspaceCellMarginBottom() {
if (configCache.get(WORKSPACE_CELL_MARGIN_BOTTOM) != null) {
return (Integer) configCache.get(WORKSPACE_CELL_MARGIN_BOTTOM);
} else {
return 4;
}
}
/**
* 取得竖屏行数 @ author: 张永辉
*
* @return 返回竖屏行数
*/
public static int getWorkspaceShortAxisCellsPort() {
if (configCache.get(WORKSPACE_SHORT_AXIS_CELLS_PORT) != null) {
return (Integer) configCache.get(WORKSPACE_SHORT_AXIS_CELLS_PORT);
} else {
return 4;
}
}
/**
* 取得竖屏列数 @ author: 张永辉
*
* @return 返回竖屏列数
*/
public static int getWorkspaceLongAxisCellsPort() {
if (configCache.get(WORKSPACE_LONG_AXIS_CELLS_PORT) != null) {
return (Integer) configCache.get(WORKSPACE_LONG_AXIS_CELLS_PORT);
} else {
return 4;
}
}
/**
* 取得横屏行数 @ author: 张永辉
*
* @return 返回横屏行数
*/
public static int getWorkspaceShortAxisCellsLand() {
if (configCache.get(WORKSPACE_SHORT_AXIS_CELLS_LAND) != null) {
return (Integer) configCache.get(WORKSPACE_SHORT_AXIS_CELLS_LAND);
} else {
return 2;
}
}
/**
* 取得横屏列数 @ author: 张永辉
*
* @return 返回横屏列数
*/
public static int getWorkspaceLongAxisCellsLand() {
if (configCache.get(WORKSPACE_LONG_AXIS_CELLS_LAND) != null) {
return (Integer) configCache.get(WORKSPACE_LONG_AXIS_CELLS_LAND);
} else {
return 8;
}
}
/**
* 取得当前屏幕类型的列数 @ author: 张永辉
*
* @param isLandscape
* 是否为横屏
* @return 返回单元格列数
*/
public static int getWorkspaceLongAxisCells(boolean isLandscape) {
if (isLandscape) {
return getWorkspaceLongAxisCellsLand();
} else {
return getWorkspaceLongAxisCellsPort();
}
}
/**
* 取得肖前屏幕类型的行数 @ author: 张永辉
*
* @param isLandscape
* 是否为横屏
* @return 返回单元格行数
*/
public static int getWorkspaceShortAxisCells(boolean isLandscape) {
if (isLandscape) {
return getWorkspaceShortAxisCellsLand();
} else {
return getWorkspaceShortAxisCellsPort();
}
}
/**
* 取得当前屏幕总到单元个数 @ author: 魏景春
*
* @return
*/
public static int getWorkspaceCellCounts() {
if (isLandscape()) {
if (workspaceCellCountsForLandscape == 0) {
workspaceCellCountsForLandscape = getWorkspaceShortAxisCellsLand()
* getWorkspaceLongAxisCellsLand();
}
return workspaceCellCountsForLandscape;
} else {
if (workspaceCellCountsForPortscape == 0) {
workspaceCellCountsForPortscape = getWorkspaceShortAxisCellsPort()
* getWorkspaceLongAxisCellsPort();
}
return workspaceCellCountsForPortscape;
}
}
/**
* 取得默认屏序号 @ author: 张永辉
*
* @return 返回默认屏序号
*/
public static int getWorkspaceDefaultScreen() {
if (configCache.get(WORKSPACE_DEFAULT_SCREEN) != null) {
return (Integer) configCache.get(WORKSPACE_DEFAULT_SCREEN);
} else {
return 1;
}
}
/**
* 返回屏幕总数 @ author: 张永辉
*
* @return 返回屏幕总数
*/
public static int getWorkspaceScreenCount() {
if (configCache.get(WORKSPACE_SCREEN_COUNT) != null) {
return (Integer) configCache.get(WORKSPACE_SCREEN_COUNT);
} else {
return 5;
}
}
/**
* 取得各屏幕所属分类 @ author: 张永辉
*
* @return
*/
public static int[] getWorkspaceScreenType() {
if (configCache.get(WORKSPACE_SCREEN_TYPE) != null) {
return (int[]) configCache.get(WORKSPACE_SCREEN_TYPE);
} else {
return new int[] { SCREEN_TYPE_SEARCH, SCREEN_TYPE_SHORTCUT,
SCREEN_TYPE_SHORTCUT, SCREEN_TYPE_SHORTCUT,
SCREEN_TYPE_WIDGET };
}
}
/**
* 取得单元格与屏幕左边的距离 @ author: 张永辉
*
* @return
*/
public static int getWorkspaceLongAxisStartPadding() {
if (configCache.get(WORKSPACE_LONG_AXIS_START_PADDING) != null) {
return (Integer) configCache.get(WORKSPACE_LONG_AXIS_START_PADDING);
} else {
return 0;
}
}
/**
* 取得单元格与屏幕上边的距离 @ author: 张永辉
*
* @return
*/
public static int getWorkspaceShortAxisStartPadding() {
if (configCache.get(WORKSPACE_SHORT_AXIS_START_PADDING) != null) {
return (Integer) configCache
.get(WORKSPACE_SHORT_AXIS_START_PADDING);
} else {
return 0;
}
}
/**
* 取得单元格与屏幕右边的距离 @ author: 张永辉
*
* @return
*/
public static int getWorkspaceLongAxisEndPadding() {
if (configCache.get(WORKSPACE_LONG_AXIS_END_PADDING) != null) {
return (Integer) configCache.get(WORKSPACE_LONG_AXIS_END_PADDING);
} else {
return 0;
}
}
/**
* 取得单元格与屏幕下边的距离 @ author: 张永辉
*
* @return
*/
public static int getWorkspaceShortAxisEndPadding() {
if (configCache.get(WORKSPACE_SHORT_AXIS_END_PADDING) != null) {
return (Integer) configCache.get(WORKSPACE_SHORT_AXIS_END_PADDING);
} else {
return 0;
}
}
public static int getDockHeight() {
return (Integer) configCache.get(Mogoo_GlobalConfig.DOCK_HEIGHT);
}
public static int getDockMaxIconCount() {
return 4;
}
public static int getDockCellHeight() {
return 0;
}
public static int getDockCellWidth() {
return 0;
}
public static int getDockCellPaddingLeft() {
return 0;
}
public static int getDockCellPaddingTop() {
return 0;
}
public static int getIphoneStartY() {
return 0;
}
public static void initWindowManager(Context context) {
windowManager = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
}
/**
* 获取屏幕的宽度 @ author: 魏景春
*
* @return 屏幕到宽度
*/
public static int getScreenWidth() {
if (configCache.get(SCREEN_WIDTH) != null) {
return (Integer) configCache.get(SCREEN_WIDTH);
} else {
DisplayMetrics dm = new DisplayMetrics();
windowManager.getDefaultDisplay().getMetrics(dm);
configCache.put(SCREEN_WIDTH, dm.widthPixels);
configCache.put(SCREEN_HEIGHT, dm.heightPixels);
return dm.widthPixels;
}
}
/**
* 获取屏幕的高度 @ author: 魏景春
*
* @return 屏幕到高度
*/
public static int getScreenHeight() {
if (configCache.get(SCREEN_HEIGHT) != null) {
return (Integer) configCache.get(SCREEN_HEIGHT);
} else {
DisplayMetrics dm = new DisplayMetrics();
windowManager.getDefaultDisplay().getMetrics(dm);
configCache.put(SCREEN_WIDTH, dm.widthPixels);
configCache.put(SCREEN_HEIGHT, dm.heightPixels);
return dm.heightPixels;
}
}
public static int[] getVibrationViewID() {
return (int[]) configCache.get(VIBRATION_VIEW);
}
public static boolean isLandscape() {
if (windowManager.getDefaultDisplay().getHeight() < windowManager
.getDefaultDisplay().getWidth()) {
return true;
} else {
return false;
}
}
public static boolean isPortrait() {
if (windowManager.getDefaultDisplay().getHeight() > windowManager
.getDefaultDisplay().getWidth()) {
return true;
} else {
return false;
}
}
/**
* 是否支持横屏 @ author: 张永辉
*
* @return
*/
public static boolean isSupportLandscape() {
if (configCache.get(SCREEN_SUPPORT_LANDSCAPE) != null) {
return (Boolean) configCache.get(SCREEN_SUPPORT_LANDSCAPE);
} else {
return false;
}
}
public static boolean isSupportWidget() {
return false;
}
/**
* 操作系统版本
*
* @author: 张永辉
* @return
*/
public static String getOsVersion() {
if (configCache.get(OS_VERSION) != null) {
return (String) configCache.get(OS_VERSION);
} else {
return OS_VERSION_2_2;
}
}
/**
* 取得生成图标文件夹的面积比例
*
* @author: 张永辉
* @Date:2011-3-18
* @return
*/
public static float getFolderGenerateAreaRate() {
if (configCache.get(FOLDER_GENERATE_AREA_RATE) != null) {
return (Float) configCache.get(FOLDER_GENERATE_AREA_RATE);
} else {
return 0.8f;
}
}
/**
* 取得图标文件夹接受的面积比例
*
* @author: 张永辉
* @Date:2011-3-18
* @return
*/
public static float getFolderAcceptAreaRate() {
if (configCache.get(FOLDER_ACCEPT_AREA_RATE) != null) {
return (Float) configCache.get(FOLDER_ACCEPT_AREA_RATE);
} else {
return 0.6f;
}
}
/**
* 图标文件夹打开的停留时间
*
* @author: 张永辉
* @Date:2011-3-21
* @return
*/
public static int getFolderStayTime() {
if (configCache.get(FOLDER_STAY_TIME) != null) {
return (Integer) configCache.get(FOLDER_STAY_TIME);
} else {
return 1000;
}
}
public static int getFolderOpenBottomHeight() {
if (configCache.get(FOLDER_OPEN_BOTTOM_HEIGHT) != null) {
return (Integer) configCache.get(FOLDER_OPEN_BOTTOM_HEIGHT);
} else {
return 50;
}
}
/**
* 取得widget屏的屏幕序号 @ author: 张永辉
*
* @return 返回widget屏序号数组
*/
public static int[] getWidgetScreen() {
List<Integer> widgetList = new ArrayList<Integer>();
int[] array = getWorkspaceScreenType();
int len = array.length;
for (int i = 0; i < len; i++) {
if (array[i] == SCREEN_TYPE_WIDGET) {
widgetList.add(i);
}
}
Object[] objs = widgetList.toArray();
len = objs.length;
int[] widget = new int[len]; // 用于保存widget屏序号
for (int i = 0; i < len; i++) {
widget[i] = (Integer) (objs[i]);
}
return widget;
}
/**
* 取得shortcut屏的屏幕序号 @ author: 张永辉
*
* @return 返回shortcut屏序号数组
*/
public static int[] getShortcutScreen() {
List<Integer> shortcutList = new ArrayList<Integer>();
int[] array = getWorkspaceScreenType();
int len = array.length;
for (int i = 0; i < len; i++) {
if (array[i] == SCREEN_TYPE_SHORTCUT) {
shortcutList.add(i);
}
}
Object[] objs = shortcutList.toArray();
len = objs.length;
int[] shortcut = new int[len]; // 用于保存shortcut屏序号
for (int i = 0; i < len; i++) {
shortcut[i] = (Integer) (objs[i]);
}
return shortcut;
}
/**
* 取得search屏的屏幕序号 @ author: 张永辉
*
* @return 返回search屏序号
*/
public static int getSearchScreen() {
List<Integer> searchList = new ArrayList<Integer>();
int[] array = getWorkspaceScreenType();
int len = array.length;
for (int i = 0; i < len; i++) {
if (array[i] == SCREEN_TYPE_SEARCH) {
searchList.add(i);
}
}
Object[] objs = searchList.toArray();
len = objs.length;
int[] search = new int[len]; // 用于保存shortcut屏序号
for (int i = 0; i < len; i++) {
search[i] = (Integer) (objs[i]);
}
if (search != null && search.length > 0) {
return search[0];
} else {
return 0;
}
}
/**
* 判断序号为screen屏是否为快捷方式屏 @ author: 张永辉
*
* @param screen
* 屏幕序号
* @return
*/
public static boolean isShortcutScreen(int screen) {
if (screen < 0 || screen >= getWorkspaceScreenType().length) {
return false;
}
if (getWorkspaceScreenType()[screen] == SCREEN_TYPE_SHORTCUT) {
return true;
} else {
return false;
}
}
/**
* 判断序号为screen的屏是否为搜索屏 @ author: 张永辉
*
* @param screen
* 屏幕序号
* @return
*/
public static boolean isSearchScreen(int screen) {
if (screen < 0 || screen >= getWorkspaceScreenType().length) {
return false;
}
if (getWorkspaceScreenType()[screen] == SCREEN_TYPE_SEARCH) {
return true;
} else {
return false;
}
}
/**
* 判断序号为screen的屏是否为widget屏 @ author: 张永辉
*
* @param screen
* 屏幕序号
* @return
*/
public static boolean isWidgetScreen(int screen) {
if (screen < 0 || screen >= getWorkspaceScreenType().length) {
return false;
}
if (getWorkspaceScreenType()[screen] == SCREEN_TYPE_WIDGET) {
return true;
} else {
return false;
}
}
/**
* 单元格面积
*
* @author: 张永辉
* @Date:2011-3-18
* @return
*/
public static float getCellArea() {
return getWorkspaceCellWidth() * getWorkspaceCellHeight();
}
//add by 袁业奔 2011-9-7
/**
* 允许最大屏数
* @author: 袁业奔
* @Date:2011-9-7
* @return
*/
public static int getWorkspaceScreenMaxCount(){
return (Integer)configCache.get(WORKSPACE_SCREEN_MAXCOUNT);
}
/**
* 允许最小屏数
* @author: 袁业奔
* @Date:2011-9-7
* @return
*/
public static int getWorkspaceScreenMinCount(){
return (Integer)configCache.get(WORKSPACE_SCREEN_MINCOUNT);
}
//end
/**
* 指示器点间距
* @author: 袁业奔
* @Date:2011-9-21
* @return
*/
public static int getIndicatorMargin(){
return (Integer)configCache.get(INDICATOR_MARGIN);
}
/**
* 文件夹背景绘制宽度
* @author: 袁业奔
* @Date:2011-9-21
* @return
*/
public static int getIconFolderBgWidth(){
return (Integer)configCache.get(ICON_FODLER_BG_WIDTH);
}
/**
* 文件夹背景绘制高度
* @author: 袁业奔
* @Date:2011-9-21
* @return
*/
public static int getIconFolderBgHeight(){
return (Integer)configCache.get(ICON_FODLER_BG_HEIGHT);
}
/**
* 文件夹图标中的图标缩略图缩放比例
* @author: 袁业奔
* @Date:2011-9-21
* @return
*/
public static int getScaleIconSize(){
return (Integer)configCache.get(SCALE_ICON_SIZE);
}
public static float getScaleCellSize(){
return (Float)configCache.get(SCALE_CELL_SIZE);
}
public static float getFolderPaddingSize(){
return (Float)configCache.get(FOLDER_PADDING_SIZE);
}
public static float getScallIconPaddingSize(){
return (Float)configCache.get(SCALE_ICON_PADDING_SIZE);
}
/**
* 动态生成数组
* @author: 袁业奔
* @Date:2011-9-28
* @return
*/
public static int[] createWorkspaceScreenType(int screenCount){
if(screenCount<=0){
screenCount=1;
}
int[] screenType=new int[screenCount];
for (int i = 0; i < screenType.length; i++) {
if(i==0){
screenType[i] = SCREEN_TYPE_SEARCH;
}else{
screenType[i] = SCREEN_TYPE_SHORTCUT;
}
}
return screenType;
}
/**
* 是否锁定隐藏工具栏中的音乐播放器
* @return
*/
public static boolean isLockMusicPanel() {
if (configCache.get(LOCK_MUSIC_PANEL) != null) {
return (Boolean) configCache.get(LOCK_MUSIC_PANEL);
} else {
return false;
}
}
public static int getRadii(){
return (Integer)configCache.get(RADII);
}
public static int geticonScaleSize(){
return (Integer)configCache.get(ICON_SCALE_SIZE);
}
public static float getIconCountInfoTextSize(){
return (Float)configCache.get(ICON_COUNT_INFO_TEXT_SIZE);
}
public static int getDateHeightFixValue(){
return (Integer)configCache.get(DATE_HEIGHT_FIX_VALUE);
}
}