сделал оповещения о событиях

This commit is contained in:
PC1\PTyTb
2025-08-14 21:43:02 +03:00
parent bad576dd4d
commit 2335bf1656
8 changed files with 874 additions and 35 deletions
+11 -4
View File
@@ -146,7 +146,7 @@ object fCreateNotify: TfCreateNotify
Position.X = 8.000000000000000000
Position.Y = 135.000000000000000000
Text = #1057#1086#1073#1099#1090#1080#1077
TabOrder = 42
TabOrder = 37
end
object cbEventsType: TComboBox
Items.Strings = (
@@ -160,7 +160,7 @@ object fCreateNotify: TfCreateNotify
Size.Width = 192.000000000000000000
Size.Height = 22.000000000000000000
Size.PlatformDefault = False
TabOrder = 43
TabOrder = 38
OnChange = cbEventsTypeChange
end
object Label3: TLabel
@@ -168,11 +168,11 @@ object fCreateNotify: TfCreateNotify
Position.Y = 190.000000000000000000
Text = #1059#1089#1083#1086#1074#1080#1077' '#1089#1091#1084#1084#1099
Visible = False
TabOrder = 44
TabOrder = 39
end
object edtIF: TEdit
Touch.InteractiveGestures = [LongTap, DoubleTap]
TabOrder = 45
TabOrder = 40
Position.X = 8.000000000000000000
Position.Y = 215.000000000000000000
Size.Width = 192.000000000000000000
@@ -198,6 +198,7 @@ object fCreateNotify: TfCreateNotify
TabOrder = 59
Text = #1058#1077#1089#1090
TextSettings.Trimming = None
OnClick = btnESTestClick
end
object GroupBox1: TGroupBox
Padding.Left = 10.000000000000000000
@@ -227,6 +228,9 @@ object fCreateNotify: TfCreateNotify
Size.Width = 241.000000000000000000
Size.Height = 115.000000000000000000
Size.PlatformDefault = False
inherited Label41: TLabel
TabOrder = 5
end
inherited ccbFontColor: TColorComboBox
TabOrder = 36
end
@@ -255,6 +259,9 @@ object fCreateNotify: TfCreateNotify
Size.Width = 241.000000000000000000
Size.Height = 115.000000000000000000
Size.PlatformDefault = False
inherited Label41: TLabel
TabOrder = 5
end
inherited ccbFontColor: TColorComboBox
TabOrder = 36
end
+45 -1
View File
@@ -4,7 +4,7 @@ interface
uses
System.SysUtils, System.Types, System.UITypes, System.Classes,
System.Variants,
System.Variants, fOBS,
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, uRecords;
@@ -39,9 +39,11 @@ type
procedure btnCreateEventClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure cbEventsTypeChange(Sender: TObject);
procedure btnESTestClick(Sender: TObject);
private
{ Private declarations }
function GetColorFromColorPanel(aColor: TAlphaColor): string;
function GetColorFromCCB(aColor: TAlphaColor): string;
public
{ Public declarations }
isEdit: boolean;
@@ -155,6 +157,48 @@ begin
close;
end;
function TfCreateNotify.GetColorFromCCB(aColor: TAlphaColor): string;
var
Color: TAlphaColor;
r, G, B: Byte;
begin
Color := aColor;
r := TAlphaColorRec(Color).r;
G := TAlphaColorRec(Color).G;
B := TAlphaColorRec(Color).B;
result := Format('#%.2X%.2X%.2X', [r, G, B]);
end;
procedure TfCreateNotify.btnESTestClick(Sender: TObject);
var
se: TStyleEvent;
i: Integer;
begin
se.Title := edtESTitle.Text;
se.Context := edtESMessage.Text;
se.Url := edtESImage.Text;
se.SoundURL := edtESSound.Text;
se.Timestamp := Now;
se.TimeMsg := round(sbTimeMsg.Value);
se.BorderColor := GetColorFromCCB(frColorSettings1.ccbStyleBorderColor.Color);
se.BorderSize := round(frColorSettings1.sbStyleBlockBorderSize.Value);
se.BlockColor := GetColorFromColorPanel(frColorSettings1.cpStyleBlockColor.Color);
se.FontTitle.Font := frFontSettings2.cbFontStyleDefault.Text;
se.FontTitle.Size := round(frFontSettings2.sbFontSize.Value);
se.FontTitle.Color := GetColorFromCCB(frFontSettings2.ccbFontColor.Color);
se.FontContext.Font := frFontSettings3.cbFontStyleDefault.Text;
se.FontContext.Size := round(frFontSettings3.sbFontSize.Value);
se.FontContext.Color := GetColorFromCCB(frFontSettings3.ccbFontColor.Color);
se.RequireInteraction := True;
for i := 0 to TTW_Bot.frOBS1.EventWebServers.Count - 1 do
begin
TTW_Bot.frOBS1.EventWebServers[i].WebServerChat.AddMessage(se);
end;
end;
procedure TfCreateNotify.cbEventsTypeChange(Sender: TObject);
begin
Label3.Visible := cbEventsType.ItemIndex = 4;
+10 -5
View File
@@ -249,10 +249,10 @@ begin
ttw_ES.OnStatus := ESStatus;
// ttw_ES.OnRAW := fRewards.ESOnRAW;
// ttw_ES.OnSubOk := fRewards.ESOnSubOk;
// ttw_ES.OnFollow := fWebServerEvents.ESOnFollow;
// ttw_ES.OnSub := fWebServerEvents.ESOnSub;
// ttw_ES.OnGift := fWebServerEvents.ESOnGift;
// ttw_ES.OnRaid := fWebServerEvents.ESOnRaid; }
ttw_ES.OnFollow := frOBS1.toEventWebServer;
ttw_ES.OnSub := frOBS1.toEventWebServer;
ttw_ES.OnGift := frOBS1.toEventWebServer;
ttw_ES.OnRaid := frOBS1.toEventWebServer;
toLog('uGeneral', 'ConnectProcedure.ttw_ES', 'Создан', 0);
ttw_ES.Connect;
except
@@ -496,7 +496,7 @@ begin
frOBS1.ChatBadges.Free;
frOBS1.ChatEmotes.Free;
frOBS1.ChatWebServers.Free;
frOBS1.EventWebServers.Free;
DisconnectProcedure;
if Assigned(ttw_IRS) then
@@ -1063,6 +1063,11 @@ procedure TTTW_Bot.ReadDB;
end;
db.LoadRecordArray<TOBSNotify>('listNotify', frOBS1.listNotify);
frOBS1.EventWebServers := TList<TEventWebServers>.Create;
for I := 0 to High(frOBS1.listNotify) do
begin
frOBS1.CreateWebEvents(frOBS1.listNotify[I]);
end;
db.LoadRecordArray<TOBSKandinsky>('listKandinsky', frOBS1.listKandinsky);
frOBS1.UpdateGridFromArray;
end;