RxFPC: add RxKeyboardLayoutLazbel on RxLoginForm

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6445 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
alexs75
2018-05-25 05:59:05 +00:00
parent d5e5df7485
commit 9da45f0c2c
8 changed files with 109 additions and 273 deletions

View File

@ -79,6 +79,10 @@ msgstr "Dato cambiado. Salvar?"
msgid "Database locked: %s" msgid "Database locked: %s"
msgstr "Base de Dato bloqueada: %s" msgstr "Base de Dato bloqueada: %s"
#: rxdconst.sdatabasename1
msgid "Database"
msgstr ""
#: rxdconst.sdbcomboboxfieldnotassigned #: rxdconst.sdbcomboboxfieldnotassigned
msgid "%s:TDBComboBox - DataField not assigned" msgid "%s:TDBComboBox - DataField not assigned"
msgstr "" msgstr ""

View File

@ -74,6 +74,10 @@ msgstr ""
msgid "Database locked: %s" msgid "Database locked: %s"
msgstr "" msgstr ""
#: rxdconst.sdatabasename1
msgid "Database"
msgstr ""
#: rxdconst.sdbcomboboxfieldnotassigned #: rxdconst.sdbcomboboxfieldnotassigned
msgid "%s:TDBComboBox - DataField not assigned" msgid "%s:TDBComboBox - DataField not assigned"
msgstr "" msgstr ""

View File

@ -84,6 +84,10 @@ msgstr "Данные были изменены. Сохранить?"
msgid "Database locked: %s" msgid "Database locked: %s"
msgstr "База данных блокирована: %s" msgstr "База данных блокирована: %s"
#: rxdconst.sdatabasename1
msgid "Database"
msgstr "Имя базы данных"
#: rxdconst.sdbcomboboxfieldnotassigned #: rxdconst.sdbcomboboxfieldnotassigned
msgid "%s:TDBComboBox - DataField not assigned" msgid "%s:TDBComboBox - DataField not assigned"
msgstr "%s:TDBComboBox - Не присвоено свойство DataField" msgstr "%s:TDBComboBox - Не присвоено свойство DataField"

View File

@ -84,6 +84,10 @@ msgstr "Дані були змінені. Зберегти?"
msgid "Database locked: %s" msgid "Database locked: %s"
msgstr "База даних блокована: %s" msgstr "База даних блокована: %s"
#: rxdconst.sdatabasename1
msgid "Database"
msgstr ""
#: rxdconst.sdbcomboboxfieldnotassigned #: rxdconst.sdbcomboboxfieldnotassigned
msgid "%s:TDBComboBox - DataField not assigned" msgid "%s:TDBComboBox - DataField not assigned"
msgstr "%s:TDBComboBox - Не присвоєно властивість DataField" msgstr "%s:TDBComboBox - Не присвоєно властивість DataField"

View File

@ -1,19 +1,19 @@
object RxLoginForm: TRxLoginForm object RxLoginForm: TRxLoginForm
Cursor = crArrow Cursor = crArrow
Left = 458 Left = 458
Height = 203 Height = 230
Top = 193 Top = 193
Width = 455 Width = 455
ActiveControl = UserNameEdit ActiveControl = UserNameEdit
BorderIcons = [biSystemMenu, biHelp] BorderIcons = [biSystemMenu, biHelp]
Caption = 'RxLoginForm' Caption = 'RxLoginForm'
ClientHeight = 203 ClientHeight = 230
ClientWidth = 455 ClientWidth = 455
FormStyle = fsStayOnTop FormStyle = fsStayOnTop
OnCreate = FormCreate OnCreate = FormCreate
OnShow = FormShow OnShow = FormShow
Position = poScreenCenter Position = poScreenCenter
LCLVersion = '0.9.29' LCLVersion = '1.9.0.0'
object AppIcon: TImage object AppIcon: TImage
AnchorSideLeft.Control = Owner AnchorSideLeft.Control = Owner
AnchorSideTop.Control = Owner AnchorSideTop.Control = Owner
@ -178,7 +178,7 @@ object RxLoginForm: TRxLoginForm
AnchorSideRight.Control = Owner AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
Left = 44 Left = 44
Height = 18 Height = 20
Top = 6 Top = 6
Width = 405 Width = 405
Anchors = [akTop, akLeft, akRight] Anchors = [akTop, akLeft, akRight]
@ -192,9 +192,9 @@ object RxLoginForm: TRxLoginForm
AnchorSideBottom.Control = UserNameEdit AnchorSideBottom.Control = UserNameEdit
AnchorSideBottom.Side = asrBottom AnchorSideBottom.Side = asrBottom
Left = 6 Left = 6
Height = 18 Height = 20
Top = 65 Top = 75
Width = 73 Width = 68
Anchors = [akLeft, akBottom] Anchors = [akLeft, akBottom]
BorderSpacing.Left = 6 BorderSpacing.Left = 6
Caption = 'UserName' Caption = 'UserName'
@ -206,9 +206,9 @@ object RxLoginForm: TRxLoginForm
AnchorSideBottom.Control = PasswordEdit AnchorSideBottom.Control = PasswordEdit
AnchorSideBottom.Side = asrBottom AnchorSideBottom.Side = asrBottom
Left = 6 Left = 6
Height = 18 Height = 20
Top = 100 Top = 118
Width = 67 Width = 61
Anchors = [akLeft, akBottom] Anchors = [akLeft, akBottom]
BorderSpacing.Left = 6 BorderSpacing.Left = 6
Caption = 'Password' Caption = 'Password'
@ -223,8 +223,8 @@ object RxLoginForm: TRxLoginForm
AnchorSideRight.Control = Owner AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
Left = 44 Left = 44
Height = 18 Height = 20
Top = 30 Top = 32
Width = 405 Width = 405
Anchors = [akTop, akLeft, akRight] Anchors = [akTop, akLeft, akRight]
BorderSpacing.Around = 6 BorderSpacing.Around = 6
@ -237,9 +237,9 @@ object RxLoginForm: TRxLoginForm
AnchorSideBottom.Control = CustomCombo AnchorSideBottom.Control = CustomCombo
AnchorSideBottom.Side = asrBottom AnchorSideBottom.Side = asrBottom
Left = 6 Left = 6
Height = 18 Height = 20
Top = 137 Top = 160
Width = 67 Width = 59
Anchors = [akLeft, akBottom] Anchors = [akLeft, akBottom]
BorderSpacing.Left = 6 BorderSpacing.Left = 6
Caption = 'Database' Caption = 'Database'
@ -254,10 +254,10 @@ object RxLoginForm: TRxLoginForm
AnchorSideRight.Control = Owner AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
Cursor = crIBeam Cursor = crIBeam
Left = 97 Left = 92
Height = 29 Height = 37
Top = 54 Top = 58
Width = 352 Width = 357
Anchors = [akTop, akLeft, akRight] Anchors = [akTop, akLeft, akRight]
BorderSpacing.Left = 12 BorderSpacing.Left = 12
BorderSpacing.Around = 6 BorderSpacing.Around = 6
@ -270,10 +270,10 @@ object RxLoginForm: TRxLoginForm
AnchorSideRight.Control = UserNameEdit AnchorSideRight.Control = UserNameEdit
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
Cursor = crIBeam Cursor = crIBeam
Left = 97 Left = 92
Height = 29 Height = 37
Top = 89 Top = 101
Width = 352 Width = 357
Anchors = [akTop, akLeft, akRight] Anchors = [akTop, akLeft, akRight]
BorderSpacing.Top = 6 BorderSpacing.Top = 6
EchoMode = emPassword EchoMode = emPassword
@ -286,10 +286,10 @@ object RxLoginForm: TRxLoginForm
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = UserNameEdit AnchorSideRight.Control = UserNameEdit
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
Left = 97 Left = 92
Height = 31 Height = 36
Top = 124 Top = 144
Width = 352 Width = 357
Anchors = [akTop, akLeft, akRight] Anchors = [akTop, akLeft, akRight]
BorderSpacing.Top = 6 BorderSpacing.Top = 6
ItemHeight = 0 ItemHeight = 0
@ -302,10 +302,10 @@ object RxLoginForm: TRxLoginForm
AnchorSideRight.Control = btnCancel AnchorSideRight.Control = btnCancel
AnchorSideBottom.Control = Owner AnchorSideBottom.Control = Owner
AnchorSideBottom.Side = asrBottom AnchorSideBottom.Side = asrBottom
Left = 187 Left = 181
Height = 36 Height = 42
Top = 161 Top = 182
Width = 60 Width = 64
Anchors = [akTop, akRight, akBottom] Anchors = [akTop, akRight, akBottom]
AutoSize = True AutoSize = True
BorderSpacing.Right = 6 BorderSpacing.Right = 6
@ -324,10 +324,10 @@ object RxLoginForm: TRxLoginForm
AnchorSideRight.Control = btnHelp AnchorSideRight.Control = btnHelp
AnchorSideBottom.Control = Owner AnchorSideBottom.Control = Owner
AnchorSideBottom.Side = asrBottom AnchorSideBottom.Side = asrBottom
Left = 253 Left = 251
Height = 36 Height = 42
Top = 161 Top = 182
Width = 95 Width = 97
Anchors = [akRight, akBottom] Anchors = [akRight, akBottom]
AutoSize = True AutoSize = True
BorderSpacing.Around = 6 BorderSpacing.Around = 6
@ -345,8 +345,8 @@ object RxLoginForm: TRxLoginForm
AnchorSideBottom.Control = Owner AnchorSideBottom.Control = Owner
AnchorSideBottom.Side = asrBottom AnchorSideBottom.Side = asrBottom
Left = 354 Left = 354
Height = 36 Height = 42
Top = 161 Top = 182
Width = 95 Width = 95
Anchors = [akTop, akRight, akBottom] Anchors = [akTop, akRight, akBottom]
AutoSize = True AutoSize = True
@ -362,9 +362,9 @@ object RxLoginForm: TRxLoginForm
AnchorSideBottom.Control = Owner AnchorSideBottom.Control = Owner
AnchorSideBottom.Side = asrBottom AnchorSideBottom.Side = asrBottom
Left = 6 Left = 6
Height = 36 Height = 42
Top = 161 Top = 182
Width = 78 Width = 69
Anchors = [akTop, akLeft, akBottom] Anchors = [akTop, akLeft, akBottom]
AutoSize = True AutoSize = True
BorderSpacing.Left = 6 BorderSpacing.Left = 6
@ -373,4 +373,28 @@ object RxLoginForm: TRxLoginForm
OnClick = btnMoreClick OnClick = btnMoreClick
TabOrder = 6 TabOrder = 6
end end
object Label1: TLabel
AnchorSideLeft.Control = btnMore
AnchorSideLeft.Side = asrBottom
AnchorSideBottom.Control = Owner
AnchorSideBottom.Side = asrBottom
Left = 81
Height = 20
Top = 204
Width = 35
Anchors = [akLeft, akBottom]
BorderSpacing.Around = 6
Caption = ' RU '
Color = clBlue
Font.Color = clWhite
ParentColor = False
ParentFont = False
Transparent = False
end
object Timer1: TTimer
Interval = 300
OnTimer = Timer1Timer
Left = 45
Top = 116
end
end end

View File

@ -1,219 +0,0 @@
{ This is an automatically generated lazarus resource file }
LazarusResources.Add('TRxLoginForm','FORMDATA',[
'TPF0'#12'TRxLoginForm'#11'RxLoginForm'#6'Cursor'#7#7'crArrow'#4'Left'#3#202#1
+#6'Height'#3#203#0#3'Top'#3#193#0#5'Width'#3#199#1#13'ActiveControl'#7#12'Us'
+'erNameEdit'#11'BorderIcons'#11#12'biSystemMenu'#6'biHelp'#0#7'Caption'#6#11
+'RxLoginForm'#12'ClientHeight'#3#203#0#11'ClientWidth'#3#199#1#9'FormStyle'#7
+#11'fsStayOnTop'#8'OnCreate'#7#10'FormCreate'#6'OnShow'#7#8'FormShow'#8'Posi'
+'tion'#7#14'poScreenCenter'#10'LCLVersion'#6#6'0.9.29'#0#6'TImage'#7'AppIcon'
+#22'AnchorSideLeft.Control'#7#5'Owner'#21'AnchorSideTop.Control'#7#5'Owner'#4
+'Left'#2#6#6'Height'#2' '#3'Top'#2#6#5'Width'#2' '#8'AutoSize'#9#20'BorderSp'
+'acing.Around'#2#6#0#0#6'TImage'#8'KeyImage'#22'AnchorSideLeft.Control'#7#5
+'Owner'#21'AnchorSideTop.Control'#7#5'Owner'#4'Left'#2#6#6'Height'#2' '#3'To'
+'p'#2#6#5'Width'#2' '#8'AutoSize'#9#20'BorderSpacing.Around'#2#6#12'Picture.'
+'Data'#10#200#16#0#0#5'TIcon'#190#16#0#0#0#0#1#0#1#0' '#0#0#1#0' '#0#168#16
+#0#0#22#0#0#0'('#0#0#0' '#0#0#0'@'#0#0#0#1#0' '#0#0#0#0#0#0#16#0#0'd'#0#0#0
+'d'#0#0#0#0#0#0#0#0#0#0#0#0#0#0#255#0#0#0#255#0#0#0#255#0#0#0#255#0#0#0#255#0
+#0#0#255#0#0#0#255#0#0#0#255#0#0#0#255#0#0#0#255#0#0#0#255#0#0#0#255#0#0#0
+#255#0#0#0#255#0#0#0#255#0#0#0#255#0#0#0#255#0#0#0#255#0#0#0#255#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#128#128#128#255#255#255#255#255#255#255#255#255#255#255#255
+#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255
+#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255
+#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255
+#0#0#0#255#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#128#128#128#255#255#255#255#255#255
+#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255
+#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255
+#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255
+#255#255#255#255#255#255#0#0#0#255#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#128#128#128
+#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255
+#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255
+#255#255#255#0#0#0#255#0#0#0#255#255#255#255#255#0#0#0#255#0#0#0#255#255#255
+#255#255#255#255#255#255#0#0#0#255#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#128#128#128
+#255#255#255#255#255#255#255#255#255#128#128#128#255#0#0#0#255#0#0#0#255#255
+#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255
+#0#0#0#255#0#0#0#255#255#255#255#255#0#0#0#255#0#0#0#255#255#255#255#255#255
+#255#255#255#0#0#0#255#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#128#128#128#255#255#255
+#255#255#128#128#128#255#0#0#0#255#128#128#128#255#0#0#0#255#0#0#0#255#255
+#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#0#0#0#255#0#0#0
+#255#255#255#255#255#0#0#0#255#0#0#0#255#255#255#255#255#255#255#255#255#0#0
+#0#255#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#128#128#128#255#255#255#255#255#0#0#0#255
+#0#0#0#255#255#255#255#255#255#255#255#255#0#0#0#255#0#0#0#255#0#0#0#255#0#0
+#0#255#0#0#0#255#0#0#0#255#0#0#0#255#0#0#0#255#0#0#0#255#0#0#0#255#0#0#0#255
+#255#255#255#255#0#0#0#255#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#128#128#128#255#255
+#255#255#255#0#0#0#255#0#0#0#255#255#255#255#255#255#255#255#255#0#0#0#255#0
+#0#0#255#0#0#0#255#0#0#0#255#0#0#0#255#0#0#0#255#0#0#0#255#0#0#0#255#0#0#0
+#255#0#0#0#255#0#0#0#255#255#255#255#255#0#0#0#255#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#128#128#128#255#255#255#255#255#128#128#128#255#0#0#0#255#128#128#128#255
+#0#0#0#255#0#0#0#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255
+#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255
+#255#255#255#255#255#255#255#255#255#255#255#0#0#0#255#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#128#128#128#255#255#255#255#255#255#255#255#255#128#128#128#255#0#0#0
+#255#0#0#0#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255
+#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255
+#255#255#255#255#255#255#255#255#255#255#255#255#255#255#0#0#0#255#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#128#128#128#255#255#255#255#255#255#255#255#255#255#255
+#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255
+#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255
,#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255
+#255#0#0#0#255#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#128#128#128#255#128#128#128#255
+#128#128#128#255#128#128#128#255#128#128#128#255#128#128#128#255#128#128#128
+#255#128#128#128#255#128#128#128#255#128#128#128#255#128#128#128#255#128#128
+#128#255#128#128#128#255#128#128#128#255#128#128#128#255#128#128#128#255#128
+#128#128#255#128#128#128#255#0#0#0#255#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
,#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#6'TLabel'#9'HintLabel'#22
+'AnchorSideLeft.Control'#7#7'AppIcon'#19'AnchorSideLeft.Side'#7#9'asrBottom'
+#21'AnchorSideTop.Control'#7#5'Owner'#23'AnchorSideRight.Control'#7#5'Owner'
+#20'AnchorSideRight.Side'#7#9'asrBottom'#4'Left'#2','#6'Height'#2#18#3'Top'#2
+#6#5'Width'#3#149#1#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0#20'BorderS'
+'pacing.Around'#2#6#7'Caption'#6#9'HintLabel'#11'ParentColor'#8#13'ShowAccel'
+'Char'#8#0#0#6'TLabel'#13'UserNameLabel'#22'AnchorSideLeft.Control'#7#5'Owne'
+'r'#24'AnchorSideBottom.Control'#7#12'UserNameEdit'#21'AnchorSideBottom.Side'
+#7#9'asrBottom'#4'Left'#2#6#6'Height'#2#18#3'Top'#2'A'#5'Width'#2'I'#7'Ancho'
+'rs'#11#6'akLeft'#8'akBottom'#0#18'BorderSpacing.Left'#2#6#7'Caption'#6#8'Us'
+'erName'#12'FocusControl'#7#12'UserNameEdit'#11'ParentColor'#8#0#0#6'TLabel'
+#13'PasswordLabel'#22'AnchorSideLeft.Control'#7#5'Owner'#24'AnchorSideBottom'
+'.Control'#7#12'PasswordEdit'#21'AnchorSideBottom.Side'#7#9'asrBottom'#4'Lef'
+'t'#2#6#6'Height'#2#18#3'Top'#2'd'#5'Width'#2'C'#7'Anchors'#11#6'akLeft'#8'a'
+'kBottom'#0#18'BorderSpacing.Left'#2#6#7'Caption'#6#8'Password'#12'FocusCont'
+'rol'#7#12'PasswordEdit'#11'ParentColor'#8#0#0#6'TLabel'#13'AppTitleLabel'#22
+'AnchorSideLeft.Control'#7#7'AppIcon'#19'AnchorSideLeft.Side'#7#9'asrBottom'
+#21'AnchorSideTop.Control'#7#9'HintLabel'#18'AnchorSideTop.Side'#7#9'asrBott'
+'om'#23'AnchorSideRight.Control'#7#5'Owner'#20'AnchorSideRight.Side'#7#9'asr'
+'Bottom'#4'Left'#2','#6'Height'#2#18#3'Top'#2#30#5'Width'#3#149#1#7'Anchors'
+#11#5'akTop'#6'akLeft'#7'akRight'#0#20'BorderSpacing.Around'#2#6#7'Caption'#6
+#13'AppTitleLabel'#11'ParentColor'#8#13'ShowAccelChar'#8#0#0#6'TLabel'#13'Da'
+'taBaseLabel'#22'AnchorSideLeft.Control'#7#5'Owner'#24'AnchorSideBottom.Cont'
+'rol'#7#11'CustomCombo'#21'AnchorSideBottom.Side'#7#9'asrBottom'#4'Left'#2#6
+#6'Height'#2#18#3'Top'#3#137#0#5'Width'#2'C'#7'Anchors'#11#6'akLeft'#8'akBot'
+'tom'#0#18'BorderSpacing.Left'#2#6#7'Caption'#6#8'Database'#12'FocusControl'
+#7#11'CustomCombo'#11'ParentColor'#8#0#0#5'TEdit'#12'UserNameEdit'#22'Anchor'
+'SideLeft.Control'#7#13'UserNameLabel'#19'AnchorSideLeft.Side'#7#9'asrBottom'
+#21'AnchorSideTop.Control'#7#13'AppTitleLabel'#18'AnchorSideTop.Side'#7#9'as'
+'rBottom'#23'AnchorSideRight.Control'#7#5'Owner'#20'AnchorSideRight.Side'#7#9
+'asrBottom'#6'Cursor'#7#7'crIBeam'#4'Left'#2'a'#6'Height'#2#29#3'Top'#2'6'#5
+'Width'#3'`'#1#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0#18'BorderSpacin'
+'g.Left'#2#12#20'BorderSpacing.Around'#2#6#8'TabOrder'#2#0#0#0#5'TEdit'#12'P'
+'asswordEdit'#22'AnchorSideLeft.Control'#7#12'UserNameEdit'#21'AnchorSideTop'
+'.Control'#7#12'UserNameEdit'#18'AnchorSideTop.Side'#7#9'asrBottom'#23'Ancho'
+'rSideRight.Control'#7#12'UserNameEdit'#20'AnchorSideRight.Side'#7#9'asrBott'
+'om'#6'Cursor'#7#7'crIBeam'#4'Left'#2'a'#6'Height'#2#29#3'Top'#2'Y'#5'Width'
+#3'`'#1#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0#17'BorderSpacing.Top'#2
+#6#8'EchoMode'#7#10'emPassword'#12'PasswordChar'#6#1'*'#8'TabOrder'#2#1#0#0#9
+'TComboBox'#11'CustomCombo'#22'AnchorSideLeft.Control'#7#12'UserNameEdit'#21
+'AnchorSideTop.Control'#7#12'PasswordEdit'#18'AnchorSideTop.Side'#7#9'asrBot'
+'tom'#23'AnchorSideRight.Control'#7#12'UserNameEdit'#20'AnchorSideRight.Side'
+#7#9'asrBottom'#4'Left'#2'a'#6'Height'#2#31#3'Top'#2'|'#5'Width'#3'`'#1#7'An'
+'chors'#11#5'akTop'#6'akLeft'#7'akRight'#0#17'BorderSpacing.Top'#2#6#10'Item'
+'Height'#2#0#5'Style'#7#14'csDropDownList'#8'TabOrder'#2#2#0#0#7'TBitBtn'#5
+'btnOK'#22'AnchorSideLeft.Control'#7#12'PasswordEdit'#21'AnchorSideTop.Contr'
+'ol'#7#9'btnCancel'#23'AnchorSideRight.Control'#7#9'btnCancel'#24'AnchorSide'
+'Bottom.Control'#7#5'Owner'#21'AnchorSideBottom.Side'#7#9'asrBottom'#4'Left'
+#3#187#0#6'Height'#2'$'#3'Top'#3#161#0#5'Width'#2'<'#7'Anchors'#11#5'akTop'#7
+'akRight'#8'akBottom'#0#8'AutoSize'#9#19'BorderSpacing.Right'#2#6#20'BorderS'
,'pacing.Bottom'#2#6#25'BorderSpacing.InnerBorder'#2#2#7'Caption'#6#5'&'#208
+#158#208#154#7'Default'#9#4'Kind'#7#4'bkOK'#11'ModalResult'#2#1#7'OnClick'#7
+#10'btnOKClick'#8'TabOrder'#2#3#0#0#7'TBitBtn'#9'btnCancel'#21'AnchorSideTop'
+'.Control'#7#11'CustomCombo'#18'AnchorSideTop.Side'#7#9'asrBottom'#23'Anchor'
+'SideRight.Control'#7#7'btnHelp'#24'AnchorSideBottom.Control'#7#5'Owner'#21
+'AnchorSideBottom.Side'#7#9'asrBottom'#4'Left'#3#253#0#6'Height'#2'$'#3'Top'
+#3#161#0#5'Width'#2'_'#7'Anchors'#11#7'akRight'#8'akBottom'#0#8'AutoSize'#9
+#20'BorderSpacing.Around'#2#6#25'BorderSpacing.InnerBorder'#2#2#6'Cancel'#9#7
+'Caption'#6#12#208#158#209#130#208#188#208#181#208#189#208#176#4'Kind'#7#8'b'
+'kCancel'#11'ModalResult'#2#2#8'TabOrder'#2#4#0#0#7'TBitBtn'#7'btnHelp'#21'A'
+'nchorSideTop.Control'#7#9'btnCancel'#23'AnchorSideRight.Control'#7#5'Owner'
+#20'AnchorSideRight.Side'#7#9'asrBottom'#24'AnchorSideBottom.Control'#7#5'Ow'
+'ner'#21'AnchorSideBottom.Side'#7#9'asrBottom'#4'Left'#3'b'#1#6'Height'#2'$'
+#3'Top'#3#161#0#5'Width'#2'_'#7'Anchors'#11#5'akTop'#7'akRight'#8'akBottom'#0
+#8'AutoSize'#9#19'BorderSpacing.Right'#2#6#20'BorderSpacing.Bottom'#2#6#7'Ca'
+'ption'#6#15'&'#208#161#208#191#209#128#208#176#208#178#208#186#208#176#4'Ki'
+'nd'#7#6'bkHelp'#8'TabOrder'#2#5#0#0#7'TBitBtn'#7'btnMore'#22'AnchorSideLeft'
+'.Control'#7#5'Owner'#21'AnchorSideTop.Control'#7#9'btnCancel'#24'AnchorSide'
+'Bottom.Control'#7#5'Owner'#21'AnchorSideBottom.Side'#7#9'asrBottom'#4'Left'
+#2#6#6'Height'#2'$'#3'Top'#3#161#0#5'Width'#2'N'#7'Anchors'#11#5'akTop'#6'ak'
+'Left'#8'akBottom'#0#8'AutoSize'#9#18'BorderSpacing.Left'#2#6#20'BorderSpaci'
+'ng.Bottom'#2#6#7'Caption'#6#7'More >>'#7'OnClick'#7#12'btnMoreClick'#8'TabO'
+'rder'#2#6#0#0#0
]);

View File

@ -169,6 +169,8 @@ type
KeyImage: TImage; KeyImage: TImage;
HintLabel: TLabel; HintLabel: TLabel;
btnOK: TBitBtn; btnOK: TBitBtn;
Label1: TLabel;
Timer1: TTimer;
UserNameLabel: TLabel; UserNameLabel: TLabel;
PasswordLabel: TLabel; PasswordLabel: TLabel;
UserNameEdit: TEdit; UserNameEdit: TEdit;
@ -180,6 +182,7 @@ type
procedure FormCreate(Sender: TObject); procedure FormCreate(Sender: TObject);
procedure btnOKClick(Sender: TObject); procedure btnOKClick(Sender: TObject);
procedure FormShow(Sender: TObject); procedure FormShow(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
private private
FSelectDatabase: Boolean; FSelectDatabase: Boolean;
FUnlockMode: Boolean; FUnlockMode: Boolean;
@ -206,7 +209,7 @@ function CreateLoginDialog(UnlockMode, ASelectDatabase: Boolean;
implementation implementation
uses uses
Registry, IniFiles, RxAppUtils, RxDConst, rxlclutils, RxConst; Registry, IniFiles, RxAppUtils, RxDConst, rxlclutils, RxConst, LazUTF8;
const const
keyLoginSection = 'Login Dialog'; keyLoginSection = 'Login Dialog';
@ -216,6 +219,7 @@ const
keyLastLoginFormDetailStatus = 'Last Logged Detail Status'; keyLastLoginFormDetailStatus = 'Last Logged Detail Status';
keyLastLoginFormDetailSelected = 'Last Logged Selected Detail'; keyLastLoginFormDetailSelected = 'Last Logged Selected Detail';
{$R *.lfm}
function CreateLoginDialog(UnlockMode, ASelectDatabase: Boolean; function CreateLoginDialog(UnlockMode, ASelectDatabase: Boolean;
FormShowEvent, OkClickEvent: TNotifyEvent): TRxLoginForm; FormShowEvent, OkClickEvent: TNotifyEvent): TRxLoginForm;
@ -257,7 +261,7 @@ destructor TRxCustomLogin.Destroy;
begin begin
if FLocked then if FLocked then
begin begin
// Application.UnhookMainWindow(UnlockHook); //Application.AddOnActivateHandler(UnlockHook);
FLocked := False; FLocked := False;
end; end;
FreeAndNil(FDetailItems); FreeAndNil(FDetailItems);
@ -448,14 +452,16 @@ function TRxCustomLogin.UnlockHook(var Message: TLMessage): Boolean;
var var
Popup: HWnd; Popup: HWnd;
begin begin
(* with Application do (*
if IsWindowVisible(Application.Handle) and IsWindowEnabled(Handle) then with Application do
if IsWindowVisible(Application.MainForm.Handle) and IsWindowEnabled(Application.MainForm.Handle) then
{$IFDEF WIN32} {$IFDEF WIN32}
SetForegroundWindow(Handle); SetForegroundWindow(Handle);
{$ELSE} {$ELSE}
BringWindowToTop(Handle); BringWindowToTop(Application.MainForm.Handle);
{$ENDIF} {$ENDIF}
if FUnlockDlgShowing then begin if FUnlockDlgShowing then
begin
Popup := GetLastActivePopup(Application.Handle); Popup := GetLastActivePopup(Application.Handle);
if (Popup <> 0) and IsWindowVisible(Popup) and if (Popup <> 0) and IsWindowVisible(Popup) and
(WindowClassName(Popup) = TRxLoginForm.ClassName) then (WindowClassName(Popup) = TRxLoginForm.ClassName) then
@ -465,20 +471,22 @@ function TRxCustomLogin.UnlockHook(var Message: TLMessage): Boolean;
{$ELSE} {$ELSE}
BringWindowToTop(Popup); BringWindowToTop(Popup);
{$ENDIF} {$ENDIF}
end; //*) end;
Result := False; Result := False;
(* Exit; Exit;
end; end;
*)
FUnlockDlgShowing := True; FUnlockDlgShowing := True;
try try
Result := DoUnlockDialog; Result := DoUnlockDialog;
finally finally
FUnlockDlgShowing := False; FUnlockDlgShowing := False;
end; end;
if Result then begin { if Result then
begin
Application.UnhookMainWindow(UnlockHook); Application.UnhookMainWindow(UnlockHook);
FLocked := False; FLocked := False;
end;*) end;}
end; end;
begin begin
@ -489,7 +497,8 @@ begin
{ LM_QUERYOPEN: { LM_QUERYOPEN:
begin begin
UnlockHook := not DoUnlock; UnlockHook := not DoUnlock;
end;} end;
}
LM_SHOWWINDOW: LM_SHOWWINDOW:
if Bool(WParam) then begin if Bool(WParam) then begin
UnlockHook := not DoUnlock; UnlockHook := not DoUnlock;
@ -696,7 +705,7 @@ begin
if FSelectDatabase then if FSelectDatabase then
begin begin
ClientHeight := CustomCombo.Top + PasswordEdit.Top - UserNameEdit.Top; ClientHeight := CustomCombo.Top + PasswordEdit.Top - UserNameEdit.Top;
S := SDatabaseName; S := SDatabaseName1;
I := Pos(':', S); I := Pos(':', S);
if I = 0 then I := Length(S); if I = 0 then I := Length(S);
DataBaseLabel.Caption := '&' + Copy(S, 1, I); DataBaseLabel.Caption := '&' + Copy(S, 1, I);
@ -706,6 +715,8 @@ begin
DataBaseLabel.Visible := False; DataBaseLabel.Visible := False;
CustomCombo.Visible := False; CustomCombo.Visible := False;
btnMore.Visible := False; btnMore.Visible := False;
Label1.AnchorSideLeft.Control:=Self;
Label1.AnchorSideLeft.Side:=asrLeft;
end; end;
SetShowDetailParams(ShowDetailParams); SetShowDetailParams(ShowDetailParams);
@ -729,6 +740,11 @@ begin
FAttempt := 0; FAttempt := 0;
end; end;
procedure TRxLoginForm.Timer1Timer(Sender: TObject);
begin
Label1.Caption:=' ' + UTF8UpperCase(UTF8Copy(RxGetKeyboardLayoutName, 1, 2)) + ' ';
end;
procedure TRxLoginForm.SetShowDetailParams(const AValue: boolean); procedure TRxLoginForm.SetShowDetailParams(const AValue: boolean);
begin begin
DataBaseLabel.Visible:=AValue; DataBaseLabel.Visible:=AValue;
@ -765,6 +781,4 @@ begin
FSelectDatabase:=rloCustomSelect in AValue; FSelectDatabase:=rloCustomSelect in AValue;
end; end;
initialization
{$I rxlogin.lrs}
end. end.

View File

@ -81,6 +81,7 @@ resourcestring
SExprBadCompare = 'Compare opertion needs field and const'; SExprBadCompare = 'Compare opertion needs field and const';
SConfirmSave = 'Data changed. Save?'; SConfirmSave = 'Data changed. Save?';
SDatabaseName = 'Database locked: %s'; SDatabaseName = 'Database locked: %s';
SDatabaseName1 = 'Database';
SUnlockCaption = 'Unlock'; SUnlockCaption = 'Unlock';
SUnlockHint = 'Enter your password'; SUnlockHint = 'Enter your password';
SDeleteMultipleRecords = 'Delete all selected records?'; SDeleteMultipleRecords = 'Delete all selected records?';