-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathTOTP.Main.fmx
1262 lines (1262 loc) · 62.2 KB
/
TOTP.Main.fmx
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
object FormMain: TFormMain
Left = 0
Top = 0
Caption = 'Form5'
ClientHeight = 722
ClientWidth = 428
Fill.Color = xFF202124
Fill.Kind = Solid
StyleBook = StyleBook
FormFactor.Width = 320
FormFactor.Height = 480
FormFactor.Devices = [Desktop]
OnCreate = FormCreate
OnDestroy = FormDestroy
OnVirtualKeyboardShown = FormVirtualKeyboardShown
OnVirtualKeyboardHidden = FormVirtualKeyboardHidden
Touch.InteractiveGestures = [LongTap]
DesignerMasterStyle = 0
object TabControlMain: TTabControl
Align = Client
Size.Width = 428.000000000000000000
Size.Height = 662.000000000000000000
Size.PlatformDefault = False
TabIndex = 0
TabOrder = 1
TabPosition = None
OnChange = TabControlMainChange
Sizes = (
428s
662s
428s
662s
428s
662s
428s
662s
428s
662s)
object TabItemList: TTabItem
CustomIcon = <
item
end>
IsSelected = True
Size.Width = 8.000000000000000000
Size.Height = 8.000000000000000000
Size.PlatformDefault = False
StyleLookup = ''
TabOrder = 0
Text = 'TabItemList'
ExplicitSize.cx = 8.000000000000000000
ExplicitSize.cy = 8.000000000000000000
object ListBoxKeys: TListBox
Align = Client
Size.Width = 428.000000000000000000
Size.Height = 662.000000000000000000
Size.PlatformDefault = False
StyleLookup = 'transparentlistboxstyle'
TabOrder = 0
ShowScrollBars = False
OnHScrollChange = ListBoxKeysHScrollChange
DisableFocusEffect = True
ItemHeight = 85.000000000000000000
DefaultItemStyles.ItemStyle = 'listboxitemstyle_clear'
DefaultItemStyles.GroupHeaderStyle = ''
DefaultItemStyles.GroupFooterStyle = ''
Viewport.Width = 428.000000000000000000
Viewport.Height = 619.000000000000000000
object SearchBoxKeys: TSearchBox
Touch.InteractiveGestures = [LongTap, DoubleTap]
Align = Top
TabOrder = 0
TextSettings.Font.Size = 16.000000000000000000
Position.X = 15.000000000000000000
Margins.Left = 15.000000000000000000
Margins.Right = 15.000000000000000000
Size.Width = 398.000000000000000000
Size.Height = 43.000000000000000000
Size.PlatformDefault = False
TextPrompt = ' Search...'
StyledSettings = [Family, Style, FontColor]
end
end
object LayoutListOverlay: TLayout
Align = Contents
Locked = True
Size.Width = 428.000000000000000000
Size.Height = 662.000000000000000000
Size.PlatformDefault = False
TabOrder = 1
object LayoutListActions: TLayout
Align = Bottom
Margins.Left = 20.000000000000000000
Margins.Top = 20.000000000000000000
Margins.Right = 20.000000000000000000
Margins.Bottom = 20.000000000000000000
Position.X = 20.000000000000000000
Position.Y = 592.000000000000000000
Size.Width = 388.000000000000000000
Size.Height = 50.000000000000000000
Size.PlatformDefault = False
TabOrder = 0
object ButtonAdd: TButton
Align = Right
Position.X = 338.000000000000000000
Size.Width = 50.000000000000000000
Size.Height = 50.000000000000000000
Size.PlatformDefault = False
StyleLookup = 'buttonstyle_elevated_icon'
TabOrder = 0
Text = 'ButtonAdd'
OnClick = ButtonAddClick
OnExit = ButtonAddExit
object PathAddPlus: TPath
Align = Center
Data.Path = {
0D00000000000000000030410000304101000000000030410000A04001000000
000050410000A040010000000000504100003041010000000000984100003041
0100000000009841000050410100000000005041000050410100000000005041
0000984101000000000030410000984101000000000030410000504101000000
0000A04000005041010000000000A04000003041030000000000304100003041}
Fill.Color = xD19BADF4
HitTest = False
Size.Width = 19.000000000000000000
Size.Height = 50.000000000000000000
Size.PlatformDefault = False
Stroke.Kind = None
Stroke.Thickness = 0.000000000000000000
WrapMode = Fit
end
end
object LayoutAddPopup: TLayout
Align = Contents
Margins.Top = -100.000000000000000000
Margins.Bottom = 50.000000000000000000
Size.Width = 388.000000000000000000
Size.Height = 100.000000000000000000
Size.PlatformDefault = False
TabOrder = 1
OnClick = LayoutAddPopupClick
OnMouseLeave = LayoutAddPopupMouseLeave
object ButtonAddManual: TButton
Anchors = [akTop, akRight]
Position.X = 255.000000000000000000
Position.Y = 53.000000000000000000
Size.Width = 125.000000000000000000
Size.Height = 39.000000000000000000
Size.PlatformDefault = False
TabOrder = 1
Text = 'Manual'
TextSettings.HorzAlign = Trailing
OnClick = ButtonAddManualClick
object Path4: TPath
Align = Left
Data.Path = {
1A00000000000000000030410000804001000000000080400000804002000000
BC4E39400000804002000000000000405EA79C4002000000000000400000C040
01000000000000400000A041020000000000004029D6A84102000000BC4E3940
0000B04102000000000080400000B04101000000000090410000B04102000000
29D698410000B041020000000000A04129D6A841020000000000A0410000A041
010000000000A04100005041000000000000944100002040020000002CA19A41
F0FED53F02000000EF5FA541420DD63F020000000000AC410010204002000000
3D9FB241BC125540020000004B9FB241E07D9540020000001F00AC4183FFAF40
0100000000004041000070410100000000000041000080410100000000001041
00004041010000000000944100002040030000000000944100002040}
Fill.Kind = None
HitTest = False
Margins.Left = 8.000000000000000000
Margins.Top = 9.000000000000000000
Margins.Bottom = 9.000000000000000000
Position.X = 8.000000000000000000
Position.Y = 9.000000000000000000
Size.Width = 39.000000000000000000
Size.Height = 21.000000000000000000
Size.PlatformDefault = False
Stroke.Color = claWhite
Stroke.Thickness = 1.500000000000000000
WrapMode = Fit
end
end
object ButtonAddScan: TButton
Anchors = [akTop, akRight]
Position.X = 255.000000000000000000
Position.Y = 6.000000000000000000
Size.Width = 125.000000000000000000
Size.Height = 39.000000000000000000
Size.PlatformDefault = False
TabOrder = 0
Text = 'Scan QR'
TextSettings.HorzAlign = Trailing
OnClick = ButtonAddScanClick
object Path3: TPath
Align = Left
Data.Path = {
B600000000000000000000000000003F0200000000008033E83A653E02000000
F43A653E000080B3020000000100003F00000033010000000000604000000033
0200000051AC7140000000000200000000008040EE3A653E0200000000008040
0000003F020000000000804044B1463F0200000051AC71400000803F02000000
000060400000803F010000000000803F0000803F010000000000803F00006040
020000000000803F51AC71400200000044B1463F00008040020000000000003F
0000804002000000EE3A653E00008040020000000000000051AC714002000000
000000330000604001000000000000330000003F03000000000000000000003F
00000000000040410000003F0200000000004041E83A653E02000000EC944341
000080B302000000000048410000003301000000000078410000003302000000
146B7C41000000000200000000008041EE3A653E02000000000080410000003F
010000000000804100006040020000000000804151AC714002000000146B7C41
0000804002000000000078410000804002000000EC9473410000804002000000
0000704151AC714002000000000070410000604001000000000070410000803F
01000000000048410000803F02000000EC9443410000803F0200000000004041
44B1463F02000000000040410000003F03000000000040410000003F00000000
0000003F000040410200000044B1463F00004041020000000000803FEC944341
020000000000803F00004841010000000000803F000070410100000000006040
000070410200000051AC7140000070410200000000008040EC94734102000000
00008040000078410200000000008040146B7C410200000051AC714000008041
020000000000604000008041010000000000003F0000804102000000EE3A653E
000080410200000000000000146B7C4102000000000000330000784101000000
00000033000048410200000000008033EC94434102000000F43A653E00004041
020000000100003F00004041030000000000003F000040410000000000007841
0000404102000000146B7C41000040410200000000008041EC94434102000000
00008041000048410100000000008041000078410200000000008041146B7C41
02000000146B7C41000080410200000000007841000080410100000000004841
0000804102000000EC944341000080410200000000004041146B7C4102000000
00004041000078410200000000004041EC94734102000000EC94434100007041
0200000000004841000070410100000000007041000070410100000000007041
000048410200000000007041EC94434102000000EC9473410000404102000000
0000784100004041030000000000784100004041000000000000804000008040
010000000000A04000008040010000000000A0400000A0400100000000008040
0000A04001000000000080400000804003000000000080400000804000000000
0000E0400000004001000000000000400000004001000000000000400000E040
010000000000E0400000E040010000000000E04000000040030000000000E040
00000040000000000000404000004040010000000000C0400000404001000000
0000C0400000C04001000000000040400000C040010000000000404000004040
030000000000404000004040000000000000A040000030410100000000008040
00003041010000000000804000004041010000000000A0400000404101000000
0000A04000003041030000000000A04000003041000000000000E04000001041
010000000000004000001041010000000000004000006041010000000000E040
00006041010000000000E04000001041030000000000E0400000104100000000
0000404000002041010000000000C04000002041010000000000C04000005041
0100000000004040000050410100000000004040000020410300000000004040
0000204100000000000030410000804001000000000040410000804001000000
000040410000A04001000000000030410000A040010000000000304100008040
0300000000003041000080400000000000001041000000400100000000006041
0000004001000000000060410000E04001000000000010410000E04001000000
0000104100000040030000000000104100000040000000000000204100004040
01000000000020410000C04001000000000050410000C0400100000000005041
0000404001000000000020410000404003000000000020410000404000000000
0000004100000041010000000000004100002041010000000000104100002041
0100000000001041000030410100000000000041000030410100000000000041
0000404101000000000020410000404101000000000020410000204101000000
0000304100002041010000000000304100004041010000000000404100004041
0100000000004041000030410100000000006041000030410100000000006041
0000204101000000000030410000204101000000000030410000004101000000
0000004100000041030000000000004100000041000000000000204100002041
0100000000001041000020410100000000001041000010410100000000002041
0000104101000000000020410000204103000000000020410000204100000000
0000604100004041010000000000504100004041010000000000504100005041
0100000000003041000050410100000000003041000060410100000000006041
0000604101000000000060410000404103000000000060410000404100000000
0000204100006041010000000000204100005041010000000000004100005041
0100000000000041000060410100000000002041000060410300000000002041
0000604100000000000040410000104101000000000060410000104101000000
0000604100000041010000000000404100000041010000000000404100001041
030000000000404100001041}
Fill.Color = claWhite
HitTest = False
Margins.Left = 8.000000000000000000
Margins.Top = 9.000000000000000000
Margins.Bottom = 9.000000000000000000
Position.X = 8.000000000000000000
Position.Y = 9.000000000000000000
Size.Width = 39.000000000000000000
Size.Height = 21.000000000000000000
Size.PlatformDefault = False
Stroke.Kind = None
WrapMode = Fit
end
end
end
end
end
end
object TabItemAdd: TTabItem
CustomIcon = <
item
end>
IsSelected = False
Size.Width = 8.000000000000000000
Size.Height = 8.000000000000000000
Size.PlatformDefault = False
StyleLookup = ''
TabOrder = 0
Text = 'TabItemAdd'
ExplicitSize.cx = 8.000000000000000000
ExplicitSize.cy = 8.000000000000000000
object Layout1: TLayout
Align = Bottom
Padding.Left = 8.000000000000000000
Padding.Top = 8.000000000000000000
Padding.Right = 8.000000000000000000
Padding.Bottom = 8.000000000000000000
Position.Y = 612.000000000000000000
Size.Width = 428.000000000000000000
Size.Height = 50.000000000000000000
Size.PlatformDefault = False
TabOrder = 8
object ButtonAddAccept: TButton
Align = Right
Position.X = 328.000000000000000000
Position.Y = 8.000000000000000000
Size.Width = 92.000000000000000000
Size.Height = 34.000000000000000000
Size.PlatformDefault = False
TabOrder = 0
Text = 'Add'
OnClick = ButtonAddAcceptClick
end
end
object VertScrollBoxAdd: TVertScrollBox
Align = Client
Size.Width = 428.000000000000000000
Size.Height = 612.000000000000000000
Size.PlatformDefault = False
TabOrder = 9
Viewport.Width = 428.000000000000000000
Viewport.Height = 612.000000000000000000
object LayoutAddClient: TLayout
Align = Top
Size.Width = 428.000000000000000000
Size.Height = 465.000000000000000000
Size.PlatformDefault = False
TabOrder = 8
OnResize = LayoutAddClientResize
object LayoutAddContent: TLayout
Align = Center
Padding.Left = 10.000000000000000000
Padding.Right = 10.000000000000000000
Size.Width = 370.000000000000000000
Size.Height = 444.000000000000000000
Size.PlatformDefault = False
TabOrder = 0
object EditAddSecret: TEdit
Touch.InteractiveGestures = [LongTap, DoubleTap]
Align = Top
TabOrder = 6
TextSettings.Font.Size = 16.000000000000000000
Position.X = 10.000000000000000000
Position.Y = 155.000000000000000000
Margins.Top = 10.000000000000000000
Size.Width = 350.000000000000000000
Size.Height = 38.000000000000000000
Size.PlatformDefault = False
TextPrompt = 'Secret key'
StyledSettings = [Family, Style, FontColor]
end
object EditAddLabel: TEdit
Touch.InteractiveGestures = [LongTap, DoubleTap]
Align = Top
TabOrder = 5
TextSettings.Font.Size = 16.000000000000000000
Position.X = 10.000000000000000000
Position.Y = 10.000000000000000000
Margins.Top = 10.000000000000000000
Size.Width = 350.000000000000000000
Size.Height = 38.000000000000000000
Size.PlatformDefault = False
TextPrompt = 'Label'
StyledSettings = [Family, Style, FontColor]
end
object Label5: TLabel
Align = Top
AutoSize = True
StyledSettings = [Family, Style]
Opacity = 0.600000023841857900
Margins.Left = 8.000000000000000000
Margins.Top = 4.000000000000000000
Margins.Right = 8.000000000000000000
Position.X = 18.000000000000000000
Position.Y = 52.000000000000000000
Size.Width = 334.000000000000000000
Size.Height = 27.000000000000000000
Size.PlatformDefault = False
TextSettings.Font.Size = 10.000000000000000000
TextSettings.FontColor = claWhite
Text =
'For e.g the users email address. You must set label before to ge' +
'nerate ProvisioningURI/QR code'
TabOrder = 13
end
object Label6: TLabel
Align = Top
AutoSize = True
StyledSettings = [Family, Style]
Opacity = 0.600000023841857900
Margins.Left = 8.000000000000000000
Margins.Top = 4.000000000000000000
Margins.Right = 8.000000000000000000
Position.X = 18.000000000000000000
Position.Y = 197.000000000000000000
Size.Width = 334.000000000000000000
Size.Height = 14.000000000000000000
Size.PlatformDefault = False
TextSettings.Font.Size = 10.000000000000000000
TextSettings.FontColor = claWhite
Text = 'Enter a generated TOTP (Time based) secret'
TabOrder = 10
end
object Label7: TLabel
Align = Top
AutoSize = True
StyledSettings = [Family, Style]
Opacity = 0.600000023841857900
Margins.Left = 8.000000000000000000
Margins.Top = 4.000000000000000000
Margins.Right = 8.000000000000000000
Position.X = 18.000000000000000000
Position.Y = 131.000000000000000000
Size.Width = 334.000000000000000000
Size.Height = 14.000000000000000000
Size.PlatformDefault = False
TextSettings.Font.Size = 10.000000000000000000
TextSettings.FontColor = claWhite
Text =
'The issuer is set in the query parameters and as the label prefi' +
'x'
TabOrder = 11
end
object EditAddIssuer: TEdit
Touch.InteractiveGestures = [LongTap, DoubleTap]
Align = Top
TabOrder = 4
TextSettings.Font.Size = 16.000000000000000000
Position.X = 10.000000000000000000
Position.Y = 89.000000000000000000
Margins.Top = 10.000000000000000000
Size.Width = 350.000000000000000000
Size.Height = 38.000000000000000000
Size.PlatformDefault = False
TextPrompt = 'Issuer'
StyledSettings = [Family, Style, FontColor]
end
object EditAddPeriod: TEdit
Touch.InteractiveGestures = [LongTap, DoubleTap]
Align = Top
TabOrder = 3
KeyboardType = DecimalNumberPad
FilterChar = '0123456789'
TextSettings.Font.Size = 16.000000000000000000
Position.X = 10.000000000000000000
Position.Y = 241.000000000000000000
Margins.Top = 30.000000000000000000
Size.Width = 350.000000000000000000
Size.Height = 38.000000000000000000
Size.PlatformDefault = False
TextPrompt = 'Period (default: 30)'
StyledSettings = [Family, Style, FontColor]
end
object Label8: TLabel
Align = Top
AutoSize = True
StyledSettings = [Family, Style]
Opacity = 0.600000023841857900
Margins.Left = 8.000000000000000000
Margins.Top = 4.000000000000000000
Margins.Right = 8.000000000000000000
Position.X = 18.000000000000000000
Position.Y = 283.000000000000000000
Size.Width = 334.000000000000000000
Size.Height = 14.000000000000000000
Size.PlatformDefault = False
TextSettings.Font.Size = 10.000000000000000000
TextSettings.FontColor = claWhite
Text = 'What period used for the secret'
TabOrder = 8
end
object Label9: TLabel
Align = Top
AutoSize = True
StyledSettings = [Family, Style]
Opacity = 0.600000023841857900
Margins.Left = 8.000000000000000000
Margins.Top = 4.000000000000000000
Margins.Right = 8.000000000000000000
Position.X = 18.000000000000000000
Position.Y = 349.000000000000000000
Size.Width = 334.000000000000000000
Size.Height = 14.000000000000000000
Size.PlatformDefault = False
TextSettings.Font.Size = 10.000000000000000000
TextSettings.FontColor = claWhite
Text = 'What algorithm was used for the secret'
TabOrder = 7
end
object EditAddAlgorithm: TEdit
Touch.InteractiveGestures = [LongTap, DoubleTap]
Align = Top
TabOrder = 1
TextSettings.Font.Size = 16.000000000000000000
Position.X = 10.000000000000000000
Position.Y = 307.000000000000000000
Margins.Top = 10.000000000000000000
Size.Width = 350.000000000000000000
Size.Height = 38.000000000000000000
Size.PlatformDefault = False
TextPrompt = 'Algorithm (default: sha1)'
StyledSettings = [Family, Style, FontColor]
end
object Label10: TLabel
Align = Top
AutoSize = True
StyledSettings = [Family, Style]
Opacity = 0.600000023841857900
Margins.Left = 8.000000000000000000
Margins.Top = 4.000000000000000000
Margins.Right = 8.000000000000000000
Position.X = 18.000000000000000000
Position.Y = 415.000000000000000000
Size.Width = 334.000000000000000000
Size.Height = 14.000000000000000000
Size.PlatformDefault = False
TextSettings.Font.Size = 10.000000000000000000
TextSettings.FontColor = claWhite
Text = 'How much digits set for your created secrete'
TabOrder = 9
end
object EditAddDigits: TEdit
Touch.InteractiveGestures = [LongTap, DoubleTap]
Align = Top
TabOrder = 2
KeyboardType = DecimalNumberPad
FilterChar = '0123456789'
TextSettings.Font.Size = 16.000000000000000000
Position.X = 10.000000000000000000
Position.Y = 373.000000000000000000
Margins.Top = 10.000000000000000000
Size.Width = 350.000000000000000000
Size.Height = 38.000000000000000000
Size.PlatformDefault = False
TextPrompt = 'Digits (default: 6)'
StyledSettings = [Family, Style, FontColor]
end
end
end
end
end
object TabItemTest: TTabItem
CustomIcon = <
item
end>
IsSelected = False
Size.Width = 8.000000000000000000
Size.Height = 8.000000000000000000
Size.PlatformDefault = False
StyleLookup = ''
TabOrder = 0
Text = 'Test'
ExplicitSize.cx = 8.000000000000000000
ExplicitSize.cy = 8.000000000000000000
object LayoutTestClient: TLayout
Align = Top
Size.Width = 428.000000000000000000
Size.Height = 481.000000000000000000
Size.PlatformDefault = False
TabOrder = 8
OnResize = LayoutTestClientResize
object LayoutTestContent: TLayout
Align = Center
Padding.Left = 10.000000000000000000
Padding.Right = 10.000000000000000000
Size.Width = 370.000000000000000000
Size.Height = 437.000000000000000000
Size.PlatformDefault = False
TabOrder = 0
object EditSecretKey: TEdit
Touch.InteractiveGestures = [LongTap, DoubleTap]
Align = Top
TabOrder = 2
Text = 'I65VU7K5ZQL7WB4E'
TextSettings.Font.Size = 16.000000000000000000
Position.X = 10.000000000000000000
Position.Y = 92.000000000000000000
Margins.Top = 10.000000000000000000
Size.Width = 350.000000000000000000
Size.Height = 38.000000000000000000
Size.PlatformDefault = False
StyledSettings = [Family, Style, FontColor]
OnChangeTracking = EditSecretKeyChangeTracking
end
object EditToken: TEdit
Touch.InteractiveGestures = [LongTap, DoubleTap]
Align = Top
TabOrder = 1
Text = '000000'
TextSettings.Font.Family = 'Roboto'
TextSettings.Font.Size = 54.000000000000000000
TextSettings.HorzAlign = Center
Position.X = 10.000000000000000000
Position.Y = 222.000000000000000000
Margins.Top = 40.000000000000000000
Size.Width = 350.000000000000000000
Size.Height = 86.000000000000000000
Size.PlatformDefault = False
StyledSettings = [FontColor]
end
object Label1: TLabel
Align = Top
AutoSize = True
StyledSettings = [Family]
Margins.Top = 20.000000000000000000
Position.X = 10.000000000000000000
Position.Y = 60.000000000000000000
Size.Width = 350.000000000000000000
Size.Height = 22.000000000000000000
Size.PlatformDefault = False
TextSettings.Font.Size = 16.000000000000000000
TextSettings.Font.StyleExt = {00070000000000000004000000}
TextSettings.FontColor = claWhite
TextSettings.WordWrap = False
Text = 'YOUR SECRET KEY'
TabOrder = 3
end
object LabelRemainingTime: TLabel
Align = Top
AutoSize = True
StyledSettings = [Family, Size, Style]
Margins.Top = 20.000000000000000000
Margins.Bottom = 2.000000000000000000
Position.X = 10.000000000000000000
Position.Y = 150.000000000000000000
Size.Width = 350.000000000000000000
Size.Height = 16.000000000000000000
Size.PlatformDefault = False
TextSettings.FontColor = xA1FFFFFF
TextSettings.WordWrap = False
Text = 'Updating in 1 seconds'
TabOrder = 4
end
object ProgressBarRemaining: TProgressBar
Align = Top
Orientation = Horizontal
Position.X = 10.000000000000000000
Position.Y = 168.000000000000000000
Size.Width = 350.000000000000000000
Size.Height = 14.000000000000000000
Size.PlatformDefault = False
Value = 35.000000000000000000
end
object Label2: TLabel
Align = Top
AutoSize = True
StyledSettings = [Style]
Position.X = 10.000000000000000000
Size.Width = 350.000000000000000000
Size.Height = 40.000000000000000000
Size.PlatformDefault = False
TextSettings.Font.Family = '(Default)'
TextSettings.Font.Size = 30.000000000000000000
TextSettings.FontColor = claWhite
TextSettings.HorzAlign = Center
Text = 'TOTP Token Generator'
TabOrder = 6
end
end
end
end
object TabItemAuth: TTabItem
CustomIcon = <
item
end>
IsSelected = False
Size.Width = 8.000000000000000000
Size.Height = 8.000000000000000000
Size.PlatformDefault = False
StyleLookup = ''
TabOrder = 0
Text = 'TabItemAuth'
ExplicitSize.cx = 8.000000000000000000
ExplicitSize.cy = 8.000000000000000000
object ButtonAuth: TButton
Align = Center
Size.Width = 245.000000000000000000
Size.Height = 317.000000000000000000
Size.PlatformDefault = False
TabOrder = 0
OnClick = ButtonAuthClick
object Path1: TPath
Align = Center
Data.Path = {
E200000000000000C335C3435C8F9642020000005F46C243C691964202000000
345BC1432893954202000000CD8CC04314AE934202000000295CAA43EC514842
02000000CD2C97430000204202000000CD2C804300002042020000007B945243
0000204202000000B81E2743B81E4D4202000000162EFF4214AE934202000000
0000F44200009A42020000005238E6429A9995420200000071BDDF4200008A42
02000000BCBCD942BDC27C420200000027CADD424A316042020000000000E942
51B85242020000003C221F4390FFE3410200000038564F4380B67D4102000000
CD2C804310008041020000003ECA984310008041020000003E4AAE43803DDA41
02000000B8DEC5438DEB5142020000004DBBC843FE815E420200000034CFC943
E0177B4202000000844BC843BC1E894202000000B366C743B72F914202000000
606AC543406F964202000000C035C343608F964203000000C335C3435C8F9642
0000000020856E42AE47494302000000ADE964424F43494302000000DF8E5B42
4C8248430200000053B85342B81E4743020000003A863E42962E434302000000
C29B39424DC13B43020000009C994842EC513643020000007C14924252B81443
02000000CE4CCC42D8A3F442020000000BD7084315AECF4202000000866B5143
0000824202000000CD2C9743A4708142020000007C94BB433433CF4202000000
86EBCC43F628F44202000000E27ADB43713D144302000000CEECE6439A993543
0200000071CAE843E9093B4302000000652DE8430874424302000000F688E543
67664643020000005D0BE343771F4A43020000002F84DF43531A494302000000
A7A7DD43211F444302000000E994DD43FAEC434302000000FD82DD439CB94343
02000000EC71DD431F85434302000000860BD343AE47254302000000B9DEC543
1F850D4302000000D843B64386EBF94202000000531895432A5CB34202000000
9C5955432A5CB34202000000733D13436766FA42020000009E99E74200000E43
020000006BE6B2420000264302000000D24C89423433444302000000DCA48542
6070474302000000C7637D42536549430200000028856E42AF47494303000000
20856E42AE474943000000009A194C430080F5430200000049024943CF83F543
02000000A10E4643AEDBF443020000009002444334B3F3430200000066E62F43
713DE94302000000000025430080E24302000000CD8C15430000D44302000000
CD8C0543713DC543020000005C8FFA42713DB343020000005C8FFA4285EB9F43
020000005C8FFA425C8F78430200000070FD3743E17A3E43020000005C0F8043
E17A3E43020000000020A443E17A3E43020000000080C1435C8F784302000000
0080C14385EB9F43020000000D98C1435E1CA343020000005C15BF430EC6A543
0200000083E4BB431BDEA54302000000A9B3B84328F6A54302000000F909B643
7773A34302000000ECF1B5439E42A0430200000011F1B5439725A04302000000
11F1B5438C08A04302000000ECF1B54385EB9F4302000000ECF1B54348E18243
02000000F6C89D43E17A564302000000C3158043E17A56430200000020C54443
E17A5643020000006666144348E18243020000006666144385EB9F4302000000
666614433333B143020000003DCA1B43F628C14302000000D7E32943B81ECE43
02000000A4B0384385EBDB4302000000D7E34243CCCCE14302000000F6A85443
F628EB430200000098065943AA92ED430200000098065943423FF14302000000
F6A85443F6A8F3430200000022645243FCCDF4430200000084524F43DB76F543
020000009A194C430080F543030000009A194C430080F54300000000CDECB843
CD4CDF4302000000852BAB43CD4CDF4302000000F6089F4333B3DB4302000000
52189543B89ED44302000000E5E883430E93C843020000005A4E734323EDB443
02000000A5307343A4F09F4302000000ABEC724370BF9C430200000083E27743
680D9A4302000000EC447E436BEB994302000000AA5382436DC9994302000000
B205854359449C4302000000AF2785438E759F430200000064298543919E9F43
0200000064298543A2C79F4302000000AF278543A4F09F4302000000CB318543
46FDB043020000001E918D4333F1C0430200000042939B4300A9CA4302000000
BDC7A3438F6BD043020000000F60AD430029D343020000006BEFB8430029D343
020000001AF6BC43B016D3430200000086F9C043F2AFD243020000006CEFC443
CCF5D14302000000240EC843325CD143020000006C0FCB432885D34302000000
9FA2CB4351E1D64302000000C63ECC43D41BDA43020000009220CA43D038DD43
0200000076E6C64313D7DD4302000000D64BC243F2BFDE4302000000369EBD43
5A3BDF4302000000DEECB843B747DF4303000000CDECB843CD4CDF4300000000
A4B0A1430000F84302000000AE2EA1439AFAF74302000000CDADA043FBE5F743
02000000A430A04390C2F743020000005CCF8D43E27AF243020000003ECA8143
6766EB430200000048616A435D8FDE430200000090024A4348E1CD4302000000
5238384315AEB743020000005238384386EB9F430200000052383843E27A8C43
02000000B81E5843B047794302000000F6687F43B0477943020000009A599343
B047794302000000144EA343E27A8C4302000000144EA34386EB9F4302000000
144EA34390C2AC4302000000140EAE433433B743020000005258BB433433B743
0200000090A2C8433433B743020000009062D34390C2AC43020000009062D343
86EB9F43020000009062D3432A5C654302000000ECD1AD4387EB1B4302000000
162E7F4387EB1B4302000000B0873D4387EB1B4302000000166E01430CD74143
02000000B2C7CC42D9A37C4302000000B2C7BA423E0A8843020000000480B142
A5709343020000000480B14286EB9F43020000000480B142AF47A94302000000
56B8B4423E0AB84302000000C675D042723DCB43020000009D19D5422A5CCE43
020000007E14CF420CD7D14302000000600FC34286EBD24302000000B55AB742
D208D443020000004E40AA42C890D243020000001CCBA5429DA3CF4302000000
D6AEA5420E91CF43020000001994A5425B7ECF4302000000E57AA542866BCF43
02000000602C8F423A34C04302000000F4BE83423120B0430200000054B88342
86EB9F430200000054B8834220859143020000002B5C8E42866B844302000000
F828A3427C14724302000000F8A8E0427C142F43020000002085344316AE0343
02000000162E7F4316AE034302000000152EB44316AE034302000000ECF1DE43
86EB574302000000ECF1DE43CECC9F4302000000ECF1DE43723DB34302000000
B9FECE437C14C343020000005258BB437C14C34302000000EBB1A7437C14C343
02000000B8BE9743723DB34302000000B8BE9743CECC9F430200000000C09743
C4F592430200000000008D430180884302000000846B7F430180884302000000
08D76443018088430200000009574F43A5F092430200000009574F43AFC79F43
0200000009574F43AF47B4430200000098995E430180C74302000000EA917A43
67E6D54302000000F5488843152EE14302000000F5C892436766E74302000000
7A14A3439A19EC43020000003233A643A4F0EC43020000005BEFA743CD4CF043
02000000FF1FA743866BF34302000000EB9AA6435007F643020000005259A443
0DEEF74302000000A3B0A1430200F84303000000A4B0A1430000F843}
Fill.Color = xA7FFFFFF
HitTest = False
Size.Width = 113.000000000000000000
Size.Height = 93.000000000000000000
Size.PlatformDefault = False
Stroke.Kind = None
WrapMode = Fit
end
end
end
object TabItemScan: TTabItem
CustomIcon = <
item
end>
IsSelected = False
Size.Width = 8.000000000000000000
Size.Height = 8.000000000000000000
Size.PlatformDefault = False
StyleLookup = ''
TabOrder = 0
Text = 'TabItemScan'
ExplicitSize.cx = 8.000000000000000000
ExplicitSize.cy = 8.000000000000000000
object RectangleFrame: TRectangle
Align = Center
Fill.Color = claBlack
HitTest = False
Size.Width = 275.000000000000000000
Size.Height = 275.000000000000000000
Size.PlatformDefault = False
Stroke.Color = xC8FFFFFF
Stroke.Thickness = 2.000000000000000000
XRadius = 10.000000000000000000
YRadius = 10.000000000000000000
OnPaint = RectangleFramePaint
object LayoutFrameOverlay: TLayout
Align = Client
ClipChildren = True
Margins.Left = 2.000000000000000000
Margins.Top = 2.000000000000000000
Margins.Right = 2.000000000000000000
Margins.Bottom = 2.000000000000000000
Size.Width = 271.000000000000000000
Size.Height = 271.000000000000000000
Size.PlatformDefault = False
TabOrder = 0
object Rectangle1: TRectangle
Align = Top
Fill.Kind = Gradient
Fill.Gradient.Points = <
item
Color = xFF3EC3FF
Offset = 0.000000000000000000
end
item
Color = x003EC3FF
Offset = 1.000000000000000000
end>
Fill.Gradient.StartPosition.X = 0.500000000000000000
Fill.Gradient.StartPosition.Y = 1.000000000000000000
Fill.Gradient.StopPosition.X = 0.499999970197677600
Fill.Gradient.StopPosition.Y = 0.000000000000000000
Margins.Top = -25.000000000000000000
Position.Y = -25.000000000000000000
Size.Width = 271.000000000000000000
Size.Height = 25.000000000000000000
Size.PlatformDefault = False
Stroke.Kind = None
XRadius = 10.000000000000000000
YRadius = 10.000000000000000000
object FloatAnimation1: TFloatAnimation
Enabled = True
Duration = 2.000000000000000000
Loop = True
PropertyName = 'Margins.Top'
StartValue = -30.000000000000000000
StopValue = 275.000000000000000000
end
end
end
object AniIndicatorCamera: TAniIndicator
Align = Center
Enabled = True
HitTest = False
end
end
object LabelScanError: TLabel
Align = Center
AutoSize = True
StyledSettings = [Style]
Margins.Left = 30.000000000000000000
Margins.Top = 340.000000000000000000
Margins.Right = 30.000000000000000000
Size.Width = 249.000000000000000000
Size.Height = 20.000000000000000000
Size.PlatformDefault = False
TextSettings.Font.Family = 'Roboto'
TextSettings.Font.Size = 16.000000000000000000
TextSettings.FontColor = xFFCB7A7A
TextSettings.HorzAlign = Center
Text = 'Invalid OTP QR'
TabOrder = 1
end
end
end
object Layout3: TLayout
Align = Top
Padding.Left = 20.000000000000000000
Padding.Top = 10.000000000000000000
Padding.Right = 20.000000000000000000
Padding.Bottom = 10.000000000000000000
Size.Width = 428.000000000000000000
Size.Height = 60.000000000000000000
Size.PlatformDefault = False
TabOrder = 2
object Label3: TLabel
Align = Client
StyledSettings = [Style]
Margins.Left = 10.000000000000000000
Margins.Right = 10.000000000000000000
Size.Width = 298.000000000000000000
Size.Height = 40.000000000000000000
Size.PlatformDefault = False
TextSettings.Font.Family = 'Roboto'
TextSettings.Font.Size = 20.000000000000000000
TextSettings.FontColor = claWhite
TextSettings.WordWrap = False
Text = 'HGM Authenticator'
TabOrder = 0
end
object Circle1: TCircle
Align = Right
Fill.Color = xFF23A1B6
Position.X = 378.000000000000000000
Position.Y = 10.000000000000000000
Size.Width = 30.000000000000000000
Size.Height = 40.000000000000000000
Size.PlatformDefault = False
Stroke.Kind = None
object Label4: TLabel
Align = Client
AutoSize = True
StyledSettings = [Family, Size, Style]
Size.Width = 30.000000000000000000
Size.Height = 40.000000000000000000
Size.PlatformDefault = False
TextSettings.FontColor = claWhite
TextSettings.HorzAlign = Center
TextSettings.WordWrap = False
Text = 'H'
TabOrder = 0
end
end
object ButtonBack: TButton
Align = Left
Position.X = 20.000000000000000000
Position.Y = 10.000000000000000000
Size.Width = 40.000000000000000000
Size.Height = 40.000000000000000000
Size.PlatformDefault = False
TabOrder = 1
OnClick = ButtonBackClick
object Path2: TPath
Align = Client
Data.Path = {
26000000000000000000E0410000604101000000CDCC0C410000604101000000
52B856417B1416410200000025065D41A8C60F41020000000000604189410841
02000000000060410000004102000000000060411283E04002000000F4FD5241
0000C04002000000000040410000C04002000000068137410000C04002000000
931830410E2DC6400200000085EB29415C8FD24001000000345E2A40A69B6841
020000004260154023DB6D410200000000000040045674410200000000000040
000080410200000000000040FED485410200000023DB1140D7A3884102000000
1058294075938B410100000085EB2941295CCB410200000093183041BC74CE41
02000000068137410000D04102000000000040410000D041020000000C025341
0000D04102000000000060413BDFC74102000000000060410000C04102000000
000060413BDFBB410200000025065D41AC1CB8410200000052B85641C3F5B441
01000000CDCC0C4100009041010000000000E0410000904102000000FED4E841
00009041020000000000F041FED48841020000000000F0410000804102000000
0000F04104566E4102000000FED4E84100006041020000000000E04100006041
030000000000E04100006041}
Fill.Color = claWhite
HitTest = False
Margins.Left = 10.000000000000000000
Margins.Right = 10.000000000000000000
Size.Width = 20.000000000000000000
Size.Height = 40.000000000000000000
Size.PlatformDefault = False
Stroke.Kind = None
WrapMode = Fit
end
end
end
object TimerUpdate: TTimer
Enabled = False
OnTimer = TimerUpdateTimer
Left = 256
Top = 184
end
object StyleBook: TStyleBook
Styles = <
item
ResourcesBin = {
464D585F5354594C4520322E3501060F546162436F6E74726F6C7374796C6503
D2000609656469747374796C6503CE04061970726F6772657373626172737479
6C655F63697263756C6172036E01061070726F67726573736261727374796C65
033903060B627574746F6E7374796C6503D4040619627574746F6E7374796C65
5F656C6576617465645F69636F6E0353040611616E69696E64696361746F7273
74796C6503870B06166C697374626F786974656D7374796C655F636C65617202
4B005450463007544C61796F757400095374796C654E616D65060F546162436F
6E74726F6C7374796C6505416C69676E070643656E7465720A53697A652E5769
6474680500000000000080F707400B53697A652E486569676874050000000000
0080AF08401453697A652E506C6174666F726D44656661756C74080756697369
626C6508085461624F726465720238000C5442727573684F626A656374000953
74796C654E616D6506107363726F6C6C6261636B67726F756E640B4272757368
2E436F6C6F7207097846464630463046300000005450463007544C61796F7574
00095374796C654E616D650609656469747374796C6505416C69676E07064365
6E7465720A53697A652E57696474680500000000000000D606400B53697A652E
48656967687405000000000000008C04401453697A652E506C6174666F726D44
656661756C74080756697369626C6508085461624F726465720220000A545265
6374616E676C6500095374796C654E616D650602626705416C69676E0708436F
6E74656E74730A46696C6C2E436F6C6F72070978313446464646464607486974
54657374080A53697A652E57696474680500000000000000D606400B53697A65
2E48656967687405000000000000008C04401453697A652E506C6174666F726D
44656661756C74080C5374726F6B652E436F6C6F720709783134464646464646
07585261646975730500000000000000C0004007595261646975730500000000
000000C00040000F54436F6C6F72416E696D6174696F6E00095374796C654E61
6D650614436F6C6F72416E696D6174696F6E315374796C65084475726174696F
6E050000000000CDCCCCFC3F0C50726F70657274794E616D65060C5374726F6B
652E436F6C6F720A537461727456616C75650709783134464646464646095374