Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 351785

Summary: Buttons for method arguments are enabled in case when they are should be disabled
Product: [Technology] Tigerstripe Reporter: Maria Kolchinskaja <mshulgina>
Component: UIAssignee: Project Inbox <tigerstripe.ui-inbox>
Status: CLOSED FIXED QA Contact:
Severity: minor    
Priority: P3 CC: skanton
Version: unspecified   
Target Milestone: 0.5M0   
Hardware: PC   
OS: Windows 7   
Whiteboard:

Description Maria Kolchinskaja CLA 2011-07-12 01:18:48 EDT
Build Identifier: 

1. Create Tigerstripe project with Entity and method for this entity
2. Add 3 method arguments
3. Select upper argument and see that 'Up' button is enabled. When I press 'Up', editor becomes dirty, but no changes are done
4. Select lower argument and see that 'Down' button is enabled. When I press 'Up', editor becomes dirty, but no changes are done

Reproducible: Always
Comment 1 Maria Kolchinskaja CLA 2011-07-12 01:29:39 EDT
When I press 'Up' button for the upper argument and then try to remove it, argument is not removed and Unhandled event loop exception is displayed in Error log

java.lang.UnsupportedOperationException
	at java.util.AbstractList.remove(Unknown Source)
	at java.util.AbstractList$Itr.remove(Unknown Source)
	at java.util.AbstractCollection.removeAll(Unknown Source)
	at org.eclipse.tigerstripe.workbench.internal.core.model.Method.removeArguments(Method.java:1253)
	at org.eclipse.tigerstripe.workbench.ui.internal.utils.MethodInfoEditComponent.removeArgButtonPressed(MethodInfoEditComponent.java:1194)
	at org.eclipse.tigerstripe.workbench.ui.internal.utils.MethodInfoEditComponent.handleWidgetSelected(MethodInfoEditComponent.java:1087)
	at org.eclipse.tigerstripe.workbench.ui.internal.utils.MethodInfoEditComponent.access$4(MethodInfoEditComponent.java:1037)
	at org.eclipse.tigerstripe.workbench.ui.internal.utils.MethodInfoEditComponent$MethodInfoListener.widgetSelected(MethodInfoEditComponent.java:1444)
	at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:234)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Widget.sendEvent_aroundBody2(Widget.java:1053)
	at org.eclipse.swt.widgets.Widget$AjcClosure3.run(Widget.java:1)
	at com.xored.tesla.recording.aspects.RecordingAspect.ajc$around$com_xored_tesla_recording_aspects_RecordingAspect$4$2f127892proceed(RecordingAspect.aj:1)
	at com.xored.tesla.recording.aspects.RecordingAspect.ajc$around$com_xored_tesla_recording_aspects_RecordingAspect$4$2f127892(RecordingAspect.aj:108)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1051)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4066)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3657)
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2640)
	at org.eclipse.ui.internal.Workbench.runUI_aroundBody0(Workbench.java:2604)
	at org.eclipse.ui.internal.Workbench$AjcClosure1.run(Workbench.java:1)
	at com.xored.tesla.recording.aspects.WorkbenchRecordingAspect.ajc$around$com_xored_tesla_recording_aspects_WorkbenchRecordingAspect$2$a7b5a621proceed(WorkbenchRecordingAspect.aj:1)
	at com.xored.tesla.recording.aspects.WorkbenchRecordingAspect.ajc$around$com_xored_tesla_recording_aspects_WorkbenchRecordingAspect$2$a7b5a621(WorkbenchRecordingAspect.aj:31)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2439)
	at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2438)
	at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:671)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:664)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	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:369)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:620)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:575)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1408)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1384)
Comment 2 Anton Salnik CLA 2011-07-14 12:56:09 EDT
Method's arguments up/down buttons enablement and remove functionality fixed.
Comment 3 Maria Kolchinskaja CLA 2011-07-14 23:42:56 EDT
Verified