Merge branch 'next' into glenneaux/OP-965_GCSSwashConfig_Channel_Assignment
@ -1,85 +1,77 @@
|
||||
<html>
|
||||
<style type="text/css" media="screen">
|
||||
body { background: #e3e3e3; font-family: Helvetica, Arial, "MS Trebuchet", sans-serif; font-size: 12px; line-height:1.5em; }
|
||||
pre { font-family: Helvetica, Arial, "MS Trebuchet", sans-serif; }
|
||||
</style>
|
||||
<body>
|
||||
<h3>This is a credits file of people that are or have been key contributors to the OpenPilot project. Without the work of the people in this list, OpenPilot would not be what it is today.</h3>
|
||||
|
||||
<p>This list is sorted alphabetically by name</p>
|
||||
|
||||
<pre>Connor Abbott
|
||||
David Ankers
|
||||
Sergiy Anikeyev
|
||||
Pedro Assuncao
|
||||
Fredrik Arvidsson
|
||||
Werner Backes
|
||||
Jose Barros
|
||||
Pete Boehl
|
||||
David Carlson
|
||||
James Cotton
|
||||
Steve Doll
|
||||
Piotr Esden-Tempski
|
||||
Richard Flay
|
||||
Peter Farnworth
|
||||
Ed Faulkner
|
||||
Darren Furniss
|
||||
Frederic Goddeeris
|
||||
Daniel Godin
|
||||
Bani Greyling
|
||||
Nuno Guedes
|
||||
Erik Gustavsson
|
||||
Peter Gunnarsson
|
||||
Dean Hall
|
||||
Joe Hlebasko
|
||||
Andy Honecker
|
||||
Ryan Hunt
|
||||
Mark James
|
||||
Sami Korhonen
|
||||
Thorsten Klose
|
||||
Hallvard Kristiansen
|
||||
Edouard Lafargue
|
||||
Mike Labranche
|
||||
Fredrik Larsson
|
||||
Pablo Lema
|
||||
David Llama
|
||||
Matt Lipski
|
||||
Les Newell
|
||||
Ken Northup
|
||||
Greg Matthews
|
||||
Guy McCaldin
|
||||
Gary Mortimer
|
||||
Alessio Morale
|
||||
Cathy Moss
|
||||
Angus Peart
|
||||
Dmytro Poplavskiy
|
||||
Eric Price
|
||||
Richard Querin
|
||||
Randy Ram
|
||||
Laurent Ribon
|
||||
Julien Rouviere
|
||||
Jackson Russell
|
||||
Zik Saleeba
|
||||
Professor Dale Schinstock
|
||||
Professor Kenn Sebesta
|
||||
Oleg Semyonov
|
||||
Stacey Sheldon
|
||||
Troy Schultz
|
||||
Dr. Erhard Siegl
|
||||
Mike Smith
|
||||
Alex Sowa
|
||||
Pete Stapley
|
||||
Rowan Taubitz
|
||||
Andrew Thoms
|
||||
Jasper van Loenen
|
||||
Vassilis Varveropoulos
|
||||
Kevin Vertucio
|
||||
Alex Vrubel
|
||||
Brian Webb
|
||||
Justin Welander
|
||||
Mat Wellington
|
||||
Kendal Wells
|
||||
Dmitriy Zaitsev
|
||||
</pre>
|
||||
</body>
|
||||
</html>
|
||||
Connor Abbott
|
||||
David Ankers
|
||||
Sergiy Anikeyev
|
||||
Pedro Assuncao
|
||||
Fredrik Arvidsson
|
||||
Werner Backes
|
||||
Jose Barros
|
||||
Pete Boehl
|
||||
David Carlson
|
||||
James Cotton
|
||||
Steve Doll
|
||||
Piotr Esden-Tempski
|
||||
Richard Flay
|
||||
Peter Farnworth
|
||||
Ed Faulkner
|
||||
Darren Furniss
|
||||
Frederic Goddeeris
|
||||
Daniel Godin
|
||||
Bani Greyling
|
||||
Nuno Guedes
|
||||
Erik Gustavsson
|
||||
Peter Gunnarsson
|
||||
Dean Hall
|
||||
Joe Hlebasko
|
||||
Andy Honecker
|
||||
Ryan Hunt
|
||||
Mark James
|
||||
Sami Korhonen
|
||||
Thorsten Klose
|
||||
Hallvard Kristiansen
|
||||
Edouard Lafargue
|
||||
Mike Labranche
|
||||
Fredrik Larsson
|
||||
Pablo Lema
|
||||
David Llama
|
||||
Matt Lipski
|
||||
Les Newell
|
||||
Ken Northup
|
||||
Greg Matthews
|
||||
Guy McCaldin
|
||||
Gary Mortimer
|
||||
Alessio Morale
|
||||
Cathy Moss
|
||||
Angus Peart
|
||||
Dmytro Poplavskiy
|
||||
Eric Price
|
||||
Richard Querin
|
||||
Randy Ram
|
||||
Philippe Renon
|
||||
Laurent Ribon
|
||||
Mathieu Rondonneau
|
||||
Julien Rouviere
|
||||
Jackson Russell
|
||||
Zik Saleeba
|
||||
Professor Dale Schinstock
|
||||
Professor Kenn Sebesta
|
||||
Oleg Semyonov
|
||||
Stacey Sheldon
|
||||
Troy Schultz
|
||||
Dr. Erhard Siegl
|
||||
Mike Smith
|
||||
Alex Sowa
|
||||
Pete Stapley
|
||||
Vova Starikh
|
||||
Rowan Taubitz
|
||||
Andrew Thoms
|
||||
Philippe Vanhaesendonck
|
||||
Jasper van Loenen
|
||||
Vassilis Varveropoulos
|
||||
Kevin Vertucio
|
||||
Alex Vrubel
|
||||
Brian Webb
|
||||
Justin Welander
|
||||
Mat Wellington
|
||||
Kendal Wells
|
||||
David Willis
|
||||
Dmitriy Zaitsev
|
205
HISTORY.txt
@ -1,205 +0,0 @@
|
||||
Short summary of changes. For a complete list see the git log.
|
||||
|
||||
2012-11-17
|
||||
Advanced camera stabilization features.
|
||||
They include optional manual control input filtering (moved from camera
|
||||
stabilization to manual control input and now available also for main controls),
|
||||
optional airframe attitude filtering used by camera stabilization, and optional
|
||||
camera actuator feed forward to improve gimbal response.
|
||||
|
||||
--- RELEASE-12.10.2 --- Mayan Apocalypse Release ---
|
||||
|
||||
List of issues resolved in this maintenance release:
|
||||
http://progress.openpilot.org/issues/?filter=10361
|
||||
|
||||
OP-459, OP-545, OP-674, OP-679, OP-685, OP-686, OP-687, OP-690, OP-691,
|
||||
OP-702, OP-703, OP-714, OP-715, OP-716, OP-721, OP-728, OP-746, OP-748,
|
||||
OP-749, OP-750, OP-758, OP-759, OP-760
|
||||
|
||||
2012-11-12
|
||||
Implemented smoothing filter for accelerometer data.
|
||||
Added support for Mode 3 and Mode 4 to the TX Configuration Wizard.
|
||||
|
||||
--- RELEASE-12.10.1 ---
|
||||
|
||||
2012-10-26
|
||||
Temporary disabled AutoTune GCS GUI. It was listed as an experimental
|
||||
feature in the previous release, there were however a few cases where
|
||||
it did not behave as expected.
|
||||
|
||||
--- RELEASE-12.10 ---
|
||||
|
||||
2012-10-06
|
||||
Receiver port can now be configured as PPM *and* PWM inputs.
|
||||
Pin 1 is PPM, other pins are PWM inputs.
|
||||
|
||||
2012-07-27
|
||||
Added the ability to load stylesheets from external file according to operating system:
|
||||
macos.qss, linux.qss, windows.qss
|
||||
Files should be placed inside the app folder.
|
||||
|
||||
2012-07-27
|
||||
Several UI changes.
|
||||
MixerCurveWidget refactoring, now as a simple and advanced view.
|
||||
|
||||
2012-07-27
|
||||
Added "advanced mode" option to general settings. Right now it only shows the hidden apply buttons.
|
||||
To enable go to tools->options->General and click one of the checkboxes to give focus to the form,
|
||||
then press F7
|
||||
|
||||
2012-07-27
|
||||
Made the flight mode switch and accessory pots move according to user input on the input wizard.
|
||||
|
||||
2012-07-27
|
||||
Changed the board pictures on the uploader widget
|
||||
|
||||
2012-07-27
|
||||
Add more verbose debug output on the UAVOBJECTS saving code.
|
||||
|
||||
2012-08-11
|
||||
CopterControl can now emulate an 8-channel USB HID joystick. Primarily,
|
||||
this lets you use any RC transmitter with flight simulators on your PC.
|
||||
|
||||
2012-07-20
|
||||
AeroSimRC simulator plugin is now included into the Windows distribution
|
||||
(will be installed into .../OpenPilot/misc/AeroSIM-RC directory). Still
|
||||
being an experimental development tool, it could be used to play with
|
||||
HITL version 2. Other platforms include udp_test utility which can be
|
||||
used to check the connectivity with AeroSimRC plugin running on Windows
|
||||
machine.
|
||||
|
||||
2012-07-10
|
||||
On Windows the installation mode was changed from per-user to per-machine
|
||||
(for all users) installation. It is recommended to completely uninstall
|
||||
previous version before installing new one to remove per-user installed
|
||||
files. Per-machine installation requires elevated (administrator) previleges
|
||||
during install. But since the same rights are now required to install
|
||||
optional CDC driver (virtual communication port), it was deemed acceptable.
|
||||
|
||||
2012-06-04
|
||||
AeroSimRC support merged into next
|
||||
|
||||
2012-05-26
|
||||
VirtualFlybar which allows a more aggressive flight mode than rate mode
|
||||
support. Also PiroCompensation added.
|
||||
|
||||
2012-05-26
|
||||
Revert some UI changes that didn't work consistently between OSX and Windows.
|
||||
|
||||
2012-05-24
|
||||
Merged the updated firmware for the PipXtreme, thanks to Brian for a lot of
|
||||
work on this.
|
||||
|
||||
2012-05-04
|
||||
Support for CC3D. This involved changes to various things such as the sensors
|
||||
being split from AttitudeRaw to Accels,Gyros,Magnetometer. A single firmware
|
||||
image fw_coptercontrol will run on both CC and CC3D. When compiling the
|
||||
bootloader one must set the HW_REVISION to the appropriate value. 0x01 is for
|
||||
CC and 0x02 is for CC3D. If the wrong bootloader is installed the firmware
|
||||
will not run.
|
||||
|
||||
2012-05-02
|
||||
Reduction in the memory usage due to the UAVObject metadata. Now the update
|
||||
periods are using a smaller data type and the various flags relating to access
|
||||
controls and update modes are stored in a bitfield. The UAVObjectBrowser has
|
||||
not been updated to allow these modes to be easily changed.
|
||||
|
||||
2012-03-31
|
||||
Support for ground vehicle configuration has been added to the the GCS.
|
||||
|
||||
2012-02-14
|
||||
New QML based system to allow more flexible UI. Upgraded stabilization
|
||||
configuration.
|
||||
|
||||
2012-01-02
|
||||
CC FW now supports USB Virtual Com Port (VCP/CDC) in addition to the original HID interface
|
||||
New ComUsbBridge module can bridge any serial port to the USB CDC port
|
||||
CC FW now detects repeated faults during init and boots with default hwsettings
|
||||
|
||||
2012-01-02
|
||||
Added new camera stabilization features: AxisLock mode and LPF.
|
||||
|
||||
2011-12-10
|
||||
Merged a change that sorts the UAVO fields based on size. Because this changes
|
||||
all of the objects, erase all existing flash files based on this.
|
||||
|
||||
2011-11-04
|
||||
New Spektrum/JR satellite receiver driver implementation.
|
||||
It now provides explicit selection of DSM2 (and DSMJ), DSMX (10bit) and
|
||||
DSMX (11bit) serial protocol variations to better serve different frame
|
||||
and resolution modes. The protocol name used now is DSM instead of
|
||||
previously used Spektrum to make it less ambiguous when used with JR
|
||||
2.4GHz radios.
|
||||
|
||||
2011-10-20
|
||||
Inputs can be remapped to outputs to allow up to 10 channels of control. The
|
||||
receiver inputs remap as follows:
|
||||
Receiver 3 because output channel 7
|
||||
Receiver 4 because output channel 8
|
||||
Receiver 5 because output channel 9
|
||||
Receiver 6 because output channel 10
|
||||
|
||||
2011-10-11
|
||||
Fix for the Mac telemetry rates and specifically how long enumeration took.
|
||||
|
||||
2011-10-08
|
||||
Make the flash chip need to be have bad magic for a full second before erasing
|
||||
settings. Should avoid random lost settings.
|
||||
|
||||
2011-09-12
|
||||
Max rate now ONLY applies to attitude and axis lock mode. Manual rate is the
|
||||
only term that limits the rate mode now (and in axis lock when you push stick
|
||||
only manual rate applies). Also integrals are reset when unused.
|
||||
|
||||
2011-09-09
|
||||
Some large updates to the input system. Now multiple receivers can be
|
||||
connected at once. A wizard was added for configuring the input channels. A
|
||||
specific collective pitch channel was added.
|
||||
|
||||
2011-09-04
|
||||
Improvements to the failsafe handling code for inputs. PWM power off is now
|
||||
detected properly. Powering on transmitter for Spektrum Satellite no longer
|
||||
causes a glitch on servos.
|
||||
|
||||
2011-08-10
|
||||
Added Camera Stabilization and a gui to configure this. This is a software
|
||||
selectable module from the GUI. However, a restart is required to make it
|
||||
active. The GUI does not currently expose the configuration for using the
|
||||
transmitter to change the view angle but this is supported by the hardware.
|
||||
|
||||
2011-08-10
|
||||
By default a lot of diagnostic objects that were enabled by default are now
|
||||
disabled in the build. This include TaskInfo (and all the FreeRTOS options
|
||||
that provide that debugging information). Also MixerStatus, I2CStatus,
|
||||
WatchdogStatus and RateDesired. These can be reenabled for debugging with
|
||||
-DDIAG_ALL.
|
||||
|
||||
2011-08-04
|
||||
Fixed packaging aesthetic issues. Also avoid runtime issues on OSX Lion by
|
||||
disabling the ModelView and Notify plugins for now (sorry).
|
||||
|
||||
2011-07-29
|
||||
Added support for PPM receivers from James W. Now all 4 interfaces (R/C
|
||||
standard PWM, combined PPM (MK), Spektrum satellite, Futaba S.Bus) are
|
||||
supported and configurable through the GCS hardware configuration tab.
|
||||
|
||||
2011-07-17
|
||||
Updated module initialization from Mathieu which separates the initialization
|
||||
from the task startup. Also implements a method to reclaim unused ram from
|
||||
initialization and end of memory for the FreeRTOS heap.
|
||||
|
||||
2011-07-12
|
||||
Improvements to the stabilization code. Included a LPF on the gyros to smooth
|
||||
out noise in high vibration environments. Also two new modes: axis-lock and
|
||||
weak leveling. Axis-lock will try and hold an axis at a fixed position and
|
||||
reject any disturbances. This is like heading-hold on a heli for the tail but
|
||||
can be useful for other axes. Weak leveling is rate mode with a weak
|
||||
correction to self level the craft - good for easier rate mode flying.
|
||||
|
||||
2011-07-07
|
||||
Dynamic hardware configuration from Stac. The input type is now
|
||||
selected from ManualControlSettings.InputMode and the aircraft must be rebooted
|
||||
after changing this. Also for CopterControl the HwSettings object must
|
||||
indicate which modules are connected to which ports. PPM currently not
|
||||
working.
|
||||
|
@ -1,20 +0,0 @@
|
||||
Here is a list of some known unresolved issues. If an issue has JIRA ID [OP-XXX], you may track it using the
|
||||
following URL: http://bugs.openpilot.org/browse/OP-XXX
|
||||
|
||||
+ Only French translation is updated, use English for other locales or help with translations.
|
||||
+ Radio Wizard confused by a reversed throttle, fix it on your transmitter before starting wizard.
|
||||
+ Radio Wizard Throttle display does not show full range properly.
|
||||
+ [Windows 8] USB Driver is broken.
|
||||
+ Firmware Update Instructions on Firmware Tab not entirely accurate for all upgrade paths.
|
||||
+ Tricopter's using Vehicle Wizard need to check servo does not need reversed manually.
|
||||
+ XAircraft ESCs uses non-standard PPM range which may cause issues with Vehicle Wizard.
|
||||
+ Spectrum Satellite Receivers setup in Radio Wizard may have wrong protocol set.
|
||||
+ Old Intel 965 have an OpenGL bug that turns the QML PFD black and while.
|
||||
+ [OP-732] Import UAV Settings for inactive modules crashes the running firmware (board restarts).
|
||||
Workaround: update firmware, power cycle, enable modules, power cycle, import configuration.
|
||||
+ [OP-747] Board infinitely reboots itself after firmware upgrade (settings erase firmware is a workaround).
|
||||
+ [OP-723] GCS uses the system language ot the 1st run. After restart it uses English (can be changed later).
|
||||
+ [OP-725] GCS camera stab config error message disappears too fast (but config error is cleared as it should)
|
||||
+ [OP-767] GCS does not send AttitudeActual packets over serial port when GPS is connected and system is armed
|
||||
+ [OP-768] GCS does not show UAV position on the map (master or next CC branches, but works in Revo branches)
|
||||
+ [OP-769] Can't enter "12,45" on German system. Workaround: change GCS language (in fact, locale) to German.
|
72
LICENSE.txt
@ -1,42 +1,64 @@
|
||||
The OpenPilot code is licensed under the GPLv3. There are a few minor exceptions to this so please see
|
||||
the headers of all source code for copyright and license information. The full text of the GPLv3 can be
|
||||
read here: http://www.gnu.org/licenses/gpl-3.0.txt
|
||||
|
||||
The OpenPilot code is licensed under the GPLv3, there are a few minor exceptions to this so please see the headers of all source code for copyright and license information.
|
||||
|
||||
The full text of the GPLv3 can be read here: http://www.gnu.org/licenses/gpl-3.0.txt
|
||||
|
||||
Artwork is licensed under the Creative Commons BY-SA v3 license.
|
||||
Artwork is licensed under the Creative Commons BY-SA v3 license.
|
||||
|
||||
Documentation including translations is also licensed under the Creative Commons BY-SA v3 license.
|
||||
|
||||
For details please see: http://creativecommons.org/licenses/by-sa/3.0/
|
||||
|
||||
Licenses for the hardware files are included in the directories that contain the hardware, not all items are under the same license and you must check the files for each individual hardware design.
|
||||
Licenses for the hardware files are included in the directories that contain the hardware, not all items
|
||||
are under the same license and you must check the files for each individual hardware design. Please note
|
||||
that some of the hardware files are licensed under the Creative Commons BY-NC-SA v3 license, this is a
|
||||
non-commercial license. OpenPilot is purely a non-profit hobby project with zero commercial intent. If you
|
||||
just want people to work for free or do your R&D for zero cost, please find a project that allows this as
|
||||
that not what OpenPilot is about. We are hobbyists and we want to share our work with fellow hobbyists,
|
||||
additionally we need to ensure the future of the project and make sure it is sustainable.
|
||||
|
||||
Please note that some of the hardware files are licensed under the Creative Commons BY-NC-SA v3 license, this is a Non-commercial license. OpenPilot is purely a non-profit hobby project with zero commercial intent, if you just want people to work for free or do your R&D for zero cost, please find a project that allows this as that not what OpenPilot is about.
|
||||
We are hobbyists and we want to share our work with fellow hobbyists, additionally we need to ensure the future of the project and make sure it is sustainable.
|
||||
If you wish to sell/distribute OpenPilot hardware or derivatives of OpenPilot hardware that are under a
|
||||
non-commercial license, please get in touch with one of the members of OpenPilot Foundation's
|
||||
administration committee. We can then negotiate a license waiver where a portion of the profits are donated
|
||||
to the OpenPilot Project to ensure its survival and future progression. Please note that this is in
|
||||
reference to PCB and Schematic designs. For people wishing to combine OpenPilot in to a Ready to Fly
|
||||
solution, this is perfectly fine as long as OpenPilot PCBs are bought from the OpenPilot project or one
|
||||
of the approved distributors.
|
||||
|
||||
If you wish to sell / distribute OpenPilot hardware or derivatives of OpenPilot hardware that are under a non-commercial license, please get in touch with one of the members of OpenPilot Foundation's administration committee. We can then negotiate a license waiver where a portion of the profits are donated to the OpenPilot Project to ensure its survival and future progression. Please note that this is in reference to PCB and Schematic designs, for people wishing to combine OpenPilot in to a Ready to Fly solution, this is perfectly fine as long as OpenPilot PCBs are bought from the OpenPilot project or one of the approved distributors.
|
||||
For details the non-commercial license please see: http://creativecommons.org/licenses/by-nc-sa/3.0/
|
||||
A quick summary of what this license talk means, firstly using any work that is licensed under a form of
|
||||
the Creative Commons BY license, requires that credit is to be given. The SA or Share Alike part of the
|
||||
license means that you must also use the same license in any work derived from the work under this license.
|
||||
|
||||
For details the Non-Commercial license please see: http://creativecommons.org/licenses/by-nc-sa/3.0/
|
||||
Hardware
|
||||
The items under the non-commercial license means exactly that: they are for non-commercial use only and
|
||||
any derivatives that are made are also covered by the same non-commercial license. The hardware files
|
||||
under a non-commercial license are for reference and for fellow hobbyists; they are not to be used to
|
||||
generate profit of any kind. Please note that even the OpenPilot project its self is a non-profit project.
|
||||
|
||||
A quick summary of what this license talk means, firstly using any work that is licensed under a form of the Creative Commons BY license, requires that credit is to be given.
|
||||
|
||||
The SA or Share Alike part of the license means that you must also use the same license in any work derived from the work under this license.
|
||||
|
||||
Hardware
|
||||
The items under the non-commercial license means exactly that: they are for non-commercial use only and any derivatives that are made are also covered by the same non-commercial license. The hardware files under a non-commercial license are for
|
||||
reference and for fellow hobbyists; they are not to be used to generate profit of any kind. Please note that even the OpenPilot project its self is a non-profit project.
|
||||
|
||||
For all items both non-commercial and items that allows commercial use, the OP logo must be placed on any work or derivative work and be clearly visible. If any web addresses are present on the hardware, these are also required to remain on any replications or any derivative work.
|
||||
For all items both non-commercial and items that allows commercial use, the OP logo must be placed on any
|
||||
work or derivative work and be clearly visible. If any web addresses are present on the hardware, these
|
||||
are also required to remain on any replications or any derivative work.
|
||||
|
||||
Documentation
|
||||
In documentation, authors names must be kept along with any logos. If documentation is for a physical product such as a schematic, the OpenPilot logo should be shown and any web addresses also displayed on the final physical hardware it was derived from.
|
||||
In documentation, authors names must be kept along with any logos. If documentation is for a physical
|
||||
product such as a schematic, the OpenPilot logo should be shown and any web addresses also displayed on
|
||||
the final physical hardware it was derived from.
|
||||
|
||||
Artwork
|
||||
If artwork is to be reused, the OpenPilot project should be credited. If for example this is a software application, credit should be given on the application splash screen or in a separate part of the application that is visible to users. For example the Help / About screen.
|
||||
If artwork is to be reused, the OpenPilot project should be credited. If for example this is a software
|
||||
application, credit should be given on the application splash screen or in a separate part of the
|
||||
application that is visible to users. For example the Help/About screen.
|
||||
|
||||
Contact Us
|
||||
If you are unsure, please contact one of the OpenPilot Foundation's administrators. Additionally, if you plan to use parts of the OpenPilot project in your own work, we would appreciate it if you get in touch with us anyway, it is possible we could combine efforts or have some work already in progress that might be helpful. This of course is our baby and we want to see what great things people do with it as well.
|
||||
If you are unsure, please contact one of the OpenPilot Foundation's administrators. Additionally, if you
|
||||
plan to use parts of the OpenPilot project in your own work, we would appreciate it if you get in touch
|
||||
with us anyway, it is possible we could combine efforts or have some work already in progress that might
|
||||
be helpful. This of course is our baby and we want to see what great things people do with it as well.
|
||||
|
||||
A final note, OpenPilot is a non-profit for fun project and we have only volunteers. A great deal of time, money and effort has been donated to this project; please respect the people that are part of it and their generosity. OpenPilot is funded entirely by the generous people who donate money and time to the community and help it grow. Giving full and proper credit is not only a legal requirement of the CC-BY-SA license, it is also the right thing to do.
|
||||
A final note, OpenPilot is a non-profit for fun project and we have only volunteers. A great deal of time,
|
||||
money and effort has been donated to this project; please respect the people that are part of it and their
|
||||
generosity. OpenPilot is funded entirely by the generous people who donate money and time to the community
|
||||
and help it grow. Giving full and proper credit is not only a legal requirement of the CC-BY-SA license,
|
||||
it is also the right thing to do.
|
||||
|
||||
Buying hardware from the OpenPilot project is very important to the survival and continuing progress of the project, a project like OpenPilot is extremely expensive to produce.
|
||||
Buying hardware from the OpenPilot project is very important to the survival and continuing progress of
|
||||
the project, a project like OpenPilot is extremely expensive to produce.
|
||||
|
@ -1,16 +1,18 @@
|
||||
This is the Milestones file of the OpenPilot project, its intent is to record the major accomplishments achieved by people using the OpenPilot platform and who gets the karma for performing them.
|
||||
This is the Milestones file of the OpenPilot project, its intent is to record the major accomplishments
|
||||
achieved by people using the OpenPilot platform and who gets the karma for performing them.
|
||||
|
||||
The Contributors list in the About dialog of the GCS application records the developers and contributors.
|
||||
This file is different as it is aimed at recording and giving credit to the people who achieve milestones
|
||||
in the use of OpenPilot.
|
||||
|
||||
The CREDITS.txt in SVN records the developers and the achievements made by each individual; this file is different as it is aimed at recording and giving credit to the people who achieve milestones in the use of OpenPilot.
|
||||
|
||||
Notice: now we have the rule: no video - it has never happened. So please make sure you have video
|
||||
recorded if you want to submit your milestone (listed below or not yet) to this list.
|
||||
|
||||
The fields are:
|
||||
|
||||
Milestone description (M)
|
||||
Credited to (C)
|
||||
Date (D)
|
||||
Video (V) - Optional link to video showing milestone
|
||||
|
||||
(M) Milestone description
|
||||
(C) Credited to
|
||||
(D) Date
|
||||
(V) Link to video showing milestone
|
||||
|
||||
M: OpenPilot driving EagleTree OSD
|
||||
C: Frederic Goddeeris
|
||||
@ -147,7 +149,6 @@ C: Sergey Solodennikov (alconaft43)
|
||||
D: August 2011
|
||||
V: http://www.youtube.com/watch?v=8SrfIS7OkB4
|
||||
|
||||
|
||||
M: First CopterControl Return to Base Fixed Wing
|
||||
C: Eric Price (Corvus Corax)
|
||||
D: August 2011
|
||||
@ -168,6 +169,11 @@ C: Kavin Gustafson (k_g)
|
||||
D: October 2012
|
||||
V: http://www.youtube.com/watch?v=MGO68TqIwKk
|
||||
|
||||
M: First successful flight using just a mobile phone
|
||||
C: Jose (please complete details), demoed in Portugal
|
||||
D:
|
||||
V:
|
||||
|
||||
M: First CopterControl over 10km FixedWing navigation flight
|
||||
C:
|
||||
D:
|
||||
@ -178,17 +184,6 @@ C:
|
||||
D:
|
||||
V:
|
||||
|
||||
M: First successful flight using just a mobile phone
|
||||
C: Jose (please complete details), demoed in Portugal
|
||||
D:
|
||||
V:
|
||||
|
||||
|
||||
M: First Revo Altitude Hold using Sonar
|
||||
C:
|
||||
D:
|
||||
V:
|
||||
|
||||
M: First CopterControl Navigation on RC Ground Vechicle
|
||||
C:
|
||||
D:
|
||||
@ -199,17 +194,18 @@ C:
|
||||
D:
|
||||
V:
|
||||
|
||||
|
||||
M: First Revo Navigated flight on a FixedWing
|
||||
C: It got done somewhere along the line, likely Corvus.
|
||||
|
||||
M: First Revo 5km Navigated flight on a FixedWing
|
||||
C: Eric Price (Corvus Corax)
|
||||
D: March 2012
|
||||
V:
|
||||
|
||||
M: First Revo Navigated flight on a MultiRotor
|
||||
C: It got done somewhere along the line, James or Sami
|
||||
|
||||
M: First Revo Navigated flight on a Heli
|
||||
C:
|
||||
D:
|
||||
V:
|
||||
|
||||
M: First Revo 1km Navigated flight on a MultiRotor
|
||||
C:
|
||||
D:
|
||||
@ -220,10 +216,10 @@ C:
|
||||
D:
|
||||
V:
|
||||
|
||||
M: First Revo 5km Navigated flight on a FixedWing
|
||||
C: Eric Price (Corvus Corax)
|
||||
D: March 2012
|
||||
V:
|
||||
M: First Revo Navigated flight on a Heli
|
||||
C:
|
||||
D:
|
||||
V:
|
||||
|
||||
M: First Revo 1km Navigated flight on a Heli
|
||||
C:
|
||||
@ -235,6 +231,11 @@ C:
|
||||
D:
|
||||
V:
|
||||
|
||||
M: First Revo Altitude Hold using Sonar
|
||||
C:
|
||||
D:
|
||||
V:
|
||||
|
||||
M: First use of the Magic Waypoint feature
|
||||
C:
|
||||
D:
|
||||
@ -251,7 +252,7 @@ D:
|
||||
V:
|
||||
|
||||
M: First Auto landing on a MultiRotor using Revo
|
||||
C:
|
||||
C: Sami (please complete details)
|
||||
D:
|
||||
V:
|
||||
|
||||
@ -264,4 +265,3 @@ M: First Auto landing on a Heli using Revo
|
||||
C:
|
||||
D:
|
||||
V:
|
||||
|
||||
|
505
WHATSNEW.txt
Normal file
@ -0,0 +1,505 @@
|
||||
--- RELEASE-13.06 --- Italian Stallion Release ---
|
||||
|
||||
This is the first official OpenPilot Revolution software release. This version
|
||||
also supports the CopterControl, CC3D, OPLinkMini and the upcoming OP OSD.
|
||||
There a number of significant backend changes in this version compared to
|
||||
previous software releases: from new toolchains and build system to a source
|
||||
code reformatting that is inline with our project style guidelines.
|
||||
|
||||
The goal of this release is to provide CC3D-style features for the new
|
||||
Revolution platform (using the Revo's internal modem and external OPLinkMini
|
||||
board). Advanced features such as Altitude Hold, Position Hold, Guidance,
|
||||
Return to Home, and AutoLanding are still in development and will be available
|
||||
in future releases. The availability of those features will depend on how many
|
||||
people are able to contribute with code, testing and documentation.
|
||||
|
||||
Remember that the first Revo hardware batch was intended for developers/
|
||||
bleeding-edge testers, not end users who want a 100% final platform.
|
||||
|
||||
- New bootloaders are REQUIRED for this release to support new features such
|
||||
as erase settings and others. As always, bootloaders can be updated without
|
||||
any special programmer hardware using the bootloader updater firmware files.
|
||||
- F1 boards (CC, CC3D, OPLinkMini) require bootloader version 4 or higher.
|
||||
- F4 boards (Revolution, OSD prototype) require bootloader version 5 or higher.
|
||||
- Check the wiki for details of how to update them:
|
||||
http://wiki.openpilot.org/display/BUILDS/Bootloader+update
|
||||
|
||||
Please remember to take a moment to view these important tutorials:
|
||||
http://wiki.openpilot.org/display/Doc/OpenPilot+Tutorials
|
||||
|
||||
What's New / Release Notes
|
||||
--------------------------
|
||||
|
||||
NEW:
|
||||
|
||||
- Firmware folders removed.
|
||||
The firmware files folder has been removed in this release. These files
|
||||
are now integrated into the GCS so they are always up to date and there is
|
||||
less risk of a firmware mismatch. To update your firmware you must use
|
||||
either Vehicle Setup Wizard (big green button at the top right on the
|
||||
Welcome GCS tab) or the new Auto-Update button on the GCS Firmware tab.
|
||||
|
||||
- Responsiveness sliders.
|
||||
To simplify tuning, we have introduced a new Responsiveness slider that
|
||||
will allow you to modify stick response. For best results, you should
|
||||
still tune your system with PIDs as tight as possible for better
|
||||
stabilisation. This will result in better stabilisation, and at the
|
||||
same time soft or sharp response according to your preferences.
|
||||
|
||||
- Auto-Update firmware.
|
||||
This feature simplifies all OpenPilot board firmware updates. Now all
|
||||
you have to do is click "Auto-update" on the Firmware tab and follow the
|
||||
instructions to reflash your OpenPilot board. This is essentially the
|
||||
same as Rescue but uses the embedded firmware images so there is no need
|
||||
to browse for them anymore.
|
||||
|
||||
- Erase Settings Option.
|
||||
We previously had a hacky way to delete bad or incompatible settings from
|
||||
our OpenPilot boards. This old special firmware that did this is now
|
||||
deprecated and the functionality is now integrated into the latest
|
||||
bootloaders and firmwares.
|
||||
|
||||
To erase settings enter DFU (boot) mode (using Halt or Rescue function)
|
||||
and click the "Erase settings" button on the Firmware tab and follow the
|
||||
instructions. This will NOT work with an older bootloader and the "Erase
|
||||
settings" button will be disabled if an out of date bootloader is detected.
|
||||
|
||||
- Language defaults.
|
||||
GCS now uses the system default language (only French and English are
|
||||
available currently, please contribute translations). You can change the
|
||||
language in the GCS Options at any time.
|
||||
|
||||
- CDC driver install option (Windows only).
|
||||
This is an optional USB virtual serial port that is useful, for example,
|
||||
for updating your GPS configuration using the U-Blox u-Center software.
|
||||
It is NOT required for normal configuration of OpenPilot boards. If it is
|
||||
not installed, virtual serial port features will not be available. This
|
||||
driver is not signed by Microsoft, but in fact it uses serial port drivers
|
||||
from Windows and only the driver information INF file is supplied by
|
||||
OpenPilot.
|
||||
|
||||
- Lots of help tooltips were added to the GCS. Hovering your mouse over an
|
||||
option in the GCS will show them, please review for help during tuning/
|
||||
setting up.
|
||||
|
||||
- A large amount of general improvements, code clean ups and minor bugs
|
||||
resolved.
|
||||
|
||||
KNOWN ISSUES:
|
||||
|
||||
- On Linux you should remove the OpenPilot package if it was previously
|
||||
installed, then install this new one. This is a known issue and likely
|
||||
be fixed later.
|
||||
|
||||
- Due to changes in USB descriptors to support new features, USB drivers
|
||||
on Windows must be updated. If after using Rescue or Wizard or Auto-Update
|
||||
button the GCS cannot connect to the board, you may be experiencing this
|
||||
USB issue. To resolve it you should remove the old drivers (ones with
|
||||
yellow exclamation mark) and allow Windows to find them again.
|
||||
|
||||
Here is how to do it:
|
||||
|
||||
Windows XP:
|
||||
- Right click on "My Computer" on your desktop and select "Properties".
|
||||
- Select the "Hardware" tab.
|
||||
- Select the "Device Manager".
|
||||
- Scroll down the list until you see the "Universal Serial Bus Controllers"
|
||||
selection.
|
||||
- Click it to expand the list of USB drivers. Right-click on the driver(s)
|
||||
you wish to uninstall and select "Uninstall".
|
||||
|
||||
Windows 7/Vista:
|
||||
- Right click on "My Computer" on your desktop and select "Properties".
|
||||
- Select "Device Manager" in the upper left-hand corner of the window.
|
||||
- Scroll down the list until you see the "Universal Serial Bus Controllers"
|
||||
selection.
|
||||
- Click it to expand the list of USB drivers. Right-click on the driver(s)
|
||||
you wish to uninstall and select "Uninstall".
|
||||
|
||||
Then disconnect the board from USB, wait few seconds and re-connect it to
|
||||
your computer. Windows should find new drivers and install them properly.
|
||||
|
||||
- If GCS crashes when switching to the Flight Data tab, it usually means
|
||||
your PC needs newer video drivers. That tab contains a ModelView widget
|
||||
which uses OpenGL. It is known to crash on some graphics cards with old
|
||||
and buggy drivers.
|
||||
|
||||
- Sensor calibration is not final. It will be reworked completely to
|
||||
increase its accuracy and make it easier to use.
|
||||
|
||||
- AltitudeHold mode is enabled, but it is not officially supported. Do
|
||||
not expect it to work perfectly and be considered production quality.
|
||||
You may play with it and report your issues and suggestions at your own
|
||||
risk. If you are not using a case for your Revo, we strongly recommend
|
||||
covering the barometer sensor with some foam to shield the sensor from
|
||||
wind and light.
|
||||
|
||||
- Note that throttle stick in AltitudeHold mode is used to control vertical
|
||||
velocity, sometimes called vario altitude in other platforms, centre stick
|
||||
means hold altitude and there is a dead band around centre stick.
|
||||
|
||||
- There are currently no configuration options for the Radio module in
|
||||
the Revolution except for Radio enable/disable and output power. This is
|
||||
intentional because all configuration should be done using its paired
|
||||
ground OPLink coordinator.
|
||||
|
||||
How to configure the Revolution to OPLinkMini radio link:
|
||||
|
||||
- Make sure you have the newest bootloaders and matching firmwares
|
||||
between the Revolution, GCS and OPLink.
|
||||
- Enable the radio in the Revolution, click save and disconnect the board
|
||||
from USB.
|
||||
- Power it from external supply to continue.
|
||||
- Then connect the OPLink board to USB and scroll down in the GCS config
|
||||
widget to find OPLink icon at the end of list. This icon is only
|
||||
available when an OPLink is detected.
|
||||
- To pair the two radios, select the Revolution side radio address in the
|
||||
list of found boards, select it, click Add to add to the list of paired
|
||||
radios and click Save. After unplugging the board from the USB and
|
||||
plugging back your OPLink it should show "Connected", and you can
|
||||
continue with the configuration.
|
||||
|
||||
- Do not set the Revolution modem or OPLinkMini output power to high values
|
||||
without antenna connected, this can damage the hardware.
|
||||
|
||||
JIRA issues addressed in this release:
|
||||
|
||||
Due to major rework of all code and integration of Revo code into mainline
|
||||
(next) it is almost impossible to list all corresponding JIRA issues for the
|
||||
list above. Some of them can be found using this link:
|
||||
http://progress.openpilot.org/issues/?filter=10860
|
||||
|
||||
OP-678, OP-693, OP-719, OP-726, OP-727, OP-747, OP-761, OP-769, OP-770,
|
||||
OP-772, OP-792, OP-804, OP-807, OP-812, OP-816, OP-817, OP-820, OP-821,
|
||||
OP-843, OP-846, OP-854, OP-855, OP-856, OP-861, OP-864, OP-867, OP-871,
|
||||
OP-873, OP-874, OP-875, OP-879, OP-885, OP-886, OP-888, OP-889, OP-890,
|
||||
OP-891, OP-892, OP-893, OP-894, OP-895, OP-896, OP-897, OP-898, OP-899,
|
||||
OP-900, OP-903, OP-905, OP-906, OP-907, OP-910, OP-912, OP-917, OP-920,
|
||||
OP-925, OP-926, OP-928, OP-935, OP-936, OP-939, OP-952, OP-955, OP-957,
|
||||
OP-968, OP-969, OP-970, OP-977, OP-980, OP-981, OP-982, OP-983, OP-987,
|
||||
OP-988, OP-989
|
||||
|
||||
Short summary of changes. For a complete list see the git log.
|
||||
|
||||
Flight code changes:
|
||||
- initial version of Revo code;
|
||||
- initial version of OPLinkMini code;
|
||||
- CopterControl/CC3D code reworked to reuse parts of Revo code;
|
||||
- switched to new ARM-supported GCC 4.7 toolchain with hardware floating point support;
|
||||
- major code cleanup and use of compiler warning flags to early catch errors;
|
||||
- major directory and Makefiles reorganisation and cleanup;
|
||||
- all source code fixed to use float variables instead of doubles (to use hardware FPU);
|
||||
- added multi-binding support for OPLinkMini;
|
||||
- added frequency hopping for Revo and OPLinkMini;
|
||||
- added auto-configuration for OPLinkMini remote modem / Revo;
|
||||
- replaced entire flash generation code;
|
||||
- new U-Blox GPS binary protocol parser;
|
||||
- added STM32 DSP library;
|
||||
- updated STM32 CMSIS library;
|
||||
- updated STM32 USB OTG driver;
|
||||
- updated STM32 F1 StdPeriph driver library;
|
||||
- updated STM32 F4 StdPeriph driver library;
|
||||
- updated FreeRTOS (real-time operating system used by the flight code to run many tasks);
|
||||
- PyMite moved to a library;
|
||||
- fixed nasty bug in PyMite Makefile, single file was rebuilt 5 times fo no reason;
|
||||
- added configurable accel/gyro rates;
|
||||
- added visualisation of errors in bootloader updater;
|
||||
- added numerous sanity checks to the flight code to prevent unsafe arming;
|
||||
- new flash file system, much faster and higly optimised;
|
||||
- Revo settings are now stored in embedded MCU flash freeing up external one for flight logs;
|
||||
- OPLinkMini now stores settings in the MCU flash using FlashFS too;
|
||||
- a catalog of known flash types is used to support different flash types by the same firmware;
|
||||
- fixed broken overo submodule remote repository link;
|
||||
- fixed DSMX protocol error with some Tx/Rx combintions;
|
||||
- added new pios_*.h headers to support commonly used constants, functions and defines;
|
||||
- numerous fixes for data alignment and memory allocation strategy;
|
||||
- new bootloaders to support more features (for example, board settings erase);
|
||||
- added new feature to erase settings without special firmware;
|
||||
- removed CC/CC3D setting erase firmware (now not necessary due to new erase feature);
|
||||
- introduced new delayed callback scheduler to run modules from a single task;
|
||||
- many changes to AeroSim-RC simulator interface;
|
||||
- fixed broken debug pins API;
|
||||
- fixed few bugs in the EKF code;
|
||||
- introduced bootloader updater for F4 boards (including Revo and OSD);
|
||||
- some changes in RAM and flash memory partitioning to better utilize resources;
|
||||
- changes in bootloader to allow remote reboot via serial port or radio modem;
|
||||
- the EKF "Huge Formula" is replaced by optimised set of of loops to make it editable;
|
||||
- Cyr's attitude patch is ported from CC3D to Revo;
|
||||
- added magnetometer options (mags are disabled by default for Revo complimenary filter);
|
||||
- advance camera stabilisation is now officially released;
|
||||
- fixed numerous internal firmware bugs (too many to list here).
|
||||
|
||||
GCS code changes:
|
||||
- nice loading splash screen;
|
||||
- now GCS uses system language by default if translation is available, English otherwise;
|
||||
- French translation officially added. Please help with other languages;
|
||||
- fixed some crashes of uploader gadget;
|
||||
- fixed double config read on restore;
|
||||
- improvements in GCS options dialog handling;
|
||||
- optimised option dialog creating;
|
||||
- added UI tooltips for many options;
|
||||
- removed unused yet options from configuration UI;
|
||||
- removed GCS config dialog on the first run, one default is used now if missing;
|
||||
- added Revo configuration page, similar to CC/CC3D one;
|
||||
- added OPLinkMini configuration page;
|
||||
- hardware options are now dynamically enabled/disabled to allow supported configurations only;
|
||||
- new artwork for all boards everywhere;
|
||||
- optimised some 3D models;
|
||||
- new About dialog showing version info and contributors list;
|
||||
- fixed badly broken HiTL options dialog;
|
||||
- fixed compilation problem on OSX, now GCS should be compatible with OSX 10.5+;
|
||||
- major vehicle config cleanup with lazy creation (speeds up GCS start);
|
||||
- UI config pages improvements (responsiveness, etc)
|
||||
- new auto-update feature added, *.opfw firmware files removed from distributables;
|
||||
- anti-aliased scope plugin;
|
||||
- numerous code fixes and cleanups (too many to list here);
|
||||
- USB HID code is replaced by new cross-platform hidapi library to fix old Linux/OSX problems.
|
||||
|
||||
Common parts:
|
||||
- added simple toolchain install make targets;
|
||||
- added self-hosted toolchains to ensure that they're always available;
|
||||
- added support for globally istalled tools used by many working copies;
|
||||
- added Windows bootstrap script to pull all other build tools;
|
||||
- added unit testing framework, also supported by Bamboo CI server and agents;
|
||||
- added code style formatting make targets, easy to use by developers;
|
||||
- added doxygen make targets. The documentation still must be completely revised, though;
|
||||
- enforced global line ending policy, source files are updated accordingly;
|
||||
- reworked packaging to provide correct dependencies and safe multi-threaded builds;
|
||||
- multiply renames of board names and directories, now we have correct names;
|
||||
- fixed dependencies in Makefiles, now 'make -j' works reliably;
|
||||
- CLEAN_BUILD make option is deprecated, use 'package' or 'clean_package' instead;
|
||||
- simposix elf is now included into linux distribution and can be run with default GCS settings;
|
||||
- revised 'make help' message;
|
||||
- updated Windows driver to support Revolution and use correct board names.
|
||||
|
||||
Android GCS:
|
||||
- old and buggy code was removed;
|
||||
- full rewrite has been started.
|
||||
|
||||
Infrastructure:
|
||||
- Bamboo continuous integration server is actively used;
|
||||
- around 10 build agents running 4 different operating systems are set up;
|
||||
- every push to any branch is now build-tested, and unit tests run are performed;
|
||||
|
||||
2012-11-17
|
||||
Advanced camera stabilization features.
|
||||
They include optional manual control input filtering (moved from camera stabilization to manual
|
||||
control input and now available also for main controls), optional airframe attitude filtering
|
||||
used by camera stabilization, and optional camera actuator feed forward to improve gimbal response.
|
||||
|
||||
--- RELEASE-12.10.2 --- Mayan Apocalypse Release ---
|
||||
|
||||
List of issues resolved in this maintenance release:
|
||||
http://progress.openpilot.org/issues/?filter=10361
|
||||
|
||||
OP-459, OP-545, OP-674, OP-679, OP-685, OP-686, OP-687, OP-690, OP-691,
|
||||
OP-702, OP-703, OP-714, OP-715, OP-716, OP-721, OP-728, OP-746, OP-748,
|
||||
OP-749, OP-750, OP-758, OP-759, OP-760
|
||||
|
||||
Here is a list of some known unresolved issues. If an issue has JIRA ID [OP-XXX],
|
||||
you may track it using the following URL: http://bugs.openpilot.org/browse/OP-XXX
|
||||
|
||||
+ Only French translation is updated, use English for other locales or help with translations.
|
||||
+ Radio Wizard confused by a reversed throttle, fix it on your transmitter before starting wizard.
|
||||
+ Radio Wizard Throttle display does not show full range properly.
|
||||
+ [Windows 8] USB Driver is broken.
|
||||
+ Firmware Update Instructions on Firmware Tab not entirely accurate for all upgrade paths.
|
||||
+ Tricopter's using Vehicle Wizard need to check servo does not need reversed manually.
|
||||
+ XAircraft ESCs uses non-standard PPM range which may cause issues with Vehicle Wizard.
|
||||
+ Spectrum Satellite Receivers setup in Radio Wizard may have wrong protocol set.
|
||||
+ Old Intel 965 have an OpenGL bug that turns the QML PFD black and while.
|
||||
+ [OP-732] Import UAV Settings for inactive modules crashes the running firmware (board restarts).
|
||||
Workaround: update firmware, power cycle, enable modules, power cycle, import configuration.
|
||||
+ [OP-747] Board infinitely reboots itself after firmware upgrade (settings erase firmware is a workaround).
|
||||
+ [OP-723] GCS uses the system language ot the 1st run. After restart it uses English (can be changed later).
|
||||
+ [OP-725] GCS camera stab config error message disappears too fast (but config error is cleared as it should)
|
||||
+ [OP-767] GCS does not send AttitudeActual packets over serial port when GPS is connected and system is armed
|
||||
+ [OP-768] GCS does not show UAV position on the map (master or next CC branches, but works in Revo branches)
|
||||
+ [OP-769] Can't enter "12,45" on German system. Workaround: change GCS language (in fact, locale) to German.
|
||||
|
||||
2012-11-12
|
||||
Implemented smoothing filter for accelerometer data.
|
||||
Added support for Mode 3 and Mode 4 to the TX Configuration Wizard.
|
||||
|
||||
--- RELEASE-12.10.1 ---
|
||||
|
||||
2012-10-26
|
||||
Temporary disabled AutoTune GCS GUI. It was listed as an experimental
|
||||
feature in the previous release, there were however a few cases where
|
||||
it did not behave as expected.
|
||||
|
||||
--- RELEASE-12.10 ---
|
||||
|
||||
2012-10-06
|
||||
Receiver port can now be configured as PPM *and* PWM inputs.
|
||||
Pin 1 is PPM, other pins are PWM inputs.
|
||||
|
||||
2012-07-27
|
||||
Added the ability to load stylesheets from external file according to operating system:
|
||||
macos.qss, linux.qss, windows.qss
|
||||
Files should be placed inside the app folder.
|
||||
|
||||
2012-07-27
|
||||
Several UI changes.
|
||||
MixerCurveWidget refactoring, now as a simple and advanced view.
|
||||
|
||||
2012-07-27
|
||||
Added "advanced mode" option to general settings. Right now it only shows the hidden apply buttons.
|
||||
To enable go to tools->options->General and click one of the checkboxes to give focus to the form,
|
||||
then press F7
|
||||
|
||||
2012-07-27
|
||||
Made the flight mode switch and accessory pots move according to user input on the input wizard.
|
||||
|
||||
2012-07-27
|
||||
Changed the board pictures on the uploader widget
|
||||
|
||||
2012-07-27
|
||||
Add more verbose debug output on the UAVOBJECTS saving code.
|
||||
|
||||
2012-08-11
|
||||
CopterControl can now emulate an 8-channel USB HID joystick. Primarily,
|
||||
this lets you use any RC transmitter with flight simulators on your PC.
|
||||
|
||||
2012-07-20
|
||||
AeroSimRC simulator plugin is now included into the Windows distribution
|
||||
(will be installed into .../OpenPilot/misc/AeroSIM-RC directory). Still
|
||||
being an experimental development tool, it could be used to play with
|
||||
HITL version 2. Other platforms include udp_test utility which can be
|
||||
used to check the connectivity with AeroSimRC plugin running on Windows
|
||||
machine.
|
||||
|
||||
2012-07-10
|
||||
On Windows the installation mode was changed from per-user to per-machine
|
||||
(for all users) installation. It is recommended to completely uninstall
|
||||
previous version before installing new one to remove per-user installed
|
||||
files. Per-machine installation requires elevated (administrator) previleges
|
||||
during install. But since the same rights are now required to install
|
||||
optional CDC driver (virtual communication port), it was deemed acceptable.
|
||||
|
||||
2012-06-04
|
||||
AeroSimRC support merged into next
|
||||
|
||||
2012-05-26
|
||||
VirtualFlybar which allows a more aggressive flight mode than rate mode
|
||||
support. Also PiroCompensation added.
|
||||
|
||||
2012-05-26
|
||||
Revert some UI changes that didn't work consistently between OSX and Windows.
|
||||
|
||||
2012-05-24
|
||||
Merged the updated firmware for the PipXtreme, thanks to Brian for a lot of
|
||||
work on this.
|
||||
|
||||
2012-05-04
|
||||
Support for CC3D. This involved changes to various things such as the sensors
|
||||
being split from AttitudeRaw to Accels,Gyros,Magnetometer. A single firmware
|
||||
image fw_coptercontrol will run on both CC and CC3D. When compiling the
|
||||
bootloader one must set the HW_REVISION to the appropriate value. 0x01 is for
|
||||
CC and 0x02 is for CC3D. If the wrong bootloader is installed the firmware
|
||||
will not run.
|
||||
|
||||
2012-05-02
|
||||
Reduction in the memory usage due to the UAVObject metadata. Now the update
|
||||
periods are using a smaller data type and the various flags relating to access
|
||||
controls and update modes are stored in a bitfield. The UAVObjectBrowser has
|
||||
not been updated to allow these modes to be easily changed.
|
||||
|
||||
2012-03-31
|
||||
Support for ground vehicle configuration has been added to the the GCS.
|
||||
|
||||
2012-02-14
|
||||
New QML based system to allow more flexible UI. Upgraded stabilization
|
||||
configuration.
|
||||
|
||||
2012-01-02
|
||||
CC FW now supports USB Virtual Com Port (VCP/CDC) in addition to the original HID interface
|
||||
New ComUsbBridge module can bridge any serial port to the USB CDC port
|
||||
CC FW now detects repeated faults during init and boots with default hwsettings
|
||||
|
||||
2012-01-02
|
||||
Added new camera stabilization features: AxisLock mode and LPF.
|
||||
|
||||
2011-12-10
|
||||
Merged a change that sorts the UAVO fields based on size. Because this changes
|
||||
all of the objects, erase all existing flash files based on this.
|
||||
|
||||
2011-11-04
|
||||
New Spektrum/JR satellite receiver driver implementation.
|
||||
It now provides explicit selection of DSM2 (and DSMJ), DSMX (10bit) and
|
||||
DSMX (11bit) serial protocol variations to better serve different frame
|
||||
and resolution modes. The protocol name used now is DSM instead of
|
||||
previously used Spektrum to make it less ambiguous when used with JR
|
||||
2.4GHz radios.
|
||||
|
||||
2011-10-20
|
||||
Inputs can be remapped to outputs to allow up to 10 channels of control. The
|
||||
receiver inputs remap as follows:
|
||||
Receiver 3 because output channel 7
|
||||
Receiver 4 because output channel 8
|
||||
Receiver 5 because output channel 9
|
||||
Receiver 6 because output channel 10
|
||||
|
||||
2011-10-11
|
||||
Fix for the Mac telemetry rates and specifically how long enumeration took.
|
||||
|
||||
2011-10-08
|
||||
Make the flash chip need to be have bad magic for a full second before erasing
|
||||
settings. Should avoid random lost settings.
|
||||
|
||||
2011-09-12
|
||||
Max rate now ONLY applies to attitude and axis lock mode. Manual rate is the
|
||||
only term that limits the rate mode now (and in axis lock when you push stick
|
||||
only manual rate applies). Also integrals are reset when unused.
|
||||
|
||||
2011-09-09
|
||||
Some large updates to the input system. Now multiple receivers can be
|
||||
connected at once. A wizard was added for configuring the input channels. A
|
||||
specific collective pitch channel was added.
|
||||
|
||||
2011-09-04
|
||||
Improvements to the failsafe handling code for inputs. PWM power off is now
|
||||
detected properly. Powering on transmitter for Spektrum Satellite no longer
|
||||
causes a glitch on servos.
|
||||
|
||||
2011-08-10
|
||||
Added Camera Stabilization and a gui to configure this. This is a software
|
||||
selectable module from the GUI. However, a restart is required to make it
|
||||
active. The GUI does not currently expose the configuration for using the
|
||||
transmitter to change the view angle but this is supported by the hardware.
|
||||
|
||||
2011-08-10
|
||||
By default a lot of diagnostic objects that were enabled by default are now
|
||||
disabled in the build. This include TaskInfo (and all the FreeRTOS options
|
||||
that provide that debugging information). Also MixerStatus, I2CStatus,
|
||||
WatchdogStatus and RateDesired. These can be reenabled for debugging with
|
||||
-DDIAG_ALL.
|
||||
|
||||
2011-08-04
|
||||
Fixed packaging aesthetic issues. Also avoid runtime issues on OSX Lion by
|
||||
disabling the ModelView and Notify plugins for now (sorry).
|
||||
|
||||
2011-07-29
|
||||
Added support for PPM receivers from James W. Now all 4 interfaces (R/C
|
||||
standard PWM, combined PPM (MK), Spektrum satellite, Futaba S.Bus) are
|
||||
supported and configurable through the GCS hardware configuration tab.
|
||||
|
||||
2011-07-17
|
||||
Updated module initialization from Mathieu which separates the initialization
|
||||
from the task startup. Also implements a method to reclaim unused ram from
|
||||
initialization and end of memory for the FreeRTOS heap.
|
||||
|
||||
2011-07-12
|
||||
Improvements to the stabilization code. Included a LPF on the gyros to smooth
|
||||
out noise in high vibration environments. Also two new modes: axis-lock and
|
||||
weak leveling. Axis-lock will try and hold an axis at a fixed position and
|
||||
reject any disturbances. This is like heading-hold on a heli for the tail but
|
||||
can be useful for other axes. Weak leveling is rate mode with a weak
|
||||
correction to self level the craft - good for easier rate mode flying.
|
||||
|
||||
2011-07-07
|
||||
Dynamic hardware configuration from Stac. The input type is now
|
||||
selected from ManualControlSettings.InputMode and the aircraft must be rebooted
|
||||
after changing this. Also for CopterControl the HwSettings object must
|
||||
indicate which modules are connected to which ports. PPM currently not
|
||||
working.
|
@ -1,9 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<classpath>
|
||||
<classpathentry kind="src" path="gen"/>
|
||||
<classpathentry kind="src" path="src"/>
|
||||
<classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
|
||||
<classpathentry exported="true" kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4"/>
|
||||
<classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
|
||||
<classpathentry kind="output" path="bin/classes"/>
|
||||
</classpath>
|
@ -1,83 +0,0 @@
|
||||
!SESSION 2012-02-04 14:21:36.086 -----------------------------------------------
|
||||
eclipse.buildId=unknown
|
||||
java.version=1.6.0_29
|
||||
java.vendor=Apple Inc.
|
||||
BootLoader constants: OS=macosx, ARCH=x86_64, WS=cocoa, NL=en_US
|
||||
Framework arguments: -product org.eclipse.epp.package.cpp.product -product org.eclipse.epp.package.cpp.product -product org.eclipse.epp.package.cpp.product -keyring /Users/jcotton81/.eclipse_keyring -showlocation
|
||||
Command-line arguments: -os macosx -ws cocoa -arch x86_64 -product org.eclipse.epp.package.cpp.product -product org.eclipse.epp.package.cpp.product -data /Users/jcotton81/Documents/Programming/OpenPilot/androidgcs -product org.eclipse.epp.package.cpp.product -keyring /Users/jcotton81/.eclipse_keyring -showlocation
|
||||
|
||||
!ENTRY org.eclipse.core.net 1 0 2012-02-04 14:21:41.864
|
||||
!MESSAGE System property http.nonProxyHosts has been set to local|*.local|169.254/16|*.169.254/16 by an external source. This value will be overwritten using the values from the preferences
|
||||
|
||||
!ENTRY org.eclipse.ui.intro.universal 4 0 2012-02-04 14:21:44.892
|
||||
!MESSAGE /Users/jcotton81/Documents/Programming/eclipse/Eclipse.app/Contents/MacOS/introData.xml (No such file or directory)
|
||||
!STACK 0
|
||||
java.io.FileNotFoundException: /Users/jcotton81/Documents/Programming/eclipse/Eclipse.app/Contents/MacOS/introData.xml (No such file or directory)
|
||||
at java.io.FileInputStream.open(Native Method)
|
||||
at java.io.FileInputStream.<init>(FileInputStream.java:120)
|
||||
at java.io.FileInputStream.<init>(FileInputStream.java:79)
|
||||
at sun.net.www.protocol.file.FileURLConnection.connect(FileURLConnection.java:70)
|
||||
at sun.net.www.protocol.file.FileURLConnection.getInputStream(FileURLConnection.java:161)
|
||||
at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.setupCurrentEntity(XMLEntityManager.java:653)
|
||||
at com.sun.org.apache.xerces.internal.impl.XMLVersionDetector.determineDocVersion(XMLVersionDetector.java:186)
|
||||
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:772)
|
||||
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
|
||||
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:119)
|
||||
at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:235)
|
||||
at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:284)
|
||||
at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:180)
|
||||
at org.eclipse.ui.internal.intro.universal.IntroData.parse(IntroData.java:159)
|
||||
at org.eclipse.ui.internal.intro.universal.IntroData.initialize(IntroData.java:63)
|
||||
at org.eclipse.ui.internal.intro.universal.IntroData.<init>(IntroData.java:47)
|
||||
at org.eclipse.ui.internal.intro.universal.CustomizationContentsArea.loadData(CustomizationContentsArea.java:624)
|
||||
at org.eclipse.ui.internal.intro.universal.CustomizationContentsArea.addPages(CustomizationContentsArea.java:489)
|
||||
at org.eclipse.ui.internal.intro.universal.CustomizationContentsArea.createContents(CustomizationContentsArea.java:453)
|
||||
at org.eclipse.ui.internal.intro.universal.CustomizationDialog.createDialogArea(CustomizationDialog.java:44)
|
||||
at org.eclipse.jface.dialogs.Dialog.createContents(Dialog.java:760)
|
||||
at org.eclipse.jface.window.Window.create(Window.java:431)
|
||||
at org.eclipse.jface.dialogs.Dialog.create(Dialog.java:1089)
|
||||
at org.eclipse.jface.window.Window.open(Window.java:790)
|
||||
at org.eclipse.ui.internal.intro.universal.CustomizeAction.run(CustomizeAction.java:35)
|
||||
at org.eclipse.ui.internal.intro.universal.CustomizeAction.run(CustomizeAction.java:29)
|
||||
at org.eclipse.jface.action.Action.runWithEvent(Action.java:498)
|
||||
at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:584)
|
||||
at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:501)
|
||||
at org.eclipse.jface.action.ActionContributionItem$6.handleEvent(ActionContributionItem.java:452)
|
||||
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
|
||||
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:3543)
|
||||
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1250)
|
||||
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1273)
|
||||
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1258)
|
||||
at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:1079)
|
||||
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3441)
|
||||
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3100)
|
||||
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2405)
|
||||
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2369)
|
||||
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2221)
|
||||
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:500)
|
||||
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
|
||||
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:493)
|
||||
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
|
||||
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:113)
|
||||
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194)
|
||||
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
|
||||
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
|
||||
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:368)
|
||||
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
|
||||
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
|
||||
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
|
||||
at java.lang.reflect.Method.invoke(Method.java:597)
|
||||
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559)
|
||||
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
|
||||
at org.eclipse.equinox.launcher.Main.run(Main.java:1311)
|
||||
!SESSION 2012-02-04 15:23:30.048 -----------------------------------------------
|
||||
eclipse.buildId=unknown
|
||||
java.version=1.6.0_29
|
||||
java.vendor=Apple Inc.
|
||||
BootLoader constants: OS=macosx, ARCH=x86_64, WS=cocoa, NL=en_US
|
||||
Framework arguments: -product org.eclipse.epp.package.cpp.product -product org.eclipse.epp.package.cpp.product -product org.eclipse.epp.package.cpp.product -product org.eclipse.epp.package.cpp.product -product org.eclipse.epp.package.cpp.product -product org.eclipse.epp.package.cpp.product -keyring /Users/jcotton81/.eclipse_keyring -showlocation
|
||||
Command-line arguments: -os macosx -ws cocoa -arch x86_64 -product org.eclipse.epp.package.cpp.product -product org.eclipse.epp.package.cpp.product -product org.eclipse.epp.package.cpp.product -product org.eclipse.epp.package.cpp.product -product org.eclipse.epp.package.cpp.product -data /Users/jcotton81/Documents/Programming/OpenPilot/androidgcs -product org.eclipse.epp.package.cpp.product -keyring /Users/jcotton81/.eclipse_keyring -showlocation
|
||||
|
||||
!ENTRY org.eclipse.core.net 1 0 2012-02-04 15:23:34.575
|
||||
!MESSAGE System property http.nonProxyHosts has been set to local|*.local|169.254/16|*.169.254/16 by an external source. This value will be overwritten using the values from the preferences
|
@ -1 +0,0 @@
|
||||
*** SESSION Feb 04, 2012 14:21:39.72 -------------------------------------------
|
@ -1 +0,0 @@
|
||||
|
@ -1 +0,0 @@
|
||||
|
@ -1,5 +0,0 @@
|
||||
#Sat Feb 04 15:21:25 CST 2012
|
||||
spelling_locale_initialized=true
|
||||
useAnnotationsPrefPage=true
|
||||
eclipse.preferences.version=1
|
||||
useQuickDiffPrefPage=true
|
@ -1,3 +0,0 @@
|
||||
#Sat Feb 04 15:21:25 CST 2012
|
||||
version=1
|
||||
eclipse.preferences.version=1
|
@ -1,3 +0,0 @@
|
||||
#Sat Feb 04 14:21:44 CST 2012
|
||||
org.eclipse.epp.usagedata.recording.last-upload=1328386904231
|
||||
eclipse.preferences.version=1
|
@ -1,15 +0,0 @@
|
||||
#Sat Feb 04 15:21:25 CST 2012
|
||||
useQuickDiffPrefPage=true
|
||||
proposalOrderMigrated=true
|
||||
tabWidthPropagated=true
|
||||
content_assist_proposals_background=255,255,255
|
||||
org.eclipse.jdt.ui.javadoclocations.migrated=true
|
||||
useAnnotationsPrefPage=true
|
||||
org.eclipse.jface.textfont=1|Monaco|11.0|0|COCOA|1|;
|
||||
org.eclipse.jdt.internal.ui.navigator.layout=2
|
||||
org.eclipse.jdt.ui.editor.tab.width=
|
||||
org.eclipse.jdt.ui.formatterprofiles.version=11
|
||||
spelling_locale_initialized=true
|
||||
eclipse.preferences.version=1
|
||||
content_assist_proposals_foreground=0,0,0
|
||||
fontPropagated=true
|
@ -1,3 +0,0 @@
|
||||
#Sat Feb 04 14:21:42 CST 2012
|
||||
eclipse.preferences.version=1
|
||||
mylyn.attention.migrated=true
|
@ -1,3 +0,0 @@
|
||||
#Sat Feb 04 15:21:25 CST 2012
|
||||
pref_first_startup=false
|
||||
eclipse.preferences.version=1
|
@ -1,3 +0,0 @@
|
||||
#Sat Feb 04 15:21:25 CST 2012
|
||||
eclipse.preferences.version=1
|
||||
org.eclipse.team.ui.first_time=false
|
@ -1,3 +0,0 @@
|
||||
#Sat Feb 04 15:21:25 CST 2012
|
||||
eclipse.preferences.version=1
|
||||
overviewRuler_migration=migrated_3.1
|
@ -1,5 +0,0 @@
|
||||
#Sat Feb 04 15:21:25 CST 2012
|
||||
eclipse.preferences.version=1
|
||||
tipsAndTricks=true
|
||||
platformState=1328386704250
|
||||
PROBLEMS_FILTERS_MIGRATE=true
|
@ -1,3 +0,0 @@
|
||||
#Sat Feb 04 15:21:25 CST 2012
|
||||
eclipse.preferences.version=1
|
||||
showIntro=false
|
@ -1,3 +0,0 @@
|
||||
#Sat Feb 04 14:21:42 CST 2012
|
||||
eclipse.preferences.version=1
|
||||
ENABLED_DECORATORS=com.android.ide.eclipse.adt.project.FolderDecorator\:true,org.eclipse.cdt.ui.indexedFiles\:false,org.eclipse.jdt.ui.override.decorator\:true,org.eclipse.jdt.ui.interface.decorator\:false,org.eclipse.jdt.ui.buildpath.decorator\:true,org.eclipse.mylyn.context.ui.decorator.interest\:true,org.eclipse.mylyn.tasks.ui.decorators.task\:true,org.eclipse.mylyn.team.ui.changeset.decorator\:true,org.eclipse.team.cvs.ui.decorator\:true,org.eclipse.ui.LinkedResourceDecorator\:true,org.eclipse.ui.ContentTypeDecorator\:true,
|
@ -1,251 +0,0 @@
|
||||
what,kind,bundleId,bundleVersion,description,time
|
||||
activated,perspective,org.eclipse.cdt.ui,,"org.eclipse.cdt.ui.CPerspective",1328386903139
|
||||
started,bundle,org.eclipse.osgi,3.5.2.R35x_v20100126,"org.eclipse.osgi",1328386903141
|
||||
started,bundle,org.eclipse.equinox.simpleconfigurator,1.0.101.R35x_v20090807-1100,"org.eclipse.equinox.simpleconfigurator",1328386903142
|
||||
started,bundle,com.ibm.icu,4.0.1.v20090822,"com.ibm.icu",1328386903143
|
||||
started,bundle,org.eclipse.cdt.core,5.1.2.201002161416,"org.eclipse.cdt.core",1328386903143
|
||||
started,bundle,org.eclipse.cdt.make.ui,6.0.1.201002161416,"org.eclipse.cdt.make.ui",1328386903144
|
||||
started,bundle,org.eclipse.cdt.ui,5.1.2.201002161416,"org.eclipse.cdt.ui",1328386903147
|
||||
started,bundle,org.eclipse.core.contenttype,3.4.1.R35x_v20090826-0451,"org.eclipse.core.contenttype",1328386903148
|
||||
started,bundle,org.eclipse.core.databinding.observable,1.2.0.M20090902-0800,"org.eclipse.core.databinding.observable",1328386903148
|
||||
started,bundle,org.eclipse.core.expressions,3.4.101.R35x_v20100209,"org.eclipse.core.expressions",1328386903149
|
||||
started,bundle,org.eclipse.core.filebuffers,3.5.0.v20090526-2000,"org.eclipse.core.filebuffers",1328386903149
|
||||
started,bundle,org.eclipse.core.filesystem,1.2.1.R35x_v20091203-1235,"org.eclipse.core.filesystem",1328386903150
|
||||
started,bundle,org.eclipse.core.jobs,3.4.100.v20090429-1800,"org.eclipse.core.jobs",1328386903151
|
||||
started,bundle,org.eclipse.core.net,1.2.1.r35x_20090812-1200,"org.eclipse.core.net",1328386903152
|
||||
started,bundle,org.eclipse.core.resources,3.5.2.R35x_v20091203-1235,"org.eclipse.core.resources",1328386903153
|
||||
started,bundle,org.eclipse.core.runtime,3.5.0.v20090525,"org.eclipse.core.runtime",1328386903153
|
||||
started,bundle,org.eclipse.core.runtime.compatibility,3.2.0.v20090413,"org.eclipse.core.runtime.compatibility",1328386903154
|
||||
started,bundle,org.eclipse.core.runtime.compatibility.auth,3.2.100.v20090413,"org.eclipse.core.runtime.compatibility.auth",1328386903154
|
||||
started,bundle,org.eclipse.ecf,3.0.0.v20090831-1906,"org.eclipse.ecf",1328386903155
|
||||
started,bundle,org.eclipse.ecf.filetransfer,3.0.0.v20090831-1906,"org.eclipse.ecf.filetransfer",1328386903155
|
||||
started,bundle,org.eclipse.ecf.identity,3.0.0.v20090831-1906,"org.eclipse.ecf.identity",1328386903156
|
||||
started,bundle,org.eclipse.ecf.provider.filetransfer,3.0.1.v20090831-1906,"org.eclipse.ecf.provider.filetransfer",1328386903157
|
||||
started,bundle,org.eclipse.ecf.provider.filetransfer.httpclient,3.0.1.v20090831-1906,"org.eclipse.ecf.provider.filetransfer.httpclient",1328386903158
|
||||
started,bundle,org.eclipse.epp.usagedata.gathering,1.1.1.R201001291118,"org.eclipse.epp.usagedata.gathering",1328386903159
|
||||
started,bundle,org.eclipse.epp.usagedata.recording,1.1.1.R201001291118,"org.eclipse.epp.usagedata.recording",1328386903161
|
||||
started,bundle,org.eclipse.equinox.app,1.2.1.R35x_v20091203,"org.eclipse.equinox.app",1328386903164
|
||||
started,bundle,org.eclipse.equinox.common,3.5.1.R35x_v20090807-1100,"org.eclipse.equinox.common",1328386903165
|
||||
started,bundle,org.eclipse.equinox.ds,1.1.1.R35x_v20090806,"org.eclipse.equinox.ds",1328386903166
|
||||
started,bundle,org.eclipse.equinox.frameworkadmin,1.0.100.v20090520-1905,"org.eclipse.equinox.frameworkadmin",1328386903166
|
||||
started,bundle,org.eclipse.equinox.frameworkadmin.equinox,1.0.101.R35x_v20091214,"org.eclipse.equinox.frameworkadmin.equinox",1328386903166
|
||||
started,bundle,org.eclipse.equinox.p2.core,1.0.101.R35x_v20090819,"org.eclipse.equinox.p2.core",1328386903167
|
||||
started,bundle,org.eclipse.equinox.p2.director,1.0.101.R35x_v20100112,"org.eclipse.equinox.p2.director",1328386903168
|
||||
started,bundle,org.eclipse.equinox.p2.directorywatcher,1.0.100.v20090525,"org.eclipse.equinox.p2.directorywatcher",1328386903168
|
||||
started,bundle,org.eclipse.equinox.p2.engine,1.0.102.R35x_v20091117,"org.eclipse.equinox.p2.engine",1328386903169
|
||||
started,bundle,org.eclipse.equinox.p2.exemplarysetup,1.0.100.v20090520-1905,"org.eclipse.equinox.p2.exemplarysetup",1328386903169
|
||||
started,bundle,org.eclipse.equinox.p2.garbagecollector,1.0.100.v20090520-1905,"org.eclipse.equinox.p2.garbagecollector",1328386903170
|
||||
started,bundle,org.eclipse.equinox.p2.metadata,1.0.101.R35x_v20100112,"org.eclipse.equinox.p2.metadata",1328386903170
|
||||
started,bundle,org.eclipse.equinox.p2.metadata.repository,1.0.101.R35x_v20090812,"org.eclipse.equinox.p2.metadata.repository",1328386903171
|
||||
started,bundle,org.eclipse.equinox.p2.reconciler.dropins,1.0.100.v20090520-1905,"org.eclipse.equinox.p2.reconciler.dropins",1328386903171
|
||||
started,bundle,org.eclipse.equinox.p2.repository,1.0.1.R35x_v20100105,"org.eclipse.equinox.p2.repository",1328386903172
|
||||
started,bundle,org.eclipse.equinox.p2.ui.sdk.scheduler,1.0.0.v20090520-1905,"org.eclipse.equinox.p2.ui.sdk.scheduler",1328386903172
|
||||
started,bundle,org.eclipse.equinox.p2.updatechecker,1.1.0.v20090520-1905,"org.eclipse.equinox.p2.updatechecker",1328386903172
|
||||
started,bundle,org.eclipse.equinox.preferences,3.2.301.R35x_v20091117,"org.eclipse.equinox.preferences",1328386903175
|
||||
started,bundle,org.eclipse.equinox.registry,3.4.100.v20090520-1800,"org.eclipse.equinox.registry",1328386903176
|
||||
started,bundle,org.eclipse.equinox.security,1.0.100.v20090520-1800,"org.eclipse.equinox.security",1328386903177
|
||||
started,bundle,org.eclipse.equinox.simpleconfigurator.manipulator,1.0.101.R35x_v20100209,"org.eclipse.equinox.simpleconfigurator.manipulator",1328386903177
|
||||
started,bundle,org.eclipse.equinox.util,1.0.100.v20090520-1800,"org.eclipse.equinox.util",1328386903178
|
||||
started,bundle,org.eclipse.help,3.4.1.v20090805_35x,"org.eclipse.help",1328386903179
|
||||
started,bundle,org.eclipse.jface,3.5.2.M20100120-0800,"org.eclipse.jface",1328386903179
|
||||
started,bundle,org.eclipse.jsch.core,1.1.100.I20090430-0408,"org.eclipse.jsch.core",1328386903180
|
||||
started,bundle,org.eclipse.ltk.core.refactoring,3.5.0.v20090513-2000,"org.eclipse.ltk.core.refactoring",1328386903180
|
||||
started,bundle,org.eclipse.mylyn.bugzilla.core,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.bugzilla.core",1328386903181
|
||||
started,bundle,org.eclipse.mylyn.bugzilla.ui,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.bugzilla.ui",1328386903181
|
||||
started,bundle,org.eclipse.mylyn.commons.net,3.2.0.v20090617-0100-e3x,"org.eclipse.mylyn.commons.net",1328386903182
|
||||
started,bundle,org.eclipse.mylyn.commons.ui,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.commons.ui",1328386903183
|
||||
started,bundle,org.eclipse.mylyn.context.core,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.context.core",1328386903183
|
||||
started,bundle,org.eclipse.mylyn.context.ui,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.context.ui",1328386903184
|
||||
started,bundle,org.eclipse.mylyn.monitor.ui,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.monitor.ui",1328386903185
|
||||
started,bundle,org.eclipse.mylyn.tasks.ui,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.tasks.ui",1328386903186
|
||||
started,bundle,org.eclipse.mylyn.team.ui,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.team.ui",1328386903186
|
||||
started,bundle,org.eclipse.team.core,3.5.1.r35x_20100113-0800,"org.eclipse.team.core",1328386903187
|
||||
started,bundle,org.eclipse.team.cvs.core,3.3.200.I20090430-0408,"org.eclipse.team.cvs.core",1328386903188
|
||||
started,bundle,org.eclipse.team.cvs.ui,3.3.202.r35x_20090930-0800,"org.eclipse.team.cvs.ui",1328386903189
|
||||
started,bundle,org.eclipse.team.ui,3.5.0.I20090430-0408,"org.eclipse.team.ui",1328386903189
|
||||
started,bundle,org.eclipse.ui,3.5.2.M20100120-0800,"org.eclipse.ui",1328386903191
|
||||
started,bundle,org.eclipse.ui.console,3.4.0.v20090513,"org.eclipse.ui.console",1328386903191
|
||||
started,bundle,org.eclipse.ui.editors,3.5.0.v20090527-2000,"org.eclipse.ui.editors",1328386903195
|
||||
started,bundle,org.eclipse.ui.forms,3.4.1.v20090714_35x,"org.eclipse.ui.forms",1328386903196
|
||||
started,bundle,org.eclipse.ui.ide,3.5.2.M20100113-0800,"org.eclipse.ui.ide",1328386903198
|
||||
started,bundle,org.eclipse.ui.intro,3.3.2.v20100111_35x,"org.eclipse.ui.intro",1328386903198
|
||||
started,bundle,org.eclipse.ui.intro.universal,3.2.300.v20090526,"org.eclipse.ui.intro.universal",1328386903198
|
||||
started,bundle,org.eclipse.ui.navigator,3.4.2.M20100120-0800,"org.eclipse.ui.navigator",1328386903199
|
||||
started,bundle,org.eclipse.ui.navigator.resources,3.4.1.M20090826-0800,"org.eclipse.ui.navigator.resources",1328386903200
|
||||
started,bundle,org.eclipse.ui.net,1.2.1.r35x_20090812-1200,"org.eclipse.ui.net",1328386903200
|
||||
started,bundle,org.eclipse.ui.views,3.4.1.M20090826-0800,"org.eclipse.ui.views",1328386903201
|
||||
started,bundle,org.eclipse.ui.workbench,3.5.2.M20100113-0800,"org.eclipse.ui.workbench",1328386903202
|
||||
started,bundle,org.eclipse.ui.workbench.texteditor,3.5.1.r352_v20100105,"org.eclipse.ui.workbench.texteditor",1328386903203
|
||||
started,bundle,org.eclipse.update.configurator,3.3.0.v20090312,"org.eclipse.update.configurator",1328386903207
|
||||
started,bundle,org.eclipse.update.core,3.2.300.v20090525,"org.eclipse.update.core",1328386903209
|
||||
started,bundle,org.eclipse.update.scheduler,3.2.200.v20081127,"org.eclipse.update.scheduler",1328386903210
|
||||
started,bundle,org.eclipse.jdt.core,3.5.2.v_981_R35x,"org.eclipse.jdt.core",1328386903211
|
||||
started,bundle,org.eclipse.jdt.core.manipulation,1.3.0.v20090603,"org.eclipse.jdt.core.manipulation",1328386903212
|
||||
started,bundle,org.eclipse.jdt.ui,3.5.2.r352_v20100106-0800,"org.eclipse.jdt.ui",1328386903218
|
||||
os,sysinfo,,,"macosx",1328386903226
|
||||
arch,sysinfo,,,"x86_64",1328386903226
|
||||
ws,sysinfo,,,"cocoa",1328386903226
|
||||
locale,sysinfo,,,"en_US",1328386903226
|
||||
processors,sysinfo,,,"4",1328386903226
|
||||
java.runtime.name,sysinfo,,,"Java(TM) SE Runtime Environment",1328386903226
|
||||
java.runtime.version,sysinfo,,,"1.6.0_29-b11-402-11M3527",1328386903227
|
||||
java.specification.name,sysinfo,,,"Java Platform API Specification",1328386903227
|
||||
java.specification.vendor,sysinfo,,,"Sun Microsystems Inc.",1328386903227
|
||||
java.specification.version,sysinfo,,,"1.6",1328386903227
|
||||
java.vendor,sysinfo,,,"Apple Inc.",1328386903227
|
||||
java.version,sysinfo,,,"1.6.0_29",1328386903227
|
||||
java.vm.info,sysinfo,,,"mixed mode",1328386903227
|
||||
java.vm.name,sysinfo,,,"Java HotSpot(TM) 64-Bit Server VM",1328386903227
|
||||
java.vm.specification.name,sysinfo,,,"Java Virtual Machine Specification",1328386903227
|
||||
java.vm.specification.vendor,sysinfo,,,"Sun Microsystems Inc.",1328386903227
|
||||
java.vm.specification.version,sysinfo,,,"1.0",1328386903227
|
||||
java.vm.vendor,sysinfo,,,"Apple Inc.",1328386903227
|
||||
java.vm.version,sysinfo,,,"20.4-b02-402",1328386903227
|
||||
started,bundle,org.eclipse.equinox.p2.extensionlocation,1.0.100.v20090520-1905,"org.eclipse.equinox.p2.extensionlocation",1328386903389
|
||||
started,bundle,org.eclipse.equinox.p2.artifact.repository,1.0.101.R35x_v20090721,"org.eclipse.equinox.p2.artifact.repository",1328386903414
|
||||
started,bundle,org.eclipse.equinox.p2.publisher,1.0.1.R35x_20100105,"org.eclipse.equinox.p2.publisher",1328386903450
|
||||
started,bundle,org.eclipse.equinox.p2.touchpoint.eclipse,1.0.101.R35x_20090820-1821,"org.eclipse.equinox.p2.touchpoint.eclipse",1328386903464
|
||||
activated,workbench,org.eclipse.ui.workbench,3.5.2.M20100113-0800,"",1328386903480
|
||||
activated,view,org.eclipse.ui,3.5.2.M20100120-0800,"org.eclipse.ui.internal.introview",1328386903487
|
||||
error,log,,,"/Users/jcotton81/Documents/Programming/eclipse/Eclipse.app/Contents/MacOS/introData.xml (No such file or directory)",1328386904897
|
||||
deactivated,workbench,org.eclipse.ui.workbench,3.5.2.M20100113-0800,"",1328386905209
|
||||
activated,workbench,org.eclipse.ui.workbench,3.5.2.M20100113-0800,"",1328386906797
|
||||
started,bundle,org.eclipse.equinox.p2.updatesite,1.0.101.R35x_20100105,"org.eclipse.equinox.p2.updatesite",1328386912464
|
||||
activated,view,org.eclipse.ui.navigator.resources,3.4.1.M20090826-0800,"org.eclipse.ui.navigator.ProjectExplorer",1328386912583
|
||||
activated,view,org.eclipse.ui.navigator.resources,3.4.1.M20090826-0800,"org.eclipse.ui.navigator.ProjectExplorer",1328386912596
|
||||
closed,view,org.eclipse.ui,3.5.2.M20100120-0800,"org.eclipse.ui.internal.introview",1328386912607
|
||||
started,bundle,org.eclipse.equinox.p2.ui,1.0.101.R35x_v20090819,"org.eclipse.equinox.p2.ui",1328386912856
|
||||
started,bundle,org.eclipse.equinox.p2.ui.sdk,1.0.100.v20090520-1905,"org.eclipse.equinox.p2.ui.sdk",1328386912895
|
||||
deactivated,workbench,org.eclipse.ui.workbench,3.5.2.M20100113-0800,"",1328386920116
|
||||
activated,workbench,org.eclipse.ui.workbench,3.5.2.M20100113-0800,"",1328387108087
|
||||
deactivated,workbench,org.eclipse.ui.workbench,3.5.2.M20100113-0800,"",1328387114332
|
||||
activated,workbench,org.eclipse.ui.workbench,3.5.2.M20100113-0800,"",1328387670491
|
||||
deactivated,workbench,org.eclipse.ui.workbench,3.5.2.M20100113-0800,"",1328387680147
|
||||
activated,workbench,org.eclipse.ui.workbench,3.5.2.M20100113-0800,"",1328389984496
|
||||
deactivated,workbench,org.eclipse.ui.workbench,3.5.2.M20100113-0800,"",1328389985341
|
||||
activated,workbench,org.eclipse.ui.workbench,3.5.2.M20100113-0800,"",1328390196855
|
||||
deactivated,workbench,org.eclipse.ui.workbench,3.5.2.M20100113-0800,"",1328390210754
|
||||
started,bundle,com.android.ide.eclipse.ddms,10.0.1.v201103111512-110841,"com.android.ide.eclipse.ddms",1328390214192
|
||||
started,bundle,org.eclipse.wst.sse.core,1.1.402.v201001251516,"org.eclipse.wst.sse.core",1328390214246
|
||||
started,bundle,com.android.ide.eclipse.adt,10.0.1.v201103111512-110841,"com.android.ide.eclipse.adt",1328390214248
|
||||
started,bundle,org.eclipse.ltk.ui.refactoring,3.4.101.r352_v20100209,"org.eclipse.ltk.ui.refactoring",1328390214467
|
||||
activated,workbench,org.eclipse.ui.workbench,3.5.2.M20100113-0800,"",1328390455517
|
||||
deactivated,workbench,org.eclipse.ui.workbench,3.5.2.M20100113-0800,"",1328390462855
|
||||
activated,workbench,org.eclipse.ui.workbench,3.5.2.M20100113-0800,"",1328390470613
|
||||
opened,view,org.eclipse.jdt.ui,3.5.2.r352_v20100106-0800,"org.eclipse.jdt.ui.PackageExplorer",1328390470944
|
||||
started,bundle,org.eclipse.search,3.5.1.r351_v20090708-0800,"org.eclipse.search",1328390471037
|
||||
opened,view,org.eclipse.mylyn.tasks.ui,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.tasks.ui.views.tasks",1328390471127
|
||||
activated,perspective,org.eclipse.jdt.ui,3.5.2.r352_v20100106-0800,"org.eclipse.jdt.ui.JavaPerspective",1328390471151
|
||||
activated,view,org.eclipse.ui.ide,3.5.2.M20100113-0800,"org.eclipse.ui.views.ProblemView",1328390471175
|
||||
executed,command,org.eclipse.ui,3.5.2.M20100120-0800,"org.eclipse.ui.perspectives.showPerspective",1328390471213
|
||||
executed,command,org.eclipse.ui,3.5.2.M20100120-0800,"org.eclipse.ui.perspectives.showPerspective",1328390471213
|
||||
opened,view,org.eclipse.jdt.ui,3.5.2.r352_v20100106-0800,"org.eclipse.jdt.ui.JavadocView",1328390474490
|
||||
activated,view,org.eclipse.jdt.ui,3.5.2.r352_v20100106-0800,"org.eclipse.jdt.ui.JavadocView",1328390474500
|
||||
opened,view,org.eclipse.jdt.ui,3.5.2.r352_v20100106-0800,"org.eclipse.jdt.ui.SourceView",1328390475141
|
||||
activated,view,org.eclipse.jdt.ui,3.5.2.r352_v20100106-0800,"org.eclipse.jdt.ui.SourceView",1328390475161
|
||||
activated,view,org.eclipse.jdt.ui,3.5.2.r352_v20100106-0800,"org.eclipse.jdt.ui.JavadocView",1328390475451
|
||||
activated,view,org.eclipse.ui.ide,3.5.2.M20100113-0800,"org.eclipse.ui.views.ProblemView",1328390475842
|
||||
closed,workbench,org.eclipse.ui.workbench,3.5.2.M20100113-0800,"",1328390485206
|
||||
stopped,bundle,org.eclipse.cdt.debug.mi.ui,6.0.0.201002161416,"org.eclipse.cdt.debug.mi.ui",1328390485703
|
||||
stopped,bundle,org.eclipse.cdt.debug.gdbjtag.ui,5.0.100.201002161416,"org.eclipse.cdt.debug.gdbjtag.ui",1328390485704
|
||||
stopped,bundle,org.eclipse.cdt.debug.gdbjtag.core,5.0.100.201002161416,"org.eclipse.cdt.debug.gdbjtag.core",1328390485704
|
||||
stopped,bundle,org.eclipse.cdt.debug.mi.core,6.0.0.201002161416,"org.eclipse.cdt.debug.mi.core",1328390485705
|
||||
stopped,bundle,org.eclipse.cdt.dsf.gdb.ui,2.0.0.201002161416,"org.eclipse.cdt.dsf.gdb.ui",1328390485706
|
||||
stopped,bundle,org.eclipse.cdt.dsf.ui,2.0.1.201002161416,"org.eclipse.cdt.dsf.ui",1328390485707
|
||||
stopped,bundle,org.eclipse.cdt.launch,6.0.0.201002161416,"org.eclipse.cdt.launch",1328390485707
|
||||
stopped,bundle,org.eclipse.cdt.debug.ui,6.0.0.201002161416,"org.eclipse.cdt.debug.ui",1328390485708
|
||||
stopped,bundle,org.eclipse.cdt.dsf.gdb,2.0.0.201002161416,"org.eclipse.cdt.dsf.gdb",1328390485709
|
||||
stopped,bundle,org.eclipse.cdt.dsf,2.0.0.201002161416,"org.eclipse.cdt.dsf",1328390485709
|
||||
stopped,bundle,org.eclipse.cdt.debug.core,6.0.0.201002161416,"org.eclipse.cdt.debug.core",1328390485710
|
||||
stopped,bundle,org.eclipse.cdt.managedbuilder.ui,5.1.0.201002161416,"org.eclipse.cdt.managedbuilder.ui",1328390485710
|
||||
stopped,bundle,org.eclipse.cdt.make.ui,6.0.1.201002161416,"org.eclipse.cdt.make.ui",1328390485711
|
||||
stopped,bundle,org.eclipse.cdt.managedbuilder.gnu.ui,5.0.100.201002161416,"org.eclipse.cdt.managedbuilder.gnu.ui",1328390485711
|
||||
stopped,bundle,org.eclipse.cdt.managedbuilder.core,6.0.0.201002161416,"org.eclipse.cdt.managedbuilder.core",1328390485712
|
||||
stopped,bundle,org.eclipse.cdt.make.core,6.0.0.201002161416,"org.eclipse.cdt.make.core",1328390485713
|
||||
stopped,bundle,org.eclipse.cdt.mylyn.ui,1.0.100.201002161416,"org.eclipse.cdt.mylyn.ui",1328390485713
|
||||
stopped,bundle,org.eclipse.cdt.ui,5.1.2.201002161416,"org.eclipse.cdt.ui",1328390485713
|
||||
stopped,bundle,org.eclipse.cdt.core,5.1.2.201002161416,"org.eclipse.cdt.core",1328390485714
|
||||
stopped,bundle,org.eclipse.mylyn.bugzilla.ui,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.bugzilla.ui",1328390485714
|
||||
stopped,bundle,org.eclipse.mylyn.ide.ui,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.ide.ui",1328390485714
|
||||
stopped,bundle,org.eclipse.mylyn.team.ui,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.team.ui",1328390485715
|
||||
stopped,bundle,org.eclipse.mylyn.resources.ui,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.resources.ui",1328390485715
|
||||
stopped,bundle,org.eclipse.mylyn.wikitext.tasks.ui,1.1.3.v20100217-0100-e3x,"org.eclipse.mylyn.wikitext.tasks.ui",1328390485716
|
||||
stopped,bundle,org.eclipse.mylyn.context.ui,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.context.ui",1328390485716
|
||||
stopped,bundle,org.eclipse.mylyn.help.ui,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.help.ui",1328390485716
|
||||
stopped,bundle,org.eclipse.mylyn.tasks.bugs,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.tasks.bugs",1328390485717
|
||||
stopped,bundle,org.eclipse.mylyn.tasks.ui,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.tasks.ui",1328390485719
|
||||
stopped,bundle,org.eclipse.ant.ui,3.4.2.v20091204_r352,"org.eclipse.ant.ui",1328390485719
|
||||
stopped,bundle,com.android.ide.eclipse.adt,10.0.1.v201103111512-110841,"com.android.ide.eclipse.adt",1328390485719
|
||||
stopped,bundle,org.eclipse.jdt.junit,3.5.2.r352_v20100113-0800,"org.eclipse.jdt.junit",1328390485720
|
||||
stopped,bundle,org.eclipse.jdt.debug.ui,3.4.1.v20090811_r351,"org.eclipse.jdt.debug.ui",1328390485721
|
||||
stopped,bundle,org.eclipse.jdt.apt.ui,3.3.200.v20090930-2100_R35x,"org.eclipse.jdt.apt.ui",1328390485722
|
||||
stopped,bundle,org.eclipse.jdt.ui,3.5.2.r352_v20100106-0800,"org.eclipse.jdt.ui",1328390485726
|
||||
stopped,bundle,org.eclipse.wst.dtd.ui,1.0.400.v200904300717,"org.eclipse.wst.dtd.ui",1328390485730
|
||||
stopped,bundle,org.eclipse.wst.xsd.ui,1.2.204.v200909021537,"org.eclipse.wst.xsd.ui",1328390485747
|
||||
stopped,bundle,org.eclipse.wst.xml.ui,1.1.2.v201001222130,"org.eclipse.wst.xml.ui",1328390485747
|
||||
stopped,bundle,org.eclipse.wst.common.ui,1.1.402.v200901262305,"org.eclipse.wst.common.ui",1328390485748
|
||||
stopped,bundle,org.eclipse.wst.sse.ui,1.1.102.v200910200227,"org.eclipse.wst.sse.ui",1328390485749
|
||||
stopped,bundle,org.eclipse.search,3.5.1.r351_v20090708-0800,"org.eclipse.search",1328390485750
|
||||
stopped,bundle,org.eclipse.ltk.ui.refactoring,3.4.101.r352_v20100209,"org.eclipse.ltk.ui.refactoring",1328390485750
|
||||
stopped,bundle,org.eclipse.team.cvs.ui,3.3.202.r35x_20090930-0800,"org.eclipse.team.cvs.ui",1328390485751
|
||||
stopped,bundle,org.eclipse.team.ui,3.5.0.I20090430-0408,"org.eclipse.team.ui",1328390485751
|
||||
stopped,bundle,org.eclipse.compare,3.5.2.r35x_20100113-0800,"org.eclipse.compare",1328390485752
|
||||
stopped,bundle,org.eclipse.ui.externaltools,3.2.0.v20090504,"org.eclipse.ui.externaltools",1328390485753
|
||||
stopped,bundle,org.eclipse.debug.ui,3.5.2.v20091028_r352,"org.eclipse.debug.ui",1328390485756
|
||||
stopped,bundle,org.eclipse.mylyn.wikitext.ui,1.1.3.v20100217-0100-e3x,"org.eclipse.mylyn.wikitext.ui",1328390485757
|
||||
stopped,bundle,com.android.ide.eclipse.hierarchyviewer,10.0.1.v201103111512-110841,"com.android.ide.eclipse.hierarchyviewer",1328390485757
|
||||
stopped,bundle,com.android.ide.eclipse.ddms,10.0.1.v201103111512-110841,"com.android.ide.eclipse.ddms",1328390485757
|
||||
stopped,bundle,org.eclipse.ui.console,3.4.0.v20090513,"org.eclipse.ui.console",1328390485757
|
||||
stopped,bundle,org.eclipse.mylyn.commons.ui,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.commons.ui",1328390485757
|
||||
stopped,bundle,org.eclipse.ui.editors,3.5.0.v20090527-2000,"org.eclipse.ui.editors",1328390485758
|
||||
stopped,bundle,org.eclipse.ui.navigator.resources,3.4.1.M20090826-0800,"org.eclipse.ui.navigator.resources",1328390485758
|
||||
activated,perspective,org.eclipse.jdt.ui,,"org.eclipse.jdt.ui.JavaPerspective",1328390616647
|
||||
started,bundle,org.eclipse.osgi,3.5.2.R35x_v20100126,"org.eclipse.osgi",1328390616648
|
||||
started,bundle,org.eclipse.equinox.simpleconfigurator,1.0.101.R35x_v20090807-1100,"org.eclipse.equinox.simpleconfigurator",1328390616653
|
||||
started,bundle,com.ibm.icu,4.0.1.v20090822,"com.ibm.icu",1328390616654
|
||||
started,bundle,org.eclipse.core.contenttype,3.4.1.R35x_v20090826-0451,"org.eclipse.core.contenttype",1328390616654
|
||||
started,bundle,org.eclipse.core.databinding.observable,1.2.0.M20090902-0800,"org.eclipse.core.databinding.observable",1328390616655
|
||||
started,bundle,org.eclipse.core.expressions,3.4.101.R35x_v20100209,"org.eclipse.core.expressions",1328390616656
|
||||
started,bundle,org.eclipse.core.filebuffers,3.5.0.v20090526-2000,"org.eclipse.core.filebuffers",1328390616656
|
||||
started,bundle,org.eclipse.core.jobs,3.4.100.v20090429-1800,"org.eclipse.core.jobs",1328390616656
|
||||
started,bundle,org.eclipse.core.net,1.2.1.r35x_20090812-1200,"org.eclipse.core.net",1328390616657
|
||||
started,bundle,org.eclipse.core.resources,3.5.2.R35x_v20091203-1235,"org.eclipse.core.resources",1328390616658
|
||||
started,bundle,org.eclipse.core.runtime,3.5.0.v20090525,"org.eclipse.core.runtime",1328390616659
|
||||
started,bundle,org.eclipse.core.runtime.compatibility,3.2.0.v20090413,"org.eclipse.core.runtime.compatibility",1328390616659
|
||||
started,bundle,org.eclipse.core.runtime.compatibility.auth,3.2.100.v20090413,"org.eclipse.core.runtime.compatibility.auth",1328390616660
|
||||
started,bundle,org.eclipse.ecf,3.0.0.v20090831-1906,"org.eclipse.ecf",1328390616660
|
||||
started,bundle,org.eclipse.ecf.filetransfer,3.0.0.v20090831-1906,"org.eclipse.ecf.filetransfer",1328390616661
|
||||
started,bundle,org.eclipse.ecf.identity,3.0.0.v20090831-1906,"org.eclipse.ecf.identity",1328390616662
|
||||
started,bundle,org.eclipse.ecf.provider.filetransfer,3.0.1.v20090831-1906,"org.eclipse.ecf.provider.filetransfer",1328390616663
|
||||
started,bundle,org.eclipse.ecf.provider.filetransfer.httpclient,3.0.1.v20090831-1906,"org.eclipse.ecf.provider.filetransfer.httpclient",1328390616663
|
||||
started,bundle,org.eclipse.epp.usagedata.gathering,1.1.1.R201001291118,"org.eclipse.epp.usagedata.gathering",1328390616664
|
||||
started,bundle,org.eclipse.epp.usagedata.recording,1.1.1.R201001291118,"org.eclipse.epp.usagedata.recording",1328390616668
|
||||
started,bundle,org.eclipse.equinox.app,1.2.1.R35x_v20091203,"org.eclipse.equinox.app",1328390616676
|
||||
started,bundle,org.eclipse.equinox.common,3.5.1.R35x_v20090807-1100,"org.eclipse.equinox.common",1328390616676
|
||||
started,bundle,org.eclipse.equinox.ds,1.1.1.R35x_v20090806,"org.eclipse.equinox.ds",1328390616677
|
||||
started,bundle,org.eclipse.equinox.frameworkadmin,1.0.100.v20090520-1905,"org.eclipse.equinox.frameworkadmin",1328390616679
|
||||
started,bundle,org.eclipse.equinox.frameworkadmin.equinox,1.0.101.R35x_v20091214,"org.eclipse.equinox.frameworkadmin.equinox",1328390616680
|
||||
started,bundle,org.eclipse.equinox.p2.core,1.0.101.R35x_v20090819,"org.eclipse.equinox.p2.core",1328390616681
|
||||
started,bundle,org.eclipse.equinox.p2.director,1.0.101.R35x_v20100112,"org.eclipse.equinox.p2.director",1328390616682
|
||||
started,bundle,org.eclipse.equinox.p2.directorywatcher,1.0.100.v20090525,"org.eclipse.equinox.p2.directorywatcher",1328390616688
|
||||
started,bundle,org.eclipse.equinox.p2.engine,1.0.102.R35x_v20091117,"org.eclipse.equinox.p2.engine",1328390616689
|
||||
started,bundle,org.eclipse.equinox.p2.exemplarysetup,1.0.100.v20090520-1905,"org.eclipse.equinox.p2.exemplarysetup",1328390616690
|
||||
started,bundle,org.eclipse.equinox.p2.garbagecollector,1.0.100.v20090520-1905,"org.eclipse.equinox.p2.garbagecollector",1328390616691
|
||||
started,bundle,org.eclipse.equinox.p2.metadata,1.0.101.R35x_v20100112,"org.eclipse.equinox.p2.metadata",1328390616692
|
||||
started,bundle,org.eclipse.equinox.p2.metadata.repository,1.0.101.R35x_v20090812,"org.eclipse.equinox.p2.metadata.repository",1328390616692
|
||||
started,bundle,org.eclipse.equinox.p2.reconciler.dropins,1.0.100.v20090520-1905,"org.eclipse.equinox.p2.reconciler.dropins",1328390616693
|
||||
started,bundle,org.eclipse.equinox.p2.repository,1.0.1.R35x_v20100105,"org.eclipse.equinox.p2.repository",1328390616693
|
||||
started,bundle,org.eclipse.equinox.p2.ui.sdk.scheduler,1.0.0.v20090520-1905,"org.eclipse.equinox.p2.ui.sdk.scheduler",1328390616694
|
||||
started,bundle,org.eclipse.equinox.p2.updatechecker,1.1.0.v20090520-1905,"org.eclipse.equinox.p2.updatechecker",1328390616695
|
||||
started,bundle,org.eclipse.equinox.preferences,3.2.301.R35x_v20091117,"org.eclipse.equinox.preferences",1328390616695
|
||||
started,bundle,org.eclipse.equinox.registry,3.4.100.v20090520-1800,"org.eclipse.equinox.registry",1328390616696
|
||||
started,bundle,org.eclipse.equinox.security,1.0.100.v20090520-1800,"org.eclipse.equinox.security",1328390616697
|
||||
started,bundle,org.eclipse.equinox.simpleconfigurator.manipulator,1.0.101.R35x_v20100209,"org.eclipse.equinox.simpleconfigurator.manipulator",1328390616697
|
||||
started,bundle,org.eclipse.equinox.util,1.0.100.v20090520-1800,"org.eclipse.equinox.util",1328390616698
|
||||
started,bundle,org.eclipse.help,3.4.1.v20090805_35x,"org.eclipse.help",1328390616698
|
||||
started,bundle,org.eclipse.jface,3.5.2.M20100120-0800,"org.eclipse.jface",1328390616699
|
||||
started,bundle,org.eclipse.jsch.core,1.1.100.I20090430-0408,"org.eclipse.jsch.core",1328390616705
|
||||
started,bundle,org.eclipse.mylyn.bugzilla.core,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.bugzilla.core",1328390616705
|
||||
started,bundle,org.eclipse.mylyn.bugzilla.ui,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.bugzilla.ui",1328390616706
|
||||
started,bundle,org.eclipse.mylyn.commons.net,3.2.0.v20090617-0100-e3x,"org.eclipse.mylyn.commons.net",1328390616706
|
||||
started,bundle,org.eclipse.mylyn.commons.ui,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.commons.ui",1328390616707
|
|
@ -1,83 +0,0 @@
|
||||
what,kind,bundleId,bundleVersion,description,time
|
||||
started,bundle,org.eclipse.mylyn.context.core,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.context.core",1328390616707
|
||||
started,bundle,org.eclipse.mylyn.context.ui,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.context.ui",1328390616708
|
||||
started,bundle,org.eclipse.mylyn.monitor.ui,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.monitor.ui",1328390616708
|
||||
started,bundle,org.eclipse.mylyn.tasks.ui,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.tasks.ui",1328390616709
|
||||
started,bundle,org.eclipse.mylyn.team.ui,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.team.ui",1328390616710
|
||||
started,bundle,org.eclipse.search,3.5.1.r351_v20090708-0800,"org.eclipse.search",1328390616711
|
||||
started,bundle,org.eclipse.team.core,3.5.1.r35x_20100113-0800,"org.eclipse.team.core",1328390616712
|
||||
started,bundle,org.eclipse.team.cvs.core,3.3.200.I20090430-0408,"org.eclipse.team.cvs.core",1328390616712
|
||||
started,bundle,org.eclipse.team.cvs.ui,3.3.202.r35x_20090930-0800,"org.eclipse.team.cvs.ui",1328390616713
|
||||
started,bundle,org.eclipse.team.ui,3.5.0.I20090430-0408,"org.eclipse.team.ui",1328390616714
|
||||
started,bundle,org.eclipse.ui,3.5.2.M20100120-0800,"org.eclipse.ui",1328390616715
|
||||
started,bundle,org.eclipse.ui.console,3.4.0.v20090513,"org.eclipse.ui.console",1328390616716
|
||||
started,bundle,org.eclipse.ui.editors,3.5.0.v20090527-2000,"org.eclipse.ui.editors",1328390616717
|
||||
started,bundle,org.eclipse.ui.forms,3.4.1.v20090714_35x,"org.eclipse.ui.forms",1328390616717
|
||||
started,bundle,org.eclipse.ui.ide,3.5.2.M20100113-0800,"org.eclipse.ui.ide",1328390616718
|
||||
started,bundle,org.eclipse.ui.net,1.2.1.r35x_20090812-1200,"org.eclipse.ui.net",1328390616719
|
||||
started,bundle,org.eclipse.ui.views,3.4.1.M20090826-0800,"org.eclipse.ui.views",1328390616720
|
||||
started,bundle,org.eclipse.ui.workbench,3.5.2.M20100113-0800,"org.eclipse.ui.workbench",1328390616720
|
||||
started,bundle,org.eclipse.ui.workbench.texteditor,3.5.1.r352_v20100105,"org.eclipse.ui.workbench.texteditor",1328390616721
|
||||
started,bundle,org.eclipse.update.configurator,3.3.0.v20090312,"org.eclipse.update.configurator",1328390616722
|
||||
started,bundle,org.eclipse.update.core,3.2.300.v20090525,"org.eclipse.update.core",1328390616722
|
||||
started,bundle,org.eclipse.update.scheduler,3.2.200.v20081127,"org.eclipse.update.scheduler",1328390616723
|
||||
started,bundle,org.eclipse.jdt.core,3.5.2.v_981_R35x,"org.eclipse.jdt.core",1328390616724
|
||||
started,bundle,org.eclipse.jdt.core.manipulation,1.3.0.v20090603,"org.eclipse.jdt.core.manipulation",1328390616725
|
||||
started,bundle,org.eclipse.jdt.ui,3.5.2.r352_v20100106-0800,"org.eclipse.jdt.ui",1328390616730
|
||||
os,sysinfo,,,"macosx",1328390616740
|
||||
arch,sysinfo,,,"x86_64",1328390616740
|
||||
ws,sysinfo,,,"cocoa",1328390616740
|
||||
locale,sysinfo,,,"en_US",1328390616740
|
||||
processors,sysinfo,,,"4",1328390616740
|
||||
java.runtime.name,sysinfo,,,"Java(TM) SE Runtime Environment",1328390616740
|
||||
java.runtime.version,sysinfo,,,"1.6.0_29-b11-402-11M3527",1328390616740
|
||||
java.specification.name,sysinfo,,,"Java Platform API Specification",1328390616740
|
||||
java.specification.vendor,sysinfo,,,"Sun Microsystems Inc.",1328390616740
|
||||
java.specification.version,sysinfo,,,"1.6",1328390616740
|
||||
java.vendor,sysinfo,,,"Apple Inc.",1328390616740
|
||||
java.version,sysinfo,,,"1.6.0_29",1328390616740
|
||||
java.vm.info,sysinfo,,,"mixed mode",1328390616740
|
||||
java.vm.name,sysinfo,,,"Java HotSpot(TM) 64-Bit Server VM",1328390616740
|
||||
java.vm.specification.name,sysinfo,,,"Java Virtual Machine Specification",1328390616740
|
||||
java.vm.specification.vendor,sysinfo,,,"Sun Microsystems Inc.",1328390616740
|
||||
java.vm.specification.version,sysinfo,,,"1.0",1328390616740
|
||||
java.vm.vendor,sysinfo,,,"Apple Inc.",1328390616740
|
||||
java.vm.version,sysinfo,,,"20.4-b02-402",1328390616740
|
||||
started,bundle,org.eclipse.equinox.p2.extensionlocation,1.0.100.v20090520-1905,"org.eclipse.equinox.p2.extensionlocation",1328390616768
|
||||
started,bundle,org.eclipse.equinox.p2.artifact.repository,1.0.101.R35x_v20090721,"org.eclipse.equinox.p2.artifact.repository",1328390616783
|
||||
started,bundle,org.eclipse.equinox.p2.publisher,1.0.1.R35x_20100105,"org.eclipse.equinox.p2.publisher",1328390616808
|
||||
started,bundle,org.eclipse.equinox.p2.touchpoint.eclipse,1.0.101.R35x_20090820-1821,"org.eclipse.equinox.p2.touchpoint.eclipse",1328390616820
|
||||
deactivated,workbench,org.eclipse.ui.workbench,3.5.2.M20100113-0800,"",1328390619481
|
||||
started,bundle,org.eclipse.equinox.p2.updatesite,1.0.101.R35x_20100105,"org.eclipse.equinox.p2.updatesite",1328390623001
|
||||
started,bundle,org.eclipse.equinox.p2.ui,1.0.101.R35x_v20090819,"org.eclipse.equinox.p2.ui",1328390623371
|
||||
started,bundle,org.eclipse.equinox.p2.ui.sdk,1.0.100.v20090520-1905,"org.eclipse.equinox.p2.ui.sdk",1328390623409
|
||||
started,bundle,org.eclipse.core.filesystem,1.2.1.R35x_v20091203-1235,"org.eclipse.core.filesystem",1328390630622
|
||||
activated,workbench,org.eclipse.ui.workbench,3.5.2.M20100113-0800,"",1328390659248
|
||||
executed,command,org.eclipse.ui,3.5.2.M20100120-0800,"org.eclipse.ui.file.import",1328390659277
|
||||
closed,workbench,org.eclipse.ui.workbench,3.5.2.M20100113-0800,"",1328390663881
|
||||
stopped,bundle,org.eclipse.cdt.debug.mi.ui,6.0.0.201002161416,"org.eclipse.cdt.debug.mi.ui",1328390664441
|
||||
stopped,bundle,org.eclipse.cdt.debug.gdbjtag.ui,5.0.100.201002161416,"org.eclipse.cdt.debug.gdbjtag.ui",1328390664442
|
||||
stopped,bundle,org.eclipse.cdt.debug.gdbjtag.core,5.0.100.201002161416,"org.eclipse.cdt.debug.gdbjtag.core",1328390664442
|
||||
stopped,bundle,org.eclipse.cdt.debug.mi.core,6.0.0.201002161416,"org.eclipse.cdt.debug.mi.core",1328390664443
|
||||
stopped,bundle,org.eclipse.cdt.dsf.gdb.ui,2.0.0.201002161416,"org.eclipse.cdt.dsf.gdb.ui",1328390664443
|
||||
stopped,bundle,org.eclipse.cdt.dsf.ui,2.0.1.201002161416,"org.eclipse.cdt.dsf.ui",1328390664444
|
||||
stopped,bundle,org.eclipse.cdt.launch,6.0.0.201002161416,"org.eclipse.cdt.launch",1328390664445
|
||||
stopped,bundle,org.eclipse.cdt.debug.ui,6.0.0.201002161416,"org.eclipse.cdt.debug.ui",1328390664446
|
||||
stopped,bundle,org.eclipse.cdt.dsf.gdb,2.0.0.201002161416,"org.eclipse.cdt.dsf.gdb",1328390664446
|
||||
stopped,bundle,org.eclipse.cdt.dsf,2.0.0.201002161416,"org.eclipse.cdt.dsf",1328390664447
|
||||
stopped,bundle,org.eclipse.cdt.debug.core,6.0.0.201002161416,"org.eclipse.cdt.debug.core",1328390664448
|
||||
stopped,bundle,org.eclipse.cdt.managedbuilder.ui,5.1.0.201002161416,"org.eclipse.cdt.managedbuilder.ui",1328390664449
|
||||
stopped,bundle,org.eclipse.cdt.make.ui,6.0.1.201002161416,"org.eclipse.cdt.make.ui",1328390664452
|
||||
stopped,bundle,org.eclipse.cdt.managedbuilder.gnu.ui,5.0.100.201002161416,"org.eclipse.cdt.managedbuilder.gnu.ui",1328390664453
|
||||
stopped,bundle,org.eclipse.cdt.managedbuilder.core,6.0.0.201002161416,"org.eclipse.cdt.managedbuilder.core",1328390664454
|
||||
stopped,bundle,org.eclipse.cdt.make.core,6.0.0.201002161416,"org.eclipse.cdt.make.core",1328390664455
|
||||
stopped,bundle,org.eclipse.cdt.mylyn.ui,1.0.100.201002161416,"org.eclipse.cdt.mylyn.ui",1328390664455
|
||||
stopped,bundle,org.eclipse.cdt.ui,5.1.2.201002161416,"org.eclipse.cdt.ui",1328390664458
|
||||
stopped,bundle,org.eclipse.cdt.core,5.1.2.201002161416,"org.eclipse.cdt.core",1328390664459
|
||||
stopped,bundle,org.eclipse.mylyn.bugzilla.ui,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.bugzilla.ui",1328390664460
|
||||
stopped,bundle,org.eclipse.mylyn.ide.ui,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.ide.ui",1328390664460
|
||||
stopped,bundle,org.eclipse.mylyn.team.ui,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.team.ui",1328390664460
|
||||
stopped,bundle,org.eclipse.mylyn.resources.ui,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.resources.ui",1328390664461
|
||||
stopped,bundle,org.eclipse.mylyn.wikitext.tasks.ui,1.1.3.v20100217-0100-e3x,"org.eclipse.mylyn.wikitext.tasks.ui",1328390664461
|
||||
stopped,bundle,org.eclipse.mylyn.context.ui,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.context.ui",1328390664462
|
||||
stopped,bundle,org.eclipse.mylyn.help.ui,3.2.3.v20100217-0100-e3x,"org.eclipse.mylyn.help.ui",1328390664462
|
|
@ -1,2 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<typeInfoHistroy/>
|
@ -1,2 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<qualifiedTypeNameHistroy/>
|
@ -1,10 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<section name="Workbench">
|
||||
<section name="org.eclipse.jdt.internal.ui.packageview.PackageExplorerPart">
|
||||
<item value="true" key="group_libraries"/>
|
||||
<item value="false" key="linkWithEditor"/>
|
||||
<item value="2" key="layout"/>
|
||||
<item value="1" key="rootMode"/>
|
||||
<item value="<?xml version="1.0" encoding="UTF-8"?>
<packageExplorer group_libraries="1" layout="2" linkWithEditor="0" rootMode="1" workingSetName="">
<customFilters userDefinedPatternsEnabled="false">
<xmlDefinedFilters>
<child filterId="org.eclipse.jdt.ui.PackageExplorer.LibraryFilter" isEnabled="false"/>
<child filterId="org.eclipse.jdt.ui.PackageExplorer.LocalTypesFilter" isEnabled="false"/>
<child filterId="org.eclipse.jdt.ui.PackageExplorer.StaticsFilter" isEnabled="false"/>
<child filterId="org.eclipse.jdt.ui.PackageExplorer.ClosedProjectsFilter" isEnabled="false"/>
<child filterId="org.eclipse.jdt.ui.PackageExplorer.NonSharedProjectsFilter" isEnabled="false"/>
<child filterId="org.eclipse.jdt.ui.PackageExplorer.NonJavaElementFilter" isEnabled="false"/>
<child filterId="org.eclipse.jdt.ui.PackageExplorer.ContainedLibraryFilter" isEnabled="false"/>
<child filterId="org.eclipse.jdt.ui.PackageExplorer.CuAndClassFileFilter" isEnabled="false"/>
<child filterId="org.eclipse.jdt.ui.PackageExplorer.NonJavaProjectsFilter" isEnabled="false"/>
<child filterId="org.eclipse.jdt.internal.ui.PackageExplorer.EmptyInnerPackageFilter" isEnabled="true"/>
<child filterId="org.eclipse.jdt.ui.PackageExplorer.PackageDeclarationFilter" isEnabled="true"/>
<child filterId="org.eclipse.jdt.internal.ui.PackageExplorer.EmptyPackageFilter" isEnabled="false"/>
<child filterId="org.eclipse.jdt.ui.PackageExplorer.ImportDeclarationFilter" isEnabled="true"/>
<child filterId="org.eclipse.jdt.ui.PackageExplorer.FieldsFilter" isEnabled="false"/>
<child filterId="org.eclipse.jdt.internal.ui.PackageExplorer.HideInnerClassFilesFilter" isEnabled="true"/>
<child filterId="org.eclipse.jdt.ui.PackageExplorer.NonPublicFilter" isEnabled="false"/>
<child filterId="org.eclipse.jdt.ui.PackageExplorer_patternFilterId_.*" isEnabled="true"/>
<child filterId="org.eclipse.jdt.ui.PackageExplorer.EmptyLibraryContainerFilter" isEnabled="true"/>
<child filterId="org.eclipse.jdt.ui.PackageExplorer.SyntheticMembersFilter" isEnabled="true"/>
</xmlDefinedFilters>
</customFilters>
</packageExplorer>" key="memento"/>
|
||||
</section>
|
||||
</section>
|
@ -1,9 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<section name="Workbench">
|
||||
<section name="ExternalProjectImportWizard">
|
||||
<item value="false" key="WizardProjectsImportPage.STORE_ARCHIVE_SELECTED"/>
|
||||
<item value="false" key="WizardProjectsImportPage.STORE_COPY_PROJECT_ID"/>
|
||||
</section>
|
||||
<section name="NewWizardAction">
|
||||
</section>
|
||||
</section>
|
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<section name="Workbench">
|
||||
<item value="1024" key="introLaunchBar.location"/>
|
||||
</section>
|
@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<section name="Workbench">
|
||||
<section name="ImportExportAction">
|
||||
</section>
|
||||
</section>
|
@ -1,355 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<workbench progressCount="20" version="2.0">
|
||||
<workbenchAdvisor/>
|
||||
<window height="768" width="1024" x="270" y="82">
|
||||
<fastViewData fastViewLocation="1024"/>
|
||||
<perspectiveBar>
|
||||
<itemSize x="160"/>
|
||||
</perspectiveBar>
|
||||
<coolbarLayout locked="0">
|
||||
<coolItem id="group.file" itemType="typeGroupMarker"/>
|
||||
<coolItem id="org.eclipse.ui.workbench.file" itemType="typeToolBarContribution" x="84" y="22"/>
|
||||
<coolItem id="additions" itemType="typeGroupMarker"/>
|
||||
<coolItem id="adt.actionSet.avdManager" itemType="typeToolBarContribution" x="32" y="22"/>
|
||||
<coolItem id="adt.actionSet.wizards" itemType="typeToolBarContribution" x="76" y="22"/>
|
||||
<coolItem id="org.eclipse.cdt.ui.CElementCreationActionSet" itemType="typeToolBarContribution" x="130" y="22"/>
|
||||
<coolItem id="org.eclipse.cdt.ui.buildConfigActionSet" itemType="typeToolBarContribution" x="69" y="22"/>
|
||||
<coolItem id="org.eclipse.debug.ui.launchActionSet" itemType="typeToolBarContribution" x="100" y="22"/>
|
||||
<coolItem id="org.eclipse.jdt.ui.JavaElementCreationActionSet" itemType="typeToolBarContribution" x="84" y="22"/>
|
||||
<coolItem id="org.eclipse.search.searchActionSet" itemType="typeToolBarContribution" x="84" y="22"/>
|
||||
<coolItem id="org.eclipse.ui.edit.text.actionSet.presentation" itemType="typeToolBarContribution" x="54" y="22"/>
|
||||
<coolItem id="org.eclipse.wst.xml.ui.perspective.NewFileToolBar" itemType="typeToolBarContribution" x="-1" y="-1"/>
|
||||
<coolItem id="org.eclipse.wst.xml.ui.design.DesignToolBar" itemType="typeToolBarContribution" x="-1" y="-1"/>
|
||||
<coolItem id="group.nav" itemType="typeGroupMarker"/>
|
||||
<coolItem id="org.eclipse.ui.workbench.navigate" itemType="typeToolBarContribution" x="152" y="22"/>
|
||||
<coolItem id="group.editor" itemType="typeGroupMarker"/>
|
||||
<coolItem id="group.help" itemType="typeGroupMarker"/>
|
||||
<coolItem id="org.eclipse.ui.workbench.help" itemType="typeToolBarContribution" x="-1" y="-1"/>
|
||||
</coolbarLayout>
|
||||
<page aggregateWorkingSetId="Aggregate for window 1328386901227" focus="true" label="Workspace - Java">
|
||||
<editors>
|
||||
<editorArea activeWorkbook="DefaultEditorWorkbook">
|
||||
<info part="DefaultEditorWorkbook">
|
||||
<folder appearance="1" expanded="2">
|
||||
<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory"/>
|
||||
</folder>
|
||||
</info>
|
||||
</editorArea>
|
||||
</editors>
|
||||
<views>
|
||||
<view id="org.eclipse.ui.navigator.ProjectExplorer" partName="Project Explorer">
|
||||
<viewState CommonNavigator.LINKING_ENABLED="0" CommonNavigator.LINKING_ENABLED.delayed="0" org.eclipse.cdt.ui.cview.groupincludes="false" org.eclipse.cdt.ui.editor.CUChildren="true" org.eclipse.ui.navigator.resources.workingSets.showTopLevelWorkingSets="0"/>
|
||||
</view>
|
||||
<view id="org.eclipse.jdt.ui.TypeHierarchy" partName="Hierarchy"/>
|
||||
<view id="org.eclipse.ui.views.PropertySheet" partName="Properties"/>
|
||||
<view id="org.eclipse.cdt.make.ui.views.MakeView" partName="Make Targets"/>
|
||||
<view id="org.eclipse.ui.views.ProblemView" partName="Problems">
|
||||
<viewState PRIMARY_SORT_FIELD="org.eclipse.ui.ide.severityAndDescriptionField" categoryGroup="org.eclipse.ui.ide.severity" markerContentGenerator="org.eclipse.ui.ide.problemsGenerator" partName="Problems">
|
||||
<columnWidths org.eclipse.ui.ide.locationField="84" org.eclipse.ui.ide.markerType="114" org.eclipse.ui.ide.pathField="144" org.eclipse.ui.ide.resourceField="114" org.eclipse.ui.ide.severityAndDescriptionField="300"/>
|
||||
<visible IMemento.internal.id="org.eclipse.ui.ide.severityAndDescriptionField"/>
|
||||
<visible IMemento.internal.id="org.eclipse.ui.ide.resourceField"/>
|
||||
<visible IMemento.internal.id="org.eclipse.ui.ide.pathField"/>
|
||||
<visible IMemento.internal.id="org.eclipse.ui.ide.locationField"/>
|
||||
<visible IMemento.internal.id="org.eclipse.ui.ide.markerType"/>
|
||||
</viewState>
|
||||
</view>
|
||||
<view id="org.eclipse.jdt.ui.PackageExplorer" partName="Package Explorer">
|
||||
<viewState group_libraries="1" layout="2" linkWithEditor="0" rootMode="1" workingSetName="">
|
||||
<customFilters userDefinedPatternsEnabled="false">
|
||||
<xmlDefinedFilters>
|
||||
<child filterId="org.eclipse.jdt.ui.PackageExplorer.LibraryFilter" isEnabled="false"/>
|
||||
<child filterId="org.eclipse.jdt.ui.PackageExplorer.LocalTypesFilter" isEnabled="false"/>
|
||||
<child filterId="org.eclipse.jdt.ui.PackageExplorer.StaticsFilter" isEnabled="false"/>
|
||||
<child filterId="org.eclipse.jdt.ui.PackageExplorer.ClosedProjectsFilter" isEnabled="false"/>
|
||||
<child filterId="org.eclipse.jdt.ui.PackageExplorer.NonSharedProjectsFilter" isEnabled="false"/>
|
||||
<child filterId="org.eclipse.jdt.ui.PackageExplorer.NonJavaElementFilter" isEnabled="false"/>
|
||||
<child filterId="org.eclipse.jdt.ui.PackageExplorer.ContainedLibraryFilter" isEnabled="false"/>
|
||||
<child filterId="org.eclipse.jdt.ui.PackageExplorer.CuAndClassFileFilter" isEnabled="false"/>
|
||||
<child filterId="org.eclipse.jdt.ui.PackageExplorer.NonJavaProjectsFilter" isEnabled="false"/>
|
||||
<child filterId="org.eclipse.jdt.internal.ui.PackageExplorer.EmptyInnerPackageFilter" isEnabled="true"/>
|
||||
<child filterId="org.eclipse.jdt.ui.PackageExplorer.PackageDeclarationFilter" isEnabled="true"/>
|
||||
<child filterId="org.eclipse.jdt.internal.ui.PackageExplorer.EmptyPackageFilter" isEnabled="false"/>
|
||||
<child filterId="org.eclipse.jdt.ui.PackageExplorer.ImportDeclarationFilter" isEnabled="true"/>
|
||||
<child filterId="org.eclipse.jdt.ui.PackageExplorer.FieldsFilter" isEnabled="false"/>
|
||||
<child filterId="org.eclipse.jdt.internal.ui.PackageExplorer.HideInnerClassFilesFilter" isEnabled="true"/>
|
||||
<child filterId="org.eclipse.jdt.ui.PackageExplorer.NonPublicFilter" isEnabled="false"/>
|
||||
<child filterId="org.eclipse.jdt.ui.PackageExplorer_patternFilterId_.*" isEnabled="true"/>
|
||||
<child filterId="org.eclipse.jdt.ui.PackageExplorer.EmptyLibraryContainerFilter" isEnabled="true"/>
|
||||
<child filterId="org.eclipse.jdt.ui.PackageExplorer.SyntheticMembersFilter" isEnabled="true"/>
|
||||
</xmlDefinedFilters>
|
||||
</customFilters>
|
||||
</viewState>
|
||||
</view>
|
||||
<view id="org.eclipse.ui.console.ConsoleView" partName="Console"/>
|
||||
<view id="org.eclipse.mylyn.tasks.ui.views.tasks" partName="Task List">
|
||||
<viewState linkWithEditor="true" presentation="org.eclipse.mylyn.tasks.ui.categorized">
|
||||
<sorter groupBy="CATEGORY_QUERY">
|
||||
<sorter>
|
||||
<sort0 sortDirection="1" sortKey="PRIORITY"/>
|
||||
<sort1 sortDirection="1" sortKey="DATE_CREATED"/>
|
||||
<sort2 sortDirection="1" sortKey="NONE"/>
|
||||
<sort3 sortDirection="1" sortKey="NONE"/>
|
||||
</sorter>
|
||||
</sorter>
|
||||
</viewState>
|
||||
</view>
|
||||
<view id="org.eclipse.ui.views.TaskList" partName="Tasks"/>
|
||||
<view id="org.eclipse.jdt.ui.SourceView" partName="Declaration">
|
||||
<viewState/>
|
||||
</view>
|
||||
<view id="org.eclipse.ui.views.ContentOutline" partName="Outline">
|
||||
<viewState/>
|
||||
</view>
|
||||
<view id="org.eclipse.jdt.ui.JavadocView" partName="Javadoc">
|
||||
<viewState/>
|
||||
</view>
|
||||
</views>
|
||||
<perspectives activePart="org.eclipse.ui.views.ProblemView" activePerspective="org.eclipse.jdt.ui.JavaPerspective">
|
||||
<perspective editorAreaTrimState="2" editorAreaVisible="1" fixed="0" version="0.016">
|
||||
<descriptor class="org.eclipse.cdt.internal.ui.CPerspectiveFactory" id="org.eclipse.cdt.ui.CPerspective" label="C/C++"/>
|
||||
<alwaysOnActionSet id="org.eclipse.mylyn.context.ui.actionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.mylyn.doc.actionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.mylyn.tasks.ui.navigation"/>
|
||||
<alwaysOnActionSet id="org.eclipse.ui.cheatsheets.actionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.search.searchActionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.ui.edit.text.actionSet.annotationNavigation"/>
|
||||
<alwaysOnActionSet id="org.eclipse.ui.edit.text.actionSet.navigation"/>
|
||||
<alwaysOnActionSet id="org.eclipse.ui.edit.text.actionSet.convertLineDelimitersTo"/>
|
||||
<alwaysOnActionSet id="org.eclipse.ui.externaltools.ExternalToolsSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.ui.actionSet.keyBindings"/>
|
||||
<alwaysOnActionSet id="org.eclipse.ui.actionSet.openFiles"/>
|
||||
<alwaysOnActionSet id="adt.actionSet.wizards"/>
|
||||
<alwaysOnActionSet id="adt.actionSet.refactorings"/>
|
||||
<alwaysOnActionSet id="adt.actionSet.avdManager"/>
|
||||
<alwaysOnActionSet id="org.eclipse.cdt.ui.SearchActionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.cdt.ui.CElementCreationActionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.ui.NavigateActionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.debug.ui.breakpointActionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.cdt.make.ui.makeTargetActionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.debug.ui.launchActionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.cdt.ui.buildConfigActionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.cdt.ui.NavigationActionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.cdt.ui.OpenActionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.cdt.ui.CodingActionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.ui.edit.text.actionSet.presentation"/>
|
||||
<show_view_action id="org.eclipse.ui.console.ConsoleView"/>
|
||||
<show_view_action id="org.eclipse.search.ui.views.SearchView"/>
|
||||
<show_view_action id="org.eclipse.ui.views.ContentOutline"/>
|
||||
<show_view_action id="org.eclipse.ui.views.ProblemView"/>
|
||||
<show_view_action id="org.eclipse.cdt.ui.CView"/>
|
||||
<show_view_action id="org.eclipse.ui.views.ResourceNavigator"/>
|
||||
<show_view_action id="org.eclipse.ui.views.PropertySheet"/>
|
||||
<show_view_action id="org.eclipse.ui.views.TaskList"/>
|
||||
<show_view_action id="org.eclipse.cdt.make.ui.views.MakeView"/>
|
||||
<show_view_action id="org.eclipse.ui.navigator.ProjectExplorer"/>
|
||||
<show_view_action id="org.eclipse.cdt.ui.includeBrowser"/>
|
||||
<show_view_action id="org.eclipse.mylyn.tasks.ui.views.tasks"/>
|
||||
<new_wizard_action id="org.eclipse.cdt.ui.wizards.ConvertToMakeWizard"/>
|
||||
<new_wizard_action id="org.eclipse.cdt.ui.wizards.NewCWizard1"/>
|
||||
<new_wizard_action id="org.eclipse.cdt.ui.wizards.NewCWizard2"/>
|
||||
<new_wizard_action id="org.eclipse.cdt.ui.wizards.NewSourceFolderCreationWizard"/>
|
||||
<new_wizard_action id="org.eclipse.cdt.ui.wizards.NewFolderCreationWizard"/>
|
||||
<new_wizard_action id="org.eclipse.cdt.ui.wizards.NewSourceFileCreationWizard"/>
|
||||
<new_wizard_action id="org.eclipse.cdt.ui.wizards.NewHeaderFileCreationWizard"/>
|
||||
<new_wizard_action id="org.eclipse.cdt.ui.wizards.NewFileCreationWizard"/>
|
||||
<new_wizard_action id="org.eclipse.cdt.ui.wizards.NewClassCreationWizard"/>
|
||||
<new_wizard_action id="org.eclipse.mylyn.tasks.ui.wizards.new.repository.task"/>
|
||||
<perspective_action id="org.eclipse.debug.ui.DebugPerspective"/>
|
||||
<perspective_action id="org.eclipse.team.ui.TeamSynchronizingPerspective"/>
|
||||
<hide_toolbar_item_id id="org.eclipse.ui.edit.text.toggleShowSelectedElementOnly"/>
|
||||
<view id="org.eclipse.ui.navigator.ProjectExplorer"/>
|
||||
<view id="org.eclipse.ui.views.ProblemView"/>
|
||||
<view id="org.eclipse.ui.views.TaskList"/>
|
||||
<view id="org.eclipse.ui.console.ConsoleView"/>
|
||||
<view id="org.eclipse.ui.views.PropertySheet"/>
|
||||
<view id="org.eclipse.ui.views.ContentOutline"/>
|
||||
<view id="org.eclipse.cdt.make.ui.views.MakeView"/>
|
||||
<view id="org.eclipse.mylyn.tasks.ui.views.tasks"/>
|
||||
<fastViewBars/>
|
||||
<layout>
<mainWindow>
<info folder="true" part="topLeft">
<folder activePageID="org.eclipse.ui.navigator.ProjectExplorer" appearance="2" expanded="2">
<page content="org.eclipse.ui.navigator.ProjectExplorer" label="Project Explorer"/>
|
||||
<page content="org.eclipse.cdt.ui.CView" label="LabelNotFound"/>
|
||||
<page content="org.eclipse.ui.views.ResourceNavigator" label="LabelNotFound"/>
|
||||
<page content="org.eclipse.ui.views.BookmarkView" label="LabelNotFound"/>
|
||||
<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory">
<part id="0"/>
|
||||
</presentation>
|
||||
</folder>
|
||||
</info>
|
||||
<info folder="true" part="org.eclipse.ui.internal.ViewStack@4b48f7e0" ratio="0.75" ratioLeft="762" ratioRight="254" relationship="2" relative="topLeft">
<folder appearance="2" expanded="2">
<page content="org.eclipse.help.ui.HelpView" label="LabelNotFound"/>
|
||||
<page content="org.eclipse.ui.internal.introview" label="LabelNotFound"/>
|
||||
<page content="org.eclipse.ui.cheatsheets.views.CheatSheetView" label="LabelNotFound"/>
|
||||
<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory"/>
|
||||
</folder>
|
||||
</info>
|
||||
<info part="org.eclipse.ui.editorss" ratio="0.25" ratioLeft="254" ratioRight="762" relationship="2" relative="topLeft"/>
|
||||
<info folder="true" part="bottom" ratio="0.74963397" ratioLeft="512" ratioRight="171" relationship="4" relative="org.eclipse.ui.editorss">
<folder activePageID="org.eclipse.ui.views.ProblemView" appearance="2" expanded="2">
<page content="org.eclipse.ui.views.ProblemView" label="Problems"/>
|
||||
<page content="org.eclipse.ui.views.TaskList" label="Tasks"/>
|
||||
<page content="org.eclipse.ui.console.ConsoleView" label="Console"/>
|
||||
<page content="org.eclipse.ui.views.PropertySheet" label="Properties"/>
|
||||
<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory">
<part id="0"/>
|
||||
<part id="1"/>
|
||||
<part id="2"/>
|
||||
<part id="3"/>
|
||||
</presentation>
|
||||
</folder>
|
||||
</info>
|
||||
<info folder="true" part="topRight" ratio="0.7493438" ratioLeft="571" ratioRight="191" relationship="2" relative="org.eclipse.ui.editorss">
<folder activePageID="org.eclipse.ui.views.ContentOutline" appearance="2" expanded="2">
<page content="org.eclipse.ui.views.ContentOutline" label="Outline"/>
|
||||
<page content="org.eclipse.cdt.make.ui.views.MakeView" label="Make Targets"/>
|
||||
<page content="org.eclipse.mylyn.tasks.ui.views.tasks" label="Task List"/>
|
||||
<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory">
<part id="0"/>
|
||||
<part id="1"/>
|
||||
<part id="2"/>
|
||||
</presentation>
|
||||
</folder>
|
||||
</info>
|
||||
</mainWindow>
|
||||
</layout>
|
||||
</perspective>
|
||||
<perspective editorAreaTrimState="2" editorAreaVisible="1" fixed="0" version="0.016">
|
||||
<descriptor class="org.eclipse.jdt.internal.ui.JavaPerspectiveFactory" id="org.eclipse.jdt.ui.JavaPerspective" label="Java"/>
|
||||
<alwaysOnActionSet id="org.eclipse.mylyn.context.ui.actionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.mylyn.doc.actionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.mylyn.tasks.ui.navigation"/>
|
||||
<alwaysOnActionSet id="org.eclipse.ui.cheatsheets.actionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.search.searchActionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.ui.edit.text.actionSet.annotationNavigation"/>
|
||||
<alwaysOnActionSet id="org.eclipse.ui.edit.text.actionSet.navigation"/>
|
||||
<alwaysOnActionSet id="org.eclipse.ui.edit.text.actionSet.convertLineDelimitersTo"/>
|
||||
<alwaysOnActionSet id="org.eclipse.ui.externaltools.ExternalToolsSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.ui.actionSet.keyBindings"/>
|
||||
<alwaysOnActionSet id="org.eclipse.ui.actionSet.openFiles"/>
|
||||
<alwaysOnActionSet id="adt.actionSet.wizards"/>
|
||||
<alwaysOnActionSet id="adt.actionSet.refactorings"/>
|
||||
<alwaysOnActionSet id="adt.actionSet.avdManager"/>
|
||||
<alwaysOnActionSet id="org.eclipse.debug.ui.launchActionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.jdt.ui.JavaActionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.jdt.ui.JavaElementCreationActionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.ui.NavigateActionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.debug.ui.breakpointActionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.jdt.debug.ui.JDTDebugActionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.jdt.junit.JUnitActionSet"/>
|
||||
<show_view_action id="org.eclipse.jdt.ui.PackageExplorer"/>
|
||||
<show_view_action id="org.eclipse.jdt.ui.TypeHierarchy"/>
|
||||
<show_view_action id="org.eclipse.jdt.ui.SourceView"/>
|
||||
<show_view_action id="org.eclipse.jdt.ui.JavadocView"/>
|
||||
<show_view_action id="org.eclipse.search.ui.views.SearchView"/>
|
||||
<show_view_action id="org.eclipse.ui.console.ConsoleView"/>
|
||||
<show_view_action id="org.eclipse.ui.views.ContentOutline"/>
|
||||
<show_view_action id="org.eclipse.ui.views.ProblemView"/>
|
||||
<show_view_action id="org.eclipse.ui.views.ResourceNavigator"/>
|
||||
<show_view_action id="org.eclipse.ui.views.TaskList"/>
|
||||
<show_view_action id="org.eclipse.ui.views.ProgressView"/>
|
||||
<show_view_action id="org.eclipse.ui.navigator.ProjectExplorer"/>
|
||||
<show_view_action id="org.eclipse.ui.texteditor.TemplatesView"/>
|
||||
<show_view_action id="org.eclipse.ant.ui.views.AntView"/>
|
||||
<show_view_action id="org.eclipse.pde.runtime.LogView"/>
|
||||
<show_view_action id="org.eclipse.mylyn.tasks.ui.views.tasks"/>
|
||||
<new_wizard_action id="org.eclipse.jdt.ui.wizards.JavaProjectWizard"/>
|
||||
<new_wizard_action id="org.eclipse.jdt.ui.wizards.NewPackageCreationWizard"/>
|
||||
<new_wizard_action id="org.eclipse.jdt.ui.wizards.NewClassCreationWizard"/>
|
||||
<new_wizard_action id="org.eclipse.jdt.ui.wizards.NewInterfaceCreationWizard"/>
|
||||
<new_wizard_action id="org.eclipse.jdt.ui.wizards.NewEnumCreationWizard"/>
|
||||
<new_wizard_action id="org.eclipse.jdt.ui.wizards.NewAnnotationCreationWizard"/>
|
||||
<new_wizard_action id="org.eclipse.jdt.ui.wizards.NewSourceFolderCreationWizard"/>
|
||||
<new_wizard_action id="org.eclipse.jdt.ui.wizards.NewSnippetFileCreationWizard"/>
|
||||
<new_wizard_action id="org.eclipse.jdt.ui.wizards.NewJavaWorkingSetWizard"/>
|
||||
<new_wizard_action id="org.eclipse.ui.wizards.new.folder"/>
|
||||
<new_wizard_action id="org.eclipse.ui.wizards.new.file"/>
|
||||
<new_wizard_action id="org.eclipse.ui.editors.wizards.UntitledTextFileWizard"/>
|
||||
<new_wizard_action id="com.android.ide.eclipse.adt.project.NewProjectWizard"/>
|
||||
<new_wizard_action id="com.android.ide.eclipse.editors.wizards.NewXmlFileWizard"/>
|
||||
<new_wizard_action id="org.eclipse.jdt.junit.wizards.NewTestCaseCreationWizard"/>
|
||||
<new_wizard_action id="org.eclipse.mylyn.tasks.ui.wizards.new.repository.task"/>
|
||||
<perspective_action id="com.android.ide.eclipse.ddms.Perspective"/>
|
||||
<perspective_action id="com.android.ide.eclipse.hierarchyviewer.PixelPerfectPespective"/>
|
||||
<perspective_action id="com.android.ide.eclipse.hierarchyviewer.TreeViewPerspective"/>
|
||||
<perspective_action id="org.eclipse.debug.ui.DebugPerspective"/>
|
||||
<perspective_action id="org.eclipse.jdt.ui.JavaBrowsingPerspective"/>
|
||||
<hide_toolbar_item_id id="org.eclipse.ui.edit.text.toggleShowSelectedElementOnly"/>
|
||||
<view id="org.eclipse.jdt.ui.PackageExplorer"/>
|
||||
<view id="org.eclipse.jdt.ui.TypeHierarchy"/>
|
||||
<view id="org.eclipse.ui.views.ProblemView"/>
|
||||
<view id="org.eclipse.jdt.ui.JavadocView"/>
|
||||
<view id="org.eclipse.jdt.ui.SourceView"/>
|
||||
<view id="org.eclipse.ui.views.ContentOutline"/>
|
||||
<view id="org.eclipse.mylyn.tasks.ui.views.tasks"/>
|
||||
<fastViewBars/>
|
||||
<layout>
|
||||
<mainWindow>
|
||||
<info folder="true" part="left">
|
||||
<folder activePageID="org.eclipse.jdt.ui.PackageExplorer" appearance="2" expanded="2">
|
||||
<page content="org.eclipse.jdt.ui.PackageExplorer" label="Package Explorer"/>
|
||||
<page content="org.eclipse.jdt.ui.TypeHierarchy" label="Hierarchy"/>
|
||||
<page content="org.eclipse.ui.views.ResourceNavigator" label="LabelNotFound"/>
|
||||
<page content="org.eclipse.ui.navigator.ProjectExplorer" label="LabelNotFound"/>
|
||||
<page content="org.eclipse.jdt.junit.ResultView" label="LabelNotFound"/>
|
||||
<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory">
|
||||
<part id="0"/>
|
||||
<part id="1"/>
|
||||
</presentation>
|
||||
</folder>
|
||||
</info>
|
||||
<info folder="true" part="stickyFolderRight" ratio="0.75" ratioLeft="762" ratioRight="254" relationship="2" relative="left">
|
||||
<folder appearance="2" expanded="2">
|
||||
<page content="org.eclipse.help.ui.HelpView" label="LabelNotFound"/>
|
||||
<page content="org.eclipse.ui.internal.introview" label="LabelNotFound"/>
|
||||
<page content="org.eclipse.ui.cheatsheets.views.CheatSheetView" label="LabelNotFound"/>
|
||||
</folder>
|
||||
</info>
|
||||
<info part="org.eclipse.ui.editorss" ratio="0.25" ratioLeft="254" ratioRight="762" relationship="2" relative="left"/>
|
||||
<info folder="true" part="bottom" ratio="0.74963397" ratioLeft="512" ratioRight="171" relationship="4" relative="org.eclipse.ui.editorss">
|
||||
<folder activePageID="org.eclipse.ui.views.ProblemView" appearance="2" expanded="2">
|
||||
<page content="org.eclipse.ui.views.ProblemView" label="Problems"/>
|
||||
<page content="org.eclipse.jdt.ui.JavadocView" label="Javadoc"/>
|
||||
<page content="org.eclipse.jdt.ui.SourceView" label="Declaration"/>
|
||||
<page content="org.eclipse.search.ui.views.SearchView" label="LabelNotFound"/>
|
||||
<page content="org.eclipse.ui.console.ConsoleView" label="LabelNotFound"/>
|
||||
<page content="org.eclipse.ui.views.BookmarkView" label="LabelNotFound"/>
|
||||
<page content="org.eclipse.ui.views.ProgressView" label="LabelNotFound"/>
|
||||
<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory">
|
||||
<part id="0"/>
|
||||
<part id="1"/>
|
||||
<part id="2"/>
|
||||
</presentation>
|
||||
</folder>
|
||||
</info>
|
||||
<info folder="true" part="org.eclipse.ui.internal.ViewStack@2b6ea258" ratio="0.7493438" ratioLeft="571" ratioRight="191" relationship="2" relative="org.eclipse.ui.editorss">
|
||||
<folder activePageID="org.eclipse.mylyn.tasks.ui.views.tasks" appearance="2" expanded="2">
|
||||
<page content="org.eclipse.mylyn.tasks.ui.views.tasks" label="Task List"/>
|
||||
<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory">
|
||||
<part id="0"/>
|
||||
</presentation>
|
||||
</folder>
|
||||
</info>
|
||||
<info folder="true" part="right" ratio="0.5" ratioLeft="256" ratioRight="256" relationship="4" relative="org.eclipse.ui.internal.ViewStack@2b6ea258">
|
||||
<folder activePageID="org.eclipse.ui.views.ContentOutline" appearance="2" expanded="2">
|
||||
<page content="org.eclipse.ui.views.ContentOutline" label="Outline"/>
|
||||
<page content="org.eclipse.ui.texteditor.TemplatesView" label="LabelNotFound"/>
|
||||
<page content="org.eclipse.ant.ui.views.AntView" label="LabelNotFound"/>
|
||||
<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory">
|
||||
<part id="0"/>
|
||||
</presentation>
|
||||
</folder>
|
||||
</info>
|
||||
</mainWindow>
|
||||
</layout>
|
||||
</perspective>
|
||||
</perspectives>
|
||||
<workingSets/>
|
||||
<navigationHistory/>
|
||||
<input factoryID="org.eclipse.ui.internal.model.ResourceFactory" path="/" type="8"/>
|
||||
</page>
|
||||
<workbenchWindowAdvisor/>
|
||||
<actionBarAdvisor/>
|
||||
<trimLayout>
|
||||
<trimArea IMemento.internal.id="128">
|
||||
<trimItem IMemento.internal.id="org.eclipse.ui.internal.WorkbenchWindow.topBar"/>
|
||||
</trimArea>
|
||||
<trimArea IMemento.internal.id="1024">
|
||||
<trimItem IMemento.internal.id="org.eclise.ui.internal.FastViewBar"/>
|
||||
<trimItem IMemento.internal.id="org.eclipse.jface.action.StatusLineManager"/>
|
||||
<trimItem IMemento.internal.id="org.eclipse.ui.internal.progress.ProgressRegion"/>
|
||||
</trimArea>
|
||||
</trimLayout>
|
||||
</window>
|
||||
<mruList/>
|
||||
</workbench>
|
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<workingSetManager>
|
||||
<workingSet aggregate="true" factoryID="org.eclipse.ui.internal.WorkingSetFactory" id="1328386901229_0" label="Window Working Set" name="Aggregate for window 1328386901227"/>
|
||||
</workingSetManager>
|
@ -1 +0,0 @@
|
||||
org.eclipse.core.runtime=1
|
@ -1,33 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>androidgcs</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
<name>com.android.ide.eclipse.adt.ResourceManagerBuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>com.android.ide.eclipse.adt.PreCompilerBuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.jdt.core.javabuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>com.android.ide.eclipse.adt.ApkBuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>com.android.ide.eclipse.adt.AndroidNature</nature>
|
||||
<nature>org.eclipse.jdt.core.javanature</nature>
|
||||
</natures>
|
||||
</projectDescription>
|
@ -1,12 +0,0 @@
|
||||
#Sat Feb 04 16:05:48 CST 2012
|
||||
eclipse.preferences.version=1
|
||||
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
|
||||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
|
||||
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
|
||||
org.eclipse.jdt.core.compiler.compliance=1.6
|
||||
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
|
||||
org.eclipse.jdt.core.compiler.debug.localVariable=generate
|
||||
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
|
||||
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
|
||||
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
|
||||
org.eclipse.jdt.core.compiler.source=1.5
|
@ -1,98 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="org.openpilot.androidgcs"
|
||||
android:versionCode="1"
|
||||
android:versionName="1.0" >
|
||||
|
||||
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="17"/>
|
||||
|
||||
<uses-permission android:name="android.permission.INTERNET" />
|
||||
<uses-permission android:name="android.permission.BLUETOOTH" />
|
||||
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
|
||||
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
|
||||
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
|
||||
|
||||
<uses-feature android:name="android.hardware.usb.host" />
|
||||
|
||||
<application
|
||||
android:icon="@drawable/ic_logo"
|
||||
android:label="@string/app_name"
|
||||
android:theme="@android:style/Theme.Holo"
|
||||
android:allowBackup="false">
|
||||
|
||||
<!-- for map overlay -->
|
||||
<uses-library android:name="com.google.android.maps" />
|
||||
|
||||
<!-- Object browser - main activity at the moment -->
|
||||
<activity
|
||||
android:name="HomePage"
|
||||
android:label="@string/app_name" >
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
|
||||
<category android:name="android.intent.category.LAUNCHER" />
|
||||
</intent-filter>
|
||||
|
||||
<!-- <intent-filter> -->
|
||||
<!-- <action android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" /> -->
|
||||
<!-- </intent-filter> -->
|
||||
|
||||
|
||||
<!-- <meta-data android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" -->
|
||||
<!-- android:resource="@xml/device_filter" /> -->
|
||||
</activity>
|
||||
<activity
|
||||
android:name="ObjectBrowser"
|
||||
android:label="@string/object_browser_name" />
|
||||
<activity
|
||||
android:name="PfdActivity"
|
||||
android:label="PFD" />
|
||||
<activity
|
||||
android:name="Controller"
|
||||
android:label="@string/controller_name" />
|
||||
<activity
|
||||
android:name="Preferences"
|
||||
android:label="@string/preference_title" />
|
||||
<activity
|
||||
android:name="UAVLocation"
|
||||
android:label="@string/location_name" />
|
||||
<activity
|
||||
android:name="SystemAlarmActivity"
|
||||
android:label="System Alarms" />
|
||||
<activity
|
||||
android:name="TuningActivity"
|
||||
android:label="Tuning" />
|
||||
<activity
|
||||
android:name="ObjectEditor"
|
||||
android:label="ObjectEditor"
|
||||
android:theme="@android:style/Theme.Dialog" />
|
||||
<activity
|
||||
android:name="Logger"
|
||||
android:label="Logger"
|
||||
android:theme="@android:style/Theme.Dialog" />
|
||||
<activity
|
||||
android:name="FragmentTester"
|
||||
android:label="FragmentTester" />
|
||||
<activity
|
||||
android:name="OsgViewer"
|
||||
android:label="3DView" />
|
||||
|
||||
<receiver android:name="TelemetryWidget" >
|
||||
<intent-filter>
|
||||
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
|
||||
</intent-filter>
|
||||
<intent-filter>
|
||||
<action android:name="org.openpilot.intent.action.CONNECTED" />
|
||||
<action android:name="org.openpilot.intent.action.DISCONNECTED" />
|
||||
</intent-filter>
|
||||
|
||||
<meta-data
|
||||
android:name="android.appwidget.provider"
|
||||
android:resource="@xml/telemetry_widget_info" />
|
||||
</receiver>
|
||||
|
||||
<service android:name="org.openpilot.androidgcs.telemetry.OPTelemetryService" >
|
||||
</service>
|
||||
</application>
|
||||
|
||||
</manifest>
|
@ -1,70 +0,0 @@
|
||||
------- TELEMETRY ---------
|
||||
The Telemetry system has been implemented, and is composed of a few
|
||||
major components:
|
||||
|
||||
Telemetry.java - receives command to transmit objects through telemetry and
|
||||
also emits notification when transactions are completed
|
||||
|
||||
TelemetryMonitor.java - monitors the FlightTelemetryStats and GCSTelemetryStats
|
||||
to establish when a working connection is in place. Also initiates downloading
|
||||
all the objects on a new connection.
|
||||
|
||||
UAVObjectManager.java - the central data store. The data is actually stored
|
||||
within objects, but this maintains the handles to all of them.
|
||||
|
||||
UAVTalk.java - the actual communication layer. Can packetize an object and
|
||||
insert into stream and process the incoming stream and update objects
|
||||
accordingly.
|
||||
|
||||
** Threading
|
||||
Currently object updates run within the thread of the function that called
|
||||
update. This should be changed so that it adds a message to the Telemetry
|
||||
thread which will then send on its own time.
|
||||
|
||||
---- MESSAGE PASSING ----
|
||||
The current implementation/analog to the slots/sockets in QT are Observers
|
||||
which are registered as added to an Observable. This is used extensibly within
|
||||
the telemetry system. I will continue to use this _within_ the Telemetry
|
||||
module so it doesn't depend on any android features.
|
||||
|
||||
In android there is a constraint that UI operations should all be done from the
|
||||
UI thread. The most common way to do this is for the UI object (such as
|
||||
Activity) to instantiate a Handler to which messages or runnables are posted.
|
||||
|
||||
So for external objects they will register a runnable somehow...
|
||||
|
||||
--- TELEMETRY SERVICE ---
|
||||
The telemetry connection will be maintained by a service separate from the the
|
||||
main activity(s). Although it is a bit unusual, the service will support being
|
||||
started and stopped, as well as being bound. Binding will be required to get
|
||||
access to the Object Manager.
|
||||
|
||||
In addition, to make it forward looking, the start intent can specify a
|
||||
connection to open. This will allow the service in future to monitor multiple
|
||||
connections.
|
||||
|
||||
The service will destroy itself only when all active connections disappear and
|
||||
all activies are unbound.
|
||||
|
||||
It will also handle any logging desired (I think).
|
||||
|
||||
There will be a primary message handler thread. This thread will separately
|
||||
launch telemetry threads when required.
|
||||
|
||||
The service should send broadcast intents whenever a connection is estabilished
|
||||
or dropped.
|
||||
|
||||
I dont think the service should have the options about which UAVs are
|
||||
supported.
|
||||
|
||||
** Telemetry IBinder
|
||||
*** Give handle to the ObjectManager for each UAV
|
||||
*** Call disconnect
|
||||
*** Query conncetion status
|
||||
|
||||
--- TELEMETRY WIDGET ---
|
||||
Listens for conncet/disconnect intents
|
||||
|
||||
Also show if service is running?
|
||||
|
||||
Ability to launch service?
|
@ -1 +0,0 @@
|
||||
../../build/androidgcs/assets/uavos
|
@ -1,70 +0,0 @@
|
||||
LOCAL_PATH := $(call my-dir)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
|
||||
LOCAL_MODULE := osgNativeLib
|
||||
### Main Install dir
|
||||
OSG_ANDROID_DIR := ../../osg_android_git/osg-install
|
||||
LIBDIR := $(OSG_ANDROID_DIR)/obj/local/armeabi
|
||||
|
||||
ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
|
||||
LOCAL_ARM_NEON := true
|
||||
LIBDIR := $(OSG_ANDROID_DIR)/obj/local/armeabi-v7a
|
||||
endif
|
||||
|
||||
### Add all source file names to be included in lib separated by a whitespace
|
||||
|
||||
LOCAL_C_INCLUDES:= $(OSG_ANDROID_DIR)/include
|
||||
LOCAL_CFLAGS := -Werror -fno-short-enums
|
||||
LOCAL_CPPFLAGS := -DOSG_LIBRARY_STATIC
|
||||
|
||||
LOCAL_LDLIBS := -llog -lGLESv2 -ldl -lz -lgnustl_static -ljpeg -lpng
|
||||
LOCAL_SRC_FILES := osgNativeLib.cpp OsgMainApp.cpp OsgAndroidNotifyHandler.cpp
|
||||
LOCAL_LDFLAGS := -L $(LIBDIR) \
|
||||
-losgdb_dds \
|
||||
-losgdb_openflight \
|
||||
-losgdb_tga \
|
||||
-losgdb_rgb \
|
||||
-losgdb_osgterrain \
|
||||
-losgdb_osg \
|
||||
-losgdb_ive \
|
||||
-losgdb_3ds \
|
||||
-losgdb_jpeg \
|
||||
-losgdb_png \
|
||||
-losgdb_deprecated_osgviewer \
|
||||
-losgdb_deprecated_osgvolume \
|
||||
-losgdb_deprecated_osgtext \
|
||||
-losgdb_deprecated_osgterrain \
|
||||
-losgdb_deprecated_osgsim \
|
||||
-losgdb_deprecated_osgshadow \
|
||||
-losgdb_deprecated_osgparticle \
|
||||
-losgdb_deprecated_osgfx \
|
||||
-losgdb_deprecated_osganimation \
|
||||
-losgdb_deprecated_osg \
|
||||
-losgdb_serializers_osgvolume \
|
||||
-losgdb_serializers_osgtext \
|
||||
-losgdb_serializers_osgterrain \
|
||||
-losgdb_serializers_osgsim \
|
||||
-losgdb_serializers_osgshadow \
|
||||
-losgdb_serializers_osgparticle \
|
||||
-losgdb_serializers_osgmanipulator \
|
||||
-losgdb_serializers_osgfx \
|
||||
-losgdb_serializers_osganimation \
|
||||
-losgdb_serializers_osg \
|
||||
-losgViewer \
|
||||
-losgVolume \
|
||||
-losgTerrain \
|
||||
-losgText \
|
||||
-losgShadow \
|
||||
-losgSim \
|
||||
-losgParticle \
|
||||
-losgManipulator \
|
||||
-losgGA \
|
||||
-losgFX \
|
||||
-losgDB \
|
||||
-losgAnimation \
|
||||
-losgUtil \
|
||||
-losg \
|
||||
-lOpenThreads
|
||||
|
||||
include $(BUILD_SHARED_LIBRARY)
|
@ -1,11 +0,0 @@
|
||||
#ANDROID APPLICATION MAKEFILE
|
||||
APP_BUILD_SCRIPT := $(call my-dir)/Android.mk
|
||||
#APP_PROJECT_PATH := $(call my-dir)
|
||||
|
||||
APP_OPTIM := release
|
||||
|
||||
APP_PLATFORM := android-7
|
||||
APP_STL := gnustl_static
|
||||
APP_CPPFLAGS := -fexceptions -frtti
|
||||
APP_ABI := armeabi armeabi-v7a
|
||||
APP_MODULES := osgNativeLib
|
@ -1,38 +0,0 @@
|
||||
/*
|
||||
* OsgAndroidNotifyHandler.cpp
|
||||
*
|
||||
* Created on: 31/05/2011
|
||||
* Author: Jorge Izquierdo Ciges
|
||||
*/
|
||||
|
||||
#include "OsgAndroidNotifyHandler.hpp"
|
||||
#include <iostream>
|
||||
|
||||
void OsgAndroidNotifyHandler::setTag(std::string tag){
|
||||
_tag = tag;
|
||||
}
|
||||
void OsgAndroidNotifyHandler::notify(osg::NotifySeverity severity, const char *message){
|
||||
|
||||
switch ( severity ) {
|
||||
case osg::DEBUG_FP:
|
||||
__android_log_write(ANDROID_LOG_VERBOSE,_tag.c_str(),message);
|
||||
break;
|
||||
case osg::DEBUG_INFO:
|
||||
__android_log_write(ANDROID_LOG_DEBUG,_tag.c_str(),message);
|
||||
break;
|
||||
case osg::NOTICE:
|
||||
case osg::INFO:
|
||||
__android_log_write(ANDROID_LOG_INFO,_tag.c_str(),message);
|
||||
break;
|
||||
case osg::WARN:
|
||||
__android_log_write(ANDROID_LOG_WARN,_tag.c_str(),message);
|
||||
break;
|
||||
case osg::FATAL:
|
||||
case osg::ALWAYS:
|
||||
__android_log_write(ANDROID_LOG_ERROR,_tag.c_str(),message);
|
||||
break;
|
||||
default:
|
||||
__android_log_write(ANDROID_LOG_DEBUG,_tag.c_str(),message);
|
||||
break;
|
||||
}
|
||||
}
|
@ -1,26 +0,0 @@
|
||||
/*
|
||||
* OsgAndroidNotifyHandler.hpp
|
||||
*
|
||||
* Created on: 31/05/2011
|
||||
* Author: Jorge Izquierdo Ciges
|
||||
*/
|
||||
|
||||
#ifndef OSGANDROIDNOTIFYHANDLER_HPP_
|
||||
#define OSGANDROIDNOTIFYHANDLER_HPP_
|
||||
|
||||
#include <android/log.h>
|
||||
|
||||
#include <osg/Notify>
|
||||
|
||||
#include <string>
|
||||
|
||||
class OSG_EXPORT OsgAndroidNotifyHandler : public osg::NotifyHandler
|
||||
{
|
||||
private:
|
||||
std::string _tag;
|
||||
public:
|
||||
void setTag(std::string tag);
|
||||
void notify(osg::NotifySeverity severity, const char *message);
|
||||
};
|
||||
|
||||
#endif /* OSGANDROIDNOTIFYHANDLER_HPP_ */
|
@ -1,247 +0,0 @@
|
||||
#include "OsgMainApp.hpp"
|
||||
#include <osg/Quat>
|
||||
|
||||
OsgMainApp::OsgMainApp(){
|
||||
|
||||
_lodScale = 1.0f;
|
||||
_prevFrame = 0;
|
||||
|
||||
_initialized = false;
|
||||
_clean_scene = false;
|
||||
|
||||
}
|
||||
OsgMainApp::~OsgMainApp(){
|
||||
|
||||
}
|
||||
void OsgMainApp::loadModels(){
|
||||
if(_vModelsToLoad.size()==0) return;
|
||||
|
||||
osg::notify(osg::ALWAYS)<<"There are "<<_vModelsToLoad.size()<<" models to load"<<std::endl;
|
||||
|
||||
Model newModel;
|
||||
for(unsigned int i=0; i<_vModelsToLoad.size(); i++){
|
||||
newModel = _vModelsToLoad[i];
|
||||
osg::notify(osg::ALWAYS)<<"Loading: "<<newModel.filename<<std::endl;
|
||||
|
||||
osg::ref_ptr<osg::Node> loadedModel = osgDB::readNodeFile(newModel.filename);
|
||||
if (loadedModel == 0) {
|
||||
osg::notify(osg::ALWAYS)<<"Model not loaded"<<std::endl;
|
||||
} else {
|
||||
osg::notify(osg::ALWAYS)<<"Model loaded"<<std::endl;
|
||||
_vModels.push_back(newModel);
|
||||
|
||||
loadedModel->setName(newModel.name);
|
||||
|
||||
osg::Shader * vshader = new osg::Shader(osg::Shader::VERTEX, gVertexShader );
|
||||
osg::Shader * fshader = new osg::Shader(osg::Shader::FRAGMENT, gFragmentShader );
|
||||
|
||||
osg::Program * prog = new osg::Program;
|
||||
prog->addShader ( vshader );
|
||||
prog->addShader ( fshader );
|
||||
|
||||
loadedModel->getOrCreateStateSet()->setAttribute ( prog );
|
||||
|
||||
// Woohoo leaky code. This no longer works for multiple models
|
||||
uavAttitudeAndScale = new osg::MatrixTransform();
|
||||
|
||||
// Set the rotation to normal
|
||||
float q[4] = {1.0, 0, 0, 0};
|
||||
setQuat(q);
|
||||
|
||||
osg::MatrixTransform *rotateModelNED = new osg::MatrixTransform();
|
||||
rotateModelNED->setMatrix(osg::Matrixd::rotate(M_PI, osg::Vec3d(0,0,1)));
|
||||
rotateModelNED->addChild( loadedModel );
|
||||
|
||||
uavAttitudeAndScale->addChild( rotateModelNED );
|
||||
|
||||
_root->addChild(uavAttitudeAndScale);
|
||||
}
|
||||
}
|
||||
|
||||
osgViewer::Viewer::Windows windows;
|
||||
_viewer->getWindows(windows);
|
||||
for(osgViewer::Viewer::Windows::iterator itr = windows.begin();itr != windows.end();++itr)
|
||||
{
|
||||
(*itr)->getState()->setUseModelViewAndProjectionUniforms(true);
|
||||
(*itr)->getState()->setUseVertexAttributeAliasing(true);
|
||||
}
|
||||
|
||||
_viewer->setSceneData(NULL);
|
||||
_viewer->setSceneData(_root.get());
|
||||
_manipulator->getNode();
|
||||
_viewer->home();
|
||||
|
||||
_viewer->getDatabasePager()->clear();
|
||||
_viewer->getDatabasePager()->registerPagedLODs(_root.get());
|
||||
_viewer->getDatabasePager()->setUpThreads(3, 1);
|
||||
_viewer->getDatabasePager()->setTargetMaximumNumberOfPageLOD(2);
|
||||
_viewer->getDatabasePager()->setUnrefImageDataAfterApplyPolicy(true, true);
|
||||
|
||||
_vModelsToLoad.clear();
|
||||
|
||||
}
|
||||
void OsgMainApp::deleteModels(){
|
||||
if(_vModelsToDelete.size()==0) return;
|
||||
|
||||
osg::notify(osg::ALWAYS)<<"There are "<<_vModelsToDelete.size()<<" models to delete"<<std::endl;
|
||||
|
||||
Model modelToDelete;
|
||||
for(unsigned int i=0; i<_vModelsToDelete.size(); i++){
|
||||
modelToDelete = _vModelsToDelete[i];
|
||||
osg::notify(osg::ALWAYS)<<"Deleting: "<<modelToDelete.name<<std::endl;
|
||||
|
||||
for(unsigned int j=_root->getNumChildren(); j>0; j--){
|
||||
osg::ref_ptr<osg::Node> children = _root->getChild(j-1);
|
||||
if(children->getName() == modelToDelete.name){
|
||||
_root->removeChild(children);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
_vModelsToDelete.clear();
|
||||
osg::notify(osg::ALWAYS)<<"finished"<<std::endl;
|
||||
}
|
||||
//Initialization function
|
||||
void OsgMainApp::initOsgWindow(int x,int y,int width,int height){
|
||||
|
||||
__android_log_write(ANDROID_LOG_ERROR, "OSGANDROID",
|
||||
"Initializing geometry");
|
||||
|
||||
//Pending
|
||||
_notifyHandler = new OsgAndroidNotifyHandler();
|
||||
_notifyHandler->setTag("Osg Viewer");
|
||||
osg::setNotifyHandler(_notifyHandler);
|
||||
osg::setNotifyLevel(osg::DEBUG_INFO);
|
||||
|
||||
_viewer = new osgViewer::Viewer();
|
||||
_viewer->setUpViewerAsEmbeddedInWindow(x, y, width, height);
|
||||
_viewer->setThreadingModel(osgViewer::ViewerBase::SingleThreaded);
|
||||
|
||||
_root = new osg::Group();
|
||||
|
||||
_viewer->realize();
|
||||
|
||||
_viewer->addEventHandler(new osgViewer::StatsHandler);
|
||||
_viewer->addEventHandler(new osgGA::StateSetManipulator(_viewer->getCamera()->getOrCreateStateSet()));
|
||||
_viewer->addEventHandler(new osgViewer::ThreadingHandler);
|
||||
_viewer->addEventHandler(new osgViewer::LODScaleHandler);
|
||||
|
||||
_manipulator = new osgGA::KeySwitchMatrixManipulator;
|
||||
|
||||
_manipulator->addMatrixManipulator( '1', "Trackball", new osgGA::TrackballManipulator() );
|
||||
_manipulator->addMatrixManipulator( '2', "Flight", new osgGA::FlightManipulator() );
|
||||
_manipulator->addMatrixManipulator( '3', "Drive", new osgGA::DriveManipulator() );
|
||||
_manipulator->addMatrixManipulator( '4', "Terrain", new osgGA::TerrainManipulator() );
|
||||
_manipulator->addMatrixManipulator( '5', "Orbit", new osgGA::OrbitManipulator() );
|
||||
_manipulator->addMatrixManipulator( '6', "FirstPerson", new osgGA::FirstPersonManipulator() );
|
||||
_manipulator->addMatrixManipulator( '7', "Spherical", new osgGA::SphericalManipulator() );
|
||||
|
||||
_viewer->setCameraManipulator( _manipulator.get() );
|
||||
|
||||
_viewer->getViewerStats()->collectStats("scene", true);
|
||||
|
||||
_initialized = true;
|
||||
|
||||
}
|
||||
//Draw
|
||||
void OsgMainApp::draw(){
|
||||
//Every load o remove has to be done before any drawing
|
||||
loadModels();
|
||||
deleteModels();
|
||||
|
||||
_viewer->frame();
|
||||
}
|
||||
//Events
|
||||
void OsgMainApp::mouseButtonPressEvent(float x,float y,int button){
|
||||
_viewer->getEventQueue()->mouseButtonPress(x, y, button);
|
||||
}
|
||||
void OsgMainApp::mouseButtonReleaseEvent(float x,float y,int button){
|
||||
_viewer->getEventQueue()->mouseButtonRelease(x, y, button);
|
||||
}
|
||||
void OsgMainApp::mouseMoveEvent(float x,float y){
|
||||
_viewer->getEventQueue()->mouseMotion(x, y);
|
||||
}
|
||||
void OsgMainApp::keyboardDown(int key){
|
||||
_viewer->getEventQueue()->keyPress(key);
|
||||
}
|
||||
void OsgMainApp::keyboardUp(int key){
|
||||
_viewer->getEventQueue()->keyRelease(key);
|
||||
}
|
||||
//Loading and unloading
|
||||
void OsgMainApp::loadObject(std::string filePath){
|
||||
Model newModel;
|
||||
newModel.filename = filePath;
|
||||
newModel.name = filePath;
|
||||
|
||||
int num = 0;
|
||||
for(unsigned int i=0;i<_vModels.size();i++){
|
||||
if(_vModels[i].name==newModel.name)
|
||||
return;
|
||||
}
|
||||
|
||||
_vModelsToLoad.push_back(newModel);
|
||||
|
||||
}
|
||||
void OsgMainApp::loadObject(std::string name,std::string filePath){
|
||||
|
||||
Model newModel;
|
||||
newModel.filename = filePath;
|
||||
newModel.name = name;
|
||||
|
||||
for(unsigned int i=0;i<_vModels.size();i++){
|
||||
if(_vModels[i].name==newModel.name){
|
||||
osg::notify(osg::ALWAYS)<<"Name already used"<<std::endl;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
_vModelsToLoad.push_back(newModel);
|
||||
}
|
||||
void OsgMainApp::unLoadObject(int number){
|
||||
if(_vModels.size() <= number){
|
||||
osg::notify(osg::FATAL)<<"Index number error"<<std::endl;
|
||||
return;
|
||||
}
|
||||
|
||||
Model modelToDelete = _vModels[number];
|
||||
_vModels.erase(_vModels.begin()+number);
|
||||
_vModelsToDelete.push_back(modelToDelete);
|
||||
}
|
||||
void OsgMainApp::clearScene(){
|
||||
_vModelsToDelete = _vModels;
|
||||
_vModels.clear();
|
||||
}
|
||||
//Other Functions
|
||||
int OsgMainApp::getNumberObjects(){
|
||||
return _vModels.size();
|
||||
}
|
||||
std::string OsgMainApp::getObjectName(int number){
|
||||
return _vModels[number].name;
|
||||
}
|
||||
void OsgMainApp::setClearColor(osg::Vec4f color){
|
||||
osg::notify(osg::ALWAYS)<<"Setting Clear Color"<<std::endl;
|
||||
_viewer->getCamera()->setClearColor(color);
|
||||
}
|
||||
osg::Vec4f OsgMainApp::getClearColor(){
|
||||
osg::notify(osg::ALWAYS)<<"Getting Clear Color"<<std::endl;
|
||||
return _viewer->getCamera()->getClearColor();
|
||||
}
|
||||
|
||||
void OsgMainApp::setQuat(float *q){
|
||||
osg::Quat quat(q[1], q[2], q[3], q[0]);
|
||||
|
||||
// Have to rotate the axes from OP NED frame to OSG frame (X east, Y north, Z down)
|
||||
double angle;
|
||||
osg::Vec3d axis;
|
||||
quat.getRotate(angle,axis);
|
||||
quat.makeRotate(angle, osg::Vec3d(axis[1],axis[0],-axis[2]));
|
||||
osg::Matrixd rot = osg::Matrixd::rotate(quat);
|
||||
|
||||
if (uavAttitudeAndScale) {
|
||||
osg::notify(osg::ALWAYS)<<"Setting attitude"<<std::endl;
|
||||
uavAttitudeAndScale->setMatrix(rot);
|
||||
} else {
|
||||
osg::notify(osg::ALWAYS)<<"Pointer missing"<<std::endl;
|
||||
}
|
||||
}
|
@ -1,191 +0,0 @@
|
||||
/*
|
||||
* OsgMainApp.hpp
|
||||
*
|
||||
* Created on: 29/05/2011
|
||||
* Author: Jorge Izquierdo Ciges
|
||||
*/
|
||||
|
||||
#ifndef OSGMAINAPP_HPP_
|
||||
#define OSGMAINAPP_HPP_
|
||||
|
||||
//Android log
|
||||
#include <android/log.h>
|
||||
#include <iostream>
|
||||
#include <cstdlib>
|
||||
#include <math.h>
|
||||
|
||||
//Standard libraries
|
||||
#include <string>
|
||||
|
||||
//osg
|
||||
#include <osg/GL>
|
||||
#include <osg/GLExtensions>
|
||||
#include <osg/Depth>
|
||||
#include <osg/Program>
|
||||
#include <osg/Shader>
|
||||
#include <osg/MatrixTransform>
|
||||
#include <osg/Node>
|
||||
#include <osg/Notify>
|
||||
//osgText
|
||||
#include <osgText/Text>
|
||||
//osgDB
|
||||
#include <osgDB/DatabasePager>
|
||||
#include <osgDB/Registry>
|
||||
#include <osgDB/ReadFile>
|
||||
#include <osgDB/WriteFile>
|
||||
//osg_viewer
|
||||
#include <osgViewer/Viewer>
|
||||
#include <osgViewer/Renderer>
|
||||
#include <osgViewer/ViewerEventHandlers>
|
||||
//osgGA
|
||||
#include <osgGA/GUIEventAdapter>
|
||||
#include <osgGA/MultiTouchTrackballManipulator>
|
||||
#include <osgGA/TrackballManipulator>
|
||||
#include <osgGA/FlightManipulator>
|
||||
#include <osgGA/DriveManipulator>
|
||||
#include <osgGA/KeySwitchMatrixManipulator>
|
||||
#include <osgGA/StateSetManipulator>
|
||||
#include <osgGA/AnimationPathManipulator>
|
||||
#include <osgGA/TerrainManipulator>
|
||||
#include <osgGA/SphericalManipulator>
|
||||
//Self headers
|
||||
#include "OsgAndroidNotifyHandler.hpp"
|
||||
|
||||
//Static plugins Macro
|
||||
USE_OSGPLUGIN(ive)
|
||||
USE_OSGPLUGIN(osg)
|
||||
USE_OSGPLUGIN(osg2)
|
||||
USE_OSGPLUGIN(terrain)
|
||||
USE_OSGPLUGIN(rgb)
|
||||
USE_OSGPLUGIN(OpenFlight)
|
||||
USE_OSGPLUGIN(dds)
|
||||
USE_OSGPLUGIN(3ds)
|
||||
USE_OSGPLUGIN(jpeg)
|
||||
USE_OSGPLUGIN(png)
|
||||
|
||||
//Static DOTOSG
|
||||
USE_DOTOSGWRAPPER_LIBRARY(osg)
|
||||
USE_DOTOSGWRAPPER_LIBRARY(osgFX)
|
||||
USE_DOTOSGWRAPPER_LIBRARY(osgParticle)
|
||||
USE_DOTOSGWRAPPER_LIBRARY(osgTerrain)
|
||||
USE_DOTOSGWRAPPER_LIBRARY(osgText)
|
||||
USE_DOTOSGWRAPPER_LIBRARY(osgViewer)
|
||||
USE_DOTOSGWRAPPER_LIBRARY(osgVolume)
|
||||
//Static serializer
|
||||
USE_SERIALIZER_WRAPPER_LIBRARY(osg)
|
||||
USE_SERIALIZER_WRAPPER_LIBRARY(osgAnimation)
|
||||
USE_SERIALIZER_WRAPPER_LIBRARY(osgFX)
|
||||
USE_SERIALIZER_WRAPPER_LIBRARY(osgManipulator)
|
||||
USE_SERIALIZER_WRAPPER_LIBRARY(osgParticle)
|
||||
USE_SERIALIZER_WRAPPER_LIBRARY(osgTerrain)
|
||||
USE_SERIALIZER_WRAPPER_LIBRARY(osgText)
|
||||
USE_SERIALIZER_WRAPPER_LIBRARY(osgVolume)
|
||||
|
||||
#define LOG_TAG "osgNativeLib"
|
||||
#define LOGI(...) __android_log_print(ANDROID_LOG_INFO,LOG_TAG,__VA_ARGS__)
|
||||
#define LOGE(...) __android_log_print(ANDROID_LOG_ERROR,LOG_TAG,__VA_ARGS__)
|
||||
|
||||
struct Model{
|
||||
std::string filename;
|
||||
std::string name;
|
||||
};
|
||||
|
||||
static const char gVertexShader[] =
|
||||
"varying vec4 color; \n"
|
||||
"const vec3 lightPos =vec3(0.0, 0.0, 10.0); \n"
|
||||
"const vec4 cessnaColor =vec4(0.8, 0.8, 0.8, 1.0); \n"
|
||||
"const vec4 lightAmbient =vec4(0.1, 0.1, 0.1, 1.0); \n"
|
||||
"const vec4 lightDiffuse =vec4(0.4, 0.4, 0.4, 1.0); \n"
|
||||
"const vec4 lightSpecular =vec4(0.8, 0.8, 0.8, 1.0); \n"
|
||||
"void DirectionalLight(in vec3 normal, \n"
|
||||
" in vec3 ecPos, \n"
|
||||
" inout vec4 ambient, \n"
|
||||
" inout vec4 diffuse, \n"
|
||||
" inout vec4 specular) \n"
|
||||
"{ \n"
|
||||
" float nDotVP; \n"
|
||||
" vec3 L = normalize(gl_ModelViewMatrix*vec4(lightPos, 0.0)).xyz; \n"
|
||||
" nDotVP = max(0.0, dot(normal, L)); \n"
|
||||
" \n"
|
||||
" if (nDotVP > 0.0) { \n"
|
||||
" vec3 E = normalize(-ecPos); \n"
|
||||
" vec3 R = normalize(reflect( L, normal )); \n"
|
||||
" specular = pow(max(dot(R, E), 0.0), 16.0) * lightSpecular; \n"
|
||||
" } \n"
|
||||
" ambient = lightAmbient; \n"
|
||||
" diffuse = lightDiffuse * nDotVP; \n"
|
||||
"} \n"
|
||||
"void main() { \n"
|
||||
" vec4 ambiCol = vec4(0.0); \n"
|
||||
" vec4 diffCol = vec4(0.0); \n"
|
||||
" vec4 specCol = vec4(0.0); \n"
|
||||
" gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex; \n"
|
||||
" vec3 normal = normalize(gl_NormalMatrix * gl_Normal); \n"
|
||||
" vec4 ecPos = gl_ModelViewMatrix * gl_Vertex; \n"
|
||||
" DirectionalLight(normal, ecPos.xyz, ambiCol, diffCol, specCol); \n"
|
||||
" color = cessnaColor * (ambiCol + diffCol + specCol); \n"
|
||||
"} \n";
|
||||
|
||||
static const char gFragmentShader[] =
|
||||
"precision mediump float; \n"
|
||||
"varying mediump vec4 color; \n"
|
||||
"void main() { \n"
|
||||
" gl_FragColor = color; \n"
|
||||
"} \n";
|
||||
|
||||
|
||||
class OsgMainApp{
|
||||
private:
|
||||
osg::ref_ptr<osgViewer::Viewer> _viewer;
|
||||
osg::ref_ptr<osg::Group> _root;
|
||||
osg::ref_ptr<osg::StateSet> _state;
|
||||
osg::ref_ptr<osgGA::KeySwitchMatrixManipulator> _manipulator;
|
||||
|
||||
float _lodScale;
|
||||
unsigned int _prevFrame;
|
||||
|
||||
bool _initialized;
|
||||
bool _clean_scene;
|
||||
|
||||
OsgAndroidNotifyHandler *_notifyHandler;
|
||||
|
||||
std::vector<Model> _vModels;
|
||||
std::vector<Model> _vModelsToLoad;
|
||||
std::vector<Model> _vModelsToDelete;
|
||||
|
||||
void loadModels();
|
||||
void deleteModels();
|
||||
|
||||
public:
|
||||
OsgMainApp();
|
||||
~OsgMainApp();
|
||||
|
||||
//Initialization function
|
||||
void initOsgWindow(int x,int y,int width,int height);
|
||||
//Draw
|
||||
void draw();
|
||||
//Events
|
||||
void mouseButtonPressEvent(float x,float y,int button);
|
||||
void mouseButtonReleaseEvent(float x,float y,int button);
|
||||
void mouseMoveEvent(float x,float y);
|
||||
void keyboardDown(int key);
|
||||
void keyboardUp(int key);
|
||||
//Loading and unloading
|
||||
void loadObject(std::string filePath);
|
||||
void loadObject(std::string name,std::string filePath);
|
||||
void unLoadObject(int number);
|
||||
void clearScene();
|
||||
//Other functions
|
||||
int getNumberObjects();
|
||||
std::string getObjectName(int nunmber);
|
||||
|
||||
void setClearColor(osg::Vec4f color);
|
||||
osg::Vec4f getClearColor();
|
||||
|
||||
//Manipulating the view
|
||||
void setQuat(float *q);
|
||||
osg::MatrixTransform *uavAttitudeAndScale;
|
||||
};
|
||||
|
||||
|
||||
#endif /* OSGMAINAPP_HPP_ */
|
@ -1,119 +0,0 @@
|
||||
#include <string.h>
|
||||
#include <jni.h>
|
||||
#include <android/log.h>
|
||||
|
||||
#include <iostream>
|
||||
|
||||
#include "OsgMainApp.hpp"
|
||||
|
||||
OsgMainApp mainApp;
|
||||
|
||||
extern "C" {
|
||||
JNIEXPORT void JNICALL Java_org_openpilot_osg_osgNativeLib_init(JNIEnv * env, jobject obj, jint width, jint height);
|
||||
JNIEXPORT void JNICALL Java_org_openpilot_osg_osgNativeLib_step(JNIEnv * env, jobject obj);
|
||||
JNIEXPORT void JNICALL Java_org_openpilot_osg_osgNativeLib_clearContents(JNIEnv * env, jobject obj);
|
||||
JNIEXPORT void JNICALL Java_org_openpilot_osg_osgNativeLib_mouseButtonPressEvent(JNIEnv * env, jobject obj, jfloat x, jfloat y, jint button);
|
||||
JNIEXPORT void JNICALL Java_org_openpilot_osg_osgNativeLib_mouseButtonReleaseEvent(JNIEnv * env, jobject obj, jfloat x, jfloat y, jint button);
|
||||
JNIEXPORT void JNICALL Java_org_openpilot_osg_osgNativeLib_mouseMoveEvent(JNIEnv * env, jobject obj, jfloat x, jfloat y);
|
||||
JNIEXPORT void JNICALL Java_org_openpilot_osg_osgNativeLib_keyboardDown(JNIEnv * env, jobject obj, jint key);
|
||||
JNIEXPORT void JNICALL Java_org_openpilot_osg_osgNativeLib_keyboardUp(JNIEnv * env, jobject obj, jint key);
|
||||
JNIEXPORT jintArray JNICALL Java_org_openpilot_osg_osgNativeLib_getClearColor(JNIEnv * env, jobject obj);
|
||||
JNIEXPORT void JNICALL Java_org_openpilot_osg_osgNativeLib_setClearColor(JNIEnv * env, jobject obj, jint red, jint green, jint blue);
|
||||
JNIEXPORT void JNICALL Java_org_openpilot_osg_osgNativeLib_loadObject(JNIEnv * env, jobject obj, jstring address);
|
||||
JNIEXPORT void JNICALL Java_org_openpilot_osg_osgNativeLib_unLoadObject(JNIEnv * env, jobject obj, jint number);
|
||||
JNIEXPORT jobjectArray JNICALL Java_org_openpilot_osg_osgNativeLib_getObjectNames(JNIEnv * env, jobject obj);
|
||||
JNIEXPORT void JNICALL Java_org_openpilot_osg_osgNativeLib_setQuat(JNIEnv * env, jobject obj, jfloat q1, jfloat q2, jfloat q3, jfloat q4);
|
||||
};
|
||||
|
||||
JNIEXPORT void JNICALL Java_org_openpilot_osg_osgNativeLib_init(JNIEnv * env, jobject obj, jint width, jint height){
|
||||
mainApp.initOsgWindow(0,0,width,height);
|
||||
}
|
||||
JNIEXPORT void JNICALL Java_org_openpilot_osg_osgNativeLib_step(JNIEnv * env, jobject obj){
|
||||
mainApp.draw();
|
||||
}
|
||||
JNIEXPORT void JNICALL Java_org_openpilot_osg_osgNativeLib_clearContents(JNIEnv * env, jobject obj){
|
||||
mainApp.clearScene();
|
||||
}
|
||||
JNIEXPORT void JNICALL Java_org_openpilot_osg_osgNativeLib_mouseButtonPressEvent(JNIEnv * env, jobject obj, jfloat x, jfloat y, jint button){
|
||||
mainApp.mouseButtonPressEvent(x,y,button);
|
||||
}
|
||||
JNIEXPORT void JNICALL Java_org_openpilot_osg_osgNativeLib_mouseButtonReleaseEvent(JNIEnv * env, jobject obj, jfloat x, jfloat y, jint button){
|
||||
mainApp.mouseButtonReleaseEvent(x,y,button);
|
||||
}
|
||||
JNIEXPORT void JNICALL Java_org_openpilot_osg_osgNativeLib_mouseMoveEvent(JNIEnv * env, jobject obj, jfloat x, jfloat y){
|
||||
mainApp.mouseMoveEvent(x,y);
|
||||
}
|
||||
JNIEXPORT void JNICALL Java_org_openpilot_osg_osgNativeLib_keyboardDown(JNIEnv * env, jobject obj, jint key){
|
||||
mainApp.keyboardDown(key);
|
||||
}
|
||||
JNIEXPORT void JNICALL Java_org_openpilot_osg_osgNativeLib_keyboardUp(JNIEnv * env, jobject obj, jint key){
|
||||
mainApp.keyboardUp(key);
|
||||
}
|
||||
JNIEXPORT jintArray JNICALL Java_org_openpilot_osg_osgNativeLib_getClearColor(JNIEnv * env, jobject obj){
|
||||
|
||||
jintArray color;
|
||||
color = env->NewIntArray(3);
|
||||
if (color == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
osg::Vec4 vTemp1 = mainApp.getClearColor();
|
||||
|
||||
jint vTemp2[3];
|
||||
|
||||
vTemp2[0] = (int) (vTemp1.r() * 255);
|
||||
vTemp2[1] = (int) (vTemp1.g() * 255);
|
||||
vTemp2[2] = (int) (vTemp1.b() * 255);
|
||||
|
||||
std::cout<<vTemp2[0]<<" "<<vTemp2[1]<<" "<<vTemp2[2]<<" "<<std::endl;
|
||||
|
||||
env->SetIntArrayRegion(color, 0, 3, vTemp2);
|
||||
|
||||
return color;
|
||||
}
|
||||
JNIEXPORT void JNICALL Java_org_openpilot_osg_osgNativeLib_setClearColor(JNIEnv * env, jobject obj, jint red, jint green, jint blue){
|
||||
osg::Vec4 tVec((float) red / 255.0f, (float) green / 255.0f, (float) blue / 255.0f, 0.0f);
|
||||
mainApp.setClearColor(tVec);
|
||||
}
|
||||
JNIEXPORT void JNICALL Java_org_openpilot_osg_osgNativeLib_loadObject(JNIEnv * env, jobject obj, jstring address){
|
||||
//Import Strings from JNI
|
||||
const char *nativeAddress = env->GetStringUTFChars(address, JNI_FALSE);
|
||||
|
||||
mainApp.loadObject(std::string(nativeAddress));
|
||||
|
||||
//Release Strings to JNI
|
||||
env->ReleaseStringUTFChars(address, nativeAddress);
|
||||
}
|
||||
JNIEXPORT void JNICALL Java_org_openpilot_osg_osgNativeLib_loadObject(JNIEnv * env, jobject obj, jstring address, jstring name){
|
||||
//Import Strings from JNI
|
||||
const char *nativeAddress = env->GetStringUTFChars(address, JNI_FALSE);
|
||||
const char *nativeName = env->GetStringUTFChars(name, JNI_FALSE);
|
||||
|
||||
mainApp.loadObject(std::string(nativeName),std::string(nativeAddress));
|
||||
|
||||
//Release Strings to JNI
|
||||
env->ReleaseStringUTFChars(address, nativeAddress);
|
||||
env->ReleaseStringUTFChars(address, nativeName);
|
||||
}
|
||||
JNIEXPORT void JNICALL Java_org_openpilot_osg_osgNativeLib_unLoadObject(JNIEnv * env, jobject obj, jint number){
|
||||
|
||||
mainApp.unLoadObject(number);
|
||||
|
||||
}
|
||||
JNIEXPORT jobjectArray JNICALL Java_org_openpilot_osg_osgNativeLib_getObjectNames(JNIEnv * env, jobject obj){
|
||||
|
||||
jobjectArray fileNames;
|
||||
unsigned int numModels = mainApp.getNumberObjects();
|
||||
fileNames = (jobjectArray)env->NewObjectArray(numModels,env->FindClass("java/lang/String"),env->NewStringUTF(""));
|
||||
|
||||
for(unsigned int i=0;i < numModels;i++){
|
||||
std::string name = mainApp.getObjectName(i);
|
||||
env->SetObjectArrayElement(fileNames,i,env->NewStringUTF(name.c_str()));
|
||||
}
|
||||
|
||||
return fileNames;
|
||||
}
|
||||
|
||||
JNIEXPORT void JNICALL Java_org_openpilot_osg_osgNativeLib_setQuat(JNIEnv * env, jobject obj, jfloat q1, jfloat q2, jfloat q3, jfloat q4){
|
||||
float q[4] = {q1, q2, q3, q4};
|
||||
mainApp.setQuat(q);
|
||||
}
|
@ -1,3 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<lint>
|
||||
</lint>
|
@ -1,36 +0,0 @@
|
||||
-optimizationpasses 5
|
||||
-dontusemixedcaseclassnames
|
||||
-dontskipnonpubliclibraryclasses
|
||||
-dontpreverify
|
||||
-verbose
|
||||
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
|
||||
|
||||
-keep public class * extends android.app.Activity
|
||||
-keep public class * extends android.app.Application
|
||||
-keep public class * extends android.app.Service
|
||||
-keep public class * extends android.content.BroadcastReceiver
|
||||
-keep public class * extends android.content.ContentProvider
|
||||
-keep public class * extends android.app.backup.BackupAgentHelper
|
||||
-keep public class * extends android.preference.Preference
|
||||
-keep public class com.android.vending.licensing.ILicensingService
|
||||
|
||||
-keepclasseswithmembers class * {
|
||||
native <methods>;
|
||||
}
|
||||
|
||||
-keepclasseswithmembernames class * {
|
||||
public <init>(android.content.Context, android.util.AttributeSet);
|
||||
}
|
||||
|
||||
-keepclasseswithmembernames class * {
|
||||
public <init>(android.content.Context, android.util.AttributeSet, int);
|
||||
}
|
||||
|
||||
-keepclassmembers enum * {
|
||||
public static **[] values();
|
||||
public static ** valueOf(java.lang.String);
|
||||
}
|
||||
|
||||
-keep class * implements android.os.Parcelable {
|
||||
public static final android.os.Parcelable$Creator *;
|
||||
}
|
@ -1,11 +0,0 @@
|
||||
# This file is automatically generated by Android Tools.
|
||||
# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
|
||||
#
|
||||
# This file must be checked in Version Control Systems.
|
||||
#
|
||||
# To customize properties used by the Ant build system use,
|
||||
# "ant.properties", and override values to adapt the script to your
|
||||
# project structure.
|
||||
|
||||
# Project target.
|
||||
target=Google Inc.:Google APIs:16
|
Before Width: | Height: | Size: 456 B |
Before Width: | Height: | Size: 2.3 KiB |
Before Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 695 B |
Before Width: | Height: | Size: 849 B |
Before Width: | Height: | Size: 25 KiB |
Before Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 797 B |
Before Width: | Height: | Size: 9.4 KiB |
Before Width: | Height: | Size: 9.7 KiB |
Before Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 1.5 KiB |
Before Width: | Height: | Size: 1.0 KiB |
Before Width: | Height: | Size: 835 B |
Before Width: | Height: | Size: 574 B |
Before Width: | Height: | Size: 456 B |
Before Width: | Height: | Size: 47 KiB |
Before Width: | Height: | Size: 456 B |
Before Width: | Height: | Size: 47 KiB |
@ -1,138 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_alignParentLeft="true"
|
||||
android:layout_gravity="center_horizontal" >
|
||||
|
||||
<Button
|
||||
android:id="@+id/launch_controller"
|
||||
android:layout_width="132dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_column="3"
|
||||
android:layout_gravity="right"
|
||||
android:layout_row="1"
|
||||
android:layout_rowSpan="4"
|
||||
android:background="@android:color/transparent"
|
||||
android:drawableTop="@drawable/ic_controller"
|
||||
android:text="@string/controller_name" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/launch_object_browser"
|
||||
android:layout_width="132dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_column="0"
|
||||
android:layout_gravity="right|bottom"
|
||||
android:layout_row="2"
|
||||
android:layout_rowSpan="2"
|
||||
android:background="@android:color/transparent"
|
||||
android:drawableTop="@drawable/ic_browser"
|
||||
android:text="@string/object_browser_name" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/launch_location"
|
||||
android:layout_width="132dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_column="2"
|
||||
android:layout_gravity="right|bottom"
|
||||
android:layout_row="2"
|
||||
android:layout_rowSpan="2"
|
||||
android:background="@android:color/transparent"
|
||||
android:drawableTop="@drawable/ic_map"
|
||||
android:text="@string/location_name" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/launch_tuning"
|
||||
android:layout_width="132dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_column="4"
|
||||
android:layout_gravity="right|bottom"
|
||||
android:layout_row="2"
|
||||
android:layout_rowSpan="2"
|
||||
android:background="@android:color/transparent"
|
||||
android:drawableTop="@drawable/ic_tuning"
|
||||
android:text="@string/tuning" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/launch_logger"
|
||||
android:layout_width="132dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_column="3"
|
||||
android:layout_gravity="left|bottom"
|
||||
android:layout_row="3"
|
||||
android:layout_rowSpan="3"
|
||||
android:background="@android:color/transparent"
|
||||
android:drawableTop="@drawable/ic_logging"
|
||||
android:text="@string/logger_name" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/launch_alarms"
|
||||
android:layout_width="132dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_column="0"
|
||||
android:layout_gravity="left"
|
||||
android:layout_row="5"
|
||||
android:background="@android:color/transparent"
|
||||
android:drawableTop="@drawable/ic_alarms"
|
||||
android:text="@string/alarms" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/launch_pfd"
|
||||
android:layout_width="132dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_column="2"
|
||||
android:layout_gravity="left"
|
||||
android:layout_row="5"
|
||||
android:background="@android:color/transparent"
|
||||
android:drawableTop="@drawable/ic_pfd"
|
||||
android:text="@string/pfd_name" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/launch_osgViewer"
|
||||
android:layout_width="132dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_column="0"
|
||||
android:layout_gravity="right"
|
||||
android:layout_row="9"
|
||||
android:background="@android:color/transparent"
|
||||
android:drawableTop="@drawable/ic_alarms"
|
||||
android:text="@string/_3dview" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/launch_tester"
|
||||
android:layout_width="132dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_column="2"
|
||||
android:layout_row="9"
|
||||
android:background="@android:color/transparent"
|
||||
android:drawableTop="@drawable/ic_alarms"
|
||||
android:text="@string/tester" />
|
||||
|
||||
<Space
|
||||
android:layout_width="1dp"
|
||||
android:layout_height="32dp"
|
||||
android:layout_column="0"
|
||||
android:layout_row="0" />
|
||||
|
||||
<Space
|
||||
android:layout_width="1dp"
|
||||
android:layout_height="47dp"
|
||||
android:layout_column="0"
|
||||
android:layout_row="4" />
|
||||
|
||||
<Space
|
||||
android:layout_width="1dp"
|
||||
android:layout_height="47dp"
|
||||
android:layout_column="0"
|
||||
android:layout_row="8" />
|
||||
|
||||
<Space
|
||||
android:layout_height="15dp"
|
||||
android:layout_column="1" />
|
||||
|
||||
<Space
|
||||
android:layout_width="100dp"
|
||||
android:layout_height="2dp"
|
||||
android:layout_row="6" />
|
||||
|
||||
</GridLayout>
|
@ -1,103 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:setting_attributes="http://schemas.android.com/apk/res/org.openpilot.androidgcs"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="vertical" >
|
||||
|
||||
<Button
|
||||
android:id="@+id/saveBtn"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_alignParentBottom="true"
|
||||
android:layout_alignParentRight="true"
|
||||
android:text="@string/save" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/applyBtn"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_alignParentBottom="true"
|
||||
android:layout_toLeftOf="@+id/saveBtn"
|
||||
android:text="@string/apply" />
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/linearLayout3"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_alignParentLeft="true"
|
||||
android:layout_alignParentTop="true" >
|
||||
|
||||
<org.openpilot.androidgcs.views.ScrollBarView
|
||||
android:id="@+id/rollRateKp"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="0.5"
|
||||
setting_attributes:max_value="0.01"
|
||||
setting_attributes:setting_name="Roll Rate Kp" >
|
||||
</org.openpilot.androidgcs.views.ScrollBarView>
|
||||
|
||||
<org.openpilot.androidgcs.views.ScrollBarView
|
||||
android:id="@+id/pitchRateKp"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="0.5"
|
||||
setting_attributes:max_value="0.01"
|
||||
setting_attributes:setting_name="Pitch Rate Kp" >
|
||||
</org.openpilot.androidgcs.views.ScrollBarView>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/linearLayout1"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_alignParentLeft="true"
|
||||
android:layout_below="@+id/linearLayout3" >
|
||||
|
||||
<org.openpilot.androidgcs.views.ScrollBarView
|
||||
android:id="@+id/rollRateKi"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="0.5"
|
||||
setting_attributes:max_value="0.05"
|
||||
setting_attributes:setting_name="Roll Rate Ki" >
|
||||
</org.openpilot.androidgcs.views.ScrollBarView>
|
||||
|
||||
<org.openpilot.androidgcs.views.ScrollBarView
|
||||
android:id="@+id/pitchRateKi"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="0.5"
|
||||
setting_attributes:max_value="0.05"
|
||||
setting_attributes:setting_name="Pitch Rate Ki" >
|
||||
</org.openpilot.androidgcs.views.ScrollBarView>
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/linearLayout2"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_alignParentLeft="true"
|
||||
android:layout_below="@+id/linearLayout1" >
|
||||
|
||||
<org.openpilot.androidgcs.views.ScrollBarView
|
||||
android:id="@+id/rollKp"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="0.5"
|
||||
setting_attributes:max_value="5"
|
||||
setting_attributes:setting_name="Roll Kp" >
|
||||
</org.openpilot.androidgcs.views.ScrollBarView>
|
||||
|
||||
<org.openpilot.androidgcs.views.ScrollBarView
|
||||
android:id="@+id/pitchKp"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="0.5"
|
||||
setting_attributes:max_value="5"
|
||||
setting_attributes:setting_name="Pitch Kp" >
|
||||
</org.openpilot.androidgcs.views.ScrollBarView>
|
||||
</LinearLayout>
|
||||
|
||||
</RelativeLayout>
|
@ -1,28 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="vertical" >
|
||||
|
||||
<TextView
|
||||
android:id="@+id/textView1"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/manual_control_values_"
|
||||
android:textAppearance="?android:attr/textAppearanceLarge" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/manualControlValues"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="240dp"
|
||||
android:text=""
|
||||
android:textAppearance="?android:attr/textAppearanceLarge" />
|
||||
|
||||
<com.MobileAnarchy.Android.Widgets.Joystick.DualJoystickView
|
||||
android:id="@+id/dualjoystickView"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="175dip"
|
||||
android:layout_marginTop="5dip" >
|
||||
</com.MobileAnarchy.Android.Widgets.Joystick.DualJoystickView>
|
||||
|
||||
</LinearLayout>
|
@ -1,37 +0,0 @@
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:orientation="vertical" android:layout_width="fill_parent"
|
||||
android:layout_height="fill_parent">
|
||||
|
||||
<com.MobileAnarchy.Android.Widgets.Joystick.DualJoystickView
|
||||
android:id="@+id/dualjoystickView" android:layout_gravity="center_horizontal"
|
||||
android:layout_marginTop="5dip" android:layout_width="fill_parent"
|
||||
android:layout_height="175dip" />
|
||||
|
||||
<TableLayout android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content" android:layout_gravity="center_horizontal"
|
||||
android:layout_marginTop="10dip">
|
||||
<TableRow>
|
||||
<TextView android:text="X" android:layout_width="50dip"
|
||||
android:layout_height="wrap_content"></TextView>
|
||||
<TextView android:text="" android:id="@+id/TextViewX1"
|
||||
android:layout_width="150dip" android:layout_height="wrap_content"></TextView>
|
||||
|
||||
<TextView android:text="X" android:layout_width="50dip"
|
||||
android:layout_height="wrap_content"></TextView>
|
||||
<TextView android:text="" android:id="@+id/TextViewX2"
|
||||
android:layout_width="100dip" android:layout_height="wrap_content"></TextView>
|
||||
</TableRow>
|
||||
<TableRow>
|
||||
<TextView android:text="Y" android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"></TextView>
|
||||
<TextView android:text="" android:id="@+id/TextViewY1"
|
||||
android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
|
||||
|
||||
<TextView android:text="Y" android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"></TextView>
|
||||
<TextView android:text="" android:id="@+id/TextViewY2"
|
||||
android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
|
||||
</TableRow>
|
||||
</TableLayout>
|
||||
|
||||
</LinearLayout>
|
@ -1,126 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_alignParentLeft="true"
|
||||
android:layout_gravity="center_horizontal" >
|
||||
|
||||
<Button
|
||||
android:id="@+id/launch_object_browser"
|
||||
android:layout_width="132dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_column="0"
|
||||
android:layout_gravity="center"
|
||||
android:layout_row="0"
|
||||
android:layout_rowSpan="2"
|
||||
android:background="@android:color/transparent"
|
||||
android:drawableTop="@drawable/ic_browser"
|
||||
android:text="@string/object_browser_name" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/launch_location"
|
||||
android:layout_width="132dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_column="1"
|
||||
android:layout_gravity="center"
|
||||
android:layout_row="0"
|
||||
android:layout_rowSpan="2"
|
||||
android:background="@android:color/transparent"
|
||||
android:drawableTop="@drawable/ic_map"
|
||||
android:text="@string/location_name" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/launch_pfd"
|
||||
android:layout_width="132dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_column="0"
|
||||
android:layout_gravity="center"
|
||||
android:layout_row="2"
|
||||
android:layout_rowSpan="2"
|
||||
android:background="@android:color/transparent"
|
||||
android:drawableTop="@drawable/ic_pfd"
|
||||
android:text="@string/pfd_name" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/launch_controller"
|
||||
android:layout_width="132dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_column="1"
|
||||
android:layout_gravity="right"
|
||||
android:layout_row="2"
|
||||
android:layout_rowSpan="2"
|
||||
android:background="@android:color/transparent"
|
||||
android:drawableTop="@drawable/ic_controller"
|
||||
android:text="@string/controller_name" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/launch_logger"
|
||||
android:layout_width="132dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_column="0"
|
||||
android:layout_gravity="right"
|
||||
android:layout_row="4"
|
||||
android:layout_rowSpan="2"
|
||||
android:background="@android:color/transparent"
|
||||
android:drawableTop="@drawable/ic_logging"
|
||||
android:text="@string/logger_name" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/launch_alarms"
|
||||
android:layout_width="132dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_column="1"
|
||||
android:layout_gravity="right"
|
||||
android:layout_row="4"
|
||||
android:layout_rowSpan="2"
|
||||
android:background="@android:color/transparent"
|
||||
android:drawableTop="@drawable/ic_alarms"
|
||||
android:text="@string/alarms" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/launch_tester"
|
||||
android:layout_width="132dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_row="8"
|
||||
android:layout_column="0"
|
||||
android:layout_rowSpan="2"
|
||||
android:background="@android:color/transparent"
|
||||
android:drawableTop="@drawable/ic_alarms"
|
||||
android:text="@string/tester" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/launch_osgViewer"
|
||||
android:layout_width="132dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_column="1"
|
||||
android:layout_gravity="right"
|
||||
android:layout_row="8"
|
||||
android:layout_rowSpan="2"
|
||||
android:background="@android:color/transparent"
|
||||
android:drawableTop="@drawable/ic_alarms"
|
||||
android:text="@string/_3dview" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/launch_tuning"
|
||||
android:layout_width="132dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_column="0"
|
||||
android:layout_gravity="right"
|
||||
android:layout_row="6"
|
||||
android:layout_rowSpan="2"
|
||||
android:background="@android:color/transparent"
|
||||
android:drawableTop="@drawable/ic_tuning"
|
||||
android:text="@string/tuning" />
|
||||
|
||||
<Space
|
||||
android:layout_width="1dp"
|
||||
android:layout_height="32dp"
|
||||
android:layout_column="0"
|
||||
android:layout_row="0" />
|
||||
|
||||
<Space
|
||||
android:layout_width="100dp"
|
||||
android:layout_height="69dp"
|
||||
android:layout_row="1" />
|
||||
|
||||
</GridLayout>
|
@ -1,59 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_alignParentLeft="true"
|
||||
android:layout_gravity="center_horizontal" >
|
||||
|
||||
<TextView
|
||||
android:id="@+id/logger_number_of_objects_title"
|
||||
android:layout_width="132dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_column="0"
|
||||
android:layout_gravity="center"
|
||||
android:layout_row="0"
|
||||
android:layout_rowSpan="1"
|
||||
android:text="@string/number_of_objects" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/logger_number_of_objects"
|
||||
android:layout_width="132dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_column="1"
|
||||
android:layout_gravity="center"
|
||||
android:layout_row="0"
|
||||
android:layout_rowSpan="1"
|
||||
android:text="" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/logger_number_of_bytes_title"
|
||||
android:layout_width="132dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_column="0"
|
||||
android:layout_gravity="center"
|
||||
android:layout_row="1"
|
||||
android:layout_rowSpan="1"
|
||||
android:text="@string/number_of_bytes" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/logger_number_of_bytes"
|
||||
android:layout_width="132dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_column="1"
|
||||
android:layout_gravity="center"
|
||||
android:layout_row="1"
|
||||
android:layout_rowSpan="1"
|
||||
android:text="" />
|
||||
|
||||
<Space
|
||||
android:layout_width="1dp"
|
||||
android:layout_height="32dp"
|
||||
android:layout_column="0"
|
||||
android:layout_row="0" />
|
||||
|
||||
<Space
|
||||
android:layout_width="100dp"
|
||||
android:layout_height="69dp"
|
||||
android:layout_row="1" />
|
||||
|
||||
</GridLayout>
|
@ -1,12 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:orientation="vertical" android:layout_width="fill_parent"
|
||||
android:layout_height="fill_parent">
|
||||
<com.google.android.maps.MapView
|
||||
android:id="@+id/map_view" android:layout_width="fill_parent"
|
||||
android:layout_height="fill_parent" android:enabled="true"
|
||||
android:clickable="true" android:apiKey="0ugzv7PkCKSo8cNXxn9A251sxOfROBdjHG0eQEw" />
|
||||
<!-- Note: If you are testing this you will need to use a debugging api key -->
|
||||
<!-- https://developers.google.com/maps/documentation/android/mapkey -->
|
||||
</LinearLayout>
|
||||
|
@ -1,20 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="vertical" >
|
||||
|
||||
<SeekBar
|
||||
android:id="@+id/altitude_slider"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:max="50" />
|
||||
|
||||
<FrameLayout
|
||||
android:id="@+id/map_view"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:background="@drawable/map_positioner_background" >
|
||||
</FrameLayout>
|
||||
|
||||
</LinearLayout>
|
@ -1,38 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:orientation="vertical"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="fill_parent"
|
||||
>
|
||||
<LinearLayout
|
||||
android:orientation="vertical"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="wrap_content"
|
||||
>
|
||||
<TextView
|
||||
android:id="@+id/longitude"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="fill_parent"
|
||||
android:text="@string/longitude"
|
||||
/>
|
||||
<TextView
|
||||
android:id="@+id/latitude"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="fill_parent"
|
||||
android:text="@string/latitude"
|
||||
/>
|
||||
<TextView
|
||||
android:id="@+id/altitude"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="fill_parent"
|
||||
android:text="@string/altitude"
|
||||
/>
|
||||
</LinearLayout>
|
||||
<org.openpilot.androidgcs.MyCustomMapView
|
||||
android:id="@+id/mapview"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="fill_parent"
|
||||
android:clickable="true"
|
||||
android:apiKey="098Goj3psJ2Vg_lGi2v0pRWf4mqxjBvh2FI4frg"
|
||||
/>
|
||||
</LinearLayout>
|
@ -1,95 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_gravity="right"
|
||||
android:gravity="right" >
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/linearLayout1"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_alignParentLeft="true"
|
||||
android:layout_alignParentTop="true"
|
||||
android:layout_marginLeft="5dp"
|
||||
android:orientation="vertical" >
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="wrap_content" >
|
||||
|
||||
<CheckBox
|
||||
android:id="@+id/settingsCheck"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:checked="true"
|
||||
android:text="@string/settings" />
|
||||
|
||||
<CheckBox
|
||||
android:id="@+id/dataCheck"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:checked="true"
|
||||
android:text="@string/data" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<View
|
||||
android:layout_height="1dip"
|
||||
android:layout_width="fill_parent"
|
||||
android:background="#FFFFFFFF" />
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="wrap_content" >
|
||||
|
||||
<ListView
|
||||
android:id="@+id/object_list"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="2"
|
||||
android:choiceMode="singleChoice"
|
||||
android:drawSelectorOnTop="true" />
|
||||
|
||||
<View
|
||||
android:layout_width="1dip"
|
||||
android:layout_height="fill_parent"
|
||||
android:background="#FFFFFFFF" />
|
||||
|
||||
<RelativeLayout
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="fill_parent"
|
||||
android:layout_weight="1"
|
||||
android:orientation="vertical" >
|
||||
|
||||
<TextView
|
||||
android:id="@+id/object_information"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_alignParentTop="true"
|
||||
android:layout_marginLeft="12dp"
|
||||
android:layout_marginTop="12dp"
|
||||
android:textAppearance="?android:attr/textAppearanceMedium" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/editButton"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_alignParentBottom="true"
|
||||
android:layout_alignParentRight="true"
|
||||
android:text="@string/edit" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/object_load_button"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_alignParentBottom="true"
|
||||
android:layout_toLeftOf="@+id/editButton"
|
||||
android:text="@string/load" />
|
||||
|
||||
</RelativeLayout>
|
||||
|
||||
</LinearLayout>
|
||||
</LinearLayout>
|
||||
|
||||
</RelativeLayout>
|
@ -1,45 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="500dp"
|
||||
android:orientation="vertical"
|
||||
tools:context=".ObjectEditor" >
|
||||
|
||||
<ScrollView
|
||||
android:id="@+id/scrollView1"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1.56" >
|
||||
|
||||
<org.openpilot.androidgcs.ObjectEditView
|
||||
android:id="@+id/object_edit_view"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content" >
|
||||
</org.openpilot.androidgcs.ObjectEditView>
|
||||
|
||||
</ScrollView>
|
||||
|
||||
<!-- View android:layout_width="200dp" android:layout_height="1dip" android:background="#FFFFFFFF" / -->
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="64dp"
|
||||
android:layout_weight="1"
|
||||
android:gravity="right" >
|
||||
|
||||
<Button
|
||||
android:id="@+id/object_edit_send_button"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/send_button" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/object_edit_save_button"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/save_button" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
</LinearLayout>
|
@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="fill_parent"
|
||||
android:padding="10dp"
|
||||
android:textSize="16sp" >
|
||||
</TextView>
|
@ -1,12 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="vertical" >
|
||||
|
||||
<org.openpilot.androidgcs.AttitudeView
|
||||
android:id="@+id/attitude_view"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content" />
|
||||
|
||||
</LinearLayout>
|
@ -1,19 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_gravity="center" >
|
||||
|
||||
<fragment
|
||||
android:name="org.openpilot.androidgcs.fragments.SystemAlarmsFragment"
|
||||
android:id="@+id/viewer"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="match_parent" />
|
||||
|
||||
<fragment
|
||||
android:name="org.openpilot.androidgcs.fragments.PFD"
|
||||
android:id="@+id/pfd"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="match_parent" />
|
||||
|
||||
</LinearLayout>
|
@ -1,18 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="vertical" >
|
||||
|
||||
<ProgressBar
|
||||
android:id="@+id/progressBar3"
|
||||
style="?android:attr/progressBarStyleHorizontal"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/system_alarms_fragment_field"
|
||||
android:layout_width="200dip"
|
||||
android:layout_height="match_parent" />
|
||||
|
||||
</LinearLayout>
|
@ -1,31 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:id="@+id/searchProgressWrapper"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="horizontal" >
|
||||
|
||||
<TextView
|
||||
android:id="@+id/telemetry_stats_rx_rate_label"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/rxrate" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/telemetry_stats_rx_rate"
|
||||
android:layout_width="64dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/telemetry_stats_tx_rate_label"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/txrate" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/telemetry_stats_tx_rate"
|
||||
android:layout_width="64dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="" />
|
||||
</LinearLayout>
|
@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
<TextView android:text="TextView" android:layout_width="wrap_content" android:id="@+id/telemetryWidgetStatus" android:layout_height="wrap_content"></TextView>
|
||||
</LinearLayout>
|
@ -1,83 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:setting_attributes="http://schemas.android.com/apk/res/org.openpilot.androidgcs"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="vertical" >
|
||||
|
||||
<ScrollView
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0dp"
|
||||
android:layout_weight="1"
|
||||
android:orientation="vertical" >
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical" >
|
||||
|
||||
<org.openpilot.androidgcs.views.ScrollBarView
|
||||
android:id="@+id/rollRateKp"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
setting_attributes:setting_name="Roll Rate Kp"
|
||||
setting_attributes:max_value="0.01" />
|
||||
|
||||
<org.openpilot.androidgcs.views.ScrollBarView
|
||||
android:id="@+id/pitchRateKp"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
setting_attributes:setting_name="Pitch Rate Kp"
|
||||
setting_attributes:max_value="0.01" />
|
||||
|
||||
<org.openpilot.androidgcs.views.ScrollBarView
|
||||
android:id="@+id/rollRateKi"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
setting_attributes:setting_name="Roll Rate Ki"
|
||||
setting_attributes:max_value="0.05" />
|
||||
|
||||
<org.openpilot.androidgcs.views.ScrollBarView
|
||||
android:id="@+id/pitchRateKi"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
setting_attributes:setting_name="Pitch Rate Ki"
|
||||
setting_attributes:max_value="0.05" />
|
||||
|
||||
<org.openpilot.androidgcs.views.ScrollBarView
|
||||
android:id="@+id/rollKp"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
setting_attributes:setting_name="Roll Kp"
|
||||
setting_attributes:max_value="5" />
|
||||
|
||||
<org.openpilot.androidgcs.views.ScrollBarView
|
||||
android:id="@+id/pitchKp"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
setting_attributes:setting_name="Pitch Kp"
|
||||
setting_attributes:max_value="5" />
|
||||
</LinearLayout>
|
||||
</ScrollView>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="right" >
|
||||
|
||||
<Button
|
||||
android:id="@+id/applyBtn"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/apply" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/saveBtn"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/save" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
</LinearLayout>
|
||||
|
@ -1,44 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:orientation="vertical"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="fill_parent">
|
||||
<FrameLayout
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="fill_parent"
|
||||
android:layout_weight="1">
|
||||
<org.openpilot.osg.EGLview android:id="@+id/surfaceGLES"
|
||||
android:visibility="visible"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="fill_parent"
|
||||
/>
|
||||
</FrameLayout>
|
||||
<RelativeLayout android:id="@+id/uiNavigation"
|
||||
android:gravity="center"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_centerInParent="true"
|
||||
android:orientation="horizontal"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center">
|
||||
<Button android:id="@+id/uiButtonLight"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="light"/>
|
||||
<Button android:id="@+id/uiButtonCenter"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="center"/>
|
||||
<Button android:id="@+id/uiButtonChangeNavigation"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="navigation"/>
|
||||
</LinearLayout>
|
||||
|
||||
</RelativeLayout>
|
||||
|
||||
</LinearLayout>
|
@ -1,9 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
|
||||
<item android:id="@+id/poi1" android:title="Set POI"></item>
|
||||
<item android:id="@+id/poi2" android:title="Set FollowMe POI"></item>
|
||||
<item android:id="@+id/view1" android:title="View Satellite images"></item>
|
||||
<item android:id="@+id/view2" android:title="View Map"></item>
|
||||
|
||||
|
||||
</menu>
|