@Override
  public boolean onCreateOptionsMenu(Menu menu) {
    List<String> effects = mOpenCvCameraView.getEffectList();

    if (effects == null) {
      Log.e(TAG, "Color effects are not supported by device!");
      return true;
    }

    mColorEffectsMenu = menu.addSubMenu("Color Effect");
    mEffectMenuItems = new MenuItem[effects.size()];

    int idx = 0;
    ListIterator<String> effectItr = effects.listIterator();
    while (effectItr.hasNext()) {
      String element = effectItr.next();
      mEffectMenuItems[idx] = mColorEffectsMenu.add(1, idx, Menu.NONE, element);
      idx++;
    }

    mResolutionMenu = menu.addSubMenu("Resolution");
    mResolutionList = mOpenCvCameraView.getResolutionList();
    mResolutionMenuItems = new MenuItem[mResolutionList.size()];

    ListIterator<Size> resolutionItr = mResolutionList.listIterator();
    idx = 0;
    while (resolutionItr.hasNext()) {
      Size element = resolutionItr.next();
      mResolutionMenuItems[idx] =
          mResolutionMenu.add(
              2,
              idx,
              Menu.NONE,
              Integer.valueOf(element.width).toString()
                  + "x"
                  + Integer.valueOf(element.height).toString());
      idx++;
    }

    return true;
  }