Содержимое окна настроек боле или менее окончательно. Окно корректно создаётся и отображается через разные пункты меню. Декоративные правки.

This commit is contained in:
Anthony Axenov 2019-01-21 00:45:05 +08:00
parent f20447a54d
commit e968856a55
7 changed files with 328 additions and 223 deletions

View File

@ -12,7 +12,8 @@ uses {$IFDEF UNIX} {$IFDEF UseCThreads}
uFileUtils, uFileUtils,
uPackage, uPackage,
uPackageUtils, uPackageUtils,
uPackageList, fOptions; uPackageList,
fOptions;
{$R *.res} {$R *.res}
@ -20,8 +21,7 @@ begin
RequireDerivedFormResource := True; RequireDerivedFormResource := True;
Application.Initialize; Application.Initialize;
Application.CreateForm(TdmMain, dmMain); Application.CreateForm(TdmMain, dmMain);
Application.CreateForm(TfmMain, fMain.fmMain); Application.CreateForm(TfmMain, fmMain);
Application.CreateForm(TfmOptions, fmOptions);
Application.Run; Application.Run;
end. end.

View File

@ -10,7 +10,7 @@ THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR I
Лицензия MIT Лицензия MIT
Copyright (C) 2019 Аксенов Антон Copyright (c) 2019 Аксенов Антон
Данная лицензия разрешает лицам, получившим копию данного программного обеспечения и сопутствующей документации (в дальнейшем именуемыми «Программное Обеспечение»), безвозмездно использовать Программное Обеспечение без ограничений, включая неограниченное право на использование, копирование, изменение, слияние, публикацию, распространение, сублицензирование и/или продажу копий Программного Обеспечения, а также лицам, которым предоставляется данное Программное Обеспечение, при соблюдении следующих условий: Данная лицензия разрешает лицам, получившим копию данного программного обеспечения и сопутствующей документации (в дальнейшем именуемыми «Программное Обеспечение»), безвозмездно использовать Программное Обеспечение без ограничений, включая неограниченное право на использование, копирование, изменение, слияние, публикацию, распространение, сублицензирование и/или продажу копий Программного Обеспечения, а также лицам, которым предоставляется данное Программное Обеспечение, при соблюдении следующих условий:

View File

@ -3729,7 +3729,6 @@ object dmMain: TdmMain
end end
object mbCheckInvert: TMenuItem object mbCheckInvert: TMenuItem
Caption = 'Инвертировать' Caption = 'Инвертировать'
Enabled = False
Bitmap.Data = { Bitmap.Data = {
36040000424D3604000000000000360000002800000010000000100000000100 36040000424D3604000000000000360000002800000010000000100000000100
2000000000000004000064000000640000000000000000000000FFFFFF00FFFF 2000000000000004000064000000640000000000000000000000FFFFFF00FFFF
@ -3813,7 +3812,7 @@ object dmMain: TdmMain
end end
object mbOptions: TMenuItem object mbOptions: TMenuItem
Caption = 'Настройки' Caption = 'Настройки'
object mbOptonsMain: TMenuItem object mbOptionsMain: TMenuItem
Caption = 'Основные...' Caption = 'Основные...'
Bitmap.Data = { Bitmap.Data = {
36040000424D3604000000000000360000002800000010000000100000000100 36040000424D3604000000000000360000002800000010000000100000000100
@ -3852,7 +3851,7 @@ object dmMain: TdmMain
BF63FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00 BF63FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00
} }
ImageIndex = 4 ImageIndex = 4
OnClick = mbOptonsMainClick OnClick = mbOptionsMainClick
end end
object mbOptionsPkg: TMenuItem object mbOptionsPkg: TMenuItem
Caption = 'Управление пакетами...' Caption = 'Управление пакетами...'
@ -3893,6 +3892,7 @@ object dmMain: TdmMain
D631FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00 D631FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00
} }
ImageIndex = 103 ImageIndex = 103
OnClick = mbOptionsPkgClick
end end
end end
object mbHelp: TMenuItem object mbHelp: TMenuItem
@ -3978,6 +3978,7 @@ object dmMain: TdmMain
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00 FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00
} }
ImageIndex = 56 ImageIndex = 56
OnClick = mbAboutClick
end end
end end
end end

View File

@ -5,8 +5,8 @@ unit dMain;
interface interface
uses uses
Classes, SysUtils, FileUtil, Controls, Menus, VirtualTrees, uPackage, Classes, SysUtils, FileUtil, Controls, Menus, Forms, PopupNotifier,
uPackageList, fOptions; VirtualTrees, uPackage, uPackageList, fOptions;
type type
@ -33,16 +33,18 @@ type
mbHelp: TMenuItem; mbHelp: TMenuItem;
mbOnlineHelp: TMenuItem; mbOnlineHelp: TMenuItem;
mbAbout: TMenuItem; mbAbout: TMenuItem;
mbOptonsMain: TMenuItem; mbOptionsMain: TMenuItem;
mbOptionsPkg: TMenuItem; mbOptionsPkg: TMenuItem;
pmInstallTree: TPopupMenu; pmInstallTree: TPopupMenu;
pmInstallCheck: TPopupMenu; pmInstallCheck: TPopupMenu;
procedure DataModuleCreate(Sender: TObject); procedure DataModuleCreate(Sender: TObject);
procedure mbAboutClick(Sender: TObject);
procedure mbCheckAllClick(Sender: TObject); procedure mbCheckAllClick(Sender: TObject);
procedure mbCheckNoneClick(Sender: TObject); procedure mbCheckNoneClick(Sender: TObject);
procedure mbCollapseTreeClick(Sender: TObject); procedure mbCollapseTreeClick(Sender: TObject);
procedure mbExpandTreeClick(Sender: TObject); procedure mbExpandTreeClick(Sender: TObject);
procedure mbOptonsMainClick(Sender: TObject); procedure mbOptionsMainClick(Sender: TObject);
procedure mbOptionsPkgClick(Sender: TObject);
procedure mbRefreshClick(Sender: TObject); procedure mbRefreshClick(Sender: TObject);
private private
// Подготовка директорий // Подготовка директорий
@ -90,6 +92,16 @@ begin
PrepareDirs(); PrepareDirs();
PreparePackages(); PreparePackages();
end; end;
procedure TdmMain.mbAboutClick(Sender: TObject);
var
fmOptions: TfmOptions;
begin
fmOptions := TfmOptions.Create(fmMain);
fmOptions.PageControl.ActivePageIndex := 2;
fmOptions.ShowModal;
end;
{------------------------------------------------------------------------------ {------------------------------------------------------------------------------
Конструктор: TdmMain.SetVSTCheckState() Конструктор: TdmMain.SetVSTCheckState()
@ -176,11 +188,6 @@ begin
end; end;
end; end;
procedure TdmMain.mbOptonsMainClick(Sender: TObject);
begin
fmOptions.ShowModal;
end;
{------------------------------------------------------------------------------ {------------------------------------------------------------------------------
Процедура: TdmMain.mbRefreshClick() Процедура: TdmMain.mbRefreshClick()
Назначение: Обновление списка пакетов и дерева на активной вкладке главного окна Назначение: Обновление списка пакетов и дерева на активной вкладке главного окна
@ -222,6 +229,23 @@ begin
SoftPackages.Load(ptSoft); SoftPackages.Load(ptSoft);
ToolsPackages := TPackageList.Create; ToolsPackages := TPackageList.Create;
ToolsPackages.Load(ptTools); ToolsPackages.Load(ptTools);
end;
procedure TdmMain.mbOptionsMainClick(Sender: TObject);
var
fmOptions: TfmOptions;
begin
fmOptions := TfmOptions.Create(fmMain);
fmOptions.ShowModal;
end;
procedure TdmMain.mbOptionsPkgClick(Sender: TObject);
var
fmOptions: TfmOptions;
begin
fmOptions := TfmOptions.Create(fmMain);
fmOptions.PageControl.ActivePageIndex := 1;
fmOptions.ShowModal;
end; end;
end. end.

View File

@ -1,7 +1,7 @@
object fmMain: TfmMain object fmMain: TfmMain
Left = 301 Left = 301
Height = 450 Height = 450
Top = 85 Top = 108
Width = 350 Width = 350
BorderIcons = [biSystemMenu, biMinimize] BorderIcons = [biSystemMenu, biMinimize]
Caption = 'ABTool' Caption = 'ABTool'
@ -13,7 +13,7 @@ object fmMain: TfmMain
Constraints.MinWidth = 350 Constraints.MinWidth = 350
Font.CharSet = RUSSIAN_CHARSET Font.CharSet = RUSSIAN_CHARSET
Font.Height = -11 Font.Height = -11
Font.Name = 'Microsoft Sans Serif' Font.Name = 'Tahoma'
Font.Pitch = fpVariable Font.Pitch = fpVariable
Font.Quality = fqDraft Font.Quality = fqDraft
Icon.Data = { Icon.Data = {
@ -3222,19 +3222,18 @@ object fmMain: TfmMain
Width = 350 Width = 350
ActivePage = tabSoft ActivePage = tabSoft
Align = alClient Align = alClient
TabHeight = 20
TabIndex = 0 TabIndex = 0
TabOrder = 0 TabOrder = 0
TabWidth = 86 TabWidth = 86
OnChange = PageControlChange OnChange = PageControlChange
object tabSoft: TTabSheet object tabSoft: TTabSheet
Caption = 'Установка' Caption = 'Установка'
ClientHeight = 402 ClientHeight = 404
ClientWidth = 342 ClientWidth = 342
ImageIndex = 104 ImageIndex = 104
object vstSoftPkgContents: TVirtualStringTree object vstSoftPkgContents: TVirtualStringTree
Left = 0 Left = 0
Height = 299 Height = 301
Top = 62 Top = 62
Width = 342 Width = 342
Align = alClient Align = alClient
@ -3396,13 +3395,13 @@ object fmMain: TfmMain
object btnSoftStart: TButton object btnSoftStart: TButton
Left = 0 Left = 0
Height = 38 Height = 38
Top = 364 Top = 366
Width = 342 Width = 342
Align = alBottom Align = alBottom
Caption = 'Приступить к установке' Caption = 'Приступить к установке'
Font.CharSet = RUSSIAN_CHARSET Font.CharSet = RUSSIAN_CHARSET
Font.Height = -16 Font.Height = -16
Font.Name = 'Microsoft Sans Serif' Font.Name = 'Tahoma'
Font.Pitch = fpVariable Font.Pitch = fpVariable
Font.Quality = fqDraft Font.Quality = fqDraft
ParentFont = False ParentFont = False
@ -3411,7 +3410,7 @@ object fmMain: TfmMain
end end
object tabTools: TTabSheet object tabTools: TTabSheet
Caption = 'Утилиты' Caption = 'Утилиты'
ClientHeight = 402 ClientHeight = 400
ClientWidth = 342 ClientWidth = 342
ImageIndex = 62 ImageIndex = 62
object edToolsSearch: TEdit object edToolsSearch: TEdit
@ -3557,7 +3556,7 @@ object fmMain: TfmMain
end end
object vstToolsPkgContents: TVirtualStringTree object vstToolsPkgContents: TVirtualStringTree
Left = 0 Left = 0
Height = 340 Height = 338
Top = 62 Top = 62
Width = 342 Width = 342
Align = alClient Align = alClient

View File

@ -1,16 +1,16 @@
object fmOptions: TfmOptions object fmOptions: TfmOptions
Left = 401 Left = 656
Height = 448 Height = 450
Top = 132 Top = 109
Width = 349 Width = 350
BorderIcons = [biSystemMenu] BorderIcons = [biSystemMenu]
BorderStyle = bsDialog BorderStyle = bsDialog
Caption = 'ABTool - Настройки' Caption = 'ABTool - Настройки'
ClientHeight = 448 ClientHeight = 450
ClientWidth = 349 ClientWidth = 350
Font.CharSet = RUSSIAN_CHARSET Font.CharSet = RUSSIAN_CHARSET
Font.Height = -11 Font.Height = -11
Font.Name = 'Microsoft Sans Serif' Font.Name = 'Tahoma'
Font.Pitch = fpVariable Font.Pitch = fpVariable
Font.Quality = fqDraft Font.Quality = fqDraft
Icon.Data = { Icon.Data = {
@ -3215,33 +3215,34 @@ object fmOptions: TfmOptions
Left = 0 Left = 0
Height = 416 Height = 416
Top = 0 Top = 0
Width = 349 Width = 350
ActivePage = tabCommon ActivePage = tabCommon
Align = alTop Align = alTop
TabIndex = 0 TabIndex = 0
TabOrder = 0 TabOrder = 0
TabWidth = 86
object tabCommon: TTabSheet object tabCommon: TTabSheet
Caption = 'Общие' Caption = 'Общие'
ClientHeight = 390 ClientHeight = 390
ClientWidth = 341 ClientWidth = 342
object GroupBox1: TGroupBox object grpOptInstall: TGroupBox
Left = 2 Left = 5
Height = 147 Height = 171
Top = 5 Top = 131
Width = 337 Width = 332
Align = alTop Align = alTop
BorderSpacing.Left = 2 BorderSpacing.Left = 5
BorderSpacing.Top = 5 BorderSpacing.Top = 5
BorderSpacing.Right = 2 BorderSpacing.Right = 5
Caption = 'Вкладка «Установка»' Caption = 'Вкладка «Установка»'
ClientHeight = 129 ClientHeight = 153
ClientWidth = 333 ClientWidth = 328
TabOrder = 0 TabOrder = 0
object CheckBox1: TCheckBox object cbChkExitCodes: TCheckBox
Left = 5 Left = 5
Height = 19 Height = 19
Top = 5 Top = 5
Width = 323 Width = 318
Align = alTop Align = alTop
AutoSize = False AutoSize = False
BorderSpacing.Left = 5 BorderSpacing.Left = 5
@ -3250,11 +3251,11 @@ object fmOptions: TfmOptions
Caption = 'Немедленно сообщать о коде возврата <> 0' Caption = 'Немедленно сообщать о коде возврата <> 0'
TabOrder = 0 TabOrder = 0
end end
object CheckBox2: TCheckBox object cbDntUnChkItems: TCheckBox
Left = 5 Left = 5
Height = 19 Height = 19
Top = 29 Top = 29
Width = 323 Width = 318
Align = alTop Align = alTop
AutoSize = False AutoSize = False
BorderSpacing.Left = 5 BorderSpacing.Left = 5
@ -3263,11 +3264,11 @@ object fmOptions: TfmOptions
Caption = 'Не снимать отметку с чекбокса при коде возврата <> 0' Caption = 'Не снимать отметку с чекбокса при коде возврата <> 0'
TabOrder = 1 TabOrder = 1
end end
object CheckBox3: TCheckBox object cbShowProgress: TCheckBox
Left = 5 Left = 5
Height = 19 Height = 19
Top = 77 Top = 77
Width = 323 Width = 318
Align = alTop Align = alTop
AutoSize = False AutoSize = False
BorderSpacing.Left = 5 BorderSpacing.Left = 5
@ -3276,24 +3277,24 @@ object fmOptions: TfmOptions
Caption = 'Отображать общий ход установки программ' Caption = 'Отображать общий ход установки программ'
TabOrder = 2 TabOrder = 2
end end
object CheckBox4: TCheckBox object cbColorSoftTree: TCheckBox
Left = 5 Left = 5
Height = 19 Height = 19
Top = 53 Top = 53
Width = 323 Width = 318
Align = alTop Align = alTop
AutoSize = False AutoSize = False
BorderSpacing.Left = 5 BorderSpacing.Left = 5
BorderSpacing.Top = 5 BorderSpacing.Top = 5
BorderSpacing.Right = 5 BorderSpacing.Right = 5
Caption = 'Раскрашивать список програм после установки' Caption = 'Раскрашивать список программ после установки'
TabOrder = 3 TabOrder = 3
end end
object CheckBox5: TCheckBox object cbQuietREG: TCheckBox
Left = 5 Left = 5
Height = 19 Height = 19
Top = 101 Top = 101
Width = 323 Width = 318
Align = alTop Align = alTop
AutoSize = False AutoSize = False
BorderSpacing.Left = 5 BorderSpacing.Left = 5
@ -3302,99 +3303,121 @@ object fmOptions: TfmOptions
Caption = 'Тихий импорт REG-файлов' Caption = 'Тихий импорт REG-файлов'
TabOrder = 4 TabOrder = 4
end end
object cbExpandSoft: TCheckBox
Left = 5
Height = 19
Top = 125
Width = 318
Align = alTop
AutoSize = False
BorderSpacing.Left = 5
BorderSpacing.Top = 5
BorderSpacing.Right = 5
Caption = 'Раскрывать дерево после загрузки пакета'
TabOrder = 5
end
end end
object GroupBox2: TGroupBox object grpOptTools: TGroupBox
Left = 2 Left = 5
Height = 73 Height = 73
Top = 157 Top = 307
Width = 337 Width = 332
Align = alTop Align = alTop
BorderSpacing.Left = 2 BorderSpacing.Left = 5
BorderSpacing.Top = 5 BorderSpacing.Top = 5
BorderSpacing.Right = 2 BorderSpacing.Right = 5
Caption = 'Вкладка «Утилиты»' Caption = 'Вкладка «Утилиты»'
ClientHeight = 55 ClientHeight = 55
ClientWidth = 333 ClientWidth = 328
TabOrder = 1 TabOrder = 1
object CheckBox6: TCheckBox object cbHideOnTool: TCheckBox
Left = 5 Left = 5
Height = 19 Height = 19
Top = 5 Top = 5
Width = 323 Width = 318
Align = alTop Align = alTop
AutoSize = False AutoSize = False
BorderSpacing.Left = 5 BorderSpacing.Left = 5
BorderSpacing.Top = 5 BorderSpacing.Top = 5
BorderSpacing.Right = 5 BorderSpacing.Right = 5
Caption = 'Немедленно сообщать о коде возврата <> 0' Caption = 'Скрывать главное окно при запуске утилит'
TabOrder = 0 TabOrder = 0
end end
object CheckBox7: TCheckBox object cbExpandTools: TCheckBox
Left = 5 Left = 5
Height = 19 Height = 19
Top = 29 Top = 29
Width = 323 Width = 318
Align = alTop Align = alTop
AutoSize = False AutoSize = False
BorderSpacing.Left = 5 BorderSpacing.Left = 5
BorderSpacing.Top = 5 BorderSpacing.Top = 5
BorderSpacing.Right = 5 BorderSpacing.Right = 5
Caption = 'Не снимать отметку с чекбокса при коде возврата <> 0' Caption = 'Раскрывать дерево после загрузки пакета'
TabOrder = 1 TabOrder = 1
end end
end end
end object grpOptMainform: TGroupBox
object tabUI: TTabSheet
Caption = 'Интерфейс'
ClientHeight = 390
ClientWidth = 341
object CheckBox8: TCheckBox
Left = 5 Left = 5
Height = 19 Height = 121
Top = 77
Width = 331
Align = alTop
BorderSpacing.Left = 5
BorderSpacing.Top = 5
BorderSpacing.Right = 5
Caption = 'Рисовать линии при отрисовке деревьев'
TabOrder = 0
end
object CheckBox9: TCheckBox
Left = 5
Height = 19
Top = 29
Width = 331
Align = alTop
BorderSpacing.Left = 5
BorderSpacing.Top = 5
BorderSpacing.Right = 5
Caption = 'Прилипание окон к краям экрана'
TabOrder = 1
end
object CheckBox10: TCheckBox
Left = 5
Height = 19
Top = 5 Top = 5
Width = 331 Width = 332
Align = alTop Align = alTop
BorderSpacing.Left = 5 BorderSpacing.Left = 5
BorderSpacing.Top = 5 BorderSpacing.Top = 5
BorderSpacing.Right = 5 BorderSpacing.Right = 5
Caption = 'Поверх всех окон' Caption = 'Главное окно'
ClientHeight = 103
ClientWidth = 328
TabOrder = 2 TabOrder = 2
end object cbOnTop: TCheckBox
object CheckBox11: TCheckBox Left = 5
Left = 5 Height = 19
Height = 19 Top = 77
Top = 53 Width = 318
Width = 331 Align = alTop
Align = alTop BorderSpacing.Left = 5
BorderSpacing.Left = 5 BorderSpacing.Top = 5
BorderSpacing.Top = 5 BorderSpacing.Right = 5
BorderSpacing.Right = 5 Caption = 'Поверх всех окон'
Caption = 'Показывать описания пакетов' TabOrder = 0
TabOrder = 3 end
object cbDrawOutlines: TCheckBox
Left = 5
Height = 19
Top = 53
Width = 318
Align = alTop
BorderSpacing.Left = 5
BorderSpacing.Top = 5
BorderSpacing.Right = 5
Caption = 'Рисовать линии при отрисовке деревьев'
TabOrder = 1
end
object cbShowPkgDesc: TCheckBox
Left = 5
Height = 19
Top = 29
Width = 318
Align = alTop
BorderSpacing.Left = 5
BorderSpacing.Top = 5
BorderSpacing.Right = 5
Caption = 'Показывать описания пакетов'
TabOrder = 2
end
object cbScreenSnap: TCheckBox
Left = 5
Height = 19
Top = 5
Width = 318
Align = alTop
BorderSpacing.Left = 5
BorderSpacing.Top = 5
BorderSpacing.Right = 5
Caption = 'Прилипание к краям экрана'
TabOrder = 3
end
end end
end end
object tabPackages: TTabSheet object tabPackages: TTabSheet
@ -3403,11 +3426,12 @@ object fmOptions: TfmOptions
object tabAbout: TTabSheet object tabAbout: TTabSheet
Caption = 'О программе' Caption = 'О программе'
ClientHeight = 390 ClientHeight = 390
ClientWidth = 341 ClientWidth = 342
OnContextPopup = tabAboutContextPopup
object imgLogo: TImage object imgLogo: TImage
Left = 4 Left = 147
Height = 48 Height = 48
Top = 8 Top = 12
Width = 48 Width = 48
AutoSize = True AutoSize = True
Picture.Data = { Picture.Data = {
@ -3567,124 +3591,165 @@ object fmOptions: TfmOptions
} }
Transparent = True Transparent = True
end end
object Label1: TLabel object labAboutTitle: TLabel
Left = 64 Left = 115
Height = 19 Height = 19
Top = 12 Top = 68
Width = 104 Width = 113
Caption = 'ABTool v0.7.1' Caption = 'ABTool v0.7.1'
Font.CharSet = RUSSIAN_CHARSET Font.CharSet = RUSSIAN_CHARSET
Font.Height = -16 Font.Height = -16
Font.Name = 'Arial' Font.Name = 'Tahoma'
Font.Pitch = fpVariable Font.Pitch = fpVariable
Font.Quality = fqDraft Font.Quality = fqDraft
Font.Style = [fsBold] Font.Style = [fsBold]
ParentColor = False ParentColor = False
ParentFont = False ParentFont = False
end end
object Label2: TLabel object labCopyright: TLabel
Left = 64 Left = 109
Height = 13 Height = 13
Top = 43 Top = 368
Width = 71 Width = 124
Caption = 'Что нового:' Caption = 'Anthony Axenov (c) 2019'
Font.CharSet = RUSSIAN_CHARSET Font.CharSet = RUSSIAN_CHARSET
Font.Height = -11 Font.Height = -11
Font.Name = 'Microsoft Sans Serif' Font.Name = 'Tahoma'
Font.Pitch = fpVariable Font.Pitch = fpVariable
Font.Quality = fqDraft Font.Quality = fqDraft
Font.Style = [fsBold]
ParentColor = False ParentColor = False
ParentFont = False ParentFont = False
end end
object mmAbout: TMemo object btnCheckUpdates: TButton
Left = 4 Left = 105
Height = 284 Height = 25
Top = 64 Top = 208
Width = 336 Width = 132
Caption = 'Проверить обновления'
TabOrder = 0
end
object btnChangelog: TButton
Left = 105
Height = 25
Hint = 'Откроется браузер по умолчанию'
Top = 236
Width = 132
Caption = 'Список изменений'
TabOrder = 1
end
object btnBugReport: TButton
Left = 105
Height = 25
Hint = 'Откроется браузер по умолчанию'
Top = 264
Width = 132
Caption = 'Сообщить об ошибке'
TabOrder = 2
end
object btnOnlineHelp: TButton
Left = 105
Height = 25
Top = 304
Width = 132
Caption = 'Онлайн-справка'
TabOrder = 3
end
object btnLicense: TButton
Left = 105
Height = 25
Top = 332
Width = 132
Caption = 'Лицензия'
TabOrder = 4
end
object labDescription: TLabel
Left = 27
Height = 88
Top = 104
Width = 288
Alignment = taCenter
AutoSize = False
Caption = 'ABTool упростит установку программ на любой компьютер, избавляя от поисков инсталляторов на носителях. Обеспечит быстрый запуск ваших portable-утилит для диагностики и настройки ОС. Отображает информацию о системе. Ведёт подробный лог всех операций.'
ParentColor = False
WordWrap = True
end
end
object tabLicense: TTabSheet
Caption = 'Лицензия'
ClientHeight = 390
ClientWidth = 342
object mmLicenseText: TMemo
Left = 0
Height = 390
Top = 0
Width = 342
Align = alClient
BorderStyle = bsNone BorderStyle = bsNone
Font.CharSet = RUSSIAN_CHARSET
Font.Height = -11
Font.Name = 'Lucida Sans Unicode'
Font.Pitch = fpVariable
Font.Quality = fqDraft
Lines.Strings = (
'The MIT License (MIT)'
''
'Copyright (c) 2019 Anthony Axenov'
''
'Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:'
''
'The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.'
''
'THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.'
''
'Лицензия MIT'
''
'Copyright (c) 2019 Аксенов Антон'
''
'Данная лицензия разрешает лицам, получившим копию данного программного обеспечения и сопутствующей документации (в дальнейшем именуемыми «Программное Обеспечение»), безвозмездно использовать Программное Обеспечение без ограничений, включая неограниченное право на использование, копирование, изменение, слияние, публикацию, распространение, сублицензирование и/или продажу копий Программного Обеспечения, а также лицам, которым предоставляется данное Программное Обеспечение, при соблюдении следующих условий:'
''
'Указанное выше уведомление об авторском праве и данные условия должны быть включены во все копии или значимые части данного Программного Обеспечения.'
''
'ДАННОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРЕДОСТАВЛЯЕТСЯ «КАК ЕСТЬ», БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ, ЯВНО ВЫРАЖЕННЫХ ИЛИ ПОДРАЗУМЕВАЕМЫХ, ВКЛЮЧАЯ ГАРАНТИИ ТОВАРНОЙ ПРИГОДНОСТИ, СООТВЕТСТВИЯ ПО ЕГО КОНКРЕТНОМУ НАЗНАЧЕНИЮ И ОТСУТСТВИЯ НАРУШЕНИЙ, НО НЕ ОГРАНИЧИВАЯСЬ ИМИ. НИ В КАКОМ СЛУЧАЕ АВТОРЫ ИЛИ ПРАВООБЛАДАТЕЛИ НЕ НЕСУТ ОТВЕТСТВЕННОСТИ ПО КАКИМ-ЛИБО ИСКАМ, ЗА УЩЕРБ ИЛИ ПО ИНЫМ ТРЕБОВАНИЯМ, В ТОМ ЧИСЛЕ, ПРИ ДЕЙСТВИИ КОНТРАКТА, ДЕЛИКТЕ ИЛИ ИНОЙ СИТУАЦИИ, ВОЗНИКШИМ ИЗ-ЗА ИСПОЛЬЗОВАНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ИЛИ ИНЫХ ДЕЙСТВИЙ С ПРОГРАММНЫМ ОБЕСПЕЧЕНИЕМ.'
)
ParentFont = False
ReadOnly = True
ScrollBars = ssVertical ScrollBars = ssVertical
TabOrder = 0 TabOrder = 0
end end
object Label3: TLabel
Left = 304
Height = 13
Top = 372
Width = 33
Caption = 'GitHub'
ParentColor = False
end
object Label4: TLabel
Left = 248
Height = 13
Top = 372
Width = 45
Caption = 'Веб-сайт'
ParentColor = False
end
object Label5: TLabel
Left = 4
Height = 13
Top = 372
Width = 83
Caption = 'Онлайн-справка'
ParentColor = False
end
object Label6: TLabel
Left = 4
Height = 13
Top = 352
Width = 107
Caption = 'Сообщить об ошибке'
ParentColor = False
end
object Label7: TLabel
Left = 217
Height = 13
Top = 352
Width = 120
Caption = 'Anthony Axenov (c) 2019'
Font.CharSet = RUSSIAN_CHARSET
Font.Color = clSilver
Font.Height = -11
Font.Name = 'Microsoft Sans Serif'
Font.Pitch = fpVariable
Font.Quality = fqDraft
ParentColor = False
ParentFont = False
end
object Label8: TLabel
Left = 217
Height = 13
Top = 16
Width = 118
Caption = 'Проверить обновления'
ParentColor = False
end
end end
end end
object Button3: TButton object btnClose: TButton
Left = 268 Left = 272
Height = 25 Height = 25
Top = 420 Top = 420
Width = 75 Width = 75
Caption = 'Button3' Anchors = [akTop, akRight]
Caption = 'Закрыть'
OnClick = btnCloseClick
TabOrder = 1 TabOrder = 1
end end
object Button2: TButton object btnSave: TButton
Left = 108 Left = 109
Height = 25 Height = 25
Top = 420 Top = 420
Width = 127 Width = 132
Caption = 'Button2' Anchors = [akTop, akLeft, akRight]
Caption = 'Сохранить'
Font.CharSet = RUSSIAN_CHARSET
Font.Height = -11
Font.Name = 'Tahoma'
Font.Pitch = fpVariable
Font.Quality = fqDraft
Font.Style = [fsBold]
ParentFont = False
TabOrder = 2 TabOrder = 2
end end
object Button1: TButton object btnSetDefault: TButton
Left = 4 Left = 4
Height = 25 Height = 25
Top = 420 Top = 420
Width = 75 Width = 75
Caption = 'Button1' Caption = 'Сброс'
TabOrder = 3 TabOrder = 3
end end
end end

View File

@ -6,45 +6,50 @@ interface
uses uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, ButtonPanel, Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, ButtonPanel,
ComCtrls, ExtCtrls, StdCtrls, Menus; ComCtrls, ExtCtrls, StdCtrls, Menus, Types;
type type
{ TfmOptions } { TfmOptions }
TfmOptions = class(TForm) TfmOptions = class(TForm)
Button1: TButton; btnSetDefault: TButton;
Button2: TButton; btnSave: TButton;
Button3: TButton; btnClose: TButton;
CheckBox1: TCheckBox; btnCheckUpdates: TButton;
CheckBox10: TCheckBox; btnChangelog: TButton;
CheckBox11: TCheckBox; btnBugReport: TButton;
CheckBox2: TCheckBox; btnOnlineHelp: TButton;
CheckBox3: TCheckBox; btnLicense: TButton;
CheckBox4: TCheckBox; cbChkExitCodes: TCheckBox;
CheckBox5: TCheckBox; cbDntUnChkItems: TCheckBox;
CheckBox6: TCheckBox; cbExpandSoft: TCheckBox;
CheckBox7: TCheckBox; cbExpandTools: TCheckBox;
CheckBox8: TCheckBox; cbShowProgress: TCheckBox;
CheckBox9: TCheckBox; cbColorSoftTree: TCheckBox;
GroupBox1: TGroupBox; cbOnTop: TCheckBox;
GroupBox2: TGroupBox; cbShowPkgDesc: TCheckBox;
cbQuietREG: TCheckBox;
cbHideOnTool: TCheckBox;
cbDrawOutlines: TCheckBox;
cbScreenSnap: TCheckBox;
grpOptMainform: TGroupBox;
grpOptInstall: TGroupBox;
grpOptTools: TGroupBox;
imgLogo: TImage; imgLogo: TImage;
Label1: TLabel; labAboutTitle: TLabel;
Label2: TLabel; labCopyright: TLabel;
Label3: TLabel; labDescription: TLabel;
Label4: TLabel; mmLicenseText: TMemo;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
mmAbout: TMemo;
PageControl: TPageControl; PageControl: TPageControl;
tabCommon: TTabSheet; tabCommon: TTabSheet;
tabUI: TTabSheet;
tabPackages: TTabSheet; tabPackages: TTabSheet;
tabAbout: TTabSheet; tabAbout: TTabSheet;
tabLicense: TTabSheet;
procedure btnCloseClick(Sender: TObject);
procedure FormCreate(Sender: TObject); procedure FormCreate(Sender: TObject);
procedure tabAboutContextPopup(Sender: TObject; MousePos: TPoint;
var Handled: Boolean);
private private
public public
@ -65,5 +70,16 @@ begin
end; end;
procedure TfmOptions.btnCloseClick(Sender: TObject);
begin
Self.Destroy;
end;
procedure TfmOptions.tabAboutContextPopup(Sender: TObject; MousePos: TPoint;
var Handled: Boolean);
begin
end;
end. end.