Esempio n. 1
0
 // PUBLIC FUNCTIONS EXPOSED TO JAVASCRIPT as io.nodekit.process.*
 public void nextTick(NKScriptValue callback)
 {
     Task.Factory.StartNew(() =>
     {
         callback.callWithArguments(new object[] { });
     });
 }
        public void showMessageBox(NKE_BrowserWindow browserWindow, Dictionary <string, object> options, NKScriptValue callback)
        {
            string title   = NKOptions.itemOrDefault(options, "title", "");
            string message = NKOptions.itemOrDefault(options, "message", "");

            string[] buttonArray = NKOptions.itemOrDefault(options, "buttons", new string[] { "OK" });
            string   detail      = NKOptions.itemOrDefault(options, "detail", "");

            MessageDialog msgbox = new MessageDialog(message, title);

            msgbox.Commands.Clear();
            int count = 0;

            foreach (var item in buttonArray)
            {
                msgbox.Commands.Add(new UICommand {
                    Label = item, Id = count++
                });
            }

            var t = msgbox.ShowAsync();

            if (callback != null)
            {
                t.AsTask().ContinueWith((u) => callback.callWithArguments(new object[] { u.Result.Label }));
            }
        }
Esempio n. 3
0
 // PUBLIC FUNCTIONS EXPOSED TO JAVASCRIPT as io.nodekit.process.*
 public void nextTick(NKScriptValue callback)
 {
     Task.Factory.StartNew(() =>
     {
         callback.callWithArguments(new object[] { });
     });
    
 }
        public void showMessageBox(NKE_BrowserWindow browserWindow, Dictionary <string, object> options, NKScriptValue callback)
        {
            string caption = NKOptions.itemOrDefault(options, "title", "");
            string message = NKOptions.itemOrDefault(options, "message", "");

            string [] buttonArray = NKOptions.itemOrDefault(options, "buttons", new string[] { "OK" });
            string    detail      = NKOptions.itemOrDefault(options, "detail", "");

            MessageBoxImage icon;

            switch (detail)
            {
            case "info":
                icon = MessageBoxImage.Information;
                break;

            case "warning":
                icon = MessageBoxImage.Warning;
                break;

            case "error":
                icon = MessageBoxImage.Error;
                break;

            default:
                icon = MessageBoxImage.None;
                break;
            }

            MessageBoxButton buttons = buttons = MessageBoxButton.OK;

            if ((Array.IndexOf(buttonArray, "OK") > -1) && (Array.IndexOf(buttonArray, "Cancel") > -1))
            {
                buttons = MessageBoxButton.OKCancel;
            }
            else if (Array.IndexOf(buttonArray, "OK") > -1)
            {
                buttons = MessageBoxButton.OK;
            }
            else if ((Array.IndexOf(buttonArray, "Yes") > -1) && (Array.IndexOf(buttonArray, "No") > -1) && (Array.IndexOf(buttonArray, "Cancel") > -1))
            {
                buttons = MessageBoxButton.YesNoCancel;
            }
            else if ((Array.IndexOf(buttonArray, "Yes") > -1) && (Array.IndexOf(buttonArray, "No") > -1))
            {
                buttons = MessageBoxButton.YesNo;
            }

            MessageBoxResult result = MessageBox.Show(message, caption, buttons, icon);

            if (callback != null)
            {
                callback.callWithArguments(new object[] { result.ToString() });
            }
        }
 private void handle(ThreadPoolTimer timer)
 {
     _handler.callWithArguments(new object[] { });
     if (_repeatPeriod > 0)
     {
         var delaySpan = TimeSpan.FromMilliseconds(_repeatPeriod);
         _scheduleTimeout(delaySpan);
     }
     else
     {
         _nsTimer = null;
         close();
     }
 }
 private void _nsTimer_Elapsed(object sender, ElapsedEventArgs e)
 {
     _handler.callWithArguments(new object[] { });
     if (_repeatPeriod > 0)
     {
         var delaySpan = TimeSpan.FromMilliseconds(_repeatPeriod);
         _scheduleTimeout(delaySpan);
     }
     else
     {
         _nsTimer = null;
         close();
     }
 }
        public void showMessageBox(NKE_BrowserWindow browserWindow, Dictionary<string, object> options, NKScriptValue callback)
        {
            string title = NKOptions.itemOrDefault(options, "title", "");
            string message = NKOptions.itemOrDefault(options, "message", "");
            string[] buttonArray = NKOptions.itemOrDefault(options, "buttons", new string[] { "OK" });
            string detail = NKOptions.itemOrDefault(options, "detail", "");

            MessageDialog msgbox = new MessageDialog(message, title);

            msgbox.Commands.Clear();
            int count = 0;
            foreach (var item in buttonArray)
            {
                msgbox.Commands.Add(new UICommand { Label = item, Id = count++ });
            }

            var t = msgbox.ShowAsync();
            if (callback != null)
                t.AsTask().ContinueWith((u) => callback.callWithArguments(new object[] { u.Result.Label }));
        }
       public void showMessageBox(NKE_BrowserWindow browserWindow, Dictionary<string, object> options, NKScriptValue callback)
        {
            string caption = NKOptions.itemOrDefault(options, "title", "");
            string message = NKOptions.itemOrDefault(options, "message", "");
            string [] buttonArray = NKOptions.itemOrDefault(options, "buttons", new string[] { "OK" });
            string detail = NKOptions.itemOrDefault(options, "detail", "");

            MessageBoxIcon icon;
            switch (detail)
            {
                case "info":
                    icon = MessageBoxIcon.Information;
                    break;
                case "warning":
                    icon = MessageBoxIcon.Warning;
                    break;
                case "error":
                    icon = MessageBoxIcon.Error;
                    break;
                default:
                    icon = MessageBoxIcon.None;
                    break;
            }
            
            MessageBoxButtons buttons = buttons = MessageBoxButtons.OK;

            if ((Array.IndexOf(buttonArray, "OK") > -1) && (Array.IndexOf(buttonArray, "Cancel") > -1))
                buttons = MessageBoxButtons.OKCancel;
            else if (Array.IndexOf(buttonArray, "OK") > -1)
                   buttons = MessageBoxButtons.OK;
            else if ((Array.IndexOf(buttonArray, "Abort") > -1) && (Array.IndexOf(buttonArray, "Retry") > -1) && (Array.IndexOf(buttonArray, "Ignore") > -1))
                buttons = MessageBoxButtons.AbortRetryIgnore;
            else if ((Array.IndexOf(buttonArray, "Yes") > -1) && (Array.IndexOf(buttonArray, "No") > -1) && (Array.IndexOf(buttonArray, "Cancel") > -1))
                buttons = MessageBoxButtons.YesNoCancel;
            else if ((Array.IndexOf(buttonArray, "Yes") > -1) && (Array.IndexOf(buttonArray, "No") > -1))
                buttons = MessageBoxButtons.YesNo;
            else if ((Array.IndexOf(buttonArray, "Retry") > -1) && (Array.IndexOf(buttonArray, "Cancel") > -1))
                buttons = MessageBoxButtons.RetryCancel;

            DialogResult result = MessageBox.Show(message, caption, buttons, icon);
            if (callback != null)
                 callback.callWithArguments(new object[] { result.ToString() });
        }