⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lakeysetting.h

📁 利用电脑练习和进行电台通联CW的软件
💻 H
字号:
#pragma once

#include <windows.h>

#define MORSECODECOUNT		43
#define PROFILE				"lakey.ini"

typedef struct tagMorseCode
{
	unsigned int	nAscCode;
	unsigned int	nMorseCode;
	unsigned int	nMask;
	unsigned int	nKeyCode;
} MORSECODE;

typedef struct tagButtonMapping
{
	int		x;
	int		y;
	int		w;
	int		h;
	int		nKeyCode;
	char	vLabel[32];

} BUTTONMAPPING;

class CLakeySetting
{
public:
	CLakeySetting(void);
	virtual ~CLakeySetting(void);

	virtual BOOL Load();
	virtual BOOL Save();

	double		m_rBeepFreq;
	double		m_rBeepVol;
	int			m_nShortHit;
	int			m_nLongHit;
	int			m_nHitDelay;
	int			m_nLetterDelay;
	int			m_nWordDelay;

	RECT		m_oWindowRect;

	int			m_nSendJournalPeriod;
	int			m_nSendIdleLimit;
	RECT		m_oSendJournalRect;
	RECT		m_oSendCharQueueRect;
	int			m_nRecvJournalPeriod;
	int			m_nRecvIdleLimit;
	RECT		m_oRecvJournalRect;
	RECT		m_oRecvMonitorRect;
	int			m_nRecvAnalyzeSamples;
	double		m_rRecvThreshold;
	int			m_nRecvFreqStart;
	int			m_nRecvFreqEnd;

	BUTTONMAPPING	m_oCwKeyButton;
	BUTTONMAPPING	m_oSendPauseButton;
	BUTTONMAPPING	m_oSendFileButton;

	char		m_vKochChar[MORSECODECOUNT + 1];
	int			m_nKochWordLen;

	MORSECODE	m_vMorseCode[MORSECODECOUNT];

	WORD		m_nExtPortAddr;
	BYTE		m_nOpenByte;
	BYTE		m_nCloseByte;

private:
	void StrToMorseCode(int nIdx, const char* pStr);
	char* MorseCodeToStr(char* pStr, int nIdx);
	char* ButtonMappingToStr(char* pStr, const BUTTONMAPPING* pMapping);
	void StrToButtonMapping(BUTTONMAPPING* pMapping, const char* pStr);

	int GetProfileHex(const char* pSec, const char* pKey, int nDefault);
	void WriteProfileHex(const char* pSec, const char* pKey, int n);
	int GetProfileDec(const char* pSec, const char* pKey, int nDefault);
	void WriteProfileDec(const char* pSec, const char* pKey, int n);
	double GetProfileDouble(const char* pSec, const char* pKey, double rDefault);
	void WriteProfileDouble(const char* pSec, const char* pKey, double r);

	void GetButtonMapping(const char* pSec, const char* pKey, BUTTONMAPPING* pBtMap);
	void WriteButtonMapping(const char* pSec, const char* pKey, const BUTTONMAPPING* pBtMap);

	void GetProfileRect(const char* pSec, const char* pKey, RECT* pRect);
	void WriteProfileRect(const char* pSec, const char* pKey, const RECT* pRect);
};

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -