package com.integreight.onesheeld.shields.fragments; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import com.integreight.onesheeld.shields.ShieldFragmentParent; import com.integreight.onesheeld.shields.controller.GlcdShield; import com.integreight.onesheeld.shields.controller.utils.GlcdView; /** * Created by Moustafa Nasr on 6/7/2015. */ public class GlcdFragment extends ShieldFragmentParent<GlcdFragment> { private GlcdView FragmentView; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { FragmentView = new GlcdView(activity,GlcdShield.glcdWidth,GlcdShield.glcdHeight, getControllerTag()); return FragmentView; } private GlcdShield.GlcdEventHandler glcdEventHandler = new GlcdShield.GlcdEventHandler() { @Override public void setView(GlcdView glcdView) { if (canChangeUI() && uiHandler != null) { FragmentView = glcdView; } } @Override public GlcdView getView() { return FragmentView; } }; @Override public void doOnStart() { ((GlcdShield) getApplication().getRunningShields().get(getControllerTag())).setEventHandler(glcdEventHandler); } @Override public void doOnServiceConnected() { initializeFirmata(); } private void initializeFirmata() { if (getApplication().getRunningShields().get(getControllerTag()) == null) { getApplication().getRunningShields().put(getControllerTag(), new GlcdShield(activity, getControllerTag())); } } @Override public void doOnResume() { FragmentView.invalidate(); } }