File:  [Isaki's NoNo m68k/m88k emulator] / nono / wx / wxlogmonitor.h
Revision 1.1.1.12 (vendor branch): download - view: text, annotated - select for diffs
Wed Apr 29 17:05:48 2026 UTC (2 months, 3 weeks ago) by root
Branches: MAIN, Isaki
CVS tags: v027, v026, v025, HEAD
nono 1.5.0

//
// nono
// Copyright (C) 2020 nono project
// Licensed under nono-license.txt
//

//
// ログモニター
//

#pragma once

#include "wxsubwindow.h"
#include "wxscrollbar.h"
#include "wxmonitor.h"

class Logger;
class WXLogMonitor;

// モニター部分
class LogMonitorPanel : public WXMonitorPanel
{
	using inherited = WXMonitorPanel;
 public:
	LogMonitorPanel(WXLogMonitor *parent_, Monitor *monitor_);
	~LogMonitorPanel() override;

	void DoRefresh() override;

 private:
	WXLogMonitor *parent {};
};

// ログウィンドウ
class WXLogMonitor : public WXSubWindow
{
	using inherited = WXSubWindow;
	friend class LogMonitor;

 public:
	explicit WXLogMonitor(wxWindow *);
	~WXLogMonitor() override;

	void FontChanged() override;
	bool Layout() override;

	// スクロールバー再設定
	void SetScroll();

 private:
	bool GetMySizeHints(wxSize *, wxSize *, wxSize *, wxSize *) override;

	// マウスホイールイベント
	void OnMouseWheel(wxMouseEvent&);

	// スクロールイベント
	void OnScroll(wxScrollEvent&);

	// スクロール処理
	void DoScroll(int pos);

	LogMonitorPanel *screen {};

	// スクロールバー
	WXScrollBar *vscroll {};

	Logger *logger {};
};

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.