mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-07 04:10:44 +02:00
IDE, Fields Editor corrections and improvements, from Marcelo B Paula, issue #17762
git-svn-id: trunk@27965 -
This commit is contained in:
parent
9cabb64548
commit
3bae98a73f
@ -1,31 +1,100 @@
|
||||
object DSFieldsEditorFrm: TDSFieldsEditorFrm
|
||||
Left = 472
|
||||
Height = 288
|
||||
Height = 334
|
||||
Top = 230
|
||||
Width = 215
|
||||
Width = 257
|
||||
HorzScrollBar.Page = 214
|
||||
VertScrollBar.Page = 287
|
||||
Caption = 'Fields Editor'
|
||||
ClientHeight = 288
|
||||
ClientWidth = 215
|
||||
ClientHeight = 334
|
||||
ClientWidth = 257
|
||||
OnClose = FieldsEditorFrmClose
|
||||
OnDestroy = FieldsEditorFrmDestroy
|
||||
LCLVersion = '0.9.29'
|
||||
object FieldsListBox: TListBox
|
||||
Left = 0
|
||||
Height = 288
|
||||
Top = 0
|
||||
Width = 215
|
||||
Height = 302
|
||||
Top = 32
|
||||
Width = 257
|
||||
Align = alClient
|
||||
ItemHeight = 0
|
||||
MultiSelect = True
|
||||
OnClick = ListBox1Click
|
||||
OnDrawItem = FieldsListBoxDrawItem
|
||||
OnKeyDown = FieldsListBoxKeyDown
|
||||
PopupMenu = PopupMenu1
|
||||
Style = lbOwnerDrawVariable
|
||||
TabOrder = 0
|
||||
end
|
||||
object tbCommands: TToolBar
|
||||
Left = 0
|
||||
Top = 0
|
||||
Width = 257
|
||||
AutoSize = True
|
||||
ButtonHeight = 30
|
||||
ButtonWidth = 34
|
||||
ParentShowHint = False
|
||||
ShowHint = True
|
||||
TabOrder = 1
|
||||
object tbAddFld: TToolButton
|
||||
Left = 1
|
||||
Top = 2
|
||||
Action = AddFieldsActn
|
||||
end
|
||||
object tbDeleteFld: TToolButton
|
||||
Left = 35
|
||||
Top = 2
|
||||
Action = DeleteFieldsActn
|
||||
end
|
||||
object ToolButton4: TToolButton
|
||||
Left = 69
|
||||
Top = 2
|
||||
Width = 4
|
||||
Caption = 'ToolButton4'
|
||||
Style = tbsDivider
|
||||
end
|
||||
object tbNewFld: TToolButton
|
||||
Left = 73
|
||||
Top = 2
|
||||
Action = NewActn
|
||||
end
|
||||
object ToolButton5: TToolButton
|
||||
Left = 107
|
||||
Top = 2
|
||||
Width = 4
|
||||
Caption = 'ToolButton5'
|
||||
Style = tbsDivider
|
||||
end
|
||||
object tbMoveUp: TToolButton
|
||||
Left = 111
|
||||
Top = 2
|
||||
Action = MoveUpActn
|
||||
end
|
||||
object tbMoveDown: TToolButton
|
||||
Left = 145
|
||||
Top = 2
|
||||
Action = MoveDownActn
|
||||
end
|
||||
object ToolButton8: TToolButton
|
||||
Left = 179
|
||||
Top = 2
|
||||
Width = 4
|
||||
Caption = 'ToolButton8'
|
||||
Style = tbsDivider
|
||||
end
|
||||
object tbSelect: TToolButton
|
||||
Left = 183
|
||||
Top = 2
|
||||
Action = SelectAllActn
|
||||
end
|
||||
object tbUnselect: TToolButton
|
||||
Left = 217
|
||||
Top = 2
|
||||
Action = UnselectAllActn
|
||||
end
|
||||
end
|
||||
object PopupMenu1: TPopupMenu
|
||||
left = 32
|
||||
left = 64
|
||||
top = 144
|
||||
object MenuItem1: TMenuItem
|
||||
Action = AddFieldsActn
|
||||
@ -58,7 +127,7 @@ object DSFieldsEditorFrm: TDSFieldsEditorFrm
|
||||
end
|
||||
object ActionList1: TActionList
|
||||
OnUpdate = ActionList1Update
|
||||
left = 120
|
||||
left = 152
|
||||
top = 144
|
||||
object AddFieldsActn: TAction
|
||||
Category = 'Fields'
|
||||
@ -100,4 +169,171 @@ object DSFieldsEditorFrm: TDSFieldsEditorFrm
|
||||
OnExecute = UnselectAllActnExecute
|
||||
end
|
||||
end
|
||||
object Fields: TImageList
|
||||
left = 64
|
||||
top = 200
|
||||
Bitmap = {
|
||||
4C69050000001000000010000000FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF000E80AAFF0E80AAFF0E80AAFF0E80AAFF0E80
|
||||
AAFF0E80AAFF0E80AAFFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF000E80AAFFF1FFFFFFDEFFFFFFA3DEEFFFA0DDEDFFB6EA
|
||||
F7FFC8F3F9FFD4FCFFFF0E80AAFFFF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF000E80AAFFEEFDFFFFCDF7FFFFCEF8FFFFAEDBE7FF2086ADFF0E80
|
||||
AAFF077CA7FFD6FEFFFF0E80AAFFFF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF000E80AAFFBBF3FFFFBDF3FFFFC3F3FFFFD9FDFFFFDFF5F7FF248A
|
||||
B0FF0E80AAFFDFFFFFFF0E80AAFFFF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF000E80AAFF94F0FFFF98ECFFFFA1EEFFFFAAEFFFFFC0F9FFFFD6F1
|
||||
F5FF2E8EB2FFD4FAFEFF0E80AAFFFF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF000E80AAFF6CEAFFFF6FE3FFFF77E5FFFF82E7FFFF88E8FFFFA2F1
|
||||
FFFF98E4F7FFAEF5FFFF0E80AAFFFF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF000E80AAFF3EE0FFFF49DCFEFF52DDFEFF5BDFFEFF64E2FFFF6CE3
|
||||
FEFF7AE8FFFF88F0FFFF0E80AAFFFF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF000E80AAFF1DB8DEFF2CC1E7FF1BD5FFFF27DAFFFF31DEFFFF3BE0FFFF44E1
|
||||
FFFF51E8FFFF0E80AAFFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF000E80
|
||||
AAFF1DB9E0FF9CD0E1FF4CE5FFFF17DAFFFF0E80AAFF0E80AAFF0E80AAFF0E80
|
||||
AAFF0E80AAFFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF000E80AAFF2EBA
|
||||
DEFF9CCDDEFF0E80AAFF098CB8FF0E80AAFFFF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF000E80AAFF3FBDDEFFA1D2
|
||||
E2FF0E80AAFFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF00FF00FF000E80AAFF4EBEDCFF9ECDDDFF98F7
|
||||
FFFF2FA7CCFFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF000E80AAFF5DBFDBFFA0CEDFFFB2FBFFFF6DD4
|
||||
EDFF0E80AAFFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF000F82ABFFA2D2E2FFD7FFFFFF93E4F5FF1887
|
||||
AFFFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF00FF00FF000E80AAFF0E80AAFF0E80AAFFFF00
|
||||
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00E6C2
|
||||
A7FFC47642FFC47642FFC47642FFC47642FFC47642FFC47642FFE6C2A7FFFF00
|
||||
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00E6C2A7FFC47642FFC476
|
||||
42FFF3E1D3FFFFFFFFFFF3E1D3FFECD1BDFFE6C2A7FFDFB291FFC47642FFC476
|
||||
42FFE6C2A7FFFF00FF00FF00FF00FF00FF00FF00FF00C47642FFD69B70FFDFB2
|
||||
91FFECD1BDFFF3E1D3FFECD1BDFFE6C2A7FFDFB291FFD9A37BFFD69B70FFD293
|
||||
64FFC47642FFFF00FF00FF00FF00FF00FF00FF00FF00D29364FFC47642FFC476
|
||||
42FFE6C2A7FFECD1BDFFE6C2A7FFDFB291FFD9A37BFFD69B70FFC47642FFC476
|
||||
42FFD29364FFFF00FF00FF00FF00FF00FF00FF00FF00D29364FFD9A37BFFDFB2
|
||||
91FFC47642FFC47642FFC47642FFC47642FFC47642FFC47642FFD9A37BFFD69B
|
||||
70FFD29364FFFF00FF00FF00FF00FF00FF00FF00FF00C47642FFD9A37BFFDFB2
|
||||
91FFECD1BDFFFFFFFFFFF3E1D3FFECD1BDFFE6C2A7FFDFB291FFD9A37BFFD69B
|
||||
70FFC47642FFFF00FF00FF00FF00FF00FF00FF00FF00D29364FFC57845FFC476
|
||||
42FFECD1BDFFFFFFFFFFF3E1D3FFECD1BDFFE6C2A7FFDFB291FFC47642FFC476
|
||||
42FFD29364FFFF00FF00FF00FF00FF00FF00FF00FF00D29364FFD9A37BFFDFB2
|
||||
91FFC47642FFC47642FFC47642FFC47642FFC47642FFC47642FFD9A37BFFD69B
|
||||
70FFD29364FFFF00FF00FF00FF00FF00FF00FF00FF00C47642FFD9A37BFFDFB2
|
||||
91FFECD1BDFFFFFFFFFFF3E1D3FFECD1BDFFE6C2A7FFDFB291FFD9A37BFFD69B
|
||||
70FFC47642FFFF00FF00FF00FF00FF00FF00FF00FF00D29364FFC57845FFC476
|
||||
42FFECD1BDFFFFFFFFFFF3E1D3FFECD1BDFFE6C2A7FFDFB291FFC47642FFC476
|
||||
42FFD29364FFFF00FF00FF00FF00FF00FF00FF00FF00D29364FFD9A37BFFDFB2
|
||||
91FFC47642FFC47642FFC47642FFC47642FFC47642FFC47642FFD9A37BFFD69B
|
||||
70FFD29364FFFF00FF00FF00FF00FF00FF00FF00FF00C57845FFD9A37BFFDFB2
|
||||
91FFECD1BDFFFFFFFFFFF3E1D3FFECD1BDFFE6C2A7FFDFB291FFD9A37BFFD69B
|
||||
70FFC47642FFFF00FF00FF00FF00FF00FF00FF00FF00E6C2A7FFC57845FFC476
|
||||
42FFECD1BDFFFFFFFFFFF3E1D3FFECD1BDFFE6C2A7FFDFB291FFC47642FFC476
|
||||
42FFE6C2A7FFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00E6C2
|
||||
A7FFC47642FFC47642FFC47642FFC47642FFC47642FFC47642FFE6C2A7FFFF00
|
||||
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF00FF00FF00E4A70AFFEDB339FFF0B84DFFEEB6
|
||||
4DFFE9B24DFFF2BA62FFF2B65AFFEEB04FFFEAA945FFE9A43AFFE79F31FFE89B
|
||||
27FFE6971FFFD2851AFFFF00FF00EFB53EFFF8C9A2FFD1AC86FFD1AD86FFD1AD
|
||||
86FFD1AC85FFD1AA7BFFCFA46EFFDCAB6BFFFFBD6AFFF6AF52FFFCAF46FFE79D
|
||||
37FFF3A028FFFFA716FFAE602AFFE7AC1DFFD4AF8CFF6BD3CAFF6CD7CEFF6CD7
|
||||
CEFF6CD7CFFF6CD7CFFF66D7D1FF8DE0D9FFFCC57BFFCA8D3DFFB58139FFAD7A
|
||||
31FFC18225FFFFA20BFFAE602AFFE7AC1DFFF5CAA0FFE1DEC0FFE2E0C1FFDEDB
|
||||
BCFFE1DCB9FFE3DAB1FFDED5A8FFE6D39FFFFFBF5DFFFCAB3CFFF3A333FFF69F
|
||||
20FFF89D13FFFF9F04FFAE602AFFE7AC1DFFFFD4A5FFFCC794FFF5C190FFFFCF
|
||||
92FFFEC07DFFEFB06AFFFFBD61FFFFB74FFFE3A45BFFFCAB3CFFFFAC24FFEE9B
|
||||
2CFFF2981BFFFF9F00FFAE602AFFE7AC1DFFE9BF97FF63584DFF5A5149FFCDA5
|
||||
74FF8A7155FF47413CFFB38649FF9D8397FF263EE3FF6E66A5FFCE904BFF3148
|
||||
D2FF3448CCFFE3911EFFAE602AFFE7AC1DFFFED1A2FFBC9B78FFB3916CFFFDC4
|
||||
7FFFD3A165FFA17B4DFFEFAA4DFFE9A657FF887394FFC78D55FFFEA317FF9C74
|
||||
69FFA1745FFFFE9D01FFAE602AFFE7AC1DFFEDC299FF60554CFF5C5147FFD2A2
|
||||
68FF8B704FFF4F463CFFB5843FFF977D92FF2E42DEFF6D64A1FFCA8A48FF3047
|
||||
D3FF3649CCFFEB9317FFAE602AFFE7AC1DFFFFD0A0FFCAA276FFC09768FFFBBD
|
||||
6DFFD69F58FFB98847FFEDA540FFE9A142FFAF7F56FFC58538FFE08D12FFB679
|
||||
37FFB97B37FFFE9D02FFAE602AFFE7AC1DFFEEC093FF584E44FF534A41FFD39D
|
||||
5BFF866A46FF433E39FFBA8338FFD5902FFF504330FF54452FFF524330FF5544
|
||||
2BFF624A28FFF69702FFAE602AFFDAA039FFFFD195FFEAB777FFE4AE67FFFFBD
|
||||
60FFF1AE4FFFDC9C3EFFFCAA32FFFFA922FFFB9F14FFFB9A05FFFB9800FFFB98
|
||||
01FFFC9900FFFF9F00FFAE602AFFFF00FF00AE602AFFAE602AFFAE602AFFAE60
|
||||
2AFFAE602AFFAE602AFFAE602AFFAE602AFFAE602AFFAE602AFFAE602AFFAE60
|
||||
2AFFAE602AFFAE602AFFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF00FF00FF00AA5A2FFFAA5A2FFFAA5A2FFFAA5A
|
||||
2FFFAA5A2FFFAA5A2FFFAA5A2FFFAA5A2FFFAA5A2FFFAA5A2FFFAA5A2FFFAA5A
|
||||
2FFFAA5A2FFFAA5A2FFFFF00FF00AE5C27FFDB7F26FFDB7F26FFDB7F26FFDB7F
|
||||
26FFDB7F26FFDB7F26FFDB7F26FFDB7F26FFDB7F26FFF6BB80FFDB7F26FFF6BB
|
||||
80FFB37D53FF4E6ED4FFB95D19FFB26C39FFD3A35CFFD3A35CFFD3A35CFFD3A3
|
||||
5CFFD3A35CFFD3A35CFFD3A35CFFD3A35CFFD3A35CFFD8AE6DFFD3A35CFFD9AE
|
||||
6CFFD3A35CFFCAAA77FFB56D38FF834221FFFFFFFFFF6E94FFFF6E94FFFFFEFE
|
||||
FEFFC47A39FFC5AEA5FFC1A99BFFC3AA99FFD2B89FFFD6AD88FFEC9522FFFF99
|
||||
00FFFF9900FFFFE1C0FF8F4823FF834221FFFFFFFFFF6E94FFFF6E94FFFFE8DE
|
||||
DAFFC2A18DFFE3D8C7FFF7E9CBFFF2CD9AFFE5CDA6FFCEBAA4FFD8C1ACFFFFE4
|
||||
C7FFFEE1C1FFFEDEBBFF8F4823FF834221FFFFFFFFFFFFFFFFFFFFFEFEFFD2BE
|
||||
B5FFD9BCA0FFFEE3A9FFF5D09EFFF9EBC2FFFDF9D8FFE5DBC1FFD7C09FFFFF99
|
||||
00FFFF9900FFFEDCB5FF8F4823FF834221FFFFFFFFFFFFFFFFFFFFFEFEFFC4AC
|
||||
A0FFE5C5A1FFFAD093FFF8E1B2FFFFFFE8FFFFFFF1FFF7F4DDFFC5AE9FFFFEDF
|
||||
BCFFFEDCB6FFFFDAB0FF8F4823FF834221FFFFFFFFFF4CB74CFF4CB74CFFC4AD
|
||||
A2FFDCB089FFFFEAB2FFFEF9D0FFFFFFE5FFFFFFF9FFF7F4F2FFC4AB9AFFFF99
|
||||
00FFFF9900FFFED8ADFF8F4823FF834221FFFFFFFFFF4CB74CFF4CB74CFFCABF
|
||||
BBFFD0AA8FFFF7E0B4FFFFFFDDFFFFFFE8FFFFFFF3FFE1D4CBFFCAAFA1FFFEDA
|
||||
B2FFFFD9ADFFFED7ABFF8F4823FF834221FFFFFFFFFFFFFDFCFFBFE0F8FF87BD
|
||||
E1FFAFA09AFFBBA293FFDBB68BFFE6D2B8FFDAC0A8FFC7A58BFFE49835FFFF99
|
||||
00FFFF9900FFFED7ABFF8F4823FF834221FFFFFDFBFFC4E0F7FF5CBCFDFF3097
|
||||
E8FF8C8383FFCFB5A4FFC3AA9BFFC3A99BFFD2B5A2FFE9C8A9FFFED9AFFFFED7
|
||||
ABFFFED7ABFFFED7ABFF8F4823FF834221FFC3E2F6FF61BEFDFF2E95E9FF7C8E
|
||||
ACFFC97125FFFEE4C6FFFEE1C0FFFEDEB9FFFEDBB4FFFED9B0FFFED7ACFFFED7
|
||||
ABFFFED7ABFFFED7ABFF8F4823FF944A24FF66A1CEFF2A99F1FF687994FF9F5A
|
||||
3BFF944B25FF944A24FF944A24FF944A24FF944A24FF944A24FF944A24FF944A
|
||||
24FF944A24FF944A24FF944A24FFFF00FF00818C97FF4F749AFFFF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF00000000FF000000FF000000FF000000FF0000
|
||||
00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
|
||||
00FF000000FF000000FFFF00FF00000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
|
||||
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
|
||||
FFFFFFFFFFFF000000FFFF00FF00000000FFFFFFFFFF808080FF808080FF8080
|
||||
80FFC0C0C0FF808080FF808080FF808080FF808080FF808080FF808080FF8080
|
||||
80FFFFFFFFFF000000FFFF00FF00000000FFFFFFFFFF808080FFC0C0C0FF0000
|
||||
00FFFFFFFFFF808080FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FF0000
|
||||
00FFFFFFFFFF000000FFFF00FF00000000FFFFFFFFFF808080FF000000FF0000
|
||||
00FFFFFFFFFF808080FF000000FF000000FF000000FF000000FF000000FF0000
|
||||
00FFFFFFFFFF000000FFFF00FF00000000FFFFFFFFFFC0C0C0FFFFFFFFFFFFFF
|
||||
FFFFFFFFFFFFFFFFFFFFFFFFFFFF808080FF000000FF000000FF808080FFFFFF
|
||||
FFFFFFFFFFFF000000FFFF00FF00000000FFFFFFFFFF808080FF808080FF8080
|
||||
80FFFFFFFFFFFFFFFFFF808080FF000000FFFFFFFFFF808080FF000000FFFFFF
|
||||
FFFFFFFFFFFF000000FFFF00FF00000000FFFFFFFFFF808080FFC0C0C0FF0000
|
||||
00FFFFFFFFFFFFFFFFFF808080FF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
|
||||
FFFFFFFFFFFF000000FFFF00FF00000000FFFFFFFFFF808080FFC0C0C0FF0000
|
||||
00FFFFFFFFFF000000FF000000FF000000FF000000FF808080FFFFFFFFFFFFFF
|
||||
FFFFFFFFFFFF000000FFFF00FF00000000FFFFFFFFFF808080FFC0C0C0FF0000
|
||||
00FFFFFFFFFFFFFFFFFF000000FF808080FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
|
||||
FFFFFFFFFFFF000000FFFF00FF00000000FFFFFFFFFF808080FFC0C0C0FF0000
|
||||
00FFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFF000000FFFFFFFFFF0000
|
||||
00FFFFFFFFFF000000FFFF00FF00000000FFFFFFFFFF808080FFC0C0C0FF0000
|
||||
00FFFFFFFFFF000000FF808080FFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFF
|
||||
FFFFFFFFFFFF000000FFFF00FF00000000FFFFFFFFFF808080FF000000FF0000
|
||||
00FFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFF0000
|
||||
00FFFFFFFFFF000000FFFF00FF00000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
|
||||
FFFF808080FF808080FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
|
||||
FFFFFFFFFFFF000000FFFF00FF00000000FF000000FF000000FF000000FF0000
|
||||
00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
|
||||
00FF000000FF000000FFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
|
||||
FF00FF00FF00FF00FF00FF00FF00
|
||||
}
|
||||
end
|
||||
end
|
||||
|
@ -11,6 +11,9 @@
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. *
|
||||
* *
|
||||
*****************************************************************************
|
||||
|
||||
Modified Date: 20.10.2010
|
||||
By: Marcelo Borges de Paula
|
||||
}
|
||||
unit fieldseditor;
|
||||
|
||||
@ -19,10 +22,10 @@ unit fieldseditor;
|
||||
interface
|
||||
|
||||
uses
|
||||
Classes, SysUtils, TypInfo, LCLProc, Forms,
|
||||
Controls, Menus, Graphics, Dialogs, ComCtrls,
|
||||
db, ActnList, StdCtrls, ObjInspStrConsts, ComponentEditors,
|
||||
PropEdits, PropEditUtils, LCLType, NewField, FieldsList, ComponentReg;
|
||||
Classes, SysUtils, TypInfo, LCLProc, Forms, Controls, Menus, Graphics,
|
||||
Dialogs, ComCtrls, db, ActnList, StdCtrls, ObjInspStrConsts, ComponentEditors,
|
||||
PropEdits, PropEditUtils, LCLType, ExtCtrls, NewField, FieldsList,
|
||||
ComponentReg, types;
|
||||
|
||||
type
|
||||
|
||||
@ -31,8 +34,20 @@ type
|
||||
{ TDSFieldsEditorFrm }
|
||||
|
||||
TDSFieldsEditorFrm = class(TForm)
|
||||
Fields: TImageList;
|
||||
MenuItem6: TMenuItem;
|
||||
MenuItem7: TMenuItem;
|
||||
tbCommands: TToolBar;
|
||||
tbAddFld: TToolButton;
|
||||
tbUnselect: TToolButton;
|
||||
tbDeleteFld: TToolButton;
|
||||
tbNewFld: TToolButton;
|
||||
ToolButton4: TToolButton;
|
||||
ToolButton5: TToolButton;
|
||||
tbMoveUp: TToolButton;
|
||||
tbMoveDown: TToolButton;
|
||||
ToolButton8: TToolButton;
|
||||
tbSelect: TToolButton;
|
||||
UnselectAllActn: TAction;
|
||||
SelectAllActn: TAction;
|
||||
FieldsListBox: TListBox;
|
||||
@ -54,6 +69,8 @@ type
|
||||
procedure FieldsEditorFrmClose(Sender: TObject;
|
||||
var CloseAction: TCloseAction);
|
||||
procedure FieldsEditorFrmDestroy(Sender: TObject);
|
||||
procedure FieldsListBoxDrawItem(Control: TWinControl; Index: Integer;
|
||||
ARect: TRect; State: TOwnerDrawState);
|
||||
procedure FieldsListBoxKeyDown(Sender: TObject; var Key: Word;
|
||||
Shift: TShiftState);
|
||||
procedure NewActnExecute(Sender: TObject);
|
||||
@ -65,7 +82,7 @@ type
|
||||
protected
|
||||
{ protected declarations }
|
||||
procedure DoSelected(All: boolean);
|
||||
procedure SelectionChanged;
|
||||
procedure SelectionChanged(AOrderChanged: Boolean = false);
|
||||
procedure OnComponentRenamed(AComponent: TComponent);
|
||||
procedure OnPersistentDeleting(APersistent: TPersistent);
|
||||
procedure OnGetSelection(const ASelection: TPersistentSelectionList);
|
||||
@ -78,6 +95,7 @@ type
|
||||
FComponentEditor: TFieldsComponentEditor;
|
||||
procedure ExchangeItems(const fFirst, fSecond: integer);
|
||||
procedure RefreshFieldsListBox(SelectAllNew: boolean);
|
||||
function FindChild(ACandidate: TPersistent; out AIndex: Integer): Boolean;
|
||||
public
|
||||
{ public declarations }
|
||||
constructor Create(AOwner: TComponent; ADataset: TDataset;
|
||||
@ -100,6 +118,9 @@ implementation
|
||||
|
||||
{$R *.lfm}
|
||||
|
||||
uses
|
||||
IDEImagesIntf;
|
||||
|
||||
{ TDSFieldsEditorFrm }
|
||||
|
||||
procedure TDSFieldsEditorFrm.AddFieldsActnExecute(Sender: TObject);
|
||||
@ -126,6 +147,15 @@ constructor TDSFieldsEditorFrm.Create(AOwner: TComponent; ADataset: TDataset;
|
||||
begin
|
||||
inherited Create(AOwner);
|
||||
|
||||
tbCommands.Images := IDEImages.Images_16;
|
||||
tbAddFld.ImageIndex := IDEImages.LoadImage(16, 'laz_add');
|
||||
tbDeleteFld.ImageIndex := IDEImages.LoadImage(16, 'laz_delete');
|
||||
tbNewFld.ImageIndex := IDEImages.LoadImage(16,'menu_new');
|
||||
tbMoveDown.ImageIndex := IDEImages.LoadImage(16, 'arrow_down');
|
||||
tbMoveUp.ImageIndex := IDEImages.LoadImage(16, 'arrow_up');
|
||||
tbSelect.ImageIndex := IDEImages.LoadImage(16, 'menu_select_all');
|
||||
tbUnselect.ImageIndex := IDEImages.LoadImage(16, 'menu_close_all');
|
||||
|
||||
LinkDataset := ADataset;
|
||||
FDesigner := ADesigner;
|
||||
Caption := fesFeTitle + ' - ' + LinkDataset.Name;
|
||||
@ -136,9 +166,13 @@ begin
|
||||
NewActn.Caption:=oisNew;
|
||||
NewActn.Hint:=oisCreateNewFieldAndAddItAtCurrentPosition;
|
||||
MoveUpActn.Caption:=oisMoveUp;
|
||||
MoveUpActn.Hint:=oisMoveUpHint;
|
||||
MoveDownActn.Caption:=oisMoveDown;
|
||||
MoveDownActn.Hint:=oisMoveDownHint;
|
||||
SelectAllActn.Caption:=oisSelectAll;
|
||||
SelectAllActn.Hint:=oisSelectAllHint;
|
||||
UnselectAllActn.Caption:=oisUnselectAll;
|
||||
UnselectAllActn.Hint:=oisUnselectAllHint;
|
||||
|
||||
FieldsListBox.Clear;
|
||||
RefreshFieldsListBox(False);
|
||||
@ -161,23 +195,20 @@ end;
|
||||
procedure TDSFieldsEditorFrm.DeleteFieldsActnExecute(Sender: TObject);
|
||||
var i: integer;
|
||||
PreActive: boolean;
|
||||
bModified: boolean;
|
||||
fld: TField;
|
||||
begin
|
||||
PreActive := LinkDataSet.Active;
|
||||
LinkDataSet.Active := False;
|
||||
bModified := False;
|
||||
if FieldsListBox.SelCount = 0 then exit;
|
||||
for i := FieldsListBox.Items.Count - 1 downto 0 do
|
||||
if FieldsListBox.Selected[i] then begin
|
||||
fld := TField(FieldsListBox.Items.Objects[i]);
|
||||
FieldsListBox.Items.Delete(i);
|
||||
FDesigner.PropertyEditorHook.PersistentDeleting(fld);
|
||||
fld := nil;
|
||||
bModified := True;
|
||||
fld.Free;
|
||||
end;
|
||||
FDesigner.Modified;
|
||||
SelectionChanged;
|
||||
if bModified then
|
||||
fDesigner.Modified;
|
||||
if PreActive then
|
||||
LinkDataSet.Active := True;
|
||||
end;
|
||||
@ -198,6 +229,30 @@ begin
|
||||
GlobalDesignHook.RemoveAllHandlersForObject(Self);
|
||||
end;
|
||||
|
||||
procedure TDSFieldsEditorFrm.FieldsListBoxDrawItem(Control: TWinControl;
|
||||
Index: Integer; ARect: TRect; State: TOwnerDrawState);
|
||||
var fld: TField;
|
||||
begin
|
||||
if Index < 0 then Exit;
|
||||
if not Assigned(FieldsListBox.Items.Objects[Index]) then Exit;
|
||||
//
|
||||
FieldsListBox.Canvas.FillRect(ARect);
|
||||
fld := TField(FieldsListBox.Items.Objects[Index]);
|
||||
//
|
||||
if pfinKey in fld.ProviderFlags then
|
||||
Fields.Draw(FieldsListBox.Canvas,1,ARect.Top,0)
|
||||
else
|
||||
case fld.FieldKind of
|
||||
fkData : Fields.Draw(FieldsListBox.Canvas,1,ARect.Top,1);
|
||||
fkCalculated : Fields.Draw(FieldsListBox.Canvas,1,ARect.Top,2);
|
||||
fkLookup : Fields.Draw(FieldsListBox.Canvas,1,ARect.Top,3);
|
||||
fkInternalCalc : Fields.Draw(FieldsListBox.Canvas,1,ARect.Top,4);
|
||||
end;
|
||||
//
|
||||
FieldsListBox.Canvas.TextRect(ARect, ARect.Left + 20,ARect.Top,
|
||||
FieldsListBox.Items[Index]);
|
||||
end;
|
||||
|
||||
procedure TDSFieldsEditorFrm.FieldsListBoxKeyDown(Sender: TObject; var Key: Word;
|
||||
Shift: TShiftState);
|
||||
begin
|
||||
@ -241,7 +296,7 @@ begin
|
||||
if PreActive And LinkDataset.DefaultFields then
|
||||
LinkDataset.Close;
|
||||
//Deselect & refresh all existing
|
||||
DoSelected(False);
|
||||
FieldsListBox.ClearSelection;
|
||||
//Add new fields
|
||||
for i := 0 to LinkDataset.Fields.Count - 1 do begin
|
||||
fld := LinkDataset.Fields[i];
|
||||
@ -254,6 +309,16 @@ begin
|
||||
LinkDataset.Active:=true;
|
||||
end;
|
||||
|
||||
function TDSFieldsEditorFrm.FindChild(ACandidate: TPersistent; out
|
||||
AIndex: Integer): Boolean;
|
||||
begin
|
||||
if ACandidate is TField then
|
||||
AIndex := FieldsListBox.Items.IndexOfObject(ACandidate)
|
||||
else
|
||||
AIndex := -1;
|
||||
Result := AIndex >= 0;
|
||||
end;
|
||||
|
||||
procedure TDSFieldsEditorFrm.NewActnExecute(Sender: TObject);
|
||||
var nf: TNewFieldFrm;
|
||||
begin
|
||||
@ -282,7 +347,7 @@ begin
|
||||
ExchangeItems(i, i + 1);
|
||||
bModified := True;
|
||||
end;
|
||||
SelectionChanged;
|
||||
SelectionChanged(True);
|
||||
if bModified then fDesigner.Modified;
|
||||
end;
|
||||
|
||||
@ -297,7 +362,7 @@ begin
|
||||
ExchangeItems(i - 1, i);
|
||||
bModified := True;
|
||||
end;
|
||||
SelectionChanged;
|
||||
SelectionChanged(True);
|
||||
if bModified then fDesigner.Modified;
|
||||
end;
|
||||
|
||||
@ -343,12 +408,13 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TDSFieldsEditorFrm.SelectionChanged;
|
||||
procedure TDSFieldsEditorFrm.SelectionChanged(AOrderChanged: Boolean = false);
|
||||
var SelList: TPersistentSelectionList;
|
||||
begin
|
||||
GlobalDesignHook.RemoveHandlerSetSelection(@OnSetSelection);
|
||||
try
|
||||
SelList := TPersistentSelectionList.Create;
|
||||
SelList.ForceUpdate := AOrderChanged;
|
||||
try
|
||||
OnGetSelection(SelList);
|
||||
FDesigner.PropertyEditorHook.SetSelection(SelList) ;
|
||||
@ -379,12 +445,8 @@ end;
|
||||
procedure TDSFieldsEditorFrm.OnPersistentDeleting(APersistent: TPersistent);
|
||||
var i: integer;
|
||||
begin
|
||||
if APersistent = LinkDataset then begin
|
||||
// removing all fields here ?
|
||||
end else begin
|
||||
i := FieldsListBox.Items.IndexOfObject(APersistent as TObject);
|
||||
if i >= 0 then FieldsListBox.Items.Delete( i );
|
||||
end;
|
||||
if FindChild(APersistent, i) then
|
||||
FieldsListBox.Items.Delete(i);
|
||||
end;
|
||||
|
||||
procedure TDSFieldsEditorFrm.OnGetSelection(
|
||||
@ -404,26 +466,24 @@ var i, j: integer;
|
||||
begin
|
||||
if Assigned(ASelection) then begin
|
||||
//Unselect all
|
||||
DoSelected(False);
|
||||
FieldsListBox.ClearSelection;
|
||||
//select from list
|
||||
for i := 0 to ASelection.Count - 1 do
|
||||
if ASelection.Items[i] is TField then begin
|
||||
j := FieldsListBox.Items.IndexOfObject(ASelection.Items[i]);
|
||||
if j >= 0 then FieldsListBox.Selected[j] := True;
|
||||
end;
|
||||
if FindChild(ASelection.Items[i], j) then
|
||||
FieldsListBox.Selected[j] := true;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TDSFieldsEditorFrm.OnPersistentAdded(APersistent: TPersistent;
|
||||
Select: boolean);
|
||||
var i: integer;
|
||||
var fld: TField;
|
||||
begin
|
||||
if Assigned(APersistent) And
|
||||
(APersistent is TField) And
|
||||
((APersistent as TField).DataSet = LinkDataset) then begin
|
||||
i := FieldsListBox.Items.AddObject( TField(APersistent).FieldName, APersistent );
|
||||
FieldsListBox.Selected[i] := Select;
|
||||
TField(APersistent).Index := i;
|
||||
fld := APersistent as TField;
|
||||
with FieldsListBox do
|
||||
Selected[Items.AddObject(fld.FieldName, fld)] := Select;
|
||||
end;
|
||||
end;
|
||||
|
||||
|
@ -413,6 +413,11 @@ resourcestring
|
||||
fesOkBtn = 'OK';
|
||||
fesCancelBtn = 'Cancel';
|
||||
fesFieldCanTBeC = 'Field %s cannot be created!';
|
||||
|
||||
oisMoveUpHint = 'Move field up';
|
||||
oisMoveDownHint = 'Move field down';
|
||||
oisSelectAllHint = 'Select All Fields';
|
||||
oisUnselectAllHint = 'Unselect All';
|
||||
|
||||
//Key strings
|
||||
srVK_UNKNOWN = 'Unknown';
|
||||
|
Loading…
Reference in New Issue
Block a user