Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » GEF » Disable palette entry
Disable palette entry [message #240231] Mon, 10 December 2007 13:55 Go to next message
Eclipse UserFriend
Originally posted by: robert.moestl.joanneum.at

Hello guys!

I have already searched this newsgroup how to disable a palette entry.
Seemingly it was not possible in former versions of GEF. Is it planned
to implement this functionality in future releases?

Kind regards,
Robert
Re: Disable palette entry [message #240277 is a reply to message #240231] Thu, 13 December 2007 10:14 Go to previous message
Eclipse UserFriend
Originally posted by: lifesting.gmail.com

Robert Möstl wrote:
> Hello guys!
>
> I have already searched this newsgroup how to disable a palette entry.
> Seemingly it was not possible in former versions of GEF. Is it planned
> to implement this functionality in future releases?
>
> Kind regards,
> Robert
look into the ToolEntryEditPart, locate at the method createFigure,
you'll see this:

public IFigure createFigure() {
class InactiveToggleButton extends ToggleButton {
InactiveToggleButton(IFigure contents) {
super(contents);
setOpaque(false);
setEnabled(true);
}
public IFigure findMouseEventTargetAt(int x, int y) {
return null;
}
public IFigure getToolTip() {
return createToolTip();
}
public void setEnabled(boolean value) {
super.setEnabled(value);
if (isEnabled()) {
setRolloverEnabled(true);
setBorder(BORDER_TOGGLE);
setForegroundColor(null);
} else {
setBorder(null);
setRolloverEnabled(false);
setForegroundColor(ColorConstants.gray);
}
}
}

customLabel = new DetailedLabelFigure();
Clickable button = new InactiveToggleButton(customLabel);
button.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
getPaletteViewer().setActiveTool(getToolEntry());
}
});

return button;
}

so you first need create a disabled figure for the toolentry, then
override the setActiveTool of PaletteViewer like below:

{
MyToolEntry tool = (MyToolEntry) getToolEntry();
if (!tool.isEnabled) return;
super.setActiveTool(tool)
}

Hope this help you!
Previous Topic:About Model!
Next Topic:Problem with drawing UML(CD) with Zest in a Plug-in
Goto Forum:
  


Current Time: Fri Apr 26 13:06:27 GMT 2024

Powered by FUDForum. Page generated in 0.03057 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top