This commit is contained in:
2026-03-09 15:08:46 +01:00
parent 18c708597a
commit abd1a1073a
12 changed files with 195 additions and 94 deletions

87
.gitignore vendored
View File

@@ -312,3 +312,90 @@ http-client.private.env.json
# Github Copilot persisted session migrations, see: https://github.com/microsoft/copilot-intellij-feedback/issues/712#issuecomment-3322062215 # Github Copilot persisted session migrations, see: https://github.com/microsoft/copilot-intellij-feedback/issues/712#issuecomment-3322062215
.idea/**/copilot.data.migration.*.xml .idea/**/copilot.data.migration.*.xml
# Covers JetBrains IDEs: IntelliJ, GoLand, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
# User-specific stuff
.idea/**/workspace.xml
.idea/**/tasks.xml
.idea/**/usage.statistics.xml
.idea/**/dictionaries
.idea/**/shelf
# AWS User-specific
.idea/**/aws.xml
# Generated files
.idea/**/contentModel.xml
# Sensitive or high-churn files
.idea/**/dataSources/
.idea/**/dataSources.ids
.idea/**/dataSources.local.xml
.idea/**/sqlDataSources.xml
.idea/**/dynamic.xml
.idea/**/uiDesigner.xml
.idea/**/dbnavigator.xml
# Gradle
.idea/**/gradle.xml
.idea/**/libraries
# Gradle and Maven with auto-import
# When using Gradle or Maven with auto-import, you should exclude module files,
# since they will be recreated, and may cause churn. Uncomment if using
# auto-import.
# .idea/artifacts
# .idea/compiler.xml
# .idea/jarRepositories.xml
# .idea/modules.xml
# .idea/*.iml
# .idea/modules
# *.iml
# *.ipr
# CMake
cmake-build-*/
# Mongo Explorer plugin
.idea/**/mongoSettings.xml
# File-based project format
*.iws
# IntelliJ
out/
# mpeltonen/sbt-idea plugin
.idea_modules/
# JIRA plugin
atlassian-ide-plugin.xml
# Cursive Clojure plugin
.idea/replstate.xml
# SonarLint plugin
.idea/sonarlint/
.idea/sonarlint.xml # see https://community.sonarsource.com/t/is-the-file-idea-idea-idea-sonarlint-xml-intended-to-be-under-source-control/121119
# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
crashlytics.properties
crashlytics-build.properties
fabric.properties
# Editor-based HTTP Client
.idea/httpRequests
http-client.private.env.json
# Android studio 3.1+ serialized cache file
.idea/caches/build_file_checksums.ser
# Apifox Helper cache
.idea/.cache/.Apifox_Helper
.idea/ApifoxUploaderProjectSetting.xml
# Github Copilot persisted session migrations, see: https://github.com/microsoft/copilot-intellij-feedback/issues/712#issuecomment-3322062215
.idea/**/copilot.data.migration.*.xml

10
.idea/.gitignore generated vendored Normal file
View File

@@ -0,0 +1,10 @@
# Default ignored files
/shelf/
/workspace.xml
# Ignored default folder with query files
/queries/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml
# Editor-based HTTP Client requests
/httpRequests/

11
.idea/PyQt6_LaTaniere.iml generated Normal file
View File

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="PYTHON_MODULE" version="4">
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
<excludeFolder url="file://$MODULE_DIR$/.venv" />
</content>
<orderEntry type="jdk" jdkName="uv (PyQt6_LaTaniere)" jdkType="Python SDK" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

View File

@@ -0,0 +1,6 @@
<component name="InspectionProjectProfileManager">
<settings>
<option name="USE_PROJECT_PROFILE" value="false" />
<version value="1.0" />
</settings>
</component>

7
.idea/misc.xml generated Normal file
View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Black">
<option name="sdkName" value="uv (PyQt6_LaTaniere)" />
</component>
<component name="ProjectRootManager" version="2" project-jdk-name="uv (PyQt6_LaTaniere)" project-jdk-type="Python SDK" />
</project>

8
.idea/modules.xml generated Normal file
View File

@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/PyQt6_LaTaniere.iml" filepath="$PROJECT_DIR$/.idea/PyQt6_LaTaniere.iml" />
</modules>
</component>
</project>

6
.idea/vcs.xml generated Normal file
View File

@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="Git" />
</component>
</project>

1
build.bat Normal file
View File

@@ -0,0 +1 @@
pyinstaller --noconfirm --onedir --onefile --windowed --icon .\assets\Icone.ico --name "La Tanière Launcher" .\src\mainwindow.py --paths ".\.venv\Lib\site-packages\" --add-data ".\styles\styles.qss:styles" --add-data ".\ui\mainwindow.ui:ui" --hidden-import win11toast

View File

@@ -1,60 +0,0 @@
import os
import sys
_all_ = [
"PyQt6>=6.10.2",
"PyQt6-Qt6>=6.10.2",
"PyQt6_sip>=13.11.0",
"PySide6>=6.10.2",
"PySide6_Addons>=6.10.2",
"PySide6_Essentials>=6.10.2",
"shiboken6>=6.10.2",
"librt>=0.8.1",
"mypy>=1.19.1",
"mypy_extensions>=1.1.0",
]
windows = [
"typing_extensions>=4.15.0",
"win11toast>=0.36.3",
"winrt-runtime>=3.2.1",
"winrt-Windows.Data.Xml.Dom>=3.2.1",
"winrt-Windows.Foundation>=3.2.1",
"winrt-Windows.Foundation.Collections>=3.2.1",
"winrt-Windows.Globalization>=3.2.1",
"winrt-Windows.Graphics.Imaging>=3.2.1",
"winrt-Windows.Media.Core>=3.2.1",
"winrt-Windows.Media.Ocr>=3.2.1",
"winrt-Windows.Media.Playback>=3.2.1",
"winrt-Windows.Media.SpeechSynthesis>=3.2.1",
"winrt-Windows.Storage>=3.2.1",
"winrt-Windows.Storage.Streams>=3.2.1",
"winrt-Windows.UI.Notifications>=3.2.1",
]
linux = [] # type: list[str]
darwin = [] # type: list[str]
def install(packages):
for package in packages:
os.system(f'python3 -m pip install "{package}"')
if __name__ == "__main__":
from sys import platform
if hasattr(sys, 'real_prefix') or (hasattr(sys, 'base_prefix') and sys.base_prefix != sys.prefix):
print("Inside venv")
else:
print("Not in venv, quit.")
sys.exit()
install(_all_)
if platform== 'windows':
install(windows)
if platform.startswith('linux'):
install(linux)
if platform == 'darwin': # MacOs
install(darwin)

View File

@@ -1,10 +0,0 @@
[project]
name = "LaTaniere_UI"
version = "0.1.0"
description = "Add your description here"
readme = "README.md"
requires-python = ">=3.14"
dependencies = [
"pyqt6>=6.10.2",
]

View File

@@ -1,8 +1,19 @@
#main_container { #main_container {
border-radius: 30px; border-radius: 30px;
background-image: url(:/assets/background.png); /*background-image: url(:/assets/background.png);
background-repeat: no-repeat; background-repeat: no-repeat;
background-position: center; background-position: center; */
/*background: qlineargradient(x1:0, y1:0, x2:0, y2:1,
stop: 0 #050a0f,
stop: 1 #0f172a);*/
background: qradialgradient(cx:0.5, cy:0.5, radius:0.8, fx:0.5, fy:0.5,
stop: 0 #16213e,
stop: 1 #0a0e14);
/*background: qlineargradient(x1:0, y1:0, x2:1, y2:1,
stop: 0 #0d1117,
stop: 0.7 #0d1117,
stop: 1 #1e3a8a); /* Une pointe de bleu plus vif en bas à droite */
} }
QLabel#maintitle_label { QLabel#maintitle_label {
@@ -24,26 +35,65 @@ QLabel#queue_lbl {
} }
QPushButton#connexion_btn { QPushButton#connexion_btn {
border-radius: 15px; /* border-radius: 15px;
background-color: rgb(255, 120, 0); background-color: rgb(255, 120, 0);
color: rgb(255, 255, 255); color: rgb(255, 255, 255); */
/* Dégradé chaleureux : Orange vers Orange-Rouge */
background: qlineargradient(x1:0, y1:0, x2:0, y2:1,
stop: 0 #ff9d00,
stop: 1 #f56100);
border-radius: 12px;
border: 1px solid #b34700;
color: white;
padding: 10px;
} }
QPushButton#connexion_btn:hover { QPushButton#connexion_btn:hover {
background: #ffad66; /* background: #ffad66; */
background: qlineargradient(x1:0, y1:0, x2:0, y2:1,
stop: 0 #ffb338,
stop: 1 #ff7a29);
border: 1px solid #ffcc80;
/* Un léger halo autour du bouton */
outline: none;
}
QPushButton#connexionBtn:pressed {
background: #cc5200;
padding-top: 12px; /* Effet d'enfoncement */
} }
QPushButton#discord_btn, QPushButton#discord_btn,
QPushButton#intranet_btn QPushButton#intranet_btn
{ {
border-radius: 15px; /*border-radius: 15px;
background-color: rgb(32, 58, 67); background-color: rgb(32, 58, 67);
color: rgb(255, 255, 255); color: rgb(255, 255, 255);*/
background-color: rgba(32, 58, 67, 0.6); /* Bleu très sombre semi-transparent */
border: 1px solid rgba(255, 255, 255, 0.1);
border-radius: 8px;
color: #e2e8f0;
font-weight: bold;
padding: 8px 15px;
}
QPushButton#discord_btn:hover {
background-color: rgba(88, 101, 242, 0.4); /* Fond bleu Discord translucide */
border: 2px solid #7289da; /* Bordure plus épaisse et claire pour l'éclat */
color: white;
} }
QPushButton#discord_btn:hover,
QPushButton#intranet_btn:hover { QPushButton#intranet_btn:hover {
background: rgb(68, 124, 143); /* background: rgb(68, 124, 143); */
background-color: rgba(0, 242, 255, 0.15); /* Teinte turquoise légère en fond */
border: 2px solid #00f2ff; /* Bordure turquoise vive et épaisse */
color: #ffffff;
}
QPushButton#discordBtn:pressed, QPushButton#intranetBtn:pressed {
background-color: #0f172a;
padding-top: 10px; /* Petit effet d'enfoncement */
} }
QPushButton#volume_btn { QPushButton#volume_btn {

View File

@@ -1,15 +0,0 @@
typing_extensions==4.15.0
win11toast==0.36.3
winrt-runtime==3.2.1
winrt-Windows.Data.Xml.Dom==3.2.1
winrt-Windows.Foundation==3.2.1
winrt-Windows.Foundation.Collections==3.2.1
winrt-Windows.Globalization==3.2.1
winrt-Windows.Graphics.Imaging==3.2.1
winrt-Windows.Media.Core==3.2.1
winrt-Windows.Media.Ocr==3.2.1
winrt-Windows.Media.Playback==3.2.1
winrt-Windows.Media.SpeechSynthesis==3.2.1
winrt-Windows.Storage==3.2.1
winrt-Windows.Storage.Streams==3.2.1
winrt-Windows.UI.Notifications==3.2.1