def rightMouseDown_(self, event): point = self.window().convertScreenToBase_(NSEvent.mouseLocation()) event = NSEvent.mouseEventWithType_location_modifierFlags_timestamp_windowNumber_context_eventNumber_clickCount_pressure_( NSRightMouseUp, point, 0, NSDate.timeIntervalSinceReferenceDate(), self.window().windowNumber(), self.window().graphicsContext(), 0, 1, 0) videoDevicesMenu = NSMenu.alloc().init() lastItem = videoDevicesMenu.addItemWithTitle_action_keyEquivalent_(NSLocalizedString("Select Video Camera", "Menu item"), "", "") lastItem.setEnabled_(False) videoDevicesMenu.addItem_(NSMenuItem.separatorItem()) i = 0 for item in Engine().video_devices: if item not in (None, 'system_default'): i += 1 lastItem = videoDevicesMenu.addItemWithTitle_action_keyEquivalent_(item, "changeVideoDevice:", "") lastItem.setRepresentedObject_(item) if SIPApplication.video_device.real_name == item: lastItem.setState_(NSOnState) if i > 1: videoDevicesMenu.addItem_(NSMenuItem.separatorItem()) settings = SIPSimpleSettings() lastItem = videoDevicesMenu.addItemWithTitle_action_keyEquivalent_(NSLocalizedString("Auto Rotate Cameras", "Menu item"), "toggleAutoRotate:", "") lastItem.setState_(NSOnState if settings.video.auto_rotate_cameras else NSOffState) NSMenu.popUpContextMenu_withEvent_forView_(videoDevicesMenu, event, self.window().contentView())
def loadGroupNames(self): self.groupPopUp.removeAllItems() nr_groups = len(self.belonging_groups) if nr_groups == 0: title = NSLocalizedString("No Selected Groups", "Popup button item") elif nr_groups == 1: title = NSLocalizedString("One Selected Group", "Popup button item") else: title = NSLocalizedString("%d Selected Groups" % nr_groups, "Popup button item") self.groupPopUp.addItemWithTitle_(title) menu_item = self.groupPopUp.lastItem() menu_item.setState_(NSOffState) self.groupPopUp.menu().addItem_(NSMenuItem.separatorItem()) for grp in self.all_groups: self.groupPopUp.addItemWithTitle_(grp.name) item = self.groupPopUp.lastItem() item.setRepresentedObject_(grp) menu_item = self.groupPopUp.lastItem() if grp in self.belonging_groups: menu_item.setState_(NSOnState) else: menu_item.setState_(NSOffState) self.groupPopUp.menu().addItem_(NSMenuItem.separatorItem()) self.groupPopUp.addItemWithTitle_(NSLocalizedString("Select All", "Popup button item")) self.groupPopUp.addItemWithTitle_(NSLocalizedString("Deselect All", "Popup button item")) self.groupPopUp.addItemWithTitle_(NSLocalizedString("Add Group...", "Popup button item"))
def applicationDidFinishLaunching_(self, aNotification): """ Create a toolbar and menu for the mac application that can be used to close shut down the application. """ self.statusItem = NSStatusBar\ .systemStatusBar()\ .statusItemWithLength_(NSVariableStatusItemLength) self.statusItem.setTitle_(u"M") self.statusItem.setHighlightMode_(TRUE) self.statusItem.setEnabled_(TRUE) self.quit = NSMenuItem.alloc().initWithTitle_action_keyEquivalent_( "Quit", "terminate:", "") # ugly but... it provides the information. self.port = NSMenuItem.alloc().initWithTitle_action_keyEquivalent_( "Listening on localhost:{0}".format(_PORT), "", "") self.menubarMenu = NSMenu.alloc().init() self.menubarMenu.addItem_(self.port) self.menubarMenu.addItem_(self.quit) # add the menu to status bar item self.statusItem.setMenu_(self.menubarMenu) self.statusItem.setToolTip_(u"mimic - rackspace mock api") AppHelper.callLater(1, startMimic)
def loadGroupNames(self): if self.belonging_groups is None: return self.groupPopUp.removeAllItems() nr_groups = len(self.belonging_groups) if nr_groups == 0: title = NSLocalizedString("No Selected Groups", "Menu item") elif nr_groups == 1: title = NSLocalizedString("One Selected Group", "Menu item") else: title = NSLocalizedString("%d Selected Groups", "Menu item") % nr_groups self.groupPopUp.addItemWithTitle_(title) menu_item = self.groupPopUp.lastItem() menu_item.setState_(NSOffState) self.groupPopUp.menu().addItem_(NSMenuItem.separatorItem()) for grp in self.all_groups: self.groupPopUp.addItemWithTitle_(grp.name) item = self.groupPopUp.lastItem() item.setRepresentedObject_(grp) menu_item = self.groupPopUp.lastItem() if grp in self.belonging_groups: menu_item.setState_(NSOnState) else: menu_item.setState_(NSOffState) self.groupPopUp.menu().addItem_(NSMenuItem.separatorItem()) self.groupPopUp.addItemWithTitle_( NSLocalizedString("Select All", "Menu item")) self.groupPopUp.addItemWithTitle_( NSLocalizedString("Deselect All", "Menu item")) self.groupPopUp.addItemWithTitle_( NSLocalizedString("Add Group...", "Menu item"))
def updateConfigurationsPopupButton(self): self.configurationsButton.removeAllItems() if self.conference_configurations: self.configurationsButton.addItemWithTitle_(NSLocalizedString("Select Configuration", "Menu item")) self.configurationsButton.lastItem().setEnabled_(False) self.configurationsButton.selectItem_(self.configurationsButton.lastItem()) self.configurationsButton.addItemWithTitle_(NSLocalizedString("None", "Menu item")) self.configurationsButton.lastItem().setEnabled_(True) for key in list(self.conference_configurations.keys()): self.configurationsButton.addItemWithTitle_(key) item = self.configurationsButton.lastItem() item.setRepresentedObject_(self.conference_configurations[key]) if self.selected_configuration and self.selected_configuration == key: self.configurationsButton.selectItem_(item) else: self.configurationsButton.addItemWithTitle_(NSLocalizedString("No configurations saved", "Menu item")) self.configurationsButton.lastItem().setEnabled_(False) self.configurationsButton.menu().addItem_(NSMenuItem.separatorItem()) self.configurationsButton.addItemWithTitle_(NSLocalizedString("Save configuration...", "Menu item")) self.configurationsButton.lastItem().setEnabled_(True) self.configurationsButton.addItemWithTitle_(NSLocalizedString("Rename configuration...", "Menu item")) self.configurationsButton.lastItem().setEnabled_(True if self.selected_configuration else False) self.configurationsButton.addItemWithTitle_(NSLocalizedString("Delete configuration", "Menu item")) self.configurationsButton.lastItem().setEnabled_(True if self.selected_configuration else False)
def updateConfigurationsPopupButton(self): self.configurationsButton.removeAllItems() if self.conference_configurations: self.configurationsButton.addItemWithTitle_(u"Select configuration") self.configurationsButton.lastItem().setEnabled_(False) self.configurationsButton.selectItem_(self.configurationsButton.lastItem()) self.configurationsButton.addItemWithTitle_(u"None") self.configurationsButton.lastItem().setEnabled_(True) for key in self.conference_configurations.keys(): self.configurationsButton.addItemWithTitle_(key) item = self.configurationsButton.lastItem() item.setRepresentedObject_(self.conference_configurations[key]) if self.selected_configuration and self.selected_configuration == key: self.configurationsButton.selectItem_(item) else: self.configurationsButton.addItemWithTitle_(u"No configurations saved") self.configurationsButton.lastItem().setEnabled_(False) self.configurationsButton.menu().addItem_(NSMenuItem.separatorItem()) self.configurationsButton.addItemWithTitle_(u"Save configuration...") self.configurationsButton.lastItem().setEnabled_(True) self.configurationsButton.addItemWithTitle_(u"Rename configuration...") self.configurationsButton.lastItem().setEnabled_(True if self.selected_configuration else False) self.configurationsButton.addItemWithTitle_(u"Delete configuration") self.configurationsButton.lastItem().setEnabled_(True if self.selected_configuration else False)
def awakeFromNib(self): smileys = SmileyManager().get_smiley_list() menu = self.smileyButton.menu() while menu.numberOfItems() > 0: menu.removeItemAtIndex_(0) bigText = NSAttributedString.alloc().initWithString_attributes_( " ", NSDictionary.dictionaryWithObject_forKey_( NSFont.systemFontOfSize_(16), NSFontAttributeName)) for text, file in smileys: image = NSImage.alloc().initWithContentsOfFile_(file) if not image: print("cant load %s" % file) continue image.setScalesWhenResized_(True) image.setSize_(NSMakeSize(16, 16)) atext = bigText.mutableCopy() atext.appendAttributedString_( NSAttributedString.alloc().initWithString_(text)) item = NSMenuItem.alloc().initWithTitle_action_keyEquivalent_( text, "insertSmiley:", "") menu.addItem_(item) item.setTarget_(self) item.setAttributedTitle_(atext) item.setRepresentedObject_( NSAttributedString.alloc().initWithString_(text)) item.setImage_(image)
def rightMouseDown_(self, event): point = self.parentWindow.convertScreenToBase_(NSEvent.mouseLocation()) event = NSEvent.mouseEventWithType_location_modifierFlags_timestamp_windowNumber_context_eventNumber_clickCount_pressure_( NSRightMouseUp, point, 0, NSDate.timeIntervalSinceReferenceDate(), self.parentWindow.windowNumber(), self.parentWindow.graphicsContext(), 0, 1, 0) videoDevicesMenu = NSMenu.alloc().init() lastItem = videoDevicesMenu.addItemWithTitle_action_keyEquivalent_(NSLocalizedString("Select Video Device", "Menu item"), "", "") lastItem.setEnabled_(False) videoDevicesMenu.addItem_(NSMenuItem.separatorItem()) for item in Engine().video_devices: if str(item) == "Colorbar generator": continue lastItem = videoDevicesMenu.addItemWithTitle_action_keyEquivalent_(item, "changeVideoDevice:", "") lastItem.setRepresentedObject_(item) if SIPApplication.video_device.real_name == item: lastItem.setState_(NSOnState) NSMenu.popUpContextMenu_withEvent_forView_(videoDevicesMenu, event, self)
def awakeFromNib(self): smileys = SmileyManager().get_smiley_list() menu = self.smileyButton.menu() while menu.numberOfItems() > 0: menu.removeItemAtIndex_(0) bigText = NSAttributedString.alloc().initWithString_attributes_(" ", NSDictionary.dictionaryWithObject_forKey_(NSFont.systemFontOfSize_(16), NSFontAttributeName)) for text, file in smileys: image = NSImage.alloc().initWithContentsOfFile_(file) if not image: print "cant load %s"%file continue image.setScalesWhenResized_(True) image.setSize_(NSMakeSize(16, 16)) atext = bigText.mutableCopy() atext.appendAttributedString_(NSAttributedString.alloc().initWithString_(text)) item = NSMenuItem.alloc().initWithTitle_action_keyEquivalent_(text, "insertSmiley:", "") menu.addItem_(item) item.setTarget_(self) item.setAttributedTitle_(atext) item.setRepresentedObject_(NSAttributedString.alloc().initWithString_(text)) item.setImage_(image)