; _______________________________________________________________________________________
;|                                                                                       |
;| ..::FreshLib::..  Free, open source. Licensed under "BSD 2-clause" license."          |
;|_______________________________________________________________________________________|
;
;  Description: This file contains procedures and data, that form the appearance of the
;               FreshLib GUI application. Colors, control borders, backgrownd drawing etc.
;
;  Target OS: Any
;
;  Dependencies:
;
;  Notes: The user should be able to change these settings and if he uses external
;         procedures, then the code from this library should not be compiled.
;_________________________________________________________________________________________
module "GUI theme data and code library"

; Named theme colors

; cyan
clTurquoise = $ff1abc9c
clGreenSea  = $ff16A085

; green
clEmerald   = $ff2ecc71
clNephritis = $ff27ae60

; blue

clPetermann = $ff3498db
clBelizeHole = $ff2980b9

; purple

clAmethyst = $ff9b59b6
clWisteria = $ff8e44ad

; black

clWetAsphalt = $ff34495e
clMidnight = $ff2c3e50

; gray

clConcrete = $ff95a5a6
clAsbestos = $ff7f8c8d

; light gray / white

clClouds = $ffecf0f1
clSilver = $ffbdc3c7
clWhite  = $ffffffff

; Yellow / orange

clSunflower = $fff1c40f
clOrange = $fff39c12

; Brown / orange

clCarrot = $ffe67e22
clPumpkin = $ffd35400

; Red

clAlizarin =    $ffe74c3c
clPomegranate = $ffc0392b

iglobal

        NamedArray      GUI,                                         \
\
\ ; Widgets border colors and width
                clBorderNeutral,   HEX, clTurquoise,                   \
                clBorderLight,     HEX, clTurquoise,                   \
                clBorderDark,      HEX, clTurquoise,                   \
                clBorderNeutralGray, HEX, $ff606060,                   \
                clBorderLightGray, HEX, $ff606060,                     \
                clBorderDarkGray,  HEX, $ff606060,                     \
                clBorderFocused,   HEX, clAlizarin,                    \
\
                boxBorderWidth,  NUM, 2,                             \
\
\ ; TButton colors and styles. The multivalue fields are for Neutral, Hovered and Pressed states.
\
               clBtnBk,         HEX, <clTurquoise, $ff48c9b0, clGreenSea, $807b7b7b>,   \
               clBtnTxt,        HEX, <clWhite, clWhite, clSilver, $80ffffff>,           \
               btnBorder,       NUM, <bxNone, bxNone, bxNone, bxNone>,                  \
               btnPressedOfsX,  NUM, 0,                                      \
               btnPressedOfsY,  NUM, 0,                                      \
               btnMarginX,      NUM, 8,                                      \
               btnMarginY,      NUM, 8,                                      \
\
\ ; TEdit colors and styles.
\
               clEditBk,          HEX, clClouds,                             \
               clEditBkFocused,   HEX, clClouds,                             \
               clEditTxt,         HEX, $ff000000,                            \
               clEditSel,         HEX, clBelizeHole and $00ffffff or $60000000,                         \
               clEditSelTxt,      HEX, $ffffffff,                            \
               editBorder,        NUM, bxFlat,                               \
               editBorderFocused, NUM, bxFlat,                               \
\
\ ; Dialog boxes and TForm color and styles
\
               clDialogBk,        HEX, clClouds,                             \
               clDialogTxt,       HEX, $ff000000,                            \
               clSplitter,        HEX, clWetAsphalt,                          \
\
\ ; TProgress colors and styles
\
              clProgressBk,       HEX, clClouds,                             \
              clProgressBar,      HEX, clTurquoise,                          \
              progressBorder,     NUM, bxFlat,                               \
\
\ ; TScrollbar colors and styles
\
              clScrollBk,         HEX, <clSilver and $3fffffff, clSilver and $a0ffffff>,     \
              clScrollSlider,     HEX, <clAsbestos and $7fffffff, clTurquoise>,              \
              borderScroll,       NUM, bxNone,                                               \
              scrollWidth,        NUM, 12,                                                   \
              minSliderHeight,    NUM, 24,                                                   \
\
\ ; TLabel colors and styles
\
              clLabelBk,          HEX, $00000000,                                            \
              clLabelTxt,         HEX, $ff000000,                                            \
\
\ ; TTreeView colors and styles.
\
              clTreeViewBack,     HEX, clClouds,                                             \
              clTreeViewText,     HEX, $ff000000,                                            \
              clTreeSelected,     HEX, clBelizeHole,                                         \
              clTreeSelectedTxt,  HEX, clWhite,                                              \
              clTreeFocused,      HEX, clPumpkin,                                            \
              clTreeFocusedTxt,   HEX, clWhite,                                              \
\
              tvBorder,           NUM, bxFlat,                                               \
\
              tvIcons,            PNG, <"%lib%/gui/images/treeview/right.png", "%lib%/gui/images/treeview/down.png">,     \
\
\ ; TMenu colors and styles
\
              clMenuBack,         HEX, clClouds,                                             \
              clMenuText,         HEX, $ff000000,                                            \
              clMenuTextGray,     HEX, $90000000,                                            \
              clMenuSelection,    HEX, clBelizeHole,                                         \
              borderMenu,         NUM, bxFlat,                                               \
              menuIconMargin,     NUM, 4,                                                    \
              menuSeparatorHeight,NUM, 12,                                                   \
              menuMinTextDist,    NUM, 32,                                                   \
              menuSubIcon,        PNG, "%lib%/gui/images/menu/submenu.png",                  \
              menuSubIconSel,     PNG, "%lib%/gui/images/menu/submenusel.png",               \
              menuSubIconGray,    PNG, "%lib%/gui/images/menu/submenugray.png",              \
\
\ ; Menu graphics
\
              iconMenuChecked,    PNG, "%lib%/gui/images/menu/check_flat.png",               \
              iconMenuCheckedGray, PNG, "%lib%/gui/images/menu/check_flat_gray.png",         \
\
\ ; Checkbox colors
\
              clCheckboxBack,     HEX, <$ffe0e0e0, $ffffffff, $ffc0c0c0, $80c0c0c0>,         \
              clCheckboxTxt,      HEX, $ff000000,                                            \
              clCheckboxTxtGray,  HEX, $ff606060,                                            \
              cbIconSize,         NUM, 13,                                                   \
              cbMargin,           NUM, 2,                                                    \
              borderCheckbox,     NUM, bxFlat,                                               \
              iconChecked,        PNG, "%lib%/gui/images/checkbox/check_flat.png",           \
              iconCheckedGray,    PNG, "%lib%/gui/images/checkbox/check_flat_gray.png",      \
\
\ ; Default font
\
              DefaultFont,        FONT, "Liberation Sans": 13 : fwDemibold : 0

endg






endmodule
