def openconf(self, *args): """ Open config file in default text editor """ checkconfig.checkconfig(CONFIG) if os.path.isfile('/usr/bin/gedit'): tmppid = procman.startprocess(['gedit', CONFIG]) elif os.path.isfile('/usr/bin/mousepad'): tmppid = procman.startprocess(['mousepad', CONFIG]) elif os.path.isfile('/usr/bin/xdg-open'): tmppid = procman.startprocess(['xdg-open', CONFIG]) if tmppid: self.hide()
def execute(self, actor, event): """ Execute commands in a subprocess """ tmppid = None if event: if Gdk.ModifierType.BUTTON1_MASK == event.get_state(): tmpcount = 0 for items in self.favlist: if actor == items[0]: # find existing process if isinstance(items[3], int): tmppid = self.activatepid(items[3]) if tmppid: logops.write(LOGFILE, ('PIRUM: found running ' + 'pid\n Command: ' + str(items[1]) + '\n PID: ' + str(items[3]) + '\n')) self.hide() return True tmpcount = tmpcount + 1 tmpcount = 0 for items in self.favlist: if actor == items[0]: # Switch to active windows if self.changewindow(items[0], event): logops.write(LOGFILE, ('PIRUM: activate existing window\n ' + ' ' + items[0].get_tooltip_text())) self.hide() return True tmpexec = (items[1]).split() if not tmpexec: tmpexec = [].append(items[1]) tmppid = procman.startprocess(tmpexec) if tmppid: logops.write(LOGFILE, ('PIRUM: executing favourite\n' + ' CMD: ' + str(items[1]) + '\n PID: ' + str(tmppid[0]) + '\n')) self.setpid(tmppid[0], tmpcount) self.hide() return True tmpcount = tmpcount + 1 if actor == "enter" or actor == self.gobutton: logops.write(LOGFILE, ('PIRUM: executing from runentry\n ' + self.runentry.get_text() + '\n')) runcmd = str.split(self.runentry.get_text()) tmppid = procman.startprocess(runcmd) self.runentry.set_text("") if tmppid: self.hide() return
def sessionman(self, actor): """ session management processes """ if actor == self.logoutbutton: tmppid = procman.startprocess(['gnome-session-quit', '--logout', '--force']) elif actor == self.restartbutton: tmppid = procman.startprocess(['gnome-session-quit', '--reboot']) elif actor == self.haltbutton: tmppid = procman.startprocess(['gnome-session-quit', '--power-off']) if tmppid: self.hide() return
def run(self, *args): """ configure and show the main window """ #format windows windowlist = [self.mainwindow, self.topdock, self.hotwin] # make windows undecorated and set options for windows in windowlist: windows.set_decorated(False) windows.set_decorated(False) windows.set_skip_taskbar_hint(True) windows.set_skip_pager_hint(True) windows.set_keep_above(True) self.hotwin.move(0, 0) self.hotwin.set_position(Gtk.Align.START) if args: # only run autostart on initial run if args[0] == 'START': # write the start of the log logops.write(LOGFILE, ('\n================================' + '===\nSTARTUP: pirum-shell is loading' + '...\n' + time.asctime() + '\nWriting to log file: ' + LOGFILE + '\n================================' + '===\n')) # run autostart commands if self.autostart: self.autostart = self.autostart.split(" ") for items in self.autostart: # execute autorun programs as hidden shell commands tmpexec = items.split() if tmpexec: logops.write(LOGFILE, 'PIRUM: executing aut' + 'ostart\n Command: ' + items + '\n') tmppid = procman.startprocess(tmpexec) if tmppid: self.autostartpids.append(tmppid) # Check config files and load favourites. self.updatefavdock() self.updateopenwindows() # set visual options. self.initialloading() self.hotwin.show() self.mainwindow.hide() self.topdock.hide() return