diff --git a/gpt4all-chat/main.qml b/gpt4all-chat/main.qml index 6a1eac12..c482822f 100644 --- a/gpt4all-chat/main.qml +++ b/gpt4all-chat/main.qml @@ -313,6 +313,7 @@ Window { Label { anchors.verticalCenter: parent.verticalCenter text: qsTr("Loading model...") + font.pixelSize: theme.fontSizeLarge color: theme.textAccent } } @@ -471,18 +472,21 @@ Window { id: copyMessage anchors.centerIn: parent text: qsTr("Conversation copied to clipboard.") + font.pixelSize: theme.fontSizeLarge } PopupDialog { id: copyCodeMessage anchors.centerIn: parent text: qsTr("Code copied to clipboard.") + font.pixelSize: theme.fontSizeLarge } PopupDialog { id: healthCheckFailed anchors.centerIn: parent text: qsTr("Connection to datalake failed.") + font.pixelSize: theme.fontSizeLarge } PopupDialog { @@ -491,6 +495,7 @@ Window { shouldTimeOut: false shouldShowBusy: true text: qsTr("Recalculating context.") + font.pixelSize: theme.fontSizeLarge Connections { target: currentChat @@ -509,6 +514,7 @@ Window { shouldTimeOut: false shouldShowBusy: true text: qsTr("Saving chats.") + font.pixelSize: theme.fontSizeLarge } MyToolButton { @@ -614,6 +620,7 @@ Window { If you can't start it manually, then I'm afraid you'll have to
reinstall.") color: theme.textColor + font.pixelSize: theme.fontSizeLarge Accessible.role: Accessible.Dialog Accessible.name: text Accessible.description: qsTr("Dialog indicating an error") @@ -685,6 +692,7 @@ Window { id: warningLabel text: qsTr("You must install a model to continue. Models are available via the download dialog or you can install them manually by downloading from the GPT4All website (look for the Models Explorer) and placing them in the model folder. The model folder can be found in the settings dialog under the application tab.") color: theme.textColor + font.pixelSize: theme.fontSizeLarge width: 600 linkColor: theme.linkColor wrapMode: Text.WordWrap @@ -1005,6 +1013,7 @@ Window { anchors.rightMargin: 30 color: theme.mutedTextColor text: currentChat.tokenSpeed + font.pixelSize: theme.fontSizeLarge } RectangularGlow { diff --git a/gpt4all-chat/mysettings.cpp b/gpt4all-chat/mysettings.cpp index 80191d43..4c9e6e26 100644 --- a/gpt4all-chat/mysettings.cpp +++ b/gpt4all-chat/mysettings.cpp @@ -17,6 +17,7 @@ static bool default_forceMetal = false; static QString default_lastVersionStarted = ""; static int default_localDocsChunkSize = 256; static QString default_chatTheme = "Dark"; +static QString default_fontSize = "Small"; static int default_localDocsRetrievalSize = 3; static bool default_localDocsShowReferences = true; static QString default_networkAttribution = ""; @@ -493,6 +494,24 @@ void MySettings::setChatTheme(const QString &u) emit chatThemeChanged(); } +QString MySettings::fontSize() const +{ + QSettings setting; + setting.sync(); + return setting.value("fontSize", default_fontSize).toString(); +} + +void MySettings::setFontSize(const QString &u) +{ + if(fontSize() == u) + return; + + QSettings setting; + setting.setValue("fontSize", u); + setting.sync(); + emit fontSizeChanged(); +} + bool MySettings::forceMetal() const { return m_forceMetal; diff --git a/gpt4all-chat/mysettings.h b/gpt4all-chat/mysettings.h index bd278b11..7d77ede0 100644 --- a/gpt4all-chat/mysettings.h +++ b/gpt4all-chat/mysettings.h @@ -16,6 +16,7 @@ class MySettings : public QObject Q_PROPERTY(QString modelPath READ modelPath WRITE setModelPath NOTIFY modelPathChanged) Q_PROPERTY(QString userDefaultModel READ userDefaultModel WRITE setUserDefaultModel NOTIFY userDefaultModelChanged) Q_PROPERTY(QString chatTheme READ chatTheme WRITE setChatTheme NOTIFY chatThemeChanged) + Q_PROPERTY(QString fontSize READ fontSize WRITE setFontSize NOTIFY fontSizeChanged) Q_PROPERTY(bool forceMetal READ forceMetal WRITE setForceMetal NOTIFY forceMetalChanged) Q_PROPERTY(QString lastVersionStarted READ lastVersionStarted WRITE setLastVersionStarted NOTIFY lastVersionStartedChanged) Q_PROPERTY(int localDocsChunkSize READ localDocsChunkSize WRITE setLocalDocsChunkSize NOTIFY localDocsChunkSizeChanged) @@ -73,6 +74,8 @@ public: void setUserDefaultModel(const QString &u); QString chatTheme() const; void setChatTheme(const QString &u); + QString fontSize() const; + void setFontSize(const QString &u); bool forceMetal() const; void setForceMetal(bool b); @@ -118,6 +121,7 @@ Q_SIGNALS: void modelPathChanged(); void userDefaultModelChanged(); void chatThemeChanged(); + void fontSizeChanged(); void forceMetalChanged(bool); void lastVersionStartedChanged(); void localDocsChunkSizeChanged(); diff --git a/gpt4all-chat/qml/AboutDialog.qml b/gpt4all-chat/qml/AboutDialog.qml index a4552509..a3ce20da 100644 --- a/gpt4all-chat/qml/AboutDialog.qml +++ b/gpt4all-chat/qml/AboutDialog.qml @@ -39,6 +39,7 @@ MyDialog { anchors.leftMargin: 30 anchors.verticalCenter: img.verticalCenter text: qsTr("About GPT4All") + font.pixelSize: theme.fontSizeLarger color: theme.textColor } } @@ -61,6 +62,7 @@ MyDialog { + qsTr("### Contributors\n") + Download.releaseInfo.contributors color: theme.textColor + font.pixelSize: theme.fontSizeLarge focus: false readOnly: true Accessible.role: Accessible.Paragraph @@ -79,6 +81,7 @@ MyDialog { textFormat: Text.StyledText wrapMode: Text.WordWrap text: qsTr("Check out our discord channel https://discord.gg/4M2QFmTt2k") + font.pixelSize: theme.fontSizeLarge onLinkActivated: { Qt.openUrlExternally("https://discord.gg/4M2QFmTt2k") } color: theme.textColor linkColor: theme.linkColor @@ -93,6 +96,7 @@ MyDialog { textFormat: Text.StyledText wrapMode: Text.WordWrap text: qsTr("Thank you to Nomic AI and the community for contributing so much great data, code, ideas, and energy to the growing open source AI ecosystem!") + font.pixelSize: theme.fontSizeLarge onLinkActivated: { Qt.openUrlExternally("https://home.nomic.ai") } color: theme.textColor linkColor: theme.linkColor diff --git a/gpt4all-chat/qml/ApplicationSettings.qml b/gpt4all-chat/qml/ApplicationSettings.qml index 44cc4531..90408fca 100644 --- a/gpt4all-chat/qml/ApplicationSettings.qml +++ b/gpt4all-chat/qml/ApplicationSettings.qml @@ -22,6 +22,7 @@ MySettingsTab { id: themeLabel text: qsTr("Theme:") color: theme.textColor + font.pixelSize: theme.fontSizeLarge Layout.row: 1 Layout.column: 0 } @@ -35,7 +36,7 @@ MySettingsTab { model: ["Dark", "Light"] Accessible.role: Accessible.ComboBox Accessible.name: qsTr("ComboBox for displaying/picking the color theme") - Accessible.description: qsTr("Use this for picking the color them for the chat client to use") + Accessible.description: qsTr("Use this for picking the color theme for the chat client to use") function updateModel() { themeBox.currentIndex = themeBox.indexOfValue(MySettings.chatTheme); } @@ -52,16 +53,52 @@ MySettingsTab { MySettings.chatTheme = themeBox.currentText } } + Label { + id: fontLabel + text: qsTr("Font Size:") + color: theme.textColor + font.pixelSize: theme.fontSizeLarge + Layout.row: 2 + Layout.column: 0 + } + MyComboBox { + id: fontBox + Layout.row: 2 + Layout.column: 1 + Layout.columnSpan: 1 + Layout.minimumWidth: 100 + Layout.fillWidth: false + model: ["Small", "Medium", "Large"] + Accessible.role: Accessible.ComboBox + Accessible.name: qsTr("ComboBox for displaying/picking the font size") + Accessible.description: qsTr("Use this for picking the font size of the chat client") + function updateModel() { + fontBox.currentIndex = fontBox.indexOfValue(MySettings.fontSize); + } + Component.onCompleted: { + fontBox.updateModel() + } + Connections { + target: MySettings + function onFontSizeChanged() { + fontBox.updateModel() + } + } + onActivated: { + MySettings.fontSize = fontBox.currentText + } + } Label { id: defaultModelLabel text: qsTr("Default model:") color: theme.textColor - Layout.row: 2 + font.pixelSize: theme.fontSizeLarge + Layout.row: 3 Layout.column: 0 } MyComboBox { id: comboBox - Layout.row: 2 + Layout.row: 3 Layout.column: 1 Layout.columnSpan: 2 Layout.minimumWidth: 350 @@ -90,14 +127,16 @@ MySettingsTab { id: modelPathLabel text: qsTr("Download path:") color: theme.textColor - Layout.row: 3 + font.pixelSize: theme.fontSizeLarge + Layout.row: 4 Layout.column: 0 } MyDirectoryField { id: modelPathDisplayField text: MySettings.modelPath + font.pixelSize: theme.fontSizeLarge implicitWidth: 300 - Layout.row: 3 + Layout.row: 4 Layout.column: 1 Layout.fillWidth: true ToolTip.text: qsTr("Path where model files will be downloaded to") @@ -114,7 +153,7 @@ MySettingsTab { } } MyButton { - Layout.row: 3 + Layout.row: 4 Layout.column: 2 text: qsTr("Browse") Accessible.description: qsTr("Opens a folder picker dialog to choose where to save model files") @@ -128,15 +167,17 @@ MySettingsTab { id: nThreadsLabel text: qsTr("CPU Threads:") color: theme.textColor - Layout.row: 4 + font.pixelSize: theme.fontSizeLarge + Layout.row: 5 Layout.column: 0 } MyTextField { text: MySettings.threadCount color: theme.textColor + font.pixelSize: theme.fontSizeLarge ToolTip.text: qsTr("Amount of processing threads to use bounded by 1 and number of logical processors") ToolTip.visible: hovered - Layout.row: 4 + Layout.row: 5 Layout.column: 1 validator: IntValidator { bottom: 1 @@ -158,12 +199,13 @@ MySettingsTab { id: saveChatsLabel text: qsTr("Save chats to disk:") color: theme.textColor - Layout.row: 5 + font.pixelSize: theme.fontSizeLarge + Layout.row: 6 Layout.column: 0 } MyCheckBox { id: saveChatsBox - Layout.row: 5 + Layout.row: 6 Layout.column: 1 checked: MySettings.saveChats onClicked: { @@ -177,12 +219,13 @@ MySettingsTab { id: saveChatGPTChatsLabel text: qsTr("Save ChatGPT chats to disk:") color: theme.textColor - Layout.row: 6 + font.pixelSize: theme.fontSizeLarge + Layout.row: 7 Layout.column: 0 } MyCheckBox { id: saveChatGPTChatsBox - Layout.row: 6 + Layout.row: 7 Layout.column: 1 checked: MySettings.saveChatGPTChats onClicked: { @@ -193,12 +236,13 @@ MySettingsTab { id: serverChatLabel text: qsTr("Enable API server:") color: theme.textColor - Layout.row: 7 + font.pixelSize: theme.fontSizeLarge + Layout.row: 8 Layout.column: 0 } MyCheckBox { id: serverChatBox - Layout.row: 7 + Layout.row: 8 Layout.column: 1 checked: MySettings.serverChat onClicked: { @@ -208,7 +252,7 @@ MySettingsTab { ToolTip.visible: hovered } Rectangle { - Layout.row: 8 + Layout.row: 9 Layout.column: 0 Layout.columnSpan: 3 Layout.fillWidth: true @@ -232,6 +276,7 @@ MySettingsTab { id: gpuOverrideLabel text: qsTr("Force Metal (macOS+arm):") color: theme.textColor + font.pixelSize: theme.fontSizeLarge Layout.row: 1 Layout.column: 0 } diff --git a/gpt4all-chat/qml/ChatDrawer.qml b/gpt4all-chat/qml/ChatDrawer.qml index c3e31237..b13acb65 100644 --- a/gpt4all-chat/qml/ChatDrawer.qml +++ b/gpt4all-chat/qml/ChatDrawer.qml @@ -255,6 +255,7 @@ Drawer { anchors.bottom: downloadButton.top anchors.bottomMargin: 10 text: qsTr("Updates") + font.pixelSize: theme.fontSizeLarge Accessible.description: qsTr("Use this to launch an external application that will check for updates to the installer") onClicked: { if (!LLM.checkForUpdates()) diff --git a/gpt4all-chat/qml/CollectionsDialog.qml b/gpt4all-chat/qml/CollectionsDialog.qml index 76001254..095c20b0 100644 --- a/gpt4all-chat/qml/CollectionsDialog.qml +++ b/gpt4all-chat/qml/CollectionsDialog.qml @@ -22,6 +22,7 @@ MyDialog { anchors.top: parent.top anchors.left: parent.left text: "Available LocalDocs Collections:" + font.pixelSize: theme.fontSizeLarge color: theme.textColor } @@ -69,6 +70,7 @@ MyDialog { anchors.left: checkBox.right anchors.margins: 20 text: collection + font.pixelSize: theme.fontSizeLarge elide: Text.ElideRight color: theme.textColor } diff --git a/gpt4all-chat/qml/LocalDocsSettings.qml b/gpt4all-chat/qml/LocalDocsSettings.qml index a1719230..d833d3fe 100644 --- a/gpt4all-chat/qml/LocalDocsSettings.qml +++ b/gpt4all-chat/qml/LocalDocsSettings.qml @@ -35,6 +35,7 @@ MySettingsTab { width: 225 horizontalAlignment: Text.AlignJustify color: theme.textColor + font.pixelSize: theme.fontSizeLarge placeholderText: qsTr("Collection name...") placeholderTextColor: theme.mutedTextColor ToolTip.text: qsTr("Name of the collection to add (Required)") @@ -55,6 +56,7 @@ MySettingsTab { Layout.fillWidth: true text: root.folder_path placeholderText: qsTr("Folder path...") + font.pixelSize: theme.fontSizeLarge placeholderTextColor: theme.mutedTextColor ToolTip.text: qsTr("Folder path to documents (Required)") ToolTip.visible: hovered @@ -122,6 +124,7 @@ MySettingsTab { text: collection elide: Text.ElideRight color: theme.textColor + font.pixelSize: theme.fontSizeLarge width: 200 } @@ -134,6 +137,7 @@ MySettingsTab { text: folder_path elide: Text.ElideRight color: theme.textColor + font.pixelSize: theme.fontSizeLarge } Item { @@ -168,6 +172,7 @@ MySettingsTab { id: showReferencesLabel text: qsTr("Show references:") color: theme.textColor + font.pixelSize: theme.fontSizeLarge } MyCheckBox { id: showReferencesBox @@ -206,6 +211,7 @@ MySettingsTab { Layout.row: 1 Layout.column: 0 color: theme.textColor + font.pixelSize: theme.fontSizeLarge text: qsTr("Document snippet size (characters):") } @@ -235,6 +241,7 @@ MySettingsTab { Layout.row: 2 Layout.column: 0 color: theme.textColor + font.pixelSize: theme.fontSizeLarge text: qsTr("Document snippets per prompt:") } diff --git a/gpt4all-chat/qml/ModelDownloaderDialog.qml b/gpt4all-chat/qml/ModelDownloaderDialog.qml index 5100c449..6172c019 100644 --- a/gpt4all-chat/qml/ModelDownloaderDialog.qml +++ b/gpt4all-chat/qml/ModelDownloaderDialog.qml @@ -35,6 +35,7 @@ MyDialog { Label { id: listLabel text: qsTr("Available Models:") + font.pixelSize: theme.fontSizeLarge Layout.alignment: Qt.AlignLeft Layout.fillWidth: true color: theme.textColor @@ -47,6 +48,7 @@ MyDialog { horizontalAlignment: Qt.AlignHCenter verticalAlignment: Qt.AlignVCenter text: qsTr("Network error: could not retrieve http://gpt4all.io/models/models.json") + font.pixelSize: theme.fontSizeLarge color: theme.mutedTextColor } @@ -84,6 +86,7 @@ MyDialog { Text { textFormat: Text.StyledText text: "

" + name + "

" + font.pixelSize: theme.fontSizeLarger Layout.row: 0 Layout.column: 0 Layout.topMargin: 20 @@ -115,6 +118,7 @@ MyDialog { MyButton { id: downloadButton text: isDownloading ? qsTr("Cancel") : isIncomplete ? qsTr("Resume") : qsTr("Download") + font.pixelSize: theme.fontSizeLarge Layout.topMargin: 20 Layout.leftMargin: 20 Layout.minimumWidth: openaiKey.width @@ -140,6 +144,7 @@ MyDialog { MyButton { id: removeButton text: qsTr("Remove") + font.pixelSize: theme.fontSizeLarge Layout.topMargin: 20 Layout.leftMargin: 20 Layout.minimumWidth: openaiKey.width @@ -167,6 +172,7 @@ MyDialog { Layout.fillWidth: true Layout.alignment: Qt.AlignTop | Qt.AlignHCenter text: qsTr("Install") + font.pixelSize: theme.fontSizeLarge background: Rectangle { border.color: installButton.down ? theme.backgroundLightest : theme.buttonBorder border.width: 2 @@ -197,6 +203,7 @@ MyDialog { : (isDownloading ? qsTr("Downloading") : qsTr("Available"))))) + "" color: theme.textColor + font.pixelSize: theme.fontSizeLarge linkColor: theme.textErrorColor Accessible.role: Accessible.Paragraph Accessible.name: text @@ -222,6 +229,7 @@ MyDialog { + (qsTr("Type: ") + type) + "" color: theme.textColor + font.pixelSize: theme.fontSizeLarge Accessible.role: Accessible.Paragraph Accessible.name: text Accessible.description: qsTr("Metadata about the model") @@ -242,6 +250,7 @@ MyDialog { + qsTr(" GB) than your system has available (") + LLM.systemTotalRAMInGBString() + ")." color: theme.textErrorColor + font.pixelSize: theme.fontSizeLarge wrapMode: Text.WordWrap Accessible.role: Accessible.Paragraph Accessible.name: text @@ -292,6 +301,7 @@ MyDialog { color: theme.textColor Layout.alignment: Qt.AlignRight text: speed + font.pixelSize: theme.fontSizeLarge Accessible.role: Accessible.Paragraph Accessible.name: qsTr("Download speed") Accessible.description: qsTr("Download speed in bytes/kilobytes/megabytes per second") @@ -310,6 +320,7 @@ MyDialog { id: calcHashLabel color: theme.textColor text: qsTr("Calculating MD5...") + font.pixelSize: theme.fontSizeLarge Accessible.role: Accessible.Paragraph Accessible.name: text Accessible.description: qsTr("Whether the file hash is being calculated") @@ -345,6 +356,7 @@ MyDialog { openaiKey.placeholderTextColor = theme.backgroundLightest } placeholderText: qsTr("enter $OPENAI_API_KEY") + font.pixelSize: theme.fontSizeLarge placeholderTextColor: theme.backgroundLightest Accessible.role: Accessible.EditableText Accessible.name: placeholderText @@ -361,6 +373,7 @@ MyDialog { Text { id: descriptionText text: description + font.pixelSize: theme.fontSizeLarge Layout.row: 1 Layout.column: 0 Layout.leftMargin: 20 @@ -418,6 +431,7 @@ MyDialog { Label { id: modelPathLabel text: qsTr("Download path:") + font.pixelSize: theme.fontSizeLarge color: theme.textColor Layout.row: 1 Layout.column: 0 @@ -425,6 +439,7 @@ MyDialog { MyDirectoryField { id: modelPathDisplayField text: MySettings.modelPath + font.pixelSize: theme.fontSizeLarge Layout.fillWidth: true ToolTip.text: qsTr("Path where model files will be downloaded to") ToolTip.visible: hovered diff --git a/gpt4all-chat/qml/ModelSettings.qml b/gpt4all-chat/qml/ModelSettings.qml index 84c4e818..a0ae6cb7 100644 --- a/gpt4all-chat/qml/ModelSettings.qml +++ b/gpt4all-chat/qml/ModelSettings.qml @@ -27,6 +27,7 @@ MySettingsTab { Layout.column: 0 text: qsTr("Model/Character:") color: theme.textColor + font.pixelSize: theme.fontSizeLarge } RowLayout { @@ -98,12 +99,14 @@ MySettingsTab { id: uniqueNameLabel text: qsTr("Unique Name:") color: theme.textColor + font.pixelSize: theme.fontSizeLarge } Label { id: uniqueNameLabelHelp visible: false text: qsTr("Must contain a non-empty unique name that does not match any existing model/character.") color: theme.textErrorColor + font.pixelSize: theme.fontSizeLarge wrapMode: TextArea.Wrap } } @@ -111,6 +114,7 @@ MySettingsTab { MyTextField { id: uniqueNameField text: root.currentModelName + font.pixelSize: theme.fontSizeLarge enabled: root.currentModelInfo.isClone || root.currentModelInfo.description === "" color: enabled ? theme.textColor : theme.mutedTextColor Layout.row: 3 @@ -141,6 +145,7 @@ MySettingsTab { Label { text: qsTr("Model File:") color: theme.textColor + font.pixelSize: theme.fontSizeLarge Layout.row: 4 Layout.column: 0 Layout.topMargin: 15 @@ -148,6 +153,7 @@ MySettingsTab { MyTextField { text: root.currentModelInfo.filename + font.pixelSize: theme.fontSizeLarge enabled: false color: enabled ? theme.textColor : theme.mutedTextColor Layout.row: 5 @@ -160,6 +166,7 @@ MySettingsTab { visible: !root.currentModelInfo.isChatGPT text: qsTr("System Prompt:") color: theme.textColor + font.pixelSize: theme.fontSizeLarge Layout.row: 6 Layout.column: 0 Layout.topMargin: 15 @@ -218,11 +225,13 @@ MySettingsTab { id: promptTemplateLabel text: qsTr("Prompt Template:") color: theme.textColor + font.pixelSize: theme.fontSizeLarge } Label { id: promptTemplateLabelHelp text: qsTr("Must contain the string \"%1\" to be replaced with the user's input.") color: theme.textErrorColor + font.pixelSize: theme.fontSizeLarge visible: templateTextArea.text.indexOf("%1") === -1 wrapMode: TextArea.Wrap } @@ -242,6 +251,7 @@ MySettingsTab { anchors.fill: parent text: root.currentModelInfo.promptTemplate color: theme.textColor + font.pixelSize: theme.fontSizeLarge background: Rectangle { implicitWidth: 150 color: theme.backgroundDark @@ -304,6 +314,7 @@ MySettingsTab { } Text { text: qsTr("Add\noptional image") + font.pixelSize: theme.fontSizeLarge anchors.top: img.bottom anchors.horizontalCenter: parent.horizontalCenter wrapMode: TextArea.Wrap @@ -342,6 +353,7 @@ MySettingsTab { id: tempLabel text: qsTr("Temperature:") color: theme.textColor + font.pixelSize: theme.fontSizeLarge Layout.row: 0 Layout.column: 0 } @@ -350,6 +362,7 @@ MySettingsTab { id: temperatureField text: root.currentModelInfo.temperature color: theme.textColor + font.pixelSize: theme.fontSizeLarge ToolTip.text: qsTr("Temperature increases the chances of choosing less likely tokens.\nNOTE: Higher temperature gives more creative but less predictable outputs.") ToolTip.visible: hovered Layout.row: 0 @@ -386,6 +399,7 @@ MySettingsTab { id: topPLabel text: qsTr("Top P:") color: theme.textColor + font.pixelSize: theme.fontSizeLarge Layout.row: 0 Layout.column: 2 } @@ -393,6 +407,7 @@ MySettingsTab { id: topPField text: root.currentModelInfo.topP color: theme.textColor + font.pixelSize: theme.fontSizeLarge ToolTip.text: qsTr("Only the most likely tokens up to a total probability of top_p can be chosen.\nNOTE: Prevents choosing highly unlikely tokens, aka Nucleus Sampling") ToolTip.visible: hovered Layout.row: 0 @@ -430,6 +445,7 @@ MySettingsTab { visible: !root.currentModelInfo.isChatGPT text: qsTr("Top K:") color: theme.textColor + font.pixelSize: theme.fontSizeLarge Layout.row: 1 Layout.column: 0 } @@ -438,6 +454,7 @@ MySettingsTab { visible: !root.currentModelInfo.isChatGPT text: root.currentModelInfo.topK color: theme.textColor + font.pixelSize: theme.fontSizeLarge ToolTip.text: qsTr("Only the top K most likely tokens will be chosen from") ToolTip.visible: hovered Layout.row: 1 @@ -475,6 +492,7 @@ MySettingsTab { visible: !root.currentModelInfo.isChatGPT text: qsTr("Max Length:") color: theme.textColor + font.pixelSize: theme.fontSizeLarge Layout.row: 1 Layout.column: 2 } @@ -483,6 +501,7 @@ MySettingsTab { visible: !root.currentModelInfo.isChatGPT text: root.currentModelInfo.maxLength color: theme.textColor + font.pixelSize: theme.fontSizeLarge ToolTip.text: qsTr("Maximum length of response in tokens") ToolTip.visible: hovered Layout.row: 1 @@ -520,6 +539,7 @@ MySettingsTab { id: batchSizeLabel visible: !root.currentModelInfo.isChatGPT text: qsTr("Prompt Batch Size:") + font.pixelSize: theme.fontSizeLarge color: theme.textColor Layout.row: 2 Layout.column: 0 @@ -529,6 +549,7 @@ MySettingsTab { visible: !root.currentModelInfo.isChatGPT text: root.currentModelInfo.promptBatchSize color: theme.textColor + font.pixelSize: theme.fontSizeLarge ToolTip.text: qsTr("Amount of prompt tokens to process at once.\nNOTE: Higher values can speed up reading prompts but will use more RAM") ToolTip.visible: hovered Layout.row: 2 @@ -566,6 +587,7 @@ MySettingsTab { visible: !root.currentModelInfo.isChatGPT text: qsTr("Repeat Penalty:") color: theme.textColor + font.pixelSize: theme.fontSizeLarge Layout.row: 2 Layout.column: 2 } @@ -574,6 +596,7 @@ MySettingsTab { visible: !root.currentModelInfo.isChatGPT text: root.currentModelInfo.repeatPenalty color: theme.textColor + font.pixelSize: theme.fontSizeLarge ToolTip.text: qsTr("Amount to penalize repetitiveness of the output") ToolTip.visible: hovered Layout.row: 2 @@ -611,6 +634,7 @@ MySettingsTab { visible: !root.currentModelInfo.isChatGPT text: qsTr("Repeat Penalty Tokens:") color: theme.textColor + font.pixelSize: theme.fontSizeLarge Layout.row: 3 Layout.column: 0 } @@ -619,6 +643,7 @@ MySettingsTab { visible: !root.currentModelInfo.isChatGPT text: root.currentModelInfo.repeatPenaltyTokens color: theme.textColor + font.pixelSize: theme.fontSizeLarge ToolTip.text: qsTr("How far back in output to apply repeat penalty") ToolTip.visible: hovered Layout.row: 3 @@ -664,4 +689,4 @@ MySettingsTab { color: theme.tabBorder } } -} \ No newline at end of file +} diff --git a/gpt4all-chat/qml/MyButton.qml b/gpt4all-chat/qml/MyButton.qml index 44d70770..a33f85d1 100644 --- a/gpt4all-chat/qml/MyButton.qml +++ b/gpt4all-chat/qml/MyButton.qml @@ -10,6 +10,7 @@ Button { text: myButton.text horizontalAlignment: Text.AlignHCenter color: myButton.enabled ? theme.textColor : theme.mutedTextColor + font.pixelSize: theme.fontSizeLarge Accessible.role: Accessible.Button Accessible.name: text } @@ -21,4 +22,4 @@ Button { } Accessible.role: Accessible.Button Accessible.name: text -} \ No newline at end of file +} diff --git a/gpt4all-chat/qml/MySettingsStack.qml b/gpt4all-chat/qml/MySettingsStack.qml index 1d179c38..cd3a559b 100644 --- a/gpt4all-chat/qml/MySettingsStack.qml +++ b/gpt4all-chat/qml/MySettingsStack.qml @@ -56,6 +56,7 @@ Item { padding: 10 contentItem: IconLabel { color: theme.textColor + font.pixelSize: theme.fontSizeLarge font.bold: tabButton.checked text: model.title } diff --git a/gpt4all-chat/qml/MySettingsTab.qml b/gpt4all-chat/qml/MySettingsTab.qml index fd7ba83d..b9233733 100644 --- a/gpt4all-chat/qml/MySettingsTab.qml +++ b/gpt4all-chat/qml/MySettingsTab.qml @@ -66,6 +66,7 @@ Item { anchors.left: parent.left width: implicitWidth text: qsTr("Restore Defaults") + font.pixelSize: theme.fontSizeLarge Accessible.role: Accessible.Button Accessible.name: text Accessible.description: qsTr("Restores the settings dialog to a default state") @@ -79,6 +80,7 @@ Item { visible: root.advancedSettings width: implicitWidth text: !advancedInner.visible ? qsTr("Advanced Settings") : qsTr("Hide Advanced Settings") + font.pixelSize: theme.fontSizeLarge Accessible.role: Accessible.Button Accessible.name: text Accessible.description: qsTr("Shows/hides the advanced settings") diff --git a/gpt4all-chat/qml/MyToolButton.qml b/gpt4all-chat/qml/MyToolButton.qml index 12ddd099..7236b648 100644 --- a/gpt4all-chat/qml/MyToolButton.qml +++ b/gpt4all-chat/qml/MyToolButton.qml @@ -14,6 +14,7 @@ Button { text: myButton.text horizontalAlignment: Text.AlignHCenter color: myButton.enabled ? theme.textColor : theme.mutedTextColor + font.pixelSize: theme.fontSizeLarge Accessible.role: Accessible.Button Accessible.name: text } @@ -43,4 +44,4 @@ Button { } Accessible.role: Accessible.Button Accessible.name: text -} \ No newline at end of file +} diff --git a/gpt4all-chat/qml/NetworkDialog.qml b/gpt4all-chat/qml/NetworkDialog.qml index 2eeb6d1f..65ff7768 100644 --- a/gpt4all-chat/qml/NetworkDialog.qml +++ b/gpt4all-chat/qml/NetworkDialog.qml @@ -39,6 +39,7 @@ MyDialog { anchors.verticalCenter: img.verticalCenter text: qsTr("Contribute data to the GPT4All Opensource Datalake.") color: theme.textColor + font.pixelSize: theme.fontSizeLarge } } @@ -60,6 +61,7 @@ When a GPT4All model responds to you and you have opted-in, your conversation wi NOTE: By turning on this feature, you will be sending your data to the GPT4All Open Source Datalake. You should have no expectation of chat privacy when this feature is enabled. You should; however, have an expectation of an optional attribution if you wish. Your chat data will be openly available for anyone to download and will be used by Nomic AI to improve future GPT4All models. Nomic AI will retain all attribution information attached to your data and you will be credited as a contributor to any GPT4All model release that uses your data!") color: theme.textColor + font.pixelSize: theme.fontSizeLarge focus: false readOnly: true Accessible.role: Accessible.Paragraph diff --git a/gpt4all-chat/qml/NewVersionDialog.qml b/gpt4all-chat/qml/NewVersionDialog.qml index 9fb80e74..0d925e4c 100644 --- a/gpt4all-chat/qml/NewVersionDialog.qml +++ b/gpt4all-chat/qml/NewVersionDialog.qml @@ -33,6 +33,7 @@ MyDialog { bottomPadding: 20 text: qsTr("New version is available:") color: theme.textColor + font.pixelSize: theme.fontSizeLarge } MyButton { @@ -42,6 +43,7 @@ MyDialog { anchors.verticalCenter: label.verticalCenter padding: 20 text: qsTr("Update") + font.pixelSize: theme.fontSizeLarge Accessible.description: qsTr("Update to new version") onClicked: { if (!LLM.checkForUpdates()) diff --git a/gpt4all-chat/qml/SettingsDialog.qml b/gpt4all-chat/qml/SettingsDialog.qml index 2fd0d04d..7a0a102d 100644 --- a/gpt4all-chat/qml/SettingsDialog.qml +++ b/gpt4all-chat/qml/SettingsDialog.qml @@ -69,6 +69,7 @@ MyDialog { anchors.margins: 20 font.bold: index == listView.currentIndex text: title + font.pixelSize: theme.fontSizeLarge elide: Text.ElideRight color: theme.textColor width: 200 diff --git a/gpt4all-chat/qml/StartupDialog.qml b/gpt4all-chat/qml/StartupDialog.qml index ac228a95..f31465a2 100644 --- a/gpt4all-chat/qml/StartupDialog.qml +++ b/gpt4all-chat/qml/StartupDialog.qml @@ -41,6 +41,7 @@ MyDialog { anchors.verticalCenter: img.verticalCenter text: qsTr("Welcome!") color: theme.textColor + font.pixelSize: theme.fontSizeLarge } } @@ -62,6 +63,7 @@ MyDialog { + qsTr("### Contributors\n") + Download.releaseInfo.contributors color: theme.textColor + font.pixelSize: theme.fontSizeLarge focus: false readOnly: true Accessible.role: Accessible.Paragraph @@ -104,6 +106,7 @@ attribution information attached to your data and you will be credited as a cont model release that uses your data!") color: theme.textColor + font.pixelSize: theme.fontSizeLarge focus: false readOnly: true Accessible.role: Accessible.Paragraph @@ -127,6 +130,7 @@ model release that uses your data!") Layout.row: 0 Layout.column: 0 color: theme.textColor + font.pixelSize: theme.fontSizeLarge Accessible.role: Accessible.Paragraph Accessible.name: qsTr("Opt-in for anonymous usage statistics") Accessible.description: qsTr("Label for opt-in") @@ -155,6 +159,7 @@ model release that uses your data!") id: optInStatisticsRadioYes checked: false text: qsTr("Yes") + font.pixelSize: theme.fontSizeLarge Accessible.role: Accessible.RadioButton Accessible.name: qsTr("Opt-in for anonymous usage statistics") Accessible.description: qsTr("Radio button to allow opt-in for anonymous usage statistics") @@ -195,6 +200,7 @@ model release that uses your data!") RadioButton { id: optInStatisticsRadioNo text: qsTr("No") + font.pixelSize: theme.fontSizeLarge Accessible.role: Accessible.RadioButton Accessible.name: qsTr("Opt-out for anonymous usage statistics") Accessible.description: qsTr("Radio button to allow opt-out for anonymous usage statistics") @@ -240,6 +246,7 @@ model release that uses your data!") Layout.row: 1 Layout.column: 0 color: theme.textColor + font.pixelSize: theme.fontSizeLarge Accessible.role: Accessible.Paragraph Accessible.name: qsTr("Opt-in for network") Accessible.description: qsTr("Checkbox to allow opt-in for network") @@ -266,6 +273,7 @@ model release that uses your data!") id: optInNetworkRadioYes checked: false text: qsTr("Yes") + font.pixelSize: theme.fontSizeLarge Accessible.role: Accessible.RadioButton Accessible.name: qsTr("Opt-in for network") Accessible.description: qsTr("Radio button to allow opt-in anonymous sharing of chats to the GPT4All Datalake") @@ -306,6 +314,7 @@ model release that uses your data!") RadioButton { id: optInNetworkRadioNo text: qsTr("No") + font.pixelSize: theme.fontSizeLarge Accessible.role: Accessible.RadioButton Accessible.name: qsTr("Opt-out for network") Accessible.description: qsTr("Radio button to allow opt-out anonymous sharing of chats to the GPT4All Datalake") diff --git a/gpt4all-chat/qml/Theme.qml b/gpt4all-chat/qml/Theme.qml index 586e862a..d500f629 100644 --- a/gpt4all-chat/qml/Theme.qml +++ b/gpt4all-chat/qml/Theme.qml @@ -21,7 +21,7 @@ QtObject { property color tabBorder: MySettings.chatTheme == "Dark" ? backgroundLight : backgroundDark property color assistantColor: "#10a37f" property color textErrorColor: "red" - property real fontSizeLarge: Qt.application.font.pixelSize - property real fontSizeLarger: Qt.application.font.pixelSize + 2 + property real fontSizeLarge: MySettings.fontSize == "Small" ? Qt.application.font.pixelSize : MySettings.fontSize == "Medium" ? Qt.application.font.pixelSize + 5 : Qt.application.font.pixelSize + 10 + property real fontSizeLarger: MySettings.fontSize == "Small" ? Qt.application.font.pixelSize + 2 : MySettings.fontSize == "Medium" ? Qt.application.font.pixelSize + 7 : Qt.application.font.pixelSize + 12 } diff --git a/gpt4all-chat/qml/ThumbsDownDialog.qml b/gpt4all-chat/qml/ThumbsDownDialog.qml index ea04d980..cce91683 100644 --- a/gpt4all-chat/qml/ThumbsDownDialog.qml +++ b/gpt4all-chat/qml/ThumbsDownDialog.qml @@ -39,6 +39,7 @@ MyDialog { anchors.verticalCenter: img.verticalCenter text: qsTr("Please edit the text below to provide a better response. (optional)") color: theme.textColor + font.pixelSize: theme.fontSizeLarge } } @@ -71,11 +72,13 @@ MyDialog { spacing: 10 MyButton { text: qsTr("Submit") + font.pixelSize: theme.fontSizeLarge Accessible.description: qsTr("Submits the user's response") DialogButtonBox.buttonRole: DialogButtonBox.AcceptRole } MyButton { text: qsTr("Cancel") + font.pixelSize: theme.fontSizeLarge Accessible.description: qsTr("Closes the response dialog") DialogButtonBox.buttonRole: DialogButtonBox.RejectRole } @@ -83,4 +86,4 @@ MyDialog { color: "transparent" } } -} \ No newline at end of file +}