]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
merge gfxmenu into gfxmenu+mulitterm
authorVladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Tue, 29 Dec 2009 16:33:35 +0000 (17:33 +0100)
committerVladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Tue, 29 Dec 2009 16:33:35 +0000 (17:33 +0100)
1  2 
gfxmenu/gui_circular_progress.c
gfxmenu/gui_list.c
gfxmenu/gui_progress_bar.c
gfxmenu/view.c
include/grub/gui.h

Simple merge
index 68f19a3a64c63df2a96f873bbd02fe78b20371b2,c55cfd85cf101582b352127ab578dcfd23722d91..e2e0965ed5960005328fa0ffb5471559ee80a0f8
@@@ -530,29 -513,30 +513,30 @@@ list_set_property (void *vself, const c
  /* Set necessary information that the gfxmenu view provides.  */
  static void
  list_set_view_info (void *vself,
 -                    const char *theme_path,
 -                    grub_gfxmenu_model_t menu)
 +                    grub_gfxmenu_view_t view)
  {
    list_impl_t self = vself;
 -  grub_gfxmenu_icon_manager_set_theme_path (self->icon_manager, theme_path);
 -  self->menu = menu;
 +  grub_gfxmenu_icon_manager_set_theme_path (self->icon_manager,
 +                                          view->theme_path);
 +  self->view = view;
  }
  
+ static struct grub_gui_component_ops list_comp_ops =
+   {
+     .destroy = list_destroy,
+     .get_id = list_get_id,
+     .is_instance = list_is_instance,
+     .paint = list_paint,
+     .set_parent = list_set_parent,
+     .get_parent = list_get_parent,
+     .set_bounds = list_set_bounds,
+     .get_bounds = list_get_bounds,
+     .get_minimal_size = list_get_minimal_size,
+     .set_property = list_set_property
+   };
  static struct grub_gui_list_ops list_ops =
  {
-   .component_ops =
-     {
-       .destroy = list_destroy,
-       .get_id = list_get_id,
-       .is_instance = list_is_instance,
-       .paint = list_paint,
-       .set_parent = list_set_parent,
-       .get_parent = list_get_parent,
-       .set_bounds = list_set_bounds,
-       .get_bounds = list_get_bounds,
-       .get_preferred_size = list_get_preferred_size,
-       .set_property = list_set_property
-     },
    .set_view_info = list_set_view_info
  };
  
Simple merge
diff --cc gfxmenu/view.c
index 938e41979c91175b1dee73bb6b591b8a3398e359,414541ddab00e37bd2c14fa247a145e41d082886..5008b105bfb95d508f10462f88f22d1a1181a874
@@@ -116,8 -146,23 +116,8 @@@ grub_gfxmenu_view_destroy (grub_gfxmenu
    grub_free (view->progress_message_text);
    grub_free (view->theme_path);
    if (view->canvas)
-     view->canvas->ops->component.destroy (view->canvas);
+     view->canvas->component.ops->destroy (view->canvas);
    grub_free (view);
 -
 -  set_text_mode ();
 -  destroy_terminal ();
 -}
 -
 -/* Sets MESSAGE as the progress message for the view.
 -   MESSAGE can be 0, in which case no message is displayed.  */
 -static void
 -set_progress_message (grub_gfxmenu_view_t view, const char *message)
 -{
 -  grub_free (view->progress_message_text);
 -  if (message)
 -    view->progress_message_text = grub_strdup (message);
 -  else
 -    view->progress_message_text = 0;
  }
  
  static void
index 605242da6df8d1d187ee74d929fd96f7ef85c26b,873d29e7665734794f35a8508659176bd4616687..9cfbdde8197041f3a5eaf80d3319da33aa13c601
@@@ -71,11 -70,44 +70,43 @@@ struct grub_gui_container_op
  
  struct grub_gui_list_ops
  {
-   struct grub_gui_component_ops component_ops;
    void (*set_view_info) (void *self,
 -                         const char *theme_path,
 -                         grub_gfxmenu_model_t menu);
 +                         grub_gfxmenu_view_t view);
  };
  
+ typedef grub_uint32_t grub_fixed_unsigned_t;
+ #define GRUB_FIXED_1 0x10000
+ static inline unsigned
+ grub_fixed_ufu_divide (grub_uint32_t a, grub_fixed_unsigned_t b)
+ {
+   return (a << 16) / b;
+ }
+ static inline grub_fixed_unsigned_t
+ grub_fixed_fuf_divide (grub_fixed_unsigned_t a, grub_uint32_t b)
+ {
+   return a / b;
+ }
+ static inline unsigned
+ grub_fixed_ufu_multiply (grub_uint32_t a, grub_fixed_unsigned_t b)
+ {
+   return (a * b) >> 16;
+ }
+ static inline unsigned
+ grub_fixed_to_unsigned (grub_fixed_unsigned_t in)
+ {
+   return in >> 16;
+ }
+ static inline grub_fixed_unsigned_t
+ grub_unsigned_to_fixed (unsigned in)
+ {
+   return in << 16;
+ }
  struct grub_gui_component
  {
    struct grub_gui_component_ops *ops;