Menedżer danych gromadzi i raportuje wszystkie wskaźniki dotyczące Obszar roboczy Blockly. W tym przewodniku opisano znaczenie każdego zestawu danych zwracanych przez Menedżera wskaźników. Więcej informacji o Menedżerze wskaźników możesz też obejrzeć nasz szczegółowy artykuł na temat wskaźników z 2021 r..
Dane
Wskaźniki z zestawu narzędzi
workspace.getMetricsManager().getToolboxMetrics();
Dane w narzędziach składają się z height
, width
i position
z zestawu narzędzi różnych kategorii. Nie dotyczy to informacji na stronie, które są
który znajduje się w zestawie narzędzi.
Pole position
zestawu narzędzi jest typu Blockly.utils.toolbox.Position
.
Dane wysuwane
workspace.getMetricsManager().getFlyoutMetrics();
Dane w rozwijaniu reklamy składają się z height
, width
i position
elementu
wysuwanego menu. Warto zauważyć, że to nie jest menu
w zestawie narzędzi kategorii. Dotyczy to tylko wysuwanych skrzynek narzędziowych,
na poniższym zdjęciu.
position
menu rozwijanego jest typu Blockly.utils.toolbox.Position
.
Wskaźniki SVG
workspace.getMetricsManager().getSvgMetrics();
Dane SVG składają się z elementów width
i height
elementu nadrzędnego obszaru roboczego
SVG. W przypadku głównego obszaru roboczego jest to plik SVG z klasą blocklySvg
. Ten
SVG zawiera widoczny obszar roboczy oraz zestaw narzędzi.
Wyświetl wskaźniki
workspace.getMetricsManager().getViewMetrics(opt_getWorkspaceCoordinates);
Na dane o wyświetleniach składają się: height
, width
, top
i left
widoczny obszar. Widoczny obszar to widoczna część obszaru roboczego. Ten
nie obejmuje żadnego z tych typów narzędzi.
Lewy górny róg zależy od punktu początkowego obszaru roboczego. Gdy przeciągamy wokół obszaru roboczego górne i lewe położenie widocznego obszaru Zaktualizowano.
Dane bezwzględne
workspace.getMetricsManager().getAbsoluteMetrics();
Dane bezwzględne składają się z odsunięcia widocznego obszaru o top
i left
.
bezpośrednio w SVG. W zależności od tego, gdzie znajduje się zestaw narzędzi,
jest to zwykle szerokość lub wysokość zestawu narzędzi.
Charakterystyka zawartości
workspace.getMetricsManager().getContentMetrics(opt_getWorkspaceCoordinates);
Na dane dotyczące treści składają się: height
, width
, top
i left
ramki ograniczającej wokół bloków lub komentarzy w obszarze roboczym.
Dane przewijania
workspace.getMetricsManager().getScrollMetrics(opt_getWorkspaceCoordinates);
Dane o przewijaniu składają się z tych elementów: height
, width
, top
i left
:
obszar, który można przewijać. W przenośnym obszarze roboczym obszarem do przewijania jest zawartość
i dopełnienie.
Systemy współrzędnych
Domyślnie wszystkie wskaźniki obliczone przez Menedżera wskaźników są zwracane w postaci pikseli.
. W odpowiednich przypadkach można wyświetlić określone dane w
ze współrzędnymi obszaru roboczego, przekazując do metod wskaźników funkcję true
. Przykład:
metricsManager.getViewMetrics(true)
workspaceCoordinate = pixelCoordinates / workspace.scale
Współrzędne obszaru roboczego są zwykle używane w przypadku elementów znajdujących się w miejscu pracy, takimi jak blokowanie i komentarze w obszarze roboczym. Współrzędne obszaru roboczego nie zmieniają się powiększania i pomniejszania.
Zastępowanie danych
Deweloperzy, którzy chcą udostępniać własne dane dotyczące obszaru roboczego
może zarejestrować obiekt menedżera danych zastępczych, który implementuje
IMetricsManager
lub rozszerzenie Blockly.MetricsManager
.
Przykład tego możesz znaleźć we wtyczce Ciągłe narzędzia lub wtyczce Fixed Edges.