|
@@ -60,6 +60,38 @@ class ReaderViewModel(private val pdfSdkLicense: String, private val pdfSdkRsaMs
|
|
INK,
|
|
INK,
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ enum class AnnotationEitMode(val mode: KMPDFAnnotEditMode.Mode) {
|
|
|
|
+ NULL(KMPDFAnnotEditMode.Mode.NULL),
|
|
|
|
+ MARKUP_CREATE(KMPDFAnnotEditMode.Mode.MARKUP_CREATE),
|
|
|
|
+ MARKUP_MODIFY(KMPDFAnnotEditMode.Mode.MARKUP_MODIFY),
|
|
|
|
+ FREETEXT_CREATE(KMPDFAnnotEditMode.Mode.FREETEXT_CREATE),
|
|
|
|
+ FREETEXT_MODIFY(KMPDFAnnotEditMode.Mode.FREETEXT_MODIFY),
|
|
|
|
+ SHAPE_CREATE(KMPDFAnnotEditMode.Mode.SHAPE_CREATE),
|
|
|
|
+ SHAPE_MODIFY(KMPDFAnnotEditMode.Mode.SHAPE_MODIFY),
|
|
|
|
+ STAMP_CREATE(KMPDFAnnotEditMode.Mode.STAMP_CREATE),
|
|
|
|
+ STAMP_MODIFY(KMPDFAnnotEditMode.Mode.STAMP_MODIFY),
|
|
|
|
+ LINK_CREATE(KMPDFAnnotEditMode.Mode.LINK_CREATE),
|
|
|
|
+ LINK_MODIFY(KMPDFAnnotEditMode.Mode.LINK_MODIFY),
|
|
|
|
+ LINK_LONGPRESS_CREATE(KMPDFAnnotEditMode.Mode.LINK_LONGPRESS_CREATE),
|
|
|
|
+ FORMTEXT_MODIFY(KMPDFAnnotEditMode.Mode.FORMTEXT_MODIFY),
|
|
|
|
+ SIGN_CREATE(KMPDFAnnotEditMode.Mode.SIGN_CREATE),
|
|
|
|
+ SIGN_MODIFY(KMPDFAnnotEditMode.Mode.SIGN_MODIFY),
|
|
|
|
+ TEXT_CREATE(KMPDFAnnotEditMode.Mode.TEXT_CREATE),
|
|
|
|
+ TEXT_MODIFY(KMPDFAnnotEditMode.Mode.TEXT_MODIFY);
|
|
|
|
+
|
|
|
|
+ companion object {
|
|
|
|
+ fun getMode(mode: KMPDFAnnotEditMode.Mode): AnnotationEitMode {
|
|
|
|
+ val editModes = AnnotationEitMode.values()
|
|
|
|
+ for (editMode in editModes) {
|
|
|
|
+ if (editMode.mode == mode) {
|
|
|
|
+ return editMode
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ return NULL
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
companion object {
|
|
companion object {
|
|
val DEFAULT_HIGHLIGHT_ATTR = AnnotationAttribute(Color.parseColor("#ffdc1b"), 127)
|
|
val DEFAULT_HIGHLIGHT_ATTR = AnnotationAttribute(Color.parseColor("#ffdc1b"), 127)
|
|
val DEFAULT_STRIKE_ATTR = AnnotationAttribute(Color.parseColor("#57d214"), 255)
|
|
val DEFAULT_STRIKE_ATTR = AnnotationAttribute(Color.parseColor("#57d214"), 255)
|
|
@@ -107,7 +139,7 @@ class ReaderViewModel(private val pdfSdkLicense: String, private val pdfSdkRsaMs
|
|
val isOpenedFileLiveData = MutableLiveData<Boolean>().apply { value = false }
|
|
val isOpenedFileLiveData = MutableLiveData<Boolean>().apply { value = false }
|
|
val fileNameLiveData = MutableLiveData<String>()
|
|
val fileNameLiveData = MutableLiveData<String>()
|
|
val annotationModeLiveData = MutableLiveData<AnnotationMode>().apply { value = AnnotationMode.NONE }
|
|
val annotationModeLiveData = MutableLiveData<AnnotationMode>().apply { value = AnnotationMode.NONE }
|
|
- val annotationEitModeLiveData = MutableLiveData<KMPDFAnnotEditMode.Mode>().apply { value = KMPDFAnnotEditMode.Mode.NULL }
|
|
|
|
|
|
+ val annotationEitModeLiveData = MutableLiveData<AnnotationEitMode>().apply { value = AnnotationEitMode.NULL }
|
|
var isCopyModeLiveData = MutableLiveData<Boolean>().apply { value = false }
|
|
var isCopyModeLiveData = MutableLiveData<Boolean>().apply { value = false }
|
|
|
|
|
|
val pageIndexLiveData: LiveData<Int>
|
|
val pageIndexLiveData: LiveData<Int>
|
|
@@ -384,7 +416,7 @@ class ReaderViewModel(private val pdfSdkLicense: String, private val pdfSdkRsaMs
|
|
}
|
|
}
|
|
|
|
|
|
kmpdfFactory?.kmpdfAnnotEditModeChangeListener = KMPDFAnnotEditModeChangeListener {
|
|
kmpdfFactory?.kmpdfAnnotEditModeChangeListener = KMPDFAnnotEditModeChangeListener {
|
|
- annotationEitModeLiveData.postValue(it)
|
|
|
|
|
|
+ annotationEitModeLiveData.postValue(AnnotationEitMode.getMode(it))
|
|
}
|
|
}
|
|
|
|
|
|
setLongPressContextMenuActions()
|
|
setLongPressContextMenuActions()
|
|
@@ -405,7 +437,7 @@ class ReaderViewModel(private val pdfSdkLicense: String, private val pdfSdkRsaMs
|
|
item.menu_resId = R.menu.context_menu_longpress
|
|
item.menu_resId = R.menu.context_menu_longpress
|
|
item.menuCallbacks.add(MenuItemCallback { view, annotType ->
|
|
item.menuCallbacks.add(MenuItemCallback { view, annotType ->
|
|
(kmpdfFactory?.getController(KMPDFFactory.ControllerType.LONGCLICK) as KMPDFLongPressCreateAnnotController).longPress_Paste()
|
|
(kmpdfFactory?.getController(KMPDFFactory.ControllerType.LONGCLICK) as KMPDFLongPressCreateAnnotController).longPress_Paste()
|
|
- annotationEitModeLiveData.postValue(KMPDFAnnotEditMode.Mode.FREETEXT_MODIFY)
|
|
|
|
|
|
+ annotationEitModeLiveData.postValue(AnnotationEitMode.FREETEXT_MODIFY)
|
|
return@MenuItemCallback true
|
|
return@MenuItemCallback true
|
|
})
|
|
})
|
|
kmpdfFactory?.setAnnotationContextMenu(item)
|
|
kmpdfFactory?.setAnnotationContextMenu(item)
|
|
@@ -528,7 +560,7 @@ class ReaderViewModel(private val pdfSdkLicense: String, private val pdfSdkRsaMs
|
|
fun clearSelection() {
|
|
fun clearSelection() {
|
|
kmpdfFactory?.setAnnotationEditMode(KMPDFAnnotationBean.AnnotationType.NULL)
|
|
kmpdfFactory?.setAnnotationEditMode(KMPDFAnnotationBean.AnnotationType.NULL)
|
|
kmpdfFactory?.kmpdfAnnotEditMode?.pdfAnnotEditMode = KMPDFAnnotEditMode.Mode.NULL
|
|
kmpdfFactory?.kmpdfAnnotEditMode?.pdfAnnotEditMode = KMPDFAnnotEditMode.Mode.NULL
|
|
- annotationEitModeLiveData.postValue(KMPDFAnnotEditMode.Mode.NULL)
|
|
|
|
|
|
+ annotationEitModeLiveData.postValue(AnnotationEitMode.NULL)
|
|
}
|
|
}
|
|
|
|
|
|
fun deleteSelectedTextBox() {
|
|
fun deleteSelectedTextBox() {
|