// Path: app/src/main/java/com/github/zzwwws/rxzhihudaily/model/entities/TopicWrapper.java
// @JsonInclude(JsonInclude.Include.NON_NULL)
// @JsonPropertyOrder({
//     "color",
//     "thumbnail",
//     "description",
//     "id",
//     "name"
// })
// public class TopicWrapper {
// 
//     @JsonProperty("color")
//     private Integer color;
//     @JsonProperty("thumbnail")
//     private String thumbnail;
//     @JsonProperty("description")
//     private String description;
//     @JsonProperty("id")
//     private Integer id;
//     @JsonProperty("name")
//     private String name;
//     @JsonIgnore
//     private Map<String, Object> additionalProperties = new HashMap<String, Object>();
// 
//     /**
//      * 
//      * @return
//      *     The color
//      */
//     @JsonProperty("color")
//     public Integer getColor() {
//         return color;
//     }
// 
//     /**
//      * 
//      * @param color
//      *     The color
//      */
//     @JsonProperty("color")
//     public void setColor(Integer color) {
//         this.color = color;
//     }
// 
//     /**
//      * 
//      * @return
//      *     The thumbnail
//      */
//     @JsonProperty("thumbnail")
//     public String getThumbnail() {
//         return thumbnail;
//     }
// 
//     /**
//      * 
//      * @param thumbnail
//      *     The thumbnail
//      */
//     @JsonProperty("thumbnail")
//     public void setThumbnail(String thumbnail) {
//         this.thumbnail = thumbnail;
//     }
// 
//     /**
//      * 
//      * @return
//      *     The description
//      */
//     @JsonProperty("description")
//     public String getDescription() {
//         return description;
//     }
// 
//     /**
//      * 
//      * @param description
//      *     The description
//      */
//     @JsonProperty("description")
//     public void setDescription(String description) {
//         this.description = description;
//     }
// 
//     /**
//      * 
//      * @return
//      *     The id
//      */
//     @JsonProperty("id")
//     public Integer getId() {
//         return id;
//     }
// 
//     /**
//      * 
//      * @param id
//      *     The id
//      */
//     @JsonProperty("id")
//     public void setId(Integer id) {
//         this.id = id;
//     }
// 
//     /**
//      * 
//      * @return
//      *     The name
//      */
//     @JsonProperty("name")
//     public String getName() {
//         return name;
//     }
// 
//     /**
//      * 
//      * @param name
//      *     The name
//      */
//     @JsonProperty("name")
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     @JsonAnyGetter
//     public Map<String, Object> getAdditionalProperties() {
//         return this.additionalProperties;
//     }
// 
//     @JsonAnySetter
//     public void setAdditionalProperty(String name, Object value) {
//         this.additionalProperties.put(name, value);
//     }
// 
// }
// 
// Path: app/src/main/java/com/github/zzwwws/rxzhihudaily/presenter/infr/RecyclerOnItemClickListener.java
// public interface RecyclerOnItemClickListener {
// 
//     void onItemClickListener(View v, Object obj);
// }


import android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import com.github.zzwwws.rxzhihudaily.R;
import com.github.zzwwws.rxzhihudaily.model.entities.TopicWrapper;
import com.github.zzwwws.rxzhihudaily.presenter.infr.RecyclerOnItemClickListener;
import java.util.List;
import butterknife.Bind;
import butterknife.ButterKnife;
import butterknife.OnClick;
import de.hdodenhof.circleimageview.CircleImageView;
    }

    @Override
    public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
        if (holder instanceof MenuViewHolder) {
            MenuViewHolder menuViewHolder = (MenuViewHolder) holder;
            menuViewHolder.rowText.setText(mTopics.get(position - 1).getName());
            menuViewHolder.rowIcon.setImageResource(R.drawable.menu_follow);
            menuViewHolder.rowText.setTag(mTopics.get(position - 1));
        }
    }

    @Override
    public int getItemViewType(int position) {
        if (isPositionHeader(position))
            return TYPE_HEADER;

        return TYPE_TOPICS;
    }

    @Override
    public int getItemCount() {
        return mTopics.size() + 1;
    }

    private boolean isPositionHeader(int position) {
        return position == 0;
    }

    @Override
// Path: app/src/main/java/com/github/zzwwws/rxzhihudaily/model/entities/TopicWrapper.java
// @JsonInclude(JsonInclude.Include.NON_NULL)
// @JsonPropertyOrder({
//     "color",
//     "thumbnail",
//     "description",
//     "id",
//     "name"
// })
// public class TopicWrapper {
// 
//     @JsonProperty("color")
//     private Integer color;
//     @JsonProperty("thumbnail")
//     private String thumbnail;
//     @JsonProperty("description")
//     private String description;
//     @JsonProperty("id")
//     private Integer id;
//     @JsonProperty("name")
//     private String name;
//     @JsonIgnore
//     private Map<String, Object> additionalProperties = new HashMap<String, Object>();
// 
//     /**
//      * 
//      * @return
//      *     The color
//      */
//     @JsonProperty("color")
//     public Integer getColor() {
//         return color;
//     }
// 
//     /**
//      * 
//      * @param color
//      *     The color
//      */
//     @JsonProperty("color")
//     public void setColor(Integer color) {
//         this.color = color;
//     }
// 
//     /**
//      * 
//      * @return
//      *     The thumbnail
//      */
//     @JsonProperty("thumbnail")
//     public String getThumbnail() {
//         return thumbnail;
//     }
// 
//     /**
//      * 
//      * @param thumbnail
//      *     The thumbnail
//      */
//     @JsonProperty("thumbnail")
//     public void setThumbnail(String thumbnail) {
//         this.thumbnail = thumbnail;
//     }
// 
//     /**
//      * 
//      * @return
//      *     The description
//      */
//     @JsonProperty("description")
//     public String getDescription() {
//         return description;
//     }
// 
//     /**
//      * 
//      * @param description
//      *     The description
//      */
//     @JsonProperty("description")
//     public void setDescription(String description) {
//         this.description = description;
//     }
// 
//     /**
//      * 
//      * @return
//      *     The id
//      */
//     @JsonProperty("id")
//     public Integer getId() {
//         return id;
//     }
// 
//     /**
//      * 
//      * @param id
//      *     The id
//      */
//     @JsonProperty("id")
//     public void setId(Integer id) {
//         this.id = id;
//     }
// 
//     /**
//      * 
//      * @return
//      *     The name
//      */
//     @JsonProperty("name")
//     public String getName() {
//         return name;
//     }
// 
//     /**
//      * 
//      * @param name
//      *     The name
//      */
//     @JsonProperty("name")
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     @JsonAnyGetter
//     public Map<String, Object> getAdditionalProperties() {
//         return this.additionalProperties;
//     }
// 
//     @JsonAnySetter
//     public void setAdditionalProperty(String name, Object value) {
//         this.additionalProperties.put(name, value);
//     }
// 
// }
// 
// Path: app/src/main/java/com/github/zzwwws/rxzhihudaily/presenter/infr/RecyclerOnItemClickListener.java
// public interface RecyclerOnItemClickListener {
// 
//     void onItemClickListener(View v, Object obj);
// }


// Path: app/src/main/java/com/github/zzwwws/rxzhihudaily/presenter/adapter/MenuAdapter.java
import android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import com.github.zzwwws.rxzhihudaily.R;
import com.github.zzwwws.rxzhihudaily.model.entities.TopicWrapper;
import com.github.zzwwws.rxzhihudaily.presenter.infr.RecyclerOnItemClickListener;
import java.util.List;
import butterknife.Bind;
import butterknife.ButterKnife;
import butterknife.OnClick;
import de.hdodenhof.circleimageview.CircleImageView;

    }

    @Override
    public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
        if (holder instanceof MenuViewHolder) {
            MenuViewHolder menuViewHolder = (MenuViewHolder) holder;
            menuViewHolder.rowText.setText(mTopics.get(position - 1).getName());
            menuViewHolder.rowIcon.setImageResource(R.drawable.menu_follow);
            menuViewHolder.rowText.setTag(mTopics.get(position - 1));
        }
    }

    @Override
    public int getItemViewType(int position) {
        if (isPositionHeader(position))
            return TYPE_HEADER;

        return TYPE_TOPICS;
    }

    @Override
    public int getItemCount() {
        return mTopics.size() + 1;
    }

    private boolean isPositionHeader(int position) {
        return position == 0;
    }

    @Override
    public void setOnItemClickListener(RecyclerOnItemClickListener listener) {