diff --git a/Client/CentrED.lpi b/Client/CentrED.lpi index 53dd46a..ff8b85a 100644 --- a/Client/CentrED.lpi +++ b/Client/CentrED.lpi @@ -131,25 +131,29 @@ - + - + + - - + - + + - - + + + + + - + diff --git a/Client/UfrmAccountControl.lfm b/Client/UfrmAccountControl.lfm index 23a6802..72a1b14 100644 --- a/Client/UfrmAccountControl.lfm +++ b/Client/UfrmAccountControl.lfm @@ -2,13 +2,13 @@ object frmAccountControl: TfrmAccountControl Left = 290 Height = 378 Top = 171 - Width = 369 + Width = 434 ActiveControl = vstAccounts BorderIcons = [biSystemMenu] BorderStyle = bsDialog Caption = 'Account Management' ClientHeight = 378 - ClientWidth = 369 + ClientWidth = 434 Font.Height = -11 OnClose = FormClose OnCreate = FormCreate @@ -20,7 +20,7 @@ object frmAccountControl: TfrmAccountControl Left = 0 Height = 26 Top = 0 - Width = 369 + Width = 434 Caption = 'tbMain' Images = ilToolbar TabOrder = 0 @@ -73,11 +73,18 @@ object frmAccountControl: TfrmAccountControl end end object vstAccounts: TVirtualStringTree + AnchorSideLeft.Control = Owner + AnchorSideTop.Control = tbMain + AnchorSideTop.Side = asrBottom + AnchorSideRight.Control = Owner + AnchorSideRight.Side = asrBottom + AnchorSideBottom.Control = Owner + AnchorSideBottom.Side = asrBottom Left = 0 Height = 352 Top = 26 - Width = 369 - Align = alClient + Width = 434 + Anchors = [akTop, akLeft, akRight, akBottom] DefaultText = 'Node' Header.AutoSizeIndex = 1 Header.Columns = < @@ -94,6 +101,12 @@ object frmAccountControl: TfrmAccountControl Position = 2 Text = 'Accesslevel' Width = 100 + end + item + Options = [coAllowClick, coDraggable, coEnabled, coParentBidiMode, coParentColor, coShowDropMark, coVisible, coFixed, coAllowFocus] + Position = 3 + Text = 'Restricted' + Width = 75 end> Header.DefaultHeight = 17 Header.Options = [hoColumnResize, hoDrag, hoShowSortGlyphs, hoVisible] @@ -249,7 +262,7 @@ object frmAccountControl: TfrmAccountControl object ilAccesslevel: TImageList left = 184 Bitmap = { - 4C69040000001000000010000000000000000000000000000000000000000000 + 4C69060000001000000010000000000000000000000000000000000000000000 0000A3A3A3FFA0A0A0FF9D9D9DFF9A9A9AFF979797FF949494FF000000000000 000000000000000000000000000000000000000000000000000000000000A2A2 A2FFBCBCBCFFCACACAFFCCCCCCFFCACACAFFC2C2C2FFADADADFF8C8C8CFF0000 @@ -313,7 +326,39 @@ object frmAccountControl: TfrmAccountControl 3DFF4D4D4DFF494949FF474747FF474747FF454545FF474747FF383838FF0000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF0023A1D0C5037CEAFF0280EDFF027AECFF0372E7FF209AC9D0FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0025A6 + D1BB079CEDFF0396EFFF0396EFFF038DEEFF027DECFF057CE3FF23A3CDC7FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000AA7 + EDFF0396F0FF027DECFF0280ECFF0380ECFF0381EBFF036FE4FF045FD1FFFFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00036E + EAFF5EA4C9FF8AB7E4FF33B9E5FF036CDFFF0474E2FF0575DDFF0367D9FF3D91 + BA0FFFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF001B67 + A9F1BDD7EFFFA3C9EDFF9DC5E8FF39C3EAFF54C5ECFFA6D9F0FF1C73B8F56AA0 + D206FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00265F + 9ACAA6CAEEFFABCCEAFFA7D0F6FFA8D0F6FFABCCEAFFA7CDEEFF2D629ACCFFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF004B6A980C2A61 + 95DE2B72B5FF9CCCF8FFAFD4F7FFAFD4F7FFA5CFF6FF2C78BAFF305C8DDD4E64 + 8B13FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF004A6998113D6B9FB70681 + D5FFC4E2F8FF3183CAFF457DB2FF457DB2FF3183CAFFACD5F5FF0681D4FF3B68 + 9CBF42689A19FFFFFF00FFFFFF00FFFFFF005A648202509ADEA00887DCFFBAE4 + FFFF97D7FFFF5CC0FFFF47B7FFFF36B0FEFF26AAFEFF4DB9FEFF9BD8FEFF0C84 + D6FF406594B44367970AFFFFFF00FFFFFF00406FA7990793F0FF74C9FFFF73C9 + FFFF47B7FFFF38B2FFFF2BACFFFF20A7FEFF19A2FAFF129CF6FF3CB2FEFF2EAC + FDFF1C8EE2FF3C6A9FA7FFFFFF00FFFFFF00287CCEFC78B3EAFF1DA4FCFF26AB + FFFF26ABFFFF21A8FEFF1CA4FCFF17A0F9FF119CF6FF0B97F3FF0791ECFF109A + F5FF7EB8EDFF2974C7FAFFFFFF00FFFFFF00297DD1FE82BAEEFF0691ECFF44B6 + FFFF1EA4FBFF1AA2F9FF159FF8FF119BF5FF169FF7FF149CF5FF2EACFDFF0E8A + DEFF83BCEFFF2A77CAFEFFFFFF00FFFFFF006DA2D3792579CDFB0990EAFF0688 + DEFF29ABFFFF29ABFFFF29ABFFFF29ABFFFF29ABFFFF29ABFFFF0784D9FF0B81 + D3FF2E7ECEF86DA2D383FFFFFF00FFFFFF00FFFFFF0069A8DF0D3B7DC42D3870 + AAE11D82CFFE0F84D5FF0A82D6FF0A82D4FF0E81D2FF197FCDFE2D6FAFF33A79 + BE3369A9E10DFFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 000027B2E5FF1BA7F3FF1CACF4FF1CA8F4FF1BA1F1FF27ACDEFF000000000000 @@ -377,7 +422,39 @@ object frmAccountControl: TfrmAccountControl 34FFAF7A41FFAE793DFFAD783CFFAD783CFFAA7539FFAA753CFF936131FF0000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000 + 0000000000000000000000000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF004EA2 + 57914A9D527FFFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF004DA1569163B3 + 6DFF5FAF69FF41914979FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF004CA0559162B26CFF82D1 + 8FFF7AC885FF57A660FF38843F7BFFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF004B9F549160B06AFF81CF8DFF7FCF + 8BFF58A761FF398540FF347E3A08FFFFFF00FFFFFF005FBB6A435CB76765FFFF + FF00FFFFFF00FFFFFF00FFFFFF004B9E53915FAF69FF7FCE8AFF7ECE89FF57A6 + 60FF37823DFC337D3908FFFFFF00FFFFFF005FBA6A3C5CB666E66DC079FF55AC + 5F6FFFFFFF00FFFFFF004A9D52915EAE68FF7DCD89FF7CCD87FF56A55FFF3681 + 3CFC327C3808FFFFFF00FFFFFF005EB969465BB566E479C986FF80CE8DFF51A6 + 5AFC4DA1566F499C518B5CAD67FF7CCC86FF79CB85FF54A45DFF35803BFC317B + 3708FFFFFF00FFFFFF00FFFFFF005AB4650959B063FF6BBD76FF84D290FF7AC9 + 85FF60B26AFF63B46DFF78C983FF78CB82FF53A35CFF347F3AFD317A3608FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0053A95C0A51A65AFF63B56DFF7ECE + 89FF7BCC87FF76CA81FF76C981FF52A25AFF347E3AFE30793508FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF004B9E530A499A51FF5BAC + 64FF77CA82FF74C87EFF51A059FF337D39FE2F783508FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF004292490A408E + 47FF54A35CFF4F9F57FF327C38FE2E773408FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF003985 + 400A37833DFF317B37FB2E763307FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00317A360A2D753207FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00 } end end diff --git a/Client/UfrmAccountControl.pas b/Client/UfrmAccountControl.pas index bcbb5b1..d8debcb 100644 --- a/Client/UfrmAccountControl.pas +++ b/Client/UfrmAccountControl.pas @@ -31,7 +31,7 @@ interface uses Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, ComCtrls, - VirtualTrees, Math, UEnhancedMemoryStream, UEnums; + StdCtrls, ExtCtrls, VirtualTrees, Math, UEnhancedMemoryStream, UEnums; type @@ -282,15 +282,25 @@ procedure TfrmAccountControl.vstAccountsGetImageIndex(Sender: TBaseVirtualTree; var accountInfo: PAccountInfo; begin + accountInfo := Sender.GetNodeData(Node); if Column = 0 then begin - accountInfo := Sender.GetNodeData(Node); case accountInfo^.AccessLevel of alNone: ImageIndex := 0; alView: ImageIndex := 1; - alNormal: ImageIndex := 2; - alAdministrator: ImageIndex := 3; + alNormal: + begin + if accountInfo^.Regions.Count > 0 then + ImageIndex := 2 + else + ImageIndex := 3; + end; + alAdministrator: ImageIndex := 4; end; + end else if Column = 3 then + begin + if accountInfo^.Regions.Count > 0 then + ImageIndex := 5; end; end;