Since we're using label providers to provide the name and image
for ILaunchTargets, we don't need the dual id, name in the launch
target. Switching to id instead of name tho.
Change-Id: I96071cfd40873494d4cf73f0e845d62bc46ea1cb
Creates a new core plug-in that bridges the gap between ILaunchTarget
and IRemoteConnection.
Also adds unique id's to ILaunchTarget that are separate from the
user visible name. This is to allow for unique names in o.e.remote
which include the connection type and the connection name. The launch
target type is for all o.e.remote targets.
Change-Id: I08d4c3534fc0947f946bfcdec3f13df04fc4ec98
- list background was not inherited creating spotty list
- removed rectangle around list items which was very custom and non
stylable
- removed paint lister after lazy item initialization to prevent lag
Change-Id: I4e458c816dcb96138871b906e43806b0cf2e72e8
Creates a new standard delegate that implements the targeted launch
delegate interface introduced earlier. Also provided a standard
launch object that stores the launch target to be launched on.
Adds storing of the config to target mapping in the launch target
manager. Sets that mapping as close to build/launch time as we can.
Change-Id: I78a1412af043f0be240d5617fcfc08b81c3fb3ea
- we should not make assumption about the target and let
delegate deal with it. For example if no targets are
created and you run for the first time, delegate can offer
to create a target
- also if launch bar participants don't care about targets at all we
should be able to still show modes, etc
- so I removed filters on null target and let participant deal with it
(note null target is not the same as Local). To avoid NPEs null target
is actually an object ILaunchTarget.NULL_TARGET
Change-Id: Ie2a4d3430284adbb137a4565d9976a0ba554d41f
Replace IRemoteConnection with ILaunchTarget. Launch target
providers that want to use IRemoteConnection can adapt to it.
Also removes IHoverProvider since tools tips on the target selector
use the status message for the target.
Change-Id: I117745e61789ef780c742da9b73bded2b598915c
- current wizard page tries to replicate functionality
of lc editor in regards to tabs but it does not work
the same which creates issues for contributed tabs
- for example it never calls "activate" on the tab
- we also have rendering problem - pages are not resized correctly and
show up empty until resized
- I switched to use standard control called
LaunchConfigurationTabGroupViewer to show tabs. Hack with fake
LaunchConfigurationDialog has to remain to interact with this control.
- If we move it to o.e.debug we have to fix these classes to remove some
of the hacks and expose proper APIs to re-use this control
Change-Id: Ia39706fb5972883167f5f39751985d97e1815c86
- when we show icon with connection status it does not refresh
automatically because launchbar does not propogate connection change
events. Fixed that.
Change-Id: I00c580d303460f6ead3a2aa3a91e8f151fd9f38a
- when you bring IDE in new workspace all drops downs are empty,
so you create new connection from target drop down, but its still
remain empty after connection is created which is quite confusing.
So its better to show
all connection when descriptor is null (i.e. no descriptor at all)
Change-Id: Idef1b676baef4978f8327135691e485ca287d7fe
it will open Properties dialog on connection.
Contributors can adapt connection to their class
to show various property pages and allow to edit "targets"
Change-Id: I0fe486b069450bbf8379930ffdeaabd9c8dbbd6e
- removed code that did nothing
- added dispose code to restore lc dialog otherwise if you cancel cannot
bring any sort of lc dialog again
- added code to have unique lc name as suggestion
Change-Id: Ia33abed6019edb097cc775f00cbfea1629e9720b
- mode selector tooltip Launch configuration -> Launch Mode
- launch selector Launch configuration -> Launch Configuration
- new text Create New Configuration... -> New Launch Configuration...
(consistent with tooltip for same button in lc dialog)
Change-Id: I339ce4263783a08d10f11f3474abf9f4b468e775
- tested on linux ubuntu 14.04 gtk 3.10, mac os x 10.10.3
and windows 7 - looks good. On linux it has extra
spacing but this is consistent with other toolbar items.
Change-Id: Iafeb1510ce83163f77a09f61c28a4f67d14ab0a1
per target config provider adds working copy into cache on change
notifications which creates problems
a) they never cleaned up
b) now when its searching its picking a wrong config (wc) causing
it to return invalid config
fix push up higher in launch bar itself, no point propagating
launch change notifications from working copies
Change-Id: I3b7bc94f3ef6ab385fc43cc5482ab4c9b943e8fa
launchConfigAdded becomes pretty important. Requires providers
to be able to find descriptor and target from the incoming
configuration if they own it. Also added handing for a default
when the target is null.
removed ownsConfiguration in providers since the launchConfigAdd
does that by returning false.
Added enablement for config providers, but that will need work
and some default property testers for it to be useful.
For the correct way to add in a config provider, check out the
Arduino change for this API at:
https://git.eclipse.org/r/#/c/49029/
Change-Id: I46b194a933c846d7d3e4eea8a0213c4ec324816f
- fixed tests and added tests for previous API changes
- fixed unsafe call of provider methods without catching exceptions
- added description of priority attribute in the extension point API
- fixed default return values in DefaultLaunchConfigProvider, in case it
is extended
- removed unused import
- fixed per target provider to support persistance
- added test for per target provider
Change-Id: If08b18b939e86757108a800d1092a62621a8c7d0
we missing API to notify provider that configs are added/changed.
it required to keep internal provider map in sync, i.e. restore
the state of config/descriptor map on startup for example.
Change-Id: I3af24a21d5d41084f85731f6da2f7aca2df81f1c
It's too hard to replicate the entire debug platform launch sequence
in order to insert the target this way. We'll need to come up with
something better if we want to share launch configs between targets.
But that will have to wait until Neon at the earliest.
Change-Id: I208eed527961e172316f0b12b869be5665a6aca5
Also adds a tighter check for ownsConfiguration based on class name
of the provider that created the config.
Change-Id: If197246af0906cb5af92819171ee97dc7cd30bee
WTP needs a new config for every target. That breaks our architecture
of one config per target type. But that's actually already broken
since we can't really get the proper target to the launch config.
Depending on active, we always hoped the target didn't change, but
it can. So one config per target is correct anyway.
Change-Id: I14ba8413b9494a13f3496eed5535debbc330a56c
or have other errors, causes several error dialogs to pop up.
Change-Id: Id5b56c2696e4911143a4daeb93cc8a442b3ebe33
Signed-off-by: Rob Stryker <rob.stryker@jboss.com>
- launch bar launch config was not handling add of another launch config
correctly - it was just resetting itself to handle new LC. This cannot
really be done because this dialog is bound to launch group and new lc
may not be part of it and may not even support the mode current dialog
is in. Also that make missyncronization between LC stored in parent and
LC stored in getTabViewer which can cause other nasty problems.
So let parent handle adding (which only handles locatio change) and for
duplication we just open a new dialog and close current one.
Change-Id: I2dde5c3af26d901d1f4b18cad84a83a9857a6ca9
Turns out to be pretty easy, just check the config for each launch
and stop the ones that match the active config.
Change-Id: Ib74a31405382b2d1996b257f7e8ad1d85a23e6c6
services
- if you select target for given launch config and restart IDE
it is not persistent, because it queries remote services and
it has not been set. Moving setting of target in the correct place
Note: if launch config is not created yet it would not be create
and mapping would not be set but it would be persisted by launch bar
itself
- also added protection against null listener
Change-Id: I41f8651ba2251ca9f841450fc1f511643bfde681