123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- /*
- * Nextcloud Android client application
- *
- * @author Álvaro Brey
- * Copyright (C) 2022 Álvaro Brey
- * Copyright (C) 2022 Nextcloud GmbH
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
- * License as published by the Free Software Foundation; either
- * version 3 of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
- *
- * You should have received a copy of the GNU Affero General Public
- * License along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- */
- package com.nextcloud.ui.fileactions
- import androidx.annotation.DrawableRes
- import androidx.annotation.IdRes
- import androidx.annotation.StringRes
- import com.owncloud.android.R
- enum class FileAction(@IdRes val id: Int, @StringRes val title: Int, @DrawableRes val icon: Int? = null) {
- // selection
- SELECT_ALL(R.id.action_select_all_action_menu, R.string.select_all, R.drawable.ic_select_all),
- SELECT_NONE(R.id.action_deselect_all_action_menu, R.string.deselect_all, R.drawable.ic_select_none),
- // generic file actions
- EDIT(R.id.action_edit, R.string.action_edit, R.drawable.ic_edit),
- SEE_DETAILS(R.id.action_see_details, R.string.actionbar_see_details, R.drawable.ic_information_outline),
- REMOVE_FILE(R.id.action_remove_file, R.string.common_remove, R.drawable.ic_delete),
- // File moving
- RENAME_FILE(R.id.action_rename_file, R.string.common_rename, R.drawable.ic_rename),
- MOVE(R.id.action_move, R.string.actionbar_move, R.drawable.ic_move),
- COPY(R.id.action_copy, R.string.actionbar_copy, R.drawable.ic_content_copy),
- // favorites
- FAVORITE(R.id.action_favorite, R.string.favorite, R.drawable.ic_star),
- UNSET_FAVORITE(R.id.action_unset_favorite, R.string.unset_favorite, R.drawable.ic_star_outline),
- // Uploads and downloads
- DOWNLOAD_FILE(R.id.action_download_file, R.string.filedetails_download, R.drawable.ic_cloud_download),
- SYNC_FILE(R.id.action_sync_file, R.string.filedetails_sync_file, R.drawable.ic_cloud_sync_on),
- CANCEL_SYNC(R.id.action_cancel_sync, R.string.common_cancel_sync, R.drawable.ic_cloud_sync_off),
- // File sharing
- EXPORT_FILE(R.id.action_export_file, R.string.filedetails_export, R.drawable.ic_export),
- SEND_SHARE_FILE(R.id.action_send_share_file, R.string.action_send_share, R.drawable.ic_share),
- SEND_FILE(R.id.action_send_file, R.string.common_send, R.drawable.ic_share),
- OPEN_FILE_WITH(R.id.action_open_file_with, R.string.actionbar_open_with, R.drawable.ic_external),
- STREAM_MEDIA(R.id.action_stream_media, R.string.stream, R.drawable.ic_play_arrow),
- SET_AS_WALLPAPER(R.id.action_set_as_wallpaper, R.string.set_picture_as, R.drawable.ic_wallpaper),
- // Encryption
- SET_ENCRYPTED(R.id.action_encrypted, R.string.encrypted, R.drawable.ic_encrypt),
- UNSET_ENCRYPTED(R.id.action_unset_encrypted, R.string.unset_encrypted, R.drawable.ic_decrypt),
- // locks
- UNLOCK_FILE(R.id.action_unlock_file, R.string.unlock_file, R.drawable.ic_lock_open_white),
- LOCK_FILE(R.id.action_lock_file, R.string.lock_file, R.drawable.ic_lock),
- // Shortcuts
- PIN_TO_HOMESCREEN(R.id.action_pin_to_homescreen, R.string.pin_home, R.drawable.add_to_home_screen);
- companion object {
- /**
- * All file actions, in the order they should be displayed
- */
- @JvmField
- val SORTED_VALUES = listOf(
- UNLOCK_FILE,
- EDIT,
- FAVORITE,
- UNSET_FAVORITE,
- SEE_DETAILS,
- LOCK_FILE,
- RENAME_FILE,
- MOVE,
- COPY,
- DOWNLOAD_FILE,
- EXPORT_FILE,
- STREAM_MEDIA,
- SEND_SHARE_FILE,
- SEND_FILE,
- OPEN_FILE_WITH,
- SYNC_FILE,
- CANCEL_SYNC,
- SELECT_ALL,
- SELECT_NONE,
- SET_ENCRYPTED,
- UNSET_ENCRYPTED,
- SET_AS_WALLPAPER,
- REMOVE_FILE,
- PIN_TO_HOMESCREEN
- )
- }
- }
|