Timeline



Feb 9, 2024:

11:20 PM Ticket #3993 (_WinAPI_SetWindowTheme() - remove limits) updated by argumentum <argumentum@…>
in 3.3.14.5 it was: […] maybe that's better than removing the "If Not IsString($sName) Then $sName = Null" ?
4:44 PM Ticket #3993 (_WinAPI_SetWindowTheme() - remove limits) created by argumentum
Trying to change a color on a checkbox control I needed to remove the …

Feb 8, 2024:

8:01 PM Ticket #3992 (_WinAPI_DwmSetWindowAttribute() remove child proofing) updated by J-Paul Mesnage
I pm you the pictures
7:21 PM Ticket #3992 (_WinAPI_DwmSetWindowAttribute() remove child proofing) updated by argumentum <argumentum@…>
>Is it normal that the Windows title get dark Yes, is in dark mode > and after back the same in my case Blue? Yes, it should look the same as before. I looked around in other PCs, and the behavior is in my short testing, without unexpected artifacts. If you find an odd behavior, PM me the 3 pics of the cycle. Loaded, swap to "Dark Mode", swap back to "Light Mode".
6:52 PM Ticket #3992 (_WinAPI_DwmSetWindowAttribute() remove child proofing) updated by argumentum <argumentum@…>
In the focus window, the accent color would be applied for "light mode". I use more than one non-standard theme https://www.autoitscript.com/forum/index.php?showtopic=211400&view=findpost&p=1529608 on my PC. I'd have to test in other PCs to have a global assessment of what does actually happen on each version and setting. A highly requested feature in the forum in regards to Dark mode, is to make the caption title look, in our win32 GUI, black as in those in the rest of the OS. This example shows how. The call is not meant to go back and forth, but a declaration in the GUI setting to True before @SW_SHOW, otherwise don't use it for light mode as light mode is the default anyway. In this case, the example showcases the back and forth for a "wow" factor. It will not brake anything. It only affects the current GUI. Nonetheless the change in behavior when changing back to "light mode" is something to be noted, all through MSDN is unlikely to go into specifics. They do say that is for Win11 22000 onwards. Yet the example is noteworthy. This code below is better. More information too. […]
5:42 PM Ticket #3992 (_WinAPI_DwmSetWindowAttribute() remove child proofing) updated by J-Paul Mesnage
Is it normal that the Windows title get dark and after back the same in my case Blue?
5:33 PM Ticket #3992 (_WinAPI_DwmSetWindowAttribute() remove child proofing) updated by argumentum <argumentum@…>
This 2nd example will work once the $iAttribute filter is removed from the function. […]
4:45 PM Ticket #3992 (_WinAPI_DwmSetWindowAttribute() remove child proofing) updated by argumentum <argumentum@…>
..I find this to be a nicer looking GUI and code: […]
4:27 PM Ticket #3992 (_WinAPI_DwmSetWindowAttribute() remove child proofing) updated by argumentum <argumentum@…>
>it is better that something change after clicking the checkbox Ok, this will show the difference between on setting and another. […]
3:11 PM Ticket #3992 (_WinAPI_DwmSetWindowAttribute() remove child proofing) updated by J-Paul Mesnage
What is the effect of such attribute change? it is better that something change after clicking the checkbox
2:41 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) closed by J-Paul Mesnage
Completed: Added by revision [13032] in version: 3.3.17.0
11:41 AM Ticket #3992 (_WinAPI_DwmSetWindowAttribute() remove child proofing) updated by argumentum <argumentum@…>
>Ok, here is a simple one: "#include <MsgBoxConstants.au3>" is not used and should be removed.
10:32 AM Ticket #3992 (_WinAPI_DwmSetWindowAttribute() remove child proofing) updated by argumentum <argumentum@…>
>_WinAPI_DwmSetWindowAttribute() does not come with an example Ok, here is a simple one: […]
9:50 AM Ticket #3992 (_WinAPI_DwmSetWindowAttribute() remove child proofing) created by argumentum <argumentum@…>
_WinAPI_DwmSetWindowAttribute() does not come with an example so is …

Feb 6, 2024:

1:35 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by J-Paul Mesnage
So I will stay with my proposal
12:03 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
Yes, that is an invalid call. Sounds good. Should have typed parameter. Is an invalid parameter =)
12:01 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
>About the Sleep(250), I am not happy to not do it Then make it a bitwise. At least to have an option to not use it. >For the "cleanup" the Null value is different from a valid vKey so why not to use it. Yes, that is an invalid call. Sounds good.
9:33 AM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by J-Paul Mesnage
Hi I don't thing the OnAutoItExitRegister(IsPressed_Close) is needed as the closing of AutoIt will release all resources attached to the process For the "cleanup" the Null value is different from a valid vKey so why not to use it. About the Sleep(250), I am not happy to not do it as Getting Same event again without any modification of the user interaction is bad so I will leave it

Feb 5, 2024:

8:49 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum
Thinking..., Better not to use the Default in $vKey. Better to use an impossible parameter like "CleanUp" to do the clean up given the the clean up is now automated on exit by an internal function. […]
8:40 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
... and "double underscore" is removed while in this text =/
8:38 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
.. am no used to not edit/change the post =( "IsPressed_Close" is named wrong at "OnAutoItExitRegister(_IsPressed_Close)", should be "OnAutoItExitRegister(IsPressed_Close)".
8:34 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
in the "If $bCheckModifierKey Then" […] locks a script. Any function should be as non-locking as possible. At "Local Static $hDLL = Null", might as well load "user32.dll" as the next line will close it if called. And for what I see, I made the mistake of running everything out of $hDLL instead of $vDLL. Ok, these are my notes: […]
4:33 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by J-Paul Mesnage
THanks do you agree with my last proposal allowing to DllClose te default Dll and also to wait the modifier being unstroke to avoid multiple Modifier notification […]
12:12 AM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum
..this is what I mean, by adding the not return to the example. ( I this was the way it would be coded ) […]

Feb 4, 2024:

11:31 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
..then in your example, it'd need to change this line: […]
11:27 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
..nope. Read your original code for the beta and my solution made so sense. ( because it is none sense ). If the extended is the LSB while retuning TRUE then there is no odd result between the expectations. Cheers
10:49 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
Ok, context. Then retuning TRUE or FALSE. How about retuning my desired data in the return as in […] that way, is true either way but truer ( 2 ) if the LSB is present. Then @extended is reserved for the modifier keys and the return will be true ( by means of 1 or 2 ). That would not brake anyone's existing code either. I would then use: […] Is that a good solution ?
8:50 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by J-Paul Mesnage
Thanks but the intention with the array is to watch one of the key not both can you adapt it and your proposal if needed Cheers here is the example i want to work with […]
5:36 AM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
hmm, I should not have use the magic number ( 0x71 ), but the VK_ constant.
5:34 AM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
the help examples to go with the beta: […] […]

Feb 3, 2024:

5:16 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum
Forgot to declare $aCall […]
5:09 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum
I should have waited but ..., anyway, this is better. […]
4:50 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
[…]
4:46 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
..the above code is wrong, can't just remove the Do Until loop. I'll fix it in a moment
4:36 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
>The default as true is really to have a return on the the key only without the modifier pressed Well, the array is the first claim. Say I make an array ( $aArray[2] = [0x12,0x58] ; alt - x ) that by default will not work as expected due to defaulting to exclude the alt key, otherwise the code would have to exclude the modifier key declared on the array. That complicates the code. It'd be easier to just default to false, to keep it as is. Most people using this func are expecting a function key or a combination of modifier and letter, not just a letter. The part that only returns after keys released, to make it on keypress, either, call the func again with "NOT func()" as it was done before the change, or have an extra parameter to call a func. for the in between state. So removing the wait on release and defaulting $bCheckModifierKey to false would make the new beta functional. Also, […] would make more sense if the staic declaration is to be kept. These changes will obviously change the expected functionality of whomever proposed the change but at least it would make the code widely functional other than just a for OP only. Therefore, the "fixed" code ( with minimal modification, to just make it functional ) I propose would be: […]
1:23 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by J-Paul Mesnage
I don't remember when the extension was introduced I agree that they are more to handle clicked keys The default as true is really to have a return on the the key only without the modifier pressed I need to think if the function must work on pressed only just propose modification so that addition can work

Feb 2, 2024:

11:31 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
Side note about the VK_* new addition in beta: 1) A user expects action right after pressing the keys, not after releasing them. 2) The $bCheckModifierKey should in my view, default to false. Then again I have no idea why the new feature is incorporated nor the way it is. Nonetheless I wanted to bring it up. ( unless is outside the scope of this post and is to be discussed elsewhere and/or by MVPs )
9:43 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
I get an infinite loop with 0xB3 from the bluetooth at: […] ..given that in this case of the bluetooth input device (or driver), signals the LSB ( 0x8001 ) and gets stuck in 0x8000, never to get back to 0x0000 as it should. Is the whole reason for the need to know the LSB. Then again, fortunately, is not something that happens on a keyboard. As I see it ( and tested ), the beta code is good.
6:13 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by J-Paul Mesnage
Hi, in which case do you get an infinite loop?
5:29 PM Ticket #3969 (Map Initializer List) updated by Andreik
I use maps very often and I would like to see a map initializer but I don't know if it's possible without introducing a new operator, a keyword or something. It will be a total confusion. Take this as example: […] Right now this is a valid syntax to initialize an array with one element but it could be as well a map with the key name 1 (according to proposed syntax).
3:02 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
Now that I've looked at it I understand. Looks good. Thanks. In my, quite unexpected case, using the VK_* would have gotten me in a (infinite loop) frozen script.
7:45 AM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by J-Paul Mesnage
[…]
12:07 AM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
would you paste here or send a PM/DM to me about this new beta code to take a look at ? ..looking at the beta code would give me a better understanding of what is that you are evaluating. A matching array of VK_ would ... hmmm, could return the "LSB += LSB" to satisfy my request.

Feb 1, 2024:

11:11 AM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by J-Paul Mesnage
As I understand the return True with only the Most significant bit set is not enought for you (current implementation) you want to be sure it is the first time so you don't want to check it is released as MSDN suggest (return false) and do some action in the next beta version default is the same but now if you pass not a string a a VK_* value the return will wait the touch is release if you pass an array of $VK_* you will get a return if one of them has been clicked
8:44 AM Ticket #3946 (_ChooseFont() updated defaults) updated by argumentum <argumentum@…>
#include <Misc.au3> _ChooseFont ( [$sFontName = "Courier New" [, $iPointSize = 10 [, $iFontColorRef = Default [, $iFontWeight = 0 [, $bItalic = False [, $bUnderline = False [, $bStrikethru = False [, $hWndOwner = 0]]]]]]]] ) $iFontColorRef [optional] COLORREF rgbColors (Default is COLOR_BTNTEXT) ---- The above are the suggested changes ( in bold ) needed in the help file.
3:35 AM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
>For other device the @extended is always set With the new code, @extended is only triggered the 1st time as true(1) / BitAND($aCall[0], 0x1) 2nd time and on it returns false(0)
3:29 AM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
[…] The "keyboard" gets stuck in 0x8000. But do trigger the 0x8001 when pressed. Same with prior and next keys. Volume up/down are not "seen" ( captured by the OS ). My fight with the headset is at https://www.autoitscript.com/forum/topic/211304-getasynckeystate-_ispressed-vs-the-bluetooth-headset-now-fight/. I scratched my head for a while until I realized what was going on. And is a hard sell as far as getting enough people to accept this change given that is against MSDN recommendation ( 20 y/o ) and quite a niche occurrence. Yet, is the only thing that worked.

Jan 31, 2024:

4:35 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by J-Paul Mesnage
Hi, I am still confused on how you use @extended with a BlueTooth headset Can you post an example of how you you it? For other device the @extended is always set Thanks for the help

Jan 29, 2024:

6:24 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
..pardon. The description was correct, the code was wrong. (corrected above)
5:59 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
ok, I've got my head back. This would be the proper code: […] The @extended has the LSB. What is meant is that when the key is first pressed, the LSB is ON. On subsequent calls, the LSB is zero and the claim is to not trust the LSB (BitAND($aCall[0], 0x1)) due to the nature of multitasking, hence the BitAND($aCall[0], 0x8000) return. So the original description is in fact correct. But is not clear to a non-english native speaker like myself, therefore a better description would be: @extended returns the LSB of the keypress. (See MSDN remarks) that way, if the reader wants to know what it really is, can read up on the subject.

Jan 28, 2024:

7:18 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
...the above don't sit well with me. Is not so. I'll see it on Tuesday, I'll have a less foggy brain, then I'll have a look at it and discern it.
7:14 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
..I'm did a copy and paste and my math skill ..are missing from my brain =/ Then better use this less specific explanation: Return Value @extended returns whether the key is still pressed since the last call. (See MSDN remarks)
8:19 AM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by J-Paul Mesnage
Are you sure of 0xFFFF8000? Th least significant bit is 0xFFFF8001 right?

Jan 26, 2024:

5:43 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
Return Value @extended is set by least significant bit. The value specifies whether the key was pressed since the last call. (See MSDN remarks) See Also Search "https://learn.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-getasynckeystate#remarks" in MSDN Library. Hopefully the above is sufficiently explicit.
4:14 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by J-Paul Mesnage
Thank you what do you propose for doc change for @extended?
10:51 AM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
As far as I've tested with various hardware, it works as expected. I don't foresee any problems. I know that it would generally be handled by: […] But the proposed @extended return, adds that extra GetAsyncKeyState info. that in these particular cases, just saves the day. By the way, in my testing, this solution is even better than using _WinAPI_SetWindowsHookEx($WH_KEYBOARD_LL,…
9:49 AM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by J-Paul Mesnage
Hi, thanks for those highlights Can you confirm that with the change you suggest no other equipment non BlueTooths will not have regression? it seems your post suggest it, I just want to be sure Thanks for the clarification Cheers
3:15 AM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
... And the explanation of MSDN gives out is true, but also is true that PCs are way faster than when the warning was presented some 20 years ago when 32 bit was the future and 16 bit was nothing but gone. Actually, one can not run 16 bit code in windows nowadays, it is gone. But the base code is thankfully, backwards compatible.
3:06 AM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
No one can tell what M$ is ever gonna do, but is by this feature that the code can tell that the key ( 0xB3 ) and those like it in multimedia ( 0xB0, 0xB1 ) are actively pressed via Bluetooth or not. If it's been there since Win95, I'll bet there's a lot of code depending on it and unlikely to change. In bluethooth keys, a long press is not the same as a single click/press or a double one. Some even have triple press/click, all with different functionality, faking/masquerading having independent keys, and I believe is a driver thing, but is the M$ driver. There is no alternate driver. --continue in next post--
12:09 AM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by J-Paul Mesnage
Are you sure that with this modification working for you we will not get regression as MSDn state […]

Jan 25, 2024:

7:27 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
BitAND($aCall[0], 0x8000) <> 0 vs $aCall[0] = 0xFFFF8000 On action(click/keypress) is 0xFFFF8001 or 0x00000000 The code returns if "BitAND($aCall[0], 0x8000) <> 0" am adding if "$aCall[0] = 0xFFFF8000" Unfortunately the only way to see somewhat what the effects are is to keep a key pressed until autorepeat kicks in on a keyboard to somewhat get the gist of it.
7:27 AM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by J-Paul Mesnage
I still don't understand […] if $aCall[0] = 0xFFFF8000 is true then BitAND($aCall[0], 0x8000) is also true so @extended is not needed as I say i don't have and headset so I cannot reproduce thanks to confirm
3:27 AM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum <argumentum@…>
( adding this just to get an email upon update )
3:12 AM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by argumentum
In my case the @extended is needed. @extended is not always true. Is only true after some MSec. The first query returns false unless it was triggered again. If you test it, you'll see that it does.

Jan 22, 2024:

9:50 AM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by J-Paul Mesnage
Hi, Sorry unless I get an correction to my post above I will close it

Jan 18, 2024:

8:53 AM Ticket #3991 (_SQLite_ForeignKeys) closed by J-Paul Mesnage
Completed: Added by revision [13030] in version: 3.3.17.0
12:11 AM Ticket #3989 (SplashOff() not being parsed correctly by SyntaxCheck Prod and Tidy) closed by J-Paul Mesnage
Wont Fix
12:10 AM Ticket #3982 (_ClipPutFile should not free memory) closed by J-Paul Mesnage
Works For Me: Sorry I will close and except another Ticket with a script repro

Jan 17, 2024:

6:49 PM Ticket #3982 (_ClipPutFile should not free memory) updated by Nine
There is not a systematic error when freeing the memory. It is a recommandation of MSDN. I think it should be enough.
5:11 PM Ticket #3991 (_SQLite_ForeignKeys) updated by Andreik
In the documentation it should be also included this for clarity. It is not possible to enable or disable foreign key constraints in the middle of a multi-statement transaction (when SQLite is not in autocommit mode). Attempting to do so does not return an error; it simply has no effect. It should also be specified that SQLite does not make any checks on previously inserted data. So enabling foreign keys does not trigger any warnings or errors for data that has been previously inserted in the database that would normally raise a foreign keys constraint error. This can be seen in this example: […]
4:34 PM Ticket #3991 (_SQLite_ForeignKeys) updated by J-Paul Mesnage
Owner, Status changed
Thanks I will commit the needed file with the doc
3:21 PM Ticket #3991 (_SQLite_ForeignKeys) created by Andreik
Foreign keys are supported by default by pretty much all important …
9:21 AM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by J-Paul Mesnage
Hi, I cannot test it but the code look strange If the @extended is set and the return is always true So why to set @extended is this case?

Jan 16, 2024:

10:24 PM Ticket #3982 (_ClipPutFile should not free memory) updated by J-Paul Mesnage
Just produce a script that will provide the error with the current implementation. for me the Clipget does not produce any error even if the the GlobalFree is executed before the CloseClipboard
5:04 PM Ticket #3982 (_ClipPutFile should not free memory) updated by Andreik
I don't know what can happen if you release the object owned by the system or specific cases that will cause an error but can we assume that Microsoft knows what they are talking about when they say that the object it's managed by the system? It might work in 99% of cases without any errors and produce an error in some niche cases. I think we should follow MSDN guidance and fix possible errors that might appear in some cases. It's just best practice.
4:16 PM Ticket #3989 (SplashOff() not being parsed correctly by SyntaxCheck Prod and Tidy) updated by J-Paul Mesnage
In fact the SolashOff without parenthesis is legal when assign to a variable. Local $v = SplashOff That the reason why Au3check and certainly Tidy don't flag the Function I don't think we can change that except in documentation More Autoit builtin functions have the same behavior ProgressOff

Jan 15, 2024:

5:00 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) updated by TicketCleanup
Version changed
Automatic ticket cleanup.
4:59 PM Ticket #3990 (_IsPressed() add "indicate whether the key has been pressed since the ...) created by argumentum
[…] The change adds some extra information that I found was needed …
9:06 AM Ticket #3989 (SplashOff() not being parsed correctly by SyntaxCheck Prod and Tidy) updated by J-Paul Mesnage
Component changed

Jan 14, 2024:

10:12 PM SplashOff_Bug.au3 attached to Ticket #3989 by guidtracker@…
Example script
10:11 PM Ticket #3989 (SplashOff() not being parsed correctly by SyntaxCheck Prod and Tidy) created by GUIDTracker
I have noticed that both the Syntax Checker and Tidy programs used in …
Note: See TracTimeline for information about the timeline view.