There are no reviews yet. Be the first to send feedback to the community and the maintainers!
# BCCollectionView BCCollectionView is intended as a replacement for NSCollectionView (and possibly IKImageBrowserView). It is designed to work with a lot of items and only loads the views that it actually needs. Unlike NSCollectionView, BCCollectionView smoothly displays 300.000+ items. Every 'cell' in an BCCollectionView is an NSViewController. At the moment these are only uniform; every cell is supposed to be the same NSViewController subclass. # High-level concept overview of BCCollectionView - The delegate provides empty NSViewControllers for the BCCollectionView that will be reused as often as needed; you can already style the view in it to a creation degree but the delegate doesn't know yet which item it will be displaying later. - (NSViewController *)reusableViewControllerForIconView:(BCCollectionView *)iconView - Before BCCollectionView shows them, it asks the delegate to populate an NSViewController with an item from its contentArray; this is the time to set labels or images that are dependent on the item its supposed to represent - (void)iconView:(BCCollectionView *)iconView willShowViewController:(NSViewController *)viewController forItem:(id)anItem - When the user scrolls the view, some views will become invisible. BCCollectionView removes them from view and stores them for later use. The delegate has a chance to unload any item-specific resources the item, possibly to save memory for example or do other kinds of cleanup - (void)iconView:(BCCollectionView *)iconView viewControllerBecameInvisible:(NSViewController *)viewController - If the categories on BCCollectionView are included too, the users can use either mouse or keyboard to select items. By default, BCCollectionView will (for now) just draw a rather ugly bezel under a view if it is selected. The delegate can customise this behaviour by return NO in: - (BOOL)iconViewShouldDrawSelections:(BCCollectionView *)iconView If the delegate also overrides the following two methods it can customise its view to determine how to show a selected item instead: - (void)iconView:(BCCollectionView *)iconView updateViewControllerAsSelected:(NSViewController *)viewController forItem:(id)item; - (void)iconView:(BCCollectionView *)iconView updateViewControllerAsDeselected:(NSViewController *)viewController forItem:(id)item; Note. Do not use the following methods to style viewControllers. They are intended to inform the delegates of changes in the selection. Using these methods to style the viewControllers might break when the views are being reused at a later point. - (BOOL)iconView:(BCCollectionView *)iconView shouldSelectItem:(id)anItem withViewController:(NSViewController *)viewController; - (void)iconView:(BCCollectionView *)iconView didSelectItem:(id)anItem withViewController:(NSViewController *)viewController; - (void)iconView:(BCCollectionView *)iconView didDeselectItem:(id)anItem withViewController:(NSViewController *)viewController; # Groups The latest addition to BCCollectionView has to with groups. Just like IKImageBrowserView, we can now divide the items into groups. A group is simply a range with a title, and the delegate can supply a custom NSViewController to represent the header. Groups can be set using the default way to load the BCCollectionView: - (void)reloadDataWithItems:(NSArray *)newContent groups:(NSArray *)newGroups emptyCaches:(BOOL)shouldEmptyCaches; # License BCCollectionView is licensed under the BSD license
svgo-compressor
A Plugin that compresses SVG assets using SVGO, right when you export them.SketchAPI
The JavaScript plugin library embedded in Sketchsketch-image-compressor
A Plugin for Sketch that compresses your bitmap assets, to keep filesize to a minimum.sketch-document
Monorepo for Sketch document JSON Schemas and TypeScript typesfig2sketch
fig2sketch is a command line tool that converts `.fig` files into Sketch design documents (`.sketch`), which can then be opened with Sketch applications.print-export-sketchplugin
Exports a PDF for printingunsplash-sketchplugin
Unsplash Data Provider plugin, for Sketch 52+Coma
A code generator. Takes JSON templates describing a model, and turns them into Objective-C classes.date-time-sketchplugin
Sketch data plugin generating random dates and timessketch-assistants
Monorepo containing the official Sketch Assistants, along with utility functions and types for Sketch Assistant development.sketch-file-format-ts
TypeScript types for the Sketch File Formatnicene
Additional Credo checksSketchTemplates
New document templates for Sketchsketch-ipsum
A DataSupplier Plugin for Sketch, that fills your text layers with random Lorem Ipsumsketch-assistant-template
Template repository for a starter Assistant project 🛎library-replacer-sketchplugin
A Sketch plugin that allows you to replace a library in a Sketch filesketch-reference-files
A store of automatically generated Sketch file JSON organised by document version and Sketch featureplugins.examples.datasupplier
Example plugin which supplies data for Sketch to useplugins.example.data-translate
A sample plugin that shows how to access a layer inside a Data plugincolor-variables-migrator
A Plugin to migrate colors, Layer and Text Styles to use the new Color Variables feature in Sketch 69sketch-fusion
Sketch Fusion applies themes to Design System documents.document-change-sketchplugin
Sample plugin showcasing how to handle document changes such as object addition, deletions and modifications.vectorbrush
file-format-series-sketch-to-json
Sample code for our File Format serieslayers-as-tile-pattern-sketchplugin
A Sketch plugin where you can use layers as a tile pattern to fill a shapetrolleybus
Local, application-level PubSub API for dispatching side effectsget-sketch-logs
Shell script for collecting Sketch support logs and system information into a single ZIP archive that can be shared with the Sketch customer support team.frontend-code-test
Repository for stuff related to the frontend code test.GeometryKit
color-tokens-example
sketch-overrides-manager
Manage to enable/disable the new Sketch v94+ overrides in batchdeveloper.sketch.com
The Sketch Developer websitefile-format-series-json-to-sketch
Sample code for our File Format seriesBCPopover
NSPopover substitute which in vertical mode allows for more control over placementworkspace-webhook-demo
Sample code that shows how to use the webhook feature in Sketch Workspacesgql-lint
GraphQL lintersketch-71-symbol-resync
Fixes a missing Library ID issue in Sketch 71material-icons-library
A proof of concept tool to generate Sketch files from other file formatsqa-info
Plugin for QApaginator
doctor-sketch-file
sketch-assistant-core-rules
Sketch Assistant containing the official core rulescloud-replacer
A plugin to replace Cloud documents with local fileslibwebp
Fork of https://chromium.googlesource.com/webm/libwebp.Love Open Source and this site? Check out how you can help us