/** @file DeviceA3InfoDialog.java * * @author marco corvi * @date nov 2011 * * @brief TopoDroid DistoX A3 device info dialog * -------------------------------------------------------- * Copyright This sowftare is distributed under GPL-3.0 or later * See the file COPYING. * -------------------------------------------------------- */ package com.topodroid.DistoX; import android.os.Bundle; import android.app.Dialog; // import android.app.Activity; import android.content.Context; import android.content.Intent; import android.content.DialogInterface; // import android.content.DialogInterface.OnCancelListener; // import android.content.DialogInterface.OnDismissListener; import android.view.View; import android.view.ViewGroup.LayoutParams; import android.widget.TextView; import android.widget.RadioButton; import android.widget.Button; class DeviceA3InfoDialog extends MyDialog implements View.OnClickListener { private RadioButton mRBa3; private RadioButton mRBx310; private Button mBTok; // private Button mBTcancel; DeviceActivity mParent; Device mDevice; TextView tv_serial; TextView tv_statusAngle; TextView tv_statusCompass; TextView tv_statusCalib; TextView tv_statusSilent; DeviceA3InfoDialog( Context context, DeviceActivity parent, Device device ) { super( context, R.string.DeviceA3InfoDialog ); mParent = parent; mDevice = device; } @Override public void onCreate( Bundle bundle ) { super.onCreate( bundle ); setContentView( R.layout.device_a3_info_dialog ); getWindow().setLayout( LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT ); mRBa3 = (RadioButton) findViewById( R.id.rb_a3 ); mRBx310 = (RadioButton) findViewById( R.id.rb_x310 ); mRBa3.setChecked( true ); // mRBx310.setChecked( false ); TextView tv_address = (TextView) findViewById( R.id.tv_address ); tv_serial = (TextView) findViewById( R.id.tv_serial ); tv_statusAngle = (TextView) findViewById( R.id.tv_status_angle ); tv_statusCompass = (TextView) findViewById( R.id.tv_status_compass ); tv_statusCalib = (TextView) findViewById( R.id.tv_status_calib ); tv_statusSilent = (TextView) findViewById( R.id.tv_status_silent ); setTitle( mParent.getResources().getString( R.string.device_info ) ); tv_address.setText( String.format( mParent.getResources().getString( R.string.device_address ), mDevice.mAddress ) ); // tv_serial.setText( "" ); // tv_statusAngle.setText( "" ); // tv_statusCompass.setText( "" ); // tv_statusCalib.setText( "" ); // tv_statusSilent.setText( "" ); mParent.readA3Info( this ); mBTok = (Button) findViewById( R.id.btn_ok ); mBTok.setOnClickListener( this ); // mBTcancel = (Button) findViewById( R.id.button_cancel ); // mBTcancel.setOnClickListener( this ); } public void updateInfo( DeviceA3Info info ) { if ( info == null ) return; tv_serial.setText( info.mCode ); tv_statusAngle.setText( info.mAngle ); tv_statusCompass.setText( info.mCompass ); tv_statusCalib.setText( info.mCalib ); tv_statusSilent.setText( info.mSilent ); } @Override public void onClick(View view) { Button b = (Button)view; if ( b == mBTok ) { // TODO ask confirm TopoDroidAlertDialog.makeAlert( mParent, mParent.getResources(), mParent.getResources().getString( R.string.device_model_set ) + " ?", new DialogInterface.OnClickListener() { @Override public void onClick( DialogInterface dialog, int btn ) { doSetModel( ); } } ); // } else if ( b == mBTcancel ) { // dismiss(); } } void doSetModel() { if ( mRBa3.isChecked() ) { mParent.setDeviceModel( mDevice, Device.DISTO_A3 ); } else if ( mRBx310.isChecked() ) { mParent.setDeviceModel( mDevice, Device.DISTO_X310 ); } } }