Adding a dark theme
This commit is contained in:
parent
df672dfd73
commit
1f1c6053a7
|
@ -1,3 +1,6 @@
|
||||||
|
2020-05-29 Markus Gans <guru.mail@muenster.de>
|
||||||
|
* Adding a dark theme. Can be activated with the --dark-theme parameter.
|
||||||
|
|
||||||
2020-05-28 Markus Gans <guru.mail@muenster.de>
|
2020-05-28 Markus Gans <guru.mail@muenster.de>
|
||||||
* FColorPalette now also uses polymorphism, so you can now
|
* FColorPalette now also uses polymorphism, so you can now
|
||||||
easily create your own color palette theme
|
easily create your own color palette theme
|
||||||
|
|
|
@ -311,6 +311,8 @@ void FApplication::showParameterUsage()
|
||||||
<< " Set the standard vga 8x16 font\n"
|
<< " Set the standard vga 8x16 font\n"
|
||||||
<< " --newfont "
|
<< " --newfont "
|
||||||
<< " Enables the graphical font\n"
|
<< " Enables the graphical font\n"
|
||||||
|
<< " --dark-theme "
|
||||||
|
<< " Enables the dark theme\n"
|
||||||
|
|
||||||
#if defined(__FreeBSD__) || defined(__DragonFly__)
|
#if defined(__FreeBSD__) || defined(__DragonFly__)
|
||||||
<< "\n"
|
<< "\n"
|
||||||
|
@ -406,6 +408,7 @@ void FApplication::cmd_options (const int& argc, char* argv[])
|
||||||
{"no-sgr-optimizer", no_argument, nullptr, 0 },
|
{"no-sgr-optimizer", no_argument, nullptr, 0 },
|
||||||
{"vgafont", no_argument, nullptr, 0 },
|
{"vgafont", no_argument, nullptr, 0 },
|
||||||
{"newfont", no_argument, nullptr, 0 },
|
{"newfont", no_argument, nullptr, 0 },
|
||||||
|
{"dark-theme", no_argument, nullptr, 0 },
|
||||||
|
|
||||||
#if defined(__FreeBSD__) || defined(__DragonFly__)
|
#if defined(__FreeBSD__) || defined(__DragonFly__)
|
||||||
{"no-esc-for-alt-meta", no_argument, nullptr, 0 },
|
{"no-esc-for-alt-meta", no_argument, nullptr, 0 },
|
||||||
|
@ -470,6 +473,9 @@ void FApplication::cmd_options (const int& argc, char* argv[])
|
||||||
if ( std::strcmp(long_options[idx].name, "newfont") == 0 )
|
if ( std::strcmp(long_options[idx].name, "newfont") == 0 )
|
||||||
getStartOptions().newfont = true;
|
getStartOptions().newfont = true;
|
||||||
|
|
||||||
|
if ( std::strcmp(long_options[idx].name, "dark-theme") == 0 )
|
||||||
|
getStartOptions().dark_theme = true;
|
||||||
|
|
||||||
#if defined(__FreeBSD__) || defined(__DragonFly__)
|
#if defined(__FreeBSD__) || defined(__DragonFly__)
|
||||||
if ( std::strcmp(long_options[idx].name, "no-esc-for-alt-meta") == 0 )
|
if ( std::strcmp(long_options[idx].name, "no-esc-for-alt-meta") == 0 )
|
||||||
getStartOptions().meta_sends_escape = false;
|
getStartOptions().meta_sends_escape = false;
|
||||||
|
|
|
@ -31,7 +31,7 @@ namespace finalcut
|
||||||
|
|
||||||
// constructors and destructor
|
// constructors and destructor
|
||||||
//----------------------------------------------------------------------
|
//----------------------------------------------------------------------
|
||||||
FColorPalette::FColorPalette (FSetPalette f)
|
FColorPalette::FColorPalette (const FSetPalette& f)
|
||||||
: set_palette{f}
|
: set_palette{f}
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
|
@ -47,6 +47,26 @@ void FColorPalette::setPalette (FColor index, int r, int g, int b)
|
||||||
set_palette (index, r, g, b);
|
set_palette (index, r, g, b);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
void FColorPalette::setVGAdefaultPalette()
|
||||||
|
{
|
||||||
|
setPalette (fc::Black, 0x00, 0x00, 0x00);
|
||||||
|
setPalette (fc::Blue, 0x00, 0x00, 0xaa);
|
||||||
|
setPalette (fc::Green, 0x00, 0xaa, 0x00);
|
||||||
|
setPalette (fc::Cyan, 0x00, 0x55, 0xaa);
|
||||||
|
setPalette (fc::Red, 0xaa, 0x00, 0x00);
|
||||||
|
setPalette (fc::Magenta, 0xaa, 0x00, 0xaa);
|
||||||
|
setPalette (fc::Brown, 0xaa, 0xaa, 0x00);
|
||||||
|
setPalette (fc::LightGray, 0xaa, 0xaa, 0xaa);
|
||||||
|
setPalette (fc::DarkGray, 0x55, 0x55, 0x55);
|
||||||
|
setPalette (fc::LightBlue, 0x55, 0x55, 0xff);
|
||||||
|
setPalette (fc::LightGreen, 0x55, 0xff, 0x55);
|
||||||
|
setPalette (fc::LightCyan, 0x55, 0xff, 0xff);
|
||||||
|
setPalette (fc::LightRed, 0xff, 0x55, 0x55);
|
||||||
|
setPalette (fc::LightMagenta, 0xff, 0x55, 0xff);
|
||||||
|
setPalette (fc::Yellow, 0xff, 0xff, 0x55);
|
||||||
|
setPalette (fc::White, 0xff, 0xff, 0xff);
|
||||||
|
}
|
||||||
|
|
||||||
//----------------------------------------------------------------------
|
//----------------------------------------------------------------------
|
||||||
// class default8ColorPalette
|
// class default8ColorPalette
|
||||||
|
@ -54,7 +74,7 @@ void FColorPalette::setPalette (FColor index, int r, int g, int b)
|
||||||
|
|
||||||
// constructors and destructor
|
// constructors and destructor
|
||||||
//----------------------------------------------------------------------
|
//----------------------------------------------------------------------
|
||||||
default8ColorPalette::default8ColorPalette (FSetPalette f)
|
default8ColorPalette::default8ColorPalette (const FSetPalette& f)
|
||||||
: FColorPalette(f)
|
: FColorPalette(f)
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
|
@ -88,22 +108,7 @@ void default8ColorPalette::setColorPalette()
|
||||||
//----------------------------------------------------------------------
|
//----------------------------------------------------------------------
|
||||||
void default8ColorPalette::resetColorPalette()
|
void default8ColorPalette::resetColorPalette()
|
||||||
{
|
{
|
||||||
set_palette (fc::Black, 0x00, 0x00, 0x00);
|
setVGAdefaultPalette();
|
||||||
set_palette (fc::Blue, 0x00, 0x00, 0xaa);
|
|
||||||
set_palette (fc::Green, 0x00, 0xaa, 0x00);
|
|
||||||
set_palette (fc::Cyan, 0x00, 0x55, 0xaa);
|
|
||||||
set_palette (fc::Red, 0xaa, 0x00, 0x00);
|
|
||||||
set_palette (fc::Magenta, 0xaa, 0x00, 0xaa);
|
|
||||||
set_palette (fc::Brown, 0xaa, 0xaa, 0x00);
|
|
||||||
set_palette (fc::LightGray, 0xaa, 0xaa, 0xaa);
|
|
||||||
set_palette (fc::DarkGray, 0x55, 0x55, 0x55);
|
|
||||||
set_palette (fc::LightBlue, 0x55, 0x55, 0xff);
|
|
||||||
set_palette (fc::LightGreen, 0x55, 0xff, 0x55);
|
|
||||||
set_palette (fc::LightCyan, 0x55, 0xff, 0xff);
|
|
||||||
set_palette (fc::LightRed, 0xff, 0x55, 0x55);
|
|
||||||
set_palette (fc::LightMagenta, 0xff, 0x55, 0xff);
|
|
||||||
set_palette (fc::Yellow, 0xff, 0xff, 0x55);
|
|
||||||
set_palette (fc::White, 0xff, 0xff, 0xff);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -113,7 +118,7 @@ void default8ColorPalette::resetColorPalette()
|
||||||
|
|
||||||
// constructors and destructor
|
// constructors and destructor
|
||||||
//----------------------------------------------------------------------
|
//----------------------------------------------------------------------
|
||||||
default16ColorPalette::default16ColorPalette (FSetPalette f)
|
default16ColorPalette::default16ColorPalette (const FSetPalette& f)
|
||||||
: FColorPalette(f)
|
: FColorPalette(f)
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
|
@ -146,24 +151,51 @@ void default16ColorPalette::setColorPalette()
|
||||||
//----------------------------------------------------------------------
|
//----------------------------------------------------------------------
|
||||||
void default16ColorPalette::resetColorPalette()
|
void default16ColorPalette::resetColorPalette()
|
||||||
{
|
{
|
||||||
set_palette (fc::Black, 0x00, 0x00, 0x00);
|
setVGAdefaultPalette();
|
||||||
set_palette (fc::Blue, 0x00, 0x00, 0xaa);
|
|
||||||
set_palette (fc::Green, 0x00, 0xaa, 0x00);
|
|
||||||
set_palette (fc::Cyan, 0x00, 0x55, 0xaa);
|
|
||||||
set_palette (fc::Red, 0xaa, 0x00, 0x00);
|
|
||||||
set_palette (fc::Magenta, 0xaa, 0x00, 0xaa);
|
|
||||||
set_palette (fc::Brown, 0xaa, 0xaa, 0x00);
|
|
||||||
set_palette (fc::LightGray, 0xaa, 0xaa, 0xaa);
|
|
||||||
set_palette (fc::DarkGray, 0x55, 0x55, 0x55);
|
|
||||||
set_palette (fc::LightBlue, 0x55, 0x55, 0xff);
|
|
||||||
set_palette (fc::LightGreen, 0x55, 0xff, 0x55);
|
|
||||||
set_palette (fc::LightCyan, 0x55, 0xff, 0xff);
|
|
||||||
set_palette (fc::LightRed, 0xff, 0x55, 0x55);
|
|
||||||
set_palette (fc::LightMagenta, 0xff, 0x55, 0xff);
|
|
||||||
set_palette (fc::Yellow, 0xff, 0xff, 0x55);
|
|
||||||
set_palette (fc::White, 0xff, 0xff, 0xff);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
// class default16DarkColorPalette
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
|
||||||
|
// constructors and destructor
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
default16DarkColorPalette::default16DarkColorPalette (const FSetPalette& f)
|
||||||
|
: FColorPalette(f)
|
||||||
|
{ }
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
default16DarkColorPalette::~default16DarkColorPalette()
|
||||||
|
{ }
|
||||||
|
|
||||||
|
// public methods of default8ColorPalette
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
void default16DarkColorPalette::setColorPalette()
|
||||||
|
{
|
||||||
|
setPalette (fc::Black, 0x00, 0x00, 0x00);
|
||||||
|
setPalette (fc::Blue, 0x41, 0x58, 0xb3);
|
||||||
|
setPalette (fc::Green, 0x18, 0x78, 0x18);
|
||||||
|
setPalette (fc::Cyan, 0x4e, 0x66, 0x72);
|
||||||
|
setPalette (fc::Red, 0xba, 0x49, 0x49);
|
||||||
|
setPalette (fc::Magenta, 0xb2, 0x18, 0xb2);
|
||||||
|
setPalette (fc::Brown, 0xe8, 0x87, 0x1f);
|
||||||
|
setPalette (fc::LightGray, 0xd2, 0xd2, 0xd2);
|
||||||
|
setPalette (fc::DarkGray, 0x27, 0x33, 0x39);
|
||||||
|
setPalette (fc::LightBlue, 0xb0, 0xb0, 0xb8);
|
||||||
|
setPalette (fc::LightGreen, 0x5e, 0xeb, 0x5c);
|
||||||
|
setPalette (fc::LightCyan, 0x62, 0xbf, 0xf8);
|
||||||
|
setPalette (fc::LightRed, 0xdd, 0x51, 0x45);
|
||||||
|
setPalette (fc::LightMagenta, 0xe9, 0xad, 0xff);
|
||||||
|
setPalette (fc::Yellow, 0xfb, 0xe8, 0x67);
|
||||||
|
setPalette (fc::White, 0xff, 0xff, 0xff);
|
||||||
|
}
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
void default16DarkColorPalette::resetColorPalette()
|
||||||
|
{
|
||||||
|
setVGAdefaultPalette();
|
||||||
|
}
|
||||||
|
|
||||||
} // namespace finalcut
|
} // namespace finalcut
|
||||||
|
|
||||||
|
|
|
@ -51,6 +51,7 @@ FStartOptions::FStartOptions()
|
||||||
#elif defined(__NetBSD__) || defined(__OpenBSD__)
|
#elif defined(__NetBSD__) || defined(__OpenBSD__)
|
||||||
, meta_sends_escape{true}
|
, meta_sends_escape{true}
|
||||||
#endif
|
#endif
|
||||||
|
, dark_theme{false}
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
//----------------------------------------------------------------------
|
//----------------------------------------------------------------------
|
||||||
|
|
|
@ -627,7 +627,7 @@ void FStatusBar::drawKey (keyList::const_iterator iter)
|
||||||
|
|
||||||
if ( FTerm::hasHalfBlockCharacter() )
|
if ( FTerm::hasHalfBlockCharacter() )
|
||||||
{
|
{
|
||||||
setColor (wc->statusbar_active_fg, wc->statusbar_active_bg);
|
setColor (wc->statusbar_bg, wc->statusbar_active_hotkey_bg);
|
||||||
print (fc::LeftHalfBlock); // ▐
|
print (fc::LeftHalfBlock); // ▐
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -674,6 +674,7 @@ void FStatusBar::drawActiveKey (keyList::const_iterator iter)
|
||||||
{
|
{
|
||||||
print (item->getText());
|
print (item->getText());
|
||||||
x++;
|
x++;
|
||||||
|
setColor (wc->statusbar_bg, wc->statusbar_active_hotkey_bg);
|
||||||
print (fc::RightHalfBlock); // ▌
|
print (fc::RightHalfBlock); // ▌
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
|
@ -1888,10 +1888,17 @@ void FTerm::redefineColorPalette()
|
||||||
resetColorMap();
|
resetColorMap();
|
||||||
saveColorMap();
|
saveColorMap();
|
||||||
|
|
||||||
if ( getMaxColor() >= 16 )
|
if ( FStartOptions::getFStartOptions().dark_theme )
|
||||||
setColorPaletteTheme<default16ColorPalette>(&FTerm::setPalette);
|
{
|
||||||
else // 8 colors
|
setColorPaletteTheme<default16DarkColorPalette>(&FTerm::setPalette);
|
||||||
setColorPaletteTheme<default8ColorPalette>(&FTerm::setPalette);
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if ( getMaxColor() >= 16 )
|
||||||
|
setColorPaletteTheme<default16ColorPalette>(&FTerm::setPalette);
|
||||||
|
else // 8 colors
|
||||||
|
setColorPaletteTheme<default8ColorPalette>(&FTerm::setPalette);
|
||||||
|
}
|
||||||
|
|
||||||
getColorPaletteTheme()->setColorPalette();
|
getColorPaletteTheme()->setColorPalette();
|
||||||
}
|
}
|
||||||
|
|
|
@ -26,6 +26,7 @@
|
||||||
#include "final/fevent.h"
|
#include "final/fevent.h"
|
||||||
#include "final/flog.h"
|
#include "final/flog.h"
|
||||||
#include "final/fmenubar.h"
|
#include "final/fmenubar.h"
|
||||||
|
#include "final/fstartoptions.h"
|
||||||
#include "final/fstatusbar.h"
|
#include "final/fstatusbar.h"
|
||||||
#include "final/fstring.h"
|
#include "final/fstring.h"
|
||||||
#include "final/ftermdata.h"
|
#include "final/ftermdata.h"
|
||||||
|
@ -1992,10 +1993,20 @@ void FWidget::initColorTheme()
|
||||||
{
|
{
|
||||||
// Sets the default color theme
|
// Sets the default color theme
|
||||||
|
|
||||||
if ( FTerm::getMaxColor() < 16 ) // for 8 color mode
|
if ( FStartOptions::getFStartOptions().dark_theme )
|
||||||
setColorTheme<default8ColorTheme>();
|
{
|
||||||
|
if ( FTerm::getMaxColor() < 16 ) // for 8 color mode
|
||||||
|
setColorTheme<default8ColorDarkTheme>();
|
||||||
|
else
|
||||||
|
setColorTheme<default16ColorDarkTheme>();
|
||||||
|
}
|
||||||
else
|
else
|
||||||
setColorTheme<default16ColorTheme>();
|
{
|
||||||
|
if ( FTerm::getMaxColor() < 16 ) // for 8 color mode
|
||||||
|
setColorTheme<default8ColorTheme>();
|
||||||
|
else
|
||||||
|
setColorTheme<default16ColorTheme>();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//----------------------------------------------------------------------
|
//----------------------------------------------------------------------
|
||||||
|
|
|
@ -259,4 +259,219 @@ void default16ColorTheme::setColorTheme()
|
||||||
term_bg = fc::SkyBlue2;
|
term_bg = fc::SkyBlue2;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
// class default8ColorDarkTheme
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
|
||||||
|
// constructors and destructor
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
default8ColorDarkTheme::default8ColorDarkTheme()
|
||||||
|
{
|
||||||
|
default8ColorDarkTheme::setColorTheme();
|
||||||
|
}
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
default8ColorDarkTheme::~default8ColorDarkTheme()
|
||||||
|
{ }
|
||||||
|
|
||||||
|
// public methods of default8ColorDarkTheme
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
void default8ColorDarkTheme::setColorTheme()
|
||||||
|
{
|
||||||
|
term_fg = fc::LightGray;
|
||||||
|
term_bg = fc::Cyan;
|
||||||
|
list_fg = fc::Black;
|
||||||
|
list_bg = fc::LightGray;
|
||||||
|
selected_list_fg = fc::Cyan;
|
||||||
|
selected_list_bg = fc::LightGray;
|
||||||
|
dialog_fg = fc::Black;
|
||||||
|
dialog_resize_fg = fc::Blue;
|
||||||
|
dialog_emphasis_fg = fc::Blue;
|
||||||
|
dialog_bg = fc::LightGray;
|
||||||
|
error_box_fg = fc::LightGray;
|
||||||
|
error_box_emphasis_fg = fc::Black;
|
||||||
|
error_box_bg = fc::Red;
|
||||||
|
tooltip_fg = fc::LightGray;
|
||||||
|
tooltip_bg = fc::Black;
|
||||||
|
shadow_fg = fc::Black;
|
||||||
|
shadow_bg = fc::LightGray; // only for transparent shadow
|
||||||
|
current_element_focus_fg = fc::LightGray;
|
||||||
|
current_element_focus_bg = fc::Cyan;
|
||||||
|
current_element_fg = fc::Black;
|
||||||
|
current_element_bg = fc::Cyan;
|
||||||
|
current_inc_search_element_fg = fc::Red;
|
||||||
|
selected_current_element_focus_fg = fc::Cyan;
|
||||||
|
selected_current_element_focus_bg = fc::Cyan;
|
||||||
|
selected_current_element_fg = fc::Blue;
|
||||||
|
selected_current_element_bg = fc::Cyan;
|
||||||
|
label_fg = fc::Black;
|
||||||
|
label_bg = fc::LightGray;
|
||||||
|
label_inactive_fg = fc::Cyan;
|
||||||
|
label_inactive_bg = fc::LightGray;
|
||||||
|
label_hotkey_fg = fc::Red;
|
||||||
|
label_hotkey_bg = fc::LightGray;
|
||||||
|
label_emphasis_fg = fc::Blue;
|
||||||
|
label_ellipsis_fg = fc::Cyan;
|
||||||
|
inputfield_active_focus_fg = fc::LightGray;
|
||||||
|
inputfield_active_focus_bg = fc::Cyan;
|
||||||
|
inputfield_active_fg = fc::LightGray;
|
||||||
|
inputfield_active_bg = fc::Cyan;
|
||||||
|
inputfield_inactive_fg = fc::Cyan;
|
||||||
|
inputfield_inactive_bg = fc::LightGray;
|
||||||
|
toggle_button_active_focus_fg = fc::LightGray;
|
||||||
|
toggle_button_active_focus_bg = fc::Cyan;
|
||||||
|
toggle_button_active_fg = fc::Black;
|
||||||
|
toggle_button_active_bg = fc::LightGray;
|
||||||
|
toggle_button_inactive_fg = fc::Cyan;
|
||||||
|
toggle_button_inactive_bg = fc::LightGray;
|
||||||
|
button_active_focus_fg = fc::LightGray;
|
||||||
|
button_active_focus_bg = fc::Cyan;
|
||||||
|
button_active_fg = fc::LightGray;
|
||||||
|
button_active_bg = fc::Black;
|
||||||
|
button_inactive_fg = fc::Black;
|
||||||
|
button_inactive_bg = fc::Cyan;
|
||||||
|
button_hotkey_fg = fc::LightGray;
|
||||||
|
titlebar_active_fg = fc::LightGray;
|
||||||
|
titlebar_active_bg = fc::Black;
|
||||||
|
titlebar_inactive_fg = fc::Black;
|
||||||
|
titlebar_inactive_bg = fc::LightGray;
|
||||||
|
titlebar_button_fg = fc::Black;
|
||||||
|
titlebar_button_bg = fc::LightGray;
|
||||||
|
titlebar_button_focus_fg = fc::LightGray;
|
||||||
|
titlebar_button_focus_bg = fc::Black;
|
||||||
|
menu_active_focus_fg = fc::LightGray;
|
||||||
|
menu_active_focus_bg = fc::Blue;
|
||||||
|
menu_active_fg = fc::LightGray;
|
||||||
|
menu_active_bg = fc::Black;
|
||||||
|
menu_inactive_fg = fc::LightGray;
|
||||||
|
menu_inactive_bg = fc::Black;
|
||||||
|
menu_hotkey_fg = fc::Red;
|
||||||
|
menu_hotkey_bg = fc::Black;
|
||||||
|
statusbar_fg = fc::LightGray;
|
||||||
|
statusbar_bg = fc::Black;
|
||||||
|
statusbar_hotkey_fg = fc::Red;
|
||||||
|
statusbar_hotkey_bg = fc::Black;
|
||||||
|
statusbar_separator_fg = fc::LightGray;
|
||||||
|
statusbar_active_fg = fc::LightGray;
|
||||||
|
statusbar_active_bg = fc::Blue;
|
||||||
|
statusbar_active_hotkey_fg = fc::Red;
|
||||||
|
statusbar_active_hotkey_bg = fc::Blue;
|
||||||
|
scrollbar_fg = fc::Cyan;
|
||||||
|
scrollbar_bg = fc::LightGray;
|
||||||
|
scrollbar_button_fg = fc::Black;
|
||||||
|
scrollbar_button_bg = fc::LightGray;
|
||||||
|
scrollbar_button_inactive_fg = fc::Cyan;
|
||||||
|
scrollbar_button_inactive_bg = fc::LightGray;
|
||||||
|
progressbar_fg = fc::Cyan;
|
||||||
|
progressbar_bg = fc::LightGray;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
// class default16ColorDarkTheme
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
|
||||||
|
// constructors and destructor
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
default16ColorDarkTheme::default16ColorDarkTheme()
|
||||||
|
{
|
||||||
|
default16ColorDarkTheme::setColorTheme();
|
||||||
|
}
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
default16ColorDarkTheme::~default16ColorDarkTheme()
|
||||||
|
{ }
|
||||||
|
|
||||||
|
// public methods of default16ColorDarkTheme
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
void default16ColorDarkTheme::setColorTheme()
|
||||||
|
{
|
||||||
|
term_fg = fc::White;
|
||||||
|
term_bg = fc::Cyan;
|
||||||
|
list_fg = fc::Black;
|
||||||
|
list_bg = fc::LightGray;
|
||||||
|
selected_list_fg = fc::Red;
|
||||||
|
selected_list_bg = fc::LightGray;
|
||||||
|
dialog_fg = fc::Black;
|
||||||
|
dialog_resize_fg = fc::LightBlue;
|
||||||
|
dialog_emphasis_fg = fc::Blue;
|
||||||
|
dialog_bg = fc::LightGray;
|
||||||
|
error_box_fg = fc::White;
|
||||||
|
error_box_emphasis_fg = fc::Yellow;
|
||||||
|
error_box_bg = fc::Red;
|
||||||
|
tooltip_fg = fc::White;
|
||||||
|
tooltip_bg = fc::Black;
|
||||||
|
shadow_fg = fc::Black;
|
||||||
|
shadow_bg = fc::LightGray; // only for transparent shadow
|
||||||
|
current_element_focus_fg = fc::White;
|
||||||
|
current_element_focus_bg = fc::Cyan;
|
||||||
|
current_element_fg = fc::LightBlue;
|
||||||
|
current_element_bg = fc::Cyan;
|
||||||
|
current_inc_search_element_fg = fc::LightRed;
|
||||||
|
selected_current_element_focus_fg = fc::LightRed;
|
||||||
|
selected_current_element_focus_bg = fc::Cyan;
|
||||||
|
selected_current_element_fg = fc::Red;
|
||||||
|
selected_current_element_bg = fc::Cyan;
|
||||||
|
label_fg = fc::Black;
|
||||||
|
label_bg = fc::LightGray;
|
||||||
|
label_inactive_fg = fc::DarkGray;
|
||||||
|
label_inactive_bg = fc::LightGray;
|
||||||
|
label_hotkey_fg = fc::Red;
|
||||||
|
label_hotkey_bg = fc::LightGray;
|
||||||
|
label_emphasis_fg = fc::Blue;
|
||||||
|
label_ellipsis_fg = fc::DarkGray;
|
||||||
|
inputfield_active_focus_fg = fc::White;
|
||||||
|
inputfield_active_focus_bg = fc::Cyan;
|
||||||
|
inputfield_active_fg = fc::White;
|
||||||
|
inputfield_active_bg = fc::DarkGray;
|
||||||
|
inputfield_inactive_fg = fc::DarkGray;
|
||||||
|
inputfield_inactive_bg = fc::LightGray;
|
||||||
|
toggle_button_active_focus_fg = fc::White;
|
||||||
|
toggle_button_active_focus_bg = fc::Cyan;
|
||||||
|
toggle_button_active_fg = fc::Black;
|
||||||
|
toggle_button_active_bg = fc::LightGray;
|
||||||
|
toggle_button_inactive_fg = fc::DarkGray;
|
||||||
|
toggle_button_inactive_bg = fc::LightGray;
|
||||||
|
button_active_focus_fg = fc::LightGray;
|
||||||
|
button_active_focus_bg = fc::Cyan;
|
||||||
|
button_active_fg = fc::LightGray;
|
||||||
|
button_active_bg = fc::DarkGray;
|
||||||
|
button_inactive_fg = fc::DarkGray;
|
||||||
|
button_inactive_bg = fc::LightBlue;
|
||||||
|
button_hotkey_fg = fc::White;
|
||||||
|
titlebar_active_fg = fc::White;
|
||||||
|
titlebar_active_bg = fc::DarkGray;
|
||||||
|
titlebar_inactive_fg = fc::DarkGray;
|
||||||
|
titlebar_inactive_bg = fc::LightGray;
|
||||||
|
titlebar_button_fg = fc::DarkGray;
|
||||||
|
titlebar_button_bg = fc::LightGray;
|
||||||
|
titlebar_button_focus_fg = fc::LightGray;
|
||||||
|
titlebar_button_focus_bg = fc::Black;
|
||||||
|
menu_active_focus_fg = fc::White;
|
||||||
|
menu_active_focus_bg = fc::Blue;
|
||||||
|
menu_active_fg = fc::White;
|
||||||
|
menu_active_bg = fc::DarkGray;
|
||||||
|
menu_inactive_fg = fc::LightGray;
|
||||||
|
menu_inactive_bg = fc::DarkGray;
|
||||||
|
menu_hotkey_fg = fc::LightRed;
|
||||||
|
menu_hotkey_bg = fc::DarkGray;
|
||||||
|
statusbar_fg = fc::White;
|
||||||
|
statusbar_bg = fc::DarkGray;
|
||||||
|
statusbar_hotkey_fg = fc::LightRed;
|
||||||
|
statusbar_hotkey_bg = fc::DarkGray;
|
||||||
|
statusbar_separator_fg = fc::LightGray;
|
||||||
|
statusbar_active_fg = fc::White;
|
||||||
|
statusbar_active_bg = fc::Blue;
|
||||||
|
statusbar_active_hotkey_fg = fc::LightRed;
|
||||||
|
statusbar_active_hotkey_bg = fc::Blue;
|
||||||
|
scrollbar_fg = fc::DarkGray;
|
||||||
|
scrollbar_bg = fc::LightBlue;
|
||||||
|
scrollbar_button_fg = fc::Black;
|
||||||
|
scrollbar_button_bg = fc::LightBlue;
|
||||||
|
scrollbar_button_inactive_fg = fc::DarkGray;
|
||||||
|
scrollbar_button_inactive_bg = fc::LightGray;
|
||||||
|
progressbar_fg = fc::DarkGray;
|
||||||
|
progressbar_bg = fc::LightBlue;
|
||||||
|
}
|
||||||
|
|
||||||
} // namespace finalcut
|
} // namespace finalcut
|
||||||
|
|
|
@ -882,7 +882,8 @@ void closeDropDown (FWidget* widget, const FPoint& mouse_position)
|
||||||
if ( ! openmenu )
|
if ( ! openmenu )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if ( openmenu->isInstanceOf("FMenu") )
|
if ( openmenu->isInstanceOf("FMenu")
|
||||||
|
|| openmenu->isInstanceOf("FDialogListMenu") )
|
||||||
{
|
{
|
||||||
bool contains_menu_structure;
|
bool contains_menu_structure;
|
||||||
auto menu = static_cast<FMenu*>(openmenu);
|
auto menu = static_cast<FMenu*>(openmenu);
|
||||||
|
|
|
@ -53,7 +53,7 @@ class FColorPalette
|
||||||
typedef std::function<void(FColor, int, int, int)> FSetPalette;
|
typedef std::function<void(FColor, int, int, int)> FSetPalette;
|
||||||
|
|
||||||
// Constructor
|
// Constructor
|
||||||
FColorPalette(FSetPalette);
|
explicit FColorPalette (const FSetPalette&);
|
||||||
|
|
||||||
// Destructor
|
// Destructor
|
||||||
virtual ~FColorPalette();
|
virtual ~FColorPalette();
|
||||||
|
@ -67,7 +67,9 @@ class FColorPalette
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
void setPalette (FColor, int, int, int);
|
void setPalette (FColor, int, int, int);
|
||||||
|
void setVGAdefaultPalette();
|
||||||
|
|
||||||
|
private:
|
||||||
// Data members
|
// Data members
|
||||||
FSetPalette set_palette;
|
FSetPalette set_palette;
|
||||||
};
|
};
|
||||||
|
@ -99,13 +101,13 @@ class default8ColorPalette final : public FColorPalette
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
// Constructor
|
// Constructor
|
||||||
default8ColorPalette (FSetPalette);
|
explicit default8ColorPalette (const FSetPalette&);
|
||||||
|
|
||||||
// Destructor
|
// Destructor
|
||||||
~default8ColorPalette();
|
~default8ColorPalette();
|
||||||
|
|
||||||
// Accessor
|
// Accessor
|
||||||
virtual const FString getClassName() const;
|
const FString getClassName() const override;
|
||||||
|
|
||||||
// Methods
|
// Methods
|
||||||
void setColorPalette();
|
void setColorPalette();
|
||||||
|
@ -139,13 +141,13 @@ class default16ColorPalette final : public FColorPalette
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
// Constructor
|
// Constructor
|
||||||
default16ColorPalette (FSetPalette);
|
explicit default16ColorPalette (const FSetPalette&);
|
||||||
|
|
||||||
// Destructor
|
// Destructor
|
||||||
~default16ColorPalette();
|
~default16ColorPalette();
|
||||||
|
|
||||||
// Accessor
|
// Accessor
|
||||||
virtual const FString getClassName() const;
|
const FString getClassName() const override;
|
||||||
|
|
||||||
// Methods
|
// Methods
|
||||||
void setColorPalette();
|
void setColorPalette();
|
||||||
|
@ -157,6 +159,33 @@ class default16ColorPalette final : public FColorPalette
|
||||||
inline const FString default16ColorPalette::getClassName() const
|
inline const FString default16ColorPalette::getClassName() const
|
||||||
{ return "default16ColorPalette"; }
|
{ return "default16ColorPalette"; }
|
||||||
|
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
// class default16DarkColorPalette
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
|
||||||
|
class default16DarkColorPalette final : public FColorPalette
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
// Constructor
|
||||||
|
explicit default16DarkColorPalette (const FSetPalette&);
|
||||||
|
|
||||||
|
// Destructor
|
||||||
|
~default16DarkColorPalette();
|
||||||
|
|
||||||
|
// Accessor
|
||||||
|
const FString getClassName() const override;
|
||||||
|
|
||||||
|
// Methods
|
||||||
|
void setColorPalette();
|
||||||
|
void resetColorPalette();
|
||||||
|
};
|
||||||
|
|
||||||
|
// default16ColorPalette inline functions
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
inline const FString default16DarkColorPalette::getClassName() const
|
||||||
|
{ return "default16DarkColorPalette"; }
|
||||||
|
|
||||||
} // namespace finalcut
|
} // namespace finalcut
|
||||||
|
|
||||||
#endif // FCOLORPALETTE_H
|
#endif // FCOLORPALETTE_H
|
||||||
|
|
|
@ -93,6 +93,8 @@ class FStartOptions final
|
||||||
uInt8 : 7; // padding bits
|
uInt8 : 7; // padding bits
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
uInt16 dark_theme : 1;
|
||||||
|
uInt16 : 15; // padding bits
|
||||||
static FStartOptions* start_options;
|
static FStartOptions* start_options;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -163,6 +163,7 @@ class FTerm final
|
||||||
// Typedef
|
// Typedef
|
||||||
typedef std::function<int(int)> defaultPutChar;
|
typedef std::function<int(int)> defaultPutChar;
|
||||||
typedef std::shared_ptr<FColorPalette> FColorPalettePtr;
|
typedef std::shared_ptr<FColorPalette> FColorPalettePtr;
|
||||||
|
typedef FColorPalette::FSetPalette FSetPalette;
|
||||||
|
|
||||||
// Constructor
|
// Constructor
|
||||||
explicit FTerm (bool = false);
|
explicit FTerm (bool = false);
|
||||||
|
@ -276,7 +277,7 @@ class FTerm final
|
||||||
static void resetColorMap();
|
static void resetColorMap();
|
||||||
static void setPalette (FColor, int, int, int);
|
static void setPalette (FColor, int, int, int);
|
||||||
template<typename ClassT>
|
template<typename ClassT>
|
||||||
static void setColorPaletteTheme (FColorPalette::FSetPalette);
|
static void setColorPaletteTheme (const FSetPalette&);
|
||||||
static void setBeep (int, int);
|
static void setBeep (int, int);
|
||||||
static void resetBeep();
|
static void resetBeep();
|
||||||
static void beep();
|
static void beep();
|
||||||
|
@ -440,7 +441,7 @@ inline bool FTerm::unsetUTF8()
|
||||||
|
|
||||||
//----------------------------------------------------------------------
|
//----------------------------------------------------------------------
|
||||||
template<typename ClassT>
|
template<typename ClassT>
|
||||||
inline void FTerm::setColorPaletteTheme (FColorPalette::FSetPalette f)
|
inline void FTerm::setColorPaletteTheme (const FSetPalette& f)
|
||||||
{
|
{
|
||||||
getColorPaletteTheme() = std::make_shared<ClassT>(f);
|
getColorPaletteTheme() = std::make_shared<ClassT>(f);
|
||||||
}
|
}
|
||||||
|
|
|
@ -207,6 +207,68 @@ class default16ColorTheme final : public FWidgetColors
|
||||||
void setColorTheme() override;
|
void setColorTheme() override;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/* Inheritance diagram
|
||||||
|
* ═══════════════════
|
||||||
|
*
|
||||||
|
* ▕▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▏
|
||||||
|
* ▕ FWidgetColors ▏
|
||||||
|
* ▕▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▏
|
||||||
|
* ▲
|
||||||
|
* │
|
||||||
|
* ▕▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▏
|
||||||
|
* ▕ default8ColorDarkTheme ▏
|
||||||
|
* ▕▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▏
|
||||||
|
*/
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
// class default8ColorDarkTheme
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
|
||||||
|
class default8ColorDarkTheme final : public FWidgetColors
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
// Constructor
|
||||||
|
default8ColorDarkTheme();
|
||||||
|
|
||||||
|
// Destructor
|
||||||
|
~default8ColorDarkTheme() override;
|
||||||
|
|
||||||
|
// Method
|
||||||
|
void setColorTheme() override;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/* Inheritance diagram
|
||||||
|
* ═══════════════════
|
||||||
|
*
|
||||||
|
* ▕▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▏
|
||||||
|
* ▕ FWidgetColors ▏
|
||||||
|
* ▕▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▏
|
||||||
|
* ▲
|
||||||
|
* │
|
||||||
|
* ▕▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▏
|
||||||
|
* ▕ default16ColorDarkTheme ▏
|
||||||
|
* ▕▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▏
|
||||||
|
*/
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
// class default16ColorDarkTheme
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
|
||||||
|
class default16ColorDarkTheme final : public FWidgetColors
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
// Constructor
|
||||||
|
default16ColorDarkTheme();
|
||||||
|
|
||||||
|
// Destructor
|
||||||
|
~default16ColorDarkTheme() override;
|
||||||
|
|
||||||
|
// Method
|
||||||
|
void setColorTheme() override;
|
||||||
|
};
|
||||||
|
|
||||||
} // namespace finalcut
|
} // namespace finalcut
|
||||||
|
|
||||||
#endif // FWIDGETCOLORS_H
|
#endif // FWIDGETCOLORS_H
|
||||||
|
|
Loading…
Reference in New Issue