Remove archive argument from readComponent

This commit is contained in:
2021-09-30 15:03:30 -06:00
parent 602d7501da
commit 4804b121d0
4 changed files with 10 additions and 11 deletions

View File

@@ -7,7 +7,7 @@
`(.exists .components ,e ,(symbolName componentType)))
// Changes to the object returned by (readComponent) will not be saved! Use (withWritableComponents) for making changes
(defMacro readComponent [archive e componentType]
(defMacro readComponent [e componentType]
`(let [componentData (dictGet (the Map<String,String> .components ,e) ,(symbolName componentType))]
(print (+ "reading " componentData " as " ,(symbolName componentType) " for " .id ,e))
(the nat.components ,componentType
@@ -33,7 +33,7 @@
(symbol)]
(doFor [name type] bindingPairs
(bindingList.push `&mut ,name)
(bindingList.push `(readComponent ,archive ,e ,type))
(bindingList.push `(readComponent ,e ,type))
(saveList.push `(dictSet .components ,e ,(symbolName type) (tink.Json.stringify (the nat.components ,type ,name)))))
`(let [,@bindingList
,retValSymbol {,@body}]
@@ -49,16 +49,15 @@
,retValSymbol)))
// Create a system that selects Entries according to a single string component (i.e. Name or Author) matching the given value
(defMacro stringComponentSystem [archive componentType value process]
(defMacro stringComponentSystem [componentType value process]
`(new System
(lambda [archive :nat.Entry e]
?(and (hasComponent e ,componentType)
(= ,value (readComponent ,archive e ,componentType))))
(= ,value (readComponent e ,componentType))))
,process))
(function tagList [archive e]
(let [t
(readComponent archive e Tags)]
(let [t (readComponent e Tags)]
(collect (t.keys))))
(function tagsMatch [archive e tagsBoolExp]

View File

@@ -6,7 +6,7 @@
(defNew []
(super
->[archive e] (hasComponent e Name)
->[archive e] (let [name (readComponent archive e Name)]
->[archive e] (let [name (readComponent e Name)]
(if (entriesByName.exists (name.toLowerCase))
(.push (dictGet entriesByName (name.toLowerCase)) e)
(dictSet entriesByName (name.toLowerCase) [e]))

View File

@@ -10,7 +10,7 @@
// named method in case a user will want to run it on selectedEntries instead of on media entries
(method scrapeForImages [archive e]
(let [:String title
(readComponent archive e Name)
(readComponent e Name)
:Array<String> wikipediaImageUrls
(queryImageUrls (queryImageTitles [title]))]
(addFiles archive e

View File

@@ -6,8 +6,8 @@
&prop :ArchiveController controller]
[&mut :Bool selected false]
(let [images (readComponent archive e Images)]
(case (dictGet (readComponent archive e Positions) positionKey)
(let [images (readComponent e Images)]
(case (dictGet (readComponent e Positions) positionKey)
((object x x y y z z)
(super x y)))
(.onComplete (BitmapData.loadFromFile (joinPath archive.archiveDir "files" (nth images.imageFiles images.pinnedImageIndex)))
@@ -15,7 +15,7 @@
(loadGraphic bitmapData)
(updateColor)
(when (hasComponent e Scale)
(let [:Float scale (readComponent archive e Scale)]
(let [:Float scale (readComponent e Scale)]
(this.scale.set scale scale)
(updateHitbox)))
(enableMouseClicks false)