Revision: 14520
          http://sourceforge.net/p/skim-app/code/14520
Author:   hofman
Date:     2024-10-05 16:45:59 +0000 (Sat, 05 Oct 2024)
Log Message:
-----------
Set propeties of SKTransitionInfo in a single setter instead of through the 
properties property

Modified Paths:
--------------
    trunk/SKPresentationOptionsSheetController.m
    trunk/SKTransitionInfo.h
    trunk/SKTransitionInfo.m

Modified: trunk/SKPresentationOptionsSheetController.m
===================================================================
--- trunk/SKPresentationOptionsSheetController.m        2024-10-05 16:14:56 UTC 
(rev 14519)
+++ trunk/SKPresentationOptionsSheetController.m        2024-10-05 16:45:59 UTC 
(rev 14520)
@@ -63,6 +63,7 @@
 #define DURATION_KEY @"duration"
 #define SHOULDRESTRICT_KEY @"shouldRestrict"
 #define PROPERTIES_KEY @"properties"
+#define TRANSITION_KEY @"transition"
 #define SEPARATE_KEY @"separate"
 #define TRANSITION_KEY @"transition"
 #define TRANSITIONS_KEY @"transitions"
@@ -161,11 +162,8 @@
 
     SKTransitionController *transitionController = [controller 
transitionControllerCreating:NO];
     SKTransitionInfo *info = [transitionController transition];
-    if (info) {
-        [transition setStyle:[info style]];
-        [transition setDuration:[info duration]];
-        [transition setShouldRestrict:[info shouldRestrict]];
-    }
+    if (info)
+        [transition setTransition:info];
     [self startObservingTransitions:@[transition]];
     
     // collapse the table, it is already hidden
@@ -598,11 +596,11 @@
     if (operation == NSTableViewDropOn) {
         NSArray *infos = [pboard readObjectsForClasses:@[[SKTransitionInfo 
class]] options:@{}];
         if ([infos count] > 0) {
-            NSDictionary *properties = [[infos objectAtIndex:0] properties];
+            SKTransitionInfo *info = [infos objectAtIndex:0];
             if (row == -1)
-                [transitions setValue:properties forKey:PROPERTIES_KEY];
+                [transitions setValue:info forKey:TRANSITION_KEY];
             else
-                [(SKTransitionInfo *)[transitions objectAtIndex:row] 
setProperties:properties];
+                [(SKTransitionInfo *)[transitions objectAtIndex:row] 
setTransition:info];
             return YES;
         }
     }
@@ -635,7 +633,7 @@
 - (void)tableView:(NSTableView *)tv pasteFromPasteboard:(NSPasteboard *)pboard 
{
     NSArray *infos = [pboard readObjectsForClasses:@[[SKTransitionInfo class]] 
options:@{}];
     if ([infos count] > 0)
-        [[transitions objectsAtIndexes:[tableView selectedRowIndexes]] 
setValue:[[infos objectAtIndex:0] properties] forKey:PROPERTIES_KEY];
+        [[transitions objectsAtIndexes:[tableView selectedRowIndexes]] 
setValue:[infos objectAtIndex:0] forKey:TRANSITION_KEY];
 }
 
 - (BOOL)tableView:(NSTableView *)tv canPasteFromPasteboard:(NSPasteboard 
*)pboard {
@@ -644,8 +642,8 @@
 
 - (void)tableView:(NSTableView *)tv deleteRowsWithIndexes:(NSIndexSet 
*)rowIndexes {
     NSArray *selTransitions = [transitions objectsAtIndexes:rowIndexes];
-    NSDictionary *empty = [[[SKTransitionInfo alloc] init] properties];
-    [selTransitions setValue:empty forKey:PROPERTIES_KEY];
+    SKTransitionInfo *empty = [[SKTransitionInfo alloc] init];
+    [selTransitions setValue:empty forKey:TRANSITION_KEY];
 }
 
 - (void)tableViewQuickLookPreviewItems:(NSTableView *)tv {

Modified: trunk/SKTransitionInfo.h
===================================================================
--- trunk/SKTransitionInfo.h    2024-10-05 16:14:56 UTC (rev 14519)
+++ trunk/SKTransitionInfo.h    2024-10-05 16:45:59 UTC (rev 14520)
@@ -59,6 +59,8 @@
 @property (nonatomic) CGFloat duration;
 @property (nonatomic) BOOL shouldRestrict;
 
+@property (nonatomic, copy) SKTransitionInfo *transition;
+
 @property (nonatomic, nullable, readonly) NSString *styleName;
 @property (nonatomic, nullable, readonly) NSString *localizedStyleName;
 

Modified: trunk/SKTransitionInfo.m
===================================================================
--- trunk/SKTransitionInfo.m    2024-10-05 16:14:56 UTC (rev 14519)
+++ trunk/SKTransitionInfo.m    2024-10-05 16:45:59 UTC (rev 14520)
@@ -51,7 +51,7 @@
 @implementation SKTransitionInfo
 
 @synthesize style, duration, shouldRestrict;
-@dynamic properties, styleName, localizedStyleName, label;
+@dynamic properties, transition, styleName, localizedStyleName, label;
 
 static NSDictionary *oldStyleNames = nil;
 
@@ -151,6 +151,16 @@
     return [NSString stringWithFormat:@"<%@ %p> %@", [self class], self, [self 
properties]];
 }
 
+- (SKTransitionInfo *)transition {
+    return self;
+}
+
+- (void)setTransition:(SKTransitionInfo *)transition {
+    [self setStyle:[transition style]];
+    [self setDuration:[transition duration]];
+    [self setShouldRestrict:[transition shouldRestrict]];
+}
+
 - (NSDictionary *)properties {
     return @{SKStyleNameKey:([self styleName] ?: @""),
              SKDurationKey:[NSNumber numberWithDouble:duration],

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

Reply via email to