Revision: 14062
http://sourceforge.net/p/skim-app/code/14062
Author: hofman
Date: 2024-02-19 17:26:20 +0000 (Mon, 19 Feb 2024)
Log Message:
-----------
Update preferences when changing line attributes while holding shift
Modified Paths:
--------------
trunk/PDFAnnotationCircle_SKExtensions.m
trunk/PDFAnnotationFreeText_SKExtensions.m
trunk/PDFAnnotationInk_SKExtensions.m
trunk/PDFAnnotationLine_SKExtensions.m
trunk/PDFAnnotationSquare_SKExtensions.m
trunk/PDFAnnotation_SKExtensions.h
trunk/PDFAnnotation_SKExtensions.m
trunk/SKMainWindowController_Actions.m
Modified: trunk/PDFAnnotationCircle_SKExtensions.m
===================================================================
--- trunk/PDFAnnotationCircle_SKExtensions.m 2024-02-19 17:00:57 UTC (rev
14061)
+++ trunk/PDFAnnotationCircle_SKExtensions.m 2024-02-19 17:26:20 UTC (rev
14062)
@@ -122,6 +122,12 @@
- (NSString *)alternateColorDefaultKey { return SKCircleNoteInteriorColorKey; }
+- (NSString *)lineWidthDefaultKey { return SKCircleNoteLineWidthKey; }
+
+- (NSString *)borderStyleDefaultKey { return SKCircleNoteLineStyleKey; }
+
+- (NSString *)dashPatternDefaultKey { return SKCircleNoteDashPatternKey; }
+
- (NSSet *)keysForValuesToObserveForUndo {
static NSSet *circleKeys = nil;
if (circleKeys == nil) {
Modified: trunk/PDFAnnotationFreeText_SKExtensions.m
===================================================================
--- trunk/PDFAnnotationFreeText_SKExtensions.m 2024-02-19 17:00:57 UTC (rev
14061)
+++ trunk/PDFAnnotationFreeText_SKExtensions.m 2024-02-19 17:26:20 UTC (rev
14062)
@@ -118,6 +118,12 @@
- (NSString *)alternateColorDefaultKey { return SKFreeTextNoteFontColorKey; }
+- (NSString *)lineWidthDefaultKey { return SKFreeTextNoteLineWidthKey; }
+
+- (NSString *)borderStyleDefaultKey { return SKFreeTextNoteLineStyleKey; }
+
+- (NSString *)dashPatternDefaultKey { return SKFreeTextNoteDashPatternKey; }
+
- (NSSet *)keysForValuesToObserveForUndo {
static NSSet *freeTextKeys = nil;
if (freeTextKeys == nil) {
Modified: trunk/PDFAnnotationInk_SKExtensions.m
===================================================================
--- trunk/PDFAnnotationInk_SKExtensions.m 2024-02-19 17:00:57 UTC (rev
14061)
+++ trunk/PDFAnnotationInk_SKExtensions.m 2024-02-19 17:26:20 UTC (rev
14062)
@@ -274,6 +274,12 @@
- (NSString *)colorDefaultKey { return SKInkNoteColorKey; }
+- (NSString *)lineWidthDefaultKey { return SKInkNoteLineWidthKey; }
+
+- (NSString *)borderStyleDefaultKey { return SKInkNoteLineStyleKey; }
+
+- (NSString *)dashPatternDefaultKey { return SKInkNoteDashPatternKey; }
+
- (NSSet *)keysForValuesToObserveForUndo {
static NSSet *inkKeys = nil;
if (inkKeys == nil) {
Modified: trunk/PDFAnnotationLine_SKExtensions.m
===================================================================
--- trunk/PDFAnnotationLine_SKExtensions.m 2024-02-19 17:00:57 UTC (rev
14061)
+++ trunk/PDFAnnotationLine_SKExtensions.m 2024-02-19 17:26:20 UTC (rev
14062)
@@ -176,6 +176,16 @@
- (NSString *)colorDefaultKey { return SKLineNoteColorKey; }
+- (NSString *)lineWidthDefaultKey { return SKLineNoteLineWidthKey; }
+
+- (NSString *)borderStyleDefaultKey { return SKLineNoteLineStyleKey; }
+
+- (NSString *)dashPatternDefaultKey { return SKLineNoteDashPatternKey; }
+
+- (PDFLineStyle)startLineStyleDefaultKey { return SKLineNoteStartLineStyleKey;
}
+
+- (PDFLineStyle)endLineStyleDefaultKey { return SKLineNoteEndLineStyleKey; }
+
- (NSSet *)keysForValuesToObserveForUndo {
static NSSet *lineKeys = nil;
if (lineKeys == nil) {
Modified: trunk/PDFAnnotationSquare_SKExtensions.m
===================================================================
--- trunk/PDFAnnotationSquare_SKExtensions.m 2024-02-19 17:00:57 UTC (rev
14061)
+++ trunk/PDFAnnotationSquare_SKExtensions.m 2024-02-19 17:26:20 UTC (rev
14062)
@@ -108,6 +108,12 @@
- (NSString *)alternateColorDefaultKey { return SKSquareNoteInteriorColorKey; }
+- (NSString *)lineWidthDefaultKey { return SKSquareNoteLineWidthKey; }
+
+- (NSString *)borderStyleDefaultKey { return SKSquareNoteLineStyleKey; }
+
+- (NSString *)dashPatternDefaultKey { return SKSquareNoteDashPatternKey; }
+
- (NSSet *)keysForValuesToObserveForUndo {
static NSSet *squareKeys = nil;
if (squareKeys == nil) {
Modified: trunk/PDFAnnotation_SKExtensions.h
===================================================================
--- trunk/PDFAnnotation_SKExtensions.h 2024-02-19 17:00:57 UTC (rev 14061)
+++ trunk/PDFAnnotation_SKExtensions.h 2024-02-19 17:26:20 UTC (rev 14062)
@@ -133,6 +133,11 @@
@property (nonatomic, readonly) NSString *uniqueID;
- (void)setColor:(NSColor *)color alternate:(BOOL)alternate
updateDefaults:(BOOL)update;
+- (void)setLineWidth:(CGFloat)width updateDefaults:(BOOL)update;
+- (void)setBorderStyle:(PDFBorderStyle)borderStyle updateDefaults:(BOOL)update;
+- (void)setDashPattern:(NSArray *)dashPattern updateDefaults:(BOOL)update;
+- (void)setStartLineStyle:(PDFLineStyle)startLineStyle
updateDefaults:(BOOL)update;
+- (void)setEndLineStyle:(PDFLineStyle)endLineStyle updateDefaults:(BOOL)update;
@property (nonatomic, nullable, readonly) NSURL *skimURL;
Modified: trunk/PDFAnnotation_SKExtensions.m
===================================================================
--- trunk/PDFAnnotation_SKExtensions.m 2024-02-19 17:00:57 UTC (rev 14061)
+++ trunk/PDFAnnotation_SKExtensions.m 2024-02-19 17:26:20 UTC (rev 14062)
@@ -532,6 +532,16 @@
- (NSString *)alternateColorDefaultKey { return nil; }
+- (NSString *)lineWidthDefaultKey { return nil; }
+
+- (NSString *)borderStyleDefaultKey { return nil; }
+
+- (NSString *)dashPatternDefaultKey { return nil; }
+
+- (NSString *)startLineStyleDefaultKey { return nil; }
+
+- (NSString *)endLineStyleDefaultKey { return nil; }
+
- (void)setColor:(NSColor *)color alternate:(BOOL)alternate
updateDefaults:(BOOL)update {
BOOL isFill = alternate && [self hasInteriorColor];
BOOL isText = alternate && [self isText];
@@ -551,6 +561,51 @@
}
}
+- (void)setLineWidth:(CGFloat)width updateDefaults:(BOOL)update {
+ [self setLineWidth:width];
+ if (update) {
+ NSString *key = [self lineWidthDefaultKey];
+ if (key)
+ [[NSUserDefaults standardUserDefaults] setDouble:width forKey:key];
+ }
+}
+
+- (void)setBorderStyle:(PDFBorderStyle)borderStyle updateDefaults:(BOOL)update
{
+ [self setBorderStyle:borderStyle];
+ if (update) {
+ NSString *key = [self borderStyleDefaultKey];
+ if (key)
+ [[NSUserDefaults standardUserDefaults] setInteger:borderStyle
forKey:key];
+ }
+}
+
+- (void)setDashPattern:(NSArray *)dashPattern updateDefaults:(BOOL)update {
+ [self setDashPattern:dashPattern];
+ if (update) {
+ NSString *key = [self dashPatternDefaultKey];
+ if (key)
+ [[NSUserDefaults standardUserDefaults] setObject:dashPattern
forKey:key];
+ }
+}
+
+- (void)setStartLineStyle:(PDFLineStyle)startLineStyle
updateDefaults:(BOOL)update {
+ [self setStartLineStyle:startLineStyle];
+ if (update) {
+ NSString *key = [self startLineStyleDefaultKey];
+ if (key)
+ [[NSUserDefaults standardUserDefaults] setInteger:startLineStyle
forKey:key];
+ }
+}
+
+- (void)setEndLineStyle:(PDFLineStyle)endLineStyle updateDefaults:(BOOL)update
{
+ [self setEndLineStyle:endLineStyle];
+ if (update) {
+ NSString *key = [self endLineStyleDefaultKey];
+ if (key)
+ [[NSUserDefaults standardUserDefaults] setInteger:endLineStyle
forKey:key];
+ }
+}
+
- (NSURL *)skimURL {
return [[self page] skimURL];
}
Modified: trunk/SKMainWindowController_Actions.m
===================================================================
--- trunk/SKMainWindowController_Actions.m 2024-02-19 17:00:57 UTC (rev
14061)
+++ trunk/SKMainWindowController_Actions.m 2024-02-19 17:26:20 UTC (rev
14062)
@@ -167,24 +167,25 @@
SKLineChangeAction action = [sender currentLineChangeAction];
PDFAnnotation *annotation = [pdfView currentAnnotation];
if (mwcFlags.updatingLine == 0 && [self hasOverview] == NO && [annotation
hasBorder]) {
+ BOOL isShift = ([NSEvent standardModifierFlags] &
NSEventModifierFlagShift) != 0;
mwcFlags.updatingLine = 1;
switch (action) {
case SKLineChangeActionLineWidth:
- [annotation setLineWidth:[sender lineWidth]];
+ [annotation setLineWidth:[sender lineWidth]
updateDefaults:isShift];
break;
case SKLineChangeActionStyle:
- [annotation setBorderStyle:[(SKLineInspector *)sender style]];
+ [annotation setBorderStyle:[(SKLineInspector *)sender style]
updateDefaults:isShift];
break;
case SKLineChangeActionDashPattern:
- [annotation setDashPattern:[sender dashPattern]];
+ [annotation setDashPattern:[sender dashPattern]
updateDefaults:isShift];
break;
case SKLineChangeActionStartLineStyle:
if ([annotation isLine])
- [annotation setStartLineStyle:[sender startLineStyle]];
+ [annotation setStartLineStyle:[sender startLineStyle]
updateDefaults:isShift];
break;
case SKLineChangeActionEndLineStyle:
if ([annotation isLine])
- [annotation setEndLineStyle:[sender endLineStyle]];
+ [annotation setEndLineStyle:[sender endLineStyle]
updateDefaults:isShift];
break;
case SKNoLineChangeAction:
break;
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
_______________________________________________
Skim-app-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/skim-app-commit