Android Open Source - Munin-for-Android Activity_ Servers Edit






From Project

Back to project page Munin-for-Android.

License

The source code is released under:

GNU General Public License

If you think the Android project Munin-for-Android listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.chteuchteu.munin.ui;
/* w  w w  .jav a  2 s  .co  m*/
import android.content.Intent;
import android.graphics.Color;
import android.os.Bundle;
import android.view.MenuItem;
import android.widget.BaseAdapter;
import android.widget.SimpleAdapter;

import com.chteuchteu.munin.R;
import com.chteuchteu.munin.hlpr.Util;
import com.chteuchteu.munin.hlpr.Util.TransitionStyle;
import com.chteuchteu.munin.obj.MuninMaster;
import com.chteuchteu.munin.obj.MuninServer;
import com.mobeta.android.dslv.DragSortListView;
import com.mobeta.android.dslv.SimpleFloatViewManager;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

public class Activity_ServersEdit extends MuninActivity {
  private MuninMaster  master;
  private ArrayList<HashMap<String,String>> list;
  private List<MuninServer>     serversList;
  private List<MuninServer>    deletedServers;
  private DragSortListView       listview;
  
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    
    setContentView(R.layout.activity_servers_edit);
    super.onContentViewSet();
    dh.setDrawerActivity(this);

    actionBar.setTitle(getString(R.string.editServersTitle));
    
    long masterId = getIntent().getExtras().getLong("masterId");
    master = muninFoo.getMasterById((int) masterId);

    if (master == null)
      startActivity(new Intent(this, Activity_Servers.class));
    
    deletedServers = new ArrayList<>();
    serversList = new ArrayList<>();
    
    for (MuninServer s : master.getChildren())
      serversList.add(s);

    listview = (DragSortListView) findViewById(R.id.listview);
    listview.setDropListener(onDrop);
    listview.setRemoveListener(onRemove);
    SimpleFloatViewManager sfvm = new SimpleFloatViewManager(listview);
    sfvm.setBackgroundColor(Color.TRANSPARENT);
    listview.setFloatViewManager(sfvm);
    list = new ArrayList<>();

    updateList(true);
  }
  
  private void updateList(boolean firstTime) {
    list.clear();
    HashMap<String,String> item;
    for (MuninServer s : serversList) {
      item = new HashMap<>();
      item.put("line1", s.getName());
      item.put("line2", s.getServerUrl());
      list.add(item);
    }
    SimpleAdapter sa = new SimpleAdapter(this, list, R.layout.serversedit_list, new String[] { "line1","line2" }, new int[] {R.id.line_a, R.id.line_b});
    
    if (firstTime)
      listview.setAdapter(sa);
    else
      ((BaseAdapter)listview.getAdapter()).notifyDataSetChanged();
  }
  
  private void actionSave() {
    for (MuninServer s: deletedServers) {
      muninFoo.deleteServer(s, true);
      muninFoo.sqlite.dbHlpr.deleteServer(s);
    }
    
    for (int i=0; i<serversList.size(); i++) {
      muninFoo.getServer(serversList.get(i).getServerUrl()).setPosition(i);
      muninFoo.sqlite.dbHlpr.saveMuninServer(serversList.get(i));
    }
    
    muninFoo.resetInstance(this);
  }
  
  private DragSortListView.DropListener onDrop = new DragSortListView.DropListener() {
    @Override
    public void drop(int from, int to) {
      MuninServer item = serversList.get(from);
      serversList.remove(from);
      serversList.add(to, item);
      updateList(false);
    }
  };
  
  private DragSortListView.RemoveListener onRemove = new DragSortListView.RemoveListener() {
    @Override
    public void remove(int which) {
      MuninServer item = serversList.get(which);
      deletedServers.add(item);
      serversList.remove(which);
      updateList(false);
    }
  };

  protected void createOptionsMenu() {
    super.createOptionsMenu();

    getMenuInflater().inflate(R.menu.serversedit, menu);
  }
  
  @Override
  public boolean onOptionsItemSelected(MenuItem item) {
    super.onOptionsItemSelected(item);

    Intent intent;
    switch (item.getItemId()) {
      case R.id.menu_revert:
        intent = new Intent(this, Activity_Servers.class);
        intent.putExtra("fromMaster", master.getId());
        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
        startActivity(intent);
        Util.setTransition(context, TransitionStyle.SHALLOWER);
        return true;
      case R.id.menu_save:
        actionSave();
        intent = new Intent(this, Activity_Servers.class);
        intent.putExtra("fromMaster", master.getId());
        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
        startActivity(intent);
        Util.setTransition(context, TransitionStyle.SHALLOWER);
        return true;
    }

    return true;
  }
  
  @Override
  public void onBackPressed() {
    Intent intent = new Intent(this, Activity_Servers.class);
    intent.putExtra("fromMaster", master.getId());
    intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    startActivity(intent);
    Util.setTransition(context, TransitionStyle.SHALLOWER);
  }
}




Java Source Code List

com.chteuchteu.munin.BootReceiver.java
com.chteuchteu.munin.CustomSSLFactory.java
com.chteuchteu.munin.MuninFoo.java
com.chteuchteu.munin.Service_Notifications.java
com.chteuchteu.munin.adptr.Adapter_ExpandableListView.java
com.chteuchteu.munin.adptr.Adapter_GraphView.java
com.chteuchteu.munin.adptr.Adapter_IconList.java
com.chteuchteu.munin.adptr.Adapter_SeparatedList.java
com.chteuchteu.munin.exc.ImportExportWebserviceException.java
com.chteuchteu.munin.exc.NullMuninFooException.java
com.chteuchteu.munin.exc.TrialExpirationDateReached.java
com.chteuchteu.munin.hlpr.BillingService.java
com.chteuchteu.munin.hlpr.DatabaseHelper.java
com.chteuchteu.munin.hlpr.DigestUtils.java
com.chteuchteu.munin.hlpr.DocumentationHelper.java
com.chteuchteu.munin.hlpr.DrawerHelper.java
com.chteuchteu.munin.hlpr.DynazoomHelper.java
com.chteuchteu.munin.hlpr.EncryptionHelper.java
com.chteuchteu.munin.hlpr.GridDownloadHelper.java
com.chteuchteu.munin.hlpr.I18nHelper.java
com.chteuchteu.munin.hlpr.ImportExportHelper.java
com.chteuchteu.munin.hlpr.JSONHelper.java
com.chteuchteu.munin.hlpr.MediaScannerUtil.java
com.chteuchteu.munin.hlpr.NetHelper.java
com.chteuchteu.munin.hlpr.SQLite.java
com.chteuchteu.munin.hlpr.Util.java
com.chteuchteu.munin.obj.AlertsWidget.java
com.chteuchteu.munin.obj.GraphWidget.java
com.chteuchteu.munin.obj.GridItem.java
com.chteuchteu.munin.obj.Grid.java
com.chteuchteu.munin.obj.HTTPResponse_Bitmap.java
com.chteuchteu.munin.obj.HTTPResponse.java
com.chteuchteu.munin.obj.Label.java
com.chteuchteu.munin.obj.MuninMaster.java
com.chteuchteu.munin.obj.MuninPlugin.java
com.chteuchteu.munin.obj.MuninServer.java
com.chteuchteu.munin.obj.SearchResult.java
com.chteuchteu.munin.ui.Activity_About.java
com.chteuchteu.munin.ui.Activity_AlertsPluginSelection.java
com.chteuchteu.munin.ui.Activity_Alerts.java
com.chteuchteu.munin.ui.Activity_GoPremium.java
com.chteuchteu.munin.ui.Activity_GraphView.java
com.chteuchteu.munin.ui.Activity_Grid.java
com.chteuchteu.munin.ui.Activity_Grids.java
com.chteuchteu.munin.ui.Activity_Label.java
com.chteuchteu.munin.ui.Activity_Labels.java
com.chteuchteu.munin.ui.Activity_Main.java
com.chteuchteu.munin.ui.Activity_Notifications.java
com.chteuchteu.munin.ui.Activity_Plugins.java
com.chteuchteu.munin.ui.Activity_Server.java
com.chteuchteu.munin.ui.Activity_ServersEdit.java
com.chteuchteu.munin.ui.Activity_Servers.java
com.chteuchteu.munin.ui.Activity_Settings.java
com.chteuchteu.munin.ui.HackyDrawerLayout.java
com.chteuchteu.munin.ui.MuninActivity.java
com.chteuchteu.munin.wdget.Widget_AlertsWidget_Configure.java
com.chteuchteu.munin.wdget.Widget_AlertsWidget_ViewsFactory.java
com.chteuchteu.munin.wdget.Widget_AlertsWidget_WidgetProvider.java
com.chteuchteu.munin.wdget.Widget_AlertsWidget_WidgetService.java
com.chteuchteu.munin.wdget.Widget_GraphWidget_Configure.java
com.chteuchteu.munin.wdget.Widget_GraphWidget_WidgetProvider.java
com.mobeta.android.dslv.DragSortController.java
com.mobeta.android.dslv.DragSortCursorAdapter.java
com.mobeta.android.dslv.DragSortItemViewCheckable.java
com.mobeta.android.dslv.DragSortItemView.java
com.mobeta.android.dslv.DragSortListView.java
com.mobeta.android.dslv.ResourceDragSortCursorAdapter.java
com.mobeta.android.dslv.SimpleDragSortCursorAdapter.java
com.mobeta.android.dslv.SimpleFloatViewManager.java
org.taptwo.android.widget.CircleFlowIndicator.java
org.taptwo.android.widget.FlowIndicator.java
org.taptwo.android.widget.TitleFlowIndicator.java
org.taptwo.android.widget.TitleProvider.java
org.taptwo.android.widget.ViewFlow.java
uk.co.senab.photoview.Compat.java
uk.co.senab.photoview.IPhotoView.java
uk.co.senab.photoview.PhotoViewAttacher.java
uk.co.senab.photoview.PhotoView.java
uk.co.senab.photoview.SDK16.java
uk.co.senab.photoview.ScrollerProxy.java
uk.co.senab.photoview.VersionedGestureDetector.java