diff --git a/plugins/org.jkiss.dbeaver.core.application/OSGI-INF/l10n/bundle.properties b/plugins/org.jkiss.dbeaver.core.application/OSGI-INF/l10n/bundle.properties
index 93ba881ff9ff87b2b73c6430164f4831764bbbea..66494bc365ef516b0f7ac24de7c14a8a21f2b8bb 100644
--- a/plugins/org.jkiss.dbeaver.core.application/OSGI-INF/l10n/bundle.properties
+++ b/plugins/org.jkiss.dbeaver.core.application/OSGI-INF/l10n/bundle.properties
@@ -35,6 +35,7 @@ pref.page.name.navigator = Navigator
pref.page.name.query.manager = Query Manager
pref.page.name.resources = Resources
pref.page.name.errorHandle = Error Handle
+pref.page.name.errorLogs = Error Logs
pref.page.name.resultset = Result Sets
pref.page.name.resultset.editors = Editors
pref.page.name.resultset.presentation = Presentation
diff --git a/plugins/org.jkiss.dbeaver.core.application/plugin.xml b/plugins/org.jkiss.dbeaver.core.application/plugin.xml
index ff6692d9cd8e2e917062fa161214cf5da060834f..a50e7b08f293b57726cb5b702e39a786a5793a87 100644
--- a/plugins/org.jkiss.dbeaver.core.application/plugin.xml
+++ b/plugins/org.jkiss.dbeaver.core.application/plugin.xml
@@ -227,24 +227,25 @@
-
-
+
+
+
-
+
-
-
+
+
-
+
@@ -264,12 +265,12 @@
-
-
+
+
-
+
diff --git a/plugins/org.jkiss.dbeaver.core.eclipse/OSGI-INF/l10n/bundle.properties b/plugins/org.jkiss.dbeaver.core.eclipse/OSGI-INF/l10n/bundle.properties
index 7f87707ad6ee24505cf4074634a0426832235114..9a6af2d639d00dd55171133988518c422917f1f3 100644
--- a/plugins/org.jkiss.dbeaver.core.eclipse/OSGI-INF/l10n/bundle.properties
+++ b/plugins/org.jkiss.dbeaver.core.eclipse/OSGI-INF/l10n/bundle.properties
@@ -24,6 +24,7 @@ pref.page.name.navigator=Navigator
pref.page.name.resources=Resources
pref.page.name.confirmations=Confirmations
pref.page.name.errorHandle=Error Handle
+pref.page.name.errorLogs=Error Logs
pref.page.name.resultset=Result Sets
pref.page.name.resultset.editors=Editors
pref.page.name.resultset.presentation=Presentation
diff --git a/plugins/org.jkiss.dbeaver.core.eclipse/plugin.xml b/plugins/org.jkiss.dbeaver.core.eclipse/plugin.xml
index 3b7aae4f8641cab6da658093d1edf12b9449ab86..3fa45ba1d344db3f9bca390583ac1457aa30a4b0 100644
--- a/plugins/org.jkiss.dbeaver.core.eclipse/plugin.xml
+++ b/plugins/org.jkiss.dbeaver.core.eclipse/plugin.xml
@@ -49,6 +49,7 @@
+
@@ -68,8 +69,7 @@
-
-
+
diff --git a/plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/preferences/PrefPageDatabaseGeneral.java b/plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/preferences/PrefPageDatabaseGeneral.java
index d2dfbc2ac1dc534a2ace96185e59148feffa7548..7fc18eb619e1966565b7bdbf1d317ccf9090157a 100644
--- a/plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/preferences/PrefPageDatabaseGeneral.java
+++ b/plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/preferences/PrefPageDatabaseGeneral.java
@@ -19,8 +19,6 @@ package org.jkiss.dbeaver.ui.preferences;
import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.jface.dialogs.ControlEnableState;
-import org.eclipse.jface.fieldassist.SimpleContentProposalProvider;
-import org.eclipse.jface.fieldassist.TextContentAdapter;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.widgets.*;
@@ -41,11 +39,9 @@ import org.jkiss.dbeaver.model.preferences.DBPPreferenceStore;
import org.jkiss.dbeaver.registry.language.PlatformLanguageDescriptor;
import org.jkiss.dbeaver.registry.language.PlatformLanguageRegistry;
import org.jkiss.dbeaver.ui.UIUtils;
-import org.jkiss.dbeaver.ui.controls.TextWithOpenFile;
import org.jkiss.dbeaver.utils.GeneralUtils;
import org.jkiss.dbeaver.utils.PrefUtils;
import org.jkiss.dbeaver.utils.RuntimeUtils;
-import org.jkiss.dbeaver.utils.SystemVariablesResolver;
import org.jkiss.utils.CommonUtils;
import java.util.List;
@@ -65,9 +61,6 @@ public class PrefPageDatabaseGeneral extends AbstractPrefPage implements IWorkbe
//private Combo defaultResourceEncoding;
- private Button logsDebugEnabled;
- private TextWithOpenFile logsDebugLocation;
-
public PrefPageDatabaseGeneral()
{
super();
@@ -139,28 +132,6 @@ public class PrefPageDatabaseGeneral extends AbstractPrefPage implements IWorkbe
}
*/
- {
- // Logs
- Group groupLogs = UIUtils.createControlGroup(composite, CoreMessages.pref_page_ui_general_group_debug_logs, 2, GridData.FILL_HORIZONTAL | GridData.VERTICAL_ALIGN_BEGINNING, 0);
-
- logsDebugEnabled = UIUtils.createCheckbox(groupLogs,
- CoreMessages.pref_page_ui_general_label_enable_debug_logs,
- CoreMessages.pref_page_ui_general_label_enable_debug_logs_tip, false, 2);
- UIUtils.createControlLabel(groupLogs, CoreMessages.pref_page_ui_general_label_log_file_location);
- logsDebugLocation = new TextWithOpenFile(groupLogs, CoreMessages.pref_page_ui_general_label_open_file_text, new String[] { "*.log", "*.txt" } );
- UIUtils.installContentProposal(
- logsDebugLocation.getTextControl(),
- new TextContentAdapter(),
- new SimpleContentProposalProvider(new String[] {
- GeneralUtils.variablePattern(SystemVariablesResolver.VAR_WORKSPACE),
- GeneralUtils.variablePattern(SystemVariablesResolver.VAR_HOME)
- }));
- logsDebugLocation.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-
- Label tipLabel = UIUtils.createLabel(groupLogs, CoreMessages.pref_page_ui_general_label_options_take_effect_after_restart);
- tipLabel.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING, GridData.VERTICAL_ALIGN_BEGINNING, false, false , 2, 1));
- }
-
{
// Link to secure storage config
new PreferenceLinkArea(composite, SWT.NONE,
@@ -188,11 +159,6 @@ public class PrefPageDatabaseGeneral extends AbstractPrefPage implements IWorkbe
automaticUpdateCheck.setSelection(store.getBoolean(DBeaverPreferences.UI_AUTO_UPDATE_CHECK));
longOperationsCheck.setSelection(store.getBoolean(DBeaverPreferences.AGENT_LONG_OPERATION_NOTIFY));
longOperationsTimeout.setSelection(store.getInt(DBeaverPreferences.AGENT_LONG_OPERATION_TIMEOUT));
-
- //defaultResourceEncoding.setText(store.getString(DBeaverPreferences.DEFAULT_RESOURCE_ENCODING));
-
- logsDebugEnabled.setSelection(store.getBoolean(DBeaverPreferences.LOGS_DEBUG_ENABLED));
- logsDebugLocation.setText(store.getString(DBeaverPreferences.LOGS_DEBUG_LOCATION));
}
@Override
@@ -207,9 +173,6 @@ public class PrefPageDatabaseGeneral extends AbstractPrefPage implements IWorkbe
//store.setValue(DBeaverPreferences.DEFAULT_RESOURCE_ENCODING, defaultResourceEncoding.getText());
- store.setValue(DBeaverPreferences.LOGS_DEBUG_ENABLED, logsDebugEnabled.getSelection());
- store.setValue(DBeaverPreferences.LOGS_DEBUG_LOCATION, logsDebugLocation.getText());
-
PrefUtils.savePreferenceStore(store);
if (workspaceLanguage.getSelectionIndex() >= 0) {
diff --git a/plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/preferences/PrefPageErrorLogs.java b/plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/preferences/PrefPageErrorLogs.java
new file mode 100644
index 0000000000000000000000000000000000000000..69ae1e4cc360b1923a3d14626c9a9ce7ee053597
--- /dev/null
+++ b/plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/preferences/PrefPageErrorLogs.java
@@ -0,0 +1,109 @@
+/*
+ * DBeaver - Universal Database Manager
+ * Copyright (C) 2010-2017 Serge Rider (serge@jkiss.org)
+ * Copyright (C) 2011-2012 Eugene Fradkin (eugene.fradkin@gmail.com)
+ *
+ * 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.jkiss.dbeaver.ui.preferences;
+
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.jface.fieldassist.SimpleContentProposalProvider;
+import org.eclipse.jface.fieldassist.TextContentAdapter;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.widgets.*;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.IWorkbenchPreferencePage;
+import org.eclipse.ui.IWorkbenchPropertyPage;
+import org.jkiss.dbeaver.DBeaverPreferences;
+import org.jkiss.dbeaver.core.CoreMessages;
+import org.jkiss.dbeaver.core.DBeaverCore;
+import org.jkiss.dbeaver.model.preferences.DBPPreferenceStore;
+import org.jkiss.dbeaver.ui.UIUtils;
+import org.jkiss.dbeaver.ui.controls.TextWithOpenFile;
+import org.jkiss.dbeaver.utils.GeneralUtils;
+import org.jkiss.dbeaver.utils.PrefUtils;
+import org.jkiss.dbeaver.utils.SystemVariablesResolver;
+
+/**
+ * PrefPageErrorHandle
+ */
+public class PrefPageErrorLogs extends AbstractPrefPage implements IWorkbenchPreferencePage
+{
+ public static final String PAGE_ID = "org.jkiss.dbeaver.preferences.main.errorLogs"; //$NON-NLS-1$
+
+ private Button logsDebugEnabled;
+ private TextWithOpenFile logsDebugLocation;
+
+ @Override
+ public void init(IWorkbench workbench)
+ {
+ }
+
+ @Override
+ protected Control createContents(Composite parent)
+ {
+ Composite composite = UIUtils.createPlaceholder(parent, 1, 5);
+
+ {
+ // Logs
+ Group groupLogs = UIUtils.createControlGroup(composite, CoreMessages.pref_page_ui_general_group_debug_logs, 2, GridData.FILL_HORIZONTAL | GridData.VERTICAL_ALIGN_BEGINNING, 0);
+
+ logsDebugEnabled = UIUtils.createCheckbox(groupLogs,
+ CoreMessages.pref_page_ui_general_label_enable_debug_logs,
+ CoreMessages.pref_page_ui_general_label_enable_debug_logs_tip, false, 2);
+ UIUtils.createControlLabel(groupLogs, CoreMessages.pref_page_ui_general_label_log_file_location);
+ logsDebugLocation = new TextWithOpenFile(groupLogs, CoreMessages.pref_page_ui_general_label_open_file_text, new String[] { "*.log", "*.txt" } );
+ UIUtils.installContentProposal(
+ logsDebugLocation.getTextControl(),
+ new TextContentAdapter(),
+ new SimpleContentProposalProvider(new String[] {
+ GeneralUtils.variablePattern(SystemVariablesResolver.VAR_WORKSPACE),
+ GeneralUtils.variablePattern(SystemVariablesResolver.VAR_HOME)
+ }));
+ logsDebugLocation.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+
+ Label tipLabel = UIUtils.createLabel(groupLogs, CoreMessages.pref_page_ui_general_label_options_take_effect_after_restart);
+ tipLabel.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING, GridData.VERTICAL_ALIGN_BEGINNING, false, false , 2, 1));
+ }
+
+ performDefaults();
+
+ return composite;
+ }
+
+ @Override
+ protected void performDefaults()
+ {
+ DBPPreferenceStore store = DBeaverCore.getGlobalPreferenceStore();
+
+ logsDebugEnabled.setSelection(store.getBoolean(DBeaverPreferences.LOGS_DEBUG_ENABLED));
+ logsDebugLocation.setText(store.getString(DBeaverPreferences.LOGS_DEBUG_LOCATION));
+
+ super.performDefaults();
+ }
+
+ @Override
+ public boolean performOk()
+ {
+ DBPPreferenceStore store = DBeaverCore.getGlobalPreferenceStore();
+
+ store.setValue(DBeaverPreferences.LOGS_DEBUG_ENABLED, logsDebugEnabled.getSelection());
+ store.setValue(DBeaverPreferences.LOGS_DEBUG_LOCATION, logsDebugLocation.getText());
+
+ PrefUtils.savePreferenceStore(store);
+
+ return super.performOk();
+ }
+
+}
\ No newline at end of file