1 /*
2 * Interface wrapper code.
3 *
4 * Generated by SIP 4.19.16
5 *
6 * Copyright: (c) 2018 by Total Control Software
7 * License: wxWindows License
8 */
9
10 #include "sipAPI_core.h"
11
12 #include <wx/log.h>
13
14 #include <wx/log.h>
15 #include <wx/log.h>
16 #include <wx/log.h>
17
18
19 class sipwxLogChain : public ::wxLogChain
20 {
21 public:
22 sipwxLogChain( ::wxLog*);
23 virtual ~sipwxLogChain();
24
25 /*
26 * There is a public method for every protected method visible from
27 * this class.
28 */
29 void sipProtectVirt_DoLogRecord(bool, ::wxLogLevel,const ::wxString&,const ::wxLogRecordInfo&);
30 void sipProtectVirt_DoLogTextAtLevel(bool, ::wxLogLevel,const ::wxString&);
31 void sipProtectVirt_DoLogText(bool,const ::wxString&);
32
33 /*
34 * There is a protected method for every virtual method visible from
35 * this class.
36 */
37 protected:
38 void Flush() SIP_OVERRIDE;
39 void DoLogRecord( ::wxLogLevel,const ::wxString&,const ::wxLogRecordInfo&) SIP_OVERRIDE;
40 void DoLogTextAtLevel( ::wxLogLevel,const ::wxString&) SIP_OVERRIDE;
41 void DoLogText(const ::wxString&) SIP_OVERRIDE;
42
43 public:
44 sipSimpleWrapper *sipPySelf;
45
46 private:
47 sipwxLogChain(const sipwxLogChain &);
48 sipwxLogChain &operator = (const sipwxLogChain &);
49
50 char sipPyMethods[4];
51 };
52
sipwxLogChain(::wxLog * logger)53 sipwxLogChain::sipwxLogChain( ::wxLog*logger): ::wxLogChain(logger), sipPySelf(SIP_NULLPTR)
54 {
55 memset(sipPyMethods, 0, sizeof (sipPyMethods));
56 }
57
~sipwxLogChain()58 sipwxLogChain::~sipwxLogChain()
59 {
60 sipInstanceDestroyedEx(&sipPySelf);
61 }
62
Flush()63 void sipwxLogChain::Flush()
64 {
65 sip_gilstate_t sipGILState;
66 PyObject *sipMeth;
67
68 sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[0],sipPySelf,SIP_NULLPTR,sipName_Flush);
69
70 if (!sipMeth)
71 {
72 ::wxLogChain::Flush();
73 return;
74 }
75
76 extern void sipVH__core_45(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);
77
78 sipVH__core_45(sipGILState, 0, sipPySelf, sipMeth);
79 }
80
DoLogRecord(::wxLogLevel level,const::wxString & msg,const::wxLogRecordInfo & info)81 void sipwxLogChain::DoLogRecord( ::wxLogLevel level,const ::wxString& msg,const ::wxLogRecordInfo& info)
82 {
83 sip_gilstate_t sipGILState;
84 PyObject *sipMeth;
85
86 sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[1],sipPySelf,SIP_NULLPTR,sipName_DoLogRecord);
87
88 if (!sipMeth)
89 {
90 ::wxLogChain::DoLogRecord(level,msg,info);
91 return;
92 }
93
94 extern void sipVH__core_46(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxLogLevel,const ::wxString&,const ::wxLogRecordInfo&);
95
96 sipVH__core_46(sipGILState, 0, sipPySelf, sipMeth, level, msg, info);
97 }
98
DoLogTextAtLevel(::wxLogLevel level,const::wxString & msg)99 void sipwxLogChain::DoLogTextAtLevel( ::wxLogLevel level,const ::wxString& msg)
100 {
101 sip_gilstate_t sipGILState;
102 PyObject *sipMeth;
103
104 sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[2],sipPySelf,SIP_NULLPTR,sipName_DoLogTextAtLevel);
105
106 if (!sipMeth)
107 {
108 ::wxLogChain::DoLogTextAtLevel(level,msg);
109 return;
110 }
111
112 extern void sipVH__core_47(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxLogLevel,const ::wxString&);
113
114 sipVH__core_47(sipGILState, 0, sipPySelf, sipMeth, level, msg);
115 }
116
DoLogText(const::wxString & msg)117 void sipwxLogChain::DoLogText(const ::wxString& msg)
118 {
119 sip_gilstate_t sipGILState;
120 PyObject *sipMeth;
121
122 sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[3],sipPySelf,SIP_NULLPTR,sipName_DoLogText);
123
124 if (!sipMeth)
125 {
126 ::wxLogChain::DoLogText(msg);
127 return;
128 }
129
130 extern void sipVH__core_48(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, const ::wxString&);
131
132 sipVH__core_48(sipGILState, 0, sipPySelf, sipMeth, msg);
133 }
134
sipProtectVirt_DoLogRecord(bool sipSelfWasArg,::wxLogLevel level,const::wxString & msg,const::wxLogRecordInfo & info)135 void sipwxLogChain::sipProtectVirt_DoLogRecord(bool sipSelfWasArg, ::wxLogLevel level,const ::wxString& msg,const ::wxLogRecordInfo& info)
136 {
137 (sipSelfWasArg ? ::wxLog::DoLogRecord(level,msg,info) : DoLogRecord(level,msg,info));
138 }
139
sipProtectVirt_DoLogTextAtLevel(bool sipSelfWasArg,::wxLogLevel level,const::wxString & msg)140 void sipwxLogChain::sipProtectVirt_DoLogTextAtLevel(bool sipSelfWasArg, ::wxLogLevel level,const ::wxString& msg)
141 {
142 (sipSelfWasArg ? ::wxLog::DoLogTextAtLevel(level,msg) : DoLogTextAtLevel(level,msg));
143 }
144
sipProtectVirt_DoLogText(bool sipSelfWasArg,const::wxString & msg)145 void sipwxLogChain::sipProtectVirt_DoLogText(bool sipSelfWasArg,const ::wxString& msg)
146 {
147 (sipSelfWasArg ? ::wxLog::DoLogText(msg) : DoLogText(msg));
148 }
149
150
151 PyDoc_STRVAR(doc_wxLogChain_DoLogRecord, "DoLogRecord(level, msg, info)\n"
152 "\n"
153 "Called to log a new record.");
154
155 extern "C" {static PyObject *meth_wxLogChain_DoLogRecord(PyObject *, PyObject *, PyObject *);}
meth_wxLogChain_DoLogRecord(PyObject * sipSelf,PyObject * sipArgs,PyObject * sipKwds)156 static PyObject *meth_wxLogChain_DoLogRecord(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
157 {
158 PyObject *sipParseErr = SIP_NULLPTR;
159 bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));
160
161 {
162 ::wxLogLevel level;
163 const ::wxString* msg;
164 int msgState = 0;
165 const ::wxLogRecordInfo* info;
166 sipwxLogChain *sipCpp;
167
168 static const char *sipKwdList[] = {
169 sipName_level,
170 sipName_msg,
171 sipName_info,
172 };
173
174 if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BmJ1J9", &sipSelf, sipType_wxLogChain, &sipCpp, &level, sipType_wxString,&msg, &msgState, sipType_wxLogRecordInfo, &info))
175 {
176 PyErr_Clear();
177
178 Py_BEGIN_ALLOW_THREADS
179 sipCpp->sipProtectVirt_DoLogRecord(sipSelfWasArg,level,*msg,*info);
180 Py_END_ALLOW_THREADS
181 sipReleaseType(const_cast< ::wxString *>(msg),sipType_wxString,msgState);
182
183 if (PyErr_Occurred())
184 return 0;
185
186 Py_INCREF(Py_None);
187 return Py_None;
188 }
189 }
190
191 /* Raise an exception if the arguments couldn't be parsed. */
192 sipNoMethod(sipParseErr, sipName_LogChain, sipName_DoLogRecord, SIP_NULLPTR);
193
194 return SIP_NULLPTR;
195 }
196
197
198 PyDoc_STRVAR(doc_wxLogChain_DoLogTextAtLevel, "DoLogTextAtLevel(level, msg)\n"
199 "\n"
200 "Called to log the specified string at given level.");
201
202 extern "C" {static PyObject *meth_wxLogChain_DoLogTextAtLevel(PyObject *, PyObject *, PyObject *);}
meth_wxLogChain_DoLogTextAtLevel(PyObject * sipSelf,PyObject * sipArgs,PyObject * sipKwds)203 static PyObject *meth_wxLogChain_DoLogTextAtLevel(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
204 {
205 PyObject *sipParseErr = SIP_NULLPTR;
206 bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));
207
208 {
209 ::wxLogLevel level;
210 const ::wxString* msg;
211 int msgState = 0;
212 sipwxLogChain *sipCpp;
213
214 static const char *sipKwdList[] = {
215 sipName_level,
216 sipName_msg,
217 };
218
219 if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BmJ1", &sipSelf, sipType_wxLogChain, &sipCpp, &level, sipType_wxString,&msg, &msgState))
220 {
221 PyErr_Clear();
222
223 Py_BEGIN_ALLOW_THREADS
224 sipCpp->sipProtectVirt_DoLogTextAtLevel(sipSelfWasArg,level,*msg);
225 Py_END_ALLOW_THREADS
226 sipReleaseType(const_cast< ::wxString *>(msg),sipType_wxString,msgState);
227
228 if (PyErr_Occurred())
229 return 0;
230
231 Py_INCREF(Py_None);
232 return Py_None;
233 }
234 }
235
236 /* Raise an exception if the arguments couldn't be parsed. */
237 sipNoMethod(sipParseErr, sipName_LogChain, sipName_DoLogTextAtLevel, SIP_NULLPTR);
238
239 return SIP_NULLPTR;
240 }
241
242
243 PyDoc_STRVAR(doc_wxLogChain_DoLogText, "DoLogText(msg)\n"
244 "\n"
245 "Called to log the specified string.");
246
247 extern "C" {static PyObject *meth_wxLogChain_DoLogText(PyObject *, PyObject *, PyObject *);}
meth_wxLogChain_DoLogText(PyObject * sipSelf,PyObject * sipArgs,PyObject * sipKwds)248 static PyObject *meth_wxLogChain_DoLogText(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
249 {
250 PyObject *sipParseErr = SIP_NULLPTR;
251 bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));
252
253 {
254 const ::wxString* msg;
255 int msgState = 0;
256 sipwxLogChain *sipCpp;
257
258 static const char *sipKwdList[] = {
259 sipName_msg,
260 };
261
262 if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ1", &sipSelf, sipType_wxLogChain, &sipCpp, sipType_wxString,&msg, &msgState))
263 {
264 PyErr_Clear();
265
266 Py_BEGIN_ALLOW_THREADS
267 sipCpp->sipProtectVirt_DoLogText(sipSelfWasArg,*msg);
268 Py_END_ALLOW_THREADS
269 sipReleaseType(const_cast< ::wxString *>(msg),sipType_wxString,msgState);
270
271 if (PyErr_Occurred())
272 return 0;
273
274 Py_INCREF(Py_None);
275 return Py_None;
276 }
277 }
278
279 /* Raise an exception if the arguments couldn't be parsed. */
280 sipNoMethod(sipParseErr, sipName_LogChain, sipName_DoLogText, SIP_NULLPTR);
281
282 return SIP_NULLPTR;
283 }
284
285
286 PyDoc_STRVAR(doc_wxLogChain_DetachOldLog, "DetachOldLog()\n"
287 "\n"
288 "Detaches the old log target so it won't be destroyed when the\n"
289 "wxLogChain object is destroyed.");
290
291 extern "C" {static PyObject *meth_wxLogChain_DetachOldLog(PyObject *, PyObject *);}
meth_wxLogChain_DetachOldLog(PyObject * sipSelf,PyObject * sipArgs)292 static PyObject *meth_wxLogChain_DetachOldLog(PyObject *sipSelf, PyObject *sipArgs)
293 {
294 PyObject *sipParseErr = SIP_NULLPTR;
295
296 {
297 ::wxLogChain *sipCpp;
298
299 if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxLogChain, &sipCpp))
300 {
301 PyErr_Clear();
302
303 Py_BEGIN_ALLOW_THREADS
304 sipCpp->DetachOldLog();
305 Py_END_ALLOW_THREADS
306
307 if (PyErr_Occurred())
308 return 0;
309
310 Py_INCREF(Py_None);
311 return Py_None;
312 }
313 }
314
315 /* Raise an exception if the arguments couldn't be parsed. */
316 sipNoMethod(sipParseErr, sipName_LogChain, sipName_DetachOldLog, SIP_NULLPTR);
317
318 return SIP_NULLPTR;
319 }
320
321
322 PyDoc_STRVAR(doc_wxLogChain_GetOldLog, "GetOldLog() -> Log\n"
323 "\n"
324 "Returns the pointer to the previously active log target (which may be\n"
325 "NULL).");
326
327 extern "C" {static PyObject *meth_wxLogChain_GetOldLog(PyObject *, PyObject *);}
meth_wxLogChain_GetOldLog(PyObject * sipSelf,PyObject * sipArgs)328 static PyObject *meth_wxLogChain_GetOldLog(PyObject *sipSelf, PyObject *sipArgs)
329 {
330 PyObject *sipParseErr = SIP_NULLPTR;
331
332 {
333 const ::wxLogChain *sipCpp;
334
335 if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxLogChain, &sipCpp))
336 {
337 ::wxLog*sipRes;
338
339 PyErr_Clear();
340
341 Py_BEGIN_ALLOW_THREADS
342 sipRes = sipCpp->GetOldLog();
343 Py_END_ALLOW_THREADS
344
345 if (PyErr_Occurred())
346 return 0;
347
348 return sipConvertFromType(sipRes,sipType_wxLog,SIP_NULLPTR);
349 }
350 }
351
352 /* Raise an exception if the arguments couldn't be parsed. */
353 sipNoMethod(sipParseErr, sipName_LogChain, sipName_GetOldLog, SIP_NULLPTR);
354
355 return SIP_NULLPTR;
356 }
357
358
359 PyDoc_STRVAR(doc_wxLogChain_IsPassingMessages, "IsPassingMessages() -> bool\n"
360 "\n"
361 "Returns true if the messages are passed to the previously active log\n"
362 "target (default) or false if PassMessages() had been called.");
363
364 extern "C" {static PyObject *meth_wxLogChain_IsPassingMessages(PyObject *, PyObject *);}
meth_wxLogChain_IsPassingMessages(PyObject * sipSelf,PyObject * sipArgs)365 static PyObject *meth_wxLogChain_IsPassingMessages(PyObject *sipSelf, PyObject *sipArgs)
366 {
367 PyObject *sipParseErr = SIP_NULLPTR;
368
369 {
370 const ::wxLogChain *sipCpp;
371
372 if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxLogChain, &sipCpp))
373 {
374 bool sipRes;
375
376 PyErr_Clear();
377
378 Py_BEGIN_ALLOW_THREADS
379 sipRes = sipCpp->IsPassingMessages();
380 Py_END_ALLOW_THREADS
381
382 if (PyErr_Occurred())
383 return 0;
384
385 return PyBool_FromLong(sipRes);
386 }
387 }
388
389 /* Raise an exception if the arguments couldn't be parsed. */
390 sipNoMethod(sipParseErr, sipName_LogChain, sipName_IsPassingMessages, SIP_NULLPTR);
391
392 return SIP_NULLPTR;
393 }
394
395
396 PyDoc_STRVAR(doc_wxLogChain_PassMessages, "PassMessages(passMessages)\n"
397 "\n"
398 "By default, the log messages are passed to the previously active log\n"
399 "target.");
400
401 extern "C" {static PyObject *meth_wxLogChain_PassMessages(PyObject *, PyObject *, PyObject *);}
meth_wxLogChain_PassMessages(PyObject * sipSelf,PyObject * sipArgs,PyObject * sipKwds)402 static PyObject *meth_wxLogChain_PassMessages(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
403 {
404 PyObject *sipParseErr = SIP_NULLPTR;
405
406 {
407 bool passMessages;
408 ::wxLogChain *sipCpp;
409
410 static const char *sipKwdList[] = {
411 sipName_passMessages,
412 };
413
414 if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Bb", &sipSelf, sipType_wxLogChain, &sipCpp, &passMessages))
415 {
416 PyErr_Clear();
417
418 Py_BEGIN_ALLOW_THREADS
419 sipCpp->PassMessages(passMessages);
420 Py_END_ALLOW_THREADS
421
422 if (PyErr_Occurred())
423 return 0;
424
425 Py_INCREF(Py_None);
426 return Py_None;
427 }
428 }
429
430 /* Raise an exception if the arguments couldn't be parsed. */
431 sipNoMethod(sipParseErr, sipName_LogChain, sipName_PassMessages, SIP_NULLPTR);
432
433 return SIP_NULLPTR;
434 }
435
436
437 PyDoc_STRVAR(doc_wxLogChain_SetLog, "SetLog(logger)\n"
438 "\n"
439 "Sets another log target to use (may be NULL).");
440
441 extern "C" {static PyObject *meth_wxLogChain_SetLog(PyObject *, PyObject *, PyObject *);}
meth_wxLogChain_SetLog(PyObject * sipSelf,PyObject * sipArgs,PyObject * sipKwds)442 static PyObject *meth_wxLogChain_SetLog(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
443 {
444 PyObject *sipParseErr = SIP_NULLPTR;
445
446 {
447 ::wxLog* logger;
448 ::wxLogChain *sipCpp;
449
450 static const char *sipKwdList[] = {
451 sipName_logger,
452 };
453
454 if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ8", &sipSelf, sipType_wxLogChain, &sipCpp, sipType_wxLog, &logger))
455 {
456 PyErr_Clear();
457
458 Py_BEGIN_ALLOW_THREADS
459 sipCpp->SetLog(logger);
460 Py_END_ALLOW_THREADS
461
462 if (PyErr_Occurred())
463 return 0;
464
465 Py_INCREF(Py_None);
466 return Py_None;
467 }
468 }
469
470 /* Raise an exception if the arguments couldn't be parsed. */
471 sipNoMethod(sipParseErr, sipName_LogChain, sipName_SetLog, SIP_NULLPTR);
472
473 return SIP_NULLPTR;
474 }
475
476
477 /* Cast a pointer to a type somewhere in its inheritance hierarchy. */
478 extern "C" {static void *cast_wxLogChain(void *, const sipTypeDef *);}
cast_wxLogChain(void * sipCppV,const sipTypeDef * targetType)479 static void *cast_wxLogChain(void *sipCppV, const sipTypeDef *targetType)
480 {
481 ::wxLogChain *sipCpp = reinterpret_cast< ::wxLogChain *>(sipCppV);
482
483 if (targetType == sipType_wxLog)
484 return static_cast< ::wxLog *>(sipCpp);
485
486 return sipCppV;
487 }
488
489
490 /* Call the instance's destructor. */
491 extern "C" {static void release_wxLogChain(void *, int);}
release_wxLogChain(void * sipCppV,int sipState)492 static void release_wxLogChain(void *sipCppV, int sipState)
493 {
494 Py_BEGIN_ALLOW_THREADS
495
496 if (sipState & SIP_DERIVED_CLASS)
497 delete reinterpret_cast<sipwxLogChain *>(sipCppV);
498 else
499 delete reinterpret_cast< ::wxLogChain *>(sipCppV);
500
501 Py_END_ALLOW_THREADS
502 }
503
504
505 extern "C" {static void dealloc_wxLogChain(sipSimpleWrapper *);}
dealloc_wxLogChain(sipSimpleWrapper * sipSelf)506 static void dealloc_wxLogChain(sipSimpleWrapper *sipSelf)
507 {
508 if (sipIsDerivedClass(sipSelf))
509 reinterpret_cast<sipwxLogChain *>(sipGetAddress(sipSelf))->sipPySelf = SIP_NULLPTR;
510
511 if (sipIsOwnedByPython(sipSelf))
512 {
513 release_wxLogChain(sipGetAddress(sipSelf), sipIsDerivedClass(sipSelf));
514 }
515 }
516
517
518 extern "C" {static void *init_type_wxLogChain(sipSimpleWrapper *, PyObject *, PyObject *, PyObject **, PyObject **, PyObject **);}
init_type_wxLogChain(sipSimpleWrapper * sipSelf,PyObject * sipArgs,PyObject * sipKwds,PyObject ** sipUnused,PyObject **,PyObject ** sipParseErr)519 static void *init_type_wxLogChain(sipSimpleWrapper *sipSelf, PyObject *sipArgs, PyObject *sipKwds, PyObject **sipUnused, PyObject **, PyObject **sipParseErr)
520 {
521 sipwxLogChain *sipCpp = SIP_NULLPTR;
522
523 {
524 ::wxLog* logger;
525
526 static const char *sipKwdList[] = {
527 sipName_logger,
528 };
529
530 if (sipParseKwdArgs(sipParseErr, sipArgs, sipKwds, sipKwdList, sipUnused, "J8", sipType_wxLog, &logger))
531 {
532 PyErr_Clear();
533
534 Py_BEGIN_ALLOW_THREADS
535 sipCpp = new sipwxLogChain(logger);
536 Py_END_ALLOW_THREADS
537
538 if (PyErr_Occurred())
539 {
540 delete sipCpp;
541 return SIP_NULLPTR;
542 }
543
544 sipCpp->sipPySelf = sipSelf;
545
546 return sipCpp;
547 }
548 }
549
550 return SIP_NULLPTR;
551 }
552
553
554 /* Define this type's super-types. */
555 static sipEncodedTypeDef supers_wxLogChain[] = {{298, 255, 1}};
556
557
558 static PyMethodDef methods_wxLogChain[] = {
559 {SIP_MLNAME_CAST(sipName_DetachOldLog), meth_wxLogChain_DetachOldLog, METH_VARARGS, SIP_MLDOC_CAST(doc_wxLogChain_DetachOldLog)},
560 {SIP_MLNAME_CAST(sipName_DoLogRecord), SIP_MLMETH_CAST(meth_wxLogChain_DoLogRecord), METH_VARARGS|METH_KEYWORDS, SIP_NULLPTR},
561 {SIP_MLNAME_CAST(sipName_DoLogText), SIP_MLMETH_CAST(meth_wxLogChain_DoLogText), METH_VARARGS|METH_KEYWORDS, SIP_NULLPTR},
562 {SIP_MLNAME_CAST(sipName_DoLogTextAtLevel), SIP_MLMETH_CAST(meth_wxLogChain_DoLogTextAtLevel), METH_VARARGS|METH_KEYWORDS, SIP_NULLPTR},
563 {SIP_MLNAME_CAST(sipName_GetOldLog), meth_wxLogChain_GetOldLog, METH_VARARGS, SIP_MLDOC_CAST(doc_wxLogChain_GetOldLog)},
564 {SIP_MLNAME_CAST(sipName_IsPassingMessages), meth_wxLogChain_IsPassingMessages, METH_VARARGS, SIP_MLDOC_CAST(doc_wxLogChain_IsPassingMessages)},
565 {SIP_MLNAME_CAST(sipName_PassMessages), SIP_MLMETH_CAST(meth_wxLogChain_PassMessages), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxLogChain_PassMessages)},
566 {SIP_MLNAME_CAST(sipName_SetLog), SIP_MLMETH_CAST(meth_wxLogChain_SetLog), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxLogChain_SetLog)}
567 };
568
569 sipVariableDef variables_wxLogChain[] = {
570 {PropertyVariable, sipName_OldLog, &methods_wxLogChain[4], SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
571 };
572
573 PyDoc_STRVAR(doc_wxLogChain, "LogChain(logger)\n"
574 "\n"
575 "This simple class allows you to chain log sinks, that is to install a\n"
576 "new sink but keep passing log messages to the old one instead of\n"
577 "replacing it completely as wxLog::SetActiveTarget does.");
578
579
580 sipClassTypeDef sipTypeDef__core_wxLogChain = {
581 {
582 -1,
583 SIP_NULLPTR,
584 SIP_NULLPTR,
585 SIP_TYPE_CLASS,
586 sipNameNr_wxLogChain,
587 {SIP_NULLPTR},
588 SIP_NULLPTR
589 },
590 {
591 sipNameNr_LogChain,
592 {0, 0, 1},
593 8, methods_wxLogChain,
594 0, SIP_NULLPTR,
595 1, variables_wxLogChain,
596 {SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
597 },
598 doc_wxLogChain,
599 -1,
600 -1,
601 supers_wxLogChain,
602 SIP_NULLPTR,
603 init_type_wxLogChain,
604 SIP_NULLPTR,
605 SIP_NULLPTR,
606 #if PY_MAJOR_VERSION >= 3
607 SIP_NULLPTR,
608 SIP_NULLPTR,
609 #else
610 SIP_NULLPTR,
611 SIP_NULLPTR,
612 SIP_NULLPTR,
613 SIP_NULLPTR,
614 #endif
615 dealloc_wxLogChain,
616 SIP_NULLPTR,
617 SIP_NULLPTR,
618 SIP_NULLPTR,
619 release_wxLogChain,
620 cast_wxLogChain,
621 SIP_NULLPTR,
622 SIP_NULLPTR,
623 SIP_NULLPTR,
624 SIP_NULLPTR,
625 SIP_NULLPTR,
626 SIP_NULLPTR
627 };
628