4#ifndef _Stroika_Frameworks_Led_SimpleLed_h_
5#define _Stroika_Frameworks_Led_SimpleLed_h_ 1
15#if !defined(_MFC_VER) && !defined(_WIN32)
16#error "This file provides a simple to use wrapper on one of the above class libraries"
17#error "But you don't seem to be using any of them. Be sure to set the proper defines"
18#error "if you ARE in fact using one of the supported class libraries."
21#include "Stroika/Frameworks/StroikaPreComp.h"
23#include "Stroika/Frameworks/Led/ChunkedArrayTextStore.h"
24#include "Stroika/Frameworks/Led/Command.h"
25#include "Stroika/Frameworks/Led/SimpleTextInteractor.h"
26#include "Stroika/Frameworks/Led/WordProcessor.h"
29#include "Stroika/Frameworks/Led/Platform/MFC.h"
30#include "Stroika/Frameworks/Led/Platform/MFC_WordProcessor.h"
32#include "Stroika/Frameworks/Led/Platform/Windows.h"
35namespace Stroika::Frameworks::Led {
37 DISABLE_COMPILER_MSC_WARNING_START (4250)
47 class SimpleLedWordProcessor
49 :
public Led_MFC_X<WordProcessor>
51 :
public Platform::Led_Win32_SimpleWndProc_Helper<Platform::Led_Win32_Helper<WordProcessor>>
56 using inherited = Led_MFC_X<WordProcessor>;
58 using inherited = Platform::Led_Win32_SimpleWndProc_Helper<Platform::Led_Win32_Helper<WordProcessor>>;
61 SimpleLedWordProcessor ();
62 ~SimpleLedWordProcessor ();
68 ChunkedArrayTextStore fTextStore;
69 MultiLevelUndoCommandHandler fCommandHandler;
73 DECLARE_MESSAGE_MAP ()
74 DECLARE_DYNCREATE (SimpleLedWordProcessor)
78 DISABLE_COMPILER_MSC_WARNING_END (4250)
80 DISABLE_COMPILER_MSC_WARNING_START (4250)
90 class SimpleLedLineEditor
92 :
public Led_MFC_X<SimpleTextInteractor>
94 :
public Platform::Led_Win32_SimpleWndProc_Helper<Platform::Led_Win32_Helper<SimpleTextInteractor>>
99 using inherited = Led_MFC_X<SimpleTextInteractor>;
101 using inherited = Platform::Led_Win32_SimpleWndProc_Helper<Platform::Led_Win32_Helper<SimpleTextInteractor>>;
104 SimpleLedLineEditor ();
105 ~SimpleLedLineEditor ();
111 ChunkedArrayTextStore fTextStore;
112 MultiLevelUndoCommandHandler fCommandHandler;
116 DECLARE_MESSAGE_MAP ()
117 DECLARE_DYNCREATE (SimpleLedLineEditor)
120 DISABLE_COMPILER_MSC_WARNING_END (4250)
122 DISABLE_COMPILER_MSC_WARNING_START (4250)
133 class LedDialogText : public SimpleLedWordProcessor {
135 using inherited = SimpleLedWordProcessor;
140#if qStroika_Platform_Windows && defined(_MFC_VER)
142 virtual void PostNcDestroy ()
override;
143 virtual int OnMouseActivate (CWnd* pDesktopWnd, UINT nHitTest, UINT message)
override;
146#if qStroika_Platform_Windows && defined(_MFC_VER)
148 DECLARE_MESSAGE_MAP ()
149 DECLARE_DYNCREATE (LedDialogText)
152 DISABLE_COMPILER_MSC_WARNING_END (4250)
161#include "SimpleLed.inl"