Commit 959004a6 authored by Grigory Fedorov's avatar Grigory Fedorov

GroupListActivity: options menu rewritten using xml resource, icon added (for...

GroupListActivity: options menu rewritten using xml resource, icon added (for ContactAdd and ContactEdit activities).
parent 47e05268
...@@ -46,8 +46,6 @@ public abstract class GroupListActivity extends ManagedListActivity implements ...@@ -46,8 +46,6 @@ public abstract class GroupListActivity extends ManagedListActivity implements
private static final String SAVED_GROUPS = "com.xabber.android.ui.ContactList.SAVED_GROUPS"; private static final String SAVED_GROUPS = "com.xabber.android.ui.ContactList.SAVED_GROUPS";
private static final String SAVED_SELECTED = "com.xabber.android.ui.ContactList.SAVED_SELECTED"; private static final String SAVED_SELECTED = "com.xabber.android.ui.ContactList.SAVED_SELECTED";
static final int OPTION_MENU_ADD_GROUP_ID = 1;
private ArrayAdapter<String> arrayAdapter; private ArrayAdapter<String> arrayAdapter;
private ListView listView; private ListView listView;
...@@ -73,7 +71,7 @@ public abstract class GroupListActivity extends ManagedListActivity implements ...@@ -73,7 +71,7 @@ public abstract class GroupListActivity extends ManagedListActivity implements
listView = getListView(); listView = getListView();
listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE); listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
listView.setOnItemClickListener(this); listView.setOnItemClickListener(this);
arrayAdapter = new ArrayAdapter<String>(this, arrayAdapter = new ArrayAdapter<>(this,
android.R.layout.simple_list_item_multiple_choice, android.R.layout.simple_list_item_multiple_choice,
new ArrayList<String>()); new ArrayList<String>());
LayoutInflater inflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE); LayoutInflater inflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);
...@@ -113,7 +111,7 @@ public abstract class GroupListActivity extends ManagedListActivity implements ...@@ -113,7 +111,7 @@ public abstract class GroupListActivity extends ManagedListActivity implements
* @return Actual groups from adapter. * @return Actual groups from adapter.
*/ */
private ArrayList<String> getGroups() { private ArrayList<String> getGroups() {
ArrayList<String> groups = new ArrayList<String>(); ArrayList<String> groups = new ArrayList<>();
for (int position = 0; position < arrayAdapter.getCount(); position++) for (int position = 0; position < arrayAdapter.getCount(); position++)
groups.add(arrayAdapter.getItem(position)); groups.add(arrayAdapter.getItem(position));
return groups; return groups;
...@@ -123,7 +121,7 @@ public abstract class GroupListActivity extends ManagedListActivity implements ...@@ -123,7 +121,7 @@ public abstract class GroupListActivity extends ManagedListActivity implements
* @return Actual selected groups from adapter. * @return Actual selected groups from adapter.
*/ */
public ArrayList<String> getSelected() { public ArrayList<String> getSelected() {
ArrayList<String> groups = new ArrayList<String>(); ArrayList<String> groups = new ArrayList<>();
for (int position = 0; position < arrayAdapter.getCount(); position++) for (int position = 0; position < arrayAdapter.getCount(); position++)
if (listView.isItemChecked(position if (listView.isItemChecked(position
+ listView.getHeaderViewsCount())) { + listView.getHeaderViewsCount())) {
...@@ -134,16 +132,14 @@ public abstract class GroupListActivity extends ManagedListActivity implements ...@@ -134,16 +132,14 @@ public abstract class GroupListActivity extends ManagedListActivity implements
@Override @Override
public boolean onCreateOptionsMenu(Menu menu) { public boolean onCreateOptionsMenu(Menu menu) {
menu.add(0, OPTION_MENU_ADD_GROUP_ID, 0, getMenuInflater().inflate(R.menu.create_new_group, menu);
getResources().getText(R.string.group_add)).setIcon(
android.R.drawable.ic_menu_add);
return true; return true;
} }
@Override @Override
public boolean onOptionsItemSelected(MenuItem item) { public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) { switch (item.getItemId()) {
case OPTION_MENU_ADD_GROUP_ID: case R.id.action_create_new_group:
showGroupAddDialog(); showGroupAddDialog();
return true; return true;
} }
...@@ -169,7 +165,7 @@ public abstract class GroupListActivity extends ManagedListActivity implements ...@@ -169,7 +165,7 @@ public abstract class GroupListActivity extends ManagedListActivity implements
* @param selected * @param selected
*/ */
void setGroups(Collection<String> groups, Collection<String> selected) { void setGroups(Collection<String> groups, Collection<String> selected) {
ArrayList<String> list = new ArrayList<String>(groups); ArrayList<String> list = new ArrayList<>(groups);
Collections.sort(list); Collections.sort(list);
arrayAdapter.clear(); arrayAdapter.clear();
for (int position = 0; position < list.size(); position++) { for (int position = 0; position < list.size(); position++) {
......
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item android:id="@+id/action_create_new_group"
android:title="@string/group_add"
app:showAsAction="ifRoom"
android:icon="@drawable/ic_group_add_white_24dp"
android:orderInCategory="100"
/>
</menu>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment