StrokesPlus.net
Welcome Guest! To enable all features please Login or Register.

Notification

Icon
Error

Options
Go to last post Go to first unread
thepromises  
#1 Posted : Saturday, February 20, 2021 4:34:28 AM(UTC)
thepromises

Rank: Member

Reputation:

Groups: Approved
Joined: 6/14/2019(UTC)
Posts: 11
China

Thanks: 8 times
Text prompt when Capslock is activated, how to solve it? tanks~
Rob  
#2 Posted : Saturday, February 20, 2021 4:32:28 PM(UTC)
Rob

Rank: Administration

Reputation:

Groups: Translators, Members, Administrators
Joined: 1/11/2018(UTC)
Posts: 912
United States
Location: Tampa, FL

Thanks: 21 times
Was thanked: 255 time(s) in 222 post(s)
This worked for me. It creates a timer that checks every 250 milliseconds for the state of the Caps Lock key and shows a message at the bottom of the screen for 2 seconds when the state changes.

Green background when Caps Lock is ON, red when it is OFF.

Put script in:

Global Actions > Load/Unload > Load

check Enable Load Automation
Code:
sp.CreateTimer("CAPSWatch", 
               250, 
               250, 
               `if(sp.IsKeyToggled(vk.CAPITAL)) {
                   if(sp.GetStoredBool("CAPSOn") === false) {
                       sp.StoreBool("CAPSOn", true); 
                       var info = new DisplayTextInfo();
                       info.TitleFont = new Font('Segoe UI', 12, host.flags(FontStyle.Bold));
                       info.MessageFont = new Font("Segoe UI Semibold", 10);
                       info.BackColor = "37,146,52";
                       info.ForeColor = "255,255,255";
                       info.Message = "CAPS Lock is ON";
                       info.Duration = 2000;
                       info.Location = "bottom"; 
                       info.Padding = 10;
                       sp.DisplayText(info);
                   }
               } else {
                   if(sp.GetStoredBool("CAPSOn") === true) {
                       sp.StoreBool("CAPSOn", false); 
                       var info = new DisplayTextInfo();
                       info.TitleFont = new Font('Segoe UI', 12, host.flags(FontStyle.Bold));
                       info.MessageFont = new Font("Segoe UI Semibold", 10);
                       info.BackColor = "200,56,70";
                       info.ForeColor = "255,255,255";
                       info.Message = "CAPS Lock is OFF";
                       info.Duration = 2000;
                       info.Location = "bottom"; 
                       info.Padding = 10;
                       sp.DisplayText(info);
                   }
               }`
);
lyscop  
#3 Posted : Monday, February 22, 2021 12:11:48 PM(UTC)
soooulp

Rank: Advanced Member

Reputation:

Groups: Approved
Joined: 4/23/2020(UTC)
Posts: 67
China

Thanks: 14 times
Was thanked: 3 time(s) in 2 post(s)
Originally Posted by: Rob Go to Quoted Post
This worked for me. It creates a timer that checks every 250 milliseconds for the state of the Caps Lock key and shows a message at the bottom of the screen for 2 seconds when the state changes.

Green background when Caps Lock is ON, red when it is OFF.

Put script in:

Global Actions > Load/Unload > Load

check Enable Load Automation



Hi, Rob, How to keep the green message show if the caps lock is on, and it will miss when the caps lock is off.

Then, whether it can show a message when the Microsoft input change to the Chinese input method.
Rob  
#4 Posted : Monday, February 22, 2021 1:55:58 PM(UTC)
Rob

Rank: Administration

Reputation:

Groups: Translators, Members, Administrators
Joined: 1/11/2018(UTC)
Posts: 912
United States
Location: Tampa, FL

Thanks: 21 times
Was thanked: 255 time(s) in 222 post(s)
First: You must download and install this plug-in:

https://forum.strokesplus.net/posts/t1009-Keyboard-Layout

Download first, then in S+ go to Plug-Ins > Search Locations and click Add Plug-In, then select the KeyboardLayout.dll file you downloaded.



Next: You will need to determine which keyboard layout code you are using for Chinese:

From this page: https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/windows-language-pack-default-values

Chinese (Simplified) - US Keyboard: 0x804
Chinese (Traditional) - US Keyboard: 0x404
Chinese (Traditional, Hong Kong S.A.R.): 0xc04
Chinese (Traditional Macao S.A.R.) US Keyboard: 0x1404
Chinese (Simplified, Singapore) - US keyboard: 0x1004



Then replace the previous script with this new script.

This continually shows the green message while Caps Lock is on and/or Chinese keyboard layout is active, dismiss when Caps Lock is off and keyboard layout is not Chinese.

I have Chinese (Simplified) - US Keyboard (0x804) as the code in the script below, change if not correct!
Code:
sp.CreateTimer("CAPSLangWatch", 
               250, 
               250, 
               `var info = new DisplayTextInfo();
               info.TitleFont = new Font('Segoe UI', 12, host.flags(FontStyle.Bold));
               info.MessageFont = new Font("Segoe UI Semibold", 10);
               info.BackColor = "37,146,52";
               info.ForeColor = "255,255,255";
               info.Duration = 1000;
               info.Location = "bottom"; 
               info.Padding = 10;
               info.Message = "";
               if(sp.IsKeyToggled(vk.CAPITAL)) {
                   info.Message = "CAPS Lock is ON";
               }
               try {
                   if(new Keyboard().GetCurrentKeyboardLayout() === 0x804) {  //<-- change keyboard value here if needed
                       if(info.Message.length > 0) info.Message += " - ";
                       info.Message += "Chinese Keyboard ACTIVE";
                   }
               } catch {}           
               if(info.Message.length > 0) { 
                   if(sp.GetStoredBool("CAPSLangShown")) {
                       sp.DisplayTextUpdate(info);
                   } else { 
                       sp.DisplayText(info);
                       sp.StoreBool("CAPSLangShown", true);
                   }
               } else {
                   sp.DisplayTextClose();
                   sp.StoreBool("CAPSLangShown", false);
               }
               `
);
thanks 1 user thanked Rob for this useful post.
soooulp on 2/22/2021(UTC)
lyscop  
#5 Posted : Monday, February 22, 2021 2:38:02 PM(UTC)
soooulp

Rank: Advanced Member

Reputation:

Groups: Approved
Joined: 4/23/2020(UTC)
Posts: 67
China

Thanks: 14 times
Was thanked: 3 time(s) in 2 post(s)
Originally Posted by: Rob Go to Quoted Post
First: You must download and install this plug-in:

https://forum.strokesplus.net/posts/t1009-Keyboard-Layout

Download first, then in S+ go to Plug-Ins > Search Locations and click Add Plug-In, then select the KeyboardLayout.dll file you downloaded.



Next: You will need to determine which keyboard layout code you are using for Chinese:

From this page: https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/windows-language-pack-default-values

Chinese (Simplified) - US Keyboard: 0x804
Chinese (Traditional) - US Keyboard: 0x404
Chinese (Traditional, Hong Kong S.A.R.): 0xc04
Chinese (Traditional Macao S.A.R.) US Keyboard: 0x1404
Chinese (Simplified, Singapore) - US keyboard: 0x1004



Then replace the previous script with this new script.

This continually shows the green message while Caps Lock is on and/or Chinese keyboard layout is active, dismiss when Caps Lock is off and keyboard layout is not Chinese.

I have Chinese (Simplified) - US Keyboard (0x804) as the code in the script below, change if not correct!



Thank you, Rob, it works well, which shows the message.

thepromises  
#6 Posted : Tuesday, February 23, 2021 6:39:04 AM(UTC)
thepromises

Rank: Member

Reputation:

Groups: Approved
Joined: 6/14/2019(UTC)
Posts: 11
China

Thanks: 8 times
Originally Posted by: lyscop Go to Quoted Post
Originally Posted by: Rob Go to Quoted Post
This worked for me. It creates a timer that checks every 250 milliseconds for the state of the Caps Lock key and shows a message at the bottom of the screen for 2 seconds when the state changes.

Green background when Caps Lock is ON, red when it is OFF.

Put script in:

Global Actions > Load/Unload > Load

check Enable Load Automation



Hi, Rob, How to keep the green message show if the caps lock is on, and it will miss when the caps lock is off.

Then, whether it can show a message when the Microsoft input change to the Chinese input method.


Code:

sp.CreateTimer("CAPSWatch", 
               250, 
               250, 
               `if(sp.IsKeyToggled(vk.CAPITAL)) {
                   if(sp.GetStoredBool("CAPSOn") === false) {
                       sp.StoreBool("CAPSOn", true); 
                       var info = new DisplayTextInfo();
                       info.TitleFont = new Font('Segoe UI', 12, host.flags(FontStyle.Bold));
                       info.MessageFont = new Font("Segoe UI Semibold", 18);
                       info.BackColor = "0,0,0";
                       info.ForeColor = "255,255,255";
                       info.Message = "CapsLock is ON";
                       info.Duration = 86400;
                       info.Location = "bottom"; 
                       info.Padding = 15;
                       sp.DisplayText(info);
                   }
               } else {
                   if(sp.GetStoredBool("CAPSOn") === true) {
                       sp.StoreBool("CAPSOn", false); 
                       var info = new DisplayTextInfo();
                       info.TitleFont = new Font('Segoe UI', 12, host.flags(FontStyle.Bold));
                       info.MessageFont = new Font("Segoe UI Semibold", 18);
                       info.BackColor = "0,0,0";
                       info.ForeColor = "255,255,255";
                       info.Message = "CapsLock is OFF";
                       info.Duration = 500;
                       info.Location = "bottom"; 
                       info.Padding = 15;
                       sp.DisplayText(info);
                   }
               }`
);



lyscop  
#7 Posted : Tuesday, February 23, 2021 6:49:40 AM(UTC)
soooulp

Rank: Advanced Member

Reputation:

Groups: Approved
Joined: 4/23/2020(UTC)
Posts: 67
China

Thanks: 14 times
Was thanked: 3 time(s) in 2 post(s)
Originally Posted by: thepromises Go to Quoted Post
Originally Posted by: lyscop Go to Quoted Post
Originally Posted by: Rob Go to Quoted Post
This worked for me. It creates a timer that checks every 250 milliseconds for the state of the Caps Lock key and shows a message at the bottom of the screen for 2 seconds when the state changes.

Green background when Caps Lock is ON, red when it is OFF.

Put script in:

Global Actions > Load/Unload > Load

check Enable Load Automation



Hi, Rob, How to keep the green message show if the caps lock is on, and it will miss when the caps lock is off.

Then, whether it can show a message when the Microsoft input change to the Chinese input method.





哈哈设置时间我想到了,试下Rob的方法,很好用

避免了弹其他消息覆盖掉这个消息框,所以得消息都叠加在这个里面显示

lyscop  
#8 Posted : Tuesday, February 23, 2021 7:36:28 AM(UTC)
soooulp

Rank: Advanced Member

Reputation:

Groups: Approved
Joined: 4/23/2020(UTC)
Posts: 67
China

Thanks: 14 times
Was thanked: 3 time(s) in 2 post(s)
Originally Posted by: Rob Go to Quoted Post
First: You must download and install this plug-in:

https://forum.strokesplus.net/posts/t1009-Keyboard-Layout

Download first, then in S+ go to Plug-Ins > Search Locations and click Add Plug-In, then select the KeyboardLayout.dll file you downloaded.


Hi, Rob, I am here to trouble you again.

GetCurrentKeyboardLayout() is a good function to recognize which Keyboard is. I find there is another function ImmGetConversionStatus() in Windows.

https://docs.microsoft.com/en-us/windows/win32/api/imm/nf-imm-immgetconversionstatus

Code:

BOOL ImmGetConversionStatus(
  HIMC    ,
  LPDWORD lpfdwConversion,
  LPDWORD lpfdwSentence
);


It seems that can recognize which mode I choose, as the Chinese(simple) - US Keyboard, Chinese(simple) or US is a different model.

I set this code to get the input model as a gesture and it shows a bug, so can you help me to use this function to get the 'curImode'.

Code:

[DllImport("imm32.dll")]
        public static extern IntPtr ImmGetContext(IntPtr hWnd);

[DllImport("imm32.dll")]
        public static extern bool ImmGetConversionStatus(IntPtr hIMC,
            ref int conversion, ref int sentence);

IntPtr prt = ImmGetContext(this.Handle);
int curIMode = 0;
int curISentence = 0;
ImmGetConversionStatus(prt,ref curIMode,ref curISentence);
sp.ShowBalloonTip('Title',curIMode,'Info',5000);


I do not know whether the following count to divide the model can be suited for S+net and it seems to work well by C# as the link.

https://www.cnblogs.com/cellphoneyeah/p/6834786.html

标准模式(全拼模式,比如智能ABC的标准模式)

输入法状态 mode值
中文输入-半角-中文符号 1025
中文输入-全角-中文符号 1033
中文输入-半角-英文符号 1
中文输入-全角-英文符号 9
英文输入-半角-中文符号 1024
英文输入-全角-中文符号 1032
英文输入-半角-英文符号 0
英文输入-全角-英文符号 8


Rob  
#9 Posted : Tuesday, February 23, 2021 4:23:32 PM(UTC)
Rob

Rank: Administration

Reputation:

Groups: Translators, Members, Administrators
Joined: 1/11/2018(UTC)
Posts: 912
United States
Location: Tampa, FL

Thanks: 21 times
Was thanked: 255 time(s) in 222 post(s)
You can create platform invoke declarations in S+, but you have to use custom methods for this as pure C# code in JavaScript will not work.

Global Actions > Load/Unload > Load
Code:
// Only do this if the IMM32 module has not been created
if(!NativeModules.IMM32)
{
    // Create types used for method declarations
    var IntPtrT = host.typeOf(clr.System.IntPtr);
    var BooleanT = host.typeOf(clr.System.Boolean);
    // Create the ref int type for curIMode and curISentence
	var int_refT = host.typeOf(clr.System.Int32).MakeByRefType();
	
	//------------------------------------------------------------------------------------------------
    // Define the IMM32 type and create the pinvoke methods
    //------------------------------------------------------------------------------------------------

    var imm32TB = sp.NativeModule().DefineType("IMM32", "Class,Public,SequentialLayout,Serializable");
	
	imm32TB.DefinePInvokeMethod("ImmGetContext",
								 "imm32.dll",
								 [IntPtrT], 
								 IntPtrT, 
								 "PreserveSig");

	imm32TB.DefinePInvokeMethod("ImmGetConversionStatus",
								 "imm32.dll",
								 [IntPtrT,int_refT,int_refT], 
								 BooleanT, 
								 "PreserveSig");

    //Create the type (no further changes to type can be made)
    imm32TB.Create();
}

Code to execute API calls:
I put this in a gesture action, just to test - but it can be easily used anywhere else
Code:
var prt = NativeModules.IMM32.ImmGetContext(sp.ForegroundWindow().HWnd);
var curIMode = host.newVar(clr.System.Int32);
var curISentence = host.newVar(clr.System.Int32);
var ret = NativeModules.IMM32.ImmGetConversionStatus(prt, curIMode.ref, curISentence.ref);

sp.MessageBox(`ret: ${ret}
curIMode: ${curIMode.value}
curISentence: ${curISentence.value}`, "Return Values");
thanks 1 user thanked Rob for this useful post.
soooulp on 2/23/2021(UTC)
soooulp  
#10 Posted : Tuesday, February 23, 2021 5:15:51 PM(UTC)
soooulp

Rank: Advanced Member

Reputation:

Groups: Approved
Joined: 4/23/2020(UTC)
Posts: 67
China

Thanks: 14 times
Was thanked: 3 time(s) in 2 post(s)
Originally Posted by: Rob Go to Quoted Post
You can create platform invoke declarations in S+, but you have to use custom methods for this as pure C# code in JavaScript will not work.

Global Actions > Load/Unload > Load



Thank you so so so much, Rob.

I do not know whether ImmGetConversionStatus() function loses efficacy, it always shows '0' no matter I change to Chinese(Simple) or US model in any program.

UserPostedImage

Rob  
#11 Posted : Tuesday, February 23, 2021 5:21:34 PM(UTC)
Rob

Rank: Administration

Reputation:

Groups: Translators, Members, Administrators
Joined: 1/11/2018(UTC)
Posts: 912
United States
Location: Tampa, FL

Thanks: 21 times
Was thanked: 255 time(s) in 222 post(s)
Hmm, I am not familiar with actually using that API, so I am not sure.

Can you paste the actual script making the call?
Rob  
#12 Posted : Tuesday, February 23, 2021 5:28:00 PM(UTC)
Rob

Rank: Administration

Reputation:

Groups: Translators, Members, Administrators
Joined: 1/11/2018(UTC)
Posts: 912
United States
Location: Tampa, FL

Thanks: 21 times
Was thanked: 255 time(s) in 222 post(s)
It looks like there are a lot of API calls involving IME functions, apparently ImmReleaseContext needs to be called each time ImmGetContext is called, to release the memory:

See Remarks section
https://docs.microsoft.com/en-us/windows/win32/api/imm/nf-imm-immgetcontext

https://docs.microsoft.com/en-us/windows/win32/api/imm/nf-imm-immreleasecontext



There's also ImmGetOpenStatus, which might have something to do with it:

https://docs.microsoft.com/en-us/windows/win32/api/imm/nf-imm-immgetopenstatus

Also, it's not clear if the HWnd should be for the overall window, or the handle to the input control itself..?

I've never used any of the Imm API calls, so I am not at all familiar with this stuff :-(
soooulp  
#13 Posted : Tuesday, February 23, 2021 5:31:15 PM(UTC)
soooulp

Rank: Advanced Member

Reputation:

Groups: Approved
Joined: 4/23/2020(UTC)
Posts: 67
China

Thanks: 14 times
Was thanked: 3 time(s) in 2 post(s)
Originally Posted by: Rob Go to Quoted Post
Hmm, I am not familiar with actually using that API, so I am not sure.

Can you paste the actual script making the call?


Originally I want to recognize the model and keep a message shows on the screen. Now I just test the count.

As I find the count if I change to the Chinese(Simple) model it will shows '1025' what I do not concern about it.

The second one is US model which shows '0' will be OK.

输入法状态 mode值
中文输入-半角-中文符号 1025
中文输入-全角-中文符号 1033
中文输入-半角-英文符号 1
中文输入-全角-英文符号 9
英文输入-半角-中文符号 1024
英文输入-全角-中文符号 1032
英文输入-半角-英文符号 0
英文输入-全角-英文符号 8

UserPostedImage

UserPostedImage



soooulp  
#14 Posted : Tuesday, February 23, 2021 5:33:54 PM(UTC)
soooulp

Rank: Advanced Member

Reputation:

Groups: Approved
Joined: 4/23/2020(UTC)
Posts: 67
China

Thanks: 14 times
Was thanked: 3 time(s) in 2 post(s)
Originally Posted by: Rob Go to Quoted Post
It looks like there are a lot of API calls involving IME functions, apparently ImmReleaseContext needs to be called each time ImmGetContext is called, to release the memory:

See Remarks section
https://docs.microsoft.com/en-us/windows/win32/api/imm/nf-imm-immgetcontext

https://docs.microsoft.com/en-us/windows/win32/api/imm/nf-imm-immreleasecontext



There's also ImmGetOpenStatus, which might have something to do with it:

https://docs.microsoft.com/en-us/windows/win32/api/imm/nf-imm-immgetopenstatus

Also, it's not clear if the HWnd should be for the overall window, or the handle to the input control itself..?

I've never used any of the Imm API calls, so I am not at all familiar with this stuff :-(


Aha, Thank you for your efforts again, let it go.


soooulp  
#15 Posted : Tuesday, March 2, 2021 3:42:11 PM(UTC)
soooulp

Rank: Advanced Member

Reputation:

Groups: Approved
Joined: 4/23/2020(UTC)
Posts: 67
China

Thanks: 14 times
Was thanked: 3 time(s) in 2 post(s)
Originally Posted by: Rob Go to Quoted Post
First: You must download and install this plug-in:

https://forum.strokesplus.net/posts/t1009-Keyboard-Layout

Download first, then in S+ go to Plug-Ins > Search Locations and click Add Plug-In, then select the KeyboardLayout.dll file you downloaded.



Next: You will need to determine which keyboard layout code you are using for Chinese:

From this page: https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/windows-language-pack-default-values

Chinese (Simplified) - US Keyboard: 0x804
Chinese (Traditional) - US Keyboard: 0x404
Chinese (Traditional, Hong Kong S.A.R.): 0xc04
Chinese (Traditional Macao S.A.R.) US Keyboard: 0x1404
Chinese (Simplified, Singapore) - US keyboard: 0x1004



Then replace the previous script with this new script.

This continually shows the green message while Caps Lock is on and/or Chinese keyboard layout is active, dismiss when Caps Lock is off and keyboard layout is not Chinese.

I have Chinese (Simplified) - US Keyboard (0x804) as the code in the script below, change if not correct!


Can it show separate two or more message boxes in different back colors on the screen?

Like one for CAPS Lock, and one for CurrentKeyboard.
Rob  
#16 Posted : Wednesday, March 3, 2021 4:14:37 PM(UTC)
Rob

Rank: Administration

Reputation:

Groups: Translators, Members, Administrators
Joined: 1/11/2018(UTC)
Posts: 912
United States
Location: Tampa, FL

Thanks: 21 times
Was thanked: 255 time(s) in 222 post(s)
Unfortunately, the built-in method only supports one display text window being shown at any time.

You can look at liuxilu's example of creating your own form here and change the logic as needed (second comment in thread, in spoiler tag):

https://forum.strokesplus.net/posts/t7202-Enhanced-sp-ShowImage
soooulp  
#17 Posted : Wednesday, March 3, 2021 4:18:25 PM(UTC)
soooulp

Rank: Advanced Member

Reputation:

Groups: Approved
Joined: 4/23/2020(UTC)
Posts: 67
China

Thanks: 14 times
Was thanked: 3 time(s) in 2 post(s)
Originally Posted by: Rob Go to Quoted Post
Unfortunately, the built-in method only supports one display text window being shown at any time.

You can look at liuxilu's example of creating your own form here and change the logic as needed (second comment in thread, in spoiler tag):

https://forum.strokesplus.net/posts/t7202-Enhanced-sp-ShowImage


Use the image to show the flag is a good way, let me have a try.


soooulp  
#18 Posted : Friday, March 5, 2021 3:12:59 PM(UTC)
soooulp

Rank: Advanced Member

Reputation:

Groups: Approved
Joined: 4/23/2020(UTC)
Posts: 67
China

Thanks: 14 times
Was thanked: 3 time(s) in 2 post(s)
Originally Posted by: Rob Go to Quoted Post
Unfortunately, the built-in method only supports one display text window being shown at any time.

You can look at liuxilu's example of creating your own form here and change the logic as needed (second comment in thread, in spoiler tag):

https://forum.strokesplus.net/posts/t7202-Enhanced-sp-ShowImage


I am failed to set the Form Controls as identification of Caps lock in Global Actions > Load/Unload, because of its unfocus the original input window.

And I still want to change the color of the showing text box.

The last struggle of this show message:

Whether if can DisplayTextUpdate or the Message box not change the back color when adding a message on the existing message box, such as the following photos, the second one is what I want, and I designed it.

I find DisplayTextUpdate can change the message, the location, or else.

This does not work:



First one:
UserPostedImage

Second one:
UserPostedImage




Rob  
#19 Posted : Friday, March 5, 2021 5:24:54 PM(UTC)
Rob

Rank: Administration

Reputation:

Groups: Translators, Members, Administrators
Joined: 1/11/2018(UTC)
Posts: 912
United States
Location: Tampa, FL

Thanks: 21 times
Was thanked: 255 time(s) in 222 post(s)
Updated sp.DisplayTextUpdate to also check to see if back/fore colors have changed and update them.

Added in version 0.4.1.7.
thanks 1 user thanked Rob for this useful post.
soooulp on 3/5/2021(UTC)
soooulp  
#20 Posted : Friday, March 5, 2021 5:29:36 PM(UTC)
soooulp

Rank: Advanced Member

Reputation:

Groups: Approved
Joined: 4/23/2020(UTC)
Posts: 67
China

Thanks: 14 times
Was thanked: 3 time(s) in 2 post(s)
Originally Posted by: Rob Go to Quoted Post
Updated sp.DisplayTextUpdate to also check to see if back/fore colors have changed and update them.

Added in version 0.4.1.7.


I don't know how to express my thanks for your help.
Rob  
#21 Posted : Friday, March 5, 2021 6:09:02 PM(UTC)
Rob

Rank: Administration

Reputation:

Groups: Translators, Members, Administrators
Joined: 1/11/2018(UTC)
Posts: 912
United States
Location: Tampa, FL

Thanks: 21 times
Was thanked: 255 time(s) in 222 post(s)
You're very welcome!

It seems it was just something I failed to account for.
Users browsing this topic
Forum Jump  
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.