Adding a button that invokes an application in WIT's - devops

Is it possible to add a button to a work item type (WIT) which upon clicked would execute a C# application? I would like to pass in field values of the WIT as arguments to my custom C# code.
I happened across extension Action Button Control but I believe its functionality does not include what I am after. It is displayed in the picture below.
Is there an extension that performs what i'm after?

Related

Can you use AddEventListener with CEF4Delphi?

I am using Delphi XE2 and Chromium CEF4Delphi. I am trying to use a web page via the TChromiumWindow component and would like to detect when an element is selected / clicked.
I saw this post..
Delphi Chromium - launch a command in Delphi application when button in web page is clicked by user
Unfortunately, I cant find the function AddEventListenerProc in the CEF4Delphi library. Neither can I find an alternative way to monitor a button / element click.
I would like to use the TChromiumWindow component to act as a "fron-end" to my app and would like to monitor user button clicks etc.
Can anyone help please ? I did try the developer forum but I dont see much activity there and was unable to register.
Many thanks..
The DCEF3 project has a group here : https://groups.google.com/forum/#!forum/delphichromiumembedded
But the CEF4Delphi and OldCEF4Delphi projects have a developers forum here :
https://www.briskbard.com/forum/
That forum has new posts almost every day and I try to answer them as soon as I can, usually in less than 24 hours.
If you have problems creating an account just send me a message and I'll activate your account manually.
The link you posted is very old and many things have changed in CEF since 2012.
There are several ways to detect when a HTML element has been selected, clicked, etc.
You can use a JavaScript event like "onclick" that calls a custom JavaScript extension. That extension would send a process message to the browser process to notify that the user clicked that element.
You can also use the GlobalCEFApp.OnFocusedNodeChanged that is triggered when an HTML element has been focused. This event is executed in the "render" process so you will also need to send a process message to the main browser process that the focused element has changed.
Use the JSRTTIExtension or the JSExtension demos as a template for your app.
They show you how to set a "mouseover" event that calls the "myextension.mouseover" function defined in a custom JS extension. The myextension.mouseover function executes Delphi code and sends a process message to the main browser process with some HTML information that is shown in the status bar.
They also have an example for a "MutationObserver" that calls a generic "myextension.sendresulttobrowser" function in the JS extension that sends the "value" attribute to the browser process.
Build the demo and right-click on the web page when it's fully loaded. Then select the "Set mouseover event" or "Add mutation observer" options to test what I described.

For BlackBerry, how can my java program select a specific menu item in another BlackBerry program?

How can I simulate a menu item selection for an exact menu item like for example, "New Note" ?
If you want to create a new memo then simply use the Invoke class and supply it with a MemoArguments object. Note that you can do this for other core BB applications beyond the memo application.
Invoke.invokeApplication(Invoke.APP_TYPE_MEMOPAD, new MemoArguments(MemoArguments.ARG_NEW));
If you want to actually click on a menu item in another application then you could try using the EventInjector class, although I don't know how well that will work for you. If it's a third party application that you want to control you probably won't have a lot of success.

How to create Modal and Modeless forms in borland c++ builder

I have an assignment to enhance an already existing tool written in Borland c++, I am new to programming and c++ builder. The task is to integrate message box which pops up, in to the main form itself,which I have successfully done by adding a new form to the project and calling it in place of message box.
I have made my new form modal so that control is blocked,till user selects an option.
Now I have added another form named graph to the project to show a graph and I want the control to go to the graph when user clicks a button in the new form.
Is there a way to make two children modeless and block only the parent form(modal).In short I want to access both the new forms I have added to my project and I don't want to access my main form,till I make all selections in these two forms.Kindly help!
Rather than using ShowModal(), you could set the parent Form's Enabled property to false, use Show() to show both forms, and then set the parent Form's Enabled property back to true when both forms have been closed.
You could move the functions you don't want to run automatically during create from the OnCreate() method. You may move them to e.g. OnClick(). I faced a similar situation where a Show()
method was running during program create. I implemented the OnActivate() method and called the Show() method from there, instead from OnCreate().

delphi, react on copy action or execute paste

How to execute an action in my app always when user click ctrl+v (I want to assign a new alue to clipboard), or how to paste something in active window, when user clicks global hotkey in my app?
When something is pasted the control will receive the WM_PASTE message. So you can intercept this Message.
Simplest way (without knowing what else is on your main form) is to add to your main menu items called Copy / Paste - make the shortcuts Ctrl-C and Ctrl-V. Implement routines in response to these menu items click events (or use actions) and your code will get called...

Using Toolbar to submit SAS code from Editor

When submitting SAS code via the SAS Toolbar (eg cmjohns response) the compiler knows that the code is being "DM'd" and will not run certain code (eg %window).
Is there a way to trick SAS into believing that code submitted from the Toolbar is coming from the Editor, therefore allowing interfaces (using %window) to be triggered via point and click?
It isn't super clean, but this will do it. The only downside is a program editor window will be open after it runs. There's probably a way to close it when it's done but I don't know what that is off hand.
pgm; clear;include "C:\path\code.sas"; submit;
Basically, this says to open a new program editor window and make sure no other code is in it, then include the contents of code.sas into the editor, then submit all the code that's in the program editor.
As a side note, in addition to a toolbar button, I think you could map a function key to a command like this as well. Press F9 to pull up the current mapping. There is a limit to the length of the command mapped to a key though so no long paths.

Resources