Android Open Source - Android-Apps Hostname Preference






From Project

Back to project page Android-Apps.

License

The source code is released under:

Apache License

If you think the Android project Android-Apps listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

/*
 *  Copyright (C) 2011  Tom Quist/*w w  w .  j  a va 2  s .  co m*/
 *
 *  This program is free software; you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation; either version 2 of the License, or
 *  (at your option) any later version.
 *
 *  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 can get the GNU General Public License at
 *  http://www.gnu.org/licenses/gpl.html
 */
package com.kniezrec.voiceremote2;

import com.kniezrec.voiceremote2.R;

import android.app.ProgressDialog;
import android.content.Context;
import android.content.SharedPreferences;
import android.net.wifi.WifiManager;
import android.preference.EditTextPreference;
import android.preference.PreferenceManager;
import android.util.AttributeSet;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class HostnamePreference extends EditTextPreference {

  public interface OnSenderFactoryChangeListener {

    boolean onSenderFactoryChange(String newValue);

  }

  private OnSenderFactoryChangeListener onSenderFactoryChangeListener;

  public HostnamePreference(Context context) {
    super(context);
    setDialogLayoutResource(R.layout.hostname_preference);
  }

  public HostnamePreference(Context context, AttributeSet attrs) {
    super(context, attrs);
    setDialogLayoutResource(R.layout.hostname_preference);
  }

  public HostnamePreference(Context context, AttributeSet attrs, int defStyle) {
    super(context, attrs, defStyle);
    setDialogLayoutResource(R.layout.hostname_preference);
  }

  @Override
  protected void onAddEditTextToDialogView(View dialogView, EditText editText) {
    ViewGroup container = (ViewGroup) dialogView
        .findViewById(R.id.hostname_edit_text);
    if (container != null) {
      container.addView(editText, ViewGroup.LayoutParams.MATCH_PARENT,
          ViewGroup.LayoutParams.WRAP_CONTENT);
    }
  }

  @Override
  protected void onBindDialogView(View view) {
    super.onBindDialogView(view);
    Button button = (Button) view.findViewById(R.id.auto_search_button);
    button.setOnClickListener(new View.OnClickListener() {

      public void onClick(View v) {
        WifiManager wifiManager = (WifiManager) getContext()
            .getSystemService(Context.WIFI_SERVICE);
        if (!wifiManager.isWifiEnabled()
            || wifiManager.getConnectionInfo().getIpAddress() == 0) {
          Toast.makeText(getContext(), R.string.enable_wifi,
              Toast.LENGTH_LONG).show();
        }

        Discovery d = new Discovery() {
          private ProgressDialog progress;

          @Override
          protected void onPreExecute() {
            CharSequence title = getContext().getResources()
                .getText(R.string.tv_discovery_progress_title);
            CharSequence message = getContext()
                .getResources()
                .getText(R.string.tv_discovery_progress_message);
            progress = ProgressDialog.show(getContext(), title,
                message);
            progress.setCancelable(true);
          }

          protected void onPostExecute(java.net.InetAddress result) {
            if (progress != null) {
              try {
                progress.dismiss();
                progress = null;
              } catch (Exception e) {
                // nothing
              }
            }
            if (result != null) {
              SharedPreferences prefs = PreferenceManager
                  .getDefaultSharedPreferences(getContext());
              if (isCSeries) {
                prefs.edit()
                    .putString(
                        MainActivity.PREFS_SENDER_FACTORY_KEY,
                        CSeriesKeyCodeSenderFactory.class
                            .getCanonicalName())
                    .commit();
              } else {
                prefs.edit()
                    .putString(
                        MainActivity.PREFS_SENDER_FACTORY_KEY,
                        BSeriesKeyCodeSenderFactory.class
                            .getCanonicalName())
                    .commit();
              }
              if (onSenderFactoryChangeListener != null) {
                onSenderFactoryChangeListener.onSenderFactoryChange(prefs
                    .getString(
                        MainActivity.PREFS_SENDER_FACTORY_KEY,
                        MainActivity.PREFS_SENDER_FACTORY_DEFAULT));
              }
              notifyDependencyChange(false);
              getEditText().setText(result.getHostAddress());
              Toast.makeText(getContext(),
                  R.string.tv_discovery_found,
                  Toast.LENGTH_LONG).show();
            } else {
              Toast.makeText(getContext(),
                  R.string.tv_discovery_not_found,
                  Toast.LENGTH_LONG).show();
            }
          };
        };
        d.execute();
      }
    });
  }

  public void setOnSenderFactoryChangeListener(
      OnSenderFactoryChangeListener onSenderFactoryChangeListener) {
    this.onSenderFactoryChangeListener = onSenderFactoryChangeListener;
  }

}




Java Source Code List

com.kniezrec.remoterecorder.Communication.java
com.kniezrec.remoterecorder.MainServiceConnection.java
com.kniezrec.remoterecorder.MainService.java
com.kniezrec.remoterecorder.RequestType.java
com.kniezrec.remoterecorder.Request.java
com.kniezrec.voiceremote2.BSeriesKeyCodeSenderFactory.java
com.kniezrec.voiceremote2.BSeriesSender.java
com.kniezrec.voiceremote2.CSeriesButtons.java
com.kniezrec.voiceremote2.CSeriesKeyCodeSenderFactory.java
com.kniezrec.voiceremote2.CSeriesSender.java
com.kniezrec.voiceremote2.CommandsFragment.java
com.kniezrec.voiceremote2.Commands.java
com.kniezrec.voiceremote2.Discovery.java
com.kniezrec.voiceremote2.FSeriesButtons.java
com.kniezrec.voiceremote2.Group.java
com.kniezrec.voiceremote2.HelpFragment.java
com.kniezrec.voiceremote2.HostnamePreference.java
com.kniezrec.voiceremote2.KeyCodeSender.java
com.kniezrec.voiceremote2.ListActionsFragment.java
com.kniezrec.voiceremote2.MainActivity.java
com.kniezrec.voiceremote2.MainFragment.java
com.kniezrec.voiceremote2.Mapper.java
com.kniezrec.voiceremote2.MyExpandableListAdapter.java
com.kniezrec.voiceremote2.NewActionEdit.java
com.kniezrec.voiceremote2.NewActionSingleEdit.java
com.kniezrec.voiceremote2.NewAction.java
com.kniezrec.voiceremote2.RemoteButton.java
com.kniezrec.voiceremote2.SenderFactory.java
com.kniezrec.voiceremote2.Sender.java
com.kniezrec.voiceremote2.SettingsActivity.java
com.kniezrec.voiceremote2.TextSender.java
com.kniezrec.voiceremotefree.BSeriesKeyCodeSenderFactory.java
com.kniezrec.voiceremotefree.BSeriesSender.java
com.kniezrec.voiceremotefree.CSeriesButtons.java
com.kniezrec.voiceremotefree.CSeriesKeyCodeSenderFactory.java
com.kniezrec.voiceremotefree.CSeriesSender.java
com.kniezrec.voiceremotefree.Commands.java
com.kniezrec.voiceremotefree.Discovery.java
com.kniezrec.voiceremotefree.FSeriesButtons.java
com.kniezrec.voiceremotefree.HelpActivity.java
com.kniezrec.voiceremotefree.HostnamePreference.java
com.kniezrec.voiceremotefree.KeyCodeSender.java
com.kniezrec.voiceremotefree.ListActionsActivity.java
com.kniezrec.voiceremotefree.MainActivity.java
com.kniezrec.voiceremotefree.Mapper.java
com.kniezrec.voiceremotefree.NewActionEdit.java
com.kniezrec.voiceremotefree.NewActionSingleEdit.java
com.kniezrec.voiceremotefree.NewAction.java
com.kniezrec.voiceremotefree.RemoteButton.java
com.kniezrec.voiceremotefree.SenderFactory.java
com.kniezrec.voiceremotefree.Sender.java
com.kniezrec.voiceremotefree.Setings.java
com.kniezrec.voiceremotefree.SettingsActivity.java
com.kniezrec.voiceremotefree.TextSender.java
com.kniezrec.xbmcgear.connection.AndroidApplication.java
com.kniezrec.xbmcgear.connection.Connection.java
com.kniezrec.xbmcgear.connection.GearJSON.java
com.kniezrec.xbmcgear.connection.JSONRPCRequest.java
com.kniezrec.xbmcgear.connection.JSONRequestFactory.java
com.kniezrec.xbmcgear.connection.NSDResolve.java
com.kniezrec.xbmcgear.connection.NSDSearch.java
com.kniezrec.xbmcgear.connection.ProviderConnection.java
com.kniezrec.xbmcgear.connection.ProviderService.java
com.kniezrec.xbmcgear.connection.ResponseParser.java
com.kniezrec.xbmcgear.connection.WakeOnLan.java
com.kniezrec.xbmcgear.player.Kodi.java
com.kniezrec.xbmcgear.player.Player.java
com.kniezrec.xbmcgear.player.Playlist.java
com.kniezrec.xbmcgear.player.Song.java
com.kniezrec.xbmcgear.player.Video.java
com.kniezrec.xbmcgear.preferences.HostTable.java
com.kniezrec.xbmcgear.preferences.Host.java
com.kniezrec.xbmcgear.preferences.HostsDataSource.java
com.kniezrec.xbmcgear.preferences.HostsDatabaseHelper.java
com.kniezrec.xbmcgear.preferences.SharedPreferencesUtil.java
com.kniezrec.xbmcgear.presentation.AnimationManager.java
com.kniezrec.xbmcgear.presentation.AutoConfigurationActivity.java
com.kniezrec.xbmcgear.presentation.HostSetActivity.java
com.kniezrec.xbmcgear.presentation.InstanceActivity.java
com.kniezrec.xbmcgear.presentation.MainActivity.java
com.kniezrec.xbmcgear.presentation.StyleDialogFragment.java
com.kniezrec.xbmcgear.presentation.ViewMode.java
com.uraroji.garage.android.lame.SimpleLame.java
com.uraroji.garage.android.mp3recvoice.RecMicToMp3.java
de.quist.samy.remocon.Base64.java
de.quist.samy.remocon.Base64.java
de.quist.samy.remocon.ConnectionDeniedException.java
de.quist.samy.remocon.ConnectionDeniedException.java
de.quist.samy.remocon.Key.java
de.quist.samy.remocon.Key.java
de.quist.samy.remocon.Loggable.java
de.quist.samy.remocon.Loggable.java
de.quist.samy.remocon.RemoteReader.java
de.quist.samy.remocon.RemoteReader.java
de.quist.samy.remocon.RemoteSession.java
de.quist.samy.remocon.RemoteSession.java