diff --git a/app/src/main/java/com/example/dcav2gui/WorkerInterface.java b/app/src/main/java/com/example/dcav2gui/WorkerInterface.java index 871d7d6..9f201cf 100644 --- a/app/src/main/java/com/example/dcav2gui/WorkerInterface.java +++ b/app/src/main/java/com/example/dcav2gui/WorkerInterface.java @@ -838,6 +838,42 @@ public class WorkerInterface { builder.show(); } + + public static void sendSwitchQuoteCurrencyCall(String exchange, String pair, Context context) { + AlertDialog.Builder builder = new AlertDialog.Builder(context); + builder.setTitle("Enter new quote currency "+ exchange); + + final EditText input = new EditText(context); + input.setInputType(InputType.TYPE_CLASS_TEXT); + input.setTextAlignment(View.TEXT_ALIGNMENT_CENTER); + builder.setView(input); + + builder.setPositiveButton("Change quote currency", (dialog, which) -> { + final String newQuoteCurrency = input.getText().toString(); + new Thread(() -> { + try { + JsonObject response = WorkerInterface.switchQuoteCurrency(exchange, pair, newQuoteCurrency,true); + new Handler(Looper.getMainLooper()).post(() -> { + showToggleDialog(response, context); + }); + } catch (IOException e) { + e.printStackTrace(); + // Show an error dialog on the main thread + new Handler(Looper.getMainLooper()).post(() -> { + AlertDialog.Builder errorBuilder = new AlertDialog.Builder(context); + errorBuilder.setTitle("Error"); + errorBuilder.setMessage("Failed to switch quote currency: " + e.getMessage()); + errorBuilder.setPositiveButton("OK", null); + errorBuilder.show(); + }); + } + }).start(); + }); + + builder.setNegativeButton("Cancel", (dialog, which) -> dialog.cancel()); + builder.show(); + } + public static void fetchWorkerStats(String exchange, String pair, Context context) { new Thread(() -> { try { diff --git a/app/src/main/java/com/example/dcav2gui/ui/exchanges/BinanceFragment.java b/app/src/main/java/com/example/dcav2gui/ui/exchanges/BinanceFragment.java index a1169ac..6bb1fb7 100644 --- a/app/src/main/java/com/example/dcav2gui/ui/exchanges/BinanceFragment.java +++ b/app/src/main/java/com/example/dcav2gui/ui/exchanges/BinanceFragment.java @@ -106,7 +106,7 @@ public class BinanceFragment extends Fragment implements WorkerCardAdapter.OnCar System.err.println(pair + " Switch to short option clicked"); return true; } else if (item.getItemId() == R.id.switchQuoteCurrency) { - System.err.println(pair + " Switch quote currency option clicked"); + WorkerInterface.sendSwitchQuoteCurrencyCall("binance", pair, getContext()); return true; } else if (item.getItemId() == R.id.addSafetyOrders) { System.err.println(pair + " Add safety orders option clicked"); diff --git a/app/src/main/java/com/example/dcav2gui/ui/exchanges/GateioFragment.java b/app/src/main/java/com/example/dcav2gui/ui/exchanges/GateioFragment.java index 602f2cd..41fe1ee 100644 --- a/app/src/main/java/com/example/dcav2gui/ui/exchanges/GateioFragment.java +++ b/app/src/main/java/com/example/dcav2gui/ui/exchanges/GateioFragment.java @@ -69,7 +69,7 @@ public class GateioFragment extends Fragment implements WorkerCardAdapter.OnCard WorkerInterface.fetchWorkerStats("gateio",pair, getContext()); return true; } else if (item.getItemId() == R.id.addTrader) { - System.err.println(pair + " Add trader option clicked"); + WorkerInterface.sendAddTraderCall("gateio",getContext()); return true; } else if (item.getItemId() == R.id.removeTrader) { System.err.println(pair + " Remove trader option clicked"); @@ -99,7 +99,7 @@ public class GateioFragment extends Fragment implements WorkerCardAdapter.OnCard System.err.println(pair + " Switch to short option clicked"); return true; } else if (item.getItemId() == R.id.switchQuoteCurrency) { - System.err.println(pair + " Switch quote currency option clicked"); + WorkerInterface.sendSwitchQuoteCurrencyCall("binance", pair, getContext()); return true; } else if (item.getItemId() == R.id.addSafetyOrders) { System.err.println(pair + " Add safety orders option clicked"); diff --git a/app/src/main/java/com/example/dcav2gui/ui/exchanges/KucoinFragment.java b/app/src/main/java/com/example/dcav2gui/ui/exchanges/KucoinFragment.java index 868c1cf..b3e48a9 100644 --- a/app/src/main/java/com/example/dcav2gui/ui/exchanges/KucoinFragment.java +++ b/app/src/main/java/com/example/dcav2gui/ui/exchanges/KucoinFragment.java @@ -69,7 +69,7 @@ public class KucoinFragment extends Fragment implements WorkerCardAdapter.OnCard WorkerInterface.fetchWorkerStats("kucoin",pair, getContext()); return true; } else if (item.getItemId() == R.id.addTrader) { - System.err.println(pair + " Add trader option clicked"); + WorkerInterface.sendAddTraderCall("kucoin",getContext()); return true; } else if (item.getItemId() == R.id.removeTrader) { System.err.println(pair + " Remove trader option clicked"); @@ -99,7 +99,7 @@ public class KucoinFragment extends Fragment implements WorkerCardAdapter.OnCard System.err.println(pair + " Switch to short option clicked"); return true; } else if (item.getItemId() == R.id.switchQuoteCurrency) { - System.err.println(pair + " Switch quote currency option clicked"); + WorkerInterface.sendSwitchQuoteCurrencyCall("binance", pair, getContext()); return true; } else if (item.getItemId() == R.id.addSafetyOrders) { System.err.println(pair + " Add safety orders option clicked"); diff --git a/app/src/main/java/com/example/dcav2gui/ui/exchanges/OkxFragment.java b/app/src/main/java/com/example/dcav2gui/ui/exchanges/OkxFragment.java index 74b8b2c..84a12d1 100644 --- a/app/src/main/java/com/example/dcav2gui/ui/exchanges/OkxFragment.java +++ b/app/src/main/java/com/example/dcav2gui/ui/exchanges/OkxFragment.java @@ -69,7 +69,7 @@ public class OkxFragment extends Fragment implements WorkerCardAdapter.OnCardLon WorkerInterface.fetchWorkerStats("okex",pair, getContext()); return true; } else if (item.getItemId() == R.id.addTrader) { - System.err.println(pair + " Add trader option clicked"); + WorkerInterface.sendAddTraderCall("okex",getContext()); return true; } else if (item.getItemId() == R.id.removeTrader) { System.err.println(pair + " Remove trader option clicked"); @@ -99,7 +99,7 @@ public class OkxFragment extends Fragment implements WorkerCardAdapter.OnCardLon System.err.println(pair + " Switch to short option clicked"); return true; } else if (item.getItemId() == R.id.switchQuoteCurrency) { - System.err.println(pair + " Switch quote currency option clicked"); + WorkerInterface.sendSwitchQuoteCurrencyCall("binance", pair, getContext()); return true; } else if (item.getItemId() == R.id.addSafetyOrders) { System.err.println(pair + " Add safety orders option clicked");