// Path: app/src/main/java/com/hanxi/luarun/SdcardHelper.java
// public class SdcardHelper {
//     private static String  SDCARD_DIR;
//     private static String  NOSDCARD_DIR;
// 
//     static public void setDir(String packageName) {
//         SDCARD_DIR = Environment.getExternalStorageDirectory().toString()+"/.luaRun";
//         NOSDCARD_DIR = Environment.getDataDirectory().toString()+packageName+"/.luaRun";
//         if (SdcardHelper.isHasSdcard()) {
//              File destDir = new File(SDCARD_DIR);
//              if (!destDir.exists()) {
//                destDir.mkdirs();
//              }
//         }
//         else {
//             File destDir = new File(NOSDCARD_DIR);
//              if (!destDir.exists()) {
//                destDir.mkdirs();
//              }
//         }
//     }
// 
//     static public boolean isHasSdcard() {
//         String status = Environment.getExternalStorageState();
//           if (status.equals(Environment.MEDIA_MOUNTED)) {
//            return true;
//           } else {
//            return false;
//           }
//     }
// 
//     static public String getWriteDir() {
//         if (SdcardHelper.isHasSdcard()) {
//                return SDCARD_DIR;
//           } else {
//                return NOSDCARD_DIR;
//           }
//     }
// 
//     static public String getFileDirPath(String path) {
//         int last = path.lastIndexOf('/');
//         String fileName = path.substring(0,last);
//         return fileName;
//     }
// 
//     static public String getFileNameFromPath(String path) {
//         int last = path.lastIndexOf('/');
//         String fileName = path.substring(last+1,path.length());
//         return fileName;
//     }
// 
//     static public boolean writeStringToFile(String fileName, String str) {
//         try {
//             File file = new File(fileName);
//             FileOutputStream out;
//             out = new FileOutputStream(file);
//             out.write(str.getBytes());
//             out.close();
//         } catch (FileNotFoundException e) {
//             // TODO Auto-generated catch block
//             e.printStackTrace();
//             return false;
//         } catch (IOException e) {
//             // TODO Auto-generated catch block
//             e.printStackTrace();
//             return false;
//         }
//         return true;
//     }
// 
//     static public StringBuffer getFileToString(String path) {
//         StringBuffer strb = new StringBuffer();
//         FileInputStream in = null;
//         File file = new File(path);
//         try {
//             in = new FileInputStream(file);
//             int len;
//             byte[] buf = new byte[4096];
//             while( (len = in.read(buf))>0 ){
//                 strb.append(new String(buf, 0, len));
//             }
//         } catch (IOException e1) {
//             // TODO Auto-generated catch block
//             e1.printStackTrace();
//         } finally {
//             try {
//                 in.close();
//             } catch (IOException e) {
//                 // TODO Auto-generated catch block
//                 e.printStackTrace();
//             }
//         }
//         return strb;
//     }
// }


import java.io.File;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.hanxi.luarun.R;
import com.hanxi.luarun.SdcardHelper;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.Context;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.Button;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.Toast;
import android.widget.AdapterView.OnItemClickListener;

				suffix, images, path);
		fileListView.setTag("SaveDialogListView");
		fileListView.refreshFileList();
		openLayout.addView(fileListView);
		builder.setView(saveDialogLayout);
		final Dialog dialog = builder.create();
		// dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
		dialog.setTitle(title);
		// 保存按钮事件
		Button saveBtn = (Button) saveDialogLayout.findViewById(R.id.saveBtn);
		saveBtn.setOnClickListener(new View.OnClickListener() {
			@Override
			public void onClick(View view) {
				Context mc = view.getContext();
				try {
					// TODO : save
					EditText editText = (EditText) saveDialogLayout
							.findViewById(R.id.saveFileNameEdit);
					String fileName = editText.getText().toString();
					int end = fileName.length();
					if (end <= 4) {
						fileName += ".lua";
					} else if (!fileName.substring(end - 4, end).equals(".lua")) {
						fileName += ".lua";
					}
					FileSelectView fileListView = (FileSelectView) saveDialogLayout
							.findViewWithTag("SaveDialogListView");
					String path = fileListView.getCurPath();
					fileName = path + "/" + fileName;
					// System.out.println("filename="+fileName);

// Path: app/src/main/java/com/hanxi/luarun/SdcardHelper.java
// public class SdcardHelper {
//     private static String  SDCARD_DIR;
//     private static String  NOSDCARD_DIR;
// 
//     static public void setDir(String packageName) {
//         SDCARD_DIR = Environment.getExternalStorageDirectory().toString()+"/.luaRun";
//         NOSDCARD_DIR = Environment.getDataDirectory().toString()+packageName+"/.luaRun";
//         if (SdcardHelper.isHasSdcard()) {
//              File destDir = new File(SDCARD_DIR);
//              if (!destDir.exists()) {
//                destDir.mkdirs();
//              }
//         }
//         else {
//             File destDir = new File(NOSDCARD_DIR);
//              if (!destDir.exists()) {
//                destDir.mkdirs();
//              }
//         }
//     }
// 
//     static public boolean isHasSdcard() {
//         String status = Environment.getExternalStorageState();
//           if (status.equals(Environment.MEDIA_MOUNTED)) {
//            return true;
//           } else {
//            return false;
//           }
//     }
// 
//     static public String getWriteDir() {
//         if (SdcardHelper.isHasSdcard()) {
//                return SDCARD_DIR;
//           } else {
//                return NOSDCARD_DIR;
//           }
//     }
// 
//     static public String getFileDirPath(String path) {
//         int last = path.lastIndexOf('/');
//         String fileName = path.substring(0,last);
//         return fileName;
//     }
// 
//     static public String getFileNameFromPath(String path) {
//         int last = path.lastIndexOf('/');
//         String fileName = path.substring(last+1,path.length());
//         return fileName;
//     }
// 
//     static public boolean writeStringToFile(String fileName, String str) {
//         try {
//             File file = new File(fileName);
//             FileOutputStream out;
//             out = new FileOutputStream(file);
//             out.write(str.getBytes());
//             out.close();
//         } catch (FileNotFoundException e) {
//             // TODO Auto-generated catch block
//             e.printStackTrace();
//             return false;
//         } catch (IOException e) {
//             // TODO Auto-generated catch block
//             e.printStackTrace();
//             return false;
//         }
//         return true;
//     }
// 
//     static public StringBuffer getFileToString(String path) {
//         StringBuffer strb = new StringBuffer();
//         FileInputStream in = null;
//         File file = new File(path);
//         try {
//             in = new FileInputStream(file);
//             int len;
//             byte[] buf = new byte[4096];
//             while( (len = in.read(buf))>0 ){
//                 strb.append(new String(buf, 0, len));
//             }
//         } catch (IOException e1) {
//             // TODO Auto-generated catch block
//             e1.printStackTrace();
//         } finally {
//             try {
//                 in.close();
//             } catch (IOException e) {
//                 // TODO Auto-generated catch block
//                 e.printStackTrace();
//             }
//         }
//         return strb;
//     }
// }


// Path: app/src/main/java/org/openfiledialog/FileDialog.java
import java.io.File;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.hanxi.luarun.R;
import com.hanxi.luarun.SdcardHelper;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.Context;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.Button;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.Toast;
import android.widget.AdapterView.OnItemClickListener;

				suffix, images, path);
		fileListView.setTag("SaveDialogListView");
		fileListView.refreshFileList();
		openLayout.addView(fileListView);
		builder.setView(saveDialogLayout);
		final Dialog dialog = builder.create();
		// dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
		dialog.setTitle(title);
		// 保存按钮事件
		Button saveBtn = (Button) saveDialogLayout.findViewById(R.id.saveBtn);
		saveBtn.setOnClickListener(new View.OnClickListener() {
			@Override
			public void onClick(View view) {
				Context mc = view.getContext();
				try {
					// TODO : save
					EditText editText = (EditText) saveDialogLayout
							.findViewById(R.id.saveFileNameEdit);
					String fileName = editText.getText().toString();
					int end = fileName.length();
					if (end <= 4) {
						fileName += ".lua";
					} else if (!fileName.substring(end - 4, end).equals(".lua")) {
						fileName += ".lua";
					}
					FileSelectView fileListView = (FileSelectView) saveDialogLayout
							.findViewWithTag("SaveDialogListView");
					String path = fileListView.getCurPath();
					fileName = path + "/" + fileName;
					// System.out.println("filename="+fileName);

					if (SdcardHelper.writeStringToFile(fileName, content)) {
