11ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov/*
21ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov * Copyright (C) 2010 The Android Open Source Project
31ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov *
41ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov * Licensed under the Apache License, Version 2.0 (the "License");
51ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov * you may not use this file except in compliance with the License.
61ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov * You may obtain a copy of the License at
71ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov *
81ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov *      http://www.apache.org/licenses/LICENSE-2.0
91ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov *
101ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov * Unless required by applicable law or agreed to in writing, software
111ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov * distributed under the License is distributed on an "AS IS" BASIS,
121ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
131ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov * See the License for the specific language governing permissions and
141ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov * limitations under the License.
151ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov */
161ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikovpackage com.android.contacts.interactions;
171ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov
1818ffaa2561cc7dd2e3ef81737e6537931c0a9a11Dmitri Plotnikovimport com.android.contacts.ContactSaveService;
191ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikovimport com.android.contacts.R;
202b3f3c54d3beb017b2f59f19e9ce0ecc3e039dbcDave Santoroimport com.android.contacts.model.AccountWithDataSet;
211ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov
229d730dd9d9efe125c9102b298f897577157ffecdDmitri Plotnikovimport android.app.Activity;
231ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikovimport android.app.FragmentManager;
249d730dd9d9efe125c9102b298f897577157ffecdDmitri Plotnikovimport android.content.Intent;
251ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikovimport android.os.Bundle;
261ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikovimport android.widget.EditText;
271ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov
281ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov/**
291ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov * A dialog for creating a new group.
301ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov */
311ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikovpublic class GroupCreationDialogFragment extends GroupNameDialogFragment {
321ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov    private static final String ARG_ACCOUNT_TYPE = "accountType";
331ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov    private static final String ARG_ACCOUNT_NAME = "accountName";
342b3f3c54d3beb017b2f59f19e9ce0ecc3e039dbcDave Santoro    private static final String ARG_DATA_SET = "dataSet";
351ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov
361ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov    public static void show(
372b3f3c54d3beb017b2f59f19e9ce0ecc3e039dbcDave Santoro            FragmentManager fragmentManager, String accountType, String accountName,
382b3f3c54d3beb017b2f59f19e9ce0ecc3e039dbcDave Santoro            String dataSet) {
391ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov        GroupCreationDialogFragment dialog = new GroupCreationDialogFragment();
401ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov        Bundle args = new Bundle();
411ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov        args.putString(ARG_ACCOUNT_TYPE, accountType);
421ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov        args.putString(ARG_ACCOUNT_NAME, accountName);
432b3f3c54d3beb017b2f59f19e9ce0ecc3e039dbcDave Santoro        args.putString(ARG_DATA_SET, dataSet);
441ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov        dialog.setArguments(args);
451ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov        dialog.show(fragmentManager, "createGroup");
461ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov    }
471ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov
481ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov    @Override
491ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov    protected void initializeGroupLabelEditText(EditText editText) {
501ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov    }
511ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov
521ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov    @Override
531ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov    protected int getTitleResourceId() {
541ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov        return R.string.create_group_dialog_title;
551ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov    }
561ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov
571ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov    @Override
581ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov    protected void onCompleted(String groupLabel) {
591ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov        Bundle arguments = getArguments();
601ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov        String accountType = arguments.getString(ARG_ACCOUNT_TYPE);
611ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov        String accountName = arguments.getString(ARG_ACCOUNT_NAME);
622b3f3c54d3beb017b2f59f19e9ce0ecc3e039dbcDave Santoro        String dataSet = arguments.getString(ARG_DATA_SET);
631ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov
649d730dd9d9efe125c9102b298f897577157ffecdDmitri Plotnikov        Activity activity = getActivity();
659d730dd9d9efe125c9102b298f897577157ffecdDmitri Plotnikov        activity.startService(ContactSaveService.createNewGroupIntent(activity,
662b3f3c54d3beb017b2f59f19e9ce0ecc3e039dbcDave Santoro                new AccountWithDataSet(accountName, accountType, dataSet), groupLabel,
67717e343811088da922cd84fb0d196de85fba7fe9Katherine Kuan                null /* no new members to add */,
689d730dd9d9efe125c9102b298f897577157ffecdDmitri Plotnikov                activity.getClass(), Intent.ACTION_EDIT));
691ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov    }
701ac58b6f2a925c5a4f759346e5244dfd174acd08Dmitri Plotnikov}
71