# HG changeset patch # User Christian Morlok # Date 1269681972 -3600 # Node ID 8e41f998124ac64029bb7926825c018fa3e8f8b6 # Parent 03b332946b95459ebde0da9f62b8a242d680b762# Parent 1494d39c2fee42d3120f21e7628cf348771172ae Merge v5backport diff -r 1494d39c2fee -r 8e41f998124a dependencies/ABLD.BAT --- a/dependencies/ABLD.BAT Sat Mar 27 03:52:59 2010 +0530 +++ b/dependencies/ABLD.BAT Sat Mar 27 10:26:12 2010 +0100 @@ -3,7 +3,7 @@ REM Bldmake-generated batch file - ABLD.BAT REM ** DO NOT EDIT ** -perl -S ABLD.PL "\S60\devices\S60_5th_Edition_SDK_v1.0\homescreensrv\dependencies\\" %1 %2 %3 %4 %5 %6 %7 %8 %9 +perl -S ABLD.PL "\homescreensrv\dependencies\\" %1 %2 %3 %4 %5 %6 %7 %8 %9 if errorlevel==1 goto CheckPerl goto End diff -r 1494d39c2fee -r 8e41f998124a dependencies/S3libs/bld.inf diff -r 1494d39c2fee -r 8e41f998124a dependencies/aknlayout.lag --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/dependencies/aknlayout.lag Sat Mar 27 10:26:12 2010 +0100 @@ -0,0 +1,1090 @@ +// ..\cdl\AknLayout.lag generated by: +// AknLayoutCompiler Cdl2Lag ..\cdl\AknLayout.lag ..\cdl\AknLayout.cdl ..\cdl\AknApacLayout.cdl +#if !defined(AKNLAYOUT_LAG) +#define AKNLAYOUT_LAG +#include +#define AKN_LAYOUT_WINDOW_screen AknLayout::screen() +#define AKN_LAYOUT_WINDOW_application_window AknLayout::application_window +#define AKN_LAYOUT_WINDOW_status_pane AknLayout::status_pane +#define AKN_LAYOUT_WINDOW_main_pane AknLayout::main_pane +#define AKN_LAYOUT_WINDOW_control_pane AknLayout::control_pane +#define AKN_LAYOUT_WINDOW_signal_pane AknLayout::signal_pane +#define AKN_LAYOUT_WINDOW_context_pane AknLayout::context_pane +#define AKN_LAYOUT_WINDOW_title_pane AknLayout::title_pane +#define AKN_LAYOUT_WINDOW_battery_pane AknLayout::battery_pane +#define AKN_LAYOUT_WINDOW_uni_indicator_pane AknLayout::uni_indicator_pane +#define AKN_LAYOUT_WINDOW_navi_pane AknLayout::navi_pane +#define AKN_LAYOUT_WINDOW_Status_pane_elements_Line_1 AknLayout::Status_pane_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Status_pane_elements_Line_2 AknLayout::Status_pane_elements_Line_2() +#define AKN_LAYOUT_TABLE_LIMITS_Status_pane_elements_Limits AknLayout::Status_pane_elements_Limits() +#define AKN_LAYOUT_TABLE_Status_pane_elements AknLayout::Status_pane_elements +#define AKN_LAYOUT_WINDOW_Signal_pane_elements_Line_1 AknLayout::Signal_pane_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Signal_pane_elements_Line_2 AknLayout::Signal_pane_elements_Line_2() +#define AKN_LAYOUT_TABLE_LIMITS_Signal_pane_elements_Limits AknLayout::Signal_pane_elements_Limits() +#define AKN_LAYOUT_TABLE_Signal_pane_elements AknLayout::Signal_pane_elements +#define AKN_LAYOUT_WINDOW_Signal_strength_area_values_Line_1 AknLayout::Signal_strength_area_values_Line_1() +#define AKN_LAYOUT_WINDOW_Signal_strength_area_values_Line_2 AknLayout::Signal_strength_area_values_Line_2() +#define AKN_LAYOUT_WINDOW_Signal_strength_area_values_Line_3 AknLayout::Signal_strength_area_values_Line_3() +#define AKN_LAYOUT_WINDOW_Signal_strength_area_values_Line_4 AknLayout::Signal_strength_area_values_Line_4() +#define AKN_LAYOUT_WINDOW_Signal_strength_area_values_Line_5 AknLayout::Signal_strength_area_values_Line_5() +#define AKN_LAYOUT_WINDOW_Signal_strength_area_values_Line_6 AknLayout::Signal_strength_area_values_Line_6() +#define AKN_LAYOUT_WINDOW_Signal_strength_area_values_Line_7 AknLayout::Signal_strength_area_values_Line_7() +#define AKN_LAYOUT_WINDOW_Signal_strength_area_values_Line_8 AknLayout::Signal_strength_area_values_Line_8() +#define AKN_LAYOUT_TABLE_LIMITS_Signal_strength_area_values_Limits AknLayout::Signal_strength_area_values_Limits() +#define AKN_LAYOUT_TABLE_Signal_strength_area_values AknLayout::Signal_strength_area_values +#define AKN_LAYOUT_WINDOW_Battery_pane_elements_Line_1 AknLayout::Battery_pane_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Battery_pane_elements_Line_2 AknLayout::Battery_pane_elements_Line_2() +#define AKN_LAYOUT_TABLE_LIMITS_Battery_pane_elements_Limits AknLayout::Battery_pane_elements_Limits() +#define AKN_LAYOUT_TABLE_Battery_pane_elements AknLayout::Battery_pane_elements +#define AKN_LAYOUT_WINDOW_Battery_strength_area_values_Line_1 AknLayout::Battery_strength_area_values_Line_1() +#define AKN_LAYOUT_WINDOW_Battery_strength_area_values_Line_2 AknLayout::Battery_strength_area_values_Line_2() +#define AKN_LAYOUT_WINDOW_Battery_strength_area_values_Line_3 AknLayout::Battery_strength_area_values_Line_3() +#define AKN_LAYOUT_WINDOW_Battery_strength_area_values_Line_4 AknLayout::Battery_strength_area_values_Line_4() +#define AKN_LAYOUT_WINDOW_Battery_strength_area_values_Line_5 AknLayout::Battery_strength_area_values_Line_5() +#define AKN_LAYOUT_WINDOW_Battery_strength_area_values_Line_6 AknLayout::Battery_strength_area_values_Line_6() +#define AKN_LAYOUT_WINDOW_Battery_strength_area_values_Line_7 AknLayout::Battery_strength_area_values_Line_7() +#define AKN_LAYOUT_WINDOW_Battery_strength_area_values_Line_8 AknLayout::Battery_strength_area_values_Line_8() +#define AKN_LAYOUT_TABLE_LIMITS_Battery_strength_area_values_Limits AknLayout::Battery_strength_area_values_Limits() +#define AKN_LAYOUT_TABLE_Battery_strength_area_values AknLayout::Battery_strength_area_values +#define AKN_LAYOUT_WINDOW_Context_pane_elements_Line_1 AknLayout::Context_pane_elements_Line_1() +#define AKN_LAYOUT_TEXT_Title_pane_texts_Line_1 AknLayout::Title_pane_texts_Line_1 +#define AKN_LAYOUT_TEXT_Title_pane_texts_Line_2 AknLayout::Title_pane_texts_Line_2 +#define AKN_LAYOUT_MULTILINE_TEXT_Title_pane_texts_Line_2 AknLayout::Multiline_Title_pane_texts_Line_2 +#define AKN_LAYOUT_WINDOW_Title_pane_elements_Line_1 AknLayout::Title_pane_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Universal_indicator_pane_elements_Line_1 AknLayout::Universal_indicator_pane_elements_Line_1 +#define AKN_LAYOUT_WINDOW_Navi_pane_arrow_elements_Line_1 AknLayout::Navi_pane_arrow_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Navi_pane_arrow_elements_Line_2 AknLayout::Navi_pane_arrow_elements_Line_2 +#define AKN_LAYOUT_WINDOW_Navi_pane_tab_elements_Line_1 AknLayout::Navi_pane_tab_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Navi_pane_tab_elements_Line_2 AknLayout::Navi_pane_tab_elements_Line_2() +#define AKN_LAYOUT_WINDOW_Navi_pane_tab_elements_Line_3 AknLayout::Navi_pane_tab_elements_Line_3() +#define AKN_LAYOUT_WINDOW_Navi_pane_tab_elements_Line_4 AknLayout::Navi_pane_tab_elements_Line_4() +#define AKN_LAYOUT_WINDOW_Navi_pane_tab_elements_Line_5 AknLayout::Navi_pane_tab_elements_Line_5() +#define AKN_LAYOUT_WINDOW_Navi_pane_tab_elements_Line_6 AknLayout::Navi_pane_tab_elements_Line_6() +#define AKN_LAYOUT_WINDOW_Navi_pane_tab_elements_Line_7 AknLayout::Navi_pane_tab_elements_Line_7() +#define AKN_LAYOUT_WINDOW_Navi_pane_tab_elements_Line_8 AknLayout::Navi_pane_tab_elements_Line_8() +#define AKN_LAYOUT_WINDOW_Navi_pane_tab_elements_Line_9 AknLayout::Navi_pane_tab_elements_Line_9() +#define AKN_LAYOUT_WINDOW_Navi_pane_tab_elements_Line_10 AknLayout::Navi_pane_tab_elements_Line_10() +#define AKN_LAYOUT_WINDOW_Navi_pane_tab_elements_Line_11 AknLayout::Navi_pane_tab_elements_Line_11() +#define AKN_LAYOUT_WINDOW_Navi_pane_tab_elements_Line_12 AknLayout::Navi_pane_tab_elements_Line_12() +#define AKN_LAYOUT_WINDOW_Navi_pane_tab_elements_Line_13 AknLayout::Navi_pane_tab_elements_Line_13() +#define AKN_LAYOUT_WINDOW_Navi_pane_tab_elements_Line_14 AknLayout::Navi_pane_tab_elements_Line_14() +#define AKN_LAYOUT_TABLE_LIMITS_Navi_pane_tab_elements_Limits AknLayout::Navi_pane_tab_elements_Limits() +#define AKN_LAYOUT_TABLE_Navi_pane_tab_elements AknLayout::Navi_pane_tab_elements +#define AKN_LAYOUT_WINDOW_Elements_on_the_tabs_Line_1 AknLayout::Elements_on_the_tabs_Line_1 +#define AKN_LAYOUT_WINDOW_Elements_on_the_tabs_Line_2 AknLayout::Elements_on_the_tabs_Line_2 +#define AKN_LAYOUT_WINDOW_Elements_on_the_tabs_Line_3 AknLayout::Elements_on_the_tabs_Line_3 +#define AKN_LAYOUT_TABLE_LIMITS_Elements_on_the_tabs_Limits AknLayout::Elements_on_the_tabs_Limits() +#define AKN_LAYOUT_TABLE_Elements_on_the_tabs AknLayout::Elements_on_the_tabs +#define AKN_LAYOUT_TEXT_Texts_on_the_tabs_Line_1 AknLayout::Texts_on_the_tabs_Line_1 +#define AKN_LAYOUT_TEXT_Texts_on_the_tabs_Line_2 AknLayout::Texts_on_the_tabs_Line_2 +#define AKN_LAYOUT_TEXT_Texts_on_the_tabs_Line_3 AknLayout::Texts_on_the_tabs_Line_3 +#define AKN_LAYOUT_TEXT_Texts_on_the_tabs_Line_4 AknLayout::Texts_on_the_tabs_Line_4 +#define AKN_LAYOUT_TEXT_Texts_on_the_tabs_Line_5 AknLayout::Texts_on_the_tabs_Line_5 +#define AKN_LAYOUT_TABLE_LIMITS_Texts_on_the_tabs_Limits AknLayout::Texts_on_the_tabs_Limits() +#define AKN_LAYOUT_TABLE_Texts_on_the_tabs AknLayout::Texts_on_the_tabs +#define AKN_LAYOUT_WINDOW_Navi_pane_icons_Line_1 AknLayout::Navi_pane_icons_Line_1() +#define AKN_LAYOUT_WINDOW_Navi_pane_icons_Line_2 AknLayout::Navi_pane_icons_Line_2 +#define AKN_LAYOUT_TEXT_Navi_pane_texts_Line_1 AknLayout::Navi_pane_texts_Line_1 +#define AKN_LAYOUT_TEXT_Navi_pane_texts_Line_2 AknLayout::Navi_pane_texts_Line_2 +#define AKN_LAYOUT_TEXT_Navi_pane_texts_Line_3 AknLayout::Navi_pane_texts_Line_3 +#define AKN_LAYOUT_TEXT_Navi_pane_texts_Line_4 AknLayout::Navi_pane_texts_Line_4() +#define AKN_LAYOUT_TEXT_Navi_pane_texts_Line_5 AknLayout::Navi_pane_texts_Line_5() +#define AKN_LAYOUT_TEXT_Navi_pane_texts_Line_6 AknLayout::Navi_pane_texts_Line_6 +#define AKN_LAYOUT_TEXT_Navi_pane_texts_Line_7 AknLayout::Navi_pane_texts_Line_7 +#define AKN_LAYOUT_WINDOW_Navi_pane_area_for_editing_status_icons_Line_1 AknLayout::Navi_pane_area_for_editing_status_icons_Line_1() +#define AKN_LAYOUT_WINDOW_Volume_glider_elements__one__Line_1 AknLayout::Volume_glider_elements__one__Line_1 +#define AKN_LAYOUT_WINDOW_volume_navi_pane AknLayout::volume_navi_pane +#define AKN_LAYOUT_TABLE_LIMITS_Volume_glider_elements__one__Limits AknLayout::Volume_glider_elements__one__Limits() +#define AKN_LAYOUT_TABLE_Volume_glider_elements__one_ AknLayout::Volume_glider_elements__one_ +#define AKN_LAYOUT_WINDOW_Volume_pane_elements__one__Line_1 AknLayout::Volume_pane_elements__one__Line_1 +#define AKN_LAYOUT_WINDOW_Volume_pane_elements__one__Line_2 AknLayout::Volume_pane_elements__one__Line_2 +#define AKN_LAYOUT_WINDOW_Volume_pane_elements__one__Line_3 AknLayout::Volume_pane_elements__one__Line_3 +#define AKN_LAYOUT_WINDOW_Volume_pane_elements__one__Line_4 AknLayout::Volume_pane_elements__one__Line_4 +#define AKN_LAYOUT_WINDOW_Volume_pane_elements__one__Line_5 AknLayout::Volume_pane_elements__one__Line_5 +#define AKN_LAYOUT_WINDOW_Volume_pane_elements__one__Line_6 AknLayout::Volume_pane_elements__one__Line_6 +#define AKN_LAYOUT_WINDOW_Volume_pane_elements__one__Line_7 AknLayout::Volume_pane_elements__one__Line_7 +#define AKN_LAYOUT_WINDOW_Volume_pane_elements__one__Line_8 AknLayout::Volume_pane_elements__one__Line_8 +#define AKN_LAYOUT_WINDOW_Volume_pane_elements__one__Line_9 AknLayout::Volume_pane_elements__one__Line_9 +#define AKN_LAYOUT_WINDOW_Volume_pane_elements__one__Line_10 AknLayout::Volume_pane_elements__one__Line_10 +#define AKN_LAYOUT_TABLE_LIMITS_Volume_pane_elements__one__Limits AknLayout::Volume_pane_elements__one__Limits() +#define AKN_LAYOUT_TABLE_Volume_pane_elements__one_ AknLayout::Volume_pane_elements__one_ +#define AKN_LAYOUT_WINDOW_list_gen_pane AknLayout::list_gen_pane +#define AKN_LAYOUT_WINDOW_find_pane AknLayout::find_pane() +#define AKN_LAYOUT_WINDOW_wallpaper_pane AknLayout::wallpaper_pane() +#define AKN_LAYOUT_WINDOW_indicator_pane AknLayout::indicator_pane() +#define AKN_LAYOUT_WINDOW_soft_indicator_pane AknLayout::soft_indicator_pane +#define AKN_LAYOUT_WINDOW_A_column AknLayout::A_column() +#define AKN_LAYOUT_WINDOW_B_column AknLayout::B_column() +#define AKN_LAYOUT_WINDOW_C_column AknLayout::C_column() +#define AKN_LAYOUT_WINDOW_D_column AknLayout::D_column() +#define AKN_LAYOUT_TABLE_LIMITS_List_pane_column_division_Limits AknLayout::List_pane_column_division_Limits() +#define AKN_LAYOUT_TABLE_List_pane_column_division AknLayout::List_pane_column_division +#define AKN_LAYOUT_WINDOW_list_single_pane AknLayout::list_single_pane +#define AKN_LAYOUT_WINDOW_list_single_number_pane AknLayout::list_single_number_pane +#define AKN_LAYOUT_WINDOW_list_single_heading_pane AknLayout::list_single_heading_pane +#define AKN_LAYOUT_WINDOW_list_single_graphic_pane AknLayout::list_single_graphic_pane +#define AKN_LAYOUT_WINDOW_list_single_graphic_heading_pane AknLayout::list_single_graphic_heading_pane +#define AKN_LAYOUT_WINDOW_list_single_number_heading_pane AknLayout::list_single_number_heading_pane +#define AKN_LAYOUT_WINDOW_list_single_large_graphic_pane AknLayout::list_single_large_graphic_pane +#define AKN_LAYOUT_WINDOW_list_double_pane AknLayout::list_double_pane +#define AKN_LAYOUT_WINDOW_list_double2_pane AknLayout::list_double2_pane +#define AKN_LAYOUT_WINDOW_list_double_number_pane_list_single_big_number_pane AknLayout::list_double_number_pane_list_single_big_number_pane +#define AKN_LAYOUT_WINDOW_list_double_time_pane AknLayout::list_double_time_pane +#define AKN_LAYOUT_WINDOW_list_double_large_graphic_pane_list_double2_large_graphic_pane_list_single_big_large_graphic_pane AknLayout::list_double_large_graphic_pane_list_double2_large_graphic_pane_list_single_big_large_graphic_pane +#define AKN_LAYOUT_WINDOW_list_double_graphic_pane_list_double2_graphic_pane AknLayout::list_double_graphic_pane_list_double2_graphic_pane +#define AKN_LAYOUT_WINDOW_list_single_big_heading_graphic_pane AknLayout::list_single_big_heading_graphic_pane +#define AKN_LAYOUT_WINDOW_list_single_big_heading_pane AknLayout::list_single_big_heading_pane +#define AKN_LAYOUT_WINDOW_list_setting_pane_list_big_setting_pane AknLayout::list_setting_pane_list_big_setting_pane +#define AKN_LAYOUT_WINDOW_list_setting_number_pane_list_big_setting_number_pane AknLayout::list_setting_number_pane_list_big_setting_number_pane +#define AKN_LAYOUT_WINDOW_list_setting_double2_pane AknLayout::list_setting_double2_pane +#define AKN_LAYOUT_WINDOW_list_double2_graphic_pane AknLayout::list_double2_graphic_pane +#define AKN_LAYOUT_WINDOW_list_double2_large_graphic_pane AknLayout::list_double2_large_graphic_pane +#define AKN_LAYOUT_WINDOW_list_single_2graphic_pane AknLayout::list_single_2graphic_pane +#define AKN_LAYOUT_WINDOW_list_double2_graphic_large_graphic_pane AknLayout::list_double2_graphic_large_graphic_pane +#define AKN_LAYOUT_TABLE_LIMITS_General_list_pane_descendants_Limits AknLayout::General_list_pane_descendants_Limits() +#define AKN_LAYOUT_TABLE_General_list_pane_descendants AknLayout::General_list_pane_descendants +#define AKN_LAYOUT_WINDOW_List_pane_elements__single__Line_1 AknLayout::List_pane_elements__single__Line_1() +#define AKN_LAYOUT_WINDOW_List_pane_elements__single__Line_2 AknLayout::List_pane_elements__single__Line_2 +#define AKN_LAYOUT_TEXT_List_pane_texts__single__Line_1 AknLayout::List_pane_texts__single__Line_1 +#define AKN_LAYOUT_WINDOW_List_pane_elements__single_number__Line_1 AknLayout::List_pane_elements__single_number__Line_1() +#define AKN_LAYOUT_WINDOW_List_pane_elements__single_number__Line_2 AknLayout::List_pane_elements__single_number__Line_2 +#define AKN_LAYOUT_TEXT_List_pane_texts__single_number__Line_1 AknLayout::List_pane_texts__single_number__Line_1() +#define AKN_LAYOUT_TEXT_List_pane_texts__single_number__Line_2 AknLayout::List_pane_texts__single_number__Line_2 +#define AKN_LAYOUT_WINDOW_List_pane_elements__single_heading__Line_1 AknLayout::List_pane_elements__single_heading__Line_1() +#define AKN_LAYOUT_WINDOW_List_pane_elements__single_heading__Line_2 AknLayout::List_pane_elements__single_heading__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_elements__single_heading__Line_3 AknLayout::List_pane_elements__single_heading__Line_3 +#define AKN_LAYOUT_TABLE_LIMITS_List_pane_elements__single_heading__SUB_TABLE_0_Limits AknLayout::List_pane_elements__single_heading__SUB_TABLE_0_Limits() +#define AKN_LAYOUT_TABLE_List_pane_elements__single_heading__SUB_TABLE_0 AknLayout::List_pane_elements__single_heading__SUB_TABLE_0 +#define AKN_LAYOUT_TEXT_List_pane_texts__single_heading__Line_1 AknLayout::List_pane_texts__single_heading__Line_1 +#define AKN_LAYOUT_TEXT_List_pane_texts__single_heading__Line_2 AknLayout::List_pane_texts__single_heading__Line_2 +#define AKN_LAYOUT_TABLE_LIMITS_List_pane_texts__single_heading__Limits AknLayout::List_pane_texts__single_heading__Limits() +#define AKN_LAYOUT_TABLE_List_pane_texts__single_heading_ AknLayout::List_pane_texts__single_heading_ +#define AKN_LAYOUT_WINDOW_List_pane_elements__single_graphic__Line_1 AknLayout::List_pane_elements__single_graphic__Line_1() +#define AKN_LAYOUT_WINDOW_List_pane_elements__single_graphic__Line_2 AknLayout::List_pane_elements__single_graphic__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_elements__single_graphic__Line_3 AknLayout::List_pane_elements__single_graphic__Line_3 +#define AKN_LAYOUT_TABLE_LIMITS_List_pane_elements__single_graphic__SUB_TABLE_0_Limits AknLayout::List_pane_elements__single_graphic__SUB_TABLE_0_Limits() +#define AKN_LAYOUT_TABLE_List_pane_elements__single_graphic__SUB_TABLE_0 AknLayout::List_pane_elements__single_graphic__SUB_TABLE_0 +#define AKN_LAYOUT_TEXT_List_pane_texts__single_graphic__Line_1 AknLayout::List_pane_texts__single_graphic__Line_1 +#define AKN_LAYOUT_WINDOW_List_pane_elements__single_graphic_heading__Line_1 AknLayout::List_pane_elements__single_graphic_heading__Line_1() +#define AKN_LAYOUT_WINDOW_List_pane_elements__single_graphic_heading__Line_2 AknLayout::List_pane_elements__single_graphic_heading__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_elements__single_graphic_heading__Line_3 AknLayout::List_pane_elements__single_graphic_heading__Line_3() +#define AKN_LAYOUT_WINDOW_List_pane_elements__single_graphic_heading__Line_4 AknLayout::List_pane_elements__single_graphic_heading__Line_4 +#define AKN_LAYOUT_TABLE_LIMITS_List_pane_elements__single_graphic_heading__SUB_TABLE_0_Limits AknLayout::List_pane_elements__single_graphic_heading__SUB_TABLE_0_Limits() +#define AKN_LAYOUT_TABLE_List_pane_elements__single_graphic_heading__SUB_TABLE_0 AknLayout::List_pane_elements__single_graphic_heading__SUB_TABLE_0 +#define AKN_LAYOUT_TEXT_List_pane_texts__single_graphic_heading__Line_1 AknLayout::List_pane_texts__single_graphic_heading__Line_1 +#define AKN_LAYOUT_TEXT_List_pane_texts__single_graphic_heading__Line_2 AknLayout::List_pane_texts__single_graphic_heading__Line_2 +#define AKN_LAYOUT_TABLE_LIMITS_List_pane_texts__single_graphic_heading__Limits AknLayout::List_pane_texts__single_graphic_heading__Limits() +#define AKN_LAYOUT_TABLE_List_pane_texts__single_graphic_heading_ AknLayout::List_pane_texts__single_graphic_heading_ +#define AKN_LAYOUT_WINDOW_List_pane_elements__single_number_heading__Line_1 AknLayout::List_pane_elements__single_number_heading__Line_1() +#define AKN_LAYOUT_WINDOW_List_pane_elements__single_number_heading__Line_2 AknLayout::List_pane_elements__single_number_heading__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_elements__single_number_heading__Line_3 AknLayout::List_pane_elements__single_number_heading__Line_3 +#define AKN_LAYOUT_TABLE_LIMITS_List_pane_elements__single_number_heading__SUB_TABLE_0_Limits AknLayout::List_pane_elements__single_number_heading__SUB_TABLE_0_Limits() +#define AKN_LAYOUT_TABLE_List_pane_elements__single_number_heading__SUB_TABLE_0 AknLayout::List_pane_elements__single_number_heading__SUB_TABLE_0 +#define AKN_LAYOUT_TEXT_List_pane_texts__single_number_heading__Line_1 AknLayout::List_pane_texts__single_number_heading__Line_1 +#define AKN_LAYOUT_TEXT_List_pane_texts__single_number_heading__Line_2 AknLayout::List_pane_texts__single_number_heading__Line_2 +#define AKN_LAYOUT_TEXT_List_pane_texts__single_number_heading__Line_3 AknLayout::List_pane_texts__single_number_heading__Line_3 +#define AKN_LAYOUT_TABLE_LIMITS_List_pane_texts__single_number_heading__Limits AknLayout::List_pane_texts__single_number_heading__Limits() +#define AKN_LAYOUT_TABLE_List_pane_texts__single_number_heading_ AknLayout::List_pane_texts__single_number_heading_ +#define AKN_LAYOUT_WINDOW_List_pane_elements__single_large_graphic__Line_1 AknLayout::List_pane_elements__single_large_graphic__Line_1() +#define AKN_LAYOUT_WINDOW_List_pane_elements__single_large_graphic__Line_2 AknLayout::List_pane_elements__single_large_graphic__Line_2 +#define AKN_LAYOUT_WINDOW_List_pane_elements__single_large_graphic__Line_3 AknLayout::List_pane_elements__single_large_graphic__Line_3 +#define AKN_LAYOUT_WINDOW_do_not_use_empty_pane1 AknLayout::do_not_use_empty_pane1() +#define AKN_LAYOUT_WINDOW_do_not_use_empty_pane2 AknLayout::do_not_use_empty_pane2() +#define AKN_LAYOUT_TEXT_List_pane_texts__single_large_graphic__Line_1 AknLayout::List_pane_texts__single_large_graphic__Line_1 +#define AKN_LAYOUT_WINDOW_List_pane_elements__double__Line_1 AknLayout::List_pane_elements__double__Line_1() +#define AKN_LAYOUT_WINDOW_List_pane_elements__double__Line_2 AknLayout::List_pane_elements__double__Line_2 +#define AKN_LAYOUT_TEXT_List_pane_texts__double__Line_1 AknLayout::List_pane_texts__double__Line_1 +#define AKN_LAYOUT_TEXT_List_pane_texts__double__Line_2 AknLayout::List_pane_texts__double__Line_2() +#define AKN_LAYOUT_TEXT_List_pane_text__double2__Line_1 AknLayout::List_pane_text__double2__Line_1 +#define AKN_LAYOUT_TEXT_List_pane_text__double2__Line_2 AknLayout::List_pane_text__double2__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_elements__double_number__Line_1 AknLayout::List_pane_elements__double_number__Line_1() +#define AKN_LAYOUT_WINDOW_List_pane_elements__double_number__Line_2 AknLayout::List_pane_elements__double_number__Line_2 +#define AKN_LAYOUT_TEXT_List_pane_texts__double_number__Line_1 AknLayout::List_pane_texts__double_number__Line_1() +#define AKN_LAYOUT_TEXT_List_pane_texts__double_number__Line_2 AknLayout::List_pane_texts__double_number__Line_2 +#define AKN_LAYOUT_TEXT_List_pane_texts__double_number__Line_3 AknLayout::List_pane_texts__double_number__Line_3() +#define AKN_LAYOUT_WINDOW_List_pane_elements__double_graphic__Line_1 AknLayout::List_pane_elements__double_graphic__Line_1() +#define AKN_LAYOUT_WINDOW_List_pane_elements__double_graphic__Line_2 AknLayout::List_pane_elements__double_graphic__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_elements__double_graphic__Line_3 AknLayout::List_pane_elements__double_graphic__Line_3 +#define AKN_LAYOUT_TABLE_LIMITS_List_pane_elements__double_graphic__SUB_TABLE_0_Limits AknLayout::List_pane_elements__double_graphic__SUB_TABLE_0_Limits() +#define AKN_LAYOUT_TABLE_List_pane_elements__double_graphic__SUB_TABLE_0 AknLayout::List_pane_elements__double_graphic__SUB_TABLE_0 +#define AKN_LAYOUT_TEXT_List_pane_texts__double_graphic__Line_1 AknLayout::List_pane_texts__double_graphic__Line_1 +#define AKN_LAYOUT_TEXT_List_pane_texts__double_graphic__Line_2 AknLayout::List_pane_texts__double_graphic__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_elements__double2_graphic__Line_1 AknLayout::List_pane_elements__double2_graphic__Line_1() +#define AKN_LAYOUT_WINDOW_List_pane_elements__double2_graphic__Line_2 AknLayout::List_pane_elements__double2_graphic__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_elements__double2_graphic__Line_3 AknLayout::List_pane_elements__double2_graphic__Line_3 +#define AKN_LAYOUT_TABLE_LIMITS_List_pane_elements__double2_graphic__SUB_TABLE_0_Limits AknLayout::List_pane_elements__double2_graphic__SUB_TABLE_0_Limits() +#define AKN_LAYOUT_TABLE_List_pane_elements__double2_graphic__SUB_TABLE_0 AknLayout::List_pane_elements__double2_graphic__SUB_TABLE_0 +#define AKN_LAYOUT_TEXT_List_pane_texts__double2_graphic__Line_1 AknLayout::List_pane_texts__double2_graphic__Line_1 +#define AKN_LAYOUT_TEXT_List_pane_texts__double2_graphic__Line_2 AknLayout::List_pane_texts__double2_graphic__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_elements__double2_large_graphic__Line_1 AknLayout::List_pane_elements__double2_large_graphic__Line_1() +#define AKN_LAYOUT_WINDOW_List_pane_elements__double2_large_graphic__Line_2 AknLayout::List_pane_elements__double2_large_graphic__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_elements__double2_large_graphic__Line_3 AknLayout::List_pane_elements__double2_large_graphic__Line_3 +#define AKN_LAYOUT_TABLE_LIMITS_List_pane_elements__double2_large_graphic__SUB_TABLE_0_Limits AknLayout::List_pane_elements__double2_large_graphic__SUB_TABLE_0_Limits() +#define AKN_LAYOUT_TABLE_List_pane_elements__double2_large_graphic__SUB_TABLE_0 AknLayout::List_pane_elements__double2_large_graphic__SUB_TABLE_0 +#define AKN_LAYOUT_TEXT_List_pane_texts__double2_large_graphic__Line_1 AknLayout::List_pane_texts__double2_large_graphic__Line_1 +#define AKN_LAYOUT_TEXT_List_pane_texts__double2_large_graphic__Line_2 AknLayout::List_pane_texts__double2_large_graphic__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_elements__large_single_heading_graphic__Line_1 AknLayout::List_pane_elements__large_single_heading_graphic__Line_1() +#define AKN_LAYOUT_WINDOW_List_pane_elements__large_single_heading_graphic__Line_2 AknLayout::List_pane_elements__large_single_heading_graphic__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_elements__large_single_heading_graphic__Line_3 AknLayout::List_pane_elements__large_single_heading_graphic__Line_3 +#define AKN_LAYOUT_TABLE_LIMITS_List_pane_elements__large_single_heading_graphic__SUB_TABLE_0_Limits AknLayout::List_pane_elements__large_single_heading_graphic__SUB_TABLE_0_Limits() +#define AKN_LAYOUT_TABLE_List_pane_elements__large_single_heading_graphic__SUB_TABLE_0 AknLayout::List_pane_elements__large_single_heading_graphic__SUB_TABLE_0 +#define AKN_LAYOUT_TEXT_List_pane_texts__large_single_heading_graphic__Line_1 AknLayout::List_pane_texts__large_single_heading_graphic__Line_1 +#define AKN_LAYOUT_TEXT_List_pane_texts__large_single_heading_graphic__Line_2 AknLayout::List_pane_texts__large_single_heading_graphic__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_elements__large_single_heading__Line_1 AknLayout::List_pane_elements__large_single_heading__Line_1() +#define AKN_LAYOUT_TEXT_List_pane_texts__large_single_heading__Line_1 AknLayout::List_pane_texts__large_single_heading__Line_1() +#define AKN_LAYOUT_TEXT_List_pane_texts__large_single_heading__Line_2 AknLayout::List_pane_texts__large_single_heading__Line_2() +#define AKN_LAYOUT_TABLE_LIMITS_List_pane_texts__large_single_heading__Limits AknLayout::List_pane_texts__large_single_heading__Limits() +#define AKN_LAYOUT_TABLE_List_pane_texts__large_single_heading_ AknLayout::List_pane_texts__large_single_heading_ +#define AKN_LAYOUT_WINDOW_List_pane_elements__double_time__Line_1 AknLayout::List_pane_elements__double_time__Line_1() +#define AKN_LAYOUT_TEXT_List_pane_texts__double_time__Line_1 AknLayout::List_pane_texts__double_time__Line_1() +#define AKN_LAYOUT_TEXT_List_pane_texts__double_time__Line_2 AknLayout::List_pane_texts__double_time__Line_2() +#define AKN_LAYOUT_TEXT_List_pane_texts__double_time__Line_3 AknLayout::List_pane_texts__double_time__Line_3() +#define AKN_LAYOUT_TEXT_List_pane_texts__double_time__Line_4 AknLayout::List_pane_texts__double_time__Line_4() +#define AKN_LAYOUT_TABLE_LIMITS_List_pane_texts__double_time__Limits AknLayout::List_pane_texts__double_time__Limits() +#define AKN_LAYOUT_TABLE_List_pane_texts__double_time_ AknLayout::List_pane_texts__double_time_ +#define AKN_LAYOUT_WINDOW_List_pane_elements__double_large_graphic__Line_1 AknLayout::List_pane_elements__double_large_graphic__Line_1() +#define AKN_LAYOUT_WINDOW_List_pane_elements__double_large_graphic__Line_2 AknLayout::List_pane_elements__double_large_graphic__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_elements__double_large_graphic__Line_3 AknLayout::List_pane_elements__double_large_graphic__Line_3() +#define AKN_LAYOUT_WINDOW_List_pane_elements__double_large_graphic__Line_4 AknLayout::List_pane_elements__double_large_graphic__Line_4() +#define AKN_LAYOUT_WINDOW_List_pane_elements__double_large_graphic__Line_5 AknLayout::List_pane_elements__double_large_graphic__Line_5() +#define AKN_LAYOUT_WINDOW_List_pane_elements__double_large_graphic__Line_6 AknLayout::List_pane_elements__double_large_graphic__Line_6() +#define AKN_LAYOUT_WINDOW_List_pane_elements__double_large_graphic__Line_7 AknLayout::List_pane_elements__double_large_graphic__Line_7() +#define AKN_LAYOUT_WINDOW_List_pane_elements__double_large_graphic__Line_8 AknLayout::List_pane_elements__double_large_graphic__Line_8() +#define AKN_LAYOUT_WINDOW_List_pane_elements__double_large_graphic__Line_9 AknLayout::List_pane_elements__double_large_graphic__Line_9 +#define AKN_LAYOUT_WINDOW_List_pane_elements__double_large_graphic__Line_10 AknLayout::List_pane_elements__double_large_graphic__Line_10() +#define AKN_LAYOUT_TEXT_List_pane_texts__double_large_graphic__Line_1 AknLayout::List_pane_texts__double_large_graphic__Line_1 +#define AKN_LAYOUT_TEXT_List_pane_texts__double_large_graphic__Line_2 AknLayout::List_pane_texts__double_large_graphic__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_elements__setting__Line_1 AknLayout::List_pane_elements__setting__Line_1() +#define AKN_LAYOUT_WINDOW_List_pane_elements__setting__Line_2 AknLayout::List_pane_elements__setting__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_elements__setting__Line_3 AknLayout::List_pane_elements__setting__Line_3() +#define AKN_LAYOUT_WINDOW_List_pane_elements__setting__Line_4 AknLayout::List_pane_elements__setting__Line_4() +#define AKN_LAYOUT_WINDOW_List_pane_elements__setting__Line_5 AknLayout::List_pane_elements__setting__Line_5() +#define AKN_LAYOUT_WINDOW_List_pane_elements__setting__Line_6 AknLayout::List_pane_elements__setting__Line_6() +#define AKN_LAYOUT_TABLE_LIMITS_List_pane_elements__setting__Limits AknLayout::List_pane_elements__setting__Limits() +#define AKN_LAYOUT_TABLE_List_pane_elements__setting_ AknLayout::List_pane_elements__setting_ +#define AKN_LAYOUT_TEXT_List_pane_texts__setting__Line_1 AknLayout::List_pane_texts__setting__Line_1() +#define AKN_LAYOUT_TEXT_List_pane_texts__setting__Line_2 AknLayout::List_pane_texts__setting__Line_2() +#define AKN_LAYOUT_TEXT_List_pane_texts__setting__Line_3 AknLayout::List_pane_texts__setting__Line_3() +#define AKN_LAYOUT_TEXT_List_pane_texts__setting__Line_4 AknLayout::List_pane_texts__setting__Line_4() +#define AKN_LAYOUT_TABLE_LIMITS_List_pane_texts__setting__Limits AknLayout::List_pane_texts__setting__Limits() +#define AKN_LAYOUT_TABLE_List_pane_texts__setting_ AknLayout::List_pane_texts__setting_ +#define AKN_LAYOUT_WINDOW_List_pane_elements__setting_number__Line_1 AknLayout::List_pane_elements__setting_number__Line_1() +#define AKN_LAYOUT_WINDOW_List_pane_elements__setting_number__Line_2 AknLayout::List_pane_elements__setting_number__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_elements__setting_number__Line_3 AknLayout::List_pane_elements__setting_number__Line_3() +#define AKN_LAYOUT_WINDOW_List_pane_elements__setting_number__Line_4 AknLayout::List_pane_elements__setting_number__Line_4() +#define AKN_LAYOUT_WINDOW_List_pane_elements__setting_number__Line_5 AknLayout::List_pane_elements__setting_number__Line_5() +#define AKN_LAYOUT_TABLE_LIMITS_List_pane_elements__setting_number__Limits AknLayout::List_pane_elements__setting_number__Limits() +#define AKN_LAYOUT_TABLE_List_pane_elements__setting_number_ AknLayout::List_pane_elements__setting_number_ +#define AKN_LAYOUT_TEXT_List_pane_texts__setting_number__Line_1 AknLayout::List_pane_texts__setting_number__Line_1() +#define AKN_LAYOUT_TEXT_List_pane_texts__setting_number__Line_2 AknLayout::List_pane_texts__setting_number__Line_2() +#define AKN_LAYOUT_TEXT_List_pane_texts__setting_number__Line_3 AknLayout::List_pane_texts__setting_number__Line_3() +#define AKN_LAYOUT_TEXT_List_pane_texts__setting_number__Line_4 AknLayout::List_pane_texts__setting_number__Line_4() +#define AKN_LAYOUT_TABLE_LIMITS_List_pane_texts__setting_number__Limits AknLayout::List_pane_texts__setting_number__Limits() +#define AKN_LAYOUT_TABLE_List_pane_texts__setting_number_ AknLayout::List_pane_texts__setting_number_ +#define AKN_LAYOUT_WINDOW_Setting_volume_elements_Line_1 AknLayout::Setting_volume_elements_Line_1 +#define AKN_LAYOUT_WINDOW_Setting_volume_elements_Line_2 AknLayout::Setting_volume_elements_Line_2 +#define AKN_LAYOUT_WINDOW_Setting_volume_elements_Line_3 AknLayout::Setting_volume_elements_Line_3 +#define AKN_LAYOUT_WINDOW_Setting_volume_elements_Line_4 AknLayout::Setting_volume_elements_Line_4 +#define AKN_LAYOUT_WINDOW_Setting_volume_elements_Line_5 AknLayout::Setting_volume_elements_Line_5 +#define AKN_LAYOUT_WINDOW_Setting_volume_elements_Line_6 AknLayout::Setting_volume_elements_Line_6 +#define AKN_LAYOUT_WINDOW_Setting_volume_elements_Line_7 AknLayout::Setting_volume_elements_Line_7 +#define AKN_LAYOUT_WINDOW_Setting_volume_elements_Line_8 AknLayout::Setting_volume_elements_Line_8 +#define AKN_LAYOUT_WINDOW_Setting_volume_elements_Line_9 AknLayout::Setting_volume_elements_Line_9 +#define AKN_LAYOUT_WINDOW_Setting_volume_elements_Line_10 AknLayout::Setting_volume_elements_Line_10 +#define AKN_LAYOUT_TABLE_LIMITS_Setting_volume_elements_Limits AknLayout::Setting_volume_elements_Limits() +#define AKN_LAYOUT_TABLE_Setting_volume_elements AknLayout::Setting_volume_elements +#define AKN_LAYOUT_WINDOW_Setting_slider_elements_Line_1 AknLayout::Setting_slider_elements_Line_1() +#define AKN_LAYOUT_WINDOW_List_pane_elements__setting_double2__Line_1 AknLayout::List_pane_elements__setting_double2__Line_1() +#define AKN_LAYOUT_WINDOW_List_pane_elements__setting_double2__Line_2 AknLayout::List_pane_elements__setting_double2__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_elements__setting_double2__Line_3 AknLayout::List_pane_elements__setting_double2__Line_3() +#define AKN_LAYOUT_TABLE_LIMITS_List_pane_elements__setting_double2__Limits AknLayout::List_pane_elements__setting_double2__Limits() +#define AKN_LAYOUT_TABLE_List_pane_elements__setting_double2_ AknLayout::List_pane_elements__setting_double2_ +#define AKN_LAYOUT_WINDOW_List_pane_lines__A_column__Line_1 AknLayout::List_pane_lines__A_column__Line_1 +#define AKN_LAYOUT_WINDOW_List_pane_lines__A_column__Line_2 AknLayout::List_pane_lines__A_column__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_lines__AB_columns__Line_1 AknLayout::List_pane_lines__AB_columns__Line_1 +#define AKN_LAYOUT_WINDOW_List_pane_lines__AB_columns__Line_2 AknLayout::List_pane_lines__AB_columns__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_lines__BC_columns__Line_1 AknLayout::List_pane_lines__BC_columns__Line_1 +#define AKN_LAYOUT_WINDOW_List_pane_lines__BC_columns__Line_2 AknLayout::List_pane_lines__BC_columns__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_highlight_graphics__various__Line_1 AknLayout::List_pane_highlight_graphics__various__Line_1 +#define AKN_LAYOUT_WINDOW_List_pane_highlight_graphics__various__Line_2 AknLayout::List_pane_highlight_graphics__various__Line_2 +#define AKN_LAYOUT_WINDOW_List_pane_highlight_graphics__various__Line_3 AknLayout::List_pane_highlight_graphics__various__Line_3 +#define AKN_LAYOUT_TABLE_LIMITS_List_pane_highlight_graphics__various__SUB_TABLE_0_Limits AknLayout::List_pane_highlight_graphics__various__SUB_TABLE_0_Limits() +#define AKN_LAYOUT_TABLE_List_pane_highlight_graphics__various__SUB_TABLE_0 AknLayout::List_pane_highlight_graphics__various__SUB_TABLE_0 +#define AKN_LAYOUT_WINDOW_List_pane_highlight_graphics__setting_number__Line_1 AknLayout::List_pane_highlight_graphics__setting_number__Line_1 +#define AKN_LAYOUT_WINDOW_List_pane_highlight_graphics__setting_number__Line_2 AknLayout::List_pane_highlight_graphics__setting_number__Line_2 +#define AKN_LAYOUT_WINDOW_List_pane_highlight_graphics__setting_number__Line_3 AknLayout::List_pane_highlight_graphics__setting_number__Line_3() +#define AKN_LAYOUT_TABLE_LIMITS_List_pane_highlight_graphics__setting_number__SUB_TABLE_0_Limits AknLayout::List_pane_highlight_graphics__setting_number__SUB_TABLE_0_Limits() +#define AKN_LAYOUT_TABLE_List_pane_highlight_graphics__setting_number__SUB_TABLE_0 AknLayout::List_pane_highlight_graphics__setting_number__SUB_TABLE_0 +#define AKN_LAYOUT_WINDOW_Find_pane_elements_Line_1 AknLayout::Find_pane_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Find_pane_elements_Line_2 AknLayout::Find_pane_elements_Line_2() +#define AKN_LAYOUT_WINDOW_Find_pane_elements_Line_3 AknLayout::Find_pane_elements_Line_3() +#define AKN_LAYOUT_WINDOW_Find_pane_elements_Line_4 AknLayout::Find_pane_elements_Line_4() +#define AKN_LAYOUT_WINDOW_Find_pane_elements_Line_5 AknLayout::Find_pane_elements_Line_5() +#define AKN_LAYOUT_TABLE_LIMITS_Find_pane_elements_Limits AknLayout::Find_pane_elements_Limits() +#define AKN_LAYOUT_TABLE_Find_pane_elements AknLayout::Find_pane_elements +#define AKN_LAYOUT_TEXT_Find_pane_texts_Line_1 AknLayout::Find_pane_texts_Line_1() +#define AKN_LAYOUT_WINDOW_form_field_data_pane AknLayout::form_field_data_pane +#define AKN_LAYOUT_WINDOW_form_field_data_wide_pane AknLayout::form_field_data_wide_pane +#define AKN_LAYOUT_WINDOW_form_field_popup_pane AknLayout::form_field_popup_pane +#define AKN_LAYOUT_WINDOW_form_field_popup_wide_pane AknLayout::form_field_popup_wide_pane +#define AKN_LAYOUT_WINDOW_form_field_slider_pane AknLayout::form_field_slider_pane +#define AKN_LAYOUT_WINDOW_form_field_slider_wide_pane AknLayout::form_field_slider_wide_pane +#define AKN_LAYOUT_TABLE_LIMITS_Form_descendant_panes_Limits AknLayout::Form_descendant_panes_Limits() +#define AKN_LAYOUT_TABLE_Form_descendant_panes AknLayout::Form_descendant_panes +#define AKN_LAYOUT_WINDOW_Form_data_field_elements_Line_1 AknLayout::Form_data_field_elements_Line_1 +#define AKN_LAYOUT_WINDOW_Form_data_field_elements_Line_2 AknLayout::Form_data_field_elements_Line_2() +#define AKN_LAYOUT_WINDOW_Form_data_field_elements_Line_3 AknLayout::Form_data_field_elements_Line_3 +#define AKN_LAYOUT_WINDOW_Form_data_field_elements_Line_4 AknLayout::Form_data_field_elements_Line_4() +#define AKN_LAYOUT_TEXT_Form_data_field_texts_Line_1 AknLayout::Form_data_field_texts_Line_1 +#define AKN_LAYOUT_MULTILINE_TEXT_Form_data_field_texts_Line_1 AknLayout::Multiline_Form_data_field_texts_Line_1 +#define AKN_LAYOUT_TEXT_Form_data_field_texts_Line_2 AknLayout::Form_data_field_texts_Line_2 +#define AKN_LAYOUT_MULTILINE_TEXT_Form_data_field_texts_Line_2 AknLayout::Multiline_Form_data_field_texts_Line_2 +#define AKN_LAYOUT_WINDOW_Form_data_wide_field_elements_Line_1 AknLayout::Form_data_wide_field_elements_Line_1 +#define AKN_LAYOUT_WINDOW_Form_data_wide_field_elements_Line_2 AknLayout::Form_data_wide_field_elements_Line_2() +#define AKN_LAYOUT_WINDOW_Form_data_wide_field_elements_Line_3 AknLayout::Form_data_wide_field_elements_Line_3 +#define AKN_LAYOUT_WINDOW_Form_data_wide_field_elements_Line_4 AknLayout::Form_data_wide_field_elements_Line_4() +#define AKN_LAYOUT_TEXT_Form_data_wide_field_texts_Line_1 AknLayout::Form_data_wide_field_texts_Line_1() +#define AKN_LAYOUT_TEXT_Form_data_wide_field_texts_Line_2 AknLayout::Form_data_wide_field_texts_Line_2 +#define AKN_LAYOUT_MULTILINE_TEXT_Form_data_wide_field_texts_Line_2 AknLayout::Multiline_Form_data_wide_field_texts_Line_2 +#define AKN_LAYOUT_WINDOW_Form_pop_up_field_elements_and_descendants_Line_1 AknLayout::Form_pop_up_field_elements_and_descendants_Line_1 +#define AKN_LAYOUT_WINDOW_Form_pop_up_field_elements_and_descendants_Line_2 AknLayout::Form_pop_up_field_elements_and_descendants_Line_2() +#define AKN_LAYOUT_WINDOW_Form_pop_up_field_elements_and_descendants_Line_3 AknLayout::Form_pop_up_field_elements_and_descendants_Line_3 +#define AKN_LAYOUT_WINDOW_Form_pop_up_field_elements_and_descendants_Line_4 AknLayout::Form_pop_up_field_elements_and_descendants_Line_4() +#define AKN_LAYOUT_WINDOW_Form_pop_up_field_elements_and_descendants_Line_5 AknLayout::Form_pop_up_field_elements_and_descendants_Line_5() +#define AKN_LAYOUT_WINDOW_list_form_pane AknLayout::list_form_pane +#define AKN_LAYOUT_WINDOW_list_form_graphic_pane AknLayout::list_form_graphic_pane +#define AKN_LAYOUT_WINDOW_List_pane_elements__form_graphic__Line_1 AknLayout::List_pane_elements__form_graphic__Line_1 +#define AKN_LAYOUT_WINDOW_List_pane_elements__form_graphic__Line_2 AknLayout::List_pane_elements__form_graphic__Line_2() +#define AKN_LAYOUT_TEXT_List_pane_texts__form_graphic__Line_1 AknLayout::List_pane_texts__form_graphic__Line_1 +#define AKN_LAYOUT_WINDOW_Form_pop_up_wide_field_elements_and_descendants_Line_1 AknLayout::Form_pop_up_wide_field_elements_and_descendants_Line_1 +#define AKN_LAYOUT_WINDOW_Form_pop_up_wide_field_elements_and_descendants_Line_2 AknLayout::Form_pop_up_wide_field_elements_and_descendants_Line_2() +#define AKN_LAYOUT_WINDOW_Form_pop_up_wide_field_elements_and_descendants_Line_3 AknLayout::Form_pop_up_wide_field_elements_and_descendants_Line_3 +#define AKN_LAYOUT_WINDOW_Form_pop_up_wide_field_elements_and_descendants_Line_4 AknLayout::Form_pop_up_wide_field_elements_and_descendants_Line_4() +#define AKN_LAYOUT_WINDOW_Form_pop_up_wide_field_elements_and_descendants_Line_5 AknLayout::Form_pop_up_wide_field_elements_and_descendants_Line_5() +#define AKN_LAYOUT_WINDOW_list_form_wide_pane AknLayout::list_form_wide_pane +#define AKN_LAYOUT_WINDOW_list_form_graphic_wide_pane AknLayout::list_form_graphic_wide_pane +#define AKN_LAYOUT_WINDOW_List_pane_elements__form_graphic_wide__Line_1 AknLayout::List_pane_elements__form_graphic_wide__Line_1 +#define AKN_LAYOUT_WINDOW_List_pane_elements__form_graphic_wide__Line_2 AknLayout::List_pane_elements__form_graphic_wide__Line_2() +#define AKN_LAYOUT_TEXT_List_pane_texts__form_graphic_wide__Line_1 AknLayout::List_pane_texts__form_graphic_wide__Line_1 +#define AKN_LAYOUT_WINDOW_Form_slider_field_elements_and_descendants_Line_1 AknLayout::Form_slider_field_elements_and_descendants_Line_1 +#define AKN_LAYOUT_WINDOW_Form_slider_field_elements_and_descendants_Line_2 AknLayout::Form_slider_field_elements_and_descendants_Line_2() +#define AKN_LAYOUT_WINDOW_Form_slider_field_elements_and_descendants_Line_3 AknLayout::Form_slider_field_elements_and_descendants_Line_3 +#define AKN_LAYOUT_WINDOW_Form_slider_field_elements_and_descendants_Line_4 AknLayout::Form_slider_field_elements_and_descendants_Line_4() +#define AKN_LAYOUT_WINDOW_Form_slider_field_elements_and_descendants_Line_5 AknLayout::Form_slider_field_elements_and_descendants_Line_5() +#define AKN_LAYOUT_WINDOW_Form_slider_field_elements_and_descendants_Line_6 AknLayout::Form_slider_field_elements_and_descendants_Line_6 +#define AKN_LAYOUT_WINDOW_Slider_pane_elements__form__Line_1 AknLayout::Slider_pane_elements__form__Line_1() +#define AKN_LAYOUT_WINDOW_Slider_pane_elements__form__Line_2 AknLayout::Slider_pane_elements__form__Line_2() +#define AKN_LAYOUT_TABLE_LIMITS_Slider_pane_elements__form__Limits AknLayout::Slider_pane_elements__form__Limits() +#define AKN_LAYOUT_TABLE_Slider_pane_elements__form_ AknLayout::Slider_pane_elements__form_ +#define AKN_LAYOUT_TEXT_Form_slider_field_texts_Line_1 AknLayout::Form_slider_field_texts_Line_1() +#define AKN_LAYOUT_TEXT_Form_slider_field_texts_Line_2 AknLayout::Form_slider_field_texts_Line_2() +#define AKN_LAYOUT_TEXT_Form_slider_field_texts_Line_3 AknLayout::Form_slider_field_texts_Line_3 +#define AKN_LAYOUT_MULTILINE_TEXT_Form_slider_field_texts_Line_3 AknLayout::Multiline_Form_slider_field_texts_Line_3 +#define AKN_LAYOUT_TABLE_LIMITS_Form_slider_field_texts_SUB_TABLE_0_Limits AknLayout::Form_slider_field_texts_SUB_TABLE_0_Limits() +#define AKN_LAYOUT_TABLE_Form_slider_field_texts_SUB_TABLE_0 AknLayout::Form_slider_field_texts_SUB_TABLE_0 +#define AKN_LAYOUT_WINDOW_Form_slider_field_elements_and_descendants_dup_Line_1 AknLayout::Form_slider_field_elements_and_descendants_dup_Line_1 +#define AKN_LAYOUT_WINDOW_Form_slider_field_elements_and_descendants_dup_Line_2 AknLayout::Form_slider_field_elements_and_descendants_dup_Line_2() +#define AKN_LAYOUT_WINDOW_Form_slider_field_elements_and_descendants_dup_Line_3 AknLayout::Form_slider_field_elements_and_descendants_dup_Line_3 +#define AKN_LAYOUT_WINDOW_Form_slider_field_elements_and_descendants_dup_Line_4 AknLayout::Form_slider_field_elements_and_descendants_dup_Line_4() +#define AKN_LAYOUT_WINDOW_Form_slider_field_elements_and_descendants_dup_Line_5 AknLayout::Form_slider_field_elements_and_descendants_dup_Line_5() +#define AKN_LAYOUT_WINDOW_Form_slider_field_elements_and_descendants_dup_Line_6 AknLayout::Form_slider_field_elements_and_descendants_dup_Line_6 +#define AKN_LAYOUT_WINDOW_Slider_pane_elements__form__dup_Line_1 AknLayout::Slider_pane_elements__form__dup_Line_1() +#define AKN_LAYOUT_WINDOW_Slider_pane_elements__form__dup_Line_2 AknLayout::Slider_pane_elements__form__dup_Line_2() +#define AKN_LAYOUT_TABLE_LIMITS_Slider_pane_elements__form__dup_Limits AknLayout::Slider_pane_elements__form__dup_Limits() +#define AKN_LAYOUT_TABLE_Slider_pane_elements__form__dup AknLayout::Slider_pane_elements__form__dup +#define AKN_LAYOUT_TEXT_Form_slider_field_texts_dup_Line_1 AknLayout::Form_slider_field_texts_dup_Line_1() +#define AKN_LAYOUT_TEXT_Form_slider_field_texts_dup_Line_2 AknLayout::Form_slider_field_texts_dup_Line_2() +#define AKN_LAYOUT_TEXT_Form_slider_field_texts_dup_Line_3 AknLayout::Form_slider_field_texts_dup_Line_3 +#define AKN_LAYOUT_MULTILINE_TEXT_Form_slider_field_texts_dup_Line_3 AknLayout::Multiline_Form_slider_field_texts_dup_Line_3 +#define AKN_LAYOUT_TABLE_LIMITS_Form_slider_field_texts_dup_SUB_TABLE_0_Limits AknLayout::Form_slider_field_texts_dup_SUB_TABLE_0_Limits() +#define AKN_LAYOUT_TABLE_Form_slider_field_texts_dup_SUB_TABLE_0 AknLayout::Form_slider_field_texts_dup_SUB_TABLE_0 +#define AKN_LAYOUT_WINDOW_Cursor_graphics__13__Line_1 AknLayout::Cursor_graphics__13__Line_1() +#define AKN_LAYOUT_WINDOW_Predictive_text_input_graphics__13__Line_1 AknLayout::Predictive_text_input_graphics__13__Line_1() +#define AKN_LAYOUT_WINDOW_Predictive_text_input_graphics__13__Line_2 AknLayout::Predictive_text_input_graphics__13__Line_2() +#define AKN_LAYOUT_TABLE_LIMITS_Predictive_text_input_graphics__13__Limits AknLayout::Predictive_text_input_graphics__13__Limits() +#define AKN_LAYOUT_TABLE_Predictive_text_input_graphics__13_ AknLayout::Predictive_text_input_graphics__13_ +#define AKN_LAYOUT_WINDOW_Cut_copy_and_paste_highlight_graphics__13__Line_1 AknLayout::Cut_copy_and_paste_highlight_graphics__13__Line_1() +#define AKN_LAYOUT_WINDOW_Time_and_date_entry_graphics__13__Line_1 AknLayout::Time_and_date_entry_graphics__13__Line_1() +#define AKN_LAYOUT_WINDOW_Cursor_graphics__12__Line_1 AknLayout::Cursor_graphics__12__Line_1() +#define AKN_LAYOUT_WINDOW_Predictive_text_input_graphics__12__Line_1 AknLayout::Predictive_text_input_graphics__12__Line_1() +#define AKN_LAYOUT_WINDOW_Predictive_text_input_graphics__12__Line_2 AknLayout::Predictive_text_input_graphics__12__Line_2() +#define AKN_LAYOUT_TABLE_LIMITS_Predictive_text_input_graphics__12__Limits AknLayout::Predictive_text_input_graphics__12__Limits() +#define AKN_LAYOUT_TABLE_Predictive_text_input_graphics__12_ AknLayout::Predictive_text_input_graphics__12_ +#define AKN_LAYOUT_WINDOW_Cut_copy_and_paste_highlight_graphics__12__Line_1 AknLayout::Cut_copy_and_paste_highlight_graphics__12__Line_1() +#define AKN_LAYOUT_WINDOW_Time_and_date_entry_graphics__12__Line_1 AknLayout::Time_and_date_entry_graphics__12__Line_1() +#define AKN_LAYOUT_WINDOW_list_set_graphic_pane AknLayout::list_set_graphic_pane +#define AKN_LAYOUT_WINDOW_List_pane_elements__set_graphic__Line_1 AknLayout::List_pane_elements__set_graphic__Line_1 +#define AKN_LAYOUT_WINDOW_List_pane_elements__set_graphic__Line_2 AknLayout::List_pane_elements__set_graphic__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_elements__set_graphic__Line_3 AknLayout::List_pane_elements__set_graphic__Line_3() +#define AKN_LAYOUT_TABLE_LIMITS_List_pane_elements__set_graphic__SUB_TABLE_0_Limits AknLayout::List_pane_elements__set_graphic__SUB_TABLE_0_Limits() +#define AKN_LAYOUT_TABLE_List_pane_elements__set_graphic__SUB_TABLE_0 AknLayout::List_pane_elements__set_graphic__SUB_TABLE_0 +#define AKN_LAYOUT_TEXT_List_pane_texts__set_graphic__Line_1 AknLayout::List_pane_texts__set_graphic__Line_1 +#define AKN_LAYOUT_WINDOW_Application_grid_descendant_Line_1 AknLayout::Application_grid_descendant_Line_1 +#define AKN_LAYOUT_WINDOW_Cell_pane_elements__app__Line_1 AknLayout::Cell_pane_elements__app__Line_1() +#define AKN_LAYOUT_WINDOW_Cell_pane_elements__app__Line_2 AknLayout::Cell_pane_elements__app__Line_2() +#define AKN_LAYOUT_TABLE_LIMITS_Cell_pane_elements__app__Limits AknLayout::Cell_pane_elements__app__Limits() +#define AKN_LAYOUT_TABLE_Cell_pane_elements__app_ AknLayout::Cell_pane_elements__app_ +#define AKN_LAYOUT_TEXT_Cell_pane_texts__app__Line_1 AknLayout::Cell_pane_texts__app__Line_1() +#define AKN_LAYOUT_WINDOW_Cell_pane_highlight_elements__various__Line_1 AknLayout::Cell_pane_highlight_elements__various__Line_1 +#define AKN_LAYOUT_WINDOW_Wallpaper_pane_element_Line_1 AknLayout::Wallpaper_pane_element_Line_1 +#define AKN_LAYOUT_WINDOW_Indicator_pane_elements_Line_1 AknLayout::Indicator_pane_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Soft_indicator_pane_elements_Line_1 AknLayout::Soft_indicator_pane_elements_Line_1 +#define AKN_LAYOUT_TEXT_Soft_indicator_pane_texts_Line_1 AknLayout::Soft_indicator_pane_texts_Line_1 +#define AKN_LAYOUT_MULTILINE_TEXT_Soft_indicator_pane_texts_Line_1 AknLayout::Multiline_Soft_indicator_pane_texts_Line_1 +#define AKN_LAYOUT_WINDOW_power_save_pane AknLayout::power_save_pane +#define AKN_LAYOUT_WINDOW_Power_save_pane_descendants_Line_1 AknLayout::Power_save_pane_descendants_Line_1() +#define AKN_LAYOUT_WINDOW_Power_save_pane_descendants_Line_2 AknLayout::Power_save_pane_descendants_Line_2() +#define AKN_LAYOUT_WINDOW_Power_save_pane_descendants_Line_3 AknLayout::Power_save_pane_descendants_Line_3() +#define AKN_LAYOUT_TABLE_LIMITS_Power_save_pane_descendants_Limits AknLayout::Power_save_pane_descendants_Limits() +#define AKN_LAYOUT_TABLE_Power_save_pane_descendants AknLayout::Power_save_pane_descendants +#define AKN_LAYOUT_TEXT_Idle_power_save_state_texts_Line_1 AknLayout::Idle_power_save_state_texts_Line_1() +#define AKN_LAYOUT_TEXT_Idle_power_save_state_texts_Line_2 AknLayout::Idle_power_save_state_texts_Line_2() +#define AKN_LAYOUT_TEXT_Idle_power_save_state_texts_Line_3 AknLayout::Idle_power_save_state_texts_Line_3() +#define AKN_LAYOUT_TEXT_Idle_power_save_state_texts_Line_4 AknLayout::Idle_power_save_state_texts_Line_4() +#define AKN_LAYOUT_TABLE_LIMITS_Idle_power_save_state_texts_Limits AknLayout::Idle_power_save_state_texts_Limits() +#define AKN_LAYOUT_TABLE_Idle_power_save_state_texts AknLayout::Idle_power_save_state_texts +#define AKN_LAYOUT_WINDOW_grid_app_pane AknLayout::grid_app_pane() +#define AKN_LAYOUT_TEXT_Empty_list_texts_Line_1 AknLayout::Empty_list_texts_Line_1 +#define AKN_LAYOUT_MULTILINE_TEXT_Empty_list_texts_Line_1 AknLayout::Multiline_Empty_list_texts_Line_1 +#define AKN_LAYOUT_TEXT_Empty_list_texts__find__Line_1 AknLayout::Empty_list_texts__find__Line_1 +#define AKN_LAYOUT_MULTILINE_TEXT_Empty_list_texts__find__Line_1 AknLayout::Multiline_Empty_list_texts__find__Line_1 +#define AKN_LAYOUT_WINDOW_List_pane_elements_and_descendants__settings_edited__Line_1 AknLayout::List_pane_elements_and_descendants__settings_edited__Line_1() +#define AKN_LAYOUT_WINDOW_List_pane_elements_and_descendants__settings_edited__Line_2 AknLayout::List_pane_elements_and_descendants__settings_edited__Line_2() +#define AKN_LAYOUT_WINDOW_list_set_pane AknLayout::list_set_pane +#define AKN_LAYOUT_WINDOW_List_pane_elements_and_descendants__settings_edited__Line_4 AknLayout::List_pane_elements_and_descendants__settings_edited__Line_4() +#define AKN_LAYOUT_WINDOW_setting_volume_pane AknLayout::setting_volume_pane() +#define AKN_LAYOUT_WINDOW_setting_slider_pane AknLayout::setting_slider_pane() +#define AKN_LAYOUT_WINDOW_setting_slider_graphic_pane AknLayout::setting_slider_graphic_pane() +#define AKN_LAYOUT_WINDOW_setting_text_pane AknLayout::setting_text_pane() +#define AKN_LAYOUT_WINDOW_setting_code_pane AknLayout::setting_code_pane() +#define AKN_LAYOUT_TEXT_Setting_item_texts_Line_1 AknLayout::Setting_item_texts_Line_1() +#define AKN_LAYOUT_TEXT_Setting_item_texts_Line_2 AknLayout::Setting_item_texts_Line_2 +#define AKN_LAYOUT_WINDOW_Setting_volume_pane_elements_Line_1 AknLayout::Setting_volume_pane_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Setting_volume_pane_elements_Line_2 AknLayout::Setting_volume_pane_elements_Line_2 +#define AKN_LAYOUT_WINDOW_Setting_volume_pane_elements_Line_3 AknLayout::Setting_volume_pane_elements_Line_3 +#define AKN_LAYOUT_WINDOW_Setting_volume_pane_elements_Line_4 AknLayout::Setting_volume_pane_elements_Line_4 +#define AKN_LAYOUT_WINDOW_Setting_volume_pane_elements_Line_5 AknLayout::Setting_volume_pane_elements_Line_5 +#define AKN_LAYOUT_WINDOW_Setting_volume_pane_elements_Line_6 AknLayout::Setting_volume_pane_elements_Line_6 +#define AKN_LAYOUT_WINDOW_Setting_volume_pane_elements_Line_7 AknLayout::Setting_volume_pane_elements_Line_7 +#define AKN_LAYOUT_WINDOW_Setting_volume_pane_elements_Line_8 AknLayout::Setting_volume_pane_elements_Line_8 +#define AKN_LAYOUT_WINDOW_Setting_volume_pane_elements_Line_9 AknLayout::Setting_volume_pane_elements_Line_9 +#define AKN_LAYOUT_WINDOW_Setting_volume_pane_elements_Line_10 AknLayout::Setting_volume_pane_elements_Line_10 +#define AKN_LAYOUT_WINDOW_Setting_volume_pane_elements_Line_11 AknLayout::Setting_volume_pane_elements_Line_11 +#define AKN_LAYOUT_TABLE_LIMITS_Setting_volume_pane_elements_SUB_TABLE_0_Limits AknLayout::Setting_volume_pane_elements_SUB_TABLE_0_Limits() +#define AKN_LAYOUT_TABLE_Setting_volume_pane_elements_SUB_TABLE_0 AknLayout::Setting_volume_pane_elements_SUB_TABLE_0 +#define AKN_LAYOUT_WINDOW_Setting_slider_pane_elements_and_descendants_Line_1 AknLayout::Setting_slider_pane_elements_and_descendants_Line_1() +#define AKN_LAYOUT_WINDOW_Setting_slider_pane_elements_and_descendants_Line_2 AknLayout::Setting_slider_pane_elements_and_descendants_Line_2() +#define AKN_LAYOUT_TABLE_LIMITS_Setting_slider_pane_elements_and_descendants_Limits AknLayout::Setting_slider_pane_elements_and_descendants_Limits() +#define AKN_LAYOUT_TABLE_Setting_slider_pane_elements_and_descendants AknLayout::Setting_slider_pane_elements_and_descendants +#define AKN_LAYOUT_WINDOW_Slider_pane_elements_Line_1 AknLayout::Slider_pane_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Slider_pane_elements_Line_2 AknLayout::Slider_pane_elements_Line_2() +#define AKN_LAYOUT_TABLE_LIMITS_Slider_pane_elements_Limits AknLayout::Slider_pane_elements_Limits() +#define AKN_LAYOUT_TABLE_Slider_pane_elements AknLayout::Slider_pane_elements +#define AKN_LAYOUT_TEXT_Slider_texts__set__Line_1 AknLayout::Slider_texts__set__Line_1() +#define AKN_LAYOUT_TEXT_Slider_texts__set__Line_2 AknLayout::Slider_texts__set__Line_2 +#define AKN_LAYOUT_MULTILINE_TEXT_Slider_texts__set__Line_2 AknLayout::Multiline_Slider_texts__set__Line_2 +#define AKN_LAYOUT_WINDOW_Setting_slider_pane__graphic__elements_and_descendants_Line_1 AknLayout::Setting_slider_pane__graphic__elements_and_descendants_Line_1() +#define AKN_LAYOUT_WINDOW_Setting_slider_pane__graphic__elements_and_descendants_Line_2 AknLayout::Setting_slider_pane__graphic__elements_and_descendants_Line_2() +#define AKN_LAYOUT_WINDOW_Setting_slider_pane__graphic__elements_and_descendants_Line_3 AknLayout::Setting_slider_pane__graphic__elements_and_descendants_Line_3() +#define AKN_LAYOUT_TABLE_LIMITS_Setting_slider_pane__graphic__elements_and_descendants_Limits AknLayout::Setting_slider_pane__graphic__elements_and_descendants_Limits() +#define AKN_LAYOUT_TABLE_Setting_slider_pane__graphic__elements_and_descendants AknLayout::Setting_slider_pane__graphic__elements_and_descendants +#define AKN_LAYOUT_TEXT_Slider_with_graphic_texts__set__Line_1 AknLayout::Slider_with_graphic_texts__set__Line_1 +#define AKN_LAYOUT_MULTILINE_TEXT_Slider_with_graphic_texts__set__Line_1 AknLayout::Multiline_Slider_with_graphic_texts__set__Line_1 +#define AKN_LAYOUT_WINDOW_Setting_text_pane_elements_Line_1 AknLayout::Setting_text_pane_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Setting_text_pane_elements_Line_2 AknLayout::Setting_text_pane_elements_Line_2() +#define AKN_LAYOUT_WINDOW_Setting_text_pane_elements_Line_3 AknLayout::Setting_text_pane_elements_Line_3() +#define AKN_LAYOUT_WINDOW_Setting_text_pane_elements_Line_4 AknLayout::Setting_text_pane_elements_Line_4() +#define AKN_LAYOUT_TABLE_LIMITS_Setting_text_pane_elements_Limits AknLayout::Setting_text_pane_elements_Limits() +#define AKN_LAYOUT_TABLE_Setting_text_pane_elements AknLayout::Setting_text_pane_elements +#define AKN_LAYOUT_TEXT_Setting_text_pane_texts_Line_1 AknLayout::Setting_text_pane_texts_Line_1 +#define AKN_LAYOUT_MULTILINE_TEXT_Setting_text_pane_texts_Line_1 AknLayout::Multiline_Setting_text_pane_texts_Line_1 +#define AKN_LAYOUT_WINDOW_Code_time_and_date_entry_pane_elements_Line_1 AknLayout::Code_time_and_date_entry_pane_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Code_time_and_date_entry_pane_elements_Line_2 AknLayout::Code_time_and_date_entry_pane_elements_Line_2() +#define AKN_LAYOUT_WINDOW_Code_time_and_date_entry_pane_elements_Line_3 AknLayout::Code_time_and_date_entry_pane_elements_Line_3() +#define AKN_LAYOUT_TABLE_LIMITS_Code_time_and_date_entry_pane_elements_Limits AknLayout::Code_time_and_date_entry_pane_elements_Limits() +#define AKN_LAYOUT_TABLE_Code_time_and_date_entry_pane_elements AknLayout::Code_time_and_date_entry_pane_elements +#define AKN_LAYOUT_TEXT_Code_time_and_date_entry_pane_texts_Line_1 AknLayout::Code_time_and_date_entry_pane_texts_Line_1() +#define AKN_LAYOUT_WINDOW_Control_pane_elements_Line_1 AknLayout::Control_pane_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Control_pane_elements_Line_2 AknLayout::Control_pane_elements_Line_2() +#define AKN_LAYOUT_WINDOW_Control_pane_elements_Line_3 AknLayout::Control_pane_elements_Line_3() +#define AKN_LAYOUT_WINDOW_Control_pane_elements_Line_4 AknLayout::Control_pane_elements_Line_4() +#define AKN_LAYOUT_TABLE_LIMITS_Control_pane_elements_Limits AknLayout::Control_pane_elements_Limits() +#define AKN_LAYOUT_TABLE_Control_pane_elements AknLayout::Control_pane_elements +#define AKN_LAYOUT_TEXT_Control_pane_texts_Line_1 AknLayout::Control_pane_texts_Line_1() +#define AKN_LAYOUT_TEXT_Control_pane_texts_Line_2 AknLayout::Control_pane_texts_Line_2() +#define AKN_LAYOUT_TABLE_LIMITS_Control_pane_texts_Limits AknLayout::Control_pane_texts_Limits() +#define AKN_LAYOUT_TABLE_Control_pane_texts AknLayout::Control_pane_texts +#define AKN_LAYOUT_WINDOW_popup_menu_window AknLayout::popup_menu_window +#define AKN_LAYOUT_WINDOW_Pop_up_windows__main_pane_as_parent__Line_2 AknLayout::Pop_up_windows__main_pane_as_parent__Line_2 +#define AKN_LAYOUT_WINDOW_popup_menu_graphic_window AknLayout::popup_menu_graphic_window +#define AKN_LAYOUT_WINDOW_popup_menu_graphic_heading_window AknLayout::popup_menu_graphic_heading_window +#define AKN_LAYOUT_WINDOW_popup_menu_double_window AknLayout::popup_menu_double_window +#define AKN_LAYOUT_WINDOW_popup_menu_double_large_graphic_window AknLayout::popup_menu_double_large_graphic_window +#define AKN_LAYOUT_WINDOW_popup_note_window AknLayout::popup_note_window +#define AKN_LAYOUT_WINDOW_popup_note_wait_window AknLayout::popup_note_wait_window +#define AKN_LAYOUT_WINDOW_popup_note_image_window AknLayout::popup_note_image_window() +#define AKN_LAYOUT_WINDOW_popup_query_data_window AknLayout::popup_query_data_window +#define AKN_LAYOUT_WINDOW_popup_query_code_window AknLayout::popup_query_code_window +#define AKN_LAYOUT_WINDOW_popup_query_time_window AknLayout::popup_query_time_window +#define AKN_LAYOUT_WINDOW_popup_query_date_window AknLayout::popup_query_date_window +#define AKN_LAYOUT_WINDOW_popup_query_data_code_window AknLayout::popup_query_data_code_window +#define AKN_LAYOUT_WINDOW_popup_find_window AknLayout::popup_find_window() +#define AKN_LAYOUT_WINDOW_popup_snote_single_text_window AknLayout::popup_snote_single_text_window +#define AKN_LAYOUT_WINDOW_popup_snote_single_graphic_window AknLayout::popup_snote_single_graphic_window +#define AKN_LAYOUT_WINDOW_popup_snote_group_window AknLayout::popup_snote_group_window +#define AKN_LAYOUT_WINDOW_popup_grid_graphic_window AknLayout::popup_grid_graphic_window +#define AKN_LAYOUT_WINDOW_popup_menu_double2_window AknLayout::popup_menu_double2_window +#define AKN_LAYOUT_WINDOW_popup_grid_large_graphic_colour_window AknLayout::popup_grid_large_graphic_colour_window() +#define AKN_LAYOUT_WINDOW_popup_fast_swap_window AknLayout::popup_fast_swap_window +#define AKN_LAYOUT_WINDOW_list_single_popup_menu_pane AknLayout::list_single_popup_menu_pane +#define AKN_LAYOUT_WINDOW_list_single_heading_popup_menu_pane AknLayout::list_single_heading_popup_menu_pane +#define AKN_LAYOUT_WINDOW_list_single_graphic_popup_menu_pane AknLayout::list_single_graphic_popup_menu_pane +#define AKN_LAYOUT_WINDOW_list_single_graphic_heading_popup_menu_pane AknLayout::list_single_graphic_heading_popup_menu_pane +#define AKN_LAYOUT_WINDOW_list_menu_double_popup_menu_pane AknLayout::list_menu_double_popup_menu_pane +#define AKN_LAYOUT_WINDOW_list_single_popup_submenu_pane AknLayout::list_single_popup_submenu_pane +#define AKN_LAYOUT_WINDOW_list_double_large_graphic_popup_menu_pane AknLayout::list_double_large_graphic_popup_menu_pane +#define AKN_LAYOUT_WINDOW_Pop_up_window_list_pane_descendants_Line_8 AknLayout::Pop_up_window_list_pane_descendants_Line_8() +#define AKN_LAYOUT_WINDOW_list_double2_popup_menu_pane AknLayout::list_double2_popup_menu_pane +#define AKN_LAYOUT_WINDOW_List_pane_elements__menu_single__Line_1 AknLayout::List_pane_elements__menu_single__Line_1() +#define AKN_LAYOUT_WINDOW_List_pane_elements__menu_single__Line_2 AknLayout::List_pane_elements__menu_single__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_elements__menu_single__Line_3 AknLayout::List_pane_elements__menu_single__Line_3 +#define AKN_LAYOUT_TABLE_LIMITS_List_pane_elements__menu_single__SUB_TABLE_0_Limits AknLayout::List_pane_elements__menu_single__SUB_TABLE_0_Limits() +#define AKN_LAYOUT_TABLE_List_pane_elements__menu_single__SUB_TABLE_0 AknLayout::List_pane_elements__menu_single__SUB_TABLE_0 +#define AKN_LAYOUT_TEXT_List_pane_texts__menu_single__Line_1 AknLayout::List_pane_texts__menu_single__Line_1 +#define AKN_LAYOUT_TEXT_List_pane_text__submenu_single__Line_1 AknLayout::List_pane_text__submenu_single__Line_1 +#define AKN_LAYOUT_WINDOW_List_pane_elements__menu_single_graphic__Line_1 AknLayout::List_pane_elements__menu_single_graphic__Line_1() +#define AKN_LAYOUT_WINDOW_List_pane_elements__menu_single_graphic__Line_2 AknLayout::List_pane_elements__menu_single_graphic__Line_2 +#define AKN_LAYOUT_TEXT_List_pane_texts__menu_single_graphic__Line_1 AknLayout::List_pane_texts__menu_single_graphic__Line_1 +#define AKN_LAYOUT_WINDOW_List_pane_elements__menu_single_heading__Line_1 AknLayout::List_pane_elements__menu_single_heading__Line_1() +#define AKN_LAYOUT_WINDOW_List_pane_elements__menu_single_heading__Line_2 AknLayout::List_pane_elements__menu_single_heading__Line_2 +#define AKN_LAYOUT_TEXT_List_pane_texts__menu_single_heading__Line_1 AknLayout::List_pane_texts__menu_single_heading__Line_1() +#define AKN_LAYOUT_TEXT_List_pane_texts__menu_single_heading__Line_2 AknLayout::List_pane_texts__menu_single_heading__Line_2 +#define AKN_LAYOUT_WINDOW_List_pane_elements__menu_single_graphic_heading__Line_1 AknLayout::List_pane_elements__menu_single_graphic_heading__Line_1() +#define AKN_LAYOUT_WINDOW_List_pane_elements__menu_single_graphic_heading__Line_2 AknLayout::List_pane_elements__menu_single_graphic_heading__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_elements__menu_single_graphic_heading__Line_3 AknLayout::List_pane_elements__menu_single_graphic_heading__Line_3 +#define AKN_LAYOUT_TEXT_List_pane_texts__menu_single_graphic_heading__Line_1 AknLayout::List_pane_texts__menu_single_graphic_heading__Line_1 +#define AKN_LAYOUT_TEXT_List_pane_texts__menu_single_graphic_heading__Line_2 AknLayout::List_pane_texts__menu_single_graphic_heading__Line_2 +#define AKN_LAYOUT_TABLE_LIMITS_List_pane_texts__menu_single_graphic_heading__Limits AknLayout::List_pane_texts__menu_single_graphic_heading__Limits() +#define AKN_LAYOUT_TABLE_List_pane_texts__menu_single_graphic_heading_ AknLayout::List_pane_texts__menu_single_graphic_heading_ +#define AKN_LAYOUT_WINDOW_List_pane_elements__menu_double__Line_1 AknLayout::List_pane_elements__menu_double__Line_1 +#define AKN_LAYOUT_TEXT_List_pane_texts__menu_double__Line_1 AknLayout::List_pane_texts__menu_double__Line_1 +#define AKN_LAYOUT_TEXT_List_pane_texts__menu_double__Line_2 AknLayout::List_pane_texts__menu_double__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_elements__menu_double2__Line_1 AknLayout::List_pane_elements__menu_double2__Line_1 +#define AKN_LAYOUT_TEXT_List_pane_texts__menu_double2__Line_1 AknLayout::List_pane_texts__menu_double2__Line_1 +#define AKN_LAYOUT_TEXT_List_pane_texts__menu_double2__Line_2 AknLayout::List_pane_texts__menu_double2__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_elements__menu_double_large_graphic__Line_1 AknLayout::List_pane_elements__menu_double_large_graphic__Line_1() +#define AKN_LAYOUT_WINDOW_List_pane_elements__menu_double_large_graphic__Line_2 AknLayout::List_pane_elements__menu_double_large_graphic__Line_2 +#define AKN_LAYOUT_TEXT_List_pane_texts__menu_double_large_graphic__Line_1 AknLayout::List_pane_texts__menu_double_large_graphic__Line_1 +#define AKN_LAYOUT_TEXT_List_pane_texts__menu_double_large_graphic__Line_2 AknLayout::List_pane_texts__menu_double_large_graphic__Line_2() +#define AKN_LAYOUT_WINDOW_Highlight_graphics__various__Line_1 AknLayout::Highlight_graphics__various__Line_1 +#define AKN_LAYOUT_WINDOW_Highlight_graphics__various__Line_2 AknLayout::Highlight_graphics__various__Line_2 +#define AKN_LAYOUT_TABLE_LIMITS_Highlight_graphics__various__Limits AknLayout::Highlight_graphics__various__Limits() +#define AKN_LAYOUT_TABLE_Highlight_graphics__various_ AknLayout::Highlight_graphics__various_ +#define AKN_LAYOUT_WINDOW_cell_graphic_popup_pane AknLayout::cell_graphic_popup_pane +#define AKN_LAYOUT_WINDOW_Cell_pane_elements__pop_up_graphic__Line_1 AknLayout::Cell_pane_elements__pop_up_graphic__Line_1() +#define AKN_LAYOUT_TEXT_Cell_pane_texts__pop_up_graphic__Line_1 AknLayout::Cell_pane_texts__pop_up_graphic__Line_1() +#define AKN_LAYOUT_WINDOW_cell_large_graphic_colour_popup_pane AknLayout::cell_large_graphic_colour_popup_pane +#define AKN_LAYOUT_WINDOW_colour AknLayout::colour +#define AKN_LAYOUT_WINDOW_Pop_up_window_cell_pane__large_graphic_colour_none__Line_1 AknLayout::Pop_up_window_cell_pane__large_graphic_colour_none__Line_1() +#define AKN_LAYOUT_TEXT_Cell_pane_texts__pop_up_large_graphic_colour_none__Line_1 AknLayout::Cell_pane_texts__pop_up_large_graphic_colour_none__Line_1() +#define AKN_LAYOUT_WINDOW_Highlight_elements__grid_pop_up__Line_1 AknLayout::Highlight_elements__grid_pop_up__Line_1 +#define AKN_LAYOUT_WINDOW_Highlight_elements__grid_pop_up__Line_2 AknLayout::Highlight_elements__grid_pop_up__Line_2 +#define AKN_LAYOUT_TABLE_LIMITS_Highlight_elements__grid_pop_up__Limits AknLayout::Highlight_elements__grid_pop_up__Limits() +#define AKN_LAYOUT_TABLE_Highlight_elements__grid_pop_up_ AknLayout::Highlight_elements__grid_pop_up_ +#define AKN_LAYOUT_WINDOW_List_heading_pane_elements_Line_1 AknLayout::List_heading_pane_elements_Line_1() +#define AKN_LAYOUT_WINDOW_List_heading_pane_elements_Line_2 AknLayout::List_heading_pane_elements_Line_2() +#define AKN_LAYOUT_TABLE_LIMITS_List_heading_pane_elements_Limits AknLayout::List_heading_pane_elements_Limits() +#define AKN_LAYOUT_TABLE_List_heading_pane_elements AknLayout::List_heading_pane_elements +#define AKN_LAYOUT_TEXT_List_heading_pane_texts_Line_1 AknLayout::List_heading_pane_texts_Line_1 +#define AKN_LAYOUT_WINDOW_Pop_up_menu_with_heading_window_graphics_Line_1 AknLayout::Pop_up_menu_with_heading_window_graphics_Line_1 +#define AKN_LAYOUT_WINDOW_Pop_up_menu_with_heading_window_graphics_Line_2 AknLayout::Pop_up_menu_with_heading_window_graphics_Line_2 +#define AKN_LAYOUT_WINDOW_Pop_up_menu_with_heading_window_graphics_Line_3 AknLayout::Pop_up_menu_with_heading_window_graphics_Line_3 +#define AKN_LAYOUT_WINDOW_Pop_up_menu_with_heading_window_graphics_Line_4 AknLayout::Pop_up_menu_with_heading_window_graphics_Line_4 +#define AKN_LAYOUT_WINDOW_Pop_up_menu_with_heading_window_graphics_Line_5 AknLayout::Pop_up_menu_with_heading_window_graphics_Line_5 +#define AKN_LAYOUT_TABLE_LIMITS_Pop_up_menu_with_heading_window_graphics_Limits AknLayout::Pop_up_menu_with_heading_window_graphics_Limits() +#define AKN_LAYOUT_TABLE_Pop_up_menu_with_heading_window_graphics AknLayout::Pop_up_menu_with_heading_window_graphics +#define AKN_LAYOUT_WINDOW_list_menu_pane AknLayout::list_menu_pane +#define AKN_LAYOUT_WINDOW_Menu_pop_up_window_descendants_Line_2 AknLayout::Menu_pop_up_window_descendants_Line_2() +#define AKN_LAYOUT_WINDOW_Menu_pop_up_window_graphics_Line_1 AknLayout::Menu_pop_up_window_graphics_Line_1 +#define AKN_LAYOUT_WINDOW_Menu_pop_up_window_graphics_Line_2 AknLayout::Menu_pop_up_window_graphics_Line_2 +#define AKN_LAYOUT_WINDOW_Menu_pop_up_window_graphics_Line_3 AknLayout::Menu_pop_up_window_graphics_Line_3 +#define AKN_LAYOUT_WINDOW_Menu_pop_up_window_graphics_Line_4 AknLayout::Menu_pop_up_window_graphics_Line_4 +#define AKN_LAYOUT_WINDOW_Menu_pop_up_window_graphics_Line_5 AknLayout::Menu_pop_up_window_graphics_Line_5 +#define AKN_LAYOUT_TABLE_LIMITS_Menu_pop_up_window_graphics_Limits AknLayout::Menu_pop_up_window_graphics_Limits() +#define AKN_LAYOUT_TABLE_Menu_pop_up_window_graphics AknLayout::Menu_pop_up_window_graphics +#define AKN_LAYOUT_WINDOW_list_submenu_pane AknLayout::list_submenu_pane +#define AKN_LAYOUT_WINDOW_Submenu_pop_up_window_graphics_Line_1 AknLayout::Submenu_pop_up_window_graphics_Line_1 +#define AKN_LAYOUT_WINDOW_Submenu_pop_up_window_graphics_Line_2 AknLayout::Submenu_pop_up_window_graphics_Line_2 +#define AKN_LAYOUT_WINDOW_Submenu_pop_up_window_graphics_Line_3 AknLayout::Submenu_pop_up_window_graphics_Line_3 +#define AKN_LAYOUT_WINDOW_Submenu_pop_up_window_graphics_Line_4 AknLayout::Submenu_pop_up_window_graphics_Line_4 +#define AKN_LAYOUT_TABLE_LIMITS_Submenu_pop_up_window_graphics_Limits AknLayout::Submenu_pop_up_window_graphics_Limits() +#define AKN_LAYOUT_TABLE_Submenu_pop_up_window_graphics AknLayout::Submenu_pop_up_window_graphics +#define AKN_LAYOUT_WINDOW_Submenu_pop_up_window_positioning_Line_1 AknLayout::Submenu_pop_up_window_positioning_Line_1 +#define AKN_LAYOUT_WINDOW_Submenu_pop_up_window_positioning_Line_2 AknLayout::Submenu_pop_up_window_positioning_Line_2 +#define AKN_LAYOUT_TABLE_LIMITS_Submenu_pop_up_window_positioning_Limits AknLayout::Submenu_pop_up_window_positioning_Limits() +#define AKN_LAYOUT_TABLE_Submenu_pop_up_window_positioning AknLayout::Submenu_pop_up_window_positioning +#define AKN_LAYOUT_WINDOW_list_menu_graphic_pane AknLayout::list_menu_graphic_pane +#define AKN_LAYOUT_WINDOW_list_menu_heading_pane AknLayout::list_menu_heading_pane +#define AKN_LAYOUT_WINDOW_Menu_pop_up_window_descendants__single_heading__Line_2 AknLayout::Menu_pop_up_window_descendants__single_heading__Line_2() +#define AKN_LAYOUT_WINDOW_Menu_pop_up_window_descendants__single_heading__Line_3 AknLayout::Menu_pop_up_window_descendants__single_heading__Line_3 +#define AKN_LAYOUT_WINDOW_list_menu_graphic_heading_pane AknLayout::list_menu_graphic_heading_pane +#define AKN_LAYOUT_WINDOW_Menu_pop_up_window_descendants_and_elements__single_graphic_heading__Line_2 AknLayout::Menu_pop_up_window_descendants_and_elements__single_graphic_heading__Line_2() +#define AKN_LAYOUT_WINDOW_Menu_pop_up_window_descendants_and_elements__single_graphic_heading__Line_3 AknLayout::Menu_pop_up_window_descendants_and_elements__single_graphic_heading__Line_3 +#define AKN_LAYOUT_WINDOW_list_menu_double_pane_list_menu_double2_pane AknLayout::list_menu_double_pane_list_menu_double2_pane +#define AKN_LAYOUT_WINDOW_Menu_pop_up_window_descendants__double_double2__Line_2 AknLayout::Menu_pop_up_window_descendants__double_double2__Line_2() +#define AKN_LAYOUT_WINDOW_list_menu_double_large_graphic_pane AknLayout::list_menu_double_large_graphic_pane +#define AKN_LAYOUT_WINDOW_Menu_pop_up_window_descendants__double__Line_2 AknLayout::Menu_pop_up_window_descendants__double__Line_2() +#define AKN_LAYOUT_WINDOW_Note_pop_up_window_elements_Line_1 AknLayout::Note_pop_up_window_elements_Line_1() +#define AKN_LAYOUT_TEXT_Note_pop_up_window_texts_Line_1 AknLayout::Note_pop_up_window_texts_Line_1 +#define AKN_LAYOUT_MULTILINE_TEXT_Note_pop_up_window_texts_Line_1 AknLayout::Multiline_Note_pop_up_window_texts_Line_1 +#define AKN_LAYOUT_WINDOW_Note_pop_up_window_graphics_Line_1 AknLayout::Note_pop_up_window_graphics_Line_1 +#define AKN_LAYOUT_WINDOW_Note_pop_up_window_graphics_Line_2 AknLayout::Note_pop_up_window_graphics_Line_2 +#define AKN_LAYOUT_WINDOW_Note_pop_up_window_graphics_Line_3 AknLayout::Note_pop_up_window_graphics_Line_3 +#define AKN_LAYOUT_WINDOW_Note_pop_up_window_graphics_Line_4 AknLayout::Note_pop_up_window_graphics_Line_4 +#define AKN_LAYOUT_WINDOW_Note_pop_up_window_graphics_Line_5 AknLayout::Note_pop_up_window_graphics_Line_5 +#define AKN_LAYOUT_TABLE_LIMITS_Note_pop_up_window_graphics_Limits AknLayout::Note_pop_up_window_graphics_Limits() +#define AKN_LAYOUT_TABLE_Note_pop_up_window_graphics AknLayout::Note_pop_up_window_graphics +#define AKN_LAYOUT_WINDOW_Wait_or_progress_note_pop_up_window_elements_Line_1 AknLayout::Wait_or_progress_note_pop_up_window_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Wait_or_progress_note_pop_up_window_elements_Line_2 AknLayout::Wait_or_progress_note_pop_up_window_elements_Line_2 +#define AKN_LAYOUT_WINDOW_Wait_or_progress_note_pop_up_window_elements_Line_3 AknLayout::Wait_or_progress_note_pop_up_window_elements_Line_3() +#define AKN_LAYOUT_WINDOW_Wait_or_progress_note_pop_up_window_elements_Line_4 AknLayout::Wait_or_progress_note_pop_up_window_elements_Line_4() +#define AKN_LAYOUT_TABLE_LIMITS_First_general_event_elements_Limits AknLayout::First_general_event_elements_Limits() +#define AKN_LAYOUT_TABLE_First_general_event_elements AknLayout::First_general_event_elements +#define AKN_LAYOUT_TEXT_Wait_or_progress_note_pop_up_window_texts_Line_1 AknLayout::Wait_or_progress_note_pop_up_window_texts_Line_1 +#define AKN_LAYOUT_MULTILINE_TEXT_Wait_or_progress_note_pop_up_window_texts_Line_1 AknLayout::Multiline_Wait_or_progress_note_pop_up_window_texts_Line_1 +#define AKN_LAYOUT_WINDOW_Note_with_an_image_pop_up_window_elements_Line_1 AknLayout::Note_with_an_image_pop_up_window_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Note_with_an_image_pop_up_window_elements_Line_2 AknLayout::Note_with_an_image_pop_up_window_elements_Line_2() +#define AKN_LAYOUT_WINDOW_Note_with_an_image_pop_up_window_elements_Line_3 AknLayout::Note_with_an_image_pop_up_window_elements_Line_3() +#define AKN_LAYOUT_WINDOW_Note_with_an_image_pop_up_window_elements_Line_4 AknLayout::Note_with_an_image_pop_up_window_elements_Line_4() +#define AKN_LAYOUT_WINDOW_Note_with_an_image_pop_up_window_elements_Line_5 AknLayout::Note_with_an_image_pop_up_window_elements_Line_5() +#define AKN_LAYOUT_WINDOW_Note_with_an_image_pop_up_window_elements_Line_6 AknLayout::Note_with_an_image_pop_up_window_elements_Line_6() +#define AKN_LAYOUT_WINDOW_Note_with_an_image_pop_up_window_elements_Line_7 AknLayout::Note_with_an_image_pop_up_window_elements_Line_7() +#define AKN_LAYOUT_WINDOW_Note_with_an_image_pop_up_window_elements_Line_8 AknLayout::Note_with_an_image_pop_up_window_elements_Line_8() +#define AKN_LAYOUT_WINDOW_Note_with_an_image_pop_up_window_elements_Line_9 AknLayout::Note_with_an_image_pop_up_window_elements_Line_9() +#define AKN_LAYOUT_WINDOW_Note_with_an_image_pop_up_window_elements_Line_10 AknLayout::Note_with_an_image_pop_up_window_elements_Line_10() +#define AKN_LAYOUT_WINDOW_Note_with_an_image_pop_up_window_elements_Line_11 AknLayout::Note_with_an_image_pop_up_window_elements_Line_11() +#define AKN_LAYOUT_WINDOW_Note_with_an_image_pop_up_window_elements_Line_12 AknLayout::Note_with_an_image_pop_up_window_elements_Line_12() +#define AKN_LAYOUT_WINDOW_Note_with_an_image_pop_up_window_elements_Line_13 AknLayout::Note_with_an_image_pop_up_window_elements_Line_13() +#define AKN_LAYOUT_TABLE_LIMITS_Note_with_an_image_pop_up_window_elements_Limits AknLayout::Note_with_an_image_pop_up_window_elements_Limits() +#define AKN_LAYOUT_TABLE_Note_with_an_image_pop_up_window_elements AknLayout::Note_with_an_image_pop_up_window_elements +#define AKN_LAYOUT_TEXT_Note_with_an_image_pop_up_window_texts_Line_1 AknLayout::Note_with_an_image_pop_up_window_texts_Line_1 +#define AKN_LAYOUT_MULTILINE_TEXT_Note_with_an_image_pop_up_window_texts_Line_1 AknLayout::Multiline_Note_with_an_image_pop_up_window_texts_Line_1 +#define AKN_LAYOUT_WINDOW_Query_with_heading_window_graphics_Line_1 AknLayout::Query_with_heading_window_graphics_Line_1 +#define AKN_LAYOUT_WINDOW_Query_with_heading_window_graphics_Line_2 AknLayout::Query_with_heading_window_graphics_Line_2 +#define AKN_LAYOUT_WINDOW_Query_with_heading_window_graphics_Line_3 AknLayout::Query_with_heading_window_graphics_Line_3 +#define AKN_LAYOUT_WINDOW_Query_with_heading_window_graphics_Line_4 AknLayout::Query_with_heading_window_graphics_Line_4 +#define AKN_LAYOUT_WINDOW_Query_with_heading_window_graphics_Line_5 AknLayout::Query_with_heading_window_graphics_Line_5 +#define AKN_LAYOUT_TABLE_LIMITS_Query_with_heading_window_graphics_Limits AknLayout::Query_with_heading_window_graphics_Limits() +#define AKN_LAYOUT_TABLE_Query_with_heading_window_graphics AknLayout::Query_with_heading_window_graphics +#define AKN_LAYOUT_WINDOW_popup_list_heading_pane AknLayout::popup_list_heading_pane +#define AKN_LAYOUT_WINDOW_Heading_pane_elements_Line_1 AknLayout::Heading_pane_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Icon AknLayout::Icon +#define AKN_LAYOUT_TEXT_Heading_pane_texts_Line_1 AknLayout::Heading_pane_texts_Line_1 +#define AKN_LAYOUT_WINDOW_Data_query_pop_up_window_elements_Line_1 AknLayout::Data_query_pop_up_window_elements_Line_1 +#define AKN_LAYOUT_WINDOW_Data_query_pop_up_window_elements_Line_2 AknLayout::Data_query_pop_up_window_elements_Line_2 +#define AKN_LAYOUT_WINDOW_Data_query_pop_up_window_elements_Line_3 AknLayout::Data_query_pop_up_window_elements_Line_3 +#define AKN_LAYOUT_WINDOW_Data_query_pop_up_window_elements_Line_4 AknLayout::Data_query_pop_up_window_elements_Line_4 +#define AKN_LAYOUT_WINDOW_Data_query_pop_up_window_elements_Line_5 AknLayout::Data_query_pop_up_window_elements_Line_5() +#define AKN_LAYOUT_TEXT_Data_query_pop_up_window_texts_Line_1 AknLayout::Data_query_pop_up_window_texts_Line_1 +#define AKN_LAYOUT_MULTILINE_TEXT_Data_query_pop_up_window_texts_Line_1 AknLayout::Multiline_Data_query_pop_up_window_texts_Line_1 +#define AKN_LAYOUT_TEXT_Data_query_pop_up_window_texts_Line_2 AknLayout::Data_query_pop_up_window_texts_Line_2 +#define AKN_LAYOUT_MULTILINE_TEXT_Data_query_pop_up_window_texts_Line_2 AknLayout::Multiline_Data_query_pop_up_window_texts_Line_2 +#define AKN_LAYOUT_WINDOW_Data_query_pop_up_window_graphics_Line_1 AknLayout::Data_query_pop_up_window_graphics_Line_1 +#define AKN_LAYOUT_WINDOW_Data_query_pop_up_window_graphics_Line_2 AknLayout::Data_query_pop_up_window_graphics_Line_2 +#define AKN_LAYOUT_WINDOW_Data_query_pop_up_window_graphics_Line_3 AknLayout::Data_query_pop_up_window_graphics_Line_3 +#define AKN_LAYOUT_WINDOW_Data_query_pop_up_window_graphics_Line_4 AknLayout::Data_query_pop_up_window_graphics_Line_4 +#define AKN_LAYOUT_WINDOW_Data_query_pop_up_window_graphics_Line_5 AknLayout::Data_query_pop_up_window_graphics_Line_5 +#define AKN_LAYOUT_TABLE_LIMITS_Data_query_pop_up_window_graphics_Limits AknLayout::Data_query_pop_up_window_graphics_Limits() +#define AKN_LAYOUT_TABLE_Data_query_pop_up_window_graphics AknLayout::Data_query_pop_up_window_graphics +#define AKN_LAYOUT_WINDOW_Code_query_pop_up_window_elements_Line_1 AknLayout::Code_query_pop_up_window_elements_Line_1 +#define AKN_LAYOUT_WINDOW_Code_query_pop_up_window_elements_Line_2 AknLayout::Code_query_pop_up_window_elements_Line_2 +#define AKN_LAYOUT_WINDOW_Code_query_pop_up_window_elements_Line_3 AknLayout::Code_query_pop_up_window_elements_Line_3 +#define AKN_LAYOUT_WINDOW_Code_query_pop_up_window_elements_Line_4 AknLayout::Code_query_pop_up_window_elements_Line_4 +#define AKN_LAYOUT_TABLE_LIMITS_Code_query_pop_up_window_elements_Limits AknLayout::Code_query_pop_up_window_elements_Limits() +#define AKN_LAYOUT_TABLE_Code_query_pop_up_window_elements AknLayout::Code_query_pop_up_window_elements +#define AKN_LAYOUT_TEXT_Code_query_pop_up_window_texts_Line_1 AknLayout::Code_query_pop_up_window_texts_Line_1 +#define AKN_LAYOUT_MULTILINE_TEXT_Code_query_pop_up_window_texts_Line_1 AknLayout::Multiline_Code_query_pop_up_window_texts_Line_1 +#define AKN_LAYOUT_TEXT_Code_query_pop_up_window_texts_Line_2 AknLayout::Code_query_pop_up_window_texts_Line_2 +#define AKN_LAYOUT_MULTILINE_TEXT_Code_query_pop_up_window_texts_Line_2 AknLayout::Multiline_Code_query_pop_up_window_texts_Line_2 +#define AKN_LAYOUT_TABLE_LIMITS_Code_query_pop_up_window_texts_Limits AknLayout::Code_query_pop_up_window_texts_Limits() +#define AKN_LAYOUT_TABLE_Code_query_pop_up_window_texts AknLayout::Code_query_pop_up_window_texts +#define AKN_LAYOUT_WINDOW_Combined_data_and_code_query_pop_up_window_elements_Line_1 AknLayout::Combined_data_and_code_query_pop_up_window_elements_Line_1 +#define AKN_LAYOUT_WINDOW_Combined_data_and_code_query_pop_up_window_elements_Line_2 AknLayout::Combined_data_and_code_query_pop_up_window_elements_Line_2 +#define AKN_LAYOUT_WINDOW_Combined_data_and_code_query_pop_up_window_elements_Line_3 AknLayout::Combined_data_and_code_query_pop_up_window_elements_Line_3 +#define AKN_LAYOUT_WINDOW_Combined_data_and_code_query_pop_up_window_elements_Line_4 AknLayout::Combined_data_and_code_query_pop_up_window_elements_Line_4 +#define AKN_LAYOUT_WINDOW_Combined_data_and_code_query_pop_up_window_elements_Line_5 AknLayout::Combined_data_and_code_query_pop_up_window_elements_Line_5 +#define AKN_LAYOUT_TEXT_Combined_data_and_code_query_pop_up_window_texts_Line_1 AknLayout::Combined_data_and_code_query_pop_up_window_texts_Line_1 +#define AKN_LAYOUT_MULTILINE_TEXT_Combined_data_and_code_query_pop_up_window_texts_Line_1 AknLayout::Multiline_Combined_data_and_code_query_pop_up_window_texts_Line_1 +#define AKN_LAYOUT_TEXT_Combined_data_and_code_query_pop_up_window_texts_Line_2 AknLayout::Combined_data_and_code_query_pop_up_window_texts_Line_2 +#define AKN_LAYOUT_MULTILINE_TEXT_Combined_data_and_code_query_pop_up_window_texts_Line_2 AknLayout::Multiline_Combined_data_and_code_query_pop_up_window_texts_Line_2 +#define AKN_LAYOUT_TEXT_Combined_data_and_code_query_pop_up_window_texts_Line_3 AknLayout::Combined_data_and_code_query_pop_up_window_texts_Line_3 +#define AKN_LAYOUT_MULTILINE_TEXT_Combined_data_and_code_query_pop_up_window_texts_Line_3 AknLayout::Multiline_Combined_data_and_code_query_pop_up_window_texts_Line_3 +#define AKN_LAYOUT_TEXT_Combined_data_and_code_query_pop_up_window_texts_Line_4 AknLayout::Combined_data_and_code_query_pop_up_window_texts_Line_4 +#define AKN_LAYOUT_MULTILINE_TEXT_Combined_data_and_code_query_pop_up_window_texts_Line_4 AknLayout::Multiline_Combined_data_and_code_query_pop_up_window_texts_Line_4 +#define AKN_LAYOUT_TABLE_LIMITS_Combined_data_and_code_query_pop_up_window_texts_Limits AknLayout::Combined_data_and_code_query_pop_up_window_texts_Limits() +#define AKN_LAYOUT_TABLE_Combined_data_and_code_query_pop_up_window_texts AknLayout::Combined_data_and_code_query_pop_up_window_texts +#define AKN_LAYOUT_WINDOW_Combined_data_and_code_query_pop_up_window_graphics_Line_1 AknLayout::Combined_data_and_code_query_pop_up_window_graphics_Line_1 +#define AKN_LAYOUT_WINDOW_Combined_data_and_code_query_pop_up_window_graphics_Line_2 AknLayout::Combined_data_and_code_query_pop_up_window_graphics_Line_2 +#define AKN_LAYOUT_WINDOW_Combined_data_and_code_query_pop_up_window_graphics_Line_3 AknLayout::Combined_data_and_code_query_pop_up_window_graphics_Line_3 +#define AKN_LAYOUT_WINDOW_Combined_data_and_code_query_pop_up_window_graphics_Line_4 AknLayout::Combined_data_and_code_query_pop_up_window_graphics_Line_4 +#define AKN_LAYOUT_WINDOW_Combined_data_and_code_query_pop_up_window_graphics_Line_5 AknLayout::Combined_data_and_code_query_pop_up_window_graphics_Line_5 +#define AKN_LAYOUT_TABLE_LIMITS_Combined_data_and_code_query_pop_up_window_graphics_SUB_TABLE_0_Limits AknLayout::Combined_data_and_code_query_pop_up_window_graphics_SUB_TABLE_0_Limits() +#define AKN_LAYOUT_TABLE_Combined_data_and_code_query_pop_up_window_graphics_SUB_TABLE_0 AknLayout::Combined_data_and_code_query_pop_up_window_graphics_SUB_TABLE_0 +#define AKN_LAYOUT_WINDOW_Find_pop_up_window_elements_Line_1 AknLayout::Find_pop_up_window_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Find_pop_up_window_elements_Line_2 AknLayout::Find_pop_up_window_elements_Line_2() +#define AKN_LAYOUT_WINDOW_Find_pop_up_window_elements_Line_3 AknLayout::Find_pop_up_window_elements_Line_3() +#define AKN_LAYOUT_WINDOW_Find_pop_up_window_elements_Line_4 AknLayout::Find_pop_up_window_elements_Line_4() +#define AKN_LAYOUT_TABLE_LIMITS_Find_pop_up_window_elements_Limits AknLayout::Find_pop_up_window_elements_Limits() +#define AKN_LAYOUT_TABLE_Find_pop_up_window_elements AknLayout::Find_pop_up_window_elements +#define AKN_LAYOUT_TEXT_Find_pop_up_window_texts_Line_1 AknLayout::Find_pop_up_window_texts_Line_1() +#define AKN_LAYOUT_WINDOW_Find_pop_up_window_graphics_Line_1 AknLayout::Find_pop_up_window_graphics_Line_1() +#define AKN_LAYOUT_WINDOW_Find_pop_up_window_graphics_Line_2 AknLayout::Find_pop_up_window_graphics_Line_2() +#define AKN_LAYOUT_WINDOW_Find_pop_up_window_graphics_Line_3 AknLayout::Find_pop_up_window_graphics_Line_3() +#define AKN_LAYOUT_WINDOW_Find_pop_up_window_graphics_Line_4 AknLayout::Find_pop_up_window_graphics_Line_4() +#define AKN_LAYOUT_WINDOW_Find_pop_up_window_graphics_Line_5 AknLayout::Find_pop_up_window_graphics_Line_5() +#define AKN_LAYOUT_TABLE_LIMITS_Find_pop_up_window_graphics_Limits AknLayout::Find_pop_up_window_graphics_Limits() +#define AKN_LAYOUT_TABLE_Find_pop_up_window_graphics AknLayout::Find_pop_up_window_graphics +#define AKN_LAYOUT_WINDOW_Pop_up_menu_with_find_pane_graphics_Line_1 AknLayout::Pop_up_menu_with_find_pane_graphics_Line_1 +#define AKN_LAYOUT_WINDOW_Pop_up_menu_with_find_pane_graphics_Line_2 AknLayout::Pop_up_menu_with_find_pane_graphics_Line_2 +#define AKN_LAYOUT_WINDOW_Pop_up_menu_with_find_pane_graphics_Line_3 AknLayout::Pop_up_menu_with_find_pane_graphics_Line_3 +#define AKN_LAYOUT_WINDOW_Pop_up_menu_with_find_pane_graphics_Line_4 AknLayout::Pop_up_menu_with_find_pane_graphics_Line_4 +#define AKN_LAYOUT_WINDOW_Pop_up_menu_with_find_pane_graphics_Line_5 AknLayout::Pop_up_menu_with_find_pane_graphics_Line_5 +#define AKN_LAYOUT_TABLE_LIMITS_Pop_up_menu_with_find_pane_graphics_Limits AknLayout::Pop_up_menu_with_find_pane_graphics_Limits() +#define AKN_LAYOUT_TABLE_Pop_up_menu_with_find_pane_graphics AknLayout::Pop_up_menu_with_find_pane_graphics +#define AKN_LAYOUT_WINDOW_Notification_pop_up_window_elements__text__Line_1 AknLayout::Notification_pop_up_window_elements__text__Line_1() +#define AKN_LAYOUT_TEXT_Notification_pop_up_window_texts__text__Line_1 AknLayout::Notification_pop_up_window_texts__text__Line_1 +#define AKN_LAYOUT_MULTILINE_TEXT_Notification_pop_up_window_texts__text__Line_1 AknLayout::Multiline_Notification_pop_up_window_texts__text__Line_1 +#define AKN_LAYOUT_WINDOW_Notification_pop_up_window_graphics__text__Line_1 AknLayout::Notification_pop_up_window_graphics__text__Line_1 +#define AKN_LAYOUT_WINDOW_Notification_pop_up_window_graphics__text__Line_2 AknLayout::Notification_pop_up_window_graphics__text__Line_2 +#define AKN_LAYOUT_WINDOW_Notification_pop_up_window_graphics__text__Line_3 AknLayout::Notification_pop_up_window_graphics__text__Line_3 +#define AKN_LAYOUT_WINDOW_Notification_pop_up_window_graphics__text__Line_4 AknLayout::Notification_pop_up_window_graphics__text__Line_4 +#define AKN_LAYOUT_WINDOW_Notification_pop_up_window_graphics__text__Line_5 AknLayout::Notification_pop_up_window_graphics__text__Line_5 +#define AKN_LAYOUT_TABLE_LIMITS_Notification_pop_up_window_graphics__text__Limits AknLayout::Notification_pop_up_window_graphics__text__Limits() +#define AKN_LAYOUT_TABLE_Notification_pop_up_window_graphics__text_ AknLayout::Notification_pop_up_window_graphics__text_ +#define AKN_LAYOUT_WINDOW_Notification_pop_up_window_elements__graphic__Line_1 AknLayout::Notification_pop_up_window_elements__graphic__Line_1() +#define AKN_LAYOUT_WINDOW_Notification_pop_up_window_elements__graphic__Line_2 AknLayout::Notification_pop_up_window_elements__graphic__Line_2() +#define AKN_LAYOUT_TABLE_LIMITS_Notification_pop_up_window_elements__graphic__Limits AknLayout::Notification_pop_up_window_elements__graphic__Limits() +#define AKN_LAYOUT_TABLE_Notification_pop_up_window_elements__graphic_ AknLayout::Notification_pop_up_window_elements__graphic_ +#define AKN_LAYOUT_TEXT_Notification_pop_up_window_texts__graphic__Line_1 AknLayout::Notification_pop_up_window_texts__graphic__Line_1 +#define AKN_LAYOUT_MULTILINE_TEXT_Notification_pop_up_window_texts__graphic__Line_1 AknLayout::Multiline_Notification_pop_up_window_texts__graphic__Line_1 +#define AKN_LAYOUT_WINDOW_Identifier_icon_selection_pop_up_window_descendants_Line_1 AknLayout::Identifier_icon_selection_pop_up_window_descendants_Line_1 +#define AKN_LAYOUT_WINDOW_grid_graphic_popup_pane AknLayout::grid_graphic_popup_pane +#define AKN_LAYOUT_WINDOW_Identifier_icon_selection_pop_up_window_elements_Line_1 AknLayout::Identifier_icon_selection_pop_up_window_elements_Line_1 +#define AKN_LAYOUT_WINDOW_Identifier_icon_selection_pop_up_window_elements_Line_2 AknLayout::Identifier_icon_selection_pop_up_window_elements_Line_2 +#define AKN_LAYOUT_WINDOW_Identifier_icon_selection_pop_up_window_graphics_Line_1 AknLayout::Identifier_icon_selection_pop_up_window_graphics_Line_1 +#define AKN_LAYOUT_WINDOW_Identifier_icon_selection_pop_up_window_graphics_Line_2 AknLayout::Identifier_icon_selection_pop_up_window_graphics_Line_2 +#define AKN_LAYOUT_WINDOW_Identifier_icon_selection_pop_up_window_graphics_Line_3 AknLayout::Identifier_icon_selection_pop_up_window_graphics_Line_3 +#define AKN_LAYOUT_WINDOW_Identifier_icon_selection_pop_up_window_graphics_Line_4 AknLayout::Identifier_icon_selection_pop_up_window_graphics_Line_4 +#define AKN_LAYOUT_WINDOW_Identifier_icon_selection_pop_up_window_graphics_Line_5 AknLayout::Identifier_icon_selection_pop_up_window_graphics_Line_5 +#define AKN_LAYOUT_TABLE_LIMITS_Identifier_icon_selection_pop_up_window_graphics_SUB_TABLE_0_Limits AknLayout::Identifier_icon_selection_pop_up_window_graphics_SUB_TABLE_0_Limits() +#define AKN_LAYOUT_TABLE_Identifier_icon_selection_pop_up_window_graphics_SUB_TABLE_0 AknLayout::Identifier_icon_selection_pop_up_window_graphics_SUB_TABLE_0 +#define AKN_LAYOUT_WINDOW_Colour_selection_pop_up_window_descendants_Line_1 AknLayout::Colour_selection_pop_up_window_descendants_Line_1() +#define AKN_LAYOUT_WINDOW_Colour_selection_pop_up_window_descendants_Line_2 AknLayout::Colour_selection_pop_up_window_descendants_Line_2() +#define AKN_LAYOUT_WINDOW_grid_large_graphic_colour_popup_pane AknLayout::grid_large_graphic_colour_popup_pane +#define AKN_LAYOUT_WINDOW_Composer_symbol_selection_pop_up_window_elements_Line_1 AknLayout::Composer_symbol_selection_pop_up_window_elements_Line_1 +#define AKN_LAYOUT_WINDOW_Composer_symbol_selection_pop_up_window_elements_Line_2 AknLayout::Composer_symbol_selection_pop_up_window_elements_Line_2 +#define AKN_LAYOUT_WINDOW_Colour_selection_pop_up_window_graphics_Line_1 AknLayout::Colour_selection_pop_up_window_graphics_Line_1 +#define AKN_LAYOUT_WINDOW_Colour_selection_pop_up_window_graphics_Line_2 AknLayout::Colour_selection_pop_up_window_graphics_Line_2 +#define AKN_LAYOUT_WINDOW_Colour_selection_pop_up_window_graphics_Line_3 AknLayout::Colour_selection_pop_up_window_graphics_Line_3 +#define AKN_LAYOUT_WINDOW_Colour_selection_pop_up_window_graphics_Line_4 AknLayout::Colour_selection_pop_up_window_graphics_Line_4 +#define AKN_LAYOUT_WINDOW_Colour_selection_pop_up_window_graphics_Line_5 AknLayout::Colour_selection_pop_up_window_graphics_Line_5 +#define AKN_LAYOUT_TABLE_LIMITS_Colour_selection_pop_up_window_graphics_Limits AknLayout::Colour_selection_pop_up_window_graphics_Limits() +#define AKN_LAYOUT_TABLE_Colour_selection_pop_up_window_graphics AknLayout::Colour_selection_pop_up_window_graphics +#define AKN_LAYOUT_WINDOW_Fast_application_swapping_pop_up_window_descendants_Line_1 AknLayout::Fast_application_swapping_pop_up_window_descendants_Line_1 +#define AKN_LAYOUT_WINDOW_Fast_application_swapping_pop_up_window_graphics_Line_1 AknLayout::Fast_application_swapping_pop_up_window_graphics_Line_1 +#define AKN_LAYOUT_WINDOW_Fast_application_swapping_pop_up_window_graphics_Line_2 AknLayout::Fast_application_swapping_pop_up_window_graphics_Line_2 +#define AKN_LAYOUT_WINDOW_Fast_application_swapping_pop_up_window_graphics_Line_3 AknLayout::Fast_application_swapping_pop_up_window_graphics_Line_3 +#define AKN_LAYOUT_WINDOW_Fast_application_swapping_pop_up_window_graphics_Line_4 AknLayout::Fast_application_swapping_pop_up_window_graphics_Line_4 +#define AKN_LAYOUT_WINDOW_Fast_application_swapping_pop_up_window_graphics_Line_5 AknLayout::Fast_application_swapping_pop_up_window_graphics_Line_5 +#define AKN_LAYOUT_WINDOW_Fast_application_swapping_pop_up_window_graphics_Line_6 AknLayout::Fast_application_swapping_pop_up_window_graphics_Line_6() +#define AKN_LAYOUT_TABLE_LIMITS_Fast_application_swapping_pop_up_window_graphics_SUB_TABLE_0_Limits AknLayout::Fast_application_swapping_pop_up_window_graphics_SUB_TABLE_0_Limits() +#define AKN_LAYOUT_TABLE_Fast_application_swapping_pop_up_window_graphics_SUB_TABLE_0 AknLayout::Fast_application_swapping_pop_up_window_graphics_SUB_TABLE_0 +#define AKN_LAYOUT_TEXT_List_pane_texts__setting__double2__Line_1 AknLayout::List_pane_texts__setting__double2__Line_1() +#define AKN_LAYOUT_TEXT_List_pane_texts__setting__double2__Line_2 AknLayout::List_pane_texts__setting__double2__Line_2() +#define AKN_LAYOUT_TABLE_LIMITS_List_pane_texts__setting__double2__Limits AknLayout::List_pane_texts__setting__double2__Limits() +#define AKN_LAYOUT_TABLE_List_pane_texts__setting__double2_ AknLayout::List_pane_texts__setting__double2_ +#define AKN_LAYOUT_WINDOW_List_pane_elements__single_2graphic__Line_1 AknLayout::List_pane_elements__single_2graphic__Line_1() +#define AKN_LAYOUT_WINDOW_List_pane_elements__single_2graphic__Line_2 AknLayout::List_pane_elements__single_2graphic__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_elements__single_2graphic__Line_3 AknLayout::List_pane_elements__single_2graphic__Line_3() +#define AKN_LAYOUT_WINDOW_List_pane_elements__single_2graphic__Line_4 AknLayout::List_pane_elements__single_2graphic__Line_4 +#define AKN_LAYOUT_TABLE_LIMITS_List_pane_elements__single_2graphic__SUB_TABLE_0_Limits AknLayout::List_pane_elements__single_2graphic__SUB_TABLE_0_Limits() +#define AKN_LAYOUT_TABLE_List_pane_elements__single_2graphic__SUB_TABLE_0 AknLayout::List_pane_elements__single_2graphic__SUB_TABLE_0 +#define AKN_LAYOUT_TEXT_List_pane_texts__single_2graphic__Line_1 AknLayout::List_pane_texts__single_2graphic__Line_1 +#define AKN_LAYOUT_WINDOW_List_pane_elements__double2_graphic_large_graphic__Line_1 AknLayout::List_pane_elements__double2_graphic_large_graphic__Line_1() +#define AKN_LAYOUT_WINDOW_List_pane_elements__double2_graphic_large_graphic__Line_2 AknLayout::List_pane_elements__double2_graphic_large_graphic__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_elements__double2_graphic_large_graphic__Line_3 AknLayout::List_pane_elements__double2_graphic_large_graphic__Line_3() +#define AKN_LAYOUT_WINDOW_List_pane_elements__double2_graphic_large_graphic__Line_4 AknLayout::List_pane_elements__double2_graphic_large_graphic__Line_4 +#define AKN_LAYOUT_TABLE_LIMITS_List_pane_elements__double2_graphic_large_graphic__SUB_TABLE_0_Limits AknLayout::List_pane_elements__double2_graphic_large_graphic__SUB_TABLE_0_Limits() +#define AKN_LAYOUT_TABLE_List_pane_elements__double2_graphic_large_graphic__SUB_TABLE_0 AknLayout::List_pane_elements__double2_graphic_large_graphic__SUB_TABLE_0 +#define AKN_LAYOUT_TEXT_List_pane_texts__double2_graphic_large_graphic__Line_1 AknLayout::List_pane_texts__double2_graphic_large_graphic__Line_1 +#define AKN_LAYOUT_TEXT_List_pane_texts__double2_graphic_large_graphic__Line_2 AknLayout::List_pane_texts__double2_graphic_large_graphic__Line_2() +#define AKN_LAYOUT_TEXT_Form_data_wide_graphic_field_texts_Line_1 AknLayout::Form_data_wide_graphic_field_texts_Line_1() +#define AKN_LAYOUT_TEXT_Form_data_wide_graphic_field_texts_Line_2 AknLayout::Form_data_wide_graphic_field_texts_Line_2 +#define AKN_LAYOUT_MULTILINE_TEXT_Form_data_wide_graphic_field_texts_Line_2 AknLayout::Multiline_Form_data_wide_graphic_field_texts_Line_2 +#define AKN_LAYOUT_WINDOW_status_small_pane AknLayout::status_small_pane() +#define AKN_LAYOUT_WINDOW_Small_status_pane_descendants_and_elements_Line_1 AknLayout::Small_status_pane_descendants_and_elements_Line_1() +#define AKN_LAYOUT_WINDOW_status_small_icon_pane AknLayout::status_small_icon_pane() +#define AKN_LAYOUT_WINDOW_status_small_wait_pane AknLayout::status_small_wait_pane() +#define AKN_LAYOUT_WINDOW_Small_status_pane_descendants_and_elements_Line_4 AknLayout::Small_status_pane_descendants_and_elements_Line_4() +#define AKN_LAYOUT_WINDOW_Small_status_pane_descendants_and_elements_Line_5 AknLayout::Small_status_pane_descendants_and_elements_Line_5() +#define AKN_LAYOUT_WINDOW_Small_status_pane_descendants_and_elements_Line_6 AknLayout::Small_status_pane_descendants_and_elements_Line_6() +#define AKN_LAYOUT_TABLE_LIMITS_Small_status_pane_descendants_and_elements_Limits AknLayout::Small_status_pane_descendants_and_elements_Limits() +#define AKN_LAYOUT_TABLE_Small_status_pane_descendants_and_elements AknLayout::Small_status_pane_descendants_and_elements +#define AKN_LAYOUT_TEXT_Small_status_pane_texts_Line_1 AknLayout::Small_status_pane_texts_Line_1 +#define AKN_LAYOUT_WINDOW_Small_status_waiting_pane_components_Line_1 AknLayout::Small_status_waiting_pane_components_Line_1() +#define AKN_LAYOUT_WINDOW_Small_status_waiting_pane_components_Line_2 AknLayout::Small_status_waiting_pane_components_Line_2() +#define AKN_LAYOUT_WINDOW_Small_status_waiting_pane_components_Line_3 AknLayout::Small_status_waiting_pane_components_Line_3() +#define AKN_LAYOUT_WINDOW_Small_status_waiting_pane_components_Line_4 AknLayout::Small_status_waiting_pane_components_Line_4() +#define AKN_LAYOUT_TABLE_LIMITS_Small_status_waiting_pane_components_Limits AknLayout::Small_status_waiting_pane_components_Limits() +#define AKN_LAYOUT_TABLE_Small_status_waiting_pane_components AknLayout::Small_status_waiting_pane_components +#define AKN_LAYOUT_WINDOW_Note_with_additional_information_popup_window_elements_Line_1 AknLayout::Note_with_additional_information_popup_window_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Note_with_additional_information_popup_window_elements_Line_2 AknLayout::Note_with_additional_information_popup_window_elements_Line_2 +#define AKN_LAYOUT_WINDOW_Note_with_additional_information_popup_window_elements_Line_3 AknLayout::Note_with_additional_information_popup_window_elements_Line_3 +#define AKN_LAYOUT_TEXT_Note_with_additional_information_popup_window_texts_Line_1 AknLayout::Note_with_additional_information_popup_window_texts_Line_1 +#define AKN_LAYOUT_MULTILINE_TEXT_Note_with_additional_information_popup_window_texts_Line_1 AknLayout::Multiline_Note_with_additional_information_popup_window_texts_Line_1 +#define AKN_LAYOUT_TEXT_Note_with_additional_information_popup_window_texts_Line_2 AknLayout::Note_with_additional_information_popup_window_texts_Line_2 +#define AKN_LAYOUT_MULTILINE_TEXT_Note_with_additional_information_popup_window_texts_Line_2 AknLayout::Multiline_Note_with_additional_information_popup_window_texts_Line_2 +#define AKN_LAYOUT_TEXT_Note_with_additional_information_popup_window_texts_Line_3 AknLayout::Note_with_additional_information_popup_window_texts_Line_3 +#define AKN_LAYOUT_MULTILINE_TEXT_Note_with_additional_information_popup_window_texts_Line_3 AknLayout::Multiline_Note_with_additional_information_popup_window_texts_Line_3 +#define AKN_LAYOUT_TEXT_Heading_pane_texts_Line_2 AknLayout::Heading_pane_texts_Line_2() +#define AKN_LAYOUT_WINDOW_Side_volume_key_popup_window_elements_Line_1 AknLayout::Side_volume_key_popup_window_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Side_volume_key_popup_window_elements_Line_2 AknLayout::Side_volume_key_popup_window_elements_Line_2() +#define AKN_LAYOUT_TEXT_Side_volume_key_popup_window_texts_Line_1 AknLayout::Side_volume_key_popup_window_texts_Line_1() +#define AKN_LAYOUT_TEXT_Side_volume_key_popup_window_texts_Line_2 AknLayout::Side_volume_key_popup_window_texts_Line_2() +#define AKN_LAYOUT_WINDOW_Side_volume_key_popup_window_background_Line_1 AknLayout::Side_volume_key_popup_window_background_Line_1 +#define AKN_LAYOUT_WINDOW_Side_volume_key_popup_window_background_Line_2 AknLayout::Side_volume_key_popup_window_background_Line_2 +#define AKN_LAYOUT_WINDOW_Side_volume_key_popup_window_background_Line_3 AknLayout::Side_volume_key_popup_window_background_Line_3 +#define AKN_LAYOUT_WINDOW_Side_volume_key_popup_window_background_Line_4 AknLayout::Side_volume_key_popup_window_background_Line_4 +#define AKN_LAYOUT_TEXT_Transparent_setting_item_texts_Line_1 AknLayout::Transparent_setting_item_texts_Line_1() +#define AKN_LAYOUT_TEXT_Transparent_setting_item_texts_Line_2 AknLayout::Transparent_setting_item_texts_Line_2() +#define AKN_LAYOUT_TEXT_Transparent_setting_item_texts_Line_3 AknLayout::Transparent_setting_item_texts_Line_3 +#define AKN_LAYOUT_TEXT_Transparent_setting_item_texts_Line_4 AknLayout::Transparent_setting_item_texts_Line_4 +#define AKN_LAYOUT_TEXT_List_pane_texts__set_trans_graphic__Line_1 AknLayout::List_pane_texts__set_trans_graphic__Line_1 +#define AKN_LAYOUT_TEXT_List_pane_texts__set_trans_graphic__Line_2 AknLayout::List_pane_texts__set_trans_graphic__Line_2 +#define AKN_LAYOUT_WINDOW_list_set_trans_pane AknLayout::list_set_trans_pane +#define AKN_LAYOUT_WINDOW_list_set_trans_graphic_pane AknLayout::list_set_trans_graphic_pane +#define AKN_LAYOUT_WINDOW_List_pane_elements__set_trans_graphic__Line_1 AknLayout::List_pane_elements__set_trans_graphic__Line_1() +#define AKN_LAYOUT_WINDOW_List_pane_elements__set_trans_graphic__Line_2 AknLayout::List_pane_elements__set_trans_graphic__Line_2() +#define AKN_LAYOUT_WINDOW_List_pane_elements__set_trans_graphic__Line_3 AknLayout::List_pane_elements__set_trans_graphic__Line_3() +#define AKN_LAYOUT_WINDOW_List_pane_elements__set_trans_graphic__Line_4 AknLayout::List_pane_elements__set_trans_graphic__Line_4() +#define AKN_LAYOUT_WINDOW_List_pane_elements__set_trans_graphic__Line_5 AknLayout::List_pane_elements__set_trans_graphic__Line_5() +#define AKN_LAYOUT_TEXT_Soft_indicator_texts_Line_1 AknLayout::Soft_indicator_texts_Line_1() +#define AKN_LAYOUT_WINDOW_ai_links_pane AknLayout::ai_links_pane() +#define AKN_LAYOUT_WINDOW_ai_gene_pane AknLayout::ai_gene_pane +#define AKN_LAYOUT_WINDOW_Link_pane_elements_and_descendant_panes_Line_1 AknLayout::Link_pane_elements_and_descendant_panes_Line_1() +#define AKN_LAYOUT_WINDOW_grid_ai_links_pane AknLayout::grid_ai_links_pane() +#define AKN_LAYOUT_TABLE_LIMITS_Link_pane_elements_and_descendant_panes_Limits AknLayout::Link_pane_elements_and_descendant_panes_Limits() +#define AKN_LAYOUT_TABLE_Link_pane_elements_and_descendant_panes AknLayout::Link_pane_elements_and_descendant_panes +#define AKN_LAYOUT_WINDOW_cell_ai_link_pane AknLayout::cell_ai_link_pane +#define AKN_LAYOUT_WINDOW_Link_shortcut_cell_pane_elements_Line_1 AknLayout::Link_shortcut_cell_pane_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Link_shortcut_cell_pane_elements_Line_2 AknLayout::Link_shortcut_cell_pane_elements_Line_2() +#define AKN_LAYOUT_WINDOW_Link_shortcut_cell_pane_elements_Line_3 AknLayout::Link_shortcut_cell_pane_elements_Line_3() +#define AKN_LAYOUT_WINDOW_Link_shortcut_cell_pane_elements_Line_4 AknLayout::Link_shortcut_cell_pane_elements_Line_4() +#define AKN_LAYOUT_TABLE_LIMITS_Link_shortcut_cell_pane_elements_Limits AknLayout::Link_shortcut_cell_pane_elements_Limits() +#define AKN_LAYOUT_TABLE_Link_shortcut_cell_pane_elements AknLayout::Link_shortcut_cell_pane_elements +#define AKN_LAYOUT_WINDOW_popup_ai_links_title_window AknLayout::popup_ai_links_title_window() +#define AKN_LAYOUT_TEXT_Link_shortcut_title_texts_Line_1 AknLayout::Link_shortcut_title_texts_Line_1() +#define AKN_LAYOUT_WINDOW_Link_shortcut_title_pop_up_window_graphics_Line_1 AknLayout::Link_shortcut_title_pop_up_window_graphics_Line_1 +#define AKN_LAYOUT_WINDOW_Link_shortcut_title_pop_up_window_graphics_Line_2 AknLayout::Link_shortcut_title_pop_up_window_graphics_Line_2 +#define AKN_LAYOUT_WINDOW_Link_shortcut_title_pop_up_window_graphics_Line_3 AknLayout::Link_shortcut_title_pop_up_window_graphics_Line_3 +#define AKN_LAYOUT_WINDOW_Link_shortcut_title_pop_up_window_graphics_Line_4 AknLayout::Link_shortcut_title_pop_up_window_graphics_Line_4 +#define AKN_LAYOUT_TABLE_LIMITS_Link_shortcut_title_pop_up_window_graphics_Limits AknLayout::Link_shortcut_title_pop_up_window_graphics_Limits() +#define AKN_LAYOUT_TABLE_Link_shortcut_title_pop_up_window_graphics AknLayout::Link_shortcut_title_pop_up_window_graphics +#define AKN_LAYOUT_WINDOW_ai_gene_pane_1 AknLayout::ai_gene_pane_1() +#define AKN_LAYOUT_WINDOW_ai_gene_pane_2 AknLayout::ai_gene_pane_2 +#define AKN_LAYOUT_WINDOW_First_general_event_elements_Line_1 AknLayout::First_general_event_elements_Line_1() +#define AKN_LAYOUT_WINDOW_First_general_event_elements_Line_2 AknLayout::First_general_event_elements_Line_2() +#define AKN_LAYOUT_TEXT_First_general_event_texts_Line_1 AknLayout::First_general_event_texts_Line_1 +#define AKN_LAYOUT_TEXT_Second_general_event_pane_texts_Line_1 AknLayout::Second_general_event_pane_texts_Line_1 +#define AKN_LAYOUT_WINDOW_Shortcut_link_highlight_Line_1 AknLayout::Shortcut_link_highlight_Line_1 +#define AKN_LAYOUT_WINDOW_Highlight_for_other_Active_Idle_items_Line_1 AknLayout::Highlight_for_other_Active_Idle_items_Line_1 +#define AKN_LAYOUT_TEXT_Find_pop_up_window_texts_Line_2 AknLayout::Find_pop_up_window_texts_Line_2() +#define AKN_LAYOUT_TABLE_LIMITS_Find_pop_up_window_texts_Limits AknLayout::Find_pop_up_window_texts_Limits() +#define AKN_LAYOUT_TABLE_Find_pop_up_window_texts AknLayout::Find_pop_up_window_texts +#define AKN_LAYOUT_TEXT_Find_pane_texts_Line_2 AknLayout::Find_pane_texts_Line_2() +#define AKN_LAYOUT_TABLE_LIMITS_Find_pane_texts_Limits AknLayout::Find_pane_texts_Limits() +#define AKN_LAYOUT_TABLE_Find_pane_texts AknLayout::Find_pane_texts +#define AKN_LAYOUT_WINDOW_ai_gene_pane_3 AknLayout::ai_gene_pane_3() +#define AKN_LAYOUT_WINDOW_Third_general_event_elements_Line_1 AknLayout::Third_general_event_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Third_general_event_elements_Line_2 AknLayout::Third_general_event_elements_Line_2() +#define AKN_LAYOUT_TABLE_LIMITS_Third_general_event_elements_Limits AknLayout::Third_general_event_elements_Limits() +#define AKN_LAYOUT_TABLE_Third_general_event_elements AknLayout::Third_general_event_elements +#define AKN_LAYOUT_WINDOW_popup_ai_message_window AknLayout::popup_ai_message_window() +#define AKN_LAYOUT_WINDOW_Active_idle_message_pop_up_window_descendants_Line_1 AknLayout::Active_idle_message_pop_up_window_descendants_Line_1() +#define AKN_LAYOUT_WINDOW_Active_idle_message_pop_up_window_descendants_Line_2 AknLayout::Active_idle_message_pop_up_window_descendants_Line_2() +#define AKN_LAYOUT_WINDOW_Active_idle_message_pop_up_window_descendants_Line_3 AknLayout::Active_idle_message_pop_up_window_descendants_Line_3() +#define AKN_LAYOUT_TABLE_LIMITS_Active_idle_message_pop_up_window_descendants_Limits AknLayout::Active_idle_message_pop_up_window_descendants_Limits() +#define AKN_LAYOUT_TABLE_Active_idle_message_pop_up_window_descendants AknLayout::Active_idle_message_pop_up_window_descendants +#define AKN_LAYOUT_TEXT_Active_idle_message_popup_window_texts_Line_1 AknLayout::Active_idle_message_popup_window_texts_Line_1 +#define AKN_LAYOUT_MULTILINE_TEXT_Active_idle_message_popup_window_texts_Line_1 AknLayout::Multiline_Active_idle_message_popup_window_texts_Line_1 +#define AKN_LAYOUT_WINDOW_Active_idle_heading_pane_elements_Line_1 AknLayout::Active_idle_heading_pane_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Active_idle_heading_pane_elements_Line_2 AknLayout::Active_idle_heading_pane_elements_Line_2() +#define AKN_LAYOUT_WINDOW_Active_idle_heading_pane_elements_Line_3 AknLayout::Active_idle_heading_pane_elements_Line_3() +#define AKN_LAYOUT_WINDOW_Active_idle_heading_pane_elements_Line_4 AknLayout::Active_idle_heading_pane_elements_Line_4() +#define AKN_LAYOUT_TABLE_LIMITS_Active_idle_heading_pane_elements_Limits AknLayout::Active_idle_heading_pane_elements_Limits() +#define AKN_LAYOUT_TABLE_Active_idle_heading_pane_elements AknLayout::Active_idle_heading_pane_elements +#define AKN_LAYOUT_TEXT_Active_idle_heading_pane_texts_Line_1 AknLayout::Active_idle_heading_pane_texts_Line_1 +#define AKN_LAYOUT_TEXT_Active_idle_heading_pane_texts_Line_2 AknLayout::Active_idle_heading_pane_texts_Line_2() +#define AKN_LAYOUT_WINDOW_Active_idle_message_pop_up_window_graphics_Line_1 AknLayout::Active_idle_message_pop_up_window_graphics_Line_1 +#define AKN_LAYOUT_WINDOW_Active_idle_message_pop_up_window_graphics_Line_2 AknLayout::Active_idle_message_pop_up_window_graphics_Line_2 +#define AKN_LAYOUT_WINDOW_Active_idle_message_pop_up_window_graphics_Line_3 AknLayout::Active_idle_message_pop_up_window_graphics_Line_3 +#define AKN_LAYOUT_WINDOW_Active_idle_message_pop_up_window_graphics_Line_4 AknLayout::Active_idle_message_pop_up_window_graphics_Line_4 +#define AKN_LAYOUT_WINDOW_Active_idle_message_pop_up_window_graphics_Line_5 AknLayout::Active_idle_message_pop_up_window_graphics_Line_5 +#define AKN_LAYOUT_TABLE_LIMITS_Active_idle_message_pop_up_window_graphics_Limits AknLayout::Active_idle_message_pop_up_window_graphics_Limits() +#define AKN_LAYOUT_TABLE_Active_idle_message_pop_up_window_graphics AknLayout::Active_idle_message_pop_up_window_graphics +#include +#define AKN_LAYOUT_WINDOW_Find_pane_elements_Line_6 AknApacLayout::Find_pane_elements_Line_6() +#define AKN_LAYOUT_WINDOW_popup_fep_china_window AknApacLayout::popup_fep_china_window +#define AKN_LAYOUT_WINDOW_popup_fep_china_pinyin_window AknApacLayout::popup_fep_china_pinyin_window +#define AKN_LAYOUT_WINDOW_Cursor_graphics__16__Line_1 AknApacLayout::Cursor_graphics__16__Line_1() +#define AKN_LAYOUT_WINDOW_Cut_copy_and_paste_highlight_graphics__16__Line_1 AknApacLayout::Cut_copy_and_paste_highlight_graphics__16__Line_1() +#define AKN_LAYOUT_WINDOW_Time_and_date_entry_graphics__16__Line_1 AknApacLayout::Time_and_date_entry_graphics__16__Line_1() +#define AKN_LAYOUT_WINDOW_cell_apac_character_popup_pane AknApacLayout::cell_apac_character_popup_pane +#define AKN_LAYOUT_TEXT_Cell_pane_texts__pop_up_APAC_character__Line_1 AknApacLayout::Cell_pane_texts__pop_up_APAC_character__Line_1() +#define AKN_LAYOUT_WINDOW_APAC_character_selection_pop_up_window_descendants_Line_1 AknApacLayout::APAC_character_selection_pop_up_window_descendants_Line_1 +#define AKN_LAYOUT_WINDOW_grid_apac_character_popup_pane AknApacLayout::grid_apac_character_popup_pane +#define AKN_LAYOUT_WINDOW_APAC_character_selection_pop_up_window_elements_Line_1 AknApacLayout::APAC_character_selection_pop_up_window_elements_Line_1 +#define AKN_LAYOUT_WINDOW_APAC_character_selection_pop_up_window_elements_Line_2 AknApacLayout::APAC_character_selection_pop_up_window_elements_Line_2 +#define AKN_LAYOUT_WINDOW_APAC_character_selection_pop_up_window_graphics_Line_1 AknApacLayout::APAC_character_selection_pop_up_window_graphics_Line_1 +#define AKN_LAYOUT_WINDOW_APAC_character_selection_pop_up_window_graphics_Line_2 AknApacLayout::APAC_character_selection_pop_up_window_graphics_Line_2 +#define AKN_LAYOUT_WINDOW_APAC_character_selection_pop_up_window_graphics_Line_3 AknApacLayout::APAC_character_selection_pop_up_window_graphics_Line_3 +#define AKN_LAYOUT_WINDOW_APAC_character_selection_pop_up_window_graphics_Line_4 AknApacLayout::APAC_character_selection_pop_up_window_graphics_Line_4 +#define AKN_LAYOUT_WINDOW_APAC_character_selection_pop_up_window_graphics_Line_5 AknApacLayout::APAC_character_selection_pop_up_window_graphics_Line_5 +#define AKN_LAYOUT_TABLE_LIMITS_APAC_character_selection_pop_up_window_graphics_SUB_TABLE_0_Limits AknApacLayout::APAC_character_selection_pop_up_window_graphics_SUB_TABLE_0_Limits() +#define AKN_LAYOUT_TABLE_APAC_character_selection_pop_up_window_graphics_SUB_TABLE_0 AknApacLayout::APAC_character_selection_pop_up_window_graphics_SUB_TABLE_0 +#define AKN_LAYOUT_WINDOW_Chinese_FEP_pop_up_window_elements_and_descendants_panes_Line_1 AknApacLayout::Chinese_FEP_pop_up_window_elements_and_descendants_panes_Line_1 +#define AKN_LAYOUT_WINDOW_fep_china_entry_pane AknApacLayout::fep_china_entry_pane +#define AKN_LAYOUT_WINDOW_fep_china_candidate_pane AknApacLayout::fep_china_candidate_pane +#define AKN_LAYOUT_TEXT_Chinese_FEP_entry_pane_texts_Line_1 AknApacLayout::Chinese_FEP_entry_pane_texts_Line_1 +#define AKN_LAYOUT_WINDOW_Chinese_FEP_candidate_pane_elements_Line_1 AknApacLayout::Chinese_FEP_candidate_pane_elements_Line_1 +#define AKN_LAYOUT_WINDOW_Chinese_FEP_candidate_pane_elements_Line_2 AknApacLayout::Chinese_FEP_candidate_pane_elements_Line_2() +#define AKN_LAYOUT_WINDOW_Chinese_FEP_candidate_pane_elements_Line_3 AknApacLayout::Chinese_FEP_candidate_pane_elements_Line_3() +#define AKN_LAYOUT_WINDOW_fep_china_highlight_pane AknApacLayout::fep_china_highlight_pane +#define AKN_LAYOUT_TABLE_LIMITS_Chinese_FEP_candidate_pane_elements_SUB_TABLE_0_Limits AknApacLayout::Chinese_FEP_candidate_pane_elements_SUB_TABLE_0_Limits() +#define AKN_LAYOUT_TABLE_Chinese_FEP_candidate_pane_elements_SUB_TABLE_0 AknApacLayout::Chinese_FEP_candidate_pane_elements_SUB_TABLE_0 +#define AKN_LAYOUT_TEXT_Chinese_FEP_candidate_pane_texts_Line_1 AknApacLayout::Chinese_FEP_candidate_pane_texts_Line_1 +#define AKN_LAYOUT_TEXT_Chinese_FEP_candidate_pane_texts_Line_2 AknApacLayout::Chinese_FEP_candidate_pane_texts_Line_2 +#define AKN_LAYOUT_WINDOW_Chinese_FEP_pop_up_window_graphics_Line_1 AknApacLayout::Chinese_FEP_pop_up_window_graphics_Line_1 +#define AKN_LAYOUT_WINDOW_Chinese_FEP_pop_up_window_graphics_Line_2 AknApacLayout::Chinese_FEP_pop_up_window_graphics_Line_2 +#define AKN_LAYOUT_WINDOW_Chinese_FEP_pop_up_window_graphics_Line_3 AknApacLayout::Chinese_FEP_pop_up_window_graphics_Line_3 +#define AKN_LAYOUT_WINDOW_Chinese_FEP_pop_up_window_graphics_Line_4 AknApacLayout::Chinese_FEP_pop_up_window_graphics_Line_4 +#define AKN_LAYOUT_WINDOW_Chinese_FEP_pop_up_window_graphics_Line_5 AknApacLayout::Chinese_FEP_pop_up_window_graphics_Line_5 +#define AKN_LAYOUT_TABLE_LIMITS_Chinese_FEP_pop_up_window_graphics_Limits AknApacLayout::Chinese_FEP_pop_up_window_graphics_Limits() +#define AKN_LAYOUT_TABLE_Chinese_FEP_pop_up_window_graphics AknApacLayout::Chinese_FEP_pop_up_window_graphics +#define AKN_LAYOUT_WINDOW_Chinese_FEP_highlight_elements_Line_1 AknApacLayout::Chinese_FEP_highlight_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Chinese_FEP_highlight_elements_Line_2 AknApacLayout::Chinese_FEP_highlight_elements_Line_2() +#define AKN_LAYOUT_WINDOW_Chinese_FEP_highlight_elements_Line_3 AknApacLayout::Chinese_FEP_highlight_elements_Line_3() +#define AKN_LAYOUT_TABLE_LIMITS_Chinese_FEP_highlight_elements_Limits AknApacLayout::Chinese_FEP_highlight_elements_Limits() +#define AKN_LAYOUT_TABLE_Chinese_FEP_highlight_elements AknApacLayout::Chinese_FEP_highlight_elements +#define AKN_LAYOUT_TEXT_Chinese_FEP_highlight_texts_Line_1 AknApacLayout::Chinese_FEP_highlight_texts_Line_1 +#define AKN_LAYOUT_WINDOW_Unselected_string_highlight_Line_1 AknApacLayout::Unselected_string_highlight_Line_1 +#define AKN_LAYOUT_WINDOW_list_single_fep_china_pinyin_pane AknApacLayout::list_single_fep_china_pinyin_pane +#define AKN_LAYOUT_TEXT_List_pane_texts__fep_china__Line_1 AknApacLayout::List_pane_texts__fep_china__Line_1 +#define AKN_LAYOUT_WINDOW_Pinyin_T9_candidate_pop_up_window_graphics_Line_1 AknApacLayout::Pinyin_T9_candidate_pop_up_window_graphics_Line_1 +#define AKN_LAYOUT_WINDOW_Pinyin_T9_candidate_pop_up_window_graphics_Line_2 AknApacLayout::Pinyin_T9_candidate_pop_up_window_graphics_Line_2 +#define AKN_LAYOUT_WINDOW_Pinyin_T9_candidate_pop_up_window_graphics_Line_3 AknApacLayout::Pinyin_T9_candidate_pop_up_window_graphics_Line_3 +#define AKN_LAYOUT_WINDOW_Pinyin_T9_candidate_pop_up_window_graphics_Line_4 AknApacLayout::Pinyin_T9_candidate_pop_up_window_graphics_Line_4 +#define AKN_LAYOUT_TABLE_LIMITS_Pinyin_T9_candidate_pop_up_window_graphics_Limits AknApacLayout::Pinyin_T9_candidate_pop_up_window_graphics_Limits() +#define AKN_LAYOUT_TABLE_Pinyin_T9_candidate_pop_up_window_graphics AknApacLayout::Pinyin_T9_candidate_pop_up_window_graphics +#define AKN_LAYOUT_WINDOW_Pinyin_T9_candidate_highlight_Line_1 AknApacLayout::Pinyin_T9_candidate_highlight_Line_1 +#define AKN_LAYOUT_WINDOW_popup_grid_apac_character_window AknApacLayout::popup_grid_apac_character_window +#define AKN_LAYOUT_WINDOW_popup_fep_japan_predictive_window AknApacLayout::popup_fep_japan_predictive_window +#define AKN_LAYOUT_WINDOW_popup_fep_japan_candidate_window AknApacLayout::popup_fep_japan_candidate_window +#define AKN_LAYOUT_WINDOW_candidate_pane AknApacLayout::candidate_pane +#define AKN_LAYOUT_WINDOW_list_single_popup_jap_candidate_pane AknApacLayout::list_single_popup_jap_candidate_pane +#define AKN_LAYOUT_TEXT_List_pane_text__single_japan_fep__Line_1 AknApacLayout::List_pane_text__single_japan_fep__Line_1 +#define AKN_LAYOUT_TEXT_Predictive_candidate_selection_list_texts_Line_1 AknApacLayout::Predictive_candidate_selection_list_texts_Line_1 +#define AKN_LAYOUT_MULTILINE_TEXT_Predictive_candidate_selection_list_texts_Line_1 AknApacLayout::Multiline_Predictive_candidate_selection_list_texts_Line_1 +#define AKN_LAYOUT_WINDOW_Predictive_candidate_selection_highlight_Line_1 AknApacLayout::Predictive_candidate_selection_highlight_Line_1() +#define AKN_LAYOUT_WINDOW_Predictive_candidate_selection_popup_window_graphics_Line_1 AknApacLayout::Predictive_candidate_selection_popup_window_graphics_Line_1 +#define AKN_LAYOUT_WINDOW_Predictive_candidate_selection_popup_window_graphics_Line_2 AknApacLayout::Predictive_candidate_selection_popup_window_graphics_Line_2 +#define AKN_LAYOUT_WINDOW_Predictive_candidate_selection_popup_window_graphics_Line_3 AknApacLayout::Predictive_candidate_selection_popup_window_graphics_Line_3 +#define AKN_LAYOUT_WINDOW_Predictive_candidate_selection_popup_window_graphics_Line_4 AknApacLayout::Predictive_candidate_selection_popup_window_graphics_Line_4 +#define AKN_LAYOUT_TABLE_LIMITS_Predictive_candidate_selection_popup_window_graphics_Limits AknApacLayout::Predictive_candidate_selection_popup_window_graphics_Limits() +#define AKN_LAYOUT_TABLE_Predictive_candidate_selection_popup_window_graphics AknApacLayout::Predictive_candidate_selection_popup_window_graphics +#define AKN_LAYOUT_TEXT_Candidate_selection_list_texts_Line_1 AknApacLayout::Candidate_selection_list_texts_Line_1() +#define AKN_LAYOUT_WINDOW_Candidate_selection_pop_up_window_graphics_Line_1 AknApacLayout::Candidate_selection_pop_up_window_graphics_Line_1 +#define AKN_LAYOUT_WINDOW_Candidate_selection_pop_up_window_graphics_Line_2 AknApacLayout::Candidate_selection_pop_up_window_graphics_Line_2 +#define AKN_LAYOUT_WINDOW_Candidate_selection_pop_up_window_graphics_Line_3 AknApacLayout::Candidate_selection_pop_up_window_graphics_Line_3 +#define AKN_LAYOUT_WINDOW_Candidate_selection_pop_up_window_graphics_Line_4 AknApacLayout::Candidate_selection_pop_up_window_graphics_Line_4 +#define AKN_LAYOUT_TABLE_LIMITS_Candidate_selection_pop_up_window_graphics_Limits AknApacLayout::Candidate_selection_pop_up_window_graphics_Limits() +#define AKN_LAYOUT_TABLE_Candidate_selection_pop_up_window_graphics AknApacLayout::Candidate_selection_pop_up_window_graphics +#define AKN_LAYOUT_WINDOW_Chinese_FEP_Zi_popup_window_elements_and_descendants_panes_Line_1 AknApacLayout::Chinese_FEP_Zi_popup_window_elements_and_descendants_panes_Line_1() +#define AKN_LAYOUT_WINDOW_fep_china_zi_entry_pane AknApacLayout::fep_china_zi_entry_pane +#define AKN_LAYOUT_WINDOW_fep_china_zi_candidate_pane AknApacLayout::fep_china_zi_candidate_pane +#define AKN_LAYOUT_WINDOW_Chinese_FEP_Zi_entry_pane_elements_Line_1 AknApacLayout::Chinese_FEP_Zi_entry_pane_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Chinese_FEP_Zi_entry_pane_elements_Line_2 AknApacLayout::Chinese_FEP_Zi_entry_pane_elements_Line_2() +#define AKN_LAYOUT_TABLE_LIMITS_Chinese_FEP_Zi_entry_pane_elements_Limits AknApacLayout::Chinese_FEP_Zi_entry_pane_elements_Limits() +#define AKN_LAYOUT_TABLE_Chinese_FEP_Zi_entry_pane_elements AknApacLayout::Chinese_FEP_Zi_entry_pane_elements +#define AKN_LAYOUT_TEXT_Chinese_FEP_Zi_entry_pane_texts_Line_1 AknApacLayout::Chinese_FEP_Zi_entry_pane_texts_Line_1 +#define AKN_LAYOUT_WINDOW_Chinese_FEP_Zi_candidate_pane_elements_Line_1 AknApacLayout::Chinese_FEP_Zi_candidate_pane_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Chinese_FEP_Zi_candidate_pane_elements_Line_2 AknApacLayout::Chinese_FEP_Zi_candidate_pane_elements_Line_2() +#define AKN_LAYOUT_WINDOW_Chinese_FEP_Zi_candidate_pane_elements_Line_3 AknApacLayout::Chinese_FEP_Zi_candidate_pane_elements_Line_3() +#define AKN_LAYOUT_WINDOW_Chinese_FEP_Zi_candidate_pane_elements_Line_4 AknApacLayout::Chinese_FEP_Zi_candidate_pane_elements_Line_4() +#define AKN_LAYOUT_WINDOW_fep_china_zi_highlight_pane AknApacLayout::fep_china_zi_highlight_pane() +#define AKN_LAYOUT_TABLE_LIMITS_Chinese_FEP_Zi_candidate_pane_elements_Limits AknApacLayout::Chinese_FEP_Zi_candidate_pane_elements_Limits() +#define AKN_LAYOUT_TABLE_Chinese_FEP_Zi_candidate_pane_elements AknApacLayout::Chinese_FEP_Zi_candidate_pane_elements +#define AKN_LAYOUT_TEXT_Chinese_FEP_Zi_candidate_pane_texts_Line_1 AknApacLayout::Chinese_FEP_Zi_candidate_pane_texts_Line_1() +#define AKN_LAYOUT_TEXT_Chinese_FEP_Zi_candidate_pane_texts_Line_2 AknApacLayout::Chinese_FEP_Zi_candidate_pane_texts_Line_2() +#define AKN_LAYOUT_TEXT_Chinese_FEP_Zi_candidate_pane_texts_Line_3 AknApacLayout::Chinese_FEP_Zi_candidate_pane_texts_Line_3() +#define AKN_LAYOUT_TABLE_LIMITS_Chinese_FEP_Zi_candidate_pane_texts_Limits AknApacLayout::Chinese_FEP_Zi_candidate_pane_texts_Limits() +#define AKN_LAYOUT_TABLE_Chinese_FEP_Zi_candidate_pane_texts AknApacLayout::Chinese_FEP_Zi_candidate_pane_texts +#define AKN_LAYOUT_WINDOW_Chinese_FEP_Zi_popup_window_graphics__part_1__Line_1 AknApacLayout::Chinese_FEP_Zi_popup_window_graphics__part_1__Line_1() +#define AKN_LAYOUT_WINDOW_Chinese_FEP_Zi_popup_window_graphics__part_1__Line_2 AknApacLayout::Chinese_FEP_Zi_popup_window_graphics__part_1__Line_2 +#define AKN_LAYOUT_WINDOW_Chinese_FEP_Zi_popup_window_graphics__part_1__Line_3 AknApacLayout::Chinese_FEP_Zi_popup_window_graphics__part_1__Line_3 +#define AKN_LAYOUT_WINDOW_Chinese_FEP_Zi_popup_window_graphics__part_1__Line_4 AknApacLayout::Chinese_FEP_Zi_popup_window_graphics__part_1__Line_4() +#define AKN_LAYOUT_WINDOW_Chinese_FEP_Zi_popup_window_graphics__part_1__Line_5 AknApacLayout::Chinese_FEP_Zi_popup_window_graphics__part_1__Line_5() +#define AKN_LAYOUT_TABLE_LIMITS_Chinese_FEP_Zi_popup_window_graphics__part_1__SUB_TABLE_0_Limits AknApacLayout::Chinese_FEP_Zi_popup_window_graphics__part_1__SUB_TABLE_0_Limits() +#define AKN_LAYOUT_TABLE_Chinese_FEP_Zi_popup_window_graphics__part_1__SUB_TABLE_0 AknApacLayout::Chinese_FEP_Zi_popup_window_graphics__part_1__SUB_TABLE_0 +#define AKN_LAYOUT_TABLE_LIMITS_Chinese_FEP_Zi_popup_window_graphics__part_1__SUB_TABLE_1_Limits AknApacLayout::Chinese_FEP_Zi_popup_window_graphics__part_1__SUB_TABLE_1_Limits() +#define AKN_LAYOUT_TABLE_Chinese_FEP_Zi_popup_window_graphics__part_1__SUB_TABLE_1 AknApacLayout::Chinese_FEP_Zi_popup_window_graphics__part_1__SUB_TABLE_1 +#define AKN_LAYOUT_WINDOW_Chinese_FEP_Zi_popup_window_graphics__part_2__Line_1 AknApacLayout::Chinese_FEP_Zi_popup_window_graphics__part_2__Line_1 +#define AKN_LAYOUT_WINDOW_Chinese_FEP_Zi_popup_window_graphics__part_2__Line_2 AknApacLayout::Chinese_FEP_Zi_popup_window_graphics__part_2__Line_2 +#define AKN_LAYOUT_WINDOW_Chinese_FEP_Zi_popup_window_graphics__part_2__Line_3 AknApacLayout::Chinese_FEP_Zi_popup_window_graphics__part_2__Line_3 +#define AKN_LAYOUT_WINDOW_Chinese_FEP_Zi_popup_window_graphics__part_2__Line_4 AknApacLayout::Chinese_FEP_Zi_popup_window_graphics__part_2__Line_4 +#define AKN_LAYOUT_WINDOW_Chinese_FEP_Zi_popup_window_graphics__part_2__Line_5 AknApacLayout::Chinese_FEP_Zi_popup_window_graphics__part_2__Line_5 +#define AKN_LAYOUT_TABLE_LIMITS_Chinese_FEP_Zi_popup_window_graphics__part_2__Limits AknApacLayout::Chinese_FEP_Zi_popup_window_graphics__part_2__Limits() +#define AKN_LAYOUT_TABLE_Chinese_FEP_Zi_popup_window_graphics__part_2_ AknApacLayout::Chinese_FEP_Zi_popup_window_graphics__part_2_ +#define AKN_LAYOUT_WINDOW_Input_highlight_elements_Line_1 AknApacLayout::Input_highlight_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Candidate_selection_Line_1 AknApacLayout::Candidate_selection_Line_1 +#define AKN_LAYOUT_WINDOW_Candidate_selection_Line_2 AknApacLayout::Candidate_selection_Line_2 +#define AKN_LAYOUT_TABLE_LIMITS_Candidate_selection_Limits AknApacLayout::Candidate_selection_Limits() +#define AKN_LAYOUT_TABLE_Candidate_selection AknApacLayout::Candidate_selection +#define AKN_LAYOUT_WINDOW_popup_fep_china_zi_window AknApacLayout::popup_fep_china_zi_window +#define AKN_LAYOUT_WINDOW_Find_pop_up_window_elements_Line_5 AknApacLayout::Find_pop_up_window_elements_Line_5() +#define AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_elements_and_descendants_panes_Line_1 AknApacLayout::Chinese_universal_FEP_pop_up_window_elements_and_descendants_panes_Line_1() +#define AKN_LAYOUT_WINDOW_fep_china_uni_entry_pane AknApacLayout::fep_china_uni_entry_pane() +#define AKN_LAYOUT_WINDOW_fep_china_uni_candidate_pane AknApacLayout::fep_china_uni_candidate_pane +#define AKN_LAYOUT_TABLE_LIMITS_Chinese_universal_FEP_pop_up_window_elements_and_descendants_panes_SUB_TABLE_0_Limits AknApacLayout::Chinese_universal_FEP_pop_up_window_elements_and_descendants_panes_SUB_TABLE_0_Limits() +#define AKN_LAYOUT_TABLE_Chinese_universal_FEP_pop_up_window_elements_and_descendants_panes_SUB_TABLE_0 AknApacLayout::Chinese_universal_FEP_pop_up_window_elements_and_descendants_panes_SUB_TABLE_0 +#define AKN_LAYOUT_WINDOW_Chinese_universal_FEP_entry_pane_elements_Line_1 AknApacLayout::Chinese_universal_FEP_entry_pane_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Chinese_universal_FEP_entry_pane_elements_Line_2 AknApacLayout::Chinese_universal_FEP_entry_pane_elements_Line_2() +#define AKN_LAYOUT_WINDOW_fep_entry_item_pane AknApacLayout::fep_entry_item_pane() +#define AKN_LAYOUT_TABLE_LIMITS_Chinese_universal_FEP_entry_pane_elements_Limits AknApacLayout::Chinese_universal_FEP_entry_pane_elements_Limits() +#define AKN_LAYOUT_TABLE_Chinese_universal_FEP_entry_pane_elements AknApacLayout::Chinese_universal_FEP_entry_pane_elements +#define AKN_LAYOUT_TEXT_Chinese_universal_FEP_entry_pane_texts_Line_1 AknApacLayout::Chinese_universal_FEP_entry_pane_texts_Line_1 +#define AKN_LAYOUT_WINDOW_Chinese_universal_FEPcandidate_pane_elements_Line_1 AknApacLayout::Chinese_universal_FEPcandidate_pane_elements_Line_1() +#define AKN_LAYOUT_WINDOW_Chinese_universal_FEPcandidate_pane_elements_Line_2 AknApacLayout::Chinese_universal_FEPcandidate_pane_elements_Line_2() +#define AKN_LAYOUT_WINDOW_Chinese_universal_FEPcandidate_pane_elements_Line_3 AknApacLayout::Chinese_universal_FEPcandidate_pane_elements_Line_3() +#define AKN_LAYOUT_WINDOW_Chinese_universal_FEPcandidate_pane_elements_Line_4 AknApacLayout::Chinese_universal_FEPcandidate_pane_elements_Line_4() +#define AKN_LAYOUT_WINDOW_fep_candidate_item_pane AknApacLayout::fep_candidate_item_pane() +#define AKN_LAYOUT_TABLE_LIMITS_Chinese_universal_FEPcandidate_pane_elements_Limits AknApacLayout::Chinese_universal_FEPcandidate_pane_elements_Limits() +#define AKN_LAYOUT_TABLE_Chinese_universal_FEPcandidate_pane_elements AknApacLayout::Chinese_universal_FEPcandidate_pane_elements +#define AKN_LAYOUT_TEXT_Chinese_universal_FEP_candidate_pane_texts_Line_1 AknApacLayout::Chinese_universal_FEP_candidate_pane_texts_Line_1() +#define AKN_LAYOUT_TEXT_Chinese_universal_FEP_candidate_pane_texts_Line_2 AknApacLayout::Chinese_universal_FEP_candidate_pane_texts_Line_2() +#define AKN_LAYOUT_TEXT_Chinese_universal_FEP_candidate_pane_texts_Line_3 AknApacLayout::Chinese_universal_FEP_candidate_pane_texts_Line_3() +#define AKN_LAYOUT_TABLE_LIMITS_Chinese_universal_FEP_candidate_pane_texts_Limits AknApacLayout::Chinese_universal_FEP_candidate_pane_texts_Limits() +#define AKN_LAYOUT_TABLE_Chinese_universal_FEP_candidate_pane_texts AknApacLayout::Chinese_universal_FEP_candidate_pane_texts +#define AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_1 AknApacLayout::Chinese_universal_FEP_pop_up_window_graphics_Line_1 +#define AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_2 AknApacLayout::Chinese_universal_FEP_pop_up_window_graphics_Line_2 +#define AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_3 AknApacLayout::Chinese_universal_FEP_pop_up_window_graphics_Line_3 +#define AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_4 AknApacLayout::Chinese_universal_FEP_pop_up_window_graphics_Line_4 +#define AKN_LAYOUT_TABLE_LIMITS_Chinese_universal_FEP_pop_up_window_graphics_Limits AknApacLayout::Chinese_universal_FEP_pop_up_window_graphics_Limits() +#define AKN_LAYOUT_TABLE_Chinese_universal_FEP_pop_up_window_graphics AknApacLayout::Chinese_universal_FEP_pop_up_window_graphics +#define AKN_LAYOUT_WINDOW_Input_highlight_Line_1 AknApacLayout::Input_highlight_Line_1 +#define AKN_LAYOUT_WINDOW_Candidate_selection_highlight_Line_1 AknApacLayout::Candidate_selection_highlight_Line_1 +#define AKN_LAYOUT_WINDOW_Candidate_selection_highlight_Line_2 AknApacLayout::Candidate_selection_highlight_Line_2 +#define AKN_LAYOUT_TABLE_LIMITS_Candidate_selection_highlight_Limits AknApacLayout::Candidate_selection_highlight_Limits() +#define AKN_LAYOUT_TABLE_Candidate_selection_highlight AknApacLayout::Candidate_selection_highlight +#define AKN_LAYOUT_WINDOW_popup_fep_china_uni_window AknApacLayout::popup_fep_china_uni_window +#endif diff -r 1494d39c2fee -r 8e41f998124a dependencies/bld.inf --- a/dependencies/bld.inf Sat Mar 27 03:52:59 2010 +0530 +++ b/dependencies/bld.inf Sat Mar 27 10:26:12 2010 +0100 @@ -25,7 +25,7 @@ RMmCustomAPI.h RMmCustomAPI.h eikon.hrh eikon.hrh -// featmgr.h featmgr.h +featmgr.h featmgr.h AknsConstants.h AknsConstants.h AknsConstants.hrh AknsConstants.hrh AknTransEffect.h MW_LAYER_PLATFORM_EXPORT_PATH(akntranseffect.h) @@ -63,7 +63,10 @@ EikSoftkeyImage.h EikSoftkeyImage.h AknStatuspaneUtils.h AknStatuspaneUtils.h - +EikSoftkeyImage.h MW_LAYER_PLATFORM_EXPORT_PATH(eiksoftkeyimage.h) +AknStatuspaneUtils.h MW_LAYER_PLATFORM_EXPORT_PATH(AknStatuspaneUtils.h) +eikcba.h eikcba.h +aknlayout.lag aknlayout.lag #include "extended_skin_api/bld.inf" @@ -103,8 +106,6 @@ #include "transition_effect_utility/bld.inf" #include "ssm/bld.inf" #include "swi/bld.inf" +#include "mifconv/group/bld.inf" #include "hs_content_control_ui/bld.inf" - - - diff -r 1494d39c2fee -r 8e41f998124a dependencies/eikcba.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/dependencies/eikcba.h Sat Mar 27 10:26:12 2010 +0100 @@ -0,0 +1,1561 @@ +/* +* Copyright (c) 2002-2008 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: EIKON control button array and cba button class definitions. +* +*/ + + +#ifndef __EIKCBA_H__ +#define __EIKCBA_H__ + +#include +#include +#include +#include +#include + +#include +#include +#include // TAknsItemID +#include // TBitFlags + +class CEikLabel; +class CEikCbaButton; +class CCoeBrushAndPenContext; +class MEikCommandObserver; +class TCoeColorUse; + +class CAknScrollBar; +class TEikScrollBarModel; + +class CEikEnhancedCbaButton; +class CEikCommandTable; + +class CAknsBasicBackgroundControlContext; +class CAknsLayeredBackgroundControlContext; +class CAknsMaskedLayerBackgroundControlContext; +class CEikCbaExtension; + +const TInt KMaxCbaLabelLength = 32; +const TInt KMaxButtonsInCommandTable = 4; + +/** + * Defines a Control Button Array control, used in Avkon to define the softkeys in the + * control pane. + * + * @lib eikcoctl.lib + * @since S60 0.9 + */ +NONSHARABLE_CLASS(CEikCba) : + public CEikControlGroup, + public MEikEnhancedButtonGroup, + public MEikScrollBarObserver, + public MCoeControlObserver + { +public: + /** + * Declares an object type for a class, in order to allow the object + * provider mechanism to locate and provide objects from the class. + */ + DECLARE_TYPE_ID(0x101F4105) + + /** + * Creates a new control button array. + * + * @internal + * @param aPrevious Previous Cba, used in MinimumSize(). + * @param aCommandObserver Command observer for softkey events. + * @param aParentWg The parent window group. + * @return Control button array object. + */ + static CEikCba* NewL( + const CEikCba* aPrevious, + MEikCommandObserver* aCommandObserver, + RWindowGroup* aParentWg); + + /** + * Creates a new control button array. + * + * @internal + * @param aResourceId A resource describing the Cba. + * @param aPrevious Previous Cba, used in MinimumSize(). + * @param aCommandObserver Command observer for softkey events. + * @param aParentWg The parent window group. + * @return Control button array object. + */ + static CEikCba* NewL( + TInt aResourceId, + const CEikCba* aPrevious, + MEikCommandObserver* aCommandObserver, + RWindowGroup* aParentWg); + + /** + * Creates a new control button array. + * + * @internal + * @param aPrevious Previous Cba, used in MinimumSize(). + * @param aCommandObserver Command observer for softkey events. + * @param aParentWg The parent window group. + * @return Control button array object. + */ + static CEikCba* NewLC( + const CEikCba* aPrevious, + MEikCommandObserver* aCommandObserver, + RWindowGroup* aParentWg); + + /** + * Creates a new control button array + * + * @since S60 5.2 + * @internal + * @param aPrevious Previous Cba, used in MinimumSize() + * @param aCommandObserver Command observer for softkey events + * @param aParentWg The parent window group + * @param aFlags CEikButtonGroupContainer::EIsEmbedded if CBA is embedded + * inside another control (popup/dialog/setting page) + * @return Control button array object + */ + static CEikCba* NewLC( + const CEikCba* aPrevious, + MEikCommandObserver* aCommandObserver, + RWindowGroup* aParentWg, TUint aFlags ); + + /** + * Creates a new control button array. + * + * @internal + * @param aResourceId A resource describing the Cba. + * @param aPrevious Previous Cba, used in MinimumSize(). + * @param aCommandObserver Command observer for softkey events. + * @param aParentWg The parent window group. + * @return Control button array object. + */ + static CEikCba* NewLC( + TInt aResourceId, + const CEikCba* aPrevious, + MEikCommandObserver* aCommandObserver, + RWindowGroup* aParentWg); + + /** + * Creates a new control button array + * + * @since S60 5.2 + * @internal + * @param aResourceId A resource describing the Cba + * @param aPrevious Previous Cba, used in MinimumSize() + * @param aCommandObserver Command observer for softkey events + * @param aParentWg The parent window group + * @param aFlags CEikButtonGroupContainer::EIsEmbedded if CBA is embedded + * inside another control (popup/dialog/setting page) + * @return Control button array object + */ + static CEikCba* NewLC( + TInt aResourceId, + const CEikCba* aPrevious, + MEikCommandObserver* aCommandObserver, + RWindowGroup* aParentWg, TUint aFlags ); + + /** + * Destructor. + */ + ~CEikCba(); + +public: // new methods + /** + * Gets the maximum number of buttons that can be supported by the device. + * + * @internal + * @return The number of command buttons supported. + */ + TInt MaxCommands() const; + + /** + * Updates the cba labels. + * + * @internal + * @param aScrollerOn If this is set, the short labels are used instead + * of the long ones. To be used if there is an (old style) + * scroller between the softkeys. + */ + void UpdateCbaLabels(TBool aScrollerOn); + + /** + * For checking whether the middle softkey is supported in the platform. + * + * @internal + * @return ETrue if the middle softkey is supported in the plaftorm. + */ + TInt MSKEnabledInPlatform() const; + + /** + * Sets the scroll bar frame observer. + * + * @internal + * @param aObserver The scroll bar frame observer. + */ + void SetSBFrameObserver(MEikScrollBarObserver* aObserver); + + /** + * Sets the scroll bar model. + * + * @internal + * @param aModel The scroll bar model. + */ + void SetScrollBarModelL(TEikScrollBarModel* aModel); + + /** + * Returns the scroll bar frame. + * + * @internal + * @return The scroll bar frame. + */ + const CEikCbaScrollBarFrame* ScrollBarFrame() const; + + /** + * Returns the vertical scroll bar as a control. + * + * @internal The vertical scroll bar as a control + */ + CAknScrollBar* VScrollBarAsControl(); + + /** + * Replaces empty scroll bar with actual arrow head scroll bar. + * + * @internal + * @since S60 3.0 + */ + void CreateArrowHeadScrollBarL(); + + /** + * For external set the MSK icon + * Returns ETrue if option is ok, EFalse is not. + * @param aId icon bitmap IID + * @param aBmpFile file path. + * @param aBmp Bitmap ID. + * @param aBmpM Bitmap mask ID. + * @param aEnable ETrue for set icon, EFalse for use default icon. + */ + IMPORT_C TBool UpdateMSKIconL( + const TAknsItemID& aId, + const TDesC& aBmpFile, + const TInt32 aBmp, + const TInt32 aBmpM, + TBool aEnable); + + /** + * Enables or disables item specific softkey. If enabled then SK1's + * visibility is determined by the screen content. If there's a list or + * grid with visible highlight (i.e. highlight is brought visible via + * hardware keys) on the display or SK1's associated command is + * @c EAknSoftkeyOptions then SK1 is visible, otherwise it's hidden. This + * method has no effect if the the application isn't single click enabled. + * Item specific softkey is enabled by default. + * + * @since S60 5.2 + * + * @param aEnable ETrue to enable item specific softkey, EFalse to disable. + */ + IMPORT_C void EnableItemSpecificSoftkey( TBool aEnable ); + +public: + /** + * From CEikControlGroup. + * Adds a wrapped control to the control group array at the given index position. + * Overridden to prevent setting container window. + * + * @param aGroupControl The control to add to the group. + * @param aIndex The index for the added control. + */ + void InsertControlL(TEikGroupControl& aGroupControl, TInt aIndex); + + /** + * From MEikButtonGroup. + * Sets a command button's text and command ID. Note that this implementation does + * not support bitmap and mask. + * + * @param aPosition The position within the button group of the button to change. + * @param aCommandId Command ID the button will send. + * @param aText The text for the button. + * @param aBitmap Not used. + * @param aMask Not used. + */ + void SetCommandL( + TInt aPosition, + TInt aCommandId, + const TDesC* aText, + const CFbsBitmap* aBitmap, + const CFbsBitmap* aMask); + + /** + * From MEikButtonGroup. + * Sets a command button's text label and command ID. The text and command ID are all + * read from resource. Note that this implementation does not support bitmap and mask. + * + * @internal + * + * @param aPosition The position within the button group of the button to change. + * @param aResourceId Resource ID specifying the text and command ID. + * + */ + void SetCommandL(TInt aPosition, TInt aResourceId); + + /** + * From MEikButtonGroup. + * Initialises the group of command buttons from a resource. + * Note that this implementation does not support bitmap and mask. + * + * @internal + * + * @param aResourceId ID of the resource structure specifying the command buttons. + */ + void SetCommandSetL(TInt aResourceId); + + /** + * From MEikButtonGroup. + * Not supported. + * + * @internal + * + * @param aPosition Not used. + * @param aCommandId Not used. + * @param aText Not used. + * @param aBitmap Not used. + * @param aMask Not used. + * @leave KErrNotSupported If called. + */ + void AddCommandL( + TInt aPosition, + TInt aCommandId, + const TDesC* aText, + const CFbsBitmap* aBitmap, + const CFbsBitmap* aMask); + + /** + * From MEikButtonGroup. + * Pushes a command button with text and a command ID onto a position's button stack. + * Note that this implementation does not support bitmap and mask. + * + * @internal + * + * @param aPosition The position in the button group at which to add the command button. + * @param aCommandId Command ID the button will send. + * @param aText Text for the button. + * @param aBitmap Not used. + * @param aMask Not used. + */ + void AddCommandToStackL( + TInt aPosition, + TInt aCommandId, + const TDesC* aText, + const CFbsBitmap* aBitmap, + const CFbsBitmap* aMask); + + /** + * From MEikButtonGroup. + * Pushes a command button onto a position's button stack. The text and command ID are all + * read from resource. Note that this implementation does not support bitmap and mask. + * + * @internal + * + * @param aPosition The position in the button group at which to push the command button. + * @param aResourceId ID of a resource specifying the text and command ID. + */ + void AddCommandToStackL(TInt aPosition, TInt aResourceId); + + /** + * From MEikButtonGroup. + * As with SetCommandL() but for a set of buttons, also allows the previous command button + * to be retrieved by calling RemoveCommand(). Note that this implementation does not + * support bitmap and mask. + * + * @internal + * + * @param aResourceId Resource describing the set of command buttons. + */ + void AddCommandSetToStackL(TInt aResourceId); + + /** + * From MEikButtonGroup. + * Not supported. + * + * @internal + * + * @param aCommandId Not used. + */ + void SetDefaultCommand(TInt aCommandId); + + /** + * From MEikButtonGroup. + * Calculates minimum size required to display the buttons defined in the + * specified resource structure. + * + * @internal + * + * @param aResourceId The ID of the resource structure describing the button group. + * @return Minimum size required to display the button group defined in the specified + * resource structure. + */ + TSize CalcMinimumSizeL(TInt aResourceId); + + /** + * From MEikButtonGroup. + * Removes the command identified by aCommandId, in position aPosition in the + * group, from the command stack. Automatically retrieves the previous command + * details. Commands are added to the stack by calling AddCommandToStackL. + * + * @internal + * + * @param aPosition The position in the button group from which to remove the + * command button. + * @param aCommandId Command ID. + */ + void RemoveCommandFromStack(TInt aPosition, TInt aCommandId); + + /** + * From MEikButtonGroup. + * Returns the command position by command id. + * + * @internal + * + * @param aCommandId The button's command id. + * @return The command position in the button group. + */ + TInt CommandPos(TInt aCommandId) const; + + /** + * From MEikButtonGroup. + * Dims or undims a button without drawing it. + * + * @internal + * + * @param aCommandId Command ID of the button to change. + * @param aDimmed ETrue to dim the specified command. EFalse to undim the specified command. + */ + void DimCommand(TInt aCommandId, TBool aDimmed); + + /** + * From MEikButtonGroup. + * Determines whether the button with the specified command ID is dimmed. + * + * @internal + * + * @param aCommandId The command ID. + * @return ETrue if the specified command is dimmed. EFalse if the specified command is + * not dimmed. + */ + TBool IsCommandDimmed(TInt aCommandId) const; + + /** + * From MEikButtonGroup. + * Makes the button with the specified id either visible, or invisible. + * + * @internal + * + * @param aCommandId Specifies the button to alter. + + * @param aVisible ETrue to make the specified button visible. EFalse to make the specified + * button invisible. + */ + void MakeCommandVisible(TInt aCommandId, TBool aVisible); + + /** + * From MEikButtonGroup. + * Tests whether the button with the specified command ID is visible. + * + * @internal + * + * @param aCommandId Specifies the button. + * @return ETrue if the specified button is visible. EFalse if the specified button is + * not visible. + */ + TBool IsCommandVisible(TInt aCommandId) const; + + /** + * From MEikButtonGroup. + * Not supported. + * + * @internal + * + * @param aCommandId Not used. + */ + void AnimateCommand(TInt aCommandId); + + /** + * From MEikButtonGroup. + * Returns the button group as a control. + * + * @internal + * + * @return The button group as a control. + */ + CCoeControl* AsControl(); + + /** + * From MEikButtonGroup. + * Returns the button group as a control. + * + * @internal + * + * @return The button group as a control. + */ + const CCoeControl* AsControl() const; + + /** + * From MEikButtonGroup. + * Sets the boundary rectangle for externally-positioned button groups. + * For use by EExternal button groups only. + * + * @internal + * + * @param aBoundingRect Not used. + */ + void SetBoundingRect(const TRect& aBoundingRect); + + /** + * From MEikButtonGroup. + * Subtracts the area occupied by the button group from the specified bounding rectangle. + * This method should be used in preference to querying the container's area at all times. + * For use by EExternal button groups only. + * + * @internal + * + * @param aBoundingRect Rectangle to be modified. + */ + void ReduceRect(TRect& aBoundingRect) const; + + /** + * Returns a group control (a button) as a control. + * + * @internal + * + * @param aCommandId The button's command id. + * @return The group control as a control. + */ + CCoeControl* GroupControlById(TInt aCommandId); + + /** + * From MEikButtonGroup. + * Returns a group control (a button) as a control. + * + * @internal + * + * @param aCommandId The button's command id. + * @return The group control as a control. + */ + CCoeControl* GroupControlById(TInt aCommandId) const; + + /** + * From MEikButtonGroup. + * Returns the command id by position. + * + * @internal + * + * @param aCommandPos The command's position. + * @return The command id. + */ + TInt CommandId(TInt aCommandPos) const; + + /** + * From MEikButtonGroup. + * Gets the total number of buttons currently present in the group. + * + * @internal + * + * @return The number of buttons. + */ + TInt ButtonCount() const; + + /** + * Removes previous command. + * + * @internal + * + * @param aPosition The command's position. + */ + void RemovePreviousCommand(TInt aPosition); + + /** + * From MEikButtonGroup. + * Not supported, because it is not possible to convert a CBA button to a + * CEikCommandButton. Calling this in debug build causes a panic, otherwise + * NULL is just returned. + * + * @internal + * + * @param aCommandId Not used. + */ + CEikCommandButton* GroupControlAsButton(TInt aCommandId) const; + + /** + * From MEikButtonGroup. + * Gets the button group flags. + * + * @internal + * + * @return The button group flags. + */ + TUint ButtonGroupFlags() const; + + /** + * Sets the button group flags. + * + * @internal + * + * @param aFlags The button group flags. + */ + IMPORT_C void SetButtonGroupFlags(TInt aFlags); + + /** + * Sets the skin background for this control button array. The new background is used + * for all the subsequent drawing operations. This method does not itself cause a repaint. + * + * @internal + * + * @param aIID Skin item ID of the new background. This is one of the constants + * defined in AknsConstants.h, and the usual values are KAknsIIDQsnBgAreaControl, + * KAknsIIDQsnBgAreaControlPopup, and KAknsIIDQsnBgAreaControlIdle. + * @since S60 2.0 + */ + IMPORT_C void SetSkinBackgroundId(const TAknsItemID& aIID); + + /** + * Sets the middle softkey icon. + * + * @internal + * + * @since S60 3.1 + */ + void SetMSKIconL(); + + /** + * From MEikButtonGroup. + * Sets the middle softkey command observer. + * + * @internal + * + * @param aCommandObserver The middle softkey command observer. + * @since S60 3.1 + */ + void SetMSKCommandObserver(MEikCommandObserver* aCommandObserver); + + /** + * From MEikButtonGroup. + * Dims (but doesn't draw) the button with position aPosition. + * + * @internal + * + * @param aPosition The position for command to be dimmed. + * @param aDimmed ETrue for dimming. + */ + void DimCommandByPosition(TInt aPosition, TBool aDimmed); + + /** + * From MEikButtonGroup. + * Returns ETrue if the button with position aPosition is dimmed. + * + * @internal + * + * @param aPosition The position for command to be checked. + * @return The state of the button. + */ + TBool IsCommandDimmedByPosition(TInt aPosition) const; + + /** + * From MEikButtonGroup. + * Sets the the button with position aPosition to be visible if aVisible is ETrue. + * + * @internal + * + * @param aPosition The position for command to be made visible. + * @param aVisible EFalse for making button invisible. + */ + void MakeCommandVisibleByPosition(TInt aPosition, TBool aVisible); + + /** + * From MEikButtonGroup. + * Returns ETrue if the button with position aPosition is visible. + * + * @internal + * + * @param aPosition The position for command to be checked. + * @return The state of the button. + */ + TBool IsCommandVisibleByPosition(TInt aPosition) const; + + /** + * From MEikButtonGroup. + * Not supported. + * + * @internal + * + * @param aPosition Not used. + */ + void AnimateCommandByPosition(TInt aPosition); + + /** + * Returns a group control (a button) as a control. + * + * @internal + * + * @param aPosition The button's position. + * @return The group control as a control. + */ +// CCoeControl* GroupControlByPosition(TInt aPosition) const; + + /** + * Gets a CBA button rectangle. This can be used in touch layouts to + * get the whole rectangle of the CBA button, as the button areas + * are larger than the actual button control in touch layouts. + * + * @param aPosition Position of the button. + * @param aRelativeToScreen If @c ETrue, the returned rectangle + * coordinates are relative to the screen + * rectangle, otherwise they are relative + * to the CBA area. Note that this parameter is + * only taken into account in touch layouts, and + * in nHD landscape mode the returned rectangle + * is always relative to the screen regardless + * of this parameter. + * + * @return Rectangle of the specified button. + */ + TRect ButtonRectByPosition( TInt aPosition, + TBool aRelativeToScreen ); + + /** + * Enable or disable transparent rendering. + * + * @internal + * @since S60 v5.0 + * @param aEnable ETrue to enable transparency, + * EFalse to disable. + */ + void EnablePostingTransparency( TBool aEnable ); + + /** + * Returns TBitFlags. + * + * @internal + * @since S60 v5.2 + * @return TBitFlags. + */ + TBitFlags Flags(); + + /** + * Sets content observer. + * + * @internal + * @since S60 v5.2 + * @param aCallBack call back to notify of content changes. + */ + void SetContentObserver( TCallBack aCallBack ); + +public: + /** + * Formerly from MTopSetMember, now reserved. + */ + virtual void Reserved_MtsmPosition(); + + /** + * Formerly from MTopSetMember, now reserved. + */ + virtual void Reserved_MtsmObject(); + +public: // from CCoeControl + /** + * From CCoeControl. + * Handles key events. + * + * @param aKeyEvent The key event. + * @param aType The type of key event: EEventKey, EEventKeyUp or EEventKeyDown. + * @return Indicates whether or not the key event was used by this control. + */ + TKeyResponse OfferKeyEventL(const TKeyEvent& aKeyEvent,TEventCode aType); + + /** + * From CCoeControl. + * Sets the control's minimum required size. + * + * @return The minimum size required by the control. + */ + TSize MinimumSize(); + + /** + * From CCoeControl. + * Gets the list of logical colours used to draw the control. + * The list includes an explanation of how each colour is used. + * + * @param aColorUseList The colour list. + */ + void GetColorUseListL(CArrayFix& aColorUseList) const; + + /** + * From CCoeControl. + * Handles a change to the control's resources. + * + * @param aType A message UID value. + */ + void HandleResourceChange(TInt aType); + + /** + * From CCoeControl. + * Sets this control as visible or invisible. + * + * @param aVisible ETrue to make the control visible, EFalse to make it invisible. + */ + void MakeVisible(TBool aVisible); + + /** + * From CCoeControl. + * Handles pointer events. + * + * @param aPointerEvent The pointer event + */ + void HandlePointerEventL(const TPointerEvent& aPointerEvent); + + /** + * From CCoeControl. + * Sets the control's containing window by copying it from aContainer. + * + * @param aContainer The compound control that is the container for this control + */ + void SetContainerWindowL( const CCoeControl& aContainer ); + + void ActivateL(); + +public: // from MEikEnhancedButtonGroup + /** + * From MEikEnhancedButtonGroup. + * Used to offer list of commands for softkeys. + * + * @param aCommandList A list of command ids to be offered for softkeys. + */ + IMPORT_C void OfferCommandListL(const RArray& aCommandList); + + /** + * From MEikEnhancedButtonGroup. + * Used to offer list of commands for softkeys. + * + * @param aResourceId Id for CBA resource that defines enhanced cba buttons. + */ + IMPORT_C void OfferCommandListL(const TInt aResourceId); + + /** + * From MEikEnhancedButtonGroup. + * Used to check if a certain command have been approved to the current command set. + * + * @param aCommandId The id for command which existence should be checked. + * @return ETrue if command is in control group, otherwise EFalse. + */ + IMPORT_C TBool IsCommandInGroup(const TInt aCommandId) const; + + /** + * From MEikEnhancedButtonGroup. + * Replace existing command with a new command. + * + * @param aCommandId Id for command that should be replaced. + * @param aResourceId Resource id for new enhanced cba button. + */ + IMPORT_C void ReplaceCommand(const TInt aCommandId, const TInt aResourceId); + +public: // From MCoeControlObserver + void HandleControlEventL( CCoeControl* aControl, TCoeEvent aEventType ); + +private: + /** + * From CAknControl + */ + IMPORT_C void* ExtensionInterface( TUid aInterface ); + +protected: + /** + * From MEikScrollBarObserver + * Handles scroll events. This function is called by the CEikScrollBar object with which + * this scroll bar observer object is registered. Implementations should handle scroll + * events appropriately. + * + * @param aScrollBar Pointer to the originating scroll bar object. + * @param aEventType A scroll event. + */ + virtual void HandleScrollEventL(CEikScrollBar* aScrollBar, TEikScrollEvent aEventType); + + /** + * From CCoeControl + * Retrieves an object of the same type as that encapsulated in aId. + * This function is used to allow controls to ask their owners for access to other + * objects that they own. + * + * @param aId An encapsulated object type ID. + * @return Encapsulates the pointer to the object provided. Note that the encapsulated + * pointer may be NULL. + */ + TTypeUid::Ptr MopSupplyObject(TTypeUid aId); + + /** + * From CCoeControl. + * Draws the control. + * + * @param aRect Rectangle to draw on. + */ + void Draw(const TRect& aRect) const; + +public: + + /** + * Checks if the CBA contains no commands. + * Note that this returns always @c EFalse if the CBA belongs + * to a full screen query. + * + * @internal + * + * @return @c ETrue if the CBA buttons are empty, @c EFalse otherwise. + * + * @since 5.0 + */ + IMPORT_C TBool IsEmpty() const; + + /** + * Returns ETrue if softkey status change is allowed. + * + * @param aSofkeyPosition Softkey position. + * @param aDisabled ETrue if softkey is to be disabled. + * @return ETrue if softkey status change is allowed. + */ + TBool SoftkeyStatusChangeAllowed( + TInt aSofkeyPosition, TBool aDisabled ); + + /** + * Returns item specific softkey if it state should be updated. + * + * @return Item specific softkey. + */ + TEikGroupControl* ItemSpecificSoftkey() const; + + /** + * Updates item specific softkey. + * + * @param aVisibleCollection ETrue if state should be updated according + * to visible collection. + */ + void UpdateItemSpecificSoftkey( TBool aVisibleCollection = ETrue ); + + +private: // new methods + + CEikCba( + const CEikCba* aPrevious, + MEikCommandObserver* aCommandObserver, + RWindowGroup* aParentWg, + TUint aFlags = 0 ); + void BaseConstructL(); + void ConstructL(TInt aResourceId); + void ConstructFromResourceL(TResourceReader& aReader); + CCoeControl* ButtonById( TInt aCommandId ) const; + void CreateScrollBarFrameL(); + void InsertScrollBarL(); + TEikGroupControl VScrollBarAsGroupControl(); + void CheckSkinAndUpdateContext(); + + TInt AknLayoutFlags() const; + void SizeChangedInControlPane(); + void SizeChangedInStaconPane(); + void SizeChangedInRightPane(); + void UpdateFonts(); + + void DoSkinChange(); + void DoColorChange(); + void DoLayoutChange(); + + void SizeChangedInsideDialog(); + + /** + * Handles size change events in case of embedded softkeys. + */ + void SizeChangedInPopup(); + + /** + * Updates softkey labels in case of embedded softkeys. + * + * @param aDrawDeferred ETrue to cause a redraw event. + */ + void UpdateLabels( TBool aDrawDeferred ); + + /** + * Layouts given cba control to it's rect correctly. This function is + * used to layout every text and image inside of @c CEikCba. + * + * @param aControl CBA Control that is to be layouted + * @param aRect the rect where control should be layouted. + */ + void LayoutControl(CCoeControl* aControl, const TRect& aRect); + + void DoSetLayers( const TAknsItemID& aIID ); + + /** + * Broadcasts transparency information + * to CEikCbaButtons. + */ + void BroadcastPostingTransparency( TBool aEnable ); + + /** + * Sets the CBA fading according to button content. + */ + void SetFadeState(); + + /** + * A better version of AddCommandToStackL + * Pushes a command button with text and a command ID onto a position's button stack. + * SizeChanged() is not called, so it need to be done after that. + * Note that this implementation does not support bitmap and mask. + * + * @internal + * + * @param aPosition The position in the button group at which to add the command button. + * @param aCommandId Command ID the button will send. + * @param aText Text for the button. + */ + void AddCommandToStackWithoutSizeChangedL( + TInt aPosition, + TInt aCommandId, + const TDesC* aText); + + /** + * Removes previous command but do not call SizeChanged And SetMSKIconL. + * + * @internal + * + * @param aPosition The command's position. + */ + void RemovePreviousCommandWithoutSizeChanged(TInt aPosition); + + /** + * Reports state changed event if cba changed from empty to non-empty + * or vice versa. + */ + void ReportContentChangedEvent(); + + /** + * Draws embedded softkey. + * + * @internal + * + * @param aGroupControl TEikGroupControl used to get access to CBA button. + * @param aRect Softkey rectangle + * @param aGc Graphics context + * @param aMask Mask + */ + void DrawEmbeddedSoftkey( TEikGroupControl& aGroupControl, + const TRect& aRect, + CWindowGc& aGc, + CFbsBitmap* aMask ) const; + TBool UpdateIconL(); + + /** + * Checks if the middle softkey should be used. + * + * @internal + * + * @return @c ETrue if MSK is to be used, @c EFalse otherwise. + */ + TBool MskAllowed() const; + + /** + * Updates item specific softkey. + * + * @param aControl Item specifc softkey control. + * @param aEnable ETrue if control should be enabled, EFalse if disabled. + */ + void UpdateItemSpecificSoftkey( CCoeControl& aControl, TBool aEnable ); + +private: // from CCoeControl + void SizeChanged(); + +private: // data + TUint iCbaFlags; + + /** Used to maintain the original settings if a client needs to temporarily change its cba. */ + const CEikCba* iLink; + + CCoeBrushAndPenContext* iBrushAndPenContext; + MEikCommandObserver* iCommandObserver; + CEikCbaScrollBarFrame* iSBFrame; + RWindowGroup* iParentWg; + + /** New member variable that stores commands in correct order. */ + CEikCommandTable* iCommandTable; + + /** For MSK. */ + TBool iMSKset; + + /** For MSK, caches CenRep value. */ + TBool iMSKEnabledInPlatform; + + /** Additional observer for MSK. This is called first and default observer after that. */ + MEikCommandObserver* iMSKCommandObserver; + + // From extension. + const CFont* iLabelFont; + const CFont* iStaconLabelFont; + const CFont* iRightPaneLabelFont; + TBool iPopupVisible; + TBitFlags iFlags; + + /** Old background context. */ + CAknsBasicBackgroundControlContext* iBgContext; + + /** Old stacon background context. */ + CAknsLayeredBackgroundControlContext* iStaconBgContext; + + /** Masked layer backgrounds. */ + CAknsMaskedLayerBackgroundControlContext* iMLBgContext; + CAknsMaskedLayerBackgroundControlContext* iStaconBgContextTop; + CAknsMaskedLayerBackgroundControlContext* iStaconBgContextBottom; + + TAknsItemID iBgIID; + + /** + * Skin background ID for the status pane controlled region + * of the CBA area in bottom softkey landscape mode. + */ + TAknsItemID iClockIndicBgIID; + TBool iIsClockIndicBgIIDSet; + + CEikCbaExtension* iExtension; + }; + +/** + * EIKON CBA button class definition. + * + * @internal + * @lib eikcoctl.lib + * @since S60 0.9 + */ +class CEikCbaButton : public CAknControl + { +public: + /** + * Holds information about command id and dimming status for a button. + */ + struct SButtonOptions + { + TInt iCommandId; + TBool iDimmed; + }; +public: + /** + * Destructor. + */ + ~CEikCbaButton(); + + /** + * Constructs a new CBA button instance. + * + * @param aAlignment Alignment for label. + */ + void ConstructL(TGulAlignmentValue aAlignment); +public: + /** + * Updates the label text with the given label. + * + * @param aText The new label text. + */ + void AddCommandL(const TDesC& aText); + + /** + * Pushes a command into button stack. + * + * @param aCommandId The command to be pushed. + * @param aText Text for the button. + */ + void PushCommandL(TInt aCommandId, const TDesC& aText); + + /** + * Pops a command from the button stack. + * + * @return The button's command id. KErrNotFound if the button stack is empty. + */ + TInt PopCommand(); + + /** + * Removes a command from the button stack. + * + * @param aCommandId The command to be removed. + */ + void RemoveCommand(TInt aCommandId); + + /** + * Removes the previous command from the button stack. + */ + void RemovePreviousCommand(); + + /** + * Switches the button's text to short or long depending on the parameter given. + * + * @param aShortText ETrue for short text, EFalse for the long text. + */ + void SwitchToShortTextL(TBool aShortText); + + /** + * Sets the labels font. + * + * @param aLabelFont The font to be used. + */ + void SetLabelFont(const CFont* aLabelFont); + + /** + * Truncates the label. This is done by CEikLabel. + */ + void TruncateLabelText(); + + /** + * Checks if text is empty in this button. + */ + TBool IsEmptyText() const; + +public: + /** + * From CCoeControl. + * Sets the control's containing window by copying it from aContainer. + * + * @param aContainer The compound control that is the container for this control. + */ + void SetContainerWindowL(const CCoeControl& aContainer); + + /** + * Constructs the control from a resource file. + * + * @param aReader The resource reader. + * @param anAlignment Alignment for label. + */ + void ConstructFromResourceL(TResourceReader& aReader, TGulAlignmentValue anAlignment); + + /** + * From CCoeControl. + * Sets the control's minimum required size. + * + * @return The minimum size required by the control. + */ + TSize MinimumSize(); + + /** + * From CCoeControl. + * Sets the control to be dimmed. + * + * @param aDimmed ETrue to dim the control, EFalse to set the control as not dimmed. + */ + void SetDimmed(TBool aDimmed); + + /** + * From CCoeControl. + * Handles pointer events. + * + * @param aPointerEvent The pointer event. + */ + IMPORT_C void HandlePointerEventL(const TPointerEvent& aPointerEvent); + +public: + /** + * Sets the button's image. + * + * @param aImage The image to be set. + */ + void SetImage(CEikImage &aImage); + + /** + * Replaces the buttons image with label. + */ + void ReplaceImageByLabel(); + + /** + * Returns whether the button has image set. + * + * @return ETrue if the button has image set, EFalse otherwise. + */ + inline TBool IsImageOn() const {return iDoImage;}; + + /** + * Constructs empty button with id EAknSoftkeyEmpty + */ + void ConstructEmptyButtonL(); + +protected: + /** + * Returns the button's index by command id. + * + * @param aCommandId The button's command id. + * @return The button's index. + */ + TInt IndexFromCommandId(TInt aCommandId); + + /** + * Updates the label text with the given label. + * + * @param aText The new label text. + */ + void UpdateLabelText(TPtrC aLabelText); + +private: + /** + * From CCoeControl. + * Gets the number of controls contained in a compound control. + * + * @return The number of component controls contained by this control. + */ + TInt CountComponentControls() const; + + /** + * From CCoeControl. + * Gets an indexed component of a compound control. + * + * @param The index of the control. + * @return The component control with an index of aIndex. + */ + CCoeControl* ComponentControl(TInt aIndex) const; + + /** + * From CCoeControl. + * Responds to changes to the size and position of the contents of this control. + */ + void SizeChanged(); + + /** + * From CAknControl. + */ + IMPORT_C void* ExtensionInterface( TUid aInterface ); + +public: // new functions + /** + * Returns the state of @c CEikCbaButton. + * + * @return Boolean value for CEikCbaButtons state. ETrue if button is + * pressed down. Otherwise returns EFalse. + */ + TBool PressedDown() const; + + /** + * Changes the state of @c CEikCbaButton. Button's state is stored in a + * member variable. + * + * @param aPressedDown The state that button has. @c ETrue if button's + * state is pressed down. @c EFalse for normal, + * not pressed state. + */ + void SetPressedDown( const TBool aPressedDown ); + + /** + * Enables bitmap mode and hides the label. The text is drawn by CEikCba + * in bitmap mode. + * @internal + * @since S60 v5.0 + * @param aEnableBitmap ETrue to enable bitmap mode. EFalse to work in the + * standard way. + */ + void SetTextBitmapMode( TBool aEnableBitmap ); + + /** + * Draws the button text and mask to give graphics contexts. Background + * is not drawn. + * @internal + * @since S60 v5.0 + * @param aContext Graphics context to render the text itself into. + * @param aMaskContext Graphics context to render the text mask into. + * @param aOffset Offset between the coordinate system of the target + * bitmap context relative to screen coordinates. + */ + void DrawToContext( + CBitmapContext& aContext, + CBitmapContext& aMaskContext, + const TPoint& aOffset ) const; + + /** + * Returns the textual value of the button + * @internal + * @since S60 v5.0 + */ + inline TPtrC FullLabelText() { return iFullLabelText;}; + +private: + void PrepareImageL(); + +protected: + TBuf iFullLabelText; + TPtrC iLongLabelText; + TPtrC iShortLabelText; + CEikLabel* iLabel; + CDesCArray* iText; + CArrayFix* iButtonOptions; + CEikImage* iImage; + /** Original mask for softkey image. */ + const CFbsBitmap* iMask; + /** Feedback effects transparency mask for softkey image. */ + CFbsBitmap* iSfeMask; + TBool iDoImage; + /** ETrue if should use text bitmap mode. */ + TBool iUseTextBitmap; + /** Buttons state. */ + TBool iPressedDown; + }; + +/** + * Specialization of CEikCbaButton for the new Enhanced CBA button. + * + * @lib eikcoctl.lib + * @since S60 3.0 + */ +class CEikEnhancedCbaButton : public CEikCbaButton + { +public: + /** + * Default constructor. + */ + CEikEnhancedCbaButton(); + + /** + * Destructor. + */ + ~CEikEnhancedCbaButton(); + + /** + * Returns the command type for current button. + * + * @return The command type. + */ + TInt CommandType() const; + + /** + * Sets command type for current button. + * + * @param aCommandType Command type to be set. + */ + void SetCommandType(const TInt aCommandType); + + /** + * Returns the command id for current button. + * + * @return The command id. + */ + TInt CommandId() const; + + /** + * Constructs a button based on resource definition. + * + * @param aReader Resource reader for reading information from resource file. + */ + void ConstructFromResourceL(TResourceReader& aReader); + + /** + * Constructs empty button with id EAknSoftkeyEmpty. + */ + void ConstructEmptyButtonL(); + + /** + * Used to get the label text for the button. + * + * @return Pointer to the label text. + */ + TPtrC* LabelText(); + +private: // data + TInt iCommandType; + TInt iCommandId; + }; + +/** + * Holds (enhanced) CBA commands and handles command ordering due to placement rules. + * + * @lib eikcoctl.lib + * @since S60 3.0 + * + * @internal + */ +NONSHARABLE_CLASS(CEikCommandTable) : public CBase + { +public: + /** + * Constructs a new command table instance. + * + * @return The new command table. + */ + static CEikCommandTable* NewL(); + + /** + * Constructs a new command table instance. + * + * @return The new command table. + */ + static CEikCommandTable* NewLC(); + + /** + * Destructor. + */ + ~CEikCommandTable(); + + /** + * Used to add a command to CommandTable. + * + * @param aButton The button to be added. + * @return KErrNone if addition was successful. + */ + TInt AddCommandL(CEikEnhancedCbaButton* aButton); + + /** + * Used to check if command table has a button with a certain id. + * + * @param aCommandId The id to be checked. + * @return ETrue if command is placed in the command table. + */ + TBool IsCommandPlaced(const TInt aCommandId) const; + + /** + * Used to replace command with a new command. + * + * @param aCommandId Id for command that should be replaced. + * @param aResourceId Id for new ENHANCED_CBA_BUTTON resource to be placed in the + * CommandTable. + */ + void ReplaceCommandL(const TInt aCommandId, const TInt aResourceId); + + /** + * Used to get CEikEnhancedCbaButton for current control button (1-4). + * + * @param aCommandIndex Index for requested button, use enum TCommandTableCbaPositions. + * @return CEikCbaButton for current position, NULL if no button placed in that position. + */ + CEikEnhancedCbaButton* Command(const TInt aCommandIndex); + + /** + * Reset CommandTable. + */ + void Reset(); + +private: // member functions + /** + * Constructor. + */ + CEikCommandTable(); + + /** + * Constructs command table with device button priorities. + */ + void ConstructL(); + +private: // data + /** Displayed commands. */ + TFixedArray iCommandButtons; + + /** Priority order for each button. */ + RArray< RArray > iPriorities; + }; + +#endif // __EIKCBA_H__ diff -r 1494d39c2fee -r 8e41f998124a dependencies/mifconv/group/bld.inf --- a/dependencies/mifconv/group/bld.inf Sat Mar 27 03:52:59 2010 +0530 +++ b/dependencies/mifconv/group/bld.inf Sat Mar 27 10:26:12 2010 +0100 @@ -16,21 +16,7 @@ */ -PRJ_PLATFORMS -#ifdef SBSV2 - TOOLS2 -#else - TOOLS -#endif - - -PRJ_MMPFILES -#if defined(TOOLS) || defined(TOOLS2) - mifconv.mmp -#endif - PRJ_EXPORTS -#ifdef SBSV2 ../makefile_templates/mifconv_global_options.make +/tools/makefile_templates/s60/mifconv_global_options.make ../makefile_templates/mifconv_option_reader_recursive.make +/tools/makefile_templates/s60/mifconv_option_reader_recursive.make ../makefile_templates/mifconv_option_reader.make +/tools/makefile_templates/s60/mifconv_option_reader.make @@ -42,5 +28,5 @@ ../makefile_templates/mifconv.meta +/tools/makefile_templates/s60/mifconv.meta ../makefile_templates/mifconv.mk +/tools/makefile_templates/s60/mifconv.mk ../makefile_templates/mifconv.xml +/tools/makefile_templates/s60/mifconv.xml -#endif + mifconv-s3.exe +/tools/mifconv-s3.exe diff -r 1494d39c2fee -r 8e41f998124a dependencies/mifconv/group/mifconv-s3.exe Binary file dependencies/mifconv/group/mifconv-s3.exe has changed diff -r 1494d39c2fee -r 8e41f998124a dependencies/mifconv/group/mifconv.mmp --- a/dependencies/mifconv/group/mifconv.mmp Sat Mar 27 03:52:59 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,38 +0,0 @@ -/* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: project definition file -* -*/ - -#include - -TARGET mifconv.exe -TARGETTYPE exe - -USERINCLUDE ../inc -MW_LAYER_SYSTEMINCLUDE -SOURCEPATH ../src - -SOURCE mifconv.cpp -SOURCE mifconv_argument.cpp -SOURCE mifconv_argumentmanager.cpp -SOURCE mifconv_bitmapconverter.cpp -SOURCE mifconv_bitmapheaderconverter.cpp -SOURCE mifconv_convertermanager.cpp -SOURCE mifconv_exception.cpp -SOURCE mifconv_iconbinaryconverter.cpp -SOURCE mifconv_mifconverter.cpp -SOURCE mifconv_sourcefile.cpp -SOURCE mifconv_util.cpp - diff -r 1494d39c2fee -r 8e41f998124a dependencies/mifconv/makefile_templates/mifconv_global_options.make --- a/dependencies/mifconv/makefile_templates/mifconv_global_options.make Sat Mar 27 03:52:59 2010 +0530 +++ b/dependencies/mifconv/makefile_templates/mifconv_global_options.make Sat Mar 27 10:26:12 2010 +0100 @@ -36,7 +36,7 @@ # Binary conversion tools: SVGTBINENCODE:=$(EPOCROOT)epoc32$/tools$/svgtbinencode -MIFCONV:=$(EPOCROOT)epoc32$/tools$/mifconv +MIFCONV:=$(EPOCROOT)epoc32$/tools$/mifconv-s3 # SVG and BMP icon bitmap searching directories, depends on a platform: VECTORSOURCEDIR:=$(EPOCROOT)epoc32$/s60$/icons diff -r 1494d39c2fee -r 8e41f998124a dependencies/mifconv/src/mifconv.cpp --- a/dependencies/mifconv/src/mifconv.cpp Sat Mar 27 03:52:59 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,78 +0,0 @@ -/* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Mifconv main. -* -*/ - - -#include "mifconv.h" -#include "mifconv_exception.h" -#include "mifconv_argumentmanager.h" -#include "mifconv_convertermanager.h" -#include "mifconv_util.h" - -int main( int argc, char *argv[] ) -{ - cout << endl << "Mifconv v" << MifConvVersion << " - " << MifConvDate << endl; - // Instantiate the argument manager and mif creator: - MifConvArgumentManager* argMgr = MifConvArgumentManager::Instance(); - MifConvConverterManager* converterMgr = MifConvConverterManager::Instance(); - - try { - // Read arguments to string vector: - MifConvStringList strList; - for( int i = 1; i < argc; ++i ) - { - strList.push_back(MifConvString(argv[i])); - } - - // Initialize arguments: - argMgr->Init(strList); - - // Initialize converters: - converterMgr->Init(); - - // Run converters for source files: - converterMgr->ProcessIcons(); - - // Cleanup temp files etc: - converterMgr->Cleanup(); - } - catch( MifConvException& e ) { - // In case of error, print exception to stderr, cleanup temp files and exit: - std::stringstream strForInt; - strForInt << e.Line(); - - MifConvUtil::DebugLog(e.File() + MifConvString(":") + strForInt.str() + MifConvString(":") + e.String()); - cerr << e.String() << endl; - converterMgr->Cleanup(true); - converterMgr->Reset(); - argMgr->Reset(); - exit(MIFCONV_ERROR); - } - catch(...) - { - // Unknown error: - MifConvUtil::DebugLog("MifConv: Unknown error"); - cerr << "MifConv: Unknown error" << endl; - converterMgr->Cleanup(true); - converterMgr->Reset(); - argMgr->Reset(); - exit(MIFCONV_ERROR); - } - - converterMgr->Reset(); - argMgr->Reset(); - return MIFCONV_NO_ERROR; -} diff -r 1494d39c2fee -r 8e41f998124a dependencies/mifconv/src/mifconv_argument.cpp --- a/dependencies/mifconv/src/mifconv_argument.cpp Sat Mar 27 03:52:59 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,20 +0,0 @@ -/* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Mifconv tool argument definitions. -* -*/ - - -#include "mifconv.h" -#include "mifconv_argument.h" diff -r 1494d39c2fee -r 8e41f998124a dependencies/mifconv/src/mifconv_argumentmanager.cpp --- a/dependencies/mifconv/src/mifconv_argumentmanager.cpp Sat Mar 27 03:52:59 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,991 +0,0 @@ -/* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Mifconv argument manager class. -* -*/ - - -#include "mifconv.h" -#include "mifconv_argumentmanager.h" -#include "mifconv_exception.h" -#include "mifconv_util.h" - -// Static singleton initialization -MifConvArgumentManager* MifConvArgumentManager::iInstance = 0; - -/** - * Returns pointer to the singleton object - */ -MifConvArgumentManager* MifConvArgumentManager::Instance() -{ - if( iInstance == 0 ) - { - iInstance = new MifConvArgumentManager(); - } - return iInstance; -} - -/** - * Free the allocated memory - */ -void MifConvArgumentManager::Reset() -{ - delete iInstance; - iInstance = 0; -} - -/** - * - */ -inline void MifConvArgumentManager::THROW_USAGE_EXCEPTION() const -{ - MifConvString usageStr; - SetUsageString(usageStr); - throw MifConvException(usageStr, MifConvString(__FILE__), __LINE__); -} - -inline void MifConvArgumentManager::THROW_ERROR( const MifConvString& errorMsg, const MifConvString& file, int line ) const -{ - throw MifConvException( MifConvString("ERROR: " + errorMsg + "\nType mifconv -? for help\n"), file, line); -} - -/** - * - */ -MifConvArgumentManager::MifConvArgumentManager() -: -iEpocRoot(DEFAULT_EPOCROOT) -{ - GetMifEnv(); -} - -/** - * - */ -MifConvArgumentManager::~MifConvArgumentManager() -{} - -/** - * This function checks if the given argument is boolean type of argument. - * Boolean type arguments are listed in a MifConvBooleanArguments table - * and this function checks if the given string matches any of those. Returns the length - * of the argument name if found, zero otherwise. - */ -size_t MifConvArgumentManager::IsBooleanArgument( const MifConvString& argName ) const -{ - if( IsArgument(argName) ) - { - try { - int tblSize = sizeof(MifConvBooleanArguments) / sizeof(MifConvString); - for( int i = 0; i < tblSize; ++i ) - { - size_t tmpLen = MifConvBooleanArguments[i].length(); - if( argName.length() > tmpLen ) - { - if( MifConvUtil::CompareIgnoreCase(MifConvString(argName.begin()+1, argName.begin() + 1 + tmpLen), MifConvBooleanArguments[i]) == 0 ) - { - return tmpLen; - } - } - } - } - catch(...) - { - THROW_USAGE_EXCEPTION(); - } - } - return 0; -} - -/** - * This function checks if the given argument is a help argument. - * Help arguments are listed in a MifConvHelpArguments table - * and this function checks if the given string matches any of those. Returns the length - * of the argument name if found, zero otherwise. - */ -size_t MifConvArgumentManager::IsHelpArgument( const MifConvString& argName ) const -{ - if( IsArgument(argName) ) - { - try { - int tblSize = sizeof(MifConvHelpArguments) / sizeof(MifConvString); - for( int i = 0; i < tblSize; ++i ) - { - size_t tmpLen = MifConvHelpArguments[i].length(); - - // Following check separates -H from -Hheadername.mbg parameter: - if( argName.length() == tmpLen+1 ) - { - if( MifConvUtil::CompareIgnoreCase(MifConvString(argName.begin()+1, argName.begin() + 1 + tmpLen), MifConvHelpArguments[i]) == 0 ) - { - return tmpLen; - } - } - } - } - catch(...) - { - THROW_USAGE_EXCEPTION(); - } - } - return 0; -} - -/** - * This function checks if the given argument is string type of argument. - * String type arguments are listed in a MifConvStringArguments table - * and this function checks if the given string matches any of those. Returns the length - * of the argument name if found, zero otherwise. - */ -size_t MifConvArgumentManager::IsStringArgument( const MifConvString& argName ) const -{ - if( IsArgument(argName) ) - { - try { - int tblSize = sizeof(MifConvStringArguments) / sizeof(MifConvString); - for( int i = 0; i < tblSize; ++i ) - { - size_t tmpLen = MifConvStringArguments[i].length(); - if( argName.length() > tmpLen ) - { - if( MifConvUtil::CompareIgnoreCase(MifConvString(argName.begin()+1, argName.begin()+1+tmpLen), MifConvStringArguments[i]) == 0 ) - { - return tmpLen; - } - } - } - } - catch(...) - { - THROW_USAGE_EXCEPTION(); - } - } - return 0; -} - -/** - * This function checks if the given argument is string list type of argument. - * String list type arguments are listed in a MifConvStringListArguments table - * and this function checks if the given string matches any of those. Returns the length - * of the argument name if found, zero otherwise. - */ -size_t MifConvArgumentManager::IsStringListArgument( const MifConvString& argName ) const -{ - if( IsArgument(argName) ) - { - try { - int tblSize = sizeof(MifConvStringListArguments) / sizeof(MifConvString); - for( int i = 0; i < tblSize; ++i ) - { - size_t tmpLen = MifConvStringListArguments[i].length(); - if( argName.length() > tmpLen ) - { - if( MifConvUtil::CompareIgnoreCase(MifConvString(argName.begin()+1, argName.begin()+1+tmpLen), MifConvStringListArguments[i]) == 0 ) - { - return tmpLen; - } - } - } - } - catch(...) - { - THROW_USAGE_EXCEPTION(); - } - } - return 0; -} - -/** - * - */ -bool MifConvArgumentManager::IsDepthArgument( const MifConvString& argName ) const -{ - if( IsArgument(argName) ) - { - try { - int tblSize = sizeof(MifConvDepthArguments) / sizeof(MifConvString); - for( int i = 0; i < tblSize; ++i ) - { - size_t tmpLen = MifConvDepthArguments[i].length(); - if( argName.length() > tmpLen ) - { - MifConvString trimmedArgument(argName.begin()+1, argName.begin() + 1 + tmpLen); - if( MifConvUtil::CompareIgnoreCase(trimmedArgument, MifConvDepthArguments[i]) == 0 ) - { - return true; - } - } - } - } - catch(...) - { - THROW_USAGE_EXCEPTION(); - } - } - return false; -} - -/** - * - */ -bool MifConvArgumentManager::IsAnimatedFlag( const MifConvString& argName ) const -{ - return IsArgument( argName ) && argName.length() > MifConvAnimatedIconArg.length() && - MifConvUtil::CompareIgnoreCase(MifConvString(argName.begin()+1, argName.end() ), MifConvAnimatedIconArg ) == 0; -} - -/** - * - */ -void MifConvArgumentManager::SetTargetFile( const MifConvString& arg ) -{ - iTargetFile = arg; -} - -/** - * - */ -const MifConvString& MifConvArgumentManager::TargetFile() const -{ - return iTargetFile; -} - -/** - * - */ -IconDisplayMode MifConvArgumentManager::ConvertToDisplayMode(IconDepth depth) const -{ - MifConvIconDisplayModeMap::const_iterator i = iDisplayModeMap.find(depth); - if( i != iDisplayModeMap.end() ) - return i->second; - - return DisplayMode_None; -} - -/** - * - */ -IconDisplayMode MifConvArgumentManager::ConvertToMaskDisplayMode(IconMaskDepth depth) const -{ - MifConvMaskIconDisplayModeMap::const_iterator i = iMaskDisplayModeMap.find(depth); - if( i != iMaskDisplayModeMap.end() ) - return i->second; - - return DisplayMode_None; -} - -/** - * - */ -IconDepth MifConvArgumentManager::ConvertToDepth( const MifConvString& depthStr ) const -{ - MifConvIconDepthMap::const_iterator i = iDepthMap.find(depthStr); - if( i != iDepthMap.end() ) - return i->second; - - return IconDepth_Undefined; -} -/** - * - */ -IconMaskDepth MifConvArgumentManager::ConvertToMaskDepth( const MifConvString depthStr ) const -{ - MifConvIconMaskDepthMap::const_iterator i = iMaskDepthMap.find(depthStr); - if( i != iMaskDepthMap.end() ) - return i->second; - - return IconMaskDepth_Undefined; -} - -/** - * - */ -void MifConvArgumentManager::Init( const MifConvStringList& argList ) -{ - // Build maps for mapping depth, mask and displaymode constants: - PopulateDepthAndMaskMaps(); - // Allocate search paths where to search source files: - MifConvString epocRoot(EpocRoot()); - - // Global icons folder can contain only .svg files: - iSearchRules.push_back(MifConvSourceSearchRule(MifConvString(epocRoot + S60_ICONS_PATH), vector(1, SVG_FILE_EXTENSION))); - // Global bitmaps folder can contain only .bmp files: - iSearchRules.push_back(MifConvSourceSearchRule(MifConvString(epocRoot + S60_BITMAPS_PATH), vector(1, BMP_FILE_EXTENSION))); - // EPOCROOT, if given in environment variables: - if( epocRoot.length() > 0 ) - { - iSearchRules.push_back(MifConvSourceSearchRule(epocRoot+EPOC32_PATH, vector(1, MIFCONV_WILDCARD))); - } - - AddArguments(argList); - - // check if the parameter file is given: - const MifConvString& paramFilename = StringValue(MifConvParameterFileArg); - if( paramFilename.length() > 0 ) - { - // Add arguments from the parameter file: - MifConvStringList paramListFromFile; - ReadParameterFile( paramFilename, paramListFromFile ); - if( paramListFromFile.size() > 0 ) - { - AddArguments(paramListFromFile, true); - } - } - // Resolve file type extensions using given flags and investigating the existing files: - FinalizeArguments(); -} - -/** - * Read string argument value: - */ -MifConvString MifConvArgumentManager::ReadStringArgument(const MifConvStringList& argList, MifConvStringList::const_iterator& i, unsigned int argNameLen) -{ - // Take the actual argument value, for example /TmyTempDir --> myTempDir - MifConvString argValue((*i).begin() + argNameLen, (*i).end()); - if( argValue.length() > 0 ) - { - // String arguments can have spaces when they are enclosed with " marks (For example directory names). - if( argValue[0] == '\"' ) - { - MifConvString quotedArgValue(argValue); - // Check if the last char is also ": - if( quotedArgValue[ quotedArgValue.length()-1 ] == '\"' ) - { - return quotedArgValue; - } - - // See if the next string ends with \" mark, for example "My Folder" is presented with following argument list: - // argList[0] = "My - // argList[1] = Folder" - while(++i != argList.end()) - { - MifConvString nextString((*i).begin(), (*i).end()); - quotedArgValue += " " + nextString; - if( nextString[ nextString.length()-1 ] == '\"' ) - { - return "\"" + quotedArgValue + "\""; - } - } - } - } - return argValue; -} - -/** - * Read string argument value: - */ -void MifConvArgumentManager::ReadStringListArgument(MifConvStringList::const_iterator& i, unsigned int argNameLen, MifConvStringList& StringValueList) -{ - // Take the actual argument value, for example /imyInputDir;myTempDir --> myTempDir - MifConvString argValue((*i).begin() + argNameLen, (*i).end()); - MifConvUtil::SplitString( argValue, STRING_LIST_ARGUMENT_SEPARATOR, StringValueList ); -} - -/** - * - */ -void MifConvArgumentManager::AddArguments( const MifConvStringList& argList, bool paramsFromFile ) -{ - MifConvStringList::const_iterator i = argList.begin(); - - if( i == argList.end() ) - { - THROW_ERROR("No arguments", MifConvString(__FILE__), __LINE__); - } - - // Check if help is needed: - while( i != argList.end() ) - { - if( IsHelpArgument(*i) ) - { - THROW_USAGE_EXCEPTION(); - } - ++i; - } - - i = argList.begin(); - - while( i != argList.end() ) - { - unsigned int argLen = 0; - if( i == argList.begin() && paramsFromFile == false ) - { - // First command line argument must be the target file. - // If the given list (argList) is read from the file, then - // the first one is not target file. - if( !IsArgument(*i) ) - { - MifConvString targetFile(ReadStringArgument( argList, i, 0 )); - // Make sure that the file extension is .mif: - targetFile = MifConvUtil::FilenameWithoutExtension(targetFile); - targetFile += MifConvString(FILE_EXTENSION_SEPARATOR) + MifConvString(MIF_FILE_EXTENSION); - SetTargetFile(targetFile); - } - else - { - THROW_ERROR( "Target file must be given as first argument.", MifConvString(__FILE__), __LINE__ ); - } - ++i; - if( i == argList.end() ) - { - THROW_ERROR("Missing arguments", MifConvString(__FILE__), __LINE__); - } - } - else if( IsBooleanArgument(*i) ) - { - // Insert boolean type argument to the boolean arguments list: - MifConvString argName((*i).begin()+1, (*i).end()); - MifConvUtil::ToLower(argName); // Lower the cases to make comparison easier later - std::pair res = iBooleanArguments.insert(std::make_pair( - argName, MifConvBooleanArgument( argName, true ))); - if( res.second == false ) - { - // parameter already exists in the map, update the value: - res.first->second = MifConvBooleanArgument( argName, true ); - } - ++i; - } - else if( (argLen = (unsigned int) IsStringArgument(*i) ) > 0 ) - { - MifConvString argName((*i).begin()+1, (*i).begin() + 1 + argLen); - MifConvUtil::ToLower(argName); // Lower the cases to make comparison easier later - MifConvString argValue(ReadStringArgument( argList, i, argLen+1 )); - if( argValue.length() == 0 ) - { - // Do not accept string arguments with zero length (E.g. "/H") - THROW_ERROR( "Missing argument value for " + *i, MifConvString(__FILE__), __LINE__ ); - } - // Insert string type argument to the string arguments list: - std::pair res = iStringArguments.insert(std::make_pair( - argName, MifConvStringArgument( argName, argValue ))); - if( res.second == false ) - { - // parameter already exists in the map, update the value: - res.first->second = MifConvStringArgument( argName, argValue ); - } - ++i; - } - else if( (argLen = (unsigned int) IsStringListArgument(*i)) > 0 ) - { - MifConvString argName((*i).begin()+1, (*i).begin() + 1 + argLen); - MifConvUtil::ToLower(argName); // Lower the cases to make comparison easier later - MifConvStringList argValue; - ReadStringListArgument( i, argLen+1, argValue ); - - if( argValue.size() == 0 ) - { - // Do not accept string arguments with zero length (E.g. "/H") - THROW_ERROR( "Missing argument value for " + *i, MifConvString(__FILE__), __LINE__ ); - } - // Insert string list type argument to the string arguments list: - std::pair res = iStringListArguments.insert(std::make_pair( - argName, MifConvStringListArgument( argName, argValue ))); - if( res.second == false ) - { - // parameter already exists in the map, update the value: - res.first->second = MifConvStringListArgument( argName, argValue ); - } - ++i; - } - else if( IsDepthArgument(*i) ) - { - // Let's build source file argument... - // ... first is depth and mask: - MifConvString depthAndMask(*i); - MifConvUtil::ToLower(depthAndMask); // Lower the cases to make comparison easier later - ++i; - // Check that there is still an argument: - if( i == argList.end() ) - { - THROW_ERROR( "Missing source file argument.", MifConvString(__FILE__), __LINE__ ); - } - - // Then we check if animated flag is given next: - bool isAnimated = IsAnimatedFlag(*i); - - if( isAnimated ) - { - // This was an animated flag, so next must be filename: - ++i; - // Check that there is still an argument: - if( i == argList.end() ) - { - THROW_ERROR( "Missing source file argument.", MifConvString(__FILE__), __LINE__ ); - //THROW_USAGE_EXCEPTION(); - } - } - - // One more check... Check that the next string is not an argument (starting with '-' or '/') - // It should be a filename for the source icon. - if( IsArgument(*i) ) - { - THROW_ERROR( "Missing source file argument.", MifConvString(__FILE__), __LINE__ ); - } - - MifConvSourceFile srcFile; - srcFile.SetDepthAndMask(depthAndMask); - srcFile.SetDisplayMode(ConvertToDisplayMode(srcFile.Depth())); - srcFile.SetMaskDisplayMode(ConvertToMaskDisplayMode(srcFile.MaskDepth())); - srcFile.SetFilename(ReadStringArgument( argList, i, 0 )); - srcFile.SetAnimated(isAnimated); - iSourceFiles.push_back(srcFile); - ++i; - } - else if( IsAnimatedFlag(*i) ) - { - // Icon animated flag found - // Let's see if the next is depth argument: - ++i; - MifConvString depthAndMask; - if( IsDepthArgument(*i) ) - { - depthAndMask = *i; - MifConvUtil::ToLower(depthAndMask); - ++i; - } - - // One more check... Check that the next string is not an argument (starting with '-' or '/') - if( IsArgument(*i) ) - { - THROW_ERROR( "Missing source file argument.", MifConvString(__FILE__), __LINE__ ); - } - - MifConvSourceFile srcFile; - srcFile.SetDepthAndMask(depthAndMask); - srcFile.SetDisplayMode(ConvertToDisplayMode(srcFile.Depth())); - srcFile.SetMaskDisplayMode(ConvertToMaskDisplayMode(srcFile.MaskDepth())); - srcFile.SetFilename(*i); - srcFile.SetAnimated(true); - iSourceFiles.push_back(srcFile); - ++i; - } - else - { - THROW_ERROR( "Invalid argument: " + *i, MifConvString(__FILE__), __LINE__ ); - } - } -} - -/** - * Resolves correct type for the source file. Sets also mask filenames for bmp-files: - */ -void MifConvArgumentManager::ResolveSourceFileTypes() -{ - bool extensionFlag = BooleanValue(MifConvUseExtensionArg); - - // check if the input directory is given: - const MifConvStringList& inputDirList = StringListValue(MifConvIconSourceDirectory); - - // Add user-defined input directory to search directory list, put MIFCONV_WILDCARD - // as filetype rule, because user defined directory can contain all supported filetypes: - int indexcounter = 0; - for( MifConvStringList::const_iterator iDir = inputDirList.begin(); iDir != inputDirList.end(); ++iDir ) - { - MifConvSourceSearchRule customRule(*iDir, MifConvStringList(1, MIFCONV_WILDCARD)); - MifConvUtil::ReplaceChar(customRule.SearchPath(), INCORRECT_DIR_SEPARATOR2, DIR_SEPARATOR2); - MifConvUtil::RemoveDuplicateDirSeparators(customRule.SearchPath()); - iSearchRules.insert(iSearchRules.begin()+indexcounter, customRule); - - ++indexcounter; - } - - for( MifConvSourceFileList::iterator src = iSourceFiles.begin(); src != iSourceFiles.end(); ++ src ) - { - if( extensionFlag ) - { - MifConvString extension = MifConvUtil::FileExtension(src->Filename()); - if( !FindAndSetPathAndType( *src, extension ) ) - { - THROW_ERROR_COMMON("File not found " + src->Filename(), MifConvString(__FILE__), __LINE__ ); - } - } - else - { - // "Use extension" -flag not given, so resolve extensions for source files - if( !FindAndSetPathAndType( *src, SVGB_BINARY_FILE_EXTENSION ) ) - { - if( !FindAndSetPathAndType( *src, SVG_FILE_EXTENSION ) ) - { - if( !FindAndSetPathAndType( *src, BMP_FILE_EXTENSION ) ) - { - THROW_ERROR_COMMON("File not found " + src->Filename(), MifConvString(__FILE__), __LINE__ ); - } - } - } - } - } -} - -/** - * - */ -void MifConvArgumentManager::GetMifEnv() -{ - // Read EPOCROOT environment variable - char* tmpPtr = 0; - tmpPtr = getenv(EPOCROOT_ENV.c_str()); - if( tmpPtr ) - { - iEpocRoot = MifConvString(tmpPtr); - MifConvUtil::ReplaceChar(iEpocRoot, INCORRECT_DIR_SEPARATOR2, DIR_SEPARATOR2); - // Make sure that the last char is directory separator - if( iEpocRoot.length() > 0 && iEpocRoot.at( iEpocRoot.length()-1) != DIR_SEPARATOR2 ) - { - iEpocRoot += DIR_SEPARATOR; - } - } -} - -/** - * - */ -const MifConvString& MifConvArgumentManager::EpocRoot() const -{ - return iEpocRoot; -} - -/** - * - */ -bool MifConvArgumentManager::FindAndSetPathAndType( MifConvSourceFile& srcFile, const MifConvString& extension ) -{ - // Search the filename first "as is": - MifConvString tmp( MifConvUtil::FilenameWithoutExtension( srcFile.Filename() ) + MifConvString(FILE_EXTENSION_SEPARATOR) + extension ); - if( MifConvUtil::FileExists(tmp) ) - { - srcFile.SetFilename(tmp); - MifConvUtil::FindAndSetBitmapMaskFile(srcFile); - return true; - } - - // If the absolute path was given, return false, because the file was not found with given path and filename. - // Otherwise continue searching. - if( //(srcFile.Filename().length() > 0 && srcFile.Filename().at(0) == DIR_SEPARATOR2) || - (srcFile.Filename().length() > 1 && srcFile.Filename().at(1) == ':') ) - { - return false; - } - - // Search from the pre-defined locations: - for( SearchRules::iterator i = iSearchRules.begin(); i != iSearchRules.end(); ++i ) - { - bool validPath = false; - const MifConvStringList& allowedTypes = i->AllowedFileTypes(); - - // See if the file with given extension is allowed to locate in search path. - // For example, epoc32\s60\icons folder can contain only .svg files and epoc32\s60\bitmaps - // can contain only .bmp files: - for( MifConvStringList::const_iterator typeIter = allowedTypes.begin(); typeIter != allowedTypes.end(); ++typeIter ) - { - if( *typeIter == MIFCONV_WILDCARD || *typeIter == extension ) - { - validPath = true; - break; - } - } - - if( validPath ) - { - MifConvString searchPath(i->SearchPath()); - - // Make sure that the last char is directory separator - if( searchPath.length() > 0 && searchPath.at( searchPath.length()-1) != DIR_SEPARATOR2 ) - { - searchPath += DIR_SEPARATOR; - } - - searchPath += MifConvUtil::FilenameWithoutExtension( srcFile.Filename() ) + MifConvString(FILE_EXTENSION_SEPARATOR) + extension; - - MifConvUtil::RemoveDuplicateDirSeparators(searchPath); - - if( MifConvUtil::FileExists( searchPath ) ) - { - srcFile.SetFilename(searchPath); - MifConvUtil::FindAndSetBitmapMaskFile(srcFile); - return true; - } - } - } - return false; -} - -/** - * - */ -void MifConvArgumentManager::ProcessArgumentPaths() -{ - // Fix directory separators first: - for( StringArgMap::iterator i = iStringArguments.begin(); i != iStringArguments.end(); ++i ) - { - MifConvString tmp = i->second.Value(); - MifConvUtil::ReplaceChar(tmp, INCORRECT_DIR_SEPARATOR2, DIR_SEPARATOR2); - MifConvUtil::RemoveDuplicateDirSeparators(tmp); - i->second.SetValue(tmp); - } - - // Fix directory separators in source filenames also: - for( MifConvSourceFileList::iterator j = iSourceFiles.begin(); j != iSourceFiles.end(); ++j ) - { - MifConvString tmp = j->Filename(); - MifConvUtil::ReplaceChar(tmp, INCORRECT_DIR_SEPARATOR2, DIR_SEPARATOR2); - MifConvUtil::RemoveDuplicateDirSeparators(tmp); - j->SetFilename(tmp); - } - - // Fix directory separators in search rule directories also: - for( SearchRules::iterator k = iSearchRules.begin(); k != iSearchRules.end(); ++k ) - { - MifConvString& tmp = k->SearchPath(); - MifConvUtil::ReplaceChar(tmp, INCORRECT_DIR_SEPARATOR2, DIR_SEPARATOR2); - MifConvUtil::RemoveDuplicateDirSeparators(tmp); - } - - // Fix target file also: - MifConvUtil::ReplaceChar(iTargetFile, INCORRECT_DIR_SEPARATOR2, DIR_SEPARATOR2); - MifConvUtil::RemoveDuplicateDirSeparators(iTargetFile); -} - -/** - * - */ -void MifConvArgumentManager::FinalizeArguments() -{ - ProcessArgumentPaths(); - ResolveSourceFileTypes(); -} - -/** - * - */ -void MifConvArgumentManager::SetUsageString( MifConvString& usageStr ) const -{ - usageStr = ""; - - usageStr += "Copyright (c) " + MifConvYears + " Nokia Corporation and/or its subsidiary(-ies). All rights reserved.\n"; - usageStr += "\n"; - usageStr += "Usage: mifconv [-F] ]\n"; - usageStr += "\n"; - usageStr += "Where:\n"; - usageStr += " MIFFILE Specifies the target MIF file to be created\n"; - usageStr += " -F Specifies a parameter file, which can contain any of the options\n"; - usageStr += " and sources separated by spaces or newlines\n"; - usageStr += "\n"; - usageStr += "Options:\n"; - usageStr += " -H Specifies a name of the MIF header file (default extension MBG)\n"; - usageStr += " -I Specifies a set of custom source directories where source files\n"; - usageStr += " will be searched. As a fallback, global source directories are\n"; - usageStr += " used\n"; - usageStr += " -E Specifies that source icons are only loaded with given file\n"; - usageStr += " extensions. By default, Mifconv prefers source icons with\n"; - usageStr += " extension .SVG over .BMP, regardless of which is given as\n"; - usageStr += " a parameter\n"; - usageStr += " -X Disables SVG compression. If this flag is set, SVG icons are\n"; - usageStr += " added to MIF file without compressing them first\n"; - usageStr += " -P Specifies a path to custom palette file for bitmap files\n"; - usageStr += " -T Specifies a path where temporary files are created\n"; - usageStr += " -B Specifies a path for non-default BMConv utility\n"; - usageStr += " -S Specifies a path for non-default SVGTBinenCode utility\n"; - usageStr += " -V Specifies a non-platform default format version of SVGT binary\n"; - usageStr += " conversion. It can be any of the following value:\n"; - usageStr += " 1 BGR / float encoding\n"; - usageStr += " 2 BGR / fixed point encoding\n"; - usageStr += " 3 RGB / fixed point encoding\n"; - usageStr += " 4 RGB / float encoding\n"; - usageStr += "Sources:\n"; - usageStr += " [-A] [ [-A] ... ]\n"; - usageStr += " [-A] Specifies animated flag for the icon\n"; - usageStr += " [DEPTH] Specifies icon depth, it can be any of these values\n"; - usageStr += " -1,-2,-4,-8,-c4,-c8,-c12,-c16,-c24,-c32\n"; - usageStr += " [MASK] Specifies icon mask depth, it can be any of these values\n"; - usageStr += " 1,8\n"; - usageStr += " [FILE] Specifies path to the input file, supported file extensions are\n"; - usageStr += " SVG, SVGB, BMP\n"; - usageStr += "\n"; - usageStr += "Other info:\n"; -#ifdef WIN32 - usageStr += " * '-' or '/' can be used as parameter switch prefix\n"; -#endif - usageStr += " * Value of icon mask and depth is meaningful only for bitmap files, but the mask\n"; - usageStr += " value defines if mask entry will be available or not in the header file\n"; - usageStr += " * If mask parameter is defined for a BMP file, Mifconv automatically pics\n"; - usageStr += " a file ending _mask_soft for value 8 and _mask for value 1 of mask\n"; - usageStr += "\n"; - usageStr += "Examples:\n"; - usageStr += " mifconv mybuttons.mif -Hmybuttons.mbg -c8,8 button1 -c8,8 button2\n"; -} - -/** - * - */ -const MifConvString& MifConvArgumentManager::StringValue( const MifConvString& argName ) const -{ - StringArgMap::const_iterator i = iStringArguments.find(argName); - if( i != iStringArguments.end() ) - { - return i->second.Value(); - } - - return iDummyString; -} - -/** - * - */ -const MifConvStringList& MifConvArgumentManager::StringListValue( const MifConvString& argName ) const -{ - StringListArgMap::const_iterator i = iStringListArguments.find(argName); - if( i != iStringListArguments.end() ) - { - return i->second.Value(); - } - - return iDummyStringList; -} - -/** - * - */ -bool MifConvArgumentManager::BooleanValue( const MifConvString& argName ) const -{ - BooleanArgMap::const_iterator i = iBooleanArguments.find(argName); - if( i != iBooleanArguments.end() ) - { - return i->second.Value(); - } - - return false; -} - -/** - * - */ -const MifConvSourceFileList& MifConvArgumentManager::SourceFiles() const -{ - return iSourceFiles; -} - -/** - * - */ -bool MifConvArgumentManager::IsArgument( const MifConvString& str ) const -{ - try { - return str.at(0) == OPTION_PREFIX1_CHAR || str.at(0) == OPTION_PREFIX2_CHAR; - } - catch(...) - { - THROW_ERROR("Zero or corrupted string in MifConvArgumentManager::IsArgument()\n", MifConvString(__FILE__), __LINE__); - } - return false; -} - -/** - * - */ -void MifConvArgumentManager::PopulateDepthAndMaskMaps() -{ - // Insert value-string pairs for the icon depths: - iDepthMap.insert(std::make_pair(MifConvDepth_1, IconDepth_1)); - iDepthMap.insert(std::make_pair(MifConvDepth_2, IconDepth_2)); - iDepthMap.insert(std::make_pair(MifConvDepth_4, IconDepth_4)); - iDepthMap.insert(std::make_pair(MifConvDepth_8, IconDepth_8)); - iDepthMap.insert(std::make_pair(MifConvDepth_c4, IconDepth_c4)); - iDepthMap.insert(std::make_pair(MifConvDepth_c8, IconDepth_c8)); - iDepthMap.insert(std::make_pair(MifConvDepth_c12, IconDepth_c12)); - iDepthMap.insert(std::make_pair(MifConvDepth_c16, IconDepth_c16)); - iDepthMap.insert(std::make_pair(MifConvDepth_c24, IconDepth_c24)); - iDepthMap.insert(std::make_pair(MifConvDepth_c32, IconDepth_c32)); - - // Insert value-string pairs for the icon masks: - iMaskDepthMap.insert(std::make_pair(MifConvMaskDepth_1, IconMaskDepth_1)); - iMaskDepthMap.insert(std::make_pair(MifConvMaskDepth_8, IconMaskDepth_8)); - - // Insert value-pairs for display modes: - iDisplayModeMap.insert(std::make_pair(IconDepth_1, DisplayMode_Gray2)); - iDisplayModeMap.insert(std::make_pair(IconDepth_2, DisplayMode_Gray4)); - iDisplayModeMap.insert(std::make_pair(IconDepth_4, DisplayMode_Gray16)); - iDisplayModeMap.insert(std::make_pair(IconDepth_8, DisplayMode_Gray256)); - iDisplayModeMap.insert(std::make_pair(IconDepth_c4, DisplayMode_Color16)); - iDisplayModeMap.insert(std::make_pair(IconDepth_c8, DisplayMode_Color256)); - iDisplayModeMap.insert(std::make_pair(IconDepth_c12, DisplayMode_Color4K)); - iDisplayModeMap.insert(std::make_pair(IconDepth_c16, DisplayMode_Color64K)); - iDisplayModeMap.insert(std::make_pair(IconDepth_c24, DisplayMode_Color16M)); - iDisplayModeMap.insert(std::make_pair(IconDepth_c32, DisplayMode_Color16MU)); - - iMaskDisplayModeMap.insert(std::make_pair(IconMaskDepth_1, DisplayMode_Gray2)); - iMaskDisplayModeMap.insert(std::make_pair(IconMaskDepth_8, DisplayMode_Gray256)); -} - -/** - * - */ -void MifConvArgumentManager::ReadParameterFile(const MifConvString& paramFilename, MifConvStringList& paramList) -{ - // Check if the file exists: - if( MifConvUtil::FileExists(paramFilename) == false ) - { - THROW_ERROR_COMMON("Unable to open file for reading! " + paramFilename, MifConvString(__FILE__), __LINE__ ); - } - - MifConvFileData paramFileData = MifConvUtil::FileContents(paramFilename); - - MifConvString tmpString; - for(size_t i = 0; i < paramFileData.second; ++i ) - { - if( MifConvUtil::IsWhiteSpace(paramFileData.first[i]) == false ) - { - tmpString += paramFileData.first[i]; - } - else if( tmpString.length() > 0 ) - { - paramList.push_back( tmpString ); - tmpString = MifConvString(); - } - } - - if( tmpString.length() > 0 ) - { - paramList.push_back( tmpString ); - tmpString = MifConvString(); - } - delete[] paramFileData.first; -} - -/** - * Helper class for source search rules - */ - -MifConvSourceSearchRule::MifConvSourceSearchRule(const MifConvString& path, const MifConvStringList& types) -: -iSearchPath(path), -iAllowedFileTypes(types) -{} - -MifConvSourceSearchRule::~MifConvSourceSearchRule() -{} - -const MifConvString& MifConvSourceSearchRule::SearchPath() const -{ - return iSearchPath; -} - -MifConvString& MifConvSourceSearchRule::SearchPath() -{ - return iSearchPath; -} - -const MifConvStringList& MifConvSourceSearchRule::AllowedFileTypes() const -{ - return iAllowedFileTypes; -} diff -r 1494d39c2fee -r 8e41f998124a dependencies/mifconv/src/mifconv_bitmapconverter.cpp --- a/dependencies/mifconv/src/mifconv_bitmapconverter.cpp Sat Mar 27 03:52:59 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,277 +0,0 @@ -/* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Mifconv bitmap converters class. -* -*/ - - -#include "mifconv.h" -#include "mifconv_bitmapconverter.h" -#include "mifconv_util.h" -#include "mifconv_exception.h" -#include "mifconv_argumentmanager.h" -#include - -const MifConvString BMCONV_DEFAULT_PATH(EPOC_TOOLS_PATH); - -/** - * - */ -MifConvBitmapConverter::MifConvBitmapConverter() -{ - MifConvArgumentManager* argMgr = MifConvArgumentManager::Instance(); - // Output file: - iTargetFilename = MifConvUtil::FilenameWithoutExtension(argMgr->TargetFile()) + "." + MifConvString(MBM_FILE_EXTENSION); -} - -/** - * - */ -MifConvBitmapConverter::~MifConvBitmapConverter() -{ -} - -/** - * - */ -void MifConvBitmapConverter::Init() -{ - CleanupTargetFiles(); -} - -/** - * - */ -void MifConvBitmapConverter::CleanupTargetFiles() -{ - if( MifConvUtil::FileExists(iTargetFilename) ) - { - // Try to remove file MIFCONV_MAX_REMOVE_TRIES times, no exception in case of failure: - MifConvUtil::RemoveFile(iTargetFilename, MIFCONV_MAX_REMOVE_TRIES, true); - } -} - -/** - * - */ -void MifConvBitmapConverter::AppendFile( const MifConvSourceFile& sourcefile ) -{ - if( MifConvUtil::FileExtension( sourcefile.Filename() ) == BMP_FILE_EXTENSION ) - { - iSourceFiles.push_back( sourcefile ); - } -} - -/** - * - */ -void MifConvBitmapConverter::Convert() -{ - if( iSourceFiles.size() > 0 ) - { - ConvertToMbm(); - } -} - -/** - * - */ -void MifConvBitmapConverter::Cleanup(bool err) -{ - CleanupTempFiles(); - if( err ) - { - CleanupTargetFiles(); - } -} - -/** - * - */ -void MifConvBitmapConverter::ConvertToMbm() -{ - RunBmconv(); -} - -/** - * - */ -void MifConvBitmapConverter::InitTempFile() -{ - MifConvArgumentManager* argMgr = MifConvArgumentManager::Instance(); - // Construct temp file name - iTempDir = MifConvUtil::DefaultTempDirectory(); - const MifConvString& tempDirArg = argMgr->StringValue(MifConvTempPathArg); - if( tempDirArg.length() > 0 ) - { - iTempDir = tempDirArg; - } - - if( iTempDir.length() > 0 && iTempDir.at(iTempDir.length()-1) != DIR_SEPARATOR2 ) - { - iTempDir.append(DIR_SEPARATOR); - } - - // Generate new temp-filename: - iTempDir.append(MifConvUtil::TemporaryFilename()); - - // append tmp at as postfix - // this is needed because the generated name can contain a single period '.' - // character as the last character which is eaten away when the directory created. - iTempDir.append(MifConvString("tmp")); - - MifConvUtil::EnsurePathExists(iTempDir); - - iTempDir.append(DIR_SEPARATOR); - - iTempFilename = iTempDir + MifConvUtil::FilenameWithoutExtension(MifConvUtil::FilenameWithoutPath(argMgr->TargetFile())); - iTempFilename += BMCONV_TEMP_FILE_POSTFIX; - - // Create temp file - fstream tempFile(iTempFilename.c_str(), ios::out|ios::binary|ios::trunc); - if (!tempFile.is_open()) - { - throw MifConvException(MifConvString("Unable to create tmp file! ") + iTempFilename); - } - - try { - // quiet mode - tempFile << BMCONV_OPTION_PREFIX << BMCONV_QUIET_PARAMETER << " "; - // Palette argument - const MifConvString& paletteArg = argMgr->StringValue(MifConvPaletteFileArg); - if( paletteArg.length() > 0 ) - { - tempFile << BMCONV_OPTION_PREFIX << BMCONV_PALETTE_PARAMETER; - tempFile << MifConvString(paletteArg + " "); - } - - tempFile << iTargetFilename << " "; - // Add filenames to the temp file - for( MifConvSourceFileList::iterator i = iSourceFiles.begin(); i != iSourceFiles.end(); ++i ) - { - AppendBmpToTempFile(tempFile, *i); - } - } - catch(...) { - tempFile.close(); - throw; - } - - tempFile.close(); -} - -/** - * - */ -void MifConvBitmapConverter::RunBmconv() -{ - MifConvArgumentManager* argMgr = MifConvArgumentManager::Instance(); - // Create and initialize the temp file: - InitTempFile(); - - // Build bmconv command - MifConvString bmconvCommand("\""); // Open " mark - - const MifConvString& bmconvPath = argMgr->StringValue(MifConvBmconvPathArg); - const MifConvString& defaultBmconvPath = GetDefaultBmConvPath(); - if( bmconvPath.length() > 0 ) - { - bmconvCommand += bmconvPath; // If the path is given, use it. - } - else - { - bmconvCommand += defaultBmconvPath; // Use default path - } - - // Ensure that the last char of the path is dir-separator: - if( bmconvCommand.length() > 1 && bmconvCommand.at(bmconvCommand.length()-1) != DIR_SEPARATOR2 ) - bmconvCommand += DIR_SEPARATOR; - - // Then add bmconv executable call and close the " mark - bmconvCommand += BMCONV_EXECUTABLE_NAME + MifConvString("\" "); - bmconvCommand += "\"" + iTempFilename + "\""; - - MifConvUtil::EnsurePathExists(iTargetFilename, true); - - cout << "Writing mbm: " << iTargetFilename << endl; - int err = 0; - -#ifdef __linux__ - if ((err = system (MifConvString(bmconvCommand).c_str())) != 0) // Returns 0 if success -#else - if ((err = system (MifConvString("\""+bmconvCommand+"\"").c_str())) != 0) // Returns 0 if success -#endif - { - THROW_ERROR_COMMON("Executing BMCONV failed", MifConvString(__FILE__), __LINE__); - } -} - -/** - * - */ -void MifConvBitmapConverter::CleanupTempFiles() -{ - if( iTempFilename.length() > 0 && remove( iTempFilename.c_str() ) != 0 ) - { - perror( "Error deleting temporary file (bitmap conversion)" ); - } - - if( iTempDir.length() > 0 && MifConvUtil::RemoveDirectory( iTempDir ) != 0 ) - { - perror( "Error deleting temporary directory (bitmap conversion)" ); - } -} - -/** - * - */ -const MifConvString& MifConvBitmapConverter::GetDefaultBmConvPath() -{ - if( iDefaultBmConvPath.length() == 0 ) - { - // Check if the EPOCROOT is given - MifConvString epocRoot(MifConvArgumentManager::Instance()->EpocRoot()); - if( epocRoot.length() > 0 ) - { - // EPOCROOT environment variable defined. - iDefaultBmConvPath = epocRoot + BMCONV_DEFAULT_PATH; - } - } - - return iDefaultBmConvPath; -} - -/** - * - */ -void MifConvBitmapConverter::AppendBmpToTempFile(fstream& aStream, const MifConvSourceFile& bmpFile) - { - cout << "Loading file: " << bmpFile.Filename() << endl; - - aStream << BMCONV_OPTION_PREFIX; - aStream << bmpFile.DepthString(); - aStream << bmpFile.Filename(); - aStream << " "; - - // Prepare also for the case that mask is not used at all. - const MifConvString& maskName = bmpFile.BmpMaskFilename(); - if (maskName.length() > 0 ) - { - cout << "Loading file: " << maskName << endl; - aStream << BMCONV_OPTION_PREFIX; - aStream << bmpFile.MaskDepthString(); - aStream << maskName; - } - aStream << " "; - } diff -r 1494d39c2fee -r 8e41f998124a dependencies/mifconv/src/mifconv_bitmapheaderconverter.cpp --- a/dependencies/mifconv/src/mifconv_bitmapheaderconverter.cpp Sat Mar 27 03:52:59 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,166 +0,0 @@ -/* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Mifconv bitmap header converter class. -* -*/ - - -#include "mifconv.h" -#include "mifconv_bitmapheaderconverter.h" -#include "mifconv_argumentmanager.h" -#include "mifconv_util.h" -#include "mifconv_exception.h" - -const int MIF_ID_FIRST = 16384; - -/** - * - */ -MifConvBitmapHeaderConverter::MifConvBitmapHeaderConverter() -: -iCurrentSourceId(MIF_ID_FIRST) -{ - MifConvArgumentManager* argMgr = MifConvArgumentManager::Instance(); - iHeaderFilename = argMgr->StringValue(MifConvHeaderArg); -} - -/** - * - */ -MifConvBitmapHeaderConverter::~MifConvBitmapHeaderConverter() -{ -} - -/** - * - */ -void MifConvBitmapHeaderConverter::Init() -{ - CleanupTargetFiles(); -} - -/** - * - */ -void MifConvBitmapHeaderConverter::CleanupTargetFiles() -{ - if( MifConvUtil::FileExists(iHeaderFilename) ) - { - // Try to remove file MIFCONV_MAX_REMOVE_TRIES times, no exception in case of failure: - MifConvUtil::RemoveFile(iHeaderFilename, MIFCONV_MAX_REMOVE_TRIES, true); - } -} - -/** - * - */ -void MifConvBitmapHeaderConverter::AppendFile( const MifConvSourceFile& sourcefile ) -{ - iSourceFiles.push_back( sourcefile ); -} - -/** - * - */ -void MifConvBitmapHeaderConverter::Convert() -{ - // Check if the headerfile name is given. Return if not: - if( iHeaderFilename.length() > 0 ) - { - cout << "Writing mbg: " << iHeaderFilename << endl; - MifConvUtil::EnsurePathExists(iHeaderFilename, true); - } - else - { - return; - } - - // Create / open the header file: - fstream headerFile(iHeaderFilename.c_str(), ios::out|ios::trunc); - - // If file creation/opening was not successful, give warning and return: - if( !headerFile.is_open() ) - { - MifConvString debugStr("WARNING: Headerfile " + iHeaderFilename + " cannot be opened for writing."); - cout << debugStr << endl; - MifConvUtil::DebugLog(debugStr); - return; - } - iDestFile = &headerFile; // Save the pointer to the file stream - (*iDestFile) << endl; - // Write the beginning of the header file: - WriteStart(); - - // Add source file items to enumerator: - for( MifConvSourceFileList::iterator i = iSourceFiles.begin(); i != iSourceFiles.end(); ++i ) - { - WriteItemToHeader(*i); - } - - // Write the end of the file... - WriteEnd(); - - // ...and close the file: - iDestFile->close(); -} - -/** - * - */ -void MifConvBitmapHeaderConverter::WriteStart() -{ - (*iDestFile) << "/* This file has been generated, DO NOT MODIFY. */" << endl; - (*iDestFile) << "enum TMif" << MifConvUtil::UnadornedFilename(iHeaderFilename) << "\n\t{" << endl; -} - -/** - * - */ -void MifConvBitmapHeaderConverter::WriteItemToHeader( const MifConvSourceFile& source ) -{ - MifConvString unadornedHeaderFile(MifConvUtil::UnadornedFilename(iHeaderFilename)); - - (*iDestFile) << "\tEMbm" << unadornedHeaderFile << MifConvUtil::UnadornedFilename(source.Filename()) << " = " << iCurrentSourceId++ << "," << endl; - - // Write mask also, if any: - if( source.MaskDepth() != IconMaskDepth_Undefined ) - { - (*iDestFile) << "\tEMbm" << unadornedHeaderFile << MifConvUtil::UnadornedFilename(source.Filename()) << "_mask = " << iCurrentSourceId++ << "," << endl; - } - else - { - // Skip mask ID if mask not present so that adding a mask later does not change IDs. - iCurrentSourceId++; - } -} - -/** - * - */ -void MifConvBitmapHeaderConverter::WriteEnd() -{ - (*iDestFile) << "\tEMbm" << MifConvUtil::UnadornedFilename(iHeaderFilename) << "LastElement" << endl; - (*iDestFile) << "\t};" << endl; -} - -/** - * - */ -void MifConvBitmapHeaderConverter::Cleanup(bool err) -{ - if( err ) - { - CleanupTargetFiles(); - } -} diff -r 1494d39c2fee -r 8e41f998124a dependencies/mifconv/src/mifconv_convertermanager.cpp --- a/dependencies/mifconv/src/mifconv_convertermanager.cpp Sat Mar 27 03:52:59 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,190 +0,0 @@ -/* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Mifconv converter manager class. -* -*/ - - -#include "mifconv.h" -#include "mifconv_convertermanager.h" -#include "mifconv_argumentmanager.h" -#include "mifconv_util.h" -#include "mifconv_bitmapconverter.h" -#include "mifconv_bitmapheaderconverter.h" -#include "mifconv_iconbinaryconverter.h" -#include "mifconv_mifconverter.h" - -// Static singleton initialization -MifConvConverterManager* MifConvConverterManager::iInstance = 0; - -/** - * Returns pointer to the singleton object - */ -MifConvConverterManager* MifConvConverterManager::Instance() -{ - if( iInstance == 0 ) - { - iInstance = new MifConvConverterManager(); - } - return iInstance; -} - -/** - * Free the allocated memory - */ -void MifConvConverterManager::Reset() -{ - delete iInstance; - iInstance = 0; -} - -/** - * Constructor - */ -MifConvConverterManager::MifConvConverterManager() -{ - -} - -/** - * - */ -void MifConvConverterManager::Init() -{ - // Add bmp --> mbm converter: - MifConvBitmapConverter* bitmapConverter = new MifConvBitmapConverter(); - iAllConverters.push_back(bitmapConverter); - - // Add headerfile (mbg) converter: - MifConvBitmapHeaderConverter* headerConverter = new MifConvBitmapHeaderConverter(); - iAllConverters.push_back(headerConverter); - - // Add svg --> svgb converter: - MifConvIconBinaryConverter* svgConverter = new MifConvIconBinaryConverter(); - iAllConverters.push_back(svgConverter); - - // Add mif converter: - MifConvMifConverter* mifConverter = new MifConvMifConverter(); - iAllConverters.push_back(mifConverter); - - // Add file converters for .BMP files: - MifConvFileConverterList bmpConverters; - bmpConverters.push_back(bitmapConverter); - bmpConverters.push_back(headerConverter); - bmpConverters.push_back(mifConverter); - iFileConverters.insert(std::make_pair(MifConvString(BMP_FILE_EXTENSION), bmpConverters)); - - // Add file converters for .SVG files: - MifConvFileConverterList svgConverters; - svgConverters.push_back(headerConverter); - svgConverters.push_back(svgConverter); - if( MifConvArgumentManager::Instance()->BooleanValue(MifConvDisableSvgCompression) ) - { - // SVG files will be added to mif-file without compression (i.e. don't use svgtbinencode for them). - svgConverters.push_back(mifConverter); - } - iFileConverters.insert(std::make_pair(MifConvString(SVG_FILE_EXTENSION), svgConverters)); - - // Add file converters for .SVGB files: - MifConvFileConverterList svgbConverters; - svgbConverters.push_back(headerConverter); - if( !MifConvArgumentManager::Instance()->BooleanValue(MifConvDisableSvgCompression) ) - { - // SVG files will be compressed first. - svgbConverters.push_back(mifConverter); - } - iFileConverters.insert(std::make_pair(MifConvString(SVGB_BINARY_FILE_EXTENSION), svgbConverters)); - - // Initialize converters - for( MifConvFileConverterList::iterator i = iAllConverters.begin(); i != iAllConverters.end(); ++i ) - { - (*i)->Init(); - } -} - -/** - * Destructor - */ -MifConvConverterManager::~MifConvConverterManager() -{ - for( MifConvFileConverterList::iterator conv = iAllConverters.begin(); conv != iAllConverters.end(); ++conv ) - { - delete *conv; - } -} - -/** - * Adds source files to converters and converts them - */ -void MifConvConverterManager::ProcessIcons() -{ - MifConvArgumentManager* argMgr = MifConvArgumentManager::Instance(); - // Loop all the source files and append them to correct converters: - const MifConvSourceFileList& sourcefiles = argMgr->SourceFiles(); - for( MifConvSourceFileList::const_iterator i = sourcefiles.begin(); i != sourcefiles.end(); ++i ) - { - MifConvFileConverterList& converters = GetConverters(*i); - for( MifConvFileConverterList::iterator converter = converters.begin(); converter != converters.end(); ++converter ) - { - (*converter)->AppendFile(*i); - } - } - - // Run all the converters: - for( MifConvFileConverterList::iterator conv = iAllConverters.begin(); conv != iAllConverters.end(); ++conv ) - { - (*conv)->Convert(); - } -} - -/** - * - */ -void MifConvConverterManager::Cleanup(bool error) -{ - for( MifConvFileConverterList::iterator conv = iAllConverters.begin(); conv != iAllConverters.end(); ++conv ) - { - try { - (*conv)->Cleanup(error); - } - catch(...) { - // Exception should not be thrown if cleaning after error situation - if( !error ) - throw; - } - } -} - -/** - * - */ -MifConvFileConverterList& MifConvConverterManager::GetConverters(const MifConvSourceFile& source) -{ - return GetConverters(source.Filename()); -} - -/** - * - */ -MifConvFileConverterList& MifConvConverterManager::GetConverters(const MifConvString& filename) -{ - MifConvString extension(MifConvUtil::FileExtension(filename)); - FileConverterMap::iterator i = iFileConverters.find(extension); - if( i != iFileConverters.end() ) - { - return i->second; - } - - return iDummyConverterList; -} diff -r 1494d39c2fee -r 8e41f998124a dependencies/mifconv/src/mifconv_exception.cpp --- a/dependencies/mifconv/src/mifconv_exception.cpp Sat Mar 27 03:52:59 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,76 +0,0 @@ -/* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Mifconv exception class. -* -*/ - - -#include "mifconv.h" -#include "mifconv_exception.h" - -MifConvException::MifConvException() -: -iLine(0) -{} - -MifConvException::MifConvException(const MifConvString& str, const MifConvString& file, int line) -: -iString(str), -iFile(file), -iLine(line) -{} - -MifConvException::MifConvException(const MifConvException& rhs) -: -iString(rhs.iString), -iFile(rhs.iFile), -iLine(rhs.iLine) -{} - -MifConvException::~MifConvException() -{} - -void MifConvException::SetString(const MifConvString& str) -{ - iString = str; -} -const MifConvString& MifConvException::String() const -{ - return iString; -} - -MifConvString& MifConvException::String() -{ - return iString; -} - -void MifConvException::SetFile(const MifConvString& file) -{ - iFile = file; -} - -const MifConvString& MifConvException::File() const -{ - return iFile; -} - -void MifConvException::SetLine(int line) -{ - iLine = line; -} - -int MifConvException::Line() const -{ - return iLine; -} diff -r 1494d39c2fee -r 8e41f998124a dependencies/mifconv/src/mifconv_iconbinaryconverter.cpp --- a/dependencies/mifconv/src/mifconv_iconbinaryconverter.cpp Sat Mar 27 03:52:59 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,302 +0,0 @@ -/* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Mifconv icon binary converters class. -* -*/ - - -#include "mifconv.h" -#include "mifconv_iconbinaryconverter.h" -#include "mifconv_util.h" -#include "mifconv_exception.h" -#include "mifconv_convertermanager.h" -#include "mifconv_argumentmanager.h" -#include -#include - -const MifConvString SVGTBINENCODE_DEFAULT_PATH(EPOC_TOOLS_PATH); - -/** - * - */ -MifConvIconBinaryConverter::MifConvIconBinaryConverter() -{ -} - -/** - * - */ -MifConvIconBinaryConverter::~MifConvIconBinaryConverter() -{ -} - -/** - * - */ -void MifConvIconBinaryConverter::Init() -{ -} - -/** - * - */ -void MifConvIconBinaryConverter::CleanupTargetFiles() -{ -} - -/** - * - */ -void MifConvIconBinaryConverter::AppendFile( const MifConvSourceFile& sourcefile ) -{ - if( MifConvUtil::FileExtension( sourcefile.Filename() ) == SVG_FILE_EXTENSION && - MifConvArgumentManager::Instance()->BooleanValue(MifConvDisableSvgCompression) == false) - { - iSourceFiles.push_back( sourcefile ); - - // Create temp directory: - if( iTempDir.length() == 0 ) - { - InitTempFile(); - } - - // External SVGTBINENCODE converts .svg files to .svgb files. However, .svgb files - // shall be given to mif-converter to get them in mif-file: - - // Create new string for .svgb file name: - MifConvString tmpFile(sourcefile.Filename()); - ConvertToBinaryFilename(tmpFile); - MifConvString tempBinFilename(iTempDir + MifConvUtil::FilenameWithoutExtension(tmpFile) + "." + SVGB_BINARY_FILE_EXTENSION); - - // Get converters for .svgb files: - MifConvFileConverterList& additionalConverters = MifConvConverterManager::Instance()->GetConverters(tempBinFilename); - - // Converters for .svg files: - MifConvFileConverterList& thisFilesConverters = MifConvConverterManager::Instance()->GetConverters( sourcefile.Filename() ); - - // Save temporary binary filename for later deleting: - iTempFilenames.push_back(tempBinFilename); - - // Add temporary file to converters: - for( MifConvFileConverterList::iterator c = additionalConverters.begin(); c != additionalConverters.end(); ++c ) - { - // We have to make sure that we don't add same file twice to same converter. So, let's take first a list of - // .svg file converters and compare them to the .svgb file converters. Don't add temporary file to converters - // that are found from both of the lists. - MifConvFileConverterList::iterator c2 = std::find(thisFilesConverters.begin(), thisFilesConverters.end(), *c ); - if( c2 == thisFilesConverters.end() ) - { - // .svgb converter not found from .svg converters -> add temporary file to .svgb converter: - MifConvSourceFile svgbFile(sourcefile); - svgbFile.SetFilename(tempBinFilename); - (*c)->AppendFile(svgbFile); - } - } - } -} - -/** - * - */ -void MifConvIconBinaryConverter::Convert() -{ - if( iSourceFiles.size() > 0 && MifConvArgumentManager::Instance()->BooleanValue(MifConvDisableSvgCompression) == false ) - { - ConvertToSvgb(); - } -} - -/** - * - */ -void MifConvIconBinaryConverter::Cleanup(bool err) -{ - CleanupTempFiles(); - if( err ) - { - CleanupTargetFiles(); - } -} - -/** - * - */ -void MifConvIconBinaryConverter::ConvertToSvgb() -{ - RunExtConverter(); -} - -/** - * - */ -void MifConvIconBinaryConverter::InitTempFile() -{ - MifConvArgumentManager* argMgr = MifConvArgumentManager::Instance(); - // Construct temp file name - // If temp directory is given in command line arguments, use it: - iTempDir = MifConvUtil::DefaultTempDirectory(); - const MifConvString& tempDirArg = argMgr->StringValue(MifConvTempPathArg); - if( tempDirArg.length() > 0 ) - { - iTempDir = tempDirArg; - } - - if( iTempDir.length() > 0 && iTempDir.at(iTempDir.length()-1) != DIR_SEPARATOR2 ) - { - iTempDir.append(DIR_SEPARATOR); - } - - // Generate new temp-filename: - iTempDir.append(MifConvUtil::TemporaryFilename()); - - // append tmp at as postfix - // this is needed because the generated name can contain a single period '.' - // character as the last character which is eaten away when the directory created. - iTempDir.append(MifConvString("tmp")); - - MifConvUtil::EnsurePathExists(iTempDir); - - iTempDir.append(DIR_SEPARATOR); -} - -/** - * - */ -void MifConvIconBinaryConverter::ConvertToBinaryFilename( MifConvString& input ) -{ - MifConvUtil::ReplaceChar(input, DIR_SEPARATOR2, '_'); - MifConvUtil::ReplaceChar(input, INCORRECT_DIR_SEPARATOR2, '_'); - MifConvUtil::ReplaceChar(input, ':', '_'); - MifConvUtil::ReplaceChar(input, ' ', '_'); -} - -/** - * - */ -void MifConvIconBinaryConverter::RunExtConverter() -{ - MifConvArgumentManager* argMgr = MifConvArgumentManager::Instance(); - - // Build svgtbinencode command - MifConvString extConverterCommand("\""); // Open the " mark - MifConvString versionArgument; - MifConvString sourceArgument; - - const MifConvString& extConverterPath = argMgr->StringValue(MifConvSvgencodePathArg); - const MifConvString& defaultExtConverterPath = GetDefaultExtConverterPath(); - if( extConverterPath.length() > 0 ) - { - extConverterCommand += extConverterPath; // If the path is given, use it. - } - else - { - extConverterCommand += defaultExtConverterPath; // Use default path - } - - // Ensure that the last char of the path is dir-separator: - if( extConverterCommand.length() > 1 && extConverterCommand.at(extConverterCommand.length()-1) != DIR_SEPARATOR2 ) - extConverterCommand += DIR_SEPARATOR; - - // Then add SVGTBINENCODE executable call and close the " mark - extConverterCommand += SVGTBINENCODE_EXECUTABLE_NAME + MifConvString("\" "); - - // If SVGTBINENCODE version is given, use it also: - const MifConvString& extConverterVersion = argMgr->StringValue(MifConvSvgtVersionArg); - if( extConverterVersion.length() > 0 ) - { - versionArgument = SVGTBINENCODE_OPTION_PREFIX + - MifConvString(SVGTBINENCODE_VERSION_PARAMETER) + " " + extConverterVersion; - extConverterCommand += versionArgument + " "; - } - - // Run converter for each of the source files: - for( MifConvSourceFileList::iterator i = iSourceFiles.begin(); i != iSourceFiles.end(); ++i ) - { - // Build temp filename by replacing dir separator and ':' chars with '_': - MifConvString tmpFileName(i->Filename()); - ConvertToBinaryFilename(tmpFileName); - - // Copy source file to temp directory: - MifConvString to(iTempDir + tmpFileName); - if( MifConvUtil::CopyFile(i->Filename(), to) == false ) - { - THROW_ERROR_COMMON("File copy failed: " + to, MifConvString(__FILE__), __LINE__ ); - } - iTempFilenames.push_back(to); - // It seems that system() function does not work if the command consists of two separate parts - // enclosed with quotation marks. If the whole string is enclosed with quotation marks then it works... - // For example: command '"\epoc32\tools\bmconv" "somefile"' does not work while command - // '""\epoc32\tools\bmconv" "somefile""' does. - if( system(MifConvString("\""+extConverterCommand+"\""+to+"\"\"").c_str()) < 0 ) - { - int ernro = errno; // The error number must check straight away before any next system command - - MifConvString errStr("Executing SVGTBINENCODE failed"); - if( ernro ) - { - errStr += ", system error = " + MifConvUtil::ToString(ernro); // Possible system error. - } - THROW_ERROR_COMMON(errStr, MifConvString(__FILE__), __LINE__ ); - } - } -} - -/** - * - */ -void MifConvIconBinaryConverter::CleanupTempFiles() -{ - for( MifConvStringList::iterator i = iTempFilenames.begin(); i != iTempFilenames.end(); ++i ) - { - if( remove( i->c_str() ) != 0 ) - { - perror( "Error deleting file (svg conversion)" ); - } - } - if( iTempDir.length() > 0 && MifConvUtil::RemoveDirectory( iTempDir ) != 0 ) - { - perror( "Error deleting temporary directory (svg conversion)" ); - } -} - -/** - * - */ -const MifConvString& MifConvIconBinaryConverter::GetDefaultExtConverterPath() -{ - if( iDefaultExtConverterPath.length() == 0 ) - { - // Check if the EPOCROOT is given - MifConvString epocRoot(MifConvArgumentManager::Instance()->EpocRoot()); - if( epocRoot.length() > 0 ) - { - iDefaultExtConverterPath += epocRoot; - } - - // Ensure that the last char of the path is dir-separator: - if( iDefaultExtConverterPath.length() > 0 ) - { - if( iDefaultExtConverterPath.at(iDefaultExtConverterPath.length()-1) != DIR_SEPARATOR2 ) - { - iDefaultExtConverterPath += DIR_SEPARATOR; - } - iDefaultExtConverterPath += SVGTBINENCODE_DEFAULT_PATH; - } - } - - return iDefaultExtConverterPath; -} - - - diff -r 1494d39c2fee -r 8e41f998124a dependencies/mifconv/src/mifconv_mifconverter.cpp --- a/dependencies/mifconv/src/mifconv_mifconverter.cpp Sat Mar 27 03:52:59 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,295 +0,0 @@ -/* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Mifconv MIF converters class. -* -*/ - - -#include "mifconv.h" -#include "mifconv_mifconverter.h" -#include "mifconv_util.h" -#include "mifconv_exception.h" -#include "mifconv_argumentmanager.h" - -// File versions: -// V1 - first version. -// V2 - stores information if icon location (MIF/MBM) inside the MIF file (bitmap offsets array). -// This way, icon IDs in MBG header can be always the same regardless of which icons are in MIF -// file and which in MBM file. -static const int KFileVersion(2); -static const int KIconVersion(1); - -static const int FileHeaderSizeInBytes = 4*4; -static const int IconHeaderSizeInBytes = 4*8; -static const int KUidAvkonMultiIconFile(0x034232342); -static const int KUidAvkonMultiIcon(0x034232343); - -//static const int IconFormatType_BMP(0); -//static const int IconFormatType_SVG(1); - -static const unsigned int svgbSignatureLow (0x03FA56CC); //66737868 -static const unsigned int svgbSignatureHigh(0x03FA56CF); //66737871 - -static const unsigned int nvgSignatureLow (0x0067766E); //('n'+'v'+'g'+0) -static const unsigned int nvgSignatureHigh(0xFF67766E); //('n'+'v'+'g'+255) - -/** - * - */ -MifConvMifConverter::MifConvMifConverter() -{ - MifConvArgumentManager* argMgr = MifConvArgumentManager::Instance(); - iTargetFilename = argMgr->TargetFile(); -} - -/** - * - */ -MifConvMifConverter::~MifConvMifConverter() -{ - // Delete file contents - for( StringPtrVector::iterator i = iContentPointers.begin(); i != iContentPointers.end(); ++i ) - { - delete[] *i; - } -} - -/** - * - */ -void MifConvMifConverter::Init() -{ - CleanupTargetFiles(); -} - -/** - * - */ -void MifConvMifConverter::CleanupTargetFiles() -{ - if( MifConvUtil::FileExists(iTargetFilename) ) - { - // Try to remove file MIFCONV_MAX_REMOVE_TRIES times, no exception in case of failure: - MifConvUtil::RemoveFile(iTargetFilename, MIFCONV_MAX_REMOVE_TRIES, true); - } -} - -/** - * - */ -void MifConvMifConverter::AppendFile( const MifConvSourceFile& sourcefile ) -{ - if( MifConvUtil::FileExtension( sourcefile.Filename() ) == BMP_FILE_EXTENSION || - MifConvUtil::FileExtension( sourcefile.Filename() ) == SVG_FILE_EXTENSION || - MifConvUtil::FileExtension( sourcefile.Filename() ) == SVGB_BINARY_FILE_EXTENSION ) - { - iSourceFiles.push_back( sourcefile ); - } -} - -void MifConvMifConverter::Convert() -{ - ReadFileContents(); - cout << "Writing mif: " << MifConvArgumentManager::Instance()->TargetFile() << endl; - ConvertToMif(); -} - -void MifConvMifConverter::ReadFileContents() -{ - for( MifConvSourceFileList::iterator i = iSourceFiles.begin(); i != iSourceFiles.end(); ++i ) - { - // Just read the contents of the .svgb files - if( MifConvUtil::FileExtension( i->Filename() ) != BMP_FILE_EXTENSION ) - { - if( MifConvUtil::FileExists(i->Filename()) == false ) - { - THROW_ERROR_COMMON("Unable to open file for reading! " + i->Filename(), MifConvString(__FILE__), __LINE__ ); - } - cout << "Loading file: " << i->Filename() << endl; - MifConvFileData retVal = MifConvUtil::FileContents(i->Filename()); - iContentPointers.push_back(retVal.first); // Save pointer for deleting it later - i->SetContent(retVal.first, retVal.second); - } - } -} - - -void MifConvMifConverter::Cleanup(bool err) -{ - CleanupTempFiles(); - if( err ) - { - CleanupTargetFiles(); - } -} - -void MifConvMifConverter::ConvertToMif() -{ - try { - OpenTargetFile(); - } - catch( MifConvException& e ) - { - // If file creation/opening was not successful, give warning and return: - MifConvString debugStr("WARNING: Target file " + iTargetFilename + " cannot be opened for writing."); - cout << debugStr << endl; - MifConvUtil::DebugLog(debugStr); - return; - } - WriteTargetHeader(); - WriteIconArray(); - WriteIcons(); -} - -void MifConvMifConverter::OpenTargetFile() -{ - iTargetFile.open( iTargetFilename.c_str(), ios::out|ios::binary ); - - if (!iTargetFile.is_open()) - { - // Create path if it does not exist. - MifConvUtil::EnsurePathExists(iTargetFilename, true); - iTargetFile.clear(); - iTargetFile.open( iTargetFilename.c_str(), ios::out|ios::binary ); - } - if (!iTargetFile.is_open()) - { - THROW_ERROR_COMMON("Cannot write to file! " + iTargetFilename, MifConvString(__FILE__), __LINE__); - } -} - -void MifConvMifConverter::WriteTargetHeader() - { - size_t arraySize = iSourceFiles.size() * 2; - int offset = FileHeaderSizeInBytes; - iTargetFile.write( (char*) &KUidAvkonMultiIconFile, 4 ); - iTargetFile.write( (char*) &KFileVersion, 4 ); - iTargetFile.write( (char*) &offset, 4 ); - iTargetFile.write( (char*) &arraySize, 4 ); - } - -void MifConvMifConverter::CleanupTempFiles() -{ -} - -void MifConvMifConverter::WriteIcons() -{ - for( MifConvSourceFileList::iterator i = iSourceFiles.begin(); i != iSourceFiles.end(); ++i ) - { - if( i->ContentLength() > 0 ) - { - WriteIconHeader(*i); - WriteIconData(*i); - } - } -} - -MifConvDefs::IconFormatType MifConvMifConverter::ReadIconBinaryType(const MifConvSourceFile& src) -{ - MifConvDefs::IconFormatType ret = MifConvDefs::IconFormatType_SVG; - - if( src.ContentLength() >= 4 ) - { - const char* iconData = src.Content(); - - if( iconData[0] == 'n' && - iconData[1] == 'v' && - iconData[2] == 'g' ) - { - ret = MifConvDefs::IconFormatType_NVG; - } - } - - return ret; -} - -void MifConvMifConverter::WriteIconHeader(const MifConvSourceFile& src) -{ - int type = 0; - if( MifConvUtil::FileExtension(src.Filename()) == BMP_FILE_EXTENSION ) - type = MifConvDefs::IconFormatType_BMP; - else - type = ReadIconBinaryType(src); - //type = IconFormatType_SVG; - - int animated = (int) src.IsAnimated(); - int dataLen = src.ContentLength(); - int depth = src.DisplayMode(); - int mask = src.MaskDisplayMode(); - int dataoffset = IconHeaderSizeInBytes; // 8 = number of writes in this method. - - iTargetFile.write((char*)&KUidAvkonMultiIcon, 4); // 1 - iTargetFile.write((char*)&KIconVersion, 4); // 2 - iTargetFile.write((char*)&dataoffset, 4); // 3 - iTargetFile.write((char*)&dataLen, 4); // 4 - iTargetFile.write((char*)&type, 4); // 5 - iTargetFile.write((char*)&depth, 4); // 6 - iTargetFile.write((char*)&animated, 4); // 7 - iTargetFile.write((char*)&mask, 4); // 8 -} - -void MifConvMifConverter::WriteIconData(const MifConvSourceFile& src) -{ - if( src.Content() ) - { - iTargetFile.write(src.Content(), src.ContentLength()); - } -} - -/** -* -*/ -void MifConvMifConverter::WriteIconArray() -{ - int offset = (int) FileHeaderSizeInBytes + (int)iSourceFiles.size()*4*2*2; - MifConvSourceFileList::iterator i = iSourceFiles.begin(); - - int mbmIndex = 0; - int zero = 0; - - for( ; i != iSourceFiles.end(); ++i ) - { - // MIF icon - if( MifConvUtil::FileExtension(i->Filename()) != BMP_FILE_EXTENSION ) - { - int length = i->ContentLength() + IconHeaderSizeInBytes; - iTargetFile.write( (char*) &offset, 4 ); - iTargetFile.write( (char*) &length, 4 ); - // same information for the mask... - iTargetFile.write( (char*) &offset, 4 ); - iTargetFile.write( (char*) &length, 4 ); - - offset += length; - } - // MBM icon - else - { - iTargetFile.write( (char*) &mbmIndex, 4 ); - iTargetFile.write( (char*) &zero, 4 ); - - // Masked MBM icon -> There is own MBM index for the mask. - if(i->MaskDepth() != IconMaskDepth_Undefined ) - { - mbmIndex--; - } - - iTargetFile.write( (char*) &mbmIndex, 4 ); - iTargetFile.write( (char*) &zero, 4 ); - - // MBM incides are coded as negative in the 'offset' field, - // so that they can be easily separated from the actual MIF offsets. - mbmIndex--; - } - } -} diff -r 1494d39c2fee -r 8e41f998124a dependencies/mifconv/src/mifconv_sourcefile.cpp --- a/dependencies/mifconv/src/mifconv_sourcefile.cpp Sat Mar 27 03:52:59 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,179 +0,0 @@ -/* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Mifconv source file class. -* -*/ - - -#include "mifconv.h" -#include "mifconv_sourcefile.h" -#include "mifconv_util.h" -#include "mifconv_exception.h" -#include "mifconv_argument.h" -#include "mifconv_argumentmanager.h" - -MifConvSourceFile::MifConvSourceFile() -: -iDepth(IconDepth_Undefined), -iMaskDepth(IconMaskDepth_Undefined), -iDisplayMode(DisplayMode_None), -iMaskDisplayMode(DisplayMode_None), -iAnimated(false), -iContent(0), -iContentLen(0) -{ -} - -MifConvSourceFile::MifConvSourceFile( const MifConvSourceFile& src ) -: -iFilename( src.Filename() ), -iDepthString( src.DepthString() ), -iMaskDepthString( src.MaskDepthString() ), -iDepth(src.iDepth), -iMaskDepth(src.iMaskDepth), -iDisplayMode(src.iDisplayMode), -iMaskDisplayMode(src.iMaskDisplayMode), -iAnimated( src.IsAnimated() ), -iMaskFilename( src.iMaskFilename ), -iContent(src.iContent), -iContentLen(src.iContentLen) -{ -} - -MifConvSourceFile::~MifConvSourceFile() -{} - -char* MifConvSourceFile::Content() const -{ - return iContent; -} - -int MifConvSourceFile::ContentLength() const -{ - return iContentLen; -} - -void MifConvSourceFile::SetContent(char* content, unsigned int len) -{ - iContent = content; - iContentLen = len; -} - -const MifConvString& MifConvSourceFile::Filename() const -{ - return iFilename; -} - -void MifConvSourceFile::SetAnimated( bool isAnimated ) -{ - iAnimated = isAnimated; -} - -void MifConvSourceFile::SetFilename( const MifConvString& filename ) -{ - iFilename = filename; -} - -void MifConvSourceFile::SetDisplayMode( IconDisplayMode mode) -{ - iDisplayMode = mode; -} - -IconDisplayMode MifConvSourceFile::DisplayMode() const -{ - return iDisplayMode; -} - -void MifConvSourceFile::SetMaskDisplayMode( IconDisplayMode mode) -{ - iMaskDisplayMode = mode; -} - -IconDisplayMode MifConvSourceFile::MaskDisplayMode() const -{ - return iMaskDisplayMode; -} - -IconDepth MifConvSourceFile::Depth() const -{ - return iDepth; -} - -void MifConvSourceFile::SetDepth(IconDepth depth) -{ - iDepth = depth; -} - -const MifConvString& MifConvSourceFile::DepthString() const -{ - return iDepthString; -} - -IconMaskDepth MifConvSourceFile::MaskDepth() const -{ - return iMaskDepth; -} - -void MifConvSourceFile::SetMaskDepth(IconMaskDepth depth) -{ - iMaskDepth = depth; -} - -const MifConvString& MifConvSourceFile::MaskDepthString() const -{ - return iMaskDepthString; -} - -bool MifConvSourceFile::IsAnimated() const -{ - return iAnimated; -} - -const MifConvString& MifConvSourceFile::BmpMaskFilename() const -{ - return iMaskFilename; -} - -void MifConvSourceFile::SetBmpMaskFilename( const MifConvString& maskFilename ) -{ - iMaskFilename = maskFilename; -} - -void MifConvSourceFile::SetDepthString( const MifConvString& depth ) -{ - iDepthString = depth; -} - -void MifConvSourceFile::SetMaskDepthString( const MifConvString& mask ) -{ - iMaskDepthString = mask; -} - -void MifConvSourceFile::SetDepthAndMask( const MifConvString& depthAndMask ) -{ - size_t separatorIndex = depthAndMask.find(","); - - if( separatorIndex != MifConvString::npos ) - { - iDepthString = MifConvString(depthAndMask.begin()+1, depthAndMask.begin()+separatorIndex); - iMaskDepthString = MifConvString(depthAndMask.begin()+separatorIndex+1, depthAndMask.end()); - iMaskDepth = MifConvArgumentManager::Instance()->ConvertToMaskDepth(iMaskDepthString); - } - else - { - iDepthString = MifConvString(depthAndMask.begin()+1, depthAndMask.end()); - } - iDepth = MifConvArgumentManager::Instance()->ConvertToDepth(iDepthString); -} - diff -r 1494d39c2fee -r 8e41f998124a dependencies/mifconv/src/mifconv_util.cpp --- a/dependencies/mifconv/src/mifconv_util.cpp Sat Mar 27 03:52:59 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,593 +0,0 @@ -/* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Mifconv utilities. -* -*/ - - -#include "mifconv.h" -#include "mifconv_util.h" -#include "mifconv_exception.h" -#include "mifconv_argumentmanager.h" -#include // for stat -#ifdef WIN32 - #include // for _getcwd, _chdir, _mkdir -#else - #include -#endif -#include // for _MAX_PATH -#include - -#ifndef _MAX_PATH -#define _MAX_PATH (260) -#endif - -MifConvUtil::MifConvDebugMode MifConvUtil::iDebugMode = DebugMode_Unknown; -MifConvString MifConvUtil::iDebugFile = ""; -MifConvString MifConvUtil::iTempDirectory = ""; - -/** - * - */ -MifConvString MifConvUtil::FileExtension( const MifConvString& fileName ) -{ - size_t indexOfDot; // index of '.' character in the given string - - // Find last occurence of the '.' character - if( ( indexOfDot = fileName.find_last_of('.') ) == MifConvString::npos ) - { - // Not found, return empty string - return MifConvString(""); - } - - // Return the substring starting after the '.' character - return MifConvString( fileName.begin()+indexOfDot+1, fileName.end() ); -} - -/** - * - */ -MifConvString MifConvUtil::FilenameWithoutExtension( const MifConvString& fileName ) -{ - size_t indexOfDot; // index of '.' character in the given string - - // Find last occurence of the '.' character - if( ( indexOfDot = fileName.find_last_of('.') ) == MifConvString::npos ) - { - // Not found, return the whole name - return fileName; - } - - // Return the substring preceding the last '.' character - return MifConvString( fileName.begin(), fileName.begin() + indexOfDot ); -} - -/** - * - */ -MifConvString MifConvUtil::FilenameWithoutPath( const MifConvString& fileName ) -{ - size_t indexOfDirSeparator; // index of directory separator in the given string - - // Find last occurence of the '.' character - if( ( indexOfDirSeparator = fileName.find_last_of(DIR_SEPARATOR2) ) == MifConvString::npos ) - { - // Not found, return the whole name - return fileName; - } - - // Return the substring beginnig after the last directory separator - return MifConvString( fileName.begin()+indexOfDirSeparator+1, fileName.end() ); -} - -/** - * - */ -bool MifConvUtil::FileExists( const MifConvString& fileName ) -{ - struct stat fileInfo; - int retVal = 0; - - // Try to get file attributes to see if the file exists or not: - retVal = stat( fileName.c_str(), &fileInfo); - return retVal == 0; -} - -/** - * - */ -size_t MifConvUtil::FileSize( const MifConvString& fileName ) -{ - struct stat fileInfo; - int retVal = 0; - - // Try to get file attributes to see if the file exists or not: - retVal = stat( fileName.c_str(), &fileInfo); - if( retVal != 0 ) - { - THROW_ERROR_COMMON("File not found: " + fileName, MifConvString(__FILE__), __LINE__); - } - - return fileInfo.st_size; -} - -/** - * - */ -MifConvFileData MifConvUtil::FileContents( const MifConvString& fileName ) -{ - unsigned int fileLen = (unsigned int) (MifConvUtil::FileSize(fileName)/sizeof(char)); - - ifstream fs( fileName.c_str(), FILE_IN_BINARY_NOCREATE_FLAGS ); - if (!fs.is_open()) - { - THROW_ERROR_COMMON("Unable to open file for reading! " + fileName, MifConvString(__FILE__), __LINE__); - } - char* buffer = new char[fileLen]; - fs.read(buffer, fileLen); - return MifConvFileData(buffer, fileLen); -} - -/** - * - */ -void MifConvUtil::ReplaceChar( MifConvString& str, char replaceFrom, char replaceTo) -{ - if( str.length() > 0 ) - { - MifConvString::size_type index = 0; - while( (index = str.find(replaceFrom, index)) != MifConvString::npos ) - { - str.replace(index,1,1,replaceTo); - } - } -} - -/** - * - */ -void MifConvUtil::SplitPath( const MifConvString& sourcePath, MifConvString& drive, MifConvString& path) - { - if( sourcePath.length() > 0 ) - { - size_t driveSeparatorPos = sourcePath.find(':'); - if( driveSeparatorPos != MifConvString::npos ) - { - drive = MifConvString(sourcePath.begin(), sourcePath.begin() + driveSeparatorPos ); - path = MifConvString(sourcePath.begin() + driveSeparatorPos + 1, sourcePath.end() ); - } - else - { - path = sourcePath; - } - } - else - { - drive = MifConvString(""); - path = MifConvString(""); - } -} - -/** - * - */ -MifConvString MifConvUtil::CurrentPath() -{ - char temp[_MAX_PATH]; -#ifdef WIN32 - _getcwd(temp, _MAX_PATH); -#else - getcwd(temp, _MAX_PATH); -#endif - return MifConvString(temp); -} - -/** - * - */ -int MifConvUtil::CompareIgnoreCase( const MifConvString& lhs, const MifConvString& rhs ) -{ - MifConvString lhsCopy(lhs); - MifConvString rhsCopy(rhs); - - return ToLower(lhsCopy).compare(ToLower(rhsCopy)); -} - -/** - * - */ -MifConvString& MifConvUtil::ToLower( MifConvString& str ) -{ - MifConvString::iterator it(str.begin()); - for(; it != str.end(); ++it) - { - *it = (char) tolower((unsigned char)*it); - } - return str; -} - -/** - * - */ -void MifConvUtil::EnsurePathExists( const MifConvString& destFileName, bool ignoreLast ) - { - MifConvString currentPath; - MifConvString tmpDrive; - MifConvString tmpPath; - - // Parse a drive of a destination path; if any - SplitPath( destFileName, tmpDrive, tmpPath ); - - // Save current directory - currentPath = CurrentPath(); - - // Change drive if needed: - if( tmpDrive.length() > 0 ) - { - tmpDrive += ":"; - tmpDrive += DIR_SEPARATOR; - ChangeDirectory(tmpDrive); - } - - // Split desination path to separate directories: - MifConvStringList destDirList; - - // Check if the root is given first and add it to dir list: - if( tmpPath.length() > 0 && tmpPath.at(0) == DIR_SEPARATOR2 ) - { - destDirList.push_back(DIR_SEPARATOR); - } - - // Add other directories to destination dir list: - SplitString( tmpPath, DIR_SEPARATOR, destDirList ); - - // Remove last component from the list if it should be ignored: - if( ignoreLast ) - { - destDirList.pop_back(); - } - - unsigned int i = 0; - while( i < destDirList.size() ) - { - const MifConvString& dir = destDirList[i++]; - if( !FileExists(dir) ) - { - if( !CreateDirectory( dir ) ) - { - // Change back to original directory: - ChangeDirectory( currentPath ); - THROW_ERROR_COMMON("Directory " + tmpPath + " cannot be created", MifConvString(__FILE__), __LINE__); - } - } - ChangeDirectory( dir ); - } - - // Change back to original directory: - ChangeDirectory( currentPath ); -} - -/** - * - */ -void MifConvUtil::RemoveDuplicateDirSeparators( MifConvString& str ) -{ - MifConvString searchString(DIR_SEPARATOR); - searchString += DIR_SEPARATOR; - size_t pos = str.find(searchString); - - while(pos != MifConvString::npos) - { - str.erase(pos, 1); - pos = str.find(searchString); - } -} - -/** - * - */ -bool MifConvUtil::CreateDirectory( const MifConvString& path ) -{ -#ifdef WIN32 - return _mkdir( path.c_str() ) == 0; -#else - return mkdir( path.c_str(), 0777 ) == 0; -#endif -} - -/** - * - */ -void MifConvUtil::SplitString( const MifConvString& str, const MifConvString& separator, MifConvStringList& components ) -{ - size_t beginPos = 0; - size_t endPos = 0; - - while( (endPos = str.find(separator, beginPos)) != MifConvString::npos ) - { - if( endPos - beginPos > 0 ) - { - components.push_back( MifConvString( str.begin()+beginPos, str.begin()+endPos ) ); - } - beginPos = endPos+1; - } - if( str.begin()+beginPos != str.end() ) - { - components.push_back( MifConvString(str.begin()+beginPos, str.end()) ); - } -} - -/** - * - */ -MifConvString MifConvUtil::UnadornedFilename( const MifConvString& filename ) -{ - MifConvStringList splitted; - SplitString(filename, DIR_SEPARATOR, splitted); - - MifConvString tmp(splitted.back()); - splitted.clear(); - SplitString(tmp, INCORRECT_DIR_SEPARATOR, splitted); - - tmp = splitted.back(); - splitted.clear(); - SplitString(tmp, FILE_EXTENSION_SEPARATOR, splitted); - - MifConvString fixedname; - - if( splitted.size() > 0 ) - { - fixedname = ToLower(splitted[0]); - if( fixedname.length() > 0 ) - { - fixedname[0] = (char) toupper( fixedname[0] ); - } - } - return fixedname; -} - -/** - * - */ -void MifConvUtil::FindAndSetBitmapMaskFile( MifConvSourceFile& srcFile ) -{ - if( srcFile.MaskDepth() == IconMaskDepth_Undefined ) - { - return; // No mask file - } - MifConvString fileExtension(FileExtension( srcFile.Filename() )); - - if( CompareIgnoreCase(fileExtension, BMP_FILE_EXTENSION) != 0 ) - { - return; - } - - MifConvString maskFilename(FilenameWithoutExtension(srcFile.Filename())); - - if( srcFile.MaskDepth() == IconMaskDepth_1 ) - { - maskFilename += "_mask.bmp"; - } - else if( srcFile.MaskDepth() == IconMaskDepth_8 ) - { - maskFilename += "_mask_soft.bmp"; - } - else - { - THROW_ERROR_COMMON("Invalid mask depth\n", MifConvString(__FILE__), __LINE__); - } - - if( !FileExists(maskFilename) ) - { - cerr << endl << "*** WARNING! Missing bitmap: " << maskFilename << endl; - } - - srcFile.SetBmpMaskFilename( maskFilename ); -} - -/** - * - */ -MifConvString MifConvUtil::TemporaryFilename() -{ - MifConvString tmp(tmpnam(NULL)); - MifConvString::iterator i = tmp.begin(); - - if( *i == '.' ) - { - ++i; - } - - if( *i == DIR_SEPARATOR2 || *i == INCORRECT_DIR_SEPARATOR2 ) - { - ++i; - } - - return MifConvString(i, tmp.end()); -} - -/** - * - */ -bool MifConvUtil::CopyFile(const MifConvString& from, const MifConvString& to) -{ - bool retval = false; - ifstream in(from.c_str(), ios::binary); - if( in ) - { - ofstream out(to.c_str(), ios::binary); - if( out ) - { - out << in.rdbuf(); - retval = out.good(); - out.close(); - } - in.close(); - } - return retval; -} - -/** - * - */ -bool MifConvUtil::IsWhiteSpace(char c) -{ - return c == ' ' || c == '\n' || c == '\r' || c == '\t'; -} - -/** - * - */ -void MifConvUtil::ChangeDirectory( const MifConvString& dirName ) -{ -#ifdef WIN32 - _chdir( dirName.c_str() ); -#else - chdir( dirName.c_str() ); -#endif -} - -/** - * - */ -int MifConvUtil::RemoveDirectory( const MifConvString& dirName ) -{ -#ifdef WIN32 - return _rmdir( dirName.c_str() ); -#else - return rmdir( dirName.c_str() ); -#endif -} - -/** - * - */ -void MifConvUtil::RemoveFile( const MifConvString& fileName, int maxTries, bool noException ) -{ - for( int i = 0; i < maxTries; ++i ) - { -#ifdef WIN32 - int ret = _unlink(fileName.c_str()); -#else - int ret = unlink(fileName.c_str()); -#endif - - if( ret == 0 ) - { - // Delete was successful - return; - } - - // Delete was not successful - if( i >= maxTries-1 ) - { - // Max amount of tries exceeded -> print warning or throw an exception - if( noException ) - { - MifConvString debugStr("WARNING: Cannot remove file " + fileName); - DebugLog(debugStr); - } - else - { - THROW_ERROR_COMMON("Cannot remove file " + fileName, MifConvString(__FILE__), __LINE__); - } - } - } -} - -/** - * - */ -MifConvString MifConvUtil::DebugFile() -{ - char* tmpPtr = getenv(MIFCONV_DEBUG_FILE_ENV.c_str()); - if( tmpPtr ) - { - return MifConvString(tmpPtr); - } - return MifConvString(); -} - -/** - * - */ -void MifConvUtil::DebugLog(const MifConvString& debugStr) -{ - if( iDebugMode == DebugMode_Unknown ) - { - iDebugFile = MifConvUtil::DebugFile(); - if( iDebugFile.length() > 0 ) - { - iDebugMode = DebugMode_Debug; - } - else - { - iDebugMode = DebugMode_NoDebug; - } - } - - if( iDebugMode == DebugMode_Debug ) - { - ios_base::openmode file_flags; - if( MifConvUtil::FileExists(iDebugFile) ) - { - file_flags = ios::out|ios::app; - } - else - { - file_flags = ios::out|ios::trunc; - } - fstream debugLog(iDebugFile.c_str(), file_flags); - if(debugLog.is_open()) - { - debugLog << debugStr << endl; - debugLog.close(); - } - } -} - -/** - * - */ -const MifConvString& MifConvUtil::DefaultTempDirectory() - { - if( iTempDirectory.length() == 0 ) - { - char* tmpPtr = getenv(SBS_BUILD_DIR_ENV.c_str()); - if( tmpPtr && MifConvString(tmpPtr).length() > 0 ) - { - iTempDirectory = MifConvString(tmpPtr); - - if( iTempDirectory.at(iTempDirectory.length()-1) != DIR_SEPARATOR2 ) - { - iTempDirectory += DIR_SEPARATOR; - } - - iTempDirectory += EPOC_ICON_BUILD_PATH_POSTFIX + - MifConvString(DIR_SEPARATOR) + - MifConvString("temp"); - } - else - { - iTempDirectory = MifConvArgumentManager::Instance()->EpocRoot() + - EPOC_BUILD_PATH + - MifConvString(DIR_SEPARATOR) + - EPOC_ICON_BUILD_PATH_POSTFIX + - MifConvString(DIR_SEPARATOR) + - MifConvString("temp"); - } - } - return iTempDirectory; - } - diff -r 1494d39c2fee -r 8e41f998124a group/ABLD.BAT --- a/group/ABLD.BAT Sat Mar 27 03:52:59 2010 +0530 +++ b/group/ABLD.BAT Sat Mar 27 10:26:12 2010 +0100 @@ -3,7 +3,7 @@ REM Bldmake-generated batch file - ABLD.BAT REM ** DO NOT EDIT ** -perl -S ABLD.PL "\S60\devices\S60_5th_Edition_SDK_v1.0\homescreensrv\group\\" %1 %2 %3 %4 %5 %6 %7 %8 %9 +perl -S ABLD.PL "\homescreensrv\group\\" %1 %2 %3 %4 %5 %6 %7 %8 %9 if errorlevel==1 goto CheckPerl goto End diff -r 1494d39c2fee -r 8e41f998124a group/bld.inf --- a/group/bld.inf Sat Mar 27 03:52:59 2010 +0530 +++ b/group/bld.inf Sat Mar 27 10:26:12 2010 +0100 @@ -20,6 +20,9 @@ PRJ_EXPORTS ../inc/aisystemuids.hrh MW_LAYER_PLATFORM_EXPORT_PATH(aisystemuids.hrh) +// build dependencies: headers and S^3 libs +#include "../dependencies/bld.inf" + #include "../xcfw/group/bld.inf" #include "../homescreenpluginsrv/group/bld.inf" #include "../idlefw/group/bld.inf" diff -r 1494d39c2fee -r 8e41f998124a homescreensrv_plat/group/ABLD.BAT --- a/homescreensrv_plat/group/ABLD.BAT Sat Mar 27 03:52:59 2010 +0530 +++ b/homescreensrv_plat/group/ABLD.BAT Sat Mar 27 10:26:12 2010 +0100 @@ -3,7 +3,7 @@ REM Bldmake-generated batch file - ABLD.BAT REM ** DO NOT EDIT ** -perl -S ABLD.PL "\S60\devices\S60_5th_Edition_SDK_v1.0\homescreensrv\homescreensrv_plat\group\\" %1 %2 %3 %4 %5 %6 %7 %8 %9 +perl -S ABLD.PL "\homescreensrv\homescreensrv_plat\group\\" %1 %2 %3 %4 %5 %6 %7 %8 %9 if errorlevel==1 goto CheckPerl goto End