font size changer and updates (#1322)

pull/1323/head
Lakshay Kansal 1 year ago committed by GitHub
parent c449b71b56
commit 0f2bb506a8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -313,6 +313,7 @@ Window {
Label { Label {
anchors.verticalCenter: parent.verticalCenter anchors.verticalCenter: parent.verticalCenter
text: qsTr("Loading model...") text: qsTr("Loading model...")
font.pixelSize: theme.fontSizeLarge
color: theme.textAccent color: theme.textAccent
} }
} }
@ -471,18 +472,21 @@ Window {
id: copyMessage id: copyMessage
anchors.centerIn: parent anchors.centerIn: parent
text: qsTr("Conversation copied to clipboard.") text: qsTr("Conversation copied to clipboard.")
font.pixelSize: theme.fontSizeLarge
} }
PopupDialog { PopupDialog {
id: copyCodeMessage id: copyCodeMessage
anchors.centerIn: parent anchors.centerIn: parent
text: qsTr("Code copied to clipboard.") text: qsTr("Code copied to clipboard.")
font.pixelSize: theme.fontSizeLarge
} }
PopupDialog { PopupDialog {
id: healthCheckFailed id: healthCheckFailed
anchors.centerIn: parent anchors.centerIn: parent
text: qsTr("Connection to datalake failed.") text: qsTr("Connection to datalake failed.")
font.pixelSize: theme.fontSizeLarge
} }
PopupDialog { PopupDialog {
@ -491,6 +495,7 @@ Window {
shouldTimeOut: false shouldTimeOut: false
shouldShowBusy: true shouldShowBusy: true
text: qsTr("Recalculating context.") text: qsTr("Recalculating context.")
font.pixelSize: theme.fontSizeLarge
Connections { Connections {
target: currentChat target: currentChat
@ -509,6 +514,7 @@ Window {
shouldTimeOut: false shouldTimeOut: false
shouldShowBusy: true shouldShowBusy: true
text: qsTr("Saving chats.") text: qsTr("Saving chats.")
font.pixelSize: theme.fontSizeLarge
} }
MyToolButton { MyToolButton {
@ -614,6 +620,7 @@ Window {
If you can't start it manually, then I'm afraid you'll have to<br> If you can't start it manually, then I'm afraid you'll have to<br>
reinstall.") reinstall.")
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
Accessible.role: Accessible.Dialog Accessible.role: Accessible.Dialog
Accessible.name: text Accessible.name: text
Accessible.description: qsTr("Dialog indicating an error") Accessible.description: qsTr("Dialog indicating an error")
@ -685,6 +692,7 @@ Window {
id: warningLabel 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 <a href=\"https://gpt4all.io\">the GPT4All website</a> (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.") 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 <a href=\"https://gpt4all.io\">the GPT4All website</a> (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 color: theme.textColor
font.pixelSize: theme.fontSizeLarge
width: 600 width: 600
linkColor: theme.linkColor linkColor: theme.linkColor
wrapMode: Text.WordWrap wrapMode: Text.WordWrap
@ -1005,6 +1013,7 @@ Window {
anchors.rightMargin: 30 anchors.rightMargin: 30
color: theme.mutedTextColor color: theme.mutedTextColor
text: currentChat.tokenSpeed text: currentChat.tokenSpeed
font.pixelSize: theme.fontSizeLarge
} }
RectangularGlow { RectangularGlow {

@ -17,6 +17,7 @@ static bool default_forceMetal = false;
static QString default_lastVersionStarted = ""; static QString default_lastVersionStarted = "";
static int default_localDocsChunkSize = 256; static int default_localDocsChunkSize = 256;
static QString default_chatTheme = "Dark"; static QString default_chatTheme = "Dark";
static QString default_fontSize = "Small";
static int default_localDocsRetrievalSize = 3; static int default_localDocsRetrievalSize = 3;
static bool default_localDocsShowReferences = true; static bool default_localDocsShowReferences = true;
static QString default_networkAttribution = ""; static QString default_networkAttribution = "";
@ -493,6 +494,24 @@ void MySettings::setChatTheme(const QString &u)
emit chatThemeChanged(); 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 bool MySettings::forceMetal() const
{ {
return m_forceMetal; return m_forceMetal;

@ -16,6 +16,7 @@ class MySettings : public QObject
Q_PROPERTY(QString modelPath READ modelPath WRITE setModelPath NOTIFY modelPathChanged) Q_PROPERTY(QString modelPath READ modelPath WRITE setModelPath NOTIFY modelPathChanged)
Q_PROPERTY(QString userDefaultModel READ userDefaultModel WRITE setUserDefaultModel NOTIFY userDefaultModelChanged) Q_PROPERTY(QString userDefaultModel READ userDefaultModel WRITE setUserDefaultModel NOTIFY userDefaultModelChanged)
Q_PROPERTY(QString chatTheme READ chatTheme WRITE setChatTheme NOTIFY chatThemeChanged) 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(bool forceMetal READ forceMetal WRITE setForceMetal NOTIFY forceMetalChanged)
Q_PROPERTY(QString lastVersionStarted READ lastVersionStarted WRITE setLastVersionStarted NOTIFY lastVersionStartedChanged) Q_PROPERTY(QString lastVersionStarted READ lastVersionStarted WRITE setLastVersionStarted NOTIFY lastVersionStartedChanged)
Q_PROPERTY(int localDocsChunkSize READ localDocsChunkSize WRITE setLocalDocsChunkSize NOTIFY localDocsChunkSizeChanged) Q_PROPERTY(int localDocsChunkSize READ localDocsChunkSize WRITE setLocalDocsChunkSize NOTIFY localDocsChunkSizeChanged)
@ -73,6 +74,8 @@ public:
void setUserDefaultModel(const QString &u); void setUserDefaultModel(const QString &u);
QString chatTheme() const; QString chatTheme() const;
void setChatTheme(const QString &u); void setChatTheme(const QString &u);
QString fontSize() const;
void setFontSize(const QString &u);
bool forceMetal() const; bool forceMetal() const;
void setForceMetal(bool b); void setForceMetal(bool b);
@ -118,6 +121,7 @@ Q_SIGNALS:
void modelPathChanged(); void modelPathChanged();
void userDefaultModelChanged(); void userDefaultModelChanged();
void chatThemeChanged(); void chatThemeChanged();
void fontSizeChanged();
void forceMetalChanged(bool); void forceMetalChanged(bool);
void lastVersionStartedChanged(); void lastVersionStartedChanged();
void localDocsChunkSizeChanged(); void localDocsChunkSizeChanged();

@ -39,6 +39,7 @@ MyDialog {
anchors.leftMargin: 30 anchors.leftMargin: 30
anchors.verticalCenter: img.verticalCenter anchors.verticalCenter: img.verticalCenter
text: qsTr("About GPT4All") text: qsTr("About GPT4All")
font.pixelSize: theme.fontSizeLarger
color: theme.textColor color: theme.textColor
} }
} }
@ -61,6 +62,7 @@ MyDialog {
+ qsTr("### Contributors\n") + qsTr("### Contributors\n")
+ Download.releaseInfo.contributors + Download.releaseInfo.contributors
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
focus: false focus: false
readOnly: true readOnly: true
Accessible.role: Accessible.Paragraph Accessible.role: Accessible.Paragraph
@ -79,6 +81,7 @@ MyDialog {
textFormat: Text.StyledText textFormat: Text.StyledText
wrapMode: Text.WordWrap wrapMode: Text.WordWrap
text: qsTr("Check out our discord channel <a href=\"https://discord.gg/4M2QFmTt2k\">https://discord.gg/4M2QFmTt2k</a>") text: qsTr("Check out our discord channel <a href=\"https://discord.gg/4M2QFmTt2k\">https://discord.gg/4M2QFmTt2k</a>")
font.pixelSize: theme.fontSizeLarge
onLinkActivated: { Qt.openUrlExternally("https://discord.gg/4M2QFmTt2k") } onLinkActivated: { Qt.openUrlExternally("https://discord.gg/4M2QFmTt2k") }
color: theme.textColor color: theme.textColor
linkColor: theme.linkColor linkColor: theme.linkColor
@ -93,6 +96,7 @@ MyDialog {
textFormat: Text.StyledText textFormat: Text.StyledText
wrapMode: Text.WordWrap wrapMode: Text.WordWrap
text: qsTr("Thank you to <a href=\"https://home.nomic.ai\">Nomic AI</a> and the community for contributing so much great data, code, ideas, and energy to the growing open source AI ecosystem!") text: qsTr("Thank you to <a href=\"https://home.nomic.ai\">Nomic AI</a> 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") } onLinkActivated: { Qt.openUrlExternally("https://home.nomic.ai") }
color: theme.textColor color: theme.textColor
linkColor: theme.linkColor linkColor: theme.linkColor

@ -22,6 +22,7 @@ MySettingsTab {
id: themeLabel id: themeLabel
text: qsTr("Theme:") text: qsTr("Theme:")
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
Layout.row: 1 Layout.row: 1
Layout.column: 0 Layout.column: 0
} }
@ -35,7 +36,7 @@ MySettingsTab {
model: ["Dark", "Light"] model: ["Dark", "Light"]
Accessible.role: Accessible.ComboBox Accessible.role: Accessible.ComboBox
Accessible.name: qsTr("ComboBox for displaying/picking the color theme") 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() { function updateModel() {
themeBox.currentIndex = themeBox.indexOfValue(MySettings.chatTheme); themeBox.currentIndex = themeBox.indexOfValue(MySettings.chatTheme);
} }
@ -52,16 +53,52 @@ MySettingsTab {
MySettings.chatTheme = themeBox.currentText 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 { Label {
id: defaultModelLabel id: defaultModelLabel
text: qsTr("Default model:") text: qsTr("Default model:")
color: theme.textColor color: theme.textColor
Layout.row: 2 font.pixelSize: theme.fontSizeLarge
Layout.row: 3
Layout.column: 0 Layout.column: 0
} }
MyComboBox { MyComboBox {
id: comboBox id: comboBox
Layout.row: 2 Layout.row: 3
Layout.column: 1 Layout.column: 1
Layout.columnSpan: 2 Layout.columnSpan: 2
Layout.minimumWidth: 350 Layout.minimumWidth: 350
@ -90,14 +127,16 @@ MySettingsTab {
id: modelPathLabel id: modelPathLabel
text: qsTr("Download path:") text: qsTr("Download path:")
color: theme.textColor color: theme.textColor
Layout.row: 3 font.pixelSize: theme.fontSizeLarge
Layout.row: 4
Layout.column: 0 Layout.column: 0
} }
MyDirectoryField { MyDirectoryField {
id: modelPathDisplayField id: modelPathDisplayField
text: MySettings.modelPath text: MySettings.modelPath
font.pixelSize: theme.fontSizeLarge
implicitWidth: 300 implicitWidth: 300
Layout.row: 3 Layout.row: 4
Layout.column: 1 Layout.column: 1
Layout.fillWidth: true Layout.fillWidth: true
ToolTip.text: qsTr("Path where model files will be downloaded to") ToolTip.text: qsTr("Path where model files will be downloaded to")
@ -114,7 +153,7 @@ MySettingsTab {
} }
} }
MyButton { MyButton {
Layout.row: 3 Layout.row: 4
Layout.column: 2 Layout.column: 2
text: qsTr("Browse") text: qsTr("Browse")
Accessible.description: qsTr("Opens a folder picker dialog to choose where to save model files") Accessible.description: qsTr("Opens a folder picker dialog to choose where to save model files")
@ -128,15 +167,17 @@ MySettingsTab {
id: nThreadsLabel id: nThreadsLabel
text: qsTr("CPU Threads:") text: qsTr("CPU Threads:")
color: theme.textColor color: theme.textColor
Layout.row: 4 font.pixelSize: theme.fontSizeLarge
Layout.row: 5
Layout.column: 0 Layout.column: 0
} }
MyTextField { MyTextField {
text: MySettings.threadCount text: MySettings.threadCount
color: theme.textColor 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.text: qsTr("Amount of processing threads to use bounded by 1 and number of logical processors")
ToolTip.visible: hovered ToolTip.visible: hovered
Layout.row: 4 Layout.row: 5
Layout.column: 1 Layout.column: 1
validator: IntValidator { validator: IntValidator {
bottom: 1 bottom: 1
@ -158,12 +199,13 @@ MySettingsTab {
id: saveChatsLabel id: saveChatsLabel
text: qsTr("Save chats to disk:") text: qsTr("Save chats to disk:")
color: theme.textColor color: theme.textColor
Layout.row: 5 font.pixelSize: theme.fontSizeLarge
Layout.row: 6
Layout.column: 0 Layout.column: 0
} }
MyCheckBox { MyCheckBox {
id: saveChatsBox id: saveChatsBox
Layout.row: 5 Layout.row: 6
Layout.column: 1 Layout.column: 1
checked: MySettings.saveChats checked: MySettings.saveChats
onClicked: { onClicked: {
@ -177,12 +219,13 @@ MySettingsTab {
id: saveChatGPTChatsLabel id: saveChatGPTChatsLabel
text: qsTr("Save ChatGPT chats to disk:") text: qsTr("Save ChatGPT chats to disk:")
color: theme.textColor color: theme.textColor
Layout.row: 6 font.pixelSize: theme.fontSizeLarge
Layout.row: 7
Layout.column: 0 Layout.column: 0
} }
MyCheckBox { MyCheckBox {
id: saveChatGPTChatsBox id: saveChatGPTChatsBox
Layout.row: 6 Layout.row: 7
Layout.column: 1 Layout.column: 1
checked: MySettings.saveChatGPTChats checked: MySettings.saveChatGPTChats
onClicked: { onClicked: {
@ -193,12 +236,13 @@ MySettingsTab {
id: serverChatLabel id: serverChatLabel
text: qsTr("Enable API server:") text: qsTr("Enable API server:")
color: theme.textColor color: theme.textColor
Layout.row: 7 font.pixelSize: theme.fontSizeLarge
Layout.row: 8
Layout.column: 0 Layout.column: 0
} }
MyCheckBox { MyCheckBox {
id: serverChatBox id: serverChatBox
Layout.row: 7 Layout.row: 8
Layout.column: 1 Layout.column: 1
checked: MySettings.serverChat checked: MySettings.serverChat
onClicked: { onClicked: {
@ -208,7 +252,7 @@ MySettingsTab {
ToolTip.visible: hovered ToolTip.visible: hovered
} }
Rectangle { Rectangle {
Layout.row: 8 Layout.row: 9
Layout.column: 0 Layout.column: 0
Layout.columnSpan: 3 Layout.columnSpan: 3
Layout.fillWidth: true Layout.fillWidth: true
@ -232,6 +276,7 @@ MySettingsTab {
id: gpuOverrideLabel id: gpuOverrideLabel
text: qsTr("Force Metal (macOS+arm):") text: qsTr("Force Metal (macOS+arm):")
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
Layout.row: 1 Layout.row: 1
Layout.column: 0 Layout.column: 0
} }

@ -255,6 +255,7 @@ Drawer {
anchors.bottom: downloadButton.top anchors.bottom: downloadButton.top
anchors.bottomMargin: 10 anchors.bottomMargin: 10
text: qsTr("Updates") 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") Accessible.description: qsTr("Use this to launch an external application that will check for updates to the installer")
onClicked: { onClicked: {
if (!LLM.checkForUpdates()) if (!LLM.checkForUpdates())

@ -22,6 +22,7 @@ MyDialog {
anchors.top: parent.top anchors.top: parent.top
anchors.left: parent.left anchors.left: parent.left
text: "Available LocalDocs Collections:" text: "Available LocalDocs Collections:"
font.pixelSize: theme.fontSizeLarge
color: theme.textColor color: theme.textColor
} }
@ -69,6 +70,7 @@ MyDialog {
anchors.left: checkBox.right anchors.left: checkBox.right
anchors.margins: 20 anchors.margins: 20
text: collection text: collection
font.pixelSize: theme.fontSizeLarge
elide: Text.ElideRight elide: Text.ElideRight
color: theme.textColor color: theme.textColor
} }

@ -35,6 +35,7 @@ MySettingsTab {
width: 225 width: 225
horizontalAlignment: Text.AlignJustify horizontalAlignment: Text.AlignJustify
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
placeholderText: qsTr("Collection name...") placeholderText: qsTr("Collection name...")
placeholderTextColor: theme.mutedTextColor placeholderTextColor: theme.mutedTextColor
ToolTip.text: qsTr("Name of the collection to add (Required)") ToolTip.text: qsTr("Name of the collection to add (Required)")
@ -55,6 +56,7 @@ MySettingsTab {
Layout.fillWidth: true Layout.fillWidth: true
text: root.folder_path text: root.folder_path
placeholderText: qsTr("Folder path...") placeholderText: qsTr("Folder path...")
font.pixelSize: theme.fontSizeLarge
placeholderTextColor: theme.mutedTextColor placeholderTextColor: theme.mutedTextColor
ToolTip.text: qsTr("Folder path to documents (Required)") ToolTip.text: qsTr("Folder path to documents (Required)")
ToolTip.visible: hovered ToolTip.visible: hovered
@ -122,6 +124,7 @@ MySettingsTab {
text: collection text: collection
elide: Text.ElideRight elide: Text.ElideRight
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
width: 200 width: 200
} }
@ -134,6 +137,7 @@ MySettingsTab {
text: folder_path text: folder_path
elide: Text.ElideRight elide: Text.ElideRight
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
} }
Item { Item {
@ -168,6 +172,7 @@ MySettingsTab {
id: showReferencesLabel id: showReferencesLabel
text: qsTr("Show references:") text: qsTr("Show references:")
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
} }
MyCheckBox { MyCheckBox {
id: showReferencesBox id: showReferencesBox
@ -206,6 +211,7 @@ MySettingsTab {
Layout.row: 1 Layout.row: 1
Layout.column: 0 Layout.column: 0
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
text: qsTr("Document snippet size (characters):") text: qsTr("Document snippet size (characters):")
} }
@ -235,6 +241,7 @@ MySettingsTab {
Layout.row: 2 Layout.row: 2
Layout.column: 0 Layout.column: 0
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
text: qsTr("Document snippets per prompt:") text: qsTr("Document snippets per prompt:")
} }

@ -35,6 +35,7 @@ MyDialog {
Label { Label {
id: listLabel id: listLabel
text: qsTr("Available Models:") text: qsTr("Available Models:")
font.pixelSize: theme.fontSizeLarge
Layout.alignment: Qt.AlignLeft Layout.alignment: Qt.AlignLeft
Layout.fillWidth: true Layout.fillWidth: true
color: theme.textColor color: theme.textColor
@ -47,6 +48,7 @@ MyDialog {
horizontalAlignment: Qt.AlignHCenter horizontalAlignment: Qt.AlignHCenter
verticalAlignment: Qt.AlignVCenter verticalAlignment: Qt.AlignVCenter
text: qsTr("Network error: could not retrieve http://gpt4all.io/models/models.json") text: qsTr("Network error: could not retrieve http://gpt4all.io/models/models.json")
font.pixelSize: theme.fontSizeLarge
color: theme.mutedTextColor color: theme.mutedTextColor
} }
@ -84,6 +86,7 @@ MyDialog {
Text { Text {
textFormat: Text.StyledText textFormat: Text.StyledText
text: "<h2>" + name + "</h2>" text: "<h2>" + name + "</h2>"
font.pixelSize: theme.fontSizeLarger
Layout.row: 0 Layout.row: 0
Layout.column: 0 Layout.column: 0
Layout.topMargin: 20 Layout.topMargin: 20
@ -115,6 +118,7 @@ MyDialog {
MyButton { MyButton {
id: downloadButton id: downloadButton
text: isDownloading ? qsTr("Cancel") : isIncomplete ? qsTr("Resume") : qsTr("Download") text: isDownloading ? qsTr("Cancel") : isIncomplete ? qsTr("Resume") : qsTr("Download")
font.pixelSize: theme.fontSizeLarge
Layout.topMargin: 20 Layout.topMargin: 20
Layout.leftMargin: 20 Layout.leftMargin: 20
Layout.minimumWidth: openaiKey.width Layout.minimumWidth: openaiKey.width
@ -140,6 +144,7 @@ MyDialog {
MyButton { MyButton {
id: removeButton id: removeButton
text: qsTr("Remove") text: qsTr("Remove")
font.pixelSize: theme.fontSizeLarge
Layout.topMargin: 20 Layout.topMargin: 20
Layout.leftMargin: 20 Layout.leftMargin: 20
Layout.minimumWidth: openaiKey.width Layout.minimumWidth: openaiKey.width
@ -167,6 +172,7 @@ MyDialog {
Layout.fillWidth: true Layout.fillWidth: true
Layout.alignment: Qt.AlignTop | Qt.AlignHCenter Layout.alignment: Qt.AlignTop | Qt.AlignHCenter
text: qsTr("Install") text: qsTr("Install")
font.pixelSize: theme.fontSizeLarge
background: Rectangle { background: Rectangle {
border.color: installButton.down ? theme.backgroundLightest : theme.buttonBorder border.color: installButton.down ? theme.backgroundLightest : theme.buttonBorder
border.width: 2 border.width: 2
@ -197,6 +203,7 @@ MyDialog {
: (isDownloading ? qsTr("Downloading") : qsTr("Available"))))) : (isDownloading ? qsTr("Downloading") : qsTr("Available")))))
+ "</strong></font>" + "</strong></font>"
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
linkColor: theme.textErrorColor linkColor: theme.textErrorColor
Accessible.role: Accessible.Paragraph Accessible.role: Accessible.Paragraph
Accessible.name: text Accessible.name: text
@ -222,6 +229,7 @@ MyDialog {
+ (qsTr("Type: ") + type) + (qsTr("Type: ") + type)
+ "</strong></font>" + "</strong></font>"
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
Accessible.role: Accessible.Paragraph Accessible.role: Accessible.Paragraph
Accessible.name: text Accessible.name: text
Accessible.description: qsTr("Metadata about the model") Accessible.description: qsTr("Metadata about the model")
@ -242,6 +250,7 @@ MyDialog {
+ qsTr(" GB) than your system has available (") + qsTr(" GB) than your system has available (")
+ LLM.systemTotalRAMInGBString() + ").</strong></font>" + LLM.systemTotalRAMInGBString() + ").</strong></font>"
color: theme.textErrorColor color: theme.textErrorColor
font.pixelSize: theme.fontSizeLarge
wrapMode: Text.WordWrap wrapMode: Text.WordWrap
Accessible.role: Accessible.Paragraph Accessible.role: Accessible.Paragraph
Accessible.name: text Accessible.name: text
@ -292,6 +301,7 @@ MyDialog {
color: theme.textColor color: theme.textColor
Layout.alignment: Qt.AlignRight Layout.alignment: Qt.AlignRight
text: speed text: speed
font.pixelSize: theme.fontSizeLarge
Accessible.role: Accessible.Paragraph Accessible.role: Accessible.Paragraph
Accessible.name: qsTr("Download speed") Accessible.name: qsTr("Download speed")
Accessible.description: qsTr("Download speed in bytes/kilobytes/megabytes per second") Accessible.description: qsTr("Download speed in bytes/kilobytes/megabytes per second")
@ -310,6 +320,7 @@ MyDialog {
id: calcHashLabel id: calcHashLabel
color: theme.textColor color: theme.textColor
text: qsTr("Calculating MD5...") text: qsTr("Calculating MD5...")
font.pixelSize: theme.fontSizeLarge
Accessible.role: Accessible.Paragraph Accessible.role: Accessible.Paragraph
Accessible.name: text Accessible.name: text
Accessible.description: qsTr("Whether the file hash is being calculated") Accessible.description: qsTr("Whether the file hash is being calculated")
@ -345,6 +356,7 @@ MyDialog {
openaiKey.placeholderTextColor = theme.backgroundLightest openaiKey.placeholderTextColor = theme.backgroundLightest
} }
placeholderText: qsTr("enter $OPENAI_API_KEY") placeholderText: qsTr("enter $OPENAI_API_KEY")
font.pixelSize: theme.fontSizeLarge
placeholderTextColor: theme.backgroundLightest placeholderTextColor: theme.backgroundLightest
Accessible.role: Accessible.EditableText Accessible.role: Accessible.EditableText
Accessible.name: placeholderText Accessible.name: placeholderText
@ -361,6 +373,7 @@ MyDialog {
Text { Text {
id: descriptionText id: descriptionText
text: description text: description
font.pixelSize: theme.fontSizeLarge
Layout.row: 1 Layout.row: 1
Layout.column: 0 Layout.column: 0
Layout.leftMargin: 20 Layout.leftMargin: 20
@ -418,6 +431,7 @@ MyDialog {
Label { Label {
id: modelPathLabel id: modelPathLabel
text: qsTr("Download path:") text: qsTr("Download path:")
font.pixelSize: theme.fontSizeLarge
color: theme.textColor color: theme.textColor
Layout.row: 1 Layout.row: 1
Layout.column: 0 Layout.column: 0
@ -425,6 +439,7 @@ MyDialog {
MyDirectoryField { MyDirectoryField {
id: modelPathDisplayField id: modelPathDisplayField
text: MySettings.modelPath text: MySettings.modelPath
font.pixelSize: theme.fontSizeLarge
Layout.fillWidth: true Layout.fillWidth: true
ToolTip.text: qsTr("Path where model files will be downloaded to") ToolTip.text: qsTr("Path where model files will be downloaded to")
ToolTip.visible: hovered ToolTip.visible: hovered

@ -27,6 +27,7 @@ MySettingsTab {
Layout.column: 0 Layout.column: 0
text: qsTr("Model/Character:") text: qsTr("Model/Character:")
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
} }
RowLayout { RowLayout {
@ -98,12 +99,14 @@ MySettingsTab {
id: uniqueNameLabel id: uniqueNameLabel
text: qsTr("Unique Name:") text: qsTr("Unique Name:")
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
} }
Label { Label {
id: uniqueNameLabelHelp id: uniqueNameLabelHelp
visible: false visible: false
text: qsTr("Must contain a non-empty unique name that does not match any existing model/character.") text: qsTr("Must contain a non-empty unique name that does not match any existing model/character.")
color: theme.textErrorColor color: theme.textErrorColor
font.pixelSize: theme.fontSizeLarge
wrapMode: TextArea.Wrap wrapMode: TextArea.Wrap
} }
} }
@ -111,6 +114,7 @@ MySettingsTab {
MyTextField { MyTextField {
id: uniqueNameField id: uniqueNameField
text: root.currentModelName text: root.currentModelName
font.pixelSize: theme.fontSizeLarge
enabled: root.currentModelInfo.isClone || root.currentModelInfo.description === "" enabled: root.currentModelInfo.isClone || root.currentModelInfo.description === ""
color: enabled ? theme.textColor : theme.mutedTextColor color: enabled ? theme.textColor : theme.mutedTextColor
Layout.row: 3 Layout.row: 3
@ -141,6 +145,7 @@ MySettingsTab {
Label { Label {
text: qsTr("Model File:") text: qsTr("Model File:")
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
Layout.row: 4 Layout.row: 4
Layout.column: 0 Layout.column: 0
Layout.topMargin: 15 Layout.topMargin: 15
@ -148,6 +153,7 @@ MySettingsTab {
MyTextField { MyTextField {
text: root.currentModelInfo.filename text: root.currentModelInfo.filename
font.pixelSize: theme.fontSizeLarge
enabled: false enabled: false
color: enabled ? theme.textColor : theme.mutedTextColor color: enabled ? theme.textColor : theme.mutedTextColor
Layout.row: 5 Layout.row: 5
@ -160,6 +166,7 @@ MySettingsTab {
visible: !root.currentModelInfo.isChatGPT visible: !root.currentModelInfo.isChatGPT
text: qsTr("System Prompt:") text: qsTr("System Prompt:")
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
Layout.row: 6 Layout.row: 6
Layout.column: 0 Layout.column: 0
Layout.topMargin: 15 Layout.topMargin: 15
@ -218,11 +225,13 @@ MySettingsTab {
id: promptTemplateLabel id: promptTemplateLabel
text: qsTr("Prompt Template:") text: qsTr("Prompt Template:")
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
} }
Label { Label {
id: promptTemplateLabelHelp id: promptTemplateLabelHelp
text: qsTr("Must contain the string \"%1\" to be replaced with the user's input.") text: qsTr("Must contain the string \"%1\" to be replaced with the user's input.")
color: theme.textErrorColor color: theme.textErrorColor
font.pixelSize: theme.fontSizeLarge
visible: templateTextArea.text.indexOf("%1") === -1 visible: templateTextArea.text.indexOf("%1") === -1
wrapMode: TextArea.Wrap wrapMode: TextArea.Wrap
} }
@ -242,6 +251,7 @@ MySettingsTab {
anchors.fill: parent anchors.fill: parent
text: root.currentModelInfo.promptTemplate text: root.currentModelInfo.promptTemplate
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
background: Rectangle { background: Rectangle {
implicitWidth: 150 implicitWidth: 150
color: theme.backgroundDark color: theme.backgroundDark
@ -304,6 +314,7 @@ MySettingsTab {
} }
Text { Text {
text: qsTr("Add\noptional image") text: qsTr("Add\noptional image")
font.pixelSize: theme.fontSizeLarge
anchors.top: img.bottom anchors.top: img.bottom
anchors.horizontalCenter: parent.horizontalCenter anchors.horizontalCenter: parent.horizontalCenter
wrapMode: TextArea.Wrap wrapMode: TextArea.Wrap
@ -342,6 +353,7 @@ MySettingsTab {
id: tempLabel id: tempLabel
text: qsTr("Temperature:") text: qsTr("Temperature:")
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
Layout.row: 0 Layout.row: 0
Layout.column: 0 Layout.column: 0
} }
@ -350,6 +362,7 @@ MySettingsTab {
id: temperatureField id: temperatureField
text: root.currentModelInfo.temperature text: root.currentModelInfo.temperature
color: theme.textColor 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.text: qsTr("Temperature increases the chances of choosing less likely tokens.\nNOTE: Higher temperature gives more creative but less predictable outputs.")
ToolTip.visible: hovered ToolTip.visible: hovered
Layout.row: 0 Layout.row: 0
@ -386,6 +399,7 @@ MySettingsTab {
id: topPLabel id: topPLabel
text: qsTr("Top P:") text: qsTr("Top P:")
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
Layout.row: 0 Layout.row: 0
Layout.column: 2 Layout.column: 2
} }
@ -393,6 +407,7 @@ MySettingsTab {
id: topPField id: topPField
text: root.currentModelInfo.topP text: root.currentModelInfo.topP
color: theme.textColor 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.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 ToolTip.visible: hovered
Layout.row: 0 Layout.row: 0
@ -430,6 +445,7 @@ MySettingsTab {
visible: !root.currentModelInfo.isChatGPT visible: !root.currentModelInfo.isChatGPT
text: qsTr("Top K:") text: qsTr("Top K:")
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
Layout.row: 1 Layout.row: 1
Layout.column: 0 Layout.column: 0
} }
@ -438,6 +454,7 @@ MySettingsTab {
visible: !root.currentModelInfo.isChatGPT visible: !root.currentModelInfo.isChatGPT
text: root.currentModelInfo.topK text: root.currentModelInfo.topK
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
ToolTip.text: qsTr("Only the top K most likely tokens will be chosen from") ToolTip.text: qsTr("Only the top K most likely tokens will be chosen from")
ToolTip.visible: hovered ToolTip.visible: hovered
Layout.row: 1 Layout.row: 1
@ -475,6 +492,7 @@ MySettingsTab {
visible: !root.currentModelInfo.isChatGPT visible: !root.currentModelInfo.isChatGPT
text: qsTr("Max Length:") text: qsTr("Max Length:")
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
Layout.row: 1 Layout.row: 1
Layout.column: 2 Layout.column: 2
} }
@ -483,6 +501,7 @@ MySettingsTab {
visible: !root.currentModelInfo.isChatGPT visible: !root.currentModelInfo.isChatGPT
text: root.currentModelInfo.maxLength text: root.currentModelInfo.maxLength
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
ToolTip.text: qsTr("Maximum length of response in tokens") ToolTip.text: qsTr("Maximum length of response in tokens")
ToolTip.visible: hovered ToolTip.visible: hovered
Layout.row: 1 Layout.row: 1
@ -520,6 +539,7 @@ MySettingsTab {
id: batchSizeLabel id: batchSizeLabel
visible: !root.currentModelInfo.isChatGPT visible: !root.currentModelInfo.isChatGPT
text: qsTr("Prompt Batch Size:") text: qsTr("Prompt Batch Size:")
font.pixelSize: theme.fontSizeLarge
color: theme.textColor color: theme.textColor
Layout.row: 2 Layout.row: 2
Layout.column: 0 Layout.column: 0
@ -529,6 +549,7 @@ MySettingsTab {
visible: !root.currentModelInfo.isChatGPT visible: !root.currentModelInfo.isChatGPT
text: root.currentModelInfo.promptBatchSize text: root.currentModelInfo.promptBatchSize
color: theme.textColor 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.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 ToolTip.visible: hovered
Layout.row: 2 Layout.row: 2
@ -566,6 +587,7 @@ MySettingsTab {
visible: !root.currentModelInfo.isChatGPT visible: !root.currentModelInfo.isChatGPT
text: qsTr("Repeat Penalty:") text: qsTr("Repeat Penalty:")
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
Layout.row: 2 Layout.row: 2
Layout.column: 2 Layout.column: 2
} }
@ -574,6 +596,7 @@ MySettingsTab {
visible: !root.currentModelInfo.isChatGPT visible: !root.currentModelInfo.isChatGPT
text: root.currentModelInfo.repeatPenalty text: root.currentModelInfo.repeatPenalty
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
ToolTip.text: qsTr("Amount to penalize repetitiveness of the output") ToolTip.text: qsTr("Amount to penalize repetitiveness of the output")
ToolTip.visible: hovered ToolTip.visible: hovered
Layout.row: 2 Layout.row: 2
@ -611,6 +634,7 @@ MySettingsTab {
visible: !root.currentModelInfo.isChatGPT visible: !root.currentModelInfo.isChatGPT
text: qsTr("Repeat Penalty Tokens:") text: qsTr("Repeat Penalty Tokens:")
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
Layout.row: 3 Layout.row: 3
Layout.column: 0 Layout.column: 0
} }
@ -619,6 +643,7 @@ MySettingsTab {
visible: !root.currentModelInfo.isChatGPT visible: !root.currentModelInfo.isChatGPT
text: root.currentModelInfo.repeatPenaltyTokens text: root.currentModelInfo.repeatPenaltyTokens
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
ToolTip.text: qsTr("How far back in output to apply repeat penalty") ToolTip.text: qsTr("How far back in output to apply repeat penalty")
ToolTip.visible: hovered ToolTip.visible: hovered
Layout.row: 3 Layout.row: 3
@ -664,4 +689,4 @@ MySettingsTab {
color: theme.tabBorder color: theme.tabBorder
} }
} }
} }

@ -10,6 +10,7 @@ Button {
text: myButton.text text: myButton.text
horizontalAlignment: Text.AlignHCenter horizontalAlignment: Text.AlignHCenter
color: myButton.enabled ? theme.textColor : theme.mutedTextColor color: myButton.enabled ? theme.textColor : theme.mutedTextColor
font.pixelSize: theme.fontSizeLarge
Accessible.role: Accessible.Button Accessible.role: Accessible.Button
Accessible.name: text Accessible.name: text
} }
@ -21,4 +22,4 @@ Button {
} }
Accessible.role: Accessible.Button Accessible.role: Accessible.Button
Accessible.name: text Accessible.name: text
} }

@ -56,6 +56,7 @@ Item {
padding: 10 padding: 10
contentItem: IconLabel { contentItem: IconLabel {
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
font.bold: tabButton.checked font.bold: tabButton.checked
text: model.title text: model.title
} }

@ -66,6 +66,7 @@ Item {
anchors.left: parent.left anchors.left: parent.left
width: implicitWidth width: implicitWidth
text: qsTr("Restore Defaults") text: qsTr("Restore Defaults")
font.pixelSize: theme.fontSizeLarge
Accessible.role: Accessible.Button Accessible.role: Accessible.Button
Accessible.name: text Accessible.name: text
Accessible.description: qsTr("Restores the settings dialog to a default state") Accessible.description: qsTr("Restores the settings dialog to a default state")
@ -79,6 +80,7 @@ Item {
visible: root.advancedSettings visible: root.advancedSettings
width: implicitWidth width: implicitWidth
text: !advancedInner.visible ? qsTr("Advanced Settings") : qsTr("Hide Advanced Settings") text: !advancedInner.visible ? qsTr("Advanced Settings") : qsTr("Hide Advanced Settings")
font.pixelSize: theme.fontSizeLarge
Accessible.role: Accessible.Button Accessible.role: Accessible.Button
Accessible.name: text Accessible.name: text
Accessible.description: qsTr("Shows/hides the advanced settings") Accessible.description: qsTr("Shows/hides the advanced settings")

@ -14,6 +14,7 @@ Button {
text: myButton.text text: myButton.text
horizontalAlignment: Text.AlignHCenter horizontalAlignment: Text.AlignHCenter
color: myButton.enabled ? theme.textColor : theme.mutedTextColor color: myButton.enabled ? theme.textColor : theme.mutedTextColor
font.pixelSize: theme.fontSizeLarge
Accessible.role: Accessible.Button Accessible.role: Accessible.Button
Accessible.name: text Accessible.name: text
} }
@ -43,4 +44,4 @@ Button {
} }
Accessible.role: Accessible.Button Accessible.role: Accessible.Button
Accessible.name: text Accessible.name: text
} }

@ -39,6 +39,7 @@ MyDialog {
anchors.verticalCenter: img.verticalCenter anchors.verticalCenter: img.verticalCenter
text: qsTr("Contribute data to the GPT4All Opensource Datalake.") text: qsTr("Contribute data to the GPT4All Opensource Datalake.")
color: theme.textColor 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!") 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 color: theme.textColor
font.pixelSize: theme.fontSizeLarge
focus: false focus: false
readOnly: true readOnly: true
Accessible.role: Accessible.Paragraph Accessible.role: Accessible.Paragraph

@ -33,6 +33,7 @@ MyDialog {
bottomPadding: 20 bottomPadding: 20
text: qsTr("New version is available:") text: qsTr("New version is available:")
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
} }
MyButton { MyButton {
@ -42,6 +43,7 @@ MyDialog {
anchors.verticalCenter: label.verticalCenter anchors.verticalCenter: label.verticalCenter
padding: 20 padding: 20
text: qsTr("Update") text: qsTr("Update")
font.pixelSize: theme.fontSizeLarge
Accessible.description: qsTr("Update to new version") Accessible.description: qsTr("Update to new version")
onClicked: { onClicked: {
if (!LLM.checkForUpdates()) if (!LLM.checkForUpdates())

@ -69,6 +69,7 @@ MyDialog {
anchors.margins: 20 anchors.margins: 20
font.bold: index == listView.currentIndex font.bold: index == listView.currentIndex
text: title text: title
font.pixelSize: theme.fontSizeLarge
elide: Text.ElideRight elide: Text.ElideRight
color: theme.textColor color: theme.textColor
width: 200 width: 200

@ -41,6 +41,7 @@ MyDialog {
anchors.verticalCenter: img.verticalCenter anchors.verticalCenter: img.verticalCenter
text: qsTr("Welcome!") text: qsTr("Welcome!")
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
} }
} }
@ -62,6 +63,7 @@ MyDialog {
+ qsTr("### Contributors\n") + qsTr("### Contributors\n")
+ Download.releaseInfo.contributors + Download.releaseInfo.contributors
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
focus: false focus: false
readOnly: true readOnly: true
Accessible.role: Accessible.Paragraph 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!") model release that uses your data!")
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
focus: false focus: false
readOnly: true readOnly: true
Accessible.role: Accessible.Paragraph Accessible.role: Accessible.Paragraph
@ -127,6 +130,7 @@ model release that uses your data!")
Layout.row: 0 Layout.row: 0
Layout.column: 0 Layout.column: 0
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
Accessible.role: Accessible.Paragraph Accessible.role: Accessible.Paragraph
Accessible.name: qsTr("Opt-in for anonymous usage statistics") Accessible.name: qsTr("Opt-in for anonymous usage statistics")
Accessible.description: qsTr("Label for opt-in") Accessible.description: qsTr("Label for opt-in")
@ -155,6 +159,7 @@ model release that uses your data!")
id: optInStatisticsRadioYes id: optInStatisticsRadioYes
checked: false checked: false
text: qsTr("Yes") text: qsTr("Yes")
font.pixelSize: theme.fontSizeLarge
Accessible.role: Accessible.RadioButton Accessible.role: Accessible.RadioButton
Accessible.name: qsTr("Opt-in for anonymous usage statistics") Accessible.name: qsTr("Opt-in for anonymous usage statistics")
Accessible.description: qsTr("Radio button to allow 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 { RadioButton {
id: optInStatisticsRadioNo id: optInStatisticsRadioNo
text: qsTr("No") text: qsTr("No")
font.pixelSize: theme.fontSizeLarge
Accessible.role: Accessible.RadioButton Accessible.role: Accessible.RadioButton
Accessible.name: qsTr("Opt-out for anonymous usage statistics") Accessible.name: qsTr("Opt-out for anonymous usage statistics")
Accessible.description: qsTr("Radio button to allow 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.row: 1
Layout.column: 0 Layout.column: 0
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
Accessible.role: Accessible.Paragraph Accessible.role: Accessible.Paragraph
Accessible.name: qsTr("Opt-in for network") Accessible.name: qsTr("Opt-in for network")
Accessible.description: qsTr("Checkbox to allow 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 id: optInNetworkRadioYes
checked: false checked: false
text: qsTr("Yes") text: qsTr("Yes")
font.pixelSize: theme.fontSizeLarge
Accessible.role: Accessible.RadioButton Accessible.role: Accessible.RadioButton
Accessible.name: qsTr("Opt-in for network") Accessible.name: qsTr("Opt-in for network")
Accessible.description: qsTr("Radio button to allow opt-in anonymous sharing of chats to the GPT4All Datalake") 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 { RadioButton {
id: optInNetworkRadioNo id: optInNetworkRadioNo
text: qsTr("No") text: qsTr("No")
font.pixelSize: theme.fontSizeLarge
Accessible.role: Accessible.RadioButton Accessible.role: Accessible.RadioButton
Accessible.name: qsTr("Opt-out for network") Accessible.name: qsTr("Opt-out for network")
Accessible.description: qsTr("Radio button to allow opt-out anonymous sharing of chats to the GPT4All Datalake") Accessible.description: qsTr("Radio button to allow opt-out anonymous sharing of chats to the GPT4All Datalake")

@ -21,7 +21,7 @@ QtObject {
property color tabBorder: MySettings.chatTheme == "Dark" ? backgroundLight : backgroundDark property color tabBorder: MySettings.chatTheme == "Dark" ? backgroundLight : backgroundDark
property color assistantColor: "#10a37f" property color assistantColor: "#10a37f"
property color textErrorColor: "red" property color textErrorColor: "red"
property real fontSizeLarge: Qt.application.font.pixelSize 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: Qt.application.font.pixelSize + 2 property real fontSizeLarger: MySettings.fontSize == "Small" ? Qt.application.font.pixelSize + 2 : MySettings.fontSize == "Medium" ? Qt.application.font.pixelSize + 7 : Qt.application.font.pixelSize + 12
} }

@ -39,6 +39,7 @@ MyDialog {
anchors.verticalCenter: img.verticalCenter anchors.verticalCenter: img.verticalCenter
text: qsTr("Please edit the text below to provide a better response. (optional)") text: qsTr("Please edit the text below to provide a better response. (optional)")
color: theme.textColor color: theme.textColor
font.pixelSize: theme.fontSizeLarge
} }
} }
@ -71,11 +72,13 @@ MyDialog {
spacing: 10 spacing: 10
MyButton { MyButton {
text: qsTr("Submit") text: qsTr("Submit")
font.pixelSize: theme.fontSizeLarge
Accessible.description: qsTr("Submits the user's response") Accessible.description: qsTr("Submits the user's response")
DialogButtonBox.buttonRole: DialogButtonBox.AcceptRole DialogButtonBox.buttonRole: DialogButtonBox.AcceptRole
} }
MyButton { MyButton {
text: qsTr("Cancel") text: qsTr("Cancel")
font.pixelSize: theme.fontSizeLarge
Accessible.description: qsTr("Closes the response dialog") Accessible.description: qsTr("Closes the response dialog")
DialogButtonBox.buttonRole: DialogButtonBox.RejectRole DialogButtonBox.buttonRole: DialogButtonBox.RejectRole
} }
@ -83,4 +86,4 @@ MyDialog {
color: "transparent" color: "transparent"
} }
} }
} }

Loading…
Cancel
Save