| 
| Delete action/button is dissabled [message #227270] | Fri, 01 December 2006 06:20  |  | 
| Eclipse User  |  |  |  |  | Originally posted by: vikas.khengare.unnat-e.com 
 Hi friends,
 
 I have put following code in "MultiPageEditorContributor", This is showing
 me undo & redo functionality clear.
 But for delete action "Delete" button icon is always disabled and not
 performing any thing.
 It is not enabling even single time.
 
 1) Do I need to handle some thing for delete in "Command" where I have
 handled for Undo & Redo?
 2) Am I missing something in coding? what?
 3) Do I need to do something with ActionRegistry / getActionRegistry?
 
 public void contributeToToolBar(IToolBarManager manager) {
 manager.add(getActionRegistry().getAction(ActionFactory.UNDO .getId()));
 manager.add(getActionRegistry().getAction(ActionFactory.REDO .getId()));
 manager.add(new Separator());
 
 manager.add(getActionRegistry().getAction(ActionFactory.DELE TE.getId()));
 }
 
 protected void buildActions() {
 addRetargetAction(new UndoRetargetAction());
 addRetargetAction(new RedoRetargetAction());
 addRetargetAction(new DeleteRetargetAction());
 }
 
 --
 With best regards
 
 From
 Vikas R. Khengare
 |  |  |  | 
|  | 
| 
| Re: Delete action/button is dissabled [message #227367 is a reply to message #227339] | Mon, 04 December 2006 04:10   |  | 
| Eclipse User  |  |  |  |  | Originally posted by: vikas.khengare.unnat-e.com 
 Hi friends
 
 Thanks alex for your reply.
 I have enabled delete button on right click by following code
 
 public void buildContextMenu(IMenuManager menu)
 {
 action =  getActionRegistry().getAction(ActionFactory.DELETE.getId());
 action.setEnabled(true);
 if (null != action && action.isEnabled())
 menu.appendToGroup(GEFActionConstants.GROUP_EDIT, action);
 }
 
 But still now also it is not performing any action. It is not creating
 command.
 It is not calling "getCommand()" even.
 
 In Edit Part; I worte ...
 protected void createEditPolicies() {
 installEditPolicy(EditPolicy.COMPONENT_ROLE, new RectangleEditPolicy());
 }
 
 In "RectangleEditPolicy" class I wrote
 class RectangleEditPolicy extends ComponentEditPolicy{
 
 public Command getCommand(Request request) {
 System.out.println(request.getType());
 return super.getCommand(request);
 }
 }
 
 But this is not calling getCommand() method.
 
 Can Someone help me in this scenario?
 Note : 1] This is MultiPageEditor
 2] Where my main editor class extends GraphicalEditor
 ---
 With best regards
 
 From
 Vikas R. Khengare
 
 "Alex Boyko" <aboyko@ca.ibm.com> wrote in message
 news:179dd5c5ce95617b1d2633657335bcc9$1@www.eclipse.org...
 > Hi Vikas,
 >
 > It seems to me that you're trying to add GEF's retarget actions to a
 > Multipage editor, which is not a GEF application. There is no need to add
 > GEF's actions to it... you can simply add to tool bar actions defined for
 > text editors already. GEF's actions won't work there correctly anyway.
 > I've tried to do the following in setActivePage(IEditorPart) method inside
 > if (actionBars != null) block:
 >
 >
 actionBars.getToolBarManager().add(getAction(editor,ITextEdi torActionConstan
 ts.UNDO));
 >
 actionBars.getToolBarManager().add(getAction(editor,ITextEdi torActionConstan
 ts.REDO));
 >
 actionBars.getToolBarManager().add(getAction(editor,ITextEdi torActionConstan
 ts.DELETE));
 >
 > This is merely an example, I'm not 100% sure that that is the right place
 > to put those 3 lines in. Try posting this question on Eclipse PDE
 > newsgroup.
 > Hope this helps.
 >
 > Cheers,
 > Alex
 >
 >
 |  |  |  | 
|  | 
|  | 
| 
| Re: Delete action/button is dissabled [message #227428 is a reply to message #227398] | Tue, 05 December 2006 04:34  |  | 
| Eclipse User  |  |  |  |  | Originally posted by: vikas.khengare.unnat-e.com 
 hi alex / other friends,
 
 I got the solution ....... I haven't override init() methods of
 GraphicalEditor class.
 
 Hope so this was missing ....... right alex?
 
 --
 With best regards
 
 From
 Vikas R. Khengare
 
 "Vikas" <vikas.khengare@unnat-e.com> wrote in message
 news:el2vob$m41$1@utils.eclipse.org...
 > Hi Alex & other friends
 >
 > I have done that already ... in class "MultiPageEditorContributor extends
 > ActionBarContributor"
 >
 > public void contributeToToolBar(IToolBarManager manager)
 > {
 >
 >  manager.add(getActionRegistry().getAction(ActionFactory.DELE TE.getId()));
 >     // same for Undo & Redo
 > }
 > protected void buildActions()
 > {
 >     addRetargetAction(new DeleteRetargetAction());
 >     // same for Undo & Redo
 > }
 > protected void declareGlobalActionKeys()
 > {
 >     addGlobalActionKey(ActionFactory.DELETE.getId());
 >     addGlobalActionKey(ActionFactory.UNDO.getId());
 >     addGlobalActionKey(ActionFactory.REDO.getId());
 > }
 >
 > As I told you I wrote ...... I wrote every thing ....... 1] Context menu
 2]
 > Installed EditPolicy in edit Part 3] Actual EditPolicy class
 >
 > public void buildContextMenu(IMenuManager menu)
 > {
 > action =  getActionRegistry().getAction(ActionFactory.DELETE.getId());
 > action.setEnabled(true);
 > if (null != action && action.isEnabled())
 >  menu.appendToGroup(GEFActionConstants.GROUP_EDIT, action);
 > }
 >
 > But still now also it is not performing any action. It is not creating
 > command.
 > It is not calling "getCommand()" even.
 >
 > In Edit Part; I worte ...
 > protected void createEditPolicies() {
 > installEditPolicy(EditPolicy.COMPONENT_ROLE, new RectangleEditPolicy());
 > }
 >
 > In "RectangleEditPolicy" class I wrote
 > class RectangleEditPolicy extends ComponentEditPolicy
 > {    public Command getCommand(Request request) {
 >           System.out.println(request.getType());
 >           return super.getCommand(request);
 > }}
 >
 > But this is not calling getCommand() method.
 >
 > What's the wrong ?
 >
 > --
 > With best regards
 >
 > From
 > Vikas R. Khengare
 >
 > "Alex Boyko" <aboyko@ca.ibm.com> wrote in message
 > news:2deda39a1ce6b9e0fb084e79e9eff68f$1@www.eclipse.org...
 > > Hi Vikas,
 > >
 > > Your retarget delete action does not have a handler - the actual
 > > DeleteAction that will create and execute the command. So your retarget
 > > delete action is not doing anything at the moment.
 > >
 > > Try doing the following in your action bar contrubutor class, where you
 > > contribute actions to tool bars and menus:
 > >
 > > protected void declareGlobalActionKeys() {
 > >     addGlobalActionKey(ActionFactory.DELETE.getId())
 > > }
 > >
 > > You're adding Undo and Redo global key handlers somewhere right now,
 > > either in the action bar contributor or the editor's class in init()
 > > method. Insert the global key handler for delete in the same place.
 (This
 > > is how it's done in the Logic example editor)
 > > Hope this helps.
 > >
 > > Cheers,
 > > Alex
 > >
 >
 >
 |  |  |  | 
Powered by 
FUDForum. Page generated in 0.03673 seconds