Stroika Library 3.0d18
 
Loading...
Searching...
No Matches
ActiveLedItConfig.h
1/*
2 * Copyright(c) Sophist Solutions, Inc. 1990-2025. All rights reserved
3 */
4#ifndef __ActiveLedItConfig_h__
5#define __ActiveLedItConfig_h__ 1
6
7/*
8 * $Header: /cygdrive/k/CVSRoot/ActiveLedIt/Headers/ActiveLedItConfig.h,v 2.23 2004/02/09 16:25:07 lewis Exp $
9 *
10 * Description:
11 *
12 * TODO:
13 *
14 * Notes:
15 *
16 *
17 * Changes:
18 * $Log: ActiveLedItConfig.h,v $
19 * Revision 2.23 2004/02/09 16:25:07 lewis
20 * SPR#1599: Added qKeepListOfALInstancesForSPR_1599BWA for MSIE quit without closing last control bug. For SPR#1641: added assert to check MODULE::m_nObjectCount = 0. Had to be much more careful about using OLE_GetXXX functions that return IDispatch*. Instead - do non-OLE_ versions that return CComPtr<IDispatch> - so we don't get redundant refcounts.
21 *
22 * Revision 2.22 2004/01/23 23:02:52 lewis
23 * define qActiveLedIt_MajorVersion,qActiveLedIt_MinorVersion, and qActiveLedIt_MajorDotMinorVersion
24 * defines for use in IDL file
25 *
26 * Revision 2.21 2003/11/27 03:59:09 lewis
27 * SPR#1565: set maxundos to 512
28 *
29 * Revision 2.20 2003/06/03 16:35:19 lewis
30 * SPR#1522: have control goto Active state - rather than UIActive - on OLEVERB_SHOW
31 *
32 * Revision 2.19 2003/05/28 16:56:17 lewis
33 * SPR#1509: Added qFunnyDisplayInDesignMode define to ActiveLedItConfig, and ifdefined (yes by default),
34 * then check for AMBIENT_DESIGN_MODE and change the drawing in LedItView::EraseBackground () slightly.
35 * Added a small watermarkdisplay saying 'design mode' and a border in the color opposite to the
36 * background. Hooked OnAmbientPropertyChange() to detect change and refresh screen.
37 *
38 * Revision 2.18 2003/03/11 02:33:09 lewis
39 * SPR#1288 - use new MakeSophistsAppNameVersionURL and add new CheckForUpdatesWebPageCommand, and other
40 * cleanups to Led_URLManager calls and context menu
41 *
42 * Revision 2.17 2002/05/06 21:34:18 lewis
43 * <=============================== Led 3.0.1 Released ==============================>
44 *
45 * Revision 2.16 2001/11/27 00:32:28 lewis
46 * <=============== Led 3.0 Released ===============>
47 *
48 * Revision 2.15 2001/08/30 00:35:56 lewis
49 * *** empty log message ***
50 *
51 * Revision 2.14 2001/08/28 18:23:19 lewis
52 * set qMagicVersionExtra back to zero
53 *
54 * Revision 2.13 2001/08/15 21:08:24 lewis
55 * qMagicVersionExtra so I can send an intermediate build to someone
56 *
57 * Revision 2.12 2001/07/31 15:37:56 lewis
58 * *** empty log message ***
59 *
60 * Revision 2.11 2001/05/30 16:28:41 lewis
61 * *** empty log message ***
62 *
63 * Revision 2.10 2001/05/30 16:23:03 lewis
64 * SPR#0945- new VersionNumber/ShortVersionString OLEAUT APIs
65 *
66 * Revision 2.9 2001/04/20 19:10:20 lewis
67 * *** empty log message ***
68 *
69 * Revision 2.8 2001/04/12 18:58:11 lewis
70 * cleanup DemoMode warning expired code (so easier to include in other apps)
71 *
72 * Revision 2.7 2001/03/28 20:04:23 lewis
73 * added tmphack qMagicVersionExtra so I can solve version# problem for a
74 * cusomer shipping an interum release
75 *
76 * Revision 2.6 2000/10/22 17:37:19 lewis
77 * SPR#0841- change version# scheme for ActiveLedIt! binary version#
78 *
79 * Revision 2.5 2000/04/14 22:40:44 lewis
80 * SPR#0740- namespace support
81 *
82 * Revision 2.4 1999/11/13 16:54:44 lewis
83 * lose hacks for 2.3.2 release - hardwired numbers
84 *
85 * Revision 2.3 1999/09/20 13:17:00 lewis
86 * some hacks todo interum 2.3.2 release - but mostly support for new DEMO_MODE build
87 *
88 * Revision 2.2 1997/12/24 04:43:52 lewis
89 * *** empty log message ***
90 *
91 * Revision 2.1 1997/07/27 15:59:52 lewis
92 * <===== Led 2.2 Released =====>
93 *
94 * Revision 2.0 1997/06/18 03:25:57 lewis
95 * *** empty log message ***
96 *
97 *
98 *
99 *
100 *
101 */
102
103#if defined(__cplusplus)
104#include "Stroika/Foundation/StroikaPreComp.h"
105#endif
106
107#include "Stroika/Frameworks/Led/Config.h"
108
109#if defined(__cplusplus)
110#include "Stroika/Frameworks/Led/Support.h"
111#endif
112
113#if defined(__cplusplus)
114// Due to work on SPR#1564 and 1565 - up this undo count from 3 to something effectively infinite.
115const unsigned int kMaxNumUndoLevels = 512;
116#endif
117
118//TMP HACK - to workaround problem introduced by interum release with ActiveLedIt! 3.0b5 - get rid of after b5 release
119#define qMagicVersionExtra 0
120
121#define qActiveLedIt_MajorVersion qLed_Version_Major
122#define qActiveLedIt_MinorVersion qLed_Version_Minor
123
124#if qActiveLedIt_MajorVersion == 3 && qActiveLedIt_MinorVersion == 1
125#define qActiveLedIt_MajorDotMinorVersion 3.1
126#elif (qActiveLedIt_MajorVersion == 4) && (qActiveLedIt_MinorVersion == 0)
127#define qActiveLedIt_MajorDotMinorVersion 4.0
128#else
129//tmphack - LGP 2012-09-04 - cuz we've let yet to fix version# stuff
130#error "OOOPS"
131#endif
132
133#define kVERSResourceVersionNumber qLed_Version_MajorMinor, qLed_Version_Stage, qLed_Version_SubStage, 1 + qMagicVersionExtra
134#if defined(__cplusplus)
135static_assert (qStroika_HasComponent_ATLMFC, "Error: ActiveLedIt requires the ATLMFC feature to be set true when building Stroika");
136
137inline unsigned long mkActiveLedItVersion_ (unsigned int majorMinor, unsigned int versStage, unsigned int subStage, unsigned int nonDemoFlag)
138{
139 Require (majorMinor <= 256);
140 Require (versStage <= 256);
141 Require (subStage <= 256);
142 Require (nonDemoFlag <= 256);
143 return (static_cast<unsigned long> (majorMinor) << 24) | (static_cast<unsigned long> (versStage) << 16) |
144 (static_cast<unsigned long> (subStage) << 8) | (static_cast<unsigned long> (nonDemoFlag) << 0);
145}
146const unsigned long kActiveLedItDWORDVersion =
147 mkActiveLedItVersion_ (qLed_Version_MajorMinor, qLed_Version_Stage, qLed_Version_SubStage, 1 + qMagicVersionExtra);
148#endif
149
150#if defined(__cplusplus)
151constexpr char kAppName[] = "ActiveLedIt";
152#endif
153
154#ifndef qKeepListOfALInstancesForSPR_1599BWA
155#define qKeepListOfALInstancesForSPR_1599BWA 1
156#endif
157
158#ifndef qFunnyDisplayInDesignMode
159#define qFunnyDisplayInDesignMode 1
160#endif
161
162/*
163 * Somewhat risky change for SPR#1522. By default - MFC does a UI-Activate when a OLEIVERB_SHOW
164 * mesage is sent. That causes some problems for some folks, so disable it and see if anybody
165 * yells (and I did a lot of testing myself - see the SPR for details) - LGP 2003-06-03.
166 */
167#ifndef qDontUIActivateOnOpen
168#define qDontUIActivateOnOpen 1
169#endif
170
171#endif /*__ActiveLedItConfig_h__*/