1732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov/* 2732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov * Copyright (C) 2010 The Android Open Source Project 3732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov * 4732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov * Licensed under the Apache License, Version 2.0 (the "License"); 5732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov * you may not use this file except in compliance with the License. 6732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov * You may obtain a copy of the License at 7732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov * 8732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov * http://www.apache.org/licenses/LICENSE-2.0 9732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov * 10732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov * Unless required by applicable law or agreed to in writing, software 11732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov * distributed under the License is distributed on an "AS IS" BASIS, 12732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov * See the License for the specific language governing permissions and 14732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov * limitations under the License. 15732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov */ 16732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikovpackage com.android.contacts.list; 17732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov 18732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikovimport android.net.Uri; 19732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov 20732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov/** 21416b569901ce4c577c1f76c3f29496d1adab29e1Dmitri Plotnikov * Action callbacks that can be sent by a contact list. 22732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov */ 23732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikovpublic interface OnContactBrowserActionListener { 24732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov 25732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov /** 26d959104d37df65f0d6de9290c3fa2b59065be0fcDmitri Plotnikov * Notification of selection change, invoked when the selection of activated 27d959104d37df65f0d6de9290c3fa2b59065be0fcDmitri Plotnikov * item(s) is change by either a user action or some other event, e.g. sync. 28d959104d37df65f0d6de9290c3fa2b59065be0fcDmitri Plotnikov */ 29d959104d37df65f0d6de9290c3fa2b59065be0fcDmitri Plotnikov void onSelectionChange(); 30d959104d37df65f0d6de9290c3fa2b59065be0fcDmitri Plotnikov 31d959104d37df65f0d6de9290c3fa2b59065be0fcDmitri Plotnikov /** 321323d69c40649914ae2195088573a20cc35da86eDmitri Plotnikov * Opens the specified contact for viewing. 3360ad01b47e1073bac4b9299a54673132f4451378Daniel Lehmann * 3460ad01b47e1073bac4b9299a54673132f4451378Daniel Lehmann * @param contactLookupUri The lookup-uri of the Contact that should be opened 35732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov */ 36e20d3432a370dd3996deec2df4e3cdf726c94992Daniel Lehmann void onViewContactAction(Uri contactLookupUri); 37732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov 38732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov /** 391323d69c40649914ae2195088573a20cc35da86eDmitri Plotnikov * Creates a new contact. 40732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov */ 41732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov void onCreateNewContactAction(); 42732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov 43732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov /** 441323d69c40649914ae2195088573a20cc35da86eDmitri Plotnikov * Opens the specified contact for editing. 45732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov */ 46732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov void onEditContactAction(Uri contactLookupUri); 471323d69c40649914ae2195088573a20cc35da86eDmitri Plotnikov 481323d69c40649914ae2195088573a20cc35da86eDmitri Plotnikov /** 491323d69c40649914ae2195088573a20cc35da86eDmitri Plotnikov * Initiates the contact deletion process. 501323d69c40649914ae2195088573a20cc35da86eDmitri Plotnikov */ 511323d69c40649914ae2195088573a20cc35da86eDmitri Plotnikov void onDeleteContactAction(Uri contactUri); 521323d69c40649914ae2195088573a20cc35da86eDmitri Plotnikov 531323d69c40649914ae2195088573a20cc35da86eDmitri Plotnikov /** 541323d69c40649914ae2195088573a20cc35da86eDmitri Plotnikov * Adds the specified contact to favorites 551323d69c40649914ae2195088573a20cc35da86eDmitri Plotnikov */ 561323d69c40649914ae2195088573a20cc35da86eDmitri Plotnikov void onAddToFavoritesAction(Uri contactUri); 571323d69c40649914ae2195088573a20cc35da86eDmitri Plotnikov 581323d69c40649914ae2195088573a20cc35da86eDmitri Plotnikov /** 591323d69c40649914ae2195088573a20cc35da86eDmitri Plotnikov * Removes the specified contact from favorites. 601323d69c40649914ae2195088573a20cc35da86eDmitri Plotnikov */ 611323d69c40649914ae2195088573a20cc35da86eDmitri Plotnikov void onRemoveFromFavoritesAction(Uri contactUri); 621323d69c40649914ae2195088573a20cc35da86eDmitri Plotnikov 631323d69c40649914ae2195088573a20cc35da86eDmitri Plotnikov /** 64e3fbfd99842607a0c208d0a930878bb54bb91dedDmitri Plotnikov * Closes the contact browser. 65e3fbfd99842607a0c208d0a930878bb54bb91dedDmitri Plotnikov */ 66e3fbfd99842607a0c208d0a930878bb54bb91dedDmitri Plotnikov void onFinishAction(); 676e850a046fcea8ba82a793b43944051246d08180Dmitri Plotnikov 686e850a046fcea8ba82a793b43944051246d08180Dmitri Plotnikov /** 696e850a046fcea8ba82a793b43944051246d08180Dmitri Plotnikov * Invoked if the requested selected contact is not found in the list. 706e850a046fcea8ba82a793b43944051246d08180Dmitri Plotnikov */ 716e850a046fcea8ba82a793b43944051246d08180Dmitri Plotnikov void onInvalidSelection(); 72732f65236e7f804941e84757c077a84eb11eab16Dmitri Plotnikov} 73