-/*
- Copyright (C) 2014 Samsung Electronics Polska Sp. z o.o.
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU AFFERO General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
- You may obtain a copy of the License at
-
- http://www.gnu.org/licenses/agpl-3.0.txt
-
- 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, see <http://www.gnu.org/licenses/>.
-*/
-
-package com.samsung.srpol.ui.tabpager;
-
-import com.nhaarman.listviewanimations.appearance.AnimationAdapter;
-import com.nhaarman.listviewanimations.appearance.simple.AlphaInAnimationAdapter;
-import com.samsung.srpol.R;
-import com.samsung.srpol.data.Category;
-import com.samsung.srpol.data.Subcategory;
-import com.samsung.srpol.loader.AppListLoader;
-import com.samsung.srpol.parallax.ParallaxListView;
-import com.samsung.srpol.ui.AppInfoActivity;
-import com.samsung.srpol.ui.PopupActivity;
-
-import android.content.Intent;
-import android.os.Bundle;
-import android.support.v4.app.Fragment;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-import android.view.View.OnClickListener;
-import android.widget.AdapterView;
-import android.widget.ImageButton;
-import android.widget.ImageView;
-import android.widget.LinearLayout;
-import android.widget.ListView;
-import android.widget.TextView;
-import android.widget.AdapterView.OnItemClickListener;
-
-public class PageFragment extends Fragment {
-
- private AppListArrayAdapter mAppListArrayAdapter;
- private Category mCategory;
- private int mPosition;
-
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- mPosition = getArguments() != null ? getArguments().getInt("position") : 0;
- setRetainInstance(true);
- }
-
- @Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container,
- Bundle savedInstanceState) {
- View rootView = inflater.inflate(R.layout.fragment_main, container, false);
-
- LinearLayout headerLayout = (LinearLayout) inflater.inflate(R.layout.header_layout, container, false);
- headerLayout.setLayoutParams(new ListView.LayoutParams(
- ListView.LayoutParams.MATCH_PARENT, ListView.LayoutParams.WRAP_CONTENT));
- if (mCategory == null) {
- if (AppListLoader.getCategories() != null) {
- mCategory = AppListLoader.getCategories().get(mPosition);
- } else {
- return rootView;
- }
- }
- TextView header = (TextView) headerLayout.findViewById(R.id.section_label);
- if (header != null) {
- header.setText(mCategory.getDescription());
- }
-
- TextView headerLabel = (TextView) rootView.findViewById(R.id.header_label);
- if (headerLabel != null) {
- String titleSufix = getActivity().getString(R.string.apps_that);
- headerLabel.setText(titleSufix.concat(mCategory.getHeader()));
- }
-
- //Header icons Click
- LinearLayout groupIcons = (LinearLayout) headerLayout.findViewById(R.id.group_icons);
- for (Subcategory subgroup : mCategory.getSubCategories()) {
- ImageView icon = new ImageView(getActivity());
- icon.setImageDrawable(subgroup.getIconDrawable());
- groupIcons.addView(icon);
- }
-
- //Header More click
- ImageButton moreButton = (ImageButton) headerLayout.findViewById(R.id.legend_btn);
- moreButton.setOnClickListener(new OnClickListener() {
-
- @Override
- public void onClick(View arg0) {
- Intent intent = new Intent(getActivity(), PopupActivity.class);
- intent.putExtra(PopupActivity.POPUP_CATEGORY, mPosition);
- getActivity().startActivity(intent);
- }
- });
-
- // List with applications
- ParallaxListView listview = (ParallaxListView) rootView.findViewById(R.id.listview);
- listview.addParallaxedHeaderView(headerLayout);
- mAppListArrayAdapter = new AppListArrayAdapter(getActivity(), mCategory);
- AnimationAdapter adapter = new AlphaInAnimationAdapter(mAppListArrayAdapter);
- adapter.setAbsListView(listview);
- listview.setAdapter(adapter);
- listview.setOnItemClickListener(new OnItemClickListener() {
-
- @Override
- public void onItemClick(AdapterView<?> parent, View view,
- int positionInAdapter, long id) {
- Intent intent = new Intent(getActivity(), AppInfoActivity.class);
- intent.putExtra(AppInfoActivity.APP_PACKAGE_NAME,
- mAppListArrayAdapter.getItem(positionInAdapter - 1).getAppPackageName());
- getActivity().startActivity(intent);
- }
- });
-
- return rootView;
- }
-
- public void notifyDataSetChanged() {
- mAppListArrayAdapter.notifyDataSetChanged();
- }
-
-}