private void processEnabled() {
   if (myIsEnabled.asBoolean()) {
     ToolTipManager.sharedInstance().setEnabled(false);
   } else {
     ToolTipManager.sharedInstance().setEnabled(true);
   }
 }
  @Override
  public void eventDispatched(AWTEvent event) {
    if (!myIsEnabled.asBoolean()) return;

    MouseEvent me = (MouseEvent) event;
    Component c = me.getComponent();
    if (me.getID() == MouseEvent.MOUSE_ENTERED) {
      boolean canShow = true;
      if (me.getComponent() != myCurrentComponent) {
        canShow = hideCurrent(me, null, null);
      }
      if (canShow) {
        maybeShowFor(c, me);
      }
    } else if (me.getID() == MouseEvent.MOUSE_EXITED) {
      if (me.getComponent() == myCurrentComponent || me.getComponent() == myQueuedComponent) {
        hideCurrent(me, null, null);
      }
    } else if (me.getID() == MouseEvent.MOUSE_MOVED) {
      if (me.getComponent() == myCurrentComponent || me.getComponent() == myQueuedComponent) {
        if (myCurrentTipUi != null && myCurrentTipUi.wasFadedIn()) {
          if (hideCurrent(me, null, null)) {
            maybeShowFor(c, me);
          }
        } else {
          if (!myCurrentTipIsCentered) {
            myX = me.getX();
            myY = me.getY();
            if (c instanceof JComponent
                && ((JComponent) c).getToolTipText(me) == null
                && (myQueuedTooltip == null || !myQueuedTooltip.isHint())) {
              hideCurrent(
                  me, null,
                  null); // There is no tooltip or hint here, let's proceed it as MOUSE_EXITED
            } else {
              maybeShowFor(c, me);
            }
          }
        }
      } else if (myCurrentComponent == null && myQueuedComponent == null) {
        maybeShowFor(c, me);
      }
    } else if (me.getID() == MouseEvent.MOUSE_PRESSED) {
      if (me.getComponent() == myCurrentComponent) {
        hideCurrent(me, null, null);
      }
    } else if (me.getID() == MouseEvent.MOUSE_DRAGGED) {
      hideCurrent(me, null, null);
    }
  }
 public boolean isChanged() {
   return getCheckBox().isSelected() != myValue.asBoolean();
 }
  public RegistryCheckBox(RegistryValue value, String text, @Nullable String longDescription) {
    super(new JCheckBox(text), longDescription);

    myValue = value;
    getCheckBox().setSelected(myValue.asBoolean());
  }