<commit_before>#include "e.h"

typedef struct _CFColor_Class             CFColor_Class;
typedef struct _CFColor_Class_Description CFColor_Class_Description;

typedef enum {
   COLOR_CLASS_UNKNOWN = 0,
   COLOR_CLASS_SOLID = 1,
   COLOR_CLASS_TEXT = 2
} CFColor_Class_Type;

struct _CFColor_Class
{
   const char    *key;
   const char    *name;

   E_Color_Class *cc;

   struct
   {
      int       r[3], g[3], b[3], a[3];
      Eina_Bool changed;
      Eina_Bool enabled;
   } val;

   struct
   {
      Evas_Object       *icon;
      Evas_Object       *end;
      CFColor_Class_Type type;
   } gui;
};

struct _E_Config_Dialog_Data
{
   int        state;
   E_Color    color[3];

   Eina_List *classes;
   Eina_List *selected;
   Eina_List *changed;

   struct
   {
      Evas        *evas;
      Evas_Object *ilist;
      Evas_Object *frame;
      Evas_Object *state;
      Evas_Object *color[3];
      Evas_Object *reset;
      Evas_Object *text_preview;
      Eina_List   *disable_list;
   } gui;

   Ecore_Timer *delay_load_timer;
   Ecore_Timer *delay_color_timer;
   Ecore_Idler *selection_idler;

   Eina_Bool    populating;
};

struct _CFColor_Class_Description
{
   const char        *key;
   size_t             keylen;
   const char        *name;
   CFColor_Class_Type type;
};

#define CCDESC_S(k, n) {k, sizeof(k) - 1, n, COLOR_CLASS_SOLID}
#define CCDESC_T(k, n) {k, sizeof(k) - 1, n, COLOR_CLASS_TEXT}

/*
 * TODO PRE-RELEASE: check all color classes
 */
static const CFColor_Class_Description _color_classes_wm[] =
{
   CCDESC_T("border_title", N_("Border Title")),
   CCDESC_T("border_title_active", N_("Border Title Active")),
   CCDESC_T("border_frame", N_("Border Frame")),
   CCDESC_T("border_frame_active", N_("Border Frame Active")),
   CCDESC_S("comp_focus-out_color", N_("Composite Focus-out Color")),
   CCDESC_T("error_text", N_("Error Text")),
   CCDESC_S("menu_base", N_("Menu Background Base")),
   CCDESC_T("menu_title", N_("Menu Title")),
   CCDESC_T("menu_title_active", N_("Menu Title Active")),
   CCDESC_T("menu_item", N_("Menu Item")),
   CCDESC_T("menu_item_active", N_("Menu Item Active")),
   CCDESC_T("menu_item_disabled", N_("Menu Item Disabled")),
   CCDESC_T("move_text", N_("Move Text")),
   CCDESC_T("resize_text", N_("Resize Text")),
   CCDESC_T("winlist_item", N_("Winlist Item")),
   CCDESC_T("winlist_item_active", N_("Winlist Item Active")),
   CCDESC_T("winlist_label", N_("Winlist Label")),
   CCDESC_T("winlist_title", N_("Winlist Title")),
   CCDESC_S("dialog_base", N_("Dialog Background Base")),<commit_msg>colorclass config - add option for focused color class too.<commit_after>#include "e.h"

typedef struct _CFColor_Class             CFColor_Class;
typedef struct _CFColor_Class_Description CFColor_Class_Description;

typedef enum {
   COLOR_CLASS_UNKNOWN = 0,
   COLOR_CLASS_SOLID = 1,
   COLOR_CLASS_TEXT = 2
} CFColor_Class_Type;

struct _CFColor_Class
{
   const char    *key;
   const char    *name;

   E_Color_Class *cc;

   struct
   {
      int       r[3], g[3], b[3], a[3];
      Eina_Bool changed;
      Eina_Bool enabled;
   } val;

   struct
   {
      Evas_Object       *icon;
      Evas_Object       *end;
      CFColor_Class_Type type;
   } gui;
};

struct _E_Config_Dialog_Data
{
   int        state;
   E_Color    color[3];

   Eina_List *classes;
   Eina_List *selected;
   Eina_List *changed;

   struct
   {
      Evas        *evas;
      Evas_Object *ilist;
      Evas_Object *frame;
      Evas_Object *state;
      Evas_Object *color[3];
      Evas_Object *reset;
      Evas_Object *text_preview;
      Eina_List   *disable_list;
   } gui;

   Ecore_Timer *delay_load_timer;
   Ecore_Timer *delay_color_timer;
   Ecore_Idler *selection_idler;

   Eina_Bool    populating;
};

struct _CFColor_Class_Description
{
   const char        *key;
   size_t             keylen;
   const char        *name;
   CFColor_Class_Type type;
};

#define CCDESC_S(k, n) {k, sizeof(k) - 1, n, COLOR_CLASS_SOLID}
#define CCDESC_T(k, n) {k, sizeof(k) - 1, n, COLOR_CLASS_TEXT}

/*
 * TODO PRE-RELEASE: check all color classes
 */
static const CFColor_Class_Description _color_classes_wm[] =
{
   CCDESC_T("border_title", N_("Border Title")),
   CCDESC_T("border_title_active", N_("Border Title Active")),
   CCDESC_T("border_frame", N_("Border Frame")),
   CCDESC_T("border_frame_active", N_("Border Frame Active")),
   CCDESC_S("comp_focus_color", N_("Composite Focus Color")),
   CCDESC_S("comp_focus-out_color", N_("Composite Focus-out Color")),
   CCDESC_T("error_text", N_("Error Text")),
   CCDESC_S("menu_base", N_("Menu Background Base")),
   CCDESC_T("menu_title", N_("Menu Title")),
   CCDESC_T("menu_title_active", N_("Menu Title Active")),
   CCDESC_T("menu_item", N_("Menu Item")),
   CCDESC_T("menu_item_active", N_("Menu Item Active")),
   CCDESC_T("menu_item_disabled", N_("Menu Item Disabled")),
   CCDESC_T("move_text", N_("Move Text")),
   CCDESC_T("resize_text", N_("Resize Text")),
   CCDESC_T("winlist_item", N_("Winlist Item")),
   CCDESC_T("winlist_item_active", N_("Winlist Item Active")),
   CCDESC_T("winlist_label", N_("Winlist Label")),
   CCDESC_T("winlist_title", N_("Winlist Title")),
   CCDESC_S("dialog_base", N_("Dialog Background Base")),
{'fraction_non_alphanumeric': 0.12748091603053435, 'fraction_numerical': 0.004198473282442748, 'mean_word_length': 3.717371737173717, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1686746', 'n_tokens_mistral': 1971, 'n_tokens_neox': 1930, 'n_words': 391}