Remove most remaining virtual methods from IPDFSDK_AnnotHandler.
Move the overrides from methods like GetText() and SelectAllText() to
CPDFSDK_Annot instead. Continue removing CPDFSDK_AnnotHandlerMgr
pass-throughs, such that IPDFSDK_AnnotHandler and
CPDFSDK_AnnotHandlerMgr are close to being completely dead code.
Change-Id: I1ddf4b8b1155cfadb60e20a25aca06893681434d
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/92371
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
diff --git a/fpdfsdk/cpdfsdk_annot.h b/fpdfsdk/cpdfsdk_annot.h
index 17a68b4..a899d51 100644
--- a/fpdfsdk/cpdfsdk_annot.h
+++ b/fpdfsdk/cpdfsdk_annot.h
@@ -12,6 +12,7 @@
#include "core/fxcrt/mask.h"
#include "core/fxcrt/observed_ptr.h"
#include "core/fxcrt/unowned_ptr.h"
+#include "core/fxcrt/widestring.h"
#include "public/fpdf_fwlevent.h"
class CPDF_Page;
@@ -72,6 +73,12 @@
virtual bool CanRedo() = 0;
virtual bool Undo() = 0;
virtual bool Redo() = 0;
+ virtual WideString GetText() = 0;
+ virtual WideString GetSelectedText() = 0;
+ virtual void ReplaceSelection(const WideString& text) = 0;
+ virtual bool SelectAllText() = 0;
+ virtual bool SetIndexSelected(int index, bool selected) = 0;
+ virtual bool IsIndexSelected(int index) = 0;
// Callers must check if `pAnnot` is still valid after calling these methods,
// before accessing them again.