code: @Override
      protected void doPaint(Graphics2D g, JComponent c, int width, int height, Object[] extendedCacheKeys) {
          switch (state) {
          case FOREGROUND_DISABLED:
          case FOREGROUND_ENABLED:
          case FOREGROUND_PRESSED:
              paintBackgroundApart(g, width, height);
              paintDecreaseButtonApart(g, width, height);
              break;
  
          case FOREGROUND_DISABLED_TOGETHER:
          case FOREGROUND_ENABLED_TOGETHER:
          case FOREGROUND_PRESSED_TOGETHER:
              paintBackgroundTogetherDecrease(g, width, height);
              paintDecreaseButtonTogether(g, width, height);
              break;
  
          case FOREGROUND_INCREASE_DISABLED:
          case FOREGROUND_INCREASE_ENABLED:
          case FOREGROUND_INCREASE_PRESSED:
              paintBackgroundApart(g, width, height);
              paintIncreaseButtonApart(g, width, height);
              break;
  
          case FOREGROUND_INCREASE_DISABLED_TOGETHER:
          case FOREGROUND_INCREASE_ENABLED_TOGETHER:
          case FOREGROUND_INCREASE_PRESSED_TOGETHER:
              paintBackgroundTogetherIncrease(g, width, height);
              paintIncreaseButtonTogether(g, width, height);
              break;
  
          case FOREGROUND_CAP:
              paintBackgroundCap(g, width, height);
              break;
          }
      }
docs: {@inheritDoc}