Merge branch 'PrismLauncher:develop' into develop
2
.github/FUNDING.yml
vendored
@ -1 +1 @@
|
||||
open_collective: polymc
|
||||
open_collective: prismlauncher
|
||||
|
12
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
@ -8,9 +8,9 @@ body:
|
||||
If you need help with running Minecraft, please visit us on our Discord before making a bug report.
|
||||
|
||||
Before submitting a bug report, please make sure you have read this *entire* form, and that:
|
||||
* You have read the [PolyMC wiki](https://polymc.org/wiki/) and it has not answered your question.
|
||||
* You have read the [Prism Launcher wiki](https://prismlauncher.org/wiki/) and it has not answered your question.
|
||||
* Your bug is not caused by Minecraft or any mods you have installed.
|
||||
* Your issue has not been reported before, [make sure to use the search function!](https://github.com/PolyMC/PolyMC/issues)
|
||||
* Your issue has not been reported before, [make sure to use the search function!](https://github.com/PrismLauncher/PrismLauncher/issues)
|
||||
|
||||
**Do not forget to give your issue a descriptive title.** "Bug in the instance screen" makes it hard to distinguish issues at a glance.
|
||||
- type: dropdown
|
||||
@ -25,15 +25,15 @@ body:
|
||||
- Other
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Version of PolyMC
|
||||
description: The version of PolyMC used in the bug report.
|
||||
placeholder: PolyMC 1.4.1
|
||||
label: Version of Prism Launcher
|
||||
description: The version of Prism Launcher used in the bug report.
|
||||
placeholder: Prism Launcher 5.0
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Version of Qt
|
||||
description: The version of Qt used in the bug report. You can find it in Help -> About PolyMC -> About Qt.
|
||||
description: The version of Qt used in the bug report. You can find it in Help -> About Prism Launcher -> About Qt.
|
||||
placeholder: Qt 6.3.0
|
||||
validations:
|
||||
required: true
|
||||
|
4
.github/ISSUE_TEMPLATE/config.yml
vendored
@ -1,5 +1,5 @@
|
||||
blank_issues_enabled: true
|
||||
contact_links:
|
||||
- name: PolyMC Matrix Support Room
|
||||
url: https://matrix.to/#/#support:polymc.org
|
||||
- name: Prism Launcher Matrix Support Room
|
||||
url: https://matrix.to/#/#prism-support:matrix.org
|
||||
about: Please ask for support here before opening an issue.
|
||||
|
4
.github/ISSUE_TEMPLATE/rfc.yml
vendored
@ -6,7 +6,7 @@ body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
### Use this form to suggest a larger change for PolyMC.
|
||||
### Use this form to suggest a larger change for Prism Launcher.
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Goal
|
||||
@ -18,7 +18,7 @@ body:
|
||||
attributes:
|
||||
label: Motivation
|
||||
description: |
|
||||
Introduce the topic. If this is a not-well-known section of PolyMC, a detailed explanation of the background is recommended.
|
||||
Introduce the topic. If this is a not-well-known section of Prism Launcher, a detailed explanation of the background is recommended.
|
||||
Some example points of discussion:
|
||||
- What specific problems are you facing right now that you're trying to address?
|
||||
- Are there any previous discussions? Link to them and summarize them (don't force your readers to read them though!).
|
||||
|
8
.github/ISSUE_TEMPLATE/suggestion.yml
vendored
@ -5,25 +5,25 @@ body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
### Use this form to suggest a feature for PolyMC.
|
||||
### Use this form to suggest a feature for Prism Launcher.
|
||||
- type: input
|
||||
attributes:
|
||||
label: Role
|
||||
description: In what way do you use PolyMC that needs this feature?
|
||||
description: In what way do you use Prism Launcher that needs this feature?
|
||||
placeholder: I play modded Minecraft.
|
||||
validations:
|
||||
required: true
|
||||
- type: input
|
||||
attributes:
|
||||
label: Suggestion
|
||||
description: What do you want PolyMC to do?
|
||||
description: What do you want Prism Launcher to do?
|
||||
placeholder: I want the cat button to meow.
|
||||
validations:
|
||||
required: true
|
||||
- type: input
|
||||
attributes:
|
||||
label: Benefit
|
||||
description: Why do you need PolyMC to do this?
|
||||
description: Why do you need Prism Launcher to do this?
|
||||
placeholder: so that I can always hear a cat when I need to.
|
||||
validations:
|
||||
required: true
|
||||
|
9
.github/pull_request_template.md
vendored
Normal file
@ -0,0 +1,9 @@
|
||||
<!--
|
||||
Hey there! Thanks for your contribution.
|
||||
|
||||
Please make sure that your commits are signed off first.
|
||||
If you don't know how that works, check out our contribution guidelines: https://github.com/PrismLauncher/PrismLauncher/blob/develop/CONTRIBUTING.md#signing-your-work
|
||||
If you already created your commits, you can run `git rebase --signoff develop` to retroactively sign-off all your commits and `git push --force` to override what you have pushed already.
|
||||
|
||||
Note that signing and signing-off are two different things!
|
||||
-->
|
4
.github/workflows/build.yml
vendored
@ -104,7 +104,7 @@ jobs:
|
||||
|
||||
- name: Setup ccache
|
||||
if: runner.os != 'Windows' && inputs.build_type == 'Debug'
|
||||
uses: hendrikmuhs/ccache-action@v1.2.1
|
||||
uses: hendrikmuhs/ccache-action@v1.2.3
|
||||
with:
|
||||
key: ${{ matrix.os }}-qt${{ matrix.qt_ver }}
|
||||
|
||||
@ -126,7 +126,7 @@ jobs:
|
||||
|
||||
- name: Retrieve ccache cache (Windows)
|
||||
if: runner.os == 'Windows' && inputs.build_type == 'Debug'
|
||||
uses: actions/cache@v3.0.2
|
||||
uses: actions/cache@v3.0.11
|
||||
with:
|
||||
path: '${{ github.workspace }}\.ccache'
|
||||
key: ${{ matrix.os }}-qt${{ matrix.qt_ver }}
|
||||
|
2
.github/workflows/trigger_builds.yml
vendored
@ -3,7 +3,7 @@ name: Build Application
|
||||
on:
|
||||
push:
|
||||
branches-ignore:
|
||||
- 'stable'
|
||||
- 'renovate/**'
|
||||
paths-ignore:
|
||||
- '**.md'
|
||||
- '**/LICENSE'
|
||||
|
2
.github/workflows/trigger_release.yml
vendored
@ -65,7 +65,7 @@ jobs:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
tag_name: ${{ github.ref }}
|
||||
name: PrismLauncher ${{ env.VERSION }}
|
||||
name: Prism Launcher ${{ env.VERSION }}
|
||||
draft: true
|
||||
prerelease: false
|
||||
files: |
|
||||
|
@ -71,7 +71,7 @@ endif()
|
||||
##################################### Set Application options #####################################
|
||||
|
||||
######## Set URLs ########
|
||||
set(Launcher_NEWS_RSS_URL "https://prismlauncher.org/feed/feed.xml" CACHE STRING "URL to fetch PrismLauncher's news RSS feed from.")
|
||||
set(Launcher_NEWS_RSS_URL "https://prismlauncher.org/feed/feed.xml" CACHE STRING "URL to fetch Prism Launcher's news RSS feed from.")
|
||||
set(Launcher_NEWS_OPEN_URL "https://prismlauncher.org/news" CACHE STRING "URL that gets opened when the user clicks 'More News'")
|
||||
set(Launcher_HELP_URL "https://prismlauncher.org/wiki/help-pages/%1" CACHE STRING "URL (with arg %1 to be substituted with page-id) that gets opened when the user requests help")
|
||||
|
||||
@ -99,7 +99,7 @@ set(Launcher_IMGUR_CLIENT_ID "5b97b0713fba4a3" CACHE STRING "Client ID you can g
|
||||
set(Launcher_BUG_TRACKER_URL "https://github.com/PrismLauncher/PrismLauncher/issues" CACHE STRING "URL for the bug tracker.")
|
||||
|
||||
# Translations Platform URL
|
||||
set(Launcher_TRANSLATIONS_URL "https://hosted.weblate.org/projects/prismlauncher/prismlauncher/" CACHE STRING "URL for the translations platform.")
|
||||
set(Launcher_TRANSLATIONS_URL "https://hosted.weblate.org/projects/prismlauncher/launcher/" CACHE STRING "URL for the translations platform.")
|
||||
|
||||
# Matrix Space
|
||||
set(Launcher_MATRIX_URL "https://matrix.to/#/#prismlauncher:matrix.org" CACHE STRING "URL to the Matrix Space")
|
||||
@ -249,7 +249,7 @@ if(UNIX AND APPLE)
|
||||
elseif(UNIX)
|
||||
set(BINARY_DEST_DIR "bin")
|
||||
set(LIBRARY_DEST_DIR "lib${LIB_SUFFIX}")
|
||||
set(JARS_DEST_DIR "share/jars")
|
||||
set(JARS_DEST_DIR "share/${Launcher_APP_BINARY_NAME}")
|
||||
set(LAUNCHER_DESKTOP_DEST_DIR "share/applications" CACHE STRING "Path to the desktop file directory")
|
||||
set(LAUNCHER_METAINFO_DEST_DIR "share/metainfo" CACHE STRING "Path to the metainfo directory")
|
||||
set(LAUNCHER_ICON_DEST_DIR "share/icons/hicolor/scalable/apps" CACHE STRING "Path to the scalable icon directory")
|
||||
|
75
README.md
@ -1,24 +1,87 @@
|
||||
# Prism Launcher
|
||||
<p align="center">
|
||||
<img src="./program_info/org.prismlauncher.PrismLauncher.logo.svg#gh-light-mode-only" alt="Prism Launcher logo" width="50%"/>
|
||||
<img src="./program_info/org.prismlauncher.PrismLauncher.logo-darkmode.svg#gh-dark-mode-only" alt="Prism Launcher logo" width="50%"/>
|
||||
</p>
|
||||
|
||||
Prism Launcher is a custom launcher for Minecraft that allows you to easily manage multiple installations of Minecraft at once.
|
||||
|
||||
We are working on a website and other media, for more info we have a [Discord server](https://discord.gg/hX4g537UNE). Logo and branding also coming soon.
|
||||
This is a **fork** of the MultiMC Launcher and not endorsed by MultiMC.
|
||||
|
||||
## Installation
|
||||
|
||||
- All downloads and instructions for Prism Launcher will soon be available.
|
||||
- Last build status: <https://github.com/PrismLauncher/PrismLauncher/actions>
|
||||
- All downloads and instructions for Prism Launcher can be found [on our website](https://prismlauncher.org/download/).
|
||||
- Last build status can be found [here](https://github.com/PrismLauncher/PrismLauncher/actions).
|
||||
|
||||
### Development Builds
|
||||
|
||||
There are development builds available [here](https://github.com/PrismLauncher/PrismLauncher/actions). These have debug information in the binaries, so their file sizes are relatively larger.
|
||||
|
||||
Portable builds are provided for AppImage on Linux, Windows, and macOS.
|
||||
Portable builds are provided for on Linux, Windows, and macOS.
|
||||
|
||||
For Debian and Arch, you can use these packages for the latest development versions:
|
||||
[![prismlauncher-git](https://img.shields.io/badge/aur-prismlauncher--git-blue)](https://aur.archlinux.org/packages/prismlauncher-git/)
|
||||
[![prismlauncher-git](https://img.shields.io/badge/mpr-prismlauncher--git-orange)](https://mpr.makedeb.org/packages/prismlauncher-git)
|
||||
## Help & Support
|
||||
|
||||
- Join the [Discord Server](https://discord.gg/hX4g537UNE) for now.
|
||||
Feel free to create an issue if you need help. However, you might find it easier to ask in the Discord server.
|
||||
|
||||
[![Prism Launcher Discord server](https://discordapp.com/api/guilds/1031648380885147709/widget.png?style=banner3)](https://discord.gg/prismlauncher)
|
||||
|
||||
We will also soon be opening up our Matrix channels.
|
||||
You can already join our Matrix space:
|
||||
|
||||
[![PrismLauncher Space](https://img.shields.io/matrix/prismlauncher:matrix.org?label=PrismLauncher%20space)](https://matrix.to/#/#prismlauncher:matrix.org)
|
||||
|
||||
We also have a subreddit you can post your issues and suggestions on:
|
||||
|
||||
[r/PrismLauncher](https://www.reddit.com/r/PrismLauncher/)
|
||||
|
||||
## Building
|
||||
|
||||
If you want to build Prism Launcher yourself, check [Build Instructions](https://prismlauncher.org/wiki/development/build-instructions/) for build instructions.
|
||||
|
||||
## Translations
|
||||
|
||||
The translation effort for PrismLauncher is hosted on [Weblate](https://hosted.weblate.org/projects/prismlauncher/launcher/) and information about translating Prism Launcher is available at <https://github.com/PrismLauncher/Translations>
|
||||
|
||||
## Forking/Redistributing/Custom builds policy
|
||||
|
||||
We don't care what you do with your fork/custom build as long as you follow the terms of the [license](LICENSE) (this is a legal responsibility), and if you made code changes rather than just packaging a custom build, please do the following as a basic courtesy:
|
||||
|
||||
- Make it clear that your fork is not PrismLauncher and is not endorsed by or affiliated with the PrismLauncher project (<https://prismlauncher.org>).
|
||||
- Go through [CMakeLists.txt](CMakeLists.txt) and change PrismLauncher's API keys to your own or set them to empty strings (`""`) to disable them (this way the program will still compile but the functionality requiring those keys will be disabled).
|
||||
|
||||
If you have any questions or want any clarification on the above conditions please make an issue and ask us.
|
||||
|
||||
Be aware that if you build this software without removing the provided API keys in [CMakeLists.txt](CMakeLists.txt) you are accepting the following terms and conditions:
|
||||
|
||||
- [Microsoft Identity Platform Terms of Use](https://docs.microsoft.com/en-us/legal/microsoft-identity-platform/terms-of-use)
|
||||
- [CurseForge 3rd Party API Terms and Conditions](https://support.curseforge.com/en/support/solutions/articles/9000207405-curse-forge-3rd-party-api-terms-and-conditions)
|
||||
|
||||
If you do not agree with these terms and conditions, then remove the associated API keys from the [CMakeLists.txt](CMakeLists.txt) file by setting them to an empty string (`""`).
|
||||
|
||||
## License
|
||||
|
||||
All launcher code is available under the GPL-3.0-only license.
|
||||
|
||||
The logo and related assets are under the CC BY-SA 4.0 license.
|
||||
|
||||
## Sponsors
|
||||
|
||||
Thanks to JetBrains for providing us a few licenses for all their products, as part of their [Open Source program](https://www.jetbrains.com/opensource/).
|
||||
|
||||
[![JetBrains](https://resources.jetbrains.com/storage/products/company/brand/logos/jb_beam.svg)](https://www.jetbrains.com/opensource/)
|
||||
|
||||
Thanks to Weblate for hosting our translation efforts.
|
||||
|
||||
<a href="https://hosted.weblate.org/engage/prismlauncher/">
|
||||
<img src="https://hosted.weblate.org/widgets/prismlauncher/-/open-graph.png" alt="Translation status" width="300" />
|
||||
</a>
|
||||
|
||||
Thanks to Netlify for providing us their excellent web services, as part of their [Open Source program](https://www.netlify.com/open-source/)
|
||||
|
||||
<a href="https://www.netlify.com"> <img src="https://www.netlify.com/v3/img/components/netlify-color-accent.svg" alt="Deploys by Netlify" /> </a>
|
||||
|
||||
Thanks to the awesome people over at [MacStadium](https://www.macstadium.com/), for providing M1-Macs for development purposes!
|
||||
|
||||
<a href="https://www.macstadium.com"><img src="https://uploads-ssl.webflow.com/5ac3c046c82724970fc60918/5c019d917bba312af7553b49_MacStadium-developerlogo.png" alt="Powered by MacStadium" width="300"></a>
|
||||
|
@ -42,6 +42,7 @@ Config::Config()
|
||||
{
|
||||
// Name and copyright
|
||||
LAUNCHER_NAME = "@Launcher_Name@";
|
||||
LAUNCHER_APP_BINARY_NAME = "@Launcher_APP_BINARY_NAME@";
|
||||
LAUNCHER_DISPLAYNAME = "@Launcher_DisplayName@";
|
||||
LAUNCHER_COPYRIGHT = "@Launcher_Copyright@";
|
||||
LAUNCHER_DOMAIN = "@Launcher_Domain@";
|
||||
|
@ -44,6 +44,7 @@ class Config {
|
||||
public:
|
||||
Config();
|
||||
QString LAUNCHER_NAME;
|
||||
QString LAUNCHER_APP_BINARY_NAME;
|
||||
QString LAUNCHER_DISPLAYNAME;
|
||||
QString LAUNCHER_COPYRIGHT;
|
||||
QString LAUNCHER_DOMAIN;
|
||||
|
@ -488,7 +488,8 @@ Application::Application(int &argc, char **argv) : QApplication(argc, argv)
|
||||
|
||||
// Initialize application settings
|
||||
{
|
||||
m_settings.reset(new INISettingsObject(BuildConfig.LAUNCHER_CONFIGFILE, this));
|
||||
// Provide a fallback for migration from PolyMC
|
||||
m_settings.reset(new INISettingsObject({ BuildConfig.LAUNCHER_CONFIGFILE, "polymc.cfg", "multimc.cfg" }, this));
|
||||
// Updates
|
||||
// Multiple channels are separated by spaces
|
||||
m_settings->registerSetting("UpdateChannel", BuildConfig.VERSION_CHANNEL);
|
||||
@ -815,6 +816,7 @@ Application::Application(int &argc, char **argv) : QApplication(argc, argv)
|
||||
m_metacache->addBase("FlamePacks", QDir("cache/FlamePacks").absolutePath());
|
||||
m_metacache->addBase("FlameMods", QDir("cache/FlameMods").absolutePath());
|
||||
m_metacache->addBase("ModrinthPacks", QDir("cache/ModrinthPacks").absolutePath());
|
||||
m_metacache->addBase("ModrinthModpacks", QDir("cache/ModrinthModpacks").absolutePath());
|
||||
m_metacache->addBase("root", QDir::currentPath());
|
||||
m_metacache->addBase("translations", QDir("translations").absolutePath());
|
||||
m_metacache->addBase("icons", QDir("cache/icons").absolutePath());
|
||||
@ -1569,7 +1571,7 @@ QString Application::getJarPath(QString jarFile)
|
||||
{
|
||||
QStringList potentialPaths = {
|
||||
#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD) || defined(Q_OS_OPENBSD)
|
||||
FS::PathCombine(m_rootPath, "share/jars"),
|
||||
FS::PathCombine(m_rootPath, "share/" + BuildConfig.LAUNCHER_APP_BINARY_NAME),
|
||||
#endif
|
||||
FS::PathCombine(m_rootPath, "jars"),
|
||||
FS::PathCombine(applicationDirPath(), "jars")
|
||||
|
@ -854,6 +854,10 @@ SET(LAUNCHER_SOURCES
|
||||
ui/widgets/PageContainer.cpp
|
||||
ui/widgets/PageContainer.h
|
||||
ui/widgets/PageContainer_p.h
|
||||
ui/widgets/ProjectDescriptionPage.h
|
||||
ui/widgets/ProjectDescriptionPage.cpp
|
||||
ui/widgets/VariableSizedImageObject.h
|
||||
ui/widgets/VariableSizedImageObject.cpp
|
||||
ui/widgets/ProjectItem.h
|
||||
ui/widgets/ProjectItem.cpp
|
||||
ui/widgets/VersionListView.cpp
|
||||
|
@ -441,7 +441,7 @@ QList<QString> JavaUtils::FindJavaPaths()
|
||||
scanJavaDir("/usr/lib/jvm");
|
||||
scanJavaDir("/usr/lib64/jvm");
|
||||
scanJavaDir("/usr/lib32/jvm");
|
||||
// javas stored in PolyMC's folder
|
||||
// javas stored in Prism Launcher's folder
|
||||
scanJavaDir("java");
|
||||
// manually installed JDKs in /opt
|
||||
scanJavaDir("/opt/jdk");
|
||||
|
@ -194,7 +194,7 @@ public: /* methods */
|
||||
QString getCompatibleNative(const RuntimeContext & runtimeContext) const;
|
||||
|
||||
private: /* methods */
|
||||
/// the default storage prefix used by PolyMC
|
||||
/// the default storage prefix used by Prism Launcher
|
||||
static QString defaultStoragePrefix();
|
||||
|
||||
/// Get the prefix - root of the storage to be used
|
||||
@ -215,23 +215,23 @@ protected: /* data */
|
||||
/// DEPRECATED URL prefix of the maven repo where the file can be downloaded
|
||||
QString m_repositoryURL;
|
||||
|
||||
/// DEPRECATED: PolyMC-specific absolute URL. takes precedence over the implicit maven repo URL, if defined
|
||||
/// DEPRECATED: Prism Launcher-specific absolute URL. takes precedence over the implicit maven repo URL, if defined
|
||||
QString m_absoluteURL;
|
||||
|
||||
/// PolyMC extension - filename override
|
||||
/// Prism Launcher extension - filename override
|
||||
QString m_filename;
|
||||
|
||||
/// DEPRECATED PolyMC extension - display name
|
||||
/// DEPRECATED Prism Launcher extension - display name
|
||||
QString m_displayname;
|
||||
|
||||
/**
|
||||
* PolyMC-specific type hint - modifies how the library is treated
|
||||
* Prism Launcher-specific type hint - modifies how the library is treated
|
||||
*/
|
||||
QString m_hint;
|
||||
|
||||
/**
|
||||
* storage - by default the local libraries folder in polymc, but could be elsewhere
|
||||
* PolyMC specific, because of FTB.
|
||||
* storage - by default the local libraries folder in Prism Launcher, but could be elsewhere
|
||||
* Prism Launcher specific, because of FTB.
|
||||
*/
|
||||
QString m_storagePrefix;
|
||||
|
||||
|
@ -62,19 +62,19 @@ public: /* methods */
|
||||
void applyTo(LaunchProfile* profile, const RuntimeContext & runtimeContext);
|
||||
|
||||
public: /* data */
|
||||
/// PolyMC: order hint for this version file if no explicit order is set
|
||||
/// Prism Launcher: order hint for this version file if no explicit order is set
|
||||
int order = 0;
|
||||
|
||||
/// PolyMC: human readable name of this package
|
||||
/// Prism Launcher: human readable name of this package
|
||||
QString name;
|
||||
|
||||
/// PolyMC: package ID of this package
|
||||
/// Prism Launcher: package ID of this package
|
||||
QString uid;
|
||||
|
||||
/// PolyMC: version of this package
|
||||
/// Prism Launcher: version of this package
|
||||
QString version;
|
||||
|
||||
/// PolyMC: DEPRECATED dependency on a Minecraft version
|
||||
/// Prism Launcher: DEPRECATED dependency on a Minecraft version
|
||||
QString dependsOnMinecraftVersion;
|
||||
|
||||
/// Mojang: DEPRECATED used to version the Mojang version format
|
||||
@ -86,13 +86,13 @@ public: /* data */
|
||||
/// Mojang: class to launch Minecraft with
|
||||
QString mainClass;
|
||||
|
||||
/// PolyMC: class to launch legacy Minecraft with (embed in a custom window)
|
||||
/// Prism Launcher: class to launch legacy Minecraft with (embed in a custom window)
|
||||
QString appletClass;
|
||||
|
||||
/// Mojang: Minecraft launch arguments (may contain placeholders for variable substitution)
|
||||
QString minecraftArguments;
|
||||
|
||||
/// PolyMC: Additional JVM launch arguments
|
||||
/// Prism Launcher: Additional JVM launch arguments
|
||||
QStringList addnJvmArguments;
|
||||
|
||||
/// Mojang: list of compatible java majors
|
||||
@ -110,38 +110,38 @@ public: /* data */
|
||||
/// Mojang: DEPRECATED asset group to be used with Minecraft
|
||||
QString assets;
|
||||
|
||||
/// PolyMC: list of tweaker mod arguments for launchwrapper
|
||||
/// Prism Launcher: list of tweaker mod arguments for launchwrapper
|
||||
QStringList addTweakers;
|
||||
|
||||
/// Mojang: list of libraries to add to the version
|
||||
QList<LibraryPtr> libraries;
|
||||
|
||||
/// PolyMC: list of maven files to put in the libraries folder, but not in classpath
|
||||
/// Prism Launcher: list of maven files to put in the libraries folder, but not in classpath
|
||||
QList<LibraryPtr> mavenFiles;
|
||||
|
||||
/// PolyMC: list of agents to add to JVM arguments
|
||||
/// Prism Launcher: list of agents to add to JVM arguments
|
||||
QList<AgentPtr> agents;
|
||||
|
||||
/// The main jar (Minecraft version library, normally)
|
||||
LibraryPtr mainJar;
|
||||
|
||||
/// PolyMC: list of attached traits of this version file - used to enable features
|
||||
/// Prism Launcher: list of attached traits of this version file - used to enable features
|
||||
QSet<QString> traits;
|
||||
|
||||
/// PolyMC: list of jar mods added to this version
|
||||
/// Prism Launcher: list of jar mods added to this version
|
||||
QList<LibraryPtr> jarMods;
|
||||
|
||||
/// PolyMC: list of mods added to this version
|
||||
/// Prism Launcher: list of mods added to this version
|
||||
QList<LibraryPtr> mods;
|
||||
|
||||
/**
|
||||
* PolyMC: set of packages this depends on
|
||||
* Prism Launcher: set of packages this depends on
|
||||
* NOTE: this is shared with the meta format!!!
|
||||
*/
|
||||
Meta::RequireSet requires;
|
||||
|
||||
/**
|
||||
* PolyMC: set of packages this conflicts with
|
||||
* Prism Launcher: set of packages this conflicts with
|
||||
* NOTE: this is shared with the meta format!!!
|
||||
*/
|
||||
Meta::RequireSet conflicts;
|
||||
|
@ -44,7 +44,7 @@
|
||||
|
||||
/*!
|
||||
* List of available Mojang accounts.
|
||||
* This should be loaded in the background by PolyMC on startup.
|
||||
* This should be loaded in the background by Prism Launcher on startup.
|
||||
*/
|
||||
class AccountList : public QAbstractListModel
|
||||
{
|
||||
|
@ -61,7 +61,7 @@ Q_DECLARE_METATYPE(MinecraftAccountPtr)
|
||||
* A profile within someone's Mojang account.
|
||||
*
|
||||
* Currently, the profile system has not been implemented by Mojang yet,
|
||||
* but we might as well add some things for it in PolyMC right now so
|
||||
* but we might as well add some things for it in Prism Launcher right now so
|
||||
* we don't have to rip the code to pieces to add it later.
|
||||
*/
|
||||
struct AccountProfile
|
||||
|
@ -154,7 +154,7 @@ void LauncherPartLaunch::executeTask()
|
||||
#else
|
||||
args << classPath.join(':');
|
||||
#endif
|
||||
args << "org.polymc.EntryPoint";
|
||||
args << "org.prismlauncher.EntryPoint";
|
||||
|
||||
qDebug() << args.join(' ');
|
||||
|
||||
|
@ -23,7 +23,7 @@ MinecraftServerTarget MinecraftServerTarget::parse(const QString &fullAddress) {
|
||||
|
||||
// The logic below replicates the exact logic minecraft uses for parsing server addresses.
|
||||
// While the conversion is not lossless and eats errors, it ensures the same behavior
|
||||
// within Minecraft and PolyMC when entering server addresses.
|
||||
// within Minecraft and Prism Launcher when entering server addresses.
|
||||
if (fullAddress.startsWith("["))
|
||||
{
|
||||
int bracket = fullAddress.indexOf("]");
|
||||
|
@ -736,7 +736,12 @@ void PackInstallTask::downloadMods()
|
||||
QVector<QString> selectedMods;
|
||||
if (!optionalMods.isEmpty()) {
|
||||
setStatus(tr("Selecting optional mods..."));
|
||||
selectedMods = m_support->chooseOptionalMods(m_version, optionalMods);
|
||||
auto mods = m_support->chooseOptionalMods(m_version, optionalMods);
|
||||
if (!mods.has_value()) {
|
||||
emitAborted();
|
||||
return;
|
||||
}
|
||||
selectedMods = mods.value();
|
||||
}
|
||||
|
||||
setStatus(tr("Downloading mods..."));
|
||||
|
@ -62,7 +62,7 @@ public:
|
||||
/**
|
||||
* Requests a user interaction to select which optional mods should be installed.
|
||||
*/
|
||||
virtual QVector<QString> chooseOptionalMods(PackVersion version, QVector<ATLauncher::VersionMod> mods) = 0;
|
||||
virtual std::optional<QVector<QString>> chooseOptionalMods(PackVersion version, QVector<ATLauncher::VersionMod> mods) = 0;
|
||||
|
||||
/**
|
||||
* Requests a user interaction to select a component version from a given version list
|
||||
|
@ -9,9 +9,12 @@ Flame::FileResolvingTask::FileResolvingTask(const shared_qobject_ptr<QNetworkAcc
|
||||
|
||||
bool Flame::FileResolvingTask::abort()
|
||||
{
|
||||
bool aborted = true;
|
||||
if (m_dljob)
|
||||
return m_dljob->abort();
|
||||
return true;
|
||||
aborted &= m_dljob->abort();
|
||||
if (m_checkJob)
|
||||
aborted &= m_checkJob->abort();
|
||||
return aborted ? Task::abort() : false;
|
||||
}
|
||||
|
||||
void Flame::FileResolvingTask::executeTask()
|
||||
@ -39,7 +42,7 @@ void Flame::FileResolvingTask::netJobFinished()
|
||||
setProgress(1, 3);
|
||||
int index = 0;
|
||||
// job to check modrinth for blocked projects
|
||||
auto job = new NetJob("Modrinth check", m_network);
|
||||
m_checkJob = new NetJob("Modrinth check", m_network);
|
||||
blockedProjects = QMap<File *,QByteArray *>();
|
||||
auto doc = Json::requireDocument(*result);
|
||||
auto array = Json::requireArray(doc.object()["data"]);
|
||||
@ -59,15 +62,15 @@ void Flame::FileResolvingTask::netJobFinished()
|
||||
out.resolved = true;
|
||||
});
|
||||
|
||||
job->addNetAction(dl);
|
||||
m_checkJob->addNetAction(dl);
|
||||
blockedProjects.insert(&out, output);
|
||||
}
|
||||
}
|
||||
index++;
|
||||
}
|
||||
connect(job, &NetJob::finished, this, &Flame::FileResolvingTask::modrinthCheckFinished);
|
||||
connect(m_checkJob.get(), &NetJob::finished, this, &Flame::FileResolvingTask::modrinthCheckFinished);
|
||||
|
||||
job->start();
|
||||
m_checkJob->start();
|
||||
}
|
||||
|
||||
void Flame::FileResolvingTask::modrinthCheckFinished() {
|
||||
|
@ -30,8 +30,9 @@ protected slots:
|
||||
private: /* data */
|
||||
shared_qobject_ptr<QNetworkAccessManager> m_network;
|
||||
Flame::Manifest m_toProcess;
|
||||
std::shared_ptr<QByteArray> result;
|
||||
std::shared_ptr<QByteArray> result;
|
||||
NetJob::Ptr m_dljob;
|
||||
NetJob::Ptr m_checkJob;
|
||||
|
||||
void modrinthCheckFinished();
|
||||
|
||||
|
@ -65,48 +65,42 @@ void PackInstallTask::executeTask()
|
||||
void PackInstallTask::downloadPack()
|
||||
{
|
||||
setStatus(tr("Downloading zip for %1").arg(m_pack.name));
|
||||
setAbortable(false);
|
||||
|
||||
archivePath = QString("%1/%2/%3").arg(m_pack.dir, m_version.replace(".", "_"), m_pack.file);
|
||||
|
||||
auto packoffset = QString("%1/%2/%3").arg(m_pack.dir, m_version.replace(".", "_"), m_pack.file);
|
||||
auto entry = APPLICATION->metacache()->resolveEntry("FTBPacks", packoffset);
|
||||
netJobContainer = new NetJob("Download FTB Pack", m_network);
|
||||
|
||||
entry->setStale(true);
|
||||
QString url;
|
||||
if(m_pack.type == PackType::Private)
|
||||
{
|
||||
url = QString(BuildConfig.LEGACY_FTB_CDN_BASE_URL + "privatepacks/%1").arg(packoffset);
|
||||
if (m_pack.type == PackType::Private) {
|
||||
url = QString(BuildConfig.LEGACY_FTB_CDN_BASE_URL + "privatepacks/%1").arg(archivePath);
|
||||
} else {
|
||||
url = QString(BuildConfig.LEGACY_FTB_CDN_BASE_URL + "modpacks/%1").arg(archivePath);
|
||||
}
|
||||
else
|
||||
{
|
||||
url = QString(BuildConfig.LEGACY_FTB_CDN_BASE_URL + "modpacks/%1").arg(packoffset);
|
||||
}
|
||||
netJobContainer->addNetAction(Net::Download::makeCached(url, entry));
|
||||
archivePath = entry->getFullPath();
|
||||
netJobContainer->addNetAction(Net::Download::makeFile(url, archivePath));
|
||||
|
||||
connect(netJobContainer.get(), &NetJob::succeeded, this, &PackInstallTask::onDownloadSucceeded);
|
||||
connect(netJobContainer.get(), &NetJob::failed, this, &PackInstallTask::onDownloadFailed);
|
||||
connect(netJobContainer.get(), &NetJob::progress, this, &PackInstallTask::onDownloadProgress);
|
||||
connect(netJobContainer.get(), &NetJob::aborted, this, &PackInstallTask::onDownloadAborted);
|
||||
|
||||
netJobContainer->start();
|
||||
|
||||
setAbortable(true);
|
||||
progress(1, 4);
|
||||
}
|
||||
|
||||
void PackInstallTask::onDownloadSucceeded()
|
||||
{
|
||||
abortable = false;
|
||||
unzip();
|
||||
}
|
||||
|
||||
void PackInstallTask::onDownloadFailed(QString reason)
|
||||
{
|
||||
abortable = false;
|
||||
emitFailed(reason);
|
||||
}
|
||||
|
||||
void PackInstallTask::onDownloadProgress(qint64 current, qint64 total)
|
||||
{
|
||||
abortable = true;
|
||||
progress(current, total * 4);
|
||||
setStatus(tr("Downloading zip for %1 (%2%)").arg(m_pack.name).arg(current / 10));
|
||||
}
|
||||
@ -118,8 +112,10 @@ void PackInstallTask::onDownloadAborted()
|
||||
|
||||
void PackInstallTask::unzip()
|
||||
{
|
||||
progress(2, 4);
|
||||
setStatus(tr("Extracting modpack"));
|
||||
setAbortable(false);
|
||||
progress(2, 4);
|
||||
|
||||
QDir extractDir(m_stagingPath);
|
||||
|
||||
m_packZip.reset(new QuaZip(archivePath));
|
||||
@ -151,8 +147,8 @@ void PackInstallTask::onUnzipCanceled()
|
||||
|
||||
void PackInstallTask::install()
|
||||
{
|
||||
progress(3, 4);
|
||||
setStatus(tr("Installing modpack"));
|
||||
progress(3, 4);
|
||||
QDir unzipMcDir(m_stagingPath + "/unzip/minecraft");
|
||||
if(unzipMcDir.exists())
|
||||
{
|
||||
@ -247,11 +243,12 @@ void PackInstallTask::install()
|
||||
|
||||
bool PackInstallTask::abort()
|
||||
{
|
||||
if(abortable)
|
||||
{
|
||||
return netJobContainer->abort();
|
||||
if (!canAbort()) {
|
||||
return false;
|
||||
}
|
||||
return false;
|
||||
|
||||
netJobContainer->abort();
|
||||
return InstanceTask::abort();
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -58,6 +58,9 @@ PackInstallTask::PackInstallTask(Modpack pack, QString version, QWidget* parent)
|
||||
|
||||
bool PackInstallTask::abort()
|
||||
{
|
||||
if (!canAbort())
|
||||
return false;
|
||||
|
||||
bool aborted = true;
|
||||
|
||||
if (m_net_job)
|
||||
@ -65,15 +68,13 @@ bool PackInstallTask::abort()
|
||||
if (m_mod_id_resolver_task)
|
||||
aborted &= m_mod_id_resolver_task->abort();
|
||||
|
||||
if (aborted)
|
||||
emitAborted();
|
||||
|
||||
return aborted;
|
||||
return aborted ? InstanceTask::abort() : false;
|
||||
}
|
||||
|
||||
void PackInstallTask::executeTask()
|
||||
{
|
||||
setStatus(tr("Getting the manifest..."));
|
||||
setAbortable(false);
|
||||
|
||||
// Find pack version
|
||||
auto version_it = std::find_if(m_pack.versions.constBegin(), m_pack.versions.constEnd(),
|
||||
@ -93,10 +94,12 @@ void PackInstallTask::executeTask()
|
||||
|
||||
QObject::connect(netJob, &NetJob::succeeded, this, &PackInstallTask::onManifestDownloadSucceeded);
|
||||
QObject::connect(netJob, &NetJob::failed, this, &PackInstallTask::onManifestDownloadFailed);
|
||||
QObject::connect(netJob, &NetJob::aborted, this, &PackInstallTask::abort);
|
||||
QObject::connect(netJob, &NetJob::progress, this, &PackInstallTask::setProgress);
|
||||
|
||||
m_net_job = netJob;
|
||||
|
||||
setAbortable(true);
|
||||
netJob->start();
|
||||
}
|
||||
|
||||
@ -130,6 +133,7 @@ void PackInstallTask::onManifestDownloadSucceeded()
|
||||
void PackInstallTask::resolveMods()
|
||||
{
|
||||
setStatus(tr("Resolving mods..."));
|
||||
setAbortable(false);
|
||||
setProgress(0, 100);
|
||||
|
||||
m_file_id_map.clear();
|
||||
@ -162,15 +166,16 @@ void PackInstallTask::resolveMods()
|
||||
|
||||
connect(m_mod_id_resolver_task.get(), &Flame::FileResolvingTask::succeeded, this, &PackInstallTask::onResolveModsSucceeded);
|
||||
connect(m_mod_id_resolver_task.get(), &Flame::FileResolvingTask::failed, this, &PackInstallTask::onResolveModsFailed);
|
||||
connect(m_mod_id_resolver_task.get(), &Flame::FileResolvingTask::aborted, this, &PackInstallTask::abort);
|
||||
connect(m_mod_id_resolver_task.get(), &Flame::FileResolvingTask::progress, this, &PackInstallTask::setProgress);
|
||||
|
||||
setAbortable(true);
|
||||
|
||||
m_mod_id_resolver_task->start();
|
||||
}
|
||||
|
||||
void PackInstallTask::onResolveModsSucceeded()
|
||||
{
|
||||
m_abortable = false;
|
||||
|
||||
QString text;
|
||||
QList<QUrl> urls;
|
||||
auto anyBlocked = false;
|
||||
@ -209,94 +214,23 @@ void PackInstallTask::onResolveModsSucceeded()
|
||||
urls);
|
||||
|
||||
if (message_dialog->exec() == QDialog::Accepted)
|
||||
downloadPack();
|
||||
createInstance();
|
||||
else
|
||||
abort();
|
||||
} else {
|
||||
downloadPack();
|
||||
createInstance();
|
||||
}
|
||||
}
|
||||
|
||||
void PackInstallTask::downloadPack()
|
||||
void PackInstallTask::createInstance()
|
||||
{
|
||||
setStatus(tr("Downloading mods..."));
|
||||
setAbortable(false);
|
||||
|
||||
auto* jobPtr = new NetJob(tr("Mod download"), APPLICATION->network());
|
||||
for (auto const& file : m_version.files) {
|
||||
if (file.serverOnly || file.url.isEmpty())
|
||||
continue;
|
||||
|
||||
QFileInfo file_info(file.name);
|
||||
auto cacheName = file_info.completeBaseName() + "-" + file.sha1 + "." + file_info.suffix();
|
||||
|
||||
auto entry = APPLICATION->metacache()->resolveEntry("ModpacksCHPacks", cacheName);
|
||||
entry->setStale(true);
|
||||
|
||||
auto relpath = FS::PathCombine("minecraft", file.path, file.name);
|
||||
auto path = FS::PathCombine(m_stagingPath, relpath);
|
||||
|
||||
if (m_files_to_copy.contains(path)) {
|
||||
qWarning() << "Ignoring" << file.url << "as a file of that path is already downloading.";
|
||||
continue;
|
||||
}
|
||||
|
||||
qDebug() << "Will download" << file.url << "to" << path;
|
||||
m_files_to_copy[path] = entry->getFullPath();
|
||||
|
||||
auto dl = Net::Download::makeCached(file.url, entry);
|
||||
if (!file.sha1.isEmpty()) {
|
||||
auto rawSha1 = QByteArray::fromHex(file.sha1.toLatin1());
|
||||
dl->addValidator(new Net::ChecksumValidator(QCryptographicHash::Sha1, rawSha1));
|
||||
}
|
||||
|
||||
jobPtr->addNetAction(dl);
|
||||
}
|
||||
|
||||
connect(jobPtr, &NetJob::succeeded, this, &PackInstallTask::onModDownloadSucceeded);
|
||||
connect(jobPtr, &NetJob::failed, this, &PackInstallTask::onModDownloadFailed);
|
||||
connect(jobPtr, &NetJob::progress, this, &PackInstallTask::setProgress);
|
||||
|
||||
m_net_job = jobPtr;
|
||||
jobPtr->start();
|
||||
|
||||
m_abortable = true;
|
||||
}
|
||||
|
||||
void PackInstallTask::onModDownloadSucceeded()
|
||||
{
|
||||
m_net_job.reset();
|
||||
install();
|
||||
}
|
||||
|
||||
void PackInstallTask::install()
|
||||
{
|
||||
setStatus(tr("Copying modpack files..."));
|
||||
setProgress(0, m_files_to_copy.size());
|
||||
QCoreApplication::processEvents();
|
||||
|
||||
m_abortable = false;
|
||||
|
||||
int i = 0;
|
||||
for (auto iter = m_files_to_copy.constBegin(); iter != m_files_to_copy.constEnd(); iter++) {
|
||||
auto& to = iter.key();
|
||||
auto& from = iter.value();
|
||||
FS::copy fileCopyOperation(from, to);
|
||||
if (!fileCopyOperation()) {
|
||||
qWarning() << "Failed to copy" << from << "to" << to;
|
||||
emitFailed(tr("Failed to copy files"));
|
||||
return;
|
||||
}
|
||||
|
||||
setProgress(i++, m_files_to_copy.size());
|
||||
QCoreApplication::processEvents();
|
||||
}
|
||||
|
||||
setStatus(tr("Installing modpack..."));
|
||||
setStatus(tr("Creating the instance..."));
|
||||
QCoreApplication::processEvents();
|
||||
|
||||
auto instanceConfigPath = FS::PathCombine(m_stagingPath, "instance.cfg");
|
||||
auto instanceSettings = std::make_shared<INISettingsObject>(instanceConfigPath);
|
||||
instanceSettings->suspendSave();
|
||||
|
||||
MinecraftInstance instance(m_globalSettings, instanceSettings, m_stagingPath);
|
||||
auto components = instance.getPackProfile();
|
||||
@ -337,8 +271,55 @@ void PackInstallTask::install()
|
||||
instance.setName(name());
|
||||
instance.setIconKey(m_instIcon);
|
||||
instance.setManagedPack("modpacksch", QString::number(m_pack.id), m_pack.name, QString::number(m_version.id), m_version.name);
|
||||
instanceSettings->resumeSave();
|
||||
|
||||
instance.saveNow();
|
||||
|
||||
onCreateInstanceSucceeded();
|
||||
}
|
||||
|
||||
void PackInstallTask::onCreateInstanceSucceeded()
|
||||
{
|
||||
downloadPack();
|
||||
}
|
||||
|
||||
void PackInstallTask::downloadPack()
|
||||
{
|
||||
setStatus(tr("Downloading mods..."));
|
||||
setAbortable(false);
|
||||
|
||||
auto* jobPtr = new NetJob(tr("Mod download"), APPLICATION->network());
|
||||
for (auto const& file : m_version.files) {
|
||||
if (file.serverOnly || file.url.isEmpty())
|
||||
continue;
|
||||
|
||||
auto path = FS::PathCombine(m_stagingPath, ".minecraft", file.path, file.name);
|
||||
qDebug() << "Will try to download" << file.url << "to" << path;
|
||||
|
||||
QFileInfo file_info(file.name);
|
||||
|
||||
auto dl = Net::Download::makeFile(file.url, path);
|
||||
if (!file.sha1.isEmpty()) {
|
||||
auto rawSha1 = QByteArray::fromHex(file.sha1.toLatin1());
|
||||
dl->addValidator(new Net::ChecksumValidator(QCryptographicHash::Sha1, rawSha1));
|
||||
}
|
||||
|
||||
jobPtr->addNetAction(dl);
|
||||
}
|
||||
|
||||
connect(jobPtr, &NetJob::succeeded, this, &PackInstallTask::onModDownloadSucceeded);
|
||||
connect(jobPtr, &NetJob::failed, this, &PackInstallTask::onModDownloadFailed);
|
||||
connect(jobPtr, &NetJob::aborted, this, &PackInstallTask::abort);
|
||||
connect(jobPtr, &NetJob::progress, this, &PackInstallTask::setProgress);
|
||||
|
||||
m_net_job = jobPtr;
|
||||
|
||||
setAbortable(true);
|
||||
jobPtr->start();
|
||||
}
|
||||
|
||||
void PackInstallTask::onModDownloadSucceeded()
|
||||
{
|
||||
m_net_job.reset();
|
||||
emitSucceeded();
|
||||
}
|
||||
|
||||
@ -352,6 +333,10 @@ void PackInstallTask::onResolveModsFailed(QString reason)
|
||||
m_net_job.reset();
|
||||
emitFailed(reason);
|
||||
}
|
||||
void PackInstallTask::onCreateInstanceFailed(QString reason)
|
||||
{
|
||||
emitFailed(reason);
|
||||
}
|
||||
void PackInstallTask::onModDownloadFailed(QString reason)
|
||||
{
|
||||
m_net_job.reset();
|
||||
|
@ -56,7 +56,6 @@ public:
|
||||
explicit PackInstallTask(Modpack pack, QString version, QWidget* parent = nullptr);
|
||||
~PackInstallTask() override = default;
|
||||
|
||||
bool canAbort() const override { return m_abortable; }
|
||||
bool abort() override;
|
||||
|
||||
protected:
|
||||
@ -65,20 +64,20 @@ protected:
|
||||
private slots:
|
||||
void onManifestDownloadSucceeded();
|
||||
void onResolveModsSucceeded();
|
||||
void onCreateInstanceSucceeded();
|
||||
void onModDownloadSucceeded();
|
||||
|
||||
void onManifestDownloadFailed(QString reason);
|
||||
void onResolveModsFailed(QString reason);
|
||||
void onCreateInstanceFailed(QString reason);
|
||||
void onModDownloadFailed(QString reason);
|
||||
|
||||
private:
|
||||
void resolveMods();
|
||||
void createInstance();
|
||||
void downloadPack();
|
||||
void install();
|
||||
|
||||
private:
|
||||
bool m_abortable = true;
|
||||
|
||||
NetJob::Ptr m_net_job = nullptr;
|
||||
shared_qobject_ptr<Flame::FileResolvingTask> m_mod_id_resolver_task = nullptr;
|
||||
|
||||
|
@ -34,5 +34,9 @@
|
||||
<file>scalable/status-yellow.svg</file>
|
||||
<file>scalable/viewfolder.svg</file>
|
||||
<file>scalable/worlds.svg</file>
|
||||
<file>scalable/delete.svg</file>
|
||||
<file>scalable/tag.svg</file>
|
||||
<file>scalable/export.svg</file>
|
||||
<file>scalable/rename.svg</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
|
49
launcher/resources/OSX/scalable/delete.svg
Normal file
@ -0,0 +1,49 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Generator: Adobe Illustrator 18.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Calque_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
viewBox="0 0 32 32"
|
||||
enable-background="new 0 0 32 32"
|
||||
xml:space="preserve"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><defs
|
||||
id="defs13" />
|
||||
<rect
|
||||
fill-rule="evenodd"
|
||||
clip-rule="evenodd"
|
||||
fill="none"
|
||||
width="32"
|
||||
height="32"
|
||||
id="rect2" />
|
||||
<path
|
||||
fill="#B6B5B6"
|
||||
d="M30,28H2c-1.1,0-2-0.9-2-2V8c0-1.1,0.9-2,2-2h28c1.1,0,2,0.9,2,2v18C32,27.1,31.1,28,30,28z"
|
||||
id="path4" />
|
||||
<path
|
||||
fill="#FBFBFB"
|
||||
d="M30,27H2c-1.1,0-2-0.9-2-2V8c0-1.1,0.9-2,2-2h28c1.1,0,2,0.9,2,2v17C32,26.1,31.1,27,30,27z"
|
||||
id="path6" />
|
||||
|
||||
<g
|
||||
id="g19002"
|
||||
transform="matrix(0.61347029,0,0,0.61364877,6.1844752,6.6215364)"
|
||||
style="stroke-width:1.62983"><g
|
||||
id="g9250"
|
||||
transform="matrix(0.97069724,0,0,1.1763237,-0.10468178,-4.8181425)"
|
||||
style="stroke-width:1.52524"><path
|
||||
style="color:#000000;fill:#585858;fill-opacity:1;stroke-width:1.52524;stroke-linecap:round;-inkscape-stroke:none"
|
||||
d="m 6.7324219,10.556641 v 0.820312 15.230469 c 0,1.649975 1.3558838,3.003906 3.0058594,3.003906 H 23.443359 c 1.649976,0 3.00586,-1.353931 3.00586,-3.003906 V 10.556641 Z m 1.6386719,1.638672 H 24.810547 v 14.412109 c 0,0.764319 -0.602868,1.365234 -1.367188,1.365234 H 9.7382813 c -0.7643194,0 -1.3671876,-0.600915 -1.3671875,-1.365234 z"
|
||||
id="rect2395" /><path
|
||||
id="path8117"
|
||||
style="fill:none;stroke:#585858;stroke-width:2.28785;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:normal"
|
||||
d="m 13.353409,15.259086 v 9.466797 z m 6.474609,0.183594 v 9.466797 z" /></g><path
|
||||
style="fill:none;fill-opacity:1;stroke:#585858;stroke-width:2.44476;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 3.0114815,4.6293617 H 28.988519"
|
||||
id="path9281" /><path
|
||||
style="fill:none;stroke:#585858;stroke-width:2.44476;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 10.431403,3.4038387 H 21.568596"
|
||||
id="path9283" /></g></svg>
|
After Width: | Height: | Size: 2.2 KiB |
65
launcher/resources/OSX/scalable/export.svg
Normal file
@ -0,0 +1,65 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Generator: Adobe Illustrator 18.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Calque_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
viewBox="0 0 32 32"
|
||||
enable-background="new 0 0 32 32"
|
||||
xml:space="preserve"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><defs
|
||||
id="defs7209" />
|
||||
<rect
|
||||
fill-rule="evenodd"
|
||||
clip-rule="evenodd"
|
||||
fill="none"
|
||||
width="32"
|
||||
height="32"
|
||||
id="rect7195" />
|
||||
<path
|
||||
fill="#B6B5B6"
|
||||
d="M30,28.4H2c-1.1,0-2-0.9-2-2v-18c0-1.1,0.9-2,2-2h28c1.1,0,2,0.9,2,2v18C32,27.5,31.1,28.4,30,28.4z"
|
||||
id="path7197" />
|
||||
<path
|
||||
fill="#FBFBFB"
|
||||
d="M30,27.4H2c-1.1,0-2-0.9-2-2v-17c0-1.1,0.9-2,2-2h28c1.1,0,2,0.9,2,2v17C32,26.5,31.1,27.4,30,27.4z"
|
||||
id="path7199" />
|
||||
<g
|
||||
id="_x36__6_">
|
||||
<g
|
||||
id="g7203">
|
||||
<path
|
||||
fill="#585858"
|
||||
d="M22,11.4h-7c0-1.1-0.9-2-2-2h-3c-1.1,0-2,0.9-2,2v12c0,1.1,0.9,2,2,2h12c1.1,0,2-0.9,2-2v-10 C24,12.3,23.1,11.4,22,11.4z M23,23.4c0,0.6-0.4,1-1,1H10c-0.6,0-1-0.4-1-1v-8h14V23.4z M23,14.4H9v-3c0-0.6,0.4-1,1-1h3 c0.6,0,1,0.4,1,1v1h8c0.6,0,1,0.4,1,1V14.4z"
|
||||
id="path7201" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g7346"
|
||||
transform="matrix(0.60195183,0,0,0.60195183,6.3687707,6.8734131)"
|
||||
style="fill:#585858;fill-opacity:1;stroke-width:1.66127"><g
|
||||
id="_x36__4_"
|
||||
style="fill:#585858;fill-opacity:1;stroke-width:1.66127">
|
||||
<g
|
||||
id="g849"
|
||||
style="fill:#585858;fill-opacity:1;stroke-width:1.66127">
|
||||
|
||||
</g>
|
||||
</g><g
|
||||
id="g1052"
|
||||
transform="rotate(-90,15.237227,22.237227)"
|
||||
style="fill:#585858;fill-opacity:1;stroke-width:1.66127"><g
|
||||
id="_x37__7_"
|
||||
style="fill:#585858;fill-opacity:1;stroke-width:1.66127">
|
||||
<g
|
||||
id="g1038"
|
||||
style="fill:#585858;fill-opacity:1;stroke-width:1.66127">
|
||||
<path
|
||||
d="m 21.7,25.4 c -0.4,-0.4 -1,-0.4 -1.4,0 L 17,28.7 V 15 c 0,-0.6 -0.4,-1 -1,-1 -0.6,0 -1,0.4 -1,1 v 13.6 l -3.3,-3.2 c -0.4,-0.4 -1,-0.4 -1.4,0 -0.4,0.4 -0.4,1 0,1.4 l 4.9,4.9 c 0.2,0.2 0.5,0.3 0.8,0.3 0.3,0 0.6,-0.1 0.8,-0.3 l 4.9,-4.9 c 0.4,-0.4 0.4,-1 0,-1.4 z"
|
||||
id="path1036"
|
||||
style="fill:#585858;fill-opacity:1;stroke-width:2.62304" />
|
||||
</g>
|
||||
</g></g></g></svg>
|
After Width: | Height: | Size: 2.1 KiB |
@ -1,21 +1,53 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg width="64" height="64" version="1.1" viewBox="0 0 16.933 16.933" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<defs>
|
||||
<linearGradient id="linearGradient84726" x1="4.4979" x2="12.435" y1="3.8011" y2="9.5681" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#88b858" offset="0"/>
|
||||
<stop stop-color="#72b147" offset=".5"/>
|
||||
<stop stop-color="#5a9a30" offset="1"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<g>
|
||||
<path d="m3.561 16.016s0-3.5642 4.9056-3.5642c4.9069 0 4.9056 3.5642 4.9056 3.5642z" fill="#765338"/>
|
||||
<path d="m8.4667 12.452-4.9056 3.5642-3.0319-9.3311z" fill="#b7835a"/>
|
||||
<path d="m8.4667 12.452 7.9375-5.7669-3.0319 9.3311z" fill="#5b422d"/>
|
||||
<path d="m8.8308 12.716-0.36417 0.26458-0.36417-0.26458c0-0.26458 0.36417-0.26458 0.36417-0.26458s0.36417 0 0.36417 0.26458z" fill="#72b147"/>
|
||||
<path d="m8.4667 12.452s-2e-7 -5.7669 7.9375-5.7669l-0.22507 0.69269-0.91853 1.1965-0.91853 0.13819-0.91853 1.1965-0.91853 0.13819-0.91853 1.1965-0.91853 0.13819-0.91853 1.1965-0.91853 0.13819z" fill="#5a9a30"/>
|
||||
<path d="m8.1025 12.716-0.91853-0.13819-0.91853-1.1965-0.91853-0.13819-0.91853-1.1965-0.91853-0.13819-0.91853-1.1965-0.91853-0.13819-0.91853-1.1965-0.22507-0.69269c7.9375 1e-7 7.9375 5.7669 7.9375 5.7669z" fill="#88b858"/>
|
||||
<path d="m0.52917 6.6846 7.9375 5.7669 7.9375-5.7669-7.9375-5.7669z" fill="url(#linearGradient84726)"/>
|
||||
<svg width="48" height="48" version="1.1" viewBox="0 0 12.7 12.7" xmlns="http://www.w3.org/2000/svg" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
|
||||
<title>Prism Launcher Logo</title>
|
||||
<g stroke-width=".26458">
|
||||
<path d="m6.35 6.35" fill="#99cd61"/>
|
||||
<path d="m6.35 0.52917-2.5208 4.3656 2.5208 1.4552 2.5203-1.4552 0.10955-3.0996c-1.1511-0.66459-2.3388-1.2661-2.6298-1.2661z" fill="#df6277"/>
|
||||
<path d="m8.9798 1.7952-2.6298 4.5548 2.5203 1.4552 2.5208-4.3656c-0.14552-0.25205-1.2601-0.97975-2.4112-1.6443z" fill="#fb9168"/>
|
||||
<path d="m11.391 3.4396-5.041 2.9104 2.5203 1.4552 2.7389-1.4552c0-1.3292-0.072554-2.6584-0.21808-2.9104z" fill="#f3db6c"/>
|
||||
<path d="m6.35 6.35v2.9104h5.041c0.14552-0.25205 0.21807-1.5812 0.21808-2.9104h-5.2591z" fill="#7ab392"/>
|
||||
<path d="m6.35 6.35v2.9104l2.6298 1.6443c1.1511-0.66459 2.2657-1.3923 2.4112-1.6443l-5.041-2.9104z" fill="#4b7cbc"/>
|
||||
<path d="m6.35 6.35-2.5208 1.4552 2.5208 4.3656c0.29104 0 1.4787-0.60148 2.6298-1.2661l-2.6298-4.5548z" fill="#6f488c"/>
|
||||
<path d="m3.8292 4.8948-2.5203 4.3656c0.29104 0.5041 4.459 2.9104 5.041 2.9104v-5.8208l-2.5208-1.4552z" fill="#4d3f33"/>
|
||||
<path d="m1.309 3.4396c-0.29104 0.5041-0.29104 5.3167 0 5.8208l5.041-2.9104v-2.9104h-5.041z" fill="#7a573b"/>
|
||||
<path d="m6.35 0.52917c-0.58208-2e-8 -4.75 2.4063-5.041 2.9104l5.041 2.9104v-5.8208z" fill="#99cd61"/>
|
||||
</g>
|
||||
<path d="m0.75424 7.3773-0.22507-0.69269 7.9375 5.7669 7.9375-5.7669-0.22507 0.69269-7.7124 5.6034z" fill-opacity="0"/>
|
||||
<g transform="matrix(.88 0 0 .88 -10.906 -1.2421)">
|
||||
<g transform="translate(13.26 2.2776)">
|
||||
<path transform="matrix(.96975 0 0 .96975 .1921 .1921)" d="m6.3498 2.9393c-0.34105 0-2.7827 1.4099-2.9532 1.7052l2.9532 5.1157 2.9538-5.1157c-0.17052-0.29535-2.6127-1.7052-2.9538-1.7052z" fill="#fff" stroke-width=".26458"/>
|
||||
</g>
|
||||
<path d="m16.746 6.9737 2.8639 4.9609c0.33073 0 2.6991-1.3672 2.8644-1.6536 0.16536-0.28642 0.16536-3.0209 0-3.3073l-2.8644 1.6536z" fill="#dfdfdf" stroke-width=".26458"/>
|
||||
</g>
|
||||
<path d="m3.8299 4.8948c-0.14551 0.25205-0.14553 2.6584 0 2.9104 0.14553 0.25204 2.2292 1.4552 2.5203 1.4552v-2.9104z" fill="#d6d2d2" stroke-width=".26458"/>
|
||||
<metadata>
|
||||
<rdf:RDF>
|
||||
<cc:Work rdf:about="">
|
||||
<dc:title>Prism Launcher Logo</dc:title>
|
||||
<dc:date>19/10/2022</dc:date>
|
||||
<dc:creator>
|
||||
<cc:Agent>
|
||||
<dc:title>Prism Launcher</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:creator>
|
||||
<dc:contributor>
|
||||
<cc:Agent>
|
||||
<dc:title>AutiOne, Boba, ely, Fulmine, gon sawa, Pankakes, tobimori, Zeke</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:contributor>
|
||||
<dc:source>https://github.com/PrismLauncher/PrismLauncher</dc:source>
|
||||
<dc:rights>
|
||||
<cc:Agent>
|
||||
<dc:title>CC BY-SA 4.0</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:rights>
|
||||
<dc:publisher>
|
||||
<cc:Agent>
|
||||
<dc:title>Prism Launcher</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:publisher>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 2.9 KiB |
27
launcher/resources/OSX/scalable/rename.svg
Normal file
@ -0,0 +1,27 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Calque_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
viewBox="0 0 24 24"
|
||||
enable-background="new 0 0 24 24"
|
||||
xml:space="preserve"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><defs
|
||||
id="defs11868" />
|
||||
<rect
|
||||
fill="none"
|
||||
width="24"
|
||||
height="24"
|
||||
id="rect11854" />
|
||||
<g
|
||||
id="g15058"
|
||||
transform="matrix(1.2018036,0,0,1.2018036,9.1890033,-5.9659463)"
|
||||
style="stroke-width:0.832083"><path
|
||||
style="fill:#cccccc;fill-opacity:1;stroke:#585858;stroke-width:0.832083;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
|
||||
d="m -4.635309,18.83508 -1.6867847,4.775149 4.7751492,-1.686784 z"
|
||||
id="path14640" /><path
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#585858;stroke-width:0.832083;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
|
||||
d="M 7.6468491,6.2880897 -3.1410372,17.075975 0.21216023,20.429172 11.000046,9.6412872 Z"
|
||||
id="rect291" /></g></svg>
|
After Width: | Height: | Size: 1.1 KiB |
35
launcher/resources/OSX/scalable/tag.svg
Normal file
@ -0,0 +1,35 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Generator: Adobe Illustrator 18.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Calque_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
viewBox="0 0 32 32"
|
||||
enable-background="new 0 0 32 32"
|
||||
xml:space="preserve"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><defs
|
||||
id="defs13" />
|
||||
<rect
|
||||
fill-rule="evenodd"
|
||||
clip-rule="evenodd"
|
||||
fill="none"
|
||||
width="32"
|
||||
height="32"
|
||||
id="rect2" />
|
||||
<path
|
||||
fill="#B6B5B6"
|
||||
d="M30,28H2c-1.1,0-2-0.9-2-2V8c0-1.1,0.9-2,2-2h28c1.1,0,2,0.9,2,2v18C32,27.1,31.1,28,30,28z"
|
||||
id="path4" />
|
||||
<path
|
||||
fill="#FBFBFB"
|
||||
d="M30,27H2c-1.1,0-2-0.9-2-2V8c0-1.1,0.9-2,2-2h28c1.1,0,2,0.9,2,2v17C32,26.1,31.1,27,30,27z"
|
||||
id="path6" />
|
||||
|
||||
<path
|
||||
style="fill:none;fill-opacity:1;stroke:#585858;stroke-width:1;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 15.90395,8.3243241 -8.037878,0.04174 -0.04175,8.0378789 8.752925,8.079624 7.406322,-7.406322 z m -3.366509,2.6932089 c 1.114988,0 2.019906,0.904918 2.019906,2.019906 0,1.114988 -0.904918,2.019906 -2.019906,2.019906 -1.114988,0 -2.019906,-0.904918 -2.019906,-2.019906 0,-1.114988 0.904918,-2.019906 2.019906,-2.019906"
|
||||
class="ColorScheme-Text"
|
||||
id="path4838" /></svg>
|
After Width: | Height: | Size: 1.2 KiB |
@ -42,5 +42,9 @@
|
||||
<file>scalable/status-yellow.svg</file>
|
||||
<file>scalable/viewfolder.svg</file>
|
||||
<file>scalable/worlds.svg</file>
|
||||
<file>scalable/delete.svg</file>
|
||||
<file>scalable/tag.svg</file>
|
||||
<file>scalable/export.svg</file>
|
||||
<file>scalable/rename.svg</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
|
1
launcher/resources/flat/scalable/delete.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg fill="#757575" xmlns="http://www.w3.org/2000/svg" height="48" width="48"><path d="M13.05 42q-1.2 0-2.1-.9-.9-.9-.9-2.1V10.5H8v-3h9.4V6h13.2v1.5H40v3h-2.05V39q0 1.2-.9 2.1-.9.9-2.1.9Zm5.3-7.3h3V14.75h-3Zm8.3 0h3V14.75h-3Z"/></svg>
|
After Width: | Height: | Size: 235 B |
1
launcher/resources/flat/scalable/export.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg fill="#757575" xmlns="http://www.w3.org/2000/svg" height="48" width="48"><path d="M24.65 33.35 32 26l-7.35-7.35-2.1 2.1 3.75 3.75H16v3h10.3l-3.75 3.75ZM7.05 40q-1.2 0-2.1-.925-.9-.925-.9-2.075V11q0-1.15.9-2.075Q5.85 8 7.05 8h14l3 3h17q1.15 0 2.075.925.925.925.925 2.075v23q0 1.15-.925 2.075Q42.2 40 41.05 40Z"/></svg>
|
After Width: | Height: | Size: 323 B |
@ -1,21 +1,53 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg width="64" height="64" version="1.1" viewBox="0 0 16.933 16.933" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<defs>
|
||||
<linearGradient id="linearGradient84726" x1="4.4979" x2="12.435" y1="3.8011" y2="9.5681" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#88b858" offset="0"/>
|
||||
<stop stop-color="#72b147" offset=".5"/>
|
||||
<stop stop-color="#5a9a30" offset="1"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<g>
|
||||
<path d="m3.561 16.016s0-3.5642 4.9056-3.5642c4.9069 0 4.9056 3.5642 4.9056 3.5642z" fill="#765338"/>
|
||||
<path d="m8.4667 12.452-4.9056 3.5642-3.0319-9.3311z" fill="#b7835a"/>
|
||||
<path d="m8.4667 12.452 7.9375-5.7669-3.0319 9.3311z" fill="#5b422d"/>
|
||||
<path d="m8.8308 12.716-0.36417 0.26458-0.36417-0.26458c0-0.26458 0.36417-0.26458 0.36417-0.26458s0.36417 0 0.36417 0.26458z" fill="#72b147"/>
|
||||
<path d="m8.4667 12.452s-2e-7 -5.7669 7.9375-5.7669l-0.22507 0.69269-0.91853 1.1965-0.91853 0.13819-0.91853 1.1965-0.91853 0.13819-0.91853 1.1965-0.91853 0.13819-0.91853 1.1965-0.91853 0.13819z" fill="#5a9a30"/>
|
||||
<path d="m8.1025 12.716-0.91853-0.13819-0.91853-1.1965-0.91853-0.13819-0.91853-1.1965-0.91853-0.13819-0.91853-1.1965-0.91853-0.13819-0.91853-1.1965-0.22507-0.69269c7.9375 1e-7 7.9375 5.7669 7.9375 5.7669z" fill="#88b858"/>
|
||||
<path d="m0.52917 6.6846 7.9375 5.7669 7.9375-5.7669-7.9375-5.7669z" fill="url(#linearGradient84726)"/>
|
||||
<svg width="48" height="48" version="1.1" viewBox="0 0 12.7 12.7" xmlns="http://www.w3.org/2000/svg" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
|
||||
<title>Prism Launcher Logo</title>
|
||||
<g stroke-width=".26458">
|
||||
<path d="m6.35 6.35" fill="#99cd61"/>
|
||||
<path d="m6.35 0.52917-2.5208 4.3656 2.5208 1.4552 2.5203-1.4552 0.10955-3.0996c-1.1511-0.66459-2.3388-1.2661-2.6298-1.2661z" fill="#df6277"/>
|
||||
<path d="m8.9798 1.7952-2.6298 4.5548 2.5203 1.4552 2.5208-4.3656c-0.14552-0.25205-1.2601-0.97975-2.4112-1.6443z" fill="#fb9168"/>
|
||||
<path d="m11.391 3.4396-5.041 2.9104 2.5203 1.4552 2.7389-1.4552c0-1.3292-0.072554-2.6584-0.21808-2.9104z" fill="#f3db6c"/>
|
||||
<path d="m6.35 6.35v2.9104h5.041c0.14552-0.25205 0.21807-1.5812 0.21808-2.9104h-5.2591z" fill="#7ab392"/>
|
||||
<path d="m6.35 6.35v2.9104l2.6298 1.6443c1.1511-0.66459 2.2657-1.3923 2.4112-1.6443l-5.041-2.9104z" fill="#4b7cbc"/>
|
||||
<path d="m6.35 6.35-2.5208 1.4552 2.5208 4.3656c0.29104 0 1.4787-0.60148 2.6298-1.2661l-2.6298-4.5548z" fill="#6f488c"/>
|
||||
<path d="m3.8292 4.8948-2.5203 4.3656c0.29104 0.5041 4.459 2.9104 5.041 2.9104v-5.8208l-2.5208-1.4552z" fill="#4d3f33"/>
|
||||
<path d="m1.309 3.4396c-0.29104 0.5041-0.29104 5.3167 0 5.8208l5.041-2.9104v-2.9104h-5.041z" fill="#7a573b"/>
|
||||
<path d="m6.35 0.52917c-0.58208-2e-8 -4.75 2.4063-5.041 2.9104l5.041 2.9104v-5.8208z" fill="#99cd61"/>
|
||||
</g>
|
||||
<path d="m0.75424 7.3773-0.22507-0.69269 7.9375 5.7669 7.9375-5.7669-0.22507 0.69269-7.7124 5.6034z" fill-opacity="0"/>
|
||||
<g transform="matrix(.88 0 0 .88 -10.906 -1.2421)">
|
||||
<g transform="translate(13.26 2.2776)">
|
||||
<path transform="matrix(.96975 0 0 .96975 .1921 .1921)" d="m6.3498 2.9393c-0.34105 0-2.7827 1.4099-2.9532 1.7052l2.9532 5.1157 2.9538-5.1157c-0.17052-0.29535-2.6127-1.7052-2.9538-1.7052z" fill="#fff" stroke-width=".26458"/>
|
||||
</g>
|
||||
<path d="m16.746 6.9737 2.8639 4.9609c0.33073 0 2.6991-1.3672 2.8644-1.6536 0.16536-0.28642 0.16536-3.0209 0-3.3073l-2.8644 1.6536z" fill="#dfdfdf" stroke-width=".26458"/>
|
||||
</g>
|
||||
<path d="m3.8299 4.8948c-0.14551 0.25205-0.14553 2.6584 0 2.9104 0.14553 0.25204 2.2292 1.4552 2.5203 1.4552v-2.9104z" fill="#d6d2d2" stroke-width=".26458"/>
|
||||
<metadata>
|
||||
<rdf:RDF>
|
||||
<cc:Work rdf:about="">
|
||||
<dc:title>Prism Launcher Logo</dc:title>
|
||||
<dc:date>19/10/2022</dc:date>
|
||||
<dc:creator>
|
||||
<cc:Agent>
|
||||
<dc:title>Prism Launcher</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:creator>
|
||||
<dc:contributor>
|
||||
<cc:Agent>
|
||||
<dc:title>AutiOne, Boba, ely, Fulmine, gon sawa, Pankakes, tobimori, Zeke</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:contributor>
|
||||
<dc:source>https://github.com/PrismLauncher/PrismLauncher</dc:source>
|
||||
<dc:rights>
|
||||
<cc:Agent>
|
||||
<dc:title>CC BY-SA 4.0</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:rights>
|
||||
<dc:publisher>
|
||||
<cc:Agent>
|
||||
<dc:title>Prism Launcher</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:publisher>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 2.9 KiB |
1
launcher/resources/flat/scalable/rename.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg fill="#757575" xmlns="http://www.w3.org/2000/svg" height="48" width="48"><path d="m39.7 14.7-6.4-6.4 2.1-2.1q.85-.85 2.125-.825 1.275.025 2.125.875L41.8 8.4q.85.85.85 2.1t-.85 2.1Zm-2.1 2.1L12.4 42H6v-6.4l25.2-25.2Z"/></svg>
|
After Width: | Height: | Size: 230 B |
1
launcher/resources/flat/scalable/tag.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg fill="#757575" xmlns="http://www.w3.org/2000/svg" height="48" width="48"><path d="M27.95 43.15q-.9.9-2.175.9t-2.175-.9L4.85 24.4q-.5-.5-.675-1.05Q4 22.8 4 22.2V7q0-1.3.85-2.15Q5.7 4 7 4h15.2q.6 0 1.2.175t1.1.675L43.15 23.5q.95.95.95 2.225 0 1.275-.95 2.225ZM12.25 14.8q1.05 0 1.825-.775.775-.775.775-1.825 0-1.05-.775-1.825Q13.3 9.6 12.25 9.6q-1.05 0-1.825.775-.775.775-.775 1.825 0 1.05.775 1.825.775.775 1.825.775Z"/></svg>
|
After Width: | Height: | Size: 431 B |
@ -34,5 +34,9 @@
|
||||
<file>scalable/status-yellow.svg</file>
|
||||
<file>scalable/viewfolder.svg</file>
|
||||
<file>scalable/worlds.svg</file>
|
||||
<file>scalable/delete.svg</file>
|
||||
<file>scalable/tag.svg</file>
|
||||
<file>scalable/export.svg</file>
|
||||
<file>scalable/rename.svg</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
|
31
launcher/resources/iOS/scalable/delete.svg
Normal file
@ -0,0 +1,31 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Calque_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
viewBox="0 0 32 32"
|
||||
enable-background="new 0 0 32 32"
|
||||
xml:space="preserve"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><defs
|
||||
id="defs855" />
|
||||
<g
|
||||
id="g19002"
|
||||
transform="matrix(1.142151,0,0,1.1420676,-2.2744167,-2.2900782)"
|
||||
style="stroke-width:0.875573"><g
|
||||
id="g9250"
|
||||
transform="matrix(0.97069724,0,0,1.1763237,-0.10468178,-4.8181425)"
|
||||
style="stroke-width:0.819383"><path
|
||||
style="color:#000000;fill:#3366cc;stroke-linecap:round;-inkscape-stroke:none"
|
||||
d="m 6.7324219,10.556641 v 0.820312 15.230469 c 0,1.649975 1.3558838,3.003906 3.0058594,3.003906 H 23.443359 c 1.649976,0 3.00586,-1.353931 3.00586,-3.003906 V 10.556641 Z m 1.6386719,1.638672 H 24.810547 v 14.412109 c 0,0.764319 -0.602868,1.365234 -1.367188,1.365234 H 9.7382813 c -0.7643194,0 -1.3671876,-0.600915 -1.3671875,-1.365234 z"
|
||||
id="rect2395" /><path
|
||||
id="path8117"
|
||||
style="fill:none;stroke:#3366cc;stroke-width:1.63877;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:normal"
|
||||
d="m 13.353409,15.259086 v 9.466797 z m 6.474609,0.183594 v 9.466797 z" /></g><path
|
||||
style="fill:none;fill-opacity:1;stroke:#3366cc;stroke-width:1.75115;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 3.0114815,4.6293617 H 28.988519"
|
||||
id="path9281" /><path
|
||||
style="fill:none;stroke:#3366cc;stroke-width:1.75115;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 10.431403,2.9656366 H 21.568596"
|
||||
id="path9283" /></g></svg>
|
After Width: | Height: | Size: 1.7 KiB |
34
launcher/resources/iOS/scalable/export.svg
Normal file
@ -0,0 +1,34 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Calque_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
viewBox="0 0 32 32"
|
||||
enable-background="new 0 0 32 32"
|
||||
xml:space="preserve"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><defs
|
||||
id="defs855" />
|
||||
<g
|
||||
id="_x36__4_">
|
||||
<g
|
||||
id="g849">
|
||||
<path
|
||||
fill="#3366CC"
|
||||
d="M28,4H14c0-2.2-1.8-4-4-4H4C1.8,0,0,1.8,0,4v24c0,2.2,1.8,4,4,4h24c2.2,0,4-1.8,4-4V8C32,5.8,30.2,4,28,4z M30,28c0,1.1-0.9,2-2,2H4c-1.1,0-2-0.9-2-2V12h28V28z M30,10H2V4c0-1.1,0.9-2,2-2h6c1.1,0,2,0.9,2,2v2h16c1.1,0,2,0.9,2,2V10z"
|
||||
id="path847" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g1052"
|
||||
transform="rotate(-90,15.237227,22.237227)"><g
|
||||
id="_x37__7_">
|
||||
<g
|
||||
id="g1038">
|
||||
<path
|
||||
fill="#3366cc"
|
||||
d="m 21.7,25.4 c -0.4,-0.4 -1,-0.4 -1.4,0 L 17,28.7 V 15 c 0,-0.6 -0.4,-1 -1,-1 -0.6,0 -1,0.4 -1,1 v 13.6 l -3.3,-3.2 c -0.4,-0.4 -1,-0.4 -1.4,0 -0.4,0.4 -0.4,1 0,1.4 l 4.9,4.9 c 0.2,0.2 0.5,0.3 0.8,0.3 0.3,0 0.6,-0.1 0.8,-0.3 l 4.9,-4.9 c 0.4,-0.4 0.4,-1 0,-1.4 z"
|
||||
id="path1036" />
|
||||
</g>
|
||||
</g></g></svg>
|
After Width: | Height: | Size: 1.1 KiB |
@ -1,21 +1,53 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg width="64" height="64" version="1.1" viewBox="0 0 16.933 16.933" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<defs>
|
||||
<linearGradient id="linearGradient84726" x1="4.4979" x2="12.435" y1="3.8011" y2="9.5681" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#88b858" offset="0"/>
|
||||
<stop stop-color="#72b147" offset=".5"/>
|
||||
<stop stop-color="#5a9a30" offset="1"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<g>
|
||||
<path d="m3.561 16.016s0-3.5642 4.9056-3.5642c4.9069 0 4.9056 3.5642 4.9056 3.5642z" fill="#765338"/>
|
||||
<path d="m8.4667 12.452-4.9056 3.5642-3.0319-9.3311z" fill="#b7835a"/>
|
||||
<path d="m8.4667 12.452 7.9375-5.7669-3.0319 9.3311z" fill="#5b422d"/>
|
||||
<path d="m8.8308 12.716-0.36417 0.26458-0.36417-0.26458c0-0.26458 0.36417-0.26458 0.36417-0.26458s0.36417 0 0.36417 0.26458z" fill="#72b147"/>
|
||||
<path d="m8.4667 12.452s-2e-7 -5.7669 7.9375-5.7669l-0.22507 0.69269-0.91853 1.1965-0.91853 0.13819-0.91853 1.1965-0.91853 0.13819-0.91853 1.1965-0.91853 0.13819-0.91853 1.1965-0.91853 0.13819z" fill="#5a9a30"/>
|
||||
<path d="m8.1025 12.716-0.91853-0.13819-0.91853-1.1965-0.91853-0.13819-0.91853-1.1965-0.91853-0.13819-0.91853-1.1965-0.91853-0.13819-0.91853-1.1965-0.22507-0.69269c7.9375 1e-7 7.9375 5.7669 7.9375 5.7669z" fill="#88b858"/>
|
||||
<path d="m0.52917 6.6846 7.9375 5.7669 7.9375-5.7669-7.9375-5.7669z" fill="url(#linearGradient84726)"/>
|
||||
<svg width="48" height="48" version="1.1" viewBox="0 0 12.7 12.7" xmlns="http://www.w3.org/2000/svg" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
|
||||
<title>Prism Launcher Logo</title>
|
||||
<g stroke-width=".26458">
|
||||
<path d="m6.35 6.35" fill="#99cd61"/>
|
||||
<path d="m6.35 0.52917-2.5208 4.3656 2.5208 1.4552 2.5203-1.4552 0.10955-3.0996c-1.1511-0.66459-2.3388-1.2661-2.6298-1.2661z" fill="#df6277"/>
|
||||
<path d="m8.9798 1.7952-2.6298 4.5548 2.5203 1.4552 2.5208-4.3656c-0.14552-0.25205-1.2601-0.97975-2.4112-1.6443z" fill="#fb9168"/>
|
||||
<path d="m11.391 3.4396-5.041 2.9104 2.5203 1.4552 2.7389-1.4552c0-1.3292-0.072554-2.6584-0.21808-2.9104z" fill="#f3db6c"/>
|
||||
<path d="m6.35 6.35v2.9104h5.041c0.14552-0.25205 0.21807-1.5812 0.21808-2.9104h-5.2591z" fill="#7ab392"/>
|
||||
<path d="m6.35 6.35v2.9104l2.6298 1.6443c1.1511-0.66459 2.2657-1.3923 2.4112-1.6443l-5.041-2.9104z" fill="#4b7cbc"/>
|
||||
<path d="m6.35 6.35-2.5208 1.4552 2.5208 4.3656c0.29104 0 1.4787-0.60148 2.6298-1.2661l-2.6298-4.5548z" fill="#6f488c"/>
|
||||
<path d="m3.8292 4.8948-2.5203 4.3656c0.29104 0.5041 4.459 2.9104 5.041 2.9104v-5.8208l-2.5208-1.4552z" fill="#4d3f33"/>
|
||||
<path d="m1.309 3.4396c-0.29104 0.5041-0.29104 5.3167 0 5.8208l5.041-2.9104v-2.9104h-5.041z" fill="#7a573b"/>
|
||||
<path d="m6.35 0.52917c-0.58208-2e-8 -4.75 2.4063-5.041 2.9104l5.041 2.9104v-5.8208z" fill="#99cd61"/>
|
||||
</g>
|
||||
<path d="m0.75424 7.3773-0.22507-0.69269 7.9375 5.7669 7.9375-5.7669-0.22507 0.69269-7.7124 5.6034z" fill-opacity="0"/>
|
||||
<g transform="matrix(.88 0 0 .88 -10.906 -1.2421)">
|
||||
<g transform="translate(13.26 2.2776)">
|
||||
<path transform="matrix(.96975 0 0 .96975 .1921 .1921)" d="m6.3498 2.9393c-0.34105 0-2.7827 1.4099-2.9532 1.7052l2.9532 5.1157 2.9538-5.1157c-0.17052-0.29535-2.6127-1.7052-2.9538-1.7052z" fill="#fff" stroke-width=".26458"/>
|
||||
</g>
|
||||
<path d="m16.746 6.9737 2.8639 4.9609c0.33073 0 2.6991-1.3672 2.8644-1.6536 0.16536-0.28642 0.16536-3.0209 0-3.3073l-2.8644 1.6536z" fill="#dfdfdf" stroke-width=".26458"/>
|
||||
</g>
|
||||
<path d="m3.8299 4.8948c-0.14551 0.25205-0.14553 2.6584 0 2.9104 0.14553 0.25204 2.2292 1.4552 2.5203 1.4552v-2.9104z" fill="#d6d2d2" stroke-width=".26458"/>
|
||||
<metadata>
|
||||
<rdf:RDF>
|
||||
<cc:Work rdf:about="">
|
||||
<dc:title>Prism Launcher Logo</dc:title>
|
||||
<dc:date>19/10/2022</dc:date>
|
||||
<dc:creator>
|
||||
<cc:Agent>
|
||||
<dc:title>Prism Launcher</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:creator>
|
||||
<dc:contributor>
|
||||
<cc:Agent>
|
||||
<dc:title>AutiOne, Boba, ely, Fulmine, gon sawa, Pankakes, tobimori, Zeke</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:contributor>
|
||||
<dc:source>https://github.com/PrismLauncher/PrismLauncher</dc:source>
|
||||
<dc:rights>
|
||||
<cc:Agent>
|
||||
<dc:title>CC BY-SA 4.0</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:rights>
|
||||
<dc:publisher>
|
||||
<cc:Agent>
|
||||
<dc:title>Prism Launcher</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:publisher>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 2.9 KiB |
16
launcher/resources/iOS/scalable/rename.svg
Normal file
@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Calque_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
viewBox="0 0 32 32"
|
||||
enable-background="new 0 0 32 32"
|
||||
xml:space="preserve"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><defs
|
||||
id="defs855" />
|
||||
<path
|
||||
id="rect291"
|
||||
style="fill:none;stroke:#3366cc;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;paint-order:fill markers stroke"
|
||||
d="M 25.192659,0.99995946 6.5091864,19.68343 12.316568,25.490811 31.00004,6.8073412 Z M 3.9212666,22.730012 0.99993513,31.000063 9.2699855,28.078732 Z" /></svg>
|
After Width: | Height: | Size: 617 B |
20
launcher/resources/iOS/scalable/tag.svg
Normal file
@ -0,0 +1,20 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Calque_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
viewBox="0 0 32 32"
|
||||
enable-background="new 0 0 32 32"
|
||||
xml:space="preserve"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><defs
|
||||
id="defs855" />
|
||||
<g
|
||||
style="fill:none;stroke:#3366cc;stroke-width:1.48328703;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="g35489"
|
||||
transform="matrix(1.3483567,0,0,1.3483567,-0.37239014,-0.37239021)"><path
|
||||
style="fill:none;fill-opacity:1;stroke:#3366cc;stroke-width:1.48328703;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 12,2.4960934 2.5451968,2.5451969 2.4960933,12 12.791992,21.503907 21.503907,12.791992 Z M 8.0400388,5.6640622 c 1.3115393,0 2.3759772,1.0644375 2.3759772,2.3759766 0,1.3115391 -1.0644379,2.3759772 -2.3759772,2.3759772 -1.3115392,0 -2.3759767,-1.0644381 -2.3759767,-2.3759772 0,-1.3115391 1.0644375,-2.3759766 2.3759767,-2.3759766"
|
||||
class="ColorScheme-Text"
|
||||
id="path4838" /></g></svg>
|
After Width: | Height: | Size: 1018 B |
@ -311,6 +311,6 @@
|
||||
|
||||
<file>scalable/instances/fox.svg</file>
|
||||
<file>scalable/instances/bee.svg</file>
|
||||
<file>scalable/instances/polymc.svg</file>
|
||||
<file>scalable/instances/prismlauncher.svg</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
|
@ -1,21 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg width="64" height="64" version="1.1" viewBox="0 0 16.933 16.933" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<defs>
|
||||
<linearGradient id="linearGradient84726" x1="4.4979" x2="12.435" y1="3.8011" y2="9.5681" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#88b858" offset="0"/>
|
||||
<stop stop-color="#72b147" offset=".5"/>
|
||||
<stop stop-color="#5a9a30" offset="1"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<g>
|
||||
<path d="m3.561 16.016s0-3.5642 4.9056-3.5642c4.9069 0 4.9056 3.5642 4.9056 3.5642z" fill="#765338"/>
|
||||
<path d="m8.4667 12.452-4.9056 3.5642-3.0319-9.3311z" fill="#b7835a"/>
|
||||
<path d="m8.4667 12.452 7.9375-5.7669-3.0319 9.3311z" fill="#5b422d"/>
|
||||
<path d="m8.8308 12.716-0.36417 0.26458-0.36417-0.26458c0-0.26458 0.36417-0.26458 0.36417-0.26458s0.36417 0 0.36417 0.26458z" fill="#72b147"/>
|
||||
<path d="m8.4667 12.452s-2e-7 -5.7669 7.9375-5.7669l-0.22507 0.69269-0.91853 1.1965-0.91853 0.13819-0.91853 1.1965-0.91853 0.13819-0.91853 1.1965-0.91853 0.13819-0.91853 1.1965-0.91853 0.13819z" fill="#5a9a30"/>
|
||||
<path d="m8.1025 12.716-0.91853-0.13819-0.91853-1.1965-0.91853-0.13819-0.91853-1.1965-0.91853-0.13819-0.91853-1.1965-0.91853-0.13819-0.91853-1.1965-0.22507-0.69269c7.9375 1e-7 7.9375 5.7669 7.9375 5.7669z" fill="#88b858"/>
|
||||
<path d="m0.52917 6.6846 7.9375 5.7669 7.9375-5.7669-7.9375-5.7669z" fill="url(#linearGradient84726)"/>
|
||||
</g>
|
||||
<path d="m0.75424 7.3773-0.22507-0.69269 7.9375 5.7669 7.9375-5.7669-0.22507 0.69269-7.7124 5.6034z" fill-opacity="0"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 1.6 KiB |
@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg width="512" height="512" version="1.1" viewBox="0 0 135.47 135.47" xmlns="http://www.w3.org/2000/svg">
|
||||
<g transform="matrix(1.3386 0 0 1.3386 16.155 10.174)">
|
||||
<path d="m18.78 50.126c0 1.342 0.356 2.6345 1.0008 3.758l-18.279 10.617c-0.96723-1.6842-1.5023-3.6252-1.5023-5.6404v-31.721c0-2.0152 0.53511-3.9517 1.5001-5.6382l18.281 10.614c-0.6448 1.1235-1.0008 2.416-1.0008 3.7602z" fill="#7a573b"/>
|
||||
<path d="m77.065 27.139v15.861h-18.78v-7.1243c0-1.342-0.3559-2.6367-1.003-3.7602l18.279-10.614c0.9694 1.6843 1.5023 3.6252 1.5023 5.6404z" fill="#f3db6c"/>
|
||||
<path d="m77.065 43v15.861c0 2.0152-0.5351 3.9562-1.5023 5.6404l-17.278-10.031-1.003-0.5832c0.6471-1.1236 1.003-2.4183 1.003-3.7603v-7.1265z" fill="#7ab392"/>
|
||||
<path d="m75.563 64.501c-0.9695 1.6843-2.3711 3.1208-4.1062 4.1296l-13.658 7.9303-9.3924-16.356 6.1392-3.5644c1.1553-0.6733 2.089-1.628 2.736-2.7516l18.279 10.614z" fill="#4b7cbc"/>
|
||||
<path d="m57.799 76.559-13.658 7.9303c-1.7352 1.0065-3.6719 1.5109-5.6086 1.5109v-21.226c1.2896 0 2.5792-0.3355 3.739-1.0088l6.1348-3.5644 9.3924 16.356z" fill="#6f488c"/>
|
||||
<path d="m57.799 9.4412-9.3924 16.356-6.1348-3.5644c-1.1598-0.6732-2.4494-1.0065-3.739-1.0065v-21.226c1.9367 0 3.8734 0.50437 5.6086 1.5109z" fill="#df6277"/>
|
||||
<path d="m38.532 0v21.226c-1.2896 0-2.5793 0.3333-3.7391 1.0065l-12.274 7.1288c-1.1576 0.671-2.0912 1.6279-2.7383 2.7538l-18.281-10.614c0.96947-1.6865 2.3733-3.1208 4.1085-4.1295l27.315-15.861c1.7352-1.0065 3.6719-1.5109 5.6086-1.5109z" fill="#99cd61"/>
|
||||
<path d="m75.563 21.501-18.279 10.614c-0.647-1.1236-1.5807-2.0806-2.736-2.7516l-6.1392-3.5644 9.3924-16.356 13.658 7.9303c1.7352 1.0065 3.1368 2.4431 4.1062 4.1296z" fill="#fb9168"/>
|
||||
<path d="m38.532 64.776v21.226c-1.9367 0-3.8733-0.5044-5.6085-1.5109l-27.315-15.863c-1.7352-1.0087-3.1368-2.443-4.1062-4.1295l18.279-10.614c0.647 1.1236 1.5807 2.0783 2.736 2.7516l12.274 7.1287c1.1598 0.6733 2.4495 1.0088 3.7391 1.0088z" fill="#4d3f33"/>
|
||||
<path d="m58.285 35.876v14.251c0 2.6885-1.424 5.1698-3.7391 6.5118l-12.274 7.1288c-1.1597 0.6732-2.4494 1.0087-3.739 1.0087-1.2897 0-2.5793-0.3355-3.7391-1.0087l-12.274-7.1288c-2.3151-1.342-3.7391-3.8233-3.7391-6.5118v-14.251c0-2.6884 1.424-5.1698 3.7391-6.5118l12.274-7.1287c1.1598-0.6733 2.4494-1.0065 3.7391-1.0065 1.2896 0 2.5793 0.3355 3.739 1.0065l6.1348 3.5643 6.1392 3.5644c1.1553 0.6733 2.089 1.628 2.736 2.7516 0.6471 1.1235 1.0031 2.4182 1.0031 3.7602z" fill="#fff"/>
|
||||
<path d="m58.285 35.876v14.251c0 1.342-0.356 2.6367-1.0031 3.7603s-1.5807 2.0783-2.736 2.7515l-6.1392 3.5644-6.1348 3.5644c-1.1598 0.6732-2.4494 1.0087-3.739 1.0087v-21.774l14.728-8.5495 4.0234-2.335c0.6471 1.1236 1.0031 2.4183 1.0031 3.7603z" fill="#dfdfdf"/>
|
||||
<path d="m38.532 43v21.774c-1.2897 0-2.5793-0.3355-3.7391-1.0088l-12.274-7.1287c-1.1553-0.6733-2.089-1.628-2.7361-2.7516-0.647-1.1235-1.003-2.4182-1.003-3.7602v-14.251c0-1.342 0.356-2.6367 1.003-3.7603l18.751 10.884z" fill="#d6d2d2"/>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 3.0 KiB |
@ -1,21 +1,53 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg width="64" height="64" version="1.1" viewBox="0 0 16.933 16.933" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<defs>
|
||||
<linearGradient id="linearGradient84726" x1="4.4979" x2="12.435" y1="3.8011" y2="9.5681" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#88b858" offset="0"/>
|
||||
<stop stop-color="#72b147" offset=".5"/>
|
||||
<stop stop-color="#5a9a30" offset="1"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<g>
|
||||
<path d="m3.561 16.016s0-3.5642 4.9056-3.5642c4.9069 0 4.9056 3.5642 4.9056 3.5642z" fill="#765338"/>
|
||||
<path d="m8.4667 12.452-4.9056 3.5642-3.0319-9.3311z" fill="#b7835a"/>
|
||||
<path d="m8.4667 12.452 7.9375-5.7669-3.0319 9.3311z" fill="#5b422d"/>
|
||||
<path d="m8.8308 12.716-0.36417 0.26458-0.36417-0.26458c0-0.26458 0.36417-0.26458 0.36417-0.26458s0.36417 0 0.36417 0.26458z" fill="#72b147"/>
|
||||
<path d="m8.4667 12.452s-2e-7 -5.7669 7.9375-5.7669l-0.22507 0.69269-0.91853 1.1965-0.91853 0.13819-0.91853 1.1965-0.91853 0.13819-0.91853 1.1965-0.91853 0.13819-0.91853 1.1965-0.91853 0.13819z" fill="#5a9a30"/>
|
||||
<path d="m8.1025 12.716-0.91853-0.13819-0.91853-1.1965-0.91853-0.13819-0.91853-1.1965-0.91853-0.13819-0.91853-1.1965-0.91853-0.13819-0.91853-1.1965-0.22507-0.69269c7.9375 1e-7 7.9375 5.7669 7.9375 5.7669z" fill="#88b858"/>
|
||||
<path d="m0.52917 6.6846 7.9375 5.7669 7.9375-5.7669-7.9375-5.7669z" fill="url(#linearGradient84726)"/>
|
||||
<svg width="48" height="48" version="1.1" viewBox="0 0 12.7 12.7" xmlns="http://www.w3.org/2000/svg" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
|
||||
<title>Prism Launcher Logo</title>
|
||||
<g stroke-width=".26458">
|
||||
<path d="m6.35 6.35" fill="#99cd61"/>
|
||||
<path d="m6.35 0.52917-2.5208 4.3656 2.5208 1.4552 2.5203-1.4552 0.10955-3.0996c-1.1511-0.66459-2.3388-1.2661-2.6298-1.2661z" fill="#df6277"/>
|
||||
<path d="m8.9798 1.7952-2.6298 4.5548 2.5203 1.4552 2.5208-4.3656c-0.14552-0.25205-1.2601-0.97975-2.4112-1.6443z" fill="#fb9168"/>
|
||||
<path d="m11.391 3.4396-5.041 2.9104 2.5203 1.4552 2.7389-1.4552c0-1.3292-0.072554-2.6584-0.21808-2.9104z" fill="#f3db6c"/>
|
||||
<path d="m6.35 6.35v2.9104h5.041c0.14552-0.25205 0.21807-1.5812 0.21808-2.9104h-5.2591z" fill="#7ab392"/>
|
||||
<path d="m6.35 6.35v2.9104l2.6298 1.6443c1.1511-0.66459 2.2657-1.3923 2.4112-1.6443l-5.041-2.9104z" fill="#4b7cbc"/>
|
||||
<path d="m6.35 6.35-2.5208 1.4552 2.5208 4.3656c0.29104 0 1.4787-0.60148 2.6298-1.2661l-2.6298-4.5548z" fill="#6f488c"/>
|
||||
<path d="m3.8292 4.8948-2.5203 4.3656c0.29104 0.5041 4.459 2.9104 5.041 2.9104v-5.8208l-2.5208-1.4552z" fill="#4d3f33"/>
|
||||
<path d="m1.309 3.4396c-0.29104 0.5041-0.29104 5.3167 0 5.8208l5.041-2.9104v-2.9104h-5.041z" fill="#7a573b"/>
|
||||
<path d="m6.35 0.52917c-0.58208-2e-8 -4.75 2.4063-5.041 2.9104l5.041 2.9104v-5.8208z" fill="#99cd61"/>
|
||||
</g>
|
||||
<path d="m0.75424 7.3773-0.22507-0.69269 7.9375 5.7669 7.9375-5.7669-0.22507 0.69269-7.7124 5.6034z" fill-opacity="0"/>
|
||||
<g transform="matrix(.88 0 0 .88 -10.906 -1.2421)">
|
||||
<g transform="translate(13.26 2.2776)">
|
||||
<path transform="matrix(.96975 0 0 .96975 .1921 .1921)" d="m6.3498 2.9393c-0.34105 0-2.7827 1.4099-2.9532 1.7052l2.9532 5.1157 2.9538-5.1157c-0.17052-0.29535-2.6127-1.7052-2.9538-1.7052z" fill="#fff" stroke-width=".26458"/>
|
||||
</g>
|
||||
<path d="m16.746 6.9737 2.8639 4.9609c0.33073 0 2.6991-1.3672 2.8644-1.6536 0.16536-0.28642 0.16536-3.0209 0-3.3073l-2.8644 1.6536z" fill="#dfdfdf" stroke-width=".26458"/>
|
||||
</g>
|
||||
<path d="m3.8299 4.8948c-0.14551 0.25205-0.14553 2.6584 0 2.9104 0.14553 0.25204 2.2292 1.4552 2.5203 1.4552v-2.9104z" fill="#d6d2d2" stroke-width=".26458"/>
|
||||
<metadata>
|
||||
<rdf:RDF>
|
||||
<cc:Work rdf:about="">
|
||||
<dc:title>Prism Launcher Logo</dc:title>
|
||||
<dc:date>19/10/2022</dc:date>
|
||||
<dc:creator>
|
||||
<cc:Agent>
|
||||
<dc:title>Prism Launcher</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:creator>
|
||||
<dc:contributor>
|
||||
<cc:Agent>
|
||||
<dc:title>AutiOne, Boba, ely, Fulmine, gon sawa, Pankakes, tobimori, Zeke</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:contributor>
|
||||
<dc:source>https://github.com/PrismLauncher/PrismLauncher</dc:source>
|
||||
<dc:rights>
|
||||
<cc:Agent>
|
||||
<dc:title>CC BY-SA 4.0</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:rights>
|
||||
<dc:publisher>
|
||||
<cc:Agent>
|
||||
<dc:title>Prism Launcher</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:publisher>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 2.9 KiB |
@ -34,5 +34,9 @@
|
||||
<file>scalable/status-yellow.svg</file>
|
||||
<file>scalable/viewfolder.svg</file>
|
||||
<file>scalable/worlds.svg</file>
|
||||
<file>scalable/delete.svg</file>
|
||||
<file>scalable/tag.svg</file>
|
||||
<file>scalable/export.svg</file>
|
||||
<file>scalable/rename.svg</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
|
70
launcher/resources/pe_blue/scalable/delete.svg
Normal file
@ -0,0 +1,70 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Calque_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
viewBox="0 0 32 32"
|
||||
enable-background="new 0 0 32 32"
|
||||
xml:space="preserve"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><defs
|
||||
id="defs21">
|
||||
</defs>
|
||||
|
||||
<g
|
||||
id="g17358"
|
||||
transform="translate(0.73129773)"><rect
|
||||
style="fill:#daeeff;fill-opacity:1;stroke:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:markers stroke fill"
|
||||
id="rect15793"
|
||||
width="17.548431"
|
||||
height="20.8389"
|
||||
x="6.4944863"
|
||||
y="7.1611009" /><path
|
||||
d="M 18.455476,4.1064849 V 2.071966 c 0,-0.8979555 0.387777,-0.8011866 -2.488293,-0.8011866 h -1.397072 c -2.876069,0 -2.488293,-0.1289149 -2.488293,0.8011866 v 2.0345189"
|
||||
id="path10"
|
||||
style="fill:#3366cc;fill-opacity:1;stroke:#3366cc;stroke-width:2;stroke-dasharray:none;stroke-opacity:1" /><g
|
||||
id="g2238"
|
||||
transform="translate(-0.9858234)"><path
|
||||
d="m 22.885931,26.821028 c -0.0782,1.097217 -0.9,1.178972 -2,1.178972 H 11.62312 c -1.1,0 -2.0000002,-0.07897 -2.0000002,-1.178972 L 8.2218981,7.1611009 H 4.2241361 L 5.6231198,26.821028 C 5.8573527,30.112705 8.3231198,32 11.62312,32 h 9.262811 c 3.3,0 5.765767,-1.887295 6,-5.178972 L 28.284915,7.1611009 h -3.997763 z"
|
||||
id="path12"
|
||||
style="fill:#3366cc;fill-opacity:1" /></g><rect
|
||||
style="fill:#3366cc;fill-opacity:1;stroke:none;stroke-width:0.000000879999;stroke-linecap:round;stroke-linejoin:round"
|
||||
id="rect587"
|
||||
width="29.264914"
|
||||
height="3.9999995"
|
||||
x="0.63624543"
|
||||
y="3.2609999"
|
||||
rx="2.1756897"
|
||||
ry="1.9999998" /><g
|
||||
id="g72186"
|
||||
transform="matrix(1,0,0,0.89022438,-0.25830466,0.83279537)"
|
||||
style="stroke-width:1.05986"><g
|
||||
id="g92780"
|
||||
transform="translate(-0.2948263)"><g
|
||||
id="g92786"
|
||||
transform="translate(-0.39497401)"><g
|
||||
id="g24025"
|
||||
transform="matrix(1,0,0,1.4771202,-0.16968376,-9.6959051)"
|
||||
style="stroke-width:0.872052"><rect
|
||||
style="fill:#3366cc;fill-opacity:1;stroke:none;stroke-width:3.49043;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:markers stroke fill"
|
||||
id="rect24019"
|
||||
width="2.1505656"
|
||||
height="10.38496"
|
||||
x="10.206384"
|
||||
y="14.677745"
|
||||
rx="1.0752828"
|
||||
ry="1.0752828"
|
||||
transform="matrix(0.99908133,-0.04285447,0.09318226,0.99564907,0,0)" /></g><g
|
||||
id="g72180"
|
||||
transform="matrix(-1,0,0,1.4771202,32.603298,-9.6959051)"
|
||||
style="stroke-width:0.872052"><rect
|
||||
style="fill:#3366cc;fill-opacity:1;stroke:none;stroke-width:3.49043;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:markers stroke fill"
|
||||
id="rect72178"
|
||||
width="2.1505656"
|
||||
height="10.38496"
|
||||
x="10.206384"
|
||||
y="14.677745"
|
||||
rx="1.0752828"
|
||||
ry="1.0752828"
|
||||
transform="matrix(0.99908133,-0.04285447,0.09318226,0.99564907,0,0)" /></g></g></g></g></g></svg>
|
After Width: | Height: | Size: 3.2 KiB |
40
launcher/resources/pe_blue/scalable/export.svg
Normal file
@ -0,0 +1,40 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Calque_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
viewBox="0 0 32 32"
|
||||
enable-background="new 0 0 32 32"
|
||||
xml:space="preserve"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><defs
|
||||
id="defs14" />
|
||||
<g
|
||||
id="g7954"><g
|
||||
id="g22579"><path
|
||||
d="M 28,10 C 28,8.9 27.1,8 26,8 H 16 V 6 C 16,4.9 15.1,4 14,4 H 6 C 4.9,4 4,4.9 4,6 v 20 c 0,1.1 0.9,2 2,2 h 20 c 1.1,0 2,-0.9 2,-2 z"
|
||||
id="path22556"
|
||||
style="fill:#daeeff;fill-opacity:1" /><rect
|
||||
x="0"
|
||||
fill="none"
|
||||
width="32"
|
||||
height="32"
|
||||
id="rect22558"
|
||||
y="0" /><g
|
||||
id="g22566">
|
||||
<path
|
||||
fill="none"
|
||||
d="M 26,8 H 16 V 6 C 16,4.9 15.1,4 14,4 H 6 C 4.9,4 4,4.9 4,6 v 3 17 c 0,1.1 0.9,2 2,2 h 20 c 1.1,0 2,-0.9 2,-2 V 10 C 28,9.6 27.9,9.3 27.7,9 27.4,8.4 26.7,8 26,8 Z"
|
||||
id="path22560" />
|
||||
<path
|
||||
id="path22562"
|
||||
d="M 6 0 C 2.7000033 0 0 2.7000033 0 6 L 0 9 L 0 26 C 0 29.299997 2.7000033 32 6 32 L 26 32 C 29.299997 32 32 29.299997 32 26 L 32 10 C 32 9.7000003 32.000391 9.2999997 31.900391 9 C 31.400391 6.2000028 28.999997 4 26 4 L 19.599609 4 C 18.79961 1.7000023 16.599997 0 14 0 L 6 0 z M 6 4 L 14 4 C 15.099999 4 16 4.9000011 16 6 L 16 8 L 26 8 C 26.699999 8 27.399219 8.4000006 27.699219 9 C 27.899219 9.2999997 28 9.6000004 28 10 L 28 26 C 28 27.099999 27.099999 28 26 28 L 6 28 C 4.9000011 28 4 27.099999 4 26 L 4 9 L 4 6 C 4 4.9000011 4.9000011 4 6 4 z "
|
||||
style="fill:#3366cc;fill-opacity:1" />
|
||||
|
||||
</g></g><path
|
||||
fill-rule="evenodd"
|
||||
clip-rule="evenodd"
|
||||
d="m 19.283635,21.196352 c -0.312728,0.234545 -0.625454,0.312728 -0.938181,0.312728 -0.234546,0 -0.469091,-0.07819 -0.703637,-0.156365 -0.547272,-0.234544 -0.859999,-0.781818 -0.859999,-1.407271 v -1.485455 -0.07817 c -4.925453,0 -9.1472686,3.283635 -10.4763592,7.818178 C 5.9927316,25.18363 5.836368,24.167266 5.836368,23.07272 c 0,-6.019996 4.925452,-10.945449 10.94545,-10.945449 v -1.563635 c 0,-0.625454 0.312727,-1.172727 0.859999,-1.407272 C 17.876363,9.078184 18.110908,9 18.345454,9 c 0.312727,0 0.625453,0.07817 0.938181,0.312727 l 6.254542,4.690906 c 0.390909,0.312728 0.625455,0.781818 0.625455,1.250909 0,0.469092 -0.234546,0.938182 -0.625455,1.250908 z"
|
||||
id="path22733"
|
||||
style="stroke-width:1;fill:#666666;fill-opacity:1" /></g></svg>
|
After Width: | Height: | Size: 2.3 KiB |
@ -1,21 +1,53 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg width="64" height="64" version="1.1" viewBox="0 0 16.933 16.933" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<defs>
|
||||
<linearGradient id="linearGradient84726" x1="4.4979" x2="12.435" y1="3.8011" y2="9.5681" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#88b858" offset="0"/>
|
||||
<stop stop-color="#72b147" offset=".5"/>
|
||||
<stop stop-color="#5a9a30" offset="1"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<g>
|
||||
<path d="m3.561 16.016s0-3.5642 4.9056-3.5642c4.9069 0 4.9056 3.5642 4.9056 3.5642z" fill="#765338"/>
|
||||
<path d="m8.4667 12.452-4.9056 3.5642-3.0319-9.3311z" fill="#b7835a"/>
|
||||
<path d="m8.4667 12.452 7.9375-5.7669-3.0319 9.3311z" fill="#5b422d"/>
|
||||
<path d="m8.8308 12.716-0.36417 0.26458-0.36417-0.26458c0-0.26458 0.36417-0.26458 0.36417-0.26458s0.36417 0 0.36417 0.26458z" fill="#72b147"/>
|
||||
<path d="m8.4667 12.452s-2e-7 -5.7669 7.9375-5.7669l-0.22507 0.69269-0.91853 1.1965-0.91853 0.13819-0.91853 1.1965-0.91853 0.13819-0.91853 1.1965-0.91853 0.13819-0.91853 1.1965-0.91853 0.13819z" fill="#5a9a30"/>
|
||||
<path d="m8.1025 12.716-0.91853-0.13819-0.91853-1.1965-0.91853-0.13819-0.91853-1.1965-0.91853-0.13819-0.91853-1.1965-0.91853-0.13819-0.91853-1.1965-0.22507-0.69269c7.9375 1e-7 7.9375 5.7669 7.9375 5.7669z" fill="#88b858"/>
|
||||
<path d="m0.52917 6.6846 7.9375 5.7669 7.9375-5.7669-7.9375-5.7669z" fill="url(#linearGradient84726)"/>
|
||||
<svg width="48" height="48" version="1.1" viewBox="0 0 12.7 12.7" xmlns="http://www.w3.org/2000/svg" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
|
||||
<title>Prism Launcher Logo</title>
|
||||
<g stroke-width=".26458">
|
||||
<path d="m6.35 6.35" fill="#99cd61"/>
|
||||
<path d="m6.35 0.52917-2.5208 4.3656 2.5208 1.4552 2.5203-1.4552 0.10955-3.0996c-1.1511-0.66459-2.3388-1.2661-2.6298-1.2661z" fill="#df6277"/>
|
||||
<path d="m8.9798 1.7952-2.6298 4.5548 2.5203 1.4552 2.5208-4.3656c-0.14552-0.25205-1.2601-0.97975-2.4112-1.6443z" fill="#fb9168"/>
|
||||
<path d="m11.391 3.4396-5.041 2.9104 2.5203 1.4552 2.7389-1.4552c0-1.3292-0.072554-2.6584-0.21808-2.9104z" fill="#f3db6c"/>
|
||||
<path d="m6.35 6.35v2.9104h5.041c0.14552-0.25205 0.21807-1.5812 0.21808-2.9104h-5.2591z" fill="#7ab392"/>
|
||||
<path d="m6.35 6.35v2.9104l2.6298 1.6443c1.1511-0.66459 2.2657-1.3923 2.4112-1.6443l-5.041-2.9104z" fill="#4b7cbc"/>
|
||||
<path d="m6.35 6.35-2.5208 1.4552 2.5208 4.3656c0.29104 0 1.4787-0.60148 2.6298-1.2661l-2.6298-4.5548z" fill="#6f488c"/>
|
||||
<path d="m3.8292 4.8948-2.5203 4.3656c0.29104 0.5041 4.459 2.9104 5.041 2.9104v-5.8208l-2.5208-1.4552z" fill="#4d3f33"/>
|
||||
<path d="m1.309 3.4396c-0.29104 0.5041-0.29104 5.3167 0 5.8208l5.041-2.9104v-2.9104h-5.041z" fill="#7a573b"/>
|
||||
<path d="m6.35 0.52917c-0.58208-2e-8 -4.75 2.4063-5.041 2.9104l5.041 2.9104v-5.8208z" fill="#99cd61"/>
|
||||
</g>
|
||||
<path d="m0.75424 7.3773-0.22507-0.69269 7.9375 5.7669 7.9375-5.7669-0.22507 0.69269-7.7124 5.6034z" fill-opacity="0"/>
|
||||
<g transform="matrix(.88 0 0 .88 -10.906 -1.2421)">
|
||||
<g transform="translate(13.26 2.2776)">
|
||||
<path transform="matrix(.96975 0 0 .96975 .1921 .1921)" d="m6.3498 2.9393c-0.34105 0-2.7827 1.4099-2.9532 1.7052l2.9532 5.1157 2.9538-5.1157c-0.17052-0.29535-2.6127-1.7052-2.9538-1.7052z" fill="#fff" stroke-width=".26458"/>
|
||||
</g>
|
||||
<path d="m16.746 6.9737 2.8639 4.9609c0.33073 0 2.6991-1.3672 2.8644-1.6536 0.16536-0.28642 0.16536-3.0209 0-3.3073l-2.8644 1.6536z" fill="#dfdfdf" stroke-width=".26458"/>
|
||||
</g>
|
||||
<path d="m3.8299 4.8948c-0.14551 0.25205-0.14553 2.6584 0 2.9104 0.14553 0.25204 2.2292 1.4552 2.5203 1.4552v-2.9104z" fill="#d6d2d2" stroke-width=".26458"/>
|
||||
<metadata>
|
||||
<rdf:RDF>
|
||||
<cc:Work rdf:about="">
|
||||
<dc:title>Prism Launcher Logo</dc:title>
|
||||
<dc:date>19/10/2022</dc:date>
|
||||
<dc:creator>
|
||||
<cc:Agent>
|
||||
<dc:title>Prism Launcher</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:creator>
|
||||
<dc:contributor>
|
||||
<cc:Agent>
|
||||
<dc:title>AutiOne, Boba, ely, Fulmine, gon sawa, Pankakes, tobimori, Zeke</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:contributor>
|
||||
<dc:source>https://github.com/PrismLauncher/PrismLauncher</dc:source>
|
||||
<dc:rights>
|
||||
<cc:Agent>
|
||||
<dc:title>CC BY-SA 4.0</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:rights>
|
||||
<dc:publisher>
|
||||
<cc:Agent>
|
||||
<dc:title>Prism Launcher</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:publisher>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 2.9 KiB |
19
launcher/resources/pe_blue/scalable/rename.svg
Normal file
@ -0,0 +1,19 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Calque_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
viewBox="0 0 32 32"
|
||||
enable-background="new 0 0 32 32"
|
||||
xml:space="preserve"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><defs
|
||||
id="defs38" />
|
||||
<g
|
||||
id="g70305"
|
||||
transform="matrix(0.87995311,0.87998288,-0.87995311,0.87998288,15.409106,-7.1812248)"
|
||||
style="stroke-width:0.80356"><path
|
||||
id="path66642"
|
||||
style="fill:#daeeff;stroke:#3366cc;stroke-width:3.21424;stroke-linecap:butt;stroke-linejoin:round;stroke-opacity:1;fill-opacity:1"
|
||||
d="M 10.272393,0.15880016 C 9.9282548,0.48303193 9.701946,1.0320027 9.701946,1.6547804 l 7.713e-4,20.0058326 2.7787647,5.932786 c 0.483272,1.031938 1.566339,1.032889 2.049746,0.0011 l 2.780076,-5.93399 0.0014,-20.0058323 c 0,-0.99644441 -0.579446,-1.80446494 -1.293962,-1.80446494 l -5.022821,8.497e-5 c -0.267943,0 -0.517093,0.11398937 -0.723576,0.30852843 z" /></g></svg>
|
After Width: | Height: | Size: 984 B |
39
launcher/resources/pe_blue/scalable/tag.svg
Normal file
@ -0,0 +1,39 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Calque_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
viewBox="0 0 32 32"
|
||||
enable-background="new 0 0 32 32"
|
||||
xml:space="preserve"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><defs
|
||||
id="defs45" />
|
||||
|
||||
<g
|
||||
id="g7954"><path
|
||||
fill="none"
|
||||
d="M 8.9659036,28 H 22.965904 c 1.1,0 2,-0.9 2,-2 V 15 14 H 6.9659036 v 1 11 c 0,1.1 0.9,2 2,2 z"
|
||||
id="path8" /><rect
|
||||
style="fill:#000000;fill-opacity:0;stroke:none;stroke-width:0.000000879999;stroke-linecap:round;stroke-linejoin:round"
|
||||
id="rect2311"
|
||||
width="29.020048"
|
||||
height="4"
|
||||
x="1.4899759"
|
||||
y="7.1611009" /><path
|
||||
id="path2-6"
|
||||
d="M 28,6 C 28,4.9 27.1,4 26,4 H 6 C 4.9,4 4,4.9 4,6 v 20 c 0,1.1 0.9,2 2,2 h 20 c 1.1,0 2,-0.9 2,-2 z"
|
||||
clip-rule="evenodd"
|
||||
fill-rule="evenodd"
|
||||
style="fill:#daeeff;fill-opacity:1" /><g
|
||||
id="g12"><path
|
||||
id="path6"
|
||||
d="m 6,28 h 20 c 1.1,0 2,-0.9 2,-2 V 9 6 C 28,4.9 27.1,4 26,4 H 6 C 4.9,4 4,4.9 4,6 v 3 17 c 0,1.1 0.9,2 2,2 z"
|
||||
fill="none" /><path
|
||||
id="path8-7"
|
||||
d="M 6 0 C 2.7000033 0 0 2.7000033 0 6 L 0 9 L 0 26 C 0 29.299997 2.7000033 32 6 32 L 26 32 C 29.299997 32 32 29.299997 32 26 L 32 9 L 32 6 C 32 2.7000033 29.299997 0 26 0 L 6 0 z M 6 4 L 26 4 C 27.099999 4 28 4.9000011 28 6 L 28 9 L 28 26 C 28 27.099999 27.099999 28 26 28 L 6 28 C 4.9000011 28 4 27.099999 4 26 L 4 9 L 4 6 C 4 4.9000011 4.9000011 4 6 4 z "
|
||||
style="fill:#3366cc;fill-opacity:1" /></g><path
|
||||
style="fill:#666666;fill-opacity:1;stroke:none;stroke-width:1"
|
||||
d="m 16,7.1611009 -8.793231,0.045668 -0.045668,8.7932321 9.575474,8.838898 8.102324,-8.102324 z m -3.682875,2.9463001 c 1.219769,0 2.209725,0.989956 2.209725,2.209725 0,1.219769 -0.989956,2.209725 -2.209725,2.209725 -1.219766,0 -2.209724,-0.989956 -2.209724,-2.209725 0,-1.219769 0.989958,-2.209725 2.209724,-2.209725"
|
||||
id="path6042" /></g></svg>
|
After Width: | Height: | Size: 1.9 KiB |
@ -34,5 +34,9 @@
|
||||
<file>scalable/status-yellow.svg</file>
|
||||
<file>scalable/viewfolder.svg</file>
|
||||
<file>scalable/worlds.svg</file>
|
||||
<file>scalable/delete.svg</file>
|
||||
<file>scalable/tag.svg</file>
|
||||
<file>scalable/export.svg</file>
|
||||
<file>scalable/rename.svg</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
|
70
launcher/resources/pe_colored/scalable/delete.svg
Normal file
@ -0,0 +1,70 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Calque_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
viewBox="0 0 32 32"
|
||||
enable-background="new 0 0 32 32"
|
||||
xml:space="preserve"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><defs
|
||||
id="defs21">
|
||||
</defs>
|
||||
|
||||
<g
|
||||
id="g17358"
|
||||
transform="translate(0.73129773)"><rect
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:markers stroke fill"
|
||||
id="rect15793"
|
||||
width="17.548431"
|
||||
height="20.8389"
|
||||
x="6.4944863"
|
||||
y="7.1611009" /><path
|
||||
d="M 18.455476,4.1064849 V 2.071966 c 0,-0.8979555 0.387777,-0.8011866 -2.488293,-0.8011866 h -1.397072 c -2.876069,0 -2.488293,-0.1289149 -2.488293,0.8011866 v 2.0345189"
|
||||
id="path10"
|
||||
style="fill:#39b54a;fill-opacity:1;stroke:#39b54a;stroke-width:2;stroke-dasharray:none;stroke-opacity:1" /><g
|
||||
id="g2238"
|
||||
transform="translate(-0.9858234)"><path
|
||||
fill="#8c6239"
|
||||
d="m 22.885931,26.821028 c -0.0782,1.097217 -0.9,1.178972 -2,1.178972 H 11.62312 c -1.1,0 -2.0000002,-0.07897 -2.0000002,-1.178972 L 8.2218981,7.1611009 H 4.2241361 L 5.6231198,26.821028 C 5.8573527,30.112705 8.3231198,32 11.62312,32 h 9.262811 c 3.3,0 5.765767,-1.887295 6,-5.178972 L 28.284915,7.1611009 h -3.997763 z"
|
||||
id="path12" /></g><rect
|
||||
style="fill:#39b54a;fill-opacity:1;stroke:none;stroke-width:8.79999e-07;stroke-linecap:round;stroke-linejoin:round"
|
||||
id="rect587"
|
||||
width="29.264914"
|
||||
height="3.9999995"
|
||||
x="0.63624543"
|
||||
y="3.2609999"
|
||||
rx="2.1756897"
|
||||
ry="1.9999998" /><g
|
||||
id="g72186"
|
||||
transform="matrix(1,0,0,0.89022438,-0.25830466,0.83279537)"
|
||||
style="stroke-width:1.05986"><g
|
||||
id="g92780"
|
||||
transform="translate(-0.2948263)"><g
|
||||
id="g92786"
|
||||
transform="translate(-0.39497401)"><g
|
||||
id="g24025"
|
||||
transform="matrix(1,0,0,1.4771202,-0.16968376,-9.6959051)"
|
||||
style="stroke-width:0.872052"><rect
|
||||
style="fill:#8c6239;fill-opacity:1;stroke:none;stroke-width:3.49043;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:markers stroke fill"
|
||||
id="rect24019"
|
||||
width="2.1505656"
|
||||
height="10.38496"
|
||||
x="10.206384"
|
||||
y="14.677745"
|
||||
rx="1.0752828"
|
||||
ry="1.0752828"
|
||||
transform="matrix(0.99908133,-0.04285447,0.09318226,0.99564907,0,0)" /></g><g
|
||||
id="g72180"
|
||||
transform="matrix(-1,0,0,1.4771202,32.603298,-9.6959051)"
|
||||
style="stroke-width:0.872052"><rect
|
||||
style="fill:#8c6239;fill-opacity:1;stroke:none;stroke-width:3.49043;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:markers stroke fill"
|
||||
id="rect72178"
|
||||
width="2.1505656"
|
||||
height="10.38496"
|
||||
x="10.206384"
|
||||
y="14.677745"
|
||||
rx="1.0752828"
|
||||
ry="1.0752828"
|
||||
transform="matrix(0.99908133,-0.04285447,0.09318226,0.99564907,0,0)" /></g></g></g></g></g></svg>
|
After Width: | Height: | Size: 3.1 KiB |
44
launcher/resources/pe_colored/scalable/export.svg
Normal file
@ -0,0 +1,44 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Calque_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
viewBox="0 0 32 32"
|
||||
enable-background="new 0 0 32 32"
|
||||
xml:space="preserve"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<g
|
||||
id="g7954"><g
|
||||
id="g22579"><path
|
||||
fill="#f2f2f2"
|
||||
d="M 28,10 C 28,8.9 27.1,8 26,8 H 16 V 6 C 16,4.9 15.1,4 14,4 H 6 C 4.9,4 4,4.9 4,6 v 20 c 0,1.1 0.9,2 2,2 h 20 c 1.1,0 2,-0.9 2,-2 z"
|
||||
id="path22556" /><rect
|
||||
x="0"
|
||||
fill="none"
|
||||
width="32"
|
||||
height="32"
|
||||
id="rect22558"
|
||||
y="0" /><g
|
||||
id="g22566">
|
||||
<path
|
||||
fill="none"
|
||||
d="M 26,8 H 16 V 6 C 16,4.9 15.1,4 14,4 H 6 C 4.9,4 4,4.9 4,6 v 3 17 c 0,1.1 0.9,2 2,2 h 20 c 1.1,0 2,-0.9 2,-2 V 10 C 28,9.6 27.9,9.3 27.7,9 27.4,8.4 26.7,8 26,8 Z"
|
||||
id="path22560" />
|
||||
<path
|
||||
fill="#39b54a"
|
||||
d="M 4,6 C 4,4.9 4.9,4 6,4 h 8 c 1.1,0 2,0.9 2,2 v 2 h 10 c 0.7,0 1.4,0.4 1.7,1 h 4.2 C 31.4,6.2 29,4 26,4 H 19.6 C 18.8,1.7 16.6,0 14,0 H 6 C 2.7,0 0,2.7 0,6 v 3 h 4 z"
|
||||
id="path22562" />
|
||||
<path
|
||||
fill="#8c6239"
|
||||
d="m 27.7,9 c 0.2,0.3 0.3,0.6 0.3,1 v 16 c 0,1.1 -0.9,2 -2,2 H 6 C 4.9,28 4,27.1 4,26 V 9 H 0 v 17 c 0,3.3 2.7,6 6,6 h 20 c 3.3,0 6,-2.7 6,-6 V 10 C 32,9.7 32,9.3 31.9,9 Z"
|
||||
id="path22564" />
|
||||
</g></g><path
|
||||
fill-rule="evenodd"
|
||||
clip-rule="evenodd"
|
||||
fill="#009245"
|
||||
d="m 19.283635,21.196352 c -0.312728,0.234545 -0.625454,0.312728 -0.938181,0.312728 -0.234546,0 -0.469091,-0.07819 -0.703637,-0.156365 -0.547272,-0.234544 -0.859999,-0.781818 -0.859999,-1.407271 v -1.485455 -0.07817 c -4.925453,0 -9.1472686,3.283635 -10.4763592,7.818178 C 5.9927316,25.18363 5.836368,24.167266 5.836368,23.07272 c 0,-6.019996 4.925452,-10.945449 10.94545,-10.945449 v -1.563635 c 0,-0.625454 0.312727,-1.172727 0.859999,-1.407272 C 17.876363,9.078184 18.110908,9 18.345454,9 c 0.312727,0 0.625453,0.07817 0.938181,0.312727 l 6.254542,4.690906 c 0.390909,0.312728 0.625455,0.781818 0.625455,1.250909 0,0.469092 -0.234546,0.938182 -0.625455,1.250908 z"
|
||||
id="path22733"
|
||||
style="stroke-width:1" /></g></svg>
|
After Width: | Height: | Size: 2.1 KiB |
@ -1,21 +1,53 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg width="64" height="64" version="1.1" viewBox="0 0 16.933 16.933" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<defs>
|
||||
<linearGradient id="linearGradient84726" x1="4.4979" x2="12.435" y1="3.8011" y2="9.5681" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#88b858" offset="0"/>
|
||||
<stop stop-color="#72b147" offset=".5"/>
|
||||
<stop stop-color="#5a9a30" offset="1"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<g>
|
||||
<path d="m3.561 16.016s0-3.5642 4.9056-3.5642c4.9069 0 4.9056 3.5642 4.9056 3.5642z" fill="#765338"/>
|
||||
<path d="m8.4667 12.452-4.9056 3.5642-3.0319-9.3311z" fill="#b7835a"/>
|
||||
<path d="m8.4667 12.452 7.9375-5.7669-3.0319 9.3311z" fill="#5b422d"/>
|
||||
<path d="m8.8308 12.716-0.36417 0.26458-0.36417-0.26458c0-0.26458 0.36417-0.26458 0.36417-0.26458s0.36417 0 0.36417 0.26458z" fill="#72b147"/>
|
||||
<path d="m8.4667 12.452s-2e-7 -5.7669 7.9375-5.7669l-0.22507 0.69269-0.91853 1.1965-0.91853 0.13819-0.91853 1.1965-0.91853 0.13819-0.91853 1.1965-0.91853 0.13819-0.91853 1.1965-0.91853 0.13819z" fill="#5a9a30"/>
|
||||
<path d="m8.1025 12.716-0.91853-0.13819-0.91853-1.1965-0.91853-0.13819-0.91853-1.1965-0.91853-0.13819-0.91853-1.1965-0.91853-0.13819-0.91853-1.1965-0.22507-0.69269c7.9375 1e-7 7.9375 5.7669 7.9375 5.7669z" fill="#88b858"/>
|
||||
<path d="m0.52917 6.6846 7.9375 5.7669 7.9375-5.7669-7.9375-5.7669z" fill="url(#linearGradient84726)"/>
|
||||
<svg width="48" height="48" version="1.1" viewBox="0 0 12.7 12.7" xmlns="http://www.w3.org/2000/svg" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
|
||||
<title>Prism Launcher Logo</title>
|
||||
<g stroke-width=".26458">
|
||||
<path d="m6.35 6.35" fill="#99cd61"/>
|
||||
<path d="m6.35 0.52917-2.5208 4.3656 2.5208 1.4552 2.5203-1.4552 0.10955-3.0996c-1.1511-0.66459-2.3388-1.2661-2.6298-1.2661z" fill="#df6277"/>
|
||||
<path d="m8.9798 1.7952-2.6298 4.5548 2.5203 1.4552 2.5208-4.3656c-0.14552-0.25205-1.2601-0.97975-2.4112-1.6443z" fill="#fb9168"/>
|
||||
<path d="m11.391 3.4396-5.041 2.9104 2.5203 1.4552 2.7389-1.4552c0-1.3292-0.072554-2.6584-0.21808-2.9104z" fill="#f3db6c"/>
|
||||
<path d="m6.35 6.35v2.9104h5.041c0.14552-0.25205 0.21807-1.5812 0.21808-2.9104h-5.2591z" fill="#7ab392"/>
|
||||
<path d="m6.35 6.35v2.9104l2.6298 1.6443c1.1511-0.66459 2.2657-1.3923 2.4112-1.6443l-5.041-2.9104z" fill="#4b7cbc"/>
|
||||
<path d="m6.35 6.35-2.5208 1.4552 2.5208 4.3656c0.29104 0 1.4787-0.60148 2.6298-1.2661l-2.6298-4.5548z" fill="#6f488c"/>
|
||||
<path d="m3.8292 4.8948-2.5203 4.3656c0.29104 0.5041 4.459 2.9104 5.041 2.9104v-5.8208l-2.5208-1.4552z" fill="#4d3f33"/>
|
||||
<path d="m1.309 3.4396c-0.29104 0.5041-0.29104 5.3167 0 5.8208l5.041-2.9104v-2.9104h-5.041z" fill="#7a573b"/>
|
||||
<path d="m6.35 0.52917c-0.58208-2e-8 -4.75 2.4063-5.041 2.9104l5.041 2.9104v-5.8208z" fill="#99cd61"/>
|
||||
</g>
|
||||
<path d="m0.75424 7.3773-0.22507-0.69269 7.9375 5.7669 7.9375-5.7669-0.22507 0.69269-7.7124 5.6034z" fill-opacity="0"/>
|
||||
<g transform="matrix(.88 0 0 .88 -10.906 -1.2421)">
|
||||
<g transform="translate(13.26 2.2776)">
|
||||
<path transform="matrix(.96975 0 0 .96975 .1921 .1921)" d="m6.3498 2.9393c-0.34105 0-2.7827 1.4099-2.9532 1.7052l2.9532 5.1157 2.9538-5.1157c-0.17052-0.29535-2.6127-1.7052-2.9538-1.7052z" fill="#fff" stroke-width=".26458"/>
|
||||
</g>
|
||||
<path d="m16.746 6.9737 2.8639 4.9609c0.33073 0 2.6991-1.3672 2.8644-1.6536 0.16536-0.28642 0.16536-3.0209 0-3.3073l-2.8644 1.6536z" fill="#dfdfdf" stroke-width=".26458"/>
|
||||
</g>
|
||||
<path d="m3.8299 4.8948c-0.14551 0.25205-0.14553 2.6584 0 2.9104 0.14553 0.25204 2.2292 1.4552 2.5203 1.4552v-2.9104z" fill="#d6d2d2" stroke-width=".26458"/>
|
||||
<metadata>
|
||||
<rdf:RDF>
|
||||
<cc:Work rdf:about="">
|
||||
<dc:title>Prism Launcher Logo</dc:title>
|
||||
<dc:date>19/10/2022</dc:date>
|
||||
<dc:creator>
|
||||
<cc:Agent>
|
||||
<dc:title>Prism Launcher</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:creator>
|
||||
<dc:contributor>
|
||||
<cc:Agent>
|
||||
<dc:title>AutiOne, Boba, ely, Fulmine, gon sawa, Pankakes, tobimori, Zeke</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:contributor>
|
||||
<dc:source>https://github.com/PrismLauncher/PrismLauncher</dc:source>
|
||||
<dc:rights>
|
||||
<cc:Agent>
|
||||
<dc:title>CC BY-SA 4.0</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:rights>
|
||||
<dc:publisher>
|
||||
<cc:Agent>
|
||||
<dc:title>Prism Launcher</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:publisher>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 2.9 KiB |
22
launcher/resources/pe_colored/scalable/rename.svg
Normal file
@ -0,0 +1,22 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Calque_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
viewBox="0 0 32 32"
|
||||
enable-background="new 0 0 32 32"
|
||||
xml:space="preserve"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><defs
|
||||
id="defs38" />
|
||||
<g
|
||||
id="g70305"
|
||||
transform="matrix(0.87995311,0.87998288,-0.87995311,0.87998288,15.409106,-7.1812248)"
|
||||
style="stroke-width:0.80356"><path
|
||||
id="path66642"
|
||||
style="fill:#f2f2f2;stroke:#8c6239;stroke-width:3.21424;stroke-linecap:butt;stroke-linejoin:round"
|
||||
d="m 9.7027425,6.192769 v 15.467882 l 2.7787125,5.933433 c 0.483272,1.031939 1.567304,1.032078 2.050712,2.63e-4 L 17.31212,21.660651 V 6.192769" /><path
|
||||
id="rect61208"
|
||||
style="fill:#f2f2f2;stroke:#39b54a;stroke-width:3.21424;stroke-linecap:butt;stroke-linejoin:round;stroke-opacity:1"
|
||||
d="m 17.31212,6.8348105 v -5.180077 c 0,-0.99644538 -0.579229,-1.80422399 -1.293746,-1.80422399 h -5.021885 c -0.714516,0 -1.2937465,0.80777861 -1.2937465,1.80422399 v 5.195776" /></g></svg>
|
After Width: | Height: | Size: 1.0 KiB |
42
launcher/resources/pe_colored/scalable/tag.svg
Normal file
@ -0,0 +1,42 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Calque_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
viewBox="0 0 32 32"
|
||||
enable-background="new 0 0 32 32"
|
||||
xml:space="preserve"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><defs
|
||||
id="defs45" />
|
||||
|
||||
<g
|
||||
id="g7954"><path
|
||||
fill="none"
|
||||
d="M 8.9659036,28 H 22.965904 c 1.1,0 2,-0.9 2,-2 V 15 14 H 6.9659036 v 1 11 c 0,1.1 0.9,2 2,2 z"
|
||||
id="path8" /><rect
|
||||
style="fill:#000000;fill-opacity:0;stroke:none;stroke-width:0.000000879999;stroke-linecap:round;stroke-linejoin:round"
|
||||
id="rect2311"
|
||||
width="29.020048"
|
||||
height="4"
|
||||
x="1.4899759"
|
||||
y="7.1611009" /><path
|
||||
id="path2-6"
|
||||
d="M 28,6 C 28,4.9 27.1,4 26,4 H 6 C 4.9,4 4,4.9 4,6 v 20 c 0,1.1 0.9,2 2,2 h 20 c 1.1,0 2,-0.9 2,-2 z"
|
||||
fill="#f2f2f2"
|
||||
clip-rule="evenodd"
|
||||
fill-rule="evenodd" /><g
|
||||
id="g12"><path
|
||||
id="path6"
|
||||
d="m 6,28 h 20 c 1.1,0 2,-0.9 2,-2 V 9 6 C 28,4.9 27.1,4 26,4 H 6 C 4.9,4 4,4.9 4,6 v 3 17 c 0,1.1 0.9,2 2,2 z"
|
||||
fill="none" /><path
|
||||
id="path8-7"
|
||||
d="M 26,0 H 6 C 2.7,0 0,2.7 0,6 V 9 H 4 V 6 C 4,4.9 4.9,4 6,4 h 20 c 1.1,0 2,0.9 2,2 v 3 h 4 V 6 C 32,2.7 29.3,0 26,0 Z"
|
||||
fill="#39b54a" /><path
|
||||
id="path10-5"
|
||||
d="m 28,26 c 0,1.1 -0.9,2 -2,2 H 6 C 4.9,28 4,27.1 4,26 V 9 H 0 v 17 c 0,3.3 2.7,6 6,6 h 20 c 3.3,0 6,-2.7 6,-6 V 9 h -4 z"
|
||||
fill="#8c6239" /></g><path
|
||||
style="fill:#009245;fill-opacity:1;stroke:none;stroke-width:1"
|
||||
d="m 16,7.1611009 -8.793231,0.045668 -0.045668,8.7932321 9.575474,8.838898 8.102324,-8.102324 z m -3.682875,2.9463001 c 1.219769,0 2.209725,0.989956 2.209725,2.209725 0,1.219769 -0.989956,2.209725 -2.209725,2.209725 -1.219766,0 -2.209724,-0.989956 -2.209724,-2.209725 0,-1.219769 0.989958,-2.209725 2.209724,-2.209725"
|
||||
id="path6042" /></g></svg>
|
After Width: | Height: | Size: 1.8 KiB |
@ -34,5 +34,9 @@
|
||||
<file>scalable/status-yellow.svg</file>
|
||||
<file>scalable/viewfolder.svg</file>
|
||||
<file>scalable/worlds.svg</file>
|
||||
<file>scalable/delete.svg</file>
|
||||
<file>scalable/tag.svg</file>
|
||||
<file>scalable/export.svg</file>
|
||||
<file>scalable/rename.svg</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
|
70
launcher/resources/pe_dark/scalable/delete.svg
Normal file
@ -0,0 +1,70 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Calque_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
viewBox="0 0 32 32"
|
||||
enable-background="new 0 0 32 32"
|
||||
xml:space="preserve"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><defs
|
||||
id="defs21">
|
||||
</defs>
|
||||
|
||||
<g
|
||||
id="g17358"
|
||||
transform="translate(0.73129773)"><rect
|
||||
style="fill:none;fill-opacity:1;stroke:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:markers stroke fill"
|
||||
id="rect15793"
|
||||
width="17.548431"
|
||||
height="20.8389"
|
||||
x="6.4944863"
|
||||
y="7.1611009" /><path
|
||||
d="M 18.455476,4.1064849 V 2.071966 c 0,-0.8979555 0.387777,-0.8011866 -2.488293,-0.8011866 h -1.397072 c -2.876069,0 -2.488293,-0.1289149 -2.488293,0.8011866 v 2.0345189"
|
||||
id="path10"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-dasharray:none;stroke-opacity:1" /><g
|
||||
id="g2238"
|
||||
transform="translate(-0.9858234)"><path
|
||||
d="m 22.885931,26.821028 c -0.0782,1.097217 -0.9,1.178972 -2,1.178972 H 11.62312 c -1.1,0 -2.0000002,-0.07897 -2.0000002,-1.178972 L 8.2218981,7.1611009 H 4.2241361 L 5.6231198,26.821028 C 5.8573527,30.112705 8.3231198,32 11.62312,32 h 9.262811 c 3.3,0 5.765767,-1.887295 6,-5.178972 L 28.284915,7.1611009 h -3.997763 z"
|
||||
id="path12"
|
||||
style="fill:#000000" /></g><rect
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.000000879999;stroke-linecap:round;stroke-linejoin:round"
|
||||
id="rect587"
|
||||
width="29.264914"
|
||||
height="3.9999995"
|
||||
x="0.63624543"
|
||||
y="3.2609999"
|
||||
rx="2.1756897"
|
||||
ry="1.9999998" /><g
|
||||
id="g72186"
|
||||
transform="matrix(1,0,0,0.89022438,-0.25830466,0.83279537)"
|
||||
style="stroke-width:1.05986"><g
|
||||
id="g92780"
|
||||
transform="translate(-0.2948263)"><g
|
||||
id="g92786"
|
||||
transform="translate(-0.39497401)"><g
|
||||
id="g24025"
|
||||
transform="matrix(1,0,0,1.4771202,-0.16968376,-9.6959051)"
|
||||
style="stroke-width:0.872052"><rect
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:3.49043;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:markers stroke fill"
|
||||
id="rect24019"
|
||||
width="2.1505656"
|
||||
height="10.38496"
|
||||
x="10.206384"
|
||||
y="14.677745"
|
||||
rx="1.0752828"
|
||||
ry="1.0752828"
|
||||
transform="matrix(0.99908133,-0.04285447,0.09318226,0.99564907,0,0)" /></g><g
|
||||
id="g72180"
|
||||
transform="matrix(-1,0,0,1.4771202,32.603298,-9.6959051)"
|
||||
style="stroke-width:0.872052"><rect
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:3.49043;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:markers stroke fill"
|
||||
id="rect72178"
|
||||
width="2.1505656"
|
||||
height="10.38496"
|
||||
x="10.206384"
|
||||
y="14.677745"
|
||||
rx="1.0752828"
|
||||
ry="1.0752828"
|
||||
transform="matrix(0.99908133,-0.04285447,0.09318226,0.99564907,0,0)" /></g></g></g></g></g></svg>
|
After Width: | Height: | Size: 3.1 KiB |
36
launcher/resources/pe_dark/scalable/export.svg
Normal file
@ -0,0 +1,36 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Calque_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
viewBox="0 0 32 32"
|
||||
enable-background="new 0 0 32 32"
|
||||
xml:space="preserve"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><defs
|
||||
id="defs14" />
|
||||
<g
|
||||
id="g7954"><g
|
||||
id="g22579"><rect
|
||||
x="0"
|
||||
fill="none"
|
||||
width="32"
|
||||
height="32"
|
||||
id="rect22558"
|
||||
y="0" /><g
|
||||
id="g22566">
|
||||
<path
|
||||
fill="none"
|
||||
d="M 26,8 H 16 V 6 C 16,4.9 15.1,4 14,4 H 6 C 4.9,4 4,4.9 4,6 v 3 17 c 0,1.1 0.9,2 2,2 h 20 c 1.1,0 2,-0.9 2,-2 V 10 C 28,9.6 27.9,9.3 27.7,9 27.4,8.4 26.7,8 26,8 Z"
|
||||
id="path22560" />
|
||||
<path
|
||||
id="path22562"
|
||||
d="M 6 0 C 2.7000033 0 0 2.7000033 0 6 L 0 9 L 0 26 C 0 29.299997 2.7000033 32 6 32 L 26 32 C 29.299997 32 32 29.299997 32 26 L 32 10 C 32 9.7000003 32.000391 9.2999997 31.900391 9 C 31.400391 6.2000028 28.999997 4 26 4 L 19.599609 4 C 18.79961 1.7000023 16.599997 0 14 0 L 6 0 z M 6 4 L 14 4 C 15.099999 4 16 4.9000011 16 6 L 16 8 L 26 8 C 26.699999 8 27.399219 8.4000006 27.699219 9 C 27.899219 9.2999997 28 9.6000004 28 10 L 28 26 C 28 27.099999 27.099999 28 26 28 L 6 28 C 4.9000011 28 4 27.099999 4 26 L 4 9 L 4 6 C 4 4.9000011 4.9000011 4 6 4 z " />
|
||||
|
||||
</g></g><path
|
||||
fill-rule="evenodd"
|
||||
clip-rule="evenodd"
|
||||
d="m 19.283635,21.196352 c -0.312728,0.234545 -0.625454,0.312728 -0.938181,0.312728 -0.234546,0 -0.469091,-0.07819 -0.703637,-0.156365 -0.547272,-0.234544 -0.859999,-0.781818 -0.859999,-1.407271 v -1.485455 -0.07817 c -4.925453,0 -9.1472686,3.283635 -10.4763592,7.818178 C 5.9927316,25.18363 5.836368,24.167266 5.836368,23.07272 c 0,-6.019996 4.925452,-10.945449 10.94545,-10.945449 v -1.563635 c 0,-0.625454 0.312727,-1.172727 0.859999,-1.407272 C 17.876363,9.078184 18.110908,9 18.345454,9 c 0.312727,0 0.625453,0.07817 0.938181,0.312727 l 6.254542,4.690906 c 0.390909,0.312728 0.625455,0.781818 0.625455,1.250909 0,0.469092 -0.234546,0.938182 -0.625455,1.250908 z"
|
||||
id="path22733"
|
||||
style="stroke-width:1;fill:#666666;fill-opacity:1" /></g></svg>
|
After Width: | Height: | Size: 2.1 KiB |
@ -1,21 +1,53 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg width="64" height="64" version="1.1" viewBox="0 0 16.933 16.933" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<defs>
|
||||
<linearGradient id="linearGradient84726" x1="4.4979" x2="12.435" y1="3.8011" y2="9.5681" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#88b858" offset="0"/>
|
||||
<stop stop-color="#72b147" offset=".5"/>
|
||||
<stop stop-color="#5a9a30" offset="1"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<g>
|
||||
<path d="m3.561 16.016s0-3.5642 4.9056-3.5642c4.9069 0 4.9056 3.5642 4.9056 3.5642z" fill="#765338"/>
|
||||
<path d="m8.4667 12.452-4.9056 3.5642-3.0319-9.3311z" fill="#b7835a"/>
|
||||
<path d="m8.4667 12.452 7.9375-5.7669-3.0319 9.3311z" fill="#5b422d"/>
|
||||
<path d="m8.8308 12.716-0.36417 0.26458-0.36417-0.26458c0-0.26458 0.36417-0.26458 0.36417-0.26458s0.36417 0 0.36417 0.26458z" fill="#72b147"/>
|
||||
<path d="m8.4667 12.452s-2e-7 -5.7669 7.9375-5.7669l-0.22507 0.69269-0.91853 1.1965-0.91853 0.13819-0.91853 1.1965-0.91853 0.13819-0.91853 1.1965-0.91853 0.13819-0.91853 1.1965-0.91853 0.13819z" fill="#5a9a30"/>
|
||||
<path d="m8.1025 12.716-0.91853-0.13819-0.91853-1.1965-0.91853-0.13819-0.91853-1.1965-0.91853-0.13819-0.91853-1.1965-0.91853-0.13819-0.91853-1.1965-0.22507-0.69269c7.9375 1e-7 7.9375 5.7669 7.9375 5.7669z" fill="#88b858"/>
|
||||
<path d="m0.52917 6.6846 7.9375 5.7669 7.9375-5.7669-7.9375-5.7669z" fill="url(#linearGradient84726)"/>
|
||||
<svg width="48" height="48" version="1.1" viewBox="0 0 12.7 12.7" xmlns="http://www.w3.org/2000/svg" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
|
||||
<title>Prism Launcher Logo</title>
|
||||
<g stroke-width=".26458">
|
||||
<path d="m6.35 6.35" fill="#99cd61"/>
|
||||
<path d="m6.35 0.52917-2.5208 4.3656 2.5208 1.4552 2.5203-1.4552 0.10955-3.0996c-1.1511-0.66459-2.3388-1.2661-2.6298-1.2661z" fill="#df6277"/>
|
||||
<path d="m8.9798 1.7952-2.6298 4.5548 2.5203 1.4552 2.5208-4.3656c-0.14552-0.25205-1.2601-0.97975-2.4112-1.6443z" fill="#fb9168"/>
|
||||
<path d="m11.391 3.4396-5.041 2.9104 2.5203 1.4552 2.7389-1.4552c0-1.3292-0.072554-2.6584-0.21808-2.9104z" fill="#f3db6c"/>
|
||||
<path d="m6.35 6.35v2.9104h5.041c0.14552-0.25205 0.21807-1.5812 0.21808-2.9104h-5.2591z" fill="#7ab392"/>
|
||||
<path d="m6.35 6.35v2.9104l2.6298 1.6443c1.1511-0.66459 2.2657-1.3923 2.4112-1.6443l-5.041-2.9104z" fill="#4b7cbc"/>
|
||||
<path d="m6.35 6.35-2.5208 1.4552 2.5208 4.3656c0.29104 0 1.4787-0.60148 2.6298-1.2661l-2.6298-4.5548z" fill="#6f488c"/>
|
||||
<path d="m3.8292 4.8948-2.5203 4.3656c0.29104 0.5041 4.459 2.9104 5.041 2.9104v-5.8208l-2.5208-1.4552z" fill="#4d3f33"/>
|
||||
<path d="m1.309 3.4396c-0.29104 0.5041-0.29104 5.3167 0 5.8208l5.041-2.9104v-2.9104h-5.041z" fill="#7a573b"/>
|
||||
<path d="m6.35 0.52917c-0.58208-2e-8 -4.75 2.4063-5.041 2.9104l5.041 2.9104v-5.8208z" fill="#99cd61"/>
|
||||
</g>
|
||||
<path d="m0.75424 7.3773-0.22507-0.69269 7.9375 5.7669 7.9375-5.7669-0.22507 0.69269-7.7124 5.6034z" fill-opacity="0"/>
|
||||
<g transform="matrix(.88 0 0 .88 -10.906 -1.2421)">
|
||||
<g transform="translate(13.26 2.2776)">
|
||||
<path transform="matrix(.96975 0 0 .96975 .1921 .1921)" d="m6.3498 2.9393c-0.34105 0-2.7827 1.4099-2.9532 1.7052l2.9532 5.1157 2.9538-5.1157c-0.17052-0.29535-2.6127-1.7052-2.9538-1.7052z" fill="#fff" stroke-width=".26458"/>
|
||||
</g>
|
||||
<path d="m16.746 6.9737 2.8639 4.9609c0.33073 0 2.6991-1.3672 2.8644-1.6536 0.16536-0.28642 0.16536-3.0209 0-3.3073l-2.8644 1.6536z" fill="#dfdfdf" stroke-width=".26458"/>
|
||||
</g>
|
||||
<path d="m3.8299 4.8948c-0.14551 0.25205-0.14553 2.6584 0 2.9104 0.14553 0.25204 2.2292 1.4552 2.5203 1.4552v-2.9104z" fill="#d6d2d2" stroke-width=".26458"/>
|
||||
<metadata>
|
||||
<rdf:RDF>
|
||||
<cc:Work rdf:about="">
|
||||
<dc:title>Prism Launcher Logo</dc:title>
|
||||
<dc:date>19/10/2022</dc:date>
|
||||
<dc:creator>
|
||||
<cc:Agent>
|
||||
<dc:title>Prism Launcher</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:creator>
|
||||
<dc:contributor>
|
||||
<cc:Agent>
|
||||
<dc:title>AutiOne, Boba, ely, Fulmine, gon sawa, Pankakes, tobimori, Zeke</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:contributor>
|
||||
<dc:source>https://github.com/PrismLauncher/PrismLauncher</dc:source>
|
||||
<dc:rights>
|
||||
<cc:Agent>
|
||||
<dc:title>CC BY-SA 4.0</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:rights>
|
||||
<dc:publisher>
|
||||
<cc:Agent>
|
||||
<dc:title>Prism Launcher</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:publisher>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 2.9 KiB |
19
launcher/resources/pe_dark/scalable/rename.svg
Normal file
@ -0,0 +1,19 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Calque_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
viewBox="0 0 32 32"
|
||||
enable-background="new 0 0 32 32"
|
||||
xml:space="preserve"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><defs
|
||||
id="defs38" />
|
||||
<g
|
||||
id="g70305"
|
||||
transform="matrix(0.87995311,0.87998288,-0.87995311,0.87998288,15.409106,-7.1812248)"
|
||||
style="stroke-width:0.80356"><path
|
||||
id="path66642"
|
||||
style="fill:#f2f2f2;stroke:#000000;stroke-width:3.21424;stroke-linecap:butt;stroke-linejoin:round"
|
||||
d="M 10.272393,0.15880016 C 9.9282548,0.48303193 9.701946,1.0320027 9.701946,1.6547804 l 7.713e-4,20.0058326 2.7787647,5.932786 c 0.483272,1.031938 1.566339,1.032889 2.049746,0.0011 l 2.780076,-5.93399 0.0014,-20.0058323 c 0,-0.99644441 -0.579446,-1.80446494 -1.293962,-1.80446494 l -5.022821,8.497e-5 c -0.267943,0 -0.517093,0.11398937 -0.723576,0.30852843 z" /></g></svg>
|
After Width: | Height: | Size: 952 B |
30
launcher/resources/pe_dark/scalable/tag.svg
Normal file
@ -0,0 +1,30 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Calque_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
viewBox="0 0 32 32"
|
||||
enable-background="new 0 0 32 32"
|
||||
xml:space="preserve"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><defs
|
||||
id="defs45" />
|
||||
|
||||
<g
|
||||
id="g7954"><rect
|
||||
style="fill:#000000;fill-opacity:0;stroke:none;stroke-width:0.000000879999;stroke-linecap:round;stroke-linejoin:round"
|
||||
id="rect2311"
|
||||
width="29.020048"
|
||||
height="4"
|
||||
x="1.4899759"
|
||||
y="7.1611009" /><g
|
||||
id="g12"><path
|
||||
id="path6"
|
||||
d="m 6,28 h 20 c 1.1,0 2,-0.9 2,-2 V 9 6 C 28,4.9 27.1,4 26,4 H 6 C 4.9,4 4,4.9 4,6 v 3 17 c 0,1.1 0.9,2 2,2 z"
|
||||
fill="none" /><path
|
||||
id="path8-7"
|
||||
d="M 6 0 C 2.7000033 0 0 2.7000033 0 6 L 0 9 L 0 26 C 0 29.299997 2.7000033 32 6 32 L 26 32 C 29.299997 32 32 29.299997 32 26 L 32 9 L 32 6 C 32 2.7000033 29.299997 0 26 0 L 6 0 z M 6 4 L 26 4 C 27.099999 4 28 4.9000011 28 6 L 28 9 L 28 26 C 28 27.099999 27.099999 28 26 28 L 6 28 C 4.9000011 28 4 27.099999 4 26 L 4 9 L 4 6 C 4 4.9000011 4.9000011 4 6 4 z " /></g><path
|
||||
style="fill:#666666;fill-opacity:1;stroke:none;stroke-width:1"
|
||||
d="m 16,7.1611009 -8.793231,0.045668 -0.045668,8.7932321 9.575474,8.838898 8.102324,-8.102324 z m -3.682875,2.9463001 c 1.219769,0 2.209725,0.989956 2.209725,2.209725 0,1.219769 -0.989956,2.209725 -2.209725,2.209725 -1.219766,0 -2.209724,-0.989956 -2.209724,-2.209725 0,-1.219769 0.989958,-2.209725 2.209724,-2.209725"
|
||||
id="path6042" /></g></svg>
|
After Width: | Height: | Size: 1.5 KiB |
@ -34,5 +34,9 @@
|
||||
<file>scalable/status-yellow.svg</file>
|
||||
<file>scalable/viewfolder.svg</file>
|
||||
<file>scalable/worlds.svg</file>
|
||||
<file>scalable/delete.svg</file>
|
||||
<file>scalable/tag.svg</file>
|
||||
<file>scalable/export.svg</file>
|
||||
<file>scalable/rename.svg</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
|
70
launcher/resources/pe_light/scalable/delete.svg
Normal file
@ -0,0 +1,70 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Calque_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
viewBox="0 0 32 32"
|
||||
enable-background="new 0 0 32 32"
|
||||
xml:space="preserve"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><defs
|
||||
id="defs21">
|
||||
</defs>
|
||||
|
||||
<g
|
||||
id="g17358"
|
||||
transform="translate(0.73129773)"><rect
|
||||
style="fill:none;fill-opacity:1;stroke:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:markers stroke fill"
|
||||
id="rect15793"
|
||||
width="17.548431"
|
||||
height="20.8389"
|
||||
x="6.4944863"
|
||||
y="7.1611009" /><path
|
||||
d="M 18.455476,4.1064849 V 2.071966 c 0,-0.8979555 0.387777,-0.8011866 -2.488293,-0.8011866 h -1.397072 c -2.876069,0 -2.488293,-0.1289149 -2.488293,0.8011866 v 2.0345189"
|
||||
id="path10"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#f2f2f2;stroke-width:2;stroke-dasharray:none;stroke-opacity:1" /><g
|
||||
id="g2238"
|
||||
transform="translate(-0.9858234)"><path
|
||||
d="m 22.885931,26.821028 c -0.0782,1.097217 -0.9,1.178972 -2,1.178972 H 11.62312 c -1.1,0 -2.0000002,-0.07897 -2.0000002,-1.178972 L 8.2218981,7.1611009 H 4.2241361 L 5.6231198,26.821028 C 5.8573527,30.112705 8.3231198,32 11.62312,32 h 9.262811 c 3.3,0 5.765767,-1.887295 6,-5.178972 L 28.284915,7.1611009 h -3.997763 z"
|
||||
id="path12"
|
||||
style="fill:#f2f2f2;fill-opacity:1" /></g><rect
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:none;stroke-width:0.000000879999;stroke-linecap:round;stroke-linejoin:round"
|
||||
id="rect587"
|
||||
width="29.264914"
|
||||
height="3.9999995"
|
||||
x="0.63624543"
|
||||
y="3.2609999"
|
||||
rx="2.1756897"
|
||||
ry="1.9999998" /><g
|
||||
id="g72186"
|
||||
transform="matrix(1,0,0,0.89022438,-0.25830466,0.83279537)"
|
||||
style="stroke-width:1.05986"><g
|
||||
id="g92780"
|
||||
transform="translate(-0.2948263)"><g
|
||||
id="g92786"
|
||||
transform="translate(-0.39497401)"><g
|
||||
id="g24025"
|
||||
transform="matrix(1,0,0,1.4771202,-0.16968376,-9.6959051)"
|
||||
style="stroke-width:0.872052"><rect
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:none;stroke-width:3.49043;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:markers stroke fill"
|
||||
id="rect24019"
|
||||
width="2.1505656"
|
||||
height="10.38496"
|
||||
x="10.206384"
|
||||
y="14.677745"
|
||||
rx="1.0752828"
|
||||
ry="1.0752828"
|
||||
transform="matrix(0.99908133,-0.04285447,0.09318226,0.99564907,0,0)" /></g><g
|
||||
id="g72180"
|
||||
transform="matrix(-1,0,0,1.4771202,32.603298,-9.6959051)"
|
||||
style="stroke-width:0.872052"><rect
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:none;stroke-width:3.49043;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:markers stroke fill"
|
||||
id="rect72178"
|
||||
width="2.1505656"
|
||||
height="10.38496"
|
||||
x="10.206384"
|
||||
y="14.677745"
|
||||
rx="1.0752828"
|
||||
ry="1.0752828"
|
||||
transform="matrix(0.99908133,-0.04285447,0.09318226,0.99564907,0,0)" /></g></g></g></g></g></svg>
|
After Width: | Height: | Size: 3.2 KiB |
37
launcher/resources/pe_light/scalable/export.svg
Normal file
@ -0,0 +1,37 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Calque_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
viewBox="0 0 32 32"
|
||||
enable-background="new 0 0 32 32"
|
||||
xml:space="preserve"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><defs
|
||||
id="defs14" />
|
||||
<g
|
||||
id="g7954"><g
|
||||
id="g22579"><rect
|
||||
x="0"
|
||||
fill="none"
|
||||
width="32"
|
||||
height="32"
|
||||
id="rect22558"
|
||||
y="0" /><g
|
||||
id="g22566">
|
||||
<path
|
||||
fill="none"
|
||||
d="M 26,8 H 16 V 6 C 16,4.9 15.1,4 14,4 H 6 C 4.9,4 4,4.9 4,6 v 3 17 c 0,1.1 0.9,2 2,2 h 20 c 1.1,0 2,-0.9 2,-2 V 10 C 28,9.6 27.9,9.3 27.7,9 27.4,8.4 26.7,8 26,8 Z"
|
||||
id="path22560" />
|
||||
<path
|
||||
id="path22562"
|
||||
d="M 6 0 C 2.7000033 0 0 2.7000033 0 6 L 0 9 L 0 26 C 0 29.299997 2.7000033 32 6 32 L 26 32 C 29.299997 32 32 29.299997 32 26 L 32 10 C 32 9.7000003 32.000391 9.2999997 31.900391 9 C 31.400391 6.2000028 28.999997 4 26 4 L 19.599609 4 C 18.79961 1.7000023 16.599997 0 14 0 L 6 0 z M 6 4 L 14 4 C 15.099999 4 16 4.9000011 16 6 L 16 8 L 26 8 C 26.699999 8 27.399219 8.4000006 27.699219 9 C 27.899219 9.2999997 28 9.6000004 28 10 L 28 26 C 28 27.099999 27.099999 28 26 28 L 6 28 C 4.9000011 28 4 27.099999 4 26 L 4 9 L 4 6 C 4 4.9000011 4.9000011 4 6 4 z "
|
||||
style="fill:#f2f2f2;fill-opacity:1" />
|
||||
|
||||
</g></g><path
|
||||
fill-rule="evenodd"
|
||||
clip-rule="evenodd"
|
||||
d="m 19.283635,21.196352 c -0.312728,0.234545 -0.625454,0.312728 -0.938181,0.312728 -0.234546,0 -0.469091,-0.07819 -0.703637,-0.156365 -0.547272,-0.234544 -0.859999,-0.781818 -0.859999,-1.407271 v -1.485455 -0.07817 c -4.925453,0 -9.1472686,3.283635 -10.4763592,7.818178 C 5.9927316,25.18363 5.836368,24.167266 5.836368,23.07272 c 0,-6.019996 4.925452,-10.945449 10.94545,-10.945449 v -1.563635 c 0,-0.625454 0.312727,-1.172727 0.859999,-1.407272 C 17.876363,9.078184 18.110908,9 18.345454,9 c 0.312727,0 0.625453,0.07817 0.938181,0.312727 l 6.254542,4.690906 c 0.390909,0.312728 0.625455,0.781818 0.625455,1.250909 0,0.469092 -0.234546,0.938182 -0.625455,1.250908 z"
|
||||
id="path22733"
|
||||
style="stroke-width:1;fill:#cccccc;fill-opacity:1" /></g></svg>
|
After Width: | Height: | Size: 2.1 KiB |
@ -1,21 +1,53 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg width="64" height="64" version="1.1" viewBox="0 0 16.933 16.933" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<defs>
|
||||
<linearGradient id="linearGradient84726" x1="4.4979" x2="12.435" y1="3.8011" y2="9.5681" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#dedede" offset="0"/>
|
||||
<stop stop-color="#d2d2d2" offset=".5"/>
|
||||
<stop stop-color="#c0c0c0" offset="1"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<g>
|
||||
<path d="m3.561 16.016s0-3.5642 4.9056-3.5642c4.9069 0 4.9056 3.5642 4.9056 3.5642z" fill="#8f8f8f"/>
|
||||
<path d="m8.4667 12.452-4.9056 3.5642-3.0319-9.3311z" fill="#c2c2c2"/>
|
||||
<path d="m8.4667 12.452 7.9375-5.7669-3.0319 9.3311z" fill="#7c7c7c"/>
|
||||
<path d="m8.8308 12.716-0.36417 0.26458-0.36417-0.26458c0-0.26458 0.36417-0.26458 0.36417-0.26458s0.36417 0 0.36417 0.26458z" fill="#d3d3d3"/>
|
||||
<path d="m8.4667 12.452s-2e-7 -5.7669 7.9375-5.7669l-0.22507 0.69269-0.91853 1.1965-0.91853 0.13819-0.91853 1.1965-0.91853 0.13819-0.91853 1.1965-0.91853 0.13819-0.91853 1.1965-0.91853 0.13819z" fill="#bcbcbc"/>
|
||||
<path d="m8.1025 12.716-0.91853-0.13819-0.91853-1.1965-0.91853-0.13819-0.91853-1.1965-0.91853-0.13819-0.91853-1.1965-0.91853-0.13819-0.91853-1.1965-0.22507-0.69269c7.9375 1e-7 7.9375 5.7669 7.9375 5.7669z" fill="#dedede"/>
|
||||
<path d="m0.52917 6.6846 7.9375 5.7669 7.9375-5.7669-7.9375-5.7669z" fill="url(#linearGradient84726)"/>
|
||||
<svg width="48" height="48" version="1.1" viewBox="0 0 12.7 12.7" xmlns="http://www.w3.org/2000/svg" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
|
||||
<title>Prism Launcher Logo</title>
|
||||
<g stroke-width=".26458">
|
||||
<path d="m6.35 6.35" fill="#99cd61"/>
|
||||
<path d="m6.35 0.52917-2.5208 4.3656 2.5208 1.4552 2.5203-1.4552 0.10955-3.0996c-1.1511-0.66459-2.3388-1.2661-2.6298-1.2661z" fill="#df6277"/>
|
||||
<path d="m8.9798 1.7952-2.6298 4.5548 2.5203 1.4552 2.5208-4.3656c-0.14552-0.25205-1.2601-0.97975-2.4112-1.6443z" fill="#fb9168"/>
|
||||
<path d="m11.391 3.4396-5.041 2.9104 2.5203 1.4552 2.7389-1.4552c0-1.3292-0.072554-2.6584-0.21808-2.9104z" fill="#f3db6c"/>
|
||||
<path d="m6.35 6.35v2.9104h5.041c0.14552-0.25205 0.21807-1.5812 0.21808-2.9104h-5.2591z" fill="#7ab392"/>
|
||||
<path d="m6.35 6.35v2.9104l2.6298 1.6443c1.1511-0.66459 2.2657-1.3923 2.4112-1.6443l-5.041-2.9104z" fill="#4b7cbc"/>
|
||||
<path d="m6.35 6.35-2.5208 1.4552 2.5208 4.3656c0.29104 0 1.4787-0.60148 2.6298-1.2661l-2.6298-4.5548z" fill="#6f488c"/>
|
||||
<path d="m3.8292 4.8948-2.5203 4.3656c0.29104 0.5041 4.459 2.9104 5.041 2.9104v-5.8208l-2.5208-1.4552z" fill="#4d3f33"/>
|
||||
<path d="m1.309 3.4396c-0.29104 0.5041-0.29104 5.3167 0 5.8208l5.041-2.9104v-2.9104h-5.041z" fill="#7a573b"/>
|
||||
<path d="m6.35 0.52917c-0.58208-2e-8 -4.75 2.4063-5.041 2.9104l5.041 2.9104v-5.8208z" fill="#99cd61"/>
|
||||
</g>
|
||||
<path d="m0.75424 7.3773-0.22507-0.69269 7.9375 5.7669 7.9375-5.7669-0.22507 0.69269-7.7124 5.6034z" fill-opacity="0"/>
|
||||
<g transform="matrix(.88 0 0 .88 -10.906 -1.2421)">
|
||||
<g transform="translate(13.26 2.2776)">
|
||||
<path transform="matrix(.96975 0 0 .96975 .1921 .1921)" d="m6.3498 2.9393c-0.34105 0-2.7827 1.4099-2.9532 1.7052l2.9532 5.1157 2.9538-5.1157c-0.17052-0.29535-2.6127-1.7052-2.9538-1.7052z" fill="#fff" stroke-width=".26458"/>
|
||||
</g>
|
||||
<path d="m16.746 6.9737 2.8639 4.9609c0.33073 0 2.6991-1.3672 2.8644-1.6536 0.16536-0.28642 0.16536-3.0209 0-3.3073l-2.8644 1.6536z" fill="#dfdfdf" stroke-width=".26458"/>
|
||||
</g>
|
||||
<path d="m3.8299 4.8948c-0.14551 0.25205-0.14553 2.6584 0 2.9104 0.14553 0.25204 2.2292 1.4552 2.5203 1.4552v-2.9104z" fill="#d6d2d2" stroke-width=".26458"/>
|
||||
<metadata>
|
||||
<rdf:RDF>
|
||||
<cc:Work rdf:about="">
|
||||
<dc:title>Prism Launcher Logo</dc:title>
|
||||
<dc:date>19/10/2022</dc:date>
|
||||
<dc:creator>
|
||||
<cc:Agent>
|
||||
<dc:title>Prism Launcher</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:creator>
|
||||
<dc:contributor>
|
||||
<cc:Agent>
|
||||
<dc:title>AutiOne, Boba, ely, Fulmine, gon sawa, Pankakes, tobimori, Zeke</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:contributor>
|
||||
<dc:source>https://github.com/PrismLauncher/PrismLauncher</dc:source>
|
||||
<dc:rights>
|
||||
<cc:Agent>
|
||||
<dc:title>CC BY-SA 4.0</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:rights>
|
||||
<dc:publisher>
|
||||
<cc:Agent>
|
||||
<dc:title>Prism Launcher</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:publisher>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 2.9 KiB |
19
launcher/resources/pe_light/scalable/rename.svg
Normal file
@ -0,0 +1,19 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Calque_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
viewBox="0 0 32 32"
|
||||
enable-background="new 0 0 32 32"
|
||||
xml:space="preserve"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><defs
|
||||
id="defs38" />
|
||||
<g
|
||||
id="g70305"
|
||||
transform="matrix(0.87995311,0.87998288,-0.87995311,0.87998288,15.409106,-7.1812248)"
|
||||
style="stroke-width:0.80356;fill:#4d4d4d;fill-opacity:1"><path
|
||||
id="path66642"
|
||||
style="fill:#4d4d4d;stroke:#ffffff;stroke-width:3.21424;stroke-linecap:butt;stroke-linejoin:round;fill-opacity:1"
|
||||
d="M 10.272393,0.15880016 C 9.9282548,0.48303193 9.701946,1.0320027 9.701946,1.6547804 l 7.713e-4,20.0058326 2.7787647,5.932786 c 0.483272,1.031938 1.566339,1.032889 2.049746,0.0011 l 2.780076,-5.93399 0.0014,-20.0058323 c 0,-0.99644441 -0.579446,-1.80446494 -1.293962,-1.80446494 l -5.022821,8.497e-5 c -0.267943,0 -0.517093,0.11398937 -0.723576,0.30852843 z" /></g></svg>
|
After Width: | Height: | Size: 995 B |
23
launcher/resources/pe_light/scalable/tag.svg
Normal file
@ -0,0 +1,23 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Calque_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
viewBox="0 0 32 32"
|
||||
enable-background="new 0 0 32 32"
|
||||
xml:space="preserve"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><defs
|
||||
id="defs45" />
|
||||
|
||||
<path
|
||||
id="path6"
|
||||
d="m 6,28 h 20 c 1.1,0 2,-0.9 2,-2 V 9 6 C 28,4.9 27.1,4 26,4 H 6 C 4.9,4 4,4.9 4,6 v 3 17 c 0,1.1 0.9,2 2,2 z"
|
||||
fill="none" /><path
|
||||
id="path8-7"
|
||||
d="M 6,0 C 2.7000033,0 0,2.7000033 0,6 v 3 17 c 0,3.299997 2.7000033,6 6,6 h 20 c 3.299997,0 6,-2.700003 6,-6 V 9 6 C 32,2.7000033 29.299997,0 26,0 Z m 0,4 h 20 c 1.099999,0 2,0.9000011 2,2 v 3 17 c 0,1.099999 -0.900001,2 -2,2 H 6 C 4.9000011,28 4,27.099999 4,26 V 9 6 C 4,4.9000011 4.9000011,4 6,4 Z"
|
||||
style="fill:#f2f2f2;fill-opacity:1" /><path
|
||||
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1"
|
||||
d="m 16,7.1611009 -8.793231,0.045668 -0.045668,8.7932321 9.575474,8.838898 8.102324,-8.102324 z m -3.682875,2.9463001 c 1.219769,0 2.209725,0.989956 2.209725,2.209725 0,1.219769 -0.989956,2.209725 -2.209725,2.209725 -1.219766,0 -2.209724,-0.989956 -2.209724,-2.209725 0,-1.219769 0.989958,-2.209725 2.209724,-2.209725"
|
||||
id="path6042" /></svg>
|
After Width: | Height: | Size: 1.2 KiB |
@ -16,7 +16,30 @@
|
||||
#include "INISettingsObject.h"
|
||||
#include "Setting.h"
|
||||
|
||||
INISettingsObject::INISettingsObject(const QString &path, QObject *parent)
|
||||
#include <QDebug>
|
||||
#include <QFile>
|
||||
|
||||
INISettingsObject::INISettingsObject(QStringList paths, QObject *parent)
|
||||
: SettingsObject(parent)
|
||||
{
|
||||
auto first_path = paths.constFirst();
|
||||
for (auto path : paths) {
|
||||
if (!QFile::exists(path))
|
||||
continue;
|
||||
|
||||
if (path != first_path && QFile::exists(path)) {
|
||||
// Copy the fallback to the preferred path.
|
||||
QFile::copy(path, first_path);
|
||||
qDebug() << "Copied settings from" << path << "to" << first_path;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
m_filePath = first_path;
|
||||
m_ini.loadFile(first_path);
|
||||
}
|
||||
|
||||
INISettingsObject::INISettingsObject(QString path, QObject* parent)
|
||||
: SettingsObject(parent)
|
||||
{
|
||||
m_filePath = path;
|
||||
|
@ -28,7 +28,10 @@ class INISettingsObject : public SettingsObject
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit INISettingsObject(const QString &path, QObject *parent = 0);
|
||||
/** 'paths' is a list of INI files to try, in order, for fallback support. */
|
||||
explicit INISettingsObject(QStringList paths, QObject* parent = nullptr);
|
||||
|
||||
explicit INISettingsObject(QString path, QObject* parent = nullptr);
|
||||
|
||||
/*!
|
||||
* \brief Gets the path to the INI file.
|
||||
|
@ -33,7 +33,7 @@ public:
|
||||
* Construct a Setting
|
||||
*
|
||||
* Synonyms are all the possible names used in the settings object, in order of preference.
|
||||
* First synonym is the ID, which identifies the setting in PolyMC.
|
||||
* First synonym is the ID, which identifies the setting in Prism Launcher.
|
||||
*
|
||||
* defVal is the default value that will be returned when the settings object
|
||||
* doesn't have any value for this setting.
|
||||
|
@ -643,6 +643,7 @@ public:
|
||||
actionRenameInstance->setObjectName(QStringLiteral("actionRenameInstance"));
|
||||
actionRenameInstance.setTextId(QT_TRANSLATE_NOOP("MainWindow", "Rename"));
|
||||
actionRenameInstance.setTooltipId(QT_TRANSLATE_NOOP("MainWindow", "Rename the selected instance."));
|
||||
actionRenameInstance->setIcon(APPLICATION->getThemedIcon("rename"));
|
||||
all_actions.append(&actionRenameInstance);
|
||||
|
||||
// the rename label is inside the rename tool button
|
||||
@ -675,6 +676,7 @@ public:
|
||||
actionKillInstance.setTextId(QT_TRANSLATE_NOOP("MainWindow", "&Kill"));
|
||||
actionKillInstance.setTooltipId(QT_TRANSLATE_NOOP("MainWindow", "Kill the running instance"));
|
||||
actionKillInstance->setShortcut(QKeySequence(tr("Ctrl+K")));
|
||||
actionKillInstance->setIcon(APPLICATION->getThemedIcon("status-bad"));
|
||||
all_actions.append(&actionKillInstance);
|
||||
|
||||
actionEditInstance = TranslatedAction(MainWindow);
|
||||
@ -682,6 +684,7 @@ public:
|
||||
actionEditInstance.setTextId(QT_TRANSLATE_NOOP("MainWindow", "&Edit..."));
|
||||
actionEditInstance.setTooltipId(QT_TRANSLATE_NOOP("MainWindow", "Change the instance settings, mods and versions."));
|
||||
actionEditInstance->setShortcut(QKeySequence(tr("Ctrl+I")));
|
||||
actionEditInstance->setIcon(APPLICATION->getThemedIcon("settings-configure"));
|
||||
all_actions.append(&actionEditInstance);
|
||||
|
||||
actionChangeInstGroup = TranslatedAction(MainWindow);
|
||||
@ -689,12 +692,14 @@ public:
|
||||
actionChangeInstGroup.setTextId(QT_TRANSLATE_NOOP("MainWindow", "&Change Group..."));
|
||||
actionChangeInstGroup.setTooltipId(QT_TRANSLATE_NOOP("MainWindow", "Change the selected instance's group."));
|
||||
actionChangeInstGroup->setShortcut(QKeySequence(tr("Ctrl+G")));
|
||||
actionChangeInstGroup->setIcon(APPLICATION->getThemedIcon("tag"));
|
||||
all_actions.append(&actionChangeInstGroup);
|
||||
|
||||
actionViewSelectedInstFolder = TranslatedAction(MainWindow);
|
||||
actionViewSelectedInstFolder->setObjectName(QStringLiteral("actionViewSelectedInstFolder"));
|
||||
actionViewSelectedInstFolder.setTextId(QT_TRANSLATE_NOOP("MainWindow", "&Folder"));
|
||||
actionViewSelectedInstFolder.setTooltipId(QT_TRANSLATE_NOOP("MainWindow", "Open the selected instance's root folder in a file browser."));
|
||||
actionViewSelectedInstFolder->setIcon(APPLICATION->getThemedIcon("viewfolder"));
|
||||
all_actions.append(&actionViewSelectedInstFolder);
|
||||
|
||||
actionExportInstance = TranslatedAction(MainWindow);
|
||||
@ -702,6 +707,7 @@ public:
|
||||
actionExportInstance.setTextId(QT_TRANSLATE_NOOP("MainWindow", "E&xport..."));
|
||||
actionExportInstance.setTooltipId(QT_TRANSLATE_NOOP("MainWindow", "Export the selected instance as a zip file."));
|
||||
actionExportInstance->setShortcut(QKeySequence(tr("Ctrl+E")));
|
||||
actionExportInstance->setIcon(APPLICATION->getThemedIcon("export"));
|
||||
all_actions.append(&actionExportInstance);
|
||||
|
||||
actionDeleteInstance = TranslatedAction(MainWindow);
|
||||
@ -710,14 +716,15 @@ public:
|
||||
actionDeleteInstance.setTooltipId(QT_TRANSLATE_NOOP("MainWindow", "Delete the selected instance."));
|
||||
actionDeleteInstance->setShortcuts({QKeySequence(tr("Backspace")), QKeySequence::Delete});
|
||||
actionDeleteInstance->setAutoRepeat(false);
|
||||
actionDeleteInstance->setIcon(APPLICATION->getThemedIcon("delete"));
|
||||
all_actions.append(&actionDeleteInstance);
|
||||
|
||||
actionCopyInstance = TranslatedAction(MainWindow);
|
||||
actionCopyInstance->setObjectName(QStringLiteral("actionCopyInstance"));
|
||||
actionCopyInstance->setIcon(APPLICATION->getThemedIcon("copy"));
|
||||
actionCopyInstance.setTextId(QT_TRANSLATE_NOOP("MainWindow", "Cop&y..."));
|
||||
actionCopyInstance.setTooltipId(QT_TRANSLATE_NOOP("MainWindow", "Copy the selected instance."));
|
||||
actionCopyInstance->setShortcut(QKeySequence(tr("Ctrl+D")));
|
||||
actionCopyInstance->setIcon(APPLICATION->getThemedIcon("copy"));
|
||||
all_actions.append(&actionCopyInstance);
|
||||
|
||||
setInstanceActionsEnabled(false);
|
||||
@ -1860,7 +1867,7 @@ void MainWindow::globalSettingsClosed()
|
||||
updateToolsMenu();
|
||||
updateStatusCenter();
|
||||
// This needs to be done to prevent UI elements disappearing in the event the config is changed
|
||||
// but PolyMC exits abnormally, causing the window state to never be saved:
|
||||
// but Prism Launcher exits abnormally, causing the window state to never be saved:
|
||||
APPLICATION->settings()->set("MainWindowState", saveState().toBase64());
|
||||
update();
|
||||
}
|
||||
|
@ -69,7 +69,7 @@ QString getCreditsHtml()
|
||||
#endif
|
||||
stream << "<center>\n";
|
||||
|
||||
//: %1 is the name of the launcher, determined at build time, e.g. "PolyMC Developers"
|
||||
//: %1 is the name of the launcher, determined at build time, e.g. "Prism Launcher Developers"
|
||||
stream << "<h3>" << QObject::tr("%1 Developers", "About Credits").arg(BuildConfig.LAUNCHER_DISPLAYNAME) << "</h3>\n";
|
||||
stream << QString("<p>Sefa Eyeoglu (Scrumplex) %1</p>\n") .arg(getWebsite("https://scrumplex.net"));
|
||||
stream << QString("<p>dada513 %1</p>\n") .arg(getGitHub("dada513"));
|
||||
@ -79,15 +79,15 @@ QString getCreditsHtml()
|
||||
stream << QString("<p>cozyGalvinism %1</p>\n") .arg(getGitHub("cozyGalvinism"));
|
||||
stream << "<br />\n";
|
||||
|
||||
//: %1 is the name of the launcher, determined at build time, e.g. "PolyMC Contributors"
|
||||
//: %1 is the name of the launcher, determined at build time, e.g. "Prism Launcher Contributors"
|
||||
stream << "<h3>" << QObject::tr("%1 Contributors", "About Credits").arg(BuildConfig.LAUNCHER_DISPLAYNAME) << "</h3>\n";
|
||||
stream << QString("<p>DioEgizio %1</p>\n") .arg(getGitHub("DioEgizio"));
|
||||
stream << QString("<p>flowln %1</p>\n") .arg(getGitHub("flowln"));
|
||||
stream << QString("<p>swirl %1</p>\n") .arg(getWebsite("https://swurl.xyz/"));
|
||||
stream << QString("<p>DioEgizio %1</p>\n") .arg(getGitHub("DioEgizio"));
|
||||
stream << QString("<p>flowln %1</p>\n") .arg(getGitHub("flowln"));
|
||||
stream << QString("<p>swirl %1</p>\n") .arg(getWebsite("https://swurl.xyz/"));
|
||||
stream << "<br />\n";
|
||||
|
||||
// TODO: possibly retrieve from git history at build time?
|
||||
//: %1 is the name of the launcher, determined at build time, e.g. "PolyMC Developers"
|
||||
//: %1 is the name of the launcher, determined at build time, e.g. "Prism Launcher Developers"
|
||||
stream << "<h3>" << QObject::tr("%1 Developers", "About Credits").arg("MultiMC") << "</h3>\n";
|
||||
stream << "<p>Andrew Okin <<a href='mailto:forkk@forkk.net'>forkk@forkk.net</a>></p>\n";
|
||||
stream << QString("<p>Petr Mrázek <<a href='mailto:peterix@gmail.com'>peterix@gmail.com</a>></p>\n");
|
||||
@ -97,12 +97,20 @@ QString getCreditsHtml()
|
||||
stream << "<br />\n";
|
||||
|
||||
stream << "<h3>" << QObject::tr("With thanks to", "About Credits") << "</h3>\n";
|
||||
stream << QString("<p>Boba %1</p>\n") .arg(getWebsite("https://cmdplusv.neocities.org/"));
|
||||
stream << QString("<p>Davi Rafael %1</p>\n") .arg(getWebsite("https://auti.one/"));
|
||||
stream << QString("<p>Fulmine %1</p>\n") .arg(getWebsite("https://www.fulmine.xyz/"));
|
||||
stream << QString("<p>ely %1</p>\n") .arg(getGitHub("elyrodso"));
|
||||
stream << QString("<p>gon sawa %1</p>\n") .arg(getGitHub("gonsawa"));
|
||||
stream << QString("<p>Pankakes</p>\n");
|
||||
stream << QString("<p>tobimori %1</p>\n") .arg(getGitHub("tobimori"));
|
||||
stream << "<p>Orochimarufan <<a href='mailto:orochimarufan.x3@gmail.com'>orochimarufan.x3@gmail.com</a>></p>\n";
|
||||
stream << "<p>TakSuyu <<a href='mailto:taksuyu@gmail.com'>taksuyu@gmail.com</a>></p>\n";
|
||||
stream << "<p>Kilobyte <<a href='mailto:stiepen22@gmx.de'>stiepen22@gmx.de</a>></p>\n";
|
||||
stream << "<p>Rootbear75 <<a href='https://twitter.com/rootbear75'>@rootbear75</a>></p>\n";
|
||||
stream << "<p>Zeker Zhayard <<a href='https://twitter.com/zeker_zhayard'>@Zeker_Zhayard</a>></p>\n";
|
||||
stream << "<p>Everyone else who <a href='https://github.com/PolyMC/PolyMC/graphs/contributors'>contributed</a>!</p>\n";
|
||||
stream << "<p>Everyone who helped establish our branding!</p>\n";
|
||||
stream << "<p>And everyone else who <a href='https://github.com/PrismLauncher/PrismLauncher/graphs/contributors'>contributed</a>!</p>\n";
|
||||
stream << "<br />\n";
|
||||
|
||||
stream << "</center>\n";
|
||||
@ -164,7 +172,7 @@ AboutDialog::AboutDialog(QWidget *parent) : QDialog(parent), ui(new Ui::AboutDia
|
||||
QString urlText("<html><head/><body><p><a href=\"%1\">%1</a></p></body></html>");
|
||||
ui->urlLabel->setText(urlText.arg(BuildConfig.LAUNCHER_GIT));
|
||||
|
||||
QString copyText("© 2021-2022 %1");
|
||||
QString copyText("© 2022 %1");
|
||||
ui->copyLabel->setText(copyText.arg(BuildConfig.LAUNCHER_COPYRIGHT));
|
||||
|
||||
connect(ui->closeButton, SIGNAL(clicked()), SLOT(close()));
|
||||
|
@ -139,6 +139,10 @@ NewInstanceDialog::NewInstanceDialog(const QString & initialGroup, const QString
|
||||
void NewInstanceDialog::reject()
|
||||
{
|
||||
APPLICATION->settings()->set("NewInstanceGeometry", saveGeometry().toBase64());
|
||||
|
||||
// This is just so that the pages get the close() call and can react to it, if needed.
|
||||
m_container->prepareToClose();
|
||||
|
||||
QDialog::reject();
|
||||
}
|
||||
|
||||
@ -146,6 +150,10 @@ void NewInstanceDialog::accept()
|
||||
{
|
||||
APPLICATION->settings()->set("NewInstanceGeometry", saveGeometry().toBase64());
|
||||
importIconNow();
|
||||
|
||||
// This is just so that the pages get the close() call and can react to it, if needed.
|
||||
m_container->prepareToClose();
|
||||
|
||||
QDialog::accept();
|
||||
}
|
||||
|
||||
|
@ -20,7 +20,9 @@ NewsDialog::NewsDialog(QList<NewsEntryPtr> entries, QWidget* parent) : QDialog(p
|
||||
|
||||
auto article_entry = m_entries.constFind(first_item->text()).value();
|
||||
ui->articleTitleLabel->setText(QString("<a href='%1'>%2</a>").arg(article_entry->link, first_item->text()));
|
||||
|
||||
ui->currentArticleContentBrowser->setText(article_entry->content);
|
||||
ui->currentArticleContentBrowser->flush();
|
||||
}
|
||||
|
||||
NewsDialog::~NewsDialog()
|
||||
@ -33,7 +35,9 @@ void NewsDialog::selectedArticleChanged(const QString& new_title)
|
||||
auto const& article_entry = m_entries.constFind(new_title).value();
|
||||
|
||||
ui->articleTitleLabel->setText(QString("<a href='%1'>%2</a>").arg(article_entry->link, new_title));
|
||||
|
||||
ui->currentArticleContentBrowser->setText(article_entry->content);
|
||||
ui->currentArticleContentBrowser->flush();
|
||||
}
|
||||
|
||||
void NewsDialog::toggleArticleList()
|
||||
|
@ -49,7 +49,7 @@
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QTextBrowser" name="currentArticleContentBrowser">
|
||||
<widget class="ProjectDescriptionPage" name="currentArticleContentBrowser">
|
||||
<property name="textInteractionFlags">
|
||||
<set>Qt::LinksAccessibleByKeyboard|Qt::LinksAccessibleByMouse|Qt::TextBrowserInteraction|Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse</set>
|
||||
</property>
|
||||
@ -91,6 +91,13 @@
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>ProjectDescriptionPage</class>
|
||||
<extends>QTextBrowser</extends>
|
||||
<header>ui/widgets/ProjectDescriptionPage.h</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources/>
|
||||
<connections>
|
||||
<connection>
|
||||
|
@ -25,6 +25,7 @@ ProgressDialog::ProgressDialog(QWidget* parent) : QDialog(parent), ui(new Ui::Pr
|
||||
{
|
||||
ui->setupUi(this);
|
||||
this->setWindowFlags(this->windowFlags() & ~Qt::WindowContextHelpButtonHint);
|
||||
setAttribute(Qt::WidgetAttribute::WA_QuitOnClose, true);
|
||||
setSkipButton(false);
|
||||
changeProgress(0, 100);
|
||||
}
|
||||
@ -67,7 +68,7 @@ int ProgressDialog::execWithTask(Task* task)
|
||||
return QDialog::DialogCode::Accepted;
|
||||
}
|
||||
|
||||
QDialog::DialogCode result;
|
||||
QDialog::DialogCode result {};
|
||||
if (handleImmediateResult(result)) {
|
||||
return result;
|
||||
}
|
||||
@ -80,7 +81,7 @@ int ProgressDialog::execWithTask(Task* task)
|
||||
connect(task, &Task::stepStatus, this, &ProgressDialog::changeStatus);
|
||||
connect(task, &Task::progress, this, &ProgressDialog::changeProgress);
|
||||
|
||||
connect(task, &Task::aborted, [this] { QDialog::reject(); });
|
||||
connect(task, &Task::aborted, this, &ProgressDialog::hide);
|
||||
connect(task, &Task::abortStatusChanged, ui->skipButton, &QPushButton::setEnabled);
|
||||
|
||||
m_is_multi_step = task->isMultiStep();
|
||||
@ -135,11 +136,13 @@ void ProgressDialog::onTaskStarted() {}
|
||||
void ProgressDialog::onTaskFailed(QString failure)
|
||||
{
|
||||
reject();
|
||||
hide();
|
||||
}
|
||||
|
||||
void ProgressDialog::onTaskSucceeded()
|
||||
{
|
||||
accept();
|
||||
hide();
|
||||
}
|
||||
|
||||
void ProgressDialog::changeStatus(const QString& status)
|
||||
|
@ -73,12 +73,12 @@ void UpdateDialog::loadChangelog()
|
||||
QString url;
|
||||
if(channel == "stable")
|
||||
{
|
||||
url = QString("https://raw.githubusercontent.com/PolyMC/PolyMC/%1/changelog.md").arg(channel);
|
||||
url = QString("https://raw.githubusercontent.com/PrismLauncher/PrismLauncher/%1/changelog.md").arg(channel);
|
||||
m_changelogType = CHANGELOG_MARKDOWN;
|
||||
}
|
||||
else
|
||||
{
|
||||
url = QString("https://api.github.com/repos/PolyMC/PolyMC/compare/%1...%2").arg(BuildConfig.GIT_COMMIT, channel);
|
||||
url = QString("https://api.github.com/repos/PrismLauncher/PrismLauncher/compare/%1...%2").arg(BuildConfig.GIT_COMMIT, channel);
|
||||
m_changelogType = CHANGELOG_COMMITS;
|
||||
}
|
||||
dljob->addNetAction(Net::Download::makeByteArray(QUrl(url), &changelogData));
|
||||
@ -93,7 +93,7 @@ QString reprocessMarkdown(QByteArray markdown)
|
||||
QString output = hoedown.process(markdown);
|
||||
|
||||
// HACK: easier than customizing hoedown
|
||||
output.replace(QRegularExpression("GH-([0-9]+)"), "<a href=\"https://github.com/PolyMC/PolyMC/issues/\\1\">GH-\\1</a>");
|
||||
output.replace(QRegularExpression("GH-([0-9]+)"), "<a href=\"https://github.com/PrismLauncher/PrismLauncher/issues/\\1\">GH-\\1</a>");
|
||||
qDebug() << output;
|
||||
return output;
|
||||
}
|
||||
@ -135,7 +135,7 @@ QString reprocessCommits(QByteArray json)
|
||||
result += "<tr><td>";
|
||||
if(issuenr.length())
|
||||
{
|
||||
result += QString("<a href=\"https://github.com/PolyMC/PolyMC/issues/%1\">GH-%2</a>").arg(issuenr, issuenr);
|
||||
result += QString("<a href=\"https://github.com/PrismLauncher/PrismLauncher/issues/%1\">GH-%2</a>").arg(issuenr, issuenr);
|
||||
}
|
||||
else if(prefix.length())
|
||||
{
|
||||
|
@ -147,7 +147,7 @@ void LauncherPage::on_instDirBrowseBtn_clicked()
|
||||
{
|
||||
QMessageBox warning;
|
||||
warning.setText(tr("You're trying to specify an instance folder "
|
||||
"which was granted temporaily via Flatpak.\n"
|
||||
"which was granted temporarily via Flatpak.\n"
|
||||
"This is known to cause problems. "
|
||||
"After a restart the launcher might break, "
|
||||
"because it will no longer have access to that directory.\n\n"
|
||||
|
@ -103,10 +103,6 @@ void ExternalResourcesPage::runningStateChanged(bool running)
|
||||
return;
|
||||
|
||||
m_controlsEnabled = !running;
|
||||
ui->actionAddItem->setEnabled(m_controlsEnabled);
|
||||
ui->actionDisableItem->setEnabled(m_controlsEnabled);
|
||||
ui->actionEnableItem->setEnabled(m_controlsEnabled);
|
||||
ui->actionRemoveItem->setEnabled(m_controlsEnabled);
|
||||
}
|
||||
|
||||
bool ExternalResourcesPage::shouldDisplay() const
|
||||
|
@ -117,6 +117,10 @@ void ModFolderPage::runningStateChanged(bool running)
|
||||
ExternalResourcesPage::runningStateChanged(running);
|
||||
ui->actionDownloadItem->setEnabled(!running);
|
||||
ui->actionUpdateItem->setEnabled(!running);
|
||||
ui->actionAddItem->setEnabled(!running);
|
||||
ui->actionEnableItem->setEnabled(!running);
|
||||
ui->actionDisableItem->setEnabled(!running);
|
||||
ui->actionRemoveItem->setEnabled(!running);
|
||||
}
|
||||
|
||||
bool ModFolderPage::shouldDisplay() const
|
||||
|
@ -352,4 +352,5 @@ void ModPage::updateUi()
|
||||
|
||||
HoeDown h;
|
||||
ui->packDescription->setHtml(text + (current.extraData.body.isEmpty() ? current.description : h.process(current.extraData.body.toUtf8())));
|
||||
ui->packDescription->flush();
|
||||
}
|
||||
|
@ -14,7 +14,7 @@
|
||||
<item row="1" column="0" colspan="4">
|
||||
<layout class="QGridLayout" name="gridLayout_3">
|
||||
<item row="1" column="2">
|
||||
<widget class="QTextBrowser" name="packDescription">
|
||||
<widget class="ProjectDescriptionPage" name="packDescription">
|
||||
<property name="openExternalLinks">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
@ -98,6 +98,13 @@
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>ProjectDescriptionPage</class>
|
||||
<extends>QTextBrowser</extends>
|
||||
<header>ui/widgets/ProjectDescriptionPage.h</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<tabstops>
|
||||
<tabstop>searchEdit</tabstop>
|
||||
<tabstop>searchButton</tabstop>
|
||||
|
@ -43,10 +43,13 @@ AtlUserInteractionSupportImpl::AtlUserInteractionSupportImpl(QWidget *parent) :
|
||||
{
|
||||
}
|
||||
|
||||
QVector<QString> AtlUserInteractionSupportImpl::chooseOptionalMods(ATLauncher::PackVersion version, QVector<ATLauncher::VersionMod> mods)
|
||||
std::optional<QVector<QString>> AtlUserInteractionSupportImpl::chooseOptionalMods(ATLauncher::PackVersion version, QVector<ATLauncher::VersionMod> mods)
|
||||
{
|
||||
AtlOptionalModDialog optionalModDialog(m_parent, version, mods);
|
||||
optionalModDialog.exec();
|
||||
auto result = optionalModDialog.exec();
|
||||
if (result == QDialog::Rejected) {
|
||||
return {};
|
||||
}
|
||||
return optionalModDialog.getResult();
|
||||
}
|
||||
|
||||
|
@ -47,7 +47,7 @@ public:
|
||||
|
||||
private:
|
||||
QString chooseVersion(Meta::VersionListPtr vlist, QString minecraftVersion) override;
|
||||
QVector<QString> chooseOptionalMods(ATLauncher::PackVersion version, QVector<ATLauncher::VersionMod> mods) override;
|
||||
std::optional<QVector<QString>> chooseOptionalMods(ATLauncher::PackVersion version, QVector<ATLauncher::VersionMod> mods) override;
|
||||
void displayMessage(QString message) override;
|
||||
|
||||
private:
|
||||
|
@ -59,6 +59,8 @@ FlameModPage::FlameModPage(ModDownloadDialog* dialog, BaseInstance* instance)
|
||||
connect(ui->packView->selectionModel(), &QItemSelectionModel::currentChanged, this, &FlameModPage::onSelectionChanged);
|
||||
connect(ui->versionSelectionBox, &QComboBox::currentTextChanged, this, &FlameModPage::onVersionSelectionChanged);
|
||||
connect(ui->modSelectionButton, &QPushButton::clicked, this, &FlameModPage::onModSelected);
|
||||
|
||||
ui->packDescription->setMetaEntry(metaEntryBase());
|
||||
}
|
||||
|
||||
auto FlameModPage::validateVersion(ModPlatform::IndexedVersion& ver, QString mineVer, ModAPI::ModLoaderTypes loaders) const -> bool
|
||||
|
@ -1,6 +1,7 @@
|
||||
#include "FlameModel.h"
|
||||
#include <Json.h>
|
||||
#include "Application.h"
|
||||
#include "ui/widgets/ProjectItem.h"
|
||||
|
||||
#include <MMCStrings.h>
|
||||
#include <Version.h>
|
||||
@ -31,29 +32,38 @@ QVariant ListModel::data(const QModelIndex& index, int role) const
|
||||
}
|
||||
|
||||
IndexedPack pack = modpacks.at(pos);
|
||||
if (role == Qt::DisplayRole) {
|
||||
return pack.name;
|
||||
} else if (role == Qt::ToolTipRole) {
|
||||
if (pack.description.length() > 100) {
|
||||
// some magic to prevent to long tooltips and replace html linebreaks
|
||||
QString edit = pack.description.left(97);
|
||||
edit = edit.left(edit.lastIndexOf("<br>")).left(edit.lastIndexOf(" ")).append("...");
|
||||
return edit;
|
||||
switch (role) {
|
||||
case Qt::ToolTipRole: {
|
||||
if (pack.description.length() > 100) {
|
||||
// some magic to prevent to long tooltips and replace html linebreaks
|
||||
QString edit = pack.description.left(97);
|
||||
edit = edit.left(edit.lastIndexOf("<br>")).left(edit.lastIndexOf(" ")).append("...");
|
||||
return edit;
|
||||
}
|
||||
return pack.description;
|
||||
} case Qt::DecorationRole: {
|
||||
if (m_logoMap.contains(pack.logoName)) {
|
||||
return (m_logoMap.value(pack.logoName));
|
||||
}
|
||||
QIcon icon = APPLICATION->getThemedIcon("screenshot-placeholder");
|
||||
((ListModel*)this)->requestLogo(pack.logoName, pack.logoUrl);
|
||||
return icon;
|
||||
} case Qt::UserRole: {
|
||||
QVariant v;
|
||||
v.setValue(pack);
|
||||
return v;
|
||||
}
|
||||
return pack.description;
|
||||
} else if (role == Qt::DecorationRole) {
|
||||
if (m_logoMap.contains(pack.logoName)) {
|
||||
return (m_logoMap.value(pack.logoName));
|
||||
}
|
||||
QIcon icon = APPLICATION->getThemedIcon("screenshot-placeholder");
|
||||
((ListModel*)this)->requestLogo(pack.logoName, pack.logoUrl);
|
||||
return icon;
|
||||
} else if (role == Qt::UserRole) {
|
||||
QVariant v;
|
||||
v.setValue(pack);
|
||||
return v;
|
||||
case Qt::SizeHintRole:
|
||||
return QSize(0, 58);
|
||||
case UserDataTypes::TITLE:
|
||||
return pack.name;
|
||||
case UserDataTypes::DESCRIPTION:
|
||||
return pack.description;
|
||||
case UserDataTypes::SELECTED:
|
||||
return false;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
return QVariant();
|
||||
}
|
||||
|
||||
|
@ -43,6 +43,10 @@
|
||||
#include "InstanceImportTask.h"
|
||||
#include "Json.h"
|
||||
#include "ui/dialogs/NewInstanceDialog.h"
|
||||
#include "ui/widgets/ProjectItem.h"
|
||||
#include "modplatform/flame/FlameAPI.h"
|
||||
|
||||
static FlameAPI api;
|
||||
|
||||
FlamePage::FlamePage(NewInstanceDialog* dialog, QWidget* parent) : QWidget(parent), ui(new Ui::FlamePage), dialog(dialog)
|
||||
{
|
||||
@ -66,6 +70,9 @@ FlamePage::FlamePage(NewInstanceDialog* dialog, QWidget* parent) : QWidget(paren
|
||||
connect(ui->sortByBox, SIGNAL(currentIndexChanged(int)), this, SLOT(triggerSearch()));
|
||||
connect(ui->packView->selectionModel(), &QItemSelectionModel::currentChanged, this, &FlamePage::onSelectionChanged);
|
||||
connect(ui->versionSelectionBox, &QComboBox::currentTextChanged, this, &FlamePage::onVersionSelectionChanged);
|
||||
|
||||
ui->packView->setItemDelegate(new ProjectItemDelegate(this));
|
||||
ui->packDescription->setMetaEntry("FlamePacks");
|
||||
}
|
||||
|
||||
FlamePage::~FlamePage()
|
||||
@ -250,7 +257,10 @@ void FlamePage::updateUi()
|
||||
text += "- " + tr("Source code: <a href=%1>%1</a>").arg(current.extra.sourceUrl) + "<br>";
|
||||
}
|
||||
|
||||
|
||||
text += "<hr>";
|
||||
text += api.getModDescription(current.addonId).toUtf8();
|
||||
|
||||
ui->packDescription->setHtml(text + current.description);
|
||||
ui->packDescription->flush();
|
||||
}
|
||||
|
@ -66,7 +66,7 @@
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QTextBrowser" name="packDescription">
|
||||
<widget class="ProjectDescriptionPage" name="packDescription">
|
||||
<property name="openExternalLinks">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
@ -99,6 +99,13 @@
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>ProjectDescriptionPage</class>
|
||||
<extends>QTextBrowser</extends>
|
||||
<header>ui/widgets/ProjectDescriptionPage.h</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<tabstops>
|
||||
<tabstop>packView</tabstop>
|
||||
<tabstop>packDescription</tabstop>
|
||||
|
@ -103,6 +103,8 @@ void ListModel::getLogo(const QString &logo, const QString &logoUrl, LogoCallbac
|
||||
|
||||
void ListModel::request()
|
||||
{
|
||||
m_aborted = false;
|
||||
|
||||
beginResetModel();
|
||||
modpacks.clear();
|
||||
endResetModel();
|
||||
@ -117,6 +119,12 @@ void ListModel::request()
|
||||
QObject::connect(netJob, &NetJob::failed, this, &ListModel::requestFailed);
|
||||
}
|
||||
|
||||
void ListModel::abortRequest()
|
||||
{
|
||||
m_aborted = jobPtr->abort();
|
||||
jobPtr.reset();
|
||||
}
|
||||
|
||||
void ListModel::requestFinished()
|
||||
{
|
||||
jobPtr.reset();
|
||||
@ -162,6 +170,9 @@ void ListModel::requestPack()
|
||||
|
||||
void ListModel::packRequestFinished()
|
||||
{
|
||||
if (!jobPtr || m_aborted)
|
||||
return;
|
||||
|
||||
jobPtr.reset();
|
||||
remainingPacks.removeOne(currentPack);
|
||||
|
||||
|
@ -47,9 +47,13 @@ public:
|
||||
QVariant data(const QModelIndex &index, int role) const override;
|
||||
|
||||
void request();
|
||||
void abortRequest();
|
||||
|
||||
void getLogo(const QString &logo, const QString &logoUrl, LogoCallback callback);
|
||||
|
||||
[[nodiscard]] bool isMakingRequest() const { return jobPtr.get(); }
|
||||
[[nodiscard]] bool wasAborted() const { return m_aborted; }
|
||||
|
||||
private slots:
|
||||
void requestFinished();
|
||||
void requestFailed(QString reason);
|
||||
@ -65,6 +69,8 @@ private:
|
||||
void requestLogo(QString file, QString url);
|
||||
|
||||
private:
|
||||
bool m_aborted = false;
|
||||
|
||||
QList<ModpacksCH::Modpack> modpacks;
|
||||
LogoMap m_logoMap;
|
||||
|
||||
|
@ -73,6 +73,8 @@ FtbPage::FtbPage(NewInstanceDialog* dialog, QWidget *parent)
|
||||
connect(ui->sortByBox, &QComboBox::currentTextChanged, this, &FtbPage::onSortingSelectionChanged);
|
||||
connect(ui->packView->selectionModel(), &QItemSelectionModel::currentChanged, this, &FtbPage::onSelectionChanged);
|
||||
connect(ui->versionSelectionBox, &QComboBox::currentTextChanged, this, &FtbPage::onVersionSelectionChanged);
|
||||
|
||||
ui->packDescription->setMetaEntry("FTBPacks");
|
||||
}
|
||||
|
||||
FtbPage::~FtbPage()
|
||||
@ -105,7 +107,7 @@ void FtbPage::retranslate()
|
||||
|
||||
void FtbPage::openedImpl()
|
||||
{
|
||||
if(!initialised)
|
||||
if(!initialised || listModel->wasAborted())
|
||||
{
|
||||
listModel->request();
|
||||
initialised = true;
|
||||
@ -114,6 +116,12 @@ void FtbPage::openedImpl()
|
||||
suggestCurrent();
|
||||
}
|
||||
|
||||
void FtbPage::closedImpl()
|
||||
{
|
||||
if (listModel->isMakingRequest())
|
||||
listModel->abortRequest();
|
||||
}
|
||||
|
||||
void FtbPage::suggestCurrent()
|
||||
{
|
||||
if(!isOpened)
|
||||
|
@ -78,6 +78,7 @@ public:
|
||||
void retranslate() override;
|
||||
|
||||
void openedImpl() override;
|
||||
void closedImpl() override;
|
||||
|
||||
bool eventFilter(QObject * watched, QEvent * event) override;
|
||||
|
||||
|