aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/TEMP/Tango.Scripting/Tango.Scripting.IDE.UI/MainWindow.xaml
blob: 032d38c81f4da78a8943b93ff773e4a44aeec337 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<controls:MetroWindow x:Class="Tango.Scripting.IDE.UI.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:controls="http://metro.mahapps.com/winfx/xaml/controls"
        xmlns:local="clr-namespace:Tango.Scripting.IDE.UI"
        xmlns:ide="clr-namespace:Tango.Scripting.IDE;assembly=Tango.Scripting.IDE"
        mc:Ignorable="d"
        Title="MainWindow" Height="720" Width="1280" d:DataContext="{d:DesignInstance Type=local:MainWindowVM, IsDesignTimeCreatable=False}" TitlebarHeight="40" TitleCaps="False" BorderBrush="Gray" BorderThickness="1" WindowStartupLocation="CenterScreen">
    <Grid>
        <ide:ScriptIDEView2 DataContext="{Binding IdeVM}" />
    </Grid>
</controls:MetroWindow>
"control.h" uint32_t KeepParameter = 0; callback_fptr ModuleCallback = 0; bool isValid (uint32_t deviceID); uint32_t ControlCallBackFunction(uint32_t deviceID, uint32_t ReadValue); uint32_t DriverActionWithCallback (uint32_t deviceId, uint32_t parameter, callback_fptr callback) { assert (callback); assert (isValid(deviceId)); //call driver action to device id with the parameter //SetMotorSpeed (deviceId, parameter); KeepParameter = parameter; ModuleCallback = callback; //start control: uint32_t ControlId = AddControlCallback( callback, eOneMillisecond, NULL, (IfTypeNone*0x100+deviceId),deviceId, parameter ); return ControlId; } uint32_t ControlCallBackFunction(uint32_t deviceId, uint32_t ReadValue) { if (ReadValue == KeepParameter) { //stop this control loop RemoveControlCallback(deviceId, ControlCallBackFunction ); //possibly: start regular control (speed etc) //uint32_t ControlId = AddControlCallback(ControlCBFunction Callback, eOneMillisecond, NULL, deviceId, Parameter ); //call the module callback ModuleCallback(deviceId,ReadValue); } return OK; } bool isValid (uint32_t deviceID) { return true; }