Professor_Bernd Posted August 9, 2020 Share Posted August 9, 2020 I understand how the AdlibRegister function works, it seems to encapsulate the API timer call. This is clearly ready. 1. But what does the word Adlib mean? I did research and used online translators, and I guess it has nothing to do with rap music, right? So what's the secret? 2. I wrote a small demo of how to start and use multiple Adlib timers at once. If anyone is interested, I am happy to share. - Where is the right place for it? Prof Bernd. Link to comment Share on other sites More sharing options...
Nine Posted August 9, 2020 Share Posted August 9, 2020 Good question, my guess : Ad libitum “They did not know it was impossible, so they did it” ― Mark Twain Spoiler Block all input without UAC Save/Retrieve Images to/from Text Monitor Management (VCP commands) Tool to search in text (au3) files Date Range Picker Virtual Desktop Manager Sudoku Game 2020 Overlapped Named Pipe IPC HotString 2.0 - Hot keys with string x64 Bitwise Operations Multi-keyboards HotKeySet Recursive Array Display Fast and simple WCD IPC Multiple Folders Selector Printer Manager GIF Animation (cached) Screen Scraping Multi-Threading Made Easy Link to comment Share on other sites More sharing options...
Professor_Bernd Posted August 9, 2020 Author Share Posted August 9, 2020 Wikipedia: ad libitum from Latin for "at one's pleasure" or "as you desire". - Well, that still doesn't tell me what connects a timer function and "at one's pleasure". Thanks for your answer. Link to comment Share on other sites More sharing options...
TheSaint Posted August 9, 2020 Share Posted August 9, 2020 (edited) I guess the easiest way to describe it, is to say it works when it can, when your processor gives it a chance, based on a specified minimal time between workings. If for instance, you have a MsgBox open, it won't happen until that MsgBox closes and that minimal amount of time has passed, which may have happened meanwhile. You could see it as a kind of improvisation by your processor ... adjusting to conditions. Here are some definitions of what is actually ad-lib, from which the function name would be derived. https://dictionary.cambridge.org/dictionary/english/ad-lib https://www.merriam-webster.com/dictionary/ad-lib https://www.thefreedictionary.com/ad-lib Edited August 9, 2020 by TheSaint Make sure brain is in gear before opening mouth! Remember, what is not said, can be just as important as what is said. Spoiler What is the Secret Key? Life is like a Donut If I put effort into communication, I expect you to read properly & fully, or just not comment. Ignoring those who try to divert conversation with irrelevancies. If I'm intent on insulting you or being rude, I will be obvious, not ambiguous about it. I'm only big and bad, to those who have an over-active imagination. I may have the Artistic Liesense to disagree with you. TheSaint's Toolbox (be advised many downloads are not working due to ISP screwup with my storage) Link to comment Share on other sites More sharing options...
mikell Posted August 9, 2020 Share Posted August 9, 2020 I personally like the merriam-webster definitions : - "in accordance with one's wishes" (so does the timer) - "without restraint or limit" (so it will run until unregistered) TheSaint 1 Link to comment Share on other sites More sharing options...
argumentum Posted August 9, 2020 Share Posted August 9, 2020 (edited) 1 hour ago, Professor_Bernd said: still doesn't tell me what connects a timer function and "at one's pleasure" ..I had children and had to give them names. Not easy. My spouses did that anyway ( and I had not much of a say anyway ) Now, coming up with names for concepts can get cumbersome and once you called it something it stays, even if you found a better name. I think the AdLib is a good name for the concept. It could be called Juan but, then again, people would say One, so.... AdLib it is ...and AdLib works like a timer but is not a timer. It will execute in the midst of the script every x ms. but is not a timer. Is an AdLib function. I can code something to show/proof the difference ( even if to add another shoe to my mouth ) Edited August 9, 2020 by argumentum =) TheSaint, mLipok, Professor_Bernd and 1 other 1 3 Follow the link to my code contribution ( and other things too ). FAQ - Please Read Before Posting. Link to comment Share on other sites More sharing options...
Professor_Bernd Posted August 9, 2020 Author Share Posted August 9, 2020 (edited) Off-topic: Of the four of you I've been reading a lot of posts for quite some time now and I've already used some code from you. I am happy about your answers! On-topic. All your answers are great, I like the one from argumentum best! Probably because I understand how hard it is to give good names. And I'm always happy when I have found an appropriate name for a function or feature. If a name is catchy, it is good. For example, "API-Timer" is a name that came to my mind a long time ago. When I started programming, shortly after I created the first form (AutoIt language: GUI), with the first button and the first "Hello World! messagebox, I used the first API timer. - Those were still times. Okay, I digress. It seems that there is no direct relation between the name Adlib and what the function does. So I think your answers are the best. Thank you very much for your posts! On 8/9/2020 at 5:40 PM, argumentum said: ...and AdLib works like a timer but is not a timer. It will execute in the midst of the script every x ms. but is not a timer. Is an AdLib function. I can code something to show/proof the difference ( even if to add another shoe to my mouth ) Sorry, I'm off-topic again, but this is very interesting! I know that an MsgBox or a Sleep* pauses the Adlib function. The Adlib timer even pauses when you click and hold the mouse button on the title bar of a GUI. Very strange. An API timer is not paused by all this, it's probably running in a different thread. If you know of other differences, I would be happy about a demo! 👍 * Edit: Sorry, that was wrong, "Sleep()" does not pause an Adlib timer. Edited August 15, 2020 by Professor_Bernd Link to comment Share on other sites More sharing options...
argumentum Posted August 9, 2020 Share Posted August 9, 2020 2 minutes ago, Professor_Bernd said: The Adlib timer even pauses when you click and hold the mouse button on the title bar of a GUI. Very strange. An API timer is not paused by all this ..that is that. I'd code something to show just that. Is all in the same thread. At times, I run an AdLib from within a GUIRegisterMsg(), and act in "script time" to free the "GUIRegisterMsg time". I use the $WM_TIMER when I need to get something done no matter what the user does to the GUI. If the function called by $WM_TIMER is not fast ( say, under 20 ms. ), then I fork that to another script. But yes, AdLib means "do it at your leisure ( within "script time" ), but do it" and $WM_TIMER means "I'll stop the world to do it, even if it explodes".( my non-programmer explication ) Off-Topic: In the future, cars may self drive and also, AutoIt may run GUI stuff in a 2nd thread, ...in the future, maybe, just maybe. Professor_Bernd 1 Follow the link to my code contribution ( and other things too ). FAQ - Please Read Before Posting. Link to comment Share on other sites More sharing options...
TheSaint Posted August 9, 2020 Share Posted August 9, 2020 (edited) Ad-lib would also be related to ad hoc ... but I am pretty sure we wouldn't want a function for that. https://www.merriam-webster.com/dictionary/ad hoc ... or maybe we do. .... or not. Edited August 9, 2020 by TheSaint Musashi 1 Make sure brain is in gear before opening mouth! Remember, what is not said, can be just as important as what is said. Spoiler What is the Secret Key? Life is like a Donut If I put effort into communication, I expect you to read properly & fully, or just not comment. Ignoring those who try to divert conversation with irrelevancies. If I'm intent on insulting you or being rude, I will be obvious, not ambiguous about it. I'm only big and bad, to those who have an over-active imagination. I may have the Artistic Liesense to disagree with you. TheSaint's Toolbox (be advised many downloads are not working due to ISP screwup with my storage) Link to comment Share on other sites More sharing options...
Professor_Bernd Posted August 9, 2020 Author Share Posted August 9, 2020 @TheSaint I like best the plan with the network topology. TheSaint 1 Link to comment Share on other sites More sharing options...
Musashi Posted August 10, 2020 Share Posted August 10, 2020 20 hours ago, Professor_Bernd said: 2. I wrote a small demo of how to start and use multiple Adlib timers at once. If anyone is interested, I am happy to share. - Where is the right place for it? The suitable place to post your demo would be, in my opinion, the forum area autoit-example-scripts Example scripts do not necessarily have to be huge projects like e.g. ISN AutoIt Studio. Even a small function can be beneficial for others . argumentum and TheSaint 2 "In the beginning the Universe was created. This has made a lot of people very angry and been widely regarded as a bad move." Link to comment Share on other sites More sharing options...
pixelsearch Posted August 14, 2020 Share Posted August 14, 2020 I always thought that "Adlib" was related to "play it again and again" so it was great to find the same meaning in AdlibRegister ...in the phrase "repeat ad libitum," to play the passage an arbitrary number of times (cf vamp) :https://en.wikipedia.org/wiki/Ad_libitum Next step could be to play it "Ad nauseam" TheSaint 1 Link to comment Share on other sites More sharing options...
Professor_Bernd Posted August 14, 2020 Author Share Posted August 14, 2020 One more question. Why was the name changed from AdlibEnable to AdlibRegister? ... Okay, I found it. AdlibEnable had only allowed one timer, AdlibRegister now allows multiple. TheSaint and argumentum 2 Link to comment Share on other sites More sharing options...
argumentum Posted August 15, 2020 Share Posted August 15, 2020 (edited) 3 hours ago, Professor_Bernd said: the name changed from AdlibEnable to AdlibRegister AdlibEnable would enable the adlib. Just one. ( old AutoIt version )AdlibRegister any count of Alibs ( newer versions ) Edit: ..I did not read attentively. You've answered your question. Edited August 15, 2020 by argumentum =) Professor_Bernd and TheSaint 2 Follow the link to my code contribution ( and other things too ). FAQ - Please Read Before Posting. Link to comment Share on other sites More sharing options...
jchd Posted August 15, 2020 Share Posted August 15, 2020 Late to the party: I believe the name was chosen to match the uses case in music where it means "adjust the tempo as you see fit" or "repeat as much as you want", which is pretty close to what the function allows. argumentum and TheSaint 2 This wonderful site allows debugging and testing regular expressions (many flavors available). An absolute must have in your bookmarks.Another excellent RegExp tutorial. Don't forget downloading your copy of up-to-date pcretest.exe and pcregrep.exe hereRegExp tutorial: enough to get startedPCRE v8.33 regexp documentation latest available release and currently implemented in AutoIt beta. SQLitespeed is another feature-rich premier SQLite manager (includes import/export). Well worth a try.SQLite Expert (freeware Personal Edition or payware Pro version) is a very useful SQLite database manager.An excellent eBook covering almost every aspect of SQLite3: a must-read for anyone doing serious work.SQL tutorial (covers "generic" SQL, but most of it applies to SQLite as well)A work-in-progress SQLite3 tutorial. Don't miss other LxyzTHW pages!SQLite official website with full documentation (may be newer than the SQLite library that comes standard with AutoIt) Link to comment Share on other sites More sharing options...
Professor_Bernd Posted August 26, 2020 Author Share Posted August 26, 2020 @jchd Nice interpretation! Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now