Wip theme+estimate
This commit is contained in:
@ -4,36 +4,63 @@
|
||||
x:Class="BookAStar.App" >
|
||||
<Application.Resources>
|
||||
<ResourceDictionary>
|
||||
<OnPlatform x:TypeArguments="Font" Android="Large" iOS="Large" WinPhone="Large" x:Key="HeaderFont" />
|
||||
<OnPlatform x:TypeArguments="Color" Android="Black" iOS="Black" WinPhone="Black" x:Key="PrimaryTextColor" />
|
||||
<OnPlatform x:TypeArguments="Color" Android="Red" iOS="Red" WinPhone="Red" x:Key="EmphasisTextColor" />
|
||||
<OnPlatform x:TypeArguments="Font" Android="40" iOS="60" WinPhone="60" x:Key="LargeFontSize" />
|
||||
<OnPlatform x:TypeArguments="Font" Android="30" iOS="60" WinPhone="60" x:Key="MediumFontSize" />
|
||||
|
||||
<Color x:key="backgroundColor">#30FAFAFA</Color>
|
||||
<Color x:key="oddColor">#207AFAFA</Color>
|
||||
<Color x:key="textColor">#FF103010</Color>
|
||||
<Color x:key="labelColor">#FF303010</Color>
|
||||
<Style x:Key="BigEntry" TargetType="Entry">
|
||||
<Setter Property="FontSize" Value="{DynamicResource LargeFontSize}" />
|
||||
<Color x:Key="PageBackgroundColor">#f0f0ff</Color>
|
||||
<Color x:Key="HeadingTextColor">Black</Color>
|
||||
<Color x:Key="NormalTextColor">Blue</Color>
|
||||
<Color x:Key="GroupingTextColor">#5050ff</Color>
|
||||
|
||||
<OnPlatform x:TypeArguments="Font" Android="Large" iOS="Large" WinPhone="Large" x:Key="HeaderFont" />
|
||||
<OnPlatform x:TypeArguments="Color" Android="Red" iOS="Red" WinPhone="Red" x:Key="EmphasisTextColor" />
|
||||
<OnPlatform x:TypeArguments="Font" Android="60" iOS="60" WinPhone="60" x:Key="LargeFontSize" />
|
||||
<OnPlatform x:TypeArguments="Font" Android="50" iOS="50" WinPhone="50" x:Key="MediumFontSize" />
|
||||
<OnPlatform x:TypeArguments="Font" Android="40" iOS="40" WinPhone="40" x:Key="SmallFontSize" />
|
||||
|
||||
|
||||
<Color x:Key="BackgroundColor">#30FAFAFA</Color>
|
||||
<Color x:Key="OddColor">#207AFAFA</Color>
|
||||
<Color x:Key="TextColor">#FF103010</Color>
|
||||
<Color x:Key="LabelColor">#FF303010</Color>
|
||||
|
||||
<Style x:Key="LabelPageHeadingStyle" TargetType="Label">
|
||||
<Setter Property="FontAttributes" Value="Bold" />
|
||||
<Setter Property="HorizontalOptions" Value="Center" />
|
||||
<Setter Property="TextColor" Value="{StaticResource HeadingTextColor}" />
|
||||
<Setter Property="FontSize" Value="{StaticResource LargeFontSize}" />
|
||||
</Style>
|
||||
<Style x:Key="labelStyle" TargetType="Label">
|
||||
<Setter Property="TextColor" Value="{DynamicResource EmphasisTextColor}" />
|
||||
|
||||
<Style x:Key="InputLabelStyle" TargetType="Label">
|
||||
<Setter Property="FontSize" Value="{StaticResource SmallFontSize}" />
|
||||
<Setter Property="FontAttributes" Value="Italic" />
|
||||
<Setter Property="HorizontalOptions" Value="Center" />
|
||||
<Setter Property="TextColor" Value="{StaticResource GroupingTextColor}" />
|
||||
</Style>
|
||||
|
||||
<Style x:Key="LabelStyle" TargetType="Label">
|
||||
<Setter Property="TextColor" Value="{StaticResource TextColor}" />
|
||||
<Setter Property="FontAttributes" Value="Bold" />
|
||||
<Setter Property="FontSize" Value="{DynamicResource LargeFontSize}" />
|
||||
<Setter Property="FontSize" Value="{StaticResource MediumFontSize}" />
|
||||
<Setter Property="VerticalOptions" Value="Start" />
|
||||
<Setter Property="HorizontalOptions" Value="Start" />
|
||||
<Setter Property="LineBreakMode" Value="WordWrap" />
|
||||
|
||||
</Style>
|
||||
<Style x:Key="entryStyle" TargetType="Entry">
|
||||
<Setter Property="HorizontalOptions" Value="FillAndExpand"/>
|
||||
|
||||
<Style x:Key="BigLabel" BasedOn="{StaticResource LabelStyle}" TargetType="Label">
|
||||
<Setter Property="FontSize" Value="Large" />
|
||||
</Style>
|
||||
<Style x:key="backbroundStyle" TargetType="VisualElement">
|
||||
<Setter Property="BackgoundColor" Value="{StaticResource backgroundColor}" />
|
||||
<Setter Property="TextColor" Value="{StaticResource textColor}" />
|
||||
|
||||
<Style x:Key="EntryStyle" TargetType="Entry">
|
||||
<Setter Property="HorizontalOptions" Value="CenterAndExpand"/>
|
||||
</Style>
|
||||
<Style x:Key="buttonStyle" TargetType="Button">
|
||||
<Style x:Key="PickerStyle" TargetType="Picker">
|
||||
<Setter Property="HorizontalOptions" Value="CenterAndExpand"/>
|
||||
</Style>
|
||||
<Style x:Key="BigEntry" TargetType="Entry" BasedOn="{StaticResource EntryStyle}">
|
||||
<Setter Property="FontSize" Value="{StaticResource LargeFontSize}" />
|
||||
<Setter Property="FontAttributes" Value="Bold" />
|
||||
</Style>
|
||||
|
||||
<Style x:Key="ButtonStyle" TargetType="Button">
|
||||
<Setter Property="HorizontalOptions" Value="Center" />
|
||||
<Setter Property="VerticalOptions" Value="CenterAndExpand" />
|
||||
<Setter Property="BorderColor" Value="Lime" />
|
||||
@ -42,7 +69,8 @@
|
||||
<Setter Property="WidthRequest" Value="200" />
|
||||
<Setter Property="TextColor" Value="Teal" />
|
||||
</Style>
|
||||
<Style x:Key="PageStyle" TargetType="Page">
|
||||
</Style>
|
||||
</ResourceDictionary>
|
||||
</Application.Resources>
|
||||
|
||||
</Application>
|
@ -18,46 +18,56 @@ namespace BookAStar
|
||||
{
|
||||
public partial class App : Application // superclass new in 1.3
|
||||
{
|
||||
ContentPage deviceInfoPage;
|
||||
SearchPage searchPage = new SearchPage
|
||||
{
|
||||
Title = "Trouvez votre artiste",
|
||||
Icon = "glyphish_07_map_marker.png"
|
||||
};
|
||||
NavigationPage mp;
|
||||
|
||||
SettingsPage settingsPage = new SettingsPage
|
||||
{
|
||||
Title = "Paramètres",
|
||||
Icon = "ic_corp_icon.png"
|
||||
};
|
||||
|
||||
PinPage pinPage = new PinPage
|
||||
{
|
||||
Title = "Carte",
|
||||
Icon = "glyphish_07_map_marker.png"
|
||||
};
|
||||
BookQueryPage bookQueryPage = new BookQueryPage {
|
||||
Title = "Demande de devis"
|
||||
};
|
||||
BookQueriesPage bookQueriesPage = new BookQueriesPage
|
||||
{
|
||||
Title = "Demandes de devis"
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
EditEstimatePage editEstimate = new EditEstimatePage
|
||||
{
|
||||
Title = "Création d'un devis"
|
||||
};
|
||||
public static IPlatform PlatformSpecificInstance { get; set; }
|
||||
public static string AppName { get; set; }
|
||||
public static App CurrentApp { get { return Current as App; } }
|
||||
|
||||
public DataManager DataManager { get; set; } = new DataManager();
|
||||
|
||||
|
||||
internal void EditCommandLine(CommandLine com)
|
||||
{
|
||||
CommandLineEditorPage editCommandLine = new CommandLineEditorPage
|
||||
{
|
||||
Title = "Edition d'une ligne de facture",
|
||||
BindingContext = com
|
||||
};
|
||||
mp.Navigation.PushAsync(editCommandLine);
|
||||
}
|
||||
|
||||
public App(IPlatform instance)
|
||||
{
|
||||
deviceInfoPage = new DeviceInfoPage(instance.GetDeviceInfo());
|
||||
InitializeComponent();
|
||||
|
||||
PlatformSpecificInstance = instance;
|
||||
mp = new NavigationPage(searchPage);
|
||||
mp = new NavigationPage(searchPage)
|
||||
{
|
||||
BackgroundColor = (Color)Application.Current.Resources["PageBackgroundColor"]
|
||||
};
|
||||
var color = Application.Current.Resources["PageBackgroundColor"];
|
||||
//var hasLabelStyle = r.ContainsKey("labelStyle");
|
||||
// var stid = this.StyleId;
|
||||
// null var appsstyle = settingsPage.Style;
|
||||
@ -80,7 +90,12 @@ namespace BookAStar
|
||||
|
||||
tiQueries.Clicked += (object sender, EventArgs e) =>
|
||||
{
|
||||
ShowPage (bookQueriesPage);
|
||||
BookQueriesPage bookQueriesPage = new BookQueriesPage
|
||||
{
|
||||
Title = "Demandes de devis"
|
||||
};
|
||||
bookQueriesPage.BindingContext = DataManager.BookQueries;
|
||||
ShowPage(bookQueriesPage);
|
||||
};
|
||||
mp.ToolbarItems.Add(tiQueries);
|
||||
ToolbarItem tiMap = new ToolbarItem
|
||||
@ -93,17 +108,9 @@ namespace BookAStar
|
||||
{
|
||||
ShowPage(pinPage);
|
||||
};
|
||||
|
||||
bookQueriesPage.BindingContext = DataManager.BookQueries;
|
||||
|
||||
|
||||
}
|
||||
|
||||
public void ShowDeviceInfo()
|
||||
{
|
||||
ShowPage(deviceInfoPage);
|
||||
}
|
||||
|
||||
public void PostDeviceInfo()
|
||||
{
|
||||
var res = PlatformSpecificInstance.InvokeApi(
|
||||
@ -113,25 +120,33 @@ namespace BookAStar
|
||||
|
||||
public void ShowBookQuery(BookQueryData data)
|
||||
{
|
||||
BookQueryPage bookQueryPage = new BookQueryPage
|
||||
{
|
||||
Title = "Demande de devis"
|
||||
};
|
||||
bookQueryPage.BindingContext = data;
|
||||
ShowPage(bookQueryPage);
|
||||
}
|
||||
|
||||
public void EditEstimate(Estimate data)
|
||||
{
|
||||
EditEstimatePage editEstimate = new EditEstimatePage
|
||||
{
|
||||
Title = "Création d'un devis"
|
||||
};
|
||||
editEstimate.Estimate = data;
|
||||
ShowPage(editEstimate);
|
||||
}
|
||||
|
||||
private void ShowPage(Page p)
|
||||
// TODO système de persistance de l'état de l'appli
|
||||
private void ShowPage(Page p)
|
||||
{
|
||||
if (p.Parent == null)
|
||||
mp.Navigation.PushAsync(p);
|
||||
else p.Focus();
|
||||
}
|
||||
public void CloseWindow()
|
||||
{
|
||||
mp.Navigation.PopAsync();
|
||||
if (p.Parent!=null)
|
||||
{
|
||||
mp.Navigation.RemovePage(p);
|
||||
p.Parent = null;
|
||||
}
|
||||
mp.Navigation.PushAsync(p);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -25,6 +25,7 @@
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<CodeAnalysisRuleSet />
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
@ -33,6 +34,7 @@
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<CodeAnalysisRuleSet />
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="App.xaml.cs">
|
||||
@ -51,16 +53,15 @@
|
||||
<Compile Include="Pages\BookQueryPage.xaml.cs">
|
||||
<DependentUpon>BookQueryPage.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Pages\DeviceInfoPage.cs" />
|
||||
<Compile Include="Pages\CommandLineEditorPage.xaml.cs">
|
||||
<DependentUpon>CommandLineEditorPage.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Pages\EventDetail.xaml.cs">
|
||||
<DependentUpon>EventDetail.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Helpers\MainSettings.cs" />
|
||||
<Compile Include="Helpers\RemoteEntity.cs" />
|
||||
<Compile Include="Interfaces\IPlatform.cs" />
|
||||
<Compile Include="Pages\MainPage.xaml.cs">
|
||||
<DependentUpon>MainPage.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Model\Blog\Blog.cs" />
|
||||
<Compile Include="Model\Blog\BlogTag.cs" />
|
||||
<Compile Include="Model\BookQueryData.cs" />
|
||||
@ -103,10 +104,10 @@
|
||||
<Compile Include="Pages\EditEstimatePage.xaml.cs">
|
||||
<DependentUpon>EditEstimatePage.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Pages\MarkdownEditorPage.xaml.cs">
|
||||
<DependentUpon>MarkdownEditorPage.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Pages\PinPage.cs" />
|
||||
<Compile Include="Views\CommandLineEditor.xaml.cs">
|
||||
<DependentUpon>CommandLineEditor.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Views\MarkdownView.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="Pages\SearchPage.xaml.cs">
|
||||
@ -118,10 +119,6 @@
|
||||
<Compile Include="Model\Tag.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Pages\MainPage.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:UpdateDesignTimeXaml</Generator>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="App.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:UpdateDesignTimeXaml</Generator>
|
||||
@ -199,12 +196,6 @@
|
||||
<Name>Yavsc.Client</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Pages\MarkdownEditorPage.xaml">
|
||||
<Generator>MSBuild:UpdateDesignTimeXaml</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Pages\EditEstimatePage.xaml">
|
||||
<Generator>MSBuild:UpdateDesignTimeXaml</Generator>
|
||||
@ -220,6 +211,18 @@
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="icon-anon.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Views\CommandLineEditor.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:UpdateDesignTimeXaml</Generator>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Pages\CommandLineEditorPage.xaml">
|
||||
<Generator>MSBuild:UpdateDesignTimeXaml</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\Portable\$(TargetFrameworkVersion)\Microsoft.Portable.CSharp.targets" />
|
||||
<Import Project="..\..\packages\Xamarin.Forms.2.3.0.107\build\portable-win+net45+wp80+win81+wpa81+MonoAndroid10+MonoTouch10+Xamarin.iOS10\Xamarin.Forms.targets" Condition="Exists('..\..\packages\Xamarin.Forms.2.3.0.107\build\portable-win+net45+wp80+win81+wpa81+MonoAndroid10+MonoTouch10+Xamarin.iOS10\Xamarin.Forms.targets')" />
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
|
@ -1,12 +1,12 @@
|
||||
|
||||
using System;
|
||||
|
||||
namespace BookAStar.Model.Workflow
|
||||
{
|
||||
|
||||
public class CommandLine
|
||||
{
|
||||
public long Id { get; set; }
|
||||
public string Comment { get; set; }
|
||||
public BaseProduct Article { get; set; }
|
||||
public string Description { get; set; }
|
||||
public TimeSpan Duration { get; set; }
|
||||
public int Count { get; set; }
|
||||
public decimal UnitaryCost { get; set; }
|
||||
}
|
||||
|
@ -3,6 +3,7 @@ using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using Xamarin.Forms;
|
||||
|
||||
namespace BookAStar.Model.Workflow
|
||||
{
|
||||
@ -67,5 +68,32 @@ namespace BookAStar.Model.Workflow
|
||||
return DataManager.Current.Contacts.LocalGet(ClientId);
|
||||
}
|
||||
}
|
||||
|
||||
public FormattedString FormattedTotal
|
||||
{
|
||||
get
|
||||
{
|
||||
OnPlatform<Font> lfs = (OnPlatform < Font >) App.Current.Resources["LargeFontSize"];
|
||||
OnPlatform<Color> etc = (OnPlatform<Color>)App.Current.Resources["EmphasisTextColor"];
|
||||
|
||||
return new FormattedString
|
||||
{
|
||||
|
||||
Spans = {
|
||||
new Span { Text = "Total TTC: " },
|
||||
new Span { Text = Total.ToString(),
|
||||
ForegroundColor = etc.Android ,
|
||||
FontSize = (double) lfs.Android.FontSize },
|
||||
new Span { Text = "€", FontSize = (double) lfs.Android.FontSize }
|
||||
}
|
||||
};
|
||||
}
|
||||
set { }
|
||||
}
|
||||
public decimal Total { get
|
||||
{
|
||||
return Bill?.Aggregate((decimal)0, (t, l) => t + l.Count * l.UnitaryCost) ?? (decimal)0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -9,27 +9,21 @@
|
||||
>
|
||||
<ContentPage.Resources>
|
||||
<ResourceDictionary>
|
||||
|
||||
<Style x:Key="labelStyle" TargetType="Label">
|
||||
<Setter Property="TextColor" Value="{DynamicResource EmphasisTextColor}" />
|
||||
<Setter Property="FontAttributes" Value="Bold" />
|
||||
<Setter Property="FontSize" Value="{DynamicResource LargeFontSize}" />
|
||||
<Setter Property="VerticalOptions" Value="Start" />
|
||||
<Setter Property="LineBreakMode" Value="WordWrap" />
|
||||
<Style TargetType="Label">
|
||||
<Setter Property="Style" Value="{StaticResource LabelStyle}" />
|
||||
</Style>
|
||||
<Style TargetType="Button">
|
||||
<Setter Property="Style" Value="{StaticResource ButtonStyle}" />
|
||||
</Style>
|
||||
|
||||
</ResourceDictionary>
|
||||
</ContentPage.Resources>
|
||||
|
||||
<StackLayout x:Name="bookQueryLayout">
|
||||
<Label Text="{Binding Client.UserName}" Style="{StaticResource labelStyle}"
|
||||
VerticalOptions="Start" HorizontalOptions="Center" />
|
||||
<Label Text="{Binding Location.Address}" VerticalOptions="FillAndExpand" HorizontalOptions="Center" />
|
||||
<Label Text="{Binding Previsional}" VerticalOptions="Center" HorizontalOptions="Center" />
|
||||
|
||||
<Label Text="{Binding EventDate}" VerticalOptions="Center" HorizontalOptions="Center" />
|
||||
<Label Text="{Binding Location.Address}" VerticalOptions="Center" HorizontalOptions="Center" />
|
||||
<Label Text="{Binding Client.UserName}"/>
|
||||
<Label Text="{Binding EventDate}" />
|
||||
<Label Text="{Binding Location.Address}" />
|
||||
<Label Text="{Binding Previsional}" />
|
||||
<maps:Map x:Name="map"></maps:Map>
|
||||
<Button Text="Faire un devis" Clicked="MakeAnEstimate" VerticalOptions="Center" HorizontalOptions="End"/>
|
||||
<Button Text="Faire un devis" Clicked="MakeAnEstimate" />
|
||||
</StackLayout>
|
||||
</ContentPage>
|
32
BookAStar/BookAStar/Pages/CommandLineEditorPage.xaml
Normal file
32
BookAStar/BookAStar/Pages/CommandLineEditorPage.xaml
Normal file
@ -0,0 +1,32 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
|
||||
xmlns:local="clr-namespace:BookAStar;assembly=BookAStar"
|
||||
xmlns:views="clr-namespace:BookAStar.Views;assembly=BookAStar"
|
||||
x:Class="BookAStar.Pages.CommandLineEditorPage"
|
||||
Style="{StaticResource PageStyle}">
|
||||
<StackLayout>
|
||||
<Label Text="Description de la ligne de facture" Style="{StaticResource InputLabelStyle}"></Label>
|
||||
<Editor VerticalOptions="FillAndExpand"></Editor>
|
||||
<Label Text="Durée de la prestation"
|
||||
Style="{StaticResource InputLabelStyle}"></Label>
|
||||
<StackLayout Orientation="Horizontal">
|
||||
<Entry Placeholder="Durée" Keyboard="Numeric" Style="{StaticResource BigEntry}"/>
|
||||
<Picker SelectedIndex="1" Style="{StaticResource PickerStyle}">
|
||||
<Picker.Items>
|
||||
<x:String>Heures</x:String>
|
||||
<x:String>Jours</x:String>
|
||||
<x:String>Minutes</x:String>
|
||||
</Picker.Items>
|
||||
</Picker>
|
||||
</StackLayout>
|
||||
<Label Text="Quantité facturée" Style="{StaticResource InputLabelStyle}"></Label>
|
||||
<Entry Placeholder="Quantité" Text="1" Keyboard="Numeric" Style="{StaticResource BigEntry}"/>
|
||||
<Label Text="Prix unitaire" Style="{StaticResource InputLabelStyle}"></Label>
|
||||
<StackLayout Orientation="Horizontal">
|
||||
<Entry Placeholder="Prix" Keyboard="Numeric" Style="{StaticResource BigEntry}"></Entry>
|
||||
<Label Text="€" Style="{StaticResource BigLabel}" HorizontalTextAlignment="Start"/>
|
||||
</StackLayout>
|
||||
<Button Text="Valider cette ligne de facture"></Button>
|
||||
</StackLayout>
|
||||
</ContentPage>
|
@ -8,16 +8,12 @@ using Xamarin.Forms;
|
||||
|
||||
namespace BookAStar.Pages
|
||||
{
|
||||
public partial class MarkdownEditorPage : ContentPage
|
||||
public partial class CommandLineEditorPage : ContentPage
|
||||
{
|
||||
public MarkdownEditorPage()
|
||||
public CommandLineEditorPage()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
public void GetText()
|
||||
{
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
@ -2,41 +2,32 @@
|
||||
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
|
||||
x:Class="BookAStar.Pages.EditEstimatePage"
|
||||
xmlns:local="clr-namespace:BookAStar.Views;assembly=BookAStar"
|
||||
>
|
||||
<StackLayout Padding="10,10,10,10">
|
||||
|
||||
xmlns:views="clr-namespace:BookAStar.Views;assembly=BookAStar"
|
||||
xmlns:local="clr-namespace:BookAStar;assembly=BookAStar">
|
||||
<StackLayout Padding="10,10,10,10" BindingContext="{Binding .}">
|
||||
<StackLayout Orientation="Horizontal" Padding="10,10,10,10">
|
||||
<Label Text="{Binding Client.UserName}"
|
||||
LineBreakMode="WordWrap"></Label>
|
||||
<Label Text="{Binding Query.Location.Address}"
|
||||
LineBreakMode="WordWrap" ></Label>
|
||||
<Label Text="{Binding Query.EventDate, StringFormat='{0:dddd d MMMM yyyy à hh:mm}'}"
|
||||
LineBreakMode="WordWrap" ></Label>
|
||||
<Label Text="{Binding Client.UserName}" LineBreakMode="WordWrap"></Label>
|
||||
<Label Text="{Binding Query.Location.Address}" LineBreakMode="WordWrap"></Label>
|
||||
<Label Text="{Binding Query.EventDate, StringFormat='{0:dddd d MMMM yyyy à hh:mm}'}" LineBreakMode="WordWrap"></Label>
|
||||
</StackLayout>
|
||||
|
||||
<local:MarkdownView x:Name="mdview" Markdown="{Binding Description}"
|
||||
Edited="OnDescriptionChanged" HorizontalOptions="FillAndExpand"
|
||||
VerticalOptions="FillAndExpand">
|
||||
|
||||
</local:MarkdownView>
|
||||
|
||||
<!-- <ListView >
|
||||
<views:MarkdownView x:Name="mdview"
|
||||
Edited="OnDescriptionChanged" HorizontalOptions="FillAndExpand"
|
||||
HeightRequest="120" VerticalOptions="FillAndExpand"
|
||||
Markdown="{Binding Description}"></views:MarkdownView>
|
||||
|
||||
<ListView HeightRequest="160">
|
||||
<ListView.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<ViewCell>
|
||||
<ViewCell.View>
|
||||
<StackLayout Orientation="Horizontal">
|
||||
<Entry Placeholder="Ligne de facture"></Entry>
|
||||
<Entry Placeholder="Compte"></Entry>
|
||||
<Entry Placeholder="Prix unitaire" ></Entry>
|
||||
</StackLayout>
|
||||
<ViewCell.View HeightRequest="80">
|
||||
</ViewCell.View>
|
||||
</ViewCell>
|
||||
</DataTemplate>
|
||||
</ListView.ItemTemplate>
|
||||
</ListView> -->
|
||||
<Label Text="Total TTC:"></Label>
|
||||
</ListView>
|
||||
<Button Text="Ajouter une ligne de facture" Clicked="OnNewCommanLine"></Button>
|
||||
<Label FormattedText="{Binding FormattedTotal}"/>
|
||||
<Button Text="Valider ce devis"></Button>
|
||||
</StackLayout>
|
||||
</ContentPage>
|
@ -16,7 +16,10 @@ namespace BookAStar.Pages
|
||||
public Estimate Estimate { get { return BindingContext as Estimate; } set {
|
||||
BindingContext = value;
|
||||
} }
|
||||
public static readonly BindableProperty MarkdownProperty =
|
||||
public static readonly BindableProperty TotalProperty =
|
||||
BindableProperty.Create("Total", typeof(decimal), typeof(EditEstimatePage),
|
||||
(decimal) 0, BindingMode.OneWay);
|
||||
public static readonly BindableProperty DescriptionProperty =
|
||||
BindableProperty.Create("Description", typeof(string), typeof(Estimate),
|
||||
null, BindingMode.TwoWay);
|
||||
public static readonly BindableProperty ClientProperty =
|
||||
@ -26,19 +29,31 @@ namespace BookAStar.Pages
|
||||
BindableProperty.Create("Query", typeof(BookQueryData), typeof(Estimate),
|
||||
null, BindingMode.OneWay);
|
||||
|
||||
|
||||
|
||||
public EditEstimatePage()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
protected override void OnBindingContextChanged()
|
||||
{
|
||||
base.OnBindingContextChanged();
|
||||
mdview.Markdown = Estimate?.Description;
|
||||
// FIXME Why the Binding don't work?
|
||||
mdview.Markdown = Estimate.Description;
|
||||
|
||||
}
|
||||
|
||||
protected void OnDescriptionChanged (object sender, EventArgs e)
|
||||
{
|
||||
// FIXME Why the Binding don't work?
|
||||
Estimate.Description = mdview.Markdown;
|
||||
}
|
||||
protected void OnNewCommanLine(object sender, EventArgs e)
|
||||
{
|
||||
var com = new CommandLine();
|
||||
App.CurrentApp.EditCommandLine(com);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
25
BookAStar/BookAStar/Views/CommandLineEditor.xaml
Normal file
25
BookAStar/BookAStar/Views/CommandLineEditor.xaml
Normal file
@ -0,0 +1,25 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<ContentView xmlns="http://xamarin.com/schemas/2014/forms"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
|
||||
xmlns:local="clr-namespace:BookAStar;assembly=BookAStar"
|
||||
x:Class="BookAStar.Views.CommandLineEditor"
|
||||
BackgroundColor="{x:Static local:Constants.BackgroundColor}"
|
||||
>
|
||||
<StackLayout>
|
||||
<Label Text="Description de la ligne de facture"></Label>
|
||||
<Editor ></Editor>
|
||||
<StackLayout Orientation="Horizontal">
|
||||
<Entry Placeholder="Durée de la prestation" Keyboard="Numeric"></Entry>
|
||||
<Picker>
|
||||
<Picker.Items>
|
||||
<x:String>Heures</x:String>
|
||||
<x:String>Jours</x:String>
|
||||
<x:String>Minutes</x:String>
|
||||
</Picker.Items>
|
||||
</Picker>
|
||||
</StackLayout>
|
||||
<Entry Placeholder="Quantité" Text="1"/>
|
||||
<Entry Placeholder="Prix unitaire" ></Entry>
|
||||
<Button Text="Valider cette ligne de facture"></Button>
|
||||
</StackLayout>
|
||||
</ContentView>
|
@ -5,13 +5,14 @@ using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Xamarin.Forms;
|
||||
|
||||
namespace App2
|
||||
namespace BookAStar.Views
|
||||
{
|
||||
public partial class MainPage : ContentPage
|
||||
public partial class CommandLineEditor : ContentView
|
||||
{
|
||||
public MainPage()
|
||||
public CommandLineEditor()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user