mirror of
https://github.com/beefytech/Beef.git
synced 2025-06-24 02:28:01 +02:00
Moving LogViewer into BeefTools
This commit is contained in:
parent
65bf1915af
commit
8a02874b51
10 changed files with 2 additions and 232 deletions
109
BeefTools/LogViewer/src/LVApp.bf
Normal file
109
BeefTools/LogViewer/src/LVApp.bf
Normal file
|
@ -0,0 +1,109 @@
|
|||
using Beefy;
|
||||
using Beefy.widgets;
|
||||
using Beefy.theme.dark;
|
||||
using Beefy.theme;
|
||||
using Beefy.gfx;
|
||||
using System;
|
||||
using Beefy.utils;
|
||||
using System.IO;
|
||||
using System.Diagnostics;
|
||||
using System.Threading;
|
||||
|
||||
namespace LogViewer
|
||||
{
|
||||
class LVApp : BFApp
|
||||
{
|
||||
public WidgetWindow mMainWindow;
|
||||
public Board mBoard;
|
||||
public Font mFont ~ delete _;
|
||||
|
||||
public this()
|
||||
{
|
||||
gApp = this;
|
||||
}
|
||||
|
||||
public override void Init()
|
||||
{
|
||||
base.Init();
|
||||
|
||||
var dialog = scope OpenFileDialog();
|
||||
dialog.SetFilter("All files (*.*)|*.*");
|
||||
dialog.InitialDirectory = mInstallDir;
|
||||
dialog.Title = "Open Log";
|
||||
let result = dialog.ShowDialog();
|
||||
if ((result case .Err) || (dialog.FileNames.Count == 0))
|
||||
{
|
||||
Stop();
|
||||
return;
|
||||
}
|
||||
|
||||
BeefPerf.Init("127.0.0.1", "LogViewer");
|
||||
|
||||
DarkTheme darkTheme = new DarkTheme();
|
||||
darkTheme.Init();
|
||||
ThemeFactory.mDefault = darkTheme;
|
||||
|
||||
BFWindow.Flags windowFlags = BFWindow.Flags.Border | //BFWindow.Flags.SysMenu | //| BFWindow.Flags.CaptureMediaKeys |
|
||||
BFWindow.Flags.Caption | BFWindow.Flags.Minimize | BFWindow.Flags.QuitOnClose | BFWindowBase.Flags.Resizable |
|
||||
BFWindow.Flags.SysMenu;
|
||||
|
||||
mFont = new Font();
|
||||
float fontSize = 12;
|
||||
mFont.Load(scope String(BFApp.sApp.mInstallDir, "fonts/SourceCodePro-Regular.ttf"), fontSize);
|
||||
mFont.AddAlternate("Segoe UI Symbol", fontSize);
|
||||
mFont.AddAlternate("Segoe UI Historic", fontSize);
|
||||
mFont.AddAlternate("Segoe UI Emoji", fontSize);
|
||||
|
||||
mBoard = new Board();
|
||||
mBoard.Load(dialog.FileNames[0]);
|
||||
mMainWindow = new WidgetWindow(null, "LogViewer", 0, 0, 1600, 1200, windowFlags, mBoard);
|
||||
//mMainWindow.mWindowKeyDownDelegate.Add(new => SysKeyDown);
|
||||
mMainWindow.SetMinimumSize(480, 360);
|
||||
mMainWindow.mIsMainWindow = true;
|
||||
}
|
||||
|
||||
public void Fail(String str, params Object[] paramVals)
|
||||
{
|
||||
var errStr = scope String();
|
||||
errStr.AppendF(str, paramVals);
|
||||
Fail(errStr);
|
||||
}
|
||||
|
||||
public void Fail(String text)
|
||||
{
|
||||
#if CLI
|
||||
Console.WriteLine("ERROR: {0}", text);
|
||||
return;
|
||||
#endif
|
||||
|
||||
#unwarn
|
||||
//Debug.Assert(Thread.CurrentThread == mMainThread);
|
||||
|
||||
if (mMainWindow == null)
|
||||
{
|
||||
//Internal.FatalError(StackStringFormat!("FAILED: {0}", text));
|
||||
Windows.MessageBoxA(0, text, "FATAL ERROR", 0);
|
||||
return;
|
||||
}
|
||||
|
||||
//Beep(MessageBeepType.Error);
|
||||
|
||||
Dialog dialog = ThemeFactory.mDefault.CreateDialog("ERROR", text, DarkTheme.sDarkTheme.mIconError);
|
||||
dialog.mDefaultButton = dialog.AddButton("OK");
|
||||
dialog.mEscButton = dialog.mDefaultButton;
|
||||
dialog.PopupWindow(mMainWindow);
|
||||
|
||||
/*if (addWidget != null)
|
||||
{
|
||||
dialog.AddWidget(addWidget);
|
||||
addWidget.mY = dialog.mHeight - 60;
|
||||
addWidget.mX = 90;
|
||||
}*/
|
||||
}
|
||||
}
|
||||
|
||||
static
|
||||
{
|
||||
static LVApp gApp;
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue