@Override
  protected void actionPerformed(GuiButton guibutton) {
    if (guibutton.id == 0) {
      handleRequest();
    } else if (guibutton.id == 1) {
      this.exitGui();
    } else if (guibutton.id == 2) {
      this.setSubGui(new GuiAddMacro(mainGui));
    } else if (guibutton.id == 3) {
      NBTTagCompound nbt = mainGui.getDisk().getTagCompound();
      if (nbt == null) {
        mainGui.getDisk().setTagCompound(new NBTTagCompound());
        nbt = mainGui.getDisk().getTagCompound();
      }

      if (!nbt.hasKey("macroList")) {
        NBTTagList list = new NBTTagList();
        nbt.setTag("macroList", list);
      }

      NBTTagList list = nbt.getTagList("macroList");
      NBTTagList listnew = new NBTTagList();

      for (int i = 0; i < list.tagCount(); i++) {
        if (i != selected) {
          listnew.appendTag(list.tagAt(i));
        }
      }
      selected = -1;
      nbt.setTag("macroList", listnew);
    } else if (guibutton.id == 4) {
      if (scroll > 0) {
        scroll--;
      }
    } else if (guibutton.id == 5) {
      scroll++;
    } else {
      super.actionPerformed(guibutton);
    }
  }