|
|
@@ -20,6 +20,7 @@ import android.widget.ArrayAdapter;
|
|
|
import android.widget.Button;
|
|
|
import android.widget.TextView;
|
|
|
|
|
|
+import com.usai.util.RAUtil;
|
|
|
import com.usai.util.dbUtil;
|
|
|
|
|
|
import java.util.ArrayList;
|
|
|
@@ -28,7 +29,7 @@ import java.util.List;
|
|
|
//import android.content.DialogInterface.OnClickListener;
|
|
|
|
|
|
public class CustomizeFieldsActivity extends Activity implements
|
|
|
- OnClickListener
|
|
|
+ OnClickListener, DragListView.DragListViewDelegate
|
|
|
{
|
|
|
//
|
|
|
// @Override
|
|
|
@@ -55,6 +56,30 @@ public class CustomizeFieldsActivity extends Activity implements
|
|
|
private String user/* ,password */, function_name;
|
|
|
private int behavior;
|
|
|
|
|
|
+ @Override
|
|
|
+ public boolean dragListViewCanMoveItem(DragListView dragListView, int from, int to) {
|
|
|
+
|
|
|
+ int hidePosition = adapter.getPosition(mHideField);
|
|
|
+ // hide -> display && displayCount >= maxDisplayCount
|
|
|
+ if (from > hidePosition && to < hidePosition && hidePosition >= maxDisplayCount) {
|
|
|
+
|
|
|
+ new AlertDialog.Builder(this)
|
|
|
+ .setTitle("Warning")
|
|
|
+ .setMessage("the maximums count of display items is " + maxDisplayCount)
|
|
|
+ .setPositiveButton("Ok", new DialogInterface.OnClickListener() {
|
|
|
+ @Override
|
|
|
+ public void onClick(DialogInterface dialog, int which) {
|
|
|
+
|
|
|
+ }
|
|
|
+ })
|
|
|
+ .show();
|
|
|
+
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+
|
|
|
public class fieldedit
|
|
|
{
|
|
|
public String name = null;
|
|
|
@@ -68,6 +93,9 @@ public class CustomizeFieldsActivity extends Activity implements
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ private boolean forNewResult = false;
|
|
|
+ private int maxDisplayCount = 0;
|
|
|
+
|
|
|
@Override
|
|
|
public void onCreate(Bundle savedInstanceState)
|
|
|
{
|
|
|
@@ -77,6 +105,10 @@ public class CustomizeFieldsActivity extends Activity implements
|
|
|
// password = getIntent().getStringExtra("password");
|
|
|
function_name = getIntent().getStringExtra("function_name");
|
|
|
behavior = getIntent().getIntExtra("behavior", -1);
|
|
|
+ forNewResult = getIntent().getBooleanExtra("forNewResult", false);
|
|
|
+ maxDisplayCount = getIntent().getIntExtra("maxDisplayCount", 0);
|
|
|
+
|
|
|
+
|
|
|
setContentView(R.layout.activity_customize_fields);
|
|
|
Button btnok = (Button) findViewById(R.id.btnok);
|
|
|
btnok.setOnClickListener(this);
|
|
|
@@ -86,6 +118,12 @@ public class CustomizeFieldsActivity extends Activity implements
|
|
|
initData();
|
|
|
|
|
|
DragListView dragListView = (DragListView) findViewById(R.id.drag_list);
|
|
|
+
|
|
|
+ if (forNewResult) {
|
|
|
+
|
|
|
+ dragListView.setDelegate(this);
|
|
|
+ }
|
|
|
+
|
|
|
adapter = new DragListAdapter(this, list);
|
|
|
dragListView.setAdapter(adapter);
|
|
|
|
|
|
@@ -137,6 +175,8 @@ public class CustomizeFieldsActivity extends Activity implements
|
|
|
}
|
|
|
return super.onOptionsItemSelected(item);
|
|
|
}
|
|
|
+
|
|
|
+ private fieldedit mDisplayField, mHideField;
|
|
|
public void initData()
|
|
|
{
|
|
|
SQLiteDatabase db = dbUtil.OpenDB(this, null, false);
|
|
|
@@ -168,14 +208,16 @@ public class CustomizeFieldsActivity extends Activity implements
|
|
|
// {
|
|
|
// navList.add("Aѡ��" + i);
|
|
|
// }
|
|
|
- list.add(new fieldedit(getString(R.string.str_displayitem), -1));
|
|
|
+ mDisplayField = new fieldedit(getString(R.string.str_displayitem), -1);
|
|
|
+ list.add(mDisplayField);
|
|
|
list.addAll(showList);
|
|
|
|
|
|
// for (int i = 0; i <18; i++)
|
|
|
// {
|
|
|
// moreList.add("Bѡ��" + i);
|
|
|
// }
|
|
|
- list.add(new fieldedit(getString(R.string.str_hideitem), -2));
|
|
|
+ mHideField = new fieldedit(getString(R.string.str_hideitem), -2);
|
|
|
+ list.add(mHideField);
|
|
|
list.addAll(hideList);
|
|
|
dbUtil.CloseCursor(cursor);
|
|
|
dbUtil.CloseDB(db);
|