diff --git a/android/res/values/strings.xml b/android/res/values/strings.xml
index 956b803..27c634c 100644
--- a/android/res/values/strings.xml
+++ b/android/res/values/strings.xml
@@ -18,7 +18,7 @@
- X Resolvendo
- X Conectando
- Connect
+ Em processamento
\ No newline at end of file
diff --git a/android/res/xml/preferences.xml b/android/res/xml/preferences.xml
index 893c119..55bd76f 100644
--- a/android/res/xml/preferences.xml
+++ b/android/res/xml/preferences.xml
@@ -24,19 +24,30 @@
-
+
+
+
+
diff --git a/android/src/br/com/bb/pw3270/PW3270Activity.java b/android/src/br/com/bb/pw3270/PW3270Activity.java
index 18a96dc..a124a6f 100644
--- a/android/src/br/com/bb/pw3270/PW3270Activity.java
+++ b/android/src/br/com/bb/pw3270/PW3270Activity.java
@@ -29,7 +29,7 @@ public class PW3270Activity extends Activity
private WebView view;
private terminal host;
private Activity mainact = this;
- private ProgressDialog dlgProgress;
+ private ProgressDialog dlgSysMessage;
private class terminal extends lib3270
{
@@ -41,14 +41,7 @@ public class PW3270Activity extends Activity
public void hideProgressDialog()
{
- dlgProgress.hide();
- }
-
- public void showProgressDialog(String msg)
- {
- dlgProgress.setMessage(msg);
- Log.v(TAG,msg);
- dlgProgress.show();
+ dlgSysMessage.hide();
}
protected void updateScreen()
@@ -63,12 +56,12 @@ public class PW3270Activity extends Activity
String message[] = res.getStringArray(R.array.program_msg);
try
{
- showProgressDialog(message[id]);
+ dlgSysMessage.setMessage(message[id]);
} catch(Exception e)
{
- Log.e(TAG,e.getLocalizedMessage());
- showProgressDialog("?");
+ dlgSysMessage.setMessage(e.getLocalizedMessage());
}
+ dlgSysMessage.show();
}
return true;
}
@@ -123,11 +116,23 @@ public class PW3270Activity extends Activity
res = getResources();
- dlgProgress = new ProgressDialog(this);
- dlgProgress.setMessage("Aguarde...");
- dlgProgress.setCancelable(false);
-// dlgProgress.show();
+ // Cria dialogo para as mensagems de sistema
+ dlgSysMessage = new ProgressDialog(this);
+ dlgSysMessage.setCancelable(false);
+ dlgSysMessage.setTitle(res.getString(R.string.wait));
+
+ /*
+ dlgSysMessage.setButton(-2, "Desconectar", new DialogInterface.OnClickListener()
+ {
+ public void onClick(DialogInterface dialog, int which)
+ {
+ // TODO Auto-generated method stub
+ }
+
+ });
+ */
+
// Reference:
// http://developer.android.com/reference/android/webkit/WebView.html
view = new WebView(this);
@@ -177,7 +182,7 @@ public class PW3270Activity extends Activity
setContentView(view);
view.loadUrl("file:index.html");
- if(settings.getString("hostname","") != "" && settings.getBoolean("reconnect",false))
+ if(settings.getString("hostname","") != "" && settings.getBoolean("autoconnect",false))
host.connect();
}
diff --git a/android/src/br/com/bb/pw3270/SettingsActivity.java b/android/src/br/com/bb/pw3270/SettingsActivity.java
index e405afb..eb97695 100644
--- a/android/src/br/com/bb/pw3270/SettingsActivity.java
+++ b/android/src/br/com/bb/pw3270/SettingsActivity.java
@@ -1,13 +1,30 @@
package br.com.bb.pw3270;
import android.os.Bundle;
+import android.preference.Preference;
import android.preference.PreferenceFragment;
import android.app.Activity;
public class SettingsActivity extends Activity
{
- public static class SettingsFragment extends PreferenceFragment
+ public static class SettingsFragment extends PreferenceFragment
{
+ private class stringSetting implements Preference.OnPreferenceChangeListener
+ {
+
+ public stringSetting(Preference p)
+ {
+ p.setOnPreferenceChangeListener(this);
+ this.onPreferenceChange(p,null);
+ }
+
+ public boolean onPreferenceChange(Preference p, Object arg1)
+ {
+ p.setSummary(p.getSharedPreferences().getString(p.getKey(),""));
+ return false;
+ }
+ }
+
@Override
public void onCreate(Bundle savedInstanceState)
{
@@ -15,7 +32,14 @@ public class SettingsActivity extends Activity
// Load the preferences from an XML resource
addPreferencesFromResource(R.xml.preferences);
+
+ // Update summary from settings
+ new stringSetting(findPreference("hostname"));
+ new stringSetting(findPreference("port"));
+
}
+
+
}
@Override
diff --git a/android/src/br/com/bb/pw3270/lib3270.java b/android/src/br/com/bb/pw3270/lib3270.java
index 3a6b444..a9bd9a9 100644
--- a/android/src/br/com/bb/pw3270/lib3270.java
+++ b/android/src/br/com/bb/pw3270/lib3270.java
@@ -66,10 +66,9 @@ public class lib3270
{
switch (msg.what)
{
-/*
- case 0: // Connected/Disconnected
+ case 0: // Reconnect
+ connect();
break;
-*/
case 1: // OIA message has changed
showProgramMessage(msg.arg1);
@@ -81,8 +80,15 @@ public class lib3270
break;
case 3: // Popup
- popupMessageInfo popup = (popupMessageInfo) msg.obj;
- showPopupMessage(msg.arg1, popup.title, popup.text, popup.info);
+ if(msg.arg1 == 1 && settings.getBoolean("reconnect",false))
+ {
+ postMessage(0, 1, 0);
+ }
+ else
+ {
+ popupMessageInfo popup = (popupMessageInfo) msg.obj;
+ showPopupMessage(msg.arg1, popup.title, popup.text, popup.info);
+ }
break;
case 4: // erase
@@ -97,12 +103,6 @@ public class lib3270
Log.d(TAG, "ctlr_done");
break;
-/*
- case 6: // recv_data
- procRecvdata(((byteMessage) msg.obj).getMessage(),((byteMessage) msg.obj).getLength());
- break;
-*/
-
case 7: // ready
hideProgressDialog();
break;
@@ -203,7 +203,7 @@ public class lib3270
Log.i(TAG, "Erro ao enviar dados: " + msg);
- postPopup(0, "Erro na comunicação", "Não foi possível enviar dados", msg);
+ postPopup(1, "Desconectado", "Erro de comunicação ao enviar dados", msg);
connected = false;
@@ -257,7 +257,7 @@ public class lib3270
Log.i(TAG, "Erro ao conectar: " + msg);
- postPopup(0, "Erro na conexão", msg, "");
+ postPopup(0, "Erro na conexão", "Não foi possível conectar", msg);
postMessage(0, 0, 0);
@@ -286,14 +286,13 @@ public class lib3270
try
{
- Log.v(TAG,"Aguardando dados...");
sz = inData.read(in, 0, 4096);
} catch (Exception e)
{
String msg = e.getLocalizedMessage();
Log.i(TAG, "Erro ao receber dados do host: " + msg);
- postPopup(0, "Erro na comunicação", "Erro ao receber dados", msg);
+ postPopup(1, "Desconectado", "Erro de comunicação ao receber dados", msg);
connected = false;
sz = -1;
}
--
libgit2 0.21.2