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
This commit is contained in:
LemonNexus 2026-02-11 18:31:18 +00:00
parent f498dffa69
commit 9de20ad9d8
1 changed files with 36 additions and 18 deletions

View File

@ -317,14 +317,33 @@ class IconExtractorWindow(QMainWindow):
header.setStyleSheet("font-size: 24px; font-weight: bold; color: #4caf50; padding-bottom: 5px;") header.setStyleSheet("font-size: 24px; font-weight: bold; color: #4caf50; padding-bottom: 5px;")
layout.addWidget(header) layout.addWidget(header)
# Description # Description - two lines with clickable link
desc = QLabel( desc_widget = QWidget()
"Extract item icons from Entropia Universe cache and convert them to PNG. " desc_layout = QVBoxLayout(desc_widget)
"Submit these to EntropiaNexus.com to help complete the item database." desc_layout.setContentsMargins(5, 5, 5, 5)
) desc_layout.setSpacing(4)
desc.setStyleSheet("color: #cccccc; font-size: 13px; padding: 5px;")
desc.setWordWrap(True) desc_line1 = QLabel("Extract the item icons from Entropia Universe cache and convert them to PNG.")
layout.addWidget(desc) 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('<a href="https://EntropiaNexus.com" style="color: #4caf50;">EntropiaNexus.com</a> 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 # Main splitter
splitter = QSplitter(Qt.Orientation.Horizontal) splitter = QSplitter(Qt.Orientation.Horizontal)
@ -350,7 +369,7 @@ class IconExtractorWindow(QMainWindow):
"padding: 10px; background: #252525; border-radius: 4px;" "padding: 10px; background: #252525; border-radius: 4px;"
) )
self.cache_label.setWordWrap(True) self.cache_label.setWordWrap(True)
self.cache_label.setMinimumHeight(35) self.cache_label.setMinimumHeight(45)
cache_layout.addWidget(self.cache_label) cache_layout.addWidget(self.cache_label)
# Subfolder selector # Subfolder selector
@ -390,7 +409,7 @@ class IconExtractorWindow(QMainWindow):
output_layout.setContentsMargins(12, 18, 12, 12) output_layout.setContentsMargins(12, 18, 12, 12)
output_layout.setSpacing(10) 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.setStyleSheet("color: #aaaaaa; font-size: 12px;")
output_info.setWordWrap(True) output_info.setWordWrap(True)
output_layout.addWidget(output_info) output_layout.addWidget(output_info)
@ -401,6 +420,7 @@ class IconExtractorWindow(QMainWindow):
"font-family: Consolas; font-size: 11px; color: #aaa; " "font-family: Consolas; font-size: 11px; color: #aaa; "
"padding: 10px; background: #252525; border-radius: 4px;" "padding: 10px; background: #252525; border-radius: 4px;"
) )
self.output_label.setMinimumHeight(35)
output_layout.addWidget(self.output_label) output_layout.addWidget(self.output_label)
change_btn = QPushButton("Change Output Folder...") change_btn = QPushButton("Change Output Folder...")
@ -432,13 +452,12 @@ class IconExtractorWindow(QMainWindow):
nexus_layout = QVBoxLayout(nexus_group) nexus_layout = QVBoxLayout(nexus_group)
nexus_layout.setContentsMargins(12, 18, 12, 12) 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.setStyleSheet("color: #cccccc; font-size: 12px;")
nexus_info.setWordWrap(True)
nexus_layout.addWidget(nexus_info) nexus_layout.addWidget(nexus_info)
nexus_btn = QPushButton("Open EntropiaNexus.com") nexus_btn = QPushButton("Open EntropiaNexus.com")
nexus_btn.setMaximumHeight(32) nexus_btn.setMinimumHeight(32)
nexus_btn.setStyleSheet("font-size: 11px; padding: 6px;") nexus_btn.setStyleSheet("font-size: 11px; padding: 6px;")
nexus_btn.clicked.connect(lambda: self._open_url(WEBSITE)) nexus_btn.clicked.connect(lambda: self._open_url(WEBSITE))
nexus_layout.addWidget(nexus_btn) nexus_layout.addWidget(nexus_btn)
@ -562,17 +581,16 @@ class IconExtractorWindow(QMainWindow):
} }
""") """)
notice_text.setText( notice_text.setText(
"REQUIREMENT: Items must be seen/rendered in-game before they appear in the cache!\n\n" "REQUIREMENT: Items must be seen in-game before they appear in the cache! "
"If an item icon is missing, view it in your inventory or see it dropped as loot first. " "If an icon is missing, view the item in your inventory or the auction first. "
"The game only caches icons for items you have actually seen.\n\n" "Output: Documents/Entropia Universe/Icons/"
"Output: Documents/Entropia Universe/Icons/ (same folder as chat.log)"
) )
notice_layout.addWidget(notice_text) notice_layout.addWidget(notice_text)
layout.addWidget(notice_group) layout.addWidget(notice_group)
# Footer # Footer
footer = QLabel( 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 Icon Extractor is a fan-made resource and is not affiliated with MindArk PE AB. "
"Entropia Universe is a trademark of MindArk PE AB." "Entropia Universe is a trademark of MindArk PE AB."
) )