Ejemplo n.º 1
0
    def on_ask_stop(self,button):
        """GUI callback for stops preview or recording and closes the Mediapakage"""
        if self.conf.get_boolean("basic", "stopdialog"):
            text = {"title" : _("Recorder"),
                    "main" : _("Are you sure you want to\nstop the recording?")}
            buttons = (Gtk.STOCK_STOP, Gtk.ResponseType.OK, Gtk.STOCK_CANCEL, Gtk.ResponseType.REJECT)

            message.PopUp(message.WARN_STOP, text,
                          context.get_mainwindow(), buttons, self.on_stop_dialog_response, close_before_response_action = self.close_before_response_action)
Ejemplo n.º 2
0
    def launch_error_message(self, error_message):
        """Shows an active error message."""
        text = {
            "title" : _("Recorder"),
            "main" : _(" Please review your configuration \nor load another profile"),                
            "text" : error_message
			}
        self.error_dialog = message.PopUp(message.ERROR, text, 
                                context.get_mainwindow(), None)
Ejemplo n.º 3
0
 def show_next(self, button=None, tipe=None):
     """GUI callback Pops up the Event Manager"""
     self.dispatcher.emit("action-audio-disable-msg")
     text = {
         'title': _('Next Recordings'),
         'next_recs': self.get_next_recs(),
     }
     message.PopUp(message.NEXT_REC, text, context.get_mainwindow())
     self.dispatcher.emit("action-audio-enable-msg")
     return True
Ejemplo n.º 4
0
def lock(element, text, show):
    message.PopUp(message.LOCKSCREEN,
                  text,
                  context.get_mainwindow(),
                  None,
                  response_action=on_unlock,
                  close_on_response=False,
                  show=show,
                  close_parent=True)
    logger.info("Galicaster locked")
Ejemplo n.º 5
0
    def on_help(self, button):
        """GUI callback to triggers a pop-up when Help button is clicked"""
        logger.info("Help requested")

        text = {
            "title": _("Help"),
            "main": _(self.help_main_str),
            "text": _(self.help_text_str)
        }
        buttons = None
        message.PopUp(message.INFO, text, context.get_mainwindow(), buttons)
Ejemplo n.º 6
0
    def shutdown(self, signal):
        """Pops up a dialog asking to shutdown the computer"""
        text = {
            "title": _("Shutdwon"),
            "main": _("Are you sure you want to SHUTDOWN? "),
        }

        buttons = (Gtk.STOCK_QUIT, Gtk.ResponseType.OK, Gtk.STOCK_CANCEL,
                   Gtk.ResponseType.REJECT)
        message.PopUp(message.WARN_QUIT, text, self, buttons,
                      self.on_shutdown_dialog_response)
Ejemplo n.º 7
0
 def info(self, key):
     """Pops up de MP info dialog"""
     logger.info("Info: {0}".format(str(key)))
     text = self.get_mp_info(key)
     text['title'] = 'Mediapackage Info'
     message.PopUp(message.MP_INFO,
                   text,
                   context.get_mainwindow(),
                   response_action=self.create_mp_info_response(
                       text['folder']),
                   close_on_response=False)
Ejemplo n.º 8
0
    def on_help(self, button):
        """Triggers a pop-up when Help button is clicked"""
        logger.info("Help requested")

        text = {
            "title": "Help",
            "main": " Visit galicaster.teltek.es",
            "text": " ...or contact us on our community list."
        }
        buttons = None
        message.PopUp(message.INFO, text, context.get_mainwindow(), buttons)
Ejemplo n.º 9
0
 def launch_error_message(self, error_message):
     """Shows an active error message."""
     text = {
         "title": "Recorder",
         "main":
         " Please review your configuration \nor load another profile",
         "text": error_message
     }
     buttons = None
     logger.error("ERROR: " + error_message)
     self.error_dialog = message.PopUp(message.ERROR, text,
                                       context.get_mainwindow(), buttons)
Ejemplo n.º 10
0
    def close(self, signal):
        """Pops up a dialog asking to quit"""
        text = {
            "title": _("Quit"),
            "main": _("Are you sure you want to QUIT? "),
        }

        buttons = (Gtk.STOCK_QUIT, Gtk.ResponseType.OK, Gtk.STOCK_CANCEL,
                   Gtk.ResponseType.REJECT)
        self.dispatcher.emit("action-audio-disable-msg")
        message.PopUp(message.WARN_QUIT, text, self, buttons,
                      self.on_close_dialog_response)
        self.dispatcher.emit("action-audio-enable-msg")
Ejemplo n.º 11
0
    def on_help(self,button):
        """Triggers a pop-up when Help button is clicked"""
        logger.info("Help requested")   

        text = {"title" : _("Help"),
                "main" : _(" Visit galicaster.teltek.es"),
                "text" : _(" ...or contact us on our community list.")
		}
        buttons = None
        self.dispatcher.emit("disable-no-audio")
        message.PopUp(message.INFO, text,
                      context.get_mainwindow(), buttons)
        self.dispatcher.emit("enable-no-audio")
Ejemplo n.º 12
0
    def launch_error_message(self, error_msg=None):
        """Shows an active error message."""
        msg = error_msg or self.recorder.error_msg
        text = {
            "title" : _("Recorder"),
            "main" : _(" Please review your configuration \nor load another profile"),
            "text" : msg
                        }

        if self.error_dialog:
            self.destroy_error_dialog()
        self.error_dialog = message.PopUp(message.ERROR, text,
                                          context.get_mainwindow(), None, self.on_close_error_affirmative)
Ejemplo n.º 13
0
    def play(self, key):
        """Retrieves mediapackage and send videos to player."""
        logger.info("Play: " + str(key))
        package = self.repository.get(key)

        if package.status == mediapackage.RECORDED:
            self.dispatcher.emit("play-list", package)
        else:
            text = {
                "title": "Media Manager",
                "main": "This recording can't be played",
            }
            buttons = (gtk.STOCK_OK, gtk.RESPONSE_OK)
            message.PopUp(message.WARNING, text, context.get_mainwindow(),
                          buttons)
        return True
Ejemplo n.º 14
0
 def on_ask_stop(self,button):
     """Stops preview or recording and closes the Mediapakage"""
     self.dispatcher.emit("disable-no-audio")
     if self.conf.get_boolean("basic", "stopdialog"):
         text = {"title" : _("Recorder"),
                 "main" : _("Are you sure you want to\nstop the recording?"),
         }
         buttons = ( gtk.STOCK_STOP, gtk.RESPONSE_OK, gtk.STOCK_CANCEL, gtk.RESPONSE_REJECT)
         warning = message.PopUp(message.WARNING, text,
           context.get_mainwindow(), buttons
         )
         self.dispatcher.emit("enable-no-audio")
         if warning.response not in message.POSITIVE or self.status not in [GC_RECORDING]:
             return False
         else:
             self.on_stop("UI","current")
Ejemplo n.º 15
0
    def on_ask_stop(self, button):
        """Stops preview or recording and closes the Mediapakage"""
        if self.conf.get_boolean("basic", "stopdialog"):
            text = {
                "title": "Recorder",
                "main": "Are you sure you want to\nstop the recording?",
            }
            buttons = ("Stop", gtk.RESPONSE_OK, gtk.STOCK_CANCEL,
                       gtk.RESPONSE_REJECT)
            warning = message.PopUp(message.WARNING, text,
                                    context.get_mainwindow(), buttons)

            if warning.response not in message.POSITIVE:
                return False
            else:
                self.on_stop("UI", "current")
Ejemplo n.º 16
0
 def delete(self, key, response=None):
     """Pops up a dialog. If response is positive, deletes a MP."""
     self.selected = key
     package = self.repository.get(key)
     logger.info("Delete: {0}".format(str(key)))
     t1 = _("This action will remove the recording from the hard disk.")
     t2 = _('Recording: "{0}"').format(package.getTitle())
     text = {
         "title": _("Media Manager"),
         "main": _("Are you sure you want to delete?"),
         "text": t1 + "\n\n" + t2
     }
     buttons = (Gtk.STOCK_DELETE, Gtk.ResponseType.OK, Gtk.STOCK_CANCEL,
                Gtk.ResponseType.REJECT)
     message.PopUp(message.WARN_DELETE, text, context.get_mainwindow(),
                   buttons, response)
Ejemplo n.º 17
0
    def on_play(self,store,reference,iterator):
        """ Retrieve mediapackage and send videos to player"""
        key = store[iterator][0]
        logger.info("Play: " + str(key))
        package = self.repository.get(key)

        if package.status == mediapackage.RECORDED:
            self.dispatcher.emit("play-list", package)
        else:
            text = {"title" : _("Media Manager"),
                "main" : _("This recording can't be played"),
               }
            buttons = ( Gtk.STOCK_OK, Gtk.ResponseType.OK )
            message.PopUp(message.WARN_OK, text,
                              context.get_mainwindow(),
                              buttons)
        return True
Ejemplo n.º 18
0
    def close(self, signal):
        """Pops up a dialog asking to quit"""
        text = {
            "title": "Galicaster",
            "main": "Are you sure you want to QUIT? ",
        }

        buttons = (gtk.STOCK_QUIT, gtk.RESPONSE_OK, gtk.STOCK_CANCEL,
                   gtk.RESPONSE_REJECT)
        warning = message.PopUp(message.WARNING, text, self, buttons)

        if warning.response in message.POSITIVE:
            log.info("Quit Galicaster")
            if self.dispatcher:
                self.dispatcher.emit('galicaster-notify-quit')
            gtk.main_quit()
        else:
            log.info("Cancel Quit")
Ejemplo n.º 19
0
    def shutdown(self, signal):
        """Pops up a dialog asking to shutdown the computer"""
        text = {"title" : _("Shutdwon"),
                "main" : _("Are you sure you want to SHUTDOWN? "), 
                }

        buttons = ( gtk.STOCK_QUIT, gtk.RESPONSE_OK, gtk.STOCK_CANCEL, gtk.RESPONSE_REJECT)
        warning = message.PopUp(message.WARNING, text,
                                self, buttons)

        if warning.response in message.POSITIVE:
            if self.logger:
                self.logger.info("Shutdown Galicaster")
            if self.dispatcher:
                self.dispatcher.emit('galicaster-notify-quit')
            UtilsShutdown()
        else:
            if self.logger:
                self.logger.info("Cancel Shutdown")
Ejemplo n.º 20
0
    def delete(self,key):
        """Pops up a dialog. If response is positive, deletes a MP."""
	logger.info("Delete: {0}".format(str(key)))
	package = self.repository.get(key)
	t1 = _("This action will remove the recording from the hard disk.")
	t2 = _('Recording: "{0}"').format(package.getTitle())
	text = {"title" : _("Media Manager"),
		"main" : _("Are you sure you want to delete?"),
		"text" : t1+"\n\n"+t2
		    }
	buttons = ( gtk.STOCK_DELETE, gtk.RESPONSE_OK, gtk.STOCK_CANCEL, gtk.RESPONSE_REJECT)
	warning = message.PopUp(message.WARNING, text,
                                context.get_mainwindow(),
                                buttons)

	if warning.response in message.POSITIVE:                
	    self.repository.delete(package)
	    return True
	else:
	    return False
Ejemplo n.º 21
0
    def show_about_dialog(self, origin, button):
        """GUI callback Pops up de About Dialog"""

        text = {"title" : _("About"),
                    "main" : ''}
        message.PopUp(message.ABOUT, text, context.get_mainwindow())
Ejemplo n.º 22
0
 def show_about(self, button=None, tipe=None):
     text = {"title": _("About"), "main": ''}
     message.PopUp(message.ABOUT, text, context.get_mainwindow())
Ejemplo n.º 23
0
    def ingest_question(self, package):
        """Pops up a question dialog for available operations."""
        disabled = not self.conf.get_boolean("ingest", "active")
        day, night = context.get_worker().get_all_job_types_by_mp(package)
        jobs = day + night
        text = {
            "title": _("Media Manager"),
            "main": _("Which operation do you want to perform?")
        }
        text['text'] = ''

        if disabled or not self.network:
            for job in day:
                if job.lower().count("ingest"):
                    jobs.remove(job)
                    day.remove(job)
            for job in night:
                if job.lower().count("ingest"):
                    pass
                    #jobs.remove(job)
                    #night.remove(job)

        if disabled:
            text['text'] = text['text'] + _("The ingest service is disabled. ")
        elif not self.network:
            text['text'] = text['text'] + _(
                "Ingest disabled because of network problems. ")

        for job in day:
            op_state = package.operation[job.lower().replace(" ", "")]
            if op_state == mediapackage.OP_DONE:
                text['text'] = text['text'] + "\n" + _(
                    "{0} already performed").format(
                        OPERATION_NAMES.get(job, job))
            elif op_state == mediapackage.OP_NIGHTLY:
                text['text'] = text['text'] + "\n" + _(
                    "{0} will be performed tonight").format(
                        OPERATION_NAMES.get(job, job))

        response_list = [
            'Ingest',  # Resp 1
            'Ingest Nightly',  # Resp 2
            'Cancel Ingest Nightly',  # Resp 3
            'Export to Zip',  # Resp 4
            'Export to Zip Nightly',  # Resp 5
            'Cancel Export to Zip Nightly',  # Resp 6
            'Side by Side',  # Resp 7
            'Side by Side Nightly',  # Resp 8
            'Cancel Side by Side Nightly'
        ]  # Resp 9

        operations = {}
        for job in jobs:
            if job in response_list:
                operations[job] = response_list.index(job) + 1

        operations_dialog = message.PopUp(message.OPERATIONS, text,
                                          context.get_mainwindow(), operations)

        if operations_dialog.response == Gtk.ResponseType.REJECT or \
            operations_dialog.response == Gtk.ResponseType.DELETE_EVENT or \
            operations_dialog.response == Gtk.ResponseType.OK:
            return True

        elif 0 < operations_dialog.response <= len(response_list):
            chosen_job = response_list[operations_dialog.response -
                                       1].lower().replace(" ", "")
            if chosen_job.count('nightly'):
                context.get_worker().do_job_nightly(
                    chosen_job.replace("_", ""), package)
            else:
                context.get_worker().do_job(chosen_job, package)
            return True

        else:
            logger.error("Incorrect operation response: {}".format(
                operations_dialog.response))
            return False
Ejemplo n.º 24
0
    def ingest_question(self, package):
        """Pops up a question dialog for available operations."""
        buttons = None
        disabled = not self.conf.get_boolean("ingest", "active")
        day, night = context.get_worker().get_all_job_types_by_mp(package)
        jobs = day + night
        text = {
            "title": "Media Manager",
            "main": "Which operation do you want to perform?"
        }
        text['text'] = ''
        icon = message.QUESTION

        if disabled:
            text['text'] = text['text'] + "The ingest service is disabled."

        if not self.network:
            text['text'] = text[
                'text'] + "Ingest disabled because of network problems."
            for job in day:
                if job.lower().count("ingest"):
                    jobs.remove(job)
                    day.remove(job)
            for job in night:
                if job.lower().count("ingest"):
                    pass
                    #jobs.remove(job)
                    #night.remove(job)

        for job in day:
            op_state = package.operation[job.lower().replace(" ", "")]
            if op_state == mediapackage.OP_DONE:
                text['text'] = "\n" + text['text'] + job + " already perfomed"
            elif op_state == mediapackage.OP_NIGHTLY:
                text['text'] = "\n" + text[
                    'text'] + job + " will be performed tonight"

        index = 0
        response_dict = {}
        grouped1 = []
        grouped2 = []
        for job in day:
            index += 1
            response_dict[index] = job
            grouped1.append(job)
            grouped1.append(index)

        for job in night:
            index += 1
            response_dict[index] = job
            grouped2.append(job)
            grouped2.append(index)

        grouped2.append("Cancel")
        grouped2.append(0)

        buttons = tuple(grouped1)
        buttons2 = tuple(grouped2)
        if icon == message.QUESTION:
            icon = "INGEST"

        warning = message.PopUp(icon, text, context.get_mainwindow(), buttons2,
                                buttons)

        if warning.response == 0:
            return True
        elif warning.response == gtk.RESPONSE_OK:  # Warning
            return True
        else:
            chosen_job = response_dict[warning.response].lower().replace(
                " ", "_")
            if chosen_job.count('nightly'):
                context.get_worker().do_job_nightly(
                    chosen_job.replace("_", ""), package)
            else:
                context.get_worker().do_job(chosen_job, package)
            return True