You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
145 lines
3.8 KiB
145 lines
3.8 KiB
//----------------------------------------------------------------------------- |
|
// Name: FontMaker.h |
|
// |
|
// Desc: Defines the class behaviors for the application. |
|
// |
|
// Hist: 09.06.02 - Revised Fontmaker sample |
|
// |
|
// Copyright (c) Microsoft Corporation. All rights reserved. |
|
//----------------------------------------------------------------------------- |
|
#ifndef FONTMAKER_H |
|
#define FONTMAKER_H |
|
|
|
#include "resource.h" |
|
#include "BitmapFontFile.h" |
|
#include <math.h> |
|
#include "..\toollib\toollib.h" |
|
#include "..\toollib\scriplib.h" |
|
#include "..\toollib\piclib.h" |
|
|
|
//----------------------------------------------------------------------------- |
|
// Name: class CFontMakerView |
|
// Desc: The scroll view class for viewing the font texture image |
|
//----------------------------------------------------------------------------- |
|
class CFontMakerView : public CScrollView |
|
{ |
|
protected: |
|
CFontMakerView() {} |
|
DECLARE_DYNCREATE(CFontMakerView) |
|
|
|
CDC m_memDC; |
|
|
|
public: |
|
VOID OnNewFontGlyphs(); |
|
|
|
virtual ~CFontMakerView(); |
|
|
|
public: |
|
|
|
// Overridden functions |
|
//{{AFX_VIRTUAL(CFontMakerView) |
|
public: |
|
virtual void OnDraw(CDC* pDC); |
|
virtual void OnInitialUpdate(); |
|
protected: |
|
//}}AFX_VIRTUAL |
|
|
|
protected: |
|
// Message map functions |
|
//{{AFX_MSG(CFontMakerView) |
|
afx_msg void OnLButtonDown(UINT nFlags, CPoint point); |
|
afx_msg BOOL OnEraseBkgnd(CDC* pDC); |
|
afx_msg void OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags); |
|
//}}AFX_MSG |
|
DECLARE_MESSAGE_MAP() |
|
}; |
|
|
|
|
|
|
|
|
|
//----------------------------------------------------------------------------- |
|
// Name: class CFontMakerFrameWnd |
|
// Desc: The main frame window class for the app, which contains the dialog bar |
|
// full of controls and the scroll view to view the font texture image. |
|
//----------------------------------------------------------------------------- |
|
class CFontMakerFrameWnd : public CFrameWnd |
|
{ |
|
public: |
|
CFontMakerFrameWnd() {} |
|
virtual ~CFontMakerFrameWnd() {} |
|
|
|
CDialogBar m_wndDialogBar; |
|
CDialogBar* GetDialogBar() { return &m_wndDialogBar; } |
|
|
|
protected: |
|
DECLARE_DYNCREATE(CFontMakerFrameWnd) |
|
|
|
// Message map functions |
|
//{{AFX_MSG(CFontMakerFrameWnd) |
|
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct); |
|
//}}AFX_MSG |
|
DECLARE_MESSAGE_MAP() |
|
}; |
|
|
|
|
|
|
|
|
|
//----------------------------------------------------------------------------- |
|
// Name: class CFontMakerApp |
|
// Desc: The main app class |
|
//----------------------------------------------------------------------------- |
|
class CFontMakerApp : public CWinApp |
|
{ |
|
CDialogBar* m_pDialogBar; |
|
CFontMakerView* m_pView; |
|
HCURSOR m_hWaitCursor; |
|
|
|
public: |
|
CFontMakerApp() {} |
|
~CFontMakerApp() {} |
|
|
|
VOID UpdateSelectedGlyph( BOOL bGlyphSelected, int iSelectedGlyph = 0 ); |
|
HRESULT CalculateAndRenderGlyphs(); |
|
VOID InsertGlyph(); |
|
|
|
void SetTextureSize( int width, int height ); |
|
|
|
// Overrides |
|
//{{AFX_VIRTUAL(CFontMakerApp) |
|
public: |
|
virtual BOOL InitInstance(); |
|
virtual int ExitInstance(); |
|
//}}AFX_VIRTUAL |
|
|
|
// Implementation |
|
//{{AFX_MSG(CFontMakerApp) |
|
afx_msg void OnNewFontButton(); |
|
afx_msg void OnEffectsCheck(); |
|
afx_msg void OnGlyphsFromRangeRadio(); |
|
afx_msg void OnChangeGlpyhsRangeEdit(); |
|
afx_msg void OnGlyphsFromFileRadio(); |
|
afx_msg void OnChangeGlyphsFileEdit(); |
|
afx_msg void OnGlyphsFileSelectorButton(); |
|
afx_msg void OnTextureSizeButton(); |
|
afx_msg void OnMagnifyButton(); |
|
afx_msg void OnGlyphSpecial(); |
|
afx_msg void OnUpdateButton( CCmdUI* pCmdUI ); |
|
afx_msg void OnSaveButton(); |
|
afx_msg void OnExit(); |
|
afx_msg void OnAbout(); |
|
afx_msg void OnHelp(); |
|
afx_msg void OnGlyphsCustom(); |
|
afx_msg void OnLoadButton(); |
|
afx_msg void OnLoadCustomFontButton(); |
|
//}}AFX_MSG |
|
DECLARE_MESSAGE_MAP() |
|
}; |
|
|
|
|
|
|
|
// External reference to the unique application instance |
|
extern CFontMakerApp theApp; |
|
|
|
|
|
|
|
#endif // FONTMAKER_H
|
|
|