mirror of
https://github.com/timokz/flutter-vienna-hackathon-25.git
synced 2025-11-08 21:04:20 +01:00
Location now working with map
This commit is contained in:
parent
75724e4043
commit
4a7b426729
7 changed files with 1800 additions and 61 deletions
1507
wien_talks/wien_talks_flutter/assets/render_themes/defaultrender.xml
Normal file
1507
wien_talks/wien_talks_flutter/assets/render_themes/defaultrender.xml
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -1,8 +1,12 @@
|
|||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:location/location.dart';
|
||||
import 'package:wien_talks_flutter/get_location_widget.dart';
|
||||
import 'package:wien_talks_flutter/mapfile_widget.dart';
|
||||
import 'package:wien_talks_flutter/news_input_form.dart';
|
||||
import 'package:wien_talks_flutter/widgets/screen_widget.dart';
|
||||
|
||||
import 'location_mgr.dart';
|
||||
|
||||
class CreateEventScreen extends StatelessWidget {
|
||||
const CreateEventScreen({super.key});
|
||||
|
||||
|
|
@ -11,9 +15,13 @@ class CreateEventScreen extends StatelessWidget {
|
|||
return ScreenWidget(
|
||||
child: Column(
|
||||
children: [
|
||||
Text("hello"),
|
||||
GetLocationWidget(),
|
||||
NewsInputForm(onSubmit: (newsEventModel) {}),
|
||||
StreamBuilder(stream: LocationMgr().stream, builder: (BuildContext context, AsyncSnapshot<LocationData> snapshot) => Text(snapshot.data.toString())),
|
||||
Expanded(
|
||||
child: GetLocationWidget(
|
||||
child: MapfileWidget(),
|
||||
),
|
||||
),
|
||||
],
|
||||
));
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,38 +1,42 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:location/location.dart';
|
||||
import 'package:wien_talks_flutter/location_mgr.dart';
|
||||
|
||||
class GetLocationWidget extends StatelessWidget {
|
||||
const GetLocationWidget({super.key});
|
||||
class GetLocationWidget extends StatefulWidget {
|
||||
final Widget child;
|
||||
|
||||
const GetLocationWidget({super.key, required this.child});
|
||||
|
||||
@override
|
||||
State<GetLocationWidget> createState() => _GetLocationWidgetState();
|
||||
}
|
||||
|
||||
class _GetLocationWidgetState extends State<GetLocationWidget> {
|
||||
@override
|
||||
void dispose() {
|
||||
LocationMgr().shutdown();
|
||||
super.dispose();
|
||||
}
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Column(
|
||||
children: [
|
||||
FutureBuilder(
|
||||
future: LocationMgr().startup(),
|
||||
builder: (BuildContext context, AsyncSnapshot<String?> snapshot) {
|
||||
switch (snapshot.connectionState) {
|
||||
case ConnectionState.waiting:
|
||||
return CircularProgressIndicator();
|
||||
case ConnectionState.done:
|
||||
{
|
||||
if (snapshot.hasData) {
|
||||
// Error occured
|
||||
return Text(snapshot.data.toString());
|
||||
} else {
|
||||
return Text("No data -> OK");
|
||||
}
|
||||
}
|
||||
default:
|
||||
if (snapshot.hasError) {
|
||||
return Text('Error: ${snapshot.error}');
|
||||
}
|
||||
return Text("OK");
|
||||
return FutureBuilder(
|
||||
future: LocationMgr().startup(),
|
||||
builder: (BuildContext context, AsyncSnapshot<String?> snapshot) {
|
||||
switch (snapshot.connectionState) {
|
||||
case ConnectionState.none:
|
||||
case ConnectionState.waiting:
|
||||
return CircularProgressIndicator();
|
||||
case ConnectionState.active:
|
||||
case ConnectionState.done:
|
||||
{
|
||||
if (snapshot.hasData) {
|
||||
// Error occured
|
||||
return Text(snapshot.data.toString(), style: TextStyle(color: Colors.red));
|
||||
} else {
|
||||
return widget.child;
|
||||
}
|
||||
}
|
||||
}),
|
||||
StreamBuilder(stream: LocationMgr().stream, builder: (BuildContext context, AsyncSnapshot<LocationData> snapshot) => Text(snapshot.data.toString())),
|
||||
],
|
||||
);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,10 +1,14 @@
|
|||
import 'dart:async';
|
||||
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:location/location.dart';
|
||||
import 'package:mapsforge_flutter/core.dart';
|
||||
import 'package:mapsforge_flutter/maps.dart';
|
||||
import 'package:mapsforge_flutter/marker.dart';
|
||||
import 'package:rxdart/rxdart.dart';
|
||||
|
||||
class LocationMgr {
|
||||
Location location = Location();
|
||||
final Location location = Location();
|
||||
|
||||
bool serviceEnabled = false;
|
||||
|
||||
|
|
@ -16,14 +20,35 @@ class LocationMgr {
|
|||
|
||||
final Subject<LocationData> _subject = PublishSubject<LocationData>();
|
||||
|
||||
final TileBitmapCache bitmapCache = MemoryTileBitmapCache.create();
|
||||
|
||||
StreamSubscription? _subscription;
|
||||
|
||||
ViewModel? viewModel;
|
||||
|
||||
late MapModel mapModel;
|
||||
|
||||
IconMarker? iconMarker;
|
||||
|
||||
final DisplayModel displayModel = DisplayModel(maxZoomLevel: 20);
|
||||
|
||||
final SymbolCache symbolCache = FileSymbolCache();
|
||||
|
||||
final JobRenderer jobRenderer = MapOnlineRenderer();
|
||||
|
||||
factory LocationMgr() {
|
||||
_instance ??= LocationMgr._();
|
||||
return _instance!;
|
||||
}
|
||||
|
||||
LocationMgr._();
|
||||
LocationMgr._() {
|
||||
mapModel = MapModel(
|
||||
displayModel: displayModel,
|
||||
renderer: jobRenderer,
|
||||
symbolCache: symbolCache,
|
||||
tileBitmapCache: bitmapCache,
|
||||
);
|
||||
}
|
||||
|
||||
Future<String?> startup() async {
|
||||
serviceEnabled = await location.serviceEnabled();
|
||||
|
|
@ -41,8 +66,21 @@ class LocationMgr {
|
|||
return "No permissions granted";
|
||||
}
|
||||
}
|
||||
viewModel = ViewModel(displayModel: displayModel);
|
||||
_subscription = location.onLocationChanged.listen((LocationData currentLocation) {
|
||||
_lastLocationData = currentLocation;
|
||||
if (currentLocation.latitude != null && currentLocation.longitude != null) {
|
||||
viewModel?.setMapViewPosition(currentLocation.latitude!, currentLocation.longitude!);
|
||||
if (iconMarker == null) {
|
||||
iconMarker ??= IconMarker(
|
||||
fontSize: 30,
|
||||
icon: Icons.gps_fixed,
|
||||
color: Colors.red,
|
||||
center: LatLong(currentLocation.latitude!, currentLocation.longitude!),
|
||||
displayModel: displayModel);
|
||||
mapModel.markerDataStores.add(MarkerDataStore()..addMarker(iconMarker!));
|
||||
}
|
||||
}
|
||||
_subject.add(currentLocation);
|
||||
});
|
||||
return null;
|
||||
|
|
@ -51,6 +89,10 @@ class LocationMgr {
|
|||
void shutdown() {
|
||||
_subscription?.cancel();
|
||||
_subscription = null;
|
||||
mapModel.markerDataStores.clear();
|
||||
iconMarker = null;
|
||||
viewModel?.dispose();
|
||||
viewModel = null;
|
||||
}
|
||||
|
||||
Stream<LocationData> get stream => _subject.stream;
|
||||
|
|
|
|||
26
wien_talks/wien_talks_flutter/lib/mapfile_widget.dart
Normal file
26
wien_talks/wien_talks_flutter/lib/mapfile_widget.dart
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:mapsforge_flutter/core.dart';
|
||||
import 'package:wien_talks_flutter/location_mgr.dart';
|
||||
|
||||
class MapfileWidget extends StatefulWidget {
|
||||
const MapfileWidget({super.key});
|
||||
|
||||
@override
|
||||
State<MapfileWidget> createState() => _MapfileWidgetState();
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
class _MapfileWidgetState extends State<MapfileWidget> {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return MapviewWidget(
|
||||
displayModel: LocationMgr().displayModel,
|
||||
createMapModel: () async {
|
||||
return LocationMgr().mapModel;
|
||||
},
|
||||
createViewModel: () async {
|
||||
return LocationMgr().viewModel!;
|
||||
});
|
||||
}
|
||||
}
|
||||
|
|
@ -10,8 +10,11 @@ import file_picker
|
|||
import file_selector_macos
|
||||
import location
|
||||
import path_provider_foundation
|
||||
<<<<<<< Updated upstream
|
||||
import shared_preferences_foundation
|
||||
import sqflite_darwin
|
||||
=======
|
||||
>>>>>>> Stashed changes
|
||||
|
||||
func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) {
|
||||
ConnectivityPlusPlugin.register(with: registry.registrar(forPlugin: "ConnectivityPlusPlugin"))
|
||||
|
|
@ -19,6 +22,9 @@ func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) {
|
|||
FileSelectorPlugin.register(with: registry.registrar(forPlugin: "FileSelectorPlugin"))
|
||||
LocationPlugin.register(with: registry.registrar(forPlugin: "LocationPlugin"))
|
||||
PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin"))
|
||||
<<<<<<< Updated upstream
|
||||
SharedPreferencesPlugin.register(with: registry.registrar(forPlugin: "SharedPreferencesPlugin"))
|
||||
SqflitePlugin.register(with: registry.registrar(forPlugin: "SqflitePlugin"))
|
||||
=======
|
||||
>>>>>>> Stashed changes
|
||||
}
|
||||
|
|
|
|||
|
|
@ -29,6 +29,8 @@ dependencies:
|
|||
|
||||
location: ^8.0.1
|
||||
|
||||
mapsforge_flutter: ^3.0.2
|
||||
|
||||
rxdart: ^0.28.0
|
||||
|
||||
serverpod_flutter: 2.9.1
|
||||
|
|
@ -59,32 +61,176 @@ flutter:
|
|||
uses-material-design: true
|
||||
|
||||
# To add assets to your application, add an assets section, like this:
|
||||
# assets:
|
||||
# - images/a_dot_burr.jpeg
|
||||
# - images/a_dot_ham.jpeg
|
||||
assets:
|
||||
- assets/render_themes/
|
||||
- packages/mapsforge_flutter/assets/patterns/dark_farmland.svg
|
||||
- packages/mapsforge_flutter/assets/patterns/dark_military.png
|
||||
- packages/mapsforge_flutter/assets/patterns/coniferous.svg
|
||||
- packages/mapsforge_flutter/assets/patterns/coniferous_and_deciduous.svg
|
||||
- packages/mapsforge_flutter/assets/patterns/deciduous.svg
|
||||
- packages/mapsforge_flutter/assets/patterns/farmland.svg
|
||||
- packages/mapsforge_flutter/assets/patterns/grass.svg
|
||||
- packages/mapsforge_flutter/assets/patterns/hills.svg
|
||||
- packages/mapsforge_flutter/assets/patterns/quarry.svg
|
||||
- packages/mapsforge_flutter/assets/patterns/scrub.svg
|
||||
- packages/mapsforge_flutter/assets/patterns/swamp.svg
|
||||
- packages/mapsforge_flutter/assets/patterns/access-destination.png
|
||||
- packages/mapsforge_flutter/assets/patterns/access-private.png
|
||||
- packages/mapsforge_flutter/assets/patterns/arrow.png
|
||||
- packages/mapsforge_flutter/assets/patterns/cemetery.png
|
||||
- packages/mapsforge_flutter/assets/patterns/deciduous.svg
|
||||
- packages/mapsforge_flutter/assets/patterns/dot.png
|
||||
- packages/mapsforge_flutter/assets/patterns/farmland.svg
|
||||
- packages/mapsforge_flutter/assets/patterns/grass.svg
|
||||
- packages/mapsforge_flutter/assets/patterns/hills.svg
|
||||
- packages/mapsforge_flutter/assets/patterns/marsh.png
|
||||
- packages/mapsforge_flutter/assets/patterns/military.png
|
||||
- packages/mapsforge_flutter/assets/patterns/nature-reserve.png
|
||||
- packages/mapsforge_flutter/assets/patterns/pike.png
|
||||
- packages/mapsforge_flutter/assets/patterns/quarry.svg
|
||||
- packages/mapsforge_flutter/assets/patterns/rail.png
|
||||
- packages/mapsforge_flutter/assets/patterns/scrub.svg
|
||||
- packages/mapsforge_flutter/assets/patterns/swamp.svg
|
||||
- packages/mapsforge_flutter/assets/patterns/wood-coniferous.png
|
||||
- packages/mapsforge_flutter/assets/patterns/wood-deciduous.png
|
||||
- packages/mapsforge_flutter/assets/patterns/wood-mixed.png
|
||||
- packages/mapsforge_flutter/assets/symbols/bench.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/cable_car.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/chair_lift.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/dot_black.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/dot_blue.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/dot_blue_dark.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/dot_magenta.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/dot_white.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/gondola.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/oneway.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/peak.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/railway-crossing-small.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/railway-crossing.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/traffic_signal.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/volcano.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/accommodation/alpinehut.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/accommodation/camping.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/accommodation/caravan_park.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/accommodation/chalet.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/accommodation/hostel.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/accommodation/hotel2.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/accommodation/shelter2.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/amenity/firestation3.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/amenity/fountain2.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/amenity/library.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/amenity/playground.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/amenity/police2.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/amenity/post_box.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/amenity/post_office.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/amenity/recycling.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/amenity/telephone.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/amenity/toilets.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/barrier/blocks.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/barrier/bollard.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/barrier/cycle_barrier.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/barrier/gate.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/barrier/lift_gate.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/barrier/stile.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/custom/amenity/fountain2.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/custom/amenity/library.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/custom/amenity/toilets.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/custom/money/atm2.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/custom/tourist/archaeological2.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/custom/tourist/attraction.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/custom/tourist/castle2.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/custom/tourist/cinema2.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/custom/tourist/information.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/custom/tourist/memorial.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/custom/tourist/monument.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/custom/tourist/museum.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/custom/tourist/ruin.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/custom/tourist/theatre.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/custom/tourist/view_point.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/custom/tourist/windmill.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/custom/tourist/zoo.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/education/nursery3.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/education/school.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/education/university.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/food/bar.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/food/biergarten.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/food/cafe.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/food/drinkingtap.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/food/fastfood.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/food/pub.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/food/restaurant.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/health/doctors2.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/health/hospital.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/health/pharmacy.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/money/atm2.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/money/bank2.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/place_of_worship/buddhist.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/place_of_worship/christian.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/place_of_worship/hindu.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/place_of_worship/islamic.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/place_of_worship/jewish.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/place_of_worship/shinto.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/place_of_worship/unknown.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/poi/cave.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/poi/embassy2.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/poi/mountain_pass.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/shopping/alcohol.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/shopping/bakery.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/shopping/bicycle.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/shopping/book.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/shopping/butcher.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/shopping/car_repair.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/shopping/convenience.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/shopping/diy.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/shopping/greengrocer.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/shopping/laundrette.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/shopping/marketplace.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/shopping/supermarket.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/sport/golf.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/sport/shooting.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/sport/soccer.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/sport/stadium.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/sport/swimming_outdoor.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/sport/tennis.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/tourist/archaeological2.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/tourist/attraction.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/tourist/castle2.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/tourist/cinema2.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/tourist/information.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/tourist/memorial.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/tourist/monument.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/tourist/museum.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/tourist/picnic.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/tourist/ruin.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/tourist/theatre.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/tourist/view_point.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/tourist/windmill.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/tourist/zoo.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/transport/airport2.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/transport/bus_station.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/transport/bus_stop.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/transport/fuel.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/transport/helicopter.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/transport/lighthouse.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/transport/parking.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/transport/parking_private.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/transport/rental_bicycle.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/transport/slipway.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/transport/traffic_lights.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/transport/train_station2.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/transport/tram_stop.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/water/weir.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/windsock.svg
|
||||
- packages/mapsforge_flutter/assets/symbols/viewpoint.svg
|
||||
|
||||
# An image asset can refer to one or more resolution-specific "variants", see
|
||||
# https://flutter.dev/assets-and-images/#resolution-aware.
|
||||
|
||||
# For details regarding adding assets from package dependencies, see
|
||||
# https://flutter.dev/assets-and-images/#from-packages
|
||||
|
||||
# To add custom fonts to your application, add a fonts section here,
|
||||
# in this "flutter" section. Each entry in this list should have a
|
||||
# "family" key with the font family name, and a "fonts" key with a
|
||||
# list giving the asset and other descriptors for the font. For
|
||||
# example:
|
||||
# fonts:
|
||||
# - family: Schyler
|
||||
# fonts:
|
||||
# - asset: fonts/Schyler-Regular.ttf
|
||||
# - asset: fonts/Schyler-Italic.ttf
|
||||
# style: italic
|
||||
# - family: Trajan Pro
|
||||
# fonts:
|
||||
# - asset: fonts/TrajanPro.ttf
|
||||
# - asset: fonts/TrajanPro_Bold.ttf
|
||||
# weight: 700
|
||||
#
|
||||
# For details regarding fonts from package dependencies,
|
||||
# see https://flutter.dev/custom-fonts/#from-packages
|
||||
fonts:
|
||||
- family: serif
|
||||
fonts:
|
||||
- asset: packages/mapsforge_flutter/assets/fonts/FreeSerif.otf
|
||||
- asset: packages/mapsforge_flutter/assets/fonts/FreeSerifBold.otf
|
||||
weight: 700
|
||||
- asset: packages/mapsforge_flutter/assets/fonts/FreeSerifBoldItalic.otf
|
||||
style: italic
|
||||
weight: 700
|
||||
- asset: packages/mapsforge_flutter/assets/fonts/FreeSerifItalic.otf
|
||||
style: italic
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue