示例#1
0
  public void addActions(final QuickAction qa) {
    final ActionItem replaceBaseLayer = new ActionItem();

    replaceBaseLayer.setTitle(context.getResources().getString(R.string.replace_base_layer));
    replaceBaseLayer.setIcon(
        context.getResources().getDrawable(R.drawable.layer_replace_base_layer));
    replaceBaseLayer.setOnClickListener(
        new OnClickListener() {
          @Override
          public void onClick(View v) {
            listener.onAddLayer(AddLayerActionListener.REPLACE_BASE_LAYER);
            qa.dismiss();
          }
        });

    qa.addActionItem(replaceBaseLayer);

    // final ActionItem addRasterLayer = new ActionItem();
    //
    // addRasterLayer.setTitle(context.getResources().getString(
    // R.string.add_raster_layer));
    // addRasterLayer.setIcon(context.getResources().getDrawable(
    // R.drawable.layer_raster_add));
    // addRasterLayer.setOnClickListener(new OnClickListener() {
    // @Override
    // public void onClick(View v) {
    // listener.onAddLayer(AddLayerActionListener.ADD_RASTER_LAYER);
    // }
    // });
    //
    // qa.addActionItem(addRasterLayer);

    final ActionItem addVectorLayer = new ActionItem();

    addVectorLayer.setTitle(context.getResources().getString(R.string.add_vector_from_disk));
    addVectorLayer.setIcon(context.getResources().getDrawable(R.drawable.layer_vector_add));
    addVectorLayer.setOnClickListener(
        new OnClickListener() {
          @Override
          public void onClick(View v) {
            listener.onAddLayer(AddLayerActionListener.ADD_VECTOR_LAYER);
            qa.dismiss();
          }
        });

    qa.addActionItem(addVectorLayer);

    final ActionItem addRemoteLayer = new ActionItem();

    addRemoteLayer.setTitle(context.getResources().getString(R.string.add_vector_remote));
    addRemoteLayer.setIcon(context.getResources().getDrawable(R.drawable.layer_vector_add_remote));
    addRemoteLayer.setOnClickListener(
        new OnClickListener() {
          @Override
          public void onClick(View v) {
            listener.onAddLayer(AddLayerActionListener.ADD_REMOTE_VECTOR_LAYER);
            qa.dismiss();
          }
        });

    qa.addActionItem(addRemoteLayer);
  }
  public boolean onClick(int position, final Object p, final View anchor) {
    try {
      final QuickAction qa = new QuickAction(anchor);

      final ActionItem showMapItem = new ActionItem();

      showMapItem.setTitle(activity.getResources().getString(R.string.show_map));
      showMapItem.setIcon(activity.getResources().getDrawable(R.drawable.bt_poi_s));
      showMapItem.setOnClickListener(getCenterOnMapListener((JTSFeature) p, qa));

      qa.addActionItem(showMapItem);

      // final ActionItem startRouteItem = new ActionItem();
      //
      // startRouteItem.setTitle(activity.getResources().getString(
      // R.string.NameFinderActivity_1));
      // startRouteItem.setIcon(activity.getResources().getDrawable(
      // R.drawable.bt_start_s));
      // startRouteItem.setOnClickListener(new OnClickListener() {
      // @Override
      // public void onClick(View v) {
      // try {
      // RouteManager.getInstance().getRegisteredRoute()
      // .setStartPoint(p);
      // Toast.makeText(
      // activity,
      // activity.getResources().getString(
      // R.string.start_point),
      // Toast.LENGTH_LONG).show();
      // checkCalculateRoute();
      // qa.dismiss();
      // } catch (Exception e) {
      // Log.e("", "exception on start route");
      // }
      // }
      // });
      //
      // qa.addActionItem(startRouteItem);
      //
      // final ActionItem finishRouteItem = new ActionItem();
      //
      // finishRouteItem.setTitle(activity.getResources().getString(
      // R.string.NameFinderActivity_2));
      // finishRouteItem.setIcon(activity.getResources().getDrawable(
      // R.drawable.bt_finish_s));
      // finishRouteItem.setOnClickListener(new OnClickListener() {
      // @Override
      // public void onClick(View v) {
      // try {
      // // TO HERE
      // RouteManager.getInstance().getRegisteredRoute()
      // .setEndPoint(p);
      // Toast.makeText(
      // activity,
      // activity.getResources().getString(
      // R.string.end_point), Toast.LENGTH_LONG)
      // .show();
      // checkCalculateRoute();
      // qa.dismiss();
      // } catch (Exception e) {
      // Log.e("", "Exceptoin on finish route");
      // }
      // }
      // });
      //
      // qa.addActionItem(finishRouteItem);
      //
      // final ActionItem shareItem = new ActionItem();
      //
      // shareItem.setTitle(activity.getResources()
      // .getString(R.string.share));
      // shareItem.setIcon(activity.getResources().getDrawable(
      // R.drawable.bt_shareicon_s));
      // shareItem.setOnClickListener(new OnClickListener() {
      // @Override
      // public void onClick(View v) {
      // try {
      // // GEO SHARE
      // ShareAnyPOITask sh = new ShareAnyPOITask(activity, p);
      // sh.execute();
      // qa.dismiss();
      // } catch (Exception e) {
      // Log.e("", "Error on share");
      // }
      // }
      // });
      //
      // qa.addActionItem(shareItem);
      //
      // addBookmark(p, qa);
      //
      // if (findNear) {
      //
      // final ActionItem poisNearItem = new ActionItem();
      //
      // poisNearItem.setTitle(activity.getResources().getString(
      // R.string.find_pois_near));
      // poisNearItem.setIcon(activity.getResources().getDrawable(
      // R.drawable.bt_around_poi_s));
      // poisNearItem.setOnClickListener(new OnClickListener() {
      // @Override
      // public void onClick(View v) {
      // try {
      // // FIND POIS NEAR
      // InvokePOIIntents.findPOISNear(activity,
      // p.toShortString(6));
      // qa.dismiss();
      // } catch (Exception e) {
      // Log.e("", "Error on poisNear");
      // }
      // }
      // });
      //
      // qa.addActionItem(poisNearItem);
      //
      // final ActionItem streetsNearItem = new ActionItem();
      //
      // streetsNearItem.setTitle(activity.getResources().getString(
      // R.string.find_streets_near));
      // streetsNearItem.setIcon(activity.getResources().getDrawable(
      // R.drawable.bt_around_adress_s));
      // streetsNearItem.setOnClickListener(new OnClickListener() {
      // @Override
      // public void onClick(View v) {
      // try {
      // // FIND STREETS
      // InvokePOIIntents.findStreetsNear(activity,
      // p.toShortString(2));
      // qa.dismiss();
      // } catch (Exception e) {
      // Log.e("", "Error on streets near");
      // }
      // }
      // });
      //
      // qa.addActionItem(streetsNearItem);
      // }
      //
      // final ActionItem streetviewItem = new ActionItem();
      //
      // streetviewItem.setTitle(activity.getResources().getString(
      // R.string.street_view));
      // streetviewItem.setIcon(activity.getResources().getDrawable(
      // R.drawable.bt_streetview_s));
      // streetviewItem.setOnClickListener(new OnClickListener() {
      // @Override
      // public void onClick(View v) {
      // try {
      // // STREET VIEW
      // ShowStreetViewFromPoint s = new ShowStreetViewFromPoint(
      // activity, p);
      // s.execute();
      // qa.dismiss();
      // } catch (Exception e) {
      // Log.e("", "Error on show street view");
      // }
      // }
      // });
      //
      // qa.addActionItem(streetviewItem);
      //
      // if (p instanceof OsmPOI) {
      // final OsmPOI poi = (OsmPOI) p;
      // if (poi.getPhone() != null && poi.getPhone().length() > 0) {
      // final ActionItem callItem = new ActionItem();
      //
      // callItem.setTitle(activity.getResources().getString(
      // R.string.call_number)
      // + " [" + poi.getPhone() + "]");
      // callItem.setIcon(activity.getResources().getDrawable(
      // R.drawable.bt_call_s));
      // callItem.setOnClickListener(new OnClickListener() {
      // @Override
      // public void onClick(View v) {
      // try {
      // InvokeIntents.invokeCallActivity(activity,
      // poi.getPhone());
      // qa.dismiss();
      // } catch (Exception e) {
      // Log.e("", "Error on call");
      // }
      // }
      // });
      //
      // qa.addActionItem(callItem);
      // }
      //
      // // WIKI
      // if (poi.getWikipedia() != null
      // && poi.getWikipedia().length() > 0) {
      // final ActionItem wikiItem = new ActionItem();
      //
      // wikiItem.setTitle(activity.getResources().getString(
      // R.string.show_wiki)
      // /* + " [" + poi.getWikipedia() + "]" */);
      // wikiItem.setIcon(activity.getResources().getDrawable(
      // R.drawable.bt_wikipedia_s));
      // wikiItem.setOnClickListener(new OnClickListener() {
      // @Override
      // public void onClick(View v) {
      // try {
      // InvokeIntents.openBrowser(activity,
      // poi.getWikipedia());
      // qa.dismiss();
      // } catch (Exception e) {
      // Log.e("", "Error on wiki");
      // }
      // }
      // });
      //
      // qa.addActionItem(wikiItem);
      // }
      //
      // // WEB
      // if (poi.getWebsite() != null && poi.getWebsite().length() > 0) {
      // final ActionItem browserItem = new ActionItem();
      //
      // browserItem.setTitle(activity.getResources().getString(
      // R.string.show_web)
      // /* + " [" + poi.getWebsite() + "]" */);
      // browserItem.setIcon(activity.getResources().getDrawable(
      // R.drawable.bt_openbrowser_s));
      // browserItem.setOnClickListener(new OnClickListener() {
      // @Override
      // public void onClick(View v) {
      // try {
      // InvokeIntents.openBrowser(activity,
      // poi.getWebsite());
      // qa.dismiss();
      // } catch (Exception e) {
      // Log.e("", "Error on open browser");
      // }
      // }
      // });
      //
      // qa.addActionItem(browserItem);
      // }
      // }

      qa.setAnimStyle(QuickAction.ANIM_AUTO);

      qa.show();
    } catch (Exception ex) {
      Log.e("POIItem", ex.getMessage());
    }

    return true;
  }