00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00047 #ifndef WINSTL_INCL_WINSTL_UTIL_HPP_UNDOCUMENTED
00048 #define WINSTL_INCL_WINSTL_UTIL_HPP_UNDOCUMENTED
00049
00050 #ifndef STLSOFT_DOCUMENTATION_SKIP_SECTION
00051 #define WINSTL_VER_WINSTL_UTIL_HPP_UNDOCUMENTED_MAJOR 4
00052 #define WINSTL_VER_WINSTL_UTIL_HPP_UNDOCUMENTED_MINOR 0
00053 #define WINSTL_VER_WINSTL_UTIL_HPP_UNDOCUMENTED_REVISION 1
00054 #define WINSTL_VER_WINSTL_UTIL_HPP_UNDOCUMENTED_EDIT 36
00055 #endif
00056
00057
00058
00059
00060
00061 #ifndef WINSTL_INCL_WINSTL_H_WINSTL
00062 # include <winstl/winstl.h>
00063 #endif
00064
00065
00066
00067
00068
00069 #ifndef _WINSTL_NO_NAMESPACE
00070 # if defined(_STLSOFT_NO_NAMESPACE) || \
00071 defined(STLSOFT_DOCUMENTATION_SKIP_SECTION)
00072
00073 namespace winstl
00074 {
00075 # else
00076
00077
00078 namespace stlsoft
00079 {
00080
00081 namespace winstl_project
00082 {
00083
00084 # endif
00085 #endif
00086
00087
00088
00089
00090
00104 #if defined(STLSOFT_COMPILER_IS_BORLAND) || \
00105 ( defined(STLSOFT_COMPILER_IS_DMC) && \
00106 __DMC__ >= 0x829) || \
00107 defined(STLSOFT_COMPILER_IS_GCC) || \
00108 defined(STLSOFT_COMPILER_IS_INTEL) || \
00109 ( defined(STLSOFT_COMPILER_IS_MSVC) && \
00110 _MSC_VER >= 1300)
00111
00112 template <int N>
00113 inline UINT get_undoc_clipboard_fmt__(LPCTSTR lpszFormat)
00114 {
00115 static UINT fmt = ::RegisterClipboardFormat(lpszFormat);
00116
00117 return fmt;
00118 }
00119
00120 #else
00121
00122 template <int N>
00123 struct get_undoc_clipboard_fmt__
00124 {
00125 public:
00126 ss_explicit_k get_undoc_clipboard_fmt__(LPCTSTR lpszFormat)
00127 #ifdef STLSOFT_COMPILER_IS_DMC
00128 : m_fmt(register_(lpszFormat))
00129 #else
00130 : m_fmt(get_(lpszFormat))
00131 #endif
00132 {}
00133
00134 operator UINT () const
00135 {
00136 return m_fmt;
00137 }
00138
00139 private:
00140 static UINT register_(LPCTSTR lpszFormat)
00141 {
00142 return ::RegisterClipboardFormat(lpszFormat);
00143 }
00144
00145 static UINT get_(LPCTSTR lpszFormat)
00146 {
00147 static UINT fmt = register_(lpszFormat);
00148
00149 return fmt;
00150 }
00151
00152 private:
00153 const UINT m_fmt;
00154 };
00155
00156 #endif
00157
00158
00159
00160
00161
00162
00163
00164 #ifndef WM_CONTEXTMENU
00165 # define WM_CONTEXTMENU (0x007B)
00166 #endif
00167
00168
00169
00170 #ifdef __SYNSOFT_DBS_COMPILER_SUPPORTS_PRAGMA_MESSAGE
00171 # pragma message(_sscomp_fileline_message("These should go into winstl_shell(_functions).h or something"))
00172 #endif
00173
00174 #ifndef CF_FILENAMEA
00175 # define CF_FILENAMEA winstl_ns_qual(get_undoc_clipboard_fmt__)<1>(TEXT("FileName"))
00176 #endif
00177
00178 #ifndef CF_FILENAMEW
00179 # define CF_FILENAMEW winstl_ns_qual(get_undoc_clipboard_fmt__)<2>(TEXT("FileNameW"))
00180 #endif
00181
00182 #ifndef CF_FILENAME
00183 # ifdef UNICODE
00184 # define CF_FILENAME CF_FILENAMEW
00185 # else
00186 # define CF_FILENAME CF_FILENAMEA
00187 # endif
00188 #endif
00189
00190 #ifndef CF_IDLIST
00191 # define CF_IDLIST winstl_ns_qual(get_undoc_clipboard_fmt__)<3>(TEXT("Shell IDList Array"))
00192 #endif
00193
00194 #ifndef CF_NETRESOURCE
00195 # define CF_NETRESOURCE winstl_ns_qual(get_undoc_clipboard_fmt__)<4>(TEXT("Net Resource"))
00196 #endif
00197
00199
00200
00201 #ifdef STLSOFT_UNITTEST
00202 # include "./unittest/undocumented_unittest_.h"
00203 #endif
00204
00205
00206
00207 #ifndef _WINSTL_NO_NAMESPACE
00208 # if defined(_STLSOFT_NO_NAMESPACE) || \
00209 defined(STLSOFT_DOCUMENTATION_SKIP_SECTION)
00210 }
00211 # else
00212 }
00213 }
00214 # endif
00215 #endif
00216
00217
00218
00219 #endif
00220
00221