Preferences/ConfigurationPages/HelpDocumentationPage.py

Wed, 02 Jan 2013 10:31:48 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Wed, 02 Jan 2013 10:31:48 +0100
changeset 2302
f29e9405c851
parent 2298
fa4f79c34e0c
child 2319
116c547dedce
child 3163
9f50365a0870
permissions
-rw-r--r--

Updated copyright for 2013.

# -*- coding: utf-8 -*-

# Copyright (c) 2006 - 2013 Detlev Offenbach <detlev@die-offenbachs.de>
#

"""
Module implementing the Help Documentation configuration page.
"""

from PyQt4.QtCore import pyqtSlot, QUrl

from E5Gui.E5Completers import E5FileCompleter
from E5Gui import E5FileDialog

from .ConfigurationPageBase import ConfigurationPageBase
from .Ui_HelpDocumentationPage import Ui_HelpDocumentationPage

import Preferences
import Utilities


class HelpDocumentationPage(ConfigurationPageBase, Ui_HelpDocumentationPage):
    """
    Class implementing the Help Documentation configuration page.
    """
    def __init__(self):
        """
        Constructor
        """
        super().__init__()
        self.setupUi(self)
        self.setObjectName("HelpDocumentationPage")
        
        self.python2DocDirCompleter = E5FileCompleter(self.python2DocDirEdit)
        self.pythonDocDirCompleter = E5FileCompleter(self.pythonDocDirEdit)
        self.qt4DocDirCompleter = E5FileCompleter(self.qt4DocDirEdit)
        self.pyqt4DocDirCompleter = E5FileCompleter(self.pyqt4DocDirEdit)
        self.pysideDocDirCompleter = E5FileCompleter(self.pysideDocDirEdit)
        
        if Utilities.checkPyside():
            self.pysideGroup.setEnabled(True)
        else:
            self.pysideGroup.setEnabled(False)
        
        # set initial values
        self.python2DocDirEdit.setText(
            Preferences.getHelp("Python2DocDir"))
        self.pythonDocDirEdit.setText(
            Preferences.getHelp("PythonDocDir"))
        self.qt4DocDirEdit.setText(
            Preferences.getHelp("Qt4DocDir"))
        self.qt5DocDirEdit.setText(
            Preferences.getHelp("Qt5DocDir"))
        self.pyqt4DocDirEdit.setText(
            Preferences.getHelp("PyQt4DocDir"))
        self.pysideDocDirEdit.setText(
            Preferences.getHelp("PySideDocDir"))
        
    def save(self):
        """
        Public slot to save the Help Documentation configuration.
        """
        Preferences.setHelp("Python2DocDir",
            self.python2DocDirEdit.text())
        Preferences.setHelp("PythonDocDir",
            self.pythonDocDirEdit.text())
        Preferences.setHelp("Qt4DocDir",
            self.qt4DocDirEdit.text())
        Preferences.setHelp("Qt5DocDir",
            self.qt5DocDirEdit.text())
        Preferences.setHelp("PyQt4DocDir",
            self.pyqt4DocDirEdit.text())
        Preferences.setHelp("PySideDocDir",
            self.pysideDocDirEdit.text())
        
    @pyqtSlot()
    def on_python2DocDirButton_clicked(self):
        """
        Private slot to select the Python 2 documentation directory.
        """
        entry = E5FileDialog.getOpenFileName(
            self,
            self.trUtf8("Select Python 2 documentation entry"),
            QUrl(self.python2DocDirEdit.text()).path(),
            self.trUtf8("HTML Files (*.html *.htm);;"
                "Compressed Help Files (*.chm);;"
                "All Files (*)"))
        
        if entry:
            self.python2DocDirEdit.setText(Utilities.toNativeSeparators(entry))
        
    @pyqtSlot()
    def on_pythonDocDirButton_clicked(self):
        """
        Private slot to select the Python 3 documentation directory.
        """
        entry = E5FileDialog.getOpenFileName(
            self,
            self.trUtf8("Select Python 3 documentation entry"),
            QUrl(self.pythonDocDirEdit.text()).path(),
            self.trUtf8("HTML Files (*.html *.htm);;"
                "Compressed Help Files (*.chm);;"
                "All Files (*)"))
        
        if entry:
            self.pythonDocDirEdit.setText(Utilities.toNativeSeparators(entry))
        
    @pyqtSlot()
    def on_qt4DocDirButton_clicked(self):
        """
        Private slot to select the Qt4 documentation directory.
        """
        entry = E5FileDialog.getOpenFileName(
            self,
            self.trUtf8("Select Qt4 documentation entry"),
            QUrl(self.qt4DocDirEdit.text()).path(),
            self.trUtf8("HTML Files (*.html *.htm);;All Files (*)"))
        
        if entry:
            self.qt4DocDirEdit.setText(Utilities.toNativeSeparators(entry))
        
    @pyqtSlot()
    def on_qt5DocDirButton_clicked(self):
        """
        Private slot to select the Qt5 documentation directory.
        """
        entry = E5FileDialog.getOpenFileName(
            self,
            self.trUtf8("Select Qt5 documentation entry"),
            QUrl(self.qt5DocDirEdit.text()).path(),
            self.trUtf8("HTML Files (*.html *.htm);;All Files (*)"))
        
        if entry:
            self.qt5DocDirEdit.setText(Utilities.toNativeSeparators(entry))
        
    @pyqtSlot()
    def on_pyqt4DocDirButton_clicked(self):
        """
        Private slot to select the PyQt4 documentation directory.
        """
        entry = E5FileDialog.getOpenFileName(
            self,
            self.trUtf8("Select PyQt4 documentation entry"),
            QUrl(self.pyqt4DocDirEdit.text()).path(),
            self.trUtf8("HTML Files (*.html *.htm);;All Files (*)"))
        
        if entry:
            self.pyqt4DocDirEdit.setText(Utilities.toNativeSeparators(entry))
        
    @pyqtSlot()
    def on_pysideDocDirButton_clicked(self):
        """
        Private slot to select the PySide documentation directory.
        """
        entry = E5FileDialog.getOpenFileName(
            self,
            self.trUtf8("Select PySide documentation entry"),
            QUrl(self.pysideDocDirEdit.text()).path(),
            self.trUtf8("HTML Files (*.html *.htm);;All Files (*)"))
        
        if entry:
            self.pysideDocDirEdit.setText(Utilities.toNativeSeparators(entry))
    

def create(dlg):
    """
    Module function to create the configuration page.
    
    @param dlg reference to the configuration dialog
    """
    page = HelpDocumentationPage()
    return page

eric ide

mercurial