/**
* @file InputNumPanel.java
*
* @revision: none
*
* @version 0.0.01
* @author: Zenki (zhajun), zenki2001cn@163.com
* @date: 2011-6-4 上午08:47:24
*/
package com.easyview.ebook.reader.ui.view.stylegrid;
import java.util.ArrayList;
import com.easyview.ebook.reader.engine.core.IActionCall;
import com.easyview.ebook.reader.engine.core.IEngineService;
import com.easyview.ebook.reader.engine.model.Book;
import com.easyview.ebook.reader.engine.model.ChapterTreeInfo.Chapter;
import com.easyview.ebook.reader.engine.util.Logger;
import com.easyview.ebook.reader.ui.controller.EasyViewer;
import com.easyview.ebook.reader.ui.controller.IControlCenterService;
import com.easyview.ebook.reader.ui.controller.IControlCenterService.COMMAND_TYPE;
import com.easyview.ebook.reader.ui.view.ActionDialog;
import com.easyview.ebook.reader.ui.view.EVBaseRelativeLayout;
import com.easyview.ebook.reader.easyviewer.R;
import android.content.Context;
import android.util.AttributeSet;
import android.view.View;
import android.view.inputmethod.EditorInfo;
import android.widget.Button;
import android.widget.EditText;
import android.widget.RelativeLayout;
import android.widget.TextView;
/**
*
*/
public class JumpWapperPanelLayout extends EVBaseRelativeLayout {
static private final String TAG = "JumpWapperPanelLayout";
private EditText mEditTextJumpNum;
private Button mBtnJump;
private Button mBtnNum0;
private Button mBtnNum1;
private Button mBtnNum2;
private Button mBtnNum3;
private Button mBtnNum4;
private Button mBtnNum5;
private Button mBtnNum6;
private Button mBtnNum7;
private Button mBtnNum8;
private Button mBtnNum9;
private Button mBtnDel;
private Button mBtnClean;
private Button mBtnPreChapter;
private Button mBtnListChapter;
private Button mBtnNextChapter;
private ActionDialog mMessageDlg;
static final String PAGE_NUM_DEFAULT = "";
public JumpWapperPanelLayout(Context context, AttributeSet attrs,
int defStyle) {
super(context, attrs, defStyle);
}
public JumpWapperPanelLayout(Context context, AttributeSet attrs) {
super(context, attrs);
}
public JumpWapperPanelLayout(Context context) {
super(context);
}
@Override
protected void onFinishInflate() {
initView();
super.onFinishInflate();
}
private void initView() {
mEditTextJumpNum = (EditText) findViewById(R.id.id_jump_page_number);
mEditTextJumpNum.setInputType(EditorInfo.TYPE_NULL);
mEditTextJumpNum.setCursorVisible(false);
mBtnJump = (Button) findViewById(R.id.id_jump_page_btn);
mBtnNum0 = (Button) findViewById(R.id.id_jump_num_0);
mBtnNum1 = (Button) findViewById(R.id.id_jump_num_1);
mBtnNum2 = (Button) findViewById(R.id.id_jump_num_2);
mBtnNum3 = (Button) findViewById(R.id.id_jump_num_3);
mBtnNum4 = (Button) findViewById(R.id.id_jump_num_4);
mBtnNum5 = (Button) findViewById(R.id.id_jump_num_5);
mBtnNum6 = (Button) findViewById(R.id.id_jump_num_6);
mBtnNum7 = (Button) findViewById(R.id.id_jump_num_7);
mBtnNum8 = (Button) findViewById(R.id.id_jump_num_8);
mBtnNum9 = (Button) findViewById(R.id.id_jump_num_9);
mBtnDel = (Button) findViewById(R.id.id_jump_del);
mBtnClean = (Button) findViewById(R.id.id_jump_clean);
mBtnPreChapter = (Button) findViewById(R.id.id_jump_pre_chapter);
mBtnListChapter = (Button) findViewById(R.id.id_jump_chapter_list);
mBtnNextChapter = (Button) findViewById(R.id.id_jump_next_chapter);
mBtnJump.setOnClickListener(cBtnJumpListener);
mBtnNum0.setOnClickListener(cBtnNum0Listener);
mBtnNum1.setOnClickListener(cBtnNum1Listener);
mBtnNum2.setOnClickListener(cBtnNum2Listener);
mBtnNum3.setOnClickListener(cBtnNum3Listener);
mBtnNum4.setOnClickListener(cBtnNum4Listener);
mBtnNum5.setOnClickListener(cBtnNum5Listener);
mBtnNum6.setOnClickListener(cBtnNum6Listener);
mBtnNum7.setOnClickListener(cBtnNum7Listener);
mBtnNum8.setOnClickListener(cBtnNum8Listener);
mBtnNum9.setOnClickListener(cBtnNum9Listener);
mBtnDel.setOnClickListener(cBtnNumDelListener);
mBtnClean.setOnClickListener(cBtnNumCleanListener);
mBtnPreChapter.setOnClickListener(cBtnPreChapterListener);
mBtnListChapter.setOnClickListener(cBtnListChapterListener);
mBtnNextChapter.setOnClickListener(cBtnNextChapterListener);
mMessageDlg = getActionDialog();
}
private void loadChapterInfo() {
Book book = getEasyViewer().getBook();
if (!book.chapterIsLoad()) {
getErengine().getAction().loadChapterInformation(iaPreloadChapter,
iaLoadedChapter);
}
}
IActionCall iaPreloadChapter = new IActionCall() {
@Override
public boolean action() {
Logger.dLog(TAG, "iaPreloadChapter action");
mMessageDlg.setMessage(getContext()
.getString(R.string.load_chapter));
mMessageDlg.showDialog();
return true;
}
};
IActionCall iaLoadedChapter = new IActionCall() {
@Override
public boolean action() {
mMessageDlg.closeDialog();
Logger.dLog(TAG, "iaLoadedChapter action finished");
return true;
}
};
private OnClickListener cBtnJumpListener = new OnClickListener() {
@Override
public void onClick(View v) {
int textVal;
Book book = getEasyViewer().getBook();
String text = mEditTextJumpNum.getText().toString();
if (text.length() > 0) {
textVal = Integer.valueOf(text);
} else {
Logger.eLog(TAG, "cBtnJumpListener jumpPage num == null");
return;
}
int jumpPage = 1;
if (textVal >= book.getTotalPageNumber()) {
jumpPage = book.getTotalPageNumber();
} else if (textVal < 1) {
jumpPage = 1;
} else {
jumpPage = textVal;
}
Logger.dLog(TAG, "cBtnJumpListener page = " + jumpPage);
mEditTextJumpNum.setText(PAGE_NUM_DEFAULT);
// getControlCenter()
// .runCommand(COMMAND_TYPE.CMD_CLOSE_CONTROL_CENTER);
getEasyViewer().pageJumpTo(jumpPage);
}
};
private OnClickListener cBtnPreChapterListener = new OnClickListener() {
@Override
public void onClick(View v) {
loadChapterInfo();
// getControlCenter()
// .runCommand(COMMAND_TYPE.CMD_CLOSE_CONTROL_CENTER);
getEasyViewer().chapterUp();
}
};
private OnClickListener cBtnListChapterListener = new OnClickListener() {
@Override
public void onClick(View v) {
getControlCenter().runCommand(COMMAND_TYPE.CMD_SHOW_TOPIC);
}
};
private OnClickListener cBtnNextChapterListener = new OnClickListener() {
@Override
public void onClick(View v) {
loadChapterInfo();
// getControlCenter().runCommand(COMMAND_TYPE.CMD_CLOSE_CONTROL_CENTER);
getEasyViewer().chapterDown();
}
};
private OnClickListener cBtnNum0Listener = new OnClickListener() {
@Override
public void onClick(View v) {
String temp = mEditTextJumpNum.getText().toString()
+ v.getTag().toString();
mEditTextJumpNum.setText(temp);
}
};
private OnClickListener cBtnNum1Listener = new OnClickListener() {
@Override
public void onClick(View v) {
String temp = mEditTextJumpNum.getText().toString()
+ v.getTag().toString();
mEditTextJumpNum.setText(temp);
}
};
private OnClickListener cBtnNum2Listener = new OnClickListener() {
@Override
public void onClick(View v) {
String temp = mEditTextJumpNum.getText().toString()
+ v.getTag().toString();
mEditTextJumpNum.setText(temp);
}
};
private OnClickListener cBtnNum3Listener = new OnClickListener() {
@Override
public void onClick(View v) {
String temp = mEditTextJumpNum.getText().toString()
+ v.getTag().toString();
mEditTextJumpNum.setText(temp);
}
};
private OnClickListener cBtnNum4Listener = new OnClickListener() {
@Override
public void onClick(View v) {
String temp = mEditTextJumpNum.getText().toString()
+ v.getTag().toString();
mEditTextJumpNum.setText(temp);
}
};
private OnClickListener cBtnNum5Listener = new OnClickListener() {
@Override
public void onClick(View v) {
String temp = mEditTextJumpNum.getText().toString()
+ v.getTag().toString();
mEditTextJumpNum.setText(temp);
}
};
private OnClickListener cBtnNum6Listener = new OnClickListener() {
@Override
public void onClick(View v) {
String temp = mEditTextJumpNum.getText().toString()
+ v.getTag().toString();
mEditTextJumpNum.setText(temp);
}
};
private OnClickListener cBtnNum7Listener = new OnClickListener() {
@Override
public void onClick(View v) {
String temp = mEditTextJumpNum.getText().toString()
+ v.getTag().toString();
mEditTextJumpNum.setText(temp);
}
};
private OnClickListener cBtnNum8Listener = new OnClickListener() {
@Override
public void onClick(View v) {
String temp = mEditTextJumpNum.getText().toString()
+ v.getTag().toString();
mEditTextJumpNum.setText(temp);
}
};
private OnClickListener cBtnNum9Listener = new OnClickListener() {
@Override
public void onClick(View v) {
String temp = mEditTextJumpNum.getText().toString()
+ v.getTag().toString();
mEditTextJumpNum.setText(temp);
}
};
private OnClickListener cBtnNumDelListener = new OnClickListener() {
@Override
public void onClick(View v) {
String temp = PAGE_NUM_DEFAULT;
String text = mEditTextJumpNum.getText().toString();
int len = text.length();
if (len > 1) {
temp = text.substring(0, len - 1);
}
mEditTextJumpNum.setText(temp);
}
};
private OnClickListener cBtnNumCleanListener = new OnClickListener() {
@Override
public void onClick(View v) {
mEditTextJumpNum.setText(PAGE_NUM_DEFAULT);
}
};
}