From 9de20ad9d8ee071b442f65d82f7c25dbf2b09d5f Mon Sep 17 00:00:00 2001 From: LemonNexus Date: Wed, 11 Feb 2026 18:31:18 +0000 Subject: [PATCH] fix: standalone extractor UI improvements - Removed EntropiaNexus.com from footer - Description now on two lines with clickable link to EntropiaNexus.com - Shortened Important Information text: "REQUIREMENT: Items must be seen in-game before they appear in the cache! If an icon is missing, view the item in your inventory or the auction first. Output: Documents/Entropia Universe/Icons/" - Increased minimum heights for path labels to show full content - Fixed box sizing for Cache Source, Output Location, and Nexus sections --- standalone_icon_extractor.py | 54 ++++++++++++++++++++++++------------ 1 file changed, 36 insertions(+), 18 deletions(-) diff --git a/standalone_icon_extractor.py b/standalone_icon_extractor.py index 032bd08..448bd62 100644 --- a/standalone_icon_extractor.py +++ b/standalone_icon_extractor.py @@ -317,14 +317,33 @@ class IconExtractorWindow(QMainWindow): header.setStyleSheet("font-size: 24px; font-weight: bold; color: #4caf50; padding-bottom: 5px;") layout.addWidget(header) - # Description - desc = QLabel( - "Extract item icons from Entropia Universe cache and convert them to PNG. " - "Submit these to EntropiaNexus.com to help complete the item database." - ) - desc.setStyleSheet("color: #cccccc; font-size: 13px; padding: 5px;") - desc.setWordWrap(True) - layout.addWidget(desc) + # Description - two lines with clickable link + desc_widget = QWidget() + desc_layout = QVBoxLayout(desc_widget) + desc_layout.setContentsMargins(5, 5, 5, 5) + desc_layout.setSpacing(4) + + desc_line1 = QLabel("Extract the item icons from Entropia Universe cache and convert them to PNG.") + desc_line1.setStyleSheet("color: #cccccc; font-size: 13px;") + desc_layout.addWidget(desc_line1) + + desc_line2 = QLabel("You can submit these to ") + desc_line2.setStyleSheet("color: #cccccc; font-size: 13px;") + desc_line2.setOpenExternalLinks(True) + + # Clickable link + link_label = QLabel('EntropiaNexus.com to help complete the item database.') + link_label.setStyleSheet("font-size: 13px;") + link_label.setOpenExternalLinks(True) + + desc_line2_layout = QHBoxLayout() + desc_line2_layout.setContentsMargins(0, 0, 0, 0) + desc_line2_layout.addWidget(desc_line2) + desc_line2_layout.addWidget(link_label) + desc_line2_layout.addStretch() + desc_layout.addLayout(desc_line2_layout) + + layout.addWidget(desc_widget) # Main splitter splitter = QSplitter(Qt.Orientation.Horizontal) @@ -350,7 +369,7 @@ class IconExtractorWindow(QMainWindow): "padding: 10px; background: #252525; border-radius: 4px;" ) self.cache_label.setWordWrap(True) - self.cache_label.setMinimumHeight(35) + self.cache_label.setMinimumHeight(45) cache_layout.addWidget(self.cache_label) # Subfolder selector @@ -390,7 +409,7 @@ class IconExtractorWindow(QMainWindow): output_layout.setContentsMargins(12, 18, 12, 12) output_layout.setSpacing(10) - output_info = QLabel("Icons saved to your Documents folder (same as chat.log)") + output_info = QLabel("Icons saved to your Documents folder (same location as chat.log)") output_info.setStyleSheet("color: #aaaaaa; font-size: 12px;") output_info.setWordWrap(True) output_layout.addWidget(output_info) @@ -401,6 +420,7 @@ class IconExtractorWindow(QMainWindow): "font-family: Consolas; font-size: 11px; color: #aaa; " "padding: 10px; background: #252525; border-radius: 4px;" ) + self.output_label.setMinimumHeight(35) output_layout.addWidget(self.output_label) change_btn = QPushButton("Change Output Folder...") @@ -432,13 +452,12 @@ class IconExtractorWindow(QMainWindow): nexus_layout = QVBoxLayout(nexus_group) nexus_layout.setContentsMargins(12, 18, 12, 12) - nexus_info = QLabel("Submit icons to help complete the item database!") + nexus_info = QLabel("Submit icons to help complete the item database") nexus_info.setStyleSheet("color: #cccccc; font-size: 12px;") - nexus_info.setWordWrap(True) nexus_layout.addWidget(nexus_info) nexus_btn = QPushButton("Open EntropiaNexus.com") - nexus_btn.setMaximumHeight(32) + nexus_btn.setMinimumHeight(32) nexus_btn.setStyleSheet("font-size: 11px; padding: 6px;") nexus_btn.clicked.connect(lambda: self._open_url(WEBSITE)) nexus_layout.addWidget(nexus_btn) @@ -562,17 +581,16 @@ class IconExtractorWindow(QMainWindow): } """) notice_text.setText( - "REQUIREMENT: Items must be seen/rendered in-game before they appear in the cache!\n\n" - "If an item icon is missing, view it in your inventory or see it dropped as loot first. " - "The game only caches icons for items you have actually seen.\n\n" - "Output: Documents/Entropia Universe/Icons/ (same folder as chat.log)" + "REQUIREMENT: Items must be seen in-game before they appear in the cache! " + "If an icon is missing, view the item in your inventory or the auction first. " + "Output: Documents/Entropia Universe/Icons/" ) notice_layout.addWidget(notice_text) layout.addWidget(notice_group) # Footer footer = QLabel( - f"Developed by {DEVELOPER} | Discord: {DISCORD} | {WEBSITE}\n" + f"Developed by {DEVELOPER} | Discord: {DISCORD}\n" "Entropia Universe Icon Extractor is a fan-made resource and is not affiliated with MindArk PE AB. " "Entropia Universe is a trademark of MindArk PE AB." )