
// BKDE.h : главный файл заголовка для приложения PROJECT_NAME
//

#pragma once

#ifndef __AFXWIN_H__
#error "включить stdafx.h до включения этого файла в PCH"
#endif

using namespace std;

#include "resource.h"       // основные символы

#define WM_MAKE_DROP            (WM_USER + 101)
#define WM_GET_CMDLINE          (WM_USER + 102)
#define WM_OUT_OF_IMAGE         (WM_USER + 103)
#define WM_PUT_INTO_LOG         (WM_USER + 104)
#define WM_OUT_CURR_FILE_PATH   (WM_USER + 105)
#define WM_OUT_CURR_IMG_INFO    (WM_USER + 106)
#define WM_ENABLE_BUTTON_ADD    (WM_USER + 107)
#define WM_ENABLE_BUTTON_VIEW   (WM_USER + 108)
#define WM_ENABLE_BUTTON_EXTR   (WM_USER + 109)


typedef enum
{
	IMAGE_TYPE_ERROR = -1,
	IMAGE_TYPE_UNKNOWN = 0,
	IMAGE_TYPE_ANDOS,
	IMAGE_TYPE_MKDOS,
	IMAGE_TYPE_AODOS,
	IMAGE_TYPE_NORD,
	IMAGE_TYPE_MIKRODOS,
	IMAGE_TYPE_CSIDOS3,
	IMAGE_TYPE_RT11,
	IMAGE_TYPE_NCDOS,
	IMAGE_TYPE_DXDOS,
	IMAGE_TYPE_MSDOS
} IMAGE_TYPES;

typedef enum
{
	FS_IO_ERROR = -1,
	FS_NO_ERROR = 0,
	FS_IMAGE_RO,
	FS_FILE_OPENERR,
	FS_FILE_EXIST,
	FS_STRUCT_ERR,
	FS_CAT_FULL,
	FS_MKD_CAT_FULL,
	FS_DISK_FULL,
	FS_NO_IMAGE
} FILESAVE_STATUS;


// CBKDEApp:
// О реализации данного класса см. BKDE.cpp
//

class CBKDEApp : public CWinApp
{
	public:
		CBKDEApp();
		HWND m_hwnd;

// Переопределение
	public:
		virtual BOOL InitInstance();

// Реализация

		DECLARE_MESSAGE_MAP()
};

extern CBKDEApp theApp;

static void ShowMessageBox(UINT strID, UINT nType = MB_OK)
{
	if (theApp.m_hwnd)
	{
		CString strMsg, strCapt;
		strCapt.LoadString(IDS_MSGCAPT);
		strMsg.LoadString(strID);
		MessageBox(theApp.m_hwnd, strMsg, strCapt, nType);
	}
	else
	{
		AfxMessageBox(strID, nType, 0);
	}
}
