Exemple #1
0
  public static ObjectInfo CreateFromDB(Cursor cursor) {
    ObjectInfo info = new ObjectInfo();
    info.mAppWidgetId = cursor.getInt(cursor.getColumnIndexOrThrow(ObjectInfoColumns.WIDGET_ID));
    info.mName = cursor.getString(cursor.getColumnIndexOrThrow(ObjectInfoColumns.OBJECT_NAME));
    info.mType = cursor.getString(cursor.getColumnIndexOrThrow(ObjectInfoColumns.OBJECT_TYPE));
    info.mID = cursor.getInt(cursor.getColumnIndexOrThrow(ObjectInfoColumns._ID));
    info.mShaderType = cursor.getInt(cursor.getColumnIndexOrThrow(ObjectInfoColumns.SHADER_TYPE));
    info.mSceneName = cursor.getString(cursor.getColumnIndexOrThrow(ObjectInfoColumns.SCENE_NAME));
    String componentName =
        cursor.getString(cursor.getColumnIndexOrThrow(ObjectInfoColumns.COMPONENT_NAME));
    if (componentName != null) {
      info.mComponentName = ComponentName.unflattenFromString(componentName);
    }
    info.mSlotType = cursor.getInt(cursor.getColumnIndexOrThrow(ObjectInfoColumns.SLOT_TYPE));
    info.mObjectSlot.mObjectID =
        cursor.getInt(cursor.getColumnIndexOrThrow(VesselColumns.OBJECT_ID));
    info.mObjectSlot.mVesselID =
        cursor.getInt(cursor.getColumnIndexOrThrow(VesselColumns.VESSEL_ID));
    info.mObjectSlot.mSlotIndex =
        cursor.getInt(cursor.getColumnIndexOrThrow(VesselColumns.SLOT_INDEX));
    info.mObjectSlot.mStartX =
        cursor.getInt(cursor.getColumnIndexOrThrow(VesselColumns.SLOT_StartX));
    info.mObjectSlot.mStartY =
        cursor.getInt(cursor.getColumnIndexOrThrow(VesselColumns.SLOT_StartY));
    info.mObjectSlot.mSpanX = cursor.getInt(cursor.getColumnIndexOrThrow(VesselColumns.SLOT_SpanX));
    info.mObjectSlot.mSpanY = cursor.getInt(cursor.getColumnIndexOrThrow(VesselColumns.SLOT_SpanY));

    info.mClassName = cursor.getString(cursor.getColumnIndexOrThrow(ObjectInfoColumns.CLASS_NAME));
    byte[] bytes = cursor.getBlob(cursor.getColumnIndexOrThrow(ObjectInfoColumns.SHORTCUT_ICON));
    if (bytes != null) {
      info.mShortcutIcon = BitmapFactory.decodeByteArray(bytes, 0, bytes.length, null);
    }

    int nativeObj = cursor.getInt(cursor.getColumnIndexOrThrow(ObjectInfoColumns.IS_NATIVE_OBJ));
    if (nativeObj > 0) {
      info.mIsNativeObject = true;
    } else {
      info.mIsNativeObject = false;
    }
    info.mShortcutUrl =
        cursor.getString(cursor.getColumnIndexOrThrow(ObjectInfoColumns.SHORTCUT_URL));
    info.mIndex = cursor.getInt(cursor.getColumnIndexOrThrow(ObjectInfoColumns.OBJECT_INDEX));
    info.mDisplayName =
        cursor.getString(cursor.getColumnIndexOrThrow(ObjectInfoColumns.DISPLAY_NAME));
    info.mFaceColor = cursor.getInt(cursor.getColumnIndexOrThrow(ObjectInfoColumns.FACE_COLOR));
    return info;
  }