package julianwi.javainstaller;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.SharedPreferences.Editor;
import android.content.pm.PackageInfo;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
public class CheckPoint implements OnClickListener,
android.content.DialogInterface.OnClickListener {
public String text;
public Boolean installed;
public int id;
public String source;
private Boolean src;
public CheckPoint(String Text, String Source, int Id){
text = Text;
installed = false;
id = Id;
source = Source;
}
public String getPath(){
return MainActivity.sharedP.getString("path"+id, "");
}
public String getSource(){
return MainActivity.sharedP.getString("source"+id, "");
}
@Override
public void onClick(DialogInterface dialog, int which) {
AlertDialog ad = (AlertDialog) dialog;
String value = ((EditText) ad.findViewById(1)).getText().toString();
Editor edit = MainActivity.sharedP.edit();
if(src==false){
edit.putString("path"+id, value);
}
else{
edit.putString("source"+id, value);
}
edit.commit();
MainActivity.ma.update();
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case 0:
Intent intent = new Intent(MainActivity.ma, InstallActivity.class);
Bundle b = new Bundle();
if(((Button) v).getText() == "install"){
b.putInt("packages", 1 << id+1);
//new Install(this);
}
else{
b.putInt("packages", (1 << id+1)+1);
//new UnInstall(this);
}
intent.putExtras(b);
MainActivity.ma.startActivity(intent);
break;
case 1:
src=false;
showalert();
break;
case 2:
src=true;
showalert();
break;
case 3:
Intent intent1 = new Intent(MainActivity.ma, InstallActivity.class);
Bundle b1 = new Bundle();
b1.putInt("packages", 1 << id+1);
intent1.putExtras(b1);
MainActivity.ma.startActivity(intent1);
break;
}
}
public void showalert() {
AlertDialog.Builder alert = new AlertDialog.Builder(MainActivity.context);
alert.setTitle(text);
// Set an EditText view to get user input
final EditText input = new EditText(MainActivity.context);
input.setId(1);
if(src==false){
alert.setMessage("path to install");
input.setText(getPath());
}
else{
alert.setMessage("source file");
input.setText(getSource());
}
alert.setView(input);
alert.setPositiveButton("save", this);
alert.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
// Canceled.
}
});
alert.show();
}
public String getversion(){
String version = "unknown";
if(id == 0){
try {
PackageInfo pInfo = MainActivity.context.getPackageManager().getPackageInfo("jackpal.androidterm", 0);
version = pInfo.versionName;
} catch (Exception e) {
}
}
if(id == 1){
try {
Process p;
p = Runtime.getRuntime().exec(getPath()+"/busybox");
InputStream a = p.getInputStream();
InputStreamReader read = new InputStreamReader(a);
String line = (new BufferedReader(read)).readLine();
if(line == null){
version = "unknown";
}
else{
version = line.split("\\s+")[1];
}
} catch (IOException e) {
}
}
if(id == 2 || id == 3 || id == 4 || id == 5 || id == 6 || id == 7 || id == 9){
File versionfile = new File(getPath()+"/"+Checkforfile.file[id].substring(0, Checkforfile.file[id].length()-7)+".version");
if(versionfile.exists()){
try {
version = new BufferedReader(new InputStreamReader(new FileInputStream(versionfile))).readLine();
} catch (Exception e) {
}
}
}
if(id == 8){
try{
PackageInfo pInfo = MainActivity.context.getPackageManager().getPackageInfo("julianwi.awtpeer", 0);
version = pInfo.versionName;
}
catch(Exception e){
}
}
System.out.println(text+" version = "+version);
return version;
}
}