BrowseFoldersActivity.java :  » UnTagged » squeeze-droid » net » chrislehmann » squeezedroid » activity » Android Open Source

Android Open Source » UnTagged » squeeze droid 
squeeze droid » net » chrislehmann » squeezedroid » activity » BrowseFoldersActivity.java
package net.chrislehmann.squeezedroid.activity;

import net.chrislehmann.squeezedroid.listadapter.FolderListAdapter;
import net.chrislehmann.squeezedroid.model.Folder;
import net.chrislehmann.squeezedroid.model.Item;
import net.chrislehmann.squeezedroid.service.SqueezeService;
import net.chrislehmann.squeezedroid.service.ServiceConnectionManager.SqueezeServiceAwareThread;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;

public class BrowseFoldersActivity extends ItemListActivity {
   private Activity context = this;

   @Override
   public void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);
     runWithService( new SqueezeServiceAwareThread()
     {
        public void runWithService(SqueezeService service)
        {
           getListView().setAdapter( new FolderListAdapter( service, context, getParentItem()  ) );
        }
     });
     
     getListView().setOnItemClickListener( onItemClick );
   }
   
   private OnItemClickListener onItemClick = new OnItemClickListener()
   {
      public void onItemClick(AdapterView<?> parent, View view, int position, long id)
      {
         Item item = (Item) listView.getAdapter().getItem( position );
         if( item instanceof Folder )
         {
            Intent i = new Intent();
            i.setAction( "net.chrislehmann.squeezedroid.action.BrowseFolder" );
            i.setData( Uri.parse( "squeeze:///folder/" + item.getId() ) );
            startActivityForResult( i, SqueezeDroidConstants.RequestCodes.REQUEST_BROWSE );
         }
      }
   };

   protected Folder getParentItem()
   {
      Uri data = getIntent().getData();
      Folder item = null;
      if( data != null && data.getPathSegments().size() >= 2 )
      {
         String type = data.getPathSegments().get( 0 ); 
         
         if( "folder".equalsIgnoreCase( type ) )
         {
            item = new Folder();
            String id = data.getPathSegments().get( 1 );
            item.setId( id );
         }
      }
      return item;
   }
}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.