[Lazarus] Shift returns empty set in MouseWheel events

Wolf wv99999 at gmail.com
Thu Jul 28 00:13:21 CEST 2016


I enclose a little program where you can see the effects of 
pressing/rolling mouse keys. Vojtěch Čihák is correct in saying that 
OnMouseDown/Up can be used to distinguish whether the mousewheel is 
rolled when pressed or not. But then, why is Shift part of the 
procedure's parameters if it has no place in the OnMouseWheel events? So 
there is a workaround.

By the way, the proper test is *if* ssMiddle *in* Shift *then* . . . 
since Shift is a set of values, not an enumerated value, meaning it can 
contain more than one value. Press a mouse key and <shift> or <alt> to 
see what I mean.
What is your view? Is this a bug that ought to be fixed, or is it not? 
My vote is:
"If Shift in OnMouseWheelxxx events is supposed to return an empty set, 
remove the parameter from the handling procedures. If you say "keep it" 
then ensure the parameter does carry a value.
Wolf

On 28/07/16 00:56, Ondrej Pokorny wrote:
> On 27.07.2016 14:36, Vojtěch Čihák wrote:
>>
>> Hi,
>>
>> IMO it is correct. OnMouseWheelxxx are events for rolling the mouse 
>> wheel, therefore the ssMiddle cannot be in Shift.
>>
>> If you need to detect if Middle button is pressed, use 
>> OnMouseDown/OnMouseUp and test "if Mouse=mbMiddle then ..."
>>
>> Also, ssMiddle appears in Shift in OnMouseDown/OnMouseUp.
>>
>
> You are not correct. You can scroll the mouse wheel if it is released 
> or pressed. So for me a valid feature request for the distinction. The 
> OnMouseMove event gets valid Shift states as well.
>
> Btw. please use a mail client that supports "In-Reply-To" and 
> "References" headers. Your answers are registered always as a new 
> thread. See the recent discussion with Denis Kozlov on fpc-devel list, 
> thread(s) "NowUTC in FPC".
>
> Ondrej
>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20160728/45c8525d/attachment-0001.html>
-------------- next part --------------
object Form1: TForm1
  Left = 332
  Height = 253
  Top = 288
  Width = 376
  Caption = 'Mouse wheel test'
  ClientHeight = 253
  ClientWidth = 376
  Icon.Data = {
    EE3A00000000010003003030000001002000A825000036000000202000000100
    2000A8100000DE25000010100000010020006804000086360000280000003000
    0000600000000100200000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000003FFE0F003FFE46003FFE7B003FFEA3003F
    FEBB003FFEC7003FFEC8003FFEBB003FFEA4003FFE7E003FFE4A003FFE110000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000F4AC9B09F4AC9B17F4AC9B26F4AC9B31F4AC
    9B38DEA2A5395866DB5B003EFEAF003EFEF30041FEFF0042FEFF0044FEFF0045
    FEFF0043FEFF0042FEFF003EFEFF003FFEFF003EFEFF003EFEFF003EFEF5003E
    FEB3003EFE52003EFE0800000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000F4AC980EF4AC992BF4AC9946F4AC9954F4AC9957F4AC9957F0AA9B589582
    C1851A51F3D90050FEFE0061FFFF0071FFFF007CFEFF0085FEFF0087FFFF0087
    FFFF0086FFFF0080FEFF0076FEFF0068FFFF0057FFFF0049FEFF0040FEFF003E
    FFFF003EFFFE003EFED8003EFE5A003EFE030000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000F4AC9511F4AC
    963CF4AC9655F4AC9657F4AC9657F4AC9657F4AC9657D49FA4693F6AE4C90069
    FEFD0083FEFF0094FEFF00A1FEFF00AAFEFF00AFFEFF00B3FEFF00B4FEFF00B4
    FEFF00B3FEFF00B1FEFF00ACFEFF00A5FEFF009AFEFF008BFEFF0074FEFF0057
    FEFF0043FEFF003EFEFF003EFEFE003EFEBB003EFE2300000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    000000000000000000000000000000000000F5AD9203F5AD922FF5AD9354F5AD
    9357F5AD9357F5AD9357F5AD9357F4AC9357B199B184157AF5EE008EFFFF00A4
    FFFF00B0FFFF00B9FFFF00BFFFFF00C4FFFF00C7FFFF00C9FFFF00CBFFFF00CB
    FFFF00CAFFFF00C8FFFF00C5FFFF00C1FFFF00BCFFFF00B4FFFF00AAFFFF0097
    FFFF007EFFFF005AFEFF0041FFFF003FFEFF003EFEEA003FFF50000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000F4AC8E06F4AC8F41F4AC9057F4AC9057F4AC
    9057F4AC9057F4AC9057F4AC90579F9CB693098FFAFA00A5FEFF00B4FEFF00BF
    FEFF00C7FEFF00CDFEFF00D2FFFF00D5FFFF00D7FEFF00D8FEFF00D9FFFF00D9
    FFFF00D9FFFF00D7FFFF00D6FEFF00D3FFFF00CFFFFF00CAFFFF00C2FEFF00B9
    FFFF00ACFFFF0098FEFF0076FEFF004BFEFF003FFEFF003EFEFA003EFE680000
    0000000000000000000000000000000000000000000000000000000000000000
    00000000000000000000F3AC8A05F3AC8C44F3AC8C57F3AC8C57F3AC8C57F3AC
    8C57F3AC8C57F3AC8C57A8A4AF8E099FFAFB00B2FEFF00BFFEFF00C9FEFF00D1
    FEFF00D6FEFF00DAFEFF00DCFEFF00DEFEFF00E0FEFF00E1FEFF00E1FEFF00E1
    FFFF00E1FEFF00E0FEFF00DFFEFF00DDFEFF00DBFEFF00D8FEFF00D3FEFF00CD
    FEFF00C3FEFF00B8FEFF00A7FEFF008AFEFF005BFEFF003FFEFF003EFEFD003E
    FE5D000000000000000000000000000000000000000000000000000000000000
    000000000000F3AC8501F3AC8738F3AC8857F3AC8857F3AC8857F3AC8857F3AC
    8857F3AC8857C5A99E7B13A8F5F700B9FEFF00C6FEFF00D0FEFF00D7FEFF00DB
    FEFF00DFFEFF00E1FEFF00E3FEFF00E5FEFF00E6FEFF01E6FEFF01E7FEFF02E7
    FEFF01E7FEFF00E6FEFF00E5FEFF00E4FEFF00E2FEFF00E0FEFF00DDFEFF00D9
    FFFF00D3FFFF00CAFEFF00BFFEFF00AFFEFF0094FEFF0067FEFF0042FEFF003E
    FEF8003EFE3D0000000000000000000000000000000000000000000000000000
    000000000000F3AC831BF3AC8356F3AC8357F3AC8357F3AC8357F3AC8357F3AC
    8357E8AC896038ADE2E700BDFEFF00CAFEFF00D4FEFF00DAFEFF00DFFEFF00E2
    FEFF00E5FEFF01E6FEFF06E8FEFF0FE9FEFF17EAFEFF1CEBFEFF20EBFEFF20EB
    FEFF1EEBFEFF19EAFEFF12EAFEFF0AE8FEFF03E7FEFF00E5FEFF00E3FEFF00E0
    FEFF00DCFEFF00D7FEFF00CFFEFF00C2FEFF00B3FEFF0098FEFF006AFEFF0040
    FEFF003EFEDE003EFE1500000000000000000000000000000000000000000000
    0000F3AC7D01F3AC7E45F3AC7F57F3AC7F57F3AC7F57F3AC7F57F3AC7F57F3AC
    7F5789AFB6B102BEFDFF00CCFEFF00D6FEFF00DCFEFF00E1FEFF08C5FBFF10A4
    F8FF0DDDFDFF1BEAFEFF22C0FAFF25A8F8FF29AAF8FF2DB1F9FF2FB2F9FF37CB
    FBFF2CA8F8FF2EBBFAFF29B3F9FF28C9FBFF1CAAF8FF13CBFCFF10A5F8FF10A4
    F8FF07C7FCFF09BAFBFF109DF8FF01CCFEFF00C4FEFF00B4FEFF0097FEFF0060
    FEFF0040FEFF003EFE9700000000000000000000000000000000000000000000
    0000F3AC7912F3AC7A56F3AC7A57F3AC7A57F3AC7A57F3AC7A57F3AC7A57D6AE
    8A7029BBE8F900CCFEFF00D7FEFF00DDFEFF00E2FEFF00E5FEFF12A8F8FF2063
    F1FF2BD4FCFF3AEDFEFF2C96F6FF2166F2FF308AF5FF2D83F4FF246CF2FF2D85
    F4FF2268F2FF3394F6FF287AF4FF2B89F5FF226AF2FF2BAFF9FF2163F1FF1F7D
    F4FF0BBEFBFF1399F7FF2063F1FF02D1FEFF00D1FEFF00C4FEFF00B2FEFF008F
    FEFF0055FEFF003EFEF8003EFE32000000000000000000000000000000000000
    0000F3AC7529F3AC7557F3AC7557F3AC7557F3AC7557F3AC7557F3AD755789B4
    B1BC0CC9F8FF00D6FEFF00DDFEFF00E3FEFF00E6FEFF0DE9FEFF20AAF8FF2063
    F1FF3DCBFBFF52EEFEFF3597F6FF246BF2FF63E6FDFF3F9DF7FF2367F2FF2972
    F3FF2770F3FF41A2F7FF2771F3FF2368F2FF236AF2FF39B0F9FF2164F1FF27C2
    FAFF17E9FEFF169BF7FF2063F1FF02D6FEFF00D9FEFF00D0FEFF00C1FEFF00AC
    FEFF0080FEFF0046FEFF003EFEA7000000000000000000000000000000000000
    0000F2AC7039F2AC7057F2AC7057F2AC7057F2AC7057F2AC7057E2AE7A6450BE
    CFF400D4FEFF00DCFEFF00E2FEFF00E6FEFF0FE9FEFF2AECFEFF2DABF8FF2063
    F1FF2063F1FF3185F5FF3B96F6FF256BF2FF72E8FDFF51B1F8FF2469F2FF3887
    F5FF3583F4FF4AA5F7FF2163F1FF2164F1FF246AF2FF44B1F9FF2163F1FF2269
    F2FF2CC7FBFF229CF7FF2063F1FF02DAFEFF00DFFEFF00D8FEFF00CDFEFF00BC
    FEFF00A1FEFF0069FEFF003FFEF7003EFE1A0000000000000000000000000000
    0000F2AC6B41F2AC6B57F2AC6B57F2AC6B57F2AC6B57F2AC6B57B0B393943FC7
    D7FF00DAFEFF00E1FEFF00E5FEFF0DE9FEFF2AECFEFF40EEFEFF38ACF8FF2063
    F1FF3B96F6FF256CF2FF3F94F6FF266BF2FF7EE9FDFF66C5FAFF2163F2FF296F
    F3FF489AF6FF50A6F7FF2163F2FF2E77F3FF246AF2FF4DB2F9FF2163F1FF40B2
    F9FF45E6FEFF2B9DF7FF2063F1FF04DDFEFF00E3FEFF00DDFEFF00D5FEFF00C7
    FEFF00B3FEFF008DFEFF004EFEFF003EFE6B0000000000000000000000000000
    0000F2AC6642F2AC6557F2AC6557F2AC6557F2AC6557F2AC655783BBACC43DCC
    D7FF00DFFEFF00E4FEFF07E8FEFF24EBFEFF3DEEFEFF52EFFEFF41ADF8FF2063
    F1FF2D78F3FF2A71F3FF4395F6FF276BF2FF87E9FDFF7CD8FCFF2164F2FF2063
    F2FF5CB0F8FF54A6F7FF2164F2FF52A7F8FF256AF2FF54B2F9FF2163F1FF2F83
    F4FF369CF7FF2576F3FF2063F1FF198FF6FF01E1FEFF00E1FEFF00DAFEFF00D0
    FEFF00BEFEFF00A3FEFF006BFEFF003EFEB20000000000000000000000000000
    0000F2AC603BF2AC6057F2AC6057F2AC6057F2AC6057F0AD625863C2BDE844CE
    D1FF00E2FEFF01E7FEFF1AEAFEFF36EDFEFF4EEFFEFF61F1FEFF5ACCFBFF4AA4
    F7FF4FA6F7FF71D0FBFF6AC2FAFF59A9F8FF94EFFEFF94EEFEFF59A6F7FF59A5
    F7FF83D9FCFF76CAFBFF5DADF8FF7BD7FCFF55A8F8FF6ED0FBFF4CA4F7FF47A4
    F7FF46ADF8FF3AA2F7FF31A2F7FF25A4F8FF08E4FEFF00E4FEFF00DEFEFF00D6
    FEFF00C7FEFF00B2FEFF0089FEFF0048FEE8003EFE0400000000000000000000
    0000F2AC5B2EF2AC5B57F2AC5B57F2AC5A57CD9D428FBB9B43A874AA79FA6EAE
    7DFF32B28DFF33B38CFF45B58CFF54B78CFF60B88CFF69B98CFF71B98CFF77BA
    8CFF7BBA8CFF7FBA8CFF83BB8CFF85BB8DFF99E8E2FFA2F6FEFFA3F6FEFFA3F6
    FEFFA2F6FEFFA1F6FEFF9EF6FEFF9AF6FEFF95F5FEFF7BDAFCFF59B4F9FF77EB
    FEFF6ECAAEFF64B88CFF59B78CFF4BB68CFF3AB48CFF2FB28CFF2FAF8CFF2FAB
    8CFF2FA48CFF2F9A8CFF2F888CFF2F628CFF5367357B69720072697200330000
    0000F1AC551AF1AC5557F1AC5557F1AC5557D3A0428698871CFD97861CFF9786
    1CFF777808FF697200FF697200FF697200FF697200FF697200FF697200FF6972
    00FF697200FF6A7200FF697200FF6A7200FF7C9A4CFFA7F6FDFFA9F7FEFFA9F7
    FEFFA8F7FEFFA6F7FEFFA4F6FEFFA0F6FEFF98F2FEFF3982F4FF2163F1FF479D
    F7FF76CEB7FF6A7403FF697200FF697200FF697200FF697200FF697200FF6972
    00FF697200FF697200FF697200FF697200FF697200FF697200FF697200D96972
    000DF1AC5105F1AC5052F1AC5057F1AC5057F1AC5057B7942EBA97861AFF9786
    1AFF888012FF6A7300FF697200FF697200FF697200FF697200FF697200FF6972
    00FF697200FF697300FF697300FF697300FF6A7301FF94C7A1FFADF7FFFFADF7
    FFFFACF7FFFFABF7FFFFA8F7FEFFA5F6FFFF6CBAF9FF2164F2FF2163F1FF2265
    F2FF63C9FAFF6FA059FF697200FF697200FF697200FF697200FF697200FF6972
    00FF697200FF697200FF697200FF697200FF697200FF697200FF697200FF6972
    008900000000F1AC4A36F1AC4A57F1AC4A57F1AC4A57CAB0607C8C9133FF9786
    18FF978618FF727604FF697403FF68923FFF6C9544FF709644FF739644FF7596
    44FF779644FF799644FF7A9644FF7B9644FF7C9644FF82A057FFAFF4F8FFB1F7
    FEFFB1F7FEFFAFF7FEFFACF7FEFF9CE9FDFF2C70F3FF2063F2FF2163F2FF2265
    F2FF6BCFFBFF78E6E4FF6A7C12FF697200FF697200FF667709FF1CC7BAFF12CE
    D3FF16C4C9FF16B9C9FF16A8C9FF168AC9FF316E877369720042697200426972
    003E00000000F1AC4511F1AC4555F1AC4557F1AC4557D3B25B7362BD96FE9688
    1BFF978617FF8B8110FF6A7300FF69B483FF76F3FEFF84F4FEFF8EF5FEFF97F5
    FEFF9EF6FEFFA4F6FEFF80CAFBFF7FC7FAFF87CDFBFF8ACEFBFFA1E5FDFFB4F8
    FEFFB4F8FEFFB2F8FEFFAFF8FEFF5AA0F7FF2063F2FF2163F1FF2163F1FF4A99
    F6FF88F4FEFF7CF3FEFF6DBD94FF697300FF697200FF697200FF459A56FF00E2
    FEFF00DAFEFF00CEFEFF00BAFEFF0096FEFF0072FE3800000000000000000000
    00000000000000000000F1AD3F37F1AD3F57F1AD3F57DBB1506854CEBAF876AA
    64FF988714FF978614FF7E7B09FF6A7708FF76D5C3FF86F4FEFF90F5FEFF99F6
    FEFFA0F6FEFFA6F7FFFF6BB4F9FF2164F2FF2164F2FF2164F2FF3174F3FFA8E9
    FDFFB6F8FFFFB4F8FFFF93D9FCFF2467F2FF2164F2FF2164F2FF296EF2FF89E7
    FDFF8AF4FFFF7FF3FEFF70F0FBFF688D36FF697200FF697200FF697301FF1EC1
    B4FF00DCFEFF00D0FEFF00BCFEFF009CFEFF007AFE1D00000000000000000000
    00000000000000000000F1AD3B0AF1AD3A50F1AD3A57EBAE3E5A5FCCAFEC53D0
    B4FF8C9533FF988713FF968612FF767805FF6C8523FF85ECEFFF92F5FEFF9AF6
    FFFFA1F6FEFFA7F7FFFFA9F5FEFF4A8FF5FF2164F2FF2164F2FF2164F2FF4E90
    F5FFB4F6FEFFB3F7FEFF4487F5FF2164F2FF2164F2FF2164F2FF67B8F9FF95F5
    FFFF8BF4FFFF80F3FEFF71F2FEFF63D6C8FF697606FF697200FF697200FF5A82
    24FF05D6F1FF00D0FEFF00BDFEFF009CFEF00083FE0500000000000000000000
    0000000000000000000000000000F1AD351EF1AD3456F1AD34577BC696CB51D3
    B9FF6BC698FF968917FF978712FF948510FF737703FF75A25DFF91F4FCFF9AF6
    FFFFA1F6FEFFA7F7FFFFACF7FFFFA0E8FDFF3074F3FF2164F2FF2164F2FF2164
    F2FF72B5F9FF80C3FAFF2164F2FF2164F2FF2164F2FF3B82F4FF9AF3FEFF95F5
    FFFF8BF4FFFF7FF3FEFF70F2FEFF5EF1FEFF5DA86CFF697200FF697200FF6972
    00FF38A377FF00D0FEFF00BDFEFF009FFEBE0087FE0100000000000000000000
    000000000000000000000000000000000000F1AD2F31F1AD2F57A6BD6E9D51D3
    B7FF5FD6B7FF84B066FF978710FF988610FF94850FFF747704FF83C5A1FF99F5
    FEFFA0F6FEFFA6F7FFFFAAF7FFFFAEF8FFFF88CEFBFF2265F2FF2164F2FF2164
    F2FF2568F2FF2C6FF2FF2164F2FF2164F2FF2367F2FF83D4FBFF9CF6FFFF94F5
    FFFF8AF4FFFF7EF3FEFF6FF2FEFF5CF0FEFF47E5EBFF63811DFF697200FF6972
    00FF667608FF14BCCEFF00BBFEFF00A4FE790000000000000000000000000000
    000000000000000000000000000000000000F1AD2C02F1AD2A3CD8B23E6A54D1
    B2F95CD5B5FF74D5B1FF929935FF97870EFF97870EFF95850DFF7B8114FF90E1
    D7FF9DF6FEFFA3F7FFFFA8F7FFFFACF8FFFFAFF7FEFF64A9F8FF2164F2FF2164
    F2FF2164F2FF2164F2FF2164F2FF2164F2FF559FF7FF97DFD1FF8ED7C3FF88D7
    C3FF80D6C3FF77D5C3FF6BD4C3FF5DD3C3FF49D1C3FF4CA972FF697200FF6972
    00FF697200FF50873CFF02B7FAFB00A5FE260000000000000000000000000000
    00000000000000000000000000000000000000000000F0AD2604EFAD253C7DC7
    8BC857D4B4FF6ED7B4FF83CB98FF968B16FF97870DFF97870DFF96860CFF8B99
    3EFF9AF1F5FFA0F6FFFFA5F7FFFFA9F7FFFFACF8FFFFABF4FEFF4084F4FF2164
    F2FF2164F2FF2164F2FF2164F2FF2D72F3FF96E9FDFF8ECFB2FF6A7504FF6A73
    00FF6A7300FF697200FF697200FF697200FF697200FF697200FF697200FF6972
    00FF697200FF697300FF339383C3000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000F0AD2103B5BA
    555C53D3B1FD67D6B2FF7AD8B2FF8EB66BFF968910FF978910FF978910FF9789
    10FF9EB770FFA0F2F4FFA1F6FFFFA5F7FFFFA8F7FFFFAAF7FFFF97E2FDFF2B6E
    F2FF2164F2FF2164F2FF2164F2FF70BEF9FF9EF6FFFF98F5FEFF7EB683FF6A73
    00FF6A7300FF697200FF697200FF697200FF697200FF697200FF697200FF6972
    00FF697200FF697200FF697300EC6972001B0000000000000000000000000000
    00000000000000000000000000000000000000000000000000000000000091C2
    740237D8C9A65CD6B2FF73D7B0FF84D8AFFF91D2A1FF9BD3A1FFA3D4A1FFA9D5
    A1FFAED6A4FFB2DEB6FFA7ECDEFFA0F6FDFFA3F7FFFFA5F7FFFFA6F7FFFF90DE
    FCFF7CC9FBFF77C5FAFF74C3FAFF9BF3FEFF99F6FFFF92F5FFFF8AF3FBFF79C7
    A7FF70C3A0FF67C2A0FF5CC1A0FF4CC0A0FF3ABEA0FF28BCA0FF27B9A0FF27B5
    A0FF27AEA0FF2F9E8CBC6972005E6972002A0000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    000000E5FE1A1DE2E6EB62D8B7FF7BD8AFFF8AD9AFFF95DAAFFF9EDBAFFFA6DB
    AFFFABDCAFFFB0DDAFFFB4DDAFFFAFE3C3FFA2F1F0FF9FF6FEFFA0F6FFFFA0F6
    FFFF9FF6FFFF9EF6FFFF9BF6FFFF97F5FFFF92F5FFFF8BF4FFFF83F4FFFF79F3
    FFFF6CF2FFFF5DF0FEFF49EFFEFF30ECFEFF10E9FEFF00E5FEFF00E0FEFF00D8
    FEFF00CBFEEF00C0FE2500000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    00000000000000E7FE5318E7F6FB5ADEC8FF80D8AEFF8DD9ADFF97DAADFF9FDB
    ADFFA5DBADFFAADCADFFAEDCADFFB1DDADFFB3DDB0FFA9E7D0FF9BF4F8FF99F5
    FEFF98F5FFFF96F5FFFF93F5FFFF8FF5FFFF89F4FFFF83F4FFFF7AF3FFFF6EF2
    FFFF61F1FFFF50EFFEFF39EDFEFF1DEBFEFF03E7FEFF00E3FEFF00DDFEFF00D3
    FEFE00C9FE5F0000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000003E8FF7B1AEAFEFE47E6E5FF7BDBB6FF8ED9ACFF97DA
    ACFF9DDBACFFA3DBACFFA8DCACFFABDCACFFADDCACFFAFDDACFFADDEB2FFA0E9
    D7FF91F3F9FF8CF5FFFF89F4FFFF85F4FFFF7FF3FFFF77F3FFFF6DF2FFFF62F1
    FFFF52EFFFFF3EEEFEFF26ECFEFF09E8FEFF00E5FEFF00E0FEFF00D8FEFF2FC8
    CF8BC2B13B030000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000E7FE0208E8FE811EEBFEFD39ECFBFF62E4D8FF87DB
    B2FF94DAABFF9ADBABFF9FDBABFFA3DBABFFA5DBABFFA7DCABFFA8DCABFFA8DC
    ABFFA5DEB1FF95E7D3FF83F0F4FF79F3FFFF72F2FFFF69F1FFFF5EF0FFFF50EF
    FFFF3EEEFFFF29ECFEFF0EE9FEFF00E6FEFF00E1FEFF00DBFEFE00D3FE8FC7B2
    331BEFAC0C030000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    000000000000000000000000000001E8FE020AE9FE6A1DEBFEF833EDFEFF48ED
    F9FF6AE5D7FF89DCB4FF94DAA9FF99DAA9FF9CDBA9FF9EDBA9FF9FDBA9FF9FDB
    A9FF9EDBA9FF9DDBA9FF99DBACFF88E2C4FF72E9E2FF5BEEF8FF4BEFFFFF3AED
    FFFF27ECFFFF0EE9FEFF00E6FEFF00E2FEFF00DDFEF908D6F676C1B43612EEAC
    081F000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    000000000000000000000000000000000000000000000BE9FE3E18EAFED82BEC
    FEFF3BEDFEFF4AEEFBFF63E8E1FF7DE0C1FF8EDBACFF92DAA8FF94DAA8FF94DA
    A8FF93DAA8FF91DAA8FF8ED9A8FF8AD9A8FF84D8A8FF79D9ADFF63DDBEFF45E0
    D2FF26E2E0FF13E1EAFF0EDFEFFF22D7DAE67FC17966E9AD0A32EEAC061FEEAC
    0601000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    000000000000000000000000000000000000000000000000000008E9FE0E11EA
    FE801EEBFEEC2DECFFFF38EDFFFF41EEFEFF4EECF5FF60E6DEFF72E0C5FF7FDB
    B1FF83D9A9FF82D8A7FF7ED8A7FF79D8A7FF72D7A7FF69D6A7FF5DD5A7FF53D4
    A7FF51D2A7FF57CEA0F592C063AEDEB01350EEAC0225EEAC0307000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    00000BE9FE1512EAFF7819EAFFD623EBFFFD2BECFFFF2FECFFFF33EDFFFF34EC
    FDFF39E9F3FF3EE6E6FF42E2D9FF41E0D1FF3BDDCBFF33DCCAFF2EDACCFD2CD9
    CEDA3DD4BC80B7B83A29EEAC0009000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000007E9FF020AE9FF2F0DE9FF6F0FE9FFA60EE9FFCC0EE9
    FFEA0CE9FFF609E9FFF705E8FFEB01E7FFCE00E6FFA800E4FF7300E3FF3300E2
    FF02000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000FFFFFFFFFFFFF204FFFFFFFFFFFFF204FFFFFFFFFFFFF204FFFFFFFFFFFF
    F204FFFFFFFFFFFFF204FFFFE001FFFFF204FFE000003FFFF204FF0000000FFF
    F204FC00000007FFF204F000000003FFF204E000000001FFF204C000000000FF
    F20480000000007FF20480000000003FF20400000000003FF20400000000001F
    F20400000000001FF20400000000000FF20400000000000FF20400000000000F
    F204000000000007F204000000000001F204000000000000F204000000000000
    F204800000000000F204800000000007F204C00000000007F204C00000000007
    F204E00000000007F204F0000000000FF204F0000000000FF204F8000000001F
    F204FC000000000FF204FE000000000FF204FF000000003FF204FF800000007F
    F204FFC00000007FF204FFC00000007FF204FFE0000000FFF204FFF8000000FF
    F204FFFC000003FFF204FFFF00001FFFF204FFFFC000FFFFF204FFFFFFFFFFFF
    F204FFFFFFFFFFFFF204FFFFFFFFFFFFF204FFFFFFFFFFFFF204FFFFFFFFFFFF
    F204280000002000000040000000010020000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000003FFE03003F
    FE22003FFE5B003FFE77003FFE85003FFE80003FFE65003FFE3D003FFE080000
    0000000000000000000000000000000000000000000000000000000000000000
    000000000000000000000000000000000000000000000000000000000000F4AC
    9803F4AC9911F4AC991EF4AC9A30F3AB9A3BC196AF5B5B6CD986004BFED90052
    FEFC0059FEFF005AFEFF0058FEFF0052FEFF004AFEFF0043FEFF003EFEEA003E
    FEA1003EFE3E003EFE0B00000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000F4AC9515F4AC
    9636F4AC974BF4AC9754ECA99A5B9B8BBD8E2471EFDF0279FCFB008FFEFF009B
    FEFF00A4FEFF00A5FEFF00A2FEFF009CFEFF008CFEFF0079FEFF005CFEFF0045
    FEFF003EFEE4003EFE96003EFE10000000000000000000000000000000000000
    000000000000000000000000000000000000F4AC8F09F4AC9130F4AC9256F4AC
    9257F4AC9257E1A89A645591D8C30494FCFB00B0FEFF00BDFEFF00C6FFFF00CB
    FEFF00CEFEFF00CFFFFF00CEFFFF00CBFEFF00C5FFFF00BDFFFF00ACFEFF0094
    FFFF0065FEFF0048FEFF003EFECE003EFE450000000000000000000000000000
    0000000000000000000000000000F3AC8A02F3AC8C3AF3AC8D55F3AC8D57F3AC
    8D57E2AA956367A0CEB902ABFDFE00BEFEFF00CDFEFF00D4FEFF00D9FEFF00DC
    FEFF00DEFEFF00DEFEFF00DDFEFF00DCFEFF00D8FEFF00D4FEFF00CBFEFF00BF
    FEFF00A5FEFF0080FEFF004BFEFE003EFEDC003EFE2900000000000000000000
    00000000000000000000F3AC8403F3AC852FF3AC8657F3AC8657F3AC8657F0AC
    875968ABCBBD04B9FCFD00CDFEFF00D7FEFF00DEFEFF00E2FEFF03E5FEFF06E7
    FEFF0AE7FEFF0BE8FEFF09E8FEFF06E6FEFF02E4FEFF00E2FEFF00DDFEFF00D7
    FEFF00CBFEFF00BAFEFF0091FEFF005CFEFF003EFECD003EFE2B000000000000
    00000000000000000000F3AC7E13F3AC804CF3AC8057F3AC8057F3AC8057C1AD
    9A810DBDF7FA00CEFEFF00DBFEFF03D3FCFF0AC5FBFF0FE5FDFF1AC8FAFF21BE
    FAFF28C4FAFF2DD0FBFF27C2FAFF23C7FAFF1ACCFBFF0FCCFBFF0AB9FAFF06C6
    FBFF07BCFBFF04BFFCFF00B7FEFF0093FEFF004EFEFB003EFE99000000000000
    00000000000000000000F3AC772EF3AC7857F3AC7857F3AC7857E0AD826853BA
    D0D500D2FEFF00DDFEFF01E4FEFF10BDFAFF2587F4FF3CE3FDFF2A86F4FF3693
    F5FF2D80F4FF2977F3FF2A7AF3FF2D82F4FF2677F3FF2B98F6FF2173F2FF15B9
    FAFF1887F5FF0CADF9FF00CFFEFF00BCFEFF0086FEFF004CFEFC003EFE3B0000
    00000000000000000000F2AC713FF2AC7157F2AC7157F2AC7157BBB2918B23C9
    E9F500DCFEFF00E3FEFF11E9FEFF25C0FAFF236EF2FF359CF6FF3287F4FF54BD
    F9FF3D94F5FF2D78F3FF3789F4FF2F7BF3FF2266F1FF3699F6FF216FF2FF24B9
    F9FF1E88F4FF0CB1F9FF00DAFEFF00CDFEFF00ABFEFF0070FEFF003EFE99003E
    FE060000000000000000F1AC6949F2AC6957F1AC6957F2AC695780BCAFC214D5
    F1FF00E3FEFF0EE8FEFF37EDFEFF3EC2FAFF2770F2FF2B77F3FF3786F4FF62BF
    F9FF53A8F7FF2468F2FF4FA2F6FF3179F3FF327DF3FF419AF6FF2978F3FF3EBF
    FAFF2681F4FF12A3F7FF00E1FEFF00D9FEFF00C3FEFF009FFEFF004FFED6003E
    FE2C0000000000000000F1AC6146F1AC6157F1AC6157F1AC62575FC4C0E815DA
    EFFF07E7FEFF26EBFEFF4EEFFEFF55D1FBFF3E91F5FF52A7F7FF56A8F7FF77CF
    FBFF74C9FAFF468FF5FF72C6FAFF54A2F7FF5FB5F9FF5AB5F8FF3E91F5FF40A2
    F7FF3091F5FF2497F6FF03E3FEFF00DEFEFF00CEFEFF00B4FEFF006BFEF10040
    FE490000000000000000F1AC5937F1AC5957E6A75069B9973AB27E9E5AFD599F
    5FFF499D5DFF579F5DFF65A05DFF6CA15DFF73A25DFF77A25DFF7AA25DFF88BF
    94FFA4F6FDFFA5F6FEFFA3F6FEFFA0F6FEFF9AF5FEFF75CFFAFF51ABF8FF6DCD
    C9FF63A05EFF589F5DFF479D5DFF429B5DFF42965DFF428E5DFF42785DFF5269
    36C46972008F69720026F1AC5224F1AC5156EDAA4F5CC09733AD97861AFF8980
    12FF697200FF697200FF697200FF697200FF697200FF697200FF697200FF6D7B
    11FFA0E1D4FFABF7FEFFAAF7FEFFA7F6FEFF95E8FDFF448DF5FF2569F1FF55AF
    E9FF6B8628FF697200FF697200FF697200FF697200FF697200FF697200FF6972
    00FF697200FB69720091F1AC470EF1AC4847F1AC4857D9AF576E869740FF9686
    18FF747706FF688F39FF71B482FF7AB582FF81B582FF86B682FF7CA780FF7EA7
    80FF91C4B1FFAFF4FCFFB1F7FEFFAEF7FEFF66AFF8FF2265F2FF2569F2FF5DB9
    F9FF74CCB2FF697C14FF687302FF3EA167FF0CD1DFFF0EC3DAFF0EA3DAFF1A79
    BD956972002C6972002AF1AC4502F1AC412DF1AC4157E0AF4D6565BA8DFC908E
    27FF89800EFF6E8522FF7BE6E3FF8CF4FEFF9AF5FEFFA3F6FEFF61A9F7FF4286
    F4FF4A8DF5FF8FD1FBFFB4F8FEFFA4EAFDFF2E72F3FF2063F1FF408BF4FF82E7
    FDFF79ECF1FF6AA260FF697200FF617B13FF0DD1DDFF00D3FEFF00B0FEFF0082
    FE6E000000000000000000000000F1AD3B04F1AD3847EEAD395861CCABEB71B3
    75FF978713FF877F0BFF749C4FFF8BE9E8FF9CF6FEFFA5F6FEFF93DDFCFF3B7F
    F4FF2164F1FF3577F3FF9FE2FCFF5B9EF6FF2164F1FF266AF2FF81D9FCFF8EF4
    FFFF7AF2FEFF66E5E6FF667F1AFF697200FF469452FF07CCECFF00B2FEF4008C
    FE4D00000000000000000000000000000000F1AD321BF1AD304E80C68FC85DD1
    B0FF8E9938FF968610FF828212FF81BA8AFF9BF5FEFFA4F6FEFFAAF5FEFF7FC6
    FAFF2164F1FF2164F1FF4184F4FF2E71F2FF2164F1FF529DF6FF99F5FEFF8DF4
    FFFF79F2FEFF62F0FEFF55B486FF677506FF62780FFF25AEA3FF00B3FEDA0097
    FE300000000000000000000000000000000000000000F0AD291CB5BA5A8A5CD2
    AFF87BC793FF939327FF96860DFF89830FFF92D7C1FFA0F5FDFFA8F7FFFFADF7
    FEFF60A6F7FF2467F2FF2164F1FF2164F2FF3C83F4FF86CED7FF80B682FF7AB5
    82FF6FB382FF64B282FF54A870FF627E19FF697200FF5D7B1AFF0EA9DCA300A5
    FE080000000000000000000000000000000000000000F0AD2601D5B239396ECC
    99D46FD5AFFF8AB66CFF96880FFF96880EFF96A249FF9EE5D9FFA3F6FFFFA8F7
    FFFF9AE4FDFF4388F4FF2164F1FF2164F1FF6FBEF9FF96EBEDFF72913BFF6A73
    00FF697200FF697200FF697200FF697200FF697200FF697200FF5B7A219A6972
    00060000000000000000000000000000000000000000000000000000000040D5
    C05053D9BDFB7AD7B0FF92D4A5FF9ED6A5FFA9D7A6FFAFDBAFFFA9E9D7FFA3F3
    F4FFA3F6FEFF9AEBFDFF86D7FCFF82D4FBFF98F4FEFF92F5FFFF82E9E9FF72D3
    C1FF5FD1BFFF49CFBFFF26CBBFFF1AC7BFFF1ABDBFFD1DAEB6AF697200336972
    00090000000000000000000000000000000000000000000000000000000000E5
    FE0616E4EFAD53DECAFE87D8AEFF96DAADFFA3DBADFFAADCADFFB0DDAFFFAEE2
    BFFFA2EEE8FF9BF5FDFF99F5FFFF96F5FFFF8FF4FFFF87F4FFFF79F3FFFF69F1
    FFFF4DEEFEFF2CECFEFF04E6FEFF00DFFEFF00D1FED900C5FE38000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    000001E7FE1C0EE8FEA947E5E2FF76DEC0FF94DAADFF9EDAABFFA6DBABFFA9DB
    ABFFACDCADFFA5E2C0FF94EDE6FF89F1F7FF7EF3FFFF75F2FFFF64F1FFFF50EF
    FFFF2EECFEFF0EE8FEFF00E1FEFF00D9FEE686BA7545D5AE2501000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    00000000000002E7FE1E17EAFDBB39EAF5FD66E5D9FF87DDB8FF99DAA9FF9EDA
    A9FFA1DBA9FFA2DBA9FF9EDDAFFF94E1BFFF7DE9DEFF65EEF5FF4BEEFFFF34ED
    FFFF10E9FEFF01E4FEFF01DCFCDE57C6A35EE2AD151400000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    000000000000000000000BE8FE0E10E9FE7127EBFEE13BEDFCFD5BE8E3FF73E2
    CAFF83DDB7FF8BDAADFF8DD9A8FF89D8A7FF82D8A7FF77D7A9FF59DABAFF3BDC
    C9FF2FD8CBF453CDA5C4BBB53841ECAC061A0000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    000000000000000000000000000008E8FE0312E9FE3B17EAFE8D26EBFEEC33EC
    FCFF42E9F1FF4BE7E6FF52E2D7FF55DFCBFF51DCC1FF47DABEFF3CD8C0F640D4
    B9BEA9BB485ED0B22027EEAC0209EEAC03010000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    000000000000000000000000000000000000000000000000000008E8FF0B0BE9
    FF3C0EE8FF770EE9FF950AE8FFA406E8FF9F00E6FF8100E4FF5800E2FF170000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    00000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFF007FFF80000FFF000
    007FC000003F8000001F0000000F0000000F0000000700000003000000030000
    00030000000000000000000000000000000380000003C0000003E0000003E000
    0003F8000003F800000FFC00000FFE00001FFF00003FFF80003FFFF007FFFFFF
    FFFFFFFFFFFFFFFFFFFF28000000100000002000000001002000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    000000000000000000000000000000000000AEBB009D6A7300FF6B7300FF6B73
    00FF6B7300FF6A7300FF6B7300FF6B7300FF8A9400C6EBFF0004000000000000
    0000236BFF18236BFFF0236BFFCF236BFF06ECFF000E7A8500DF6B7400FF6B74
    00FF6B7400FF6B7400FF6B7400FF6B7400FF6B7400FFE0F3007A000000000000
    0000226AFF9E2165F2FF2165F2FF226AFF8100000000ECFF00406C7500FC6B74
    00FF6B7400FF6B7400FF6B7400FF6B7400FF6B7400FF6E7700F8ECFF0031226A
    FF362166F4FD2165F2FF2165F2FF226AFFAD0000000000000000B2FFEA517AC9
    FF847BCAFF7D9AEAFD76B2FFE661ECFF003DECFF003DECFF003DCFFF6F26226A
    FFC62165F2FF2165F2FF2269FCF5226AFF210000000000000000226AFF12226A
    FFE12165F2FF2165F2FF2269FDF4226AFF2A0000000000000000226AFF5E2165
    F2FF2165F2FF2165F2FF226AFF7D00000000000000000000000000000000226A
    FF3E2166F5FC2165F2FF2165F2FF226AFFD0226AFF08226AFF0E226AFFE52165
    F2FF2165F2FF226AFFDA226AFF08000000000000000000000000000000000000
    0000226AFF822265F2FF2165F2FF2265F2FF226AFF91236AFF892165F2FF2265
    F2FF2165F2FF236AFF4A00000000000000000000000000000000000000000000
    0000236BFF04236BFFC42165F1FF2165F1FF2165F2FE2167F6FA2165F1FF2165
    F1FF236BFFAF0000000000000000000000000000000000000000000000000000
    000000000000236BFF21236BFFEF2165F1FF2165F1FF2165F1FF2165F1FF2269
    FBF5236BFF200000000000000000000000000000000000000000000000000000
    00000000000000000000236BFF582165F1FF2165F1FF2165F1FF2165F1FF236B
    FF7C000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000236BFF8C236BFFCD236BFFD6236BFFC5236B
    FF08000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    0000000000000000000000000000000000000000000000000000000000000000
    000000000000000000000000000000000000FFFFAC41FFFFAC41FFFFAC410030
    AC410030AC418000AC41C000AC41C0C1AC41E001AC41F003AC41F007AC41F807
    AC41FC0FAC41FE0FAC41FFFFAC41FFFFAC41
  }
  OnMouseDown = FormMouseDown
  OnMouseUp = FormMouseUp
  OnMouseWheel = FormMouseWheel
  OnMouseWheelDown = FormMouseWheelDown
  OnMouseWheelUp = FormMouseWheelUp
  LCLVersion = '1.6.0.4'
  object Label1: TLabel
    Left = 16
    Height = 18
    Top = 16
    Width = 277
    Caption = 'Scroll your mouse wheel to change the value.'
    ParentColor = False
  end
  object lblDirection: TLabel
    Left = 16
    Height = 23
    Top = 48
    Width = 73
    Caption = 'Direction'
    Font.Height = -17
    ParentColor = False
    ParentFont = False
  end
  object lblAmount: TLabel
    Left = 168
    Height = 28
    Top = 72
    Width = 12
    Caption = '0'
    Font.Height = -21
    ParentColor = False
    ParentFont = False
  end
  object Label2: TLabel
    Left = 16
    Height = 28
    Top = 72
    Width = 145
    Caption = 'Scroll Amount:'
    Font.Height = -21
    ParentColor = False
    ParentFont = False
  end
  object Label3: TLabel
    Left = 32
    Height = 18
    Top = 112
    Width = 102
    Caption = 'Contents of Shift'
    ParentColor = False
  end
  object Label4: TLabel
    Left = 232
    Height = 18
    Top = 136
    Width = 42
    Caption = 'Label4'
    ParentColor = False
  end
  object Memo1: TMemo
    Left = 24
    Height = 96
    Top = 136
    Width = 156
    Lines.Strings = (
      'Memo1'
    )
    TabOrder = 0
  end
  object Label5: TLabel
    Left = 233
    Height = 18
    Top = 112
    Width = 105
    Caption = 'MouseUp/Down?'
    ParentColor = False
  end
end
-------------- next part --------------
A non-text attachment was scrubbed...
Name: frm1.pas
Type: text/x-pascal
Size: 4120 bytes
Desc: not available
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20160728/45c8525d/attachment-0001.pas>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: proj_mouse_wheel.ico
Type: image/vnd.microsoft.icon
Size: 15086 bytes
Desc: not available
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20160728/45c8525d/attachment-0001.ico>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: proj_mouse_wheel.lpi
Type: text/xml
Size: 2356 bytes
Desc: not available
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20160728/45c8525d/attachment-0002.xml>
-------------- next part --------------
program proj_mouse_wheel;

{$mode objfpc}{$H+}

uses
  {$IFDEF UNIX}{$IFDEF UseCThreads}
  cthreads,
  {$ENDIF}{$ENDIF}
  Interfaces, // this includes the LCL widgetset
  Forms, frm1
  { you can add units after this };

{$R *.res}

begin
  RequireDerivedFormResource := True;
  Application.Initialize;
  Application.CreateForm(TForm1, Form1);
  Application.Run;
end.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: proj_mouse_wheel.lps
Type: text/xml
Size: 4093 bytes
Desc: not available
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20160728/45c8525d/attachment-0003.xml>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: proj_mouse_wheel.res
Type: application/octet-stream
Size: 16648 bytes
Desc: not available
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20160728/45c8525d/attachment-0001.obj>


More information about the Lazarus mailing list