package gdxstudio.panel;
import gdxstudio.Style;
import java.awt.Dimension;
import java.awt.dnd.DragSource;
import java.awt.event.ActionEvent;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import javax.swing.JComboBox;
import javax.swing.JList;
import javax.swing.JPanel;
import javax.swing.event.ListSelectionEvent;
import scene2d.Asset;
import web.laf.lite.widget.CenterPanel;
final public class AssetPanel extends BaseList {
private static final long serialVersionUID = 1L;
private static String[] comboText = new String[]{"Font", "Texture", "Animation", "Music", "Sound", "Particle",
"Model"};
private static JComboBox<String> combo = new JComboBox<String>(comboText);
String[] btns = new String[]{
"New File", "newfile", "Delete", "trash",
};
DragSource dragSource = new DragSource();
public AssetPanel(){
super("Assets", "");
list.setLayoutOrientation(JList.HORIZONTAL_WRAP);
JPanel pan = Style.createButtonToolBar(this, btns);
combo.setPreferredSize(new Dimension(145, 16));
pan.add(new CenterPanel(combo, false, true));
add(pan);
add(scrollPane);
combo.addItemListener(new ItemListener(){
@Override
public void itemStateChanged(ItemEvent e) {
updateAsset();
}
});
}
public void updateAsset(){
listModel2.clear();
switch(combo.getSelectedItem().toString()){
case "Font":
for(String names: Asset.fontMap.keys())
listModel2.addElement(names);
break;
case "Texture":
for(String names: Asset.texMap.keys())
listModel2.addElement(names);
break;
case "Music":
for(String names: Asset.musicMap.keys())
listModel2.addElement(names);
break;
case "Sound":
for(String names: Asset.soundMap.keys())
listModel2.addElement(names);
break;
//case "Particle":
// for(String names: Asset.musicMap.keys())
// assetModel.addElement(names);
// break;
case "Model":
for(Object names: Asset.modelMap.toArray())
listModel2.addElement(names.toString());
break;
}
}
@Override
public void actionPerformed(ActionEvent event) {
this.setVisible(false);
}
@Override
public void valueChanged(ListSelectionEvent arg0) {
// TODO Auto-generated method stub
}
}