Android Open Source - Munin-for-Android Adapter_ Expandable List View






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.adptr;
//from ww  w.  ja v a 2 s .  c om
import android.annotation.SuppressLint;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnLongClickListener;
import android.view.ViewGroup;
import android.widget.BaseExpandableListAdapter;
import android.widget.ImageView;
import android.widget.TextView;

import com.chteuchteu.munin.R;
import com.chteuchteu.munin.hlpr.Util;
import com.chteuchteu.munin.hlpr.Util.Fonts.CustomFont;
import com.chteuchteu.munin.obj.MuninMaster;
import com.chteuchteu.munin.ui.Activity_Servers;

import java.util.List;
import java.util.Map;

public class Adapter_ExpandableListView extends BaseExpandableListAdapter {
  private Activity_Servers activity;
  private Context context;
  private Map<MuninMaster, List<String>> serversCollection;
  private List<MuninMaster> servers;
  
  public Adapter_ExpandableListView(Activity_Servers activity, Context context, List<MuninMaster> servers,
      Map<MuninMaster, List<String>> serversCollection) {
    this.activity = activity;
    this.context = context;
    this.serversCollection = serversCollection;
    this.servers = servers;
  }
  
  public Object getChild(int groupPosition, int childPosition) {
    return serversCollection.get(servers.get(groupPosition)).get(childPosition);
  }
  
  public long getChildId(int groupPosition, int childPosition) {
    return childPosition;
  }
  
  @SuppressLint("InflateParams")
  public View getChildView(final int groupPosition, final int childPosition,
      boolean isLastChild, View convertView, ViewGroup parent) {
    final String server = (String) getChild(groupPosition, childPosition);
    LayoutInflater inflater = activity.getLayoutInflater();
    
    if (convertView == null)
      convertView = inflater.inflate(R.layout.expandable_server, null);
    
    TextView item = (TextView) convertView.findViewById(R.id.server);
    item.setText(server);
    
    // Click action
    convertView.setOnClickListener(new OnClickListener() {
      @Override
      public void onClick(View v) {
        activity.onChildClick(groupPosition, childPosition);
      }
    });
    
    // Long click actions
    convertView.setOnLongClickListener(new OnLongClickListener() {
      @Override
      public boolean onLongClick(View v) {
        return activity.onChildLongClick(groupPosition, childPosition);
      }
    });
    
    return convertView;
  }
  
  @SuppressLint("InflateParams")
  public View getGroupView(final int groupPosition, boolean isExpanded, View convertView, ViewGroup parent) {
    MuninMaster master = (MuninMaster) getGroup(groupPosition);
    if (convertView == null) {
      LayoutInflater infalInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
      convertView = infalInflater.inflate(R.layout.expandable_master, null);
    }
    TextView item = (TextView) convertView.findViewById(R.id.master);
    Util.Fonts.setFont(context, item, CustomFont.Roboto_Medium);
    item.setText(master.getName());
    
    if (master.isAuthNeeded()) {
            convertView.findViewById(R.id.credentials).setVisibility(View.VISIBLE);
            convertView.findViewById(R.id.credentials).setOnClickListener(new OnClickListener() {
                @Override
                public void onClick(View view) {
                    activity.onGroupItemCredentialsClick(groupPosition);
                }
            });
        }
    
    ImageView edit = (ImageView) convertView.findViewById(R.id.edit);
    edit.setOnClickListener(new OnClickListener() {
      public void onClick(View v) {
        activity.onGroupItemOptionsClick(groupPosition);
      }
    });
    return convertView;
  }
  
  public int getChildrenCount(int groupPosition) {
    return serversCollection.get(servers.get(groupPosition)).size();
  }
  
  public Object getGroup(int groupPosition) {
    return servers.get(groupPosition);
  }
  
  public int getGroupCount() {
    return servers.size();
  }
  
  public long getGroupId(int groupPosition) {
    return groupPosition;
  }
  
  public boolean hasStableIds() {
    return true;
  }
  
  public boolean isChildSelectable(int groupPosition, int childPosition) {
    return true;
  }
}




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