def startUp():
    fontId = QFontDatabase().addApplicationFont("DefaultResources/DefaultFont.ttf")
    fontName = QFontDatabase().applicationFontFamilies(fontId)[0]
    font = QFont(fontName)
    font.setPixelSize(40)
    global DEFAULT_FONT
    DEFAULT_FONT = QFont(font)
Beispiel #2
0
def loadFonts():
    fontIDs = []
    fontIDs.append(QFontDatabase().addApplicationFont(
        os.path.join(os.getcwd(), "qml/assets/fonts/opensans/OSRegular.ttf")))
    fontIDs.append(QFontDatabase().addApplicationFont(
        os.path.join(os.getcwd(), "qml/assets/fonts/opensans/OSItalic.ttf")))
    fontIDs.append(QFontDatabase().addApplicationFont(
        os.path.join(os.getcwd(), "qml/assets/fonts/opensans/OSBold.ttf")))
    fontIDs.append(QFontDatabase().addApplicationFont(
        os.path.join(os.getcwd(),
                     "qml/assets/fonts/opensans/OSBoldItalic.ttf")))
    fontIDs.append(QFontDatabase().addApplicationFont(
        os.path.join(os.getcwd(), "qml/assets/fonts/opensans/OSSemibold.ttf")))
    fontIDs.append(QFontDatabase().addApplicationFont(
        os.path.join(os.getcwd(),
                     "qml/assets/fonts/opensans/OSSemiboldItalic.ttf")))
    fontIDs.append(QFontDatabase().addApplicationFont(
        os.path.join(os.getcwd(),
                     "qml/assets/fonts/ubuntu/Ubuntu-Regular.ttf")))
    fontIDs.append(QFontDatabase().addApplicationFont(
        os.path.join(os.getcwd(),
                     "qml/assets/fonts/ubuntu/Ubuntu-Italic.ttf")))
    fontIDs.append(QFontDatabase().addApplicationFont(
        os.path.join(os.getcwd(), "qml/assets/fonts/ubuntu/Ubuntu-Bold.ttf")))
    fontIDs.append(QFontDatabase().addApplicationFont(
        os.path.join(os.getcwd(),
                     "qml/assets/fonts/ubuntu/Ubuntu-BoldItalic.ttf")))
    return fontIDs
Beispiel #3
0
 def wn_init(self):
     JC_LOG.info(self.tm_wai('Initializing ...'))
     self.wu_mw = QMainWindow()
     self.wu_mw.setWindowTitle(GC_APP_NM)
     self.wu_mw.showEvent = lambda _: self.wn_shown()
     self.wu_mw.closeEvent = lambda _: self.wn_quit()
     self.wu_cw = QWidget()
     self.wu_lo = QVBoxLayout()
     self.wu_pb = QPushButton()
     self.wu_pb.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed)
     self.wu_pb.pressed.connect(self.wn_change_font)
     self.wu_lb = QLabel()
     self.wu_lb.setAlignment(Qt.AlignCenter)
     for bu2_qo in [QWidget(), self.wu_pb, self.wu_lb]:
         self.wu_lo.addWidget(bu2_qo)
     self.wu_cw.setLayout(self.wu_lo)
     self.wu_fnt_families = QFontDatabase().families()
     self.wv_fnt_idx = len(self.wu_fnt_families) - 1
     self.wv_msg = ''
     self.wu_mw.setCentralWidget(self.wu_cw)
     self.wu_mw.resize(650, 200)
     self.wu_mw.show()
     self.wu_mw.raise_()
     self.wn_move_center()
     self.wn_change_font()
     self.getContext().system().scheduler().schedule(
         CjDuration.Zero(), CjDuration.create(100, CjTimeUnit.MILLISECONDS),
         self.getSelf(), CjSymbol('LNextFont'),
         self.getContext().system().dispatcher(), None)
Beispiel #4
0
def load_fonts():
    fonts = ('Montserrat-Regular.ttf', 'Montserrat-Italic.ttf',
             'Montserrat-Medium.ttf', 'Montserrat-SemiBold.ttf',
             'Montserrat-Bold.ttf')

    for i in fonts:
        QFontDatabase().addApplicationFont(f'resources/fonts/{i}')
Beispiel #5
0
    def __init__(self, *args):
        super().__init__(*args)
        """
        # SAVED THIS FOR LATER!
        # Read in config (linux)
        config = configparser.ConfigParser()
        try:
            config.read(str(Path.home())+"/.linnaeo/config.ini")
            # Open last used workspace automatically.
            if config['RECENTS']['LAST'] != "":
                last = config['RECENTS']['LAST']
                f = QFile(last)
                f.open(QIODevice.ReadOnly)
                model = workspace.WorkspaceModel()
                f.close()
                self.workspaceTree.setModel(model)
        except:
            print("No config file found!")
            """
        self.mode = "Light"
        self.fonts = QFontDatabase()
        self.defFontId = self.fonts.addApplicationFont(
            ':/fonts/Default-Noto.ttf')
        self.defFontId2 = self.fonts.addApplicationFont(
            ':/fonts/LiberationMono.ttf')

        # For some reason, Noto does not work on Mac or Windows. But does for SS display???
        self.defFont = QFont(self.fonts.applicationFontFamilies(self.defFontId2)[0], 10) \
            if sys.platform in ['win32', 'darwin'] else QFont(self.fonts.applicationFontFamilies(self.defFontId)[0], 10)
Beispiel #6
0
 def wn_init(self):
     JC_LOG.info(self.tm_wai('Initializing ...'))
     self.wu_mw = QMainWindow()
     self.wu_mw.setWindowTitle(GC_APP_NM)
     self.wu_mw.showEvent = lambda _: self.wn_shown()
     self.wu_mw.closeEvent = lambda _: self.wn_quit()
     self.wu_cw = QWidget()
     self.wu_lo = QVBoxLayout()
     self.wu_pb = QPushButton()
     self.wu_pb.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed)
     self.wu_pb.pressed.connect(self.wn_change_font)
     self.wu_lb = QLabel()
     self.wu_lb.setAlignment(Qt.AlignCenter)
     for bu2_qo in [QWidget(), self.wu_pb, self.wu_lb]:
         self.wu_lo.addWidget(bu2_qo)
     self.wu_cw.setLayout(self.wu_lo)
     self.wu_fnt_families = QFontDatabase().families()
     self.wv_fnt_idx = len(self.wu_fnt_families) - 1
     self.wv_msg = ''
     self.wu_mw.setCentralWidget(self.wu_cw)
     self.wu_mw.resize(650, 200)
     self.wu_mw.show()
     self.wu_mw.raise_()
     self.wn_move_center()
     self.wn_change_font()
     self.startTimer(100)
Beispiel #7
0
    def __init__(self):
        #Constructor
        super().__init__()

        font_db = QFontDatabase()
        font_id = font_db.addApplicationFont("Fonts\Quicksand.otf")
        families = font_db.applicationFontFamilies(font_id)
Beispiel #8
0
    def add_font_widgets(self, toolbar: QToolBar):
        self.combo_Paragraph = QComboBox(toolbar)
        toolbar.addWidget(self.combo_Paragraph)
        self.combo_Paragraph.addItem("Paragraph")
        self.combo_Paragraph.addItem("Bullet List (Disc)")
        self.combo_Paragraph.addItem("Bullet List (Circle)")
        self.combo_Paragraph.addItem("Bullet List (Square)")
        self.combo_Paragraph.addItem("Ordered List (Decimal)")
        self.combo_Paragraph.addItem("Ordered List (Alpha lower)")
        self.combo_Paragraph.addItem("Ordered List (Alpha upper)")
        self.combo_Paragraph.addItem("Ordered List (Roman lower)")
        self.combo_Paragraph.addItem("Ordered List (Roman upper)")
        self.combo_Paragraph.activated.connect(self.textStyle)

        self.combo_Font = QFontComboBox(toolbar)
        toolbar.addWidget(self.combo_Font)
        self.combo_Font.activated[str].connect(self.textFamily)

        self.combo_Font_Size = QComboBox(toolbar)
        self.combo_Font_Size.setObjectName("combo_Font_Size")
        toolbar.addWidget(self.combo_Font_Size)
        self.combo_Font_Size.setEditable(True)
        db = QFontDatabase()
        for size in db.standardSizes():
            self.combo_Font_Size.addItem(f"{size}")
        self.combo_Font_Size.activated[str].connect(self.textSize)
        self.combo_Font_Size.setCurrentIndex(
            self.combo_Font_Size.findText(
                f"{QApplication.font().pointSize()}"))
Beispiel #9
0
    def __init__(self, parent=None):

        super(HelpDialog, self).__init__(parent,
                                         flags=QtCore.Qt.FramelessWindowHint)
        self.setupUi(self)
        self.setAttribute(Qt.WA_TranslucentBackground, True)

        self.parent = parent
        self.fontDatabase = QFontDatabase()
        self.fontDatabase.addApplicationFont(
            APP_FOLDER + "/resources/fonts/JackportCollegeNcv-1MZe.ttf")
        self.fontDatabase.addApplicationFont(
            APP_FOLDER + "/resources/fonts/Rosemary-Bold.ttf")
        self.Header1.setFont(QFont("JACKPORT COLLEGE NCV", 42))
        self.tePage1.setFont(QFont("Rosemary", 32))
        self.tePage2.setFont(QFont("Rosemary", 32))
        self.tePage1.setAttribute(Qt.WA_StyledBackground, (True))
        self.tePage2.setAttribute(Qt.WA_StyledBackground, (True))
        self.tePage2.hide()
        self.bBack.setFont(QFont("JACKPORT COLLEGE NCV", 34))
        self.bBack.clicked.connect(self.backClicked)
        self.bFwd.clicked.connect(self.fwdClicked)
        self.bBwd.clicked.connect(self.bwdClicked)
        handCurImg = QPixmap(APP_FOLDER + "/resources/images/handCursor.png")
        scrlCurImg = QPixmap(APP_FOLDER + "/resources/images/scrollCursor.png")
        self.window().setCursor(QCursor(handCurImg, 15, 2))
        self.tePage1.viewport().setCursor(QCursor(handCurImg, 15, 2))
        self.tePage2.viewport().setCursor(QCursor(scrlCurImg, 31, 1))
Beispiel #10
0
 def updateFamily(self, currentItem, previousItem):
     """Update the family edit box and adjust the style and size options.
     
     Arguments:
         currentItem -- the new list widget family item
         previousItem -- the previous list widget item
     """
     family = currentItem.text()
     self.familyEdit.setText(family)
     if self.familyEdit.hasFocus():
         self.familyEdit.selectAll()
     prevStyle = self.styleEdit.text()
     prevSize = self.sizeEdit.text()
     fontDb = QFontDatabase()
     styles = [style for style in fontDb.styles(family)]
     self.styleList.clear()
     self.styleList.addItems(styles)
     if prevStyle:
         try:
             num = styles.index(prevStyle)
         except ValueError:
             num = 0
         self.styleList.setCurrentRow(num)
         self.styleList.scrollToItem(self.styleList.currentItem())
     sizes = [repr(size) for size in fontDb.pointSizes(family)]
     self.sizeList.clear()
     self.sizeList.addItems(sizes)
     if prevSize:
         try:
             num = sizes.index(prevSize)
         except ValueError:
             num = 0
         self.sizeList.setCurrentRow(num)
         self.sizeList.scrollToItem(self.sizeList.currentItem())
         self.updateSample()
 def set_country_for_locale(self, languageCode):
     self.clear()
     self.codesList = []
     self.countryList = []
     for locale in QLocale.matchingLocales(QLocale(languageCode).language(), QLocale.AnyScript, QLocale.AnyCountry):
         codeName = locale.name().split("_")[-1]
         if codeName not in self.codesList:
             self.codesList.append(codeName)
         self.codesList.sort()
         
     for country in self.codesList:
         locale = QLocale(languageCode+"-"+country)
         if locale:
             countryName = locale.nativeCountryName()
             self.countryList.append(countryName.title())
             self.setIconSize(QSize(32, 22))
             codeIcon = QImage(self.iconSize(), QImage.Format_ARGB32)
             painter = QPainter(codeIcon)
             painter.setBrush(Qt.transparent)
             codeIcon.fill(Qt.transparent)
             font = QFontDatabase().systemFont(QFontDatabase.FixedFont)
             painter.setFont(font)
             painter.setPen(self.palette().color(QPalette.Text))
             painter.drawText(codeIcon.rect(), Qt.AlignCenter,country)
             painter.end()
             self.addItem(QIcon(QPixmap.fromImage(codeIcon)), countryName.title())
Beispiel #12
0
 def setFont(self, font):
     """Set the font selector to the given font.
     
     Arguments:
         font -- the QFont to set.
     """
     fontInfo = QFontInfo(font)
     family = fontInfo.family()
     matches = self.familyList.findItems(family, Qt.MatchExactly)
     if matches:
         self.familyList.setCurrentItem(matches[0])
         self.familyList.scrollToItem(matches[0],
                                      QAbstractItemView.PositionAtTop)
     style = QFontDatabase().styleString(fontInfo)
     matches = self.styleList.findItems(style, Qt.MatchExactly)
     if matches:
         self.styleList.setCurrentItem(matches[0])
         self.styleList.scrollToItem(matches[0])
     else:
         self.styleList.setCurrentRow(0)
         self.styleList.scrollToItem(self.styleList.currentItem())
     size = repr(fontInfo.pointSize())
     matches = self.sizeList.findItems(size, Qt.MatchExactly)
     if matches:
         self.sizeList.setCurrentItem(matches[0])
         self.sizeList.scrollToItem(matches[0])
Beispiel #13
0
    def set_font(self, font: QFont = None):
        qfd = QFontDatabase()

        if font:
            info = QFontInfo(font)
            if info.styleHint() != QFont.Monospace:
                self.logger.warning("font: Please use monospaced font! "
                                    f"Unsupported font {info.family}.")
                font = qfd.systemFont(QFontDatabase.FixedFont)
        elif "Menlo" in qfd.families():
            font = QFont("Menlo")
            info = QFontInfo(font)
        else:
            font = qfd.systemFont(QFontDatabase.FixedFont)
            info = QFontInfo(font)

        font.setPointSize(12)
        self.font = font
        metrics = QFontMetrics(font)
        self.char_width = metrics.horizontalAdvance("A")
        self.char_height = metrics.height()
        self.line_height = int(self.char_height * 1.2)

        self.logger.info(f"font: Font {info.family()} selected, character "
                         f"size {self.char_width}x{self.char_height}.")

        self.row_len = int(self._width / self.char_width)
        self.col_len = int(self._height / self.line_height)
 def __init__(self, parent=None):
     super(QComboBox, self).__init__(parent)
     for i in range(1, 357):
         locale = QLocale(i)
         if locale and QLocale.languageToString(locale.language()) != "C":
             codeName = locale.name().split("_")[0]
             if codeName not in self.codesList:
                 self.codesList.append(codeName)
         self.codesList.sort()
         
     for lang in self.codesList:
         locale = QLocale(lang)
         if locale:
             languageName = QLocale.languageToString(locale.language())
             self.languageList.append(languageName.title())
             self.setIconSize(QSize(32, 22))
             codeIcon = QImage(self.iconSize(), QImage.Format_ARGB32)
             painter = QPainter(codeIcon)
             painter.setBrush(Qt.transparent)
             codeIcon.fill(Qt.transparent)
             font = QFontDatabase().systemFont(QFontDatabase.FixedFont)
             painter.setFont(font)
             painter.setPen(self.palette().color(QPalette.Text))
             painter.drawText(codeIcon.rect(), Qt.AlignCenter,lang)
             painter.end()
             self.addItem(QIcon(QPixmap.fromImage(codeIcon)), languageName.title())
Beispiel #15
0
def set_default_font(font, size):
    fontDataBase = QFontDatabase()
    defaultSettings = QWebEngineSettings.globalSettings()
    standardFont = fontDataBase.font(font, "", 12)
    defaultSettings.setFontFamily(QWebEngineSettings.StandardFont,
                                  standardFont.family())
    defaultSettings.setFontSize(QWebEngineSettings.DefaultFontSize, size)
Beispiel #16
0
    def __init__(self):
        self.app = QGuiApplication(sys.argv + ['--style', 'material'])

        fontdatabase = QFontDatabase()
        fontdatabase.addApplicationFont("fonts/Exo2-Regular.ttf")
        exo = QFont("Exo 2", 15)
        self.app.setFont(exo)

        self.engine = QQmlApplicationEngine()
        self.bridge = Bridge(self.app, self.engine)

        #responder a KeyboardInterrupt
        signal.signal(signal.SIGINT, signal.SIG_DFL)

        self.engine.rootContext().setContextProperty("bridge", self.bridge)
        self.engine.load("assets/main.qml")

        listDicts = csvInterpreter.readCSV("components.csv")
        for d in listDicts:
            self.bridge.createComponent(d)

        # self.bridge.updateComponents(bytearray.fromhex('5553501408010401080110011F'))

        self.engine.quit.connect(self.app.quit)
        self.app.exec()
Beispiel #17
0
 def wn_init(self):
     self.wu_atr_fx_main = ...
     self.wu_wgt = QMainWindow()
     self.wu_wgt.setWindowTitle(f'{GC_APP_NM} - PyQt')
     self.wu_cw = QWidget()
     self.wu_lo = QVBoxLayout()
     self.wu_pb = QPushButton()
     self.wu_pb.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed)
     self.wu_pb.pressed.connect(self.won_change_font)
     self.wu_lb = QLabel()
     self.wu_lb.setAlignment(Qt.AlignCenter)
     for bu2_qo in [QWidget(), self.wu_pb, self.wu_lb]:
         self.wu_lo.addWidget(bu2_qo)
     self.wu_cw.setLayout(self.wu_lo)
     self.wu_fnt_families = QFontDatabase().families()
     GC_LOG.info(
         f'{self.__class__.__name__} : Total fonts => {len(self.wu_fnt_families)}'
     )
     self.wv_fnt_idx = len(self.wu_fnt_families) - 1
     self.wv_msg = ''
     self.wn_change_font(False)
     self.wu_wgt.setCentralWidget(self.wu_cw)
     self.wu_wgt.resize(650, 250)
     self.wu_wgt.show()
     self.wu_wgt.raise_()
     self.wn_move_center()
Beispiel #18
0
    def __init__(self, asset_path: Union[Path, str]) -> None:
        super().__init__(asset_path)

        self.gui_font_db = QFontDatabase()
        self.load_new_fonts()
        self.gui_font = qApp.font()
        self.gui_font_fixed = QFontDatabase.systemFont(QFontDatabase.FixedFont)
    def data(self, role=Qt.DisplayRole, *args, **kwargs):
        if role == Qt.DisplayRole:
            value = self.collapsed_format(self.value)
            if isinstance(value, str) and value.isnumeric():
                value = int(value)
            if self.field == 'file':
                value = os.path.basename(value)
            return value

        elif role == Qt.DecorationRole:
            if self.field == 'file':
                icon_type = QFileIconProvider.File
                return QFileIconProvider().icon(icon_type)

        elif role == Qt.ToolTipRole:
            if len(self.value) > 1:
                return json.dumps(self.value)

        elif role == Qt.EditRole:
            return json.dumps(self.value)

        elif role == Qt.FontRole:
            fontdb = QFontDatabase()
            if self.field == 'key':
                return fontdb.systemFont(QFontDatabase.FixedFont)
            else:
                return fontdb.systemFont(QFontDatabase.GeneralFont)

        elif role == Qt.UserRole:
            return self.value
Beispiel #20
0
    def __init__(self, parent=None):
        super().__init__(parent)

        # Lock textedit for readonly mode
        self.setReadOnly(True)
        #self.setAcceptRichText(False)
        #self.setUndoRedoEnabled(False)

        # Add and set font
        font_db = QFontDatabase()
        font_db.addApplicationFont(
            "/users/jkantoja/Develop/apluslms/roman-qt/apluslms_roman_qt/DejaVuSansMono.ttf"
        )
        font = self.currentFont()
        font.setFamily("DejaVu Sans Mono")
        self.setFont(font)

        # Calculate tab stop
        ts = QFontMetrics(font).width('a') * 4
        self.setTabStopWidth(ts)

        # Background color and default font color
        palette = self.palette()
        palette.setColor(QPalette.Base, ColorPalette.BLACK.value)
        palette.setColor(QPalette.Text, ColorPalette.WHITE.value)
        self.setPalette(palette)
        self.setTextColor(ColorPalette.WHITE.value)
    def dropEvent(self, event: QDropEvent) -> None:
        if event.mimeData().hasUrls:
            event.setDropAction(Qt.CopyAction)
            event.accept()

            for url in event.mimeData().urls():
                item = ResourcesItem()

                extension = os.path.splitext(url.fileName())[1]
                if extension == ".png" or extension == ".jpg" or extension == ".jpeg" or extension == ".bmp":
                    item.setWhatsThis("Image")
                    item.setIcon(QIcon(url.toLocalFile()))
                    item.mySetData(QPixmap(url.toLocalFile()))
                elif extension == ".ttf":
                    item.setWhatsThis("Font")
                    item.setIcon(QIcon("Images/FontIcon.png"))
                    fontId = QFontDatabase().addApplicationFont(url.toLocalFile())
                    item.mySetData(str(fontId))
                else:
                    return

                item.setText(os.path.splitext(url.fileName())[0])
                item.mySetUrl(url.toLocalFile())
                self.addItem(item)

        else:
            event.ignore()
Beispiel #22
0
def refresh_font_db() -> None:
    # XXX:
    # Qt doesn't expose API to refresh the fonts, so we try to trick it into
    # invalidating its internal database by adding a dummy application font.
    # On Linux, this works with `fc-cache -r`.
    font_db = QFontDatabase()
    font_db.addApplicationFont(str(ASSETS_DIR / "AdobeBlank.ttf"))
    font_db.removeAllApplicationFonts()
Beispiel #23
0
 def setup_lexer(self):
     fontdb = QFontDatabase()
     self.lexer = QsciLexerMarkdown()
     self.lexer.setDefaultFont(fontdb.font('Source Code Pro', 'Regular',
                                           11))
     # TODO autocompletion of links does not work
     self.api = QsciAPIWiki(self.lexer)
     self.api.prepare()
Beispiel #24
0
def load_fonts(app):
    """
    注册字体文件
    """
    app.font_dir = path = os.path.join(os.path.dirname(__file__), 'ui', 'source', 'font')
    for name in os.listdir(path):
        QFontDatabase.addApplicationFont(os.path.join(path, name))
    font_db = QFontDatabase()
Beispiel #25
0
def load_fonts():
    """
    注册字体文件
    """
    path = 'pyminer2/ui/source/font'
    for name in os.listdir(path):
        QFontDatabase.addApplicationFont(os.path.join(path, name))
    font_db = QFontDatabase()
Beispiel #26
0
    def reset(self, log_widget=None):
        self._log = []
        self._tree_model.reset()
        self._misc_model.reset()
        # needs to be reset for the LilyPond-dependent fonts
        self.font_db = QFontDatabase()

        self._is_loaded = False
Beispiel #27
0
 def readFont(self):
     """Return the selected font or None.
     """
     family = self.familyEdit.text()
     style = self.styleEdit.text()
     size = self.sizeEdit.text()
     if family and style and size:
         return QFontDatabase().font(family, style, int(size))
     return None
Beispiel #28
0
 def updateStyle(self, fontStyle):
     fontDatabase = QFontDatabase()
     oldStrategy = self.displayFont.styleStrategy()
     self.displayFont = fontDatabase.font(self.displayFont.family(),
             fontStyle, self.displayFont.pointSize())
     self.displayFont.setStyleStrategy(oldStrategy)
     self.squareSize = max(24, QFontMetrics(self.displayFont).xHeight() * 3)
     self.adjustSize()
     self.update()
Beispiel #29
0
 def __init__(self):
     super().__init__()
     self.setTextFormat(Qt.PlainText)
     self.setFont(
         QFontDatabase().systemFont(QFontDatabase.FixedFont)
     )
     self.setSizePolicy(
         QSizePolicy.Expanding, QSizePolicy.Expanding
     )
Beispiel #30
0
 def load_icon_font(cls):
     '''
     加载图标字体
     '''
     fontawesome_id = QFontDatabase().addApplicationFont(
         ':font/fontawesome-webfont.ttf')
     fontawesome_name = QFontDatabase.applicationFontFamilies(
         fontawesome_id)[0]
     cls.iconFontNames['fontawesome'] = fontawesome_name