Добавил окна добавления интеграций с ОБС
This commit is contained in:
+8
-2
@@ -8,16 +8,22 @@ uses
|
|||||||
fAI in 'fAI.pas' {frAI: TFrame},
|
fAI in 'fAI.pas' {frAI: TFrame},
|
||||||
fNotify in 'fNotify.pas' {frNotify: TFrame},
|
fNotify in 'fNotify.pas' {frNotify: TFrame},
|
||||||
fAutoActions in 'fAutoActions.pas' {frAutoActions: TFrame},
|
fAutoActions in 'fAutoActions.pas' {frAutoActions: TFrame},
|
||||||
fChatOBS in 'fChatOBS.pas' {frChatOBS: TFrame},
|
fOBS in 'fOBS.pas' {frOBS: TFrame},
|
||||||
fLog in 'fLog.pas' {frLog: TFrame},
|
fLog in 'fLog.pas' {frLog: TFrame},
|
||||||
uRecords in 'uRecords.pas',
|
uRecords in 'uRecords.pas',
|
||||||
fCommands in 'fCommands.pas' {frCommands: TFrame},
|
fCommands in 'fCommands.pas' {frCommands: TFrame},
|
||||||
uDataBase in 'uDataBase.pas';
|
uDataBase in 'uDataBase.pas',
|
||||||
|
fColorSettings in 'fColorSettings.pas' {frColorSettings: TFrame},
|
||||||
|
uCreateChat in 'uCreateChat.pas' {fCreateChat},
|
||||||
|
fFontSettings in 'fFontSettings.pas' {frFontSettings: TFrame},
|
||||||
|
uCreateNotify in 'uCreateNotify.pas' {fCreateNotify};
|
||||||
|
|
||||||
{$R *.res}
|
{$R *.res}
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Application.Initialize;
|
Application.Initialize;
|
||||||
Application.CreateForm(TForm1, Form1);
|
Application.CreateForm(TForm1, Form1);
|
||||||
|
Application.CreateForm(TfCreateChat, fCreateChat);
|
||||||
|
Application.CreateForm(TfCreateNotify, fCreateNotify);
|
||||||
Application.Run;
|
Application.Run;
|
||||||
end.
|
end.
|
||||||
|
|||||||
+27
-4
@@ -330,8 +330,8 @@
|
|||||||
<FormType>fmx</FormType>
|
<FormType>fmx</FormType>
|
||||||
<DesignClass>TFrame</DesignClass>
|
<DesignClass>TFrame</DesignClass>
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
<DCCReference Include="fChatOBS.pas">
|
<DCCReference Include="fOBS.pas">
|
||||||
<Form>frChatOBS</Form>
|
<Form>frOBS</Form>
|
||||||
<FormType>fmx</FormType>
|
<FormType>fmx</FormType>
|
||||||
<DesignClass>TFrame</DesignClass>
|
<DesignClass>TFrame</DesignClass>
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
@@ -347,6 +347,25 @@
|
|||||||
<DesignClass>TFrame</DesignClass>
|
<DesignClass>TFrame</DesignClass>
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
<DCCReference Include="uDataBase.pas"/>
|
<DCCReference Include="uDataBase.pas"/>
|
||||||
|
<DCCReference Include="fColorSettings.pas">
|
||||||
|
<Form>frColorSettings</Form>
|
||||||
|
<FormType>fmx</FormType>
|
||||||
|
<DesignClass>TFrame</DesignClass>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="uCreateChat.pas">
|
||||||
|
<Form>fCreateChat</Form>
|
||||||
|
<FormType>fmx</FormType>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="fFontSettings.pas">
|
||||||
|
<Form>frFontSettings</Form>
|
||||||
|
<FormType>fmx</FormType>
|
||||||
|
<DesignClass>TFrame</DesignClass>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="uCreateNotify.pas">
|
||||||
|
<Form>fCreateNotify</Form>
|
||||||
|
<FormType>fmx</FormType>
|
||||||
|
</DCCReference>
|
||||||
|
<None Include=".gitignore"/>
|
||||||
<BuildConfiguration Include="Base">
|
<BuildConfiguration Include="Base">
|
||||||
<Key>Base</Key>
|
<Key>Base</Key>
|
||||||
</BuildConfiguration>
|
</BuildConfiguration>
|
||||||
@@ -384,6 +403,12 @@
|
|||||||
<Overwrite>true</Overwrite>
|
<Overwrite>true</Overwrite>
|
||||||
</Platform>
|
</Platform>
|
||||||
</DeployFile>
|
</DeployFile>
|
||||||
|
<DeployFile LocalName=".gitignore" Configuration="Debug" Class="ProjectFile">
|
||||||
|
<Platform Name="Win32">
|
||||||
|
<RemoteDir>.\</RemoteDir>
|
||||||
|
<Overwrite>true</Overwrite>
|
||||||
|
</Platform>
|
||||||
|
</DeployFile>
|
||||||
<DeployFile LocalName="Win32\Debug\TTW_Bot_app.exe" Configuration="Debug" Class="ProjectOutput">
|
<DeployFile LocalName="Win32\Debug\TTW_Bot_app.exe" Configuration="Debug" Class="ProjectOutput">
|
||||||
<Platform Name="Win32">
|
<Platform Name="Win32">
|
||||||
<RemoteName>TTW_Bot_app.exe</RemoteName>
|
<RemoteName>TTW_Bot_app.exe</RemoteName>
|
||||||
@@ -1344,11 +1369,9 @@
|
|||||||
<Platforms>
|
<Platforms>
|
||||||
<Platform value="Android">True</Platform>
|
<Platform value="Android">True</Platform>
|
||||||
<Platform value="Android64">True</Platform>
|
<Platform value="Android64">True</Platform>
|
||||||
<Platform value="iOSDevice32">False</Platform>
|
|
||||||
<Platform value="iOSDevice64">True</Platform>
|
<Platform value="iOSDevice64">True</Platform>
|
||||||
<Platform value="iOSSimARM64">True</Platform>
|
<Platform value="iOSSimARM64">True</Platform>
|
||||||
<Platform value="Linux64">True</Platform>
|
<Platform value="Linux64">True</Platform>
|
||||||
<Platform value="OSX32">False</Platform>
|
|
||||||
<Platform value="OSX64">True</Platform>
|
<Platform value="OSX64">True</Platform>
|
||||||
<Platform value="OSXARM64">True</Platform>
|
<Platform value="OSXARM64">True</Platform>
|
||||||
<Platform value="Win32">True</Platform>
|
<Platform value="Win32">True</Platform>
|
||||||
|
|||||||
-393
@@ -1,393 +0,0 @@
|
|||||||
object frChatOBS: TfrChatOBS
|
|
||||||
Size.Width = 922.000000000000000000
|
|
||||||
Size.Height = 408.000000000000000000
|
|
||||||
Size.PlatformDefault = False
|
|
||||||
object GroupBox13: TGroupBox
|
|
||||||
Position.X = 562.000000000000000000
|
|
||||||
Position.Y = 8.000000000000000000
|
|
||||||
Size.Width = 351.000000000000000000
|
|
||||||
Size.Height = 203.000000000000000000
|
|
||||||
Size.PlatformDefault = False
|
|
||||||
Text = #1064#1088#1080#1092#1090
|
|
||||||
TabOrder = 2
|
|
||||||
object Label41: TLabel
|
|
||||||
Position.X = 8.000000000000000000
|
|
||||||
Position.Y = 22.000000000000000000
|
|
||||||
Size.Width = 100.000000000000000000
|
|
||||||
Size.Height = 17.000000000000000000
|
|
||||||
Size.PlatformDefault = False
|
|
||||||
TextSettings.Trimming = None
|
|
||||||
Text = #1056#1072#1079#1084#1077#1088' '#1096#1088#1080#1092#1090#1072
|
|
||||||
TabOrder = 9
|
|
||||||
end
|
|
||||||
object sbFontSize: TSpinBox
|
|
||||||
Touch.InteractiveGestures = [LongTap, DoubleTap]
|
|
||||||
TabOrder = 1
|
|
||||||
Cursor = crIBeam
|
|
||||||
Value = 14.000000000000000000
|
|
||||||
Position.X = 8.000000000000000000
|
|
||||||
Position.Y = 47.000000000000000000
|
|
||||||
end
|
|
||||||
object ccbFontColor: TColorComboBox
|
|
||||||
DropDownKind = Custom
|
|
||||||
Color = claNull
|
|
||||||
DisableFocusEffect = False
|
|
||||||
ItemIndex = 147
|
|
||||||
Position.X = 8.000000000000000000
|
|
||||||
Position.Y = 102.000000000000000000
|
|
||||||
Size.Width = 120.000000000000000000
|
|
||||||
Size.Height = 22.000000000000000000
|
|
||||||
Size.PlatformDefault = False
|
|
||||||
TabOrder = 41
|
|
||||||
end
|
|
||||||
object Label49: TLabel
|
|
||||||
Position.X = 8.000000000000000000
|
|
||||||
Position.Y = 77.000000000000000000
|
|
||||||
TextSettings.Trimming = None
|
|
||||||
Text = #1062#1074#1077#1090' '#1096#1088#1080#1092#1090#1072
|
|
||||||
TabOrder = 39
|
|
||||||
end
|
|
||||||
object cbFontStyleDefault: TComboBox
|
|
||||||
Items.Strings = (
|
|
||||||
'Arial'
|
|
||||||
'Arial Cyr'
|
|
||||||
'Arial Black'
|
|
||||||
'Book antiqua'
|
|
||||||
'Bookman old style'
|
|
||||||
'Calibri'
|
|
||||||
'Cambria'
|
|
||||||
'Candara'
|
|
||||||
'Century'
|
|
||||||
'Century gothic'
|
|
||||||
'Comic Sans Ms'
|
|
||||||
'Consolas'
|
|
||||||
'Constantia'
|
|
||||||
'Corbel'
|
|
||||||
'Courier'
|
|
||||||
'Courier New'
|
|
||||||
'Courier, monospace'
|
|
||||||
'Cursive'
|
|
||||||
'Franklin Gothic'
|
|
||||||
'Gabriola'
|
|
||||||
'Garamond'
|
|
||||||
'Georgia'
|
|
||||||
'Helvetica'
|
|
||||||
'Impact'
|
|
||||||
'Lucida console'
|
|
||||||
'Lucida Sans Unicode'
|
|
||||||
'Mistral (Mistral)'
|
|
||||||
'monospace'
|
|
||||||
'Monotype Corsiva'
|
|
||||||
'MS Sans Serif'
|
|
||||||
'MS Serif'
|
|
||||||
'Palatino Linotype'
|
|
||||||
'Roboto'
|
|
||||||
'Sans-serif'
|
|
||||||
'Segoe print'
|
|
||||||
'Segoe script'
|
|
||||||
'Sylfaen'
|
|
||||||
'Tahoma'
|
|
||||||
'Times New Roman'
|
|
||||||
'Trebuchet ms'
|
|
||||||
'Verdana')
|
|
||||||
ItemIndex = 0
|
|
||||||
Position.X = 136.000000000000000000
|
|
||||||
Position.Y = 47.000000000000000000
|
|
||||||
Size.Width = 206.000000000000000000
|
|
||||||
Size.Height = 22.000000000000000000
|
|
||||||
Size.PlatformDefault = False
|
|
||||||
TabOrder = 0
|
|
||||||
end
|
|
||||||
object Label46: TLabel
|
|
||||||
Position.X = 136.000000000000000000
|
|
||||||
Position.Y = 22.000000000000000000
|
|
||||||
TextSettings.Trimming = None
|
|
||||||
Text = #1064#1088#1080#1092#1090
|
|
||||||
TabOrder = 42
|
|
||||||
end
|
|
||||||
object ccbBColor: TColorComboBox
|
|
||||||
DropDownKind = Custom
|
|
||||||
Color = claLime
|
|
||||||
DisableFocusEffect = False
|
|
||||||
ItemIndex = 82
|
|
||||||
Position.X = 8.000000000000000000
|
|
||||||
Position.Y = 157.000000000000000000
|
|
||||||
Size.Width = 120.000000000000000000
|
|
||||||
Size.Height = 22.000000000000000000
|
|
||||||
Size.PlatformDefault = False
|
|
||||||
TabOrder = 40
|
|
||||||
end
|
|
||||||
object Label1: TLabel
|
|
||||||
Position.X = 8.000000000000000000
|
|
||||||
Position.Y = 132.000000000000000000
|
|
||||||
TextSettings.Trimming = None
|
|
||||||
Text = #1062#1074#1077#1090' '#1092#1086#1085#1072
|
|
||||||
TabOrder = 38
|
|
||||||
end
|
|
||||||
object btnChangeBGColor: TButton
|
|
||||||
Position.X = 136.000000000000000000
|
|
||||||
Position.Y = 157.000000000000000000
|
|
||||||
Size.Width = 145.000000000000000000
|
|
||||||
Size.Height = 22.000000000000000000
|
|
||||||
Size.PlatformDefault = False
|
|
||||||
TabOrder = 43
|
|
||||||
Text = #1055#1088#1080#1084#1077#1085#1080#1090#1100' '#1094#1074#1077#1090' '#1092#1086#1085#1072
|
|
||||||
TextSettings.Trimming = None
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object GroupBox12: TGroupBox
|
|
||||||
Position.X = 241.000000000000000000
|
|
||||||
Position.Y = 8.000000000000000000
|
|
||||||
Size.Width = 313.000000000000000000
|
|
||||||
Size.Height = 203.000000000000000000
|
|
||||||
Size.PlatformDefault = False
|
|
||||||
Text = #1041#1083#1086#1082' '#1089#1086#1086#1073#1097#1077#1085#1080#1103
|
|
||||||
TabOrder = 1
|
|
||||||
object cpStyleBlockColor: TColorPanel
|
|
||||||
Color = claWhite
|
|
||||||
Position.X = 16.000000000000000000
|
|
||||||
Position.Y = 45.000000000000000000
|
|
||||||
Size.Width = 161.000000000000000000
|
|
||||||
Size.Height = 150.000000000000000000
|
|
||||||
Size.PlatformDefault = False
|
|
||||||
TabOrder = 7
|
|
||||||
end
|
|
||||||
object Label40: TLabel
|
|
||||||
Position.X = 16.000000000000000000
|
|
||||||
Position.Y = 20.000000000000000000
|
|
||||||
Size.Width = 161.000000000000000000
|
|
||||||
Size.Height = 17.000000000000000000
|
|
||||||
Size.PlatformDefault = False
|
|
||||||
TextSettings.Trimming = None
|
|
||||||
Text = #1062#1074#1077#1090' '#1080' '#1087#1088#1086#1079#1088#1072#1095#1085#1086#1089#1090#1100' '#1073#1083#1086#1082#1072
|
|
||||||
TabOrder = 8
|
|
||||||
end
|
|
||||||
object Label42: TLabel
|
|
||||||
Position.X = 185.000000000000000000
|
|
||||||
Position.Y = 22.000000000000000000
|
|
||||||
TextSettings.Trimming = None
|
|
||||||
Text = #1062#1074#1077#1090' '#1088#1072#1084#1082#1080
|
|
||||||
TabOrder = 38
|
|
||||||
end
|
|
||||||
object ccbStyleBorderColor: TColorComboBox
|
|
||||||
DropDownKind = Custom
|
|
||||||
Color = claNull
|
|
||||||
DisableFocusEffect = False
|
|
||||||
ItemIndex = 147
|
|
||||||
Position.X = 185.000000000000000000
|
|
||||||
Position.Y = 47.000000000000000000
|
|
||||||
Size.Width = 120.000000000000000000
|
|
||||||
Size.Height = 22.000000000000000000
|
|
||||||
Size.PlatformDefault = False
|
|
||||||
TabOrder = 39
|
|
||||||
end
|
|
||||||
object Label44: TLabel
|
|
||||||
Position.X = 185.000000000000000000
|
|
||||||
Position.Y = 132.000000000000000000
|
|
||||||
TextSettings.Trimming = None
|
|
||||||
Text = #1054#1090#1089#1090#1091#1087#1099
|
|
||||||
TabOrder = 41
|
|
||||||
end
|
|
||||||
object sbStyleBlockPadding: TSpinBox
|
|
||||||
Touch.InteractiveGestures = [LongTap, DoubleTap]
|
|
||||||
TabOrder = 43
|
|
||||||
Cursor = crIBeam
|
|
||||||
Value = 10.000000000000000000
|
|
||||||
Position.X = 185.000000000000000000
|
|
||||||
Position.Y = 157.000000000000000000
|
|
||||||
Size.Width = 120.000000000000000000
|
|
||||||
Size.Height = 22.000000000000000000
|
|
||||||
Size.PlatformDefault = False
|
|
||||||
end
|
|
||||||
object sbStyleBlockBorderSize: TSpinBox
|
|
||||||
Touch.InteractiveGestures = [LongTap, DoubleTap]
|
|
||||||
TabOrder = 42
|
|
||||||
Cursor = crIBeam
|
|
||||||
Value = 2.000000000000000000
|
|
||||||
Position.X = 185.000000000000000000
|
|
||||||
Position.Y = 102.000000000000000000
|
|
||||||
Size.Width = 120.000000000000000000
|
|
||||||
Size.Height = 22.000000000000000000
|
|
||||||
Size.PlatformDefault = False
|
|
||||||
end
|
|
||||||
object Label48: TLabel
|
|
||||||
Position.X = 185.000000000000000000
|
|
||||||
Position.Y = 77.000000000000000000
|
|
||||||
TextSettings.Trimming = None
|
|
||||||
Text = #1058#1086#1083#1097#1080#1085#1072' '#1088#1072#1084#1082#1080
|
|
||||||
TabOrder = 40
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object GroupBox10: TGroupBox
|
|
||||||
Position.X = 1.000000000000000000
|
|
||||||
Position.Y = 8.000000000000000000
|
|
||||||
Size.Width = 232.000000000000000000
|
|
||||||
Size.Height = 203.000000000000000000
|
|
||||||
Size.PlatformDefault = False
|
|
||||||
Text = #1053#1072#1089#1090#1088#1086#1081#1082#1080
|
|
||||||
TabOrder = 0
|
|
||||||
object Label27: TLabel
|
|
||||||
Position.X = 8.000000000000000000
|
|
||||||
Position.Y = 22.000000000000000000
|
|
||||||
Size.Width = 249.000000000000000000
|
|
||||||
Size.Height = 17.000000000000000000
|
|
||||||
Size.PlatformDefault = False
|
|
||||||
TextSettings.Trimming = None
|
|
||||||
Text = #1052#1072#1082#1089#1080#1084#1072#1083#1100#1085#1086#1077' '#1082#1086#1083#1080#1095#1077#1089#1090#1074#1086' '#1089#1086#1086#1073#1097#1077#1085#1080#1081
|
|
||||||
TabOrder = 3
|
|
||||||
end
|
|
||||||
object Label38: TLabel
|
|
||||||
Position.X = 8.000000000000000000
|
|
||||||
Position.Y = 77.000000000000000000
|
|
||||||
Size.Width = 249.000000000000000000
|
|
||||||
Size.Height = 17.000000000000000000
|
|
||||||
Size.PlatformDefault = False
|
|
||||||
TextSettings.Trimming = None
|
|
||||||
Text = #1042#1088#1077#1084#1103' '#1086#1090#1086#1073#1088#1072#1078#1077#1085#1080#1103' '#1089#1086#1086#1073#1097#1077#1085#1080#1103
|
|
||||||
TabOrder = 0
|
|
||||||
end
|
|
||||||
object sbMaxMsg: TSpinBox
|
|
||||||
Touch.InteractiveGestures = [LongTap, DoubleTap]
|
|
||||||
TabOrder = 5
|
|
||||||
Cursor = crIBeam
|
|
||||||
Value = 5.000000000000000000
|
|
||||||
Position.X = 8.000000000000000000
|
|
||||||
Position.Y = 47.000000000000000000
|
|
||||||
end
|
|
||||||
object sbTimeMsg: TSpinBox
|
|
||||||
Touch.InteractiveGestures = [LongTap, DoubleTap]
|
|
||||||
TabOrder = 2
|
|
||||||
Cursor = crIBeam
|
|
||||||
Value = 10.000000000000000000
|
|
||||||
Position.X = 8.000000000000000000
|
|
||||||
Position.Y = 102.000000000000000000
|
|
||||||
end
|
|
||||||
object Label39: TLabel
|
|
||||||
Position.X = 8.000000000000000000
|
|
||||||
Position.Y = 132.000000000000000000
|
|
||||||
Size.Width = 193.000000000000000000
|
|
||||||
Size.Height = 17.000000000000000000
|
|
||||||
Size.PlatformDefault = False
|
|
||||||
TextSettings.Trimming = None
|
|
||||||
Text = #1055#1086#1088#1090' '#1042#1077#1073' '#1057#1077#1088#1074#1077#1088#1072
|
|
||||||
TabOrder = 6
|
|
||||||
end
|
|
||||||
object cbFreez: TCheckBox
|
|
||||||
Position.X = 112.000000000000000000
|
|
||||||
Position.Y = 105.000000000000000000
|
|
||||||
Size.Width = 112.000000000000000000
|
|
||||||
Size.Height = 19.000000000000000000
|
|
||||||
Size.PlatformDefault = False
|
|
||||||
TabOrder = 38
|
|
||||||
Text = #1042#1077#1095#1085#1086
|
|
||||||
end
|
|
||||||
object sbWebServerPort: TSpinBox
|
|
||||||
Touch.InteractiveGestures = [LongTap, DoubleTap]
|
|
||||||
TabOrder = 4
|
|
||||||
Cursor = crIBeam
|
|
||||||
Min = 8080.000000000000000000
|
|
||||||
Max = 65000.000000000000000000
|
|
||||||
Value = 8085.000000000000000000
|
|
||||||
Position.X = 8.000000000000000000
|
|
||||||
Position.Y = 157.000000000000000000
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object btnWebChatTest: TButton
|
|
||||||
Position.X = 8.000000000000000000
|
|
||||||
Position.Y = 249.000000000000000000
|
|
||||||
Size.Width = 152.000000000000000000
|
|
||||||
Size.Height = 22.000000000000000000
|
|
||||||
Size.PlatformDefault = False
|
|
||||||
TabOrder = 3
|
|
||||||
Text = #1058#1077#1089#1090#1086#1074#1086#1077' '#1089#1086#1086#1073#1097#1077#1085#1080#1077
|
|
||||||
TextSettings.Trimming = None
|
|
||||||
end
|
|
||||||
object edtWebChatTest: TEdit
|
|
||||||
Touch.InteractiveGestures = [LongTap, DoubleTap]
|
|
||||||
TabOrder = 4
|
|
||||||
Position.X = 8.000000000000000000
|
|
||||||
Position.Y = 219.000000000000000000
|
|
||||||
Size.Width = 225.000000000000000000
|
|
||||||
Size.Height = 22.000000000000000000
|
|
||||||
Size.PlatformDefault = False
|
|
||||||
end
|
|
||||||
object btnCreateWebChat: TButton
|
|
||||||
Position.X = 241.000000000000000000
|
|
||||||
Position.Y = 219.000000000000000000
|
|
||||||
TabOrder = 5
|
|
||||||
Text = #1057#1086#1079#1076#1072#1090#1100' '#1095#1072#1090
|
|
||||||
TextSettings.Trimming = None
|
|
||||||
end
|
|
||||||
object btnDeleteWebChat: TButton
|
|
||||||
Position.X = 329.000000000000000000
|
|
||||||
Position.Y = 219.000000000000000000
|
|
||||||
TabOrder = 6
|
|
||||||
Text = #1059#1076#1072#1083#1080#1090#1100' '#1095#1072#1090
|
|
||||||
TextSettings.Trimming = None
|
|
||||||
end
|
|
||||||
object sgWebChats: TStringGrid
|
|
||||||
Align = Bottom
|
|
||||||
CanFocus = True
|
|
||||||
ClipChildren = True
|
|
||||||
Position.Y = 288.000000000000000000
|
|
||||||
Size.Width = 922.000000000000000000
|
|
||||||
Size.Height = 120.000000000000000000
|
|
||||||
Size.PlatformDefault = False
|
|
||||||
TabOrder = 7
|
|
||||||
RowCount = 0
|
|
||||||
Options = [ColumnResize, ColumnMove, ColLines, RowLines, Tabs, Header, HeaderClick, AutoDisplacement]
|
|
||||||
Viewport.Width = 918.000000000000000000
|
|
||||||
Viewport.Height = 95.000000000000000000
|
|
||||||
object StringColumn1: TStringColumn
|
|
||||||
Header = #1055#1086#1088#1090
|
|
||||||
HeaderSettings.TextSettings.WordWrap = False
|
|
||||||
end
|
|
||||||
object IntegerColumn1: TIntegerColumn
|
|
||||||
Header = #1052#1072#1082#1089' '#1089#1086#1086#1073#1097
|
|
||||||
HeaderSettings.TextSettings.WordWrap = False
|
|
||||||
Size.Width = 80.000000000000000000
|
|
||||||
end
|
|
||||||
object IntegerColumn2: TIntegerColumn
|
|
||||||
Header = #1042#1088#1077#1084#1103' '#1089#1086#1086#1073#1097
|
|
||||||
HeaderSettings.TextSettings.WordWrap = False
|
|
||||||
Size.Width = 82.000000000000000000
|
|
||||||
end
|
|
||||||
object CheckColumn1: TCheckColumn
|
|
||||||
Header = #1042#1077#1095#1085#1086
|
|
||||||
HeaderSettings.TextSettings.WordWrap = False
|
|
||||||
end
|
|
||||||
object StringColumn2: TStringColumn
|
|
||||||
Header = #1062#1074#1077#1090' '#1088#1072#1084#1082#1080
|
|
||||||
HeaderSettings.TextSettings.WordWrap = False
|
|
||||||
end
|
|
||||||
object StringColumn3: TStringColumn
|
|
||||||
Header = #1062#1074#1077#1090' '#1073#1083#1086#1082#1072
|
|
||||||
HeaderSettings.TextSettings.WordWrap = False
|
|
||||||
end
|
|
||||||
object IntegerColumn5: TIntegerColumn
|
|
||||||
Header = #1058#1086#1083#1097#1080#1085#1072
|
|
||||||
HeaderSettings.TextSettings.WordWrap = False
|
|
||||||
Size.Width = 80.000000000000000000
|
|
||||||
end
|
|
||||||
object IntegerColumn4: TIntegerColumn
|
|
||||||
Header = #1054#1090#1089#1090#1091#1087#1099
|
|
||||||
HeaderSettings.TextSettings.WordWrap = False
|
|
||||||
end
|
|
||||||
object StringColumn4: TStringColumn
|
|
||||||
Header = #1064#1088#1080#1092#1090
|
|
||||||
HeaderSettings.TextSettings.WordWrap = False
|
|
||||||
end
|
|
||||||
object StringColumn5: TStringColumn
|
|
||||||
Header = #1062#1074#1077#1090' '#1096#1088#1080#1092#1090#1072
|
|
||||||
HeaderSettings.TextSettings.WordWrap = False
|
|
||||||
end
|
|
||||||
object StringColumn6: TStringColumn
|
|
||||||
Header = #1062#1074#1077#1090' '#1092#1086#1085#1072
|
|
||||||
HeaderSettings.TextSettings.WordWrap = False
|
|
||||||
end
|
|
||||||
object IntegerColumn3: TIntegerColumn
|
|
||||||
Header = #1056#1072#1079#1084#1077#1088' '#1096#1088#1080#1092#1090#1072
|
|
||||||
HeaderSettings.TextSettings.WordWrap = False
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@@ -1,67 +0,0 @@
|
|||||||
unit fChatOBS;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
|
|
||||||
FMX.Types, FMX.Graphics, FMX.Controls, FMX.Forms, FMX.Dialogs, FMX.StdCtrls,
|
|
||||||
System.Rtti, FMX.Grid.Style, FMX.Grid, FMX.ScrollBox, FMX.Edit, FMX.Colors,
|
|
||||||
FMX.ListBox, FMX.EditBox, FMX.SpinBox, FMX.Controls.Presentation;
|
|
||||||
|
|
||||||
type
|
|
||||||
TfrChatOBS = class(TFrame)
|
|
||||||
GroupBox13: TGroupBox;
|
|
||||||
Label41: TLabel;
|
|
||||||
sbFontSize: TSpinBox;
|
|
||||||
ccbFontColor: TColorComboBox;
|
|
||||||
Label49: TLabel;
|
|
||||||
cbFontStyleDefault: TComboBox;
|
|
||||||
Label46: TLabel;
|
|
||||||
ccbBColor: TColorComboBox;
|
|
||||||
Label1: TLabel;
|
|
||||||
btnChangeBGColor: TButton;
|
|
||||||
GroupBox12: TGroupBox;
|
|
||||||
cpStyleBlockColor: TColorPanel;
|
|
||||||
Label40: TLabel;
|
|
||||||
Label42: TLabel;
|
|
||||||
ccbStyleBorderColor: TColorComboBox;
|
|
||||||
Label44: TLabel;
|
|
||||||
sbStyleBlockPadding: TSpinBox;
|
|
||||||
sbStyleBlockBorderSize: TSpinBox;
|
|
||||||
Label48: TLabel;
|
|
||||||
GroupBox10: TGroupBox;
|
|
||||||
Label27: TLabel;
|
|
||||||
Label38: TLabel;
|
|
||||||
sbMaxMsg: TSpinBox;
|
|
||||||
sbTimeMsg: TSpinBox;
|
|
||||||
Label39: TLabel;
|
|
||||||
cbFreez: TCheckBox;
|
|
||||||
sbWebServerPort: TSpinBox;
|
|
||||||
btnWebChatTest: TButton;
|
|
||||||
edtWebChatTest: TEdit;
|
|
||||||
btnCreateWebChat: TButton;
|
|
||||||
btnDeleteWebChat: TButton;
|
|
||||||
sgWebChats: TStringGrid;
|
|
||||||
StringColumn1: TStringColumn;
|
|
||||||
IntegerColumn1: TIntegerColumn;
|
|
||||||
IntegerColumn2: TIntegerColumn;
|
|
||||||
CheckColumn1: TCheckColumn;
|
|
||||||
StringColumn2: TStringColumn;
|
|
||||||
StringColumn3: TStringColumn;
|
|
||||||
IntegerColumn5: TIntegerColumn;
|
|
||||||
IntegerColumn4: TIntegerColumn;
|
|
||||||
StringColumn4: TStringColumn;
|
|
||||||
StringColumn5: TStringColumn;
|
|
||||||
StringColumn6: TStringColumn;
|
|
||||||
IntegerColumn3: TIntegerColumn;
|
|
||||||
private
|
|
||||||
{ Private declarations }
|
|
||||||
public
|
|
||||||
{ Public declarations }
|
|
||||||
end;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
{$R *.fmx}
|
|
||||||
|
|
||||||
end.
|
|
||||||
@@ -0,0 +1,108 @@
|
|||||||
|
object frColorSettings: TfrColorSettings
|
||||||
|
Size.Width = 311.000000000000000000
|
||||||
|
Size.Height = 253.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
object ccbStyleBorderColor: TColorComboBox
|
||||||
|
DropDownKind = Custom
|
||||||
|
Color = claNull
|
||||||
|
DisableFocusEffect = False
|
||||||
|
ItemIndex = 147
|
||||||
|
Position.X = 177.000000000000000000
|
||||||
|
Position.Y = 35.000000000000000000
|
||||||
|
Size.Width = 120.000000000000000000
|
||||||
|
Size.Height = 22.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
TabOrder = 39
|
||||||
|
end
|
||||||
|
object cpStyleBlockColor: TColorPanel
|
||||||
|
Color = claWhite
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 33.000000000000000000
|
||||||
|
Size.Width = 161.000000000000000000
|
||||||
|
Size.Height = 150.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
TabOrder = 6
|
||||||
|
end
|
||||||
|
object Label40: TLabel
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 8.000000000000000000
|
||||||
|
Size.Width = 161.000000000000000000
|
||||||
|
Size.Height = 17.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
Text = #1062#1074#1077#1090' '#1080' '#1087#1088#1086#1079#1088#1072#1095#1085#1086#1089#1090#1100' '#1073#1083#1086#1082#1072
|
||||||
|
TabOrder = 7
|
||||||
|
end
|
||||||
|
object Label42: TLabel
|
||||||
|
Position.X = 177.000000000000000000
|
||||||
|
Position.Y = 10.000000000000000000
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
Text = #1062#1074#1077#1090' '#1088#1072#1084#1082#1080
|
||||||
|
TabOrder = 37
|
||||||
|
end
|
||||||
|
object Label44: TLabel
|
||||||
|
Position.X = 177.000000000000000000
|
||||||
|
Position.Y = 120.000000000000000000
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
Text = #1054#1090#1089#1090#1091#1087#1099
|
||||||
|
TabOrder = 41
|
||||||
|
end
|
||||||
|
object Label48: TLabel
|
||||||
|
Position.X = 177.000000000000000000
|
||||||
|
Position.Y = 65.000000000000000000
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
Text = #1058#1086#1083#1097#1080#1085#1072' '#1088#1072#1084#1082#1080
|
||||||
|
TabOrder = 42
|
||||||
|
end
|
||||||
|
object sbStyleBlockBorderSize: TSpinBox
|
||||||
|
Touch.InteractiveGestures = [LongTap, DoubleTap]
|
||||||
|
TabOrder = 44
|
||||||
|
Cursor = crIBeam
|
||||||
|
Value = 2.000000000000000000
|
||||||
|
Position.X = 177.000000000000000000
|
||||||
|
Position.Y = 90.000000000000000000
|
||||||
|
Size.Width = 120.000000000000000000
|
||||||
|
Size.Height = 22.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
end
|
||||||
|
object sbStyleBlockPadding: TSpinBox
|
||||||
|
Touch.InteractiveGestures = [LongTap, DoubleTap]
|
||||||
|
TabOrder = 45
|
||||||
|
Cursor = crIBeam
|
||||||
|
Value = 10.000000000000000000
|
||||||
|
Position.X = 177.000000000000000000
|
||||||
|
Position.Y = 145.000000000000000000
|
||||||
|
Size.Width = 120.000000000000000000
|
||||||
|
Size.Height = 22.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
end
|
||||||
|
object Label1: TLabel
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 191.000000000000000000
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
Text = #1062#1074#1077#1090' '#1092#1086#1085#1072
|
||||||
|
TabOrder = 38
|
||||||
|
end
|
||||||
|
object ccbBColor: TColorComboBox
|
||||||
|
DropDownKind = Custom
|
||||||
|
Color = claLime
|
||||||
|
DisableFocusEffect = False
|
||||||
|
ItemIndex = 82
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 216.000000000000000000
|
||||||
|
Size.Width = 120.000000000000000000
|
||||||
|
Size.Height = 22.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
TabOrder = 40
|
||||||
|
end
|
||||||
|
object btnChangeBGColor: TButton
|
||||||
|
Position.X = 136.000000000000000000
|
||||||
|
Position.Y = 216.000000000000000000
|
||||||
|
Size.Width = 145.000000000000000000
|
||||||
|
Size.Height = 22.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
TabOrder = 43
|
||||||
|
Text = #1055#1088#1080#1084#1077#1085#1080#1090#1100' '#1094#1074#1077#1090' '#1092#1086#1085#1072
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
end
|
||||||
|
end
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
unit fColorSettings;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
|
||||||
|
FMX.Types, FMX.Graphics, FMX.Controls, FMX.Forms, FMX.Dialogs, FMX.StdCtrls,
|
||||||
|
FMX.Edit, FMX.Colors, FMX.ListBox, FMX.EditBox, FMX.SpinBox,
|
||||||
|
FMX.Controls.Presentation;
|
||||||
|
|
||||||
|
type
|
||||||
|
TfrColorSettings = class(TFrame)
|
||||||
|
cpStyleBlockColor: TColorPanel;
|
||||||
|
Label40: TLabel;
|
||||||
|
Label42: TLabel;
|
||||||
|
ccbStyleBorderColor: TColorComboBox;
|
||||||
|
Label44: TLabel;
|
||||||
|
sbStyleBlockPadding: TSpinBox;
|
||||||
|
sbStyleBlockBorderSize: TSpinBox;
|
||||||
|
Label48: TLabel;
|
||||||
|
Label1: TLabel;
|
||||||
|
ccbBColor: TColorComboBox;
|
||||||
|
btnChangeBGColor: TButton;
|
||||||
|
private
|
||||||
|
{ Private declarations }
|
||||||
|
public
|
||||||
|
{ Public declarations }
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.fmx}
|
||||||
|
|
||||||
|
end.
|
||||||
@@ -0,0 +1,100 @@
|
|||||||
|
object frFontSettings: TfrFontSettings
|
||||||
|
Size.Width = 249.000000000000000000
|
||||||
|
Size.Height = 125.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
object Label41: TLabel
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 63.000000000000000000
|
||||||
|
Size.Width = 100.000000000000000000
|
||||||
|
Size.Height = 17.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
Text = #1056#1072#1079#1084#1077#1088' '#1096#1088#1080#1092#1090#1072
|
||||||
|
TabOrder = 9
|
||||||
|
end
|
||||||
|
object sbFontSize: TSpinBox
|
||||||
|
Touch.InteractiveGestures = [LongTap, DoubleTap]
|
||||||
|
TabOrder = 1
|
||||||
|
Cursor = crIBeam
|
||||||
|
Value = 14.000000000000000000
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 88.000000000000000000
|
||||||
|
end
|
||||||
|
object ccbFontColor: TColorComboBox
|
||||||
|
DropDownKind = Custom
|
||||||
|
Color = claNull
|
||||||
|
DisableFocusEffect = False
|
||||||
|
ItemIndex = 147
|
||||||
|
Position.X = 116.000000000000000000
|
||||||
|
Position.Y = 88.000000000000000000
|
||||||
|
Size.Width = 120.000000000000000000
|
||||||
|
Size.Height = 22.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
TabOrder = 39
|
||||||
|
end
|
||||||
|
object Label49: TLabel
|
||||||
|
Position.X = 116.000000000000000000
|
||||||
|
Position.Y = 63.000000000000000000
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
Text = #1062#1074#1077#1090' '#1096#1088#1080#1092#1090#1072
|
||||||
|
TabOrder = 38
|
||||||
|
end
|
||||||
|
object cbFontStyleDefault: TComboBox
|
||||||
|
Items.Strings = (
|
||||||
|
'Arial'
|
||||||
|
'Arial Cyr'
|
||||||
|
'Arial Black'
|
||||||
|
'Book antiqua'
|
||||||
|
'Bookman old style'
|
||||||
|
'Calibri'
|
||||||
|
'Cambria'
|
||||||
|
'Candara'
|
||||||
|
'Century'
|
||||||
|
'Century gothic'
|
||||||
|
'Comic Sans Ms'
|
||||||
|
'Consolas'
|
||||||
|
'Constantia'
|
||||||
|
'Corbel'
|
||||||
|
'Courier'
|
||||||
|
'Courier New'
|
||||||
|
'Courier, monospace'
|
||||||
|
'Cursive'
|
||||||
|
'Franklin Gothic'
|
||||||
|
'Gabriola'
|
||||||
|
'Garamond'
|
||||||
|
'Georgia'
|
||||||
|
'Helvetica'
|
||||||
|
'Impact'
|
||||||
|
'Lucida console'
|
||||||
|
'Lucida Sans Unicode'
|
||||||
|
'Mistral (Mistral)'
|
||||||
|
'monospace'
|
||||||
|
'Monotype Corsiva'
|
||||||
|
'MS Sans Serif'
|
||||||
|
'MS Serif'
|
||||||
|
'Palatino Linotype'
|
||||||
|
'Roboto'
|
||||||
|
'Sans-serif'
|
||||||
|
'Segoe print'
|
||||||
|
'Segoe script'
|
||||||
|
'Sylfaen'
|
||||||
|
'Tahoma'
|
||||||
|
'Times New Roman'
|
||||||
|
'Trebuchet ms'
|
||||||
|
'Verdana')
|
||||||
|
ItemIndex = 0
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 33.000000000000000000
|
||||||
|
Size.Width = 228.000000000000000000
|
||||||
|
Size.Height = 22.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
TabOrder = 0
|
||||||
|
end
|
||||||
|
object Label46: TLabel
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 8.000000000000000000
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
Text = #1057#1090#1080#1083#1100
|
||||||
|
TabOrder = 40
|
||||||
|
end
|
||||||
|
end
|
||||||
@@ -0,0 +1,29 @@
|
|||||||
|
unit fFontSettings;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
|
||||||
|
FMX.Types, FMX.Graphics, FMX.Controls, FMX.Forms, FMX.Dialogs, FMX.StdCtrls,
|
||||||
|
FMX.ListBox, FMX.Colors, FMX.Edit, FMX.EditBox, FMX.SpinBox,
|
||||||
|
FMX.Controls.Presentation;
|
||||||
|
|
||||||
|
type
|
||||||
|
TfrFontSettings = class(TFrame)
|
||||||
|
Label41: TLabel;
|
||||||
|
sbFontSize: TSpinBox;
|
||||||
|
ccbFontColor: TColorComboBox;
|
||||||
|
Label49: TLabel;
|
||||||
|
cbFontStyleDefault: TComboBox;
|
||||||
|
Label46: TLabel;
|
||||||
|
private
|
||||||
|
{ Private declarations }
|
||||||
|
public
|
||||||
|
{ Public declarations }
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.fmx}
|
||||||
|
|
||||||
|
end.
|
||||||
@@ -0,0 +1,63 @@
|
|||||||
|
object frOBS: TfrOBS
|
||||||
|
Size.Width = 689.000000000000000000
|
||||||
|
Size.Height = 252.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
object sgWebChats: TStringGrid
|
||||||
|
Anchors = [akLeft, akTop, akRight, akBottom]
|
||||||
|
Align = Bottom
|
||||||
|
CanFocus = True
|
||||||
|
ClipChildren = True
|
||||||
|
Position.Y = 63.000000000000000000
|
||||||
|
Size.Width = 689.000000000000000000
|
||||||
|
Size.Height = 189.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
TabOrder = 0
|
||||||
|
RowCount = 0
|
||||||
|
Options = [ColumnResize, ColumnMove, ColLines, RowLines, Tabs, Header, HeaderClick, AutoDisplacement]
|
||||||
|
Viewport.Width = 689.000000000000000000
|
||||||
|
Viewport.Height = 189.000000000000000000
|
||||||
|
object IntegerColumn1: TIntegerColumn
|
||||||
|
Header = #1055#1086#1088#1090
|
||||||
|
HeaderSettings.TextSettings.WordWrap = False
|
||||||
|
end
|
||||||
|
object StringColumn1: TStringColumn
|
||||||
|
Header = #1058#1080#1087
|
||||||
|
HeaderSettings.TextSettings.WordWrap = False
|
||||||
|
end
|
||||||
|
object StringColumn2: TStringColumn
|
||||||
|
Header = #1057#1089#1099#1083#1082#1072' '#1076#1083#1103' OBS'
|
||||||
|
HeaderSettings.TextSettings.WordWrap = False
|
||||||
|
Size.Width = 200.000000000000000000
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object btnCreateOBSChat: TButton
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 8.000000000000000000
|
||||||
|
TabOrder = 1
|
||||||
|
Text = #1057#1086#1079#1076#1072#1090#1100' '#1095#1072#1090
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
end
|
||||||
|
object btnDeleteeChat: TButton
|
||||||
|
Position.X = 601.000000000000000000
|
||||||
|
Position.Y = 8.000000000000000000
|
||||||
|
TabOrder = 2
|
||||||
|
Text = #1059#1076#1072#1083#1080#1090#1100
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
end
|
||||||
|
object Label1: TLabel
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 38.000000000000000000
|
||||||
|
Text = #1057#1086#1079#1076#1072#1085#1085#1099#1077' '#1095#1072#1090#1099':'
|
||||||
|
TabOrder = 3
|
||||||
|
end
|
||||||
|
object btnCreateOBSNotify: TButton
|
||||||
|
Position.X = 103.000000000000000000
|
||||||
|
Position.Y = 8.000000000000000000
|
||||||
|
Size.Width = 146.000000000000000000
|
||||||
|
Size.Height = 22.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
TabOrder = 4
|
||||||
|
Text = #1057#1086#1079#1076#1072#1090#1100' '#1086#1087#1086#1074#1077#1097#1077#1085#1080#1077
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
end
|
||||||
|
end
|
||||||
@@ -0,0 +1,31 @@
|
|||||||
|
unit fOBS;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
|
||||||
|
FMX.Types, FMX.Graphics, FMX.Controls, FMX.Forms, FMX.Dialogs, FMX.StdCtrls,
|
||||||
|
System.Rtti, FMX.Grid.Style, FMX.Grid, FMX.ScrollBox, FMX.Edit, FMX.Colors,
|
||||||
|
FMX.ListBox, FMX.EditBox, FMX.SpinBox, FMX.Controls.Presentation;
|
||||||
|
|
||||||
|
type
|
||||||
|
TfrOBS = class(TFrame)
|
||||||
|
sgWebChats: TStringGrid;
|
||||||
|
btnCreateOBSChat: TButton;
|
||||||
|
btnDeleteeChat: TButton;
|
||||||
|
Label1: TLabel;
|
||||||
|
IntegerColumn1: TIntegerColumn;
|
||||||
|
StringColumn1: TStringColumn;
|
||||||
|
StringColumn2: TStringColumn;
|
||||||
|
btnCreateOBSNotify: TButton;
|
||||||
|
private
|
||||||
|
{ Private declarations }
|
||||||
|
public
|
||||||
|
{ Public declarations }
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.fmx}
|
||||||
|
|
||||||
|
end.
|
||||||
+184
@@ -0,0 +1,184 @@
|
|||||||
|
object fCreateChat: TfCreateChat
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Caption = 'Form2'
|
||||||
|
ClientHeight = 287
|
||||||
|
ClientWidth = 810
|
||||||
|
FormFactor.Width = 320
|
||||||
|
FormFactor.Height = 480
|
||||||
|
FormFactor.Devices = [Desktop]
|
||||||
|
OnCreate = FormCreate
|
||||||
|
DesignerMasterStyle = 0
|
||||||
|
object GroupBox1: TGroupBox
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 8.000000000000000000
|
||||||
|
Size.Width = 305.000000000000000000
|
||||||
|
Size.Height = 271.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
Text = #1041#1083#1086#1082' '#1089#1086#1086#1073#1097#1077#1085#1080#1103
|
||||||
|
TabOrder = 1
|
||||||
|
inline frChatSettings1: TfrColorSettings
|
||||||
|
Align = Client
|
||||||
|
Margins.Top = 20.000000000000000000
|
||||||
|
Size.Width = 305.000000000000000000
|
||||||
|
Size.Height = 251.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
inherited ccbStyleBorderColor: TColorComboBox
|
||||||
|
TabOrder = 35
|
||||||
|
end
|
||||||
|
inherited cpStyleBlockColor: TColorPanel
|
||||||
|
TabOrder = 7
|
||||||
|
end
|
||||||
|
inherited Label40: TLabel
|
||||||
|
TabOrder = 8
|
||||||
|
end
|
||||||
|
inherited Label42: TLabel
|
||||||
|
TabOrder = 36
|
||||||
|
end
|
||||||
|
inherited Label44: TLabel
|
||||||
|
TabOrder = 39
|
||||||
|
end
|
||||||
|
inherited Label48: TLabel
|
||||||
|
TabOrder = 41
|
||||||
|
end
|
||||||
|
inherited sbStyleBlockPadding: TSpinBox
|
||||||
|
TabOrder = 46
|
||||||
|
end
|
||||||
|
inherited ccbBColor: TColorComboBox
|
||||||
|
OnChange = nil
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object GroupBox2: TGroupBox
|
||||||
|
Position.X = 321.000000000000000000
|
||||||
|
Position.Y = 8.000000000000000000
|
||||||
|
Size.Width = 240.000000000000000000
|
||||||
|
Size.Height = 145.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
Text = #1064#1088#1080#1092#1090
|
||||||
|
TabOrder = 2
|
||||||
|
inline frFontSettings1: TfrFontSettings
|
||||||
|
Align = Client
|
||||||
|
Margins.Top = 20.000000000000000000
|
||||||
|
Size.Width = 240.000000000000000000
|
||||||
|
Size.Height = 125.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
inherited Label41: TLabel
|
||||||
|
TabOrder = 8
|
||||||
|
end
|
||||||
|
inherited sbFontSize: TSpinBox
|
||||||
|
OnChange = nil
|
||||||
|
end
|
||||||
|
inherited ccbFontColor: TColorComboBox
|
||||||
|
TabOrder = 38
|
||||||
|
OnChange = nil
|
||||||
|
end
|
||||||
|
inherited Label49: TLabel
|
||||||
|
TabOrder = 37
|
||||||
|
end
|
||||||
|
inherited cbFontStyleDefault: TComboBox
|
||||||
|
OnChange = nil
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object GroupBox10: TGroupBox
|
||||||
|
Position.X = 569.000000000000000000
|
||||||
|
Position.Y = 8.000000000000000000
|
||||||
|
Size.Width = 232.000000000000000000
|
||||||
|
Size.Height = 203.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
Text = #1053#1072#1089#1090#1088#1086#1081#1082#1080
|
||||||
|
TabOrder = 0
|
||||||
|
object Label27: TLabel
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 22.000000000000000000
|
||||||
|
Size.Width = 249.000000000000000000
|
||||||
|
Size.Height = 17.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
Text = #1052#1072#1082#1089#1080#1084#1072#1083#1100#1085#1086#1077' '#1082#1086#1083#1080#1095#1077#1089#1090#1074#1086' '#1089#1086#1086#1073#1097#1077#1085#1080#1081
|
||||||
|
TabOrder = 3
|
||||||
|
end
|
||||||
|
object Label38: TLabel
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 77.000000000000000000
|
||||||
|
Size.Width = 249.000000000000000000
|
||||||
|
Size.Height = 17.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
Text = #1042#1088#1077#1084#1103' '#1086#1090#1086#1073#1088#1072#1078#1077#1085#1080#1103' '#1089#1086#1086#1073#1097#1077#1085#1080#1103
|
||||||
|
TabOrder = 0
|
||||||
|
end
|
||||||
|
object sbMaxMsg: TSpinBox
|
||||||
|
Touch.InteractiveGestures = [LongTap, DoubleTap]
|
||||||
|
TabOrder = 5
|
||||||
|
Cursor = crIBeam
|
||||||
|
Value = 5.000000000000000000
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 47.000000000000000000
|
||||||
|
end
|
||||||
|
object sbTimeMsg: TSpinBox
|
||||||
|
Touch.InteractiveGestures = [LongTap, DoubleTap]
|
||||||
|
TabOrder = 2
|
||||||
|
Cursor = crIBeam
|
||||||
|
Value = 10.000000000000000000
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 102.000000000000000000
|
||||||
|
end
|
||||||
|
object Label39: TLabel
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 132.000000000000000000
|
||||||
|
Size.Width = 193.000000000000000000
|
||||||
|
Size.Height = 17.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
Text = #1055#1086#1088#1090' '#1042#1077#1073' '#1057#1077#1088#1074#1077#1088#1072
|
||||||
|
TabOrder = 6
|
||||||
|
end
|
||||||
|
object cbFreez: TCheckBox
|
||||||
|
Position.X = 112.000000000000000000
|
||||||
|
Position.Y = 105.000000000000000000
|
||||||
|
Size.Width = 112.000000000000000000
|
||||||
|
Size.Height = 19.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
TabOrder = 38
|
||||||
|
Text = #1042#1077#1095#1085#1086
|
||||||
|
end
|
||||||
|
object sbWebServerPort: TSpinBox
|
||||||
|
Touch.InteractiveGestures = [LongTap, DoubleTap]
|
||||||
|
TabOrder = 4
|
||||||
|
Cursor = crIBeam
|
||||||
|
Min = 8080.000000000000000000
|
||||||
|
Max = 65000.000000000000000000
|
||||||
|
Value = 8085.000000000000000000
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 157.000000000000000000
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object edtWebChatTest: TEdit
|
||||||
|
Touch.InteractiveGestures = [LongTap, DoubleTap]
|
||||||
|
TabOrder = 5
|
||||||
|
Position.X = 321.000000000000000000
|
||||||
|
Position.Y = 161.000000000000000000
|
||||||
|
Size.Width = 240.000000000000000000
|
||||||
|
Size.Height = 22.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
end
|
||||||
|
object btnWebChatTest: TButton
|
||||||
|
Position.X = 321.000000000000000000
|
||||||
|
Position.Y = 191.000000000000000000
|
||||||
|
Size.Width = 152.000000000000000000
|
||||||
|
Size.Height = 22.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
TabOrder = 3
|
||||||
|
Text = #1058#1077#1089#1090#1086#1074#1086#1077' '#1089#1086#1086#1073#1097#1077#1085#1080#1077
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
end
|
||||||
|
object btnCreateWebChat: TButton
|
||||||
|
Position.X = 721.000000000000000000
|
||||||
|
Position.Y = 257.000000000000000000
|
||||||
|
TabOrder = 4
|
||||||
|
Text = #1057#1086#1079#1076#1072#1090#1100' '#1095#1072#1090
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
end
|
||||||
|
end
|
||||||
+107
@@ -0,0 +1,107 @@
|
|||||||
|
unit uCreateChat;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
System.SysUtils, System.Types, System.UITypes, System.Classes,
|
||||||
|
System.Variants, FMX.ListBox, FMX.Colors, FMX.SpinBox,
|
||||||
|
FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,
|
||||||
|
fColorSettings, fFontSettings, FMX.Controls.Presentation, FMX.StdCtrls,
|
||||||
|
FMX.Edit, FMX.EditBox, StrUtils;
|
||||||
|
|
||||||
|
type
|
||||||
|
TfCreateChat = class(TForm)
|
||||||
|
frChatSettings1: TfrColorSettings;
|
||||||
|
GroupBox1: TGroupBox;
|
||||||
|
GroupBox2: TGroupBox;
|
||||||
|
frFontSettings1: TfrFontSettings;
|
||||||
|
GroupBox10: TGroupBox;
|
||||||
|
Label27: TLabel;
|
||||||
|
Label38: TLabel;
|
||||||
|
sbMaxMsg: TSpinBox;
|
||||||
|
sbTimeMsg: TSpinBox;
|
||||||
|
Label39: TLabel;
|
||||||
|
cbFreez: TCheckBox;
|
||||||
|
sbWebServerPort: TSpinBox;
|
||||||
|
edtWebChatTest: TEdit;
|
||||||
|
btnWebChatTest: TButton;
|
||||||
|
btnCreateWebChat: TButton;
|
||||||
|
procedure FormCreate(Sender: TObject);
|
||||||
|
private
|
||||||
|
{ Private declarations }
|
||||||
|
public
|
||||||
|
{ Public declarations }
|
||||||
|
end;
|
||||||
|
|
||||||
|
var
|
||||||
|
fCreateChat: TfCreateChat;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
uses uGeneral;
|
||||||
|
|
||||||
|
{$R *.fmx}
|
||||||
|
|
||||||
|
procedure TfCreateChat.FormCreate(Sender: TObject);
|
||||||
|
procedure LoadFontList;
|
||||||
|
var
|
||||||
|
SearchRec: TSearchRec;
|
||||||
|
n: Integer;
|
||||||
|
begin
|
||||||
|
if not DirectoryExists(myConst.fontsPath) then
|
||||||
|
CreateDir(myConst.fontsPath);
|
||||||
|
|
||||||
|
n := 1;
|
||||||
|
if FindFirst(IncludeTrailingPathDelimiter(myConst.fontsPath) + '*.*',
|
||||||
|
faArchive, SearchRec) = 0 then
|
||||||
|
try
|
||||||
|
repeat
|
||||||
|
if (SearchRec.Attr and faAnyFile) = SearchRec.Attr then
|
||||||
|
begin
|
||||||
|
fCreateChat.frFontSettings1.cbFontStyleDefault.Items.Add
|
||||||
|
(SearchRec.Name);
|
||||||
|
Inc(n);
|
||||||
|
end;
|
||||||
|
until FindNext(SearchRec) <> 0;
|
||||||
|
finally
|
||||||
|
System.SysUtils.FindClose(SearchRec);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure LoadChatOBSSettings;
|
||||||
|
var
|
||||||
|
I: Integer;
|
||||||
|
c: TComponent;
|
||||||
|
ColorStr: string;
|
||||||
|
SavedColor: TAlphaColor;
|
||||||
|
begin
|
||||||
|
for I := 0 to frChatSettings1.ComponentCount - 1 do
|
||||||
|
begin
|
||||||
|
c := frChatSettings1.Components[I];
|
||||||
|
if c is TComboBox then
|
||||||
|
TComboBox(c).ItemIndex :=
|
||||||
|
strtoint(db.ReadSetting(TComboBox(c).Name, '0'))
|
||||||
|
else if c is TColorComboBox then
|
||||||
|
TColorComboBox(c).ItemIndex :=
|
||||||
|
strtoint(db.ReadSetting(TComboBox(c).Name, '147'))
|
||||||
|
else if c is TSpinBox then
|
||||||
|
TSpinBox(c).text := db.ReadSetting(TSpinBox(c).Name,
|
||||||
|
IfThen(TSpinBox(c).Name = 'sbWebServerPort', '8080', '1'))
|
||||||
|
else if c is TCheckBox then
|
||||||
|
TCheckBox(c).IsChecked := db.ReadSetting(TCheckBox(c).Name, '0') = '1';
|
||||||
|
end;
|
||||||
|
|
||||||
|
ColorStr := db.ReadSetting('cpStyleBlockColor', 'FF000000');
|
||||||
|
if TryStrToUInt('$' + ColorStr, Cardinal(SavedColor)) then
|
||||||
|
frChatSettings1.cpStyleBlockColor.Color := SavedColor
|
||||||
|
else
|
||||||
|
frChatSettings1.cpStyleBlockColor.Color := TAlphaColorRec.Black;
|
||||||
|
end;
|
||||||
|
|
||||||
|
begin
|
||||||
|
LoadChatOBSSettings;
|
||||||
|
LoadFontList;
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
@@ -0,0 +1,292 @@
|
|||||||
|
object fCreateNotify: TfCreateNotify
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Caption = 'Form2'
|
||||||
|
ClientHeight = 383
|
||||||
|
ClientWidth = 813
|
||||||
|
FormFactor.Width = 320
|
||||||
|
FormFactor.Height = 480
|
||||||
|
FormFactor.Devices = [Desktop]
|
||||||
|
OnCreate = FormCreate
|
||||||
|
DesignerMasterStyle = 0
|
||||||
|
object btnESImageOpen: TButton
|
||||||
|
Hint = #1050#1072#1088#1090#1080#1085#1082#1080'|*.jpg; *.jpeg; *.gif; *.webp'
|
||||||
|
Position.X = 297.000000000000000000
|
||||||
|
Position.Y = 33.000000000000000000
|
||||||
|
Size.Width = 22.000000000000000000
|
||||||
|
Size.Height = 22.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
TabOrder = 45
|
||||||
|
Text = '...'
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
end
|
||||||
|
object btnESSoundOpen: TButton
|
||||||
|
Hint = #1052#1091#1079#1099#1082#1072'|*.mp3'
|
||||||
|
Position.X = 297.000000000000000000
|
||||||
|
Position.Y = 88.000000000000000000
|
||||||
|
Size.Width = 22.000000000000000000
|
||||||
|
Size.Height = 22.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
TabOrder = 42
|
||||||
|
Text = '...'
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
end
|
||||||
|
object edtESImage: TEdit
|
||||||
|
Touch.InteractiveGestures = [LongTap, DoubleTap]
|
||||||
|
TabOrder = 36
|
||||||
|
ReadOnly = True
|
||||||
|
Text = '\imgs\follow.gif'
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 33.000000000000000000
|
||||||
|
Size.Width = 281.000000000000000000
|
||||||
|
Size.Height = 22.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
end
|
||||||
|
object edtESSound: TEdit
|
||||||
|
Touch.InteractiveGestures = [LongTap, DoubleTap]
|
||||||
|
TabOrder = 35
|
||||||
|
ReadOnly = True
|
||||||
|
Text = '\sounds\report_bobdyfound.mp3'
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 88.000000000000000000
|
||||||
|
Size.Width = 281.000000000000000000
|
||||||
|
Size.Height = 22.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
end
|
||||||
|
object Label58: TLabel
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 8.000000000000000000
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
Text = #1050#1072#1088#1090#1080#1085#1082#1072
|
||||||
|
TabOrder = 49
|
||||||
|
end
|
||||||
|
object Label68: TLabel
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 63.000000000000000000
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
Text = #1047#1074#1091#1082
|
||||||
|
TabOrder = 37
|
||||||
|
end
|
||||||
|
inline frColorSettings1: TfrColorSettings
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 118.000000000000000000
|
||||||
|
Size.Width = 311.000000000000000000
|
||||||
|
Size.Height = 258.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
inherited ccbStyleBorderColor: TColorComboBox
|
||||||
|
TabOrder = 37
|
||||||
|
end
|
||||||
|
inherited Label42: TLabel
|
||||||
|
TabOrder = 36
|
||||||
|
end
|
||||||
|
inherited Label44: TLabel
|
||||||
|
TabOrder = 39
|
||||||
|
end
|
||||||
|
inherited Label48: TLabel
|
||||||
|
TabOrder = 41
|
||||||
|
end
|
||||||
|
inherited sbStyleBlockBorderSize: TSpinBox
|
||||||
|
TabOrder = 42
|
||||||
|
end
|
||||||
|
inherited sbStyleBlockPadding: TSpinBox
|
||||||
|
TabOrder = 44
|
||||||
|
end
|
||||||
|
inherited ccbBColor: TColorComboBox
|
||||||
|
OnChange = nil
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object GroupBox10: TGroupBox
|
||||||
|
Position.X = 596.000000000000000000
|
||||||
|
Position.Y = 8.000000000000000000
|
||||||
|
Size.Width = 209.000000000000000000
|
||||||
|
Size.Height = 247.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
Text = #1053#1072#1089#1090#1088#1086#1081#1082#1080
|
||||||
|
TabOrder = 0
|
||||||
|
object Label38: TLabel
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 25.000000000000000000
|
||||||
|
Size.Width = 216.000000000000000000
|
||||||
|
Size.Height = 17.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
Text = #1042#1088#1077#1084#1103' '#1086#1090#1086#1073#1088#1072#1078#1077#1085#1080#1103' '#1086#1087#1086#1074#1077#1097#1077#1085#1080#1103
|
||||||
|
TabOrder = 0
|
||||||
|
end
|
||||||
|
object sbTimeMsg: TSpinBox
|
||||||
|
Touch.InteractiveGestures = [LongTap, DoubleTap]
|
||||||
|
TabOrder = 2
|
||||||
|
Cursor = crIBeam
|
||||||
|
Value = 10.000000000000000000
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 50.000000000000000000
|
||||||
|
end
|
||||||
|
object Label39: TLabel
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 80.000000000000000000
|
||||||
|
Size.Width = 193.000000000000000000
|
||||||
|
Size.Height = 17.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
Text = #1055#1086#1088#1090' '#1042#1077#1073' '#1057#1077#1088#1074#1077#1088#1072
|
||||||
|
TabOrder = 4
|
||||||
|
end
|
||||||
|
object sbWebServerPort: TSpinBox
|
||||||
|
Touch.InteractiveGestures = [LongTap, DoubleTap]
|
||||||
|
TabOrder = 3
|
||||||
|
Cursor = crIBeam
|
||||||
|
Min = 8080.000000000000000000
|
||||||
|
Max = 65000.000000000000000000
|
||||||
|
Value = 8085.000000000000000000
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 105.000000000000000000
|
||||||
|
end
|
||||||
|
object Label2: TLabel
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 135.000000000000000000
|
||||||
|
Text = #1057#1086#1073#1099#1090#1080#1077
|
||||||
|
TabOrder = 68
|
||||||
|
end
|
||||||
|
object cbEventsType: TComboBox
|
||||||
|
Items.Strings = (
|
||||||
|
#1054#1090#1089#1083#1077#1078#1080#1074#1072#1085#1080#1077
|
||||||
|
#1055#1086#1076#1087#1080#1089#1082#1072
|
||||||
|
#1055#1086#1076#1072#1088#1086#1095#1085#1072#1103' '#1087#1086#1076#1087#1080#1089#1082#1072
|
||||||
|
#1056#1077#1081#1076
|
||||||
|
#1044#1086#1085#1072#1090)
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 160.000000000000000000
|
||||||
|
Size.Width = 192.000000000000000000
|
||||||
|
Size.Height = 22.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
TabOrder = 69
|
||||||
|
end
|
||||||
|
object Label3: TLabel
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 190.000000000000000000
|
||||||
|
Text = #1059#1089#1083#1086#1074#1080#1077' '#1089#1091#1084#1084#1099
|
||||||
|
TabOrder = 70
|
||||||
|
end
|
||||||
|
object edtIF: TEdit
|
||||||
|
Touch.InteractiveGestures = [LongTap, DoubleTap]
|
||||||
|
TabOrder = 71
|
||||||
|
Position.X = 8.000000000000000000
|
||||||
|
Position.Y = 215.000000000000000000
|
||||||
|
Size.Width = 192.000000000000000000
|
||||||
|
Size.Height = 22.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object btnCreateEvent: TButton
|
||||||
|
Position.X = 596.000000000000000000
|
||||||
|
Position.Y = 353.000000000000000000
|
||||||
|
Size.Width = 209.000000000000000000
|
||||||
|
Size.Height = 22.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
TabOrder = 64
|
||||||
|
Text = #1057#1086#1079#1076#1072#1090#1100' '#1086#1087#1086#1074#1077#1097#1077#1085#1080#1077
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
end
|
||||||
|
object btnESTest: TButton
|
||||||
|
Position.X = 596.000000000000000000
|
||||||
|
Position.Y = 263.000000000000000000
|
||||||
|
TabOrder = 59
|
||||||
|
Text = #1058#1077#1089#1090
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
end
|
||||||
|
object GroupBox1: TGroupBox
|
||||||
|
Padding.Left = 10.000000000000000000
|
||||||
|
Padding.Top = 20.000000000000000000
|
||||||
|
Padding.Right = 10.000000000000000000
|
||||||
|
Padding.Bottom = 10.000000000000000000
|
||||||
|
Position.X = 327.000000000000000000
|
||||||
|
Position.Y = 8.000000000000000000
|
||||||
|
Size.Width = 261.000000000000000000
|
||||||
|
Size.Height = 167.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
Text = #1047#1072#1075#1086#1083#1086#1074#1086#1082
|
||||||
|
TabOrder = 66
|
||||||
|
object edtESTitle: TEdit
|
||||||
|
Touch.InteractiveGestures = [LongTap, DoubleTap]
|
||||||
|
Align = Top
|
||||||
|
TabOrder = 38
|
||||||
|
Text = '[NICK] '#1085#1072#1095#1072#1083' '#1086#1090#1089#1083#1077#1078#1080#1074#1072#1090#1100' '#1074#1072#1089
|
||||||
|
Position.X = 10.000000000000000000
|
||||||
|
Position.Y = 20.000000000000000000
|
||||||
|
Size.Width = 241.000000000000000000
|
||||||
|
Size.Height = 22.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
end
|
||||||
|
inline frFontSettings2: TfrFontSettings
|
||||||
|
Align = Client
|
||||||
|
Size.Width = 241.000000000000000000
|
||||||
|
Size.Height = 115.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
inherited Label41: TLabel
|
||||||
|
TabOrder = 8
|
||||||
|
end
|
||||||
|
inherited sbFontSize: TSpinBox
|
||||||
|
OnChange = nil
|
||||||
|
end
|
||||||
|
inherited ccbFontColor: TColorComboBox
|
||||||
|
TabOrder = 38
|
||||||
|
OnChange = nil
|
||||||
|
end
|
||||||
|
inherited Label49: TLabel
|
||||||
|
TabOrder = 37
|
||||||
|
end
|
||||||
|
inherited cbFontStyleDefault: TComboBox
|
||||||
|
OnChange = nil
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object GroupBox2: TGroupBox
|
||||||
|
Padding.Left = 10.000000000000000000
|
||||||
|
Padding.Top = 20.000000000000000000
|
||||||
|
Padding.Right = 10.000000000000000000
|
||||||
|
Padding.Bottom = 10.000000000000000000
|
||||||
|
Position.X = 327.000000000000000000
|
||||||
|
Position.Y = 183.000000000000000000
|
||||||
|
Size.Width = 261.000000000000000000
|
||||||
|
Size.Height = 167.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
Text = #1047#1072#1075#1086#1083#1086#1074#1086#1082
|
||||||
|
TabOrder = 65
|
||||||
|
inline frFontSettings3: TfrFontSettings
|
||||||
|
Align = Client
|
||||||
|
Size.Width = 241.000000000000000000
|
||||||
|
Size.Height = 115.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
inherited Label41: TLabel
|
||||||
|
TabOrder = 8
|
||||||
|
end
|
||||||
|
inherited sbFontSize: TSpinBox
|
||||||
|
OnChange = nil
|
||||||
|
end
|
||||||
|
inherited ccbFontColor: TColorComboBox
|
||||||
|
TabOrder = 37
|
||||||
|
OnChange = nil
|
||||||
|
end
|
||||||
|
inherited Label49: TLabel
|
||||||
|
TabOrder = 36
|
||||||
|
end
|
||||||
|
inherited cbFontStyleDefault: TComboBox
|
||||||
|
OnChange = nil
|
||||||
|
end
|
||||||
|
inherited Label46: TLabel
|
||||||
|
TabOrder = 38
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object edtESMessage: TEdit
|
||||||
|
Touch.InteractiveGestures = [LongTap, DoubleTap]
|
||||||
|
Align = Top
|
||||||
|
TabOrder = 35
|
||||||
|
Text = #1044#1086#1073#1088#1086' '#1087#1086#1078#1072#1083#1086#1074#1072#1090#1100
|
||||||
|
Position.X = 10.000000000000000000
|
||||||
|
Position.Y = 20.000000000000000000
|
||||||
|
Size.Width = 241.000000000000000000
|
||||||
|
Size.Height = 22.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
@@ -0,0 +1,190 @@
|
|||||||
|
unit uCreateNotify;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
|
||||||
|
FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, fFontSettings,
|
||||||
|
fColorSettings, FMX.StdCtrls, FMX.Edit, FMX.Controls.Presentation,
|
||||||
|
FMX.ListBox, FMX.EditBox, FMX.SpinBox, FMX.Colors;
|
||||||
|
|
||||||
|
type
|
||||||
|
TfCreateNotify = class(TForm)
|
||||||
|
btnESImageOpen: TButton;
|
||||||
|
btnESSoundOpen: TButton;
|
||||||
|
edtESImage: TEdit;
|
||||||
|
edtESSound: TEdit;
|
||||||
|
edtESTitle: TEdit;
|
||||||
|
Label58: TLabel;
|
||||||
|
Label68: TLabel;
|
||||||
|
frColorSettings1: TfrColorSettings;
|
||||||
|
frFontSettings2: TfrFontSettings;
|
||||||
|
GroupBox10: TGroupBox;
|
||||||
|
Label38: TLabel;
|
||||||
|
sbTimeMsg: TSpinBox;
|
||||||
|
Label39: TLabel;
|
||||||
|
sbWebServerPort: TSpinBox;
|
||||||
|
Label2: TLabel;
|
||||||
|
cbEventsType: TComboBox;
|
||||||
|
Label3: TLabel;
|
||||||
|
edtIF: TEdit;
|
||||||
|
btnCreateEvent: TButton;
|
||||||
|
btnESTest: TButton;
|
||||||
|
GroupBox1: TGroupBox;
|
||||||
|
GroupBox2: TGroupBox;
|
||||||
|
frFontSettings3: TfrFontSettings;
|
||||||
|
edtESMessage: TEdit;
|
||||||
|
procedure FormCreate(Sender: TObject);
|
||||||
|
private
|
||||||
|
{ Private declarations }
|
||||||
|
public
|
||||||
|
{ Public declarations }
|
||||||
|
end;
|
||||||
|
|
||||||
|
var
|
||||||
|
fCreateNotify: TfCreateNotify;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
uses uGeneral;
|
||||||
|
|
||||||
|
{$R *.fmx}
|
||||||
|
|
||||||
|
procedure TfCreateNotify.FormCreate(Sender: TObject);
|
||||||
|
var
|
||||||
|
i: Integer;
|
||||||
|
SavedColor: TAlphaColor;
|
||||||
|
c: TComponent;
|
||||||
|
ColorStr: string;
|
||||||
|
begin
|
||||||
|
for i := 0 to frColorSettings1.ComponentCount - 1 do
|
||||||
|
begin
|
||||||
|
c := frColorSettings1.Components[i];
|
||||||
|
if c is TComboBox then
|
||||||
|
begin
|
||||||
|
TComboBox(c).ItemIndex :=
|
||||||
|
strtoint(DB.ReadSetting(TComboBox(c).Name, '0'));
|
||||||
|
end;
|
||||||
|
if c is TColorComboBox then
|
||||||
|
begin
|
||||||
|
TColorComboBox(c).ItemIndex :=
|
||||||
|
strtoint(DB.ReadSetting(TComboBox(c).Name, '147'));
|
||||||
|
end;
|
||||||
|
if c is TSpinBox then
|
||||||
|
begin
|
||||||
|
TSpinBox(c).text := DB.ReadSetting(TSpinBox(c).Name, '1');
|
||||||
|
end;
|
||||||
|
if c is TColorPanel then
|
||||||
|
begin
|
||||||
|
ColorStr := DB.ReadSetting(TColorPanel(c).Name, 'FF000000');
|
||||||
|
if TryStrToUInt('$' + ColorStr, Cardinal(SavedColor)) then
|
||||||
|
TColorPanel(c).Color := SavedColor
|
||||||
|
else
|
||||||
|
TColorPanel(c).Color := TAlphaColorRec.Black;
|
||||||
|
end;
|
||||||
|
if c is TEdit then
|
||||||
|
begin
|
||||||
|
if TEdit(c).Name <> 'edtPortServer' then
|
||||||
|
TEdit(c).text := DB.ReadSetting(TEdit(c).Name, '0');
|
||||||
|
end;
|
||||||
|
if c is TCheckBox then
|
||||||
|
begin
|
||||||
|
TCheckBox(c).IsChecked := DB.ReadSetting(TCheckBox(c).Name) = '1';
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
for i := 0 to frFontSettings2.ComponentCount - 1 do
|
||||||
|
begin
|
||||||
|
c := frFontSettings2.Components[i];
|
||||||
|
if c is TComboBox then
|
||||||
|
begin
|
||||||
|
TComboBox(c).ItemIndex :=
|
||||||
|
strtoint(DB.ReadSetting(TComboBox(c).Name, '0'));
|
||||||
|
end;
|
||||||
|
if c is TColorComboBox then
|
||||||
|
begin
|
||||||
|
TColorComboBox(c).ItemIndex :=
|
||||||
|
strtoint(DB.ReadSetting(TComboBox(c).Name, '147'));
|
||||||
|
end;
|
||||||
|
if c is TSpinBox then
|
||||||
|
begin
|
||||||
|
TSpinBox(c).text := DB.ReadSetting(TSpinBox(c).Name, '1');
|
||||||
|
end;
|
||||||
|
if c is TColorPanel then
|
||||||
|
begin
|
||||||
|
ColorStr := DB.ReadSetting(TColorPanel(c).Name, 'FF000000');
|
||||||
|
if TryStrToUInt('$' + ColorStr, Cardinal(SavedColor)) then
|
||||||
|
TColorPanel(c).Color := SavedColor
|
||||||
|
else
|
||||||
|
TColorPanel(c).Color := TAlphaColorRec.Black;
|
||||||
|
end;
|
||||||
|
if c is TEdit then
|
||||||
|
begin
|
||||||
|
if TEdit(c).Name <> 'edtPortServer' then
|
||||||
|
TEdit(c).text := DB.ReadSetting(TEdit(c).Name, '0');
|
||||||
|
end;
|
||||||
|
if c is TCheckBox then
|
||||||
|
begin
|
||||||
|
TCheckBox(c).IsChecked := DB.ReadSetting(TCheckBox(c).Name) = '1';
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
for i := 0 to frFontSettings3.ComponentCount - 1 do
|
||||||
|
begin
|
||||||
|
c := frFontSettings3.Components[i];
|
||||||
|
if c is TComboBox then
|
||||||
|
begin
|
||||||
|
TComboBox(c).ItemIndex :=
|
||||||
|
strtoint(DB.ReadSetting(TComboBox(c).Name, '0'));
|
||||||
|
end;
|
||||||
|
if c is TColorComboBox then
|
||||||
|
begin
|
||||||
|
TColorComboBox(c).ItemIndex :=
|
||||||
|
strtoint(DB.ReadSetting(TComboBox(c).Name, '147'));
|
||||||
|
end;
|
||||||
|
if c is TSpinBox then
|
||||||
|
begin
|
||||||
|
TSpinBox(c).text := DB.ReadSetting(TSpinBox(c).Name, '1');
|
||||||
|
end;
|
||||||
|
if c is TColorPanel then
|
||||||
|
begin
|
||||||
|
ColorStr := DB.ReadSetting(TColorPanel(c).Name, 'FF000000');
|
||||||
|
if TryStrToUInt('$' + ColorStr, Cardinal(SavedColor)) then
|
||||||
|
TColorPanel(c).Color := SavedColor
|
||||||
|
else
|
||||||
|
TColorPanel(c).Color := TAlphaColorRec.Black;
|
||||||
|
end;
|
||||||
|
if c is TEdit then
|
||||||
|
begin
|
||||||
|
if TEdit(c).Name <> 'edtPortServer' then
|
||||||
|
TEdit(c).text := DB.ReadSetting(TEdit(c).Name, '0');
|
||||||
|
end;
|
||||||
|
if c is TCheckBox then
|
||||||
|
begin
|
||||||
|
TCheckBox(c).IsChecked := DB.ReadSetting(TCheckBox(c).Name) = '1';
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
var
|
||||||
|
n := 1;
|
||||||
|
var
|
||||||
|
cDir := myconst.fontsPath; // Èñêàòü â ïàïêå ñ ïðîãðàììîé
|
||||||
|
var
|
||||||
|
FileName := '*.*'; // Èùåì âñå ôàéëû
|
||||||
|
ChDir(cDir); // âîéòè â êàòàëîã
|
||||||
|
var
|
||||||
|
SearchRec: TSearchRec;
|
||||||
|
if FindFirst(FileName, faArchive, SearchRec) = 0 then
|
||||||
|
repeat
|
||||||
|
if (SearchRec.Attr and faAnyFile) = SearchRec.Attr then
|
||||||
|
begin
|
||||||
|
frFontSettings2.cbFontStyleDefault.Items.Add(SearchRec.Name);
|
||||||
|
frFontSettings3.cbFontStyleDefault.Items.Add(SearchRec.Name);
|
||||||
|
|
||||||
|
Inc(n);
|
||||||
|
end;
|
||||||
|
until FindNext(SearchRec) <> 0;
|
||||||
|
ChDir('..');
|
||||||
|
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
+144
-336
@@ -1,13 +1,15 @@
|
|||||||
object Form1: TForm1
|
object Form1: TForm1
|
||||||
Left = 0
|
Left = 480
|
||||||
Top = 0
|
Top = 0
|
||||||
Caption = 'Form1'
|
Caption = 'Form1'
|
||||||
ClientHeight = 886
|
ClientHeight = 886
|
||||||
ClientWidth = 1042
|
ClientWidth = 1042
|
||||||
|
Position = Designed
|
||||||
FormFactor.Width = 320
|
FormFactor.Width = 320
|
||||||
FormFactor.Height = 480
|
FormFactor.Height = 480
|
||||||
FormFactor.Devices = [Desktop]
|
FormFactor.Devices = [Desktop]
|
||||||
OnCreate = FormCreate
|
OnCreate = FormCreate
|
||||||
|
Left = 480
|
||||||
DesignerMasterStyle = 0
|
DesignerMasterStyle = 0
|
||||||
object V: TTabControl
|
object V: TTabControl
|
||||||
Align = Client
|
Align = Client
|
||||||
@@ -15,7 +17,7 @@ object Form1: TForm1
|
|||||||
Size.Width = 1042.000000000000000000
|
Size.Width = 1042.000000000000000000
|
||||||
Size.Height = 744.000000000000000000
|
Size.Height = 744.000000000000000000
|
||||||
Size.PlatformDefault = False
|
Size.PlatformDefault = False
|
||||||
TabIndex = 4
|
TabIndex = 2
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
TabPosition = PlatformDefault
|
TabPosition = PlatformDefault
|
||||||
Sizes = (
|
Sizes = (
|
||||||
@@ -50,76 +52,78 @@ object Form1: TForm1
|
|||||||
StyleLookup = ''
|
StyleLookup = ''
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
Text = #1053#1072#1089#1090#1088#1086#1081#1082#1080
|
Text = #1053#1072#1089#1090#1088#1086#1081#1082#1080
|
||||||
|
ExplicitSize.cx = 96.000000000000000000
|
||||||
|
ExplicitSize.cy = 26.000000000000000000
|
||||||
inline fSettings: TfrSettings
|
inline fSettings: TfrSettings
|
||||||
Align = Client
|
Align = Client
|
||||||
Size.Width = 1042.000000000000000000
|
Size.Width = 1042.000000000000000000
|
||||||
Size.Height = 718.000000000000000000
|
Size.Height = 718.000000000000000000
|
||||||
Size.PlatformDefault = False
|
Size.PlatformDefault = False
|
||||||
inherited GroupBox3: TGroupBox
|
inherited GroupBox3: TGroupBox
|
||||||
inherited edtBotName: TEdit
|
|
||||||
OnExit = nil
|
|
||||||
end
|
|
||||||
inherited edtBotToken: TEdit
|
|
||||||
OnExit = nil
|
|
||||||
end
|
|
||||||
inherited edtChannel: TEdit
|
|
||||||
OnExit = nil
|
|
||||||
end
|
|
||||||
inherited btnGetToken: TButton
|
inherited btnGetToken: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 10
|
ImageIndex = 10
|
||||||
end
|
end
|
||||||
inherited edtBotClientID: TEdit
|
|
||||||
OnExit = nil
|
|
||||||
end
|
|
||||||
inherited btnGetClientID: TButton
|
|
||||||
OnClick = nil
|
|
||||||
end
|
|
||||||
inherited btnOpenStream: TButton
|
inherited btnOpenStream: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 17
|
ImageIndex = 17
|
||||||
OnClick = nil
|
TabOrder = 33
|
||||||
end
|
end
|
||||||
inherited btnGetTokenStreamer: TButton
|
inherited btnGetTokenStreamer: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 10
|
ImageIndex = 10
|
||||||
|
TabOrder = 34
|
||||||
end
|
end
|
||||||
inherited edtBotTokenStreamer: TEdit
|
inherited edtBotTokenStreamer: TEdit
|
||||||
OnExit = nil
|
TabOrder = 35
|
||||||
|
end
|
||||||
|
inherited Label53: TLabel
|
||||||
|
TabOrder = 37
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
inherited GroupBox22: TGroupBox
|
inherited GroupBox22: TGroupBox
|
||||||
inherited btnDAGetCode: TButton
|
inherited btnDAGetCode: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 10
|
ImageIndex = 10
|
||||||
OnClick = nil
|
TabOrder = 43
|
||||||
|
end
|
||||||
|
inherited Label63: TLabel
|
||||||
|
TabOrder = 35
|
||||||
end
|
end
|
||||||
inherited edtDAClientID: TEdit
|
inherited edtDAClientID: TEdit
|
||||||
OnExit = nil
|
TabOrder = 38
|
||||||
|
end
|
||||||
|
inherited Label64: TLabel
|
||||||
|
TabOrder = 36
|
||||||
end
|
end
|
||||||
inherited edtDAClientSecret: TEdit
|
inherited edtDAClientSecret: TEdit
|
||||||
OnExit = nil
|
TabOrder = 37
|
||||||
|
end
|
||||||
|
inherited Label65: TLabel
|
||||||
|
TabOrder = 39
|
||||||
end
|
end
|
||||||
inherited edtDARedirectURL: TEdit
|
inherited edtDARedirectURL: TEdit
|
||||||
OnExit = nil
|
TabOrder = 40
|
||||||
end
|
end
|
||||||
inherited edtDACode: TEdit
|
inherited edtDACode: TEdit
|
||||||
OnExit = nil
|
TabOrder = 41
|
||||||
|
end
|
||||||
|
inherited Label66: TLabel
|
||||||
|
TabOrder = 42
|
||||||
end
|
end
|
||||||
inherited btnDAStart: TButton
|
inherited btnDAStart: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 18
|
ImageIndex = 18
|
||||||
OnClick = nil
|
TabOrder = 44
|
||||||
end
|
end
|
||||||
inherited btnGetDADef: TButton
|
inherited btnGetDADef: TButton
|
||||||
OnClick = nil
|
TabOrder = 45
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
inherited btnOpenRomaning: TButton
|
inherited btnOpenRomaning: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 14
|
ImageIndex = 14
|
||||||
Size.Width = 201.000000000000000000
|
Size.Width = 201.000000000000000000
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnImportSettings: TButton
|
inherited btnImportSettings: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
@@ -127,7 +131,6 @@ object Form1: TForm1
|
|||||||
Position.X = 8.000000000000000000
|
Position.X = 8.000000000000000000
|
||||||
Position.Y = 351.000000000000000000
|
Position.Y = 351.000000000000000000
|
||||||
Size.Width = 201.000000000000000000
|
Size.Width = 201.000000000000000000
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnExportSettings: TButton
|
inherited btnExportSettings: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
@@ -135,7 +138,6 @@ object Form1: TForm1
|
|||||||
Position.X = 8.000000000000000000
|
Position.X = 8.000000000000000000
|
||||||
Position.Y = 381.000000000000000000
|
Position.Y = 381.000000000000000000
|
||||||
Size.Width = 201.000000000000000000
|
Size.Width = 201.000000000000000000
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnMaster: TButton
|
inherited btnMaster: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
@@ -143,7 +145,6 @@ object Form1: TForm1
|
|||||||
Position.X = 8.000000000000000000
|
Position.X = 8.000000000000000000
|
||||||
Position.Y = 411.000000000000000000
|
Position.Y = 411.000000000000000000
|
||||||
Size.Width = 201.000000000000000000
|
Size.Width = 201.000000000000000000
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -160,6 +161,8 @@ object Form1: TForm1
|
|||||||
StyleLookup = ''
|
StyleLookup = ''
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
Text = #1053#1077#1081#1088#1086#1089#1077#1090#1080
|
Text = #1053#1077#1081#1088#1086#1089#1077#1090#1080
|
||||||
|
ExplicitSize.cx = 96.000000000000000000
|
||||||
|
ExplicitSize.cy = 26.000000000000000000
|
||||||
inline frAI1: TfrAI
|
inline frAI1: TfrAI
|
||||||
Align = Client
|
Align = Client
|
||||||
Size.Width = 1042.000000000000000000
|
Size.Width = 1042.000000000000000000
|
||||||
@@ -169,56 +172,11 @@ object Form1: TForm1
|
|||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 10
|
ImageIndex = 10
|
||||||
Size.Width = 145.000000000000000000
|
Size.Width = 145.000000000000000000
|
||||||
OnClick = nil
|
|
||||||
end
|
|
||||||
inherited edtAIP2: TEdit
|
|
||||||
OnExit = nil
|
|
||||||
end
|
|
||||||
inherited edtAIP1: TEdit
|
|
||||||
OnExit = nil
|
|
||||||
end
|
|
||||||
inherited edtGPTPrefix: TEdit
|
|
||||||
OnExit = nil
|
|
||||||
end
|
|
||||||
inherited GroupBox1: TGroupBox
|
|
||||||
inherited rbGC: TRadioButton
|
|
||||||
TabOrder = 41
|
|
||||||
OnChange = nil
|
|
||||||
end
|
|
||||||
inherited RBCustom: TRadioButton
|
|
||||||
TabOrder = 40
|
|
||||||
OnChange = nil
|
|
||||||
end
|
|
||||||
inherited rbDS: TRadioButton
|
|
||||||
TabOrder = 39
|
|
||||||
OnChange = nil
|
|
||||||
end
|
|
||||||
inherited rbCG: TRadioButton
|
|
||||||
TabOrder = 38
|
|
||||||
OnChange = nil
|
|
||||||
end
|
|
||||||
end
|
|
||||||
inherited edtAIP3: TEdit
|
|
||||||
OnExit = nil
|
|
||||||
end
|
|
||||||
inherited cbOllama: TCheckBox
|
|
||||||
OnChange = nil
|
|
||||||
end
|
end
|
||||||
inherited GroupBox2: TGroupBox
|
inherited GroupBox2: TGroupBox
|
||||||
Position.X = 462.000000000000000000
|
Position.X = 462.000000000000000000
|
||||||
inherited Label3: TLabel
|
|
||||||
TabOrder = 38
|
|
||||||
end
|
|
||||||
inherited Label4: TLabel
|
|
||||||
TabOrder = 39
|
|
||||||
end
|
|
||||||
inherited edtKandiKey: TEdit
|
|
||||||
TabOrder = 40
|
|
||||||
OnExit = nil
|
|
||||||
end
|
|
||||||
inherited edtKandiSecret: TEdit
|
inherited edtKandiSecret: TEdit
|
||||||
TabOrder = 41
|
TabOrder = 41
|
||||||
OnExit = nil
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -228,7 +186,7 @@ object Form1: TForm1
|
|||||||
item
|
item
|
||||||
end>
|
end>
|
||||||
TextSettings.Trimming = None
|
TextSettings.Trimming = None
|
||||||
IsSelected = False
|
IsSelected = True
|
||||||
ImageIndex = 13
|
ImageIndex = 13
|
||||||
Size.Width = 78.000000000000000000
|
Size.Width = 78.000000000000000000
|
||||||
Size.Height = 26.000000000000000000
|
Size.Height = 26.000000000000000000
|
||||||
@@ -236,16 +194,16 @@ object Form1: TForm1
|
|||||||
StyleLookup = ''
|
StyleLookup = ''
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
Text = #1063#1072#1090' '#1073#1086#1090
|
Text = #1063#1072#1090' '#1073#1086#1090
|
||||||
|
ExplicitSize.cx = 78.000000000000000000
|
||||||
|
ExplicitSize.cy = 26.000000000000000000
|
||||||
inline frCommands1: TfrCommands
|
inline frCommands1: TfrCommands
|
||||||
Align = Client
|
Align = Client
|
||||||
Size.Width = 1042.000000000000000000
|
Size.Width = 1042.000000000000000000
|
||||||
Size.Height = 718.000000000000000000
|
Size.Height = 718.000000000000000000
|
||||||
Size.PlatformDefault = False
|
Size.PlatformDefault = False
|
||||||
inherited sgCommands: TStringGrid
|
inherited sgCommands: TStringGrid
|
||||||
TabOrder = 5
|
Viewport.Width = 602.000000000000000000
|
||||||
OnCellClick = nil
|
Viewport.Height = 168.000000000000000000
|
||||||
Viewport.Width = 606.000000000000000000
|
|
||||||
Viewport.Height = 193.000000000000000000
|
|
||||||
inherited scCommand: TStringColumn
|
inherited scCommand: TStringColumn
|
||||||
Size.Width = 134.000000000000000000
|
Size.Width = 134.000000000000000000
|
||||||
end
|
end
|
||||||
@@ -255,24 +213,21 @@ object Form1: TForm1
|
|||||||
end
|
end
|
||||||
inherited GroupBox1: TGroupBox
|
inherited GroupBox1: TGroupBox
|
||||||
inherited mResponse: TMemo
|
inherited mResponse: TMemo
|
||||||
Viewport.Width = 376.000000000000000000
|
Viewport.Width = 372.000000000000000000
|
||||||
Viewport.Height = 177.000000000000000000
|
Viewport.Height = 173.000000000000000000
|
||||||
end
|
end
|
||||||
inherited GroupBox7: TGroupBox
|
inherited GroupBox7: TGroupBox
|
||||||
inherited btnAddUserName: TButton
|
inherited btnAddUserName: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 11
|
ImageIndex = 11
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnGetDateFollow: TButton
|
inherited btnGetDateFollow: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 15
|
ImageIndex = 15
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnGetAgeAccaunt: TButton
|
inherited btnGetAgeAccaunt: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 15
|
ImageIndex = 15
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnCounterAddtoText: TButton
|
inherited btnCounterAddtoText: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
@@ -281,50 +236,40 @@ object Form1: TForm1
|
|||||||
inherited btnGPT: TButton
|
inherited btnGPT: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 19
|
ImageIndex = 19
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnRandomUserName: TButton
|
inherited btnRandomUserName: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 11
|
ImageIndex = 11
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnGetChannelStat: TButton
|
inherited btnGetChannelStat: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 20
|
ImageIndex = 20
|
||||||
Size.Width = 128.000000000000000000
|
Size.Width = 128.000000000000000000
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnAIPic: TButton
|
inherited btnAIPic: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 5
|
ImageIndex = 5
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
inherited btnAddCommand: TButton
|
inherited btnAddCommand: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 0
|
ImageIndex = 0
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnEditCommand: TButton
|
inherited btnEditCommand: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 0
|
ImageIndex = 3
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnRmCommand: TButton
|
inherited btnRmCommand: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 4
|
ImageIndex = 4
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
inherited GroupBox9: TGroupBox
|
inherited GroupBox9: TGroupBox
|
||||||
inherited lbRandomGroup: TListBox
|
inherited lbRandomGroup: TListBox
|
||||||
OnDblClick = nil
|
|
||||||
OnChange = nil
|
|
||||||
Viewport.Width = 117.000000000000000000
|
Viewport.Width = 117.000000000000000000
|
||||||
Viewport.Height = 116.000000000000000000
|
Viewport.Height = 116.000000000000000000
|
||||||
end
|
end
|
||||||
inherited lbRandomRespons: TListBox
|
inherited lbRandomRespons: TListBox
|
||||||
OnClick = nil
|
|
||||||
Viewport.Width = 270.000000000000000000
|
Viewport.Width = 270.000000000000000000
|
||||||
Viewport.Height = 116.000000000000000000
|
Viewport.Height = 116.000000000000000000
|
||||||
end
|
end
|
||||||
@@ -332,42 +277,30 @@ object Form1: TForm1
|
|||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 0
|
ImageIndex = 0
|
||||||
TabOrder = 36
|
TabOrder = 36
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnRandomDel: TButton
|
inherited btnRandomDel: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 12
|
ImageIndex = 12
|
||||||
TabOrder = 37
|
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnRmGroup: TButton
|
inherited btnRmGroup: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 4
|
ImageIndex = 4
|
||||||
TabOrder = 38
|
|
||||||
OnClick = nil
|
|
||||||
end
|
|
||||||
inherited Label4: TLabel
|
|
||||||
TabOrder = 39
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
inherited GroupBox8: TGroupBox
|
inherited GroupBox8: TGroupBox
|
||||||
inherited btnRandAdd: TButton
|
inherited btnRandAdd: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 0
|
ImageIndex = 0
|
||||||
TabOrder = 33
|
TabOrder = 32
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnRandDel: TButton
|
inherited btnRandDel: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 12
|
ImageIndex = 12
|
||||||
TabOrder = 34
|
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited sgRandomInt: TStringGrid
|
inherited sgRandomInt: TStringGrid
|
||||||
OnCellClick = nil
|
TabOrder = 35
|
||||||
OnCellDblClick = nil
|
Viewport.Width = 153.000000000000000000
|
||||||
Viewport.Width = 157.000000000000000000
|
Viewport.Height = 119.000000000000000000
|
||||||
Viewport.Height = 144.000000000000000000
|
|
||||||
inherited scRIntName: TStringColumn
|
inherited scRIntName: TStringColumn
|
||||||
Size.Width = 70.000000000000000000
|
Size.Width = 70.000000000000000000
|
||||||
end
|
end
|
||||||
@@ -383,29 +316,23 @@ object Form1: TForm1
|
|||||||
inherited btnSoundAdd: TButton
|
inherited btnSoundAdd: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 0
|
ImageIndex = 0
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnSoundDel: TButton
|
inherited btnSoundDel: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 12
|
ImageIndex = 12
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnSoundOpen: TButton
|
inherited btnSoundOpen: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 14
|
ImageIndex = 14
|
||||||
Text = ''
|
Text = ''
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnSoundTest: TButton
|
inherited btnSoundTest: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 25
|
ImageIndex = 25
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited sgSAFiles: TStringGrid
|
inherited sgSAFiles: TStringGrid
|
||||||
OnCellClick = nil
|
Viewport.Width = 341.000000000000000000
|
||||||
OnCellDblClick = nil
|
Viewport.Height = 124.000000000000000000
|
||||||
Viewport.Width = 345.000000000000000000
|
|
||||||
Viewport.Height = 149.000000000000000000
|
|
||||||
inherited sgSAFile: TStringColumn
|
inherited sgSAFile: TStringColumn
|
||||||
Size.Width = 220.000000000000000000
|
Size.Width = 220.000000000000000000
|
||||||
end
|
end
|
||||||
@@ -415,24 +342,19 @@ object Form1: TForm1
|
|||||||
inherited btnTextAdd: TButton
|
inherited btnTextAdd: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 0
|
ImageIndex = 0
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnTextDel: TButton
|
inherited btnTextDel: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 12
|
ImageIndex = 12
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnTextOpen: TButton
|
inherited btnTextOpen: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 14
|
ImageIndex = 14
|
||||||
Text = ''
|
Text = ''
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited sgTFiles: TStringGrid
|
inherited sgTFiles: TStringGrid
|
||||||
OnCellClick = nil
|
Viewport.Width = 293.000000000000000000
|
||||||
OnCellDblClick = nil
|
Viewport.Height = 124.000000000000000000
|
||||||
Viewport.Width = 297.000000000000000000
|
|
||||||
Viewport.Height = 149.000000000000000000
|
|
||||||
inherited scTFileFile: TStringColumn
|
inherited scTFileFile: TStringColumn
|
||||||
Size.Width = 170.000000000000000000
|
Size.Width = 170.000000000000000000
|
||||||
end
|
end
|
||||||
@@ -443,11 +365,10 @@ object Form1: TForm1
|
|||||||
Top = 368
|
Top = 368
|
||||||
end
|
end
|
||||||
inherited GroupBox2: TGroupBox
|
inherited GroupBox2: TGroupBox
|
||||||
|
TabOrder = 7
|
||||||
inherited sgAIGen: TStringGrid
|
inherited sgAIGen: TStringGrid
|
||||||
OnCellClick = nil
|
Viewport.Width = 301.000000000000000000
|
||||||
OnCellDblClick = nil
|
Viewport.Height = 124.000000000000000000
|
||||||
Viewport.Width = 305.000000000000000000
|
|
||||||
Viewport.Height = 149.000000000000000000
|
|
||||||
inherited StringColumn2: TStringColumn
|
inherited StringColumn2: TStringColumn
|
||||||
Size.Width = 180.000000000000000000
|
Size.Width = 180.000000000000000000
|
||||||
end
|
end
|
||||||
@@ -455,17 +376,14 @@ object Form1: TForm1
|
|||||||
inherited btnAIGenAdd: TButton
|
inherited btnAIGenAdd: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 0
|
ImageIndex = 0
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnAIGenDel: TButton
|
inherited btnAIGenDel: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 12
|
ImageIndex = 12
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnAIGetTextUser: TButton
|
inherited btnAIGetTextUser: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 11
|
ImageIndex = 11
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -483,13 +401,15 @@ object Form1: TForm1
|
|||||||
StyleLookup = ''
|
StyleLookup = ''
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
Text = #1053#1072#1074#1099#1082#1080
|
Text = #1053#1072#1074#1099#1082#1080
|
||||||
|
ExplicitSize.cx = 79.000000000000000000
|
||||||
|
ExplicitSize.cy = 26.000000000000000000
|
||||||
end
|
end
|
||||||
object TabItem4: TTabItem
|
object TabItem4: TTabItem
|
||||||
CustomIcon = <
|
CustomIcon = <
|
||||||
item
|
item
|
||||||
end>
|
end>
|
||||||
TextSettings.Trimming = None
|
TextSettings.Trimming = None
|
||||||
IsSelected = True
|
IsSelected = False
|
||||||
ImageIndex = 10
|
ImageIndex = 10
|
||||||
Size.Width = 136.000000000000000000
|
Size.Width = 136.000000000000000000
|
||||||
Size.Height = 26.000000000000000000
|
Size.Height = 26.000000000000000000
|
||||||
@@ -497,109 +417,58 @@ object Form1: TForm1
|
|||||||
StyleLookup = ''
|
StyleLookup = ''
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
Text = #1048#1085#1090#1077#1075#1088#1072#1094#1080#1103' '#1089' OBS'
|
Text = #1048#1085#1090#1077#1075#1088#1072#1094#1080#1103' '#1089' OBS'
|
||||||
inline frChatOBS1: TfrChatOBS
|
ExplicitSize.cx = 136.000000000000000000
|
||||||
|
ExplicitSize.cy = 26.000000000000000000
|
||||||
|
inline frOBS1: TfrOBS
|
||||||
Align = Top
|
Align = Top
|
||||||
Size.Width = 1042.000000000000000000
|
Size.Width = 1042.000000000000000000
|
||||||
Size.Height = 408.000000000000000000
|
Size.Height = 345.000000000000000000
|
||||||
Size.PlatformDefault = False
|
Size.PlatformDefault = False
|
||||||
inherited GroupBox13: TGroupBox
|
|
||||||
inherited Label41: TLabel
|
|
||||||
TabOrder = 8
|
|
||||||
end
|
|
||||||
inherited sbFontSize: TSpinBox
|
|
||||||
OnChange = nil
|
|
||||||
end
|
|
||||||
inherited ccbFontColor: TColorComboBox
|
|
||||||
TabOrder = 38
|
|
||||||
OnChange = nil
|
|
||||||
end
|
|
||||||
inherited Label49: TLabel
|
|
||||||
TabOrder = 35
|
|
||||||
end
|
|
||||||
inherited cbFontStyleDefault: TComboBox
|
|
||||||
OnChange = nil
|
|
||||||
end
|
|
||||||
inherited Label46: TLabel
|
|
||||||
TabOrder = 40
|
|
||||||
end
|
|
||||||
inherited ccbBColor: TColorComboBox
|
|
||||||
OnChange = nil
|
|
||||||
end
|
|
||||||
inherited Label1: TLabel
|
|
||||||
TabOrder = 36
|
|
||||||
end
|
|
||||||
inherited btnChangeBGColor: TButton
|
|
||||||
TabOrder = 43
|
|
||||||
end
|
|
||||||
end
|
|
||||||
inherited GroupBox12: TGroupBox
|
|
||||||
inherited cpStyleBlockColor: TColorPanel
|
|
||||||
OnChange = nil
|
|
||||||
end
|
|
||||||
inherited Label42: TLabel
|
|
||||||
TabOrder = 36
|
|
||||||
end
|
|
||||||
inherited ccbStyleBorderColor: TColorComboBox
|
|
||||||
OnChange = nil
|
|
||||||
end
|
|
||||||
inherited Label44: TLabel
|
|
||||||
TabOrder = 39
|
|
||||||
end
|
|
||||||
inherited sbStyleBlockPadding: TSpinBox
|
|
||||||
OnChange = nil
|
|
||||||
end
|
|
||||||
inherited sbStyleBlockBorderSize: TSpinBox
|
|
||||||
OnChange = nil
|
|
||||||
end
|
|
||||||
inherited Label48: TLabel
|
|
||||||
TabOrder = 40
|
|
||||||
end
|
|
||||||
end
|
|
||||||
inherited GroupBox10: TGroupBox
|
|
||||||
inherited Label27: TLabel
|
|
||||||
TabOrder = 1
|
|
||||||
end
|
|
||||||
inherited sbMaxMsg: TSpinBox
|
|
||||||
TabOrder = 3
|
|
||||||
OnChange = nil
|
|
||||||
end
|
|
||||||
inherited sbTimeMsg: TSpinBox
|
|
||||||
OnChange = nil
|
|
||||||
end
|
|
||||||
inherited Label39: TLabel
|
|
||||||
TabOrder = 5
|
|
||||||
end
|
|
||||||
inherited cbFreez: TCheckBox
|
|
||||||
TabOrder = 36
|
|
||||||
OnChange = nil
|
|
||||||
end
|
|
||||||
inherited sbWebServerPort: TSpinBox
|
|
||||||
OnChange = nil
|
|
||||||
end
|
|
||||||
end
|
|
||||||
inherited btnWebChatTest: TButton
|
|
||||||
OnClick = nil
|
|
||||||
end
|
|
||||||
inherited btnCreateWebChat: TButton
|
|
||||||
OnClick = nil
|
|
||||||
end
|
|
||||||
inherited btnDeleteWebChat: TButton
|
|
||||||
OnClick = nil
|
|
||||||
end
|
|
||||||
inherited sgWebChats: TStringGrid
|
inherited sgWebChats: TStringGrid
|
||||||
Size.Width = 1042.000000000000000000
|
Size.Width = 1042.000000000000000000
|
||||||
|
Size.Height = 282.000000000000000000
|
||||||
Viewport.Width = 1038.000000000000000000
|
Viewport.Width = 1038.000000000000000000
|
||||||
Viewport.Height = 95.000000000000000000
|
Viewport.Height = 257.000000000000000000
|
||||||
inherited IntegerColumn1: TIntegerColumn
|
inherited StringColumn2: TStringColumn
|
||||||
Size.Width = 80.000000000000000000
|
Size.Width = 200.000000000000000000
|
||||||
end
|
|
||||||
inherited IntegerColumn2: TIntegerColumn
|
|
||||||
Size.Width = 82.000000000000000000
|
|
||||||
end
|
|
||||||
inherited IntegerColumn5: TIntegerColumn
|
|
||||||
Size.Width = 80.000000000000000000
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
inherited btnCreateOBSChat: TButton
|
||||||
|
Images = ImageList1
|
||||||
|
ImageIndex = 13
|
||||||
|
Size.Width = 94.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
TabOrder = 2
|
||||||
|
OnClick = frChatOBS1btnCreateChatClick
|
||||||
|
end
|
||||||
|
inherited btnDeleteeChat: TButton
|
||||||
|
Images = ImageList1
|
||||||
|
ImageIndex = 4
|
||||||
|
Position.X = 954.000000000000000000
|
||||||
|
TabOrder = 3
|
||||||
|
end
|
||||||
|
inherited Label1: TLabel
|
||||||
|
TabOrder = 5
|
||||||
|
end
|
||||||
|
object btnCreateChat: TButton [4]
|
||||||
|
Images = ImageList1
|
||||||
|
ImageIndex = 5
|
||||||
|
Position.X = 406.000000000000000000
|
||||||
|
Position.Y = -80.000000000000000000
|
||||||
|
Size.Width = 153.000000000000000000
|
||||||
|
Size.Height = 22.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
TabOrder = 1
|
||||||
|
Text = #1057#1086#1079#1076#1072#1090#1100' '#1086#1087#1086#1074#1077#1097#1077#1085#1080#1077
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
OnClick = frChatOBS1btnCreateChatClick
|
||||||
|
end
|
||||||
|
inherited btnCreateOBSNotify: TButton
|
||||||
|
Images = ImageList1
|
||||||
|
ImageIndex = 5
|
||||||
|
Position.X = 110.000000000000000000
|
||||||
|
OnClick = frOBS1btnCreateOBSNotifyClick
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
object TabItem6: TTabItem
|
object TabItem6: TTabItem
|
||||||
@@ -615,106 +484,52 @@ object Form1: TForm1
|
|||||||
StyleLookup = ''
|
StyleLookup = ''
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
Text = #1059#1074#1077#1076#1086#1084#1083#1077#1085#1080#1103
|
Text = #1059#1074#1077#1076#1086#1084#1083#1077#1085#1080#1103
|
||||||
|
ExplicitSize.cx = 110.000000000000000000
|
||||||
|
ExplicitSize.cy = 26.000000000000000000
|
||||||
inline frNotify1: TfrNotify
|
inline frNotify1: TfrNotify
|
||||||
Align = Client
|
Align = Client
|
||||||
Size.Width = 1042.000000000000000000
|
Size.Width = 1042.000000000000000000
|
||||||
Size.Height = 718.000000000000000000
|
Size.Height = 718.000000000000000000
|
||||||
Size.PlatformDefault = False
|
Size.PlatformDefault = False
|
||||||
inherited chEnNotify: TSwitch
|
|
||||||
OnSwitch = nil
|
|
||||||
end
|
|
||||||
inherited tbNotifyVolume: TTrackBar
|
|
||||||
OnExit = nil
|
|
||||||
end
|
|
||||||
inherited edtNotifyFileName: TEdit
|
|
||||||
OnExit = nil
|
|
||||||
end
|
|
||||||
inherited btnNotifyOpen: TButton
|
inherited btnNotifyOpen: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 14
|
ImageIndex = 14
|
||||||
Text = ''
|
Text = ''
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnNotifyCheck: TButton
|
inherited btnNotifyCheck: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 25
|
ImageIndex = 25
|
||||||
Text = ''
|
Text = ''
|
||||||
OnClick = nil
|
|
||||||
end
|
|
||||||
inherited cbNotifyFileAgain1: TCheckBox
|
|
||||||
OnChange = nil
|
|
||||||
OnExit = nil
|
|
||||||
end
|
end
|
||||||
inherited btnNotifyCheckMod: TButton
|
inherited btnNotifyCheckMod: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 25
|
ImageIndex = 25
|
||||||
Text = ''
|
Text = ''
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnNotifyOpenMod: TButton
|
inherited btnNotifyOpenMod: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 14
|
ImageIndex = 14
|
||||||
Text = ''
|
Text = ''
|
||||||
OnClick = nil
|
|
||||||
end
|
|
||||||
inherited edtNotifyFileNameMod: TEdit
|
|
||||||
OnExit = nil
|
|
||||||
end
|
|
||||||
inherited tbNotifyVolumeMod: TTrackBar
|
|
||||||
OnExit = nil
|
|
||||||
end
|
|
||||||
inherited chEnNotifyMod: TSwitch
|
|
||||||
OnSwitch = nil
|
|
||||||
end
|
|
||||||
inherited chEnNotifyVip: TSwitch
|
|
||||||
OnSwitch = nil
|
|
||||||
end
|
|
||||||
inherited tbNotifyVolumeVip: TTrackBar
|
|
||||||
OnExit = nil
|
|
||||||
end
|
|
||||||
inherited edtNotifyFileNameVip: TEdit
|
|
||||||
OnExit = nil
|
|
||||||
end
|
end
|
||||||
inherited btnNotifyOpenVip: TButton
|
inherited btnNotifyOpenVip: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 14
|
ImageIndex = 14
|
||||||
Text = ''
|
Text = ''
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnNotifyCheckVip: TButton
|
inherited btnNotifyCheckVip: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 25
|
ImageIndex = 25
|
||||||
Text = ''
|
Text = ''
|
||||||
OnClick = nil
|
|
||||||
end
|
|
||||||
inherited cbNotifyFileAgain2: TCheckBox
|
|
||||||
OnChange = nil
|
|
||||||
OnExit = nil
|
|
||||||
end
|
|
||||||
inherited cbNotifyFileAgain3: TCheckBox
|
|
||||||
OnChange = nil
|
|
||||||
OnExit = nil
|
|
||||||
end
|
end
|
||||||
inherited btnNotifyCheckSub: TButton
|
inherited btnNotifyCheckSub: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 25
|
ImageIndex = 25
|
||||||
Text = ''
|
Text = ''
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnNotifyOpenSub: TButton
|
inherited btnNotifyOpenSub: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 14
|
ImageIndex = 14
|
||||||
Text = ''
|
Text = ''
|
||||||
OnClick = nil
|
|
||||||
end
|
|
||||||
inherited edtNotifyFileNameSub: TEdit
|
|
||||||
OnExit = nil
|
|
||||||
end
|
|
||||||
inherited tbNotifyVolumeSub: TTrackBar
|
|
||||||
OnExit = nil
|
|
||||||
end
|
|
||||||
inherited chEnNotifySub: TSwitch
|
|
||||||
OnSwitch = nil
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -731,6 +546,8 @@ object Form1: TForm1
|
|||||||
StyleLookup = ''
|
StyleLookup = ''
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
Text = #1047#1088#1080#1090#1077#1083#1080
|
Text = #1047#1088#1080#1090#1077#1083#1080
|
||||||
|
ExplicitSize.cx = 81.000000000000000000
|
||||||
|
ExplicitSize.cy = 26.000000000000000000
|
||||||
end
|
end
|
||||||
object TabItem8: TTabItem
|
object TabItem8: TTabItem
|
||||||
CustomIcon = <
|
CustomIcon = <
|
||||||
@@ -745,6 +562,8 @@ object Form1: TForm1
|
|||||||
StyleLookup = ''
|
StyleLookup = ''
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
Text = #1040#1074#1090#1086#1084#1072#1090#1080#1082#1072
|
Text = #1040#1074#1090#1086#1084#1072#1090#1080#1082#1072
|
||||||
|
ExplicitSize.cx = 101.000000000000000000
|
||||||
|
ExplicitSize.cy = 26.000000000000000000
|
||||||
inline frAutoActions1: TfrAutoActions
|
inline frAutoActions1: TfrAutoActions
|
||||||
Align = Client
|
Align = Client
|
||||||
Size.Width = 1042.000000000000000000
|
Size.Width = 1042.000000000000000000
|
||||||
@@ -754,25 +573,20 @@ object Form1: TForm1
|
|||||||
inherited btnAddMessage: TButton
|
inherited btnAddMessage: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 0
|
ImageIndex = 0
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnRmMessage: TButton
|
inherited btnRmMessage: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 4
|
ImageIndex = 4
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnEditMessage: TButton
|
inherited btnEditMessage: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 3
|
ImageIndex = 3
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnNotifyTest: TButton
|
inherited btnNotifyTest: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 25
|
ImageIndex = 25
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited sgTimers: TStringGrid
|
inherited sgTimers: TStringGrid
|
||||||
OnEditingDone = nil
|
|
||||||
Viewport.Width = 463.000000000000000000
|
Viewport.Width = 463.000000000000000000
|
||||||
Viewport.Height = 225.000000000000000000
|
Viewport.Height = 225.000000000000000000
|
||||||
inherited scTimerMessage: TStringColumn
|
inherited scTimerMessage: TStringColumn
|
||||||
@@ -787,17 +601,14 @@ object Form1: TForm1
|
|||||||
inherited btnBanWordsAdd: TButton
|
inherited btnBanWordsAdd: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 0
|
ImageIndex = 0
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnBanWordsEdt: TButton
|
inherited btnBanWordsEdt: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 3
|
ImageIndex = 3
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnBanWordsDel: TButton
|
inherited btnBanWordsDel: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 4
|
ImageIndex = 4
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited sgBanWords: TStringGrid
|
inherited sgBanWords: TStringGrid
|
||||||
Viewport.Width = 297.000000000000000000
|
Viewport.Width = 297.000000000000000000
|
||||||
@@ -812,7 +623,6 @@ object Form1: TForm1
|
|||||||
Position.X = 217.000000000000000000
|
Position.X = 217.000000000000000000
|
||||||
Size.Width = 88.000000000000000000
|
Size.Width = 88.000000000000000000
|
||||||
Size.PlatformDefault = False
|
Size.PlatformDefault = False
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited edtBanWordsCheck: TEdit
|
inherited edtBanWordsCheck: TEdit
|
||||||
Size.Width = 201.000000000000000000
|
Size.Width = 201.000000000000000000
|
||||||
@@ -822,12 +632,10 @@ object Form1: TForm1
|
|||||||
inherited btnCounterAdd: TButton
|
inherited btnCounterAdd: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 0
|
ImageIndex = 0
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnCounterDelete: TButton
|
inherited btnCounterDelete: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 4
|
ImageIndex = 4
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnCounterP: TButton
|
inherited btnCounterP: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
@@ -835,7 +643,6 @@ object Form1: TForm1
|
|||||||
Position.X = 416.000000000000000000
|
Position.X = 416.000000000000000000
|
||||||
Size.Width = 22.000000000000000000
|
Size.Width = 22.000000000000000000
|
||||||
Text = ''
|
Text = ''
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnCounterM: TButton
|
inherited btnCounterM: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
@@ -843,15 +650,12 @@ object Form1: TForm1
|
|||||||
Position.X = 449.000000000000000000
|
Position.X = 449.000000000000000000
|
||||||
Size.Width = 22.000000000000000000
|
Size.Width = 22.000000000000000000
|
||||||
Text = ''
|
Text = ''
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited btnCounterEdit: TButton
|
inherited btnCounterEdit: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 3
|
ImageIndex = 3
|
||||||
OnClick = nil
|
|
||||||
end
|
end
|
||||||
inherited sgCounter: TStringGrid
|
inherited sgCounter: TStringGrid
|
||||||
OnEditingDone = nil
|
|
||||||
Viewport.Width = 463.000000000000000000
|
Viewport.Width = 463.000000000000000000
|
||||||
Viewport.Height = 121.000000000000000000
|
Viewport.Height = 121.000000000000000000
|
||||||
inherited scCounterTrigger: TStringColumn
|
inherited scCounterTrigger: TStringColumn
|
||||||
@@ -877,6 +681,8 @@ object Form1: TForm1
|
|||||||
StyleLookup = ''
|
StyleLookup = ''
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
Text = #1051#1086#1075
|
Text = #1051#1086#1075
|
||||||
|
ExplicitSize.cx = 56.000000000000000000
|
||||||
|
ExplicitSize.cy = 26.000000000000000000
|
||||||
inline frLog1: TfrLog
|
inline frLog1: TfrLog
|
||||||
Align = Client
|
Align = Client
|
||||||
Size.Width = 1042.000000000000000000
|
Size.Width = 1042.000000000000000000
|
||||||
@@ -887,19 +693,6 @@ object Form1: TForm1
|
|||||||
inherited btnClear: TButton
|
inherited btnClear: TButton
|
||||||
Images = ImageList1
|
Images = ImageList1
|
||||||
ImageIndex = 4
|
ImageIndex = 4
|
||||||
OnClick = nil
|
|
||||||
end
|
|
||||||
inherited chkWARNING: TCheckBox
|
|
||||||
OnChange = nil
|
|
||||||
end
|
|
||||||
inherited chkERROR: TCheckBox
|
|
||||||
OnChange = nil
|
|
||||||
end
|
|
||||||
inherited chkDEBUG: TCheckBox
|
|
||||||
OnChange = nil
|
|
||||||
end
|
|
||||||
inherited chkINFO: TCheckBox
|
|
||||||
OnChange = nil
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
inherited sgLog: TStringGrid
|
inherited sgLog: TStringGrid
|
||||||
@@ -1047,28 +840,7 @@ object Form1: TForm1
|
|||||||
Position.X = 760.000000000000000000
|
Position.X = 760.000000000000000000
|
||||||
Position.Y = 8.000000000000000000
|
Position.Y = 8.000000000000000000
|
||||||
Text = #1054#1090#1076#1077#1083#1100#1085#1086#1077' '#1089#1087#1072#1089#1080#1073#1086':'
|
Text = #1054#1090#1076#1077#1083#1100#1085#1086#1077' '#1089#1087#1072#1089#1080#1073#1086':'
|
||||||
TabOrder = 15
|
|
||||||
end
|
|
||||||
object Label4: TLabel
|
|
||||||
Position.X = 778.000000000000000000
|
|
||||||
Position.Y = 33.000000000000000000
|
|
||||||
Text = 'Incadence ('#1079#1072' '#1090#1077#1089#1090#1099')'
|
|
||||||
TabOrder = 14
|
|
||||||
OnDblClick = Label4DblClick
|
|
||||||
end
|
|
||||||
object Label13: TLabel
|
|
||||||
Position.X = 778.000000000000000000
|
|
||||||
Position.Y = 58.000000000000000000
|
|
||||||
Text = 'KuznecOGR ('#1079#1072' '#1090#1077#1089#1090#1099')'
|
|
||||||
TabOrder = 13
|
|
||||||
OnDblClick = Label13DblClick
|
|
||||||
end
|
|
||||||
object Label14: TLabel
|
|
||||||
Position.X = 778.000000000000000000
|
|
||||||
Position.Y = 83.000000000000000000
|
|
||||||
Text = 'Karacis ('#1079#1072' '#1080#1082#1086#1085#1082#1080')'
|
|
||||||
TabOrder = 12
|
TabOrder = 12
|
||||||
OnDblClick = Label14DblClick
|
|
||||||
end
|
end
|
||||||
object cbTheme: TComboBox
|
object cbTheme: TComboBox
|
||||||
ItemIndex = 0
|
ItemIndex = 0
|
||||||
@@ -1081,7 +853,7 @@ object Form1: TForm1
|
|||||||
Size.Width = 228.000000000000000000
|
Size.Width = 228.000000000000000000
|
||||||
Size.Height = 22.000000000000000000
|
Size.Height = 22.000000000000000000
|
||||||
Size.PlatformDefault = False
|
Size.PlatformDefault = False
|
||||||
TabOrder = 36
|
TabOrder = 33
|
||||||
OnChange = cbThemeChange
|
OnChange = cbThemeChange
|
||||||
end
|
end
|
||||||
object Label15: TLabel
|
object Label15: TLabel
|
||||||
@@ -1098,6 +870,42 @@ object Form1: TForm1
|
|||||||
Text = #1058#1077#1084#1072
|
Text = #1058#1077#1084#1072
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
end
|
end
|
||||||
|
object SpeedButton1: TSpeedButton
|
||||||
|
Images = ImageList1
|
||||||
|
ImageIndex = 11
|
||||||
|
Position.X = 760.000000000000000000
|
||||||
|
Position.Y = 33.000000000000000000
|
||||||
|
Size.Width = 141.000000000000000000
|
||||||
|
Size.Height = 22.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
Text = 'Incadence ('#1079#1072' '#1090#1077#1089#1090#1099')'
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
OnClick = SpeedButton1Click
|
||||||
|
end
|
||||||
|
object SpeedButton2: TSpeedButton
|
||||||
|
Images = ImageList1
|
||||||
|
ImageIndex = 11
|
||||||
|
Position.X = 760.000000000000000000
|
||||||
|
Position.Y = 63.000000000000000000
|
||||||
|
Size.Width = 141.000000000000000000
|
||||||
|
Size.Height = 22.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
Text = 'KuznecOGR ('#1079#1072' '#1090#1077#1089#1090#1099')'
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
OnClick = SpeedButton2Click
|
||||||
|
end
|
||||||
|
object SpeedButton3: TSpeedButton
|
||||||
|
Images = ImageList1
|
||||||
|
ImageIndex = 11
|
||||||
|
Position.X = 760.000000000000000000
|
||||||
|
Position.Y = 93.000000000000000000
|
||||||
|
Size.Width = 141.000000000000000000
|
||||||
|
Size.Height = 22.000000000000000000
|
||||||
|
Size.PlatformDefault = False
|
||||||
|
Text = 'Karacis ('#1079#1072' '#1080#1082#1086#1085#1082#1080')'
|
||||||
|
TextSettings.Trimming = None
|
||||||
|
OnClick = SpeedButton3Click
|
||||||
|
end
|
||||||
end
|
end
|
||||||
object ImageList1: TImageList
|
object ImageList1: TImageList
|
||||||
Source = <
|
Source = <
|
||||||
|
|||||||
+201
-210
@@ -7,10 +7,10 @@ uses
|
|||||||
System.Variants,
|
System.Variants,
|
||||||
FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.TabControl,
|
FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.TabControl,
|
||||||
FMX.Controls.Presentation, FMX.StdCtrls, System.ImageList, FMX.ImgList,
|
FMX.Controls.Presentation, FMX.StdCtrls, System.ImageList, FMX.ImgList,
|
||||||
FMX.Styles,
|
FMX.Styles, ShellAPI, StrUtils,
|
||||||
fSettings, fAI, fNotify, fAutoActions, fChatOBS, FMX.ListBox, fLog, uRecords,
|
fSettings, fAI, fNotify, fAutoActions, FMX.ListBox, fLog, uRecords,
|
||||||
System.IOUtils, fCommands, uDataBase, FMX.Edit, FMX.Colors, FMX.SpinBox,
|
System.IOUtils, fCommands, uDataBase, FMX.Edit, FMX.Colors, FMX.SpinBox,
|
||||||
windows;
|
windows, System.Skia, FMX.Skia, uCreateChat, uCreateNotify, fOBS;
|
||||||
|
|
||||||
type
|
type
|
||||||
TForm1 = class(TForm)
|
TForm1 = class(TForm)
|
||||||
@@ -42,20 +42,23 @@ type
|
|||||||
TabItem9: TTabItem;
|
TabItem9: TTabItem;
|
||||||
frNotify1: TfrNotify;
|
frNotify1: TfrNotify;
|
||||||
Label1: TLabel;
|
Label1: TLabel;
|
||||||
Label4: TLabel;
|
|
||||||
Label13: TLabel;
|
|
||||||
Label14: TLabel;
|
|
||||||
frAutoActions1: TfrAutoActions;
|
frAutoActions1: TfrAutoActions;
|
||||||
frChatOBS1: TfrChatOBS;
|
frOBS1: TfrOBS;
|
||||||
frLog1: TfrLog;
|
frLog1: TfrLog;
|
||||||
cbTheme: TComboBox;
|
cbTheme: TComboBox;
|
||||||
Label15: TLabel;
|
Label15: TLabel;
|
||||||
frCommands1: TfrCommands;
|
frCommands1: TfrCommands;
|
||||||
procedure Label14DblClick(Sender: TObject);
|
SpeedButton1: TSpeedButton;
|
||||||
procedure Label13DblClick(Sender: TObject);
|
SpeedButton2: TSpeedButton;
|
||||||
procedure Label4DblClick(Sender: TObject);
|
SpeedButton3: TSpeedButton;
|
||||||
|
btnCreateChat: TButton;
|
||||||
procedure cbThemeChange(Sender: TObject);
|
procedure cbThemeChange(Sender: TObject);
|
||||||
procedure FormCreate(Sender: TObject);
|
procedure FormCreate(Sender: TObject);
|
||||||
|
procedure SpeedButton1Click(Sender: TObject);
|
||||||
|
procedure SpeedButton3Click(Sender: TObject);
|
||||||
|
procedure SpeedButton2Click(Sender: TObject);
|
||||||
|
procedure frChatOBS1btnCreateChatClick(Sender: TObject);
|
||||||
|
procedure frOBS1btnCreateOBSNotifyClick(Sender: TObject);
|
||||||
private
|
private
|
||||||
{ Private declarations }
|
{ Private declarations }
|
||||||
procedure ReadDB();
|
procedure ReadDB();
|
||||||
@@ -138,20 +141,14 @@ begin
|
|||||||
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TForm1.Label13DblClick(Sender: TObject);
|
procedure TForm1.frChatOBS1btnCreateChatClick(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
// https://www.twitch.tv/kuznecogr
|
fCreateChat.Show;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TForm1.Label14DblClick(Sender: TObject);
|
procedure TForm1.frOBS1btnCreateOBSNotifyClick(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
// https://www.flaticon.com/ru/authors/karacis
|
fCreateNotify.Show;
|
||||||
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TForm1.Label4DblClick(Sender: TObject);
|
|
||||||
begin
|
|
||||||
// https://www.twitch.tv/incadence
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TForm1.ReadDB;
|
procedure TForm1.ReadDB;
|
||||||
@@ -210,34 +207,49 @@ var
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
begin
|
// Çàãðóçêà êîìïîíåíòîâ íàñòðîåê (TEdit, TCheckBox)
|
||||||
for I := 0 to fSettings.ComponentCount - 1 do
|
procedure LoadSettingsComponents;
|
||||||
|
var
|
||||||
|
I: Integer;
|
||||||
|
c: TComponent;
|
||||||
begin
|
begin
|
||||||
c := fSettings.components[I];
|
for I := 0 to fSettings.ComponentCount - 1 do
|
||||||
if c is TEdit then
|
|
||||||
begin
|
begin
|
||||||
TEdit(c).text := db.ReadSetting(TEdit(c).Name);
|
c := fSettings.Components[I];
|
||||||
end;
|
if c is TEdit then
|
||||||
if c is TCheckBox then
|
TEdit(c).text := db.ReadSetting(TEdit(c).Name)
|
||||||
begin
|
else if c is TCheckBox then
|
||||||
TCheckBox(c).IsChecked := (db.ReadSetting(TCheckBox(c).Name) = 'True');
|
TCheckBox(c).IsChecked := (db.ReadSetting(TCheckBox(c).Name) = 'True');
|
||||||
end;
|
end;
|
||||||
|
db.FChannel := fSettings.edtChannel.text;
|
||||||
end;
|
end;
|
||||||
db.FChannel := fSettings.edtChannel.text;
|
|
||||||
|
|
||||||
db.LoadGridFromTable('sgRandomInt', frCommands1.sgRandomInt);
|
// Çàãðóçêà äàííûõ â ãðèäû êîìàíä
|
||||||
db.LoadGridFromTable('sgCommands', frCommands1.sgCommands);
|
procedure LoadGridsData;
|
||||||
db.LoadGridFromTable('sgSAFiles', frCommands1.sgSAFiles);
|
|
||||||
db.LoadGridFromTable('sgTFiles', frCommands1.sgTFiles);
|
|
||||||
db.LoadGridFromTable('sgAIGen', frCommands1.sgAIGen);
|
|
||||||
|
|
||||||
db.getGroupName(frCommands1.lbRandomGroup.Items);
|
|
||||||
|
|
||||||
if FileExists(myConst.cfg1) then
|
|
||||||
begin
|
begin
|
||||||
|
db.LoadGridFromTable('sgRandomInt', frCommands1.sgRandomInt);
|
||||||
|
db.LoadGridFromTable('sgCommands', frCommands1.sgCommands);
|
||||||
|
db.LoadGridFromTable('sgSAFiles', frCommands1.sgSAFiles);
|
||||||
|
db.LoadGridFromTable('sgTFiles', frCommands1.sgTFiles);
|
||||||
|
db.LoadGridFromTable('sgAIGen', frCommands1.sgAIGen);
|
||||||
|
end;
|
||||||
|
|
||||||
|
// Çàãðóçêà ñïèñêà ãðóïï
|
||||||
|
procedure LoadGroupNames;
|
||||||
|
begin
|
||||||
|
db.getGroupName(frCommands1.lbRandomGroup.Items);
|
||||||
|
end;
|
||||||
|
|
||||||
|
// Çàãðóçêà çàøèôðîâàííîãî êîíôèãà
|
||||||
|
procedure LoadEncryptedConfig;
|
||||||
|
var
|
||||||
|
sl: TStringList;
|
||||||
|
I: Integer;
|
||||||
|
begin
|
||||||
|
if not FileExists(myConst.cfg1) then
|
||||||
|
Exit;
|
||||||
|
|
||||||
sl := TStringList.Create;
|
sl := TStringList.Create;
|
||||||
|
|
||||||
try
|
try
|
||||||
sl.Assign(XorDecryptToStrings(myConst.cfg1, 'fgvasrgEFAXFAFAS'));
|
sl.Assign(XorDecryptToStrings(myConst.cfg1, 'fgvasrgEFAXFAFAS'));
|
||||||
for I := 0 to sl.Count - 1 do
|
for I := 0 to sl.Count - 1 do
|
||||||
@@ -251,205 +263,184 @@ begin
|
|||||||
var
|
var
|
||||||
Value := Trim(Copy(sl[I], eqPos + 1, MaxInt));
|
Value := Trim(Copy(sl[I], eqPos + 1, MaxInt));
|
||||||
|
|
||||||
// Ðàñïðåäåëÿåì çíà÷åíèÿ ïî ïåðåìåííûì
|
|
||||||
if Key = 'k1' then
|
if Key = 'k1' then
|
||||||
begin
|
appconst.TTV_ClientID := Value
|
||||||
appconst.TTV_ClientID := Value;
|
|
||||||
end
|
|
||||||
else if Key = 'k2' then
|
else if Key = 'k2' then
|
||||||
begin
|
appconst.AI_GigaChat_AC := Value
|
||||||
appconst.AI_GigaChat_AC := Value;
|
|
||||||
end
|
|
||||||
else if Key = 'k3' then
|
else if Key = 'k3' then
|
||||||
begin
|
appconst.AI_GigaChat_ClientID := Value
|
||||||
appconst.AI_GigaChat_ClientID := Value;
|
|
||||||
end
|
|
||||||
else if Key = 'k4' then
|
else if Key = 'k4' then
|
||||||
begin
|
appconst.AI_ChatGPT_Token := Value
|
||||||
appconst.AI_ChatGPT_Token := Value;
|
|
||||||
end
|
|
||||||
else if Key = 'k5' then
|
else if Key = 'k5' then
|
||||||
begin
|
appconst.AI_DeepSeec_Token := Value
|
||||||
appconst.AI_DeepSeec_Token := Value;
|
|
||||||
end
|
|
||||||
else if Key = 'k6' then
|
else if Key = 'k6' then
|
||||||
begin
|
appconst.DA_ClientID := Value
|
||||||
appconst.DA_ClientID := Value;
|
|
||||||
end
|
|
||||||
else if Key = 'k7' then
|
else if Key = 'k7' then
|
||||||
begin
|
appconst.DA_Sicret := Value
|
||||||
appconst.DA_Sicret := Value;
|
|
||||||
end
|
|
||||||
else if Key = 'k8' then
|
else if Key = 'k8' then
|
||||||
begin
|
|
||||||
appconst.DA_URL := Value;
|
appconst.DA_URL := Value;
|
||||||
end
|
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
if appconst.TTV_ClientID <> '' then
|
|
||||||
begin
|
|
||||||
fSettings.btnGetClientID.Visible := True;
|
|
||||||
end;
|
|
||||||
if ((appconst.AI_GigaChat_AC <> '') and (appconst.AI_GigaChat_ClientID <>
|
|
||||||
'')) or (appconst.AI_ChatGPT_Token <> '') or
|
|
||||||
(appconst.AI_DeepSeec_Token <> '') then
|
|
||||||
begin
|
|
||||||
frAI1.btnGetAIDef.Visible := True;
|
|
||||||
end;
|
|
||||||
if ((appconst.DA_ClientID <> '') and (appconst.DA_Sicret <> '') and
|
|
||||||
(appconst.DA_URL <> '')) then
|
|
||||||
begin
|
|
||||||
fSettings.btnGetDADef.Visible := True;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
fSettings.btnGetClientID.Visible := (appconst.TTV_ClientID <> '');
|
||||||
|
frAI1.btnGetAIDef.Visible := ((appconst.AI_GigaChat_AC <> '') and
|
||||||
|
(appconst.AI_GigaChat_ClientID <> '')) or
|
||||||
|
(appconst.AI_ChatGPT_Token <> '') or (appconst.AI_DeepSeec_Token <> '');
|
||||||
|
fSettings.btnGetDADef.Visible := (appconst.DA_ClientID <> '') and
|
||||||
|
(appconst.DA_Sicret <> '') and (appconst.DA_URL <> '');
|
||||||
finally
|
finally
|
||||||
sl.Free;
|
sl.Free;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
for I := 0 to frChatOBS1.ComponentCount - 1 do
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// Çàãðóçêà íàñòðîåê óâåäîìëåíèé
|
||||||
|
procedure LoadNotifySettings;
|
||||||
|
var
|
||||||
|
I: Integer;
|
||||||
|
c: TComponent;
|
||||||
begin
|
begin
|
||||||
c := frChatOBS1.components[I];
|
for I := 0 to frNotify1.ComponentCount - 1 do
|
||||||
if c is TComboBox then
|
|
||||||
begin
|
begin
|
||||||
TComboBox(c).ItemIndex :=
|
c := frNotify1.Components[I];
|
||||||
strtoint(db.ReadSetting(TComboBox(c).Name, '0'));
|
if c is TEdit then
|
||||||
end;
|
TEdit(c).text := db.ReadSetting(TEdit(c).Name)
|
||||||
if c is TColorComboBox then
|
else if c is TCheckBox then
|
||||||
begin
|
TCheckBox(c).IsChecked := (db.ReadSetting(TCheckBox(c).Name) = 'True')
|
||||||
TColorComboBox(c).ItemIndex :=
|
else if c is TSwitch then
|
||||||
strtoint(db.ReadSetting(TComboBox(c).Name, '147'));
|
TSwitch(c).IsChecked := (db.ReadSetting(TSwitch(c).Name) = 'True')
|
||||||
end;
|
else if c is TTrackBar then
|
||||||
if c is TSpinBox then
|
TTrackBar(c).Value :=
|
||||||
begin
|
strtoint(db.ReadSetting(TTrackBar(c).Name, '100'));
|
||||||
if TSpinBox(c).Name = 'sbWebServerPort' then
|
|
||||||
TSpinBox(c).text := db.ReadSetting(TSpinBox(c).Name, '8080');
|
|
||||||
TSpinBox(c).text := db.ReadSetting(TSpinBox(c).Name, '1');
|
|
||||||
end;
|
|
||||||
if c is TCheckBox then
|
|
||||||
begin
|
|
||||||
TCheckBox(c).IsChecked := db.ReadSetting(TCheckBox(c).Name, '0') = '1';
|
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
ColorStr := db.ReadSetting('cpStyleBlockColor', 'FF000000');
|
|
||||||
if TryStrToUInt('$' + ColorStr, Cardinal(SavedColor)) then
|
|
||||||
frChatOBS1.cpStyleBlockColor.Color := SavedColor
|
|
||||||
else
|
|
||||||
frChatOBS1.cpStyleBlockColor.Color := TAlphaColorRec.Black;
|
|
||||||
|
|
||||||
if not DirectoryExists(myConst.fontsPath) then
|
|
||||||
CreateDirectory(PChar(myConst.fontsPath), 0);
|
|
||||||
var
|
|
||||||
n := 1;
|
|
||||||
var
|
|
||||||
cDir := myConst.fontsPath; // Èñêàòü â ïàïêå ñ ïðîãðàììîé
|
|
||||||
var
|
|
||||||
FileName := '*.*'; // Èùåì âñå ôàéëû
|
|
||||||
ChDir(cDir); // âîéòè â êàòàëîã
|
|
||||||
var
|
|
||||||
SearchRec: TSearchRec;
|
|
||||||
if FindFirst(FileName, faArchive, SearchRec) = 0 then
|
|
||||||
repeat
|
|
||||||
if (SearchRec.Attr and faAnyFile) = SearchRec.Attr then
|
|
||||||
begin
|
|
||||||
frChatOBS1.cbFontStyleDefault.Items.Add(SearchRec.Name);
|
|
||||||
Inc(n);
|
|
||||||
end;
|
|
||||||
until FindNext(SearchRec) <> 0;
|
|
||||||
ChDir('..');
|
|
||||||
|
|
||||||
for I := 0 to frNotify1.ComponentCount - 1 do
|
|
||||||
begin
|
|
||||||
c := frNotify1.components[I];
|
// Çàãðóçêà íàñòðîåê ÈÈ
|
||||||
if c is TEdit then
|
procedure LoadAISettings;
|
||||||
begin
|
|
||||||
TEdit(c).text := db.ReadSetting(TEdit(c).Name);
|
|
||||||
end;
|
|
||||||
if c is TCheckBox then
|
|
||||||
begin
|
|
||||||
TCheckBox(c).IsChecked := (db.ReadSetting(TCheckBox(c).Name) = 'True');
|
|
||||||
end;
|
|
||||||
if c is TSwitch then
|
|
||||||
begin
|
|
||||||
TSwitch(c).IsChecked := (db.ReadSetting(TSwitch(c).Name) = 'True');
|
|
||||||
end;
|
|
||||||
if c is TTrackBar then
|
|
||||||
begin
|
|
||||||
TTrackBar(c).Value := strtoint(db.ReadSetting(TTrackBar(c).Name, '100'));
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
var
|
var
|
||||||
|
I: Integer;
|
||||||
|
c: TComponent;
|
||||||
ii: Integer;
|
ii: Integer;
|
||||||
for I := 0 to frAI1.ComponentCount - 1 do
|
|
||||||
|
// Íàñòðîéêè GigaChat
|
||||||
|
procedure SetupGigaChatSettings;
|
||||||
begin
|
begin
|
||||||
c := frAI1.components[I];
|
frAI1.rbGC.IsChecked := True;
|
||||||
if c is TEdit then
|
frAI1.Label45.text := 'ClientID';
|
||||||
begin
|
frAI1.Label47.text := 'Autorization Code';
|
||||||
TEdit(c).text := db.ReadSetting(TEdit(c).Name);
|
frAI1.Label1.Visible := False;
|
||||||
end;
|
frAI1.edtAIP2.Visible := True;
|
||||||
if c is TCheckBox then
|
frAI1.edtAIP2.Password := True;
|
||||||
begin
|
frAI1.edtAIP3.Visible := False;
|
||||||
TCheckBox(c).IsChecked := db.ReadSetting(TCheckBox(c).Name) = '1';
|
frAI1.cbOllama.Visible := False;
|
||||||
end;
|
|
||||||
|
|
||||||
end;
|
|
||||||
ii := strtoint(db.ReadSetting('aiIndex', '0'));
|
|
||||||
|
|
||||||
case ii of
|
|
||||||
0:
|
|
||||||
begin
|
|
||||||
frAI1.rbGC.IsChecked := True;
|
|
||||||
frAI1.Label45.text := 'ClientID';
|
|
||||||
frAI1.Label47.text := 'Autorization Code';
|
|
||||||
frAI1.Label1.Visible := false;
|
|
||||||
frAI1.edtAIP2.Visible := True;
|
|
||||||
frAI1.edtAIP2.Password := True;
|
|
||||||
frAI1.edtAIP3.Visible := false;
|
|
||||||
frAI1.cbOllama.IsChecked := false;
|
|
||||||
frAI1.cbOllama.Visible := false;
|
|
||||||
end;
|
|
||||||
1:
|
|
||||||
begin
|
|
||||||
frAI1.rbDS.IsChecked := True;
|
|
||||||
frAI1.Label45.text := 'API Token';
|
|
||||||
frAI1.Label47.text := '';
|
|
||||||
frAI1.Label1.Visible := false;
|
|
||||||
frAI1.edtAIP2.Visible := false;
|
|
||||||
frAI1.edtAIP2.Password := false;
|
|
||||||
frAI1.edtAIP3.Visible := false;
|
|
||||||
frAI1.cbOllama.IsChecked := false;
|
|
||||||
frAI1.cbOllama.Visible := false;
|
|
||||||
end;
|
|
||||||
2:
|
|
||||||
begin
|
|
||||||
frAI1.rbCG.IsChecked := True;
|
|
||||||
frAI1.Label45.text := 'API Token';
|
|
||||||
frAI1.Label47.text := '';
|
|
||||||
frAI1.Label1.Visible := false;
|
|
||||||
frAI1.edtAIP2.Visible := false;
|
|
||||||
frAI1.edtAIP2.Password := false;
|
|
||||||
frAI1.edtAIP3.Visible := false;
|
|
||||||
frAI1.cbOllama.IsChecked := false;
|
|
||||||
frAI1.cbOllama.Visible := false;
|
|
||||||
end;
|
|
||||||
3:
|
|
||||||
begin
|
|
||||||
frAI1.RBCustom.IsChecked := True;
|
|
||||||
frAI1.Label45.text := 'API Token';
|
|
||||||
frAI1.Label47.text := 'URL';
|
|
||||||
frAI1.Label1.Visible := True;
|
|
||||||
frAI1.edtAIP2.Visible := True;
|
|
||||||
frAI1.edtAIP2.Password := false;
|
|
||||||
frAI1.edtAIP3.Visible := True;
|
|
||||||
frAI1.cbOllama.IsChecked := db.ReadSetting(frAI1.cbOllama.Name) = '1';
|
|
||||||
frAI1.cbOllama.Visible := True;
|
|
||||||
end;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
db.LoadGridFromTable('sgTimers', frAutoActions1.sgTimers);
|
// Íàñòðîéêè DeepSeek
|
||||||
db.LoadGridFromTable('sgCounter', frAutoActions1.sgCounter);
|
procedure SetupDeepSeekSettings;
|
||||||
db.LoadGridFromTable('sgBanWords', frAutoActions1.sgBanWords);
|
begin
|
||||||
|
frAI1.rbDS.IsChecked := True;
|
||||||
|
frAI1.Label45.text := 'API Token';
|
||||||
|
frAI1.Label47.text := '';
|
||||||
|
frAI1.Label1.Visible := False;
|
||||||
|
frAI1.edtAIP2.Visible := False;
|
||||||
|
frAI1.edtAIP3.Visible := False;
|
||||||
|
frAI1.cbOllama.Visible := False;
|
||||||
|
end;
|
||||||
|
|
||||||
|
// Íàñòðîéêè ChatGPT
|
||||||
|
procedure SetupChatGPTSettings;
|
||||||
|
begin
|
||||||
|
frAI1.rbCG.IsChecked := True;
|
||||||
|
frAI1.Label45.text := 'API Token';
|
||||||
|
frAI1.Label47.text := '';
|
||||||
|
frAI1.Label1.Visible := False;
|
||||||
|
frAI1.edtAIP2.Visible := False;
|
||||||
|
frAI1.edtAIP3.Visible := False;
|
||||||
|
frAI1.cbOllama.Visible := False;
|
||||||
|
end;
|
||||||
|
|
||||||
|
// Íàñòðîéêè êàñòîìíîãî ÈÈ
|
||||||
|
procedure SetupCustomAISettings;
|
||||||
|
begin
|
||||||
|
frAI1.RBCustom.IsChecked := True;
|
||||||
|
frAI1.Label45.text := 'API Token';
|
||||||
|
frAI1.Label47.text := 'URL';
|
||||||
|
frAI1.Label1.Visible := True;
|
||||||
|
frAI1.edtAIP2.Visible := True;
|
||||||
|
frAI1.edtAIP2.Password := False;
|
||||||
|
frAI1.edtAIP3.Visible := True;
|
||||||
|
frAI1.cbOllama.Visible := True;
|
||||||
|
frAI1.cbOllama.IsChecked := db.ReadSetting(frAI1.cbOllama.Name) = '1';
|
||||||
|
end;
|
||||||
|
begin
|
||||||
|
for I := 0 to frAI1.ComponentCount - 1 do
|
||||||
|
begin
|
||||||
|
c := frAI1.Components[I];
|
||||||
|
if c is TEdit then
|
||||||
|
TEdit(c).text := db.ReadSetting(TEdit(c).Name)
|
||||||
|
else if c is TCheckBox then
|
||||||
|
TCheckBox(c).IsChecked := db.ReadSetting(TCheckBox(c).Name) = '1';
|
||||||
|
end;
|
||||||
|
|
||||||
|
ii := strtoint(db.ReadSetting('aiIndex', '0'));
|
||||||
|
case ii of
|
||||||
|
0:
|
||||||
|
SetupGigaChatSettings;
|
||||||
|
1:
|
||||||
|
SetupDeepSeekSettings;
|
||||||
|
2:
|
||||||
|
SetupChatGPTSettings;
|
||||||
|
3:
|
||||||
|
SetupCustomAISettings;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// Çàãðóçêà ãðèäîâ àâòîìàòè÷åñêèõ äåéñòâèé
|
||||||
|
procedure LoadAutoActionsGrids;
|
||||||
|
begin
|
||||||
|
db.LoadGridFromTable('sgTimers', frAutoActions1.sgTimers);
|
||||||
|
db.LoadGridFromTable('sgCounter', frAutoActions1.sgCounter);
|
||||||
|
db.LoadGridFromTable('sgBanWords', frAutoActions1.sgBanWords);
|
||||||
|
end;
|
||||||
|
|
||||||
|
begin
|
||||||
|
LoadSettingsComponents;
|
||||||
|
LoadGridsData;
|
||||||
|
LoadGroupNames;
|
||||||
|
LoadEncryptedConfig;
|
||||||
|
|
||||||
|
|
||||||
|
LoadNotifySettings;
|
||||||
|
LoadAISettings;
|
||||||
|
LoadAutoActionsGrids;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TForm1.SpeedButton1Click(Sender: TObject);
|
||||||
|
begin
|
||||||
|
ShellExecute(0, 'open', pwidechar('https://www.twitch.tv/incadence'),
|
||||||
|
nil, nil, 1);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TForm1.SpeedButton2Click(Sender: TObject);
|
||||||
|
begin
|
||||||
|
// https://www.twitch.tv/kuznecogr
|
||||||
|
ShellExecute(0, 'open', pwidechar('https://www.twitch.tv/kuznecogr'),
|
||||||
|
nil, nil, 1);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TForm1.SpeedButton3Click(Sender: TObject);
|
||||||
|
begin
|
||||||
|
// https://www.flaticon.com/ru/authors/karacis
|
||||||
|
ShellExecute(0, 'open',
|
||||||
|
pwidechar('https://www.flaticon.com/ru/authors/karacis'), nil, nil, 1);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
end.
|
end.
|
||||||
|
|||||||
Reference in New Issue
Block a user