Skip to content

Commit

Permalink
Annotation author (#36)
Browse files Browse the repository at this point in the history
* Add annotationAuthor prop

* author for android
  • Loading branch information
sgong-pdftron committed Nov 12, 2019
1 parent dc31f2f commit c03ce1b
Show file tree
Hide file tree
Showing 7 changed files with 32 additions and 0 deletions.
4 changes: 4 additions & 0 deletions README.md
Expand Up @@ -280,6 +280,7 @@ A component for displaying documents of different types such as PDF, docx, pptx,
- [disabledTools](#disabledtools)
- [customHeaders](#customheaders)
- [readOnly](#readonly)
- [annotationAuthor](#annotationauthor)
- [continuousAnnotationEditing](#continuousannotationediting)
- [fitMode](#fitmode)
- [layoutMode](#layoutmode)
Expand Down Expand Up @@ -312,6 +313,8 @@ array of string, optional
object, optional
##### readOnly
bool, optional
##### annotationAuthor
string, optional
##### continuousAnnotationEditing
bool, optional
##### fitMode
Expand Down Expand Up @@ -365,6 +368,7 @@ import { DocumentView, Config } from 'react-native-pdftron';
customHeaders={{Foo: bar}}
initialPageNumber={11}
readOnly={false}
annotationAuthor={'PDFTron'}
continuousAnnotationEditing={true}
fitMode={Config.FitMode.FitPage}
layoutMode={Config.LayoutMode.Continuous}
Expand Down
Expand Up @@ -132,6 +132,11 @@ public void setContinuousAnnotationEditing(DocumentView documentView, boolean co
documentView.setContinuousAnnotationEditing(contEditing);
}

@ReactProp(name = "annotationAuthor")
public void setAnnotationAuthor(DocumentView documentView, String author) {
documentView.setAnnotationAuthor(author);
}

public void importAnnotations(int tag, String xfdf) throws PDFNetException {
DocumentView documentView = mDocumentViews.get(tag);
if (documentView != null) {
Expand Down
Expand Up @@ -221,6 +221,14 @@ public void setContinuousAnnotationEditing(boolean contEditing) {
}
}

public void setAnnotationAuthor(String author) {
Context context = getContext();
if (context != null && !Utils.isNullOrEmpty(author)) {
PdfViewCtrlSettingsManager.updateAuthorName(context, author);
PdfViewCtrlSettingsManager.setAnnotListShowAuthor(context, true);
}
}

private void disableElements(ReadableArray args) {
for (int i = 0; i < args.size(); i++) {
String item = args.getString(i);
Expand Down
2 changes: 2 additions & 0 deletions ios/RNTPTDocumentView.h
Expand Up @@ -54,6 +54,8 @@
@property (nonatomic, copy) NSString *fitMode;
@property (nonatomic, copy) NSString *layoutMode;

@property (nonatomic, copy) NSString *annotationAuthor;

@property (nonatomic) BOOL continuousAnnotationEditing;

@property (nonatomic, copy) RCTBubblingEventBlock onChange;
Expand Down
5 changes: 5 additions & 0 deletions ios/RNTPTDocumentView.m
Expand Up @@ -841,6 +841,11 @@ - (void)setContinuousAnnotationEditing:(BOOL)continuousAnnotationEditing
self.documentViewController.continuousAnnotationEditing = continuousAnnotationEditing;
}

- (void)setAnnotationAuthor:(NSString *)annotationAuthor
{
self.documentViewController.toolManager.annotationAuthor = annotationAuthor;
}

- (void)navButtonClicked
{
if([self.delegate respondsToSelector:@selector(navButtonClicked:)]) {
Expand Down
7 changes: 7 additions & 0 deletions ios/RNTPTDocumentViewManager.m
Expand Up @@ -165,6 +165,13 @@ - (instancetype)init
}
}

RCT_CUSTOM_VIEW_PROPERTY(annotationAuthor, NSString, RNTPTDocumentView)
{
if (json) {
view.annotationAuthor = [RCTConvert NSString:json];
}
}

- (UIView *)view
{
RNTPTDocumentView *documentView = [[RNTPTDocumentView alloc] init];
Expand Down
1 change: 1 addition & 0 deletions src/DocumentView/DocumentView.js
Expand Up @@ -33,6 +33,7 @@ export default class DocumentView extends PureComponent {
fitMode: PropTypes.string,
layoutMode: PropTypes.string,
continuousAnnotationEditing: PropTypes.bool,
annotationAuthor: PropTypes.string,
...ViewPropTypes,
};

Expand Down

0 comments on commit c03ce1b

Please sign in to comment.