Class: NSRunningApplication
- Defined in:
- ext/accessibility/extras/extras.c,
ext/accessibility/extras/extras.c
Overview
A 99% drop-in replacement for Cocoa's NSWorkspace class on MRI and other
non-MacRuby rubies.
See Apple's Developer Reference for documentation on the methods in this class.
Class Method Summary collapse
- .currentApplication ⇒ Object
-
.runningApplicationsWithBundleIdentifier(bundle_id) ⇒ Object
ruby behaviour would be to raise, but we want "drop-in" compat.
- .runningApplicationWithProcessIdentifier(num_pid) ⇒ Object
- .terminateAutomaticallyTerminableApplications ⇒ Object
Instance Method Summary collapse
- #==(other) ⇒ Object
- #activateWithOptions(options) ⇒ Object
- #activationPolicy ⇒ Object
-
#active? ⇒ Boolean
return this to be MacRuby compatible.
-
#bundleIdentifier ⇒ Object
rb_define_method(rb_cRunningApp, "icon", rb_running_app_icon, 0);.
- #bundleURL ⇒ Object
- #executableArchitecture ⇒ Object
- #executableURL ⇒ Object
- #finishedLaunching? ⇒ Boolean
- #forceTerminate ⇒ Object
- #hidden? ⇒ Boolean
- #hide ⇒ Object
- #launchDate ⇒ Object
- #localizedName ⇒ Object
- #ownsMenuBar ⇒ Object (also: #ownsMenuBar?)
- #processIdentifier ⇒ Object
- #terminate ⇒ Object
- #terminated? ⇒ Boolean
- #unhide ⇒ Object
Class Method Details
.currentApplication ⇒ Object
75 76 77 78 79 80 81 82 |
# File 'ext/accessibility/extras/extras.c', line 75 static VALUE rb_running_app_current_app(VALUE self) { NSRunningApplication* const app = [NSRunningApplication currentApplication]; if (app) return wrap_app(app); return Qnil; } |
.runningApplicationsWithBundleIdentifier(bundle_id) ⇒ Object
ruby behaviour would be to raise, but we want "drop-in" compat
67 68 69 70 71 72 73 |
# File 'ext/accessibility/extras/extras.c', line 67 static VALUE rb_running_app_with_bundle_id(VALUE self, VALUE bundle_id) { return wrap_array_apps([NSRunningApplication runningApplicationsWithBundleIdentifier:unwrap_nsstring(bundle_id)]); } |
.runningApplicationWithProcessIdentifier(num_pid) ⇒ Object
55 56 57 58 59 60 61 62 63 64 65 |
# File 'ext/accessibility/extras/extras.c', line 55 static VALUE rb_running_app_with_pid(VALUE self, VALUE num_pid) { const pid_t pid = NUM2PIDT(num_pid); NSRunningApplication* const app = [NSRunningApplication runningApplicationWithProcessIdentifier:pid]; if (app) return wrap_app(app); return Qnil; // ruby behaviour would be to raise, but we want "drop-in" compat } |
.terminateAutomaticallyTerminableApplications ⇒ Object
84 85 86 87 88 89 90 |
# File 'ext/accessibility/extras/extras.c', line 84 static VALUE rb_running_app_drop_nuke(VALUE self) { [NSRunningApplication terminateAutomaticallyTerminableApplications]; return rb_cRunningApp; // return this to be MacRuby compatible } |
Instance Method Details
#==(other) ⇒ Object
232 233 234 235 236 237 238 239 240 |
# File 'ext/accessibility/extras/extras.c', line 232 static VALUE rb_running_app_equality(VALUE self, VALUE other) { if (CLASS_OF(other) == rb_cRunningApp) if ([unwrap_app(self) isEqual:unwrap_app(other)]) return Qtrue; return Qfalse; } |
#activateWithOptions(options) ⇒ Object
100 101 102 103 104 105 |
# File 'ext/accessibility/extras/extras.c', line 100 static VALUE rb_running_app_activate(VALUE self, VALUE ) { return ([unwrap_app(self) activateWithOptions:FIX2INT()] ? Qtrue : Qfalse); } |
#activationPolicy ⇒ Object
107 108 109 110 111 112 |
# File 'ext/accessibility/extras/extras.c', line 107 static VALUE rb_running_app_activation_policy(VALUE self) { return INT2FIX(unwrap_app(self).activationPolicy); } |
#active? ⇒ Boolean
return this to be MacRuby compatible
93 94 95 96 97 98 |
# File 'ext/accessibility/extras/extras.c', line 93 static VALUE rb_running_app_is_active(VALUE self) { return unwrap_app(self).isActive ? Qtrue : Qfalse; } |
#bundleIdentifier ⇒ Object
rb_define_method(rb_cRunningApp, "icon", rb_running_app_icon, 0);
147 148 149 150 151 152 153 154 155 |
# File 'ext/accessibility/extras/extras.c', line 147 static VALUE rb_running_app_bundle_id(VALUE self) { NSString* name = [unwrap_app(self) bundleIdentifier]; if (name) return wrap_nsstring(name); return Qnil; } |
#bundleURL ⇒ Object
157 158 159 160 161 162 163 164 165 166 167 |
# File 'ext/accessibility/extras/extras.c', line 157 static VALUE rb_running_app_bundle_url(VALUE self) { NSURL* url = [unwrap_app(self) bundleURL]; VALUE rburl = Qnil; if (url) rburl = wrap_nsurl(url); [url release]; return rburl; } |
#executableArchitecture ⇒ Object
169 170 171 172 173 174 |
# File 'ext/accessibility/extras/extras.c', line 169 static VALUE rb_running_app_executable_arch(VALUE self) { return INT2FIX(unwrap_app(self).executableArchitecture); } |
#executableURL ⇒ Object
176 177 178 179 180 181 |
# File 'ext/accessibility/extras/extras.c', line 176 static VALUE rb_running_app_executable_url(VALUE self) { return wrap_nsurl(unwrap_app(self).executableURL); } |
#finishedLaunching? ⇒ Boolean
190 191 192 193 194 195 |
# File 'ext/accessibility/extras/extras.c', line 190 static VALUE rb_running_app_is_launched(VALUE self) { return (unwrap_app(self).isFinishedLaunching ? Qtrue : Qfalse); } |
#forceTerminate ⇒ Object
211 212 213 214 215 216 |
# File 'ext/accessibility/extras/extras.c', line 211 static VALUE rb_running_app_force_terminate(VALUE self) { return ([unwrap_app(self) forceTerminate] ? Qtrue : Qfalse); } |
#hidden? ⇒ Boolean
128 129 130 131 132 133 |
# File 'ext/accessibility/extras/extras.c', line 128 static VALUE rb_running_app_is_hidden(VALUE self) { return (unwrap_app(self).isHidden ? Qtrue : Qfalse); } |
#hide ⇒ Object
114 115 116 117 118 119 |
# File 'ext/accessibility/extras/extras.c', line 114 static VALUE rb_running_app_hide(VALUE self) { return ([unwrap_app(self) hide] ? Qtrue : Qfalse); } |
#launchDate ⇒ Object
183 184 185 186 187 188 |
# File 'ext/accessibility/extras/extras.c', line 183 static VALUE rb_running_app_launch_date(VALUE self) { return wrap_nsdate(unwrap_app(self).launchDate); } |
#localizedName ⇒ Object
135 136 137 138 139 140 141 142 143 144 145 |
# File 'ext/accessibility/extras/extras.c', line 135 static VALUE rb_running_app_localized_name(VALUE self) { NSString* string = [unwrap_app(self) localizedName]; VALUE str = Qnil; if (string) str = wrap_nsstring(string); [string release]; return str; } |
#ownsMenuBar ⇒ Object Also known as: ownsMenuBar?
204 205 206 207 208 209 |
# File 'ext/accessibility/extras/extras.c', line 204 static VALUE (VALUE self) { return (unwrap_app(self).ownsMenuBar ? Qtrue : Qfalse); } |
#processIdentifier ⇒ Object
197 198 199 200 201 202 |
# File 'ext/accessibility/extras/extras.c', line 197 static VALUE rb_running_app_pid(VALUE self) { return PIDT2NUM(unwrap_app(self).processIdentifier); } |
#terminate ⇒ Object
218 219 220 221 222 223 |
# File 'ext/accessibility/extras/extras.c', line 218 static VALUE rb_running_app_terminate(VALUE self) { return ([unwrap_app(self) terminate] ? Qtrue : Qfalse); } |
#terminated? ⇒ Boolean
225 226 227 228 229 230 |
# File 'ext/accessibility/extras/extras.c', line 225 static VALUE rb_running_app_is_terminated(VALUE self) { return (unwrap_app(self).isTerminated ? Qtrue : Qfalse); } |
#unhide ⇒ Object
121 122 123 124 125 126 |
# File 'ext/accessibility/extras/extras.c', line 121 static VALUE rb_running_app_unhide(VALUE self) { return ([unwrap_app(self) unhide] ? Qtrue : Qfalse); } |