Java tutorial
/************************************************************************************* * Product: SFAndroid (Sales Force Mobile) * * This program is free software; you can redistribute it and/or modify it * * under the terms version 2 of the GNU General Public License as published * * by the Free Software Foundation. This program is distributed in the hope * * that it will be useful, but WITHOUT ANY WARRANTY; without even the implied * * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * * See the GNU General Public License for more details. * * You should have received a copy of the GNU General Public License along * * with this program; if not, write to the Free Software Foundation, Inc., * * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. * * For the text or an alternative of this public license, you may reach us * * Copyright (C) 2012-2014 E.R.P. Consultores y Asociados, S.A. All Rights Reserved. * * Contributor(s): Yamel Senih www.erpconsultoresyasociados.com * *************************************************************************************/ package org.spinsuite.view; import org.spinsuite.adapters.MenuAdapter; import org.spinsuite.base.DB; import org.spinsuite.base.R; import org.spinsuite.util.ActivityParameter; import org.spinsuite.util.DisplayMenuItem; import org.spinsuite.util.DisplayRecordItem; import org.spinsuite.util.LoadActionMenu; import org.spinsuite.view.lookup.LookupMenu; import android.app.ActionBar; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.support.v4.app.FragmentActivity; import android.view.View; import android.widget.AdapterView; import android.widget.ListView; /** * @author <a href="mailto:yamelsenih@gmail.com">Yamel Senih</a> * */ public class LV_Menu extends FragmentActivity { /** List */ private ListView menu; /** Database Connection */ private DB conn = null; /** Parameter */ private ActivityParameter param = null; /** Activity No */ protected int m_ActivityNo = 0; /** Current Bundle */ private Bundle currentOptionBundle = null; /** Current Option Menu */ private DisplayMenuItem currentMenuItem = null; /** Lookup Menu */ private LookupMenu lookupMenu = null; /** Load Action Menu */ private LoadActionMenu loadActionMenu = null;; public void onCreate(Bundle icicle) { super.onCreate(icicle); super.setContentView(R.layout.v_menu); Bundle bundle = getIntent().getExtras(); if (bundle != null) { param = (ActivityParameter) bundle.getParcelable("Param"); } if (param == null) param = new ActivityParameter(); // m_ActivityNo = param.getSFA_Menu_ID(); ActionBar actionBar = getActionBar(); actionBar.setDisplayHomeAsUpEnabled(true); // new Menu lookupMenu = new LookupMenu(getApplicationContext(), LookupMenu.MAIN_MENU, conn); // menu = (ListView) findViewById(R.id.lv_Menu); // Load Data load(); // Action Menu Loader loadActionMenu = new LoadActionMenu(this, false); // menu.setOnItemClickListener(new ListView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> adapter, View arg1, int position, long arg3) { DisplayMenuItem item = (DisplayMenuItem) adapter.getItemAtPosition(position); param.setParent_ID(item.getSFA_Menu_ID()); param.setActivityMenu_ID(item.getActivityMenu_ID()); // Load from Action currentOptionBundle = loadActionMenu.loadAction(item, param); currentMenuItem = item; } }); } /** * Load Data * @author <a href="mailto:yamelsenih@gmail.com">Yamel Senih</a> 04/02/2014, 17:39:01 * @return * @return boolean */ private boolean load() { // Load Children lookupMenu.loadChildren(param.getParent_ID()); // MenuAdapter mi_adapter = new MenuAdapter(this, R.layout.i_menu, lookupMenu.getData()); mi_adapter.setDropDownViewResource(R.layout.i_menu); menu.setAdapter(mi_adapter); // return true; } @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { if (resultCode == Activity.RESULT_OK) { if (data != null) { Bundle bundle = data.getExtras(); DisplayRecordItem item = (DisplayRecordItem) bundle.getParcelable("Record"); // if a record is not null if (item != null) { int record_ID = item.getRecord_ID(); currentOptionBundle.putInt("Record_ID", record_ID); loadActionMenu.loadActivityWithAction(currentMenuItem, currentOptionBundle); } } } } }