3 * Copyright (C) 2007 EDIT
4 * European Distributed Institute of Taxonomy
5 * http://www.e-taxonomy.eu
7 * The contents of this file are subject to the Mozilla Public License Version 1.1
8 * See LICENSE.TXT at the top of this package for the full license terms.
11 package eu
.etaxonomy
.taxeditor
.editor
.images
;
13 import org
.apache
.log4j
.Logger
;
14 import org
.eclipse
.swt
.SWT
;
15 import org
.eclipse
.swt
.events
.MouseAdapter
;
16 import org
.eclipse
.swt
.events
.MouseEvent
;
17 import org
.eclipse
.swt
.graphics
.Color
;
18 import org
.eclipse
.swt
.graphics
.Font
;
19 import org
.eclipse
.swt
.widgets
.Event
;
20 import org
.eclipse
.ui
.handlers
.IHandlerService
;
21 import org
.eclipse
.ui
.views
.properties
.IPropertySource
;
23 import eu
.etaxonomy
.taxeditor
.editor
.GroupComposite
;
24 import eu
.etaxonomy
.taxeditor
.editor
.GroupedComposite
;
25 import eu
.etaxonomy
.taxeditor
.editor
.internal
.TaxeditorEditorPlugin
;
26 import eu
.etaxonomy
.taxeditor
.editor
.name
.NameComposite
;
27 import eu
.etaxonomy
.taxeditor
.editor
.name
.NameViewer
;
34 public class TaxonHasNoImagesComposite
extends GroupedComposite
{
35 private static final Logger logger
= Logger
36 .getLogger(TaxonHasNoImagesComposite
.class);
39 * @param groupComposite
43 public TaxonHasNoImagesComposite(TaxonImageEditor editor
, GroupComposite parent
) {
44 super(editor
, parent
);
47 setIsDraggable(false);
48 // setIcon(ACCEPTED_ICON);
49 setFont(getViewerFont());
50 // setIndent(ACCEPTED_INDENT);
55 protected void createControl() {
56 super.createControl();
58 Color groupBackgroundColor
= getDisplay().getSystemColor(SWT
.COLOR_WHITE
);
59 setBackground(groupBackgroundColor
);
62 protected void initEmptyText() {
63 super.initEmptyText();
65 getTextViewer().getTextWidget().setEditable(false);
66 getTextViewer().getTextWidget().addMouseListener(new MouseAdapter() {
67 public void mouseUp(MouseEvent e
) {
72 if (getTextViewer() instanceof NameViewer
) {
73 Color groupBackgroundColor
= getDisplay().getSystemColor(SWT
.COLOR_WHITE
);
74 ((NameViewer
) getTextViewer()).setBackground(groupBackgroundColor
);
78 protected String
getEmptyTextPrompt() {
79 return "Click to add an image";
85 private void createNewImage() {
86 IHandlerService handlerService
= (IHandlerService
) TaxeditorEditorPlugin
.getDefault().getWorkbench().getService(IHandlerService
.class);
88 String commandId
= "eu.etaxonomy.taxeditor.editor.name.createImage";
89 Event event
= new Event();
91 handlerService
.executeCommand(commandId
, event
);
92 } catch (Exception e
) {
93 logger
.error("Error executing CreateImageHandler", e
);
99 * @see eu.etaxonomy.taxeditor.editor.GroupedComposite#getViewerFont()
102 protected Font
getViewerFont() {
103 return NameComposite
.ACCEPTED_FONT
;
107 * @see eu.etaxonomy.taxeditor.editor.IHasPropertySource#getPropertySource()
109 public IPropertySource
getPropertySource() {