X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=security%2Fplugins%2Forg.argeo.security.ui%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fsecurity%2Fui%2Fviews%2FLogView.java;h=e46ed4d37da2fd1af3f13a33901d17d0d8801fe0;hb=1d5afdce3e91054f07ddd3c98309c363b4cf1d46;hp=f432ad34863a4a10d26559db21cfbc68d411f6a8;hpb=d4c2363c4c8dfdf3bc2031e61cbf8d1730a13cf9;p=lgpl%2Fargeo-commons.git diff --git a/security/plugins/org.argeo.security.ui/src/main/java/org/argeo/security/ui/views/LogView.java b/security/plugins/org.argeo.security.ui/src/main/java/org/argeo/security/ui/views/LogView.java index f432ad348..e46ed4d37 100644 --- a/security/plugins/org.argeo.security.ui/src/main/java/org/argeo/security/ui/views/LogView.java +++ b/security/plugins/org.argeo.security.ui/src/main/java/org/argeo/security/ui/views/LogView.java @@ -1,16 +1,33 @@ +/* + * Copyright (C) 2007-2012 Mathieu Baudier + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package org.argeo.security.ui.views; import java.util.ArrayList; import org.argeo.ArgeoLogListener; +import org.argeo.ArgeoLogger; import org.argeo.security.ui.SecurityUiPlugin; +import org.eclipse.jface.resource.JFaceResources; import org.eclipse.jface.viewers.LabelProvider; import org.eclipse.jface.viewers.TableViewer; import org.eclipse.swt.SWT; +import org.eclipse.swt.graphics.Font; import org.eclipse.swt.widgets.Composite; +import org.eclipse.swt.widgets.Table; import org.eclipse.ui.part.ViewPart; -import org.osgi.framework.BundleContext; -import org.osgi.framework.ServiceRegistration; /** * Display log lines with a virtual table. Register and unregisters a @@ -22,20 +39,24 @@ public class LogView extends ViewPart { private TableViewer viewer; private LogContentProvider logContentProvider; - - private ServiceRegistration serviceRegistration; + private ArgeoLogger argeoLogger; @Override public void createPartControl(Composite parent) { - viewer = new TableViewer(parent, SWT.VIRTUAL | SWT.MULTI | SWT.H_SCROLL + Font font = JFaceResources.getTextFont(); + Table table = new Table(parent, SWT.VIRTUAL | SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION | SWT.BORDER); + table.setFont(font); + + viewer = new TableViewer(table); viewer.setLabelProvider(new LabelProvider()); logContentProvider = new LogContentProvider(viewer); - serviceRegistration = getBundleContext().registerService( - ArgeoLogListener.class.getName(), logContentProvider, null); viewer.setContentProvider(logContentProvider); - //viewer.setUseHashlookup(true); + // viewer.setUseHashlookup(true); viewer.setInput(new ArrayList()); + + if (argeoLogger != null) + argeoLogger.register(logContentProvider, 1000); } @Override @@ -45,11 +66,12 @@ public class LogView extends ViewPart { @Override public void dispose() { - if (serviceRegistration != null) - serviceRegistration.unregister(); + if (argeoLogger != null) + argeoLogger.unregister(logContentProvider); } - private BundleContext getBundleContext() { - return SecurityUiPlugin.getDefault().getBundle().getBundleContext(); + public void setArgeoLogger(ArgeoLogger argeoLogger) { + this.argeoLogger = argeoLogger; } + }