- added ViewFormat for parsing GE queries for Camera and stuff
- Camera now controlled with adjustable alt, tilt, auto roll based on aircraft banking and auto heading based on aircraft heading git-svn-id: http://moon:8086/svn/software/trunk/projects/FsTrack@129 b431acfa-c32f-4a4a-93f1-934dc6c82436
This commit is contained in:
@@ -69,6 +69,28 @@ MainComponent::MainComponent (String const &homeDir)
|
||||
m_altitudeMode->addSeparator();
|
||||
m_altitudeMode->addListener (this);
|
||||
|
||||
addAndMakeVisible (m_cameraAltitude = new Slider ("Camera Altitude"));
|
||||
m_cameraAltitude->setTooltip (TRANS("Camera Altitude"));
|
||||
m_cameraAltitude->setRange (0, 100000, 100);
|
||||
m_cameraAltitude->setSliderStyle (Slider::LinearHorizontal);
|
||||
m_cameraAltitude->setTextBoxStyle (Slider::TextBoxLeft, false, 80, 20);
|
||||
m_cameraAltitude->addListener (this);
|
||||
|
||||
addAndMakeVisible (m_CameraTilt = new Slider ("Camera Tilt"));
|
||||
m_CameraTilt->setTooltip (TRANS("Camera Tilt"));
|
||||
m_CameraTilt->setRange (0, 90, 5);
|
||||
m_CameraTilt->setSliderStyle (Slider::LinearHorizontal);
|
||||
m_CameraTilt->setTextBoxStyle (Slider::TextBoxLeft, false, 80, 20);
|
||||
m_CameraTilt->addListener (this);
|
||||
|
||||
addAndMakeVisible (m_cameraAutoHeadingEnable = new ToggleButton ("Camera Auto Heading"));
|
||||
m_cameraAutoHeadingEnable->setTooltip (TRANS("Camera Auto Heading"));
|
||||
m_cameraAutoHeadingEnable->addListener (this);
|
||||
|
||||
addAndMakeVisible (m_cameraAutoRollEnable = new ToggleButton ("Camera Auto Roll"));
|
||||
m_cameraAutoRollEnable->setTooltip (TRANS("Camera Auto Roll"));
|
||||
m_cameraAutoRollEnable->addListener (this);
|
||||
|
||||
|
||||
//[UserPreSize]
|
||||
//[/UserPreSize]
|
||||
@@ -99,6 +121,8 @@ MainComponent::MainComponent (String const &homeDir)
|
||||
m_colorSelector->setCurrentColour(juce::Colours::yellow);
|
||||
|
||||
m_altitudeMode->setSelectedId(1, juce::NotificationType::sendNotification);
|
||||
m_cameraAltitude->setValue(10000, juce::NotificationType::sendNotification);
|
||||
m_CameraTilt->setValue(0, juce::NotificationType::sendNotification);
|
||||
//[/Constructor]
|
||||
}
|
||||
|
||||
@@ -116,6 +140,10 @@ MainComponent::~MainComponent()
|
||||
m_kmlUpdInterval_s = nullptr;
|
||||
m_colorSelector = nullptr;
|
||||
m_altitudeMode = nullptr;
|
||||
m_cameraAltitude = nullptr;
|
||||
m_CameraTilt = nullptr;
|
||||
m_cameraAutoHeadingEnable = nullptr;
|
||||
m_cameraAutoRollEnable = nullptr;
|
||||
|
||||
|
||||
//[Destructor]. You can add your own custom destruction code here..
|
||||
@@ -138,9 +166,13 @@ void MainComponent::resized()
|
||||
{
|
||||
m_fsuipcStatus->setBounds (16, 264, 150, 24);
|
||||
m_flightStatus->setBounds (216, 264, 150, 24);
|
||||
m_kmlUpdInterval_s->setBounds (16, 232, 184, 24);
|
||||
m_kmlUpdInterval_s->setBounds (24, 232, 160, 24);
|
||||
m_colorSelector->setBounds (24, 24, 168, 192);
|
||||
m_altitudeMode->setBounds (216, 32, 160, 24);
|
||||
m_cameraAltitude->setBounds (216, 80, 160, 24);
|
||||
m_CameraTilt->setBounds (216, 120, 160, 24);
|
||||
m_cameraAutoHeadingEnable->setBounds (216, 160, 150, 24);
|
||||
m_cameraAutoRollEnable->setBounds (216, 192, 150, 24);
|
||||
//[UserResized] Add your own custom resize handling here..
|
||||
//[/UserResized]
|
||||
}
|
||||
@@ -156,6 +188,18 @@ void MainComponent::sliderValueChanged (Slider* sliderThatWasMoved)
|
||||
m_fsLink->setUpdateInterval(sliderThatWasMoved->getValue());
|
||||
//[/UserSliderCode_m_kmlUpdInterval_s]
|
||||
}
|
||||
else if (sliderThatWasMoved == m_cameraAltitude)
|
||||
{
|
||||
//[UserSliderCode_m_cameraAltitude] -- add your slider handling code here..
|
||||
m_kml->setCameraAltitude(sliderThatWasMoved->getValue());
|
||||
//[/UserSliderCode_m_cameraAltitude]
|
||||
}
|
||||
else if (sliderThatWasMoved == m_CameraTilt)
|
||||
{
|
||||
//[UserSliderCode_m_CameraTilt] -- add your slider handling code here..
|
||||
m_kml->setCameraTilt(sliderThatWasMoved->getValue());
|
||||
//[/UserSliderCode_m_CameraTilt]
|
||||
}
|
||||
|
||||
//[UsersliderValueChanged_Post]
|
||||
//[/UsersliderValueChanged_Post]
|
||||
@@ -177,6 +221,28 @@ void MainComponent::comboBoxChanged (ComboBox* comboBoxThatHasChanged)
|
||||
//[/UsercomboBoxChanged_Post]
|
||||
}
|
||||
|
||||
void MainComponent::buttonClicked (Button* buttonThatWasClicked)
|
||||
{
|
||||
//[UserbuttonClicked_Pre]
|
||||
//[/UserbuttonClicked_Pre]
|
||||
|
||||
if (buttonThatWasClicked == m_cameraAutoHeadingEnable)
|
||||
{
|
||||
//[UserButtonCode_m_cameraAutoHeadingEnable] -- add your button handler code here..
|
||||
m_kml->setCameraAutoHeading(buttonThatWasClicked->getToggleState());
|
||||
//[/UserButtonCode_m_cameraAutoHeadingEnable]
|
||||
}
|
||||
else if (buttonThatWasClicked == m_cameraAutoRollEnable)
|
||||
{
|
||||
//[UserButtonCode_m_cameraAutoRollEnable] -- add your button handler code here..
|
||||
m_kml->setCameraAutoRoll(buttonThatWasClicked->getToggleState());
|
||||
//[/UserButtonCode_m_cameraAutoRollEnable]
|
||||
}
|
||||
|
||||
//[UserbuttonClicked_Post]
|
||||
//[/UserbuttonClicked_Post]
|
||||
}
|
||||
|
||||
|
||||
|
||||
//[MiscUserCode] You can add your own definitions of your custom methods or any other code here...
|
||||
@@ -229,7 +295,7 @@ BEGIN_JUCER_METADATA
|
||||
editableDoubleClick="0" focusDiscardsChanges="0" fontname="Default font"
|
||||
fontsize="15" bold="0" italic="0" justification="33"/>
|
||||
<SLIDER name="KML Update Interval" id="c4434642fabdd31c" memberName="m_kmlUpdInterval_s"
|
||||
virtualName="" explicitFocusOrder="0" pos="16 232 184 24" tooltip="KML Update Interval"
|
||||
virtualName="" explicitFocusOrder="0" pos="24 232 160 24" tooltip="KML Update Interval"
|
||||
min="0.10000000000000001" max="10" int="0.10000000000000001"
|
||||
style="LinearHorizontal" textBoxPos="TextBoxLeft" textBoxEditable="1"
|
||||
textBoxWidth="80" textBoxHeight="20" skewFactor="1"/>
|
||||
@@ -240,6 +306,22 @@ BEGIN_JUCER_METADATA
|
||||
virtualName="" explicitFocusOrder="0" pos="216 32 160 24" tooltip="Altitude Mode"
|
||||
editable="0" layout="33" items="absolute relativeToGround clampToGround "
|
||||
textWhenNonSelected="" textWhenNoItems="(no choices)"/>
|
||||
<SLIDER name="Camera Altitude" id="3352cbc6aebbcc9e" memberName="m_cameraAltitude"
|
||||
virtualName="" explicitFocusOrder="0" pos="216 80 160 24" tooltip="Camera Altitude"
|
||||
min="0" max="100000" int="100" style="LinearHorizontal" textBoxPos="TextBoxLeft"
|
||||
textBoxEditable="1" textBoxWidth="80" textBoxHeight="20" skewFactor="1"/>
|
||||
<SLIDER name="Camera Tilt" id="4993af2027f11be1" memberName="m_CameraTilt"
|
||||
virtualName="" explicitFocusOrder="0" pos="216 120 160 24" tooltip="Camera Tilt"
|
||||
min="0" max="90" int="5" style="LinearHorizontal" textBoxPos="TextBoxLeft"
|
||||
textBoxEditable="1" textBoxWidth="80" textBoxHeight="20" skewFactor="1"/>
|
||||
<TOGGLEBUTTON name="Camera Auto Heading" id="97a6fc7c399da63d" memberName="m_cameraAutoHeadingEnable"
|
||||
virtualName="" explicitFocusOrder="0" pos="216 160 150 24" tooltip="Camera Auto Heading"
|
||||
buttonText="Camera Auto Heading" connectedEdges="0" needsCallback="1"
|
||||
radioGroupId="0" state="0"/>
|
||||
<TOGGLEBUTTON name="Camera Auto Roll" id="cc847f94257e9212" memberName="m_cameraAutoRollEnable"
|
||||
virtualName="" explicitFocusOrder="0" pos="216 192 150 24" tooltip="Camera Auto Roll"
|
||||
buttonText="Camera Auto Roll" connectedEdges="0" needsCallback="1"
|
||||
radioGroupId="0" state="0"/>
|
||||
</JUCER_COMPONENT>
|
||||
|
||||
END_JUCER_METADATA
|
||||
|
||||
Reference in New Issue
Block a user