提交 0b79785e 编写于 作者: J jurgen

Adapters registration redesigned.

Icons fix
上级 6982d957
......@@ -1897,6 +1897,29 @@
</page>
</extension>
<extension point="org.eclipse.core.runtime.adapters">
<factory adaptableType="org.jkiss.dbeaver.model.DBPObject" class="org.jkiss.dbeaver.ui.views.navigator.NavigatorAdapterFactory">
<adapter type="org.jkiss.dbeaver.model.DBPNamedObject"/>
<adapter type="org.jkiss.dbeaver.model.DBPQualifiedObject"/>
<adapter type="org.jkiss.dbeaver.model.struct.DBSObject"/>
<adapter type="org.jkiss.dbeaver.model.struct.DBSDataContainer"/>
<adapter type="org.jkiss.dbeaver.model.struct.DBSDataManipulator"/>
<adapter type="org.jkiss.dbeaver.model.struct.DBSDataSourceContainer"/>
<adapter type="org.jkiss.dbeaver.model.DBPObject"/>
<adapter type="org.eclipse.ui.views.properties.IPropertySource"/>
<adapter type="org.eclipse.core.resources.IResource"/>
<adapter type="org.eclipse.core.resources.IProject"/>
<adapter type="org.eclipse.core.resources.IFile"/>
<adapter type="org.eclipse.core.resources.IFolder"/>
<adapter type="org.eclipse.ui.model.IWorkbenchAdapter"/>
</factory>
<factory adaptableType="org.eclipse.ui.IWorkbenchPart" class="org.jkiss.dbeaver.ui.editors.DatabaseEditorAdapterFactory">
<adapter type="org.jkiss.dbeaver.model.struct.DBSObject"/>
<adapter type="org.jkiss.dbeaver.model.struct.DBSDataContainer"/>
<adapter type="org.jkiss.dbeaver.model.struct.DBSDataSourceContainer"/>
</factory>
</extension>
<extension point="org.eclipse.ui.elementFactories">
<factory id="org.jkiss.dbeaver.ui.editors.sql.SQLEditorInputFactory" class="org.jkiss.dbeaver.ui.editors.sql.SQLEditorInputFactory"/>
<factory id="org.jkiss.dbeaver.ui.editors.DatabaseEditorInputFactory" class="org.jkiss.dbeaver.ui.editors.DatabaseEditorInputFactory"/>
......
......@@ -60,8 +60,6 @@ public class DBeaverCore implements DBPApplication {
private static boolean standalone = false;
private static volatile boolean isClosing = false;
private DatabaseEditorAdapterFactory editorsAdapter;
//private DBeaverProgressProvider progressProvider;
private IWorkspace workspace;
private IProject tempProject;
private OSDescriptor localSystem;
......@@ -156,10 +154,6 @@ public class DBeaverCore implements DBPApplication {
private void initialize()
{
// Register properties adapter
this.editorsAdapter = new DatabaseEditorAdapterFactory();
IAdapterManager mgr = Platform.getAdapterManager();
mgr.registerAdapters(editorsAdapter, IWorkbenchPart.class);
this.workspace = ResourcesPlugin.getWorkspace();
this.localSystem = new OSDescriptor(Platform.getOS(), Platform.getOSArch());
......@@ -264,12 +258,6 @@ public class DBeaverCore implements DBPApplication {
}
DataSourceProviderRegistry.getInstance().dispose();
if (this.editorsAdapter != null) {
// Unregister properties adapter
Platform.getAdapterManager().unregisterAdapters(this.editorsAdapter);
this.editorsAdapter = null;
}
if (isStandalone() && workspace != null) {
try {
workspace.save(true, monitor);
......
......@@ -21,16 +21,12 @@ import org.eclipse.core.resources.IProject;
import org.eclipse.core.resources.IResourceChangeEvent;
import org.eclipse.core.resources.IResourceChangeListener;
import org.eclipse.core.resources.IResourceDelta;
import org.eclipse.core.runtime.IAdapterManager;
import org.eclipse.core.runtime.Platform;
import org.jkiss.code.Nullable;
import org.jkiss.dbeaver.DBException;
import org.jkiss.dbeaver.core.DBeaverCore;
import org.jkiss.dbeaver.core.Log;
import org.jkiss.dbeaver.model.DBIconComposite;
import org.jkiss.dbeaver.model.DBPImage;
import org.jkiss.dbeaver.model.DBPObject;
import org.jkiss.dbeaver.model.DBPQualifiedObject;
import org.jkiss.dbeaver.model.runtime.DBRProgressMonitor;
import org.jkiss.dbeaver.model.struct.DBSObject;
import org.jkiss.dbeaver.model.struct.DBSObjectState;
......@@ -60,7 +56,6 @@ public class DBNModel implements IResourceChangeListener {
private final List<IDBNListener> listeners = new ArrayList<IDBNListener>();
private transient IDBNListener[] listenersCopy = null;
private final Map<DBSObject, Object> nodeMap = new HashMap<DBSObject, Object>();
private DBNAdapterFactory nodesAdapter;
public DBNModel()
{
......@@ -90,17 +85,10 @@ public class DBNModel implements IResourceChangeListener {
*/
core.getWorkspace().addResourceChangeListener(this);
nodesAdapter = new DBNAdapterFactory();
IAdapterManager mgr = Platform.getAdapterManager();
mgr.registerAdapters(nodesAdapter, DBNNode.class);
mgr.registerAdapters(nodesAdapter, DBPObject.class);
mgr.registerAdapters(nodesAdapter, DBPQualifiedObject.class);
}
public void dispose()
{
Platform.getAdapterManager().unregisterAdapters(nodesAdapter);
DBeaverCore.getInstance().getWorkspace().removeResourceChangeListener(this);
this.root.dispose(false);
synchronized (nodeMap) {
......
......@@ -38,7 +38,7 @@ class GridCellRenderer extends AbstractRenderer
private static final int TEXT_TOP_MARGIN = 1;
private static final int INSIDE_MARGIN = 3;
static final Image LINK_IMAGE = DBeaverIcons.getImage(DBIcon.TREE_LINK);
static final Image LINK_IMAGE = DBeaverIcons.getImage(DBIcon.LINK);
static final Rectangle LINK_IMAGE_BOUNDS = LINK_IMAGE.getBounds();
protected Color colorSelected;
......
......@@ -15,7 +15,7 @@
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
package org.jkiss.dbeaver.model.navigator;
package org.jkiss.dbeaver.ui.views.navigator;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IFolder;
......@@ -29,6 +29,9 @@ import org.eclipse.ui.model.WorkbenchAdapter;
import org.eclipse.ui.views.properties.IPropertySource;
import org.jkiss.dbeaver.core.CoreMessages;
import org.jkiss.dbeaver.model.*;
import org.jkiss.dbeaver.model.navigator.DBNDataSource;
import org.jkiss.dbeaver.model.navigator.DBNNode;
import org.jkiss.dbeaver.model.navigator.DBNResource;
import org.jkiss.dbeaver.model.struct.*;
import org.jkiss.dbeaver.ui.DBeaverIcons;
import org.jkiss.dbeaver.ui.properties.PropertyCollector;
......@@ -37,7 +40,7 @@ import org.jkiss.dbeaver.ui.properties.PropertySourceDelegate;
/**
* Navigator AdapterFactory
*/
public class DBNAdapterFactory implements IAdapterFactory
public class NavigatorAdapterFactory implements IAdapterFactory
{
private static final Class<?>[] ADAPTER_LIST = {
DBPNamedObject.class,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册