Skip to content

🎨 Fix Exchange Configuration GUI Dark Theme Styling - #18

Merged
sjackson0109 merged 9 commits into
mainfrom
feature/exchange-gui-dark-theme-fixes
Feb 23, 2026
Merged

🎨 Fix Exchange Configuration GUI Dark Theme Styling#18
sjackson0109 merged 9 commits into
mainfrom
feature/exchange-gui-dark-theme-fixes

Conversation

@sjackson0109

Copy link
Copy Markdown
Owner

🎨 Exchange Configuration GUI Dark Theme Fixes

Problem

The Exchange Configuration GUI had significant color inversion and theming issues, particularly on the "Setup Exchange" tab where widgets appeared with incorrect backgrounds and poor contrast.

Solution

  • Comprehensive Dark Theme Implementation - Applied consistent dark theme colors matching the main PowerTrader Hub
  • Fixed Setup Exchange Tab - Replaced problematic ttk widgets with properly styled tk widgets
  • Consistent Color Scheme - Applied dark backgrounds, proper text contrast, and professional styling
  • 66 Exchange Support - All supported exchanges now display with consistent dark theme
  • Enhanced UX - Improved borders, highlights, and widget visibility

Technical Changes

  • Replaced ttk.Frame with tk.Frame for proper background control
  • Implemented explicit dark color styling for LabelFrames
  • Enhanced text widget styling with proper contrast
  • Added comprehensive theme configuration for checkboxes and radio buttons
  • Applied consistent border and highlight styling

Visual Improvements

  • Background: Deep dark blue-black (#070B10)
  • Text: Light gray (#C7D1DB) for excellent readability
  • Accents: Bright green (#00FF66) for highlights
  • Borders: Subtle dark blue-gray (#243044)

Testing

  • ✅ Exchange Configuration GUI launches successfully
  • ✅ All 66 exchanges display with proper dark theme
  • ✅ Setup Exchange tab properly styled
  • ✅ Theme matches main PowerTrader Hub interface

Screenshots

The Exchange Configuration GUI now seamlessly integrates with the main application's professional dark theme, providing a consistent and visually appealing user experience across all 66 supported cryptocurrency exchanges.

- Created setup.py with dynamic version generation from git commit
- Fixed version format from invalid '2026.02.21-e713ca2' to compliant '2026.2.21.dev0+commit'
- Added robust error handling for git operations
- Successfully builds both source distribution (.tar.gz) and wheel (.whl)
- Resolves CI/CD pipeline packaging failures
- Supports console script entry point for 'powertrader' command
- Remove hardcoded 'robinhood' default from pt_hub.py primary_exchange
- Add handling for empty primary_exchange to prevent credential errors
- Set US region default exchanges to disabled instead of enabling robinhood
- Prevents CI failures when GitHub secrets/credentials aren't configured
- Allows graceful operation without requiring immediate exchange setup
- Resolves integration test failures in CI/CD pipeline
- Move credential loading from import-time to runtime in pt_trader.py
- Replace SystemExit(1) with graceful error handling
- Add POWERTRADER_ENV=test check to skip credentials in CI
- Credentials now loaded only when CryptoAPITrading class is instantiated
- Prevents build failures when GitHub secrets/credentials aren't configured
- Allows basic import testing without requiring exchange credentials

This follows proper CI/CD practices where builds shouldn't need external credentials
- Make KuCoin client imports optional in pt_thinker.py and pt_trainer.py
- Skip KuCoin initialization in POWERTRADER_ENV=test environments
- Add proper error handling for when market client is unavailable
- Move pt_thinker initialization from import-time to main block
- Prevents CI/CD failures from pkg_resources dependency issues in kucoin-python

Key changes:
- Conditional KuCoin imports with graceful fallback
- Import-time network calls moved to runtime only
- Compatible with Python 3.13+ where pkg_resources was deprecated
- Maintains full functionality in production environments
…tion

- Add DataProvider abstraction layer to decouple core modules from specific exchanges
- Create comprehensive exchange configuration with 66+ platforms across:
  * Centralized exchanges (28): Tier 1/2 + regional (Rain, Yellow Card, Quidax, VALR)
  * DeFi/DEX platforms (18): Ethereum, Layer2, lending, staking protocols
  * Derivatives (7): perpetuals, options, synthetics
  * Specialized platforms (8): prediction markets, P2P, NFT/gaming
  * Cross-chain infrastructure (5): bridges and aggregators
- Update pt_thinker.py and pt_trainer.py to use provider interface
- Enable regional exchange optimization (US/EU/Asia/Africa-MENA priorities)
- Implement intelligent fallback strategies across entire ecosystem
- Restore user choice in exchange selection vs KuCoin lock-in

Resolves architectural issue where sophisticated multi-exchange system
was bypassed by hardcoded dependencies in core prediction modules.
- Changed version format from '2026.02.22-b7f563a' to PEP 440 compliant '2026.02.22+b7f563a'
- Added separate PYTHON_VERSION output for packaging compatibility
- Fixes InvalidVersion error: 'Invalid version: 2026.02.22-b7f563a' in setup.py
- Uses '+' for local version identifier instead of '-' as per PEP 440
- Implement comprehensive dark theme matching main PowerTrader Hub
- Fix Setup Exchange tab color inversion issues
- Replace ttk widgets with tk widgets for proper dark backgrounds
- Apply consistent dark color scheme across all 66 exchanges
- Improve text contrast and widget visibility
- Enhance professional appearance with proper borders and highlights

Resolves exchange configuration GUI theming inconsistencies
@sjackson0109
sjackson0109 merged commit ea39c93 into main Feb 23, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant