lite源码阅读(四)所有的函数

本文深入探讨了Lite框架中的各种核心组件及其详细功能,包括窗口管理、控件操作、主题设置等,旨在为开发者提供一个全面的Lite框架使用指南。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

下面列出所有的函数

1 lite lite

lite_open
lite_close
lite_get_layer_interface
lite_get_layer_size
init_default_cursor
free_default_cursor

2 lite window

lite_new_window
lite_set_window_opacity
lite_window_event_loop
lite_destroy_window
lite_set_window_background_color

3 lite label

lite_new_label
lite_set_label_text
lite_set_label_alignment
lite_set_label_font
lite_set_label_color
destroy_label
draw_label

4 lite textline

lite_new_textline
lite_set_textline_text
lite_get_textline_text
lite_on_textline_enter
lite_on_textline_abort
destroy_textline
draw_textline
on_focus_in
on_focus_out
set_modified
clear_modified
on_key_down
on_button_down


5 lite button

lite_new_button
lite_set_button_type
lite_enable_button
lite_set_button_state
lite_get_button_state
lite_set_button_image
lite_set_button_image_desc
lite_set_button_image_surface
lite_on_button_press
destroy_button 
on_enter 
on_leave 
on_button_down 
on_button_up
draw_button


6 lite image

lite_new_image
lite_load_image 
lite_set_image_blitting_flags
lite_set_image_clipping
lite_set_image_reflection
lite_set_image_visible
destroy_image
draw_image

7 lite box

lite_draw_box
lite_focus_box

8 lite progressbar

lite_new_progressbar
lite_set_progressbar_images
lite_set_progressbar_value
destroy_progressbar
draw_progressbar

9 lite slider

lite_new_slider
lite_set_slider_pos
lite_on_slider_update
destroy_slider
draw_slider
on_focus_in
on_focus_out
on_button_down
on_motion

10 lite text button

lite_new_text_button
lite_set_text_button_caption
lite_enable_text_button
lite_set_text_button_state
lite_on_text_button_press
lite_new_text_button_theme
lite_destroy_text_button_theme
destroy_text_button
on_enter
on_leave
on_button_down
on_button_up
draw_text_button
make_truncated_string
draw_text_button_caption
draw_text_button_bkgnd

11 lite check

lite_new_check_theme
lite_new_check
lite_set_check_caption
lite_enable_check
lite_check_check
lite_get_check_state
lite_on_check_press
lite_destroy_check_theme
destroy_check
on_leave
on_button_down
on_button_up
draw_check
make_truncated_string
draw_check_caption

12 lite scrollbar

lite_new_scrollbar
lite_enable_scrollbar
lite_set_scroll_pos
lite_get_scroll_pos
lite_on_scrollbar_update
lite_set_scroll_info
lite_new_scrollbar_theme
lite_destroy_scrollbar_theme
destroy_scrollbar
draw_scrollbar
on_enter
on_leave
on_focus_in
on_focus_out
on_button_down
on_button_up
on_motion
draw_enlarged_image
get_scrollbar_rect
pt_in_rect
on_scroll
can_scroll

13 lite animation

lite_new_animation
lite_load_animation
lite_start_animation
lite_update_animation
lite_stop_animation
lite_animation_running
destroy_animation
draw_animation

14 lite list

lite_new_list
lite_list_set_row_height
lite_list_get_row_height
lite_enable_list
lite_list_insert_item
lite_list_get_item
lite_list_set_item
lite_list_del_item
lite_list_sort_items
lite_list_get_item_count
lite_list_get_selected_item_index
lite_list_set_selected_item_index
lite_list_ensure_visible
lite_list_on_draw_item
lite_list_on_sel_change
lite_list_recalc_layout
lite_new_list_theme
lite_destroy_list_theme
destroy_list
draw_list
on_enter
on_leave
on_focus_in
on_focus_out
on_button_down
on_button_up
on_motion
on_key_down
on_vertical_scrollbar_update
pt_in_rect
get_vertical_scrollbar_rect
list_needs_scroll
list_hittest
list_update_scrollbar

15 lite box

lite_new_box
lite_draw_box
lite_update_box
lite_destroy_box_contents
lite_destroy_box
lite_init_box
lite_init_box_at
lite_reinit_box_and_children
lite_clear_box
lite_add_child
lite_remove_child
lite_set_box_visible
draw_box_and_children
defocus_me_or_children
deenter_me_or_children
undrag_me_or_children


16 lite cursor

lite_get_current_cursor
lite_set_current_cursor
lite_load_cursor_from_file
lite_load_cursor_from_desc
lite_free_cursor
lite_set_window_cursor
lite_show_cursor
lite_hide_cursor
lite_change_cursor_opacity
lite_get_cursor_opacity
lite_set_cursor_hotspot

17 lite event

lite_get_main_event_buffer
lite_get_current_key_modifier
lite_exit_event_loop
lite_set_exit_idle_loop
prvlite_set_current_key_modifier
prvlite_create_event_buffer
prvlite_release_event_buffer
prvlite_attach_to_event_buffer
prvlite_set_event_loop_alive
prvlite_wakeup_event_loop


18 lite font

lite_get_font
lite_get_font_from_file
lite_ref_font
lite_get_font_filename
lite_release_font
lite_font
lite_set_active_font
lite_get_active_font
cache_get_entry_from_file
cache_get_entry
cache_release_entry
prvlite_font_init

在lite_config.h里面定义了默认的字体:
#define DEFAULT_FONT_SYSTEM                     "vera"
在创建一些控件如label,button的时候要取得字体,如果没有字体的话当然也就无法运行了.默认的安装路径是/usr/local/share/fonts/truetype下.

当然除了定义使用什么字体,也可以定义字体的类型,在font.c中定义了四种类型:
static char* font_styles_global[4] = {
     "", "bd", "i", "bi"
};

分别是正常,bold, italic, bold italic.
在webkitdfb中初始化就用到了bd.

struct _LiteFont {
     int            refs;
     char          *file;
     int            size;
     IDirectFBFont *font;
     DFBFontAttributes attr;


     LiteFont      *next;
     LiteFont      *prev;
};
static LiteFont        *fonts       = NULL;
在文件开始处定义了结构体LiteFont全局变量fonts.如果现在的程序中使用了一种新的字体就增加在这个双向链表的头部.如果现在使用的这种字体已经在链表中有了就对引用值加1就可以了.

19 lite theme

lite_theme_frame_load
lite_theme_frame_unload
lite_theme_frame_target_update

20 lite util

lite_util_load_image
lite_util_load_image_desc
lite_util_tile_image
lite_util_sub_surface

21 lite window

lite_new_window
lite_init_window
lite_window_set_creator
lite_window_get_creator
release_grabs
lite_release_window_drag_box
lite_window_set_modal
draw_updated_windows
lite_enqueue_window_timeout
lite_remove_window_timeout
lite_rebase_window_timeouts
remove_next_timeout_callback
get_time_until_next_timeout
lite_enqueue_idle_callback
lite_remove_idle_callback
remove_top_idle_callback
lite_window_event_loop
run_window_event_loop
lite_window_event_available
lite_set_window_enabled
lite_update_all_windows
lite_update_window
lite_set_window_title
lite_set_window_opacity
lite_set_window_background
lite_set_window_background_color
lite_set_window_blend_mode
lite_resize_window
lite_set_window_bounds
lite_get_window_size
lite_restore_window
lite_focus_box
lite_handle_window_event
lite_flush_window_events
lite_post_event_to_window
lite_on_window_event
lite_on_window_universal_event
lite_on_window_user_event
lite_find_my_window
lite_close_window
lite_destroy_window
lite_destroy_all_windows
lite_on_raw_window_mouse
lite_on_raw_window_mouse_moved
lite_on_window_mouse
lite_on_raw_window_keyboard
lite_on_window_keyboard
lite_on_raw_window_wheel
lite_on_window_wheel
lite_release_window_resources
lite_get_event_buffer
lite_default_window_theme_loaded
lite_free_window_theme
flush_resize
flush_motion
handle_move
handle_resize
handle_close
handle_enter
handle_leave
handle_lost_focus
validate_entered_box
handle_got_focus
handle_motion
handle_button
handle_key_up
handle_key_down
handle_wheel
find_child
child_coords
find_window_by_id
focus_traverse
add_window
remove_window
destroy_window_data
handle_destroy
render_title
render_border
draw_window
create_event_buffer
prvlite_load_default_window_theme
prvlite_release_window_resources


评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值