Compare commits

...

28 Commits

Author SHA1 Message Date
Tatsu
f46f5148a3 Version 2.16時点のソースファイル。
git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/tags/TAG-2.16@89 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2015-08-16 10:07:55 +00:00
Tatsu
97b083ed07 ・Windows 10ではフォントサイズをWindows 7と同様に表示するようにした。
・プリセットのフォントサイズをシステムのDPIを反映するようにした。
・バージョン番号を2.16正式版のものとした。


git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/trunk@88 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2015-08-16 08:32:00 +00:00
Tatsu
9743c6f757 ・高DPIへの対応を行った。ダイアログベースアプリなのでマニフェストの追加だけで済んだ。
・バージョン番号を2.16 Beta 2とした。


git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/trunk@87 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2015-08-11 11:24:27 +00:00
Tatsu
481d2c3d5d ・バージョン番号の標記が2.16 Beta 1となっていなかった箇所の標記を修正した。
git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/trunk@85 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2015-08-08 06:26:29 +00:00
Tatsu
2b831c83d1 ・バージョン番号を2.1.6.0とした。
・Windows 10用のプリセットを付けた。


git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/trunk@84 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2015-08-01 08:17:16 +00:00
Tatsu
42e47c057b ・初期状態で別スレッドでフォント設定を実行するようにした。
・別スレッドでのフォント設定処理が終わらない場合はスレッドを強制終了するようにした。


git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/trunk@83 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2015-08-01 07:52:56 +00:00
Tatsu
965c1aad87 ・Visual Studio 2013の.vcxproj、.vcxproj.filtersファイルの追加が漏れていたので、追加を行った。
git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/trunk@80 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2015-07-20 02:53:29 +00:00
Tatsu
08084c2faf ・「別スレッドでフォントを変更する」オプションの標記の「。」をとりました。
git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/trunk@79 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2015-07-20 02:14:04 +00:00
Tatsu
b5f9ed44eb ・Windows 7以前のフォントサイズの扱いとWindows 8のフォントサイズの扱いを切り替えられるようにした。
・最低のフォントサイズの選択を6ptにした。


git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/trunk@78 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2015-07-19 09:35:47 +00:00
Tatsu
bbc1bd8820 ・Windows 8.1でVisual Studio 2008を使うと何度も落ちるので、Visual Studio 2008と2013
・Windows 8/8.1のディスプレイコントロールパネルのフォントサイズ計算式を入れてみた(7以前の計算式との切り替えは未実装)。


git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/trunk@77 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2015-07-12 12:50:16 +00:00
Tatsu
1efdd070bf ・フォント選択ダイアログに選択していたフォントの情報を設定するようにした。
・フォント選択ダイアログに選択していたフォントの情報を設定するため、フォントサイズ計算を共通関数にした。


git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/trunk@76 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2015-07-12 06:10:34 +00:00
Tatsu
90109d0014 ・バージョン番号を2.15に変更した。
・フォントサイズをメイン画面に表示するようにした。
・Windows 10/Server 2016の表示を行うようにした。


git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/trunk@75 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2015-07-12 04:24:18 +00:00
Tatsu
6b7b711cea ・フォント情報表示処理を集約した。
git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/trunk@74 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2015-07-12 01:21:58 +00:00
Tatsu
0c7d760a56 ・Windows 8/8.1用の初期値設定機能を追加した。
git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/trunk@73 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2015-07-12 01:07:12 +00:00
Tatsu
a185f148ff ・ライセンス関連コメントの追加・年号修正を行った。
git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/trunk@72 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2015-01-04 10:12:46 +00:00
Tatsu
6d0c47924b ・フォント設定の保存・読み込み機能を追加した。
git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/trunk@71 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2015-01-04 10:07:58 +00:00
Tatsu
d76d7ddd87 ・ドキュメント表示処理を実装した。
・マニフェストファイルのバージョン情報を修正した。
・他、ソースの年号修正。

git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/trunk@69 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2014-07-13 06:39:56 +00:00
Tatsu
caed4620b2 ・メニューを追加し、フォント変更を別スレッドで行うかどうかをメニューで指定するようにした。
・バージョン番号を2.13正式版のものとした。


git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/trunk@68 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2014-07-13 06:27:29 +00:00
Tatsu
b0280cdfed 本日のバージョンは実際はVersion 2.13テスト版2だったのでバージョン番号を変更した。
git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/trunk@66 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2014-07-06 12:05:18 +00:00
Tatsu
a28f56bcd3 ・SystemParametersInfo(SPI_SETNONCLIENTMETRICSが処理を返さない場合に対応するため、SystemParametersInfo(SPI_SETNONCLIENTMETRICSを別スレッドで処理するようにしてみた。
git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/trunk@64 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2014-07-06 11:09:03 +00:00
Tatsu
3810c045b9 バージョンリソースの元のファイル名の表記を修正した。
git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/trunk@61 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2013-09-28 09:33:38 +00:00
Tatsu
f9bc1e66fc ・Windowsのバージョンのほか、商品名も表示するようにした。
git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/trunk@59 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2013-09-28 09:22:28 +00:00
Tatsu
9a154bcfec ・Windows 8.1用のsupportedOSの記述をマニフェストに追加した。
・Windowsの内部バージョンを表示するようにした。
・クレジットを右寄せにした。


git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/trunk@56 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2013-09-07 06:39:05 +00:00
Tatsu
c2eb4fb536 ・GPLはしっくりこないのでMITライセンスに変更した。
・ソースファイルのReadMeをテンプレートからオリジナルに変更した。


git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/trunk@53 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2013-02-23 11:28:28 +00:00
Tatsu
1088af7eee ・GPL2を付与した。
・プロジェクトファイルに使うファイルをすべて入れるようにした。

git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/trunk@49 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2013-02-23 08:03:54 +00:00
Tatsu
4735a0082b ・IObit StartMenu 8との相性問題を回避するためフォント設定後のSetSysColors APIの呼び出しをやめた。
・バージョン番号を2.11に更新した。
・Windows 8のタスクマネージャー上の見かけを改善するためプロパティのファイル説明の記述を変更した。


git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/trunk@45 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2013-02-23 06:35:09 +00:00
Tatsu
b3a3873152 ・一括設定を行った後OKボタンを押すとアイコンに一括設定で設定したフォントが反映されない不具合を修正した。
git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/trunk@44 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2013-02-23 06:17:02 +00:00
Tatsu
f21319c7e9 使っていないソースを削除した。
git-svn-id: file:///H/repositry/noTahoma/noMeiryoUI/trunk@43 2be31de6-1b40-1d45-9c1f-7f81fcd71ed7
2013-02-17 08:44:31 +00:00
60 changed files with 2489 additions and 1684 deletions

View File

@@ -1,4 +1,9 @@
/*
noMeiryoUI (C) 2005,2012,2013 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
#include "FontSel.h"
#include "util.h"
#include <algorithm>
#include <functional>
@@ -20,6 +25,16 @@ bool operator>(const FontInfo& left, const FontInfo& right)
return (_tcscmp(left.logFont.lfFaceName, right.logFont.lfFaceName) < 0);
}
/**
* EnumFontFamiliesEx<45>̃R<CC83>[<5B><><EFBFBD>o<EFBFBD>b<EFBFBD>N
*
*
* @param lpelfe <20>_<EFBFBD><5F><EFBFBD>I<EFBFBD>ȃt<C883>H<EFBFBD><48><EFBFBD>g<EFBFBD>f<EFBFBD>[<5B>^
* @param lpntme <20><><EFBFBD><EFBFBD><EFBFBD>I<EFBFBD>ȃt<C883>H<EFBFBD><48><EFBFBD>g<EFBFBD>f<EFBFBD>[<5B>^
* @param FontType <20>t<EFBFBD>H<EFBFBD><48><EFBFBD>g<EFBFBD>̎<EFBFBD><CC8E><EFBFBD>
* @param lParam <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>`<60>̃f<CC83>[<5B>^
* @return 0:<3A>񋓂𒆎~<7E><><EFBFBD><EFBFBD> 1:<3A><><EFBFBD>̃t<CC83>H<EFBFBD><48><EFBFBD>g<EFBFBD><67><EFBFBD>񋓂<EFBFBD><F18B9382><EFBFBD><EFBFBD>B
*/
int CALLBACK EnumFontFamExProc(
ENUMLOGFONTEX *lpelfe, // <20>_<EFBFBD><5F><EFBFBD>I<EFBFBD>ȃt<C883>H<EFBFBD><48><EFBFBD>g<EFBFBD>f<EFBFBD>[<5B>^
NEWTEXTMETRICEX *lpntme, // <20><><EFBFBD><EFBFBD><EFBFBD>I<EFBFBD>ȃt<C883>H<EFBFBD><48><EFBFBD>g<EFBFBD>f<EFBFBD>[<5B>^
@@ -85,8 +100,9 @@ int getFont()
return 0;
}
/**
* <20>R<EFBFBD><52><EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD>N<EFBFBD>^
*/
FontSel::FontSel(HWND parent, int resource) : BaseDialog(parent, resource)
{
m_fontNameList = NULL;
@@ -94,8 +110,12 @@ FontSel::FontSel(HWND parent, int resource) : BaseDialog(parent, resource)
m_ChersetList = NULL;
m_styleList = NULL;
m_underline = NULL;
previousFont = NULL;
}
/**
* <20>f<EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD>N<EFBFBD>^
*/
FontSel::~FontSel(void)
{
if (m_fontSizeList != NULL) {
@@ -115,6 +135,9 @@ FontSel::~FontSel(void)
}
}
/**
* <20>_<EFBFBD>C<EFBFBD>A<EFBFBD><41><EFBFBD>O<EFBFBD><4F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
INT_PTR FontSel::OnInitDialog()
{
getFont();
@@ -143,7 +166,6 @@ INT_PTR FontSel::OnInitDialog()
m_fontSizeList->addItem(_T("14"));
m_fontSizeList->addItem(_T("15"));
m_fontSizeList->addItem(_T("16"));
m_fontSizeList->addItem(_T("16"));
m_fontSizeList->addItem(_T("17"));
m_fontSizeList->addItem(_T("18"));
m_fontSizeList->addItem(_T("19"));
@@ -158,11 +180,68 @@ INT_PTR FontSel::OnInitDialog()
m_fontSizeList->addItem(_T("48"));
m_fontSizeList->addItem(_T("72"));
m_fontSizeList->setSelectedIndex(4);
// <20>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B
if (previousFont != NULL) {
// <20>t<EFBFBD>H<EFBFBD><48><EFBFBD>g<EFBFBD>T<EFBFBD>C<EFBFBD>Y
int count = m_fontSizeList->getCount();
int point = getFontPointInt(previousFont, this->getHwnd());
int selection = 0;
for (int i = 0; i < count; i++) {
int itemSize = _tstoi(m_fontSizeList->getItem(i).c_str());
if (point >= itemSize) {
selection = i;
}
}
if (selection > -1) {
m_fontSizeList->setSelectedIndex(selection);
}
// <20>t<EFBFBD>H<EFBFBD><48><EFBFBD>g<EFBFBD>t<EFBFBD>F<EFBFBD>C<EFBFBD>X
for (int i = 0; i < fonts; i++) {
if (!_tcscmp(fontList[i].logFont.lfFaceName, previousFont->lfFaceName)) {
m_fontNameList->setSelectedIndex(i);
// <20>t<EFBFBD>H<EFBFBD><48><EFBFBD>g<EFBFBD>ɍ<EFBFBD><C98D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>R<EFBFBD>[<5B>h<EFBFBD>Z<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>ݒ肷<DD92><E882B7><EFBFBD>B
setCharset();
int charsetCount = fontList[i].charsetList.size();
for (int j = 0; j < charsetCount; j++) {
if (fontList[i].charsetList[j] == previousFont->lfCharSet) {
m_ChersetList->setSelectedIndex(j);
}
}
// <20>t<EFBFBD>H<EFBFBD><48><EFBFBD>g<EFBFBD>ɍ<EFBFBD><C98D><EFBFBD><EFBFBD><EFBFBD><EFBFBD>X<EFBFBD>^<5E>C<EFBFBD><43>(<28><><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD>C<EFBFBD>^<5E><><EFBFBD>b<EFBFBD>N)<29><><EFBFBD>ݒ肷<DD92><E882B7><EFBFBD>B
setStyle();
int style = 0;
// <20>C<EFBFBD>^<5E><><EFBFBD>b<EFBFBD>N
if (previousFont->lfItalic) {
style |= 1;
}
// <20><><EFBFBD><EFBFBD>
if (previousFont->lfWeight > 400) {
style |= 2;
}
m_styleList->setSelectedIndex(style);
// <20><><EFBFBD><EFBFBD>
if (previousFont->lfUnderline) {
m_underline->setChecked(true);
}
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if (previousFont->lfStrikeOut) {
m_strike->setChecked(true);
}
break;
}
}
}
return (INT_PTR)FALSE;
}
/**
* <20>e<EFBFBD><65><EFBFBD><EFBFBD><EFBFBD>ɑ΂<C991><CE82><EFBFBD><E98F88><EFBFBD>̕<EFBFBD><CC95><EFBFBD>
*
@@ -319,6 +398,9 @@ void FontSel::setStyle(void)
m_styleList->setSelectedIndex(0);
}
/**
* OK<4F>{<7B>^<5E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̓<EFBFBD><CC93><EFBFBD>
*/
INT_PTR FontSel::onOK(void)
{
int selectedFontIndex = m_fontNameList->getSelectedIndex();
@@ -375,11 +457,21 @@ INT_PTR FontSel::onOK(void)
int point = _tstoi(size.c_str());
// <20>T<EFBFBD>C<EFBFBD>Y<EFBFBD>̐ݒ<CC90>
HDC hDC = GetDC(this->hWnd);
selectedFont.lfHeight = -MulDiv(point, GetDeviceCaps(hDC, LOGPIXELSY), 72);
selectedFont.lfWidth = 0;
ReleaseDC(this->hWnd, hDC);
// Windows 8<>݊<EFBFBD><DD8A>̏ꍇ<CC8F>̓s<CD83>N<EFBFBD>Z<EFBFBD><5A><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>v<EFBFBD>Z<EFBFBD><5A><EFBFBD><EFBFBD><EFBFBD>|<7C>C<EFBFBD><43><EFBFBD>g<EFBFBD><67><EFBFBD>w<EFBFBD><EFBFBD><E882B5><EFBFBD>|<7C>C<EFBFBD><43><EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><E88FAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A
// <20>t<EFBFBD>H<EFBFBD><48><EFBFBD>g<EFBFBD>̍<EFBFBD><CC8D><EFBFBD><EFBFBD>̃s<CC83>N<EFBFBD>Z<EFBFBD><5A><EFBFBD><EFBFBD><EFBFBD>̐<EFBFBD><CC90>Βl<CE92>𑝂₷<F0919D82>B
if (WIN8_SIZE) {
if (abs(getFontPointInt(&selectedFont, this->getHwnd())) < point) {
// <20>s<EFBFBD>N<EFBFBD>Z<EFBFBD><5A><EFBFBD><EFBFBD><EFBFBD>̓}<7D>C<EFBFBD>i<EFBFBD>X<EFBFBD>Ŏw<C58E><EFBFBD><E882B7><EFBFBD>̂<EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD>Đ<EFBFBD><C490>Βl<CE92>𑝂₷<F0919D82>B
selectedFont.lfHeight--;
}
}
if (m_underline->isChecked()) {
selectedFont.lfUnderline = TRUE;
} else {
@@ -392,6 +484,13 @@ INT_PTR FontSel::onOK(void)
selectedFont.lfStrikeOut = FALSE;
}
// <20><><EFBFBD>̑<EFBFBD><CC91>̓f<CD83>t<EFBFBD>H<EFBFBD><48><EFBFBD>g<EFBFBD>ɐݒ肷<DD92><E882B7><EFBFBD>B
selectedFont.lfOutPrecision = 0;
selectedFont.lfClipPrecision = 0;
selectedFont.lfQuality = 0;
// lfPitchAndFamily<6C>̓t<CD83>H<EFBFBD><48><EFBFBD>g<EFBFBD><67><EFBFBD>Ԃ<EFBFBD><D482><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̂<EFBFBD><CC82>ݒ肷<DD92><E882B7><EFBFBD>B
// selectedFont.lfPitchAndFamily = 50;
return (INT_PTR)1;
}

View File

@@ -1,3 +1,7 @@
/*
noMeiryoUI (C) 2005,2012,2013 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
#pragma once
#include <vector>
@@ -24,6 +28,7 @@ private:
TwrCheckbox *m_strike;
LOGFONT selectedFont;
LOGFONT *previousFont;
void setCharset(void);
void setStyle(void);
@@ -40,6 +45,9 @@ public:
LOGFONT getSelectedFont() {
return selectedFont;
}
void setPreviousFont(LOGFONT *item) {
previousFont = item;
}
void setNoMeiryoUI();
};

21
LICENSE.txt Normal file
View File

@@ -0,0 +1,21 @@
License for the noMeiryoUI Source Code (MIT license)
Copyright (c) 2005,2012,2013 Tatsuhiko Shoji
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

View File

@@ -1,46 +1,33 @@
========================================================================
WIN32 アプリケーション : noMeiryoUI プロジェクトの概要
========================================================================
Meiryo UIも大っきらい!! source file package
By Tatsuhiko Syoji(Tatsu) 2005,2012-2015
この noMeiryoUI アプリケーションは、AppWizard によって作成されました。
[必要となるプログラム]
・Visual Studio 2008(VC++)
・Visual Leak Detector(デバッグ版のビルドにのみ必要。)
このファイルには、noMeiryoUI アプリケーションを構成する各ファイル
の内容の概略が記述されています。
[ファイル]
ReadMe.txt:本ファイルです。
LICENSE.txt : MITライセンスの条文です。
noMeiryoUI.sln : Visual Studio 2008用ソリューションファイルです。
noMeiryoUI.vcproj : Visual Studio 2008用プロジェクトファイルです。
TWRフォルダ配下のファイル : GUI構築に使用したファイルです。
その他のファイル : Meiryo UIも大っきらい!!自身のソースファイルです。
[使い方]
1.まず、本アーカイブをディレクトリ付きで展開します。
2.デバッグ版をビルドする場合はVisual Leak Detector(http://vld.codeplex.com/)を
 セットアップします。
 Visual Leak Detectorを使わない場合はvld.hをインクルードしている個所を
 削除してください。
3.noMeiryoUI.slnを開きます。
4.ビルドを行うと実行ファイルがデバッグ版はDebugフォルダに、リリース版は
 Releaseフォルダに生成されます。
noMeiryoUI.vcproj
これは、アプリケーション ウィザードを使用して生成された VC++ プロジェクトのメイン プロジェクト ファイルです。
ファイルを生成した Visual C++ のバージョンに関する情報と、アプリケーション ウィザードで選択されたプラットフォーム、構成、およびプロジェクト機能に関する情報が含まれています。
[ライセンス]
MITライセンス(http://opensource.org/licenses/mit-license.php)に従います。
noMeiryoUI.cpp
これは、メインのアプリケーション ソース ファイルです。
/////////////////////////////////////////////////////////////////////////////
AppWizard によって、次のリソースが作成されました。
noMeiryoUI.rc
これは、プログラムが使用するすべての Microsoft Windows リソースの一覧です。RES サブディレクトリに格納されているアイコン、ビットマップ、およびカーソルが含まれます。このファイルは、Microsoft Visual C++ で直接編集できます。
Resource.h
これは、新しいリソース ID を定義する標準のヘッダー ファイルです。
このファイルの読み込みおよび更新は、Microsoft Visual C++ で行います。
noMeiryoUI.ico
これは、アプリケーションのアイコン (32x32) として使用されるアイコン ファイルです。
このアイコンは、メイン リソース ファイル noMeiryoUI.rc にインクルードされます。
small.ico
これは、アプリケーションのアイコンの小さいバージョン (16x16) を含むアイコン ファイルです。このアイコンは、メイン リソース ファイル noMeiryoUI.rc にインクルードされます。
/////////////////////////////////////////////////////////////////////////////
その他の標準ファイル :
StdAfx.h, StdAfx.cpp
これらのファイルは、プリコンパイル済みヘッダー (PCH) ファイル noMeiryoUI.pch とプリコンパイル済み型ファイル StdAfx.obj をビルドするために使用されます。
/////////////////////////////////////////////////////////////////////////////
その他のメモ :
AppWizard では、ユーザーが追加またはカスタマイズする必要のあるソース コードの部分を示すために、"TODO:" コメントを使用します。
/////////////////////////////////////////////////////////////////////////////
[作者]
庄子 達彦(Tatsu)
E-mail Address rxk16664@nifty.ne.jp
My Web page http://homepage3.nifty.com/Tatsu_syo/index.html
------------------------------------------------------------------------

View File

@@ -1,243 +0,0 @@
// AppliBase.cpp : <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>̃G<CC83><47><EFBFBD>g<EFBFBD><67> <20>|<7C>C<EFBFBD><43><EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD>`<60><><EFBFBD>܂<EFBFBD><DC82>B
//
#include "stdafx.h"
#include "commctrl.h"
#include "TwrCore.h"
#include "AppliBase.h"
#include "ModelessDialog.h"
#include "BaseForm.h"
// <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>ŗL<C597>̃w<CC83>b<EFBFBD>_<EFBFBD>t<EFBFBD>@<40>C<EFBFBD><43>
#include "../MyAppli.h"
#define MAX_LOADSTRING 100
// <20>O<EFBFBD><4F><EFBFBD>[<5B>o<EFBFBD><6F><EFBFBD>ϐ<EFBFBD>:
TCHAR szTitle[MAX_LOADSTRING]; // <20>^<5E>C<EFBFBD>g<EFBFBD><67> <20>o<EFBFBD>[<5B>̃e<CC83>L<EFBFBD>X<EFBFBD>g
TCHAR szWindowClass[MAX_LOADSTRING]; // <20><><EFBFBD>C<EFBFBD><43> <20>E<EFBFBD>B<EFBFBD><42><EFBFBD>h<EFBFBD>E <20>N<EFBFBD><4E><EFBFBD>X<EFBFBD><58>
BaseForm *baseForm;
// <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>ŗL<C597>̃O<CC83><4F><EFBFBD>[<5B>o<EFBFBD><6F><EFBFBD>ϐ<EFBFBD>
MyAppli *appObj;
extern void initModelessCallback(void);
// <20><><EFBFBD>̃R<CC83>[<5B>h <20><><EFBFBD>W<EFBFBD><57><EFBFBD>[<5B><><EFBFBD>Ɋ܂܂<DC82><DC82><EFBFBD><EFBFBD>֐<EFBFBD><D690>̐錾<CC90><E98CBE><EFBFBD>]<5D><><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD>:
int runApplication(
HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPTSTR lpCmdLine,
int nCmdShow);
ATOM MyRegisterClass(HINSTANCE hInstance);
BOOL InitInstance(HINSTANCE, int);
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
INT_PTR CALLBACK About(HWND, UINT, WPARAM, LPARAM);
bool handleDialogMessage(LPMSG lpMsg);
/**
* <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD>[<5B>`<60><>
*
* @param hInstance <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>̃C<CC83><43><EFBFBD>X<EFBFBD>^<5E><><EFBFBD>X<EFBFBD>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68>
* @param hPrevInstance <20><><EFBFBD>g<EFBFBD>p
* @param lpCmdLine <20>R<EFBFBD>}<7D><><EFBFBD>h<EFBFBD><68><EFBFBD>C<EFBFBD><43>
* @param nCmdShow <20>\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @return <20>v<EFBFBD><76><EFBFBD>O<EFBFBD><4F><EFBFBD><EFBFBD><EFBFBD>I<EFBFBD><49><EFBFBD>R<EFBFBD>[<5B>h
*/
int APIENTRY _tWinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPTSTR lpCmdLine,
int nCmdShow)
{
INITCOMMONCONTROLSEX iccx;
iccx.dwSize = sizeof(INITCOMMONCONTROLSEX);
iccx.dwICC = ICC_TAB_CLASSES;
if (!InitCommonControlsEx(&iccx)) {
return FALSE;
}
initModelessDialog();
initModelessCallback();
// TODO: <20><><EFBFBD><EFBFBD><EFBFBD>ɃA<C983>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>N<EFBFBD><4E><EFBFBD>X<EFBFBD>̃C<CC83><43><EFBFBD>X<EFBFBD>^<5E><><EFBFBD>X<EFBFBD><58><EFBFBD>ݒ肵<DD92>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B
appObj = new MyAppli();
baseForm = appObj->createBaseWindow();
// <20>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>\<5C><><EFBFBD>O<EFBFBD>̃A<CC83>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>̏<EFBFBD><CC8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD>B
appObj->OnAppliStart(lpCmdLine);
int result = runApplication(hInstance, hPrevInstance, lpCmdLine, nCmdShow);
// <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>̌<EFBFBD><CC8C>n<EFBFBD><6E><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD>B
appObj->OnAppliEnd();
delete baseForm;
delete appObj;
return result;
}
/**
* <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>J<EFBFBD>n
*
* @param hInstance <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>̃C<CC83><43><EFBFBD>X<EFBFBD>^<5E><><EFBFBD>X<EFBFBD>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68>
* @param hPrevInstance <20><><EFBFBD>g<EFBFBD>p
* @param lpCmdLine <20>R<EFBFBD>}<7D><><EFBFBD>h<EFBFBD><68><EFBFBD>C<EFBFBD><43>
* @param nCmdShow <20>\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @return <20>v<EFBFBD><76><EFBFBD>O<EFBFBD><4F><EFBFBD><EFBFBD><EFBFBD>I<EFBFBD><49><EFBFBD>R<EFBFBD>[<5B>h
*/
int runApplication(
HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPTSTR lpCmdLine,
int nCmdShow)
{
MSG msg;
HACCEL hAccelTable;
// <20>O<EFBFBD><4F><EFBFBD>[<5B>o<EFBFBD><6F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482>܂<EFBFBD><DC82>B
LoadString(hInstance, IDS_APP_TITLE, szTitle, MAX_LOADSTRING);
LoadString(hInstance, IDC_BOOKSYNC, szWindowClass, MAX_LOADSTRING);
MyRegisterClass(hInstance);
// <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>̏<EFBFBD><CC8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD>܂<EFBFBD>:
if (!InitInstance (hInstance, nCmdShow))
{
return FALSE;
}
hAccelTable = LoadAccelerators(hInstance, MAKEINTRESOURCE(IDC_APP_ACCEL));
doEvents();
// <20>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɍs<C98D><73><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD>B
appObj->OnWindowShow();
// <20><><EFBFBD>C<EFBFBD><43> <20><><EFBFBD>b<EFBFBD>Z<EFBFBD>[<5B>W <20><><EFBFBD>[<5B>v:
while (GetMessage(&msg, NULL, 0, 0))
{
if (handleDialogMessage(&msg)) {
// <20><><EFBFBD>b<EFBFBD>Z<EFBFBD>[<5B>W<EFBFBD><57><EFBFBD><EFBFBD><EFBFBD>[<5B>h<EFBFBD><68><EFBFBD>X<EFBFBD>_<EFBFBD>C<EFBFBD>A<EFBFBD><41><EFBFBD>O<EFBFBD>̂<EFBFBD><CC82>̂<EFBFBD><CC82><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EA8D87>
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>B
continue;
}
if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}
return (int) msg.wParam;
}
//
// <20>֐<EFBFBD>: MyRegisterClass()
//
// <20>ړI: <20>E<EFBFBD>B<EFBFBD><42><EFBFBD>h<EFBFBD>E <20>N<EFBFBD><4E><EFBFBD>X<EFBFBD><58><EFBFBD>o<EFBFBD>^<5E><><EFBFBD>܂<EFBFBD><DC82>B
//
// <20>R<EFBFBD><52><EFBFBD><EFBFBD><EFBFBD>g:
//
// <20><><EFBFBD>̊֐<CC8A><D690><EFBFBD><EFBFBD><EFBFBD><EFBFBD>юg<D18E><67><EFBFBD><EFBFBD><EFBFBD>́A'RegisterClassEx' <20>֐<EFBFBD><D690><EFBFBD><EFBFBD>lj<EFBFBD><C789><EFBFBD><EFBFBD>
// Windows 95 <20><><EFBFBD><EFBFBD><EFBFBD>O<EFBFBD><4F> Win32 <20>V<EFBFBD>X<EFBFBD>e<EFBFBD><65><EFBFBD>ƌ݊<C68C><DD8A><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɂ̂ݕK<DD95>v<EFBFBD>ł<EFBFBD><C582>B
// <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD>֘A<D698>t<EFBFBD><74><EFBFBD><EFBFBD><EFBFBD>
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>`<60><><EFBFBD>̏<EFBFBD><CC8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD>C<EFBFBD>R<EFBFBD><52><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582><EFBFBD><EFBFBD><EFBFBD>ɂ<EFBFBD><C982><EFBFBD><EFBFBD>ɂ́A
// <20><><EFBFBD>̊֐<CC8A><D690><EFBFBD><EFBFBD>Ăяo<D18F><6F><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B
//
ATOM MyRegisterClass(HINSTANCE hInstance)
{
WNDCLASSEX wcex;
wcex.cbSize = sizeof(WNDCLASSEX);
wcex.style = CS_HREDRAW | CS_VREDRAW;
wcex.lpfnWndProc = WndProc;
wcex.cbClsExtra = 0;
wcex.cbWndExtra = 0;
wcex.hInstance = hInstance;
wcex.lpszClassName = szWindowClass;
// <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>ŗL<C597>̏<EFBFBD><CC8F><EFBFBD>
wcex.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_APPICON));
wcex.hCursor = LoadCursor(NULL, IDC_ARROW);
wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
// wcex.hbrBackground = GetSysColorBrush(COLOR_3DFACE);
wcex.lpszMenuName = MAKEINTRESOURCE(IDC_BOOKSYNC);
wcex.hIconSm = LoadIcon(wcex.hInstance, MAKEINTRESOURCE(IDI_SMALL));
return RegisterClassEx(&wcex);
}
//
// <20>֐<EFBFBD>: InitInstance(HINSTANCE, int)
//
// <20>ړI: <20>C<EFBFBD><43><EFBFBD>X<EFBFBD>^<5E><><EFBFBD>X <20>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD>ۑ<EFBFBD><DB91><EFBFBD><EFBFBD>āA<C481><41><EFBFBD>C<EFBFBD><43> <20>E<EFBFBD>B<EFBFBD><42><EFBFBD>h<EFBFBD>E<EFBFBD><45><EFBFBD><EFBFBD><EC90AC><EFBFBD>܂<EFBFBD><DC82>B
//
// <20>R<EFBFBD><52><EFBFBD><EFBFBD><EFBFBD>g:
//
// <20><><EFBFBD>̊֐<CC8A><D690>ŁA<C581>O<EFBFBD><4F><EFBFBD>[<5B>o<EFBFBD><6F><EFBFBD>ϐ<EFBFBD><CF90>ŃC<C583><43><EFBFBD>X<EFBFBD>^<5E><><EFBFBD>X <20>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD>ۑ<EFBFBD><DB91><EFBFBD><EFBFBD>A
// <20><><EFBFBD>C<EFBFBD><43> <20>v<EFBFBD><76><EFBFBD>O<EFBFBD><4F><EFBFBD><EFBFBD> <20>E<EFBFBD>B<EFBFBD><42><EFBFBD>h<EFBFBD>E<EFBFBD><45><EFBFBD><EFBFBD><EC90AC><EFBFBD><EFBFBD><EFBFBD>ѕ\<5C><><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
//
BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
{
HWND hWnd;
hInst = hInstance; // <20>O<EFBFBD><4F><EFBFBD>[<5B>o<EFBFBD><6F><EFBFBD>ϐ<EFBFBD><CF90>ɃC<C983><43><EFBFBD>X<EFBFBD>^<5E><><EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>i<EFBFBD>[<5B><><EFBFBD>܂<EFBFBD><DC82>B
baseForm->setClass(szWindowClass);
baseForm->setTitle(szTitle);
hWnd = baseForm->Create(hInstance);
if (!hWnd)
{
return FALSE;
}
baseForm->ShowWindow(nCmdShow);
baseForm->UpdateWindow();
return TRUE;
}
//
// <20>֐<EFBFBD>: WndProc(HWND, UINT, WPARAM, LPARAM)
//
// <20>ړI: <20><><EFBFBD>C<EFBFBD><43> <20>E<EFBFBD>B<EFBFBD><42><EFBFBD>h<EFBFBD>E<EFBFBD>̃<EFBFBD><CC83>b<EFBFBD>Z<EFBFBD>[<5B>W<EFBFBD><57><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
//
// WM_COMMAND - <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD> <20><><EFBFBD>j<EFBFBD><6A><EFBFBD>[<5B>̏<EFBFBD><CC8F><EFBFBD>
// WM_PAINT - <20><><EFBFBD>C<EFBFBD><43> <20>E<EFBFBD>B<EFBFBD><42><EFBFBD>h<EFBFBD>E<EFBFBD>̕`<60><>
// WM_DESTROY - <20><><EFBFBD>~<7E><><EFBFBD>b<EFBFBD>Z<EFBFBD>[<5B>W<EFBFBD><57><EFBFBD>\<5C><><EFBFBD><EFBFBD><EFBFBD>Ė߂<C496>
//
//
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
LRESULT lResult = baseForm->WndProc(hWnd, message, wParam, lParam);
return lResult;
}
/**
* Windows<77>̃C<CC83>x<EFBFBD><78><EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B
*
* @return <20>C<EFBFBD>x<EFBFBD><78><EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
int doEvents()
{
MSG msg;
// <20><><EFBFBD>b<EFBFBD>Z<EFBFBD>[<5B>W<EFBFBD>̏<EFBFBD><CC8F><EFBFBD>
while (::PeekMessage(&msg, NULL, 0, 0, PM_NOREMOVE)) {
BOOL bRet = GetMessage(&msg, NULL, 0, 0);
if (bRet > 0){
if (handleDialogMessage(&msg)) {
// <20><><EFBFBD>b<EFBFBD>Z<EFBFBD>[<5B>W<EFBFBD><57><EFBFBD><EFBFBD><EFBFBD>[<5B>h<EFBFBD><68><EFBFBD>X<EFBFBD>_<EFBFBD>C<EFBFBD>A<EFBFBD><41><EFBFBD>O<EFBFBD>̂<EFBFBD><CC82>̂<EFBFBD><CC82><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EA8D87>
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>B
continue;
} else {
::TranslateMessage(&msg);
::DispatchMessage (&msg);
}
} else {
break;
}
}
return 0;
}

View File

@@ -1,3 +1,7 @@
/*
noMeiryoUI (C) 2005,2012,2013 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
#pragma once
#include <windows.h>

View File

@@ -1,3 +1,7 @@
/*
noMeiryoUI (C) 2005,2012,2013 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
#include "stdafx.h"
#include "TwrCore.h"

View File

@@ -1,3 +1,7 @@
/*
noMeiryoUI (C) 2005,2012,2013 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
#ifndef BASEDIALOG_H
#define BASEDIALOG_H

View File

@@ -1,196 +0,0 @@
#include "stdafx.h"
#include "BaseForm.h"
/**
* <20>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>̃x<CC83>[<5B>X<EFBFBD>N<EFBFBD><4E><EFBFBD>X
*/
/**
* <20>R<EFBFBD><52><EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD>N<EFBFBD>^
*/
BaseForm::BaseForm()
{
windowClass = _T("");
title = _T("");
style = WS_OVERLAPPEDWINDOW;
left = CW_USEDEFAULT;
top = CW_USEDEFAULT;
width = CW_USEDEFAULT;
height = 0;
}
/**
* <20>f<EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD>N<EFBFBD>^
*/
BaseForm::~BaseForm()
{
}
/**
* <20>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD><45><EFBFBD><EFBFBD><EC90AC><EFBFBD>܂<EFBFBD><DC82>B
*
* @param <20>C<EFBFBD><43><EFBFBD>X<EFBFBD>^<5E><><EFBFBD>X<EFBFBD>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68>
* @return <20>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68>
*/
HWND BaseForm::Create(HINSTANCE hInstance)
{
this->hInstance = hInstance;
hWnd = CreateWindow(
windowClass,
title,
style,
left,
top,
width,
height,
NULL,
NULL,
hInstance,
NULL);
return hWnd;
}
/**
* <20>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>v<EFBFBD><76><EFBFBD>[<5B>V<EFBFBD>W<EFBFBD><57>
*
* @param hDlg <20>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68>
* @param message <20><><EFBFBD>b<EFBFBD>Z<EFBFBD>[<5B>W
* @param wParam WPARAM
* @param lParam LPARAM
* @return <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
LRESULT CALLBACK BaseForm::WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
int wmId, wmEvent;
PAINTSTRUCT ps;
HDC hdc;
LPNMHDR nmhdr;
this->hWnd = hWnd;
this->message = message;
this->wParam = wParam;
this->lParam = lParam;
switch (message)
{
case WM_CREATE:
return OnCreate();
case WM_COMMAND:
wmId = LOWORD(wParam);
wmEvent = HIWORD(wParam);
return OnCommand(wmId, wmEvent);
case WM_NOTIFY:
nmhdr = (LPNMHDR)lParam;
return OnNotify(nmhdr);
case WM_PAINT:
hdc = BeginPaint(hWnd, &ps);
// TODO: <20>`<60><><EFBFBD>R<EFBFBD>[<5B>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɒlj<C992><C789><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>...
EndPaint(hWnd, &ps);
break;
case WM_DESTROY:
return OnDestroy();
case WM_SYSCOLORCHANGE: // <20>V<EFBFBD>X<EFBFBD>e<EFBFBD><65><EFBFBD>F<EFBFBD><46><EFBFBD>ύX<CF8D>ɂȂ<C982><C882><EFBFBD><EFBFBD>B
// <20><><EFBFBD>N<EFBFBD><4E><EFBFBD>C<EFBFBD>A<EFBFBD><41><EFBFBD>g<EFBFBD>̈<EFBFBD>(<28><><EFBFBD>j<EFBFBD><6A><EFBFBD>[<5B>o<EFBFBD>[<5B><><EFBFBD>^<5E>C<EFBFBD>g<EFBFBD><67><EFBFBD>o<EFBFBD>[)<29><><EFBFBD>X<EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD>߁A<DF81><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>g<EFBFBD><67><EFBFBD>B
RedrawWindow(hWnd,NULL,NULL,RDW_ERASE | RDW_INVALIDATE | RDW_FRAME);
return 0;
default:
return DefWindowProc(hWnd, message, wParam, lParam);
}
return 0;
}
/**
* <20>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>X<EFBFBD>^<5E>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD>ݒ肵<DD92>܂<EFBFBD><DC82>B
*
* @param newStyle <20>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>X<EFBFBD>^<5E>C<EFBFBD><43>
*/
void BaseForm::setStyle(DWORD newStyle)
{
style = newStyle;
if (hWnd != NULL) {
SetWindowLongPtr(hWnd, GWL_STYLE, newStyle);
}
}
/**
* <20>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>ƃE<C683>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>I<EFBFBD>u<EFBFBD>W<EFBFBD>F<EFBFBD>N<EFBFBD>g<EFBFBD>̃f<CC83>[<5B>^<5E>̓<EFBFBD><CC93><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƃ<EFBFBD><C682>܂<EFBFBD><DC82>B
*
* @param toObj true:<3A>_<EFBFBD>C<EFBFBD>A<EFBFBD><41><EFBFBD>O<EFBFBD>̓<EFBFBD><CC93>e<EFBFBD><65><EFBFBD>I<EFBFBD>u<EFBFBD>W<EFBFBD>F<EFBFBD>N<EFBFBD>g<EFBFBD>Ɋi<C98A>[<5B><><EFBFBD><EFBFBD><EFBFBD>B
* false:<3A>I<EFBFBD>u<EFBFBD>W<EFBFBD>F<EFBFBD>N<EFBFBD>g<EFBFBD>̓<EFBFBD><CC93>e<EFBFBD><65><EFBFBD>_<EFBFBD>C<EFBFBD>A<EFBFBD><41><EFBFBD>O<EFBFBD>Ɋi<C98A>[<5B><><EFBFBD><EFBFBD><EFBFBD>B
*/
void BaseForm::UpdateData(bool toObj)
{
}
/**
* WM_COMMAND<4E><44><EFBFBD>b<EFBFBD>Z<EFBFBD>[<5B>W<EFBFBD><57><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̏<EFBFBD><CC8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD>܂<EFBFBD><DC82>B
*
* @param wmId
* @param wmEvent
* @return <20><><EFBFBD>b<EFBFBD>Z<EFBFBD>[<5B>W<EFBFBD><57><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
LRESULT BaseForm::OnCommand(int wmId, int wmEvent)
{
return DefWindowProc(hWnd, message, wParam, lParam);
}
/**
* <20>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>̏<EFBFBD><CC8F>ɏ<EFBFBD><C98F><EFBFBD><EFBFBD>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>I<EFBFBD>u<EFBFBD>W<EFBFBD>F<EFBFBD>N<EFBFBD>g<EFBFBD><67><EFBFBD>lj<EFBFBD><C789><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
*
* @param <20>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>I<EFBFBD>u<EFBFBD>W<EFBFBD>F<EFBFBD>N<EFBFBD>g
* @return <20>e<EFBFBD>ɂȂ<C982><C882><EFBFBD><EFBFBD>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>̃n<CC83><6E><EFBFBD>h<EFBFBD><68>
*/
HWND BaseForm::add(TwrWnd *obj)
{
return ::SetParent(obj->getHwnd(), hWnd);
}
/**
* <20>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>̏<EFBFBD><CC8F>ɏ<EFBFBD><C98F><EFBFBD><EFBFBD>_<EFBFBD>C<EFBFBD>A<EFBFBD><41><EFBFBD>O<EFBFBD>I<EFBFBD>u<EFBFBD>W<EFBFBD>F<EFBFBD>N<EFBFBD>g<EFBFBD><67><EFBFBD>lj<EFBFBD><C789><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
*
* @param <20>_<EFBFBD>C<EFBFBD>A<EFBFBD><41><EFBFBD>O<EFBFBD>I<EFBFBD>u<EFBFBD>W<EFBFBD>F<EFBFBD>N<EFBFBD>g
* @return <20>e<EFBFBD>ɂȂ<C982><C882><EFBFBD><EFBFBD>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>̃n<CC83><6E><EFBFBD>h<EFBFBD><68>
*/
HWND BaseForm::add(BaseDialog *obj)
{
obj->setParent(hWnd);
return ::SetParent(obj->getHwnd(), hWnd);
}
/**
* <20>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD><45><EFBFBD><EFBFBD><EC90AC><EFBFBD><EFBFBD>Ƃ<EFBFBD><C682>ɌĂяo<D18F><6F><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
*
* @return 0
*/
LRESULT BaseForm::OnCreate()
{
return 0;
}
/**
* <20>R<EFBFBD><52><EFBFBD><EFBFBD><EFBFBD>R<EFBFBD><52><EFBFBD>g<EFBFBD><67><EFBFBD>[<5B><><EFBFBD>ŃC<C583>x<EFBFBD><78><EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƃ<EFBFBD><C682>ɌĂяo<D18F><6F><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
*
* @param nmhdr <20>ʒm<CA92><6D><EFBFBD>b<EFBFBD>Z<EFBFBD>[<5B>W<EFBFBD><57><EFBFBD><EFBFBD>
* @return <20><><EFBFBD>b<EFBFBD>Z<EFBFBD>[<5B>W<EFBFBD><57><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
LRESULT BaseForm::OnNotify(LPNMHDR nmhdr)
{
return DefWindowProc(hWnd, message, wParam, lParam);
}
/**
* <20>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD><45><EFBFBD>‚<EFBFBD><C282><EFBFBD><EFBFBD>ۂɌĂяo<D18F><6F><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
*
* @return 0
*/
LRESULT BaseForm::OnDestroy()
{
PostQuitMessage(0);
return 0;
}

View File

@@ -1,68 +0,0 @@
#ifndef BASEFORM_H
#define BASEFORM_H
#include "TwrWnd.h"
#include "BaseDialog.h"
/**
* T windows api WRapper<br>
* Window base class
*/
class BaseForm : public TwrWnd {
private:
TCHAR *windowClass;
TCHAR *title;
protected:
UINT message;
WPARAM wParam;
LPARAM lParam;
HINSTANCE hInstance;
DWORD style;
public:
BaseForm();
virtual ~BaseForm();
void setClass(TCHAR *windowClassName) {
windowClass = windowClassName;
}
void setTitle(TCHAR *newTitle) {
title = newTitle;
}
HWND add(TwrWnd *obj);
HWND add(BaseDialog *obj);
void setStyle(DWORD newStyle);
virtual void UpdateData(bool toObj);
virtual HWND Create(HINSTANCE hInstance);
virtual LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);
virtual LRESULT OnCommand(int wmId, int wmEvent);
virtual LRESULT OnCreate();
virtual LRESULT OnNotify(LPNMHDR nmhdr);
virtual LRESULT OnDestroy();
};
// MFC<46><43>DDX<44><58><EFBFBD>ǂ<EFBFBD><C782>}<7D>N<EFBFBD><4E>
#define FDX_Text(toObj, ctl, str, bufLen) \
if (toObj) { \
SendMessage(ctl->getHwnd(),WM_GETTEXT,bufLen,str); \
} else { \
SendMessage(ctl->getHwnd(),WM_SETTEXT,(WPARAM)0,str); \
}
#define FDX_Check(toObj, ctl, stat) \
if (toObj) { \
stat = (SendMessage(ctl->getHwnd(),BM_GETCHECK,0,0) ? true : false); \
} else { \
SendMessage(ctl->getHwnd(),BM_SETCHECK,(WPARAM)(stat ? 1 : 0),0); \
}
#define FDX_CBIndex(toObj, ctl, index) \
if (toObj) { \
index = SendMessage(ctl->getHwnd(),CB_GETCURSEL,0,0); \
} else { \
SendMessage(ctl->getHwnd(),CB_SETCURSEL,(WPARAM)index,0); \
}
#endif // BASEFORM_H

View File

@@ -1,3 +1,7 @@
/*
noMeiryoUI (C) 2005,2012,2013 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
// AppliBase.cpp : <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>̃G<CC83><47><EFBFBD>g<EFBFBD><67> <20>|<7C>C<EFBFBD><43><EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD>`<60><><EFBFBD>܂<EFBFBD><DC82>B
//

View File

@@ -1,3 +1,7 @@
/*
noMeiryoUI (C) 2005,2012,2013 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
#pragma once
#include <windows.h>

View File

@@ -1,3 +1,7 @@
/*
noMeiryoUI (C) 2005,2012,2013 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
#include "ModelessDialog.h"
HWND modelessDialogHandle[10];

View File

@@ -1,3 +1,7 @@
/*
noMeiryoUI (C) 2005,2012,2013 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
#ifndef MODELESSDIALOG_H
#define MODELESSDIALOG_H

View File

@@ -1,4 +1,7 @@
//#include <windows.h>
/*
noMeiryoUI (C) 2005,2012-2015 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
#include <stdlib.h>
#include <string.h>
#include <ctype.h>

View File

@@ -1,3 +1,7 @@
/*
noMeiryoUI (C) 2005,2012-2015 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
#ifndef NCFileDialog_H
#define NCFileDialog_H

View File

@@ -1,58 +0,0 @@
#include "stdafx.h"
#include "AppliBase.h"
#include "TwrButton.h"
/**
* <20>R<EFBFBD><52><EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD>N<EFBFBD>^
*/
TwrButton::TwrButton() : TwrWnd()
{
}
/**
* <20>{<7B>^<5E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EC90AC><EFBFBD>܂<EFBFBD><DC82>B
*
* @param id <20><><EFBFBD>j<EFBFBD><6A><EFBFBD>[ID
*/
HWND TwrButton::create(HMENU id)
{
hWnd = CreateWindow(
_T("BUTTON"),
title.c_str(),
WS_CHILD|WS_VISIBLE|BS_MULTILINE|BS_CENTER|WS_TABSTOP,
left, // X
top, // Y
width, // Width
height, // Height
GetDesktopWindow(), // Parent
id,
hInst,
NULL);
return hWnd;
}
/**
* <20>{<7B>^<5E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EC90AC><EFBFBD>܂<EFBFBD><DC82>B
*
* @param parent <20>e<EFBFBD>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68>
* @param id <20><><EFBFBD>j<EFBFBD><6A><EFBFBD>[ID
*/
HWND TwrButton::create(HWND parent, HMENU id)
{
hWnd = CreateWindow(
_T("BUTTON"),
title.c_str(),
WS_CHILD|WS_VISIBLE|BS_MULTILINE|BS_CENTER|WS_TABSTOP,
left, // X
top, // Y
width, // Width
height, // Height
parent, // Parent
id,
hInst,
NULL);
return hWnd;
}

View File

@@ -1,13 +0,0 @@
#ifndef TWRBUTTON_H
#define TWRBUTTON_H
#include "TwrWnd.h"
class TwrButton : public TwrWnd {
public:
TwrButton();
HWND create(HMENU id);
HWND create(HWND parent, HMENU id);
};
#endif

View File

@@ -1,3 +1,7 @@
/*
noMeiryoUI (C) 2005,2012,2013 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
#include "stdafx.h"
#include "AppliBase.h"
#include "TwrCheckbox.h"

View File

@@ -1,3 +1,7 @@
/*
noMeiryoUI (C) 2005,2012,2013 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
#ifndef TWRCHECKBOX_H
#define TWRCHECHBOX_H

View File

@@ -1,3 +1,7 @@
/*
noMeiryoUI (C) 2005,2012,2013 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
#include "stdafx.h"
#include "AppliBase.h"
#include "TwrCombobox.h"
@@ -91,6 +95,21 @@ int TwrCombobox::getSelectedIndex(void)
}
}
/**
* <20>v<EFBFBD>f<EFBFBD>̐<EFBFBD><CC90><EFBFBD><EFBFBD><EFBFBD><E693BE><EFBFBD>܂<EFBFBD><DC82>B
*
* @return -1:<3A>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482>Ȃ<EFBFBD> -1<>ȊO:<3A>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
int TwrCombobox::getCount(void)
{
LRESULT result = SendMessage(hWnd, CB_GETCOUNT, 0, 0);
if (result == CB_ERR) {
return -1;
} else {
return (int)result;
}
}
/**
* <20>R<EFBFBD><52><EFBFBD>{<7B>{<7B>b<EFBFBD>N<EFBFBD>X<EFBFBD><58><EFBFBD>N<EFBFBD><4E><EFBFBD>A<EFBFBD><41><EFBFBD>܂<EFBFBD><DC82>B
*/
@@ -138,3 +157,28 @@ tstring TwrCombobox::getSelectedText(void)
return ret;
}
/**
* <20>w<EFBFBD><EFBFBD><E882B5><EFBFBD>ʒu<CA92>̕<EFBFBD><CC95><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԃ<EFBFBD><D482>܂<EFBFBD><DC82>B
*
* @param index <20><EFBFBD><E693BE><EFBFBD><EFBFBD>ڂ̈ʒu
* @return <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĂȂ<C482><C882><EFBFBD>͋<EFBFBD>)
*/
tstring TwrCombobox::getItem(int index)
{
TCHAR *buf;
tstring ret = _T("");
LRESULT len;
len = SendMessage(hWnd, CB_GETLBTEXTLEN, index, 0);
try {
buf = new TCHAR[len + 1];
SendMessage(hWnd, CB_GETLBTEXT, index, (LPARAM)buf);
ret = buf;
delete []buf;
} catch (...) {
}
return ret;
}

View File

@@ -1,3 +1,7 @@
/*
noMeiryoUI (C) 2005,2012,2013 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
#ifndef TWRCOMBOBOX_H
#define TWRCOMBOBOX_H
@@ -14,6 +18,8 @@ public:
HWND create(HWND parent);
void addItem(const TCHAR *item);
int getSelectedIndex(void);
int getCount(void);
tstring getItem(int index);
void setStyle(int newStyle) {
style = newStyle;
}

View File

@@ -1,3 +1,7 @@
/*
noMeiryoUI (C) 2005,2012,2013 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
#include "TwrCore.h"
/** <20>C<EFBFBD><43><EFBFBD>X<EFBFBD>^<5E><><EFBFBD>X<EFBFBD>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68> */

View File

@@ -1,3 +1,7 @@
/*
noMeiryoUI (C) 2005,2012,2013 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
#ifndef CORE_H
#define CORE_H

View File

@@ -1,54 +0,0 @@
#include "stdafx.h"
#include "AppliBase.h"
#include "TwrGroupBox.h"
/**
* <20>R<EFBFBD><52><EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD>N<EFBFBD>^
*/
TwrGroupBox::TwrGroupBox() : TwrWnd()
{
}
/**
* <20>O<EFBFBD><4F><EFBFBD>[<5B>v<EFBFBD>{<7B>b<EFBFBD>N<EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EC90AC><EFBFBD>܂<EFBFBD><DC82>B
*/
HWND TwrGroupBox::create()
{
hWnd = CreateWindow(
_T("BUTTON"),
title.c_str(),
WS_CHILD|WS_VISIBLE|BS_GROUPBOX,
left, // X
top, // Y
width, // Width
height, // Height
GetDesktopWindow(), // Parent
(HMENU)IDC_STATIC,
hInst,
NULL);
return hWnd;
}
/**
* <20>O<EFBFBD><4F><EFBFBD>[<5B>v<EFBFBD>{<7B>b<EFBFBD>N<EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EC90AC><EFBFBD>܂<EFBFBD><DC82>B
*
* @param parent <20>e<EFBFBD>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68>
*/
HWND TwrGroupBox::create(HWND parent)
{
hWnd = CreateWindow(
_T("BUTTON"),
title.c_str(),
WS_CHILD|WS_VISIBLE|BS_GROUPBOX,
left, // X
top, // Y
width, // Width
height, // Height
parent, // Parent
(HMENU)IDC_STATIC,
hInst,
NULL);
return hWnd;
}

View File

@@ -1,13 +0,0 @@
#ifndef TWRGROUPBOX_H
#define TWRGROUPBOX_H
#include "TwrWnd.h"
class TwrGroupBox : public TwrWnd {
public:
TwrGroupBox();
HWND create();
HWND create(HWND parent);
};
#endif

View File

@@ -1,154 +0,0 @@
#include "stdafx.h"
#include "commctrl.h"
#include "AppliBase.h"
#include "TwrListView.h"
/**
* <20>R<EFBFBD><52><EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD>N<EFBFBD>^
*/
TwrListView::TwrListView() : TwrWnd()
{
}
/**
* <20>R<EFBFBD><52><EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD>N<EFBFBD>^
*
* @param <20>I<EFBFBD>u<EFBFBD>W<EFBFBD>F<EFBFBD>N<EFBFBD>g<EFBFBD>Ɍ<EFBFBD><C98C>ѕt<D195><74><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>̃n<CC83><6E><EFBFBD>h<EFBFBD><68>
*/
TwrListView::TwrListView(HWND newHwnd) : TwrWnd()
{
hWnd = newHwnd;
}
/**
* <20><><EFBFBD>X<EFBFBD>g<EFBFBD>r<EFBFBD><72><EFBFBD>[<5B><><EFBFBD><EFBFBD><EC90AC><EFBFBD>܂<EFBFBD><DC82>B
*
* @return <20><EFBFBD><EC90AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>X<EFBFBD>g<EFBFBD>r<EFBFBD><72><EFBFBD>[<5B>̃E<CC83>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68>
*/
HWND TwrListView::create(void)
{
hWnd = CreateWindowEx(
WS_EX_CLIENTEDGE,
_T("LISTVIEW"),
NULL,
WS_CHILD|WS_VISIBLE|LBS_NOINTEGRALHEIGHT|WS_TABSTOP,
left, // X
top, // Y
width, // Width
height, // Height
GetDesktopWindow(), // Parent
NULL,
hInst,
NULL);
return hWnd;
}
/**
* <20><><EFBFBD>X<EFBFBD>g<EFBFBD>r<EFBFBD><72><EFBFBD>[<5B>ɗv<C997>f<EFBFBD><66><EFBFBD>}<7D><><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
*
* @param index <20>}<7D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʒu
* @param item <20>lj<EFBFBD><C789><EFBFBD><EFBFBD><EFBFBD><E995B6><EFBFBD><EFBFBD>
*/
void TwrListView::insertItem(int index, TCHAR *item)
{
LVITEM itemInfo;
memset(&itemInfo, 0x00, sizeof(LVITEM));
itemInfo.mask = LVIF_TEXT;
itemInfo.iItem = index;
itemInfo.pszText = item;
itemInfo.cchTextMax = _tcslen(item) + 1;
SendMessage(hWnd, LVM_INSERTITEM , (WPARAM)0, (LPARAM)&itemInfo);
}
/**
* <20><><EFBFBD>X<EFBFBD>g<EFBFBD>r<EFBFBD><72><EFBFBD>[<5B>̃X<CC83>^<5E>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD>ݒ肵<DD92>܂<EFBFBD><DC82>B
*
* @param newStyle <20>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>X<EFBFBD>^<5E>C<EFBFBD><43>
* @return <20>ݒ茋<DD92><E88C8B>
*/
unsigned int TwrListView::SetExtendedStyle(unsigned int newStyle)
{
return SendMessage(hWnd, LVM_SETEXTENDEDLISTVIEWSTYLE, (WPARAM)0, (LPARAM)newStyle);
}
/**
* <20><><EFBFBD>X<EFBFBD>g<EFBFBD>r<EFBFBD><72><EFBFBD>[<5B>ɗ<EFBFBD><C997><EFBFBD><EFBFBD>}<7D><><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
*
* @param no <20><><EFBFBD>ԍ<EFBFBD>
* @param title <20><><EFBFBD>̃^<5E>C<EFBFBD>g<EFBFBD><67>
* @param nFormat <20>t<EFBFBD>H<EFBFBD>[<5B>}<7D>b<EFBFBD>g
* @param nWidth <20><><EFBFBD><EFBFBD>
* @param nSubItem <20><><EFBFBD>̃T<CC83>u<EFBFBD>A<EFBFBD>C<EFBFBD>e<EFBFBD><65><EFBFBD>̃C<CC83><43><EFBFBD>f<EFBFBD>b<EFBFBD>N<EFBFBD>X
* @return <20>}<7D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
int TwrListView::insertColumn(
int no,
TCHAR *title,
int nFormat,
int nWidth,
int nSubItem
)
{
LVCOLUMN columnInfo;
columnInfo.mask = LVCF_FMT | LVCF_WIDTH | LVCF_TEXT | LVCF_SUBITEM;
columnInfo.pszText = title;
columnInfo.fmt = nFormat;
columnInfo.cx = nWidth;
if (nSubItem > -1) {
columnInfo.iSubItem = nSubItem;
} else {
columnInfo.iSubItem = 0;
}
return SendMessage(hWnd, LVM_INSERTCOLUMN, (WPARAM)no, (LPARAM)(&columnInfo));
}
/**
* <20><><EFBFBD>X<EFBFBD>g<EFBFBD>r<EFBFBD><72><EFBFBD>[<5B>̃`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD>Ԃ<EFBFBD><D482>ύX<CF8D><58><EFBFBD>܂<EFBFBD><DC82>B
*
* @param index <20>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD>Ԃ<EFBFBD><D482>ύX<CF8D><58><EFBFBD><EFBFBD><EFBFBD>s
* @param checked true:<3A>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD> false:<3A>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482>Ȃ<EFBFBD>
*/
void TwrListView::checkItem(int index, bool checked)
{
ListView_SetCheckState(hWnd, index, (checked ? TRUE : FALSE));
}
/**
* <20><><EFBFBD>X<EFBFBD>g<EFBFBD>r<EFBFBD><72><EFBFBD>[<5B>̍s<CC8D><73><EFBFBD>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
*
* @param index <20>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s
*/
void TwrListView::selectItem(int index)
{
LVITEM itemInfo;
itemInfo.mask = LVIF_STATE;
itemInfo.iItem = index;
itemInfo.state = LVIS_SELECTED ;
itemInfo.stateMask = LVIS_SELECTED ;
SendMessage(hWnd, LVM_SETITEM, (WPARAM)0, (LPARAM)(&itemInfo));
}
/**
* <20><><EFBFBD>X<EFBFBD>g<EFBFBD>r<EFBFBD><72><EFBFBD>[<5B>̍s<CC8D>̃`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD>Ԃ<EFBFBD><D482><EFBFBD><E693BE><EFBFBD>܂<EFBFBD><DC82>B
*
* @param index <20>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD>Ԃ<EFBFBD><D482><EFBFBD><E693BE><EFBFBD><EFBFBD><EFBFBD>s
* @return true:<3A>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD> false:<3A>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482>Ȃ<EFBFBD>
*/
bool TwrListView::isChecked(int index)
{
BOOL state;
state = ListView_GetCheckState(hWnd, index);
return (state ? true : false);
}

View File

@@ -1,28 +0,0 @@
#ifndef TWRLISTVIEW_H
#define TWRLISTVIEW_H
#include "commctrl.h"
#include "TwrWnd.h"
class TwrListView : public TwrWnd {
public:
TwrListView();
TwrListView(HWND newHwnd);
HWND create(void);
void insertItem(int index, TCHAR *item);
unsigned int SetExtendedStyle(unsigned int newStyle);
int insertColumn(
int no,
TCHAR *title,
int nFormat = LVCFMT_LEFT,
int nWidth = -1,
int nSubItem = -1
);
void checkItem(int index, bool checked);
void selectItem(int index);
bool isChecked(int index);
};
#endif

View File

@@ -1,100 +0,0 @@
#include "stdafx.h"
#include "AppliBase.h"
#include "TwrListbox.h"
/**
* <20>R<EFBFBD><52><EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD>N<EFBFBD>^
*/
TwrListbox::TwrListbox() : TwrWnd()
{
}
/**
* <20>R<EFBFBD><52><EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD>N<EFBFBD>^
*
* @param <20>I<EFBFBD>u<EFBFBD>W<EFBFBD>F<EFBFBD>N<EFBFBD>g<EFBFBD>Ɍ<EFBFBD><C98C>ѕt<D195><74><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>̃n<CC83><6E><EFBFBD>h<EFBFBD><68>
*/
TwrListbox::TwrListbox(HWND newHwnd) : TwrWnd()
{
hWnd = newHwnd;
}
/**
* <20><><EFBFBD>X<EFBFBD>g<EFBFBD>{<7B>b<EFBFBD>N<EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EC90AC><EFBFBD>܂<EFBFBD><DC82>B
*/
HWND TwrListbox::create(void)
{
hWnd = CreateWindowEx(
WS_EX_CLIENTEDGE,
_T("LISTBOX"),
NULL,
WS_CHILD|WS_VISIBLE|LBS_NOINTEGRALHEIGHT|WS_TABSTOP,
left, // X
top, // Y
width, // Width
height, // Height
GetDesktopWindow(), // Parent
NULL,
hInst,
NULL);
return hWnd;
}
/**
* <20><><EFBFBD>X<EFBFBD>g<EFBFBD>{<7B>b<EFBFBD>N<EFBFBD>X<EFBFBD>ɗv<C997>f<EFBFBD><66><EFBFBD>lj<EFBFBD><C789><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
*
* @param item <20>lj<EFBFBD><C789><EFBFBD><EFBFBD><EFBFBD><E995B6><EFBFBD><EFBFBD>
*/
void TwrListbox::addItem(TCHAR *item)
{
SendMessage(hWnd, LB_ADDSTRING, 0, (LPARAM)item);
}
/**
* <20>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD>v<EFBFBD>f<EFBFBD>̈ʒu<CA92><75><EFBFBD><EFBFBD><E693BE><EFBFBD>܂<EFBFBD><DC82>B
*
* @return -1:<3A>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482>Ȃ<EFBFBD> -1<>ȊO:<3A>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
int TwrListbox::getSelectedIndex(void)
{
LRESULT result = SendMessage(hWnd, LB_GETCURSEL, 0, 0);
if (result == LB_ERR) {
return -1;
} else {
return (int)result;
}
}
/**
* <20><><EFBFBD>X<EFBFBD>g<EFBFBD>{<7B>b<EFBFBD>N<EFBFBD>X<EFBFBD>ɗv<C997>f<EFBFBD><66><EFBFBD>}<7D><><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
*
* @param index <20>}<7D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʒu
* @param item <20>lj<EFBFBD><C789><EFBFBD><EFBFBD><EFBFBD><E995B6><EFBFBD><EFBFBD>
*/
void TwrListbox::insertItem(int index, TCHAR *item)
{
SendMessage(hWnd, LB_INSERTSTRING , (WPARAM)index, (LPARAM)item);
}
/**
* <20><><EFBFBD>X<EFBFBD>g<EFBFBD>{<7B>b<EFBFBD>N<EFBFBD>X<EFBFBD>̗v<CC97>f<EFBFBD><66><EFBFBD><EFBFBD><ED8F9C><EFBFBD>܂<EFBFBD><DC82>B
*
* @param index <20><EFBFBD><ED8F9C><EFBFBD><EFBFBD><EFBFBD>v<EFBFBD>f<EFBFBD>̈ʒu
*/
void TwrListbox::removeItem(int index)
{
SendMessage(hWnd, LB_DELETESTRING , (WPARAM)index, (LPARAM)0);
}
/**
* <20><><EFBFBD>X<EFBFBD>g<EFBFBD>{<7B>b<EFBFBD>N<EFBFBD>X<EFBFBD>̗v<CC97>f<EFBFBD><66><EFBFBD>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
*
* @param index <20>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>v<EFBFBD>f<EFBFBD>̈ʒu
*/
void TwrListbox::selectItem(int index)
{
SendMessage(hWnd, LB_SETCURSEL , (WPARAM)index, (LPARAM)0);
}

View File

@@ -1,19 +0,0 @@
#ifndef TWRLISTBOX_H
#define TWRLISTBOX_H
#include "TwrWnd.h"
class TwrListbox : public TwrWnd {
public:
TwrListbox();
TwrListbox(HWND newHwnd);
HWND create(void);
void addItem(TCHAR *item);
void insertItem(int index, TCHAR *item);
void removeItem(int index);
void selectItem(int index);
int getSelectedIndex(void);
};
#endif

View File

@@ -1,3 +1,7 @@
/*
noMeiryoUI (C) 2005,2012,2013 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
#include <string.h>
#include <windows.h>
@@ -62,4 +66,30 @@ bool TwrMenu::isChecked(int item)
} else {
return false;
}
}
}
/**
* <20><><EFBFBD>j<EFBFBD><6A><EFBFBD>[<5B>̗L<CC97><4C><EFBFBD><EFBFBD><EFBFBD>Ԃ<EFBFBD><D482>ݒ肷<DD92><E882B7><EFBFBD>B
*
* @param id <20><><EFBFBD>j<EFBFBD><6A><EFBFBD>[ID
* @param true:<3A>L<EFBFBD><4C><EFBFBD>ɂ<EFBFBD><C982><EFBFBD> false:<3A>L<EFBFBD><4C><EFBFBD>ɂ<EFBFBD><C982>Ȃ<EFBFBD>
*/
void TwrMenu::setEnabled(int id, bool enabled)
{
MENUITEMINFO info;
memset(&info, 0, sizeof(MENUITEMINFO));
info.cbSize = sizeof(MENUITEMINFO);
info.fMask = MIIM_STATE;
GetMenuItemInfo(menuHandle, id, FALSE, &info);
if (enabled) {
if (info.fState & MFS_ENABLED) {
info.fState ^= MFS_ENABLED;
}
} else {
info.fState |= MFS_DISABLED;
}
SetMenuItemInfo(menuHandle, id, FALSE, &info);
}

View File

@@ -1,3 +1,7 @@
/*
noMeiryoUI (C) 2005,2012,2013 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
#ifndef TWRMENU_H
#define TWRMENU_H
@@ -8,6 +12,8 @@ public:
TwrMenu(HWND wnd);
void CheckMenuItem(int id,bool checked);
bool isChecked(int item);
void setEnabled(int id, bool enabled);
};

View File

@@ -1,61 +0,0 @@
#include <windows.h>
#include "AppliBase.h"
#include "TwrProgress.h"
/**
* <20>R<EFBFBD><52><EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD>N<EFBFBD>^
*/
TwrProgress::TwrProgress() : TwrWnd()
{
}
/**
* <20>R<EFBFBD><52><EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD>N<EFBFBD>^
*
* @param newHwnd <20>I<EFBFBD>u<EFBFBD>W<EFBFBD>F<EFBFBD>N<EFBFBD>g<EFBFBD>Ɍ<EFBFBD><C98C>ѕt<D195><74><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68>
*/
TwrProgress::TwrProgress(HWND newHwnd) : TwrWnd()
{
hWnd = newHwnd;
}
/**
* <20>v<EFBFBD><76><EFBFBD>O<EFBFBD><4F><EFBFBD>X<EFBFBD>o<EFBFBD>[<5B>͈̔͂<CD88><CD82>ݒ肷<DD92><E882B7><EFBFBD>B
*
* @param min <20>ŏ<EFBFBD><C58F>l
* @param max <20>ő<EFBFBD><C591>l
*/
void TwrProgress::setRange(unsigned int min, unsigned int max)
{
::SendMessage(hWnd, PBM_SETRANGE, 0, (LPARAM)MAKELPARAM(min, max));
}
/**
* <20>v<EFBFBD><76><EFBFBD>O<EFBFBD><4F><EFBFBD>X<EFBFBD>o<EFBFBD>[<5B>̐i<CC90>ޕ<EFBFBD><DE95><EFBFBD><EFBFBD>ݒ肷<DD92><E882B7><EFBFBD>B
*
* @param step <20>i<EFBFBD>ޕ<EFBFBD>
*/
void TwrProgress::setStep(int step)
{
::SendMessage(hWnd, PBM_SETSTEP, (WPARAM)step, (LPARAM)0);
}
/**
* <20>v<EFBFBD><76><EFBFBD>O<EFBFBD><4F><EFBFBD>X<EFBFBD>o<EFBFBD>[<5B>̈ʒu<CA92><75><EFBFBD>ݒ肷<DD92><E882B7><EFBFBD>B
*
* @param pos <20>ʒu
*/
void TwrProgress::setPos(int pos)
{
::SendMessage(hWnd, PBM_SETPOS, (WPARAM)pos, (LPARAM)0);
}
/**
* <20>v<EFBFBD><76><EFBFBD>O<EFBFBD><4F><EFBFBD>X<EFBFBD>o<EFBFBD>[<5B>̒l<CC92><6C><EFBFBD>i<EFBFBD>߂<EFBFBD><DF82>B
*/
void TwrProgress::stepIt(void)
{
::SendMessage(hWnd, PBM_STEPIT, (WPARAM)0, (LPARAM)0);
}

View File

@@ -1,19 +0,0 @@
#ifndef TWRPROGRESS_H
#define TWRPROGRESS_H
#include <commctrl.h>
#include "TwrWnd.h"
class TwrProgress : public TwrWnd {
public:
TwrProgress();
TwrProgress(HWND newHwnd);
void setRange(unsigned int min, unsigned int max);
void setStep(int step);
void setPos(int pos);
void stepIt(void);
};
#endif

View File

@@ -1,104 +0,0 @@
#include "stdafx.h"
#include <string.h>
#include "CommCtrl.h"
#include "AppliBase.h"
#include "TwrTab.h"
/**
* <20>R<EFBFBD><52><EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD>N<EFBFBD>^
*/
TwrTab::TwrTab() : TwrWnd()
{
}
/**
* <20>^<5E>u<EFBFBD>R<EFBFBD><52><EFBFBD>g<EFBFBD><67><EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EC90AC><EFBFBD>܂<EFBFBD><DC82>B
*
* @return <20><EFBFBD><EC90AC><EFBFBD><EFBFBD><EFBFBD>^<5E>u<EFBFBD>R<EFBFBD><52><EFBFBD>g<EFBFBD><67><EFBFBD>[<5B><><EFBFBD>̃E<CC83>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68>
*/
HWND TwrTab::create()
{
hWnd = CreateWindowEx(
WS_EX_LEFT,
WC_TABCONTROL,
title.c_str(),
WS_CHILD|WS_VISIBLE,
left, // X
top, // Y
width, // Width
height, // Height
GetDesktopWindow(), // Parent
(HMENU)IDC_STATIC,
hInst,
NULL);
return hWnd;
}
/**
* <20>^<5E>u<EFBFBD>R<EFBFBD><52><EFBFBD>g<EFBFBD><67><EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EC90AC><EFBFBD>܂<EFBFBD><DC82>B
*
* @param parent <20>e<EFBFBD>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68>
* @return <20><EFBFBD><EC90AC><EFBFBD><EFBFBD><EFBFBD>^<5E>u<EFBFBD>R<EFBFBD><52><EFBFBD>g<EFBFBD><67><EFBFBD>[<5B><><EFBFBD>̃E<CC83>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68>
*/
HWND TwrTab::create(HWND parent)
{
hWnd = CreateWindowEx(
WS_EX_LEFT,
WC_TABCONTROL,
title.c_str(),
WS_CHILD|WS_VISIBLE,
left, // X
top, // Y
width, // Width
height, // Height
parent, // Parent
(HMENU)IDC_STATIC,
hInst,
NULL);
return hWnd;
}
/**
* <20>^<5E>u<EFBFBD>R<EFBFBD><52><EFBFBD>g<EFBFBD><67><EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD>lj<EFBFBD><C789><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
*
* @param title <20>^<5E>u<EFBFBD>̃^<5E>C<EFBFBD>g<EFBFBD><67>
*/
void TwrTab::add(TCHAR *title)
{
TCITEM item;
memset(&item, 0, sizeof(TCITEM));
item.mask = TCIF_TEXT;
item.pszText = title;
item.cchTextMax = (int)((_tcslen(title) + 1) * sizeof(TCHAR));
INT_PTR count = SendMessage(hWnd, TCM_GETITEMCOUNT, 0 ,0);
::SendMessage(hWnd, TCM_INSERTITEM, (WPARAM)count, (LPARAM)&item);
}
/**
* <20>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD>^<5E>u<EFBFBD>̈ʒu<CA92><75><EFBFBD>Ԃ<EFBFBD><D482>܂<EFBFBD><DC82>B
*
* @return > -1:<3A>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD>^<5E>u<EFBFBD>̈ʒu -1:<3A>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482>Ȃ<EFBFBD>
*/
int TwrTab::getSelectedIndex(void)
{
int count = (int)SendMessage(hWnd, TCM_GETCURSEL, 0, 0);
return count;
}
/**
* <20>^<5E>u<EFBFBD><75><EFBFBD>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
*
* @param index <20>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>^<5E>u<EFBFBD>̈ʒu
*/
void TwrTab::select(int index)
{
SendMessage(hWnd, TCM_SETCURSEL, (WPARAM)index, 0);
}

View File

@@ -1,16 +0,0 @@
#ifndef TWRTAB_H
#define TWRTAB_H
#include "TwrWnd.h"
class TwrTab : public TwrWnd {
public:
TwrTab();
HWND create();
HWND create(HWND parent);
void add(TCHAR *title);
int getSelectedIndex(void);
void select(int index);
};
#endif

View File

@@ -1,57 +0,0 @@
#include "stdafx.h"
#include "AppliBase.h"
#include "TwrText.h"
/**
* <20>R<EFBFBD><52><EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD>N<EFBFBD>^
*/
TwrText::TwrText() : TwrWnd()
{
}
/**
* <20>X<EFBFBD>^<5E>e<EFBFBD>B<EFBFBD>b<EFBFBD>N<EFBFBD>e<EFBFBD>L<EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EC90AC><EFBFBD>܂<EFBFBD><DC82>B
*
* @return <20><EFBFBD><EC90AC><EFBFBD><EFBFBD><EFBFBD>X<EFBFBD>^<5E>e<EFBFBD>B<EFBFBD>b<EFBFBD>N<EFBFBD>e<EFBFBD>L<EFBFBD>X<EFBFBD>g<EFBFBD>̃E<CC83>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68>
*/
HWND TwrText::create()
{
hWnd = CreateWindow(
_T("STATIC"),
title.c_str(),
WS_CHILD | WS_VISIBLE,
left, // X
top, // Y
width, // Width
height, // Height
GetDesktopWindow(), // Parent
(HMENU)IDC_STATIC,
hInst,
NULL);
return hWnd;
}
/**
* <20>X<EFBFBD>^<5E>e<EFBFBD>B<EFBFBD>b<EFBFBD>N<EFBFBD>e<EFBFBD>L<EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EC90AC><EFBFBD>܂<EFBFBD><DC82>B
*
* @param parent <20>e<EFBFBD>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>̃n<CC83><6E><EFBFBD>h<EFBFBD><68>
* @return <20><EFBFBD><EC90AC><EFBFBD><EFBFBD><EFBFBD>X<EFBFBD>^<5E>e<EFBFBD>B<EFBFBD>b<EFBFBD>N<EFBFBD>e<EFBFBD>L<EFBFBD>X<EFBFBD>g<EFBFBD>̃E<CC83>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68>
*/
HWND TwrText::create(HWND parent)
{
hWnd = CreateWindow(
_T("STATIC"),
title.c_str(),
WS_CHILD | WS_VISIBLE,
left, // X
top, // Y
width, // Width
height, // Height
parent, // Parent
(HMENU)IDC_STATIC,
hInst,
NULL);
return hWnd;
}

View File

@@ -1,13 +0,0 @@
#ifndef TWRTEXT_H
#define TWRTEXT_H
#include "TwrWnd.h"
class TwrText : public TwrWnd {
public:
TwrText();
HWND create();
HWND create(HWND parent);
};
#endif

View File

@@ -1,3 +1,7 @@
/*
noMeiryoUI (C) 2005,2012,2013 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
#include "stdafx.h"
#include "TwrWnd.h"

View File

@@ -1,3 +1,7 @@
/*
noMeiryoUI (C) 2005,2012,2013 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
#ifndef TWRWND_H
#define TWRWND_H

View File

@@ -1,246 +0,0 @@
// AppliBase.cpp : <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>̃G<CC83><47><EFBFBD>g<EFBFBD><67> <20>|<7C>C<EFBFBD><43><EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD>`<60><><EFBFBD>܂<EFBFBD><DC82>B
//
#include "stdafx.h"
#include "commctrl.h"
#include "TwrCore.h"
#include "WindowAppliBase.h"
#include "ModelessDialog.h"
// <20>O<EFBFBD><4F><EFBFBD>[<5B>o<EFBFBD><6F><EFBFBD>ϐ<EFBFBD>:
TCHAR szTitle[MAX_LOADSTRING]; // <20>^<5E>C<EFBFBD>g<EFBFBD><67> <20>o<EFBFBD>[<5B>̃e<CC83>L<EFBFBD>X<EFBFBD>g
TCHAR szWindowClass[MAX_LOADSTRING]; // <20><><EFBFBD>C<EFBFBD><43> <20>E<EFBFBD>B<EFBFBD><42><EFBFBD>h<EFBFBD>E <20>N<EFBFBD><4E><EFBFBD>X<EFBFBD><58>
BaseForm *baseForm;
// <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>ŗL<C597>̃O<CC83><4F><EFBFBD>[<5B>o<EFBFBD><6F><EFBFBD>ϐ<EFBFBD>
WindowAppliBase *appObj;
extern void initModelessCallback(void);
// <20><><EFBFBD>̃R<CC83>[<5B>h <20><><EFBFBD>W<EFBFBD><57><EFBFBD>[<5B><><EFBFBD>Ɋ܂܂<DC82><DC82><EFBFBD><EFBFBD>֐<EFBFBD><D690>̐錾<CC90><E98CBE><EFBFBD>]<5D><><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD>:
int runApplication(
HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPTSTR lpCmdLine,
int nCmdShow);
BOOL InitInstance(HINSTANCE, int);
INT_PTR CALLBACK About(HWND, UINT, WPARAM, LPARAM);
bool handleDialogMessage(LPMSG lpMsg);
/**
* <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD>[<5B>`<60><>
*
* @param hInstance <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>̃C<CC83><43><EFBFBD>X<EFBFBD>^<5E><><EFBFBD>X<EFBFBD>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68>
* @param hPrevInstance <20><><EFBFBD>g<EFBFBD>p
* @param lpCmdLine <20>R<EFBFBD>}<7D><><EFBFBD>h<EFBFBD><68><EFBFBD>C<EFBFBD><43>
* @param nCmdShow <20>\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @return <20>v<EFBFBD><76><EFBFBD>O<EFBFBD><4F><EFBFBD><EFBFBD><EFBFBD>I<EFBFBD><49><EFBFBD>R<EFBFBD>[<5B>h
*/
int APIENTRY _tWinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPTSTR lpCmdLine,
int nCmdShow)
{
INITCOMMONCONTROLSEX iccx;
iccx.dwSize = sizeof(INITCOMMONCONTROLSEX);
iccx.dwICC = ICC_TAB_CLASSES;
if (!InitCommonControlsEx(&iccx)) {
return FALSE;
}
initModelessDialog();
initModelessCallback();
// <20><><EFBFBD><EFBFBD><EFBFBD>ŃA<C583>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>N<EFBFBD><4E><EFBFBD>X<EFBFBD>̃C<CC83><43><EFBFBD>X<EFBFBD>^<5E><><EFBFBD>X<EFBFBD><58><EFBFBD>ݒ肵<DD92>܂<EFBFBD><DC82>B
appObj = createAppli();
baseForm = appObj->createBaseForm();
// <20>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>\<5C><><EFBFBD>O<EFBFBD>̃A<CC83>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>̏<EFBFBD><CC8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD>B
appObj->OnAppliStart(lpCmdLine);
int result = runApplication(hInstance, hPrevInstance, lpCmdLine, nCmdShow);
// <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>̌<EFBFBD><CC8C>n<EFBFBD><6E><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD>B
appObj->OnAppliEnd();
delete appObj;
return result;
}
/**
* <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>J<EFBFBD>n
*
* @param hInstance <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>̃C<CC83><43><EFBFBD>X<EFBFBD>^<5E><><EFBFBD>X<EFBFBD>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68>
* @param hPrevInstance <20><><EFBFBD>g<EFBFBD>p
* @param lpCmdLine <20>R<EFBFBD>}<7D><><EFBFBD>h<EFBFBD><68><EFBFBD>C<EFBFBD><43>
* @param nCmdShow <20>\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @return <20>v<EFBFBD><76><EFBFBD>O<EFBFBD><4F><EFBFBD><EFBFBD><EFBFBD>I<EFBFBD><49><EFBFBD>R<EFBFBD>[<5B>h
*/
int runApplication(
HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPTSTR lpCmdLine,
int nCmdShow)
{
MSG msg;
HACCEL hAccelTable;
// <20>O<EFBFBD><4F><EFBFBD>[<5B>o<EFBFBD><6F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482>܂<EFBFBD><DC82>B
LoadString(hInstance, IDS_APP_TITLE, szTitle, MAX_LOADSTRING);
LoadString(hInstance, IDS_APP_CLASS, szWindowClass, MAX_LOADSTRING);
MyRegisterClass(hInstance);
// <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>̏<EFBFBD><CC8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD>܂<EFBFBD>:
if (!InitInstance (hInstance, nCmdShow))
{
return FALSE;
}
hAccelTable = LoadAccelerators(hInstance, MAKEINTRESOURCE(IDC_APP_ACCEL));
doEvents();
// <20>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɍs<C98D><73><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD>B
appObj->OnWindowShow();
// <20><><EFBFBD>C<EFBFBD><43> <20><><EFBFBD>b<EFBFBD>Z<EFBFBD>[<5B>W <20><><EFBFBD>[<5B>v:
while (GetMessage(&msg, NULL, 0, 0))
{
if (handleDialogMessage(&msg)) {
// <20><><EFBFBD>b<EFBFBD>Z<EFBFBD>[<5B>W<EFBFBD><57><EFBFBD><EFBFBD><EFBFBD>[<5B>h<EFBFBD><68><EFBFBD>X<EFBFBD>_<EFBFBD>C<EFBFBD>A<EFBFBD><41><EFBFBD>O<EFBFBD>̂<EFBFBD><CC82>̂<EFBFBD><CC82><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EA8D87>
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>B
continue;
}
if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}
return (int) msg.wParam;
}
//
// <20>֐<EFBFBD>: InitInstance(HINSTANCE, int)
//
// <20>ړI: <20>C<EFBFBD><43><EFBFBD>X<EFBFBD>^<5E><><EFBFBD>X <20>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD>ۑ<EFBFBD><DB91><EFBFBD><EFBFBD>āA<C481><41><EFBFBD>C<EFBFBD><43> <20>E<EFBFBD>B<EFBFBD><42><EFBFBD>h<EFBFBD>E<EFBFBD><45><EFBFBD><EFBFBD><EC90AC><EFBFBD>܂<EFBFBD><DC82>B
//
// <20>R<EFBFBD><52><EFBFBD><EFBFBD><EFBFBD>g:
//
// <20><><EFBFBD>̊֐<CC8A><D690>ŁA<C581>O<EFBFBD><4F><EFBFBD>[<5B>o<EFBFBD><6F><EFBFBD>ϐ<EFBFBD><CF90>ŃC<C583><43><EFBFBD>X<EFBFBD>^<5E><><EFBFBD>X <20>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD>ۑ<EFBFBD><DB91><EFBFBD><EFBFBD>A
// <20><><EFBFBD>C<EFBFBD><43> <20>v<EFBFBD><76><EFBFBD>O<EFBFBD><4F><EFBFBD><EFBFBD> <20>E<EFBFBD>B<EFBFBD><42><EFBFBD>h<EFBFBD>E<EFBFBD><45><EFBFBD><EFBFBD><EC90AC><EFBFBD><EFBFBD><EFBFBD>ѕ\<5C><><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
//
BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
{
HWND hWnd;
hInst = hInstance; // <20>O<EFBFBD><4F><EFBFBD>[<5B>o<EFBFBD><6F><EFBFBD>ϐ<EFBFBD><CF90>ɃC<C983><43><EFBFBD>X<EFBFBD>^<5E><><EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>i<EFBFBD>[<5B><><EFBFBD>܂<EFBFBD><DC82>B
baseForm->setClass(szWindowClass);
baseForm->setTitle(szTitle);
hWnd = baseForm->Create(hInstance);
if (!hWnd)
{
return FALSE;
}
baseForm->ShowWindow(nCmdShow);
baseForm->UpdateWindow();
return TRUE;
}
//
// <20>֐<EFBFBD>: WndProc(HWND, UINT, WPARAM, LPARAM)
//
// <20>ړI: <20><><EFBFBD>C<EFBFBD><43> <20>E<EFBFBD>B<EFBFBD><42><EFBFBD>h<EFBFBD>E<EFBFBD>̃<EFBFBD><CC83>b<EFBFBD>Z<EFBFBD>[<5B>W<EFBFBD><57><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
//
// WM_COMMAND - <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD> <20><><EFBFBD>j<EFBFBD><6A><EFBFBD>[<5B>̏<EFBFBD><CC8F><EFBFBD>
// WM_PAINT - <20><><EFBFBD>C<EFBFBD><43> <20>E<EFBFBD>B<EFBFBD><42><EFBFBD>h<EFBFBD>E<EFBFBD>̕`<60><>
// WM_DESTROY - <20><><EFBFBD>~<7E><><EFBFBD>b<EFBFBD>Z<EFBFBD>[<5B>W<EFBFBD><57><EFBFBD>\<5C><><EFBFBD><EFBFBD><EFBFBD>Ė߂<C496>
//
//
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
LRESULT lResult = baseForm->WndProc(hWnd, message, wParam, lParam);
return lResult;
}
/**
* Windows<77>̃C<CC83>x<EFBFBD><78><EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B
*
* @return <20>C<EFBFBD>x<EFBFBD><78><EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
int doEvents()
{
MSG msg;
// <20><><EFBFBD>b<EFBFBD>Z<EFBFBD>[<5B>W<EFBFBD>̏<EFBFBD><CC8F><EFBFBD>
while (::PeekMessage(&msg, NULL, 0, 0, PM_NOREMOVE)) {
BOOL bRet = GetMessage(&msg, NULL, 0, 0);
if (bRet > 0){
if (handleDialogMessage(&msg)) {
// <20><><EFBFBD>b<EFBFBD>Z<EFBFBD>[<5B>W<EFBFBD><57><EFBFBD><EFBFBD><EFBFBD>[<5B>h<EFBFBD><68><EFBFBD>X<EFBFBD>_<EFBFBD>C<EFBFBD>A<EFBFBD><41><EFBFBD>O<EFBFBD>̂<EFBFBD><CC82>̂<EFBFBD><CC82><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EA8D87>
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>B
continue;
} else {
::TranslateMessage(&msg);
::DispatchMessage (&msg);
}
} else {
break;
}
}
return 0;
}
/**
* <20>f<EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD>N<EFBFBD>^
*/
WindowAppliBase::~WindowAppliBase()
{
}
/**
* <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>N<EFBFBD><4E><EFBFBD>X<EFBFBD>̃C<CC83><43><EFBFBD>X<EFBFBD>^<5E><><EFBFBD>X<EFBFBD>𐶐<EFBFBD><F090B690><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
*
* @return <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>N<EFBFBD><4E><EFBFBD>X<EFBFBD>̃C<CC83><43><EFBFBD>X<EFBFBD>^<5E><><EFBFBD>X
*/
BaseForm *WindowAppliBase::createBaseForm()
{
return new BaseForm();
}
/**
* <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>̊J<CC8A>n<EFBFBD><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD>܂<EFBFBD><DC82>B
*
* @return <20>\<5C><>
*/
int WindowAppliBase::OnAppliStart(TCHAR *lpCmdLine)
{
// <20><><EFBFBD>̊֐<CC8A><D690><EFBFBD><EFBFBD>I<EFBFBD>[<5B>o<EFBFBD>[<5B><><EFBFBD>C<EFBFBD>h<EFBFBD><68><EFBFBD>ăA<C483>v<EFBFBD><76><EFBFBD>ŗL<C597>̏<EFBFBD><CC8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD>܂<EFBFBD><DC82>B
return 0;
}
/**
* <20>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD><45><EFBFBD>\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƃ<EFBFBD><C682>̏<EFBFBD><CC8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD>܂<EFBFBD><DC82>B
*
* @return <20>\<5C><>
*/
int WindowAppliBase::OnWindowShow()
{
// <20><><EFBFBD>̊֐<CC8A><D690><EFBFBD><EFBFBD>I<EFBFBD>[<5B>o<EFBFBD>[<5B><><EFBFBD>C<EFBFBD>h<EFBFBD><68><EFBFBD>āA<C481><41><EFBFBD><EFBFBD><EFBFBD>̕\<5C><><EFBFBD><EFBFBD><EFBFBD>̏<EFBFBD><CC8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD>܂<EFBFBD><DC82>B
return 0;
}
/**
* <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>̏I<CC8F><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD>܂<EFBFBD><DC82>B
*
* @return <20>\<5C><>
*/
int WindowAppliBase::OnAppliEnd()
{
// <20><><EFBFBD>̊֐<CC8A><D690><EFBFBD><EFBFBD>I<EFBFBD>[<5B>o<EFBFBD>[<5B><><EFBFBD>C<EFBFBD>h<EFBFBD><68><EFBFBD>ăA<C483>v<EFBFBD><76><EFBFBD>ŗL<C597>̌㏈<CC8C><E38F88><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD>܂<EFBFBD><DC82>B
return 0;
}

View File

@@ -1,33 +0,0 @@
#pragma once
#include <windows.h>
#include "TwrCore.h"
#include "BaseForm.h"
#include "../resource.h"
// <20>A<EFBFBD>v<EFBFBD><76><EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʒ<EFBFBD><CA92>`
void addModelessDialog(HWND dialog);
void delModelessDialog(HWND dialog);
int doEvents();
class WindowAppliBase : public BaseForm {
public:
virtual ~WindowAppliBase();
virtual BaseForm *createBaseForm();
virtual int OnAppliStart(TCHAR *lpCmdLine);
virtual int OnWindowShow();
virtual int OnAppliEnd();
};
// <20>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>A<EFBFBD>v<EFBFBD><76><EFBFBD><EFBFBD><EFBFBD>ʒ<EFBFBD><CA92>`
#define MAX_LOADSTRING 100
extern TCHAR szWindowClass[MAX_LOADSTRING]; // <20><><EFBFBD>C<EFBFBD><43> <20>E<EFBFBD>B<EFBFBD><42><EFBFBD>h<EFBFBD>E <20>N<EFBFBD><4E><EFBFBD>X<EFBFBD><58>
WindowAppliBase *createAppli();
ATOM MyRegisterClass(HINSTANCE hInstance);
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);

View File

@@ -1,3 +1,7 @@
/*
noMeiryoUI (C) 2005,2012-2015 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
// stdafx.h : <20>W<EFBFBD><57><EFBFBD>̃V<CC83>X<EFBFBD>e<EFBFBD><65> <20>C<EFBFBD><43><EFBFBD>N<EFBFBD><4E><EFBFBD>[<5B>h <20>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD>̃C<CC83><43><EFBFBD>N<EFBFBD><4E><EFBFBD>[<5B>h <20>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD>A<EFBFBD>܂<EFBFBD><DC82><EFBFBD>
// <20>Q<EFBFBD>Ɖ񐔂<C689><F1909482><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD>‚<EFBFBD><C282>܂<EFBFBD><DC82>ύX<CF8D><58><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>A<EFBFBD>v<EFBFBD><76><EFBFBD>W<EFBFBD>F<EFBFBD>N<EFBFBD>g<EFBFBD><67><EFBFBD>p<EFBFBD>̃C<CC83><43><EFBFBD>N<EFBFBD><4E><EFBFBD>[<5B>h <20>t<EFBFBD>@<40>C<EFBFBD><43>
// <20><><EFBFBD>L<EFBFBD>q<EFBFBD><71><EFBFBD>܂<EFBFBD><DC82>B

View File

@@ -1,3 +1,7 @@
/*
noMeiryoUI (C) 2005,2012,2013 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
#ifndef TSTRING
#define TSTRING

File diff suppressed because it is too large Load Diff

View File

@@ -1,26 +1,35 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
version="2.0.0.0"
processorArchitecture="X86"
name="TatsuhikoSyoji.noMeiryoUI.noMeiryoUI"
type="win32"
/>
<description>noMeiryoUI set system fonts on Windows 8.</description>
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
processorArchitecture="X86"
publicKeyToken="6595b64144ccf1df"
language="*"
/>
</dependentAssembly>
</dependency>
<compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
<assemblyIdentity
version="2.1.6.2"
processorArchitecture="X86"
name="TatsuhikoSyoji.noMeiryoUI.noMeiryoUI"
type="win32"
/>
<description>noMeiryoUI set system fonts on Windows 8.x/10</description>
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
processorArchitecture="X86"
publicKeyToken="6595b64144ccf1df"
language="*"
/>
</dependentAssembly>
</dependency>
<asmv3:application xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">
<asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">
<dpiAware>True</dpiAware>
</asmv3:windowsSettings>
</asmv3:application>
<compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
<application>
<!-- Windows 10 -->
<supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}"/>
<!-- Windows 8.1 -->
<supportedOS Id="{1f676c76-80e1-4239-95bb-83d0f6d0da78}"/>
<!--Windows 8-->
<supportedOS Id="{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}" />
<!--Windows 7-->
@@ -28,5 +37,5 @@
<!--Windows Vista-->
<supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}" />
</application>
</compatibility>
</compatibility>
</assembly>

View File

@@ -1,8 +1,12 @@
/*
noMeiryoUI (C) 2005,2012-2015 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
#ifndef MYAPPLI_H
#define MYAPPLI_H
#include "DialogAppliBase.h"
#include "TwrMenu.h"
class NoMeiryoUI : public DialogAppliBase {
private:
@@ -32,10 +36,31 @@ private:
LOGFONT iconFontAll;
bool noMeiryoUI;
TwrWnd *verInfo;
TwrMenu *appMenu;
void OnLoad();
BOOL startLoadFont(TCHAR *filename);
BOOL loadFont(TCHAR *filename, TCHAR *section, LOGFONT *font);
void OnSave();
BOOL startSaveFont(TCHAR *filename);
BOOL saveFont(TCHAR *filename, TCHAR *section, LOGFONT *font);
void selectFont(enum fontType type);
void updateDisplay(void);
INT_PTR OnBnClickedOk();
void OnBnClickedAll();
void OnSet8();
void OnSet10(void);
void SetWinVer();
int getDPI(void);
void setFont(
NONCLIENTMETRICS *fontMetrics,
LOGFONT *iconLogFont
);
void showHelp(void);
protected:
INT_PTR OnCommand(WPARAM wParam);

View File

@@ -18,13 +18,11 @@
#undef APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
// <20><><EFBFBD>{<7B><> resources
// <20><><EFBFBD>{<7B><> (<28><><EFBFBD>{) resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_JPN)
#ifdef _WIN32
LANGUAGE LANG_JAPANESE, SUBLANG_DEFAULT
#pragma code_page(932)
#endif //_WIN32
/////////////////////////////////////////////////////////////////////////////
//
@@ -41,7 +39,7 @@ IDI_SMALL ICON "noMeiryoUI.ico"
// Accelerator
//
IDC_NOMEIRYOUI ACCELERATORS
IDC_NOMEIRYOUI ACCELERATORS
BEGIN
"?", IDM_ABOUT, ASCII, ALT
"/", IDM_ABOUT, ASCII, ALT
@@ -56,34 +54,37 @@ END
IDD_MAIN_DIALOG DIALOGEX 0, 0, 307, 174
STYLE DS_SETFONT | DS_MODALFRAME | WS_MINIMIZEBOX | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Meiryo UI<55><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>炢!!"
MENU IDR_MENU1
FONT 10, "<22>l<EFBFBD>r <20>o<EFBFBD>S<EFBFBD>V<EFBFBD>b<EFBFBD>N", 400, 0, 0x80
BEGIN
LTEXT "Meiryo UI<55><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>炢!! Version 2.10",IDC_STATIC,7,7,125,8,SS_NOPREFIX
LTEXT "Copyright (C) Tatsu 2005,2012,2013",IDC_STATIC,139,7,132,8
LTEXT "<22><><EFBFBD>ׂẴt<CC83>H<EFBFBD><48><EFBFBD>g",IDC_STATIC,7,21,89,12
EDITTEXT IDC_EDIT_ALL,102,21,91,12,ES_AUTOHSCROLL | ES_READONLY
PUSHBUTTON "<22>I<EFBFBD><49>...",ID_SEL_ALL,197,20,50,14,WS_GROUP
PUSHBUTTON "<22><EFBFBD>ݒ<EFBFBD>",ID_SET_ALL,250,20,50,14,WS_GROUP
LTEXT "<22>^<5E>C<EFBFBD>g<EFBFBD><67><EFBFBD>o<EFBFBD>[",IDC_STATIC,7,37,89,12
EDITTEXT IDC_EDIT_TITLE,102,37,91,12,ES_AUTOHSCROLL | ES_READONLY
PUSHBUTTON "<22>I<EFBFBD><49>...",ID_SEL_TITLE,197,36,50,14,WS_GROUP
LTEXT "<22>A<EFBFBD>C<EFBFBD>R<EFBFBD><52>",IDC_STATIC,7,52,89,12
EDITTEXT IDC_EDIT_ICON,102,52,91,12,ES_AUTOHSCROLL | ES_READONLY
PUSHBUTTON "<22>I<EFBFBD><49>...",ID_SEL_ICON,197,51,50,14,WS_GROUP
LTEXT "<22>p<EFBFBD><70><EFBFBD>b<EFBFBD>g<EFBFBD>^<5E>C<EFBFBD>g<EFBFBD><67>",IDC_STATIC,7,67,89,12
EDITTEXT IDC_EDIT_PALETTE,102,67,91,12,ES_AUTOHSCROLL | ES_READONLY
PUSHBUTTON "<22>I<EFBFBD><49>...",ID_SEL_PALETTE,197,66,50,14,WS_GROUP
LTEXT "<22>q<EFBFBD><71><EFBFBD>g",IDC_STATIC,7,82,89,12
EDITTEXT IDC_EDIT_HINT,102,82,91,12,ES_AUTOHSCROLL | ES_READONLY
PUSHBUTTON "<22>I<EFBFBD><49>...",ID_SEL_HINT,197,81,50,14,WS_GROUP
LTEXT "<22><><EFBFBD>b<EFBFBD>Z<EFBFBD>[<5B>W<EFBFBD>{<7B>b<EFBFBD>N<EFBFBD>X",IDC_STATIC,7,97,89,12
EDITTEXT IDC_EDIT_MESSAGE,102,97,91,12,ES_AUTOHSCROLL | ES_READONLY
PUSHBUTTON "<22>I<EFBFBD><49>...",ID_SEL_MESSAGE,197,96,50,14,WS_GROUP
LTEXT "<22><><EFBFBD>j<EFBFBD><6A><EFBFBD>[/<2F>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",IDC_STATIC,7,112,89,12
EDITTEXT IDC_EDIT_MENU,102,112,91,12,ES_AUTOHSCROLL | ES_READONLY
PUSHBUTTON "<22>I<EFBFBD><49>...",ID_SEL_MENU,197,111,50,14,WS_GROUP
LTEXT "Meiryo UI<55><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>炢!! Version 2.16",IDC_STATIC,7,7,138,8,SS_NOPREFIX
RTEXT "Copyright (C) Tatsu 2005,2012-2015",IDC_STATIC,161,7,137,8
LTEXT "<22><><EFBFBD>ׂẴt<CC83>H<EFBFBD><48><EFBFBD>g",IDC_STATIC,7,37,89,12
EDITTEXT IDC_EDIT_ALL,102,37,91,12,ES_AUTOHSCROLL | ES_READONLY
PUSHBUTTON "<22>I<EFBFBD><49>...",ID_SEL_ALL,197,36,50,14,WS_GROUP
PUSHBUTTON "<22><EFBFBD>ݒ<EFBFBD>",ID_SET_ALL,250,36,50,14,WS_GROUP
LTEXT "<22>^<5E>C<EFBFBD>g<EFBFBD><67><EFBFBD>o<EFBFBD>[",IDC_STATIC,7,53,89,12
EDITTEXT IDC_EDIT_TITLE,102,53,91,12,ES_AUTOHSCROLL | ES_READONLY
PUSHBUTTON "<22>I<EFBFBD><49>...",ID_SEL_TITLE,197,52,50,14,WS_GROUP
LTEXT "<22>A<EFBFBD>C<EFBFBD>R<EFBFBD><52>",IDC_STATIC,7,68,89,12
EDITTEXT IDC_EDIT_ICON,102,68,91,12,ES_AUTOHSCROLL | ES_READONLY
PUSHBUTTON "<22>I<EFBFBD><49>...",ID_SEL_ICON,197,67,50,14,WS_GROUP
LTEXT "<22>p<EFBFBD><70><EFBFBD>b<EFBFBD>g<EFBFBD>^<5E>C<EFBFBD>g<EFBFBD><67>",IDC_STATIC,7,83,89,12
EDITTEXT IDC_EDIT_PALETTE,102,83,91,12,ES_AUTOHSCROLL | ES_READONLY
PUSHBUTTON "<22>I<EFBFBD><49>...",ID_SEL_PALETTE,197,82,50,14,WS_GROUP
LTEXT "<22>q<EFBFBD><71><EFBFBD>g",IDC_STATIC,7,98,89,12
EDITTEXT IDC_EDIT_HINT,102,98,91,12,ES_AUTOHSCROLL | ES_READONLY
PUSHBUTTON "<22>I<EFBFBD><49>...",ID_SEL_HINT,197,97,50,14,WS_GROUP
LTEXT "<22><><EFBFBD>b<EFBFBD>Z<EFBFBD>[<5B>W<EFBFBD>{<7B>b<EFBFBD>N<EFBFBD>X",IDC_STATIC,7,113,89,12
EDITTEXT IDC_EDIT_MESSAGE,102,113,91,12,ES_AUTOHSCROLL | ES_READONLY
PUSHBUTTON "<22>I<EFBFBD><49>...",ID_SEL_MESSAGE,197,112,50,14,WS_GROUP
LTEXT "<22><><EFBFBD>j<EFBFBD><6A><EFBFBD>[/<2F>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",IDC_STATIC,7,128,89,12
EDITTEXT IDC_EDIT_MENU,102,128,91,12,ES_AUTOHSCROLL | ES_READONLY
PUSHBUTTON "<22>I<EFBFBD><49>...",ID_SEL_MENU,197,127,50,14,WS_GROUP
DEFPUSHBUTTON "OK",IDOK,197,153,50,14,WS_GROUP
PUSHBUTTON "<22>L<EFBFBD><4C><EFBFBD><EFBFBD><EFBFBD>Z<EFBFBD><5A>",IDCANCEL,250,153,50,14,WS_GROUP
LTEXT "Windows Version:",IDC_STATIC,7,18,59,8,SS_NOPREFIX
LTEXT "",IDC_STATIC_VERNO,65,18,117,8
END
IDD_DIALOG_FONTSEL DIALOGEX 0, 0, 295, 164
@@ -112,7 +113,7 @@ END
//
#ifdef APSTUDIO_INVOKED
GUIDELINES DESIGNINFO
GUIDELINES DESIGNINFO
BEGIN
IDD_MAIN_DIALOG, DIALOG
BEGIN
@@ -170,8 +171,8 @@ END
//
VS_VERSION_INFO VERSIONINFO
FILEVERSION 2,1,0,0
PRODUCTVERSION 2,1,0,0
FILEVERSION 2,1,6,2
PRODUCTVERSION 2,1,6,2
FILEFLAGSMASK 0x17L
#ifdef _DEBUG
FILEFLAGS 0x1L
@@ -187,13 +188,13 @@ BEGIN
BLOCK "041104b0"
BEGIN
VALUE "CompanyName", "T.Syoji's Personal Development"
VALUE "FileDescription", "Meiryo UI<55><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>炢!! <20>v<EFBFBD><76><EFBFBD>O<EFBFBD><4F><EFBFBD><EFBFBD><EFBFBD>t<EFBFBD>@<40>C<EFBFBD><43>"
VALUE "FileVersion", "2, 1, 0, 0"
VALUE "FileDescription", "Meiryo UI<55><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>炢!!"
VALUE "FileVersion", "2.1.6.2"
VALUE "InternalName", "noMeiryo"
VALUE "LegalCopyright", "Copyright (C) Tatsuhiko Syoji 2005,2012,2013"
VALUE "OriginalFilename", "noMeiryo.exe"
VALUE "LegalCopyright", "Copyright (C) Tatsuhiko Syoji 2005,2012-2015"
VALUE "OriginalFilename", "noMeiryoUI.exe"
VALUE "ProductName", "Meiryo UI<55><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>炢!!"
VALUE "ProductVersion", "2, 1, 0, 0"
VALUE "ProductVersion", "2.1.6.2"
END
END
BLOCK "VarFileInfo"
@@ -210,18 +211,51 @@ END
IDR_RT_MANIFEST RT_MANIFEST "noMeiryoUI.exe.manifest"
/////////////////////////////////////////////////////////////////////////////
//
// Menu
//
IDR_MENU1 MENU
BEGIN
POPUP "<22>t<EFBFBD>@<40>C<EFBFBD><43>(&F)"
BEGIN
MENUITEM "<22>t<EFBFBD>H<EFBFBD><48><EFBFBD>g<EFBFBD>ݒ<EFBFBD><DD92><EFBFBD><EFBFBD>ǂݍ<C782><DD8D><EFBFBD>(&O)...", IDM_OPEN
MENUITEM "<22>t<EFBFBD>H<EFBFBD><48><EFBFBD>g<EFBFBD>ݒ<EFBFBD><DD92><EFBFBD><EFBFBD>ۑ<EFBFBD><DB91><EFBFBD><EFBFBD><EFBFBD>(&A)...", IDM_SAVE
MENUITEM SEPARATOR
MENUITEM "<22>t<EFBFBD>H<EFBFBD><48><EFBFBD>g<EFBFBD><67><EFBFBD>ݒ肵<DD92>ďI<C48F><49>(&S)", IDOK
MENUITEM "<22>I<EFBFBD><49>(&X)", IDM_EXIT
END
POPUP "<22>v<EFBFBD><76><EFBFBD>Z<EFBFBD>b<EFBFBD>g(&P)"
BEGIN
MENUITEM "Windows 8/8.1", IDM_SET_8
MENUITEM "Windows 10", IDM_SET_10
END
POPUP "<22>c<EFBFBD>[<5B><>(&T)"
BEGIN
MENUITEM "<22>ʃX<CA83><58><EFBFBD>b<EFBFBD>h<EFBFBD>Ńt<C583>H<EFBFBD><48><EFBFBD>g<EFBFBD><67><EFBFBD>ύX<CF8D><58><EFBFBD><EFBFBD>(&A)", IDM_ANOTHER
MENUITEM "<22>t<EFBFBD>H<EFBFBD><48><EFBFBD>g<EFBFBD>T<EFBFBD>C<EFBFBD>Y<EFBFBD><59>Windows 7<>Ɠ<EFBFBD><C693>l<EFBFBD>Ɉ<EFBFBD><C988><EFBFBD>(&7)", IDM_COMPAT7
END
POPUP "<22>w<EFBFBD><77><EFBFBD>v(&H)"
BEGIN
MENUITEM "<22>w<EFBFBD><77><EFBFBD>v<EFBFBD>̕\<5C><>(&C)", IDM_HELPTOPIC
MENUITEM "<22>o<EFBFBD>[<5B>W<EFBFBD><57><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&A)...", IDM_ABOUT
END
END
/////////////////////////////////////////////////////////////////////////////
//
// String Table
//
STRINGTABLE
STRINGTABLE
BEGIN
IDS_APP_TITLE "noMeiryoUI"
IDC_NOMEIRYOUI "NOMEIRYOUI"
END
#endif // <20><><EFBFBD>{<7B><> resources
#endif // <20><><EFBFBD>{<7B><> (<28><><EFBFBD>{) resources
/////////////////////////////////////////////////////////////////////////////

View File

@@ -1,16 +1,24 @@

Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "noMeiryoUI", "noMeiryoUI.vcproj", "{0F28EA7F-B997-4CBB-8BCA-96A013FCBE7D}"
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2013
VisualStudioVersion = 12.0.31101.0
MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "noMeiryoUI", "noMeiryoUI.vcxproj", "{0F28EA7F-B997-4CBB-8BCA-96A013FCBE7D}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug_2013|Win32 = Debug_2013|Win32
Debug|Win32 = Debug|Win32
Release_2013|Win32 = Release_2013|Win32
Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{0F28EA7F-B997-4CBB-8BCA-96A013FCBE7D}.Debug_2013|Win32.ActiveCfg = Debug_2013|Win32
{0F28EA7F-B997-4CBB-8BCA-96A013FCBE7D}.Debug_2013|Win32.Build.0 = Debug_2013|Win32
{0F28EA7F-B997-4CBB-8BCA-96A013FCBE7D}.Debug|Win32.ActiveCfg = Debug|Win32
{0F28EA7F-B997-4CBB-8BCA-96A013FCBE7D}.Debug|Win32.Build.0 = Debug|Win32
{0F28EA7F-B997-4CBB-8BCA-96A013FCBE7D}.Release_2013|Win32.ActiveCfg = Release_2013|Win32
{0F28EA7F-B997-4CBB-8BCA-96A013FCBE7D}.Release_2013|Win32.Build.0 = Release_2013|Win32
{0F28EA7F-B997-4CBB-8BCA-96A013FCBE7D}.Release|Win32.ActiveCfg = Release|Win32
{0F28EA7F-B997-4CBB-8BCA-96A013FCBE7D}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection

View File

@@ -207,6 +207,10 @@
/>
</FileConfiguration>
</File>
<File
RelativePath=".\util.cpp"
>
</File>
<Filter
Name="TWR"
>
@@ -222,6 +226,10 @@
RelativePath=".\TWR\ModelessDialog.cpp"
>
</File>
<File
RelativePath=".\TWR\NCFileDialog.cpp"
>
</File>
<File
RelativePath=".\TWR\TwrCheckbox.cpp"
>
@@ -234,6 +242,10 @@
RelativePath=".\TWR\TwrCore.cpp"
>
</File>
<File
RelativePath=".\TWR\TwrMenu.cpp"
>
</File>
<File
RelativePath=".\TWR\TwrWnd.cpp"
>
@@ -245,22 +257,10 @@
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
>
<File
RelativePath=".\TWR\BaseDialog.h"
>
</File>
<File
RelativePath=".\TWR\DialogAppliBase.h"
>
</File>
<File
RelativePath=".\FontSel.h"
>
</File>
<File
RelativePath=".\TWR\ModelessDialog.h"
>
</File>
<File
RelativePath=".\noMeiryoUI.h"
>
@@ -278,13 +278,61 @@
>
</File>
<File
RelativePath=".\TWR\TwrCore.h"
RelativePath=".\util.h"
>
</File>
<File
RelativePath=".\TWR\TwrWnd.h"
<Filter
Name="TWR"
>
</File>
<File
RelativePath=".\TWR\AppliBase.h"
>
</File>
<File
RelativePath=".\TWR\BaseDialog.h"
>
</File>
<File
RelativePath=".\TWR\DialogAppliBase.h"
>
</File>
<File
RelativePath=".\TWR\ModelessDialog.h"
>
</File>
<File
RelativePath=".\TWR\NCFileDialog.h"
>
</File>
<File
RelativePath=".\TWR\stdafx.h"
>
</File>
<File
RelativePath=".\TWR\tstring.h"
>
</File>
<File
RelativePath=".\TWR\TwrCheckbox.h"
>
</File>
<File
RelativePath=".\TWR\TwrCombobox.h"
>
</File>
<File
RelativePath=".\TWR\TwrCore.h"
>
</File>
<File
RelativePath=".\TWR\TwrMenu.h"
>
</File>
<File
RelativePath=".\TWR\TwrWnd.h"
>
</File>
</Filter>
</Filter>
<Filter
Name="<22><><EFBFBD>\<5C>[<5B>X <20>t<EFBFBD>@<40>C<EFBFBD><43>"

237
noMeiryoUI.vcxproj Normal file
View File

@@ -0,0 +1,237 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug_2013|Win32">
<Configuration>Debug_2013</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release_2013|Win32">
<Configuration>Release_2013</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{0F28EA7F-B997-4CBB-8BCA-96A013FCBE7D}</ProjectGuid>
<RootNamespace>noMeiryoUI</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>v90</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_2013|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>v120</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>v90</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_2013|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>v120</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_2013|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_2013|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>12.0.30501.0</_ProjectFileVersion>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<OutDir>$(SolutionDir)$(Configuration)\</OutDir>
<IntDir>$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_2013|Win32'">
<OutDir>$(SolutionDir)$(Configuration)\</OutDir>
<IntDir>$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<OutDir>$(SolutionDir)$(Configuration)\</OutDir>
<IntDir>$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_2013|Win32'">
<OutDir>$(SolutionDir)$(Configuration)\</OutDir>
<IntDir>$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>TWR;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<PrecompiledHeader />
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalOptions>/SAFESEH %(AdditionalOptions)</AdditionalOptions>
<AdditionalDependencies>comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<RandomizedBaseAddress>true</RandomizedBaseAddress>
<DataExecutionPrevention>true</DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_2013|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>TWR;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalOptions>/SAFESEH %(AdditionalOptions)</AdditionalOptions>
<AdditionalDependencies>comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<RandomizedBaseAddress>true</RandomizedBaseAddress>
<DataExecutionPrevention>true</DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<Optimization>MinSpace</Optimization>
<IntrinsicFunctions>true</IntrinsicFunctions>
<AdditionalIncludeDirectories>TWR;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeader />
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalOptions>/SAFESEH %(AdditionalOptions)</AdditionalOptions>
<AdditionalDependencies>comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<GenerateDebugInformation>true</GenerateDebugInformation>
<GenerateMapFile>true</GenerateMapFile>
<SubSystem>Windows</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_2013|Win32'">
<ClCompile>
<Optimization>MinSpace</Optimization>
<IntrinsicFunctions>true</IntrinsicFunctions>
<AdditionalIncludeDirectories>TWR;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalOptions>/SAFESEH %(AdditionalOptions)</AdditionalOptions>
<AdditionalDependencies>comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<GenerateDebugInformation>true</GenerateDebugInformation>
<GenerateMapFile>true</GenerateMapFile>
<SubSystem>Windows</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="FontSel.cpp" />
<ClCompile Include="noMeiryoUI.cpp" />
<ClCompile Include="stdafx.cpp">
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug_2013|Win32'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release_2013|Win32'">Create</PrecompiledHeader>
</ClCompile>
<ClCompile Include="TWR\BaseDialog.cpp" />
<ClCompile Include="TWR\DialogAppliBase.cpp" />
<ClCompile Include="TWR\ModelessDialog.cpp" />
<ClCompile Include="TWR\NCFileDialog.cpp" />
<ClCompile Include="TWR\TwrCheckbox.cpp" />
<ClCompile Include="TWR\TwrCombobox.cpp" />
<ClCompile Include="TWR\TwrCore.cpp" />
<ClCompile Include="TWR\TwrMenu.cpp" />
<ClCompile Include="TWR\TwrWnd.cpp" />
<ClCompile Include="util.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="FontSel.h" />
<ClInclude Include="noMeiryoUI.h" />
<ClInclude Include="Resource.h" />
<ClInclude Include="stdafx.h" />
<ClInclude Include="targetver.h" />
<ClInclude Include="TWR\AppliBase.h" />
<ClInclude Include="TWR\BaseDialog.h" />
<ClInclude Include="TWR\DialogAppliBase.h" />
<ClInclude Include="TWR\ModelessDialog.h" />
<ClInclude Include="TWR\NCFileDialog.h" />
<ClInclude Include="TWR\stdafx.h" />
<ClInclude Include="TWR\tstring.h" />
<ClInclude Include="TWR\TwrCheckbox.h" />
<ClInclude Include="TWR\TwrCombobox.h" />
<ClInclude Include="TWR\TwrCore.h" />
<ClInclude Include="TWR\TwrMenu.h" />
<ClInclude Include="TWR\TwrWnd.h" />
<ClInclude Include="util.h" />
</ItemGroup>
<ItemGroup>
<Image Include="noMeiryoUI.ico" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="noMeiryoUI.rc" />
</ItemGroup>
<ItemGroup>
<Manifest Include="noMeiryoUI.exe.manifest">
<SubType>Designer</SubType>
</Manifest>
</ItemGroup>
<ItemGroup>
<Text Include="ReadMe.txt" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>

136
noMeiryoUI.vcxproj.filters Normal file
View File

@@ -0,0 +1,136 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="ソース ファイル">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="ソース ファイル\TWR">
<UniqueIdentifier>{0f14fc6b-c5ac-4eff-9e3f-67d982331a10}</UniqueIdentifier>
</Filter>
<Filter Include="ヘッダー ファイル">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="ヘッダー ファイル\TWR">
<UniqueIdentifier>{0b7db99e-612d-46b4-b5c0-6ce958f4eadc}</UniqueIdentifier>
</Filter>
<Filter Include="リソース ファイル">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="FontSel.cpp">
<Filter>ソース ファイル</Filter>
</ClCompile>
<ClCompile Include="noMeiryoUI.cpp">
<Filter>ソース ファイル</Filter>
</ClCompile>
<ClCompile Include="stdafx.cpp">
<Filter>ソース ファイル</Filter>
</ClCompile>
<ClCompile Include="util.cpp">
<Filter>ソース ファイル</Filter>
</ClCompile>
<ClCompile Include="TWR\BaseDialog.cpp">
<Filter>ソース ファイル\TWR</Filter>
</ClCompile>
<ClCompile Include="TWR\DialogAppliBase.cpp">
<Filter>ソース ファイル\TWR</Filter>
</ClCompile>
<ClCompile Include="TWR\ModelessDialog.cpp">
<Filter>ソース ファイル\TWR</Filter>
</ClCompile>
<ClCompile Include="TWR\NCFileDialog.cpp">
<Filter>ソース ファイル\TWR</Filter>
</ClCompile>
<ClCompile Include="TWR\TwrCheckbox.cpp">
<Filter>ソース ファイル\TWR</Filter>
</ClCompile>
<ClCompile Include="TWR\TwrCombobox.cpp">
<Filter>ソース ファイル\TWR</Filter>
</ClCompile>
<ClCompile Include="TWR\TwrCore.cpp">
<Filter>ソース ファイル\TWR</Filter>
</ClCompile>
<ClCompile Include="TWR\TwrMenu.cpp">
<Filter>ソース ファイル\TWR</Filter>
</ClCompile>
<ClCompile Include="TWR\TwrWnd.cpp">
<Filter>ソース ファイル\TWR</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="FontSel.h">
<Filter>ヘッダー ファイル</Filter>
</ClInclude>
<ClInclude Include="noMeiryoUI.h">
<Filter>ヘッダー ファイル</Filter>
</ClInclude>
<ClInclude Include="Resource.h">
<Filter>ヘッダー ファイル</Filter>
</ClInclude>
<ClInclude Include="stdafx.h">
<Filter>ヘッダー ファイル</Filter>
</ClInclude>
<ClInclude Include="targetver.h">
<Filter>ヘッダー ファイル</Filter>
</ClInclude>
<ClInclude Include="util.h">
<Filter>ヘッダー ファイル</Filter>
</ClInclude>
<ClInclude Include="TWR\AppliBase.h">
<Filter>ヘッダー ファイル\TWR</Filter>
</ClInclude>
<ClInclude Include="TWR\BaseDialog.h">
<Filter>ヘッダー ファイル\TWR</Filter>
</ClInclude>
<ClInclude Include="TWR\DialogAppliBase.h">
<Filter>ヘッダー ファイル\TWR</Filter>
</ClInclude>
<ClInclude Include="TWR\ModelessDialog.h">
<Filter>ヘッダー ファイル\TWR</Filter>
</ClInclude>
<ClInclude Include="TWR\NCFileDialog.h">
<Filter>ヘッダー ファイル\TWR</Filter>
</ClInclude>
<ClInclude Include="TWR\stdafx.h">
<Filter>ヘッダー ファイル\TWR</Filter>
</ClInclude>
<ClInclude Include="TWR\tstring.h">
<Filter>ヘッダー ファイル\TWR</Filter>
</ClInclude>
<ClInclude Include="TWR\TwrCheckbox.h">
<Filter>ヘッダー ファイル\TWR</Filter>
</ClInclude>
<ClInclude Include="TWR\TwrCombobox.h">
<Filter>ヘッダー ファイル\TWR</Filter>
</ClInclude>
<ClInclude Include="TWR\TwrCore.h">
<Filter>ヘッダー ファイル\TWR</Filter>
</ClInclude>
<ClInclude Include="TWR\TwrMenu.h">
<Filter>ヘッダー ファイル\TWR</Filter>
</ClInclude>
<ClInclude Include="TWR\TwrWnd.h">
<Filter>ヘッダー ファイル\TWR</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<Image Include="noMeiryoUI.ico">
<Filter>リソース ファイル</Filter>
</Image>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="noMeiryoUI.rc">
<Filter>リソース ファイル</Filter>
</ResourceCompile>
</ItemGroup>
<ItemGroup>
<Manifest Include="noMeiryoUI.exe.manifest" />
</ItemGroup>
<ItemGroup>
<Text Include="ReadMe.txt" />
</ItemGroup>
</Project>

20
noMeiryoUI_2008.sln Normal file
View File

@@ -0,0 +1,20 @@

Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "noMeiryoUI", "noMeiryoUI_2008.vcproj", "{0F28EA7F-B997-4CBB-8BCA-96A013FCBE7D}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{0F28EA7F-B997-4CBB-8BCA-96A013FCBE7D}.Debug|Win32.ActiveCfg = Debug|Win32
{0F28EA7F-B997-4CBB-8BCA-96A013FCBE7D}.Debug|Win32.Build.0 = Debug|Win32
{0F28EA7F-B997-4CBB-8BCA-96A013FCBE7D}.Release|Win32.ActiveCfg = Release|Win32
{0F28EA7F-B997-4CBB-8BCA-96A013FCBE7D}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

362
noMeiryoUI_2008.vcproj Normal file
View File

@@ -0,0 +1,362 @@
<?xml version="1.0" encoding="shift_jis"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9.00"
Name="noMeiryoUI"
ProjectGUID="{0F28EA7F-B997-4CBB-8BCA-96A013FCBE7D}"
RootNamespace="noMeiryoUI"
Keyword="Win32Proj"
TargetFrameworkVersion="196613"
>
<Platforms>
<Platform
Name="Win32"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
IntermediateDirectory="$(ConfigurationName)"
ConfigurationType="1"
CharacterSet="1"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="TWR"
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalOptions="/SAFESEH"
AdditionalDependencies="comctl32.lib"
LinkIncremental="2"
GenerateDebugInformation="true"
SubSystem="2"
RandomizedBaseAddress="2"
DataExecutionPrevention="2"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
IntermediateDirectory="$(ConfigurationName)"
ConfigurationType="1"
CharacterSet="1"
WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="1"
EnableIntrinsicFunctions="true"
AdditionalIncludeDirectories="TWR"
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
RuntimeLibrary="0"
EnableFunctionLevelLinking="true"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalOptions="/SAFESEH "
AdditionalDependencies="comctl32.lib"
LinkIncremental="1"
GenerateDebugInformation="true"
GenerateMapFile="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="<22>\<5C>[<5B>X <20>t<EFBFBD>@<40>C<EFBFBD><43>"
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
<File
RelativePath=".\FontSel.cpp"
>
</File>
<File
RelativePath=".\noMeiryoUI.cpp"
>
</File>
<File
RelativePath=".\stdafx.cpp"
>
<FileConfiguration
Name="Debug|Win32"
>
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"
/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32"
>
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"
/>
</FileConfiguration>
</File>
<File
RelativePath=".\util.cpp"
>
</File>
<Filter
Name="TWR"
>
<File
RelativePath=".\TWR\BaseDialog.cpp"
>
</File>
<File
RelativePath=".\TWR\DialogAppliBase.cpp"
>
</File>
<File
RelativePath=".\TWR\ModelessDialog.cpp"
>
</File>
<File
RelativePath=".\TWR\NCFileDialog.cpp"
>
</File>
<File
RelativePath=".\TWR\TwrCheckbox.cpp"
>
</File>
<File
RelativePath=".\TWR\TwrCombobox.cpp"
>
</File>
<File
RelativePath=".\TWR\TwrCore.cpp"
>
</File>
<File
RelativePath=".\TWR\TwrMenu.cpp"
>
</File>
<File
RelativePath=".\TWR\TwrWnd.cpp"
>
</File>
</Filter>
</Filter>
<Filter
Name="<22>w<EFBFBD>b<EFBFBD>_<EFBFBD>[ <20>t<EFBFBD>@<40>C<EFBFBD><43>"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
>
<File
RelativePath=".\FontSel.h"
>
</File>
<File
RelativePath=".\noMeiryoUI.h"
>
</File>
<File
RelativePath=".\Resource.h"
>
</File>
<File
RelativePath=".\stdafx.h"
>
</File>
<File
RelativePath=".\targetver.h"
>
</File>
<File
RelativePath=".\util.h"
>
</File>
<Filter
Name="TWR"
>
<File
RelativePath=".\TWR\AppliBase.h"
>
</File>
<File
RelativePath=".\TWR\BaseDialog.h"
>
</File>
<File
RelativePath=".\TWR\DialogAppliBase.h"
>
</File>
<File
RelativePath=".\TWR\ModelessDialog.h"
>
</File>
<File
RelativePath=".\TWR\NCFileDialog.h"
>
</File>
<File
RelativePath=".\TWR\stdafx.h"
>
</File>
<File
RelativePath=".\TWR\tstring.h"
>
</File>
<File
RelativePath=".\TWR\TwrCheckbox.h"
>
</File>
<File
RelativePath=".\TWR\TwrCombobox.h"
>
</File>
<File
RelativePath=".\TWR\TwrCore.h"
>
</File>
<File
RelativePath=".\TWR\TwrMenu.h"
>
</File>
<File
RelativePath=".\TWR\TwrWnd.h"
>
</File>
</Filter>
</Filter>
<Filter
Name="<22><><EFBFBD>\<5C>[<5B>X <20>t<EFBFBD>@<40>C<EFBFBD><43>"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
>
<File
RelativePath=".\noMeiryoUI.ico"
>
</File>
<File
RelativePath=".\noMeiryoUI.rc"
>
</File>
</Filter>
<File
RelativePath=".\noMeiryoUI.exe.manifest"
>
</File>
<File
RelativePath=".\ReadMe.txt"
>
</File>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View File

@@ -1,6 +1,6 @@
//{{NO_DEPENDENCIES}}
// Microsoft Visual C++ generated include file.
// Used by noMeiryoUI.rc
// Microsoft Visual C++ <EFBFBD>Ő<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>C<EFBFBD><EFBFBD><EFBFBD>N<EFBFBD><EFBFBD><EFBFBD>[<5B>h <20>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD>B
// noMeiryoUI.rc <20>Ŏg<C58E>p
//
#define IDC_MYICON 2
#define ID_SEL_ALL 3
@@ -23,6 +23,7 @@
#define IDR_RT_MANIFEST1 129
#define IDR_RT_MANIFEST 131
#define IDD_DIALOG_FONTSEL 132
#define IDR_MENU1 133
#define IDC_EDIT_ALL 1000
#define IDC_EDIT_TITLE 1001
#define IDC_COMBO_NAME 1001
@@ -35,8 +36,25 @@
#define IDC_COMBO_CHARSET 1005
#define IDC_EDIT_MENU 1006
#define IDC_CHECK_UNDERLINE 1006
#define IDC_CHECK3 1008
#define IDC_CHECK_STRIKE 1008
#define IDC_STATIC_VERNO 1009
#define ID_32771 32771
#define ID_32772 32772
#define ID_32773 32773
#define ID_32774 32774
#define IDM_EXIT 32775
#define IDM_HELPTOPIC 32776
#define IDM_ANOTHER 32777
#define ID_32778 32778
#define ID_32779 32779
#define ID_Menu 32780
#define IDM_OPEN 32781
#define IDM_SAVE 32782
#define ID_32783 32783
#define IDM_SET_8 32784
#define IDM_COMPAT7 32786
#define ID_32787 32787
#define IDM_SET_10 32788
#define IDC_STATIC -1
// Next default values for new objects
@@ -44,9 +62,9 @@
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NO_MFC 1
#define _APS_NEXT_RESOURCE_VALUE 133
#define _APS_NEXT_COMMAND_VALUE 32771
#define _APS_NEXT_CONTROL_VALUE 1009
#define _APS_NEXT_RESOURCE_VALUE 134
#define _APS_NEXT_COMMAND_VALUE 32789
#define _APS_NEXT_CONTROL_VALUE 1010
#define _APS_NEXT_SYMED_VALUE 110
#endif
#endif

View File

@@ -1,8 +1,9 @@
/*
noMeiryoUI (C) 2005,2012,2013 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
// stdafx.cpp : <20>W<EFBFBD><57><EFBFBD>C<EFBFBD><43><EFBFBD>N<EFBFBD><4E><EFBFBD>[<5B>h noMeiryoUI.pch <20>݂̂<CC82>
// <20>܂ރ\<5C>[<5B>X <20>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD>́A<CD81>v<EFBFBD><76><EFBFBD>R<EFBFBD><52><EFBFBD>p<EFBFBD>C<EFBFBD><43><EFBFBD>ς݃w<DD83>b<EFBFBD>_<EFBFBD>[<5B>ɂȂ<C982><C882>܂<EFBFBD><DC82>B
// stdafx.obj <20>ɂ̓v<CD83><76><EFBFBD>R<EFBFBD><52><EFBFBD>p<EFBFBD>C<EFBFBD><43><EFBFBD>ς݌^<5E><><EFBFBD>񂪊܂܂<DC82><DC82>܂<EFBFBD><DC82>B
#include "stdafx.h"
// TODO: <20><><EFBFBD>̃t<CC83>@<40>C<EFBFBD><43><EFBFBD>ł͂Ȃ<CD82><C882>ASTDAFX.H <20>ŕK<C595>v<EFBFBD><76>
// <20>lj<EFBFBD><C789>w<EFBFBD>b<EFBFBD>_<EFBFBD>[<5B><><EFBFBD>Q<EFBFBD>Ƃ<EFBFBD><C682>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B

View File

@@ -1,3 +1,7 @@
/*
noMeiryoUI (C) 2005,2012-2015 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
// stdafx.h : <20>W<EFBFBD><57><EFBFBD>̃V<CC83>X<EFBFBD>e<EFBFBD><65> <20>C<EFBFBD><43><EFBFBD>N<EFBFBD><4E><EFBFBD>[<5B>h <20>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD>̃C<CC83><43><EFBFBD>N<EFBFBD><4E><EFBFBD>[<5B>h <20>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD>A<EFBFBD>܂<EFBFBD><DC82><EFBFBD>
// <20>Q<EFBFBD>Ɖ񐔂<C689><F1909482><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD>‚<EFBFBD><C282>܂<EFBFBD><DC82>ύX<CF8D><58><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>A<EFBFBD>v<EFBFBD><76><EFBFBD>W<EFBFBD>F<EFBFBD>N<EFBFBD>g<EFBFBD><67><EFBFBD>p<EFBFBD>̃C<CC83><43><EFBFBD>N<EFBFBD><4E><EFBFBD>[<5B>h <20>t<EFBFBD>@<40>C<EFBFBD><43>
// <20><><EFBFBD>L<EFBFBD>q<EFBFBD><71><EFBFBD>܂<EFBFBD><DC82>B
@@ -12,6 +16,7 @@
#include <windows.h>
// C <20><><EFBFBD><EFBFBD><EFBFBD>^<5E>C<EFBFBD><43> <20>w<EFBFBD>b<EFBFBD>_<EFBFBD>[ <20>t<EFBFBD>@<40>C<EFBFBD><43>
#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
#include <memory.h>

View File

@@ -1,3 +1,7 @@
/*
noMeiryoUI (C) 2005,2012-2015 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
#pragma once
// <20>ȉ<EFBFBD><C889>̃}<7D>N<EFBFBD><4E><EFBFBD>́A<CD81>Œ<EFBFBD><C592><EFBFBD><EFBFBD>K<EFBFBD>v<EFBFBD>ȃv<C883><76><EFBFBD>b<EFBFBD>g<EFBFBD>t<EFBFBD>H<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>`<60><><EFBFBD>܂<EFBFBD><DC82>B<EFBFBD>Œ<EFBFBD><C592><EFBFBD><EFBFBD>K<EFBFBD>v<EFBFBD>ȃv<C883><76><EFBFBD>b<EFBFBD>g<EFBFBD>t<EFBFBD>H<EFBFBD>[<5B><><EFBFBD>Ƃ́A

87
util.cpp Normal file
View File

@@ -0,0 +1,87 @@
/*
noMeiryoUI (C) 2005,2012-2015 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
#include "util.h"
/** Windows 8<>̃t<CC83>H<EFBFBD><48><EFBFBD>g<EFBFBD>T<EFBFBD>C<EFBFBD>Y<EFBFBD>Z<EFBFBD>o<EFBFBD><6F><EFBFBD><EFBFBD><EFBFBD>g<EFBFBD>p<EFBFBD><70><EFBFBD><EFBFBD>H */
bool WIN8_SIZE = true;
/**
* <20>t<EFBFBD>H<EFBFBD><48><EFBFBD>g<EFBFBD>̃s<CC83>N<EFBFBD>Z<EFBFBD><5A><EFBFBD><EFBFBD><EFBFBD>ɑΉ<C991><CE89><EFBFBD><EFBFBD><EFBFBD><EFBFBD>|<7C>C<EFBFBD><43><EFBFBD>g<EFBFBD><67><EFBFBD>𐮐<EFBFBD><F090AE90>ŎZ<C58E>o<EFBFBD><6F><EFBFBD><EFBFBD><EFBFBD>B(Windows 8)
*
* @param font <20>t<EFBFBD>H<EFBFBD><48><EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD>
* @param hWnd <20>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68>
* @return <20>t<EFBFBD>H<EFBFBD><48><EFBFBD>g<EFBFBD>T<EFBFBD>C<EFBFBD>Y
*/
int getFontPointInt(LOGFONT *font, HWND hWnd)
{
double point = getFontPoint(font, hWnd);
if (WIN8_SIZE) {
// Windows 8<>f<EFBFBD>B<EFBFBD>X<EFBFBD>v<EFBFBD><76><EFBFBD>C<EFBFBD>R<EFBFBD><52><EFBFBD>g<EFBFBD><67><EFBFBD>[<5B><><EFBFBD>p<EFBFBD>l<EFBFBD><6C><EFBFBD>݊<EFBFBD>
if ((point > 10) || (point < 8)) {
return (int)point;
} else {
// 10pt<70>܂ł<DC82>Windows 7<>Ɠ<EFBFBD><C693>l<EFBFBD>Ɍv<C98C>Z<EFBFBD><5A><EFBFBD><EFBFBD><EFBFBD>B
// Windows 7<>ȑO<C891>݊<EFBFBD>
if (point - abs((int)point) > 0.49) {
return (int)point + 1;
} else {
return (int)point;
}
}
} else {
// Windows 7<>ȑO<C891>݊<EFBFBD>
if (point - abs((int)point) > 0.49) {
return (int)point + 1;
} else {
return (int)point;
}
}
}
/**
* <20>t<EFBFBD>H<EFBFBD><48><EFBFBD>g<EFBFBD>̃s<CC83>N<EFBFBD>Z<EFBFBD><5A><EFBFBD><EFBFBD><EFBFBD>ɑΉ<C991><CE89><EFBFBD><EFBFBD><EFBFBD><EFBFBD>|<7C>C<EFBFBD><43><EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD>Z<EFBFBD>o<EFBFBD><6F><EFBFBD><EFBFBD><EFBFBD>B
* (Windows 7/<2F>R<EFBFBD><52><EFBFBD><EFBFBD><EFBFBD>_<EFBFBD>C<EFBFBD>A<EFBFBD><41><EFBFBD>O<EFBFBD>݊<EFBFBD>)
*
* @param font <20>t<EFBFBD>H<EFBFBD><48><EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD>
* @param hWnd <20>E<EFBFBD>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68>
* @return <20>t<EFBFBD>H<EFBFBD><48><EFBFBD>g<EFBFBD>T<EFBFBD>C<EFBFBD>Y
*/
double getFontPoint(LOGFONT *font, HWND hWnd)
{
// <20>t<EFBFBD>H<EFBFBD><48><EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EC90AC><EFBFBD><EFBFBD><EFBFBD>B
HFONT hFont = CreateFontIndirect(font);
// <20><><EFBFBD>g<EFBFBD>̃E<CC83>C<EFBFBD><43><EFBFBD>h<EFBFBD>E<EFBFBD>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EC90AC><EFBFBD><EFBFBD><EFBFBD>f<EFBFBD>o<EFBFBD>C<EFBFBD>X<EFBFBD>R<EFBFBD><52><EFBFBD>e<EFBFBD>L<EFBFBD>X<EFBFBD>g<EFBFBD><67>
// <20>t<EFBFBD>H<EFBFBD><48><EFBFBD>g<EFBFBD><67><EFBFBD>ݒ肷<DD92><E882B7><EFBFBD>B
HDC dc = GetDC(hWnd);
SelectFont(dc, hFont);
// <20>f<EFBFBD>o<EFBFBD>C<EFBFBD>X<EFBFBD>R<EFBFBD><52><EFBFBD>e<EFBFBD>L<EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD>TEXTMETRIC<49><43><EFBFBD><EFBFBD><E693BE><EFBFBD><EFBFBD><EFBFBD>B
TEXTMETRIC metric;
GetTextMetrics(dc, &metric);
int logPixelY = GetDeviceCaps(dc, LOGPIXELSY);
ReleaseDC(hWnd, dc);
DeleteObject(hFont);
int height;
if (font->lfHeight < 0) {
// <20><><EFBFBD>̏ꍇ<CC8F><EA8D87>lfHeight<68>̓t<CD83>H<EFBFBD><48><EFBFBD>g<EFBFBD><67><EFBFBD>̂̍<CC82><CC8D><EFBFBD><EFBFBD>B
height = 0 - font->lfHeight;
} else if (font->lfHeight > 0) {
// <20><><EFBFBD>̏ꍇ<CC8F>͂<EFBFBD><CD82>ł<EFBFBD>Internal Leading<6E><67><EFBFBD>܂<EFBFBD><DC82>ł<EFBFBD><C582><EFBFBD><EFBFBD>̂ł<CC82><C582>̕<EFBFBD><CC95><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B
height = font->lfHeight - metric.tmInternalLeading;
} else {
// 0<>̏ꍇ<CC8F>̓f<CD83>t<EFBFBD>H<EFBFBD><48><EFBFBD>g<EFBFBD>̑傫<CC91><E582AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EC90AC><EFBFBD><EFBFBD><EFBFBD>t<EFBFBD>H<EFBFBD><48><EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E693BE><EFBFBD><EFBFBD><EFBFBD>B
height = metric.tmAscent + metric.tmDescent - metric.tmInternalLeading;
}
double point = (double)height * 72 / logPixelY;
return point;
}

17
util.h Normal file
View File

@@ -0,0 +1,17 @@
/*
noMeiryoUI (C) 2005,2012-2015 Tatsuhiko Shoji
The sources for noMeiryoUI are distributed under the MIT open source license
*/
#ifndef UTIL_H
#define UTIL_H
#include <stdlib.h>
#include <windows.h>
#include <windowsx.h>
extern bool WIN8_SIZE;
int getFontPointInt(LOGFONT *font, HWND hWnd);
double getFontPoint(LOGFONT *font, HWND hWnd);
#endif