14
14
# along with this program; if not, write to the Free Software
 
15
15
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 
21
19
    pygtk.require("2.0")
 
31
 
    def __init__(self, gladefile):
 
32
 
        self.gladefile = gladefile
 
35
 
        """ Display the AboutDialog. """
 
36
 
        import olive.frontend.gtk
 
38
 
        # Load AboutDialog description
 
39
 
        dglade = gtk.glade.XML(self.gladefile, 'aboutdialog')
 
40
 
        dialog = dglade.get_widget('aboutdialog')
 
43
 
        dialog.set_version(olive.frontend.gtk.__version__)
 
45
 
    def _message_dialog(self, type, primary, secondary):
 
46
 
        """ Display a given type of MessageDialog with the given message.
 
48
 
        :param type: error | warning | info
 
50
 
        :param message: the message you want to display.
 
53
 
            dialog = gtk.MessageDialog(flags=gtk.DIALOG_MODAL,
 
54
 
                                       type=gtk.MESSAGE_ERROR,
 
55
 
                                       buttons=gtk.BUTTONS_OK)
 
56
 
            dialog.set_markup('<big><b>' + primary + '</b></big>')
 
57
 
        elif type == 'warning':
 
58
 
            dialog = gtk.MessageDialog(flags=gtk.DIALOG_MODAL,
 
59
 
                                       type=gtk.MESSAGE_WARNING,
 
60
 
                                       buttons=gtk.BUTTONS_OK)
 
61
 
            dialog.set_markup('<big><b>' + primary + '</b></big>')
 
63
 
            dialog = gtk.MessageDialog(flags=gtk.DIALOG_MODAL,
 
64
 
                                       type=gtk.MESSAGE_INFO,
 
65
 
                                       buttons=gtk.BUTTONS_OK)
 
66
 
            dialog.set_markup('<big><b>' + primary + '</b></big>')
 
70
 
        dialog.format_secondary_markup(secondary)
 
72
 
        if dialog.run() == gtk.RESPONSE_OK:
 
75
 
    def error_dialog(self, primary, secondary):
 
76
 
        """ Display an error dialog with the given message. """
 
77
 
        self._message_dialog('error', primary, secondary)
 
79
 
    def info_dialog(self, primary, secondary):
 
80
 
        """ Display an info dialog with the given message. """
 
81
 
        self._message_dialog('info', primary, secondary)
 
83
 
    def warning_dialog(self, primary, secondary):
 
84
 
        """ Display a warning dialog with the given message. """
 
85
 
        self._message_dialog('warning', primary, secondary)
 
 
27
def _message_dialog(type, primary, secondary, buttons=gtk.BUTTONS_OK):
 
 
28
    """ Display a given type of MessageDialog with the given message.
 
 
30
    :param type: message dialog type
 
 
32
    :param message: the message you want to display.
 
 
34
    dialog = gtk.MessageDialog(flags=gtk.DIALOG_MODAL, type=type,
 
 
36
    dialog.set_markup('<big><b>' + primary + '</b></big>')
 
 
37
    dialog.format_secondary_markup(secondary)
 
 
38
    response = dialog.run()
 
 
42
def error_dialog(primary, secondary):
 
 
43
    """ Display an error dialog with the given message. """
 
 
44
    return _message_dialog(gtk.MESSAGE_ERROR, primary, secondary)
 
 
46
def info_dialog(primary, secondary):
 
 
47
    """ Display an info dialog with the given message. """
 
 
48
    return _message_dialog(gtk.MESSAGE_INFO, primary, secondary)
 
 
50
def warning_dialog(primary, secondary):
 
 
51
    """ Display a warning dialog with the given message. """
 
 
52
    return _message_dialog(gtk.MESSAGE_WARNING, primary, secondary)
 
 
54
def question_dialog(primary, secondary):
 
 
55
    """ Display a dialog with the given question. """
 
 
56
    return _message_dialog(gtk.MESSAGE_QUESTION, primary, secondary, gtk.BUTTONS_YES_NO)