Add 'disable' option to object tools (Feature #88)
authorzev <zev@radensolutions.com>
Tue, 21 Jan 2014 14:13:05 +0000 (16:13 +0200)
committerzev <zev@radensolutions.com>
Tue, 21 Jan 2014 14:13:05 +0000 (16:13 +0200)
35 files changed:
ChangeLog
include/nms_cscp.h
include/nxtools.h
src/java/netxms-base/src/main/java/org/netxms/base/NXCPCodes.java
src/java/netxms-client/src/main/java/org/netxms/client/NXCSession.java
src/java/netxms-client/src/main/java/org/netxms/client/objecttools/ObjectTool.java
src/java/netxms-eclipse/ObjectTools/OSGI-INF/l10n/bundle_cs.properties
src/java/netxms-eclipse/ObjectTools/OSGI-INF/l10n/bundle_es.properties
src/java/netxms-eclipse/ObjectTools/OSGI-INF/l10n/bundle_ru.properties
src/java/netxms-eclipse/ObjectTools/OSGI-INF/l10n/bundle_zh_CN.properties
src/java/netxms-eclipse/ObjectTools/src/org/netxms/ui/eclipse/objecttools/Messages.java
src/java/netxms-eclipse/ObjectTools/src/org/netxms/ui/eclipse/objecttools/ObjectToolsDynamicMenu.java
src/java/netxms-eclipse/ObjectTools/src/org/netxms/ui/eclipse/objecttools/messages.properties
src/java/netxms-eclipse/ObjectTools/src/org/netxms/ui/eclipse/objecttools/messages_cs.properties
src/java/netxms-eclipse/ObjectTools/src/org/netxms/ui/eclipse/objecttools/messages_es.properties
src/java/netxms-eclipse/ObjectTools/src/org/netxms/ui/eclipse/objecttools/messages_ru.properties
src/java/netxms-eclipse/ObjectTools/src/org/netxms/ui/eclipse/objecttools/messages_zh_CN.properties
src/java/netxms-eclipse/ObjectTools/src/org/netxms/ui/eclipse/objecttools/propertypages/General.java
src/java/netxms-eclipse/ObjectTools/src/org/netxms/ui/eclipse/objecttools/views/FileViewer.java
src/java/netxms-eclipse/ObjectTools/src/org/netxms/ui/eclipse/objecttools/views/ObjectToolsEditor.java
src/java/netxms-eclipse/ObjectTools/src/org/netxms/ui/eclipse/objecttools/views/helpers/ObjectToolsLabelProvider.java
webui/webapp/ObjectTools/OSGI-INF/l10n/bundle_cs.properties
webui/webapp/ObjectTools/OSGI-INF/l10n/bundle_es.properties
webui/webapp/ObjectTools/OSGI-INF/l10n/bundle_ru.properties
webui/webapp/ObjectTools/OSGI-INF/l10n/bundle_zh_CN.properties
webui/webapp/ObjectTools/src/org/netxms/ui/eclipse/objecttools/Messages.java
webui/webapp/ObjectTools/src/org/netxms/ui/eclipse/objecttools/ObjectToolsDynamicMenu.java
webui/webapp/ObjectTools/src/org/netxms/ui/eclipse/objecttools/messages.properties
webui/webapp/ObjectTools/src/org/netxms/ui/eclipse/objecttools/messages_cs.properties
webui/webapp/ObjectTools/src/org/netxms/ui/eclipse/objecttools/messages_es.properties
webui/webapp/ObjectTools/src/org/netxms/ui/eclipse/objecttools/messages_ru.properties
webui/webapp/ObjectTools/src/org/netxms/ui/eclipse/objecttools/messages_zh_CN.properties
webui/webapp/ObjectTools/src/org/netxms/ui/eclipse/objecttools/propertypages/General.java
webui/webapp/ObjectTools/src/org/netxms/ui/eclipse/objecttools/views/ObjectToolsEditor.java
webui/webapp/ObjectTools/src/org/netxms/ui/eclipse/objecttools/views/helpers/ObjectToolsLabelProvider.java

index c28cea5..dee4788 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,7 +2,7 @@
 * 1.3.0
 *
 
-- Fixed issues: #79
+- Fixed issues: #79, #393, #88
 
 
 *
index c1f293f..6c48ce3 100644 (file)
@@ -1,4 +1,4 @@
-/* 
+/*
 ** NetXMS - Network Management System
 ** Copyright (C) 2003-2013 Victor Kirhenshtein
 **
@@ -484,6 +484,7 @@ typedef struct
 #define CMD_GET_SUBNET_ADDRESS_MAP     0x011C
 #define CMD_FILE_MONITORING            0x011D
 #define CMD_CANCEL_FILE_MONITORING     0x011E
+#define CMD_CHANGE_DISABLE_STATUSS     0x011F
 
 #define CMD_RS_LIST_REPORTS            0x1100
 #define CMD_RS_GET_REPORT              0x1101
@@ -842,7 +843,7 @@ typedef struct
 #define VID_NUM_ORDERING_COLUMNS    ((UINT32)345)
 #define VID_SYSTEM_TAG              ((UINT32)346)
 #define VID_NUM_ENUMS               ((UINT32)347)
-#define VID_NUM_PUSH_PARAMETERS     ((UINT32)348) 
+#define VID_NUM_PUSH_PARAMETERS     ((UINT32)348)
 #define VID_OLD_PASSWORD            ((UINT32)349)
 #define VID_MIN_PASSWORD_LENGTH     ((UINT32)350)
 #define VID_LAST_LOGIN              ((UINT32)351)
index b3e292b..1526c5f 100644 (file)
@@ -1,4 +1,4 @@
-/* 
+/*
 ** NetXMS - Network Management System
 ** Copyright (C) 2003-2011 Victor Kirhenshtein
 **
@@ -45,6 +45,7 @@
 #define TF_REQUIRES_AGENT           ((DWORD)0x00000002)
 #define TF_REQUIRES_OID_MATCH       ((DWORD)0x00000004)
 #define TF_ASK_CONFIRMATION         ((DWORD)0x00000008)
+#define TF_DISABLED                 ((DWORD)0x00000020)
 #define TF_SNMP_INDEXED_BY_VALUE    ((DWORD)0x00010000)
 
 
index 10affbd..6361da8 100644 (file)
@@ -310,6 +310,7 @@ public class NXCPCodes
        public static final int CMD_GET_SUBNET_ADDRESS_MAP = 0x011C;
        public static final int CMD_FILE_MONITORING = 0x011D;
        public static final int CMD_CANCEL_FILE_MONITORING = 0x011E;
+       public static final int CMD_CHANGE_DISABLE_STATUSS = 0x011F;
 
        // CMD_RS_ - Reporting Server related codes
        public static final int CMD_RS_LIST_REPORTS = 0x1100;
index 1e701c3..a68dfa9 100644 (file)
@@ -5129,6 +5129,21 @@ public class NXCSession implements Session, ScriptLibraryManager, UserManager, S
       sendMessage(msg);
       waitForRCC(msg.getMessageId());
    }
+   
+   /**
+    * Delete object tool.
+    *
+    * @param toolId Object tool ID
+    * @throws IOException  if socket I/O error occurs
+    * @throws NXCException if NetXMS server returns an error or operation was timed out
+    */
+   public void changeObjecToolDisableStatuss(long toolId) throws IOException, NXCException
+   {
+      final NXCPMessage msg = newMessage(NXCPCodes.CMD_CHANGE_DISABLE_STATUSS);
+      msg.setVariableInt32(NXCPCodes.VID_TOOL_ID, (int) toolId);
+      sendMessage(msg);
+      waitForRCC(msg.getMessageId());
+   }
 
    /**
     * Execute object tool of "table" type against given node.
index a2c3eb4..1e344a4 100644 (file)
@@ -42,6 +42,7 @@ public class ObjectTool
        public static final int REQUIRES_OID_MATCH    = 0x00000004;
        public static final int ASK_CONFIRMATION      = 0x00000008;
        public static final int GENERATES_OUTPUT      = 0x00000010;
+       public static final int DISABLED              = 0x00000020;
        public static final int SNMP_INDEXED_BY_VALUE = 0x00010000;
        
        protected long id;
index 4904c55..15b6c67 100644 (file)
@@ -1,5 +1,3 @@
-#Modified by DOKSoft Properties Editor Java i18n tool (sorting:human), 
-
 action.label.ObjectTools=N\u00E1troje objekt\u016F
 actionSet.label.ObjectTools=Konfigurace n\u00E1stroj\u016F objekt\u016F
 command.description.Copy=Kop\u00EDrovat
index 01188ca..8e55e5e 100644 (file)
@@ -1,19 +1,19 @@
-action.label.ObjectTools = Object Tools
-actionSet.label.ObjectTools = Object Tools Configuration
-command.description.Copy = Copy
-command.description.ObjectTools = Open object tools editor
-command.description.SelectAll = Select all
-command.description.Terminate = Terminate running external command
-command.name.Copy = Copy
-command.name.ObjectTools = Object Tools
-command.name.SelectAll = Select all
-command.name.Terminate = Terminate
-page.name.AccessControl = Access Control
-page.name.Columns = Columns
-page.name.Filter = Filter
-page.name.General = General
-view.name.FileViewer = File Viewer
-view.name.LocalCommand = Local Command
-view.name.ObjectTools = Object Tools
-view.name.TableResults = Table Tool Results
-view.name.WebBrowser = Web Browser
+action.label.ObjectTools=Object Tools
+actionSet.label.ObjectTools=Object Tools Configuration
+command.description.Copy=Copy
+command.description.ObjectTools=Open object tools editor
+command.description.SelectAll=Select all
+command.description.Terminate=Terminate running external command
+command.name.Copy=Copy
+command.name.ObjectTools=Object Tools
+command.name.SelectAll=Select all
+command.name.Terminate=Terminate
+page.name.AccessControl=Access Control
+page.name.Columns=Columns
+page.name.Filter=Filter
+page.name.General=General
+view.name.FileViewer=File Viewer
+view.name.LocalCommand=Local Command
+view.name.ObjectTools=Object Tools
+view.name.TableResults=Table Tool Results
+view.name.WebBrowser=Web Browser
index 08f050b..6b1742b 100644 (file)
@@ -1,19 +1,19 @@
-action.label.ObjectTools = \u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432
-actionSet.label.ObjectTools = \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432
-command.description.Copy = \u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c
-command.description.ObjectTools = \u041e\u0442\u043a\u0440\u044b\u0442\u044c \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432
-command.description.SelectAll = \u0412\u044b\u0431\u0440\u0430\u0442\u044c \u0432\u0441\u0435
-command.description.Terminate = \u041f\u0440\u0435\u0440\u0432\u0430\u0442\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0432\u043d\u0435\u0448\u043d\u0435\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u044b
-command.name.Copy = \u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c
-command.name.ObjectTools = \u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432
-command.name.SelectAll = \u0412\u044b\u0431\u0440\u0430\u0442\u044c \u0432\u0441\u0435
-command.name.Terminate = \u041f\u0440\u0435\u0440\u0432\u0430\u0442\u044c
-page.name.AccessControl = \u041a\u043e\u043d\u0442\u0440\u043e\u043b\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u0430
-page.name.Columns = \u0421\u0442\u043e\u043b\u0431\u0446\u044b
-page.name.Filter = \u0424\u0438\u043b\u044c\u0442\u0440
-page.name.General = \u041e\u0441\u043d\u043e\u0432\u043d\u043e\u0435
-view.name.FileViewer = \u0421\u0440\u0435\u0434\u0441\u0442\u0432\u043e \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0444\u0430\u0439\u043b\u043e\u0432
-view.name.LocalCommand = \u041b\u043e\u043a\u0430\u043b\u044c\u043d\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430
-view.name.ObjectTools = \u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432
-view.name.TableResults = \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432
-view.name.WebBrowser = \u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u0431\u0440\u0430\u0443\u0437\u0435\u0440
+action.label.ObjectTools=\u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432
+actionSet.label.ObjectTools=\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432
+command.description.Copy=\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c
+command.description.ObjectTools=\u041e\u0442\u043a\u0440\u044b\u0442\u044c \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432
+command.description.SelectAll=\u0412\u044b\u0431\u0440\u0430\u0442\u044c \u0432\u0441\u0435
+command.description.Terminate=\u041f\u0440\u0435\u0440\u0432\u0430\u0442\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0432\u043d\u0435\u0448\u043d\u0435\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u044b
+command.name.Copy=\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c
+command.name.ObjectTools=\u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432
+command.name.SelectAll=\u0412\u044b\u0431\u0440\u0430\u0442\u044c \u0432\u0441\u0435
+command.name.Terminate=\u041f\u0440\u0435\u0440\u0432\u0430\u0442\u044c
+page.name.AccessControl=\u041a\u043e\u043d\u0442\u0440\u043e\u043b\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u0430
+page.name.Columns=\u0421\u0442\u043e\u043b\u0431\u0446\u044b
+page.name.Filter=\u0424\u0438\u043b\u044c\u0442\u0440
+page.name.General=\u041e\u0441\u043d\u043e\u0432\u043d\u043e\u0435
+view.name.FileViewer=\u0421\u0440\u0435\u0434\u0441\u0442\u0432\u043e \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0444\u0430\u0439\u043b\u043e\u0432
+view.name.LocalCommand=\u041b\u043e\u043a\u0430\u043b\u044c\u043d\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430
+view.name.ObjectTools=\u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432
+view.name.TableResults=\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432
+view.name.WebBrowser=\u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u0431\u0440\u0430\u0443\u0437\u0435\u0440
index 01188ca..8e55e5e 100644 (file)
@@ -1,19 +1,19 @@
-action.label.ObjectTools = Object Tools
-actionSet.label.ObjectTools = Object Tools Configuration
-command.description.Copy = Copy
-command.description.ObjectTools = Open object tools editor
-command.description.SelectAll = Select all
-command.description.Terminate = Terminate running external command
-command.name.Copy = Copy
-command.name.ObjectTools = Object Tools
-command.name.SelectAll = Select all
-command.name.Terminate = Terminate
-page.name.AccessControl = Access Control
-page.name.Columns = Columns
-page.name.Filter = Filter
-page.name.General = General
-view.name.FileViewer = File Viewer
-view.name.LocalCommand = Local Command
-view.name.ObjectTools = Object Tools
-view.name.TableResults = Table Tool Results
-view.name.WebBrowser = Web Browser
+action.label.ObjectTools=Object Tools
+actionSet.label.ObjectTools=Object Tools Configuration
+command.description.Copy=Copy
+command.description.ObjectTools=Open object tools editor
+command.description.SelectAll=Select all
+command.description.Terminate=Terminate running external command
+command.name.Copy=Copy
+command.name.ObjectTools=Object Tools
+command.name.SelectAll=Select all
+command.name.Terminate=Terminate
+page.name.AccessControl=Access Control
+page.name.Columns=Columns
+page.name.Filter=Filter
+page.name.General=General
+view.name.FileViewer=File Viewer
+view.name.LocalCommand=Local Command
+view.name.ObjectTools=Object Tools
+view.name.TableResults=Table Tool Results
+view.name.WebBrowser=Web Browser
index 47c8bd2..20dd017 100644 (file)
@@ -38,8 +38,10 @@ public class Messages extends NLS
    public static String EditColumnDialog_SubstrIndex;
    public static String EditColumnDialog_Warning;
    public static String FileViewer_Cannot_Stop_File_Monitoring;
+   public static String FileViewer_ClearOutput;
    public static String FileViewer_Download_File_Updates;
    public static String FileViewer_InvalidObjectID;
+   public static String FileViewer_ScrollLock;
    public static String FileViewer_Stop_File_Monitoring;
    public static String Filter_AgentNeeded;
    public static String Filter_OIDShouldMatch;
@@ -49,9 +51,13 @@ public class Messages extends NLS
    public static String General_Confirmation;
    public static String General_ConfirmationMessage;
    public static String General_Description;
+   public static String General_DisableObjectToll;
    public static String General_ExecOptions;
+   public static String General_FileOptions;
    public static String General_FirstColumnValue;
+   public static String General_FollowFileChanges;
    public static String General_GeneratesOutput;
+   public static String General_LimitDownloadFileSizeLable;
    public static String General_Name;
    public static String General_OIDSuffix;
    public static String General_Operation;
@@ -91,6 +97,8 @@ public class Messages extends NLS
    public static String ObjectToolsDynamicMenu_ServerCommandExecuted;
    public static String ObjectToolsDynamicMenu_ToolExecution;
    public static String ObjectToolsDynamicMenu_TopLevelLabel;
+   public static String ObjectToolsEditor_AckToDisableObjectTool;
+   public static String ObjectToolsEditor_AckToEnableObjTool;
    public static String ObjectToolsEditor_ColDescr;
    public static String ObjectToolsEditor_ColId;
    public static String ObjectToolsEditor_ColName;
@@ -98,6 +106,12 @@ public class Messages extends NLS
    public static String ObjectToolsEditor_Confirmation;
    public static String ObjectToolsEditor_Delete;
    public static String ObjectToolsEditor_DeleteConfirmation;
+   public static String ObjectToolsEditor_Disable;
+   public static String ObjectToolsEditor_DisableObjTool;
+   public static String ObjectToolsEditor_Enable;
+   public static String ObjectToolsEditor_EnableObjTool;
+   public static String ObjectToolsEditor_ErrorDisablingObjectTools;
+   public static String ObjectToolsEditor_ErrorDisablingObjTools;
    public static String ObjectToolsEditor_JobDelete;
    public static String ObjectToolsEditor_JobDeleteError;
    public static String ObjectToolsEditor_JobGetConfig;
index b9f0849..4d3c1f0 100644 (file)
@@ -123,8 +123,9 @@ public class ObjectToolsDynamicMenu extends ContributionItem implements IWorkben
                for(int i = 0; i < tools.length; i++)
                {
                        boolean allowed = isToolAllowed(tools[i], nodes);
+                       boolean enabled = (tools[i].getFlags() & ObjectTool.DISABLED) == 0 ;
                        
-                       if (allowed && isToolApplicable(tools[i], nodes))
+                       if (allowed && isToolApplicable(tools[i], nodes) && enabled)
                        {
                                String[] path = tools[i].getName().split("\\-\\>"); //$NON-NLS-1$
                        
@@ -448,11 +449,11 @@ public class ObjectToolsDynamicMenu extends ContributionItem implements IWorkben
        private void executeFileDownload(final AbstractNode node, final ObjectTool tool)
        {
                final NXCSession session = (NXCSession)ConsoleSharedData.getSession();
-               String[] parameters = tool.getData().split("\u007F");
+               String[] parameters = tool.getData().split("\u007F"); //$NON-NLS-1$
                
                final String fileName = substituteMacros(parameters[0], node);
                final int maxFileSize = Integer.parseInt(parameters[1]);
-               final boolean follow = parameters[2].equals("true") ? true : false;
+               final boolean follow = parameters[2].equals("true") ? true : false; //$NON-NLS-1$
                
                ConsoleJob job = new ConsoleJob(Messages.get().ObjectToolsDynamicMenu_DownloadFromAgent, null, Activator.PLUGIN_ID, null) {
                        @Override
index 49f0b00..8ce0d85 100644 (file)
@@ -31,8 +31,10 @@ EditColumnDialog_SNMP_OID=SNMP Object Identifier (OID)
 EditColumnDialog_SubstrIndex=Substring index (starting from 1)
 EditColumnDialog_Warning=Warning
 FileViewer_Cannot_Stop_File_Monitoring=Cannot stop file monitor
+FileViewer_ClearOutput=&Clear output
 FileViewer_Download_File_Updates=Download file updates from agent
 FileViewer_InvalidObjectID=Invalid object ID
+FileViewer_ScrollLock=&Scroll lock
 FileViewer_Stop_File_Monitoring=Stop file monitor
 Filter_AgentNeeded=NetXMS agent should be available
 Filter_OIDShouldMatch=Node SNMP OID should match with the following template:
@@ -42,9 +44,13 @@ General_Command=Command
 General_Confirmation=Confirmation
 General_ConfirmationMessage=Confirmation message
 General_Description=Description
+General_DisableObjectToll=Disable Object Tool
 General_ExecOptions=Execution options
+General_FileOptions=File Options
 General_FirstColumnValue=&Value of first column
+General_FollowFileChanges=Follow file changes
 General_GeneratesOutput=Command generates output
+General_LimitDownloadFileSizeLable=Limit initial download size (in bytes, 0 for unlimited)
 General_Name=Name
 General_OIDSuffix=&OID suffix of first column
 General_Operation=Operation
@@ -84,6 +90,8 @@ ObjectToolsDynamicMenu_ServerCmdExecError=Canot execute command on server
 ObjectToolsDynamicMenu_ServerCommandExecuted=Server command executed successfully
 ObjectToolsDynamicMenu_ToolExecution=Tool Execution
 ObjectToolsDynamicMenu_TopLevelLabel=&Tools
+ObjectToolsEditor_AckToDisableObjectTool=Are you sure you want to disable this Object Tool?
+ObjectToolsEditor_AckToEnableObjTool=Are you sure you want to enable this Object Tool?
 ObjectToolsEditor_ColDescr=Description
 ObjectToolsEditor_ColId=ID
 ObjectToolsEditor_ColName=Name
@@ -91,6 +99,12 @@ ObjectToolsEditor_ColType=Type
 ObjectToolsEditor_Confirmation=Confirmation
 ObjectToolsEditor_Delete=&Delete
 ObjectToolsEditor_DeleteConfirmation=Do you really want to delete selected tools?
+ObjectToolsEditor_Disable=Disable
+ObjectToolsEditor_DisableObjTool=DisableObject Tool
+ObjectToolsEditor_Enable=Enable
+ObjectToolsEditor_EnableObjTool=Enable Object Tool
+ObjectToolsEditor_ErrorDisablingObjectTools=It is not possible to disable this object tool.
+ObjectToolsEditor_ErrorDisablingObjTools=It is not possible to enable this object tool.
 ObjectToolsEditor_JobDelete=Delete objecttools
 ObjectToolsEditor_JobDeleteError=Cannot delete object tool
 ObjectToolsEditor_JobGetConfig=Get object tools configuration
index 01c05ad..e64efa0 100644 (file)
@@ -31,8 +31,10 @@ EditColumnDialog_SNMP_OID=SNMP identifik\u00E1tor (OID)
 EditColumnDialog_SubstrIndex=Index pod\u0159et\u011Bzce (za\u010D\u00EDnaj\u00EDc\u00ED od 1)
 EditColumnDialog_Warning=Varov\u00E1n\u00ED
 FileViewer_Cannot_Stop_File_Monitoring=Cannot stop file monitor
+FileViewer_ClearOutput=&Clear output
 FileViewer_Download_File_Updates=Download file updates from agent
 FileViewer_InvalidObjectID=Neplatn\u00E9 ID objektu
+FileViewer_ScrollLock=&Scroll lock
 FileViewer_Stop_File_Monitoring=Stop file monitor
 Filter_AgentNeeded=NetXMS agent by m\u011Bl b\u00FDt dostupn\u00FD
 Filter_OIDShouldMatch=SNMP OID prvku by m\u011Bl souhlasit s n\u00E1sleduj\u00EDc\u00ED \u0161ablonou\:
@@ -42,9 +44,13 @@ General_Command=P\u0159\u00EDkaz
 General_Confirmation=Potvrzen\u00ED
 General_ConfirmationMessage=Potvrzovac\u00ED zpr\u00E1va
 General_Description=Popis
+General_DisableObjectToll=Disable Object Tool
 General_ExecOptions=Mo\u017Enosti spu\u0161t\u011Bn\u00ED
+General_FileOptions=File Options
 General_FirstColumnValue=&Hodnota prvn\u00EDho sloupce
+General_FollowFileChanges=Follow file changes
 General_GeneratesOutput=P\u0159\u00EDkaz generuj\u00EDc\u00ED v\u00FDstup
+General_LimitDownloadFileSizeLable=Limit initial download size (in bytes, 0 for unlimited)
 General_Name=N\u00E1zev
 General_OIDSuffix=&OID p\u0159\u00EDpona prvn\u00EDho sloupce
 General_Operation=Operace
@@ -84,6 +90,8 @@ ObjectToolsDynamicMenu_ServerCmdExecError=Nelze spustit p\u0159\u00EDkaz na serv
 ObjectToolsDynamicMenu_ServerCommandExecuted=P\u0159\u00EDkaz serveru usp\u011B\u0161n\u011B spu\u0161t\u011Bn
 ObjectToolsDynamicMenu_ToolExecution=N\u00E1stroj spu\u0161t\u011Bn\u00ED
 ObjectToolsDynamicMenu_TopLevelLabel=&N\u00E1stroje
+ObjectToolsEditor_AckToDisableObjectTool=Are you sure you want to disable this Object Tool?
+ObjectToolsEditor_AckToEnableObjTool=Are you sure you want to enable this Object Tool?
 ObjectToolsEditor_ColDescr=Popis
 ObjectToolsEditor_ColId=ID
 ObjectToolsEditor_ColName=N\u00E1zev
@@ -91,6 +99,12 @@ ObjectToolsEditor_ColType=Typ
 ObjectToolsEditor_Confirmation=Potvrzen\u00ED
 ObjectToolsEditor_Delete=&Smazat
 ObjectToolsEditor_DeleteConfirmation=Opravdu chcete smazat ozna\u010Den\u00E9 n\u00E1stroje?
+ObjectToolsEditor_Disable=Disable
+ObjectToolsEditor_DisableObjTool=DisableObject Tool
+ObjectToolsEditor_Enable=Enable
+ObjectToolsEditor_EnableObjTool=Enable Object Tool
+ObjectToolsEditor_ErrorDisablingObjTools=It is not possible to enable this object tool.
+ObjectToolsEditor_ErrorDisablingObjectTools=It is not possible to disable this object tool.
 ObjectToolsEditor_JobDelete=Smazat n\u00E1stroje objektu
 ObjectToolsEditor_JobDeleteError=Nelze smazat n\u00E1stroje objektu
 ObjectToolsEditor_JobGetConfig=Z\u00EDskat konfiguraci n\u00E1stroj\u016F objekt\u016F
index 87e4537..a2697b5 100644 (file)
@@ -7,7 +7,7 @@ BrowserView_PartName_Changed=Web Browser - %s
 BrowserView_PartName_Changing=Web Browser - [%s]
 BrowserView_Stop=&Stop
 Columns_Add=&Add...
-Columns_DefName=Column 
+Columns_DefName=Column
 Columns_Delete=&Delete
 Columns_Edit=&Edit...
 Columns_Format=Format
@@ -31,8 +31,10 @@ EditColumnDialog_SNMP_OID=SNMP Object Identifier (OID)
 EditColumnDialog_SubstrIndex=Substring index (starting from 1)
 EditColumnDialog_Warning=Warning
 FileViewer_Cannot_Stop_File_Monitoring=Cannot stop file monitor
+FileViewer_ClearOutput=&Clear output
 FileViewer_Download_File_Updates=Download file updates from agent
 FileViewer_InvalidObjectID=Invalid object ID
+FileViewer_ScrollLock=&Scroll lock
 FileViewer_Stop_File_Monitoring=Stop file monitor
 Filter_AgentNeeded=NetXMS agent should be available
 Filter_OIDShouldMatch=Node SNMP OID should match with the following template:
@@ -42,9 +44,13 @@ General_Command=Command
 General_Confirmation=Confirmation
 General_ConfirmationMessage=Confirmation message
 General_Description=Description
+General_DisableObjectToll=Disable Object Tool
 General_ExecOptions=Execution options
+General_FileOptions=File Options
 General_FirstColumnValue=&Value of first column
+General_FollowFileChanges=Follow file changes
 General_GeneratesOutput=Command generates output
+General_LimitDownloadFileSizeLable=Limit initial download size (in bytes, 0 for unlimited)
 General_Name=Name
 General_OIDSuffix=&OID suffix of first column
 General_Operation=Operation
@@ -68,7 +74,7 @@ LocalCommandResults_Terminated=\n\n*** TERMINATED ***\n
 ObjectToolsAdapterFactory_Error=Error
 ObjectToolsAdapterFactory_LoaderErrorText=Cannot load object tool details: %s
 ObjectToolsDynamicMenu_CannotExecuteOnNode=Cannot execute action on node %s
-ObjectToolsDynamicMenu_CannotOpenWebBrowser=Cannot open web browser: 
+ObjectToolsDynamicMenu_CannotOpenWebBrowser=Cannot open web browser:
 ObjectToolsDynamicMenu_ConfirmExec=Confirm Tool Execution
 ObjectToolsDynamicMenu_DownloadError=Cannot download file %s from node %s
 ObjectToolsDynamicMenu_DownloadFromAgent=Download file from agent
@@ -84,6 +90,8 @@ ObjectToolsDynamicMenu_ServerCmdExecError=Canot execute command on server
 ObjectToolsDynamicMenu_ServerCommandExecuted=Server command executed successfully
 ObjectToolsDynamicMenu_ToolExecution=Tool Execution
 ObjectToolsDynamicMenu_TopLevelLabel=&Tools
+ObjectToolsEditor_AckToDisableObjectTool=Are you sure you want to disable this Object Tool?
+ObjectToolsEditor_AckToEnableObjTool=Are you sure you want to enable this Object Tool?
 ObjectToolsEditor_ColDescr=Description
 ObjectToolsEditor_ColId=ID
 ObjectToolsEditor_ColName=Name
@@ -91,6 +99,12 @@ ObjectToolsEditor_ColType=Type
 ObjectToolsEditor_Confirmation=Confirmation
 ObjectToolsEditor_Delete=&Delete
 ObjectToolsEditor_DeleteConfirmation=Do you really want to delete selected tools?
+ObjectToolsEditor_Disable=Disable
+ObjectToolsEditor_DisableObjTool=DisableObject Tool
+ObjectToolsEditor_Enable=Enable
+ObjectToolsEditor_EnableObjTool=Enable Object Tool
+ObjectToolsEditor_ErrorDisablingObjTools=It is not possible to enable this object tool.
+ObjectToolsEditor_ErrorDisablingObjectTools=It is not possible to disable this object tool.
 ObjectToolsEditor_JobDelete=Delete objecttools
 ObjectToolsEditor_JobDeleteError=Cannot delete object tool
 ObjectToolsEditor_JobGetConfig=Get object tools configuration
@@ -109,7 +123,7 @@ ObjectToolsLabelProvider_TypeSNMPTable=SNMP Table
 ObjectToolsLabelProvider_TypeServerCmd=Server Command
 ObjectToolsLabelProvider_TypeURL=URL
 OpenObjectToolsEditor_Error=Error
-OpenObjectToolsEditor_ErrorOpenView=Error opening view: 
+OpenObjectToolsEditor_ErrorOpenView=Error opening view:
 TableToolResults_InvalidObjectID=Invalid object ID
 TableToolResults_InvalidToolID=Invalid tool ID
 TableToolResults_JobError=Cannot get data for table tool %s
index f0372c6..82d6efc 100644 (file)
@@ -7,7 +7,7 @@ BrowserView_PartName_Changed=\u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u
 BrowserView_PartName_Changing=\u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u0431\u0440\u0430\u0443\u0437\u0435\u0440 - [%s]
 BrowserView_Stop=&\u041e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c
 Columns_Add=&\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c...
-Columns_DefName=\u0421\u0442\u043e\u043b\u0431\u0435\u0446 
+Columns_DefName=\u0421\u0442\u043e\u043b\u0431\u0435\u0446
 Columns_Delete=&\u0423\u0434\u0430\u043b\u0438\u0442\u044c
 Columns_Edit=&\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c...
 Columns_Format=\u0424\u043e\u0440\u043c\u0430\u0442
@@ -31,8 +31,10 @@ EditColumnDialog_SNMP_OID=SNMP OID
 EditColumnDialog_SubstrIndex=\u0418\u043d\u0434\u0435\u043a\u0441 \u043f\u043e\u0434\u0441\u0442\u0440\u043e\u043a\u0438 (\u043d\u0430\u0447\u0438\u043d\u0430\u044f \u0441 1)
 EditColumnDialog_Warning=\u041f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435
 FileViewer_Cannot_Stop_File_Monitoring=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 \u0444\u0430\u0439\u043b\u043e\u0432
+FileViewer_ClearOutput=&Clear output
 FileViewer_Download_File_Updates=\u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b \u0441 \u0430\u0433\u0435\u043d\u0442\u0430
 FileViewer_InvalidObjectID=\u041d\u0435\u0432\u0435\u0440\u043d\u044b\u0439 \u043a\u043e\u0434 \u043e\u0431\u044a\u0435\u043a\u0442\u0430
+FileViewer_ScrollLock=&Scroll lock
 FileViewer_Stop_File_Monitoring=\u041e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0430 \u0444\u0430\u0439\u043b\u043e\u0432
 Filter_AgentNeeded=\u0410\u0433\u0435\u043d\u0442 NetXMS \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d
 Filter_OIDShouldMatch=\u0423\u0437\u0435\u043b \u0434\u043e\u043b\u0436\u0435\u043d \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c SNMP OID, \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0439 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c\u0443 \u0448\u0430\u0431\u043b\u043e\u043d\u0443:
@@ -42,9 +44,13 @@ General_Command=\u041a\u043e\u043c\u043c\u0430\u043d\u0434\u0430
 General_Confirmation=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435
 General_ConfirmationMessage=\u0422\u0435\u043a\u0441\u0442 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f
 General_Description=\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435
+General_DisableObjectToll=Disable Object Tool
 General_ExecOptions=\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f
+General_FileOptions=File Options
 General_FirstColumnValue=&\u0417\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0441\u0442\u043e\u043b\u0431\u0446\u0430
+General_FollowFileChanges=Follow file changes
 General_GeneratesOutput=\u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u0432\u044b\u0432\u043e\u0434
+General_LimitDownloadFileSizeLable=Limit initial download size (in bytes, 0 for unlimited)
 General_Name=\u0418\u043c\u044f
 General_OIDSuffix=\u0421\u0443\u0444\u0444\u0438\u043a\u0441 &OID \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0441\u0442\u043e\u043b\u0431\u0446\u0430
 General_Operation=\u041e\u043f\u0435\u0440\u0430\u0446\u0438\u044f
@@ -68,7 +74,7 @@ LocalCommandResults_Terminated=\n\n*** \u041f\u0420\u0415\u0420\u0412\u0410\u041
 ObjectToolsAdapterFactory_Error=\u041e\u0448\u0438\u0431\u043a\u0430
 ObjectToolsAdapterFactory_LoaderErrorText=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430: %s
 ObjectToolsDynamicMenu_CannotExecuteOnNode=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043d\u0430 \u0443\u0437\u043b\u0435 %s
-ObjectToolsDynamicMenu_CannotOpenWebBrowser=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u0431\u0440\u0430\u0443\u0437\u0435\u0440: 
+ObjectToolsDynamicMenu_CannotOpenWebBrowser=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u0431\u0440\u0430\u0443\u0437\u0435\u0440:
 ObjectToolsDynamicMenu_ConfirmExec=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u044b
 ObjectToolsDynamicMenu_DownloadError=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0444\u0430\u0439\u043b %s \u0441 \u0443\u0437\u043b\u0430 %s
 ObjectToolsDynamicMenu_DownloadFromAgent=\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0444\u0430\u0439\u043b\u0430 \u0441 \u0430\u0433\u0435\u043d\u0442\u0430
@@ -84,6 +90,8 @@ ObjectToolsDynamicMenu_ServerCmdExecError=\u041d\u0435\u0432\u043e\u0437\u043c\u
 ObjectToolsDynamicMenu_ServerCommandExecuted=\u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0430 \u0443\u0441\u043f\u0435\u0448\u043d\u043e
 ObjectToolsDynamicMenu_ToolExecution=\u0412\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430
 ObjectToolsDynamicMenu_TopLevelLabel=&\u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b
+ObjectToolsEditor_AckToDisableObjectTool=Are you sure you want to disable this Object Tool?
+ObjectToolsEditor_AckToEnableObjTool=Are you sure you want to enable this Object Tool?
 ObjectToolsEditor_ColDescr=\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435
 ObjectToolsEditor_ColId=\u041a\u043e\u0434
 ObjectToolsEditor_ColName=\u0418\u043c\u044f
@@ -91,6 +99,12 @@ ObjectToolsEditor_ColType=\u0422\u0438\u043f
 ObjectToolsEditor_Confirmation=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435
 ObjectToolsEditor_Delete=&\u0423\u0434\u0430\u043b\u0438\u0442\u044c
 ObjectToolsEditor_DeleteConfirmation=\u0412\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u044b\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b?
+ObjectToolsEditor_Disable=Disable
+ObjectToolsEditor_DisableObjTool=DisableObject Tool
+ObjectToolsEditor_Enable=Enable
+ObjectToolsEditor_EnableObjTool=Enable Object Tool
+ObjectToolsEditor_ErrorDisablingObjTools=It is not possible to enable this object tool.
+ObjectToolsEditor_ErrorDisablingObjectTools=It is not possible to disable this object tool.
 ObjectToolsEditor_JobDelete=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432
 ObjectToolsEditor_JobDeleteError=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442
 ObjectToolsEditor_JobGetConfig=\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430
@@ -109,7 +123,7 @@ ObjectToolsLabelProvider_TypeSNMPTable=\u0422\u0430\u0431\u043b\u0438\u0446\u043
 ObjectToolsLabelProvider_TypeServerCmd=\u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435
 ObjectToolsLabelProvider_TypeURL=URL
 OpenObjectToolsEditor_Error=\u041e\u0448\u0438\u0431\u043a\u0430
-OpenObjectToolsEditor_ErrorOpenView=\u041e\u0448\u0438\u0431\u043a\u0430 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f: 
+OpenObjectToolsEditor_ErrorOpenView=\u041e\u0448\u0438\u0431\u043a\u0430 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f:
 TableToolResults_InvalidObjectID=\u041d\u0435\u0432\u0435\u0440\u043d\u044b\u0439 \u043a\u043e\u0434 \u043e\u0431\u044a\u0435\u043a\u0442\u0430
 TableToolResults_InvalidToolID=\u041d\u0435\u0432\u0435\u0440\u043d\u044b\u0439 \u043a\u043e\u0434 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430
 TableToolResults_JobError=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 %s
index 87e4537..a2697b5 100644 (file)
@@ -7,7 +7,7 @@ BrowserView_PartName_Changed=Web Browser - %s
 BrowserView_PartName_Changing=Web Browser - [%s]
 BrowserView_Stop=&Stop
 Columns_Add=&Add...
-Columns_DefName=Column 
+Columns_DefName=Column
 Columns_Delete=&Delete
 Columns_Edit=&Edit...
 Columns_Format=Format
@@ -31,8 +31,10 @@ EditColumnDialog_SNMP_OID=SNMP Object Identifier (OID)
 EditColumnDialog_SubstrIndex=Substring index (starting from 1)
 EditColumnDialog_Warning=Warning
 FileViewer_Cannot_Stop_File_Monitoring=Cannot stop file monitor
+FileViewer_ClearOutput=&Clear output
 FileViewer_Download_File_Updates=Download file updates from agent
 FileViewer_InvalidObjectID=Invalid object ID
+FileViewer_ScrollLock=&Scroll lock
 FileViewer_Stop_File_Monitoring=Stop file monitor
 Filter_AgentNeeded=NetXMS agent should be available
 Filter_OIDShouldMatch=Node SNMP OID should match with the following template:
@@ -42,9 +44,13 @@ General_Command=Command
 General_Confirmation=Confirmation
 General_ConfirmationMessage=Confirmation message
 General_Description=Description
+General_DisableObjectToll=Disable Object Tool
 General_ExecOptions=Execution options
+General_FileOptions=File Options
 General_FirstColumnValue=&Value of first column
+General_FollowFileChanges=Follow file changes
 General_GeneratesOutput=Command generates output
+General_LimitDownloadFileSizeLable=Limit initial download size (in bytes, 0 for unlimited)
 General_Name=Name
 General_OIDSuffix=&OID suffix of first column
 General_Operation=Operation
@@ -68,7 +74,7 @@ LocalCommandResults_Terminated=\n\n*** TERMINATED ***\n
 ObjectToolsAdapterFactory_Error=Error
 ObjectToolsAdapterFactory_LoaderErrorText=Cannot load object tool details: %s
 ObjectToolsDynamicMenu_CannotExecuteOnNode=Cannot execute action on node %s
-ObjectToolsDynamicMenu_CannotOpenWebBrowser=Cannot open web browser: 
+ObjectToolsDynamicMenu_CannotOpenWebBrowser=Cannot open web browser:
 ObjectToolsDynamicMenu_ConfirmExec=Confirm Tool Execution
 ObjectToolsDynamicMenu_DownloadError=Cannot download file %s from node %s
 ObjectToolsDynamicMenu_DownloadFromAgent=Download file from agent
@@ -84,6 +90,8 @@ ObjectToolsDynamicMenu_ServerCmdExecError=Canot execute command on server
 ObjectToolsDynamicMenu_ServerCommandExecuted=Server command executed successfully
 ObjectToolsDynamicMenu_ToolExecution=Tool Execution
 ObjectToolsDynamicMenu_TopLevelLabel=&Tools
+ObjectToolsEditor_AckToDisableObjectTool=Are you sure you want to disable this Object Tool?
+ObjectToolsEditor_AckToEnableObjTool=Are you sure you want to enable this Object Tool?
 ObjectToolsEditor_ColDescr=Description
 ObjectToolsEditor_ColId=ID
 ObjectToolsEditor_ColName=Name
@@ -91,6 +99,12 @@ ObjectToolsEditor_ColType=Type
 ObjectToolsEditor_Confirmation=Confirmation
 ObjectToolsEditor_Delete=&Delete
 ObjectToolsEditor_DeleteConfirmation=Do you really want to delete selected tools?
+ObjectToolsEditor_Disable=Disable
+ObjectToolsEditor_DisableObjTool=DisableObject Tool
+ObjectToolsEditor_Enable=Enable
+ObjectToolsEditor_EnableObjTool=Enable Object Tool
+ObjectToolsEditor_ErrorDisablingObjTools=It is not possible to enable this object tool.
+ObjectToolsEditor_ErrorDisablingObjectTools=It is not possible to disable this object tool.
 ObjectToolsEditor_JobDelete=Delete objecttools
 ObjectToolsEditor_JobDeleteError=Cannot delete object tool
 ObjectToolsEditor_JobGetConfig=Get object tools configuration
@@ -109,7 +123,7 @@ ObjectToolsLabelProvider_TypeSNMPTable=SNMP Table
 ObjectToolsLabelProvider_TypeServerCmd=Server Command
 ObjectToolsLabelProvider_TypeURL=URL
 OpenObjectToolsEditor_Error=Error
-OpenObjectToolsEditor_ErrorOpenView=Error opening view: 
+OpenObjectToolsEditor_ErrorOpenView=Error opening view:
 TableToolResults_InvalidObjectID=Invalid object ID
 TableToolResults_InvalidToolID=Invalid tool ID
 TableToolResults_JobError=Cannot get data for table tool %s
index 8717e08..368bd5a 100644 (file)
@@ -50,6 +50,7 @@ public class General extends PropertyPage
        private LabeledText textRegexp;
        private Button checkOutput;
        private Button checkConfirmation;
+       private Button disable;
        private Button follow;
        private LabeledText textConfirmation;
        private Button radioIndexOID;
@@ -128,7 +129,7 @@ public class General extends PropertyPage
                                textData.setText((parameters.length > 0) ? parameters[0] : ""); //$NON-NLS-1$
                                
                                Group fileOptionsGoup = new Group(dialogArea, SWT.NONE);
-                               fileOptionsGoup.setText("File Options");
+                               fileOptionsGoup.setText(Messages.get().General_FileOptions);
             gd = new GridData();
             gd.horizontalAlignment = SWT.FILL;
             gd.grabExcessHorizontalSpace = true;
@@ -144,7 +145,7 @@ public class General extends PropertyPage
                      gd.horizontalAlignment = SWT.FILL;
                      gd.grabExcessHorizontalSpace = true;
                      maxFileSize.setLayoutData(gd);
-                               maxFileSize.setLabel("Limit initial download size (in bytes, 0 for unlimited)");
+                               maxFileSize.setLabel(Messages.get().General_LimitDownloadFileSizeLable);
                                maxFileSize.setRange(0, 0x7FFFFFFF);
                                try
                                {
@@ -156,7 +157,7 @@ public class General extends PropertyPage
                                }
                                                        
                                follow = new Button(fileOptionsGoup, SWT.CHECK);
-                               follow.setText("Follow file changes");
+                               follow.setText(Messages.get().General_FollowFileChanges);
                                if(parameters.length > 2) //$NON-NLS-1$
                                {
                                   follow.setSelection( parameters[2].equals("true") ? true : false);  //$NON-NLS-1$
@@ -246,6 +247,11 @@ public class General extends PropertyPage
                textConfirmation.setText(objectTool.getConfirmationText());
                textConfirmation.setEnabled(checkConfirmation.getSelection());
                
+               //Disable option
+               disable = new Button(dialogArea, SWT.CHECK);
+               disable.setText(Messages.get().General_DisableObjectToll);
+               disable.setSelection((objectTool.getFlags() & ObjectTool.DISABLED) > 0);
+               
                return dialogArea;
        }
        
@@ -302,6 +308,15 @@ public class General extends PropertyPage
                }
                objectTool.setConfirmationText(textConfirmation.getText());
                
+      if (disable.getSelection())
+      {
+         objectTool.setFlags(objectTool.getFlags() | ObjectTool.DISABLED);
+      }
+      else
+      {
+         objectTool.setFlags(objectTool.getFlags() & ~ObjectTool.DISABLED);
+      }
+               
                if (objectTool.getType() == ObjectTool.TYPE_TABLE_SNMP)
                {
                        if (radioIndexValue.getSelection())
index e354c9d..8a1798d 100644 (file)
@@ -144,23 +144,23 @@ public class FileViewer extends ViewPart
    {
       final IHandlerService handlerService = (IHandlerService)getSite().getService(IHandlerService.class);
       
-      actionClear = new Action("&Clear output", SharedIcons.CLEAR_LOG) {
+      actionClear = new Action(Messages.get().FileViewer_ClearOutput, SharedIcons.CLEAR_LOG) {
          @Override
          public void run()
          {
-            textViewer.setText("");
+            textViewer.setText(""); //$NON-NLS-1$
          }
       };
       actionClear.setActionDefinitionId("org.netxms.ui.eclipse.objecttools.commands.clear_output"); //$NON-NLS-1$
       handlerService.activateHandler(actionClear.getActionDefinitionId(), new ActionHandler(actionClear));
 
-      actionScrollLock = new Action("&Scroll lock", Action.AS_CHECK_BOX) { 
+      actionScrollLock = new Action(Messages.get().FileViewer_ScrollLock, Action.AS_CHECK_BOX) { 
          @Override
          public void run()
          {
          }
       };
-      actionScrollLock.setImageDescriptor(Activator.getImageDescriptor("icons/scroll_lock.gif"));
+      actionScrollLock.setImageDescriptor(Activator.getImageDescriptor("icons/scroll_lock.gif")); //$NON-NLS-1$
       actionScrollLock.setChecked(false);
       actionScrollLock.setActionDefinitionId("org.netxms.ui.eclipse.objecttools.commands.scroll_lock"); //$NON-NLS-1$
       handlerService.activateHandler(actionScrollLock.getActionDefinitionId(), new ActionHandler(actionScrollLock));
index 17f8f2a..bf81719 100644 (file)
@@ -94,6 +94,8 @@ public class ObjectToolsEditor extends ViewPart implements SessionListener
        private Action actionNew;
        private Action actionEdit;
        private Action actionDelete;
+       private Action actionDisable;
+       private Action actionEnable;
 
        /* (non-Javadoc)
         * @see org.eclipse.ui.part.WorkbenchPart#createPartControl(org.eclipse.swt.widgets.Composite)
@@ -131,6 +133,8 @@ public class ObjectToolsEditor extends ViewPart implements SessionListener
                                {
                                        actionEdit.setEnabled(selection.size() == 1);
                                        actionDelete.setEnabled(selection.size() > 0);
+                                       actionDisable.setEnabled(areAllEnabled(selection));
+                                       actionEnable.setEnabled(areAllDisabled(selection));
                                }
                        }
                });
@@ -157,6 +161,24 @@ public class ObjectToolsEditor extends ViewPart implements SessionListener
                
                refreshToolList();
        }
+       
+        private boolean areAllDisabled(IStructuredSelection selection)
+    {
+       List l = selection.toList();
+       for (int i = 0; i < l.size(); i++)
+          if((((ObjectTool)l.get(i)).getFlags() & ObjectTool.DISABLED) == 0 )
+             return false;
+       return true;
+    }
+
+    private boolean areAllEnabled(IStructuredSelection selection)
+    {
+       List l = selection.toList();
+       for (int i = 0; i < l.size(); i++)
+          if((((ObjectTool)l.get(i)).getFlags() & ObjectTool.DISABLED) > 0 )
+             return false;
+       return true;
+    }
 
        /**
         * Create actions
@@ -213,6 +235,22 @@ public class ObjectToolsEditor extends ViewPart implements SessionListener
                        }
                };
                actionDelete.setImageDescriptor(SharedIcons.DELETE_OBJECT);
+               
+               actionDisable = new Action(Messages.get().ObjectToolsEditor_Disable) {
+         @Override
+         public void run()
+         {
+            setSelectedDisabled();
+         }
+      };
+      
+      actionEnable = new Action(Messages.get().ObjectToolsEditor_Enable) {
+         @Override
+         public void run()
+         {
+            setSelectedEnabled();
+         }
+      };
        }
 
        /**
@@ -290,7 +328,16 @@ public class ObjectToolsEditor extends ViewPart implements SessionListener
                mgr.add(new Separator());
                mgr.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS));
                mgr.add(new Separator());
-               mgr.add(actionEdit);
+      mgr.add(actionEdit);
+      IStructuredSelection selection = (IStructuredSelection)viewer.getSelection();
+               if(areAllEnabled(selection))
+               {
+             mgr.add(actionDisable);
+               }
+               if(areAllDisabled(selection))
+               {
+                  mgr.add(actionEnable);
+               }
        }
 
        /**
@@ -425,6 +472,62 @@ public class ObjectToolsEditor extends ViewPart implements SessionListener
                        }
                }.schedule();
        }
+       
+        private void setSelectedDisabled()
+    {
+           IStructuredSelection selection = (IStructuredSelection)viewer.getSelection();
+       if (selection.isEmpty())
+          return;
+       
+       if (!MessageDialogHelper.openConfirm(getSite().getShell(), Messages.get().ObjectToolsEditor_Confirmation, Messages.get().ObjectToolsEditor_AckToDisableObjectTool))
+          return;
+       
+       final Object[] objects = selection.toArray();
+       new ConsoleJob(Messages.get().ObjectToolsEditor_DisableObjTool, this, Activator.PLUGIN_ID, Activator.PLUGIN_ID) {
+          @Override
+          protected String getErrorMessage()
+          {
+             return Messages.get().ObjectToolsEditor_ErrorDisablingObjectTools;
+          }
+
+          @Override
+          protected void runInternal(IProgressMonitor monitor) throws Exception
+          {
+             for(int i = 0; i < objects.length; i++)
+             {
+                session.changeObjecToolDisableStatuss(((ObjectTool)objects[i]).getId());
+             }
+          }
+       }.start();
+    }
+        
+        private void setSelectedEnabled()
+    {
+           IStructuredSelection selection = (IStructuredSelection)viewer.getSelection();
+             if (selection.isEmpty())
+                return;
+             
+             if (!MessageDialogHelper.openConfirm(getSite().getShell(), Messages.get().ObjectToolsEditor_Confirmation, Messages.get().ObjectToolsEditor_AckToEnableObjTool))
+                return;
+             
+             final Object[] objects = selection.toArray();
+             new ConsoleJob(Messages.get().ObjectToolsEditor_EnableObjTool, this, Activator.PLUGIN_ID, Activator.PLUGIN_ID) {
+                @Override
+                protected String getErrorMessage()
+                {
+                   return Messages.get().ObjectToolsEditor_ErrorDisablingObjTools;
+                }
+
+                @Override
+                protected void runInternal(IProgressMonitor monitor) throws Exception
+                {
+                   for(int i = 0; i < objects.length; i++)
+                   {
+                      session.changeObjecToolDisableStatuss(((ObjectTool)objects[i]).getId());
+                   }
+                }
+             }.start();       
+    }
 
        /* (non-Javadoc)
         * @see org.eclipse.ui.part.WorkbenchPart#setFocus()
index a723711..4810eb7 100644 (file)
@@ -43,7 +43,7 @@ public class ObjectToolsLabelProvider extends LabelProvider implements ITableLab
                Messages.get().ObjectToolsLabelProvider_TypeDownloadFile
        };
        
-       private Image[] toolTypeImages = new Image[toolTypes.length];
+       private Image[] toolTypeImages = new Image[toolTypes.length+1];
        
        /**
         * The constructor
@@ -58,6 +58,7 @@ public class ObjectToolsLabelProvider extends LabelProvider implements ITableLab
                toolTypeImages[5] = Activator.getImageDescriptor("icons/console.png").createImage(); //$NON-NLS-1$
                toolTypeImages[6] = Activator.getImageDescriptor("icons/console.png").createImage(); //$NON-NLS-1$
                toolTypeImages[7] = Activator.getImageDescriptor("icons/file_download.png").createImage(); //$NON-NLS-1$
+               toolTypeImages[8] = Activator.getImageDescriptor("icons/stop.png").createImage(); //$NON-NLS-1$
        }
        
        /* (non-Javadoc)
@@ -71,7 +72,14 @@ public class ObjectToolsLabelProvider extends LabelProvider implements ITableLab
 
                try
                {
-                       return toolTypeImages[((ObjectTool)element).getType()];
+                  if((((ObjectTool)element).getFlags() & ObjectTool.DISABLED)== 0)
+                  {
+                     return toolTypeImages[((ObjectTool)element).getType()];
+                  }
+                  else
+                  {
+                     return toolTypeImages[8];
+                  }
                }
                catch(ArrayIndexOutOfBoundsException e)
                {
index 4904c55..15b6c67 100644 (file)
@@ -1,5 +1,3 @@
-#Modified by DOKSoft Properties Editor Java i18n tool (sorting:human), 
-
 action.label.ObjectTools=N\u00E1troje objekt\u016F
 actionSet.label.ObjectTools=Konfigurace n\u00E1stroj\u016F objekt\u016F
 command.description.Copy=Kop\u00EDrovat
index 01188ca..8e55e5e 100644 (file)
@@ -1,19 +1,19 @@
-action.label.ObjectTools = Object Tools
-actionSet.label.ObjectTools = Object Tools Configuration
-command.description.Copy = Copy
-command.description.ObjectTools = Open object tools editor
-command.description.SelectAll = Select all
-command.description.Terminate = Terminate running external command
-command.name.Copy = Copy
-command.name.ObjectTools = Object Tools
-command.name.SelectAll = Select all
-command.name.Terminate = Terminate
-page.name.AccessControl = Access Control
-page.name.Columns = Columns
-page.name.Filter = Filter
-page.name.General = General
-view.name.FileViewer = File Viewer
-view.name.LocalCommand = Local Command
-view.name.ObjectTools = Object Tools
-view.name.TableResults = Table Tool Results
-view.name.WebBrowser = Web Browser
+action.label.ObjectTools=Object Tools
+actionSet.label.ObjectTools=Object Tools Configuration
+command.description.Copy=Copy
+command.description.ObjectTools=Open object tools editor
+command.description.SelectAll=Select all
+command.description.Terminate=Terminate running external command
+command.name.Copy=Copy
+command.name.ObjectTools=Object Tools
+command.name.SelectAll=Select all
+command.name.Terminate=Terminate
+page.name.AccessControl=Access Control
+page.name.Columns=Columns
+page.name.Filter=Filter
+page.name.General=General
+view.name.FileViewer=File Viewer
+view.name.LocalCommand=Local Command
+view.name.ObjectTools=Object Tools
+view.name.TableResults=Table Tool Results
+view.name.WebBrowser=Web Browser
index 08f050b..6b1742b 100644 (file)
@@ -1,19 +1,19 @@
-action.label.ObjectTools = \u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432
-actionSet.label.ObjectTools = \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432
-command.description.Copy = \u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c
-command.description.ObjectTools = \u041e\u0442\u043a\u0440\u044b\u0442\u044c \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432
-command.description.SelectAll = \u0412\u044b\u0431\u0440\u0430\u0442\u044c \u0432\u0441\u0435
-command.description.Terminate = \u041f\u0440\u0435\u0440\u0432\u0430\u0442\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0432\u043d\u0435\u0448\u043d\u0435\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u044b
-command.name.Copy = \u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c
-command.name.ObjectTools = \u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432
-command.name.SelectAll = \u0412\u044b\u0431\u0440\u0430\u0442\u044c \u0432\u0441\u0435
-command.name.Terminate = \u041f\u0440\u0435\u0440\u0432\u0430\u0442\u044c
-page.name.AccessControl = \u041a\u043e\u043d\u0442\u0440\u043e\u043b\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u0430
-page.name.Columns = \u0421\u0442\u043e\u043b\u0431\u0446\u044b
-page.name.Filter = \u0424\u0438\u043b\u044c\u0442\u0440
-page.name.General = \u041e\u0441\u043d\u043e\u0432\u043d\u043e\u0435
-view.name.FileViewer = \u0421\u0440\u0435\u0434\u0441\u0442\u0432\u043e \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0444\u0430\u0439\u043b\u043e\u0432
-view.name.LocalCommand = \u041b\u043e\u043a\u0430\u043b\u044c\u043d\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430
-view.name.ObjectTools = \u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432
-view.name.TableResults = \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432
-view.name.WebBrowser = \u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u0431\u0440\u0430\u0443\u0437\u0435\u0440
+action.label.ObjectTools=\u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432
+actionSet.label.ObjectTools=\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432
+command.description.Copy=\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c
+command.description.ObjectTools=\u041e\u0442\u043a\u0440\u044b\u0442\u044c \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432
+command.description.SelectAll=\u0412\u044b\u0431\u0440\u0430\u0442\u044c \u0432\u0441\u0435
+command.description.Terminate=\u041f\u0440\u0435\u0440\u0432\u0430\u0442\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0432\u043d\u0435\u0448\u043d\u0435\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u044b
+command.name.Copy=\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c
+command.name.ObjectTools=\u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432
+command.name.SelectAll=\u0412\u044b\u0431\u0440\u0430\u0442\u044c \u0432\u0441\u0435
+command.name.Terminate=\u041f\u0440\u0435\u0440\u0432\u0430\u0442\u044c
+page.name.AccessControl=\u041a\u043e\u043d\u0442\u0440\u043e\u043b\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u0430
+page.name.Columns=\u0421\u0442\u043e\u043b\u0431\u0446\u044b
+page.name.Filter=\u0424\u0438\u043b\u044c\u0442\u0440
+page.name.General=\u041e\u0441\u043d\u043e\u0432\u043d\u043e\u0435
+view.name.FileViewer=\u0421\u0440\u0435\u0434\u0441\u0442\u0432\u043e \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0444\u0430\u0439\u043b\u043e\u0432
+view.name.LocalCommand=\u041b\u043e\u043a\u0430\u043b\u044c\u043d\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430
+view.name.ObjectTools=\u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432
+view.name.TableResults=\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432
+view.name.WebBrowser=\u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u0431\u0440\u0430\u0443\u0437\u0435\u0440
index 01188ca..8e55e5e 100644 (file)
@@ -1,19 +1,19 @@
-action.label.ObjectTools = Object Tools
-actionSet.label.ObjectTools = Object Tools Configuration
-command.description.Copy = Copy
-command.description.ObjectTools = Open object tools editor
-command.description.SelectAll = Select all
-command.description.Terminate = Terminate running external command
-command.name.Copy = Copy
-command.name.ObjectTools = Object Tools
-command.name.SelectAll = Select all
-command.name.Terminate = Terminate
-page.name.AccessControl = Access Control
-page.name.Columns = Columns
-page.name.Filter = Filter
-page.name.General = General
-view.name.FileViewer = File Viewer
-view.name.LocalCommand = Local Command
-view.name.ObjectTools = Object Tools
-view.name.TableResults = Table Tool Results
-view.name.WebBrowser = Web Browser
+action.label.ObjectTools=Object Tools
+actionSet.label.ObjectTools=Object Tools Configuration
+command.description.Copy=Copy
+command.description.ObjectTools=Open object tools editor
+command.description.SelectAll=Select all
+command.description.Terminate=Terminate running external command
+command.name.Copy=Copy
+command.name.ObjectTools=Object Tools
+command.name.SelectAll=Select all
+command.name.Terminate=Terminate
+page.name.AccessControl=Access Control
+page.name.Columns=Columns
+page.name.Filter=Filter
+page.name.General=General
+view.name.FileViewer=File Viewer
+view.name.LocalCommand=Local Command
+view.name.ObjectTools=Object Tools
+view.name.TableResults=Table Tool Results
+view.name.WebBrowser=Web Browser
index 1b9a653..d9f9563 100644 (file)
@@ -41,8 +41,10 @@ public class Messages extends NLS
    public String EditColumnDialog_SubstrIndex;
    public String EditColumnDialog_Warning;
    public String FileViewer_Cannot_Stop_File_Monitoring;
+   public String FileViewer_ClearOutput;
    public String FileViewer_Download_File_Updates;
    public String FileViewer_InvalidObjectID;
+   public String FileViewer_ScrollLock;
    public String FileViewer_Stop_File_Monitoring;
    public String Filter_AgentNeeded;
    public String Filter_OIDShouldMatch;
@@ -52,9 +54,13 @@ public class Messages extends NLS
    public String General_Confirmation;
    public String General_ConfirmationMessage;
    public String General_Description;
+   public String General_DisableObjectToll;
    public String General_ExecOptions;
+   public String General_FileOptions;
    public String General_FirstColumnValue;
+   public String General_FollowFileChanges;
    public String General_GeneratesOutput;
+   public String General_LimitDownloadFileSizeLable;
    public String General_Name;
    public String General_OIDSuffix;
    public String General_Operation;
@@ -94,6 +100,8 @@ public class Messages extends NLS
    public String ObjectToolsDynamicMenu_ServerCommandExecuted;
    public String ObjectToolsDynamicMenu_ToolExecution;
    public String ObjectToolsDynamicMenu_TopLevelLabel;
+   public String ObjectToolsEditor_AckToDisableObjectTool;
+   public String ObjectToolsEditor_AckToEnableObjTool;
    public String ObjectToolsEditor_ColDescr;
    public String ObjectToolsEditor_ColId;
    public String ObjectToolsEditor_ColName;
@@ -101,6 +109,12 @@ public class Messages extends NLS
    public String ObjectToolsEditor_Confirmation;
    public String ObjectToolsEditor_Delete;
    public String ObjectToolsEditor_DeleteConfirmation;
+   public String ObjectToolsEditor_Disable;
+   public String ObjectToolsEditor_DisableObjTool;
+   public String ObjectToolsEditor_Enable;
+   public String ObjectToolsEditor_EnableObjTool;
+   public String ObjectToolsEditor_ErrorDisablingObjectTools;
+   public String ObjectToolsEditor_ErrorDisablingObjTools;
    public String ObjectToolsEditor_JobDelete;
    public String ObjectToolsEditor_JobDeleteError;
    public String ObjectToolsEditor_JobGetConfig;
index 59c441a..0bfea9a 100644 (file)
@@ -121,8 +121,9 @@ public class ObjectToolsDynamicMenu extends ContributionItem implements IWorkben
                for(int i = 0; i < tools.length; i++)
                {
                        boolean allowed = isToolAllowed(tools[i], nodes);
+                       boolean enabled = (tools[i].getFlags() & ObjectTool.DISABLED) == 0 ;
                        
-                       if (allowed && isToolApplicable(tools[i], nodes))
+                       if (allowed && isToolApplicable(tools[i], nodes) && enabled)
                        {
                                String[] path = tools[i].getName().split("\\-\\>"); //$NON-NLS-1$
                        
@@ -399,11 +400,11 @@ public class ObjectToolsDynamicMenu extends ContributionItem implements IWorkben
        private void executeFileDownload(final AbstractNode node, final ObjectTool tool)
        {
                final NXCSession session = (NXCSession)ConsoleSharedData.getSession();
-               String[] parameters = tool.getData().split("\u007F");
+               String[] parameters = tool.getData().split("\u007F"); //$NON-NLS-1$
                
                final String fileName = substituteMacros(parameters[0], node);
                final int maxFileSize = Integer.parseInt(parameters[1]);
-               final boolean follow = parameters[2].equals("true") ? true : false;
+               final boolean follow = parameters[2].equals("true") ? true : false; //$NON-NLS-1$
                
                ConsoleJob job = new ConsoleJob(Messages.get().ObjectToolsDynamicMenu_DownloadFromAgent, null, Activator.PLUGIN_ID, null) {
                        @Override
index 49f0b00..8ce0d85 100644 (file)
@@ -31,8 +31,10 @@ EditColumnDialog_SNMP_OID=SNMP Object Identifier (OID)
 EditColumnDialog_SubstrIndex=Substring index (starting from 1)
 EditColumnDialog_Warning=Warning
 FileViewer_Cannot_Stop_File_Monitoring=Cannot stop file monitor
+FileViewer_ClearOutput=&Clear output
 FileViewer_Download_File_Updates=Download file updates from agent
 FileViewer_InvalidObjectID=Invalid object ID
+FileViewer_ScrollLock=&Scroll lock
 FileViewer_Stop_File_Monitoring=Stop file monitor
 Filter_AgentNeeded=NetXMS agent should be available
 Filter_OIDShouldMatch=Node SNMP OID should match with the following template:
@@ -42,9 +44,13 @@ General_Command=Command
 General_Confirmation=Confirmation
 General_ConfirmationMessage=Confirmation message
 General_Description=Description
+General_DisableObjectToll=Disable Object Tool
 General_ExecOptions=Execution options
+General_FileOptions=File Options
 General_FirstColumnValue=&Value of first column
+General_FollowFileChanges=Follow file changes
 General_GeneratesOutput=Command generates output
+General_LimitDownloadFileSizeLable=Limit initial download size (in bytes, 0 for unlimited)
 General_Name=Name
 General_OIDSuffix=&OID suffix of first column
 General_Operation=Operation
@@ -84,6 +90,8 @@ ObjectToolsDynamicMenu_ServerCmdExecError=Canot execute command on server
 ObjectToolsDynamicMenu_ServerCommandExecuted=Server command executed successfully
 ObjectToolsDynamicMenu_ToolExecution=Tool Execution
 ObjectToolsDynamicMenu_TopLevelLabel=&Tools
+ObjectToolsEditor_AckToDisableObjectTool=Are you sure you want to disable this Object Tool?
+ObjectToolsEditor_AckToEnableObjTool=Are you sure you want to enable this Object Tool?
 ObjectToolsEditor_ColDescr=Description
 ObjectToolsEditor_ColId=ID
 ObjectToolsEditor_ColName=Name
@@ -91,6 +99,12 @@ ObjectToolsEditor_ColType=Type
 ObjectToolsEditor_Confirmation=Confirmation
 ObjectToolsEditor_Delete=&Delete
 ObjectToolsEditor_DeleteConfirmation=Do you really want to delete selected tools?
+ObjectToolsEditor_Disable=Disable
+ObjectToolsEditor_DisableObjTool=DisableObject Tool
+ObjectToolsEditor_Enable=Enable
+ObjectToolsEditor_EnableObjTool=Enable Object Tool
+ObjectToolsEditor_ErrorDisablingObjectTools=It is not possible to disable this object tool.
+ObjectToolsEditor_ErrorDisablingObjTools=It is not possible to enable this object tool.
 ObjectToolsEditor_JobDelete=Delete objecttools
 ObjectToolsEditor_JobDeleteError=Cannot delete object tool
 ObjectToolsEditor_JobGetConfig=Get object tools configuration
index 01c05ad..e64efa0 100644 (file)
@@ -31,8 +31,10 @@ EditColumnDialog_SNMP_OID=SNMP identifik\u00E1tor (OID)
 EditColumnDialog_SubstrIndex=Index pod\u0159et\u011Bzce (za\u010D\u00EDnaj\u00EDc\u00ED od 1)
 EditColumnDialog_Warning=Varov\u00E1n\u00ED
 FileViewer_Cannot_Stop_File_Monitoring=Cannot stop file monitor
+FileViewer_ClearOutput=&Clear output
 FileViewer_Download_File_Updates=Download file updates from agent
 FileViewer_InvalidObjectID=Neplatn\u00E9 ID objektu
+FileViewer_ScrollLock=&Scroll lock
 FileViewer_Stop_File_Monitoring=Stop file monitor
 Filter_AgentNeeded=NetXMS agent by m\u011Bl b\u00FDt dostupn\u00FD
 Filter_OIDShouldMatch=SNMP OID prvku by m\u011Bl souhlasit s n\u00E1sleduj\u00EDc\u00ED \u0161ablonou\:
@@ -42,9 +44,13 @@ General_Command=P\u0159\u00EDkaz
 General_Confirmation=Potvrzen\u00ED
 General_ConfirmationMessage=Potvrzovac\u00ED zpr\u00E1va
 General_Description=Popis
+General_DisableObjectToll=Disable Object Tool
 General_ExecOptions=Mo\u017Enosti spu\u0161t\u011Bn\u00ED
+General_FileOptions=File Options
 General_FirstColumnValue=&Hodnota prvn\u00EDho sloupce
+General_FollowFileChanges=Follow file changes
 General_GeneratesOutput=P\u0159\u00EDkaz generuj\u00EDc\u00ED v\u00FDstup
+General_LimitDownloadFileSizeLable=Limit initial download size (in bytes, 0 for unlimited)
 General_Name=N\u00E1zev
 General_OIDSuffix=&OID p\u0159\u00EDpona prvn\u00EDho sloupce
 General_Operation=Operace
@@ -84,6 +90,8 @@ ObjectToolsDynamicMenu_ServerCmdExecError=Nelze spustit p\u0159\u00EDkaz na serv
 ObjectToolsDynamicMenu_ServerCommandExecuted=P\u0159\u00EDkaz serveru usp\u011B\u0161n\u011B spu\u0161t\u011Bn
 ObjectToolsDynamicMenu_ToolExecution=N\u00E1stroj spu\u0161t\u011Bn\u00ED
 ObjectToolsDynamicMenu_TopLevelLabel=&N\u00E1stroje
+ObjectToolsEditor_AckToDisableObjectTool=Are you sure you want to disable this Object Tool?
+ObjectToolsEditor_AckToEnableObjTool=Are you sure you want to enable this Object Tool?
 ObjectToolsEditor_ColDescr=Popis
 ObjectToolsEditor_ColId=ID
 ObjectToolsEditor_ColName=N\u00E1zev
@@ -91,6 +99,12 @@ ObjectToolsEditor_ColType=Typ
 ObjectToolsEditor_Confirmation=Potvrzen\u00ED
 ObjectToolsEditor_Delete=&Smazat
 ObjectToolsEditor_DeleteConfirmation=Opravdu chcete smazat ozna\u010Den\u00E9 n\u00E1stroje?
+ObjectToolsEditor_Disable=Disable
+ObjectToolsEditor_DisableObjTool=DisableObject Tool
+ObjectToolsEditor_Enable=Enable
+ObjectToolsEditor_EnableObjTool=Enable Object Tool
+ObjectToolsEditor_ErrorDisablingObjTools=It is not possible to enable this object tool.
+ObjectToolsEditor_ErrorDisablingObjectTools=It is not possible to disable this object tool.
 ObjectToolsEditor_JobDelete=Smazat n\u00E1stroje objektu
 ObjectToolsEditor_JobDeleteError=Nelze smazat n\u00E1stroje objektu
 ObjectToolsEditor_JobGetConfig=Z\u00EDskat konfiguraci n\u00E1stroj\u016F objekt\u016F
index 87e4537..a2697b5 100644 (file)
@@ -7,7 +7,7 @@ BrowserView_PartName_Changed=Web Browser - %s
 BrowserView_PartName_Changing=Web Browser - [%s]
 BrowserView_Stop=&Stop
 Columns_Add=&Add...
-Columns_DefName=Column 
+Columns_DefName=Column
 Columns_Delete=&Delete
 Columns_Edit=&Edit...
 Columns_Format=Format
@@ -31,8 +31,10 @@ EditColumnDialog_SNMP_OID=SNMP Object Identifier (OID)
 EditColumnDialog_SubstrIndex=Substring index (starting from 1)
 EditColumnDialog_Warning=Warning
 FileViewer_Cannot_Stop_File_Monitoring=Cannot stop file monitor
+FileViewer_ClearOutput=&Clear output
 FileViewer_Download_File_Updates=Download file updates from agent
 FileViewer_InvalidObjectID=Invalid object ID
+FileViewer_ScrollLock=&Scroll lock
 FileViewer_Stop_File_Monitoring=Stop file monitor
 Filter_AgentNeeded=NetXMS agent should be available
 Filter_OIDShouldMatch=Node SNMP OID should match with the following template:
@@ -42,9 +44,13 @@ General_Command=Command
 General_Confirmation=Confirmation
 General_ConfirmationMessage=Confirmation message
 General_Description=Description
+General_DisableObjectToll=Disable Object Tool
 General_ExecOptions=Execution options
+General_FileOptions=File Options
 General_FirstColumnValue=&Value of first column
+General_FollowFileChanges=Follow file changes
 General_GeneratesOutput=Command generates output
+General_LimitDownloadFileSizeLable=Limit initial download size (in bytes, 0 for unlimited)
 General_Name=Name
 General_OIDSuffix=&OID suffix of first column
 General_Operation=Operation
@@ -68,7 +74,7 @@ LocalCommandResults_Terminated=\n\n*** TERMINATED ***\n
 ObjectToolsAdapterFactory_Error=Error
 ObjectToolsAdapterFactory_LoaderErrorText=Cannot load object tool details: %s
 ObjectToolsDynamicMenu_CannotExecuteOnNode=Cannot execute action on node %s
-ObjectToolsDynamicMenu_CannotOpenWebBrowser=Cannot open web browser: 
+ObjectToolsDynamicMenu_CannotOpenWebBrowser=Cannot open web browser:
 ObjectToolsDynamicMenu_ConfirmExec=Confirm Tool Execution
 ObjectToolsDynamicMenu_DownloadError=Cannot download file %s from node %s
 ObjectToolsDynamicMenu_DownloadFromAgent=Download file from agent
@@ -84,6 +90,8 @@ ObjectToolsDynamicMenu_ServerCmdExecError=Canot execute command on server
 ObjectToolsDynamicMenu_ServerCommandExecuted=Server command executed successfully
 ObjectToolsDynamicMenu_ToolExecution=Tool Execution
 ObjectToolsDynamicMenu_TopLevelLabel=&Tools
+ObjectToolsEditor_AckToDisableObjectTool=Are you sure you want to disable this Object Tool?
+ObjectToolsEditor_AckToEnableObjTool=Are you sure you want to enable this Object Tool?
 ObjectToolsEditor_ColDescr=Description
 ObjectToolsEditor_ColId=ID
 ObjectToolsEditor_ColName=Name
@@ -91,6 +99,12 @@ ObjectToolsEditor_ColType=Type
 ObjectToolsEditor_Confirmation=Confirmation
 ObjectToolsEditor_Delete=&Delete
 ObjectToolsEditor_DeleteConfirmation=Do you really want to delete selected tools?
+ObjectToolsEditor_Disable=Disable
+ObjectToolsEditor_DisableObjTool=DisableObject Tool
+ObjectToolsEditor_Enable=Enable
+ObjectToolsEditor_EnableObjTool=Enable Object Tool
+ObjectToolsEditor_ErrorDisablingObjTools=It is not possible to enable this object tool.
+ObjectToolsEditor_ErrorDisablingObjectTools=It is not possible to disable this object tool.
 ObjectToolsEditor_JobDelete=Delete objecttools
 ObjectToolsEditor_JobDeleteError=Cannot delete object tool
 ObjectToolsEditor_JobGetConfig=Get object tools configuration
@@ -109,7 +123,7 @@ ObjectToolsLabelProvider_TypeSNMPTable=SNMP Table
 ObjectToolsLabelProvider_TypeServerCmd=Server Command
 ObjectToolsLabelProvider_TypeURL=URL
 OpenObjectToolsEditor_Error=Error
-OpenObjectToolsEditor_ErrorOpenView=Error opening view: 
+OpenObjectToolsEditor_ErrorOpenView=Error opening view:
 TableToolResults_InvalidObjectID=Invalid object ID
 TableToolResults_InvalidToolID=Invalid tool ID
 TableToolResults_JobError=Cannot get data for table tool %s
index f0372c6..82d6efc 100644 (file)
@@ -7,7 +7,7 @@ BrowserView_PartName_Changed=\u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u
 BrowserView_PartName_Changing=\u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u0431\u0440\u0430\u0443\u0437\u0435\u0440 - [%s]
 BrowserView_Stop=&\u041e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c
 Columns_Add=&\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c...
-Columns_DefName=\u0421\u0442\u043e\u043b\u0431\u0435\u0446 
+Columns_DefName=\u0421\u0442\u043e\u043b\u0431\u0435\u0446
 Columns_Delete=&\u0423\u0434\u0430\u043b\u0438\u0442\u044c
 Columns_Edit=&\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c...
 Columns_Format=\u0424\u043e\u0440\u043c\u0430\u0442
@@ -31,8 +31,10 @@ EditColumnDialog_SNMP_OID=SNMP OID
 EditColumnDialog_SubstrIndex=\u0418\u043d\u0434\u0435\u043a\u0441 \u043f\u043e\u0434\u0441\u0442\u0440\u043e\u043a\u0438 (\u043d\u0430\u0447\u0438\u043d\u0430\u044f \u0441 1)
 EditColumnDialog_Warning=\u041f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435
 FileViewer_Cannot_Stop_File_Monitoring=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 \u0444\u0430\u0439\u043b\u043e\u0432
+FileViewer_ClearOutput=&Clear output
 FileViewer_Download_File_Updates=\u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b \u0441 \u0430\u0433\u0435\u043d\u0442\u0430
 FileViewer_InvalidObjectID=\u041d\u0435\u0432\u0435\u0440\u043d\u044b\u0439 \u043a\u043e\u0434 \u043e\u0431\u044a\u0435\u043a\u0442\u0430
+FileViewer_ScrollLock=&Scroll lock
 FileViewer_Stop_File_Monitoring=\u041e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0430 \u0444\u0430\u0439\u043b\u043e\u0432
 Filter_AgentNeeded=\u0410\u0433\u0435\u043d\u0442 NetXMS \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d
 Filter_OIDShouldMatch=\u0423\u0437\u0435\u043b \u0434\u043e\u043b\u0436\u0435\u043d \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c SNMP OID, \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0439 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c\u0443 \u0448\u0430\u0431\u043b\u043e\u043d\u0443:
@@ -42,9 +44,13 @@ General_Command=\u041a\u043e\u043c\u043c\u0430\u043d\u0434\u0430
 General_Confirmation=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435
 General_ConfirmationMessage=\u0422\u0435\u043a\u0441\u0442 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f
 General_Description=\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435
+General_DisableObjectToll=Disable Object Tool
 General_ExecOptions=\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f
+General_FileOptions=File Options
 General_FirstColumnValue=&\u0417\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0441\u0442\u043e\u043b\u0431\u0446\u0430
+General_FollowFileChanges=Follow file changes
 General_GeneratesOutput=\u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u0432\u044b\u0432\u043e\u0434
+General_LimitDownloadFileSizeLable=Limit initial download size (in bytes, 0 for unlimited)
 General_Name=\u0418\u043c\u044f
 General_OIDSuffix=\u0421\u0443\u0444\u0444\u0438\u043a\u0441 &OID \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0441\u0442\u043e\u043b\u0431\u0446\u0430
 General_Operation=\u041e\u043f\u0435\u0440\u0430\u0446\u0438\u044f
@@ -68,7 +74,7 @@ LocalCommandResults_Terminated=\n\n*** \u041f\u0420\u0415\u0420\u0412\u0410\u041
 ObjectToolsAdapterFactory_Error=\u041e\u0448\u0438\u0431\u043a\u0430
 ObjectToolsAdapterFactory_LoaderErrorText=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430: %s
 ObjectToolsDynamicMenu_CannotExecuteOnNode=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043d\u0430 \u0443\u0437\u043b\u0435 %s
-ObjectToolsDynamicMenu_CannotOpenWebBrowser=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u0431\u0440\u0430\u0443\u0437\u0435\u0440: 
+ObjectToolsDynamicMenu_CannotOpenWebBrowser=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u0431\u0440\u0430\u0443\u0437\u0435\u0440:
 ObjectToolsDynamicMenu_ConfirmExec=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u044b
 ObjectToolsDynamicMenu_DownloadError=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0444\u0430\u0439\u043b %s \u0441 \u0443\u0437\u043b\u0430 %s
 ObjectToolsDynamicMenu_DownloadFromAgent=\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0444\u0430\u0439\u043b\u0430 \u0441 \u0430\u0433\u0435\u043d\u0442\u0430
@@ -84,6 +90,8 @@ ObjectToolsDynamicMenu_ServerCmdExecError=\u041d\u0435\u0432\u043e\u0437\u043c\u
 ObjectToolsDynamicMenu_ServerCommandExecuted=\u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0430 \u0443\u0441\u043f\u0435\u0448\u043d\u043e
 ObjectToolsDynamicMenu_ToolExecution=\u0412\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430
 ObjectToolsDynamicMenu_TopLevelLabel=&\u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b
+ObjectToolsEditor_AckToDisableObjectTool=Are you sure you want to disable this Object Tool?
+ObjectToolsEditor_AckToEnableObjTool=Are you sure you want to enable this Object Tool?
 ObjectToolsEditor_ColDescr=\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435
 ObjectToolsEditor_ColId=\u041a\u043e\u0434
 ObjectToolsEditor_ColName=\u0418\u043c\u044f
@@ -91,6 +99,12 @@ ObjectToolsEditor_ColType=\u0422\u0438\u043f
 ObjectToolsEditor_Confirmation=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435
 ObjectToolsEditor_Delete=&\u0423\u0434\u0430\u043b\u0438\u0442\u044c
 ObjectToolsEditor_DeleteConfirmation=\u0412\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u044b\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b?
+ObjectToolsEditor_Disable=Disable
+ObjectToolsEditor_DisableObjTool=DisableObject Tool
+ObjectToolsEditor_Enable=Enable
+ObjectToolsEditor_EnableObjTool=Enable Object Tool
+ObjectToolsEditor_ErrorDisablingObjTools=It is not possible to enable this object tool.
+ObjectToolsEditor_ErrorDisablingObjectTools=It is not possible to disable this object tool.
 ObjectToolsEditor_JobDelete=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432
 ObjectToolsEditor_JobDeleteError=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442
 ObjectToolsEditor_JobGetConfig=\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430
@@ -109,7 +123,7 @@ ObjectToolsLabelProvider_TypeSNMPTable=\u0422\u0430\u0431\u043b\u0438\u0446\u043
 ObjectToolsLabelProvider_TypeServerCmd=\u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435
 ObjectToolsLabelProvider_TypeURL=URL
 OpenObjectToolsEditor_Error=\u041e\u0448\u0438\u0431\u043a\u0430
-OpenObjectToolsEditor_ErrorOpenView=\u041e\u0448\u0438\u0431\u043a\u0430 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f: 
+OpenObjectToolsEditor_ErrorOpenView=\u041e\u0448\u0438\u0431\u043a\u0430 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f:
 TableToolResults_InvalidObjectID=\u041d\u0435\u0432\u0435\u0440\u043d\u044b\u0439 \u043a\u043e\u0434 \u043e\u0431\u044a\u0435\u043a\u0442\u0430
 TableToolResults_InvalidToolID=\u041d\u0435\u0432\u0435\u0440\u043d\u044b\u0439 \u043a\u043e\u0434 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430
 TableToolResults_JobError=\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 %s
index 87e4537..a2697b5 100644 (file)
@@ -7,7 +7,7 @@ BrowserView_PartName_Changed=Web Browser - %s
 BrowserView_PartName_Changing=Web Browser - [%s]
 BrowserView_Stop=&Stop
 Columns_Add=&Add...
-Columns_DefName=Column 
+Columns_DefName=Column
 Columns_Delete=&Delete
 Columns_Edit=&Edit...
 Columns_Format=Format
@@ -31,8 +31,10 @@ EditColumnDialog_SNMP_OID=SNMP Object Identifier (OID)
 EditColumnDialog_SubstrIndex=Substring index (starting from 1)
 EditColumnDialog_Warning=Warning
 FileViewer_Cannot_Stop_File_Monitoring=Cannot stop file monitor
+FileViewer_ClearOutput=&Clear output
 FileViewer_Download_File_Updates=Download file updates from agent
 FileViewer_InvalidObjectID=Invalid object ID
+FileViewer_ScrollLock=&Scroll lock
 FileViewer_Stop_File_Monitoring=Stop file monitor
 Filter_AgentNeeded=NetXMS agent should be available
 Filter_OIDShouldMatch=Node SNMP OID should match with the following template:
@@ -42,9 +44,13 @@ General_Command=Command
 General_Confirmation=Confirmation
 General_ConfirmationMessage=Confirmation message
 General_Description=Description
+General_DisableObjectToll=Disable Object Tool
 General_ExecOptions=Execution options
+General_FileOptions=File Options
 General_FirstColumnValue=&Value of first column
+General_FollowFileChanges=Follow file changes
 General_GeneratesOutput=Command generates output
+General_LimitDownloadFileSizeLable=Limit initial download size (in bytes, 0 for unlimited)
 General_Name=Name
 General_OIDSuffix=&OID suffix of first column
 General_Operation=Operation
@@ -68,7 +74,7 @@ LocalCommandResults_Terminated=\n\n*** TERMINATED ***\n
 ObjectToolsAdapterFactory_Error=Error
 ObjectToolsAdapterFactory_LoaderErrorText=Cannot load object tool details: %s
 ObjectToolsDynamicMenu_CannotExecuteOnNode=Cannot execute action on node %s
-ObjectToolsDynamicMenu_CannotOpenWebBrowser=Cannot open web browser: 
+ObjectToolsDynamicMenu_CannotOpenWebBrowser=Cannot open web browser:
 ObjectToolsDynamicMenu_ConfirmExec=Confirm Tool Execution
 ObjectToolsDynamicMenu_DownloadError=Cannot download file %s from node %s
 ObjectToolsDynamicMenu_DownloadFromAgent=Download file from agent
@@ -84,6 +90,8 @@ ObjectToolsDynamicMenu_ServerCmdExecError=Canot execute command on server
 ObjectToolsDynamicMenu_ServerCommandExecuted=Server command executed successfully
 ObjectToolsDynamicMenu_ToolExecution=Tool Execution
 ObjectToolsDynamicMenu_TopLevelLabel=&Tools
+ObjectToolsEditor_AckToDisableObjectTool=Are you sure you want to disable this Object Tool?
+ObjectToolsEditor_AckToEnableObjTool=Are you sure you want to enable this Object Tool?
 ObjectToolsEditor_ColDescr=Description
 ObjectToolsEditor_ColId=ID
 ObjectToolsEditor_ColName=Name
@@ -91,6 +99,12 @@ ObjectToolsEditor_ColType=Type
 ObjectToolsEditor_Confirmation=Confirmation
 ObjectToolsEditor_Delete=&Delete
 ObjectToolsEditor_DeleteConfirmation=Do you really want to delete selected tools?
+ObjectToolsEditor_Disable=Disable
+ObjectToolsEditor_DisableObjTool=DisableObject Tool
+ObjectToolsEditor_Enable=Enable
+ObjectToolsEditor_EnableObjTool=Enable Object Tool
+ObjectToolsEditor_ErrorDisablingObjTools=It is not possible to enable this object tool.
+ObjectToolsEditor_ErrorDisablingObjectTools=It is not possible to disable this object tool.
 ObjectToolsEditor_JobDelete=Delete objecttools
 ObjectToolsEditor_JobDeleteError=Cannot delete object tool
 ObjectToolsEditor_JobGetConfig=Get object tools configuration
@@ -109,7 +123,7 @@ ObjectToolsLabelProvider_TypeSNMPTable=SNMP Table
 ObjectToolsLabelProvider_TypeServerCmd=Server Command
 ObjectToolsLabelProvider_TypeURL=URL
 OpenObjectToolsEditor_Error=Error
-OpenObjectToolsEditor_ErrorOpenView=Error opening view: 
+OpenObjectToolsEditor_ErrorOpenView=Error opening view:
 TableToolResults_InvalidObjectID=Invalid object ID
 TableToolResults_InvalidToolID=Invalid tool ID
 TableToolResults_JobError=Cannot get data for table tool %s
index 8717e08..368bd5a 100644 (file)
@@ -50,6 +50,7 @@ public class General extends PropertyPage
        private LabeledText textRegexp;
        private Button checkOutput;
        private Button checkConfirmation;
+       private Button disable;
        private Button follow;
        private LabeledText textConfirmation;
        private Button radioIndexOID;
@@ -128,7 +129,7 @@ public class General extends PropertyPage
                                textData.setText((parameters.length > 0) ? parameters[0] : ""); //$NON-NLS-1$
                                
                                Group fileOptionsGoup = new Group(dialogArea, SWT.NONE);
-                               fileOptionsGoup.setText("File Options");
+                               fileOptionsGoup.setText(Messages.get().General_FileOptions);
             gd = new GridData();
             gd.horizontalAlignment = SWT.FILL;
             gd.grabExcessHorizontalSpace = true;
@@ -144,7 +145,7 @@ public class General extends PropertyPage
                      gd.horizontalAlignment = SWT.FILL;
                      gd.grabExcessHorizontalSpace = true;
                      maxFileSize.setLayoutData(gd);
-                               maxFileSize.setLabel("Limit initial download size (in bytes, 0 for unlimited)");
+                               maxFileSize.setLabel(Messages.get().General_LimitDownloadFileSizeLable);
                                maxFileSize.setRange(0, 0x7FFFFFFF);
                                try
                                {
@@ -156,7 +157,7 @@ public class General extends PropertyPage
                                }
                                                        
                                follow = new Button(fileOptionsGoup, SWT.CHECK);
-                               follow.setText("Follow file changes");
+                               follow.setText(Messages.get().General_FollowFileChanges);
                                if(parameters.length > 2) //$NON-NLS-1$
                                {
                                   follow.setSelection( parameters[2].equals("true") ? true : false);  //$NON-NLS-1$
@@ -246,6 +247,11 @@ public class General extends PropertyPage
                textConfirmation.setText(objectTool.getConfirmationText());
                textConfirmation.setEnabled(checkConfirmation.getSelection());
                
+               //Disable option
+               disable = new Button(dialogArea, SWT.CHECK);
+               disable.setText(Messages.get().General_DisableObjectToll);
+               disable.setSelection((objectTool.getFlags() & ObjectTool.DISABLED) > 0);
+               
                return dialogArea;
        }
        
@@ -302,6 +308,15 @@ public class General extends PropertyPage
                }
                objectTool.setConfirmationText(textConfirmation.getText());
                
+      if (disable.getSelection())
+      {
+         objectTool.setFlags(objectTool.getFlags() | ObjectTool.DISABLED);
+      }
+      else
+      {
+         objectTool.setFlags(objectTool.getFlags() & ~ObjectTool.DISABLED);
+      }
+               
                if (objectTool.getType() == ObjectTool.TYPE_TABLE_SNMP)
                {
                        if (radioIndexValue.getSelection())
index e7d2958..673bec1 100644 (file)
@@ -1,6 +1,6 @@
 /**
  * NetXMS - open source network management system
- * Copyright (C) 2003-2011 Victor Kirhenshtein
+ * Copyright (C) 2003-2014 Victor Kirhenshtein
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -21,6 +21,7 @@ package org.netxms.ui.eclipse.objecttools.views;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+
 import org.eclipse.core.runtime.IProgressMonitor;
 import org.eclipse.core.runtime.IStatus;
 import org.eclipse.core.runtime.Platform;
@@ -94,6 +95,8 @@ public class ObjectToolsEditor extends ViewPart implements SessionListener
        private Action actionNew;
        private Action actionEdit;
        private Action actionDelete;
+       private Action actionDisable;
+       private Action actionEnable;
 
        /* (non-Javadoc)
         * @see org.eclipse.ui.part.WorkbenchPart#createPartControl(org.eclipse.swt.widgets.Composite)
@@ -131,6 +134,8 @@ public class ObjectToolsEditor extends ViewPart implements SessionListener
                                {
                                        actionEdit.setEnabled(selection.size() == 1);
                                        actionDelete.setEnabled(selection.size() > 0);
+                                       actionDisable.setEnabled(areAllEnabled(selection));
+                                       actionEnable.setEnabled(areAllDisabled(selection));
                                }
                        }
                });
@@ -157,6 +162,24 @@ public class ObjectToolsEditor extends ViewPart implements SessionListener
                
                refreshToolList();
        }
+       
+        private boolean areAllDisabled(IStructuredSelection selection)
+    {
+       List l = selection.toList();
+       for (int i = 0; i < l.size(); i++)
+          if((((ObjectTool)l.get(i)).getFlags() & ObjectTool.DISABLED) == 0 )
+             return false;
+       return true;
+    }
+
+    private boolean areAllEnabled(IStructuredSelection selection)
+    {
+       List l = selection.toList();
+       for (int i = 0; i < l.size(); i++)
+          if((((ObjectTool)l.get(i)).getFlags() & ObjectTool.DISABLED) > 0 )
+             return false;
+       return true;
+    }
 
        /**
         * Create actions
@@ -213,6 +236,22 @@ public class ObjectToolsEditor extends ViewPart implements SessionListener
                        }
                };
                actionDelete.setImageDescriptor(SharedIcons.DELETE_OBJECT);
+               
+               actionDisable = new Action(Messages.get().ObjectToolsEditor_Disable) {
+         @Override
+         public void run()
+         {
+            setSelectedDisabled();
+         }
+      };
+      
+      actionEnable = new Action(Messages.get().ObjectToolsEditor_Enable) {
+         @Override
+         public void run()
+         {
+            setSelectedEnabled();
+         }
+      };
        }
 
        /**
@@ -290,7 +329,16 @@ public class ObjectToolsEditor extends ViewPart implements SessionListener
                mgr.add(new Separator());
                mgr.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS));
                mgr.add(new Separator());
-               mgr.add(actionEdit);
+      mgr.add(actionEdit);
+      IStructuredSelection selection = (IStructuredSelection)viewer.getSelection();
+               if(areAllEnabled(selection))
+               {
+             mgr.add(actionDisable);
+               }
+               if(areAllDisabled(selection))
+               {
+                  mgr.add(actionEnable);
+               }
        }
 
        /**
@@ -298,7 +346,7 @@ public class ObjectToolsEditor extends ViewPart implements SessionListener
         */
        private void refreshToolList()
        {
-               new ConsoleJob(Messages.get().ObjectToolsEditor_JobGetConfig, this, Activator.PLUGIN_ID, Activator.PLUGIN_ID) {
+               new ConsoleJob(Messages.get(viewer.getControl().getDisplay()).ObjectToolsEditor_JobGetConfig, this, Activator.PLUGIN_ID, Activator.PLUGIN_ID, viewer.getControl().getDisplay()) {
                        @Override
                        protected void runInternal(IProgressMonitor monitor) throws Exception
                        {
@@ -318,7 +366,7 @@ public class ObjectToolsEditor extends ViewPart implements SessionListener
                        @Override
                        protected String getErrorMessage()
                        {
-                               return Messages.get().ObjectToolsEditor_JobGetConfigError;
+                               return Messages.get(getDisplay()).ObjectToolsEditor_JobGetConfigError;
                        }
                }.start();
        }
@@ -353,7 +401,7 @@ public class ObjectToolsEditor extends ViewPart implements SessionListener
                                @Override
                                protected String getErrorMessage()
                                {
-                                       return Messages.get().ObjectToolsEditor_JobNewIdError;
+                                       return Messages.get(getDisplay()).ObjectToolsEditor_JobNewIdError;
                                }
                        }.start();
                }
@@ -376,7 +424,7 @@ public class ObjectToolsEditor extends ViewPart implements SessionListener
                        @Override
                        protected String getErrorMessage()
                        {
-                               return Messages.get().ObjectToolsEditor_JobDeleteError;
+                               return Messages.get(getDisplay()).ObjectToolsEditor_JobDeleteError;
                        }
 
                        @Override
@@ -408,7 +456,7 @@ public class ObjectToolsEditor extends ViewPart implements SessionListener
                        @Override
                        protected String getErrorMessage()
                        {
-                               return Messages.get().ObjectToolsEditor_JobSaveError;
+                               return Messages.get(getDisplay()).ObjectToolsEditor_JobSaveError;
                        }
 
                        @Override
@@ -425,6 +473,62 @@ public class ObjectToolsEditor extends ViewPart implements SessionListener
                        }
                }.schedule();
        }
+       
+        private void setSelectedDisabled()
+    {
+           IStructuredSelection selection = (IStructuredSelection)viewer.getSelection();
+       if (selection.isEmpty())
+          return;
+       
+       if (!MessageDialogHelper.openConfirm(getSite().getShell(), Messages.get().ObjectToolsEditor_Confirmation, Messages.get().ObjectToolsEditor_AckToDisableObjectTool))
+          return;
+       
+       final Object[] objects = selection.toArray();
+       new ConsoleJob(Messages.get(viewer.getControl().getDisplay()).ObjectToolsEditor_DisableObjTool, this, Activator.PLUGIN_ID, Activator.PLUGIN_ID) {
+          @Override
+          protected String getErrorMessage()
+          {
+             return Messages.get(getDisplay()).ObjectToolsEditor_ErrorDisablingObjectTools;
+          }
+
+          @Override
+          protected void runInternal(IProgressMonitor monitor) throws Exception
+          {
+             for(int i = 0; i < objects.length; i++)
+             {
+                session.changeObjecToolDisableStatuss(((ObjectTool)objects[i]).getId());
+             }
+          }
+       }.start();
+    }
+        
+        private void setSelectedEnabled()
+    {
+           IStructuredSelection selection = (IStructuredSelection)viewer.getSelection();
+             if (selection.isEmpty())
+                return;
+             
+             if (!MessageDialogHelper.openConfirm(getSite().getShell(), Messages.get().ObjectToolsEditor_Confirmation, Messages.get().ObjectToolsEditor_AckToEnableObjTool))
+                return;
+             
+             final Object[] objects = selection.toArray();
+             new ConsoleJob(Messages.get(viewer.getControl().getDisplay()).ObjectToolsEditor_EnableObjTool, this, Activator.PLUGIN_ID, Activator.PLUGIN_ID) {
+                @Override
+                protected String getErrorMessage()
+                {
+                   return Messages.get(getDisplay()).ObjectToolsEditor_ErrorDisablingObjTools;
+                }
+
+                @Override
+                protected void runInternal(IProgressMonitor monitor) throws Exception
+                {
+                   for(int i = 0; i < objects.length; i++)
+                   {
+                      session.changeObjecToolDisableStatuss(((ObjectTool)objects[i]).getId());
+                   }
+                }
+             }.start();       
+    }
 
        /* (non-Javadoc)
         * @see org.eclipse.ui.part.WorkbenchPart#setFocus()
index 1910062..c1ad840 100644 (file)
@@ -43,7 +43,7 @@ public class ObjectToolsLabelProvider extends LabelProvider implements ITableLab
                Messages.get().ObjectToolsLabelProvider_TypeDownloadFile
        };
        
-       private Image[] toolTypeImages = new Image[toolTypes.length];
+       private Image[] toolTypeImages = new Image[toolTypes.length+1];
        
        /**
         * The constructor
@@ -58,6 +58,7 @@ public class ObjectToolsLabelProvider extends LabelProvider implements ITableLab
                toolTypeImages[5] = Activator.getImageDescriptor("icons/console.png").createImage(); //$NON-NLS-1$
                toolTypeImages[6] = Activator.getImageDescriptor("icons/console.png").createImage(); //$NON-NLS-1$
                toolTypeImages[7] = Activator.getImageDescriptor("icons/file_download.png").createImage(); //$NON-NLS-1$
+               toolTypeImages[8] = Activator.getImageDescriptor("icons/stop.png").createImage(); //$NON-NLS-1$
        }
        
        /* (non-Javadoc)
@@ -71,7 +72,14 @@ public class ObjectToolsLabelProvider extends LabelProvider implements ITableLab
 
                try
                {
-                       return toolTypeImages[((ObjectTool)element).getType()];
+                  if((((ObjectTool)element).getFlags() & ObjectTool.DISABLED)== 0)
+                  {
+                     return toolTypeImages[((ObjectTool)element).getType()];
+                  }
+                  else
+                  {
+                     return toolTypeImages[8];
+                  }
                }
                catch(ArrayIndexOutOfBoundsException e)
                {