]> git.zerfleddert.de Git - ms2-fixes/blobdiff - MS2Debounce/src/de/rmdir/ms2debounce/MS2Debounce.java
add load/unload/reload-buttons
[ms2-fixes] / MS2Debounce / src / de / rmdir / ms2debounce / MS2Debounce.java
index 39b4e809f4673a7ac456979ee34d6d6ccde806fe..3b4804cf67c506594010ac58aa459a99cfc1dd31 100644 (file)
@@ -7,27 +7,114 @@ import android.os.Bundle;
 import android.content.Intent;
 import android.content.DialogInterface;
 import android.widget.TextView;
+import android.widget.Button;
+import android.widget.CheckBox;
+import android.view.View;
 import android.view.Menu;
 import android.view.MenuInflater;
 import android.view.MenuItem;
 
 public class MS2Debounce extends Activity
 {
+       private DebounceModuleHelper module;
+
+       public MS2Debounce()
+       {
+               super();
+               module = new DebounceModuleHelper(this);
+       }
+
        @Override
        public void onCreate(Bundle savedInstanceState)
        {
                super.onCreate(savedInstanceState);
 
-               DebounceModuleHelper module = new DebounceModuleHelper(this);
+               //if (!module.isLoaded()) {
+               //      module.loadModule();
+               //}
+
+               setContentView(R.layout.main);
+               updateUI();
+       }
+
+       private void updateUI() {
+               TextView text = (TextView)findViewById(R.id.text);
+
+               disableUI();
+
+               boolean loaded = module.isLoaded();
+               boolean safe_to_load = module.is_safe_to_load();
+
+               text.setText("Current status:\n\nModule loaded: " + loaded + "\ndebounce_delay: " + module.getDelay() + "ms\nsafe_to_load: " + safe_to_load);
+
+               Button reload = (Button)findViewById(R.id.reload);
+               if (loaded) {
+                       reload.setEnabled(true);
+               } else {
+                       reload.setEnabled(false);
+               }
+
+               Button load = (Button)findViewById(R.id.load);
+               if (loaded) {
+                       load.setEnabled(false);
+               } else {
+                       load.setEnabled(true);
+               }
+
+               Button unload = (Button)findViewById(R.id.unload);
+               if (loaded) {
+                       unload.setEnabled(true);
+               } else {
+                       unload.setEnabled(false);
+               }
 
+               CheckBox on_boot = (CheckBox)findViewById(R.id.on_boot);
+               if (safe_to_load) {
+                       on_boot.setEnabled(true);
+               } else {
+                       on_boot.setEnabled(false);
+               }
+       }
+
+       private void disableUI() {
+               Button reload = (Button)findViewById(R.id.reload);
+               reload.setEnabled(false);
+
+               Button load = (Button)findViewById(R.id.load);
+               load.setEnabled(false);
+
+               Button unload = (Button)findViewById(R.id.unload);
+               unload.setEnabled(false);
+
+               CheckBox on_boot = (CheckBox)findViewById(R.id.on_boot);
+               on_boot.setEnabled(false);
+       }
+
+       public void loadModule(View view) {
+               disableUI();
                if (!module.isLoaded()) {
                        module.loadModule();
                }
+               updateUI();
+       }
 
-               setContentView(R.layout.main);
+       public void unloadModule(View view) {
+               disableUI();
+               if (module.isLoaded()) {
+                       module.unloadModule();
+               }
+               updateUI();
+       }
 
-               TextView text = (TextView)findViewById(R.id.text);
-               text.setText("You will soon be able to set the debounce_delay here.\nModule loaded: " + module.isLoaded() + "\ndebounce_delay: " + module.getDelay() + "ms\nsafe_to_load: " + module.is_safe_to_load());
+       public void reloadModule(View view) {
+               disableUI();
+               if (module.isLoaded()) {
+                       module.unloadModule();
+               }
+               if (!module.isLoaded()) {
+                       module.loadModule();
+               }
+               updateUI();
        }
 
        @Override
Impressum, Datenschutz