Need help with getting started using C++ Plugin Template
-
@PeterJones said in Need help with getting started using C++ Plugin Template:
[*] update: yes, AC files must match the “display-name” (ie, the <UserLang name=“XYZPDQ” … name); I need to update the CONTRIBUTING.md to make that clear, and eventually update the automatic checks run on the repo so that any AC filename must match its associated UDL actual-name. Yay, another thing for my growing TODO list on this project. ;-)
Now you know how I felt making the UDL. I had to figure out how to implement the features everyone wanted, via the Notepad++ features and learn how to do it, then learn the hard way that the naming matters, and then write the installer because people had problems figuring out which
dbaseplus.xml
(UDL, functionList & autoCompletion) file went into which directory, then try and explain how to modify theoverrideMap.xml
file, and then depending on if they had a standard, portable and/or cloud install, and then write the installer to handle it all. I know your angst, believe me. :-)And your herculean efforts are appreciated for sure by me for my future works, considering you can’t time travel. :-) So Thanks!
-
@Coises ,
I can understand your point about upon having a popup appear when the user tries closing the dialog box, alerting them that their changes won’t take effect until NPP is rebooted, so you’re putting the responsibility on to the user…which by the way, is counter to the way the Plugin Admin itself does things.It does the reboot, the same as @PeterJones plugin does, which is what I would expect when I’m required to reboot after completion, also just like Windows own update process requires. This might be the only change needed for the reboot procedure, but other than that, for a rough first version, it’s fine for me…I read directions. Sometimes not as well as I should, but I do read them. :-)
-
@PeterJones said in Need help with getting started using C++ Plugin Template:
since you’re using an asynchronous interface (wininet) you should be able to put a cancel button on the downloading dialog. (Progress would be more work; I’d guess these files are small enough that it wouldn’t be necessary?)
With the downloading happening self-contained in a method on the object, rather than being inside the dialog-handler, I’m not sure of an easy way to signal the class/method to stop the download. Progress, in my mind, would be easier, because if I just passed the control for the progress bar as an argument to the download method, it could send the right signals at appropriate times. But we’ll see what I can figure out.
My apologies. I also used wininet, but forgot that asynchronous operation is an option, not the only way it works. I see from your code that you are operating synchronously. I think passing a progress bar control couldn’t work, because if you’re operating synchronously, the message loop doesn’t run until you return. You can update the control, but the change won’t be displayed because the message loop never gets control to update the display.