GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — pythonnet_old/pythonnet/src/testing/eventtest.cs at master · fkarb/pythonnet_old

Expand file tree

/

eventtest.cs

Copy path
More file actions
More file actions

Latest commit

 

History

History
History
130 lines (88 loc) · 3.46 KB
/

eventtest.cs

Copy path

File metadata and controls

130 lines (88 loc) · 3.46 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
// ==========================================================================
// This software is subject to the provisions of the Zope Public License,
// Version 2.0 (ZPL). A copy of the ZPL should accompany this distribution.
// THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
// WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
// WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
// FOR A PARTICULAR PURPOSE.
// ==========================================================================
using System;
using System.Windows.Forms;
namespace Python.Test {
//========================================================================
// Supports CLR event unit tests.
//========================================================================
public delegate void TestEventHandler(object sender, TestEventArgs e);
public class EventTest {
public void WinFormTest() {
EventTest e = new EventTest();
EventHandler h = new EventHandler(e.ClickHandler);
Form f = new Form();
f.Click += h;
//f.Click(null, new EventArgs());
f.Click -= h;
}
public void ClickHandler(object sender, EventArgs e) {
Console.WriteLine("click");
}
public static event TestEventHandler PublicStaticEvent;
protected static event TestEventHandler ProtectedStaticEvent;
internal static event TestEventHandler InternalStaticEvent;
private static event TestEventHandler PrivateStaticEvent;
public event TestEventHandler PublicEvent;
protected event TestEventHandler ProtectedEvent;
internal event TestEventHandler InternalEvent;
private event TestEventHandler PrivateEvent;
public static int s_value;
public int value;
public EventTest () {
this.value = 0;
}
static EventTest () {
s_value = 0;
}
public void OnPublicEvent(TestEventArgs e) {
if (PublicEvent != null) {
PublicEvent(this, e);
}
}
public void OnProtectedEvent(TestEventArgs e) {
if (ProtectedEvent != null) {
ProtectedEvent(this, e);
}
}
public static void OnPublicStaticEvent(TestEventArgs e) {
if (PublicStaticEvent != null) {
PublicStaticEvent(null, e);
}
}
protected static void OnProtectedStaticEvent(TestEventArgs e) {
if (ProtectedStaticEvent != null) {
ProtectedStaticEvent(null, e);
}
}
public void GenericHandler(object sender, TestEventArgs e) {
this.value = e.value;
}
public static void StaticHandler(object sender, TestEventArgs e) {
s_value = e.value;
}
public static void ShutUpCompiler() {
// Quiet compiler warnings.
EventTest e = new EventTest();
TestEventHandler f = new TestEventHandler(e.GenericHandler);
ProtectedStaticEvent += f;
InternalStaticEvent += f;
PrivateStaticEvent += f;
e.ProtectedEvent += f;
e.InternalEvent += f;
e.PrivateEvent += f;
}
}
public class TestEventArgs : EventArgs {
public int value;
public TestEventArgs(int v) {
this.value = v;
}
}
}
You are visitor 01402520 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.