@SuppressWarnings("unchecked")
	public void initComponents() { 
		name = new JTextField(15);
		description = new JTextArea(3, 15);
		description.setLineWrap(true);
		SpinnerListModel hotkeyModel = new SpinnerListModel(new Object[]{"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"});
		hotkey = new JSpinner(hotkeyModel);
		type = new JComboBox<>(ItemType.values());
		DefaultTableModel bonusModel = new DefaultTableModel(null, new String[]{"Type", "Value", "Is percentage?"}) {
			private static final long serialVersionUID = 1L;
			@SuppressWarnings("rawtypes")
			Class[] types = new Class[] { JComboBox.class, Integer.class, Boolean.class };
			@SuppressWarnings("rawtypes")
			public Class getColumnClass(int columnIndex) {
		        return types [columnIndex];
		    }
		};
		bonusTable = new JTable(bonusModel);
		bonusTable.setRowHeight(20);
		TableColumn bonusBoxColumn = bonusTable.getColumnModel().getColumn(0);
		bonusBoxColumn.setCellEditor(new DefaultCellEditor(new JComboBox<BonusType>(BonusType.values())));
		bonusBoxColumn.setCellRenderer(new MyComboBoxRenderer(BonusType.values()));
		DefaultTableModel skillModel = new DefaultTableModel(null, new String[]{"Name", "Description", "Type"}) {
			private static final long serialVersionUID = 1L;
			@SuppressWarnings("rawtypes")
			Class[] types = new Class[] { String.class, String.class, JComboBox.class };
			@SuppressWarnings("rawtypes")
			public Class getColumnClass(int columnIndex) {
		        return types [columnIndex];
		    }
		};
		skillTable = new JTable(skillModel);
		skillTable.setRowHeight(20);
		TableColumn skillBoxColumn = skillTable.getColumnModel().getColumn(2);
		skillBoxColumn.setCellEditor(new DefaultCellEditor(new JComboBox<SkillType>(SkillType.values())));
		skillBoxColumn.setCellRenderer(new MyComboBoxRenderer(SkillType.values()));
		bonusAdd = new JButton("Add");
		bonusRemove = new JButton("Remove");
		skillAdd = new JButton("Add");
		skillRemove = new JButton("Remove");
		listItems = new JList[ItemType.values().length];
		for (int i = 0; i < ItemType.values().length; i++) {
			listItems[i] = new JList<>();
		}
		updateList();
		copyDescription = new JButton("Copy description");
		copyBuy = new JButton("Copy buy description");
		save = new JButton("Save");
		newItem = new JButton("New item");
		removeItem = new JButton("Remove item");
	}