├── MyTrains.Localization
├── Strings.nl-BE.Designer.cs
├── obj
│ └── Debug
│ │ ├── TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
│ │ ├── TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
│ │ ├── TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
│ │ ├── TempPE
│ │ └── Strings.nl-BE.Designer.cs.dll
│ │ ├── DesignTimeResolveAssemblyReferences.cache
│ │ └── DesignTimeResolveAssemblyReferencesInput.cache
├── MyTrains.Localization.csproj.vspscc
├── LocalizedStrings.cs
└── Properties
│ └── AssemblyInfo.cs
├── README.md
├── MyTrains.Core
├── obj
│ └── Debug
│ │ ├── TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
│ │ ├── TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
│ │ ├── TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
│ │ ├── DesignTimeResolveAssemblyReferences.cache
│ │ └── DesignTimeResolveAssemblyReferencesInput.cache
├── Model
│ ├── BaseModel.cs
│ ├── Settings.cs
│ ├── User.cs
│ ├── City.cs
│ ├── SavedJourney.cs
│ ├── App
│ │ ├── SearchParameters.cs
│ │ └── MenuItem.cs
│ ├── Currency.cs
│ └── Journey.cs
├── Contracts
│ ├── ViewModel
│ │ ├── ILoginViewModel.cs
│ │ ├── IMainViewModel.cs
│ │ ├── ISettingsViewModel.cs
│ │ ├── IJourneyDetailViewModel.cs
│ │ ├── ISavedJourneysViewModel.cs
│ │ ├── ISearchResultViewModel.cs
│ │ └── ISearchJourneyViewModel.cs
│ ├── Services
│ │ ├── IConnectionService.cs
│ │ ├── IDialogService.cs
│ │ ├── ICityDataService.cs
│ │ ├── IUserDataService.cs
│ │ ├── ISettingsDataService.cs
│ │ ├── ISavedJourneyDataService.cs
│ │ └── IJourneyDataService.cs
│ └── Repository
│ │ ├── IUserRepository.cs
│ │ ├── ICityRepository.cs
│ │ ├── ISettingsRepository.cs
│ │ ├── ISavedJourneyRepository.cs
│ │ └── IJourneyRepository.cs
├── Utility
│ ├── UrlConstants.cs
│ ├── MenuOption.cs
│ └── ResxTextProvider.cs
├── MyTrains.Core.csproj.user
├── Extensions
│ ├── TaskExtensions.cs
│ └── ListExtensions.cs
├── MyTrains.Core.csproj.vspscc
├── Services
│ ├── General
│ │ └── ConnectionService.cs
│ └── Data
│ │ ├── CityDataService.cs
│ │ ├── UserDataService.cs
│ │ ├── SettingsDataService.cs
│ │ ├── JourneyDataService.cs
│ │ └── SavedJourneyDataService.cs
├── Messages
│ └── CurrencyChangedMessage.cs
├── Converters
│ ├── DateTimeToDayConverter.cs
│ ├── DateTimeToTimeConverter.cs
│ └── CurrencyToStringConverter.cs
├── AppStart.cs
├── Fake
│ └── SearchJourneyViewModel.cs
├── App.cs
├── Repositories
│ ├── BaseRepository.cs
│ ├── UserRepository.cs
│ ├── SettingsRepository.cs
│ ├── SavedJourneyRepository.cs
│ └── CityRepository.cs
├── ViewModel
│ ├── BaseViewModel.cs
│ ├── MainViewModel.cs
│ └── MenuViewModel.cs
├── Properties
│ └── AssemblyInfo.cs
└── packages.config
├── Components
├── fmcalendar-1.5.3.png
├── square.androidtimessquare-1.6.5.0.png
├── fmcalendar-1.5.3
│ ├── lib
│ │ ├── ios
│ │ │ └── Factorymind.Components.dll
│ │ └── ios-unified
│ │ │ └── Factorymind.Components-Unified.dll
│ ├── component
│ │ ├── icons
│ │ │ ├── fmcalendar_128x128.png
│ │ │ └── fmcalendar_512x512.png
│ │ ├── screenshots
│ │ │ └── screenshot1.jpg
│ │ ├── License.md
│ │ ├── Manifest.xml
│ │ ├── Details.md
│ │ └── GettingStarted.md
│ └── samples
│ │ ├── FMCalendarSample.iOS
│ │ ├── Resources
│ │ │ └── Default-568h@2x.png
│ │ ├── Entitlements.plist
│ │ ├── Main.cs
│ │ ├── AppDelegate.cs
│ │ ├── Info.plist
│ │ ├── FMCalendarViewController.cs
│ │ └── FMCalendarSample.iOS.sln
│ │ └── FMCalendarSample.iOS-Unified
│ │ ├── Resources
│ │ └── Default-568h@2x.png
│ │ ├── Entitlements.plist
│ │ ├── Main.cs
│ │ ├── AppDelegate.cs
│ │ ├── Info.plist
│ │ ├── FMCalendarViewController.cs
│ │ └── FMCalendarSample.iOS-Unified.sln
└── square.androidtimessquare-1.6.5.0
│ ├── lib
│ └── android
│ │ └── Square.AndroidTimesSquare.dll
│ ├── component
│ ├── icons
│ │ ├── square.androidtimessquare_128x128.png
│ │ └── square.androidtimessquare_512x512.png
│ ├── License.md
│ ├── Manifest.xml
│ ├── GettingStarted.md
│ └── Details.md
│ └── samples
│ └── AndroidTimesSquareSample
│ ├── Resources
│ ├── drawable
│ │ ├── Icon.png
│ │ ├── bg_circle_selected.xml
│ │ ├── bg_circle_today.xml
│ │ └── custom_calendar_bg_selector.xml
│ ├── drawable-hdpi
│ │ └── icon.png
│ ├── drawable-mdpi
│ │ └── icon.png
│ ├── drawable-xhdpi
│ │ └── icon.png
│ ├── drawable-xxhdpi
│ │ └── icon.png
│ ├── values
│ │ ├── dimens.xml
│ │ ├── colors.xml
│ │ └── Strings.xml
│ ├── layout
│ │ ├── Dialog.axml
│ │ └── DialogCustomized.axml
│ └── color
│ │ └── custom_calendar_text_selector.xml
│ ├── Properties
│ ├── AndroidManifest.xml
│ └── AssemblyInfo.cs
│ ├── packages.config
│ └── AndroidTimesSquareSample.sln
├── MyTrains.Droid
├── Resources
│ ├── .DS_Store
│ ├── drawable
│ │ ├── .DS_Store
│ │ ├── drawer_shadow_dark.9.png
│ │ ├── drawer_shadow_light.9.png
│ │ ├── btn_enabled.xml
│ │ ├── btn_disabled.xml
│ │ ├── toolbar_dropshadow.axml
│ │ ├── calendar_border.xml
│ │ ├── border_button.axml
│ │ ├── scaledBackground.xml
│ │ ├── button_selector.xml
│ │ ├── secondary_button_selector.axml
│ │ └── spinner_border.xml
│ ├── drawable-hdpi
│ │ ├── app_icon.png
│ │ ├── arrow_up.png
│ │ ├── splash.png
│ │ ├── arrow_down.png
│ │ ├── arrow_left.png
│ │ └── arrow_right.png
│ ├── drawable-ldpi
│ │ ├── app_icon.png
│ │ ├── arrow_up.png
│ │ ├── splash.png
│ │ ├── arrow_down.png
│ │ ├── arrow_left.png
│ │ └── arrow_right.png
│ ├── drawable-mdpi
│ │ ├── app_icon.png
│ │ ├── arrow_up.png
│ │ ├── splash.png
│ │ ├── arrow_down.png
│ │ ├── arrow_left.png
│ │ └── arrow_right.png
│ ├── drawable-xhdpi
│ │ ├── splash.png
│ │ ├── app_icon.png
│ │ ├── arrow_up.png
│ │ ├── arrow_down.png
│ │ ├── arrow_left.png
│ │ └── arrow_right.png
│ ├── drawable-xxhdpi
│ │ ├── splash.png
│ │ ├── app_icon.png
│ │ ├── arrow_up.png
│ │ ├── arrow_down.png
│ │ ├── arrow_left.png
│ │ └── arrow_right.png
│ ├── drawable-xxxhdpi
│ │ ├── splash.png
│ │ ├── app_icon.png
│ │ ├── arrow_down.png
│ │ ├── arrow_left.png
│ │ ├── arrow_up.png
│ │ └── arrow_right.png
│ ├── values
│ │ ├── Strings.xml
│ │ ├── dimens.axml
│ │ ├── SplashStyle.axml
│ │ ├── styles.xml
│ │ └── colors.xml
│ ├── layout
│ │ ├── SplashScreen.axml
│ │ ├── item_city_dropdown.axml
│ │ ├── toolbar_shadow.axml
│ │ ├── item_city.axml
│ │ ├── item_currency.axml
│ │ ├── SavedJourneysView.axml
│ │ ├── SearchResultsView.axml
│ │ ├── fragment_menu.axml
│ │ ├── toolbar.axml
│ │ ├── MainView.axml
│ │ ├── item_menu.axml
│ │ └── SettingsView.axml
│ └── AboutResources.txt
├── GettingStarted.Xamarin
├── Bootstrap
│ ├── FilePluginBootstrap.cs
│ ├── SqlitePluginBootstrap.cs
│ ├── MessengerPluginBootstrap.cs
│ └── WebBrowserPluginBootstrap.cs
├── MyTrains.Droid.csproj.vspscc
├── MyTrains.Droid.csproj.user
├── Properties
│ ├── AndroidManifest.xml
│ └── AssemblyInfo.cs
├── SplashScreen.cs
├── Extensions
│ ├── ActivityExtensions.cs
│ └── MonoTypeExtensions.cs
├── Assets
│ └── AboutAssets.txt
├── DebugTrace.cs
├── Views
│ ├── SettingsFragment.cs
│ ├── SavedJourneysFragment.cs
│ ├── JourneyDetailsFragment.cs
│ ├── MenuFragment.cs
│ └── SearchResultsFragment.cs
├── Services
│ └── DialogService.cs
├── obj
│ └── Debug
│ │ └── sdks.cache
└── Setup.cs
├── MyTrains.iOS
├── Resources
│ └── Assets.xcassets
│ │ ├── Contents.json
│ │ ├── splash.imageset
│ │ ├── splash.png
│ │ ├── splash@2x.png
│ │ ├── splash@3x.png
│ │ └── Contents.json
│ │ ├── AppIcons.appiconset
│ │ ├── Icon.png
│ │ ├── Icon-40.png
│ │ ├── Icon-60.png
│ │ ├── Icon-72.png
│ │ ├── Icon-76.png
│ │ ├── Icon@2x.png
│ │ ├── Icon-40@2x.png
│ │ ├── Icon-40@3x.png
│ │ ├── Icon-60@2x.png
│ │ ├── Icon-60@3x.png
│ │ ├── Icon-72@2x.png
│ │ ├── Icon-76@2x.png
│ │ ├── Icon-Small.png
│ │ ├── Icon-83.5@2x.png
│ │ ├── Icon-Small-50.png
│ │ ├── Icon-Small@2x.png
│ │ ├── Icon-Small@3x.png
│ │ ├── iTunesArtwork.png
│ │ ├── Icon-Small-50@2x.png
│ │ └── iTunesArtwork@2x.png
│ │ ├── arrow-up.imageset
│ │ ├── arrow-up.png
│ │ ├── arrow-up@2x.png
│ │ ├── arrow-up@3x.png
│ │ └── Contents.json
│ │ ├── arrow-down.imageset
│ │ ├── arrow-down.png
│ │ ├── arrow-down@2x.png
│ │ ├── arrow-down@3x.png
│ │ └── Contents.json
│ │ ├── arrow-left.imageset
│ │ ├── arrow-left.png
│ │ ├── arrow-left@2x.png
│ │ ├── arrow-left@3x.png
│ │ └── Contents.json
│ │ ├── arrow-right.imageset
│ │ ├── arrow-right.png
│ │ ├── arrow-right@2x.png
│ │ ├── arrow-right@3x.png
│ │ └── Contents.json
│ │ ├── ic-home-active.imageset
│ │ ├── ic-home-active.png
│ │ ├── ic-home-active@2x.png
│ │ ├── ic-home-active@3x.png
│ │ └── Contents.json
│ │ ├── ic-home-normal.imageset
│ │ ├── ic-home-normal.png
│ │ ├── ic-home-normal@2x.png
│ │ ├── ic-home-normal@3x.png
│ │ └── Contents.json
│ │ ├── ic-saved-active.imageset
│ │ ├── ic-saved-active.png
│ │ ├── ic-saved-active@2x.png
│ │ ├── ic-saved-active@3x.png
│ │ └── Contents.json
│ │ ├── ic-saved-normal.imageset
│ │ ├── ic-saved-normal.png
│ │ ├── ic-saved-normal@2x.png
│ │ ├── ic-saved-normal@3x.png
│ │ └── Contents.json
│ │ ├── ic-search-active.imageset
│ │ ├── ic-search-active.png
│ │ ├── ic-search-active@2x.png
│ │ ├── ic-search-active@3x.png
│ │ └── Contents.json
│ │ ├── ic-search-normal.imageset
│ │ ├── ic-search-normal.png
│ │ ├── ic-search-normal@2x.png
│ │ ├── ic-search-normal@3x.png
│ │ └── Contents.json
│ │ ├── ic-settings-active.imageset
│ │ ├── ic-settings-active.png
│ │ ├── ic-settings-active@2x.png
│ │ ├── ic-settings-active@3x.png
│ │ └── Contents.json
│ │ └── ic-settings-normal.imageset
│ │ ├── ic-settings-normal.png
│ │ ├── ic-settings-normal@2x.png
│ │ ├── ic-settings-normal@3x.png
│ │ └── Contents.json
├── Assets.xcassets
│ └── LaunchImage.launchimage
│ │ └── Contents.json
├── Entitlements.plist
├── Bootstrap
│ ├── JsonPluginBootstrap.cs
│ ├── MessengerPluginBootstrap.cs
│ ├── SqlitePluginBootstrap.cs
│ └── WebBrowserPluginBootstrap.cs
├── MyTrains.iOS.csproj.user
├── MyTrains.iOS.csproj.vspscc
├── StoryBoardContainer.cs
├── Views
│ ├── MainView.designer.cs
│ ├── SavedJourneysView.designer.cs
│ ├── SearchResultView.designer.cs
│ ├── BaseView.cs
│ ├── SettingsView.designer.cs
│ ├── SearchJourneyView.designer.cs
│ └── SearchResultView.cs
├── Utility
│ └── MyTrainsColors.cs
├── Services
│ └── DialogService.cs
├── Main.cs
├── TableViewSources
│ ├── SavedJourneysTableViewSource.cs
│ └── SearchResultsTableViewSource.cs
├── Setup.cs
├── packages.config
├── SearchResultCell.designer.cs
├── SearchResultsCell.designer.cs
├── Controls
│ └── CalendarHelper.cs
├── SearchResultsCell.cs
├── Info.plist
├── Properties
│ └── AssemblyInfo.cs
├── SavedJourneyCell.cs
└── SavedJourneyCell.designer.cs
├── Libraries
└── MvvmCross.Droid.Support.V7.Fragging.4.1.1
│ ├── MvvmCross.Droid.Support.V7.Fragging.4.1.1.nupkg
│ └── lib
│ └── MonoAndroid403
│ ├── MvvmCross.Droid.Support.V7.Fragging.dll
│ └── MvvmCross.Droid.Support.V7.Fragging.dll.config
├── packages
└── repositories.config
└── MyTrains.Core.UnitTests
├── Bootstrap
└── MessengerPluginBootstrap.cs
├── MyTrains.Core.UnitTests.csproj.vspscc
├── Tests
├── Repository
│ └── CityRepositoryTests.cs
└── Services
│ └── CityDataServiceTests.cs
├── Mocks
├── RepositoryMocks.cs
└── ServiceMocks.cs
├── packages.config
└── Properties
└── AssemblyInfo.cs
/MyTrains.Localization/Strings.nl-BE.Designer.cs:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # MyTrains
2 | Pluralsight Xamarin MVVM course sample code
3 |
--------------------------------------------------------------------------------
/MyTrains.Core/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/MyTrains.Core/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/MyTrains.Core/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/MyTrains.Localization/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/MyTrains.Localization/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/MyTrains.Localization/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/Components/fmcalendar-1.5.3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/Components/fmcalendar-1.5.3.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/.DS_Store
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable/.DS_Store
--------------------------------------------------------------------------------
/MyTrains.Core/Model/BaseModel.cs:
--------------------------------------------------------------------------------
1 | namespace MyTrains.Core.Model
2 | {
3 | public abstract class BaseModel
4 | {
5 |
6 | }
7 | }
--------------------------------------------------------------------------------
/Components/square.androidtimessquare-1.6.5.0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/Components/square.androidtimessquare-1.6.5.0.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-hdpi/app_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-hdpi/app_icon.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-hdpi/arrow_up.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-hdpi/arrow_up.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-hdpi/splash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-hdpi/splash.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-ldpi/app_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-ldpi/app_icon.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-ldpi/arrow_up.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-ldpi/arrow_up.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-ldpi/splash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-ldpi/splash.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-mdpi/app_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-mdpi/app_icon.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-mdpi/arrow_up.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-mdpi/arrow_up.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-mdpi/splash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-mdpi/splash.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-xhdpi/splash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-xhdpi/splash.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-xxhdpi/splash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-xxhdpi/splash.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-hdpi/arrow_down.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-hdpi/arrow_down.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-hdpi/arrow_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-hdpi/arrow_left.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-ldpi/arrow_down.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-ldpi/arrow_down.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-ldpi/arrow_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-ldpi/arrow_left.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-mdpi/arrow_down.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-mdpi/arrow_down.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-mdpi/arrow_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-mdpi/arrow_left.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-xhdpi/app_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-xhdpi/app_icon.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-xhdpi/arrow_up.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-xhdpi/arrow_up.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-xxhdpi/app_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-xxhdpi/app_icon.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-xxhdpi/arrow_up.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-xxhdpi/arrow_up.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-xxxhdpi/splash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-xxxhdpi/splash.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-hdpi/arrow_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-hdpi/arrow_right.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-ldpi/arrow_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-ldpi/arrow_right.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-mdpi/arrow_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-mdpi/arrow_right.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-xhdpi/arrow_down.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-xhdpi/arrow_down.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-xhdpi/arrow_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-xhdpi/arrow_left.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-xhdpi/arrow_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-xhdpi/arrow_right.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-xxhdpi/arrow_down.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-xxhdpi/arrow_down.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-xxhdpi/arrow_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-xxhdpi/arrow_left.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-xxhdpi/arrow_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-xxhdpi/arrow_right.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-xxxhdpi/app_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-xxxhdpi/app_icon.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-xxxhdpi/arrow_down.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-xxxhdpi/arrow_down.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-xxxhdpi/arrow_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-xxxhdpi/arrow_left.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-xxxhdpi/arrow_up.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-xxxhdpi/arrow_up.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Assets.xcassets/LaunchImage.launchimage/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [],
3 | "info": {
4 | "version": 1,
5 | "author": "xcode"
6 | }
7 | }
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable-xxxhdpi/arrow_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable-xxxhdpi/arrow_right.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable/drawer_shadow_dark.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable/drawer_shadow_dark.9.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable/drawer_shadow_light.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Droid/Resources/drawable/drawer_shadow_light.9.png
--------------------------------------------------------------------------------
/Components/fmcalendar-1.5.3/lib/ios/Factorymind.Components.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/Components/fmcalendar-1.5.3/lib/ios/Factorymind.Components.dll
--------------------------------------------------------------------------------
/MyTrains.Core/Contracts/ViewModel/ILoginViewModel.cs:
--------------------------------------------------------------------------------
1 | namespace MyTrains.Core.Contracts.ViewModel
2 | {
3 | public interface ILoginViewModel
4 | {
5 |
6 | }
7 | }
--------------------------------------------------------------------------------
/MyTrains.Core/Contracts/ViewModel/IMainViewModel.cs:
--------------------------------------------------------------------------------
1 | namespace MyTrains.Core.Contracts.ViewModel
2 | {
3 | public interface IMainViewModel
4 | {
5 |
6 | }
7 | }
--------------------------------------------------------------------------------
/MyTrains.Core/Utility/UrlConstants.cs:
--------------------------------------------------------------------------------
1 | namespace MyTrains.Core.Utility
2 | {
3 | public class UrlConstants
4 | {
5 | public const string CityApiUrl = "";
6 | }
7 | }
--------------------------------------------------------------------------------
/Components/fmcalendar-1.5.3/component/icons/fmcalendar_128x128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/Components/fmcalendar-1.5.3/component/icons/fmcalendar_128x128.png
--------------------------------------------------------------------------------
/Components/fmcalendar-1.5.3/component/icons/fmcalendar_512x512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/Components/fmcalendar-1.5.3/component/icons/fmcalendar_512x512.png
--------------------------------------------------------------------------------
/Components/fmcalendar-1.5.3/component/screenshots/screenshot1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/Components/fmcalendar-1.5.3/component/screenshots/screenshot1.jpg
--------------------------------------------------------------------------------
/MyTrains.Core/Contracts/ViewModel/ISettingsViewModel.cs:
--------------------------------------------------------------------------------
1 | namespace MyTrains.Core.Contracts.ViewModel
2 | {
3 | public interface ISettingsViewModel
4 | {
5 |
6 | }
7 | }
--------------------------------------------------------------------------------
/MyTrains.Core/Model/Settings.cs:
--------------------------------------------------------------------------------
1 | namespace MyTrains.Core.Model
2 | {
3 | public class Settings
4 | {
5 | public Currency SelectedCurrency { get; set; }
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/MyTrains.Core/obj/Debug/DesignTimeResolveAssemblyReferences.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Core/obj/Debug/DesignTimeResolveAssemblyReferences.cache
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/splash.imageset/splash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/splash.imageset/splash.png
--------------------------------------------------------------------------------
/MyTrains.Localization/obj/Debug/TempPE/Strings.nl-BE.Designer.cs.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Localization/obj/Debug/TempPE/Strings.nl-BE.Designer.cs.dll
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/splash.imageset/splash@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/splash.imageset/splash@2x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/splash.imageset/splash@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/splash.imageset/splash@3x.png
--------------------------------------------------------------------------------
/MyTrains.Core/Contracts/ViewModel/IJourneyDetailViewModel.cs:
--------------------------------------------------------------------------------
1 | namespace MyTrains.Core.Contracts.ViewModel
2 | {
3 | public interface IJourneyDetailViewModel
4 | {
5 |
6 | }
7 | }
--------------------------------------------------------------------------------
/MyTrains.Core/Contracts/ViewModel/ISavedJourneysViewModel.cs:
--------------------------------------------------------------------------------
1 | namespace MyTrains.Core.Contracts.ViewModel
2 | {
3 | public interface ISavedJourneysViewModel
4 | {
5 |
6 | }
7 | }
--------------------------------------------------------------------------------
/MyTrains.Core/Contracts/ViewModel/ISearchResultViewModel.cs:
--------------------------------------------------------------------------------
1 | namespace MyTrains.Core.Contracts.ViewModel
2 | {
3 | public interface ISearchResultViewModel
4 | {
5 |
6 | }
7 | }
--------------------------------------------------------------------------------
/MyTrains.Core/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Core/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-40.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-40.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-60.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-60.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-72.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-72.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-76.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-76.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon@2x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/arrow-up.imageset/arrow-up.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/arrow-up.imageset/arrow-up.png
--------------------------------------------------------------------------------
/MyTrains.Core/Contracts/ViewModel/ISearchJourneyViewModel.cs:
--------------------------------------------------------------------------------
1 | namespace MyTrains.Core.Contracts.ViewModel
2 | {
3 | public interface ISearchJourneyViewModel
4 | {
5 |
6 |
7 | }
8 | }
--------------------------------------------------------------------------------
/MyTrains.Localization/obj/Debug/DesignTimeResolveAssemblyReferences.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Localization/obj/Debug/DesignTimeResolveAssemblyReferences.cache
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-40@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-40@2x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-40@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-40@3x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-60@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-60@2x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-60@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-60@3x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-72@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-72@2x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-76@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-76@2x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-Small.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-Small.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/arrow-down.imageset/arrow-down.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/arrow-down.imageset/arrow-down.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/arrow-left.imageset/arrow-left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/arrow-left.imageset/arrow-left.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/arrow-up.imageset/arrow-up@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/arrow-up.imageset/arrow-up@2x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/arrow-up.imageset/arrow-up@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/arrow-up.imageset/arrow-up@3x.png
--------------------------------------------------------------------------------
/MyTrains.Core/Utility/MenuOption.cs:
--------------------------------------------------------------------------------
1 | namespace MyTrains.Core.Utility
2 | {
3 | public enum MenuOption
4 | {
5 | SearchJourney = 0,
6 | SavedJourneys,
7 | Settings
8 | }
9 | }
--------------------------------------------------------------------------------
/MyTrains.Droid/GettingStarted.Xamarin:
--------------------------------------------------------------------------------
1 |
2 | GS\Android\CS\AndroidApp\GettingStarted.html
3 | false
4 |
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-83.5@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-83.5@2x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-Small-50.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-Small-50.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-Small@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-Small@2x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-Small@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-Small@3x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/iTunesArtwork.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/iTunesArtwork.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/arrow-down.imageset/arrow-down@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/arrow-down.imageset/arrow-down@2x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/arrow-down.imageset/arrow-down@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/arrow-down.imageset/arrow-down@3x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/arrow-left.imageset/arrow-left@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/arrow-left.imageset/arrow-left@2x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/arrow-left.imageset/arrow-left@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/arrow-left.imageset/arrow-left@3x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/arrow-right.imageset/arrow-right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/arrow-right.imageset/arrow-right.png
--------------------------------------------------------------------------------
/Components/fmcalendar-1.5.3/lib/ios-unified/Factorymind.Components-Unified.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/Components/fmcalendar-1.5.3/lib/ios-unified/Factorymind.Components-Unified.dll
--------------------------------------------------------------------------------
/MyTrains.Core/Contracts/Services/IConnectionService.cs:
--------------------------------------------------------------------------------
1 | namespace MyTrains.Core.Contracts.Services
2 | {
3 | public interface IConnectionService
4 | {
5 | bool CheckOnline();
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/MyTrains.Localization/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.Localization/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/arrow-right.imageset/arrow-right@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/arrow-right.imageset/arrow-right@2x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/arrow-right.imageset/arrow-right@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/arrow-right.imageset/arrow-right@3x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-Small-50@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/Icon-Small-50@2x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/iTunesArtwork@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/AppIcons.appiconset/iTunesArtwork@2x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-home-active.imageset/ic-home-active.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/ic-home-active.imageset/ic-home-active.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-home-normal.imageset/ic-home-normal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/ic-home-normal.imageset/ic-home-normal.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-saved-active.imageset/ic-saved-active.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/ic-saved-active.imageset/ic-saved-active.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-saved-normal.imageset/ic-saved-normal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/ic-saved-normal.imageset/ic-saved-normal.png
--------------------------------------------------------------------------------
/Components/fmcalendar-1.5.3/samples/FMCalendarSample.iOS/Resources/Default-568h@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/Components/fmcalendar-1.5.3/samples/FMCalendarSample.iOS/Resources/Default-568h@2x.png
--------------------------------------------------------------------------------
/Components/square.androidtimessquare-1.6.5.0/lib/android/Square.AndroidTimesSquare.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/Components/square.androidtimessquare-1.6.5.0/lib/android/Square.AndroidTimesSquare.dll
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-home-active.imageset/ic-home-active@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/ic-home-active.imageset/ic-home-active@2x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-home-active.imageset/ic-home-active@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/ic-home-active.imageset/ic-home-active@3x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-home-normal.imageset/ic-home-normal@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/ic-home-normal.imageset/ic-home-normal@2x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-home-normal.imageset/ic-home-normal@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/ic-home-normal.imageset/ic-home-normal@3x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-saved-active.imageset/ic-saved-active@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/ic-saved-active.imageset/ic-saved-active@2x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-saved-active.imageset/ic-saved-active@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/ic-saved-active.imageset/ic-saved-active@3x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-saved-normal.imageset/ic-saved-normal@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/ic-saved-normal.imageset/ic-saved-normal@2x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-saved-normal.imageset/ic-saved-normal@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/ic-saved-normal.imageset/ic-saved-normal@3x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-search-active.imageset/ic-search-active.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/ic-search-active.imageset/ic-search-active.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-search-normal.imageset/ic-search-normal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/ic-search-normal.imageset/ic-search-normal.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Entitlements.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-search-active.imageset/ic-search-active@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/ic-search-active.imageset/ic-search-active@2x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-search-active.imageset/ic-search-active@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/ic-search-active.imageset/ic-search-active@3x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-search-normal.imageset/ic-search-normal@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/ic-search-normal.imageset/ic-search-normal@2x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-search-normal.imageset/ic-search-normal@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/ic-search-normal.imageset/ic-search-normal@3x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-settings-active.imageset/ic-settings-active.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/ic-settings-active.imageset/ic-settings-active.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-settings-normal.imageset/ic-settings-normal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/ic-settings-normal.imageset/ic-settings-normal.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-settings-active.imageset/ic-settings-active@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/ic-settings-active.imageset/ic-settings-active@2x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-settings-active.imageset/ic-settings-active@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/ic-settings-active.imageset/ic-settings-active@3x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-settings-normal.imageset/ic-settings-normal@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/ic-settings-normal.imageset/ic-settings-normal@2x.png
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-settings-normal.imageset/ic-settings-normal@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/MyTrains.iOS/Resources/Assets.xcassets/ic-settings-normal.imageset/ic-settings-normal@3x.png
--------------------------------------------------------------------------------
/Components/fmcalendar-1.5.3/samples/FMCalendarSample.iOS-Unified/Resources/Default-568h@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/Components/fmcalendar-1.5.3/samples/FMCalendarSample.iOS-Unified/Resources/Default-568h@2x.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable/btn_enabled.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/Components/square.androidtimessquare-1.6.5.0/component/icons/square.androidtimessquare_128x128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/Components/square.androidtimessquare-1.6.5.0/component/icons/square.androidtimessquare_128x128.png
--------------------------------------------------------------------------------
/Components/square.androidtimessquare-1.6.5.0/component/icons/square.androidtimessquare_512x512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/Components/square.androidtimessquare-1.6.5.0/component/icons/square.androidtimessquare_512x512.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable/btn_disabled.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/Libraries/MvvmCross.Droid.Support.V7.Fragging.4.1.1/MvvmCross.Droid.Support.V7.Fragging.4.1.1.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/Libraries/MvvmCross.Droid.Support.V7.Fragging.4.1.1/MvvmCross.Droid.Support.V7.Fragging.4.1.1.nupkg
--------------------------------------------------------------------------------
/Components/square.androidtimessquare-1.6.5.0/samples/AndroidTimesSquareSample/Resources/drawable/Icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/Components/square.androidtimessquare-1.6.5.0/samples/AndroidTimesSquareSample/Resources/drawable/Icon.png
--------------------------------------------------------------------------------
/MyTrains.Droid/Bootstrap/FilePluginBootstrap.cs:
--------------------------------------------------------------------------------
1 | using MvvmCross.Platform.Plugins;
2 |
3 | namespace MyTrains.Droid.Bootstrap
4 | {
5 | public class FilePluginBootstrap
6 | : MvxPluginBootstrapAction
7 | {
8 | }
9 | }
--------------------------------------------------------------------------------
/MyTrains.Droid/Bootstrap/SqlitePluginBootstrap.cs:
--------------------------------------------------------------------------------
1 | using MvvmCross.Platform.Plugins;
2 |
3 | namespace MyTrains.Droid.Bootstrap
4 | {
5 | public class SqlitePluginBootstrap
6 | : MvxPluginBootstrapAction
7 | {}
8 | }
9 |
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/values/Strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | My Trains
4 | Open
5 | Close
6 |
7 |
--------------------------------------------------------------------------------
/MyTrains.iOS/Bootstrap/JsonPluginBootstrap.cs:
--------------------------------------------------------------------------------
1 | using MvvmCross.Platform.Plugins;
2 |
3 | namespace MyTrains.iOS.Bootstrap
4 | {
5 | public class JsonPluginBootstrap
6 | : MvxPluginBootstrapAction
7 | {
8 | }
9 | }
--------------------------------------------------------------------------------
/Components/square.androidtimessquare-1.6.5.0/samples/AndroidTimesSquareSample/Resources/drawable-hdpi/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/Components/square.androidtimessquare-1.6.5.0/samples/AndroidTimesSquareSample/Resources/drawable-hdpi/icon.png
--------------------------------------------------------------------------------
/Components/square.androidtimessquare-1.6.5.0/samples/AndroidTimesSquareSample/Resources/drawable-mdpi/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/Components/square.androidtimessquare-1.6.5.0/samples/AndroidTimesSquareSample/Resources/drawable-mdpi/icon.png
--------------------------------------------------------------------------------
/Components/square.androidtimessquare-1.6.5.0/samples/AndroidTimesSquareSample/Resources/drawable-xhdpi/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/Components/square.androidtimessquare-1.6.5.0/samples/AndroidTimesSquareSample/Resources/drawable-xhdpi/icon.png
--------------------------------------------------------------------------------
/Libraries/MvvmCross.Droid.Support.V7.Fragging.4.1.1/lib/MonoAndroid403/MvvmCross.Droid.Support.V7.Fragging.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/Libraries/MvvmCross.Droid.Support.V7.Fragging.4.1.1/lib/MonoAndroid403/MvvmCross.Droid.Support.V7.Fragging.dll
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable/toolbar_dropshadow.axml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/values/dimens.axml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 240dp
4 | 16dp
5 | 16dp
6 |
--------------------------------------------------------------------------------
/MyTrains.iOS/MyTrains.iOS.csproj.user:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | ProjectFiles
5 |
6 |
--------------------------------------------------------------------------------
/Components/square.androidtimessquare-1.6.5.0/samples/AndroidTimesSquareSample/Resources/drawable-xxhdpi/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GillCleeren/MyTrains/HEAD/Components/square.androidtimessquare-1.6.5.0/samples/AndroidTimesSquareSample/Resources/drawable-xxhdpi/icon.png
--------------------------------------------------------------------------------
/MyTrains.Core/MyTrains.Core.csproj.user:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | ShowAllFiles
5 |
6 |
--------------------------------------------------------------------------------
/Components/fmcalendar-1.5.3/samples/FMCalendarSample.iOS/Entitlements.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/MyTrains.Core/Contracts/Services/IDialogService.cs:
--------------------------------------------------------------------------------
1 | using System.Threading.Tasks;
2 |
3 | namespace MyTrains.Core.Contracts.Services
4 | {
5 | public interface IDialogService
6 | {
7 | Task ShowAlertAsync(string message, string title, string buttonText);
8 | }
9 | }
--------------------------------------------------------------------------------
/MyTrains.Droid/Bootstrap/MessengerPluginBootstrap.cs:
--------------------------------------------------------------------------------
1 | using MvvmCross.Platform.Plugins;
2 |
3 | namespace MyTrains.Droid.Bootstrap
4 | {
5 | public class MessengerPluginBootstrap
6 | : MvxPluginBootstrapAction
7 | {
8 | }
9 | }
--------------------------------------------------------------------------------
/MyTrains.iOS/Bootstrap/MessengerPluginBootstrap.cs:
--------------------------------------------------------------------------------
1 | using MvvmCross.Platform.Plugins;
2 |
3 | namespace MyTrains.iOS.Bootstrap
4 | {
5 | public class MessengerPluginBootstrap
6 | : MvxPluginBootstrapAction
7 | {
8 | }
9 | }
--------------------------------------------------------------------------------
/packages/repositories.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/Components/square.androidtimessquare-1.6.5.0/samples/AndroidTimesSquareSample/Resources/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4dp
4 | -4dp
5 |
--------------------------------------------------------------------------------
/MyTrains.Droid/Bootstrap/WebBrowserPluginBootstrap.cs:
--------------------------------------------------------------------------------
1 | using MvvmCross.Platform.Plugins;
2 |
3 | namespace MyTrains.Droid.Bootstrap
4 | {
5 | public class WebBrowserPluginBootstrap
6 | : MvxPluginBootstrapAction
7 | {
8 | }
9 | }
--------------------------------------------------------------------------------
/Components/fmcalendar-1.5.3/samples/FMCalendarSample.iOS-Unified/Entitlements.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/MyTrains.Core.UnitTests/Bootstrap/MessengerPluginBootstrap.cs:
--------------------------------------------------------------------------------
1 | using MvvmCross.Platform.Plugins;
2 |
3 | namespace MyTrains.Core.UnitTests.Bootstrap
4 | {
5 | public class MessengerPluginBootstrap
6 | : MvxPluginBootstrapAction
7 | {
8 | }
9 | }
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable/calendar_border.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/MyTrains.iOS/Bootstrap/SqlitePluginBootstrap.cs:
--------------------------------------------------------------------------------
1 | using MvvmCross.Platform.Plugins;
2 |
3 | namespace MyTrains.iOS.Bootstrap
4 | {
5 | public class SqlitePluginBootstrap
6 | : MvxLoaderPluginBootstrapAction
7 | {}
8 | }
9 |
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable/border_button.axml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/layout/SplashScreen.axml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/MyTrains.Core/Extensions/TaskExtensions.cs:
--------------------------------------------------------------------------------
1 | using System.Threading.Tasks;
2 |
3 | namespace MyTrains.Core.Extensions
4 | {
5 | public static class TaskExtensions
6 | {
7 | public static void Forget(this Task task)
8 | {
9 | task.ConfigureAwait(false);
10 | }
11 | }
12 | }
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/layout/item_city_dropdown.axml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/MyTrains.Core/MyTrains.Core.csproj.vspscc:
--------------------------------------------------------------------------------
1 | ""
2 | {
3 | "FILE_VERSION" = "9237"
4 | "ENLISTMENT_CHOICE" = "NEVER"
5 | "PROJECT_FILE_RELATIVE_PATH" = ""
6 | "NUMBER_OF_EXCLUDED_FILES" = "0"
7 | "ORIGINAL_PROJECT_FILE_PATH" = ""
8 | "NUMBER_OF_NESTED_PROJECTS" = "0"
9 | "SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER"
10 | }
11 |
--------------------------------------------------------------------------------
/MyTrains.Droid/MyTrains.Droid.csproj.vspscc:
--------------------------------------------------------------------------------
1 | ""
2 | {
3 | "FILE_VERSION" = "9237"
4 | "ENLISTMENT_CHOICE" = "NEVER"
5 | "PROJECT_FILE_RELATIVE_PATH" = ""
6 | "NUMBER_OF_EXCLUDED_FILES" = "0"
7 | "ORIGINAL_PROJECT_FILE_PATH" = ""
8 | "NUMBER_OF_NESTED_PROJECTS" = "0"
9 | "SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER"
10 | }
11 |
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/values/SplashStyle.axml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 |
--------------------------------------------------------------------------------
/MyTrains.iOS/Bootstrap/WebBrowserPluginBootstrap.cs:
--------------------------------------------------------------------------------
1 | using MvvmCross.Platform.Plugins;
2 |
3 | namespace MyTrains.iOS.Bootstrap
4 | {
5 | public class WebBrowserPluginBootstrap
6 | : MvxLoaderPluginBootstrapAction
7 | {
8 | }
9 | }
--------------------------------------------------------------------------------
/MyTrains.iOS/MyTrains.iOS.csproj.vspscc:
--------------------------------------------------------------------------------
1 | ""
2 | {
3 | "FILE_VERSION" = "9237"
4 | "ENLISTMENT_CHOICE" = "NEVER"
5 | "PROJECT_FILE_RELATIVE_PATH" = ""
6 | "NUMBER_OF_EXCLUDED_FILES" = "0"
7 | "ORIGINAL_PROJECT_FILE_PATH" = ""
8 | "NUMBER_OF_NESTED_PROJECTS" = "0"
9 | "SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER"
10 | }
11 |
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/layout/toolbar_shadow.axml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/MyTrains.Core/Model/User.cs:
--------------------------------------------------------------------------------
1 | namespace MyTrains.Core.Model
2 | {
3 | public class User: BaseModel
4 | {
5 | public int UserId { get; set; }
6 |
7 | public string UserName { get; set; }
8 |
9 | public string Email { get; set; }
10 |
11 | public string Password { get; set; }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MyTrains.Localization/MyTrains.Localization.csproj.vspscc:
--------------------------------------------------------------------------------
1 | ""
2 | {
3 | "FILE_VERSION" = "9237"
4 | "ENLISTMENT_CHOICE" = "NEVER"
5 | "PROJECT_FILE_RELATIVE_PATH" = ""
6 | "NUMBER_OF_EXCLUDED_FILES" = "0"
7 | "ORIGINAL_PROJECT_FILE_PATH" = ""
8 | "NUMBER_OF_NESTED_PROJECTS" = "0"
9 | "SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER"
10 | }
11 |
--------------------------------------------------------------------------------
/MyTrains.Core.UnitTests/MyTrains.Core.UnitTests.csproj.vspscc:
--------------------------------------------------------------------------------
1 | ""
2 | {
3 | "FILE_VERSION" = "9237"
4 | "ENLISTMENT_CHOICE" = "NEVER"
5 | "PROJECT_FILE_RELATIVE_PATH" = ""
6 | "NUMBER_OF_EXCLUDED_FILES" = "0"
7 | "ORIGINAL_PROJECT_FILE_PATH" = ""
8 | "NUMBER_OF_NESTED_PROJECTS" = "0"
9 | "SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER"
10 | }
11 |
--------------------------------------------------------------------------------
/MyTrains.Core/Model/City.cs:
--------------------------------------------------------------------------------
1 |
2 | namespace MyTrains.Core.Model
3 | {
4 | public class City: BaseModel
5 | {
6 | public int CityId { get; set; }
7 |
8 | public string CityName { get; set; }
9 |
10 | public override string ToString()
11 | {
12 | return CityName;
13 | }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/MyTrains.Droid/MyTrains.Droid.csproj.user:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Nexus 4
5 | ShowAllFiles
6 |
7 |
--------------------------------------------------------------------------------
/MyTrains.Core/Contracts/Repository/IUserRepository.cs:
--------------------------------------------------------------------------------
1 | using System.Threading.Tasks;
2 | using MyTrains.Core.Model;
3 |
4 | namespace MyTrains.Core.Contracts.Repository
5 | {
6 | public interface IUserRepository
7 | {
8 | Task SearchUser(string userName);
9 |
10 | Task Login(string userName, string password);
11 | }
12 | }
--------------------------------------------------------------------------------
/MyTrains.Core/Model/SavedJourney.cs:
--------------------------------------------------------------------------------
1 | namespace MyTrains.Core.Model
2 | {
3 | public class SavedJourney: BaseModel
4 | {
5 | public int JourneyId { get; set; }
6 |
7 | public Journey Journey { get; set; }
8 |
9 | public int UserId { get; set; }
10 |
11 | public int NumberOfTravellers { get; set; }
12 |
13 | }
14 | }
--------------------------------------------------------------------------------
/MyTrains.Core/Model/App/SearchParameters.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace MyTrains.Core.Model.App
4 | {
5 | public class SearchParameters
6 | {
7 | public int FromCityId { get; set; }
8 | public int ToCityId { get; set; }
9 | public DateTime JourneyDate { get; set; }
10 | public string DepartureTime { get; set; }
11 | }
12 | }
--------------------------------------------------------------------------------
/MyTrains.Localization/LocalizedStrings.cs:
--------------------------------------------------------------------------------
1 | namespace MyTrains.Localization
2 | {
3 | public class LocalizedStrings
4 | {
5 | public LocalizedStrings() {}
6 |
7 | private static readonly Strings LocalizedStringsResources
8 | = new Strings();
9 |
10 | public Strings Strings => LocalizedStringsResources;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MyTrains.Core/Contracts/Services/ICityDataService.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using System.Threading.Tasks;
3 | using MyTrains.Core.Model;
4 |
5 | namespace MyTrains.Core.Contracts.Services
6 | {
7 | public interface ICityDataService
8 | {
9 | Task> GetAllCities();
10 |
11 | Task GetCityById(int cityId);
12 | }
13 | }
--------------------------------------------------------------------------------
/MyTrains.Core/Contracts/Repository/ICityRepository.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using System.Threading.Tasks;
3 | using MyTrains.Core.Model;
4 |
5 | namespace MyTrains.Core.Contracts.Repository
6 | {
7 | public interface ICityRepository
8 | {
9 | Task> GetAllCities();
10 |
11 | Task GetCityById(int cityId);
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable/scaledBackground.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | -
4 |
5 |
6 | -
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/MyTrains.Core/Contracts/Services/IUserDataService.cs:
--------------------------------------------------------------------------------
1 | using System.Threading.Tasks;
2 | using MyTrains.Core.Model;
3 |
4 | namespace MyTrains.Core.Contracts.Services
5 | {
6 | public interface IUserDataService
7 | {
8 | Task SearchUser(string userName);
9 |
10 | Task Login(string userName, string password);
11 |
12 | User GetActiveUser();
13 | }
14 | }
--------------------------------------------------------------------------------
/MyTrains.Core/Services/General/ConnectionService.cs:
--------------------------------------------------------------------------------
1 | using MyTrains.Core.Contracts.Services;
2 | using Plugin.Connectivity;
3 |
4 | namespace MyTrains.Core.Services.General
5 | {
6 | public class ConnectionService : IConnectionService
7 | {
8 | public bool CheckOnline()
9 | {
10 | return CrossConnectivity.Current.IsConnected;
11 | }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MyTrains.Core/Contracts/Repository/ISettingsRepository.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using MyTrains.Core.Model;
3 |
4 | namespace MyTrains.Core.Contracts.Repository
5 | {
6 | public interface ISettingsRepository
7 | {
8 | List GetAvailableCurrencies();
9 | Currency GetCurrencyById(int currencyId);
10 |
11 | string GetAboutContent();
12 | }
13 | }
--------------------------------------------------------------------------------
/MyTrains.Core/Messages/CurrencyChangedMessage.cs:
--------------------------------------------------------------------------------
1 | using MvvmCross.Plugins.Messenger;
2 | using MyTrains.Core.Model;
3 |
4 | namespace MyTrains.Core.Messages
5 | {
6 | public class CurrencyChangedMessage: MvxMessage
7 | {
8 | public CurrencyChangedMessage(object sender) : base(sender)
9 | {
10 | }
11 |
12 | public Currency NewCurrency { get; set; }
13 | }
14 | }
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable/button_selector.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/MyTrains.Droid/Properties/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/MyTrains.Core/Contracts/Services/ISettingsDataService.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using MyTrains.Core.Model;
3 |
4 | namespace MyTrains.Core.Contracts.Services
5 | {
6 | public interface ISettingsDataService
7 | {
8 | List GetCurrencies();
9 | Currency GetActiveCurrency();
10 | void SetActiveCurrency(Currency currency);
11 | string GetAboutContent();
12 | }
13 | }
--------------------------------------------------------------------------------
/MyTrains.Core/Model/Currency.cs:
--------------------------------------------------------------------------------
1 | namespace MyTrains.Core.Model
2 | {
3 | public class Currency
4 | {
5 | public string CurrencyName { get; set; }
6 |
7 | public string CurrencySymbol { get; set; }
8 |
9 | public int CurrencyId { get; set; }
10 |
11 | public override string ToString()
12 | {
13 | return $"{CurrencyName} ({CurrencySymbol})";
14 | }
15 | }
16 | }
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable/secondary_button_selector.axml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/MyTrains.Core/Contracts/Repository/ISavedJourneyRepository.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using System.Threading.Tasks;
3 | using MyTrains.Core.Model;
4 |
5 | namespace MyTrains.Core.Contracts.Repository
6 | {
7 | public interface ISavedJourneyRepository
8 | {
9 | Task> GetSavedJourneyForUser(int userId);
10 |
11 | Task AddSavedJourney(int userId, int journeyId, int numberOfTravellers);
12 | }
13 | }
--------------------------------------------------------------------------------
/MyTrains.Core/Contracts/Services/ISavedJourneyDataService.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Threading.Tasks;
4 | using MyTrains.Core.Model;
5 |
6 | namespace MyTrains.Core.Contracts.Services
7 | {
8 | public interface ISavedJourneyDataService
9 | {
10 | Task> GetSavedJourneyForUser(int userId);
11 |
12 | Task AddSavedJourney(int userId, int journeyId, int numberOfTravellers);
13 | }
14 | }
--------------------------------------------------------------------------------
/MyTrains.Core/Contracts/Services/IJourneyDataService.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Threading.Tasks;
4 | using MyTrains.Core.Model;
5 |
6 | namespace MyTrains.Core.Contracts.Services
7 | {
8 | public interface IJourneyDataService
9 | {
10 | Task> SearchJourney(int fromCity, int toCity, DateTime journeyDate, DateTime departureTime);
11 |
12 | Task GetJourneyDetails(int journeyId);
13 | }
14 | }
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/layout/item_city.axml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/layout/item_currency.axml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/MyTrains.Core/Contracts/Repository/IJourneyRepository.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Threading.Tasks;
4 | using MyTrains.Core.Model;
5 |
6 | namespace MyTrains.Core.Contracts.Repository
7 | {
8 | public interface IJourneyRepository
9 | {
10 | Task> SearchJourney(int fromCity, int toCity, DateTime journeyDate, DateTime departureTime);
11 |
12 | Task GetJourneyDetails(int journeyId);
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/MyTrains.Core/Converters/DateTimeToDayConverter.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using MvvmCross.Platform.Converters;
3 |
4 | namespace MyTrains.Core.Converters
5 | {
6 | public class DateTimeToDayConverter : MvxValueConverter
7 | {
8 | protected override string Convert(DateTime value, Type targetType, object parameter,
9 | System.Globalization.CultureInfo culture)
10 | {
11 | return value.ToString("MMM dd, yyyy");
12 | }
13 | }
14 | }
--------------------------------------------------------------------------------
/Components/square.androidtimessquare-1.6.5.0/samples/AndroidTimesSquareSample/Properties/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/MyTrains.Core/Converters/DateTimeToTimeConverter.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using MvvmCross.Platform.Converters;
3 |
4 | namespace MyTrains.Core.Converters
5 | {
6 | public class DateTimeToTimeConverter:
7 | MvxValueConverter
8 | {
9 | protected override string Convert(DateTime value, Type targetType, object parameter,
10 | System.Globalization.CultureInfo culture)
11 | {
12 | return value.ToString("hh:mm");
13 | }
14 | }
15 | }
--------------------------------------------------------------------------------
/MyTrains.iOS/StoryBoardContainer.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using MvvmCross.Core.ViewModels;
3 | using MvvmCross.iOS.Views;
4 | using UIKit;
5 |
6 | namespace MyTrains.iOS
7 | {
8 | public class StoryBoardContainer: MvxIosViewsContainer
9 | {
10 | protected override IMvxIosView CreateViewOfType(Type viewType, MvxViewModelRequest request)
11 | {
12 | return (IMvxIosView)UIStoryboard.FromName("Storyboard", null)
13 | .InstantiateViewController(viewType.Name);
14 | }
15 | }
16 | }
--------------------------------------------------------------------------------
/MyTrains.iOS/Views/MainView.designer.cs:
--------------------------------------------------------------------------------
1 | // WARNING
2 | //
3 | // This file has been generated automatically by Xamarin Studio from the outlets and
4 | // actions declared in your storyboard file.
5 | // Manual changes to this file will not be maintained.
6 | //
7 | using Foundation;
8 | using System;
9 | using System.CodeDom.Compiler;
10 | using UIKit;
11 |
12 | namespace MyTrains.iOS.Views
13 | {
14 | [Register ("MainView")]
15 | partial class MainView
16 | {
17 | void ReleaseDesignerOutlets ()
18 | {
19 | }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/Components/square.androidtimessquare-1.6.5.0/samples/AndroidTimesSquareSample/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/splash.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "splash.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "filename" : "splash@2x.png",
11 | "scale" : "2x"
12 | },
13 | {
14 | "idiom" : "universal",
15 | "filename" : "splash@3x.png",
16 | "scale" : "3x"
17 | }
18 | ],
19 | "info" : {
20 | "version" : 1,
21 | "author" : "xcode"
22 | }
23 | }
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/arrow-up.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "arrow-up.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "filename" : "arrow-up@2x.png",
11 | "scale" : "2x"
12 | },
13 | {
14 | "idiom" : "universal",
15 | "filename" : "arrow-up@3x.png",
16 | "scale" : "3x"
17 | }
18 | ],
19 | "info" : {
20 | "version" : 1,
21 | "author" : "xcode"
22 | }
23 | }
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/arrow-down.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "arrow-down.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "filename" : "arrow-down@2x.png",
11 | "scale" : "2x"
12 | },
13 | {
14 | "idiom" : "universal",
15 | "filename" : "arrow-down@3x.png",
16 | "scale" : "3x"
17 | }
18 | ],
19 | "info" : {
20 | "version" : 1,
21 | "author" : "xcode"
22 | }
23 | }
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/arrow-left.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "arrow-left.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "filename" : "arrow-left@2x.png",
11 | "scale" : "2x"
12 | },
13 | {
14 | "idiom" : "universal",
15 | "filename" : "arrow-left@3x.png",
16 | "scale" : "3x"
17 | }
18 | ],
19 | "info" : {
20 | "version" : 1,
21 | "author" : "xcode"
22 | }
23 | }
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/arrow-right.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "arrow-right.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "filename" : "arrow-right@2x.png",
11 | "scale" : "2x"
12 | },
13 | {
14 | "idiom" : "universal",
15 | "filename" : "arrow-right@3x.png",
16 | "scale" : "3x"
17 | }
18 | ],
19 | "info" : {
20 | "version" : 1,
21 | "author" : "xcode"
22 | }
23 | }
--------------------------------------------------------------------------------
/Libraries/MvvmCross.Droid.Support.V7.Fragging.4.1.1/lib/MonoAndroid403/MvvmCross.Droid.Support.V7.Fragging.dll.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-home-active.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "ic-home-active.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "filename" : "ic-home-active@2x.png",
11 | "scale" : "2x"
12 | },
13 | {
14 | "idiom" : "universal",
15 | "filename" : "ic-home-active@3x.png",
16 | "scale" : "3x"
17 | }
18 | ],
19 | "info" : {
20 | "version" : 1,
21 | "author" : "xcode"
22 | }
23 | }
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-home-normal.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "ic-home-normal.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "filename" : "ic-home-normal@2x.png",
11 | "scale" : "2x"
12 | },
13 | {
14 | "idiom" : "universal",
15 | "filename" : "ic-home-normal@3x.png",
16 | "scale" : "3x"
17 | }
18 | ],
19 | "info" : {
20 | "version" : 1,
21 | "author" : "xcode"
22 | }
23 | }
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-saved-active.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "ic-saved-active.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "filename" : "ic-saved-active@2x.png",
11 | "scale" : "2x"
12 | },
13 | {
14 | "idiom" : "universal",
15 | "filename" : "ic-saved-active@3x.png",
16 | "scale" : "3x"
17 | }
18 | ],
19 | "info" : {
20 | "version" : 1,
21 | "author" : "xcode"
22 | }
23 | }
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-saved-normal.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "ic-saved-normal.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "filename" : "ic-saved-normal@2x.png",
11 | "scale" : "2x"
12 | },
13 | {
14 | "idiom" : "universal",
15 | "filename" : "ic-saved-normal@3x.png",
16 | "scale" : "3x"
17 | }
18 | ],
19 | "info" : {
20 | "version" : 1,
21 | "author" : "xcode"
22 | }
23 | }
--------------------------------------------------------------------------------
/MyTrains.iOS/Utility/MyTrainsColors.cs:
--------------------------------------------------------------------------------
1 | using UIKit;
2 |
3 | namespace MyTrains.iOS.Utility
4 | {
5 | public static class MyTrainsColors
6 | {
7 | public static UIColor AccentColor = new UIColor(59 / 255f, 202 / 255f, 219 / 255f, 1);
8 |
9 | public static UIColor DarkColor = new UIColor (6 / 255f, 116 / 255f, 173 / 255f, 1);
10 |
11 | public static UIColor DarkTextColor = new UIColor(55 / 255f, 59 / 255f, 73 / 255f, 1);
12 |
13 | public static UIColor BorderColor = new UIColor(225 / 255f, 225 / 255f, 225 / 255f, 1);
14 | }
15 | }
--------------------------------------------------------------------------------
/Components/fmcalendar-1.5.3/samples/FMCalendarSample.iOS-Unified/Main.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 |
5 | using Foundation;
6 | using UIKit;
7 |
8 | namespace FMCalendarSample
9 | {
10 | public class Application
11 | {
12 | // This is the main entry point of the application.
13 | static void Main (string[] args)
14 | {
15 | // if you want to use a different Application Delegate class from "AppDelegate"
16 | // you can specify it here.
17 | UIApplication.Main (args, null, "AppDelegate");
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-search-active.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "ic-search-active.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "filename" : "ic-search-active@2x.png",
11 | "scale" : "2x"
12 | },
13 | {
14 | "idiom" : "universal",
15 | "filename" : "ic-search-active@3x.png",
16 | "scale" : "3x"
17 | }
18 | ],
19 | "info" : {
20 | "version" : 1,
21 | "author" : "xcode"
22 | }
23 | }
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-search-normal.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "ic-search-normal.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "filename" : "ic-search-normal@2x.png",
11 | "scale" : "2x"
12 | },
13 | {
14 | "idiom" : "universal",
15 | "filename" : "ic-search-normal@3x.png",
16 | "scale" : "3x"
17 | }
18 | ],
19 | "info" : {
20 | "version" : 1,
21 | "author" : "xcode"
22 | }
23 | }
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-settings-active.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "ic-settings-active.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "filename" : "ic-settings-active@2x.png",
11 | "scale" : "2x"
12 | },
13 | {
14 | "idiom" : "universal",
15 | "filename" : "ic-settings-active@3x.png",
16 | "scale" : "3x"
17 | }
18 | ],
19 | "info" : {
20 | "version" : 1,
21 | "author" : "xcode"
22 | }
23 | }
--------------------------------------------------------------------------------
/MyTrains.iOS/Resources/Assets.xcassets/ic-settings-normal.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "ic-settings-normal.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "filename" : "ic-settings-normal@2x.png",
11 | "scale" : "2x"
12 | },
13 | {
14 | "idiom" : "universal",
15 | "filename" : "ic-settings-normal@3x.png",
16 | "scale" : "3x"
17 | }
18 | ],
19 | "info" : {
20 | "version" : 1,
21 | "author" : "xcode"
22 | }
23 | }
--------------------------------------------------------------------------------
/Components/square.androidtimessquare-1.6.5.0/samples/AndroidTimesSquareSample/Resources/layout/Dialog.axml:
--------------------------------------------------------------------------------
1 |
13 |
--------------------------------------------------------------------------------
/Components/fmcalendar-1.5.3/samples/FMCalendarSample.iOS/Main.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 |
5 | using MonoTouch.Foundation;
6 | using MonoTouch.UIKit;
7 |
8 | namespace FMCalendarSample.iOS
9 | {
10 | public class Application
11 | {
12 | // This is the main entry point of the application.
13 | static void Main (string[] args)
14 | {
15 | // if you want to use a different Application Delegate class from "AppDelegate"
16 | // you can specify it here.
17 | UIApplication.Main (args, null, "AppDelegate");
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/MyTrains.iOS/Services/DialogService.cs:
--------------------------------------------------------------------------------
1 | using System.Threading.Tasks;
2 | using MyTrains.Core.Contracts.Services;
3 | using UIKit;
4 |
5 | namespace MyTrains.iOS.Services
6 | {
7 | public class DialogService: IDialogService
8 | {
9 | public Task ShowAlertAsync(string message, string title, string buttonText)
10 | {
11 | return Task.Run(() =>
12 | UIApplication.SharedApplication.InvokeOnMainThread(() =>
13 | {
14 | new UIAlertView(title, message, null, buttonText).Show();
15 | }));
16 | }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/Components/square.androidtimessquare-1.6.5.0/samples/AndroidTimesSquareSample/Resources/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | #85B100
4 | #A8D324
5 | #F0F8DB
6 | #FF9105
7 | #F0F8DB
8 | #FFFFFFFF
9 | #7f778088
10 | #00000000
11 |
--------------------------------------------------------------------------------
/MyTrains.Core/AppStart.cs:
--------------------------------------------------------------------------------
1 | using MvvmCross.Core.ViewModels;
2 | using MvvmCross.Platform;
3 | using MyTrains.Core.Contracts.Services;
4 | using MyTrains.Core.ViewModel;
5 |
6 | namespace MyTrains.Core
7 | {
8 | public class AppStart: MvxNavigatingObject, IMvxAppStart
9 | {
10 | public async void Start(object hint = null)
11 | {
12 | //hardcoded login for this demo
13 | var userService = Mvx.Resolve();
14 | await userService.Login("gillcleeren", "123456");
15 |
16 | ShowViewModel();
17 | }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
5 |
6 |
15 |
--------------------------------------------------------------------------------
/Components/fmcalendar-1.5.3/component/License.md:
--------------------------------------------------------------------------------
1 | Copyright 2014 Factory Mind
2 |
3 | Licensed under the Apache License, Version 2.0 (the "License");
4 | you may not use this file except in compliance with the License.
5 | You may obtain a copy of the License at
6 |
7 | http://www.apache.org/licenses/LICENSE-2.0
8 |
9 | Unless required by applicable law or agreed to in writing, software
10 | distributed under the License is distributed on an "AS IS" BASIS,
11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | See the License for the specific language governing permissions and
13 | limitations under the License.
14 |
--------------------------------------------------------------------------------
/MyTrains.Core/Converters/CurrencyToStringConverter.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Globalization;
3 | using MvvmCross.Platform;
4 | using MvvmCross.Platform.Converters;
5 | using MyTrains.Core.Contracts.Services;
6 |
7 | namespace MyTrains.Core.Converters
8 | {
9 | public class CurrencyToStringConverter: MvxValueConverter
10 | {
11 | protected override string Convert(double value, Type targetType, object parameter, CultureInfo culture)
12 | {
13 | var service = Mvx.Resolve();
14 | return service.GetActiveCurrency().CurrencySymbol + " " + value;
15 | }
16 | }
17 | }
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/drawable/spinner_border.xml:
--------------------------------------------------------------------------------
1 |
2 | -
3 |
4 |
-
5 |
7 |
8 |
9 |
10 |
11 | -
12 |
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/MyTrains.Droid/SplashScreen.cs:
--------------------------------------------------------------------------------
1 | using Android.App;
2 | using Android.Content.PM;
3 | using MvvmCross.Droid.Views;
4 |
5 | namespace MyTrains.Droid
6 | {
7 | [Activity(
8 | MainLauncher = true,
9 | Label = "@string/ApplicationName",
10 | Theme = "@style/Theme.Splash", NoHistory = true,
11 | ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation,
12 | ScreenOrientation = ScreenOrientation.Portrait)]
13 | public class SplashScreen : MvxSplashScreenActivity
14 | {
15 | public SplashScreen()
16 | : base(Resource.Layout.SplashScreen)
17 | {
18 | }
19 | }
20 | }
--------------------------------------------------------------------------------
/MyTrains.Droid/Extensions/ActivityExtensions.cs:
--------------------------------------------------------------------------------
1 | using Android.App;
2 | using Android.Widget;
3 | using Toolbar = Android.Support.V7.Widget.Toolbar;
4 |
5 | namespace MyTrains.Droid.Extensions
6 | {
7 | public static class ActivityExtensions
8 | {
9 | public static void SetCustomTitle(this Activity activity, string title)
10 | {
11 | var toolbar = activity.FindViewById(Resource.Id.toolbar);
12 | var textTitle = toolbar?.FindViewById(Resource.Id.toolbar_title);
13 | if (textTitle != null)
14 | {
15 | textTitle.Text = title;
16 | }
17 | }
18 | }
19 | }
--------------------------------------------------------------------------------
/MyTrains.Core/Model/Journey.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace MyTrains.Core.Model
4 | {
5 | public class Journey: BaseModel
6 | {
7 | public int JourneyId { get; set; }
8 |
9 | public int FromCityId{ get; set; }
10 |
11 | public int ToCityId { get; set; }
12 |
13 | public City FromCity { get; set; }
14 |
15 | public City ToCity { get; set; }
16 |
17 | public DateTime JourneyDate { get; set; }
18 |
19 | public DateTime DepartureTime { get; set; }
20 |
21 | public DateTime ArrivalTime { get; set; }
22 |
23 | public double Price { get; set; }
24 |
25 | public string Platform { get; set; }
26 | }
27 | }
--------------------------------------------------------------------------------
/Components/square.androidtimessquare-1.6.5.0/samples/AndroidTimesSquareSample/Resources/drawable/bg_circle_selected.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | -
5 |
6 |
7 |
8 |
9 | -
10 |
11 |
12 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/MyTrains.iOS/Main.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using UIKit;
3 |
4 | namespace MyTrains.iOS
5 | {
6 | public class Application
7 | {
8 | // This is the main entry point of the application.
9 | static void Main(string[] args)
10 | {
11 | // if you want to use a different Application Delegate class from "AppDelegate"
12 | // you can specify it here.
13 | try
14 | {
15 | UIApplication.Main(args, null, "AppDelegate");
16 |
17 | }
18 | catch (Exception ex)
19 | {
20 | string e = ex.Message;
21 | throw ex;
22 | }
23 | }
24 | }
25 | }
--------------------------------------------------------------------------------
/Components/square.androidtimessquare-1.6.5.0/samples/AndroidTimesSquareSample/Resources/drawable/bg_circle_today.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | -
5 |
6 |
7 |
8 |
9 | -
10 |
11 |
12 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/Components/square.androidtimessquare-1.6.5.0/samples/AndroidTimesSquareSample/Resources/values/Strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | TimesSquare Sample
4 | Done
5 | Customized
6 | Decorator
7 | RTL
8 | Dialog
9 | Display Only
10 | Weekdays Only
11 | Range
12 | Multi
13 | Single
14 |
15 |
16 |
--------------------------------------------------------------------------------
/MyTrains.Droid/Assets/AboutAssets.txt:
--------------------------------------------------------------------------------
1 | Any raw assets you want to be deployed with your application can be placed in
2 | this directory (and child directories) and given a Build Action of "AndroidAsset".
3 |
4 | These files will be deployed with you package and will be accessible using Android's
5 | AssetManager, like this:
6 |
7 | public class ReadAsset : Activity
8 | {
9 | protected override void OnCreate (Bundle bundle)
10 | {
11 | base.OnCreate (bundle);
12 |
13 | InputStream input = Assets.Open ("my_asset.txt");
14 | }
15 | }
16 |
17 | Additionally, some Android functions will automatically load asset files:
18 |
19 | Typeface tf = Typeface.CreateFromAsset (Context.Assets, "fonts/samplefont.ttf");
--------------------------------------------------------------------------------
/MyTrains.Core/Fake/SearchJourneyViewModel.cs:
--------------------------------------------------------------------------------
1 | using MyTrains.Core.ViewModel;
2 | using System.Threading.Tasks;
3 | using MvvmCross.Plugins.Messenger;
4 | using MyTrains.Core.Contracts.Services;
5 |
6 | namespace MyTrains.Core.Fake
7 | {
8 | public class FakeSearchJourneyViewModel : SearchJourneyViewModel
9 | {
10 | public FakeSearchJourneyViewModel(IMvxMessenger messenger, ICityDataService cityDataService, IConnectionService connectionService, IDialogService dialogService) : base(messenger, cityDataService, connectionService, dialogService)
11 | {
12 | }
13 |
14 | public new Task InitializeAsync()
15 | {
16 | return base.InitializeAsync();
17 | }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/Components/square.androidtimessquare-1.6.5.0/component/License.md:
--------------------------------------------------------------------------------
1 | # TimesSquare License
2 |
3 | Copyright 2015 Square, Inc.
4 |
5 | Licensed under the Apache License, Version 2.0 (the "License");
6 | you may not use this file except in compliance with the License.
7 | You may obtain a copy of the License at
8 |
9 | http://www.apache.org/licenses/LICENSE-2.0
10 |
11 | Unless required by applicable law or agreed to in writing, software
12 | distributed under the License is distributed on an "AS IS" BASIS,
13 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 | See the License for the specific language governing permissions and
15 | limitations under the License.
16 |
--------------------------------------------------------------------------------
/MyTrains.Core/Model/App/MenuItem.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using MvvmCross.Core.ViewModels;
3 | using MyTrains.Core.Utility;
4 |
5 | namespace MyTrains.Core.Model.App
6 | {
7 | public class MenuItem : MvxViewModel
8 | {
9 | private bool _isSelected;
10 |
11 | public string Title { get; set; }
12 | public Type ViewModelType { get; set; }
13 | public MenuOption Option { get; set; }
14 | public bool IsSelected
15 | {
16 | get
17 | {
18 | return _isSelected;
19 | }
20 | set
21 | {
22 | _isSelected = value;
23 | RaisePropertyChanged(() => IsSelected);
24 | }
25 | }
26 | }
27 | }
--------------------------------------------------------------------------------
/MyTrains.Droid/Extensions/MonoTypeExtensions.cs:
--------------------------------------------------------------------------------
1 | //using System;
2 | //using System.Collections.Generic;
3 |
4 | //namespace MyTrains.Droid.Extensions
5 | //{
6 | // static class MonoTypeExtensions
7 | // {
8 | // public static string TagName(this Type type)
9 | // {
10 | // var tokens = type.FullName.Split('.');
11 | // var convertedTokens = new List(tokens.Length);
12 | // for (int idx = 0; idx < tokens.Length - 2; idx++)
13 | // {
14 | // convertedTokens.Add(tokens[idx].ToLowerInvariant());
15 | // }
16 |
17 | // convertedTokens.Add(tokens[tokens.Length - 1]);
18 | // return string.Join(".", convertedTokens);
19 | // }
20 | // }
21 | //}
--------------------------------------------------------------------------------
/MyTrains.iOS/Views/SavedJourneysView.designer.cs:
--------------------------------------------------------------------------------
1 | // WARNING
2 | //
3 | // This file has been generated automatically by Xamarin Studio from the outlets and
4 | // actions declared in your storyboard file.
5 | // Manual changes to this file will not be maintained.
6 | //
7 | using Foundation;
8 | using System;
9 | using System.CodeDom.Compiler;
10 | using UIKit;
11 |
12 | namespace MyTrains.iOS.Views
13 | {
14 | [Register ("SavedJourneysView")]
15 | partial class SavedJourneysView
16 | {
17 | [Outlet]
18 | [GeneratedCode ("iOS Designer", "1.0")]
19 | UITableView savedJourneyTableView { get; set; }
20 |
21 | void ReleaseDesignerOutlets ()
22 | {
23 | if (savedJourneyTableView != null) {
24 | savedJourneyTableView.Dispose ();
25 | savedJourneyTableView = null;
26 | }
27 | }
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/MyTrains.iOS/Views/SearchResultView.designer.cs:
--------------------------------------------------------------------------------
1 | // WARNING
2 | //
3 | // This file has been generated automatically by Xamarin Studio from the outlets and
4 | // actions declared in your storyboard file.
5 | // Manual changes to this file will not be maintained.
6 | //
7 | using Foundation;
8 | using System;
9 | using System.CodeDom.Compiler;
10 | using UIKit;
11 |
12 | namespace MyTrains.iOS.Views
13 | {
14 | [Register ("SearchResultView")]
15 | partial class SearchResultView
16 | {
17 | [Outlet]
18 | [GeneratedCode ("iOS Designer", "1.0")]
19 | UITableView searchResultsTableView { get; set; }
20 |
21 | void ReleaseDesignerOutlets ()
22 | {
23 | if (searchResultsTableView != null) {
24 | searchResultsTableView.Dispose ();
25 | searchResultsTableView = null;
26 | }
27 | }
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/Components/square.androidtimessquare-1.6.5.0/component/Manifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | TimesSquare
4 | Xamarin Inc
5 | http://xamarin.com
6 | https://github.com/mattleibow/square-bindings
7 | 1.6.5.0
8 | Standalone Android widget for picking a single date from a calendar view..
9 |
10 |
11 |
12 |
13 |
14 | Android Sample
15 | Android Sample
16 |
17 |
18 |
--------------------------------------------------------------------------------
/Components/fmcalendar-1.5.3/component/Manifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | FMCalendar for iOS
4 | Factory Mind
5 | http://factorymind.com
6 | 1.5.3
7 | Awesome and customizable calendar control for your iOS app
8 |
9 |
10 |
11 |
12 |
13 | iOS Sample
14 | iOS Sample
15 |
16 |
17 | iOS-Unified Sample
18 | iOS-Unified Sample
19 |
20 |
21 |
--------------------------------------------------------------------------------
/MyTrains.Core.UnitTests/Tests/Repository/CityRepositoryTests.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.VisualStudio.TestTools.UnitTesting;
2 | using MyTrains.Core.Contracts.Repository;
3 | using MyTrains.Core.UnitTests.Mocks;
4 | using System.Threading.Tasks;
5 |
6 | namespace MyTrains.Core.UnitTests.Tests.Repository
7 | {
8 | [TestClass]
9 | public class CityRepositoryTests
10 | {
11 | ICityRepository repository;
12 |
13 | [TestInitialize]
14 | public void Initialize()
15 | {
16 | repository = RepositoryMocks.GetMockCityRepository(3).Object;
17 | }
18 |
19 | [TestMethod]
20 | public async Task GetCities_Return_All_Cities()
21 | {
22 | var cities = await repository.GetAllCities();
23 |
24 | Assert.AreEqual(3, cities.Count);
25 | }
26 | }
27 | }
--------------------------------------------------------------------------------
/MyTrains.Core/Extensions/ListExtensions.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using System.Collections.ObjectModel;
3 |
4 | namespace MyTrains.Core.Extensions
5 | {
6 | public static class ListExtensions
7 | {
8 | public static ObservableCollection ToObservableCollection(this List items)
9 | {
10 | var collection = new ObservableCollection();
11 | foreach (var item in items)
12 | collection.Add(item);
13 | return collection;
14 | }
15 |
16 | public static ObservableCollection ToObservableCollection(this IEnumerable items)
17 | {
18 | var collection = new ObservableCollection();
19 | foreach (var item in items)
20 | collection.Add(item);
21 | return collection;
22 | }
23 | }
24 | }
--------------------------------------------------------------------------------
/Components/square.androidtimessquare-1.6.5.0/samples/AndroidTimesSquareSample/Resources/color/custom_calendar_text_selector.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/MyTrains.Core.UnitTests/Mocks/RepositoryMocks.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using Moq;
3 | using MyTrains.Core.Contracts.Repository;
4 | using MyTrains.Core.Model;
5 |
6 | namespace MyTrains.Core.UnitTests.Mocks
7 | {
8 | public class RepositoryMocks
9 | {
10 | public static Mock GetMockCityRepository(int count)
11 | {
12 | var list = new List();
13 | var mockCityRepository = new Mock();
14 |
15 | for (int i = 0; i < count; i++)
16 | {
17 | list.Add(new City { CityId = count });
18 | }
19 |
20 | mockCityRepository.Setup(m => m.GetAllCities()).ReturnsAsync(list);
21 | mockCityRepository.Setup(m => m.GetCityById(It.IsAny())).ReturnsAsync(list[0]);
22 | return mockCityRepository;
23 | }
24 | }
25 | }
--------------------------------------------------------------------------------
/MyTrains.Core.UnitTests/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/MyTrains.Core/Services/Data/CityDataService.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using System.Threading.Tasks;
3 | using MyTrains.Core.Contracts.Repository;
4 | using MyTrains.Core.Contracts.Services;
5 | using MyTrains.Core.Model;
6 |
7 | namespace MyTrains.Core.Services.Data
8 | {
9 | public class CityDataService: ICityDataService
10 | {
11 | private readonly ICityRepository _cityRepository;
12 | public CityDataService(ICityRepository cityRepository)
13 | {
14 | _cityRepository = cityRepository;
15 | }
16 |
17 | public virtual async Task> GetAllCities()
18 | {
19 | return await _cityRepository.GetAllCities();
20 | }
21 |
22 | public async Task GetCityById(int cityId)
23 | {
24 | return await _cityRepository.GetCityById(cityId);
25 | }
26 | }
27 | }
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/layout/SavedJourneysView.axml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
18 |
--------------------------------------------------------------------------------
/MyTrains.Core.UnitTests/Tests/Services/CityDataServiceTests.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.VisualStudio.TestTools.UnitTesting;
2 | using Moq;
3 | using MyTrains.Core.Contracts.Repository;
4 | using MyTrains.Core.Contracts.Services;
5 | using MyTrains.Core.UnitTests.Mocks;
6 | using System.Threading.Tasks;
7 |
8 | namespace MyTrains.Core.UnitTests.Tests.Services
9 | {
10 | [TestClass]
11 | public class CityDataServiceTests
12 | {
13 | ICityDataService cityDataService;
14 |
15 | [TestInitialize]
16 | public void Initialize()
17 | {
18 | cityDataService = ServiceMocks.GetMockCityDataService(3);
19 | }
20 |
21 | [TestMethod]
22 | public async Task GetCities_Return_All_Cities()
23 | {
24 | var cities = await cityDataService.GetAllCities();
25 |
26 | Assert.AreEqual(3, cities.Count);
27 | }
28 | }
29 | }
--------------------------------------------------------------------------------
/MyTrains.Core.UnitTests/Mocks/ServiceMocks.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using Moq;
3 | using MyTrains.Core.Contracts.Repository;
4 | using MyTrains.Core.Model;
5 | using MyTrains.Core.Services.Data;
6 |
7 | namespace MyTrains.Core.UnitTests.Mocks
8 | {
9 | public class ServiceMocks
10 | {
11 | public static CityDataService GetMockCityDataService(int count)
12 | {
13 | var list = new List();
14 |
15 | var mockexpenseRepository = new Mock();
16 | for (int i = 0; i < count; i++)
17 | {
18 | list.Add(new City { CityId = count });
19 | }
20 | mockexpenseRepository.Setup(m => m.GetAllCities()).ReturnsAsync(list);
21 |
22 | var cityDataService = new CityDataService(mockexpenseRepository.Object);
23 | return cityDataService;
24 | }
25 | }
26 | }
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/layout/SearchResultsView.axml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
18 |
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/layout/fragment_menu.axml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
19 |
--------------------------------------------------------------------------------
/MyTrains.Core/App.cs:
--------------------------------------------------------------------------------
1 | using MvvmCross.Core.ViewModels;
2 | using MvvmCross.Localization;
3 | using MvvmCross.Platform;
4 | using MvvmCross.Platform.IoC;
5 | using MyTrains.Core.Utility;
6 | using MyTrains.Localization;
7 |
8 | namespace MyTrains.Core
9 | {
10 | public class App : MvxApplication
11 | {
12 | public override void Initialize()
13 | {
14 | base.Initialize();
15 |
16 | CreatableTypes()
17 | .EndingWith("Repository")
18 | .AsInterfaces()
19 | .RegisterAsLazySingleton();
20 |
21 | CreatableTypes()
22 | .EndingWith("Service")
23 | .AsInterfaces()
24 | .RegisterAsLazySingleton();
25 |
26 | Mvx.RegisterSingleton
27 | (new ResxTextProvider(Strings.ResourceManager));
28 |
29 | RegisterAppStart(new AppStart());
30 | }
31 | }
32 | }
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/layout/toolbar.axml:
--------------------------------------------------------------------------------
1 |
2 |
11 |
19 |
--------------------------------------------------------------------------------
/Components/square.androidtimessquare-1.6.5.0/samples/AndroidTimesSquareSample/Resources/drawable/custom_calendar_bg_selector.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
5 |
6 |
7 | -
8 |
9 |
10 |
11 |
12 |
13 | -
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/MyTrains.Droid/DebugTrace.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Diagnostics;
3 | using MvvmCross.Platform.Platform;
4 |
5 | namespace MyTrains.Droid
6 | {
7 | public class DebugTrace : IMvxTrace
8 | {
9 | public void Trace(MvxTraceLevel level, string tag, Func message)
10 | {
11 | Debug.WriteLine(tag + ":" + level + ":" + message());
12 | }
13 |
14 | public void Trace(MvxTraceLevel level, string tag, string message)
15 | {
16 | Debug.WriteLine(tag + ":" + level + ":" + message);
17 | }
18 |
19 | public void Trace(MvxTraceLevel level, string tag, string message, params object[] args)
20 | {
21 | try
22 | {
23 | Debug.WriteLine(string.Format(tag + ":" + level + ":" + message, args));
24 | }
25 | catch (FormatException)
26 | {
27 | Trace(MvxTraceLevel.Error, tag, "Exception during trace of {0} {1}", level, message);
28 | }
29 | }
30 | }
31 | }
--------------------------------------------------------------------------------
/Components/square.androidtimessquare-1.6.5.0/samples/AndroidTimesSquareSample/Resources/layout/DialogCustomized.axml:
--------------------------------------------------------------------------------
1 |
19 |
--------------------------------------------------------------------------------
/MyTrains.Core/Services/Data/UserDataService.cs:
--------------------------------------------------------------------------------
1 | using System.Threading.Tasks;
2 | using MyTrains.Core.Contracts.Repository;
3 | using MyTrains.Core.Contracts.Services;
4 | using MyTrains.Core.Model;
5 |
6 | namespace MyTrains.Core.Services.Data
7 | {
8 | public class UserDataService: IUserDataService
9 | {
10 | private readonly IUserRepository _userRepository;
11 | private User _activeUser;
12 | public UserDataService(IUserRepository userRepository)
13 | {
14 | _userRepository = userRepository;
15 | }
16 |
17 | public async Task SearchUser(string userName)
18 | {
19 | return await _userRepository.SearchUser(userName);
20 | }
21 |
22 | public async Task Login(string userName, string password)
23 | {
24 | _activeUser = await _userRepository.Login(userName, password);
25 | return _activeUser;
26 | }
27 |
28 | public User GetActiveUser()
29 | {
30 | return _activeUser;
31 | }
32 | }
33 | }
--------------------------------------------------------------------------------
/Components/fmcalendar-1.5.3/samples/FMCalendarSample.iOS-Unified/AppDelegate.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 |
5 | using Foundation;
6 | using UIKit;
7 |
8 | namespace FMCalendarSample.iOS
9 | {
10 | // The UIApplicationDelegate for the application. This class is responsible for launching the
11 | // User Interface of the application, as well as listening (and optionally responding) to
12 | // application events from iOS.
13 | [Register ("AppDelegate")]
14 | public partial class AppDelegate : UIApplicationDelegate
15 | {
16 | // class-level declarations
17 |
18 | public override UIWindow Window {
19 | get;
20 | set;
21 | }
22 |
23 | public override bool FinishedLaunching (UIApplication application, NSDictionary launchOptions)
24 | {
25 | // We create a FlyoutNavigationController to be the 'root' of our app
26 | var controller = new FMCalendarViewController ();
27 |
28 | Window = new UIWindow (UIScreen.MainScreen.Bounds);
29 | Window.MakeKeyAndVisible ();
30 | Window.RootViewController = controller;
31 | return true;
32 | }
33 | }
34 | }
--------------------------------------------------------------------------------
/Components/fmcalendar-1.5.3/samples/FMCalendarSample.iOS/AppDelegate.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 |
5 | using MonoTouch.Foundation;
6 | using MonoTouch.UIKit;
7 |
8 | namespace FMCalendarSample.iOS
9 | {
10 | // The UIApplicationDelegate for the application. This class is responsible for launching the
11 | // User Interface of the application, as well as listening (and optionally responding) to
12 | // application events from iOS.
13 | [Register ("AppDelegate")]
14 | public partial class AppDelegate : UIApplicationDelegate
15 | {
16 | // class-level declarations
17 |
18 | public override UIWindow Window {
19 | get;
20 | set;
21 | }
22 |
23 | public override bool FinishedLaunching (UIApplication application, NSDictionary launchOptions)
24 | {
25 | // We create a FlyoutNavigationController to be the 'root' of our app
26 | var controller = new FMCalendarViewController ();
27 |
28 | Window = new UIWindow (UIScreen.MainScreen.Bounds);
29 | Window.MakeKeyAndVisible ();
30 | Window.RootViewController = controller;
31 | return true;
32 | }
33 | }
34 | }
--------------------------------------------------------------------------------
/MyTrains.Core/Repositories/BaseRepository.cs:
--------------------------------------------------------------------------------
1 | using System.Net.Http;
2 | using System.Net.Http.Headers;
3 | using System.Threading.Tasks;
4 | using Newtonsoft.Json;
5 |
6 | namespace MyTrains.Core.Repositories
7 | {
8 | public class BaseRepository
9 | {
10 |
11 | private HttpClient CreateHttpClient()
12 | {
13 | var httpClient = new HttpClient();
14 | httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
15 | return httpClient;
16 | }
17 |
18 | protected async Task GetAsync(string url)
19 | where T : new()
20 | {
21 | HttpClient httpClient = CreateHttpClient();
22 | T result;
23 |
24 | try
25 | {
26 | var response = await httpClient.GetStringAsync(url);
27 | result = await Task.Run(() => JsonConvert.DeserializeObject(response));
28 | }
29 | catch
30 | {
31 | result = new T();
32 | }
33 |
34 | return result;
35 | }
36 | }
37 | }
--------------------------------------------------------------------------------
/Components/fmcalendar-1.5.3/samples/FMCalendarSample.iOS/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDisplayName
6 | FMCalendarSample.iOS
7 | CFBundleIdentifier
8 | com.factorymind.FMCalendarSample
9 | CFBundleShortVersionString
10 | 1.0
11 | CFBundleVersion
12 | 1.0
13 | LSRequiresIPhoneOS
14 |
15 | MinimumOSVersion
16 | 7.0
17 | UIDeviceFamily
18 |
19 | 1
20 | 2
21 |
22 | UIRequiredDeviceCapabilities
23 |
24 | armv7
25 |
26 | UISupportedInterfaceOrientations
27 |
28 | UIInterfaceOrientationPortrait
29 |
30 | UISupportedInterfaceOrientations~ipad
31 |
32 | UIInterfaceOrientationPortrait
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/MyTrains.iOS/TableViewSources/SavedJourneysTableViewSource.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Foundation;
3 | using MvvmCross.Binding.ExtensionMethods;
4 | using MvvmCross.Binding.iOS.Views;
5 | using UIKit;
6 |
7 | namespace MyTrains.iOS.TableViewSources
8 | {
9 | public class SavedJourneysTableViewSource: MvxTableViewSource
10 | {
11 | public SavedJourneysTableViewSource(UITableView tableView) : base(tableView)
12 | {
13 | }
14 |
15 | public SavedJourneysTableViewSource(IntPtr handle) : base(handle)
16 | {
17 | }
18 |
19 | public override nint RowsInSection(UITableView tableview, nint section)
20 | {
21 | return ItemsSource.Count();
22 | }
23 |
24 | public override nint NumberOfSections(UITableView tableView)
25 | {
26 | return 1;
27 | }
28 |
29 | protected override UITableViewCell GetOrCreateCellFor(UITableView tableView, NSIndexPath indexPath, object item)
30 | {
31 | var cell = (SavedJourneyCell)tableView.DequeueReusableCell(SavedJourneyCell.Identifier);
32 | return cell;
33 | }
34 | }
35 | }
--------------------------------------------------------------------------------
/Components/fmcalendar-1.5.3/samples/FMCalendarSample.iOS-Unified/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDisplayName
6 | FMCalendarSample
7 | CFBundleIdentifier
8 | com.factorymind.FMCalendarSample
9 | CFBundleShortVersionString
10 | 1.0
11 | CFBundleVersion
12 | 1.0
13 | LSRequiresIPhoneOS
14 |
15 | MinimumOSVersion
16 | 7.1
17 | UIDeviceFamily
18 |
19 | 1
20 | 2
21 |
22 | UIRequiredDeviceCapabilities
23 |
24 | armv7
25 |
26 | UISupportedInterfaceOrientations
27 |
28 | UIInterfaceOrientationPortrait
29 |
30 | UISupportedInterfaceOrientations~ipad
31 |
32 | UIInterfaceOrientationPortrait
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/layout/MainView.axml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
9 |
12 |
13 |
19 |
20 |
21 |
26 |
--------------------------------------------------------------------------------
/MyTrains.Core/ViewModel/BaseViewModel.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Threading.Tasks;
3 | using MvvmCross.Core.ViewModels;
4 | using MvvmCross.Localization;
5 | using MvvmCross.Plugins.Messenger;
6 |
7 | namespace MyTrains.Core.ViewModel
8 | {
9 | public class BaseViewModel: MvxViewModel, IDisposable
10 | {
11 | protected IMvxMessenger Messenger;
12 |
13 | public BaseViewModel(IMvxMessenger messenger)
14 | {
15 | Messenger = messenger;
16 | }
17 |
18 | public IMvxLanguageBinder TextSource =>
19 | new MvxLanguageBinder("", GetType().Name);
20 |
21 | protected async Task ReloadDataAsync()
22 | {
23 | try
24 | {
25 | await InitializeAsync();
26 | }
27 | catch (Exception ex)
28 | {
29 | System.Diagnostics.Debug.WriteLine(ex.ToString());
30 | }
31 | }
32 |
33 | protected virtual Task InitializeAsync()
34 | {
35 | return Task.FromResult(0);
36 | }
37 |
38 | public void Dispose()
39 | {
40 | Messenger = null;
41 | }
42 | }
43 | }
--------------------------------------------------------------------------------
/MyTrains.Droid/Views/SettingsFragment.cs:
--------------------------------------------------------------------------------
1 | using Android.OS;
2 | using Android.Runtime;
3 | using Android.Views;
4 | using MvvmCross.Binding.Droid.BindingContext;
5 | using MvvmCross.Droid.Shared.Attributes;
6 | using MvvmCross.Droid.Support.V7.Fragging.Fragments;
7 | using MyTrains.Core.ViewModel;
8 | using MyTrains.Droid.Activities;
9 | using MyTrains.Droid.Extensions;
10 |
11 | namespace MyTrains.Droid.Views
12 | {
13 | [MvxFragment(typeof(MainViewModel), Resource.Id.content_frame, true)]
14 | [Register("mytrains.droid.views.SettingsFragment")]
15 | public class SettingsFragment : MvxFragment
16 | {
17 | public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
18 | {
19 | base.OnCreateView(inflater, container, savedInstanceState);
20 | return this.BindingInflate(Resource.Layout.SettingsView, null);
21 | }
22 |
23 | public override void OnViewCreated(View view, Bundle savedInstanceState)
24 | {
25 | base.OnViewCreated(view, savedInstanceState);
26 | (Activity as MainActivity).SetCustomTitle("Settings");
27 | }
28 | }
29 | }
--------------------------------------------------------------------------------
/MyTrains.Core/Repositories/UserRepository.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using System.Linq;
3 | using System.Threading.Tasks;
4 | using MyTrains.Core.Contracts.Repository;
5 | using MyTrains.Core.Model;
6 |
7 | namespace MyTrains.Core.Repositories
8 | {
9 | public class UserRepository : BaseRepository, IUserRepository
10 | {
11 |
12 | private static readonly List AllKnownUsers = new List
13 | {
14 | new User { UserName = "gillcleeren", Password="123456", UserId = 1}, //extremely secure, don't try this at home
15 | new User { UserName = "johnsmith", Password="789456", UserId = 2},
16 | new User { UserName = "annawhite", Password="100000", UserId = 3}
17 | };
18 |
19 | public async Task SearchUser(string userName)
20 | {
21 | return await Task.FromResult(AllKnownUsers.FirstOrDefault(u => u.UserName == userName));
22 | }
23 |
24 | public async Task Login(string userName, string password)
25 | {
26 | return await Task.FromResult(AllKnownUsers.FirstOrDefault(u => u.UserName == userName && u.Password == password));
27 | }
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/MyTrains.iOS/Views/BaseView.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using MvvmCross.iOS.Views;
3 | using MyTrains.iOS.Utility;
4 | using UIKit;
5 |
6 | namespace MyTrains.iOS.Views
7 | {
8 | public class BaseView: MvxViewController
9 | {
10 | public BaseView(IntPtr handle) : base(handle)
11 | {
12 | }
13 |
14 | public override void ViewDidLoad()
15 | {
16 | base.ViewDidLoad();
17 |
18 | var stringAttributes = new UIStringAttributes ();
19 | stringAttributes.Font = UIFont.SystemFontOfSize (16);
20 | stringAttributes.ForegroundColor = UIColor.FromRGB (255, 255, 255);
21 | NavigationController.NavigationBar.BarTintColor = MyTrainsColors.DarkColor;
22 | NavigationController.NavigationBar.TintColor = UIColor.White;
23 | NavigationController.NavigationBar.TitleTextAttributes = stringAttributes;
24 |
25 | CreateBindings();
26 | }
27 |
28 | public override UIStatusBarStyle PreferredStatusBarStyle ()
29 | {
30 | return UIStatusBarStyle.LightContent;
31 | }
32 |
33 | protected virtual void CreateBindings()
34 | {
35 | }
36 | }
37 | }
--------------------------------------------------------------------------------
/MyTrains.Droid/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 | using Android.App;
5 |
6 | // General Information about an assembly is controlled through the following
7 | // set of attributes. Change these attribute values to modify the information
8 | // associated with an assembly.
9 | [assembly: AssemblyTitle("MyTrains.Droid")]
10 | [assembly: AssemblyDescription("")]
11 | [assembly: AssemblyConfiguration("")]
12 | [assembly: AssemblyCompany("")]
13 | [assembly: AssemblyProduct("MyTrains.Droid")]
14 | [assembly: AssemblyCopyright("Copyright © 2016")]
15 | [assembly: AssemblyTrademark("")]
16 | [assembly: AssemblyCulture("")]
17 | [assembly: ComVisible(false)]
18 |
19 | // Version information for an assembly consists of the following four values:
20 | //
21 | // Major Version
22 | // Minor Version
23 | // Build Number
24 | // Revision
25 | //
26 | // You can specify all the values or you can default the Build and Revision Numbers
27 | // by using the '*' as shown below:
28 | // [assembly: AssemblyVersion("1.0.*")]
29 | [assembly: AssemblyVersion("1.0.0.0")]
30 | [assembly: AssemblyFileVersion("1.0.0.0")]
31 |
--------------------------------------------------------------------------------
/MyTrains.Droid/Views/SavedJourneysFragment.cs:
--------------------------------------------------------------------------------
1 | using Android.OS;
2 | using Android.Runtime;
3 | using Android.Views;
4 | using MvvmCross.Binding.Droid.BindingContext;
5 | using MvvmCross.Droid.Shared.Attributes;
6 | using MvvmCross.Droid.Support.V7.Fragging.Fragments;
7 | using MyTrains.Core.ViewModel;
8 | using MyTrains.Droid.Activities;
9 | using MyTrains.Droid.Extensions;
10 |
11 | namespace MyTrains.Droid.Views
12 | {
13 | [MvxFragment(typeof(MainViewModel), Resource.Id.content_frame, true)]
14 | [Register("mytrains.droid.views.SavedJourneysFragment")]
15 | public class SavedJourneysFragment : MvxFragment
16 | {
17 | public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
18 | {
19 | base.OnCreateView(inflater, container, savedInstanceState);
20 | return this.BindingInflate(Resource.Layout.SavedJourneysView, null);
21 | }
22 |
23 | public override void OnViewCreated(View view, Bundle savedInstanceState)
24 | {
25 | base.OnViewCreated(view, savedInstanceState);
26 | (this.Activity as MainActivity).SetCustomTitle("Saved journeys");
27 | }
28 | }
29 | }
--------------------------------------------------------------------------------
/MyTrains.Core/Services/Data/SettingsDataService.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using MyTrains.Core.Contracts.Repository;
3 | using MyTrains.Core.Contracts.Services;
4 | using MyTrains.Core.Model;
5 |
6 | namespace MyTrains.Core.Services.Data
7 | {
8 | public class SettingsDataService : ISettingsDataService
9 | {
10 | private readonly ISettingsRepository _settingsRepository;
11 | private Currency _activeCurrency;
12 |
13 | public SettingsDataService(ISettingsRepository settingsRepository)
14 | {
15 | _settingsRepository = settingsRepository;
16 | }
17 |
18 | public List GetCurrencies()
19 | {
20 | return _settingsRepository.GetAvailableCurrencies();
21 | }
22 |
23 | public Currency GetActiveCurrency()
24 | {
25 | return _activeCurrency ?? (_activeCurrency = _settingsRepository.GetCurrencyById(1));
26 | }
27 |
28 | public void SetActiveCurrency(Currency currency)
29 | {
30 | _activeCurrency = currency;
31 | }
32 |
33 | public string GetAboutContent()
34 | {
35 | return _settingsRepository.GetAboutContent();
36 | }
37 | }
38 | }
--------------------------------------------------------------------------------
/MyTrains.Droid/Views/JourneyDetailsFragment.cs:
--------------------------------------------------------------------------------
1 | using Android.OS;
2 | using Android.Runtime;
3 | using Android.Views;
4 | using MvvmCross.Binding.Droid.BindingContext;
5 | using MvvmCross.Droid.Shared.Attributes;
6 | using MvvmCross.Droid.Support.V7.Fragging.Fragments;
7 | using MyTrains.Core.ViewModel;
8 | using MyTrains.Droid.Activities;
9 | using MyTrains.Droid.Extensions;
10 |
11 | namespace MyTrains.Droid.Views
12 | {
13 | [MvxFragment(typeof(MainViewModel), Resource.Id.content_frame, true)]
14 | [Register("mytrains.droid.views.JourneyDetailsFragment")]
15 | public class JourneyDetailsFragment: MvxFragment
16 | {
17 | public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
18 | {
19 | base.OnCreateView(inflater, container, savedInstanceState);
20 | return this.BindingInflate(Resource.Layout.JourneyDetailsView, null);
21 | }
22 |
23 | public override void OnViewCreated(View view, Bundle savedInstanceState)
24 | {
25 | base.OnViewCreated(view, savedInstanceState);
26 | (this.Activity as MainActivity).SetCustomTitle("Journey details");
27 | }
28 | }
29 |
30 | }
--------------------------------------------------------------------------------
/MyTrains.Localization/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Resources;
2 | using System.Reflection;
3 | using System.Runtime.CompilerServices;
4 | using System.Runtime.InteropServices;
5 |
6 | // General Information about an assembly is controlled through the following
7 | // set of attributes. Change these attribute values to modify the information
8 | // associated with an assembly.
9 | [assembly: AssemblyTitle("MyTrains.Localization")]
10 | [assembly: AssemblyDescription("")]
11 | [assembly: AssemblyConfiguration("")]
12 | [assembly: AssemblyCompany("")]
13 | [assembly: AssemblyProduct("MyTrains.Localization")]
14 | [assembly: AssemblyCopyright("Copyright © 2016")]
15 | [assembly: AssemblyTrademark("")]
16 | [assembly: AssemblyCulture("")]
17 | [assembly: NeutralResourcesLanguage("en")]
18 |
19 | // Version information for an assembly consists of the following four values:
20 | //
21 | // Major Version
22 | // Minor Version
23 | // Build Number
24 | // Revision
25 | //
26 | // You can specify all the values or you can default the Build and Revision Numbers
27 | // by using the '*' as shown below:
28 | // [assembly: AssemblyVersion("1.0.*")]
29 | [assembly: AssemblyVersion("1.0.0.0")]
30 | [assembly: AssemblyFileVersion("1.0.0.0")]
31 |
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/layout/item_menu.axml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
14 |
25 |
26 |
--------------------------------------------------------------------------------
/Components/square.androidtimessquare-1.6.5.0/samples/AndroidTimesSquareSample/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 | using Android.App;
5 |
6 | // General Information about an assembly is controlled through the following
7 | // set of attributes. Change these attribute values to modify the information
8 | // associated with an assembly.
9 | [assembly: AssemblyTitle("AndroidTimesSquareSample")]
10 | [assembly: AssemblyDescription("")]
11 | [assembly: AssemblyConfiguration("")]
12 | [assembly: AssemblyCompany("")]
13 | [assembly: AssemblyProduct("AndroidTimesSquareSample")]
14 | [assembly: AssemblyCopyright("Copyright © 2015")]
15 | [assembly: AssemblyTrademark("")]
16 | [assembly: AssemblyCulture("")]
17 | [assembly: ComVisible(false)]
18 |
19 | // Version information for an assembly consists of the following four values:
20 | //
21 | // Major Version
22 | // Minor Version
23 | // Build Number
24 | // Revision
25 | //
26 | // You can specify all the values or you can default the Build and Revision Numbers
27 | // by using the '*' as shown below:
28 | // [assembly: AssemblyVersion("1.0.*")]
29 | [assembly: AssemblyVersion("1.0.0.0")]
30 | [assembly: AssemblyFileVersion("1.0.0.0")]
31 |
--------------------------------------------------------------------------------
/MyTrains.Core/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Resources;
2 | using System.Reflection;
3 | using System.Runtime.CompilerServices;
4 | using System.Runtime.InteropServices;
5 |
6 | // General Information about an assembly is controlled through the following
7 | // set of attributes. Change these attribute values to modify the information
8 | // associated with an assembly.
9 | [assembly: AssemblyTitle("MyTrains.Core")]
10 | [assembly: AssemblyDescription("")]
11 | [assembly: AssemblyConfiguration("")]
12 | [assembly: AssemblyCompany("")]
13 | [assembly: AssemblyProduct("MyTrains.Core")]
14 | [assembly: AssemblyCopyright("Copyright © 2016")]
15 | [assembly: AssemblyTrademark("")]
16 | [assembly: AssemblyCulture("")]
17 | [assembly: NeutralResourcesLanguage("en")]
18 |
19 | // Version information for an assembly consists of the following four values:
20 | //
21 | // Major Version
22 | // Minor Version
23 | // Build Number
24 | // Revision
25 | //
26 | // You can specify all the values or you can default the Build and Revision Numbers
27 | // by using the '*' as shown below:
28 | // [assembly: AssemblyVersion("1.0.*")]
29 | [assembly: AssemblyVersion("1.0.0.0")]
30 | [assembly: AssemblyFileVersion("1.0.0.0")]
31 | [assembly: InternalsVisibleTo("MyTrains.Core.UnitTests")]
32 |
33 |
--------------------------------------------------------------------------------
/MyTrains.Droid/Services/DialogService.cs:
--------------------------------------------------------------------------------
1 | using System.Threading.Tasks;
2 | using Android.App;
3 | using MvvmCross.Platform;
4 | using MvvmCross.Platform.Droid.Platform;
5 | using MyTrains.Core.Contracts.Services;
6 |
7 | namespace MyTrains.Droid.Services
8 | {
9 | public class DialogService: IDialogService
10 | {
11 | protected Activity CurrentActivity =>
12 | Mvx.Resolve().Activity;
13 |
14 | public Task ShowAlertAsync(string message,
15 | string title, string buttonText)
16 | {
17 | return Task.Run(() =>
18 | {
19 | Alert(message, title, buttonText);
20 | });
21 | }
22 |
23 | private void Alert(string message, string title, string okButton)
24 | {
25 | Application.SynchronizationContext.Post(ignored =>
26 | {
27 | var builder = new AlertDialog.Builder(CurrentActivity);
28 | builder.SetIconAttribute
29 | (Android.Resource.Attribute.AlertDialogIcon);
30 | builder.SetTitle(title);
31 | builder.SetMessage(message);
32 | builder.SetPositiveButton(okButton, delegate { });
33 | builder.Create().Show();
34 | }, null);
35 | }
36 | }
37 | }
--------------------------------------------------------------------------------
/MyTrains.Droid/obj/Debug/sdks.cache:
--------------------------------------------------------------------------------
1 |
2 |
3 | 23
4 | 23
5 | C:\Users\gill\Documents\Android\ndk\android-ndk-r10e
6 | C:\Users\gill\AppData\Local\Android\android-sdk\build-tools\23.0.1
7 | C:\Users\gill\AppData\Local\Android\android-sdk\build-tools\23.0.1
8 | C:\Users\gill\AppData\Local\Android\android-sdk
9 | C:\Program Files (x86)\Java\jdk1.7.0_71
10 | C:\Program Files (x86)\MSBuild\Xamarin\Android
11 | C:\Program Files (x86)\MSBuild\Xamarin\Android
12 |
13 | C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\MonoAndroid\v1.0\
14 |
15 | v6.0
16 | C:\Users\gill\AppData\Local\Android\android-sdk\build-tools\23.0.1
17 |
18 | 23
19 | None
20 |
--------------------------------------------------------------------------------
/MyTrains.Core/Repositories/SettingsRepository.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using MyTrains.Core.Contracts.Repository;
3 | using MyTrains.Core.Model;
4 |
5 | namespace MyTrains.Core.Repositories
6 | {
7 | public class SettingsRepository: ISettingsRepository
8 | {
9 | private static readonly List AllAvailableCurrencies = new List
10 | {
11 | new Currency { CurrencyId = 1, CurrencyName = "Dollar", CurrencySymbol = "$"},
12 | new Currency { CurrencyId = 2, CurrencyName = "Euro", CurrencySymbol = "€"},
13 | new Currency { CurrencyId = 3, CurrencyName = "Pound", CurrencySymbol = "£"}
14 | };
15 | public List GetAvailableCurrencies()
16 | {
17 | return AllAvailableCurrencies;
18 | }
19 |
20 | public Currency GetCurrencyById(int currencyId)
21 | {
22 | return AllAvailableCurrencies[currencyId];
23 | }
24 |
25 | public string GetAboutContent()
26 | {
27 | return "Leverage agile frameworks to provide a robust synopsis for high level overviews. Iterative approaches to corporate strategy foster collaborative thinking to further the overall value proposition. Organically grow the holistic world view of disruptive innovation via workplace diversity and empowerment.";
28 | }
29 | }
30 | }
--------------------------------------------------------------------------------
/MyTrains.iOS/TableViewSources/SearchResultsTableViewSource.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Foundation;
3 | using MvvmCross.Binding.ExtensionMethods;
4 | using MvvmCross.Binding.iOS.Views;
5 | using UIKit;
6 |
7 | namespace MyTrains.iOS.TableViewSources
8 | {
9 | public class SearchResultsTableViewSource: MvxTableViewSource
10 | {
11 | public SearchResultsTableViewSource(UITableView tableView) :
12 | base(tableView)
13 | {
14 | }
15 |
16 | public SearchResultsTableViewSource(IntPtr handle) : base(handle)
17 | {
18 | }
19 |
20 | public override nint NumberOfSections(UITableView tableView)
21 | {
22 | return 1;
23 | }
24 |
25 | public override nint RowsInSection(UITableView tableview, nint section)
26 | {
27 | return ItemsSource.Count();
28 | }
29 |
30 | protected override UITableViewCell GetOrCreateCellFor
31 | (UITableView tableView, NSIndexPath indexPath, object item)
32 | {
33 | var cell = (SearchResultsCell)
34 | tableView.DequeueReusableCell(SearchResultsCell.Identifier);
35 | return cell;
36 | }
37 |
38 | protected override object GetItemAt(NSIndexPath indexPath)
39 | {
40 | return ItemsSource?.ElementAt(indexPath.Row);
41 | }
42 | }
43 | }
--------------------------------------------------------------------------------
/MyTrains.iOS/Setup.cs:
--------------------------------------------------------------------------------
1 | using MvvmCross.Core.ViewModels;
2 | using MvvmCross.iOS.Platform;
3 | using MvvmCross.iOS.Views;
4 | using MvvmCross.iOS.Views.Presenters;
5 | using MvvmCross.Platform;
6 | using MyTrains.Core;
7 | using MyTrains.Core.Contracts.Services;
8 | using MyTrains.iOS.Services;
9 | using UIKit;
10 |
11 | namespace MyTrains.iOS
12 | {
13 | public class Setup: MvxIosSetup
14 | {
15 | private MvxApplicationDelegate _applicationDelegate;
16 | UIWindow _window;
17 |
18 | public Setup(MvxApplicationDelegate applicationDelegate, UIWindow window) : base(applicationDelegate, window)
19 | {
20 | _applicationDelegate = applicationDelegate;
21 | _window = window;
22 | }
23 |
24 | public Setup(IMvxApplicationDelegate applicationDelegate, IMvxIosViewPresenter presenter) : base(applicationDelegate, presenter)
25 | {
26 | }
27 |
28 | protected override IMvxApplication CreateApp()
29 | {
30 | return new App();
31 | }
32 |
33 | protected override void InitializeIoC()
34 | {
35 | base.InitializeIoC();
36 | Mvx.RegisterSingleton(() => new DialogService());
37 | }
38 |
39 | protected override IMvxIosViewsContainer CreateIosViewsContainer()
40 | {
41 | return new StoryBoardContainer();
42 | }
43 | }
44 | }
--------------------------------------------------------------------------------
/MyTrains.iOS/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/MyTrains.iOS/SearchResultCell.designer.cs:
--------------------------------------------------------------------------------
1 | // WARNING
2 | //
3 | // This file has been generated automatically by Xamarin Studio from the outlets and
4 | // actions declared in your storyboard file.
5 | // Manual changes to this file will not be maintained.
6 | //
7 | using Foundation;
8 | using System;
9 | using System.CodeDom.Compiler;
10 | using UIKit;
11 |
12 | namespace MyTrains.iOS
13 | {
14 | [Register ("SearchResultCell")]
15 | partial class SearchResultCell
16 | {
17 | [Outlet]
18 | [GeneratedCode ("iOS Designer", "1.0")]
19 | UILabel departureDateLabel { get; set; }
20 |
21 | [Outlet]
22 | [GeneratedCode ("iOS Designer", "1.0")]
23 | UILabel departureTimeLabel { get; set; }
24 |
25 | [Outlet]
26 | [GeneratedCode ("iOS Designer", "1.0")]
27 | UILabel fromCityLabel { get; set; }
28 |
29 | [Outlet]
30 | [GeneratedCode ("iOS Designer", "1.0")]
31 | UILabel toCityLabel { get; set; }
32 |
33 | void ReleaseDesignerOutlets ()
34 | {
35 | if (departureDateLabel != null) {
36 | departureDateLabel.Dispose ();
37 | departureDateLabel = null;
38 | }
39 | if (departureTimeLabel != null) {
40 | departureTimeLabel.Dispose ();
41 | departureTimeLabel = null;
42 | }
43 | if (fromCityLabel != null) {
44 | fromCityLabel.Dispose ();
45 | fromCityLabel = null;
46 | }
47 | if (toCityLabel != null) {
48 | toCityLabel.Dispose ();
49 | toCityLabel = null;
50 | }
51 | }
52 | }
53 | }
54 |
--------------------------------------------------------------------------------
/MyTrains.iOS/Views/SettingsView.designer.cs:
--------------------------------------------------------------------------------
1 | // WARNING
2 | //
3 | // This file has been generated automatically by Xamarin Studio from the outlets and
4 | // actions declared in your storyboard file.
5 | // Manual changes to this file will not be maintained.
6 | //
7 | using Foundation;
8 | using System;
9 | using System.CodeDom.Compiler;
10 | using UIKit;
11 |
12 | namespace MyTrains.iOS.Views
13 | {
14 | [Register ("SettingsView")]
15 | partial class SettingsView
16 | {
17 | [Outlet]
18 | [GeneratedCode ("iOS Designer", "1.0")]
19 | UITextView AboutTextView { get; set; }
20 |
21 | [Outlet]
22 | [GeneratedCode ("iOS Designer", "1.0")]
23 | UITextField CurrencyTextField { get; set; }
24 |
25 | [Outlet]
26 | [GeneratedCode ("iOS Designer", "1.0")]
27 | UITextView testTextView { get; set; }
28 |
29 | [Outlet]
30 | [GeneratedCode ("iOS Designer", "1.0")]
31 | UIButton VisitSiteButton { get; set; }
32 |
33 | void ReleaseDesignerOutlets ()
34 | {
35 | if (AboutTextView != null) {
36 | AboutTextView.Dispose ();
37 | AboutTextView = null;
38 | }
39 | if (CurrencyTextField != null) {
40 | CurrencyTextField.Dispose ();
41 | CurrencyTextField = null;
42 | }
43 | if (testTextView != null) {
44 | testTextView.Dispose ();
45 | testTextView = null;
46 | }
47 | if (VisitSiteButton != null) {
48 | VisitSiteButton.Dispose ();
49 | VisitSiteButton = null;
50 | }
51 | }
52 | }
53 | }
54 |
--------------------------------------------------------------------------------
/MyTrains.iOS/SearchResultsCell.designer.cs:
--------------------------------------------------------------------------------
1 | // WARNING
2 | //
3 | // This file has been generated automatically by Xamarin Studio from the outlets and
4 | // actions declared in your storyboard file.
5 | // Manual changes to this file will not be maintained.
6 | //
7 | using Foundation;
8 | using System;
9 | using System.CodeDom.Compiler;
10 | using UIKit;
11 |
12 | namespace MyTrains.iOS
13 | {
14 | [Register ("SearchResultsCell")]
15 | partial class SearchResultsCell
16 | {
17 | [Outlet]
18 | [GeneratedCode ("iOS Designer", "1.0")]
19 | UILabel departureDateLabel { get; set; }
20 |
21 | [Outlet]
22 | [GeneratedCode ("iOS Designer", "1.0")]
23 | UILabel departureTimeLabel { get; set; }
24 |
25 | [Outlet]
26 | [GeneratedCode ("iOS Designer", "1.0")]
27 | UILabel fromCityLabel { get; set; }
28 |
29 | [Outlet]
30 | [GeneratedCode ("iOS Designer", "1.0")]
31 | UILabel toCityLabel { get; set; }
32 |
33 | void ReleaseDesignerOutlets ()
34 | {
35 | if (departureDateLabel != null) {
36 | departureDateLabel.Dispose ();
37 | departureDateLabel = null;
38 | }
39 | if (departureTimeLabel != null) {
40 | departureTimeLabel.Dispose ();
41 | departureTimeLabel = null;
42 | }
43 | if (fromCityLabel != null) {
44 | fromCityLabel.Dispose ();
45 | fromCityLabel = null;
46 | }
47 | if (toCityLabel != null) {
48 | toCityLabel.Dispose ();
49 | toCityLabel = null;
50 | }
51 | }
52 | }
53 | }
54 |
--------------------------------------------------------------------------------
/MyTrains.iOS/Controls/CalendarHelper.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using CoreGraphics;
3 | using Factorymind.Components;
4 | using MyTrains.iOS.Utility;
5 | using UIKit;
6 |
7 | namespace MyTrains.iOS.Controls
8 | {
9 | public static class CalendarHelper
10 | {
11 | public static FMCalendar Calendar;
12 |
13 | public static FMCalendar GetPreconfiguredInstance(
14 | CGRect frame, Action dateSelected)
15 | {
16 | Calendar = new FMCalendar(frame)
17 | {
18 | LeftArrow = UIImage.FromBundle("arrow-left.png"),
19 | RightArrow = UIImage.FromBundle("arrow-right.png"),
20 | SelectionColor = MyTrainsColors.AccentColor,
21 | TodayCircleColor = MyTrainsColors.AccentColor,
22 | MonthFormatString = "MMMM yyyy",
23 | SundayFirst = true,
24 | DateSelected = date =>
25 | {
26 | DeselectUnavailableDate(date);
27 | dateSelected?.Invoke(date);
28 | },
29 | IsDateAvailable = date => date >= DateTime.Today
30 | };
31 |
32 | return Calendar;
33 | }
34 |
35 | static void DeselectUnavailableDate(DateTime date)
36 | {
37 | if (!Calendar.IsDateAvailable(date))
38 | {
39 | Calendar.DeselectDate();
40 | }
41 | }
42 | }
43 | }
--------------------------------------------------------------------------------
/MyTrains.iOS/SearchResultsCell.cs:
--------------------------------------------------------------------------------
1 | using Foundation;
2 | using System;
3 | using System.CodeDom.Compiler;
4 | using MvvmCross.Binding.BindingContext;
5 | using MvvmCross.Binding.iOS.Views;
6 | using MyTrains.Core.Converters;
7 | using MyTrains.Core.Model;
8 | using UIKit;
9 |
10 | namespace MyTrains.iOS
11 | {
12 | public partial class SearchResultsCell : MvxTableViewCell
13 | {
14 | internal static readonly NSString Identifier =
15 | new NSString("SearchResultsCell");
16 |
17 | public SearchResultsCell(IntPtr handle) : base(handle)
18 | {
19 | }
20 |
21 | private void CreateBindings()
22 | {
23 | var set = this.CreateBindingSet();
24 |
25 | set.Bind(fromCityLabel)
26 | .To(vm => vm.FromCity.CityName);
27 |
28 | set.Bind(toCityLabel)
29 | .To(vm => vm.ToCity.CityName);
30 |
31 | set.Bind(departureDateLabel)
32 | .To(vm => vm.JourneyDate)
33 | .WithConversion(new DateTimeToDayConverter());
34 |
35 | set.Bind(departureTimeLabel)
36 | .To(vm => vm.DepartureTime)
37 | .WithConversion(new DateTimeToTimeConverter());
38 |
39 | set.Apply();
40 | }
41 |
42 | public override void LayoutSubviews()
43 | {
44 | base.LayoutSubviews();
45 | CreateBindings();
46 | }
47 | }
48 | }
49 |
--------------------------------------------------------------------------------
/MyTrains.Core/ViewModel/MainViewModel.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using MvvmCross.Core.ViewModels;
3 | using MvvmCross.Platform;
4 | using MyTrains.Core.Contracts.ViewModel;
5 |
6 | namespace MyTrains.Core.ViewModel
7 | {
8 | public class MainViewModel : MvxViewModel, IMainViewModel
9 | {
10 | private readonly Lazy _searchJourneyViewModel;
11 | private readonly Lazy _savedJourneysViewModel;
12 | private readonly Lazy _settingsViewModel;
13 |
14 | public SearchJourneyViewModel SearchJourneyViewModel => _searchJourneyViewModel.Value;
15 |
16 | public SavedJourneysViewModel SavedJourneysViewModel => _savedJourneysViewModel.Value;
17 |
18 | public SettingsViewModel SettingsViewModel => _settingsViewModel.Value;
19 |
20 | public MainViewModel()
21 | {
22 | _searchJourneyViewModel = new Lazy(Mvx.IocConstruct);
23 | _savedJourneysViewModel = new Lazy(Mvx.IocConstruct);
24 | _settingsViewModel = new Lazy(Mvx.IocConstruct);
25 | }
26 |
27 | public void ShowMenu()
28 | {
29 | ShowViewModel();
30 | }
31 |
32 | public void ShowSearchJourneys()
33 | {
34 | ShowViewModel();
35 | }
36 | }
37 | }
--------------------------------------------------------------------------------
/MyTrains.iOS/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | UIViewControllerBasedStatusBarAppearance
6 |
7 | CFBundleDisplayName
8 | MyTrains.iOS
9 | CFBundleIdentifier
10 | com.companyname.MyTrains.iOS
11 | CFBundleShortVersionString
12 | 1.0
13 | CFBundleVersion
14 | 1.0
15 | LSRequiresIPhoneOS
16 |
17 | MinimumOSVersion
18 |
19 | UIDeviceFamily
20 |
21 | 1
22 |
23 | UILaunchStoryboardName
24 | LaunchScreen
25 | UIRequiredDeviceCapabilities
26 |
27 | armv7
28 |
29 | UISupportedInterfaceOrientations
30 |
31 | UIInterfaceOrientationPortrait
32 | UIInterfaceOrientationLandscapeLeft
33 | UIInterfaceOrientationLandscapeRight
34 |
35 | CFBundleName
36 | MyTrains.iOS
37 | UIStatusBarStyle
38 | UIStatusBarStyleLightContent
39 | XSAppIconAssets
40 | Assets.xcassets/AppIcons.appiconset
41 | XSLaunchImageAssets
42 | Assets.xcassets/LaunchImage.launchimage
43 |
44 |
45 |
--------------------------------------------------------------------------------
/MyTrains.Core/Services/Data/JourneyDataService.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Threading.Tasks;
4 | using MyTrains.Core.Contracts.Repository;
5 | using MyTrains.Core.Contracts.Services;
6 | using MyTrains.Core.Model;
7 |
8 | namespace MyTrains.Core.Services.Data
9 | {
10 | public class JourneyDataService: IJourneyDataService
11 | {
12 | private readonly IJourneyRepository _journeyRepository;
13 | private readonly ICityRepository _cityRepository;
14 |
15 |
16 | public JourneyDataService(IJourneyRepository journeyRepository,
17 | ICityRepository cityRepository)
18 | {
19 | _journeyRepository = journeyRepository;
20 | _cityRepository = cityRepository;
21 | }
22 |
23 | public async Task> SearchJourney(int fromCity, int toCity, DateTime journeyDate, DateTime departureTime)
24 | {
25 | var journeys = await _journeyRepository.SearchJourney(fromCity, toCity, journeyDate, departureTime);
26 | foreach (var journey in journeys)
27 | {
28 | journey.FromCity = await _cityRepository.GetCityById(journey.FromCityId);
29 | journey.ToCity = await _cityRepository.GetCityById(journey.ToCityId);
30 | }
31 | return journeys;
32 | }
33 |
34 | public async Task GetJourneyDetails(int journeyId)
35 | {
36 | return await _journeyRepository.GetJourneyDetails(journeyId);
37 | }
38 | }
39 | }
--------------------------------------------------------------------------------
/MyTrains.iOS/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("MyTrains.iOS")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("MyTrains.iOS")]
13 | [assembly: AssemblyCopyright("Copyright © 2016")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("bbd6ba79-365c-46fb-9662-04318221a0a7")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/MyTrains.iOS/SavedJourneyCell.cs:
--------------------------------------------------------------------------------
1 | using Foundation;
2 | using System;
3 | using System.CodeDom.Compiler;
4 | using MvvmCross.Binding.BindingContext;
5 | using MvvmCross.Binding.iOS.Views;
6 | using MyTrains.Core.Converters;
7 | using MyTrains.Core.Model;
8 | using UIKit;
9 |
10 | namespace MyTrains.iOS
11 | {
12 | partial class SavedJourneyCell : MvxTableViewCell
13 | {
14 | public SavedJourneyCell (IntPtr handle) : base (handle)
15 | {
16 | }
17 |
18 | internal static NSString Identifier = new NSString("SavedJourneyCell");
19 |
20 | private void CreateBindings()
21 | {
22 | var set = this.CreateBindingSet();
23 |
24 | set.Bind(FromCityLabel)
25 | .To(vm => vm.Journey.FromCity.CityName);
26 |
27 | set.Bind(ToCityLabel)
28 | .To(vm => vm.Journey.ToCity.CityName);
29 |
30 | set.Bind(NumberOfTicketsLabel)
31 | .To(vm => vm.NumberOfTravellers);
32 |
33 | set.Bind(DepartureDateLabel)
34 | .To(vm => vm.Journey.JourneyDate)
35 | .WithConversion(new DateTimeToDayConverter());
36 |
37 | set.Bind(DepartureTimeLabel)
38 | .To(vm => vm.Journey.DepartureTime)
39 | .WithConversion(new DateTimeToTimeConverter());
40 |
41 | set.Apply();
42 | }
43 |
44 | public override void LayoutSubviews()
45 | {
46 | base.LayoutSubviews();
47 | CreateBindings();
48 | }
49 | }
50 | }
51 |
--------------------------------------------------------------------------------
/MyTrains.Core.UnitTests/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("MyTrains.Core.UnitTests")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("MyTrains.Core.UnitTests")]
13 | [assembly: AssemblyCopyright("Copyright © 2016")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("1442781b-1e63-418c-a2d9-ce28cd91adea")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/MyTrains.Core/Utility/ResxTextProvider.cs:
--------------------------------------------------------------------------------
1 | using System.Globalization;
2 | using System.Resources;
3 | using MvvmCross.Localization;
4 |
5 | namespace MyTrains.Core.Utility
6 | {
7 | public class ResxTextProvider : IMvxTextProvider
8 | {
9 | private readonly ResourceManager _resourceManager;
10 |
11 | public ResxTextProvider(ResourceManager resourceManager)
12 | {
13 | _resourceManager = resourceManager;
14 | CurrentLanguage = new CultureInfo("en-US");
15 | }
16 |
17 | public CultureInfo CurrentLanguage { get; set; }
18 |
19 | public string GetText(string namespaceKey,
20 | string typeKey, string name)
21 | {
22 | string resolvedKey = name;
23 |
24 | if (!string.IsNullOrEmpty(typeKey))
25 | {
26 | resolvedKey = $"{typeKey}.{resolvedKey}";
27 | }
28 |
29 | if (!string.IsNullOrEmpty(namespaceKey))
30 | {
31 | resolvedKey = $"{namespaceKey}.{resolvedKey}";
32 | }
33 |
34 | return _resourceManager.GetString(resolvedKey, CurrentLanguage);
35 | }
36 |
37 | public string GetText(string namespaceKey, string typeKey, string name, params object[] formatArgs)
38 | {
39 | string baseText = GetText(namespaceKey, typeKey, name);
40 |
41 | if (string.IsNullOrEmpty(baseText))
42 | {
43 | return baseText;
44 | }
45 |
46 | return string.Format(baseText, formatArgs);
47 | }
48 | }
49 | }
50 |
--------------------------------------------------------------------------------
/MyTrains.Droid/Views/MenuFragment.cs:
--------------------------------------------------------------------------------
1 | using Android.OS;
2 | using Android.Runtime;
3 | using Android.Views;
4 | using MvvmCross.Binding.Droid.BindingContext;
5 | using MvvmCross.Droid.Shared.Attributes;
6 | using MyTrains.Core.ViewModel;
7 | using MyTrains.Droid.Activities;
8 | using System;
9 | using MvvmCross.Droid.Support.V7.Fragging.Fragments;
10 |
11 | namespace MyTrains.Droid.Views
12 | {
13 | [MvxFragment(typeof(MainViewModel), Resource.Id.left_drawer, true)]
14 | [Register("mytrains.droid.views.MenuFragment")]
15 | public class MenuFragment : MvxFragment
16 | {
17 | public MenuFragment()
18 | {
19 |
20 | }
21 |
22 | public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
23 | {
24 | base.OnCreateView(inflater, container, savedInstanceState);
25 | return this.BindingInflate(Resource.Layout.fragment_menu, null);
26 | }
27 |
28 | public override void OnStart()
29 | {
30 | base.OnStart();
31 | ViewModel.CloseMenu += OnCloseMenu;
32 | }
33 |
34 | public override void OnStop()
35 | {
36 | base.OnStop();
37 | ViewModel.CloseMenu -= OnCloseMenu;
38 | }
39 |
40 | private void OnCloseMenu(object sender, EventArgs e)
41 | {
42 | (Activity as MainActivity)?.CloseDrawerMenu();
43 | }
44 |
45 | public bool OnNavigationItemSelected(IMenuItem menuItem)
46 | {
47 | return true;
48 | }
49 | }
50 | }
--------------------------------------------------------------------------------
/MyTrains.Core/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/MyTrains.Droid/Views/SearchResultsFragment.cs:
--------------------------------------------------------------------------------
1 | using Android.OS;
2 | using Android.Runtime;
3 | using Android.Views;
4 | using MvvmCross.Binding.Droid.BindingContext;
5 | using MvvmCross.Droid.Shared.Attributes;
6 | using MvvmCross.Droid.Support.V7.Fragging.Fragments;
7 | using MyTrains.Core.ViewModel;
8 | using MyTrains.Droid.Activities;
9 | using MyTrains.Droid.Extensions;
10 |
11 | namespace MyTrains.Droid.Views
12 | {
13 | [MvxFragment(typeof(MainViewModel), Resource.Id.content_frame, true)]
14 | [Register("mytrains.droid.views.SearchResultsFragment")]
15 | public class SearchResultsFragment: MvxFragment
16 | {
17 | private bool _alreadyLoaded;
18 |
19 | public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
20 | {
21 | _alreadyLoaded = true;
22 |
23 | base.OnCreateView(inflater, container, savedInstanceState);
24 | return this.BindingInflate(Resource.Layout.SearchResultsView, null);
25 | }
26 |
27 | public override void OnViewCreated(View view, Bundle savedInstanceState)
28 | {
29 | base.OnViewCreated(view, savedInstanceState);
30 | (this.Activity as MainActivity).SetCustomTitle("Search results");
31 | }
32 |
33 | public override void OnResume()
34 | {
35 | if(!_alreadyLoaded)ViewModel.Start();
36 | base.OnResume();
37 | }
38 |
39 | public override void OnStop()
40 | {
41 | _alreadyLoaded = false;
42 | base.OnStop();
43 | }
44 | }
45 | }
--------------------------------------------------------------------------------
/Components/square.androidtimessquare-1.6.5.0/samples/AndroidTimesSquareSample/AndroidTimesSquareSample.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio 14
4 | VisualStudioVersion = 14.0.23107.0
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AndroidTimesSquareSample", "AndroidTimesSquareSample.csproj", "{8B81483F-E882-4EAE-BCB5-F78328971FE8}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|Any CPU = Debug|Any CPU
11 | Release|Any CPU = Release|Any CPU
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {4FE5BA3F-1D95-419E-85D8-8D61ED3C0941}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
15 | {4FE5BA3F-1D95-419E-85D8-8D61ED3C0941}.Debug|Any CPU.Build.0 = Debug|Any CPU
16 | {4FE5BA3F-1D95-419E-85D8-8D61ED3C0941}.Release|Any CPU.ActiveCfg = Release|Any CPU
17 | {4FE5BA3F-1D95-419E-85D8-8D61ED3C0941}.Release|Any CPU.Build.0 = Release|Any CPU
18 | {8B81483F-E882-4EAE-BCB5-F78328971FE8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
19 | {8B81483F-E882-4EAE-BCB5-F78328971FE8}.Debug|Any CPU.Build.0 = Debug|Any CPU
20 | {8B81483F-E882-4EAE-BCB5-F78328971FE8}.Debug|Any CPU.Deploy.0 = Debug|Any CPU
21 | {8B81483F-E882-4EAE-BCB5-F78328971FE8}.Release|Any CPU.ActiveCfg = Release|Any CPU
22 | {8B81483F-E882-4EAE-BCB5-F78328971FE8}.Release|Any CPU.Build.0 = Release|Any CPU
23 | {8B81483F-E882-4EAE-BCB5-F78328971FE8}.Release|Any CPU.Deploy.0 = Release|Any CPU
24 | EndGlobalSection
25 | GlobalSection(SolutionProperties) = preSolution
26 | HideSolutionNode = FALSE
27 | EndGlobalSection
28 | EndGlobal
29 |
--------------------------------------------------------------------------------
/Components/square.androidtimessquare-1.6.5.0/component/GettingStarted.md:
--------------------------------------------------------------------------------
1 | # Getting Started with TimesSquare
2 |
3 | > Standalone Android widget for picking a single date from a calendar view.
4 |
5 | ## Usage
6 |
7 | We can include the `CalendarPickerView` element in out layout resource:
8 |
9 |
13 |
14 | This is a fairly large control so it is wise to give it ample space in our
15 | layout. On small devices it is recommended to use a dialog, full-screen
16 | fragment, or dedicated activity. On larger devices like tablets, displaying
17 | full-screen is not recommended. A fragment occupying part of the layout or
18 | a dialog is a better choice.
19 |
20 | In the `OnCreate` of our activity/dialog or the `OnCreateView` of our fragment,
21 | we initialize the view with a range of valid dates as well as the currently
22 | selected date:
23 |
24 | CalendarPickerView calendar = ...
25 |
26 | var today = DateTime.Now;
27 | var nextYear = today.AddYears(1);
28 |
29 | calendar
30 | .Init(today, nextYear)
31 | .WithSelectedDate(today);
32 |
33 | The default mode of the view is to have one selectable date.
34 | If we want the user to be able to select multiple dates or a date range, we
35 | use the `InMode` method:
36 |
37 | CalendarPickerView calendar = ...
38 |
39 | var today = DateTime.Now;
40 | var nextYear = today.AddYears(1);
41 |
42 | calendar
43 | .Init(today, nextYear)
44 | .InMode(CalendarPickerView.SelectionMode.Range)
45 | .WithSelectedDate(today);
46 |
--------------------------------------------------------------------------------
/MyTrains.iOS/SavedJourneyCell.designer.cs:
--------------------------------------------------------------------------------
1 | // WARNING
2 | //
3 | // This file has been generated automatically by Xamarin Studio from the outlets and
4 | // actions declared in your storyboard file.
5 | // Manual changes to this file will not be maintained.
6 | //
7 | using Foundation;
8 | using System;
9 | using System.CodeDom.Compiler;
10 | using UIKit;
11 |
12 | namespace MyTrains.iOS
13 | {
14 | [Register ("SavedJourneyCell")]
15 | partial class SavedJourneyCell
16 | {
17 | [Outlet]
18 | [GeneratedCode ("iOS Designer", "1.0")]
19 | UILabel DepartureDateLabel { get; set; }
20 |
21 | [Outlet]
22 | [GeneratedCode ("iOS Designer", "1.0")]
23 | UILabel DepartureTimeLabel { get; set; }
24 |
25 | [Outlet]
26 | [GeneratedCode ("iOS Designer", "1.0")]
27 | UILabel FromCityLabel { get; set; }
28 |
29 | [Outlet]
30 | [GeneratedCode ("iOS Designer", "1.0")]
31 | UILabel NumberOfTicketsLabel { get; set; }
32 |
33 | [Outlet]
34 | [GeneratedCode ("iOS Designer", "1.0")]
35 | UILabel ToCityLabel { get; set; }
36 |
37 | void ReleaseDesignerOutlets ()
38 | {
39 | if (DepartureDateLabel != null) {
40 | DepartureDateLabel.Dispose ();
41 | DepartureDateLabel = null;
42 | }
43 | if (DepartureTimeLabel != null) {
44 | DepartureTimeLabel.Dispose ();
45 | DepartureTimeLabel = null;
46 | }
47 | if (FromCityLabel != null) {
48 | FromCityLabel.Dispose ();
49 | FromCityLabel = null;
50 | }
51 | if (NumberOfTicketsLabel != null) {
52 | NumberOfTicketsLabel.Dispose ();
53 | NumberOfTicketsLabel = null;
54 | }
55 | if (ToCityLabel != null) {
56 | ToCityLabel.Dispose ();
57 | ToCityLabel = null;
58 | }
59 | }
60 | }
61 | }
62 |
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 | #FFFFFF
3 | #000000
4 |
5 |
6 | #0674AD
7 | #186089
8 | #3BCADB
9 | #3ea4b4
10 | #373B49
11 | #373B49
12 | #CCCCCC
13 | #00000000
14 |
15 |
18 |
19 |
36 |
37 |
--------------------------------------------------------------------------------
/MyTrains.iOS/Views/SearchJourneyView.designer.cs:
--------------------------------------------------------------------------------
1 | // WARNING
2 | //
3 | // This file has been generated automatically by Xamarin Studio from the outlets and
4 | // actions declared in your storyboard file.
5 | // Manual changes to this file will not be maintained.
6 | //
7 | using Foundation;
8 | using System;
9 | using System.CodeDom.Compiler;
10 | using UIKit;
11 |
12 | namespace MyTrains.iOS.Views
13 | {
14 | [Register ("SearchJourneyView")]
15 | partial class SearchJourneyView
16 | {
17 | [Outlet]
18 | [GeneratedCode ("iOS Designer", "1.0")]
19 | UIView calendarContainerView { get; set; }
20 |
21 | [Outlet]
22 | [GeneratedCode ("iOS Designer", "1.0")]
23 | UITextField depatureTimeTextField { get; set; }
24 |
25 | [Outlet]
26 | [GeneratedCode ("iOS Designer", "1.0")]
27 | UITextField fromCityTextField { get; set; }
28 |
29 | [Outlet]
30 | [GeneratedCode ("iOS Designer", "1.0")]
31 | UIButton searchButton { get; set; }
32 |
33 | [Outlet]
34 | [GeneratedCode ("iOS Designer", "1.0")]
35 | UITextField toCityTextField { get; set; }
36 |
37 | void ReleaseDesignerOutlets ()
38 | {
39 | if (calendarContainerView != null) {
40 | calendarContainerView.Dispose ();
41 | calendarContainerView = null;
42 | }
43 | if (depatureTimeTextField != null) {
44 | depatureTimeTextField.Dispose ();
45 | depatureTimeTextField = null;
46 | }
47 | if (fromCityTextField != null) {
48 | fromCityTextField.Dispose ();
49 | fromCityTextField = null;
50 | }
51 | if (searchButton != null) {
52 | searchButton.Dispose ();
53 | searchButton = null;
54 | }
55 | if (toCityTextField != null) {
56 | toCityTextField.Dispose ();
57 | toCityTextField = null;
58 | }
59 | }
60 | }
61 | }
62 |
--------------------------------------------------------------------------------
/MyTrains.Core/Repositories/SavedJourneyRepository.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using System.Linq;
3 | using System.Threading.Tasks;
4 | using MyTrains.Core.Contracts.Repository;
5 | using MyTrains.Core.Model;
6 |
7 | namespace MyTrains.Core.Repositories
8 | {
9 | public class SavedJourneyRepository : BaseRepository , ISavedJourneyRepository
10 | {
11 |
12 | private static readonly List AllSavedJourneys = new List
13 | {
14 | new SavedJourney {JourneyId = 1, NumberOfTravellers = 3, UserId = 1},
15 | new SavedJourney {JourneyId = 2, NumberOfTravellers = 2, UserId = 1},
16 | new SavedJourney {JourneyId = 3, NumberOfTravellers = 3, UserId = 1},
17 | new SavedJourney {JourneyId = 4, NumberOfTravellers = 2, UserId = 1},
18 | new SavedJourney {JourneyId = 1, NumberOfTravellers = 3, UserId = 2},
19 | new SavedJourney {JourneyId = 2, NumberOfTravellers = 3, UserId = 2}
20 | };
21 |
22 | public async Task> GetSavedJourneyForUser(int userId)
23 | {
24 | return await Task.FromResult(AllSavedJourneys.Where(j => j.UserId == userId));
25 | }
26 |
27 | public async Task AddSavedJourney(int userId, int journeyId, int numberOfTravellers)
28 | {
29 | await
30 | Task.Run(
31 | () =>
32 | AllSavedJourneys.Add(new SavedJourney
33 | {
34 | JourneyId = journeyId,
35 | NumberOfTravellers = numberOfTravellers,
36 | UserId = userId
37 | }));
38 | }
39 |
40 | }
41 | }
--------------------------------------------------------------------------------
/Components/fmcalendar-1.5.3/samples/FMCalendarSample.iOS-Unified/FMCalendarViewController.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Factorymind.Components;
3 | using UIKit;
4 |
5 | namespace FMCalendarSample.iOS
6 | {
7 | public class FMCalendarViewController : UIViewController
8 | {
9 | private FMCalendar fmCalendar;
10 |
11 | public override void ViewDidLoad ()
12 | {
13 | base.ViewDidLoad ();
14 |
15 | fmCalendar = new FMCalendar (View.Bounds);
16 |
17 | View.BackgroundColor = UIColor.White;
18 |
19 | // Specify selection color
20 | fmCalendar.SelectionColor = UIColor.Red;
21 |
22 | // Specify today circle Color
23 | fmCalendar.TodayCircleColor = UIColor.Red;
24 |
25 | // Customizing appearance
26 | fmCalendar.LeftArrow = UIImage.FromFile ("leftArrow.png");
27 | fmCalendar.RightArrow = UIImage.FromFile ("rightArrow.png");
28 |
29 | fmCalendar.MonthFormatString = "MMMM yyyy";
30 |
31 | // Shows Sunday as last day of the week
32 | fmCalendar.SundayFirst = false;
33 |
34 | // Mark with a dot dates that fulfill the predicate
35 | fmCalendar.IsDayMarkedDelegate = (date) =>
36 | {
37 | return date.Day % 2 == 0;
38 | };
39 |
40 | // Turn gray dates that fulfill the predicate
41 | fmCalendar.IsDateAvailable = (date) =>
42 | {
43 | return (date >= DateTime.Today);
44 | };
45 |
46 | fmCalendar.MonthChanged = (date) =>
47 | {
48 | Console.WriteLine ("Month changed {0}", date.Date);
49 | };
50 |
51 | fmCalendar.DateSelected += (date) =>
52 | {
53 | Console.WriteLine ("Date selected: {0}", date);
54 | };
55 |
56 | // Add FMCalendar to SuperView
57 | fmCalendar.Center = this.View.Center;
58 | this.View.AddSubview (fmCalendar);
59 | }
60 |
61 | public override bool PrefersStatusBarHidden ()
62 | {
63 | return true;
64 | }
65 | }
66 | }
--------------------------------------------------------------------------------
/Components/fmcalendar-1.5.3/samples/FMCalendarSample.iOS/FMCalendarViewController.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using MonoTouch.UIKit;
3 | using Factorymind.Components;
4 |
5 | namespace FMCalendarSample.iOS
6 | {
7 | public class FMCalendarViewController : UIViewController
8 | {
9 | private FMCalendar fmCalendar;
10 |
11 | public override void ViewDidLoad ()
12 | {
13 | base.ViewDidLoad ();
14 |
15 | fmCalendar = new FMCalendar (View.Bounds);
16 |
17 | View.BackgroundColor = UIColor.White;
18 |
19 | // Specify selection color
20 | fmCalendar.SelectionColor = UIColor.Red;
21 |
22 | // Specify today circle Color
23 | fmCalendar.TodayCircleColor = UIColor.Red;
24 |
25 | // Customizing appearance
26 | fmCalendar.LeftArrow = UIImage.FromFile ("leftArrow.png");
27 | fmCalendar.RightArrow = UIImage.FromFile ("rightArrow.png");
28 |
29 | fmCalendar.MonthFormatString = "MMMM yyyy";
30 |
31 | // Shows Sunday as last day of the week
32 | fmCalendar.SundayFirst = false;
33 |
34 | // Mark with a dot dates that fulfill the predicate
35 | fmCalendar.IsDayMarkedDelegate = (date) =>
36 | {
37 | return date.Day % 2 == 0;
38 | };
39 |
40 | // Turn gray dates that fulfill the predicate
41 | fmCalendar.IsDateAvailable = (date) =>
42 | {
43 | return (date >= DateTime.Today);
44 | };
45 |
46 | fmCalendar.MonthChanged = (date) =>
47 | {
48 | Console.WriteLine ("Month changed {0}", date.Date);
49 | };
50 |
51 | fmCalendar.DateSelected += (date) =>
52 | {
53 | Console.WriteLine ("Date selected: {0}", date);
54 | };
55 |
56 | // Add FMCalendar to SuperView
57 | fmCalendar.Center = this.View.Center;
58 | this.View.AddSubview (fmCalendar);
59 | }
60 |
61 | public override bool PrefersStatusBarHidden ()
62 | {
63 | return true;
64 | }
65 | }
66 | }
--------------------------------------------------------------------------------
/Components/fmcalendar-1.5.3/component/Details.md:
--------------------------------------------------------------------------------
1 | FMCalendar control is a calendar view for your iPhone or iPad app.
2 |
3 | It can be easily added to your iOS app, and allows you to customize it's appearance and to handle it's events.
4 |
5 | All the day and month names are automatically localized, based on the system language.
6 |
7 | Here is an example on how it works:
8 |
9 | ```csharp
10 | using Factorymind.Components;
11 | ...
12 |
13 | public override void ViewDidLoad ()
14 | {
15 | base.ViewDidLoad ();
16 |
17 | fmCalendar = new FMCalendar (View.Bounds);
18 |
19 | View.BackgroundColor = UIColor.White;
20 |
21 | // Specify selection color
22 | fmCalendar.SelectionColor = UIColor.Red;
23 |
24 | // Specify today circle Color
25 | fmCalendar.TodayCircleColor = UIColor.Red;
26 |
27 | // Customizing appearance
28 | fmCalendar.LeftArrow = UIImage.FromFile ("leftArrow.png");
29 | fmCalendar.RightArrow = UIImage.FromFile ("rightArrow.png");
30 |
31 | fmCalendar.MonthFormatString = "MMMM yyyy";
32 |
33 | // Shows Sunday as last day of the week
34 | fmCalendar.SundayFirst = false;
35 |
36 | // Mark with a dot dates that fulfill the predicate
37 | fmCalendar.IsDayMarkedDelegate = (date) =>
38 | {
39 | return date.Day % 2 == 1;
40 | };
41 |
42 | // Turn gray dates that fulfill the predicate
43 | fmCalendar.IsDateAvailable = (date) =>
44 | {
45 | return (date >= DateTime.Today);
46 | };
47 |
48 | fmCalendar.MonthChanged = (date) =>
49 | {
50 | Console.WriteLine ("Month changed {0}", date.Date);
51 | };
52 |
53 | fmCalendar.DateSelected += (date) =>
54 | {
55 | Console.WriteLine ("Date selected: {0}", date);
56 | };
57 |
58 | // Add FMCalendar to SuperView
59 | fmCalendar.Center = this.View.Center;
60 | this.View.AddSubview (fmCalendar);
61 | }
62 | ```
63 |
64 | Inspired by Eduardo Scoz https://github.com/escoz
--------------------------------------------------------------------------------
/MyTrains.Droid/Resources/AboutResources.txt:
--------------------------------------------------------------------------------
1 | Images, layout descriptions, binary blobs and string dictionaries can be included
2 | in your application as resource files. Various Android APIs are designed to
3 | operate on the resource IDs instead of dealing with images, strings or binary blobs
4 | directly.
5 |
6 | For example, a sample Android app that contains a user interface layout (main.axml),
7 | an internationalization string table (strings.xml) and some icons (drawable-XXX/icon.png)
8 | would keep its resources in the "Resources" directory of the application:
9 |
10 | Resources/
11 | drawable/
12 | icon.png
13 |
14 | layout/
15 | main.axml
16 |
17 | values/
18 | strings.xml
19 |
20 | In order to get the build system to recognize Android resources, set the build action to
21 | "AndroidResource". The native Android APIs do not operate directly with filenames, but
22 | instead operate on resource IDs. When you compile an Android application that uses resources,
23 | the build system will package the resources for distribution and generate a class called "R"
24 | (this is an Android convention) that contains the tokens for each one of the resources
25 | included. For example, for the above Resources layout, this is what the R class would expose:
26 |
27 | public class R {
28 | public class drawable {
29 | public const int icon = 0x123;
30 | }
31 |
32 | public class layout {
33 | public const int main = 0x456;
34 | }
35 |
36 | public class strings {
37 | public const int first_string = 0xabc;
38 | public const int second_string = 0xbcd;
39 | }
40 | }
41 |
42 | You would then use R.drawable.icon to reference the drawable/icon.png file, or R.layout.main
43 | to reference the layout/main.axml file, or R.strings.first_string to reference the first
44 | string in the dictionary file values/strings.xml.
--------------------------------------------------------------------------------
/Components/fmcalendar-1.5.3/component/GettingStarted.md:
--------------------------------------------------------------------------------
1 | FMCalendar control is a calendar view for your iPhone or iPad app.
2 |
3 | It can be easily added to your iOS app, and allows you to customize it's appearance and to handle it's events.
4 |
5 | All the day and month names are automatically localized, based on the system language.
6 |
7 | Here is an example on how it works:
8 |
9 | ```csharp
10 | using Factorymind.Components;
11 | ...
12 |
13 | public override void ViewDidLoad ()
14 | {
15 | base.ViewDidLoad ();
16 |
17 | fmCalendar = new FMCalendar (View.Bounds);
18 |
19 | View.BackgroundColor = UIColor.White;
20 |
21 | // Specify selection color
22 | fmCalendar.SelectionColor = UIColor.Red;
23 |
24 | // Specify today circle Color
25 | fmCalendar.TodayCircleColor = UIColor.Red;
26 |
27 | // Customizing appearance
28 | fmCalendar.LeftArrow = UIImage.FromFile ("leftArrow.png");
29 | fmCalendar.RightArrow = UIImage.FromFile ("rightArrow.png");
30 |
31 | fmCalendar.MonthFormatString = "MMMM yyyy";
32 |
33 | // Shows Sunday as last day of the week
34 | fmCalendar.SundayFirst = false;
35 |
36 | // Mark with a dot dates that fulfill the predicate
37 | fmCalendar.IsDayMarkedDelegate = (date) =>
38 | {
39 | return date.Day % 2 == 1;
40 | };
41 |
42 | // Turn gray dates that fulfill the predicate
43 | fmCalendar.IsDateAvailable = (date) =>
44 | {
45 | return (date >= DateTime.Today);
46 | };
47 |
48 | fmCalendar.MonthChanged = (date) =>
49 | {
50 | Console.WriteLine ("Month changed {0}", date.Date);
51 | };
52 |
53 | fmCalendar.DateSelected += (date) =>
54 | {
55 | Console.WriteLine ("Date selected: {0}", date);
56 | };
57 |
58 | // Add FMCalendar to SuperView
59 | fmCalendar.Center = this.View.Center;
60 | this.View.AddSubview (fmCalendar);
61 | }
62 | ```
63 |
64 | You can download all the sources here: http://www.factorymind.com/Public/Sources/FMCalendar.zip
--------------------------------------------------------------------------------
/MyTrains.Core/Repositories/CityRepository.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using System.Linq;
3 | using System.Threading.Tasks;
4 | using MyTrains.Core.Contracts.Repository;
5 | using MyTrains.Core.Model;
6 |
7 | namespace MyTrains.Core.Repositories
8 | {
9 | public class CityRepository: BaseRepository, ICityRepository
10 | {
11 | private static readonly List AllCities = new List
12 | {
13 | new City
14 | {
15 | CityId = 1,
16 | CityName = "London"
17 | },
18 | new City
19 | {
20 | CityId = 2,
21 | CityName = "Manchester"
22 | },
23 | new City
24 | {
25 | CityId = 3,
26 | CityName = "Liverpool"
27 | },
28 | new City
29 | {
30 | CityId = 4,
31 | CityName = "Cambridge"
32 | },
33 |
34 | new City
35 | {
36 | CityId = 5,
37 | CityName = "Glasgow"
38 | },
39 |
40 | new City
41 | {
42 | CityId = 6,
43 | CityName = "Aberdeen"
44 | },
45 | new City
46 | {
47 | CityId = 7,
48 | CityName = "Bath"
49 | },
50 | new City
51 | {
52 | CityId = 8,
53 | CityName = "Oxford"
54 | }
55 | };
56 |
57 | public async Task> GetAllCities()
58 | {
59 | return await Task.FromResult(AllCities);
60 | }
61 |
62 | public async Task GetCityById(int cityId)
63 | {
64 | return await Task.FromResult(AllCities.FirstOrDefault(c => c.CityId == cityId));
65 | }
66 | }
67 | }
68 |
--------------------------------------------------------------------------------
/MyTrains.Core/Services/Data/SavedJourneyDataService.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using System.Threading.Tasks;
3 | using MyTrains.Core.Contracts.Repository;
4 | using MyTrains.Core.Contracts.Services;
5 | using MyTrains.Core.Model;
6 |
7 | namespace MyTrains.Core.Services.Data
8 | {
9 | public class SavedJourneyDataService: ISavedJourneyDataService
10 | {
11 | private readonly ISavedJourneyRepository _savedJourneyRepository;
12 | private readonly IJourneyDataService _journeyDataService;
13 | private readonly ICityDataService _cityDataService;
14 |
15 | public SavedJourneyDataService(ISavedJourneyRepository savedJourneyRepository, IJourneyDataService journeyDataService, ICityDataService cityDataService)
16 | {
17 | _savedJourneyRepository = savedJourneyRepository;
18 | _journeyDataService = journeyDataService;
19 | _cityDataService = cityDataService;
20 | }
21 |
22 | public async Task> GetSavedJourneyForUser(int userId)
23 | {
24 |
25 | var list = await _savedJourneyRepository.GetSavedJourneyForUser(userId);
26 | foreach (var savedJourney in list)
27 | {
28 | var journey = await _journeyDataService.GetJourneyDetails(savedJourney.JourneyId);
29 | journey.FromCity = await _cityDataService.GetCityById(journey.FromCityId);
30 | journey.ToCity = await _cityDataService.GetCityById(journey.ToCityId);
31 |
32 | savedJourney.Journey = journey;
33 | savedJourney.JourneyId = journey.JourneyId;
34 | }
35 |
36 | return list;
37 | }
38 |
39 | public async Task AddSavedJourney(int userId, int journeyId, int numberOfTravellers)
40 | {
41 | await _savedJourneyRepository.AddSavedJourney(userId, journeyId, numberOfTravellers);
42 | }
43 | }
44 | }
--------------------------------------------------------------------------------
/Components/square.androidtimessquare-1.6.5.0/component/Details.md:
--------------------------------------------------------------------------------
1 | # TimesSquare Details
2 |
3 |
6 |
7 | > Standalone Android widget for picking a single date from a calendar view.
8 |
9 | ## Usage
10 |
11 | We can include the `CalendarPickerView` element in out layout resource:
12 |
13 |
17 |
18 | This is a fairly large control so it is wise to give it ample space in our
19 | layout. On small devices it is recommended to use a dialog, full-screen
20 | fragment, or dedicated activity. On larger devices like tablets, displaying
21 | full-screen is not recommended. A fragment occupying part of the layout or
22 | a dialog is a better choice.
23 |
24 | In the `OnCreate` of our activity/dialog or the `OnCreateView` of our fragment,
25 | we initialize the view with a range of valid dates as well as the currently
26 | selected date:
27 |
28 | CalendarPickerView calendar = ...
29 |
30 | var today = DateTime.Now;
31 | var nextYear = today.AddYears(1);
32 |
33 | calendar
34 | .Init(today, nextYear)
35 | .WithSelectedDate(today);
36 |
37 | The default mode of the view is to have one selectable date.
38 | If we want the user to be able to select multiple dates or a date range, we
39 | use the `InMode` method:
40 |
41 | CalendarPickerView calendar = ...
42 |
43 | var today = DateTime.Now;
44 | var nextYear = today.AddYears(1);
45 |
46 | calendar
47 | .Init(today, nextYear)
48 | .InMode(CalendarPickerView.SelectionMode.Range)
49 | .WithSelectedDate(today);
50 |
--------------------------------------------------------------------------------
/Components/fmcalendar-1.5.3/samples/FMCalendarSample.iOS/FMCalendarSample.iOS.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio 2012
4 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FMCalendarSample.iOS", "FMCalendarSample.iOS.csproj", "{2447E45A-82C1-4F1E-92C4-BFCD88C7A753}"
5 | EndProject
6 | Global
7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
8 | Debug|iPhoneSimulator = Debug|iPhoneSimulator
9 | Release|iPhoneSimulator = Release|iPhoneSimulator
10 | Debug|iPhone = Debug|iPhone
11 | Release|iPhone = Release|iPhone
12 | Ad-Hoc|iPhone = Ad-Hoc|iPhone
13 | AppStore|iPhone = AppStore|iPhone
14 | EndGlobalSection
15 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
16 | {2447E45A-82C1-4F1E-92C4-BFCD88C7A753}.Ad-Hoc|iPhone.ActiveCfg = Ad-Hoc|iPhone
17 | {2447E45A-82C1-4F1E-92C4-BFCD88C7A753}.Ad-Hoc|iPhone.Build.0 = Ad-Hoc|iPhone
18 | {2447E45A-82C1-4F1E-92C4-BFCD88C7A753}.AppStore|iPhone.ActiveCfg = AppStore|iPhone
19 | {2447E45A-82C1-4F1E-92C4-BFCD88C7A753}.AppStore|iPhone.Build.0 = AppStore|iPhone
20 | {2447E45A-82C1-4F1E-92C4-BFCD88C7A753}.Debug|iPhone.ActiveCfg = Debug|iPhone
21 | {2447E45A-82C1-4F1E-92C4-BFCD88C7A753}.Debug|iPhone.Build.0 = Debug|iPhone
22 | {2447E45A-82C1-4F1E-92C4-BFCD88C7A753}.Debug|iPhoneSimulator.ActiveCfg = Debug|iPhoneSimulator
23 | {2447E45A-82C1-4F1E-92C4-BFCD88C7A753}.Debug|iPhoneSimulator.Build.0 = Debug|iPhoneSimulator
24 | {2447E45A-82C1-4F1E-92C4-BFCD88C7A753}.Release|iPhone.ActiveCfg = Release|iPhone
25 | {2447E45A-82C1-4F1E-92C4-BFCD88C7A753}.Release|iPhone.Build.0 = Release|iPhone
26 | {2447E45A-82C1-4F1E-92C4-BFCD88C7A753}.Release|iPhoneSimulator.ActiveCfg = Release|iPhoneSimulator
27 | {2447E45A-82C1-4F1E-92C4-BFCD88C7A753}.Release|iPhoneSimulator.Build.0 = Release|iPhoneSimulator
28 | EndGlobalSection
29 | GlobalSection(MonoDevelopProperties) = preSolution
30 | StartupItem = FMCalendarSample.iOS.csproj
31 | EndGlobalSection
32 | EndGlobal
33 |
--------------------------------------------------------------------------------
/Components/fmcalendar-1.5.3/samples/FMCalendarSample.iOS-Unified/FMCalendarSample.iOS-Unified.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio 2012
4 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FMCalendarSample.iOS-Unified", "FMCalendarSample.iOS-Unified.csproj", "{87A1FEE8-05BF-40D6-8882-D5EA94925388}"
5 | EndProject
6 | Global
7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
8 | Debug|iPhoneSimulator = Debug|iPhoneSimulator
9 | Release|iPhoneSimulator = Release|iPhoneSimulator
10 | Debug|iPhone = Debug|iPhone
11 | Release|iPhone = Release|iPhone
12 | Ad-Hoc|iPhone = Ad-Hoc|iPhone
13 | AppStore|iPhone = AppStore|iPhone
14 | EndGlobalSection
15 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
16 | {87A1FEE8-05BF-40D6-8882-D5EA94925388}.Ad-Hoc|iPhone.ActiveCfg = Ad-Hoc|iPhone
17 | {87A1FEE8-05BF-40D6-8882-D5EA94925388}.Ad-Hoc|iPhone.Build.0 = Ad-Hoc|iPhone
18 | {87A1FEE8-05BF-40D6-8882-D5EA94925388}.AppStore|iPhone.ActiveCfg = AppStore|iPhone
19 | {87A1FEE8-05BF-40D6-8882-D5EA94925388}.AppStore|iPhone.Build.0 = AppStore|iPhone
20 | {87A1FEE8-05BF-40D6-8882-D5EA94925388}.Debug|iPhone.ActiveCfg = Debug|iPhone
21 | {87A1FEE8-05BF-40D6-8882-D5EA94925388}.Debug|iPhone.Build.0 = Debug|iPhone
22 | {87A1FEE8-05BF-40D6-8882-D5EA94925388}.Debug|iPhoneSimulator.ActiveCfg = Debug|iPhoneSimulator
23 | {87A1FEE8-05BF-40D6-8882-D5EA94925388}.Debug|iPhoneSimulator.Build.0 = Debug|iPhoneSimulator
24 | {87A1FEE8-05BF-40D6-8882-D5EA94925388}.Release|iPhone.ActiveCfg = Release|iPhone
25 | {87A1FEE8-05BF-40D6-8882-D5EA94925388}.Release|iPhone.Build.0 = Release|iPhone
26 | {87A1FEE8-05BF-40D6-8882-D5EA94925388}.Release|iPhoneSimulator.ActiveCfg = Release|iPhoneSimulator
27 | {87A1FEE8-05BF-40D6-8882-D5EA94925388}.Release|iPhoneSimulator.Build.0 = Release|iPhoneSimulator
28 | EndGlobalSection
29 | GlobalSection(MonoDevelopProperties) = preSolution
30 | StartupItem = FMCalendarSample.iOS-Unified.csproj
31 | EndGlobalSection
32 | EndGlobal
33 |
--------------------------------------------------------------------------------
/MyTrains.Core/ViewModel/MenuViewModel.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.ObjectModel;
3 | using MvvmCross.Core.ViewModels;
4 | using MvvmCross.Plugins.Messenger;
5 | using MyTrains.Core.Model.App;
6 | using MyTrains.Core.Utility;
7 |
8 | namespace MyTrains.Core.ViewModel
9 | {
10 | public class MenuViewModel: BaseViewModel
11 | {
12 | public MvxCommand