Добавил интеграции с ОБС

This commit is contained in:
PC1\PTyTb
2025-08-07 21:58:46 +03:00
parent a4cbf1c709
commit 193e4cb2fa
14 changed files with 534 additions and 229 deletions
+58 -1
View File
@@ -6,7 +6,7 @@ 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;
FMX.ListBox, FMX.EditBox, FMX.SpinBox, FMX.Colors,uRecords;
type
TfCreateNotify = class(TForm)
@@ -35,8 +35,10 @@ type
frFontSettings3: TfrFontSettings;
edtESMessage: TEdit;
procedure FormCreate(Sender: TObject);
procedure btnCreateEventClick(Sender: TObject);
private
{ Private declarations }
function GetColorFromColorPanel(aColor: TAlphaColor): string;
public
{ Public declarations }
end;
@@ -50,6 +52,61 @@ uses uGeneral;
{$R *.fmx}
function TfCreateNotify.GetColorFromColorPanel(aColor: TAlphaColor): string;
var
Color: TAlphaColor;
r, G, B: Byte;
A: Real;
FS: TFormatSettings;
begin
Color := aColor;
r := TAlphaColorRec(Color).r;
G := TAlphaColorRec(Color).G;
B := TAlphaColorRec(Color).B;
A := TAlphaColorRec(Color).A / 255; // Ïðåîáðàçóåì àëüôà-êàíàë â äèàïàçîí 0..1
// Óñòàíàâëèâàåì òî÷êó â êà÷åñòâå äåñÿòè÷íîãî ðàçäåëèòåëÿ
FS := TFormatSettings.Create;
FS.DecimalSeparator := '.';
result := Format('rgba(%d, %d, %d, %.2f)', [r, G, B, A], FS);
end;
procedure TfCreateNotify.btnCreateEventClick(Sender: TObject);
var
OBSNotify: TOBSNotify;
begin
with OBSNotify do
begin
Picture:=edtESImage.Text;
Sound:=edtESSound.Text;
ColorBlock:= GetColorFromColorPanel(frColorSettings1.cpStyleBlockColor.Color);
SolidBorder:=round(frColorSettings1.sbStyleBlockBorderSize.Value);
Paddings:=round(frColorSettings1.sbStyleBlockPadding.Value);
ColorBorder:=frColorSettings1.ccbStyleBorderColor.ItemIndex;
ColorBackground:=frColorSettings1.ccbBColor.ItemIndex;
HeaderText:=edtESTitle.text;
HeaderColorFont:=frFontSettings2.ccbFontColor.ItemIndex;
HeaderSizeFont:=round(frFontSettings2.sbFontSize.Value);
HeaderStyleFont:=frFontSettings2.cbFontStyleDefault.ItemIndex;
MessText:=edtESMessage.text;
MessColorFont:=frFontSettings3.ccbFontColor.ItemIndex;
MessSizeFont:=round(frFontSettings3.sbFontSize.Value);
MessStyleFont:=frFontSettings3.cbFontStyleDefault.ItemIndex;
TimeMess:=round(sbTimeMsg.Value);
TypeEvent:=cbEventsType.ItemIndex;
TypeEdit:=edtIF.Text;
Port:=round(sbWebServerPort.Value);;
end;
TTW_Bot.frOBS1.AddNotify(OBSNotify);
close;
end;
procedure TfCreateNotify.FormCreate(Sender: TObject);
var
i: Integer;