mirror of
https://github.com/n5ac/mmsstv.git
synced 2025-12-06 04:12:03 +01:00
802 lines
20 KiB
C
802 lines
20 KiB
C
|
|
//Copyright+LGPL
|
|||
|
|
|
|||
|
|
//-----------------------------------------------------------------------------------------------------------------------------------------------
|
|||
|
|
// Copyright 2000-2013 Makoto Mori, Nobuyuki Oba
|
|||
|
|
//-----------------------------------------------------------------------------------------------------------------------------------------------
|
|||
|
|
// This file is part of MMSSTV.
|
|||
|
|
|
|||
|
|
// MMSSTV is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License
|
|||
|
|
// as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
|
|||
|
|
|
|||
|
|
// MMSSTV is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|||
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
|
|||
|
|
|
|||
|
|
// You should have received a copy of the GNU Lesser General Public License along with MMTTY. If not, see
|
|||
|
|
// <http://www.gnu.org/licenses/>.
|
|||
|
|
//-----------------------------------------------------------------------------------------------------------------------------------------------
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
#ifndef ComLibH
|
|||
|
|
#define ComLibH
|
|||
|
|
#include <ComCtrls.hpp>
|
|||
|
|
#include <inifiles.hpp> //JA7UDE 0428
|
|||
|
|
#include <Grids.hpp>
|
|||
|
|
#include <values.h>
|
|||
|
|
#include <stdio.h>
|
|||
|
|
#include <stdlib.h>
|
|||
|
|
#include <math.h>
|
|||
|
|
#include <mbstring.h>
|
|||
|
|
#include <dir.h>
|
|||
|
|
|
|||
|
|
#define DEBUG FALSE
|
|||
|
|
#define DEBUGFSKID FALSE
|
|||
|
|
#define VARITEST FALSE
|
|||
|
|
#define SHOWAFCFQ FALSE
|
|||
|
|
|
|||
|
|
#if DEBUG
|
|||
|
|
#include <assert.h>
|
|||
|
|
#define ASSERT(c) assert(c)
|
|||
|
|
#else
|
|||
|
|
#define ASSERT(c)
|
|||
|
|
#endif
|
|||
|
|
|
|||
|
|
/*
|
|||
|
|
1.12 JASTA<EFBFBD>R<EFBFBD><EFBFBD><EFBFBD>e<EFBFBD>X<EFBFBD>g<EFBFBD>@<EFBFBD>d<EFBFBD><EFBFBD><EFBFBD>`<EFBFBD>F<EFBFBD>b<EFBFBD>N<EFBFBD>̏C<EFBFBD><EFBFBD>
|
|||
|
|
*/
|
|||
|
|
#define VERBETA "A"
|
|||
|
|
#define VERID "Ver 1.13"
|
|||
|
|
#define VERTTL2 "MMSSTV "VERID VERBETA
|
|||
|
|
#define VERTTL VERTTL2" (C) JE3HHT 2001-2010."
|
|||
|
|
|
|||
|
|
#define CLOCKMAX 48500
|
|||
|
|
#define FPAGEMAX 10 // <20>t<EFBFBD>H<EFBFBD><48><EFBFBD>_<EFBFBD>̃T<CC83><54><EFBFBD>l<EFBFBD>C<EFBFBD><43><EFBFBD>̃y<CC83>[<5B>W<EFBFBD><57>
|
|||
|
|
#define CWMENUMAX 128
|
|||
|
|
|
|||
|
|
#define HISTNAME "History.bin"
|
|||
|
|
#define TEMPV105 "CurTemp.bin" // V1.05<EFBFBD>܂ł̖<EFBFBD><EFBFBD>O
|
|||
|
|
#define TEMPV105B "CurTemp.old"
|
|||
|
|
#define TEMPV106C "Current.mtm" // V1.06<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̖<EFBFBD><EFBFBD>O
|
|||
|
|
#define TEMPV106L "List.mtm" // V1.06<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̖<EFBFBD><EFBFBD>O
|
|||
|
|
//#define SHIFTL 10
|
|||
|
|
//#define MARKL 300
|
|||
|
|
//#define SPACEH 2700
|
|||
|
|
|
|||
|
|
#define FSBOLD 1
|
|||
|
|
#define FSITALIC 2
|
|||
|
|
#define FSUNDERLINE 4
|
|||
|
|
#define FSSTRIKEOUT 8
|
|||
|
|
|
|||
|
|
enum {
|
|||
|
|
pgSync,
|
|||
|
|
pgRX,
|
|||
|
|
pgHist,
|
|||
|
|
pgTX,
|
|||
|
|
pgTemp,
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
extern LCID lcid; // <20><><EFBFBD>P<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
extern int DisPaint;
|
|||
|
|
extern int MsgEng;
|
|||
|
|
extern int WinNT;
|
|||
|
|
extern int WinVista;
|
|||
|
|
|
|||
|
|
extern double SampFreq; // <20>T<EFBFBD><54><EFBFBD>v<EFBFBD><76><EFBFBD><EFBFBD><EFBFBD>O<EFBFBD><4F><EFBFBD>g<EFBFBD><67>
|
|||
|
|
extern double SampBase;
|
|||
|
|
extern int SampType;
|
|||
|
|
extern int SampSize;
|
|||
|
|
extern int DemOver;
|
|||
|
|
extern const int SampTable[];
|
|||
|
|
|
|||
|
|
extern double FFTSamp;
|
|||
|
|
extern int FFTSampType;
|
|||
|
|
extern int FFT_SIZE;
|
|||
|
|
|
|||
|
|
extern char BgnDir[256];
|
|||
|
|
|
|||
|
|
extern char HistDir[256];
|
|||
|
|
extern char StockDir[256];
|
|||
|
|
extern char BitmapDir[256];
|
|||
|
|
extern char SBitmapDir[256];
|
|||
|
|
extern char TemplateDir[256];
|
|||
|
|
|
|||
|
|
extern char MMLogDir[256];
|
|||
|
|
extern char ExtLogDir[256];
|
|||
|
|
extern char RecDir[256]; // <20>^<5E><><EFBFBD>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD>̃f<CC83>B<EFBFBD><42><EFBFBD>N<EFBFBD>g<EFBFBD><67>
|
|||
|
|
|
|||
|
|
//extern HPALETTE UsrPal;
|
|||
|
|
|
|||
|
|
extern AnsiString JanHelp;
|
|||
|
|
|
|||
|
|
extern const char MONN[];
|
|||
|
|
extern const char MONU[];
|
|||
|
|
|
|||
|
|
#ifndef LPCUSTR
|
|||
|
|
typedef const unsigned char * LPCUSTR;
|
|||
|
|
typedef unsigned char * LPUSTR;
|
|||
|
|
#endif
|
|||
|
|
|
|||
|
|
extern DWORD ColorTable[128];
|
|||
|
|
|
|||
|
|
#pragma option -a- // <20>p<EFBFBD>b<EFBFBD>N<EFBFBD>̎w<CC8E><77>
|
|||
|
|
typedef union {
|
|||
|
|
struct {
|
|||
|
|
BYTE r;
|
|||
|
|
BYTE g;
|
|||
|
|
BYTE b;
|
|||
|
|
BYTE d;
|
|||
|
|
}b;
|
|||
|
|
TColor c;
|
|||
|
|
DWORD d;
|
|||
|
|
}COLD;
|
|||
|
|
#pragma option -a. // <20>p<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD><EFBFBD>̎w<CC8E><77>
|
|||
|
|
|
|||
|
|
#define ABS(c) (((c)<0)?(-(c)):(c))
|
|||
|
|
#define AN(p) (int)(sizeof(p)/sizeof(*(p)))
|
|||
|
|
#define CR 0x0d
|
|||
|
|
#define LF 0x0a
|
|||
|
|
#define TAB '\t'
|
|||
|
|
|
|||
|
|
typedef struct {
|
|||
|
|
AnsiString Name;
|
|||
|
|
double VCOGain;
|
|||
|
|
int loopOrder;
|
|||
|
|
double loopFC;
|
|||
|
|
int OutOrder;
|
|||
|
|
double OutFC;
|
|||
|
|
|
|||
|
|
int Type;
|
|||
|
|
int crossType;
|
|||
|
|
double crossSmooz;
|
|||
|
|
int crossOutOrder;
|
|||
|
|
double crossOutFC;
|
|||
|
|
|
|||
|
|
double DemOff;
|
|||
|
|
double DemWhite;
|
|||
|
|
double DemBlack;
|
|||
|
|
int DemCalibration;
|
|||
|
|
double Dem17[17];
|
|||
|
|
|
|||
|
|
int Differentiator;
|
|||
|
|
double DiffLevel;
|
|||
|
|
}PRODEM;
|
|||
|
|
|
|||
|
|
typedef struct {
|
|||
|
|
AnsiString m_Name;
|
|||
|
|
BYTE m_Charset;
|
|||
|
|
int m_Height;
|
|||
|
|
DWORD m_Style;
|
|||
|
|
}FONTDATA;
|
|||
|
|
|
|||
|
|
//#define MSGLISTMAX 64
|
|||
|
|
typedef struct {
|
|||
|
|
int m_Priority;
|
|||
|
|
|
|||
|
|
int m_SoundPriority;
|
|||
|
|
AnsiString m_SoundDevice;
|
|||
|
|
int m_SoundStereo;
|
|||
|
|
int m_StereoTX;
|
|||
|
|
AnsiString m_SoundMMW;
|
|||
|
|
|
|||
|
|
AnsiString m_Call;
|
|||
|
|
|
|||
|
|
int m_FontAdjSize;
|
|||
|
|
int m_WindowState;
|
|||
|
|
|
|||
|
|
int m_ExtMode[8];
|
|||
|
|
AnsiString m_ExtCmd[8];
|
|||
|
|
AnsiString m_ExtName[8];
|
|||
|
|
|
|||
|
|
AnsiString m_TxRxName;
|
|||
|
|
int m_TxRxLock;
|
|||
|
|
int m_RTSonRX;
|
|||
|
|
|
|||
|
|
int m_lmsbpf;
|
|||
|
|
int m_echo;
|
|||
|
|
|
|||
|
|
int m_AutoTimeOffset;
|
|||
|
|
int m_TimeOffset;
|
|||
|
|
int m_TimeOffsetMin;
|
|||
|
|
int m_LogLink;
|
|||
|
|
|
|||
|
|
AnsiString m_LogName;
|
|||
|
|
|
|||
|
|
int m_SoundFifoRX;
|
|||
|
|
int m_SoundFifoTX;
|
|||
|
|
|
|||
|
|
int m_Palette;
|
|||
|
|
int m_BitPixel;
|
|||
|
|
|
|||
|
|
TColor m_ColorLow;
|
|||
|
|
TColor m_ColorHigh;
|
|||
|
|
TColor m_ColorFFTB;
|
|||
|
|
TColor m_ColorFFT;
|
|||
|
|
TColor m_ColorFFTStg;
|
|||
|
|
TColor m_ColorFFTSync;
|
|||
|
|
TColor m_ColorFFTFreq;
|
|||
|
|
|
|||
|
|
AnsiString m_WinFontName;
|
|||
|
|
BYTE m_WinFontCharset;
|
|||
|
|
int m_WinFontStyle;
|
|||
|
|
|
|||
|
|
int m_FFTType;
|
|||
|
|
int m_FFTGain;
|
|||
|
|
int m_FFTResp;
|
|||
|
|
int m_FFTStg;
|
|||
|
|
int m_FFTWidth;
|
|||
|
|
int m_FFTAGC;
|
|||
|
|
int m_FFTPriority;
|
|||
|
|
double m_SampFreq;
|
|||
|
|
double m_TxSampOff;
|
|||
|
|
|
|||
|
|
int m_StayOnTop;
|
|||
|
|
int m_MemWindow;
|
|||
|
|
|
|||
|
|
int m_HelpNotePad;
|
|||
|
|
int m_TuneTXTime;
|
|||
|
|
int m_TuneSat;
|
|||
|
|
|
|||
|
|
int m_TestDem;
|
|||
|
|
double m_DemOff;
|
|||
|
|
double m_DemWhite;
|
|||
|
|
double m_DemBlack;
|
|||
|
|
int m_DemCalibration;
|
|||
|
|
double m_Dem17[17];
|
|||
|
|
|
|||
|
|
int m_PicClipType;
|
|||
|
|
int m_PicClipRatio;
|
|||
|
|
int m_PicClipMode;
|
|||
|
|
int m_PicClipView;
|
|||
|
|
TColor m_PicClipColor;
|
|||
|
|
int m_HistMax;
|
|||
|
|
|
|||
|
|
int m_Way240;
|
|||
|
|
int m_AutoMargin;
|
|||
|
|
|
|||
|
|
int m_UseRxBuff;
|
|||
|
|
int m_AutoStop;
|
|||
|
|
int m_AutoSync;
|
|||
|
|
int m_CWID;
|
|||
|
|
int m_CWIDFreq;
|
|||
|
|
AnsiString m_CWIDText;
|
|||
|
|
int m_CWIDSpeed;
|
|||
|
|
int m_CWIDWPM;
|
|||
|
|
AnsiString m_MMVID;
|
|||
|
|
AnsiString m_CWText;
|
|||
|
|
|
|||
|
|
int m_nCWMenu;
|
|||
|
|
AnsiString m_CWMenu[CWMENUMAX];
|
|||
|
|
|
|||
|
|
int m_VOX;
|
|||
|
|
AnsiString m_VOXSound;
|
|||
|
|
|
|||
|
|
int m_TXFSKID;
|
|||
|
|
|
|||
|
|
int m_UseJPEG;
|
|||
|
|
int m_JPEGQuality;
|
|||
|
|
|
|||
|
|
int m_RxViewTop;
|
|||
|
|
int m_RxViewLeft;
|
|||
|
|
int m_RxViewWidth;
|
|||
|
|
int m_RxViewHeight;
|
|||
|
|
|
|||
|
|
int m_SyncViewTop;
|
|||
|
|
int m_SyncViewLeft;
|
|||
|
|
int m_SyncViewWidth;
|
|||
|
|
int m_SyncViewHeight;
|
|||
|
|
|
|||
|
|
int m_HistViewTB;
|
|||
|
|
int m_HistViewTop;
|
|||
|
|
int m_HistViewLeft;
|
|||
|
|
int m_HistViewWidth;
|
|||
|
|
int m_HistViewHeight;
|
|||
|
|
int m_HistViewSize;
|
|||
|
|
|
|||
|
|
int m_PreViewTop;
|
|||
|
|
int m_PreViewLeft;
|
|||
|
|
int m_PreViewWidth;
|
|||
|
|
int m_PreViewHeight;
|
|||
|
|
|
|||
|
|
int m_CtrBtnTop;
|
|||
|
|
int m_CtrBtnLeft;
|
|||
|
|
int m_CtrBtnWidth;
|
|||
|
|
int m_CtrBtnHeight;
|
|||
|
|
|
|||
|
|
int m_FileViewFlag[8];
|
|||
|
|
int m_FileViewSize[8];
|
|||
|
|
int m_FileViewMode[8];
|
|||
|
|
int m_FileViewTop[8];
|
|||
|
|
int m_FileViewLeft[8];
|
|||
|
|
int m_FileViewWidth[8];
|
|||
|
|
int m_FileViewHeight[8];
|
|||
|
|
int m_FileViewMaxPage[8];
|
|||
|
|
int m_FileViewCurPage[8];
|
|||
|
|
int m_FileViewFMPage[8][FPAGEMAX];
|
|||
|
|
AnsiString m_FileViewFolder[8][FPAGEMAX];
|
|||
|
|
AnsiString m_FileViewName[8][10];
|
|||
|
|
int m_FileViewKeep;
|
|||
|
|
int m_FileViewShowSize;
|
|||
|
|
|
|||
|
|
int m_DivMode;
|
|||
|
|
int m_StockViewTop;
|
|||
|
|
int m_StockViewLeft;
|
|||
|
|
int m_StockViewWidth;
|
|||
|
|
int m_StockViewHeight;
|
|||
|
|
|
|||
|
|
int m_WaterViewTop;
|
|||
|
|
int m_WaterViewLeft;
|
|||
|
|
int m_WaterViewWidth;
|
|||
|
|
int m_WaterViewHeight;
|
|||
|
|
|
|||
|
|
int m_LogViewTop;
|
|||
|
|
int m_LogViewLeft;
|
|||
|
|
int m_LogViewWidth;
|
|||
|
|
int m_LogViewHeight;
|
|||
|
|
|
|||
|
|
TColor m_ColText[6];
|
|||
|
|
TColor m_ColBar[4];
|
|||
|
|
AnsiString m_AutoSaveDir;
|
|||
|
|
TColor m_ColorSet[32];
|
|||
|
|
|
|||
|
|
int m_FixedTxMode;
|
|||
|
|
AnsiString m_TextList[16];
|
|||
|
|
|
|||
|
|
int m_TextGrade;
|
|||
|
|
int m_TextShadow;
|
|||
|
|
int m_TextZero;
|
|||
|
|
int m_TextRot;
|
|||
|
|
int m_TextVert;
|
|||
|
|
int m_TextVertH;
|
|||
|
|
int m_TextStack;
|
|||
|
|
|
|||
|
|
int m_PicShape;
|
|||
|
|
int m_PicAdjust;
|
|||
|
|
int m_PicLineStyle;
|
|||
|
|
TColor m_PicLineColor;
|
|||
|
|
|
|||
|
|
int m_PicSelRTM;
|
|||
|
|
int m_PicSelSmooz;
|
|||
|
|
TColor m_PicSelCurCol;
|
|||
|
|
|
|||
|
|
int m_Sharp2D;
|
|||
|
|
int m_Differentiator;
|
|||
|
|
double m_DiffLevelP;
|
|||
|
|
double m_DiffLevelM;
|
|||
|
|
|
|||
|
|
TColor m_ColorRXB;
|
|||
|
|
int m_HDDSize;
|
|||
|
|
|
|||
|
|
int m_ShowSizeRX;
|
|||
|
|
int m_ShowSizeHist;
|
|||
|
|
int m_ShowSizeTX;
|
|||
|
|
int m_ShowSizeTemp;
|
|||
|
|
int m_ShowSizeStock;
|
|||
|
|
|
|||
|
|
int m_Repeater;
|
|||
|
|
int m_RepSenseLvl; // <20>g<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD>o<EFBFBD><6F><EFBFBD>x
|
|||
|
|
AnsiString m_RepAnsCW;
|
|||
|
|
int m_RepTimeA; // <20>g<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD>o<EFBFBD><6F><EFBFBD><EFBFBD>
|
|||
|
|
int m_RepTimeB; // <20>g<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD>o<EFBFBD><6F><EFBFBD><EFBFBD>AnsCW<43>o<EFBFBD>͂܂ł̎<C582><CC8E><EFBFBD>
|
|||
|
|
int m_RepTimeC; // <20><><EFBFBD>M<EFBFBD>ҋ@<40>̃^<5E>C<EFBFBD><43><EFBFBD>A<EFBFBD>E<EFBFBD>g
|
|||
|
|
int m_RepTimeD; // <20><><EFBFBD>v<EFBFBD><76><EFBFBD>C<EFBFBD><43><EFBFBD>M<EFBFBD>̒x<CC92><78><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
|
|||
|
|
int m_RepBeacon;
|
|||
|
|
int m_RepBeaconMode;
|
|||
|
|
AnsiString m_RepTempTX;
|
|||
|
|
AnsiString m_RepTempBeacon;
|
|||
|
|
int m_RepBottomAdj;
|
|||
|
|
int m_RepQuietnessTime;
|
|||
|
|
int m_RepBeaconFilter;
|
|||
|
|
AnsiString m_RepFolder;
|
|||
|
|
|
|||
|
|
int m_UseB24;
|
|||
|
|
AnsiString m_Msg;
|
|||
|
|
int m_DisFontSmooth;
|
|||
|
|
|
|||
|
|
int m_TempDelay;
|
|||
|
|
FONTDATA m_RegFont[4];
|
|||
|
|
|
|||
|
|
int m_Temp24;
|
|||
|
|
|
|||
|
|
int m_MaskUserPage;
|
|||
|
|
TColor m_MaskCol1;
|
|||
|
|
TColor m_MaskCol2;
|
|||
|
|
|
|||
|
|
int m_bCQ100;
|
|||
|
|
}SYSSET;
|
|||
|
|
|
|||
|
|
extern SYSSET sys;
|
|||
|
|
|
|||
|
|
///---------------------------------------------------------
|
|||
|
|
/// <20>e<EFBFBD>L<EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD>[<5B>}<7D>[
|
|||
|
|
class CTextString
|
|||
|
|
{
|
|||
|
|
private:
|
|||
|
|
LPCSTR rp;
|
|||
|
|
public:
|
|||
|
|
inline __fastcall CTextString(LPCSTR p){
|
|||
|
|
rp = p;
|
|||
|
|
};
|
|||
|
|
inline __fastcall CTextString(AnsiString &As){
|
|||
|
|
rp = As.c_str();
|
|||
|
|
};
|
|||
|
|
int __fastcall LoadText(LPSTR tp, int len);
|
|||
|
|
};
|
|||
|
|
///---------------------------------------------------------
|
|||
|
|
/// <20>R<EFBFBD><52><EFBFBD>g<EFBFBD><67><EFBFBD>[<5B><><EFBFBD>̃A<CC83><41><EFBFBD>C<EFBFBD><43><EFBFBD>̊Ǘ<CC8A><C797>N<EFBFBD><4E><EFBFBD>X
|
|||
|
|
class CAlign
|
|||
|
|
{
|
|||
|
|
private:
|
|||
|
|
int BTop, BLeft;
|
|||
|
|
int BWidth, BHeight;
|
|||
|
|
int OTop, OLeft;
|
|||
|
|
int OWidth, OHeight;
|
|||
|
|
int OFontHeight;
|
|||
|
|
double m_FontAdj;
|
|||
|
|
|
|||
|
|
TControl *tp;
|
|||
|
|
TFont *fp;
|
|||
|
|
public:
|
|||
|
|
inline CAlign(void){
|
|||
|
|
tp = NULL;
|
|||
|
|
fp = NULL;
|
|||
|
|
m_FontAdj = 1.0;
|
|||
|
|
};
|
|||
|
|
inline ~CAlign(){
|
|||
|
|
};
|
|||
|
|
void InitControl(TControl *p, TControl *pB, TFont *pF = NULL);
|
|||
|
|
void InitControl(TControl *p, RECT *rp, TFont *pF = NULL);
|
|||
|
|
void NewAlign(TControl *pB);
|
|||
|
|
inline double GetFontAdj(void){return fabs(m_FontAdj);};
|
|||
|
|
inline TControl *GetControl(void){return tp;};
|
|||
|
|
void NewAlign(TControl *pB, double hx);
|
|||
|
|
void NewFont(AnsiString &FontName, BYTE Charset, TFontStyles fs);
|
|||
|
|
void NewFixAlign(TControl *pB, int XR);
|
|||
|
|
void Resume(void);
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
///---------------------------------------------------------
|
|||
|
|
/// <20>R<EFBFBD><52><EFBFBD>g<EFBFBD><67><EFBFBD>[<5B><><EFBFBD>̃A<CC83><41><EFBFBD>C<EFBFBD><43><EFBFBD>̊Ǘ<CC8A><C797>N<EFBFBD><4E><EFBFBD>X
|
|||
|
|
class CAlignList
|
|||
|
|
{
|
|||
|
|
private:
|
|||
|
|
int Max;
|
|||
|
|
int Cnt;
|
|||
|
|
CAlign **AlignList;
|
|||
|
|
void Alloc(void);
|
|||
|
|
public:
|
|||
|
|
CAlignList(void);
|
|||
|
|
~CAlignList();
|
|||
|
|
void EntryControl(TControl *tp, TControl *pB, TFont *pF = NULL);
|
|||
|
|
void EntryControl(TControl *tp, RECT *rp, TFont *pF = NULL);
|
|||
|
|
void EntryControl(TControl *tp, int XW, int YW, TFont *pF = NULL);
|
|||
|
|
void NewAlign(TControl *pB);
|
|||
|
|
double GetFontAdj(TControl *pB);
|
|||
|
|
void NewAlign(TControl *pB, TControl *pS, double hx);
|
|||
|
|
void NewFont(AnsiString &FontName, BYTE Charset, TFontStyles fs);
|
|||
|
|
void NewFixAlign(TControl *pB, int XR);
|
|||
|
|
void Resume(TControl *pB);
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
class CAlignGrid
|
|||
|
|
{
|
|||
|
|
private:
|
|||
|
|
int BWidth;
|
|||
|
|
int BHeight;
|
|||
|
|
int BRowHeight;
|
|||
|
|
|
|||
|
|
int Max;
|
|||
|
|
int *bp;
|
|||
|
|
public:
|
|||
|
|
inline CAlignGrid(void){
|
|||
|
|
Max = 0;
|
|||
|
|
bp = NULL;
|
|||
|
|
};
|
|||
|
|
inline ~CAlignGrid(){
|
|||
|
|
if( bp != NULL ){
|
|||
|
|
delete bp;
|
|||
|
|
}
|
|||
|
|
};
|
|||
|
|
void InitGrid(TStringGrid *p);
|
|||
|
|
void NewAlign(TStringGrid *p);
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
class CWebRef
|
|||
|
|
{
|
|||
|
|
private:
|
|||
|
|
AnsiString HTML;
|
|||
|
|
public:
|
|||
|
|
CWebRef();
|
|||
|
|
inline bool IsHTML(void){
|
|||
|
|
return !HTML.IsEmpty();
|
|||
|
|
};
|
|||
|
|
void ShowHTML(LPCSTR url);
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
class CWaitCursor
|
|||
|
|
{
|
|||
|
|
private:
|
|||
|
|
TCursor sv;
|
|||
|
|
public:
|
|||
|
|
CWaitCursor();
|
|||
|
|
~CWaitCursor();
|
|||
|
|
void Delete(void);
|
|||
|
|
void Wait(void);
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
///-------------------------------------------------------
|
|||
|
|
/// CRecentMenu<6E>N<EFBFBD><4E><EFBFBD>X
|
|||
|
|
#define RECMENUMAX 4 // <20><><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582><EFBFBD><EFBFBD>ő<EFBFBD><C591>̐<EFBFBD>
|
|||
|
|
class CRecentMenu
|
|||
|
|
{
|
|||
|
|
private:
|
|||
|
|
public:
|
|||
|
|
int InsPos; // <20><><EFBFBD>j<EFBFBD><6A><EFBFBD>[<5B>}<7D><><EFBFBD>ʒu<CA92>̔ԍ<CC94>
|
|||
|
|
int Max; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>鐔
|
|||
|
|
AnsiString Caption[RECMENUMAX];
|
|||
|
|
TMenuItem *pMenu;
|
|||
|
|
TMenuItem *Items[RECMENUMAX+1];
|
|||
|
|
|
|||
|
|
public:
|
|||
|
|
CRecentMenu();
|
|||
|
|
void Init(int pos, TMenuItem *pmenu, int max);
|
|||
|
|
void Init(TMenuItem *pi, TMenuItem *pmenu, int max);
|
|||
|
|
int GetCount(void);
|
|||
|
|
LPCSTR GetItemText(int n);
|
|||
|
|
void SetItemText(int n, LPCSTR p);
|
|||
|
|
int IsAdd(LPCSTR pNew);
|
|||
|
|
void Add(LPCSTR pNew);
|
|||
|
|
void ExtFilter(LPCSTR pExt);
|
|||
|
|
void Clear(void);
|
|||
|
|
void Insert(TObject *op, Classes::TNotifyEvent pEvent);
|
|||
|
|
void Delete(void);
|
|||
|
|
void Delete(LPCSTR pName);
|
|||
|
|
int FindItem(TMenuItem *mp);
|
|||
|
|
LPCSTR FindItemText(TMenuItem *mp);
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
///-------------------------------------------------------
|
|||
|
|
/// CBitmapHist<73>N<EFBFBD><4E><EFBFBD>X
|
|||
|
|
#define HISTMAX 256
|
|||
|
|
typedef struct {
|
|||
|
|
int m_Ver;
|
|||
|
|
int m_Max;
|
|||
|
|
int m_Cnt;
|
|||
|
|
int m_wPnt;
|
|||
|
|
}HEADBH;
|
|||
|
|
typedef struct {
|
|||
|
|
int m_Flag;
|
|||
|
|
SYSTEMTIME m_UTC;
|
|||
|
|
}HEADFH;
|
|||
|
|
class CBitmapHist
|
|||
|
|
{
|
|||
|
|
public:
|
|||
|
|
HEADBH m_Head;
|
|||
|
|
HEADFH m_File[256];
|
|||
|
|
AnsiString m_FileName;
|
|||
|
|
int m_CurAdd;
|
|||
|
|
int m_CurRead;
|
|||
|
|
int m_UseJPEG;
|
|||
|
|
private:
|
|||
|
|
|
|||
|
|
public:
|
|||
|
|
CBitmapHist(){
|
|||
|
|
m_CurAdd = 0;
|
|||
|
|
m_CurRead = 0;
|
|||
|
|
m_FileName = "";
|
|||
|
|
m_UseJPEG = 0;
|
|||
|
|
|
|||
|
|
m_Head.m_Ver = 0;
|
|||
|
|
m_Head.m_Max = 64;
|
|||
|
|
m_Head.m_Cnt = 0;
|
|||
|
|
m_Head.m_wPnt = 0;
|
|||
|
|
};
|
|||
|
|
~CBitmapHist(){
|
|||
|
|
Close();
|
|||
|
|
};
|
|||
|
|
int Open(void);
|
|||
|
|
void Close(void);
|
|||
|
|
int OverWrite(void);
|
|||
|
|
int Read(Graphics::TBitmap *pBitmap, int slot);
|
|||
|
|
void Write(Graphics::TBitmap *pBitmap, int slot);
|
|||
|
|
void Add(Graphics::TBitmap *pBitmap, SYSTEMTIME *pTime, int mode);
|
|||
|
|
void ClearAddFlag(void){m_CurAdd = 0;};
|
|||
|
|
void Update(Graphics::TBitmap *pBitmap);
|
|||
|
|
int IsAddFlag(void){return m_CurAdd;};
|
|||
|
|
void ChangeMax(int max);
|
|||
|
|
void MoveDir(LPCSTR pNewDir);
|
|||
|
|
void Delete(int n);
|
|||
|
|
void DeleteAll(void);
|
|||
|
|
void ChangeFormat(int sw);
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
///-------------------------------------------------------
|
|||
|
|
/// CExecPB<50>N<EFBFBD><4E><EFBFBD>X
|
|||
|
|
class CExecPB
|
|||
|
|
{
|
|||
|
|
private:
|
|||
|
|
int m_Flag;
|
|||
|
|
DWORD m_dwCount;
|
|||
|
|
DWORD m_dwID; // ID<49>l
|
|||
|
|
UINT m_uMsg; // <20><><EFBFBD>b<EFBFBD>Z<EFBFBD>[<5B>W<EFBFBD>l
|
|||
|
|
HWND m_hWndMsg; // <20><><EFBFBD>b<EFBFBD>Z<EFBFBD>[<5B>W<EFBFBD>̑<EFBFBD><CC91>M<EFBFBD><4D>
|
|||
|
|
|
|||
|
|
AnsiString m_Name;
|
|||
|
|
DWORD m_nFileSizeLow;
|
|||
|
|
FILETIME m_ftLastWriteTime;
|
|||
|
|
public:
|
|||
|
|
__fastcall CExecPB();
|
|||
|
|
__fastcall ~CExecPB();
|
|||
|
|
|
|||
|
|
BOOL __fastcall Timer(void);
|
|||
|
|
void __fastcall Cancel(void);
|
|||
|
|
BOOL __fastcall Exec(LPCSTR pName, HWND hWnd, UINT uMsg, DWORD nID);
|
|||
|
|
BOOL __fastcall Exec(Graphics::TBitmap *pBitmap, HWND hWnd, UINT uMsg, DWORD nID);
|
|||
|
|
BOOL __fastcall IsChanged(void);
|
|||
|
|
BOOL __fastcall LoadBitmap(Graphics::TBitmap *pBitmap, BOOL sw);
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
void __fastcall SetDisPaint(void);
|
|||
|
|
void __fastcall ResDisPaint(void);
|
|||
|
|
|
|||
|
|
void ShowHelp(int index);
|
|||
|
|
void InitSampType(void);
|
|||
|
|
double NormalSampFreq(double d, double m);
|
|||
|
|
int IsFile(LPCSTR pName);
|
|||
|
|
|
|||
|
|
void GetUTC(SYSTEMTIME *tp);
|
|||
|
|
void GetLocal(SYSTEMTIME *tp);
|
|||
|
|
LPSTR StrDupe(LPCSTR s);
|
|||
|
|
|
|||
|
|
void InitColorTable(TColor cl, TColor ch);
|
|||
|
|
LPCSTR GetKeyName(WORD Key);
|
|||
|
|
WORD GetKeyCode(LPCSTR pName);
|
|||
|
|
LPCSTR ToDXKey(LPCSTR s);
|
|||
|
|
LPCSTR ToJAKey(LPCSTR s);
|
|||
|
|
|
|||
|
|
//int InputMB(LPCSTR pMsg, LPCSTR pTitle, AnsiString &as);
|
|||
|
|
|
|||
|
|
int SetTBValue(double d, double dmax, int imax);
|
|||
|
|
double GetTBValue(int d, double dmax, int imax);
|
|||
|
|
LPUSTR jstrupr(LPUSTR s);
|
|||
|
|
inline LPSTR jstrupr(LPSTR s){return (LPSTR)jstrupr(LPUSTR(s));};
|
|||
|
|
|
|||
|
|
int SetTimeOffsetInfo(int &Hour, int &Min);
|
|||
|
|
WORD AdjustRolTimeUTC(WORD tim, char c);
|
|||
|
|
void FormCenter(TForm *tp, int XW, int YW);
|
|||
|
|
char *lastp(char *p);
|
|||
|
|
char *clipsp(char *s);
|
|||
|
|
LPCSTR _strdmcpy(LPSTR t, LPCSTR p, char c);
|
|||
|
|
const char *StrDlmCpy(char *t, const char *p, char Dlm, int len);
|
|||
|
|
const char *StrDlmCpyK(char *t, const char *p, char Dlm, int len);
|
|||
|
|
void StrCopy(LPSTR t, LPCSTR s, int n);
|
|||
|
|
char LastC(LPCSTR p);
|
|||
|
|
LPCSTR GetEXT(LPCSTR Fname);
|
|||
|
|
void SetEXT(LPSTR pName, LPSTR pExt);
|
|||
|
|
BOOL __fastcall CheckEXT(LPCSTR pName, LPCSTR pExt);
|
|||
|
|
void SetCurDir(LPSTR t, int size);
|
|||
|
|
void SetDirName(LPSTR t, LPCSTR pName);
|
|||
|
|
LPCSTR StrDbl(double d);
|
|||
|
|
LPCSTR StrDblE(double d);
|
|||
|
|
double ReadDoubleIniFile(TMemIniFile *p, LPCSTR c1, LPCSTR c2, double d);
|
|||
|
|
void WriteDoubleIniFile(TMemIniFile *p, LPCSTR c1, LPCSTR c2, double d);
|
|||
|
|
void ClipLF(LPSTR sp);
|
|||
|
|
void DeleteComment(LPSTR bf);
|
|||
|
|
LPSTR FillSpace(LPSTR s, int n);
|
|||
|
|
LPSTR SkipSpace(LPSTR sp);
|
|||
|
|
LPCSTR SkipSpace(LPCSTR sp);
|
|||
|
|
LPSTR StrDlm(LPSTR &t, LPSTR p);
|
|||
|
|
LPSTR StrDlm(LPSTR &t, LPSTR p, char c);
|
|||
|
|
void ChgString(LPSTR t, char a, char b);
|
|||
|
|
void DelChar(LPSTR t, char a);
|
|||
|
|
int atoin(const char *p, int n);
|
|||
|
|
int htoin(const char *p, int n);
|
|||
|
|
BOOL __fastcall ATOI(int &d, LPCSTR s);
|
|||
|
|
|
|||
|
|
int InvMenu(TMenuItem *pItem);
|
|||
|
|
void AdjustBitmapFormat(Graphics::TBitmap *pBitmap);
|
|||
|
|
Graphics::TBitmap *Bitmap24bit(Graphics::TBitmap *pBitmap);
|
|||
|
|
int LoadBitmap(Graphics::TBitmap *pBitmap, LPCSTR pName);
|
|||
|
|
int SaveBitmap24(Graphics::TBitmap *pBitmap, LPCSTR pName);
|
|||
|
|
int SaveBitmap(Graphics::TBitmap *pBitmap, LPCSTR pName);
|
|||
|
|
void FillBitmap(Graphics::TBitmap *pBitmap, TColor col);
|
|||
|
|
int SaveJPEG(Graphics::TBitmap *pBitmap, LPCSTR pName);
|
|||
|
|
int LoadJPEG(Graphics::TBitmap *pBitmap, LPCSTR pName);
|
|||
|
|
int IsPic(LPCSTR pExt);
|
|||
|
|
LPCSTR GetPicFilter(void);
|
|||
|
|
LPCSTR GetTempFilter(void);
|
|||
|
|
LPCSTR GetTempMFilter(void);
|
|||
|
|
LPCSTR GetTempIFilter(void);
|
|||
|
|
LPCSTR GetLibFilter(void);
|
|||
|
|
int LoadImage(Graphics::TBitmap *pBitmap, LPCSTR pName);
|
|||
|
|
int SaveImage(Graphics::TBitmap *pBitmap, LPCSTR pName);
|
|||
|
|
|
|||
|
|
void InitCustomColor(TColorDialog *tp);
|
|||
|
|
void AddCustomColor(TColorDialog *tp, TColor col);
|
|||
|
|
|
|||
|
|
void InfoMB(LPCSTR fmt, ...);
|
|||
|
|
void ErrorMB(LPCSTR fmt, ...);
|
|||
|
|
void WarningMB(LPCSTR fmt, ...);
|
|||
|
|
int YesNoMB(LPCSTR fmt, ...);
|
|||
|
|
int YesNoCancelMB(LPCSTR fmt, ...);
|
|||
|
|
int OkCancelMB(LPCSTR fmt, ...);
|
|||
|
|
void ErrorFWrite(LPCSTR pName);
|
|||
|
|
|
|||
|
|
int RemoveL2(LPSTR t, LPSTR ss, LPCSTR pKey, int size);
|
|||
|
|
void AddL2(LPSTR t, LPCSTR pKey, LPCSTR s, UCHAR c1, UCHAR c2, int size);
|
|||
|
|
|
|||
|
|
void Yen2CrLf(AnsiString &ws, AnsiString cs);
|
|||
|
|
void CrLf2Yen(AnsiString &ws, AnsiString cs);
|
|||
|
|
|
|||
|
|
void SetComboBox(TComboBox *pCombo, LPCSTR pList);
|
|||
|
|
void GetComboBox(AnsiString &as, TComboBox *pCombo);
|
|||
|
|
void ExecPB(LPCSTR pName);
|
|||
|
|
|
|||
|
|
int IsNumbs(LPCSTR p);
|
|||
|
|
int IsAlphas(LPCSTR p);
|
|||
|
|
int IsRST(LPCSTR p);
|
|||
|
|
int IsCallChar(char c);
|
|||
|
|
int IsCall(LPCSTR p);
|
|||
|
|
int IsJA(const char *s);
|
|||
|
|
LPCSTR ClipCall(LPCSTR s);
|
|||
|
|
LPCSTR ClipCC(LPCSTR s);
|
|||
|
|
|
|||
|
|
/* JA7UDE 0428
|
|||
|
|
inline LPUSTR StrDlm(LPUSTR &t, LPUSTR p, char c){return (LPUSTR)StrDlm(LPSTR(t), LPSTR(p), c);};
|
|||
|
|
inline LPUSTR StrDlm(LPUSTR &t, LPUSTR p){return (LPUSTR)StrDlm(LPSTR(t), LPSTR(p));};
|
|||
|
|
inline LPUSTR StrDlm(LPUSTR &t, LPSTR p, char c){return (LPUSTR)StrDlm(LPSTR(t), p, c);};
|
|||
|
|
inline LPUSTR StrDlm(LPUSTR &t, LPSTR p){return (LPUSTR)StrDlm(LPSTR(t), p);};
|
|||
|
|
*/
|
|||
|
|
|
|||
|
|
void TopWindow(TForm *tp);
|
|||
|
|
void NormalWindow(TForm *tp);
|
|||
|
|
|
|||
|
|
int FontStyle2Code(TFontStyles style);
|
|||
|
|
TFontStyles Code2FontStyle(int code);
|
|||
|
|
|
|||
|
|
void __fastcall KeepAspect(int &sx, int &sy, int bx, int by);
|
|||
|
|
void __fastcall KeepAspectDraw(TCanvas *tp, int sx, int sy, Graphics::TBitmap *pBitmap);
|
|||
|
|
Graphics::TBitmap *__fastcall DupeBitmap(Graphics::TBitmap *pSrc, int fmt);
|
|||
|
|
Graphics::TBitmap *__fastcall RemakeBitmap(Graphics::TBitmap *pBitmap, int fmt);
|
|||
|
|
Graphics::TBitmap* __fastcall CreateBitmap(int xw, int yw, int fmt);
|
|||
|
|
void __fastcall StretchCopyBitmap(Graphics::TBitmap *pTer, Graphics::TBitmap *pSrc);
|
|||
|
|
void __fastcall StretchCopyBitmapHW(Graphics::TBitmap *pTer, Graphics::TBitmap *pSrc);
|
|||
|
|
void __fastcall CopyBitmap(Graphics::TBitmap *pTer, Graphics::TBitmap *pSrc);
|
|||
|
|
void __fastcall StretchCopy(Graphics::TBitmap *pTer, Graphics::TBitmap *pSrc, int mode);
|
|||
|
|
void __fastcall StretchCopy(Graphics::TBitmap *pBitmap, TRect *tc, Graphics::TBitmap *pbmp, TRect *rp);
|
|||
|
|
void __fastcall SetGroupEnabled(TGroupBox *gp);
|
|||
|
|
|
|||
|
|
int __fastcall Limit256(int d);
|
|||
|
|
void __fastcall LimitRGB(int &R, int &G, int &B);
|
|||
|
|
void __fastcall YCtoRGB(int &R, int &G, int &B, int Y, int RY, int BY);
|
|||
|
|
TColor __fastcall YCtoTColor(int Y, int RY, int BY);
|
|||
|
|
int __fastcall ColorToFreq(int d);
|
|||
|
|
int __fastcall ColorToFreqNarrow(int d);
|
|||
|
|
void __fastcall MultProc(void);
|
|||
|
|
void __fastcall MultProcA(void);
|
|||
|
|
|
|||
|
|
void __fastcall DrawBitmap(TPaintBox *pBox, Graphics::TBitmap *pBitmap);
|
|||
|
|
void __fastcall ReSizeBitmap(Graphics::TBitmap *pBitmap, int w, int h);
|
|||
|
|
Graphics::TBitmap *__fastcall MFilter(Graphics::TBitmap *pTer, Graphics::TBitmap *pSrc, int sw);
|
|||
|
|
void __fastcall CopyAutoSize(Graphics::TBitmap *pTer, Graphics::TBitmap *pSrc);
|
|||
|
|
void __fastcall GetRY(int &Y, int &RY, int &BY, TColor col);
|
|||
|
|
void __fastcall DownColor(Graphics::TBitmap *pbmp, TColor bcol, int lm);
|
|||
|
|
|
|||
|
|
void KeyEvent(const short *p);
|
|||
|
|
void __fastcall SetThumbnailSize(TRect &rc, int sw);
|
|||
|
|
void __fastcall NormalRect(long *x1, long *y1, long *x2, long *y2); //ja7ude 0521
|
|||
|
|
void __fastcall NormalRect(int &x1, int &y1, int &x2, int &y2); //ja7ude 0521
|
|||
|
|
void __fastcall NormalRect(TRect *rc);
|
|||
|
|
int __fastcall GetActiveIndex(TPageControl *pp);
|
|||
|
|
|
|||
|
|
void __fastcall ClearCodeErr(void);
|
|||
|
|
void __fastcall SetMBCP(void);
|
|||
|
|
void __fastcall SetMBCP(BYTE charset);
|
|||
|
|
void __fastcall MoveParent(TWinControl *pNew, TWinControl *pOld, TWinControl *pCtr);
|
|||
|
|
BYTE __fastcall InvFontCharset(BYTE charset);
|
|||
|
|
void __fastcall InvFontCharset(TFont *pFont);
|
|||
|
|
|
|||
|
|
extern CExecPB g_ExecPB;
|
|||
|
|
#endif
|
|||
|
|
|