]> git.eshelyaron.com Git - emacs.git/commitdiff
Minor cleanups to Haiku menu code
authorPo Lu <luangruo@yahoo.com>
Tue, 19 Apr 2022 04:39:37 +0000 (04:39 +0000)
committerPo Lu <luangruo@yahoo.com>
Tue, 19 Apr 2022 04:39:37 +0000 (04:39 +0000)
* src/haiku_draw_support.cc (BView_SetHighColorForVisibleBell):
Delete function.
* src/haiku_font_support.cc (BFont_dat): Rename to
`BFont_metrics'.
* src/haiku_support.cc (DrawContent): Use correct UI color for
control text.
* src/haiku_support.h (HAIKU_MODIFIER_ALT): Turn into enum.
(enum haiku_modifier_specification): New enum.
* src/haikufont.c (haikufont_open, haikufont_close): Fix coding
style.

src/haiku_draw_support.cc
src/haiku_font_support.cc
src/haiku_support.cc
src/haiku_support.h
src/haikufont.c

index f8df298958f1ba3bf0fb47978a6413b38bb61a58..a8d46d000a3cf3bbad24884882c22a9dcf8d559b 100644 (file)
@@ -468,16 +468,6 @@ BView_FillTriangle (void *view, int x1, int y1,
                    BPoint (x3, y3));
 }
 
-void
-BView_SetHighColorForVisibleBell (void *view, uint32_t color)
-{
-  BView *vw = (BView *) view;
-  rgb_color col;
-  rgb32_to_rgb_color (color, &col);
-
-  vw->SetHighColor (col);
-}
-
 void
 BView_InvertRect (void *view, int x, int y, int width, int height)
 {
index d3e1128e0911184b7f5bde625a5c6683ad340537..6bb934af5f4e31407057b49a84520fd5dc6e9dc5 100644 (file)
@@ -85,9 +85,9 @@ BFont_close (void *font)
 }
 
 void
-BFont_dat (void *font, int *px_size, int *min_width, int *max_width,
-          int *avg_width, int *height, int *space_width, int *ascent,
-          int *descent, int *underline_position, int *underline_thickness)
+BFont_metrics (void *font, int *px_size, int *min_width, int *max_width,
+              int *avg_width, int *height, int *space_width, int *ascent,
+              int *descent, int *underline_position, int *underline_thickness)
 {
   BFont *ft = (BFont *) font;
   struct font_height fheight;
index 1feea6c450221d6dc465bd780b6468e45350e5f2..290b2541f4cb71fab72bd7537b2d71009f4a31a7 100644 (file)
@@ -2263,7 +2263,7 @@ public:
 
     menu->PushState ();
     menu->SetFont (be_bold_font);
-    BView_SetHighColorForVisibleBell (menu, 0);
+    menu->SetHighColor (ui_color (B_CONTROL_TEXT_COLOR));
     BMenuItem::DrawContent ();
     menu->PopState ();
   }
index 4718be4f84af29366db738641a67f84c8c897ab3..7f6f6e9b0d71ab8a210c868d5d432e55cd64d19f 100644 (file)
@@ -131,10 +131,13 @@ struct haiku_dummy_event
   char dummy;
 };
 
-#define HAIKU_MODIFIER_ALT (1)
-#define HAIKU_MODIFIER_CTRL (1 << 1)
-#define HAIKU_MODIFIER_SHIFT (1 << 2)
-#define HAIKU_MODIFIER_SUPER (1 << 3)
+enum haiku_modifier_specification
+  {
+    HAIKU_MODIFIER_ALT  = 1,
+    HAIKU_MODIFIER_CTRL         = (1 << 1),
+    HAIKU_MODIFIER_SHIFT = (1 << 2),
+    HAIKU_MODIFIER_SUPER = (1 << 3),
+  };
 
 struct haiku_key_event
 {
@@ -459,8 +462,8 @@ extern void BWindow_dimensions (void *, int *, int *);
 extern void BWindow_Flush (void *);
 
 extern void BFont_close (void *);
-extern void BFont_dat (void *, int *, int *, int *, int *,
-                      int *, int *, int *, int *, int *, int *);
+extern void BFont_metrics (void *, int *, int *, int *, int *,
+                          int *, int *, int *, int *, int *, int *);
 extern int BFont_have_char_p (void *, int32_t);
 extern int BFont_have_char_block (void *, int32_t, int32_t);
 extern void BFont_char_bounds (void *, const char *, int *, int *, int *);
@@ -468,11 +471,9 @@ extern void BFont_nchar_bounds (void *, const char *, int *, int *,
                                int *, int32_t);
 extern struct haiku_font_pattern *BFont_find (struct haiku_font_pattern *);
 
-
 extern void BView_StartClip (void *);
 extern void BView_EndClip (void *);
 extern void BView_SetHighColor (void *, uint32_t);
-extern void BView_SetHighColorForVisibleBell (void *, uint32_t);
 extern void BView_SetLowColor (void *, uint32_t);
 extern void BView_SetPenSize (void *, int);
 extern void BView_SetFont (void *, void *);
@@ -639,10 +640,10 @@ extern bool be_drag_and_drop_in_progress (void);
 extern bool be_replay_menu_bar_event (void *, struct haiku_menu_bar_click_event *);
 
 #ifdef __cplusplus
-extern void *find_appropriate_view_for_draw (void *);
 }
 
 extern _Noreturn void gui_abort (const char *);
+extern void *find_appropriate_view_for_draw (void *);
 #endif /* _cplusplus */
 
 #endif /* _HAIKU_SUPPORT_H_ */
index 4e81e577039b92cf1bac2309546aa0fcd814e4f6..960ca466bc093db46d95bac04d77c179fd49b012 100644 (file)
@@ -727,10 +727,10 @@ haikufont_open (struct frame *f, Lisp_Object font_entity, int x)
     avg_width, height, space_width, ascent,
     descent, underline_pos, underline_thickness;
 
-  BFont_dat (be_font, &px_size, &min_width,
-            &max_width, &avg_width, &height,
-            &space_width, &ascent, &descent,
-            &underline_pos, &underline_thickness);
+  BFont_metrics (be_font, &px_size, &min_width,
+                &max_width, &avg_width, &height,
+                &space_width, &ascent, &descent,
+                &underline_pos, &underline_thickness);
 
   font->pixel_size = px_size;
   font->min_width = min_width;
@@ -757,22 +757,31 @@ haikufont_open (struct frame *f, Lisp_Object font_entity, int x)
 static void
 haikufont_close (struct font *font)
 {
+  struct haikufont_info *info = (struct haikufont_info *) font;
+  int i;
+
   if (font_data_structures_may_be_ill_formed ())
     return;
-  struct haikufont_info *info = (struct haikufont_info *) font;
 
   block_input ();
   if (info && info->be_font)
     BFont_close (info->be_font);
 
-  for (int i = 0; i < info->metrics_nrows; i++)
-    if (info->metrics[i])
-      xfree (info->metrics[i]);
+  for (i = 0; i < info->metrics_nrows; i++)
+    {
+      if (info->metrics[i])
+       xfree (info->metrics[i]);
+    }
+
   if (info->metrics)
     xfree (info->metrics);
-  for (int i = 0; i < 0x100; ++i)
-    if (info->glyphs[i])
-      xfree (info->glyphs[i]);
+
+  for (i = 0; i < 0x100; ++i)
+    {
+      if (info->glyphs[i])
+       xfree (info->glyphs[i]);
+    }
+
   xfree (info->glyphs);
   unblock_input ();
 }