From 98f16efa144b07304e1543015bfaa3041a4873f6 Mon Sep 17 00:00:00 2001 From: Jinkun Jang Date: Sat, 16 Mar 2013 01:17:24 +0900 Subject: [PATCH] merge with master --- NOTICE | 8 +- inc/FGraphics.h | 82 +- inc/FGrpBitmap.h | 160 + inc/FGrpCanvas.h | 653 ++++ inc/FGrpCanvasCommon.h | 58 + inc/FGrpCanvasTexture.h | 4 +- inc/FGrpCoordinateSystem.h | 74 + inc/FGrpEnrichedText.h | 236 +- inc/FGrpFloatDimension.h | 2 +- inc/FGrpFloatMatrix4.h | 2 +- inc/FGrpFloatPoint.h | 2 +- inc/FGrpFloatPoint3.h | 2 +- inc/FGrpFloatRectangle.h | 3 +- inc/FGrpFloatVector4.h | 2 +- inc/FGrpFont.h | 192 +- inc/FGrpGlPlayer.h | 2 +- inc/FGrpIGlRenderer.h | 2 +- inc/FGrpIVideoTextureUpdateListener.h | 4 +- inc/FGrpTextElement.h | 436 +-- inc/FGrpVideoTexture.h | 2 +- inc/FUi.h | 8 +- inc/FUiAccessibilityContainer.h | 257 +- inc/FUiAccessibilityElement.h | 196 +- inc/FUiAccessibilityTypes.h | 10 +- inc/FUiAnimControlAnimator.h | 2 + inc/FUiAnimFrameAnimator.h | 20 +- inc/FUiAnimIVisualElementEventListener.h | 8 +- inc/FUiAnimVisualElement.h | 175 +- inc/FUiAnimVisualElementSurface.h | 31 + inc/FUiClipboard.h | 4 +- inc/FUiClipboardItem.h | 6 +- inc/FUiCompositeMode.h | 6 +- inc/FUiContainer.h | 308 +- inc/FUiControl.h | 3676 ++++++++++++-------- inc/FUiControls.h | 35 +- inc/FUiCtrlAnimation.h | 39 +- inc/FUiCtrlButton.h | 124 +- inc/FUiCtrlCheckButton.h | 32 +- inc/FUiCtrlColorPicker.h | 51 +- inc/FUiCtrlContextMenu.h | 56 +- inc/FUiCtrlControlsTypes.h | 18 +- inc/FUiCtrlCustomItem.h | 102 + inc/FUiCtrlCustomList.h | 10 +- inc/FUiCtrlCustomListItem.h | 2 +- inc/FUiCtrlCustomListTypes.h | 6 +- inc/FUiCtrlDatePicker.h | 304 +- inc/FUiCtrlDateTimePicker.h | 40 +- inc/FUiCtrlEditArea.h | 175 +- inc/FUiCtrlEditDate.h | 347 +- inc/FUiCtrlEditField.h | 253 +- inc/FUiCtrlEditTime.h | 67 +- inc/FUiCtrlEditTypes.h | 0 inc/FUiCtrlExpandableEditArea.h | 960 ++--- inc/FUiCtrlExpandableList.h | 2 +- inc/FUiCtrlFooter.h | 45 +- inc/FUiCtrlForm.h | 67 +- inc/FUiCtrlFrame.h | 38 + inc/FUiCtrlFrameTypes.h | 9 +- inc/FUiCtrlGallery.h | 15 + inc/FUiCtrlGroupContainer.h | 444 +++ inc/FUiCtrlGroupItem.h | 39 + inc/FUiCtrlGroupTypes.h | 47 - inc/FUiCtrlGroupedList.h | 2 +- inc/FUiCtrlGroupedListView.h | 194 +- inc/FUiCtrlGroupedTableView.h | 898 +++-- inc/FUiCtrlHeader.h | 207 +- inc/FUiCtrlHeaderItem.h | 2 +- inc/FUiCtrlIEditTextFilter.h | 119 + inc/FUiCtrlIFastScrollListener.h | 8 +- inc/FUiCtrlIFrameEventListener.h | 52 +- inc/FUiCtrlIGroupedListViewItemProvider.h | 1 - inc/FUiCtrlIGroupedListViewItemProviderF.h | 175 + inc/FUiCtrlIGroupedTableViewItemEventListener.h | 108 +- inc/FUiCtrlIGroupedTableViewItemProvider.h | 238 +- inc/FUiCtrlIGroupedTableViewItemProviderF.h | 226 ++ inc/FUiCtrlIIconListViewItemEventListener.h | 6 +- inc/FUiCtrlIIconListViewItemProvider.h | 6 +- inc/FUiCtrlIListViewItemProviderF.h | 116 + inc/FUiCtrlIProgressPopupEventListener.h | 5 +- inc/FUiCtrlIScrollEventListener.h | 7 +- inc/FUiCtrlIScrollEventListenerF.h | 125 + inc/FUiCtrlISectionTableViewItemEventListener.h | 88 +- inc/FUiCtrlISectionTableViewItemProvider.h | 240 +- inc/FUiCtrlISectionTableViewItemProviderF.h | 217 ++ inc/FUiCtrlISliderEventListener.h | 1 + inc/FUiCtrlISplitPanelEventListener.h | 1 + inc/FUiCtrlISplitPanelEventListenerF.h | 116 + inc/FUiCtrlITableViewItemEventListener.h | 102 +- inc/FUiCtrlITableViewItemProvider.h | 144 +- inc/FUiCtrlITableViewItemProviderF.h | 155 + inc/FUiCtrlITokenFilter.h | 1 + inc/FUiCtrlIconList.h | 0 inc/FUiCtrlIconListTypes.h | 2 +- inc/FUiCtrlIconListView.h | 296 +- inc/FUiCtrlIconListViewItem.h | 6 +- inc/FUiCtrlIconListViewTypes.h | 6 +- inc/FUiCtrlInputTypes.h | 0 inc/FUiCtrlKeypad.h | 121 +- inc/FUiCtrlLabel.h | 103 +- inc/FUiCtrlLabelTypes.h | 14 +- inc/FUiCtrlList.h | 2 +- inc/FUiCtrlListItemBase.h | 38 + inc/FUiCtrlListTypes.h | 2 +- inc/FUiCtrlListView.h | 158 +- inc/FUiCtrlListViewTypes.h | 47 +- inc/FUiCtrlMessageBox.h | 42 +- inc/FUiCtrlOptionMenu.h | 1 + inc/FUiCtrlOverlayPanel.h | 134 +- inc/FUiCtrlOverlayRegion.h | 58 +- inc/FUiCtrlPanel.h | 54 +- inc/FUiCtrlPopup.h | 101 +- inc/FUiCtrlProgress.h | 47 + inc/FUiCtrlProgressPopup.h | 45 +- inc/FUiCtrlRadioGroup.h | 103 +- inc/FUiCtrlScrollEventTypes.h | 6 +- inc/FUiCtrlScrollPanel.h | 221 +- inc/FUiCtrlScrollPanelTypes.h | 13 + inc/FUiCtrlSearchBar.h | 210 +- inc/FUiCtrlSectionTableView.h | 802 +++-- inc/FUiCtrlSimpleItem.h | 14 + inc/FUiCtrlSlider.h | 100 +- inc/FUiCtrlSliderTypes.h | 13 +- inc/FUiCtrlSplitPanel.h | 167 +- inc/FUiCtrlTab.h | 1 + inc/FUiCtrlTabBar.h | 30 + inc/FUiCtrlTableView.h | 738 ++-- inc/FUiCtrlTableViewContextItem.h | 74 +- inc/FUiCtrlTableViewGroupItem.h | 129 +- inc/FUiCtrlTableViewItem.h | 195 +- inc/FUiCtrlTableViewItemBase.h | 132 +- inc/FUiCtrlTableViewSimpleGroupItem.h | 49 +- inc/FUiCtrlTableViewSimpleItem.h | 37 +- inc/FUiCtrlTableViewTypes.h | 118 +- inc/FUiCtrlTextBox.h | 122 +- inc/FUiCtrlTimePicker.h | 41 +- inc/FUiCustomControlBase.h | 37 +- inc/FUiDataBindingContext.h | 208 +- inc/FUiDataBindingTypes.h | 48 +- inc/FUiEffects.h | 6 +- inc/FUiEffectsEffect.h | 6 +- inc/FUiEffectsEffectManager.h | 6 +- inc/FUiEffectsIEffectEventListener.h | 6 +- inc/FUiEffectsIEffectResourceProvider.h | 6 +- inc/FUiEffectsTypes.h | 6 +- inc/FUiFocusManager.h | 12 +- inc/FUiGridLayout.h | 52 + inc/FUiHorizontalBoxLayout.h | 59 + inc/FUiIAccessibilityListener.h | 79 +- inc/FUiIAdjustmentEventListener.h | 1 + inc/FUiIAnimationEventListener.h | 1 + inc/FUiIColorChangeEventListener.h | 1 + inc/FUiICustomItemEventListener.h | 14 +- inc/FUiIDataBindingDataTransformer.h | 90 +- inc/FUiIDataBindingDataValidator.h | 48 +- inc/FUiIDataBindingListener.h | 74 +- inc/FUiIDateChangeEventListener.h | 1 + inc/FUiIDateTimeChangeEventListener.h | 1 + inc/FUiIDragDropEventListenerF.h | 110 + inc/FUiIExpandableItemEventListener.h | 44 +- inc/FUiIFastScrollEventListener.h | 20 +- inc/FUiIFocusEventListener.h | 19 +- inc/FUiIGroupedItemEventListener.h | 18 +- inc/FUiIInputConnectionEventListener.h | 4 +- inc/FUiIInputConnectionEventListenerF.h | 180 + inc/FUiIInputConnectionProvider.h | 2 +- inc/FUiIItemEventListener.h | 10 +- inc/FUiIKeyEventListener.h | 495 +-- inc/FUiILanguageEventListener.h | 0 inc/FUiIPropagatedKeyEventListener.h | 153 + inc/FUiIPropagatedTouchEventListener.h | 174 + inc/FUiIScrollPanelEventListener.h | 8 +- inc/FUiISlidableGroupedListEventListener.h | 22 +- inc/FUiISlidableListEventListener.h | 20 +- inc/FUiITextBlockEventListener.h | 0 inc/FUiITextEventListener.h | 1 + inc/FUiITimeChangeEventListener.h | 1 + inc/FUiITouchCustomGestureEventListener.h | 54 +- inc/FUiITouchModeChangedEventListener.h | 2 +- inc/FUiITouchPanningGestureEventListener.h | 60 +- inc/FUiITouchPinchGestureEventListener.h | 64 +- inc/FUiITouchRotationGestureEventListener.h | 60 +- inc/FUiITouchTapGestureEventListener.h | 42 +- inc/FUiIUiLinkEventListener.h | 0 inc/FUiIWindowEventListener.h | 2 +- inc/FUiInputConnection.h | 67 +- inc/FUiInputConnectionTypes.h | 0 inc/FUiKeyEventInfo.h | 146 + inc/FUiKeyEventManager.h | 8 +- inc/FUiKeyTypes.h | 237 ++ inc/FUiKeyboardMap.h | 36 +- inc/FUiLayout.h | 0 inc/FUiRelativeLayout.h | 66 + inc/FUiSystemUtil.h | 231 +- inc/FUiTouch.h | 92 +- inc/FUiTouchEventInfo.h | 33 +- inc/FUiTouchEventManager.h | 20 +- inc/FUiTouchFlickGestureDetector.h | 55 +- inc/FUiTouchGestureDetector.h | 20 +- inc/FUiTouchInfo.h | 58 +- inc/FUiTouchLongPressGestureDetector.h | 182 +- inc/FUiTouchPanningGestureDetector.h | 108 +- inc/FUiTouchPinchGestureDetector.h | 62 +- inc/FUiTouchRotationGestureDetector.h | 89 +- inc/FUiTouchTapGestureDetector.h | 190 +- inc/FUiUiConfiguration.h | 63 +- inc/FUiVariant.h | 1173 ++++--- inc/FUiVerticalBoxLayout.h | 59 + inc/FUiWindow.h | 688 ++-- packaging/osp-uifw.spec | 11 +- .../share/osp/bitmaps/480x800/00_Title_btn.9.png | Bin 2963 -> 0 bytes .../osp/bitmaps/480x800/00_Title_btn_press.9.png | Bin 2967 -> 0 bytes .../bitmaps/480x800/00_arrow_button_press_bg.9.png | Bin 976 -> 0 bytes .../bitmaps/480x800/00_arrow_button_press_ef.9.png | Bin 2970 -> 0 bytes .../share/osp/bitmaps/480x800/00_badge_bg.#.png | Bin 0 -> 3328 bytes .../share/osp/bitmaps/480x800/00_badge_bg.9.png | Bin 1423 -> 0 bytes .../share/osp/bitmaps/480x800/00_badge_bg_ef.#.png | Bin 0 -> 4278 bytes .../share/osp/bitmaps/480x800/00_badge_bg_ef.9.png | Bin 2362 -> 0 bytes .../share/osp/bitmaps/480x800/00_btn_circle_bg.png | Bin 1442 -> 0 bytes .../osp/bitmaps/480x800/00_btn_circle_bg_ef.png | Bin 1679 -> 0 bytes .../osp/bitmaps/480x800/00_btn_circle_bg_p_ef.png | Bin 1705 -> 0 bytes .../share/osp/bitmaps/480x800/00_button_01.#.png | Bin 0 -> 1176 bytes .../share/osp/bitmaps/480x800/00_button_01.9.png | Bin 1264 -> 0 bytes .../osp/bitmaps/480x800/00_button_01_bg.9.png | Bin 2932 -> 0 bytes .../osp/bitmaps/480x800/00_button_01_bg_p_ef.9.png | Bin 2968 -> 0 bytes .../osp/bitmaps/480x800/00_button_01_ef.#.png | Bin 0 -> 1952 bytes .../osp/bitmaps/480x800/00_button_01_ef.9.png | Bin 2680 -> 0 bytes .../osp/bitmaps/480x800/00_button_01_ef_dim.#.png | Bin 0 -> 2021 bytes .../osp/bitmaps/480x800/00_button_01_ef_dim.9.png | Bin 2680 -> 0 bytes .../bitmaps/480x800/00_button_01_ef_press.#.png | Bin 0 -> 1686 bytes .../bitmaps/480x800/00_button_01_ef_press.9.png | Bin 2860 -> 0 bytes .../00_button_02.#.png} | Bin .../00_button_02_ef.#.png} | Bin .../00_button_02_ef_press.#.png} | Bin .../share/osp/bitmaps/480x800/00_button_03.9.png | Bin 3078 -> 0 bytes .../00_button_03_dim_ef.#.png} | Bin .../osp/bitmaps/480x800/00_button_03_dim_ef.9.png | Bin 4529 -> 0 bytes .../osp/bitmaps/480x800/00_button_03_ef.9.png | Bin 4529 -> 0 bytes .../bitmaps/480x800/00_button_03_ef_press.9.png | Bin 4696 -> 0 bytes .../osp/bitmaps/480x800/00_button_06_dim.9.png | Bin 273 -> 0 bytes .../osp/bitmaps/480x800/00_button_06_normal.9.png | Bin 281 -> 0 bytes .../osp/bitmaps/480x800/00_button_06_press.9.png | Bin 338 -> 0 bytes .../share/osp/bitmaps/480x800/00_button_call.png | Bin 1502 -> 0 bytes .../osp/bitmaps/480x800/00_button_call_ef.png | Bin 3831 -> 0 bytes .../share/osp/bitmaps/480x800/00_button_cancel.png | Bin 1212 -> 0 bytes .../bitmaps/480x800/00_button_expand_cancel.png | Bin 1655 -> 0 bytes .../bitmaps/480x800/00_button_expand_cancel_ef.png | Bin 3976 -> 0 bytes .../bitmaps/480x800/00_button_expand_closed.png | Bin .../osp/bitmaps/480x800/00_button_expand_minus.png | Bin 1069 -> 0 bytes .../bitmaps/480x800/00_button_expand_minus_ef.png | Bin 3044 -> 0 bytes .../bitmaps/480x800/00_button_expand_opened.png | Bin .../osp/bitmaps/480x800/00_button_expand_send.png | Bin 1767 -> 0 bytes .../bitmaps/480x800/00_button_expand_send_ef.png | Bin 4158 -> 0 bytes .../share/osp/bitmaps/480x800/00_button_info.png | Bin 1467 -> 0 bytes .../osp/bitmaps/480x800/00_button_info_ef.png | Bin 3705 -> 0 bytes .../share/osp/bitmaps/480x800/00_button_left.png | Bin .../osp/bitmaps/480x800/00_button_left_ef.png | Bin 3394 -> 0 bytes .../share/osp/bitmaps/480x800/00_button_minus.png | Bin 996 -> 0 bytes .../osp/bitmaps/480x800/00_button_normal.9.png | Bin 3168 -> 0 bytes .../osp/bitmaps/480x800/00_button_normal_bg.9.png | Bin 1228 -> 0 bytes .../480x800/00_button_normal_effect_01.9.png | Bin 3814 -> 0 bytes .../share/osp/bitmaps/480x800/00_button_off.png | Bin 4867 -> 4833 bytes .../share/osp/bitmaps/480x800/00_button_off_01.png | Bin 3437 -> 0 bytes .../osp/bitmaps/480x800/00_button_off_dim.png | Bin 6508 -> 4776 bytes .../osp/bitmaps/480x800/00_button_off_dim_temp.png | Bin 6508 -> 0 bytes .../osp/bitmaps/480x800/00_button_off_temp.png | Bin 6556 -> 0 bytes .../usr/share/osp/bitmaps/480x800/00_button_on.png | Bin 4822 -> 4815 bytes .../share/osp/bitmaps/480x800/00_button_on_01.png | Bin 3055 -> 0 bytes .../share/osp/bitmaps/480x800/00_button_on_dim.png | Bin 6485 -> 4772 bytes .../osp/bitmaps/480x800/00_button_on_dim_temp.png | Bin 6485 -> 0 bytes .../bitmaps/480x800/00_button_on_off_handler.png | Bin 4809 -> 4878 bytes .../480x800/00_button_on_off_handler_dim.png | Bin 0 -> 4713 bytes .../osp/bitmaps/480x800/00_button_on_temp.png | Bin 6545 -> 0 bytes .../share/osp/bitmaps/480x800/00_button_plus.png | Bin 3003 -> 0 bytes .../osp/bitmaps/480x800/00_button_plus_ef.png | Bin 3230 -> 0 bytes .../share/osp/bitmaps/480x800/00_button_radio.png | Bin 4983 -> 5036 bytes .../osp/bitmaps/480x800/00_button_radio_dim.png | Bin 4797 -> 3019 bytes .../osp/bitmaps/480x800/00_button_radio_press.png | Bin 5175 -> 3283 bytes .../osp/bitmaps/480x800/00_button_radio_press1.png | Bin 3620 -> 0 bytes .../osp/bitmaps/480x800/00_button_radio_press2.png | Bin 3146 -> 0 bytes .../osp/bitmaps/480x800/00_button_radio_select.png | Bin 3078 -> 1213 bytes .../bitmaps/480x800/00_button_radio_select_dim.png | Bin 3063 -> 1205 bytes .../share/osp/bitmaps/480x800/00_button_rename.png | Bin 1384 -> 0 bytes .../osp/bitmaps/480x800/00_button_rename_ef.png | Bin 3534 -> 0 bytes .../share/osp/bitmaps/480x800/00_button_reveal.png | Bin 1136 -> 3004 bytes .../share/osp/bitmaps/480x800/00_button_right.png | Bin 3010 -> 3004 bytes .../osp/bitmaps/480x800/00_button_right_ef.png | Bin 3380 -> 1254 bytes .../bitmaps/480x800/00_button_seg_f_bg_01.9.png | Bin 1042 -> 0 bytes .../bitmaps/480x800/00_button_seg_f_bg_02.9.png | Bin 984 -> 0 bytes .../bitmaps/480x800/00_button_seg_f_bg_03.9.png | Bin 1026 -> 0 bytes .../bitmaps/480x800/00_button_seg_f_bg_ef_01.9.png | Bin 1153 -> 0 bytes .../bitmaps/480x800/00_button_seg_f_bg_ef_02.9.png | Bin 1092 -> 0 bytes .../bitmaps/480x800/00_button_seg_f_bg_ef_03.9.png | Bin 1169 -> 0 bytes .../share/osp/bitmaps/480x800/00_button_send.png | Bin 1231 -> 0 bytes .../osp/bitmaps/480x800/00_button_warning.png | Bin 1089 -> 0 bytes .../osp/bitmaps/480x800/00_button_warring.png | Bin 1193 -> 0 bytes .../osp/bitmaps/480x800/00_button_warring_ef.png | Bin 2983 -> 0 bytes .../share/osp/bitmaps/480x800/00_button_web.9.png | Bin 1331 -> 0 bytes .../osp/bitmaps/480x800/00_button_web_press.9.png | Bin 1313 -> 0 bytes .../share/osp/bitmaps/480x800/00_category_bg.9.png | Bin 3047 -> 0 bytes ...egory_button.9.png => 00_category_button.#.png} | Bin ..._focus.9.png => 00_category_button_focus.#.png} | Bin .../bitmaps/480x800/00_category_left_button.png | Bin 2940 -> 0 bytes .../480x800/00_category_left_button_arrow.png | Bin 1178 -> 0 bytes .../osp/bitmaps/480x800/00_category_left_gd.png | Bin 2940 -> 0 bytes .../00_category_panel_bg.#.png} | Bin .../osp/bitmaps/480x800/00_category_panel_bg.9.png | Bin 976 -> 0 bytes .../bitmaps/480x800/00_category_panel_bg_ef.9.png | Bin 1044 -> 0 bytes .../bitmaps/480x800/00_category_right_button.png | Bin 2941 -> 0 bytes .../480x800/00_category_right_button_arrow.png | Bin 1206 -> 0 bytes .../osp/bitmaps/480x800/00_category_right_gd.png | Bin 2941 -> 0 bytes .../usr/share/osp/bitmaps/480x800/00_check.png | Bin 3850 -> 0 bytes .../share/osp/bitmaps/480x800/00_check_angle.png | Bin 3710 -> 0 bytes .../usr/share/osp/bitmaps/480x800/00_check_bg.png | Bin 3977 -> 2043 bytes .../share/osp/bitmaps/480x800/00_check_bg_dim.png | Bin 3885 -> 1952 bytes .../osp/bitmaps/480x800/00_check_bg_press.png | Bin 4116 -> 2179 bytes .../osp/bitmaps/480x800/00_check_checking.png | Bin 3094 -> 1233 bytes .../osp/bitmaps/480x800/00_check_checking_bg.png | Bin 3278 -> 0 bytes .../osp/bitmaps/480x800/00_check_checking_dim.png | Bin 3096 -> 1235 bytes .../osp/bitmaps/480x800/00_check_index_bg.png | Bin 2928 -> 0 bytes .../usr/share/osp/bitmaps/480x800/00_circle_bg.png | Bin 3263 -> 1554 bytes .../share/osp/bitmaps/480x800/00_circle_bg_ef.png | Bin 5726 -> 3812 bytes .../osp/bitmaps/480x800/00_circle_bg_ef_dim.png | Bin 5726 -> 3812 bytes .../osp/bitmaps/480x800/00_circle_bg_ef_press.png | Bin 5719 -> 3866 bytes .../bitmaps/480x800/00_color_picker_brightness.png | Bin .../480x800/00_color_picker_brightness_h.png | Bin .../bitmaps/480x800/00_color_picker_btn_bg.9.png | Bin 3168 -> 0 bytes .../bitmaps/480x800/00_color_picker_btn_left.png | Bin 2981 -> 0 bytes .../bitmaps/480x800/00_color_picker_btn_right.png | Bin 2974 -> 0 bytes .../osp/bitmaps/480x800/00_color_picker_color.png | Bin .../bitmaps/480x800/00_color_picker_color_h.png | Bin .../480x800/00_color_picker_custom_color.png | Bin .../480x800/00_color_picker_custom_color_h.png | Bin .../osp/bitmaps/480x800/00_color_picker_focus.png | Bin .../bitmaps/480x800/00_color_picker_saturation.png | Bin .../480x800/00_color_picker_saturation_h.png | Bin .../bitmaps/480x800/00_contacts_button_bg.#.png | Bin 0 -> 1125 bytes .../bitmaps/480x800/00_contacts_button_bg.9.png | Bin 1185 -> 0 bytes .../bitmaps/480x800/00_contacts_button_bg_ef.#.png | Bin 0 -> 1297 bytes .../480x800/00_contacts_button_bg_press_ef.#.png | Bin 0 -> 1270 bytes .../osp/bitmaps/480x800/00_context_popup_bg.9.png | Bin 3188 -> 0 bytes .../bitmaps/480x800/00_context_popup_bg_01.9.png | Bin 3913 -> 0 bytes .../480x800/00_context_popup_bg_effect.9.png | Bin 4174 -> 0 bytes .../480x800/00_context_popup_tail_bottom.png | Bin 2947 -> 0 bytes .../480x800/00_context_popup_tail_bottom_01.png | Bin 2954 -> 0 bytes .../00_context_popup_tail_bottom_effect.png | Bin 3072 -> 0 bytes .../bitmaps/480x800/00_context_popup_tail_left.png | Bin 2966 -> 0 bytes .../480x800/00_context_popup_tail_left_01.png | Bin 2951 -> 0 bytes .../480x800/00_context_popup_tail_left_effect.png | Bin 3112 -> 0 bytes .../480x800/00_context_popup_tail_right.png | Bin 2964 -> 0 bytes .../480x800/00_context_popup_tail_right_01.png | Bin 2965 -> 0 bytes .../480x800/00_context_popup_tail_right_effect.png | Bin 3094 -> 0 bytes .../bitmaps/480x800/00_context_popup_tail_top.png | Bin 2947 -> 0 bytes .../480x800/00_context_popup_tail_top_01.png | Bin 2941 -> 0 bytes .../480x800/00_context_popup_tail_top_effect.png | Bin 3088 -> 0 bytes .../bitmaps/480x800/00_date_picker_center_bg.9.png | Bin 2920 -> 0 bytes .../480x800/00_date_picker_center_bg_effect.9.png | Bin 3070 -> 0 bytes .../00_date_picker_center_bg_press_effect.9.png | Bin 3071 -> 0 bytes .../bitmaps/480x800/00_date_picker_left_bg.9.png | Bin 3110 -> 0 bytes .../480x800/00_date_picker_left_bg_effect.9.png | Bin 3487 -> 0 bytes .../00_date_picker_left_bg_press_effect.9.png | Bin 3500 -> 0 bytes .../bitmaps/480x800/00_date_picker_right_bg.9.png | Bin 3095 -> 0 bytes .../480x800/00_date_picker_right_bg_effect.9.png | Bin 3422 -> 0 bytes .../00_date_picker_right_bg_press_effect.9.png | Bin 3537 -> 0 bytes .../osp/bitmaps/480x800/00_detail_button#5.png | Bin 3227 -> 0 bytes .../share/osp/bitmaps/480x800/00_detail_button.png | Bin 3227 -> 0 bytes .../osp/bitmaps/480x800/00_detail_button_01.png | Bin 3189 -> 0 bytes .../bitmaps/480x800/00_detail_button_01_dim.png | Bin 2709 -> 0 bytes .../bitmaps/480x800/00_detail_button_01_press.png | Bin 3234 -> 0 bytes .../osp/bitmaps/480x800/00_detail_button_dim#1.png | Bin 2702 -> 0 bytes .../osp/bitmaps/480x800/00_detail_button_dim.png | Bin 2702 -> 0 bytes .../bitmaps/480x800/00_detail_button_press#3.png | Bin 3329 -> 0 bytes .../osp/bitmaps/480x800/00_detail_button_press.png | Bin 3329 -> 0 bytes .../osp/bitmaps/480x800/00_dialogue_group_bg.9.png | Bin 2849 -> 0 bytes .../bitmaps/480x800/00_dialogue_group_bg_bar.9.png | Bin 2864 -> 0 bytes .../00_divider_line.#.png} | Bin .../osp/bitmaps/480x800/00_divider_line.9.png | Bin 2827 -> 0 bytes .../00_divider_line_translucent.#.png} | Bin .../osp/bitmaps/480x800/00_edit_field_bg.9.png | Bin 2916 -> 0 bytes .../osp/bitmaps/480x800/00_edit_field_clear.png | Bin 3106 -> 3156 bytes .../00_edit_field_line_round_bg_01.#.png} | Bin .../480x800/00_edit_field_line_squre_bg_01.9.png | Bin 2881 -> 0 bytes .../480x800/00_edit_field_no_line_round_bg.9.png | Bin 2996 -> 0 bytes .../00_edit_field_no_line_square_bg.#.png} | Bin .../00_edit_field_round_bg.#.png} | Bin .../480x800/00_edit_field_round_bg_ef.9.png | Bin 3870 -> 0 bytes .../bitmaps/480x800/00_effect_tab_bounce_left.png | Bin .../480x800/00_effect_tab_bounce_left_h.png | Bin 0 -> 4407 bytes .../bitmaps/480x800/00_effect_tab_bounce_right.png | Bin .../480x800/00_effect_tab_bounce_right_h.png | Bin 0 -> 4369 bytes .../480x800/00_effect_title_tab_bounce_left.png | Bin 0 -> 3915 bytes .../480x800/00_effect_title_tab_bounce_right.png | Bin 0 -> 3855 bytes .../480x800/00_effect_toolbar_tab_bounce_left.png | Bin 0 -> 4482 bytes .../00_effect_toolbar_tab_bounce_left_h.png | Bin 0 -> 4356 bytes .../480x800/00_effect_toolbar_tab_bounce_right.png | Bin 0 -> 4277 bytes .../00_effect_toolbar_tab_bounce_right_h.png | Bin 0 -> 4297 bytes .../bitmaps/480x800/00_fast_scroll_handler.#.png | Bin 0 -> 1618 bytes .../bitmaps/480x800/00_fast_scroll_handler_h.#.png | Bin 0 -> 1562 bytes .../bitmaps/480x800/00_fast_scroll_popup_bg.#.png | Bin 0 -> 2977 bytes .../bitmaps/480x800/00_fast_scroll_popup_bg.9.png | Bin 1087 -> 0 bytes .../480x800/00_fast_scroll_popup_bg_ef.#.png | Bin 0 -> 1535 bytes .../480x800/00_fast_scroll_popup_bg_ef.9.png | Bin 3142 -> 0 bytes .../480x800/00_fast_scroll_rollover_bg.#.png | Bin 0 -> 2848 bytes .../480x800/00_fast_scroll_rollover_bg_focus.#.png | Bin 0 -> 2848 bytes .../480x800/00_fast_scroll_rollover_bg_focus.9.png | Bin 1004 -> 0 bytes .../00_fast_scroll_rollover_bg_line_focus.#.png | Bin 0 -> 2855 bytes .../00_fast_scroll_rollover_bg_line_focus.9.png | Bin 2856 -> 0 bytes .../share/osp/bitmaps/480x800/00_footer_bg.9.png | Bin 1539 -> 0 bytes .../osp/bitmaps/480x800/00_footer_bg_01.9.png | Bin 1311 -> 0 bytes .../osp/bitmaps/480x800/00_footer_icon_close.png | Bin 3469 -> 0 bytes .../bitmaps/480x800/00_footer_icon_close_press.png | Bin 3069 -> 0 bytes .../osp/bitmaps/480x800/00_footer_icon_more.png | Bin 3119 -> 0 bytes .../bitmaps/480x800/00_footer_icon_more_press.png | Bin 1087 -> 0 bytes .../osp/bitmaps/480x800/00_grid_select_check.png | Bin 3862 -> 3421 bytes .../bitmaps/480x800/00_grid_select_check_bg.png | Bin 4520 -> 3962 bytes .../480x800/00_grid_select_check_bg_press.png | Bin 5131 -> 4244 bytes .../osp/bitmaps/480x800/00_groupedlist_bg.9.png | Bin 2912 -> 0 bytes .../bitmaps/480x800/00_groupedlist_bg_focus.#.png | Bin 0 -> 3003 bytes .../bitmaps/480x800/00_groupedlist_bg_focus.9.png | Bin 3041 -> 0 bytes .../osp/bitmaps/480x800/00_groupedlist_bg_p.9.png | Bin 3446 -> 0 bytes ...g_press.9.png => 00_groupedlist_bg_press.#.png} | Bin .../bitmaps/480x800/00_groupedlist_bottom_bg.9.png | Bin 2880 -> 0 bytes .../480x800/00_groupedlist_bottom_bg_focus.#.png | Bin 0 -> 3135 bytes .../480x800/00_groupedlist_bottom_bg_focus.9.png | Bin 3228 -> 0 bytes ....9.png => 00_groupedlist_bottom_bg_press.#.png} | Bin .../bitmaps/480x800/00_groupedlist_center_bg.9.png | Bin 2849 -> 0 bytes .../480x800/00_groupedlist_center_bg_focus.#.png | Bin 0 -> 3000 bytes .../480x800/00_groupedlist_center_bg_focus.9.png | Bin 3034 -> 0 bytes ....9.png => 00_groupedlist_center_bg_press.#.png} | Bin .../osp/bitmaps/480x800/00_groupedlist_h_bg.9.png | Bin 3430 -> 0 bytes .../480x800/00_groupedlist_input_outline_h.9.png | Bin 3716 -> 0 bytes .../bitmaps/480x800/00_groupedlist_normal_bg.9.png | Bin 3437 -> 0 bytes .../bitmaps/480x800/00_groupedlist_top_bg.9.png | Bin 2888 -> 0 bytes .../480x800/00_groupedlist_top_bg_focus.#.png | Bin 0 -> 1091 bytes .../480x800/00_groupedlist_top_bg_focus.9.png | Bin 3207 -> 0 bytes ...ess.9.png => 00_groupedlist_top_bg_press.#.png} | Bin .../share/osp/bitmaps/480x800/00_header_bg.9.png | Bin 3068 -> 0 bytes .../osp/bitmaps/480x800/00_header_bg_01.9.png | Bin 3178 -> 0 bytes .../osp/bitmaps/480x800/00_header_bg_effect.9.png | Bin 3134 -> 0 bytes .../osp/bitmaps/480x800/00_header_button_bg.9.png | Bin 3214 -> 0 bytes .../480x800/00_header_button_bg_effect.9.png | Bin 3758 -> 0 bytes .../480x800/00_header_button_bg_focus.9.png | Bin 3298 -> 0 bytes .../480x800/00_header_button_bg_press_effect.9.png | Bin 3902 -> 0 bytes .../bitmaps/480x800/00_header_title_handler.png | Bin 1146 -> 0 bytes .../usr/share/osp/bitmaps/480x800/00_icon_Back.png | Bin 3155 -> 3214 bytes .../share/osp/bitmaps/480x800/00_icon_Back_ef.png | Bin 3668 -> 3761 bytes .../osp/bitmaps/480x800/00_icon_Back_ef_02.png | Bin 3614 -> 3779 bytes .../osp/bitmaps/480x800/00_icon_Back_trans_ef.png | Bin 3201 -> 3267 bytes .../usr/share/osp/bitmaps/480x800/00_icon_Hide.png | Bin 0 -> 3281 bytes .../share/osp/bitmaps/480x800/00_icon_Hide_ef.png | Bin 0 -> 3885 bytes .../osp/bitmaps/480x800/00_icon_Hide_ef_02.png | Bin 0 -> 3715 bytes .../osp/bitmaps/480x800/00_icon_Hide_trans_ef.png | Bin 0 -> 3251 bytes .../usr/share/osp/bitmaps/480x800/00_icon_back.png | Bin 1256 -> 0 bytes .../usr/share/osp/bitmaps/480x800/00_icon_edit.png | Bin 3577 -> 0 bytes .../share/osp/bitmaps/480x800/00_icon_edit_ef.png | Bin 4378 -> 0 bytes .../usr/share/osp/bitmaps/480x800/00_icon_jump.png | Bin 2965 -> 2991 bytes .../share/osp/bitmaps/480x800/00_icon_jump_ef.png | Bin 3290 -> 1376 bytes .../osp/bitmaps/480x800/00_icon_jump_left.png | Bin 3003 -> 3004 bytes .../osp/bitmaps/480x800/00_icon_jump_left_ef.png | Bin 3234 -> 1343 bytes .../usr/share/osp/bitmaps/480x800/00_icon_more.png | Bin .../share/osp/bitmaps/480x800/00_icon_more_ef.png | Bin .../usr/share/osp/bitmaps/480x800/00_icon_plus.png | Bin 3141 -> 0 bytes .../share/osp/bitmaps/480x800/00_icon_plus_ef.png | Bin 3565 -> 0 bytes .../share/osp/bitmaps/480x800/00_iconlist_bg.9.png | Bin 473 -> 0 bytes .../00_indexlist_bg.#.png} | Bin .../00_indexlist_bg_ef.#.png} | Bin .../osp/bitmaps/480x800/00_label_01_normal.9.png | Bin 281 -> 0 bytes .../osp/bitmaps/480x800/00_list_group_bg.#.png | Bin 0 -> 1162 bytes .../osp/bitmaps/480x800/00_list_group_bg.9.png | Bin 353 -> 0 bytes .../bitmaps/480x800/00_list_group_bg_bottom.#.png | Bin 0 -> 2909 bytes .../bitmaps/480x800/00_list_group_bg_bottom.9.png | Bin 302 -> 0 bytes .../480x800/00_list_group_bg_bottom_ef.#.png | Bin 0 -> 3085 bytes .../480x800/00_list_group_bg_bottom_ef.9.png | Bin 490 -> 0 bytes .../bitmaps/480x800/00_list_group_bg_center.#.png | Bin 0 -> 2860 bytes .../bitmaps/480x800/00_list_group_bg_center.9.png | Bin 232 -> 0 bytes .../480x800/00_list_group_bg_center_ef.#.png | Bin 0 -> 2888 bytes .../480x800/00_list_group_bg_center_ef.9.png | Bin 283 -> 0 bytes .../osp/bitmaps/480x800/00_list_group_bg_ef.#.png | Bin 0 -> 1417 bytes .../osp/bitmaps/480x800/00_list_group_bg_ef.9.png | Bin 635 -> 0 bytes .../osp/bitmaps/480x800/00_list_group_bg_top.#.png | Bin 0 -> 2917 bytes .../osp/bitmaps/480x800/00_list_group_bg_top.9.png | Bin 310 -> 0 bytes .../bitmaps/480x800/00_list_group_bg_top_ef.#.png | Bin 0 -> 3112 bytes .../bitmaps/480x800/00_list_group_bg_top_ef.9.png | Bin 490 -> 0 bytes .../osp/bitmaps/480x800/00_list_process_01.png | Bin .../osp/bitmaps/480x800/00_list_process_02.png | Bin .../osp/bitmaps/480x800/00_list_process_03.png | Bin .../osp/bitmaps/480x800/00_list_process_04.png | Bin .../osp/bitmaps/480x800/00_list_process_05.png | Bin .../osp/bitmaps/480x800/00_list_process_06.png | Bin .../osp/bitmaps/480x800/00_list_process_07.png | Bin .../osp/bitmaps/480x800/00_list_process_08.png | Bin .../osp/bitmaps/480x800/00_list_process_09.png | Bin .../osp/bitmaps/480x800/00_list_process_10.png | Bin .../osp/bitmaps/480x800/00_list_process_11.png | Bin .../osp/bitmaps/480x800/00_list_process_12.png | Bin .../osp/bitmaps/480x800/00_list_process_13.png | Bin .../osp/bitmaps/480x800/00_list_process_14.png | Bin .../osp/bitmaps/480x800/00_list_process_15.png | Bin .../osp/bitmaps/480x800/00_list_process_16.png | Bin .../osp/bitmaps/480x800/00_list_process_17.png | Bin .../osp/bitmaps/480x800/00_list_process_18.png | Bin .../osp/bitmaps/480x800/00_list_process_19.png | Bin .../osp/bitmaps/480x800/00_list_process_20.png | Bin .../osp/bitmaps/480x800/00_list_process_21.png | Bin .../osp/bitmaps/480x800/00_list_process_22.png | Bin .../osp/bitmaps/480x800/00_list_process_23.png | Bin .../osp/bitmaps/480x800/00_list_process_24.png | Bin .../osp/bitmaps/480x800/00_list_process_25.png | Bin .../osp/bitmaps/480x800/00_list_process_26.png | Bin .../osp/bitmaps/480x800/00_list_process_27.png | Bin .../osp/bitmaps/480x800/00_list_process_28.png | Bin .../osp/bitmaps/480x800/00_list_process_29.png | Bin .../osp/bitmaps/480x800/00_list_process_30.png | Bin .../osp/bitmaps/480x800/00_list_progress_bar.9.png | Bin 968 -> 0 bytes .../osp/bitmaps/480x800/00_list_progress_bg.9.png | Bin 978 -> 0 bytes .../bitmaps/480x800/00_list_slider_icon_bg.9.png | Bin 3168 -> 0 bytes .../480x800/00_list_slider_icon_bg_effect.9.png | Bin 3814 -> 0 bytes .../480x800/00_list_slider_icon_bg_effect_01.9.png | Bin 4063 -> 0 bytes .../bitmaps/480x800/00_on_button_controller#5.png | Bin 5727 -> 0 bytes .../00_option_panel_contextual_popup_arrow.png | Bin 1056 -> 2945 bytes .../bitmaps/480x800/00_option_panel_handle_bg.png | Bin 3247 -> 1224 bytes .../480x800/00_option_panel_handle_bg_ef.png | Bin 3401 -> 1554 bytes .../480x800/00_option_panel_handle_bg_ef_press.png | Bin 3377 -> 1427 bytes .../480x800/00_option_panel_handle_bg_p.png | Bin 1204 -> 0 bytes .../480x800/00_option_panel_handle_bg_p_ef.png | Bin 1360 -> 0 bytes .../480x800/00_option_panel_handle_bg_press.png | Bin 3257 -> 1210 bytes .../480x800/00_option_panel_handle_more.png | Bin 0 -> 3095 bytes .../480x800/00_option_panel_handle_more_press.png | Bin 0 -> 1232 bytes .../osp/bitmaps/480x800/00_option_tray_tail_bg.png | Bin 1023 -> 0 bytes .../bitmaps/480x800/00_overscrolling_bottom.#.png | Bin 0 -> 2843 bytes .../bitmaps/480x800/00_overscrolling_bottom.9.png | Bin 2832 -> 0 bytes .../bitmaps/480x800/00_overscrolling_left.#.png | Bin 0 -> 2843 bytes .../bitmaps/480x800/00_overscrolling_left.9.png | Bin 2835 -> 0 bytes .../bitmaps/480x800/00_overscrolling_right.#.png | Bin 0 -> 2845 bytes .../bitmaps/480x800/00_overscrolling_right.9.png | Bin 2835 -> 0 bytes .../osp/bitmaps/480x800/00_overscrolling_top.#.png | Bin 0 -> 2849 bytes .../osp/bitmaps/480x800/00_overscrolling_top.9.png | Bin 2836 -> 0 bytes .../00_panel_bg.#.png} | Bin .../share/osp/bitmaps/480x800/00_panel_bg.9.png | Bin 1005 -> 0 bytes .../osp/bitmaps/480x800/00_panel_handle_arrow.png | Bin 1103 -> 2970 bytes .../osp/bitmaps/480x800/00_panel_handle_bg.#.png | Bin 0 -> 1456 bytes .../osp/bitmaps/480x800/00_panel_handle_bg.9.png | Bin 3556 -> 0 bytes .../bitmaps/480x800/00_panel_handle_bg_ef.#.png | Bin 0 -> 1960 bytes .../bitmaps/480x800/00_panel_handle_bg_ef.9.png | Bin 4705 -> 0 bytes .../480x800/00_panel_handle_bg_ef_press.#.png | Bin 0 -> 2188 bytes .../480x800/00_panel_handle_bg_ef_press.9.png | Bin 4220 -> 0 bytes .../bitmaps/480x800/00_panel_handle_bg_p_ef.9.png | Bin 1942 -> 0 bytes ...press_bg.9.png => 00_panel_list_press_bg.#.png} | Bin ...bg_ef.9.png => 00_panel_list_press_bg_ef.#.png} | Bin .../share/osp/bitmaps/480x800/00_popup_bg.#.png | Bin 0 -> 1316 bytes .../share/osp/bitmaps/480x800/00_popup_bg.9.png | Bin 1082 -> 0 bytes .../share/osp/bitmaps/480x800/00_popup_bg_ef.#.png | Bin 0 -> 2444 bytes .../share/osp/bitmaps/480x800/00_popup_bg_ef.9.png | Bin 1628 -> 0 bytes .../osp/bitmaps/480x800/00_popup_bg_effect.9.png | Bin 2730 -> 0 bytes .../osp/bitmaps/480x800/00_popup_bottom_bg.9.png | Bin 1004 -> 0 bytes ...up_bubble_bg.9.png => 00_popup_bubble_bg.#.png} | Bin .../00_popup_bubble_bg_ef.#.png} | Bin .../480x800/00_popup_bubble_tail_bottom_bg.png | Bin 1108 -> 0 bytes .../480x800/00_popup_bubble_tail_left_bg.png | Bin 1095 -> 0 bytes .../480x800/00_popup_bubble_tail_right_bg.png | Bin 1089 -> 0 bytes .../480x800/00_popup_bubble_tail_top_bg.png | Bin 1098 -> 0 bytes .../osp/bitmaps/480x800/00_popup_title_bg.9.png | Bin 1010 -> 0 bytes .../bitmaps/480x800/00_processing_ani_52x52_00.png | Bin 4745 -> 0 bytes .../bitmaps/480x800/00_processing_ani_52x52_01.png | Bin 4723 -> 0 bytes .../bitmaps/480x800/00_processing_ani_52x52_02.png | Bin 4750 -> 0 bytes .../bitmaps/480x800/00_processing_ani_52x52_03.png | Bin 4749 -> 0 bytes .../bitmaps/480x800/00_processing_ani_52x52_04.png | Bin 4761 -> 0 bytes .../bitmaps/480x800/00_processing_ani_52x52_05.png | Bin 4756 -> 0 bytes .../bitmaps/480x800/00_processing_ani_52x52_06.png | Bin 4763 -> 0 bytes .../bitmaps/480x800/00_processing_ani_52x52_07.png | Bin 4746 -> 0 bytes .../bitmaps/480x800/00_processing_ani_52x52_08.png | Bin 4727 -> 0 bytes .../bitmaps/480x800/00_processing_ani_52x52_09.png | Bin 4749 -> 0 bytes .../share/osp/bitmaps/480x800/00_progress.9.png | Bin 2829 -> 0 bytes .../osp/bitmaps/480x800/00_progress_bar.9.png | Bin 1172 -> 0 bytes .../osp/bitmaps/480x800/00_progress_bar_ef.#.png | Bin 0 -> 1435 bytes .../osp/bitmaps/480x800/00_progress_bar_ef.9.png | Bin 1409 -> 0 bytes .../share/osp/bitmaps/480x800/00_progress_bg.#.png | Bin 0 -> 1281 bytes .../share/osp/bitmaps/480x800/00_progress_bg.9.png | Bin 1310 -> 0 bytes .../{00_progress_ef.9.png => 00_progress_ef.#.png} | Bin .../osp/bitmaps/480x800/00_progress_ef_bg.#.png | Bin 0 -> 3758 bytes .../osp/bitmaps/480x800/00_progress_ef_bg.9.png | Bin 1869 -> 0 bytes .../bitmaps/480x800/00_reorder_group_list_bg.9.png | Bin 2922 -> 0 bytes .../share/osp/bitmaps/480x800/00_scroll_bar.9.png | Bin 2937 -> 0 bytes .../osp/bitmaps/480x800/00_scroll_bar_ef.9.png | Bin 3023 -> 0 bytes .../osp/bitmaps/480x800/00_scroll_bar_h.#.png | Bin 0 -> 2940 bytes .../osp/bitmaps/480x800/00_scroll_bar_h_ef.#.png | Bin 0 -> 2974 bytes .../bitmaps/480x800/00_scroll_bar_handler_bg.9.png | Bin 2949 -> 0 bytes .../480x800/00_scroll_bar_handler_bg_ef.9.png | Bin 3192 -> 0 bytes .../bitmaps/480x800/00_scroll_bar_handler_h.png | Bin 2843 -> 0 bytes .../bitmaps/480x800/00_scroll_bar_handler_v.png | Bin 2826 -> 0 bytes .../osp/bitmaps/480x800/00_scroll_bar_v.#.png | Bin 0 -> 2948 bytes .../osp/bitmaps/480x800/00_scroll_bar_v_ef.#.png | Bin 0 -> 2980 bytes .../osp/bitmaps/480x800/00_scroll_icon_jump.png | Bin 1179 -> 0 bytes .../bitmaps/480x800/00_scroll_icon_jump_left.png | Bin 3050 -> 0 bytes .../480x800/00_search_clear_icon_normal.png | Bin 1784 -> 0 bytes .../bitmaps/480x800/00_search_clear_icon_press.png | Bin 3026 -> 0 bytes .../bitmaps/480x800/00_search_edit_field_bg.#.png | Bin 0 -> 1104 bytes .../bitmaps/480x800/00_search_edit_field_bg.9.png | Bin 3028 -> 0 bytes .../480x800/00_search_edit_field_bg_ef.#.png | Bin 0 -> 1400 bytes .../480x800/00_search_edit_field_bg_ef.9.png | Bin 3560 -> 0 bytes .../share/osp/bitmaps/480x800/00_search_icon.png | Bin 3206 -> 3219 bytes .../osp/bitmaps/480x800/00_search_icon_ef.png | Bin 3225 -> 1343 bytes .../usr/share/osp/bitmaps/480x800/00_seg_line.png | Bin 2804 -> 0 bytes .../share/osp/bitmaps/480x800/00_seg_line_tr.png | Bin 2804 -> 0 bytes .../share/osp/bitmaps/480x800/00_slider_bg.9.png | Bin 3222 -> 0 bytes .../osp/bitmaps/480x800/00_slider_bg_effect.9.png | Bin 1732 -> 0 bytes .../osp/bitmaps/480x800/00_slider_handle.9.png | Bin 1177 -> 0 bytes .../share/osp/bitmaps/480x800/00_slider_handle.png | Bin 3361 -> 3288 bytes .../osp/bitmaps/480x800/00_slider_handle_dim.png | Bin 1134 -> 0 bytes .../osp/bitmaps/480x800/00_slider_handle_ef.png | Bin 4918 -> 2884 bytes .../bitmaps/480x800/00_slider_handle_ef_dim.png | Bin 4926 -> 2917 bytes .../bitmaps/480x800/00_slider_handle_ef_press.png | Bin 4475 -> 2540 bytes .../osp/bitmaps/480x800/00_slider_handle_press.png | Bin 1190 -> 0 bytes .../osp/bitmaps/480x800/00_slider_popup_bg.png | Bin 3155 -> 3152 bytes .../osp/bitmaps/480x800/00_slider_popup_bg_ef.png | Bin 3170 -> 1320 bytes .../bitmaps/480x800/00_slider_popup_bottom_bg.png | Bin .../480x800/00_slider_popup_bottom_bg_ef.png | Bin .../osp/bitmaps/480x800/00_softkey_icon_add.png | Bin 2996 -> 2970 bytes .../osp/bitmaps/480x800/00_softkey_icon_zoom.png | Bin 3311 -> 3379 bytes .../osp/bitmaps/480x800/00_softkey_left_bg.png | Bin 3021 -> 1155 bytes .../osp/bitmaps/480x800/00_softkey_left_bg_ef.png | Bin 3143 -> 1267 bytes .../480x800/00_softkey_left_bg_ef_press.png | Bin 3194 -> 1393 bytes .../bitmaps/480x800/00_softkey_left_bg_p_ef.png | Bin 1436 -> 0 bytes .../bitmaps/480x800/00_softkey_left_text_bg.png | Bin 3050 -> 1174 bytes .../bitmaps/480x800/00_softkey_left_text_bg_ef.png | Bin 3154 -> 1319 bytes .../480x800/00_softkey_left_text_bg_ef_press.png | Bin 3252 -> 1515 bytes .../480x800/00_softkey_left_text_bg_p_ef.png | Bin 1491 -> 0 bytes .../osp/bitmaps/480x800/00_softkey_right_bg.png | Bin 3017 -> 1150 bytes .../osp/bitmaps/480x800/00_softkey_right_bg_ef.png | Bin 3298 -> 1504 bytes .../480x800/00_softkey_right_bg_ef_press.png | Bin 3112 -> 1349 bytes .../bitmaps/480x800/00_softkey_right_bg_p_ef.png | Bin 1319 -> 0 bytes .../bitmaps/480x800/00_softkey_right_text_bg.png | Bin 3046 -> 1168 bytes .../480x800/00_softkey_right_text_bg_ef.png | Bin 3348 -> 1549 bytes .../480x800/00_softkey_right_text_bg_ef_press.png | Bin 3173 -> 1483 bytes .../480x800/00_softkey_right_text_bg_p_ef.png | Bin 1446 -> 0 bytes .../00_splite_handler_bg.#.png} | Bin .../00_splite_handler_bg_ef_h.#.png} | Bin .../00_splite_handler_bg_ef_v.#.png} | Bin .../osp/bitmaps/480x800/00_splite_handler_h.png | Bin .../osp/bitmaps/480x800/00_splite_handler_v.png | Bin .../osp/bitmaps/480x800/00_system_control_bg.#.png | Bin 0 -> 3141 bytes .../00_tab_bg.#.png} | Bin .../share/osp/bitmaps/480x800/00_tab_focus.#.png | Bin 0 -> 2814 bytes .../share/osp/bitmaps/480x800/00_tab_focus.9.png | Bin 954 -> 0 bytes .../osp/bitmaps/480x800/00_tab_icon_more_01.png | Bin 1146 -> 0 bytes .../osp/bitmaps/480x800/00_tab_icon_more_02.png | Bin 1175 -> 0 bytes .../share/osp/bitmaps/480x800/00_tab_move_bg.9.png | Bin 2935 -> 0 bytes .../osp/bitmaps/480x800/00_tab_move_bg_ef.9.png | Bin 3186 -> 0 bytes .../osp/bitmaps/480x800/00_tab_press_ef.#.png | Bin 0 -> 2853 bytes .../osp/bitmaps/480x800/00_tab_press_ef.9.png | Bin 2849 -> 0 bytes .../00_thumbs_bg_focus.#.png} | Bin .../00_thumbs_line_bg.#.png} | Bin .../osp/bitmaps/480x800/00_thumbs_loading_bg.9.png | Bin 2861 -> 0 bytes .../osp/bitmaps/480x800/00_tick_box_normal.png | Bin 2946 -> 0 bytes .../osp/bitmaps/480x800/00_time_picker_btn.9.png | Bin 3214 -> 0 bytes .../480x800/00_time_picker_btn_effect.9.png | Bin 3758 -> 0 bytes .../480x800/00_time_picker_btn_press_effect.9.png | Bin 3902 -> 0 bytes ...pad_bg.9.png => 00_time_picker_keypad_bg.#.png} | Bin ...9.png => 00_time_picker_keypad_button_bg.#.png} | Bin ...ng => 00_time_picker_keypad_button_bg_ef.#.png} | Bin .../00_timepicker_number_bg.#.png} | Bin .../osp/bitmaps/480x800/00_timepicker_tail.png | Bin .../osp/bitmaps/480x800/00_timepicker_tail_01.png | Bin .../{00_title_bg.9.png => 00_title_bg.#.png} | Bin .../share/osp/bitmaps/480x800/00_title_bg_ef.9.png | Bin 2897 -> 0 bytes .../osp/bitmaps/480x800/00_title_btn_bg.9.png | Bin 2895 -> 0 bytes .../bitmaps/480x800/00_title_btn_bg_press.9.png | Bin 2895 -> 0 bytes .../bitmaps/480x800/00_title_button_bg_press.9.png | Bin 2904 -> 0 bytes .../osp/bitmaps/480x800/00_title_icon_more.png | Bin 3160 -> 0 bytes .../share/osp/bitmaps/480x800/00_title_line.png | Bin 935 -> 0 bytes .../{00_toolbar_bg.9.png => 00_toolbar_bg.#.png} | Bin .../osp/bitmaps/480x800/00_toolbar_btn_bg.9.png | Bin 1077 -> 0 bytes .../osp/bitmaps/480x800/00_toolbar_btn_bg_ef.9.png | Bin 1275 -> 0 bytes .../bitmaps/480x800/00_toolbar_btn_bg_p_ef.9.png | Bin 1287 -> 0 bytes .../osp/bitmaps/480x800/00_toolbar_button.#.png | Bin 0 -> 3632 bytes .../osp/bitmaps/480x800/00_toolbar_button.9.png | Bin 5680 -> 0 bytes .../osp/bitmaps/480x800/00_toolbar_button_bg.#.png | Bin 0 -> 1599 bytes .../osp/bitmaps/480x800/00_toolbar_button_bg.9.png | Bin 1553 -> 0 bytes .../480x800/00_toolbar_button_bg_center.9.png | Bin 2856 -> 0 bytes .../480x800/00_toolbar_button_bg_left.9.png | Bin 3372 -> 0 bytes .../480x800/00_toolbar_button_bg_right.9.png | Bin 3353 -> 0 bytes .../480x800/00_toolbar_button_center_ef.9.png | Bin 2995 -> 0 bytes .../00_toolbar_button_center_press_ef.9.png | Bin 3003 -> 0 bytes .../osp/bitmaps/480x800/00_toolbar_button_ef.#.png | Bin 0 -> 4064 bytes .../osp/bitmaps/480x800/00_toolbar_button_ef.9.png | Bin 3865 -> 0 bytes .../480x800/00_toolbar_button_ef_press.#.png | Bin 0 -> 4200 bytes .../480x800/00_toolbar_button_ef_press.9.png | Bin 3758 -> 0 bytes .../480x800/00_toolbar_button_left_ef.9.png | Bin 5708 -> 0 bytes .../480x800/00_toolbar_button_left_ef_press.9.png | Bin 5846 -> 0 bytes .../bitmaps/480x800/00_toolbar_button_press.#.png | Bin 0 -> 3984 bytes .../bitmaps/480x800/00_toolbar_button_press.9.png | Bin 5988 -> 0 bytes .../480x800/00_toolbar_button_right_ef.9.png | Bin 5778 -> 0 bytes .../480x800/00_toolbar_button_right_press_ef.9.png | Bin 5913 -> 0 bytes .../share/osp/bitmaps/480x800/00_toolbar_line.png | Bin 936 -> 0 bytes .../osp/bitmaps/480x800/00_toolbar_line_01.png | Bin 946 -> 0 bytes ..._toolbar_press.9.png => 00_toolbar_press.#.png} | Bin .../480x800/00_toolbar_trans_button_center.9.png | Bin 2930 -> 0 bytes .../00_toolbar_trans_button_center_press.9.png | Bin 2973 -> 0 bytes .../480x800/00_toolbar_trans_button_left.9.png | Bin 5864 -> 0 bytes .../00_toolbar_trans_button_left_press.9.png | Bin 6144 -> 0 bytes .../480x800/00_toolbar_trans_button_right.9.png | Bin 5992 -> 0 bytes .../00_toolbar_trans_button_right_press.9.png | Bin 6271 -> 0 bytes .../osp/bitmaps/480x800/00_transparent_bg.9.png | Bin 198 -> 0 bytes .../bitmaps/480x800/00_value_progress_bar.9.png | Bin 2962 -> 0 bytes .../480x800/00_value_progress_bar_effect.9.png | Bin 2982 -> 0 bytes .../osp/bitmaps/480x800/00_value_progress_bg.9.png | Bin 2956 -> 0 bytes .../480x800/00_value_progress_bg_effect.9.png | Bin 2933 -> 0 bytes .../480x800/00_winset_Back_btn_normal.9.png | Bin 2963 -> 0 bytes .../bitmaps/480x800/00_winset_Back_btn_press.9.png | Bin 2973 -> 0 bytes .../osp/bitmaps/480x800/00_winset_badge.9.png | Bin 1708 -> 0 bytes .../480x800/00_winset_control_tabbar_bg.9.png | Bin 104 -> 0 bytes .../480x800/00_winset_control_toolbar_bg.9.png | Bin 2819 -> 0 bytes .../bitmaps/480x800/00_winset_divider_line.9.png | Bin 2852 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_01.png | Bin 1791 -> 0 bytes .../480x800/00_winset_list_process_01_32x32.png | Bin 3449 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_02.png | Bin 1785 -> 0 bytes .../480x800/00_winset_list_process_02_32x32.png | Bin 3418 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_03.png | Bin 1763 -> 0 bytes .../480x800/00_winset_list_process_03_32x32.png | Bin 3373 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_04.png | Bin 1823 -> 0 bytes .../480x800/00_winset_list_process_04_32x32.png | Bin 3446 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_05.png | Bin 1802 -> 0 bytes .../480x800/00_winset_list_process_05_32x32.png | Bin 3467 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_06.png | Bin 1817 -> 0 bytes .../480x800/00_winset_list_process_06_32x32.png | Bin 3476 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_07.png | Bin 1795 -> 0 bytes .../480x800/00_winset_list_process_07_32x32.png | Bin 3460 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_08.png | Bin 1851 -> 0 bytes .../480x800/00_winset_list_process_08_32x32.png | Bin 3475 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_09.png | Bin 1826 -> 0 bytes .../480x800/00_winset_list_process_09_32x32.png | Bin 3453 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_10.png | Bin 1818 -> 0 bytes .../480x800/00_winset_list_process_10_32x32.png | Bin 3437 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_11.png | Bin 1770 -> 0 bytes .../480x800/00_winset_list_process_11_32x32.png | Bin 3440 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_12.png | Bin 1799 -> 0 bytes .../480x800/00_winset_list_process_12_32x32.png | Bin 3456 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_13.png | Bin 1831 -> 0 bytes .../480x800/00_winset_list_process_13_32x32.png | Bin 3472 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_14.png | Bin 1819 -> 0 bytes .../480x800/00_winset_list_process_14_32x32.png | Bin 3453 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_15.png | Bin 1845 -> 0 bytes .../480x800/00_winset_list_process_15_32x32.png | Bin 3458 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_16.png | Bin 1793 -> 0 bytes .../480x800/00_winset_list_process_16_32x32.png | Bin 3441 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_17.png | Bin 1776 -> 0 bytes .../480x800/00_winset_list_process_17_32x32.png | Bin 3412 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_18.png | Bin 1738 -> 0 bytes .../480x800/00_winset_list_process_18_32x32.png | Bin 3375 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_19.png | Bin 1815 -> 0 bytes .../480x800/00_winset_list_process_19_32x32.png | Bin 3451 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_20.png | Bin 1837 -> 0 bytes .../480x800/00_winset_list_process_20_32x32.png | Bin 3469 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_21.png | Bin 1786 -> 0 bytes .../480x800/00_winset_list_process_21_32x32.png | Bin 3459 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_22.png | Bin 1767 -> 0 bytes .../480x800/00_winset_list_process_22_32x32.png | Bin 3452 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_23.png | Bin 1832 -> 0 bytes .../480x800/00_winset_list_process_23_32x32.png | Bin 3451 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_24.png | Bin 1789 -> 0 bytes .../480x800/00_winset_list_process_24_32x32.png | Bin 3444 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_25.png | Bin 1755 -> 0 bytes .../480x800/00_winset_list_process_25_32x32.png | Bin 3423 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_26.png | Bin 1737 -> 0 bytes .../480x800/00_winset_list_process_26_32x32.png | Bin 3423 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_27.png | Bin 1779 -> 0 bytes .../480x800/00_winset_list_process_27_32x32.png | Bin 3447 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_28.png | Bin 1818 -> 0 bytes .../480x800/00_winset_list_process_28_32x32.png | Bin 3452 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_29.png | Bin 1819 -> 0 bytes .../480x800/00_winset_list_process_29_32x32.png | Bin 3450 -> 0 bytes .../bitmaps/480x800/00_winset_list_process_30.png | Bin 1823 -> 0 bytes .../480x800/00_winset_list_process_30_32x32.png | Bin 3460 -> 0 bytes .../osp/bitmaps/480x800/00_winset_thumbs_bg.9.png | Bin 2914 -> 0 bytes .../osp/bitmaps/480x800/00_winset_title_bg.9.png | Bin 95 -> 0 bytes .../480x800/04_textinput_qwerty_button.9.png | Bin 3439 -> 0 bytes .../480x800/04_textinput_qwerty_button_01.9.png | Bin 3420 -> 0 bytes .../480x800/04_textinput_qwerty_button_press.9.png | Bin 1718 -> 0 bytes .../share/osp/bitmaps/480x800/Off_Background#5.png | Bin 4610 -> 0 bytes .../share/osp/bitmaps/480x800/On_Background#5.png | Bin 4465 -> 0 bytes .../TTS_focus.9.png => 480x800/TTS_focus.#.png} | Bin .../TTS_popup_bg.#.png} | Bin .../bitmaps/480x800/black/00_btn_circle_bg_ef.png | Bin 3839 -> 0 bytes .../bitmaps/480x800/black/00_button_01_bg_ef.9.png | Bin 3078 -> 0 bytes .../480x800/black/00_button_edit_bg_ef.9.png | Bin 3014 -> 0 bytes .../480x800/black/00_button_seg_bg_ef.9.png | Bin 3125 -> 0 bytes .../480x800/black/00_button_seg_f_bg_ef_01.9.png | Bin 3034 -> 0 bytes .../480x800/black/00_button_seg_f_bg_ef_02.9.png | Bin 2886 -> 0 bytes .../480x800/black/00_button_seg_f_bg_ef_03.9.png | Bin 2994 -> 0 bytes .../bitmaps/480x800/black/00_color_picker_bg.9.png | Bin 2870 -> 0 bytes .../480x800/black/00_dialogue_group_bg_line.9.png | Bin 2891 -> 0 bytes .../480x800/black/00_edit_field_bg_ef.9.png | Bin 3071 -> 0 bytes .../480x800/black/00_groupedlist_bg_01.9.png | Bin 3000 -> 0 bytes .../black/00_groupedlist_bottom_bg_01.9.png | Bin 2933 -> 0 bytes .../black/00_groupedlist_center_bg_01.9.png | Bin 2858 -> 0 bytes .../480x800/black/00_groupedlist_top_bg_01.9.png | Bin 2946 -> 0 bytes .../bitmaps/480x800/black/00_header_process_01.png | Bin 0 -> 1442 bytes .../bitmaps/480x800/black/00_header_process_02.png | Bin 0 -> 1433 bytes .../bitmaps/480x800/black/00_header_process_03.png | Bin 0 -> 1402 bytes .../bitmaps/480x800/black/00_header_process_04.png | Bin 0 -> 1421 bytes .../bitmaps/480x800/black/00_header_process_05.png | Bin 0 -> 1441 bytes .../bitmaps/480x800/black/00_header_process_06.png | Bin 0 -> 1442 bytes .../bitmaps/480x800/black/00_header_process_07.png | Bin 0 -> 1427 bytes .../bitmaps/480x800/black/00_header_process_08.png | Bin 0 -> 1447 bytes .../bitmaps/480x800/black/00_header_process_09.png | Bin 0 -> 1447 bytes .../bitmaps/480x800/black/00_header_process_10.png | Bin 0 -> 1427 bytes .../bitmaps/480x800/black/00_header_process_11.png | Bin 0 -> 1421 bytes .../bitmaps/480x800/black/00_header_process_12.png | Bin 0 -> 1431 bytes .../bitmaps/480x800/black/00_header_process_13.png | Bin 0 -> 1443 bytes .../bitmaps/480x800/black/00_header_process_14.png | Bin 0 -> 1436 bytes .../bitmaps/480x800/black/00_header_process_15.png | Bin 0 -> 1445 bytes .../bitmaps/480x800/black/00_header_process_16.png | Bin 0 -> 1430 bytes .../bitmaps/480x800/black/00_header_process_17.png | Bin 0 -> 1419 bytes .../bitmaps/480x800/black/00_header_process_18.png | Bin 0 -> 1400 bytes .../bitmaps/480x800/black/00_header_process_19.png | Bin 0 -> 1419 bytes .../bitmaps/480x800/black/00_header_process_20.png | Bin 0 -> 1444 bytes .../bitmaps/480x800/black/00_header_process_21.png | Bin 0 -> 1425 bytes .../bitmaps/480x800/black/00_header_process_22.png | Bin 0 -> 1420 bytes .../bitmaps/480x800/black/00_header_process_23.png | Bin 0 -> 1435 bytes .../bitmaps/480x800/black/00_header_process_24.png | Bin 0 -> 1434 bytes .../bitmaps/480x800/black/00_header_process_25.png | Bin 0 -> 1416 bytes .../bitmaps/480x800/black/00_header_process_26.png | Bin 0 -> 1403 bytes .../bitmaps/480x800/black/00_header_process_27.png | Bin 0 -> 1419 bytes .../bitmaps/480x800/black/00_header_process_28.png | Bin 0 -> 1429 bytes .../bitmaps/480x800/black/00_header_process_29.png | Bin 0 -> 1440 bytes .../bitmaps/480x800/black/00_header_process_30.png | Bin 0 -> 1446 bytes ...exlist_bg_ef.9.png => 00_indexlist_bg_ef.#.png} | Bin .../480x800/black/00_indexlist_icon_line.png | Bin 2822 -> 0 bytes .../480x800/black/00_list_process_01_32x32.png | Bin 3449 -> 0 bytes .../480x800/black/00_list_process_02_32x32.png | Bin 3418 -> 0 bytes .../480x800/black/00_list_process_03_32x32.png | Bin 3373 -> 0 bytes .../480x800/black/00_list_process_04_32x32.png | Bin 3446 -> 0 bytes .../480x800/black/00_list_process_05_32x32.png | Bin 3467 -> 0 bytes .../480x800/black/00_list_process_06_32x32.png | Bin 3476 -> 0 bytes .../480x800/black/00_list_process_07_32x32.png | Bin 3460 -> 0 bytes .../480x800/black/00_list_process_08_32x32.png | Bin 3475 -> 0 bytes .../480x800/black/00_list_process_09_32x32.png | Bin 3453 -> 0 bytes .../480x800/black/00_list_process_10_32x32.png | Bin 3437 -> 0 bytes .../480x800/black/00_list_process_11_32x32.png | Bin 3440 -> 0 bytes .../480x800/black/00_list_process_12_32x32.png | Bin 3456 -> 0 bytes .../480x800/black/00_list_process_13_32x32.png | Bin 3472 -> 0 bytes .../480x800/black/00_list_process_14_32x32.png | Bin 3453 -> 0 bytes .../480x800/black/00_list_process_15_32x32.png | Bin 3458 -> 0 bytes .../480x800/black/00_list_process_16_32x32.png | Bin 3441 -> 0 bytes .../480x800/black/00_list_process_17_32x32.png | Bin 3412 -> 0 bytes .../480x800/black/00_list_process_18_32x32.png | Bin 3375 -> 0 bytes .../480x800/black/00_list_process_19_32x32.png | Bin 3451 -> 0 bytes .../480x800/black/00_list_process_20_32x32.png | Bin 3469 -> 0 bytes .../480x800/black/00_list_process_21_32x32.png | Bin 3459 -> 0 bytes .../480x800/black/00_list_process_22_32x32.png | Bin 3452 -> 0 bytes .../480x800/black/00_list_process_23_32x32.png | Bin 3451 -> 0 bytes .../480x800/black/00_list_process_24_32x32.png | Bin 3444 -> 0 bytes .../480x800/black/00_list_process_25_32x32.png | Bin 3423 -> 0 bytes .../480x800/black/00_list_process_26_32x32.png | Bin 3423 -> 0 bytes .../480x800/black/00_list_process_27_32x32.png | Bin 3447 -> 0 bytes .../480x800/black/00_list_process_28_32x32.png | Bin 3452 -> 0 bytes .../480x800/black/00_list_process_29_32x32.png | Bin 3450 -> 0 bytes .../480x800/black/00_list_process_30_32x32.png | Bin 3460 -> 0 bytes .../{00_popup_bg_ef.9.png => 00_popup_bg_ef.#.png} | Bin .../bitmaps/480x800/black/00_popup_bottom_bg.9.png | Bin 2898 -> 0 bytes ...ble_bg_ef.9.png => 00_popup_bubble_bg_ef.#.png} | Bin .../480x800/black/00_popup_button_bg_ef.9.png | Bin 3078 -> 0 bytes .../bitmaps/480x800/black/00_popup_title_bg.9.png | Bin 2911 -> 0 bytes .../480x800/black/00_popup_title_bg_ef.9.png | Bin 2910 -> 0 bytes .../480x800/black/00_reorder_group_list_bg.9.png | Bin 2921 -> 0 bytes .../480x800/black/00_slider_handle_bg_ef.9.png | Bin 3014 -> 0 bytes .../osp/bitmaps/480x800/black/00_tab_bg_ef.9.png | Bin 3184 -> 0 bytes .../bitmaps/480x800/black/00_tab_bg_focus_ef.9.png | Bin 3225 -> 0 bytes .../bitmaps/480x800/black/00_tab_bg_line_ef.9.png | Bin 2910 -> 0 bytes .../osp/bitmaps/480x800/black/00_title_bg_ef.9.png | Bin 2875 -> 0 bytes .../bitmaps/480x800/black/00_title_btn_bg_ef.9.png | Bin 3034 -> 0 bytes .../black/00_title_button_bg_ef_press.9.png | Bin 3080 -> 0 bytes .../480x800/black/00_title_option_btn_bg_ef.9.png | Bin 3113 -> 0 bytes ..._toolbar_bg_ef.9.png => 00_toolbar_bg_ef.#.png} | Bin ...ar_press_ef.9.png => 00_toolbar_ef_press.#.png} | Bin .../480x800/black/00_toolbar_ef_press.9.png | Bin 3094 -> 0 bytes .../480x800/black/00_toolbar_tab_bg_ef.9.png | Bin 3151 -> 0 bytes .../480x800/black/00_toolbar_tab_bg_focus_ef.9.png | Bin 3160 -> 0 bytes .../480x800/black/00_toolbar_tab_bg_line_ef.9.png | Bin 2916 -> 0 bytes .../bitmaps/480x800/black/00_winset_badge.9.png | Bin 3599 -> 0 bytes .../osp/bitmaps/480x800/copy&paste_Icon02_left.png | Bin 3906 -> 0 bytes .../480x800/copy&paste_Icon02_left_press.png | Bin 4083 -> 0 bytes .../bitmaps/480x800/copy&paste_Icon02_right.png | Bin 3952 -> 0 bytes .../480x800/copy&paste_Icon02_right_press.png | Bin 4143 -> 0 bytes .../osp/bitmaps/480x800/copy&paste_icon_search.png | Bin .../bitmaps/480x800/white/00_btn_circle_bg_ef.png | Bin 4509 -> 0 bytes .../bitmaps/480x800/white/00_button_01_bg_ef.9.png | Bin 3230 -> 0 bytes .../480x800/white/00_button_edit_bg_ef.9.png | Bin 3081 -> 0 bytes .../480x800/white/00_button_seg_bg_ef.9.png | Bin 3097 -> 0 bytes .../480x800/white/00_button_seg_f_bg_ef_01.9.png | Bin 3006 -> 0 bytes .../480x800/white/00_button_seg_f_bg_ef_02.9.png | Bin 2904 -> 0 bytes .../480x800/white/00_button_seg_f_bg_ef_03.9.png | Bin 3010 -> 0 bytes .../bitmaps/480x800/white/00_color_picker_bg.9.png | Bin 2871 -> 0 bytes .../480x800/white/00_dialogue_group_bg_line.9.png | Bin 2896 -> 0 bytes .../480x800/white/00_edit_field_bg_ef.9.png | Bin 2983 -> 0 bytes .../480x800/white/00_groupedlist_bg_01.9.png | Bin 3010 -> 0 bytes .../white/00_groupedlist_bottom_bg_01.9.png | Bin 2935 -> 0 bytes .../white/00_groupedlist_center_bg_01.9.png | Bin 2858 -> 0 bytes .../480x800/white/00_groupedlist_top_bg_01.9.png | Bin 2947 -> 0 bytes .../bitmaps/480x800/white/00_header_process_01.png | Bin 0 -> 1464 bytes .../bitmaps/480x800/white/00_header_process_02.png | Bin 0 -> 1465 bytes .../bitmaps/480x800/white/00_header_process_03.png | Bin 0 -> 1437 bytes .../bitmaps/480x800/white/00_header_process_04.png | Bin 0 -> 1465 bytes .../bitmaps/480x800/white/00_header_process_05.png | Bin 0 -> 1464 bytes .../bitmaps/480x800/white/00_header_process_06.png | Bin 0 -> 1471 bytes .../bitmaps/480x800/white/00_header_process_07.png | Bin 0 -> 1459 bytes .../bitmaps/480x800/white/00_header_process_08.png | Bin 0 -> 1480 bytes .../bitmaps/480x800/white/00_header_process_09.png | Bin 0 -> 1483 bytes .../bitmaps/480x800/white/00_header_process_10.png | Bin 0 -> 1457 bytes .../bitmaps/480x800/white/00_header_process_11.png | Bin 0 -> 1444 bytes .../bitmaps/480x800/white/00_header_process_12.png | Bin 0 -> 1467 bytes .../bitmaps/480x800/white/00_header_process_13.png | Bin 0 -> 1468 bytes .../bitmaps/480x800/white/00_header_process_14.png | Bin 0 -> 1474 bytes .../bitmaps/480x800/white/00_header_process_15.png | Bin 0 -> 1477 bytes .../bitmaps/480x800/white/00_header_process_16.png | Bin 0 -> 1467 bytes .../bitmaps/480x800/white/00_header_process_17.png | Bin 0 -> 1461 bytes .../bitmaps/480x800/white/00_header_process_18.png | Bin 0 -> 1415 bytes .../bitmaps/480x800/white/00_header_process_19.png | Bin 0 -> 1465 bytes .../bitmaps/480x800/white/00_header_process_20.png | Bin 0 -> 1477 bytes .../bitmaps/480x800/white/00_header_process_21.png | Bin 0 -> 1465 bytes .../bitmaps/480x800/white/00_header_process_22.png | Bin 0 -> 1447 bytes .../bitmaps/480x800/white/00_header_process_23.png | Bin 0 -> 1478 bytes .../bitmaps/480x800/white/00_header_process_24.png | Bin 0 -> 1450 bytes .../bitmaps/480x800/white/00_header_process_25.png | Bin 0 -> 1441 bytes .../bitmaps/480x800/white/00_header_process_26.png | Bin 0 -> 1431 bytes .../bitmaps/480x800/white/00_header_process_27.png | Bin 0 -> 1433 bytes .../bitmaps/480x800/white/00_header_process_28.png | Bin 0 -> 1462 bytes .../bitmaps/480x800/white/00_header_process_29.png | Bin 0 -> 1469 bytes .../bitmaps/480x800/white/00_header_process_30.png | Bin 0 -> 1476 bytes ...exlist_bg_ef.9.png => 00_indexlist_bg_ef.#.png} | Bin .../480x800/white/00_indexlist_icon_line.png | Bin 2824 -> 0 bytes .../480x800/white/00_list_process_01_32x32.png | Bin 1614 -> 0 bytes .../480x800/white/00_list_process_02_32x32.png | Bin 1577 -> 0 bytes .../480x800/white/00_list_process_03_32x32.png | Bin 1551 -> 0 bytes .../480x800/white/00_list_process_04_32x32.png | Bin 1630 -> 0 bytes .../480x800/white/00_list_process_05_32x32.png | Bin 1624 -> 0 bytes .../480x800/white/00_list_process_06_32x32.png | Bin 1604 -> 0 bytes .../480x800/white/00_list_process_07_32x32.png | Bin 1593 -> 0 bytes .../480x800/white/00_list_process_08_32x32.png | Bin 1655 -> 0 bytes .../480x800/white/00_list_process_09_32x32.png | Bin 1630 -> 0 bytes .../480x800/white/00_list_process_10_32x32.png | Bin 1613 -> 0 bytes .../480x800/white/00_list_process_11_32x32.png | Bin 1585 -> 0 bytes .../480x800/white/00_list_process_12_32x32.png | Bin 1607 -> 0 bytes .../480x800/white/00_list_process_13_32x32.png | Bin 1618 -> 0 bytes .../480x800/white/00_list_process_14_32x32.png | Bin 1643 -> 0 bytes .../480x800/white/00_list_process_15_32x32.png | Bin 1634 -> 0 bytes .../480x800/white/00_list_process_16_32x32.png | Bin 1600 -> 0 bytes .../480x800/white/00_list_process_17_32x32.png | Bin 1591 -> 0 bytes .../480x800/white/00_list_process_18_32x32.png | Bin 1561 -> 0 bytes .../480x800/white/00_list_process_19_32x32.png | Bin 1608 -> 0 bytes .../480x800/white/00_list_process_20_32x32.png | Bin 1648 -> 0 bytes .../480x800/white/00_list_process_21_32x32.png | Bin 1625 -> 0 bytes .../480x800/white/00_list_process_22_32x32.png | Bin 1568 -> 0 bytes .../480x800/white/00_list_process_23_32x32.png | Bin 1639 -> 0 bytes .../480x800/white/00_list_process_24_32x32.png | Bin 1604 -> 0 bytes .../480x800/white/00_list_process_25_32x32.png | Bin 1571 -> 0 bytes .../480x800/white/00_list_process_26_32x32.png | Bin 1547 -> 0 bytes .../480x800/white/00_list_process_27_32x32.png | Bin 1586 -> 0 bytes .../480x800/white/00_list_process_28_32x32.png | Bin 1623 -> 0 bytes .../480x800/white/00_list_process_29_32x32.png | Bin 1610 -> 0 bytes .../480x800/white/00_list_process_30_32x32.png | Bin 1636 -> 0 bytes .../osp/bitmaps/480x800/white/00_popup_bg_ef.#.png | Bin 0 -> 2444 bytes .../osp/bitmaps/480x800/white/00_popup_bg_ef.9.png | Bin 3318 -> 0 bytes .../bitmaps/480x800/white/00_popup_bottom_bg.9.png | Bin 2901 -> 0 bytes ...ble_bg_ef.9.png => 00_popup_bubble_bg_ef.#.png} | Bin .../480x800/white/00_popup_button_bg_ef.9.png | Bin 3230 -> 0 bytes .../bitmaps/480x800/white/00_popup_title_bg.9.png | Bin 2911 -> 0 bytes .../480x800/white/00_popup_title_bg_ef.9.png | Bin 3120 -> 0 bytes .../480x800/white/00_reorder_group_list_bg.9.png | Bin 2923 -> 0 bytes .../480x800/white/00_slider_handle_bg_ef.9.png | Bin 3026 -> 0 bytes .../osp/bitmaps/480x800/white/00_title_bg_ef.9.png | Bin 2897 -> 0 bytes .../bitmaps/480x800/white/00_title_btn_bg_ef.9.png | Bin 3007 -> 0 bytes .../white/00_title_button_bg_ef_press.9.png | Bin 3078 -> 0 bytes .../480x800/white/00_title_option_btn_bg_ef.9.png | Bin 3097 -> 0 bytes .../bitmaps/480x800/white/00_toolbar_bg_ef.9.png | Bin 2896 -> 0 bytes .../480x800/white/00_toolbar_ef_press.9.png | Bin 3122 -> 0 bytes .../480x800/white/00_toolbar_press_ef.9.png | Bin 3122 -> 0 bytes ..._tab_bg_ef.9.png => 00_toolbar_tab_bg_ef.#.png} | Bin ...s_ef.9.png => 00_toolbar_tab_bg_focus_ef.#.png} | Bin .../480x800/white/00_toolbar_tab_bg_line_ef.9.png | Bin 2900 -> 0 bytes .../bitmaps/480x800/white/00_winset_badge.9.png | Bin 3616 -> 0 bytes .../share/osp/bitmaps/720x1280/00_Title_btn.9.png | Bin 2963 -> 0 bytes .../osp/bitmaps/720x1280/00_Title_btn_press.9.png | Bin 2967 -> 0 bytes .../720x1280/00_arrow_button_press_ef.9.png | Bin 2970 -> 0 bytes .../share/osp/bitmaps/720x1280/00_arrow_left.png | Bin 3167 -> 3183 bytes .../share/osp/bitmaps/720x1280/00_arrow_right.png | Bin 3173 -> 3189 bytes .../share/osp/bitmaps/720x1280/00_badge_bg.#.png | Bin 0 -> 3523 bytes .../share/osp/bitmaps/720x1280/00_badge_bg.9.png | Bin 3454 -> 0 bytes .../osp/bitmaps/720x1280/00_badge_bg_ef.#.png | Bin 0 -> 4857 bytes .../osp/bitmaps/720x1280/00_badge_bg_ef.9.png | Bin 5612 -> 0 bytes .../osp/bitmaps/720x1280/00_btn_circle_bg.png | Bin 3604 -> 0 bytes .../osp/bitmaps/720x1280/00_btn_circle_bg_ef.png | Bin 3892 -> 0 bytes .../osp/bitmaps/720x1280/00_btn_circle_bg_p_ef.png | Bin 4002 -> 0 bytes .../share/osp/bitmaps/720x1280/00_button_01.#.png | Bin 0 -> 1301 bytes .../share/osp/bitmaps/720x1280/00_button_01.9.png | Bin 1264 -> 0 bytes .../osp/bitmaps/720x1280/00_button_01_bg.9.png | Bin 2984 -> 0 bytes .../bitmaps/720x1280/00_button_01_bg_p_ef.9.png | Bin 3027 -> 0 bytes .../osp/bitmaps/720x1280/00_button_01_ef.#.png | Bin 0 -> 2715 bytes .../osp/bitmaps/720x1280/00_button_01_ef.9.png | Bin 2680 -> 0 bytes .../osp/bitmaps/720x1280/00_button_01_ef_dim.#.png | Bin 0 -> 2469 bytes .../osp/bitmaps/720x1280/00_button_01_ef_dim.9.png | Bin 2680 -> 0 bytes .../bitmaps/720x1280/00_button_01_ef_press.#.png | Bin 0 -> 2709 bytes .../bitmaps/720x1280/00_button_01_ef_press.9.png | Bin 2860 -> 0 bytes .../00_button_02.#.png} | Bin .../00_button_02_ef.#.png} | Bin .../00_button_02_ef_press.#.png} | Bin .../{00_button_03.9.png => 00_button_03.#.png} | Bin .../osp/bitmaps/720x1280/00_button_03_dim_ef.9.png | Bin 4529 -> 0 bytes .../bitmaps/720x1280/00_button_03_ef_press.9.png | Bin 4696 -> 0 bytes .../osp/bitmaps/720x1280/00_button_06_dim.9.png | Bin 273 -> 0 bytes .../osp/bitmaps/720x1280/00_button_06_normal.9.png | Bin 281 -> 0 bytes .../osp/bitmaps/720x1280/00_button_06_press.9.png | Bin 338 -> 0 bytes .../share/osp/bitmaps/720x1280/00_button_call.png | Bin 1502 -> 0 bytes .../osp/bitmaps/720x1280/00_button_call_ef.png | Bin 3831 -> 0 bytes .../osp/bitmaps/720x1280/00_button_cancel.png | Bin 3160 -> 0 bytes .../bitmaps/720x1280/00_button_expand_cancel.png | Bin 1655 -> 0 bytes .../720x1280/00_button_expand_cancel_ef.png | Bin 3976 -> 0 bytes .../bitmaps/720x1280/00_button_expand_closed.png | Bin .../bitmaps/720x1280/00_button_expand_minus.png | Bin 1069 -> 0 bytes .../bitmaps/720x1280/00_button_expand_minus_ef.png | Bin 3044 -> 0 bytes .../bitmaps/720x1280/00_button_expand_opened.png | Bin .../osp/bitmaps/720x1280/00_button_expand_send.png | Bin 1767 -> 0 bytes .../bitmaps/720x1280/00_button_expand_send_ef.png | Bin 4158 -> 0 bytes .../share/osp/bitmaps/720x1280/00_button_info.png | Bin 1467 -> 0 bytes .../osp/bitmaps/720x1280/00_button_info_ef.png | Bin 3705 -> 0 bytes .../share/osp/bitmaps/720x1280/00_button_left.png | Bin .../osp/bitmaps/720x1280/00_button_left_ef.png | Bin 3394 -> 0 bytes .../share/osp/bitmaps/720x1280/00_button_minus.png | Bin 2900 -> 0 bytes .../osp/bitmaps/720x1280/00_button_normal.9.png | Bin 3168 -> 0 bytes .../osp/bitmaps/720x1280/00_button_normal_bg.9.png | Bin 1228 -> 0 bytes .../720x1280/00_button_normal_effect_01.9.png | Bin 3814 -> 0 bytes .../share/osp/bitmaps/720x1280/00_button_off.png | Bin 6337 -> 6320 bytes .../osp/bitmaps/720x1280/00_button_off_01.png | Bin 3786 -> 0 bytes .../osp/bitmaps/720x1280/00_button_off_dim.png | Bin 8112 -> 6275 bytes .../bitmaps/720x1280/00_button_off_dim_temp.png | Bin 8112 -> 0 bytes .../osp/bitmaps/720x1280/00_button_off_temp.png | Bin 8294 -> 0 bytes .../share/osp/bitmaps/720x1280/00_button_on.png | Bin 6228 -> 6217 bytes .../share/osp/bitmaps/720x1280/00_button_on_01.png | Bin 3224 -> 0 bytes .../osp/bitmaps/720x1280/00_button_on_dim.png | Bin 8102 -> 6185 bytes .../osp/bitmaps/720x1280/00_button_on_dim_temp.png | Bin 8102 -> 0 bytes .../bitmaps/720x1280/00_button_on_off_handler.png | Bin 6291 -> 6286 bytes .../720x1280/00_button_on_off_handler_dim.png | Bin 0 -> 6167 bytes .../osp/bitmaps/720x1280/00_button_on_temp.png | Bin 8290 -> 0 bytes .../share/osp/bitmaps/720x1280/00_button_plus.png | Bin .../osp/bitmaps/720x1280/00_button_plus_ef.png | Bin .../share/osp/bitmaps/720x1280/00_button_radio.png | Bin 6733 -> 6751 bytes .../osp/bitmaps/720x1280/00_button_radio_dim.png | Bin 6093 -> 6429 bytes .../bitmaps/720x1280/00_button_radio_normal1.png | Bin 4225 -> 0 bytes .../bitmaps/720x1280/00_button_radio_normal2.png | Bin 3407 -> 0 bytes .../osp/bitmaps/720x1280/00_button_radio_press.png | Bin 7125 -> 0 bytes .../bitmaps/720x1280/00_button_radio_select.png | Bin 3222 -> 3235 bytes .../720x1280/00_button_radio_select_dim.png | Bin 3190 -> 0 bytes .../osp/bitmaps/720x1280/00_button_rename.png | Bin 1384 -> 0 bytes .../osp/bitmaps/720x1280/00_button_rename_ef.png | Bin 3534 -> 0 bytes .../osp/bitmaps/720x1280/00_button_reveal.png | Bin 3118 -> 3092 bytes .../share/osp/bitmaps/720x1280/00_button_right.png | Bin 1296 -> 3092 bytes .../osp/bitmaps/720x1280/00_button_right_ef.png | Bin 3380 -> 3333 bytes .../bitmaps/720x1280/00_button_seg_f_bg_01.9.png | Bin 1042 -> 0 bytes .../bitmaps/720x1280/00_button_seg_f_bg_02.9.png | Bin 984 -> 0 bytes .../bitmaps/720x1280/00_button_seg_f_bg_03.9.png | Bin 1026 -> 0 bytes .../720x1280/00_button_seg_f_bg_ef_01.9.png | Bin 1153 -> 0 bytes .../720x1280/00_button_seg_f_bg_ef_02.9.png | Bin 1092 -> 0 bytes .../720x1280/00_button_seg_f_bg_ef_03.9.png | Bin 1169 -> 0 bytes .../share/osp/bitmaps/720x1280/00_button_send.png | Bin 3227 -> 0 bytes .../osp/bitmaps/720x1280/00_button_warning.png | Bin 3001 -> 0 bytes .../osp/bitmaps/720x1280/00_button_warring.png | Bin 1193 -> 0 bytes .../osp/bitmaps/720x1280/00_button_warring_ef.png | Bin 2983 -> 0 bytes .../share/osp/bitmaps/720x1280/00_button_web.9.png | Bin 1331 -> 0 bytes .../osp/bitmaps/720x1280/00_button_web_press.9.png | Bin 1313 -> 0 bytes .../osp/bitmaps/720x1280/00_category_bg.9.png | Bin 3047 -> 0 bytes .../osp/bitmaps/720x1280/00_category_button.#.png | Bin 0 -> 2974 bytes .../osp/bitmaps/720x1280/00_category_button.9.png | Bin 2975 -> 0 bytes .../720x1280/00_category_button_focus.#.png | Bin 0 -> 3030 bytes .../720x1280/00_category_button_focus.9.png | Bin 3033 -> 0 bytes .../bitmaps/720x1280/00_category_left_button.png | Bin 2940 -> 0 bytes .../720x1280/00_category_left_button_arrow.png | Bin 1178 -> 0 bytes .../osp/bitmaps/720x1280/00_category_left_gd.png | Bin 2940 -> 0 bytes .../720x1280/00_category_left_gradation.png | Bin 3112 -> 3133 bytes .../bitmaps/720x1280/00_category_panel_bg.#.png | Bin 0 -> 2857 bytes .../bitmaps/720x1280/00_category_panel_bg.9.png | Bin 2858 -> 0 bytes .../bitmaps/720x1280/00_category_panel_bg_ef.#.png | Bin 0 -> 2895 bytes .../bitmaps/720x1280/00_category_panel_bg_ef.9.png | Bin 2892 -> 0 bytes .../bitmaps/720x1280/00_category_right_button.png | Bin 2941 -> 0 bytes .../720x1280/00_category_right_button_arrow.png | Bin 1206 -> 0 bytes .../osp/bitmaps/720x1280/00_category_right_gd.png | Bin 2941 -> 0 bytes .../720x1280/00_category_right_gradation.png | Bin 3103 -> 3114 bytes .../usr/share/osp/bitmaps/720x1280/00_check.png | Bin 3850 -> 0 bytes .../share/osp/bitmaps/720x1280/00_check_angle.png | Bin 3710 -> 0 bytes .../usr/share/osp/bitmaps/720x1280/00_check_bg.png | Bin 4695 -> 4703 bytes .../share/osp/bitmaps/720x1280/00_check_bg_dim.png | Bin 4601 -> 4629 bytes .../osp/bitmaps/720x1280/00_check_bg_press.png | Bin 4723 -> 4740 bytes .../osp/bitmaps/720x1280/00_check_checking.png | Bin 3209 -> 3217 bytes .../osp/bitmaps/720x1280/00_check_checking_bg.png | Bin 3278 -> 0 bytes .../osp/bitmaps/720x1280/00_check_checking_dim.png | Bin 3186 -> 3213 bytes .../osp/bitmaps/720x1280/00_check_index_bg.png | Bin 2994 -> 0 bytes .../share/osp/bitmaps/720x1280/00_circle_bg.png | Bin 3597 -> 3604 bytes .../share/osp/bitmaps/720x1280/00_circle_bg_ef.png | Bin 8260 -> 8301 bytes .../osp/bitmaps/720x1280/00_circle_bg_ef_dim.png | Bin 7597 -> 8301 bytes .../osp/bitmaps/720x1280/00_circle_bg_ef_press.png | Bin 8565 -> 8590 bytes .../720x1280/00_color_picker_brightness.png | Bin .../720x1280/00_color_picker_brightness_h.png | Bin .../bitmaps/720x1280/00_color_picker_btn_bg.9.png | Bin 3168 -> 0 bytes .../bitmaps/720x1280/00_color_picker_btn_left.png | Bin 3115 -> 0 bytes .../bitmaps/720x1280/00_color_picker_btn_right.png | Bin 3102 -> 0 bytes .../osp/bitmaps/720x1280/00_color_picker_color.png | Bin .../bitmaps/720x1280/00_color_picker_color_h.png | Bin .../720x1280/00_color_picker_custom_color.png | Bin .../720x1280/00_color_picker_custom_color_h.png | Bin .../osp/bitmaps/720x1280/00_color_picker_focus.png | Bin .../720x1280/00_color_picker_saturation.png | Bin .../720x1280/00_color_picker_saturation_h.png | Bin .../bitmaps/720x1280/00_contacts_button_bg.#.png | Bin 0 -> 1199 bytes .../bitmaps/720x1280/00_contacts_button_bg.9.png | Bin 2951 -> 0 bytes .../720x1280/00_contacts_button_bg_ef.#.png | Bin 0 -> 1640 bytes .../720x1280/00_contacts_button_bg_press_ef.#.png | Bin 0 -> 1656 bytes .../osp/bitmaps/720x1280/00_context_popup_bg.9.png | Bin 3188 -> 0 bytes .../bitmaps/720x1280/00_context_popup_bg_01.9.png | Bin 3913 -> 0 bytes .../720x1280/00_context_popup_bg_effect.9.png | Bin 4174 -> 0 bytes .../720x1280/00_context_popup_tail_bottom.png | Bin 2947 -> 0 bytes .../720x1280/00_context_popup_tail_bottom_01.png | Bin 2954 -> 0 bytes .../00_context_popup_tail_bottom_effect.png | Bin 3072 -> 0 bytes .../720x1280/00_context_popup_tail_left.png | Bin 2966 -> 0 bytes .../720x1280/00_context_popup_tail_left_01.png | Bin 2951 -> 0 bytes .../720x1280/00_context_popup_tail_left_effect.png | Bin 3112 -> 0 bytes .../720x1280/00_context_popup_tail_right.png | Bin 2964 -> 0 bytes .../720x1280/00_context_popup_tail_right_01.png | Bin 2965 -> 0 bytes .../00_context_popup_tail_right_effect.png | Bin 3094 -> 0 bytes .../bitmaps/720x1280/00_context_popup_tail_top.png | Bin 2947 -> 0 bytes .../720x1280/00_context_popup_tail_top_01.png | Bin 2941 -> 0 bytes .../720x1280/00_context_popup_tail_top_effect.png | Bin 3088 -> 0 bytes .../720x1280/00_date_picker_center_bg.9.png | Bin 2920 -> 0 bytes .../720x1280/00_date_picker_center_bg_effect.9.png | Bin 3070 -> 0 bytes .../00_date_picker_center_bg_press_effect.9.png | Bin 3071 -> 0 bytes .../bitmaps/720x1280/00_date_picker_left_bg.9.png | Bin 3110 -> 0 bytes .../720x1280/00_date_picker_left_bg_effect.9.png | Bin 3487 -> 0 bytes .../00_date_picker_left_bg_press_effect.9.png | Bin 3500 -> 0 bytes .../bitmaps/720x1280/00_date_picker_right_bg.9.png | Bin 3095 -> 0 bytes .../720x1280/00_date_picker_right_bg_effect.9.png | Bin 3422 -> 0 bytes .../00_date_picker_right_bg_press_effect.9.png | Bin 3537 -> 0 bytes .../osp/bitmaps/720x1280/00_detail_button#5.png | Bin 3227 -> 0 bytes .../osp/bitmaps/720x1280/00_detail_button.png | Bin 3227 -> 0 bytes .../osp/bitmaps/720x1280/00_detail_button_01.png | Bin 3189 -> 0 bytes .../bitmaps/720x1280/00_detail_button_01_dim.png | Bin 2709 -> 0 bytes .../bitmaps/720x1280/00_detail_button_01_press.png | Bin 3234 -> 0 bytes .../bitmaps/720x1280/00_detail_button_dim#1.png | Bin 2702 -> 0 bytes .../osp/bitmaps/720x1280/00_detail_button_dim.png | Bin 2702 -> 0 bytes .../bitmaps/720x1280/00_detail_button_press#3.png | Bin 3329 -> 0 bytes .../bitmaps/720x1280/00_detail_button_press.png | Bin 3329 -> 0 bytes .../bitmaps/720x1280/00_dialogue_group_bg.9.png | Bin 2858 -> 0 bytes .../720x1280/00_dialogue_group_bg_bar.9.png | Bin 2872 -> 0 bytes ...00_divider_line.9.png => 00_divider_line.#.png} | Bin .../00_divider_line_translucent.#.png} | Bin .../osp/bitmaps/720x1280/00_edit_field_bg.9.png | Bin 2955 -> 0 bytes .../osp/bitmaps/720x1280/00_edit_field_clear.png | Bin 3198 -> 3249 bytes .../00_edit_field_line_round_bg_01.#.png} | Bin .../720x1280/00_edit_field_line_squre_bg_01.9.png | Bin 2881 -> 0 bytes .../720x1280/00_edit_field_no_line_round_bg.9.png | Bin 2996 -> 0 bytes .../00_edit_field_no_line_square_bg.#.png} | Bin .../00_edit_field_round_bg.#.png} | Bin .../bitmaps/720x1280/00_effect_tab_bounce_left.png | Bin .../720x1280/00_effect_tab_bounce_left_h.png | Bin 0 -> 4001 bytes .../720x1280/00_effect_tab_bounce_right.png | Bin .../720x1280/00_effect_tab_bounce_right_h.png | Bin 0 -> 3727 bytes .../720x1280/00_effect_title_tab_bounce_left.png | Bin 0 -> 3032 bytes .../720x1280/00_effect_title_tab_bounce_right.png | Bin 0 -> 2773 bytes .../720x1280/00_effect_toolbar_tab_bounce_left.png | Bin 0 -> 6020 bytes .../00_effect_toolbar_tab_bounce_left_h.png | Bin 0 -> 5717 bytes .../00_effect_toolbar_tab_bounce_right.png | Bin 0 -> 5613 bytes .../00_effect_toolbar_tab_bounce_right_h.png | Bin 0 -> 5324 bytes .../bitmaps/720x1280/00_fast_scroll_handler.#.png | Bin 0 -> 3820 bytes .../720x1280/00_fast_scroll_handler_h.#.png | Bin 0 -> 3788 bytes .../bitmaps/720x1280/00_fast_scroll_popup_bg.#.png | Bin 0 -> 3031 bytes .../bitmaps/720x1280/00_fast_scroll_popup_bg.9.png | Bin 3027 -> 0 bytes .../720x1280/00_fast_scroll_popup_bg_ef.#.png | Bin 0 -> 3646 bytes .../720x1280/00_fast_scroll_popup_bg_ef.9.png | Bin 3632 -> 0 bytes .../00_fast_scroll_rollover_bg.#.png} | Bin ....png => 00_fast_scroll_rollover_bg_focus.#.png} | Bin ...=> 00_fast_scroll_rollover_bg_line_focus.#.png} | Bin .../share/osp/bitmaps/720x1280/00_footer_bg.9.png | Bin 1539 -> 0 bytes .../osp/bitmaps/720x1280/00_footer_bg_01.9.png | Bin 1311 -> 0 bytes .../osp/bitmaps/720x1280/00_footer_button_bg.9.png | Bin 3738 -> 0 bytes .../osp/bitmaps/720x1280/00_footer_button_ef.9.png | Bin 8169 -> 0 bytes .../720x1280/00_footer_button_ef_press.9.png | Bin 8946 -> 0 bytes .../osp/bitmaps/720x1280/00_footer_icon_Back.png | Bin 1514 -> 0 bytes .../bitmaps/720x1280/00_footer_icon_Back_ef.png | Bin 2608 -> 0 bytes .../bitmaps/720x1280/00_footer_icon_Back_ef_02.png | Bin 2264 -> 0 bytes .../osp/bitmaps/720x1280/00_footer_icon_close.png | Bin 3469 -> 0 bytes .../720x1280/00_footer_icon_close_press.png | Bin 3069 -> 0 bytes .../osp/bitmaps/720x1280/00_footer_icon_more.png | Bin 3119 -> 0 bytes .../osp/bitmaps/720x1280/00_footer_icon_more2.png | Bin 1206 -> 0 bytes .../bitmaps/720x1280/00_footer_icon_more2_ef.png | Bin 1440 -> 0 bytes .../bitmaps/720x1280/00_footer_icon_more_press.png | Bin 1087 -> 0 bytes .../osp/bitmaps/720x1280/00_groupedlist_bg.9.png | Bin 2966 -> 0 bytes .../bitmaps/720x1280/00_groupedlist_bg_01.9.png | Bin 3069 -> 0 bytes ...g_focus.9.png => 00_groupedlist_bg_focus.#.png} | Bin .../osp/bitmaps/720x1280/00_groupedlist_bg_p.9.png | Bin 3446 -> 0 bytes ...g_press.9.png => 00_groupedlist_bg_press.#.png} | Bin .../720x1280/00_groupedlist_bottom_bg.9.png | Bin 3095 -> 0 bytes .../720x1280/00_groupedlist_bottom_bg_01.9.png | Bin 3169 -> 0 bytes ....9.png => 00_groupedlist_bottom_bg_focus.#.png} | Bin ....9.png => 00_groupedlist_bottom_bg_press.#.png} | Bin .../720x1280/00_groupedlist_center_bg.9.png | Bin 3013 -> 0 bytes .../720x1280/00_groupedlist_center_bg_01.9.png | Bin 3001 -> 0 bytes ....9.png => 00_groupedlist_center_bg_focus.#.png} | Bin ....9.png => 00_groupedlist_center_bg_press.#.png} | Bin .../osp/bitmaps/720x1280/00_groupedlist_h_bg.9.png | Bin 3430 -> 0 bytes .../720x1280/00_groupedlist_input_outline_h.9.png | Bin 3716 -> 0 bytes .../720x1280/00_groupedlist_normal_bg.9.png | Bin 3437 -> 0 bytes .../bitmaps/720x1280/00_groupedlist_top_bg.9.png | Bin 3115 -> 0 bytes .../720x1280/00_groupedlist_top_bg_01.9.png | Bin 3210 -> 0 bytes ...cus.9.png => 00_groupedlist_top_bg_focus.#.png} | Bin ...ess.9.png => 00_groupedlist_top_bg_press.#.png} | Bin .../osp/bitmaps/720x1280/00_header_badge_bg.9.png | Bin 3486 -> 0 bytes .../bitmaps/720x1280/00_header_badge_bg_ef.9.png | Bin 4829 -> 0 bytes .../share/osp/bitmaps/720x1280/00_header_bg.9.png | Bin 3068 -> 0 bytes .../osp/bitmaps/720x1280/00_header_bg_01.9.png | Bin 3178 -> 0 bytes .../osp/bitmaps/720x1280/00_header_bg_effect.9.png | Bin 3134 -> 0 bytes .../osp/bitmaps/720x1280/00_header_button_bg.9.png | Bin 3214 -> 0 bytes .../720x1280/00_header_button_bg_effect.9.png | Bin 3758 -> 0 bytes .../720x1280/00_header_button_bg_focus.9.png | Bin 3298 -> 0 bytes .../00_header_button_bg_press_effect.9.png | Bin 3902 -> 0 bytes .../bitmaps/720x1280/00_header_button_web.9.png | Bin 1331 -> 0 bytes .../720x1280/00_header_button_web_press.9.png | Bin 1313 -> 0 bytes .../osp/bitmaps/720x1280/00_header_icon_edit.png | Bin 1776 -> 0 bytes .../bitmaps/720x1280/00_header_icon_edit_ef.png | Bin 2616 -> 0 bytes .../osp/bitmaps/720x1280/00_header_icon_plus.png | Bin 1266 -> 0 bytes .../bitmaps/720x1280/00_header_icon_plus_ef.png | Bin 1664 -> 0 bytes .../bitmaps/720x1280/00_header_tab_press_ef.9.png | Bin 989 -> 0 bytes .../bitmaps/720x1280/00_header_title_handler.png | Bin 1146 -> 0 bytes .../share/osp/bitmaps/720x1280/00_icon_Back.png | Bin 3348 -> 3385 bytes .../share/osp/bitmaps/720x1280/00_icon_Back_ef.png | Bin 4100 -> 4160 bytes .../osp/bitmaps/720x1280/00_icon_Back_ef_02.png | Bin 4145 -> 4169 bytes .../osp/bitmaps/720x1280/00_icon_Back_trans_ef.png | Bin 3393 -> 3433 bytes .../share/osp/bitmaps/720x1280/00_icon_Hide.png | Bin 0 -> 3320 bytes .../share/osp/bitmaps/720x1280/00_icon_Hide_ef.png | Bin 0 -> 3933 bytes .../osp/bitmaps/720x1280/00_icon_Hide_ef_02.png | Bin 0 -> 4147 bytes .../osp/bitmaps/720x1280/00_icon_Hide_trans_ef.png | Bin 0 -> 3430 bytes .../usr/share/osp/bitmaps/720x1280/00_icon_add.png | Bin 3061 -> 0 bytes .../share/osp/bitmaps/720x1280/00_icon_back.png | Bin 3256 -> 0 bytes .../share/osp/bitmaps/720x1280/00_icon_edit.png | Bin 3577 -> 0 bytes .../share/osp/bitmaps/720x1280/00_icon_edit_ef.png | Bin 4378 -> 0 bytes .../share/osp/bitmaps/720x1280/00_icon_jump.png | Bin 3070 -> 3073 bytes .../share/osp/bitmaps/720x1280/00_icon_jump_ef.png | Bin 3414 -> 3415 bytes .../osp/bitmaps/720x1280/00_icon_jump_left.png | Bin 3110 -> 3113 bytes .../osp/bitmaps/720x1280/00_icon_jump_left_ef.png | Bin 3461 -> 3463 bytes .../share/osp/bitmaps/720x1280/00_icon_more.png | Bin .../share/osp/bitmaps/720x1280/00_icon_more_ef.png | Bin .../share/osp/bitmaps/720x1280/00_icon_plus.png | Bin 3141 -> 0 bytes .../share/osp/bitmaps/720x1280/00_icon_plus_ef.png | Bin 3565 -> 0 bytes .../osp/bitmaps/720x1280/00_iconlist_bg.9.png | Bin 473 -> 0 bytes .../00_indexlist_bg.#.png} | Bin .../00_indexlist_bg_ef.#.png} | Bin .../osp/bitmaps/720x1280/00_label_01_normal.9.png | Bin 281 -> 0 bytes .../osp/bitmaps/720x1280/00_list_group_bg.#.png | Bin 0 -> 2951 bytes .../osp/bitmaps/720x1280/00_list_group_bg.9.png | Bin 353 -> 0 bytes .../bitmaps/720x1280/00_list_group_bg_bottom.#.png | Bin 0 -> 2908 bytes .../bitmaps/720x1280/00_list_group_bg_bottom.9.png | Bin 302 -> 0 bytes .../720x1280/00_list_group_bg_bottom_ef.#.png | Bin 0 -> 3153 bytes .../720x1280/00_list_group_bg_bottom_ef.9.png | Bin 490 -> 0 bytes .../bitmaps/720x1280/00_list_group_bg_center.#.png | Bin 0 -> 2846 bytes .../bitmaps/720x1280/00_list_group_bg_center.9.png | Bin 232 -> 0 bytes .../720x1280/00_list_group_bg_center_ef.#.png | Bin 0 -> 2893 bytes .../720x1280/00_list_group_bg_center_ef.9.png | Bin 283 -> 0 bytes .../osp/bitmaps/720x1280/00_list_group_bg_ef.#.png | Bin 0 -> 3310 bytes .../osp/bitmaps/720x1280/00_list_group_bg_ef.9.png | Bin 635 -> 0 bytes .../bitmaps/720x1280/00_list_group_bg_top.#.png | Bin 0 -> 2914 bytes .../bitmaps/720x1280/00_list_group_bg_top.9.png | Bin 310 -> 0 bytes .../bitmaps/720x1280/00_list_group_bg_top_ef.#.png | Bin 0 -> 3138 bytes .../bitmaps/720x1280/00_list_group_bg_top_ef.9.png | Bin 490 -> 0 bytes .../bitmaps/720x1280/00_list_group_press_bg.#.png | Bin 0 -> 2948 bytes .../720x1280/00_list_group_press_bg_bottom.#.png | Bin 0 -> 2908 bytes .../720x1280/00_list_group_press_bg_center.#.png | Bin 0 -> 2843 bytes .../720x1280/00_list_group_press_bg_top.#.png | Bin 0 -> 2916 bytes .../osp/bitmaps/720x1280/00_list_process_01.png | Bin .../osp/bitmaps/720x1280/00_list_process_02.png | Bin .../osp/bitmaps/720x1280/00_list_process_03.png | Bin .../osp/bitmaps/720x1280/00_list_process_04.png | Bin .../osp/bitmaps/720x1280/00_list_process_05.png | Bin .../osp/bitmaps/720x1280/00_list_process_06.png | Bin .../osp/bitmaps/720x1280/00_list_process_07.png | Bin .../osp/bitmaps/720x1280/00_list_process_08.png | Bin .../osp/bitmaps/720x1280/00_list_process_09.png | Bin .../osp/bitmaps/720x1280/00_list_process_10.png | Bin .../osp/bitmaps/720x1280/00_list_process_11.png | Bin .../osp/bitmaps/720x1280/00_list_process_12.png | Bin .../osp/bitmaps/720x1280/00_list_process_13.png | Bin .../osp/bitmaps/720x1280/00_list_process_14.png | Bin .../osp/bitmaps/720x1280/00_list_process_15.png | Bin .../osp/bitmaps/720x1280/00_list_process_16.png | Bin .../osp/bitmaps/720x1280/00_list_process_17.png | Bin .../osp/bitmaps/720x1280/00_list_process_18.png | Bin .../osp/bitmaps/720x1280/00_list_process_19.png | Bin .../osp/bitmaps/720x1280/00_list_process_20.png | Bin .../osp/bitmaps/720x1280/00_list_process_21.png | Bin .../osp/bitmaps/720x1280/00_list_process_22.png | Bin .../osp/bitmaps/720x1280/00_list_process_23.png | Bin .../osp/bitmaps/720x1280/00_list_process_24.png | Bin .../osp/bitmaps/720x1280/00_list_process_25.png | Bin .../osp/bitmaps/720x1280/00_list_process_26.png | Bin .../osp/bitmaps/720x1280/00_list_process_27.png | Bin .../osp/bitmaps/720x1280/00_list_process_28.png | Bin .../osp/bitmaps/720x1280/00_list_process_29.png | Bin .../osp/bitmaps/720x1280/00_list_process_30.png | Bin .../bitmaps/720x1280/00_list_progress_bar.9.png | Bin 968 -> 0 bytes .../osp/bitmaps/720x1280/00_list_progress_bg.9.png | Bin 978 -> 0 bytes .../bitmaps/720x1280/00_list_slider_icon_bg.9.png | Bin 3168 -> 0 bytes .../720x1280/00_list_slider_icon_bg_effect.9.png | Bin 3814 -> 0 bytes .../00_list_slider_icon_bg_effect_01.9.png | Bin 4063 -> 0 bytes .../bitmaps/720x1280/00_on_button_controller#5.png | Bin 5727 -> 0 bytes .../00_option_panel_contextual_popup_arrow.png | Bin 3007 -> 3020 bytes .../bitmaps/720x1280/00_option_panel_handle_bg.png | Bin 3469 -> 3230 bytes .../720x1280/00_option_panel_handle_bg_ef.png | Bin 3704 -> 3693 bytes .../00_option_panel_handle_bg_ef_press.png | Bin 3559 -> 3555 bytes .../720x1280/00_option_panel_handle_bg_p.png | Bin 3479 -> 0 bytes .../720x1280/00_option_panel_handle_bg_p_ef.png | Bin 3578 -> 0 bytes .../720x1280/00_option_panel_handle_bg_press.png | Bin 3441 -> 3242 bytes .../720x1280/00_option_panel_handle_more.png | Bin 0 -> 1430 bytes .../720x1280/00_option_panel_handle_more_press.png | Bin 0 -> 1429 bytes .../osp/bitmaps/720x1280/00_option_tray_bg.9.png | Bin 2858 -> 0 bytes .../bitmaps/720x1280/00_option_tray_bg_ef.9.png | Bin 2967 -> 0 bytes .../bitmaps/720x1280/00_option_tray_tail_bg.png | Bin 2944 -> 0 bytes .../bitmaps/720x1280/00_option_tray_tail_ef.png | Bin 3110 -> 0 bytes .../bitmaps/720x1280/00_overscrolling_bottom.#.png | Bin 0 -> 2833 bytes .../bitmaps/720x1280/00_overscrolling_bottom.9.png | Bin 2832 -> 0 bytes .../bitmaps/720x1280/00_overscrolling_left.#.png | Bin 0 -> 2845 bytes .../bitmaps/720x1280/00_overscrolling_left.9.png | Bin 2835 -> 0 bytes .../bitmaps/720x1280/00_overscrolling_right.#.png | Bin 0 -> 2844 bytes .../bitmaps/720x1280/00_overscrolling_right.9.png | Bin 2835 -> 0 bytes .../bitmaps/720x1280/00_overscrolling_top.#.png | Bin 0 -> 2850 bytes .../bitmaps/720x1280/00_overscrolling_top.9.png | Bin 2836 -> 0 bytes .../share/osp/bitmaps/720x1280/00_panel_bg.#.png | Bin 0 -> 2857 bytes .../share/osp/bitmaps/720x1280/00_panel_bg.9.png | Bin 2858 -> 0 bytes .../osp/bitmaps/720x1280/00_panel_handle_arrow.png | Bin 3175 -> 3164 bytes .../osp/bitmaps/720x1280/00_panel_handle_bg.#.png | Bin 0 -> 3553 bytes .../osp/bitmaps/720x1280/00_panel_handle_bg.9.png | Bin 3556 -> 0 bytes .../bitmaps/720x1280/00_panel_handle_bg_ef.#.png | Bin 0 -> 4772 bytes .../bitmaps/720x1280/00_panel_handle_bg_ef.9.png | Bin 4705 -> 0 bytes .../720x1280/00_panel_handle_bg_ef_press.#.png | Bin 0 -> 4214 bytes .../720x1280/00_panel_handle_bg_ef_press.9.png | Bin 4220 -> 0 bytes .../bitmaps/720x1280/00_panel_handle_bg_p_ef.9.png | Bin 4220 -> 0 bytes ...press_bg.9.png => 00_panel_list_press_bg.#.png} | Bin ...bg_ef.9.png => 00_panel_list_press_bg_ef.#.png} | Bin .../share/osp/bitmaps/720x1280/00_popup_bg.#.png | Bin 0 -> 1445 bytes .../share/osp/bitmaps/720x1280/00_popup_bg.9.png | Bin 1295 -> 0 bytes .../osp/bitmaps/720x1280/00_popup_bg_ef.#.png | Bin 0 -> 3410 bytes .../osp/bitmaps/720x1280/00_popup_bg_ef.9.png | Bin 1896 -> 0 bytes .../osp/bitmaps/720x1280/00_popup_bottom_bg.9.png | Bin 1004 -> 0 bytes ...up_bubble_bg.9.png => 00_popup_bubble_bg.#.png} | Bin .../00_popup_bubble_bg_ef.#.png} | Bin .../720x1280/00_popup_bubble_tail_bottom.png | Bin 0 -> 3078 bytes .../720x1280/00_popup_bubble_tail_bottom_bg.png | Bin 1108 -> 0 bytes .../720x1280/00_popup_bubble_tail_bottom_ef.png | Bin 1631 -> 3564 bytes .../bitmaps/720x1280/00_popup_bubble_tail_left.png | Bin 0 -> 3086 bytes .../720x1280/00_popup_bubble_tail_left_bg.png | Bin 1095 -> 0 bytes .../720x1280/00_popup_bubble_tail_left_ef.png | Bin 1615 -> 3648 bytes .../720x1280/00_popup_bubble_tail_right.png | Bin 0 -> 3095 bytes .../720x1280/00_popup_bubble_tail_right_bg.png | Bin 1089 -> 0 bytes .../720x1280/00_popup_bubble_tail_right_ef.png | Bin 1611 -> 3513 bytes .../bitmaps/720x1280/00_popup_bubble_tail_top.png | Bin 0 -> 3062 bytes .../720x1280/00_popup_bubble_tail_top_bg.png | Bin 1098 -> 0 bytes .../720x1280/00_popup_bubble_tail_top_ef.png | Bin 1548 -> 3437 bytes .../osp/bitmaps/720x1280/00_popup_title_bg.9.png | Bin 1010 -> 0 bytes .../720x1280/00_processing_ani_52x52_00.png | Bin 4745 -> 0 bytes .../720x1280/00_processing_ani_52x52_01.png | Bin 4723 -> 0 bytes .../720x1280/00_processing_ani_52x52_02.png | Bin 4750 -> 0 bytes .../720x1280/00_processing_ani_52x52_03.png | Bin 4749 -> 0 bytes .../720x1280/00_processing_ani_52x52_04.png | Bin 4761 -> 0 bytes .../720x1280/00_processing_ani_52x52_05.png | Bin 4756 -> 0 bytes .../720x1280/00_processing_ani_52x52_06.png | Bin 4763 -> 0 bytes .../720x1280/00_processing_ani_52x52_07.png | Bin 4746 -> 0 bytes .../720x1280/00_processing_ani_52x52_08.png | Bin 4727 -> 0 bytes .../720x1280/00_processing_ani_52x52_09.png | Bin 4749 -> 0 bytes .../share/osp/bitmaps/720x1280/00_progress.9.png | Bin 2830 -> 0 bytes .../osp/bitmaps/720x1280/00_progress_bar.#.png | Bin 0 -> 3012 bytes .../osp/bitmaps/720x1280/00_progress_bar.9.png | Bin 3034 -> 0 bytes .../osp/bitmaps/720x1280/00_progress_bar_ef.#.png | Bin 0 -> 3455 bytes .../osp/bitmaps/720x1280/00_progress_bar_ef.9.png | Bin 3392 -> 0 bytes .../bitmaps/720x1280/00_progress_bar_ef_m.9.png | Bin 3364 -> 0 bytes .../osp/bitmaps/720x1280/00_progress_bar_m.9.png | Bin 3007 -> 0 bytes .../osp/bitmaps/720x1280/00_progress_bg.#.png | Bin 0 -> 3245 bytes .../osp/bitmaps/720x1280/00_progress_bg.9.png | Bin 3212 -> 0 bytes .../osp/bitmaps/720x1280/00_progress_ef.9.png | Bin 2858 -> 0 bytes .../osp/bitmaps/720x1280/00_progress_ef_bg.#.png | Bin 0 -> 4284 bytes .../osp/bitmaps/720x1280/00_progress_ef_bg.9.png | Bin 4107 -> 0 bytes .../720x1280/00_reorder_group_list_bg.9.png | Bin 2922 -> 0 bytes .../share/osp/bitmaps/720x1280/00_scroll_bar.9.png | Bin 2937 -> 0 bytes .../osp/bitmaps/720x1280/00_scroll_bar_ef.9.png | Bin 3023 -> 0 bytes .../osp/bitmaps/720x1280/00_scroll_bar_h.#.png | Bin 0 -> 1131 bytes .../osp/bitmaps/720x1280/00_scroll_bar_h_ef.#.png | Bin 0 -> 1224 bytes .../720x1280/00_scroll_bar_handler_bg.9.png | Bin 2986 -> 0 bytes .../720x1280/00_scroll_bar_handler_bg_ef.9.png | Bin 3379 -> 0 bytes .../bitmaps/720x1280/00_scroll_bar_handler_h.png | Bin 2886 -> 0 bytes .../bitmaps/720x1280/00_scroll_bar_handler_v.png | Bin 2868 -> 0 bytes .../osp/bitmaps/720x1280/00_scroll_bar_v.#.png | Bin 0 -> 1123 bytes .../osp/bitmaps/720x1280/00_scroll_bar_v_ef.#.png | Bin 0 -> 1240 bytes .../720x1280/00_search_clear_icon_normal.png | Bin 1784 -> 0 bytes .../720x1280/00_search_clear_icon_press.png | Bin 3026 -> 0 bytes .../bitmaps/720x1280/00_search_edit_field_bg.#.png | Bin 0 -> 3053 bytes .../bitmaps/720x1280/00_search_edit_field_bg.9.png | Bin 3028 -> 0 bytes .../720x1280/00_search_edit_field_bg_ef.#.png | Bin 0 -> 3567 bytes .../720x1280/00_search_edit_field_bg_ef.9.png | Bin 3560 -> 0 bytes .../share/osp/bitmaps/720x1280/00_search_icon.png | Bin 3414 -> 3438 bytes .../osp/bitmaps/720x1280/00_search_icon_ef.png | Bin 3386 -> 1520 bytes .../usr/share/osp/bitmaps/720x1280/00_seg_line.png | Bin 2815 -> 0 bytes .../share/osp/bitmaps/720x1280/00_seg_line_tr.png | Bin 2804 -> 0 bytes .../share/osp/bitmaps/720x1280/00_slider_bg.9.png | Bin 3222 -> 0 bytes .../osp/bitmaps/720x1280/00_slider_bg_effect.9.png | Bin 1732 -> 0 bytes .../osp/bitmaps/720x1280/00_slider_handle.9.png | Bin 3139 -> 0 bytes .../osp/bitmaps/720x1280/00_slider_handle.png | Bin 1641 -> 3564 bytes .../osp/bitmaps/720x1280/00_slider_handle_dim.png | Bin 1134 -> 0 bytes .../osp/bitmaps/720x1280/00_slider_handle_ef.png | Bin 6367 -> 6772 bytes .../bitmaps/720x1280/00_slider_handle_ef_dim.png | Bin 6378 -> 6801 bytes .../bitmaps/720x1280/00_slider_handle_ef_press.png | Bin 5594 -> 5945 bytes .../bitmaps/720x1280/00_slider_handle_press.png | Bin 1190 -> 0 bytes .../osp/bitmaps/720x1280/00_slider_popup_bg.png | Bin 3376 -> 3378 bytes .../osp/bitmaps/720x1280/00_slider_popup_bg_ef.png | Bin 3371 -> 3394 bytes .../bitmaps/720x1280/00_slider_popup_bottom_bg.png | Bin .../720x1280/00_slider_popup_bottom_bg_ef.png | Bin .../osp/bitmaps/720x1280/00_softkey_icon_add.png | Bin 3041 -> 3037 bytes .../osp/bitmaps/720x1280/00_softkey_icon_zoom.png | Bin 3709 -> 3702 bytes .../osp/bitmaps/720x1280/00_softkey_left_bg.png | Bin 3158 -> 3165 bytes .../osp/bitmaps/720x1280/00_softkey_left_bg_ef.png | Bin 3299 -> 3300 bytes .../720x1280/00_softkey_left_bg_ef_press.png | Bin 3569 -> 3575 bytes .../bitmaps/720x1280/00_softkey_left_bg_p_ef.png | Bin 3569 -> 0 bytes .../bitmaps/720x1280/00_softkey_left_text_bg.png | Bin 3209 -> 3207 bytes .../720x1280/00_softkey_left_text_bg_ef.png | Bin 3372 -> 3372 bytes .../720x1280/00_softkey_left_text_bg_ef_press.png | Bin 3624 -> 3623 bytes .../720x1280/00_softkey_left_text_bg_p_ef.png | Bin 3624 -> 0 bytes .../osp/bitmaps/720x1280/00_softkey_right_bg.png | Bin 3171 -> 3172 bytes .../bitmaps/720x1280/00_softkey_right_bg_ef.png | Bin 3559 -> 3560 bytes .../720x1280/00_softkey_right_bg_ef_press.png | Bin 3543 -> 3548 bytes .../bitmaps/720x1280/00_softkey_right_bg_p_ef.png | Bin 3543 -> 0 bytes .../bitmaps/720x1280/00_softkey_right_text_bg.png | Bin 3211 -> 3208 bytes .../720x1280/00_softkey_right_text_bg_ef.png | Bin 3626 -> 3624 bytes .../720x1280/00_softkey_right_text_bg_ef_press.png | Bin 3580 -> 3579 bytes .../720x1280/00_softkey_right_text_bg_p_ef.png | Bin 3580 -> 0 bytes .../00_splite_handler_bg.#.png} | Bin .../00_splite_handler_bg_ef_h.#.png} | Bin .../00_splite_handler_bg_ef_v.#.png} | Bin .../osp/bitmaps/720x1280/00_splite_handler_h.png | Bin .../osp/bitmaps/720x1280/00_splite_handler_v.png | Bin .../bitmaps/720x1280/00_system_control_bg.#.png | Bin 0 -> 3141 bytes .../00_tab_bg.9.png => 720x1280/00_tab_bg.#.png} | Bin .../{00_tab_focus.9.png => 00_tab_focus.#.png} | Bin .../osp/bitmaps/720x1280/00_tab_icon_more_01.png | Bin 3190 -> 0 bytes .../osp/bitmaps/720x1280/00_tab_icon_more_02.png | Bin 3220 -> 0 bytes .../osp/bitmaps/720x1280/00_tab_move_bg.9.png | Bin 2952 -> 0 bytes .../osp/bitmaps/720x1280/00_tab_move_bg_ef.9.png | Bin 3255 -> 0 bytes .../osp/bitmaps/720x1280/00_tab_press_ef.#.png | Bin 0 -> 2849 bytes .../osp/bitmaps/720x1280/00_tab_press_ef.9.png | Bin 2849 -> 0 bytes .../00_thumbs_bg_focus.#.png} | Bin .../00_thumbs_line_bg.#.png} | Bin .../bitmaps/720x1280/00_thumbs_loading_bg.9.png | Bin 2861 -> 0 bytes .../osp/bitmaps/720x1280/00_tick_box_normal.png | Bin 2946 -> 0 bytes .../osp/bitmaps/720x1280/00_time_picker_btn.9.png | Bin 3214 -> 0 bytes .../720x1280/00_time_picker_btn_effect.9.png | Bin 3758 -> 0 bytes .../720x1280/00_time_picker_btn_press_effect.9.png | Bin 3902 -> 0 bytes ...pad_bg.9.png => 00_time_picker_keypad_bg.#.png} | Bin ...9.png => 00_time_picker_keypad_button_bg.#.png} | Bin ...ng => 00_time_picker_keypad_button_bg_ef.#.png} | Bin .../00_timepicker_number_bg.#.png} | Bin .../{00_toolbar_bg.9.png => 00_title_bg.#.png} | Bin .../osp/bitmaps/720x1280/00_title_bg_ef.9.png | Bin 2882 -> 0 bytes .../osp/bitmaps/720x1280/00_title_btn_bg.9.png | Bin 2926 -> 0 bytes .../bitmaps/720x1280/00_title_btn_bg_press.9.png | Bin 3020 -> 0 bytes .../720x1280/00_title_button_bg_press.9.png | Bin 2969 -> 0 bytes .../osp/bitmaps/720x1280/00_title_icon_more.png | Bin 3247 -> 0 bytes .../osp/bitmaps/720x1280/00_title_icon_search.png | Bin 4362 -> 0 bytes .../share/osp/bitmaps/720x1280/00_title_line.png | Bin 2812 -> 0 bytes .../{00_title_bg.9.png => 00_toolbar_bg.#.png} | Bin .../osp/bitmaps/720x1280/00_toolbar_btn_bg.9.png | Bin 2984 -> 0 bytes .../bitmaps/720x1280/00_toolbar_btn_bg_ef.9.png | Bin 3280 -> 0 bytes .../bitmaps/720x1280/00_toolbar_btn_bg_ef_01.9.png | Bin 3234 -> 0 bytes .../bitmaps/720x1280/00_toolbar_btn_bg_p_ef.9.png | Bin 3257 -> 0 bytes .../bitmaps/720x1280/00_toolbar_btn_focus.9.png | Bin 3027 -> 0 bytes .../osp/bitmaps/720x1280/00_toolbar_button.#.png | Bin 0 -> 5692 bytes .../osp/bitmaps/720x1280/00_toolbar_button.9.png | Bin 8019 -> 0 bytes .../bitmaps/720x1280/00_toolbar_button_bg.#.png | Bin 0 -> 1983 bytes .../bitmaps/720x1280/00_toolbar_button_bg.9.png | Bin 3731 -> 0 bytes .../720x1280/00_toolbar_button_bg_center.9.png | Bin 2856 -> 0 bytes .../720x1280/00_toolbar_button_bg_left.9.png | Bin 3372 -> 0 bytes .../720x1280/00_toolbar_button_bg_right.9.png | Bin 3353 -> 0 bytes .../720x1280/00_toolbar_button_center_ef.9.png | Bin 2995 -> 0 bytes .../00_toolbar_button_center_press_ef.9.png | Bin 3003 -> 0 bytes .../bitmaps/720x1280/00_toolbar_button_ef.#.png | Bin 0 -> 6157 bytes .../bitmaps/720x1280/00_toolbar_button_ef.9.png | Bin 7750 -> 0 bytes .../720x1280/00_toolbar_button_ef_press.#.png | Bin 0 -> 6728 bytes .../720x1280/00_toolbar_button_ef_press.9.png | Bin 8288 -> 0 bytes .../720x1280/00_toolbar_button_left_ef.9.png | Bin 5708 -> 0 bytes .../720x1280/00_toolbar_button_left_ef_press.9.png | Bin 5846 -> 0 bytes .../bitmaps/720x1280/00_toolbar_button_press.#.png | Bin 0 -> 6351 bytes .../bitmaps/720x1280/00_toolbar_button_press.9.png | Bin 8394 -> 0 bytes .../720x1280/00_toolbar_button_right_ef.9.png | Bin 5778 -> 0 bytes .../00_toolbar_button_right_press_ef.9.png | Bin 5913 -> 0 bytes .../share/osp/bitmaps/720x1280/00_toolbar_line.png | Bin 2812 -> 0 bytes .../osp/bitmaps/720x1280/00_toolbar_line_01.png | Bin 946 -> 0 bytes ..._toolbar_press.9.png => 00_toolbar_press.#.png} | Bin .../720x1280/00_toolbar_trans_button_center.9.png | Bin 2930 -> 0 bytes .../00_toolbar_trans_button_center_press.9.png | Bin 2973 -> 0 bytes .../720x1280/00_toolbar_trans_button_left.9.png | Bin 5864 -> 0 bytes .../00_toolbar_trans_button_left_press.9.png | Bin 6144 -> 0 bytes .../720x1280/00_toolbar_trans_button_right.9.png | Bin 5992 -> 0 bytes .../00_toolbar_trans_button_right_press.9.png | Bin 6271 -> 0 bytes .../osp/bitmaps/720x1280/00_transparent_bg.9.png | Bin 198 -> 0 bytes .../bitmaps/720x1280/00_value_progress_bar.9.png | Bin 2962 -> 0 bytes .../720x1280/00_value_progress_bar_effect.9.png | Bin 2982 -> 0 bytes .../bitmaps/720x1280/00_value_progress_bg.9.png | Bin 2956 -> 0 bytes .../720x1280/00_value_progress_bg_effect.9.png | Bin 2933 -> 0 bytes .../720x1280/00_winset_Back_btn_normal.9.png | Bin 2963 -> 0 bytes .../720x1280/00_winset_Back_btn_press.9.png | Bin 2973 -> 0 bytes .../osp/bitmaps/720x1280/00_winset_badge.9.png | Bin 4155 -> 0 bytes .../720x1280/00_winset_control_tabbar_bg.9.png | Bin 104 -> 0 bytes .../720x1280/00_winset_control_toolbar_bg.9.png | Bin 2819 -> 0 bytes .../bitmaps/720x1280/00_winset_divider_line.9.png | Bin 2852 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_01.png | Bin 3940 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_02.png | Bin 3894 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_03.png | Bin 3876 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_04.png | Bin 3969 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_05.png | Bin 3951 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_06.png | Bin 3932 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_07.png | Bin 3908 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_08.png | Bin 4014 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_09.png | Bin 4049 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_10.png | Bin 3974 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_11.png | Bin 3912 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_12.png | Bin 3963 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_13.png | Bin 4000 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_14.png | Bin 3963 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_15.png | Bin 4013 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_16.png | Bin 3939 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_17.png | Bin 3903 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_18.png | Bin 3887 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_19.png | Bin 3982 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_20.png | Bin 3988 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_21.png | Bin 3916 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_22.png | Bin 3932 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_23.png | Bin 4002 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_24.png | Bin 3995 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_25.png | Bin 3932 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_26.png | Bin 3913 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_27.png | Bin 3934 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_28.png | Bin 3979 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_29.png | Bin 3978 -> 0 bytes .../bitmaps/720x1280/00_winset_list_process_30.png | Bin 3988 -> 0 bytes .../osp/bitmaps/720x1280/00_winset_thumbs_bg.9.png | Bin 2914 -> 0 bytes .../osp/bitmaps/720x1280/00_winset_title_bg.9.png | Bin 95 -> 0 bytes .../720x1280/04_textinput_qwerty_button.9.png | Bin 3439 -> 0 bytes .../720x1280/04_textinput_qwerty_button_01.9.png | Bin 3420 -> 0 bytes .../04_textinput_qwerty_button_press.9.png | Bin 1718 -> 0 bytes .../osp/bitmaps/720x1280/Off_Background#5.png | Bin 4610 -> 0 bytes .../share/osp/bitmaps/720x1280/On_Background#5.png | Bin 4465 -> 0 bytes .../TTS_focus.9.png => 720x1280/TTS_focus.#.png} | Bin .../TTS_popup_bg.#.png} | Bin .../bitmaps/720x1280/black/00_btn_circle_bg_ef.png | Bin 4391 -> 0 bytes .../720x1280/black/00_button_01_bg_ef.9.png | Bin 3208 -> 0 bytes .../720x1280/black/00_button_edit_bg_ef.9.png | Bin 3094 -> 0 bytes .../720x1280/black/00_button_seg_bg_ef.9.png | Bin 3279 -> 0 bytes .../720x1280/black/00_button_seg_f_bg_ef_01.9.png | Bin 3133 -> 0 bytes .../720x1280/black/00_button_seg_f_bg_ef_02.9.png | Bin 2903 -> 0 bytes .../720x1280/black/00_button_seg_f_bg_ef_03.9.png | Bin 3067 -> 0 bytes .../720x1280/black/00_color_picker_bg.9.png | Bin 2884 -> 0 bytes .../720x1280/black/00_dialogue_group_bg_line.9.png | Bin 2890 -> 0 bytes .../720x1280/black/00_edit_field_bg_ef.9.png | Bin 3186 -> 0 bytes .../720x1280/black/00_groupedlist_bg_01.9.png | Bin 3059 -> 0 bytes .../black/00_groupedlist_bottom_bg_01.9.png | Bin 3166 -> 0 bytes .../black/00_groupedlist_center_bg_01.9.png | Bin 3007 -> 0 bytes .../720x1280/black/00_groupedlist_top_bg_01.9.png | Bin 3193 -> 0 bytes .../720x1280/black/00_header_process_01.png | Bin 0 -> 3452 bytes .../720x1280/black/00_header_process_02.png | Bin 0 -> 3425 bytes .../720x1280/black/00_header_process_03.png | Bin 0 -> 3386 bytes .../720x1280/black/00_header_process_04.png | Bin 0 -> 3455 bytes .../720x1280/black/00_header_process_05.png | Bin 0 -> 3479 bytes .../720x1280/black/00_header_process_06.png | Bin 0 -> 3485 bytes .../720x1280/black/00_header_process_07.png | Bin 0 -> 3469 bytes .../720x1280/black/00_header_process_08.png | Bin 0 -> 3485 bytes .../720x1280/black/00_header_process_09.png | Bin 0 -> 3466 bytes .../720x1280/black/00_header_process_10.png | Bin 0 -> 3448 bytes .../720x1280/black/00_header_process_11.png | Bin 0 -> 3450 bytes .../720x1280/black/00_header_process_12.png | Bin 0 -> 3467 bytes .../720x1280/black/00_header_process_13.png | Bin 0 -> 3481 bytes .../720x1280/black/00_header_process_14.png | Bin 0 -> 3460 bytes .../720x1280/black/00_header_process_15.png | Bin 0 -> 3465 bytes .../720x1280/black/00_header_process_16.png | Bin 0 -> 3451 bytes .../720x1280/black/00_header_process_17.png | Bin 0 -> 3423 bytes .../720x1280/black/00_header_process_18.png | Bin 0 -> 3386 bytes .../720x1280/black/00_header_process_19.png | Bin 0 -> 3460 bytes .../720x1280/black/00_header_process_20.png | Bin 0 -> 3479 bytes .../720x1280/black/00_header_process_21.png | Bin 0 -> 3468 bytes .../720x1280/black/00_header_process_22.png | Bin 0 -> 3463 bytes .../720x1280/black/00_header_process_23.png | Bin 0 -> 3461 bytes .../720x1280/black/00_header_process_24.png | Bin 0 -> 3457 bytes .../720x1280/black/00_header_process_25.png | Bin 0 -> 3433 bytes .../720x1280/black/00_header_process_26.png | Bin 0 -> 3433 bytes .../720x1280/black/00_header_process_27.png | Bin 0 -> 3460 bytes .../720x1280/black/00_header_process_28.png | Bin 0 -> 3465 bytes .../720x1280/black/00_header_process_29.png | Bin 0 -> 3457 bytes .../720x1280/black/00_header_process_30.png | Bin 0 -> 3468 bytes ...exlist_bg_ef.9.png => 00_indexlist_bg_ef.#.png} | Bin .../720x1280/black/00_indexlist_icon_line.png | Bin 2822 -> 0 bytes .../720x1280/black/00_list_process_01_32x32.png | Bin 3449 -> 0 bytes .../720x1280/black/00_list_process_02_32x32.png | Bin 3418 -> 0 bytes .../720x1280/black/00_list_process_03_32x32.png | Bin 3373 -> 0 bytes .../720x1280/black/00_list_process_04_32x32.png | Bin 3446 -> 0 bytes .../720x1280/black/00_list_process_05_32x32.png | Bin 3467 -> 0 bytes .../720x1280/black/00_list_process_06_32x32.png | Bin 3476 -> 0 bytes .../720x1280/black/00_list_process_07_32x32.png | Bin 3460 -> 0 bytes .../720x1280/black/00_list_process_08_32x32.png | Bin 3475 -> 0 bytes .../720x1280/black/00_list_process_09_32x32.png | Bin 3453 -> 0 bytes .../720x1280/black/00_list_process_10_32x32.png | Bin 3437 -> 0 bytes .../720x1280/black/00_list_process_11_32x32.png | Bin 3440 -> 0 bytes .../720x1280/black/00_list_process_12_32x32.png | Bin 3456 -> 0 bytes .../720x1280/black/00_list_process_13_32x32.png | Bin 3472 -> 0 bytes .../720x1280/black/00_list_process_14_32x32.png | Bin 3453 -> 0 bytes .../720x1280/black/00_list_process_15_32x32.png | Bin 3458 -> 0 bytes .../720x1280/black/00_list_process_16_32x32.png | Bin 3441 -> 0 bytes .../720x1280/black/00_list_process_17_32x32.png | Bin 3412 -> 0 bytes .../720x1280/black/00_list_process_18_32x32.png | Bin 3375 -> 0 bytes .../720x1280/black/00_list_process_19_32x32.png | Bin 3451 -> 0 bytes .../720x1280/black/00_list_process_20_32x32.png | Bin 3469 -> 0 bytes .../720x1280/black/00_list_process_21_32x32.png | Bin 3459 -> 0 bytes .../720x1280/black/00_list_process_22_32x32.png | Bin 3452 -> 0 bytes .../720x1280/black/00_list_process_23_32x32.png | Bin 3451 -> 0 bytes .../720x1280/black/00_list_process_24_32x32.png | Bin 3444 -> 0 bytes .../720x1280/black/00_list_process_25_32x32.png | Bin 3423 -> 0 bytes .../720x1280/black/00_list_process_26_32x32.png | Bin 3423 -> 0 bytes .../720x1280/black/00_list_process_27_32x32.png | Bin 3447 -> 0 bytes .../720x1280/black/00_list_process_28_32x32.png | Bin 3452 -> 0 bytes .../720x1280/black/00_list_process_29_32x32.png | Bin 3450 -> 0 bytes .../720x1280/black/00_list_process_30_32x32.png | Bin 3460 -> 0 bytes .../{00_popup_bg_ef.9.png => 00_popup_bg_ef.#.png} | Bin .../720x1280/black/00_popup_bottom_bg.9.png | Bin 2956 -> 0 bytes ...ble_bg_ef.9.png => 00_popup_bubble_bg_ef.#.png} | Bin ...ton_bg_ef.9.png => 00_popup_button_bg_ef.#.png} | Bin ...opup_title_bg.9.png => 00_popup_title_bg.#.png} | Bin ...itle_bg_ef.9.png => 00_popup_title_bg_ef.#.png} | Bin .../720x1280/black/00_reorder_group_list_bg.9.png | Bin 3016 -> 0 bytes .../720x1280/black/00_slider_handle_bg_ef.9.png | Bin 3135 -> 0 bytes .../osp/bitmaps/720x1280/black/00_tab_bg_ef.9.png | Bin 3260 -> 0 bytes ..._bg_focus_ef.9.png => 00_tab_bg_focus_ef.#.png} | Bin ...ab_bg_line_ef.9.png => 00_tab_bg_line_ef.#.png} | Bin .../{00_title_bg_ef.9.png => 00_title_bg_ef.#.png} | Bin .../720x1280/black/00_title_btn_bg_ef.9.png | Bin 3133 -> 0 bytes .../black/00_title_button_bg_ef_press.9.png | Bin 3270 -> 0 bytes .../720x1280/black/00_title_option_btn_bg_ef.9.png | Bin 3244 -> 0 bytes ..._toolbar_bg_ef.9.png => 00_toolbar_bg_ef.#.png} | Bin ...ar_press_ef.9.png => 00_toolbar_ef_press.#.png} | Bin .../720x1280/black/00_toolbar_ef_press.9.png | Bin 3295 -> 0 bytes .../720x1280/black/00_toolbar_tab_bg_ef.9.png | Bin 3268 -> 0 bytes .../black/00_toolbar_tab_bg_focus_ef.9.png | Bin 3283 -> 0 bytes .../720x1280/black/00_toolbar_tab_bg_line_ef.9.png | Bin 2948 -> 0 bytes .../bitmaps/720x1280/black/00_winset_badge.9.png | Bin 4163 -> 0 bytes .../osp/bitmaps/720x1280/black/pd_btn_bg.#.png | Bin 0 -> 2295 bytes .../720x1280/black/pd_btn_bg_arrow_down.png | Bin 0 -> 3924 bytes .../bitmaps/720x1280/black/pd_btn_bg_arrow_up.png | Bin 0 -> 3757 bytes .../bitmaps/720x1280/copy&paste_Icon02_left.png | Bin 3906 -> 0 bytes .../720x1280/copy&paste_Icon02_left_press.png | Bin 4083 -> 0 bytes .../bitmaps/720x1280/copy&paste_Icon02_right.png | Bin 3952 -> 0 bytes .../720x1280/copy&paste_Icon02_right_press.png | Bin 4143 -> 0 bytes .../bitmaps/720x1280/copy&paste_icon_search.png | Bin .../osp/bitmaps/720x1280/white/00_arrow_left.png | Bin 0 -> 3183 bytes .../osp/bitmaps/720x1280/white/00_arrow_right.png | Bin 0 -> 3189 bytes .../bitmaps/720x1280/white/00_btn_circle_bg_ef.png | Bin 5333 -> 0 bytes .../720x1280/white/00_button_01_bg_ef.9.png | Bin 3433 -> 0 bytes .../720x1280/white/00_button_edit_bg_ef.9.png | Bin 3081 -> 0 bytes .../720x1280/white/00_button_seg_bg_ef.9.png | Bin 3213 -> 0 bytes .../720x1280/white/00_button_seg_f_bg_ef_01.9.png | Bin 3071 -> 0 bytes .../720x1280/white/00_button_seg_f_bg_ef_02.9.png | Bin 2916 -> 0 bytes .../720x1280/white/00_button_seg_f_bg_ef_03.9.png | Bin 3073 -> 0 bytes .../720x1280/white/00_category_button.#.png | Bin 0 -> 2974 bytes .../720x1280/white/00_category_button_focus.#.png | Bin 0 -> 3030 bytes .../720x1280/white/00_category_left_gradation.png | Bin 0 -> 3133 bytes .../720x1280/white/00_category_panel_bg.#.png | Bin 0 -> 2857 bytes .../720x1280/white/00_category_panel_bg_ef.#.png | Bin 0 -> 2895 bytes .../720x1280/white/00_category_right_gradation.png | Bin 0 -> 3114 bytes .../720x1280/white/00_color_picker_bg.9.png | Bin 2888 -> 0 bytes .../720x1280/white/00_dialogue_group_bg_line.9.png | Bin 2912 -> 0 bytes .../720x1280/white/00_edit_field_bg_ef.9.png | Bin 3056 -> 0 bytes .../720x1280/white/00_edit_field_round_bg_ef.9.png | Bin 3870 -> 0 bytes .../720x1280/white/00_groupedlist_bg_01.9.png | Bin 3068 -> 0 bytes .../white/00_groupedlist_bottom_bg_01.9.png | Bin 3170 -> 0 bytes .../white/00_groupedlist_center_bg_01.9.png | Bin 3001 -> 0 bytes .../720x1280/white/00_groupedlist_top_bg_01.9.png | Bin 3202 -> 0 bytes .../720x1280/white/00_header_process_01.png | Bin 0 -> 3428 bytes .../720x1280/white/00_header_process_02.png | Bin 0 -> 3398 bytes .../720x1280/white/00_header_process_03.png | Bin 0 -> 3367 bytes .../720x1280/white/00_header_process_04.png | Bin 0 -> 3453 bytes .../720x1280/white/00_header_process_05.png | Bin 0 -> 3448 bytes .../720x1280/white/00_header_process_06.png | Bin 0 -> 3421 bytes .../720x1280/white/00_header_process_07.png | Bin 0 -> 3413 bytes .../720x1280/white/00_header_process_08.png | Bin 0 -> 3475 bytes .../720x1280/white/00_header_process_09.png | Bin 0 -> 3449 bytes .../720x1280/white/00_header_process_10.png | Bin 0 -> 3432 bytes .../720x1280/white/00_header_process_11.png | Bin 0 -> 3409 bytes .../720x1280/white/00_header_process_12.png | Bin 0 -> 3433 bytes .../720x1280/white/00_header_process_13.png | Bin 0 -> 3437 bytes .../720x1280/white/00_header_process_14.png | Bin 0 -> 3460 bytes .../720x1280/white/00_header_process_15.png | Bin 0 -> 3456 bytes .../720x1280/white/00_header_process_16.png | Bin 0 -> 3419 bytes .../720x1280/white/00_header_process_17.png | Bin 0 -> 3407 bytes .../720x1280/white/00_header_process_18.png | Bin 0 -> 3383 bytes .../720x1280/white/00_header_process_19.png | Bin 0 -> 3425 bytes .../720x1280/white/00_header_process_20.png | Bin 0 -> 3466 bytes .../720x1280/white/00_header_process_21.png | Bin 0 -> 3441 bytes .../720x1280/white/00_header_process_22.png | Bin 0 -> 3384 bytes .../720x1280/white/00_header_process_23.png | Bin 0 -> 3454 bytes .../720x1280/white/00_header_process_24.png | Bin 0 -> 3419 bytes .../720x1280/white/00_header_process_25.png | Bin 0 -> 3389 bytes .../720x1280/white/00_header_process_26.png | Bin 0 -> 3362 bytes .../720x1280/white/00_header_process_27.png | Bin 0 -> 3404 bytes .../720x1280/white/00_header_process_28.png | Bin 0 -> 3437 bytes .../720x1280/white/00_header_process_29.png | Bin 0 -> 3428 bytes .../720x1280/white/00_header_process_30.png | Bin 0 -> 3452 bytes ...exlist_bg_ef.9.png => 00_indexlist_bg_ef.#.png} | Bin .../720x1280/white/00_indexlist_icon_line.png | Bin 2824 -> 0 bytes .../720x1280/white/00_list_process_01_32x32.png | Bin 1614 -> 0 bytes .../720x1280/white/00_list_process_02_32x32.png | Bin 1577 -> 0 bytes .../720x1280/white/00_list_process_03_32x32.png | Bin 1551 -> 0 bytes .../720x1280/white/00_list_process_04_32x32.png | Bin 1630 -> 0 bytes .../720x1280/white/00_list_process_05_32x32.png | Bin 1624 -> 0 bytes .../720x1280/white/00_list_process_06_32x32.png | Bin 1604 -> 0 bytes .../720x1280/white/00_list_process_07_32x32.png | Bin 1593 -> 0 bytes .../720x1280/white/00_list_process_08_32x32.png | Bin 1655 -> 0 bytes .../720x1280/white/00_list_process_09_32x32.png | Bin 1630 -> 0 bytes .../720x1280/white/00_list_process_10_32x32.png | Bin 1613 -> 0 bytes .../720x1280/white/00_list_process_11_32x32.png | Bin 1585 -> 0 bytes .../720x1280/white/00_list_process_12_32x32.png | Bin 1607 -> 0 bytes .../720x1280/white/00_list_process_13_32x32.png | Bin 1618 -> 0 bytes .../720x1280/white/00_list_process_14_32x32.png | Bin 1643 -> 0 bytes .../720x1280/white/00_list_process_15_32x32.png | Bin 1634 -> 0 bytes .../720x1280/white/00_list_process_16_32x32.png | Bin 1600 -> 0 bytes .../720x1280/white/00_list_process_17_32x32.png | Bin 1591 -> 0 bytes .../720x1280/white/00_list_process_18_32x32.png | Bin 1561 -> 0 bytes .../720x1280/white/00_list_process_19_32x32.png | Bin 1608 -> 0 bytes .../720x1280/white/00_list_process_20_32x32.png | Bin 1648 -> 0 bytes .../720x1280/white/00_list_process_21_32x32.png | Bin 1625 -> 0 bytes .../720x1280/white/00_list_process_22_32x32.png | Bin 1568 -> 0 bytes .../720x1280/white/00_list_process_23_32x32.png | Bin 1639 -> 0 bytes .../720x1280/white/00_list_process_24_32x32.png | Bin 1604 -> 0 bytes .../720x1280/white/00_list_process_25_32x32.png | Bin 1571 -> 0 bytes .../720x1280/white/00_list_process_26_32x32.png | Bin 1547 -> 0 bytes .../720x1280/white/00_list_process_27_32x32.png | Bin 1586 -> 0 bytes .../720x1280/white/00_list_process_28_32x32.png | Bin 1623 -> 0 bytes .../720x1280/white/00_list_process_29_32x32.png | Bin 1610 -> 0 bytes .../720x1280/white/00_list_process_30_32x32.png | Bin 1636 -> 0 bytes .../bitmaps/720x1280/white/00_popup_bg_ef.#.png | Bin 0 -> 3410 bytes .../bitmaps/720x1280/white/00_popup_bg_ef.9.png | Bin 3626 -> 0 bytes .../720x1280/white/00_popup_bottom_bg.9.png | Bin 2952 -> 0 bytes ...ble_bg_ef.9.png => 00_popup_bubble_bg_ef.#.png} | Bin ...ton_bg_ef.9.png => 00_popup_button_bg_ef.#.png} | Bin .../bitmaps/720x1280/white/00_popup_title_bg.9.png | Bin 2974 -> 0 bytes .../720x1280/white/00_popup_title_bg_ef.9.png | Bin 3219 -> 0 bytes .../720x1280/white/00_reorder_group_list_bg.9.png | Bin 3031 -> 0 bytes .../{00_slider_bg.9.png => 00_slider_bg.#.png} | Bin .../bitmaps/720x1280/white/00_slider_handle.9.png | Bin 3194 -> 0 bytes .../720x1280/white/00_slider_handle_bg_ef.9.png | Bin 3145 -> 0 bytes .../720x1280/white/00_slider_handle_dim.9.png | Bin 3165 -> 0 bytes .../720x1280/white/00_slider_handle_press.9.png | Bin 3239 -> 0 bytes .../bitmaps/720x1280/white/00_title_bg_ef.9.png | Bin 2910 -> 0 bytes .../720x1280/white/00_title_btn_bg_ef.9.png | Bin 3122 -> 0 bytes .../white/00_title_button_bg_ef_press.9.png | Bin 3262 -> 0 bytes .../720x1280/white/00_title_option_btn_bg_ef.9.png | Bin 3217 -> 0 bytes ..._toolbar_bg_ef.9.png => 00_toolbar_bg_ef.#.png} | Bin ...ar_press_ef.9.png => 00_toolbar_ef_press.#.png} | Bin .../720x1280/white/00_toolbar_ef_press.9.png | Bin 3329 -> 0 bytes .../720x1280/white/00_toolbar_tab_bg_ef.9.png | Bin 3182 -> 0 bytes .../white/00_toolbar_tab_bg_focus_ef.9.png | Bin 3258 -> 0 bytes .../720x1280/white/00_toolbar_tab_bg_line_ef.9.png | Bin 2945 -> 0 bytes .../bitmaps/720x1280/white/00_winset_badge.9.png | Bin 4177 -> 0 bytes .../osp/bitmaps/720x1280/white/pd_btn_bg.#.png | Bin 0 -> 2082 bytes .../720x1280/white/pd_btn_bg_arrow_down.png | Bin 0 -> 4081 bytes .../bitmaps/720x1280/white/pd_btn_bg_arrow_up.png | Bin 0 -> 3799 bytes res/common/usr/share/osp/themes/black.xml | 445 +-- res/common/usr/share/osp/themes/white.xml | 114 +- src/app/FApp_AppResourceBitmap.cpp | 95 +- src/app/FApp_AppResourceBitmap.h | 16 +- src/app/FApp_AppResourceBitmapUtil.cpp | 203 +- src/app/FApp_AppResourceBitmapUtil.h | 31 +- src/app/FApp_UiAppImpl.cpp | 98 +- src/app/inc/FApp_AppFrame.h | 2 +- src/app/inc/FApp_UiAppImpl.h | 50 +- src/graphics/CMakeLists.txt | 4 +- src/graphics/FGrpBitmap.cpp | 114 + src/graphics/FGrpCanvas.cpp | 498 +++ src/graphics/FGrpCoordinateSystem.cpp | 99 + src/graphics/FGrpEnrichedText.cpp | 132 + src/graphics/FGrpFont.cpp | 166 +- src/graphics/FGrp_Bitmap.cpp | 5 +- src/graphics/FGrp_Bitmap.h | 2 +- src/graphics/FGrp_BitmapCoordHolder.h | 105 +- src/graphics/FGrp_BitmapImpl.cpp | 1035 ++++-- src/graphics/FGrp_BitmapUtil.cpp | 48 +- src/graphics/FGrp_BitmapUtil.h | 44 +- src/graphics/FGrp_Canvas.cpp | 419 ++- src/graphics/FGrp_Canvas.h | 19 +- src/graphics/FGrp_CanvasCairo.cpp | 66 +- src/graphics/FGrp_CanvasCairo.h | 12 + src/graphics/FGrp_CanvasCoordHolder.h | 210 +- src/graphics/FGrp_CanvasImpl.cpp | 1233 +++++-- src/graphics/FGrp_CanvasPixman.cpp | 62 +- src/graphics/FGrp_CanvasPixman.h | 4 +- src/graphics/FGrp_CanvasTool.cpp | 83 + src/graphics/FGrp_CoordinateSystem.cpp | 49 +- src/graphics/FGrp_CoordinateSystemDeviceSpec.cpp | 123 +- src/graphics/FGrp_CoordinateSystemImpl.cpp | 24 +- src/graphics/FGrp_CoordinateSystemUtils.cpp | 274 ++ src/graphics/FGrp_EnrichedTextImpl.cpp | 166 +- src/graphics/FGrp_Font.cpp | 1408 ++++++-- src/graphics/FGrp_Font.h | 67 +- src/graphics/FGrp_FontBidiManager.cpp | 393 --- src/graphics/FGrp_FontBidiManager.h | 45 - src/graphics/FGrp_FontBidiUtil.cpp | 569 +++ src/graphics/FGrp_FontBidiUtil.h | 99 + src/graphics/FGrp_FontCache.cpp | 14 +- src/graphics/FGrp_FontCache.h | 6 +- src/graphics/FGrp_FontFt2.cpp | 612 ++-- src/graphics/FGrp_FontFt2.h | 19 +- src/graphics/FGrp_FontImpl.cpp | 409 ++- src/graphics/FGrp_FontMemoryManager.cpp | 24 +- src/graphics/FGrp_FontRsrcManager.cpp | 220 +- src/graphics/FGrp_FontRsrcManager.h | 32 +- src/graphics/FGrp_IFont.h | 71 +- src/graphics/FGrp_NonScale.cpp | 68 +- src/graphics/FGrp_ResUtil.h | 167 + src/graphics/FGrp_TextElementImpl.cpp | 2 +- src/graphics/effect/FGrp_Effect.h | 2 +- src/graphics/effect/FGrp_EffectManip.cpp | 116 +- src/graphics/inc/FGrp_BitmapImpl.h | 21 +- src/graphics/inc/FGrp_CanvasImpl.h | 108 +- src/graphics/inc/FGrp_CanvasTextureImpl.h | 2 - src/graphics/inc/FGrp_CanvasTool.h | 48 + src/graphics/inc/FGrp_CoordinateSystem.h | 31 +- src/graphics/inc/FGrp_CoordinateSystemUtils.h | 103 + src/graphics/inc/FGrp_EnrichedTextImpl.h | 21 +- src/graphics/inc/FGrp_FontImpl.h | 24 + src/graphics/inc/FGrp_NonScale.h | 4 +- src/graphics/inc/FGrp_TextCommon.h | 9 + src/graphics/inc/FGrp_TextTextCutLink.h | 3 + src/graphics/inc/FGrp_TextTextElement.h | 12 + src/graphics/inc/FGrp_TextTextImage.h | 16 + src/graphics/inc/FGrp_TextTextObject.h | 113 +- src/graphics/inc/FGrp_TextTextSimple.h | 22 +- src/graphics/inc/FGrp_VideoTextureImpl.h | 1 + src/graphics/opengl/FGrpEgl.cpp | 991 +++--- src/graphics/opengl/FGrpGles1.cpp | 6 +- src/graphics/opengl/FGrpGles2.cpp | 6 +- src/graphics/opengl/FGrp_CanvasTexture.cpp | 226 +- src/graphics/opengl/FGrp_CanvasTexture.h | 20 +- src/graphics/opengl/FGrp_CanvasTextureImpl.cpp | 6 - src/graphics/opengl/FGrp_GlPlayerImpl.cpp | 11 +- src/graphics/opengl/FGrp_VideoTexture.cpp | 48 +- src/graphics/opengl/FGrp_VideoTexture.h | 2 +- src/graphics/opengl/FGrp_VideoTextureImpl.cpp | 13 + src/graphics/text/FGrp_TextTextColumn.cpp | 226 +- src/graphics/text/FGrp_TextTextColumn.h | 36 + src/graphics/text/FGrp_TextTextComposite.cpp | 2586 ++++++++------ src/graphics/text/FGrp_TextTextComposite.h | 105 + src/graphics/text/FGrp_TextTextCutLink.cpp | 10 + src/graphics/text/FGrp_TextTextCutLinkParser.cpp | 16 +- src/graphics/text/FGrp_TextTextElement.cpp | 33 + src/graphics/text/FGrp_TextTextImage.cpp | 70 +- src/graphics/text/FGrp_TextTextLine.cpp | 438 ++- src/graphics/text/FGrp_TextTextLine.h | 38 + src/graphics/text/FGrp_TextTextObject.cpp | 2065 ++++++----- src/graphics/text/FGrp_TextTextSimple.cpp | 475 ++- src/graphics/text/FGrp_TextTextUtility.cpp | 161 +- src/graphics/text/FGrp_TextTextUtility.h | 14 + src/graphics/text/FGrp_TextTextWidthManager.cpp | 7 + src/graphics/text/FGrp_TextTextWidthManager.h | 2 + src/graphics/util/FGrp_Util.cpp | 28 + src/graphics/util/FGrp_Util.h | 1 + src/graphics/util/FGrp_UtilTemplate.h | 36 + src/graphics/util/FGrp_UtilType.h | 202 +- src/ui/CMakeLists.txt | 20 +- src/ui/FUiAccessibilityElement.cpp | 41 + src/ui/FUiCardLayout.cpp | 0 src/ui/FUiClipboard.cpp | 2 + src/ui/FUiClipboardItem.cpp | 2 + src/ui/FUiContainer.cpp | 119 +- src/ui/FUiControl.cpp | 581 +++- src/ui/FUiCustomControlBase.cpp | 1 + src/ui/FUiGridLayout.cpp | 59 + src/ui/FUiHorizontalBoxLayout.cpp | 80 +- src/ui/FUiInputConnection.cpp | 59 +- src/ui/FUiKeyEventInfo.cpp | 80 + src/ui/FUiKeyEventManager.cpp | 2 +- src/ui/FUiKeyboardMap.cpp | 0 src/ui/FUiRelativeLayout.cpp | 78 + src/ui/FUiSystemUtil.cpp | 238 +- src/ui/FUiTouch.cpp | 4 +- src/ui/FUiTouchEventInfo.cpp | 16 + src/ui/FUiTouchFlickGestureDetector.cpp | 9 + src/ui/FUiTouchGestureDetector.cpp | 8 +- src/ui/FUiTouchLongPressGestureDetector.cpp | 22 + src/ui/FUiTouchPinchGestureDetector.cpp | 22 + src/ui/FUiTouchRotationGestureDetector.cpp | 10 + src/ui/FUiTouchTapGestureDetector.cpp | 22 + src/ui/FUiUiConfiguration.cpp | 16 + src/ui/FUiVariant.cpp | 188 +- src/ui/FUiVerticalBoxLayout.cpp | 79 + src/ui/FUiWindow.cpp | 52 +- src/ui/FUi_AccessibilityContainer.cpp | 180 +- src/ui/FUi_AccessibilityContainerImpl.cpp | 89 +- src/ui/FUi_AccessibilityElement.cpp | 65 +- src/ui/FUi_AccessibilityElementImpl.cpp | 12 +- src/ui/FUi_AccessibilityGesture.cpp | 74 +- src/ui/FUi_AccessibilityManager.cpp | 623 ++-- src/ui/FUi_AccessibilitySystemSettingLoader.cpp | 24 +- src/ui/FUi_AccessibilityTtsPlayer.cpp | 110 +- src/ui/FUi_CardLayoutImpl.cpp | 0 src/ui/FUi_CardLayoutImpl.h | 0 src/ui/FUi_Clipboard.cpp | 59 +- src/ui/FUi_Clipboard.h | 11 + src/ui/FUi_ClipboardImpl.cpp | 2 + src/ui/FUi_ClipboardImpl.h | 2 + src/ui/FUi_ClipboardItem.cpp | 2 + src/ui/FUi_ClipboardItem.h | 2 + src/ui/FUi_ClipboardItemImpl.cpp | 2 + src/ui/FUi_ClipboardItemImpl.h | 2 + src/ui/FUi_ClipboardPopupEvent.cpp | 156 + src/ui/FUi_ContainerImpl.cpp | 114 +- src/ui/FUi_Control.cpp | 875 ++++- src/ui/FUi_ControlImpl.cpp | 1103 +++++- src/ui/FUi_ControlImplManager.cpp | 48 +- src/ui/FUi_ControlManager.cpp | 592 +--- src/ui/FUi_CoordinateSystemUtils.cpp | 141 - src/ui/FUi_CustomControlBaseImpl.cpp | 1 + src/ui/FUi_DataBinding.cpp | 12 +- src/ui/FUi_DragDropEvent.cpp | 24 +- src/ui/FUi_DragDropEventArg.cpp | 2 +- src/ui/FUi_EcoreEvas.cpp | 1469 +++----- src/ui/FUi_EcoreEvasMgr.cpp | 2 + src/ui/FUi_EflUiEventManager.cpp | 223 +- src/ui/FUi_EflUiEventManager.h | 2 + src/ui/FUi_EflWindow.cpp | 2 + src/ui/FUi_EflWindow.h | 2 + src/ui/FUi_ErrorMessages.cpp | 0 src/ui/FUi_FingerInfo.cpp | 10 +- src/ui/FUi_GridLayoutImpl.cpp | 9 +- src/ui/FUi_GridLayoutImpl.h | 16 +- src/ui/FUi_HorizontalBoxLayoutImpl.cpp | 15 +- src/ui/FUi_HorizontalBoxLayoutImpl.h | 24 +- src/ui/FUi_InputConnectionImpl.cpp | 220 +- src/ui/FUi_InputConnectionImpl.h | 8 + src/ui/FUi_KeyEventInfoImpl.cpp | 88 + src/ui/FUi_KeyEventManager.cpp | 8 +- src/ui/FUi_KeyEventManagerImpl.cpp | 2 +- src/ui/FUi_LayoutImpl.cpp | 40 + src/ui/FUi_LayoutImpl.h | 24 + src/ui/FUi_Matrix3Df.cpp | 2 +- src/ui/FUi_ModalLoopManager.cpp | 1 + src/ui/FUi_OrientationAgent.cpp | 113 +- src/ui/FUi_OrientationAgent.h | 7 +- src/ui/FUi_PropertyBase.cpp | 2 +- src/ui/FUi_PropertyUtils.cpp | 4 +- src/ui/FUi_PublicOrientationEvent.cpp | 2 + src/ui/FUi_RelativeLayoutImpl.cpp | 16 +- src/ui/FUi_RelativeLayoutImpl.h | 33 +- src/ui/FUi_ResourceManager.cpp | 743 +++- src/ui/FUi_SystemUtilImpl.cpp | 308 ++ src/ui/FUi_TouchEventInfoImpl.cpp | 12 + src/ui/FUi_TouchFlickGestureDetector.cpp | 7 + src/ui/FUi_TouchFlickGestureDetectorImpl.cpp | 8 + src/ui/FUi_TouchGestureDetector.cpp | 10 + src/ui/FUi_TouchGestureTimerManager.cpp | 13 +- src/ui/FUi_TouchLongPressGestureDetector.cpp | 59 +- src/ui/FUi_TouchLongPressGestureDetectorImpl.cpp | 14 + src/ui/FUi_TouchManager.cpp | 98 +- src/ui/FUi_TouchPanningGestureDetector.cpp | 27 +- src/ui/FUi_TouchPinchGestureDetector.cpp | 14 +- src/ui/FUi_TouchPinchGestureDetectorImpl.cpp | 16 + src/ui/FUi_TouchRotationGestureDetector.cpp | 25 + src/ui/FUi_TouchRotationGestureDetectorImpl.cpp | 8 + src/ui/FUi_TouchTapGestureDetector.cpp | 17 + src/ui/FUi_TouchTapGestureDetectorImpl.cpp | 12 + src/ui/FUi_UiBuilder.cpp | 18 +- src/ui/FUi_UiBuilderControlLayout.cpp | 58 +- src/ui/FUi_UiBuilderControlMaker.cpp | 1542 +------- src/ui/FUi_UiEvent.cpp | 14 +- src/ui/FUi_UiEventManager.cpp | 13 +- src/ui/FUi_UiFocusEvent.cpp | 6 +- src/ui/FUi_UiKeyEvent.cpp | 22 +- src/ui/FUi_UiManagerIpcMessages.cpp | 46 + src/ui/FUi_UiManagerProxy.cpp | 71 + src/ui/FUi_UiManagerProxy.h | 62 + src/ui/FUi_UiNotificationEvent.cpp | 8 +- src/ui/FUi_UiTouchEvent.cpp | 107 +- src/ui/FUi_VariantImpl.cpp | 24 + src/ui/FUi_VerticalBoxLayoutImpl.cpp | 15 +- src/ui/FUi_VerticalBoxLayoutImpl.h | 24 +- src/ui/FUi_Window.cpp | 143 +- src/ui/FUi_WindowImpl.cpp | 95 +- src/ui/animations/FUiAnimAnimationBase.cpp | 4 +- src/ui/animations/FUiAnimFrameAnimator.cpp | 13 +- src/ui/animations/FUiAnimVisualElement.cpp | 95 +- src/ui/animations/FUiAnimVisualElementSurface.cpp | 28 +- src/ui/animations/FUiAnim_AnimationBaseImpl.cpp | 4 +- src/ui/animations/FUiAnim_AnimationBaseImpl.h | 102 +- src/ui/animations/FUiAnim_AnimationGroupImpl.h | 78 - src/ui/animations/FUiAnim_AnimationGroupNode.cpp | 276 ++ src/ui/animations/FUiAnim_AnimationGroupNode.h | 83 + src/ui/animations/FUiAnim_AnimationImpl.cpp | 51 - src/ui/animations/FUiAnim_AnimationManager.cpp | 367 +- src/ui/animations/FUiAnim_AnimationManager.h | 57 +- src/ui/animations/FUiAnim_ControlAnimatorImpl.cpp | 2848 ++++++++------- src/ui/animations/FUiAnim_ControlAnimatorImpl.h | 798 +---- src/ui/animations/FUiAnim_Debug.cpp | 380 ++ src/ui/animations/FUiAnim_Debug.h | 2 + src/ui/animations/FUiAnim_DimensionAnimationImpl.h | 60 +- src/ui/animations/FUiAnim_DisplayManager.cpp | 8 +- src/ui/animations/FUiAnim_EflLayer.cpp | 4 +- src/ui/animations/FUiAnim_EflNode.cpp | 9 +- .../FUiAnim_EflVisualElementSurfaceImpl.cpp | 24 +- .../FUiAnim_EflVisualElementSurfaceImpl.h | 2 +- src/ui/animations/FUiAnim_FloatAnimationImpl.h | 53 +- src/ui/animations/FUiAnim_FrameAnimatorImpl.cpp | 5 +- src/ui/animations/FUiAnim_FrameAnimatorImpl.h | 298 +- src/ui/animations/FUiAnim_IntegerAnimationImpl.h | 54 +- src/ui/animations/FUiAnim_PointAnimationImpl.h | 52 +- src/ui/animations/FUiAnim_RectangleAnimationImpl.h | 58 +- src/ui/animations/FUiAnim_RotateAnimationImpl.h | 27 +- src/ui/animations/FUiAnim_TransactionNode.cpp | 510 +-- src/ui/animations/FUiAnim_TransactionNode.h | 103 +- .../FUiAnim_VisualElementAnimationKeyFrame.h | 92 - .../FUiAnim_VisualElementAnimationTiming.h | 95 - ...m_VisualElementAnimationVariantInterpolator.cpp | 207 +- src/ui/animations/FUiAnim_VisualElementCanvas.cpp | 14 +- src/ui/animations/FUiAnim_VisualElementImpl.cpp | 461 ++- .../animations/FUiAnim_VisualElementSharedData.cpp | 4 +- .../FUiAnim_VisualElementSurfaceImpl.cpp | 13 +- src/ui/controls/FUiCtrlAnimation.cpp | 35 + src/ui/controls/FUiCtrlAnimationFrame.cpp | 1 + src/ui/controls/FUiCtrlButton.cpp | 121 +- src/ui/controls/FUiCtrlCheckButton.cpp | 78 + src/ui/controls/FUiCtrlColorPicker.cpp | 24 + src/ui/controls/FUiCtrlContextMenu.cpp | 61 +- src/ui/controls/FUiCtrlCustomItem.cpp | 57 + src/ui/controls/FUiCtrlDatePicker.cpp | 1 + src/ui/controls/FUiCtrlDateTimePicker.cpp | 1 + src/ui/controls/FUiCtrlEditArea.cpp | 105 + src/ui/controls/FUiCtrlEditDate.cpp | 16 + src/ui/controls/FUiCtrlEditField.cpp | 144 + src/ui/controls/FUiCtrlEditTime.cpp | 16 + src/ui/controls/FUiCtrlExpandableEditArea.cpp | 120 +- src/ui/controls/FUiCtrlFooter.cpp | 35 + src/ui/controls/FUiCtrlForm.cpp | 41 + src/ui/controls/FUiCtrlFrame.cpp | 33 + src/ui/controls/FUiCtrlGallery.cpp | 26 +- src/ui/controls/FUiCtrlGalleryItem.cpp | 4 +- src/ui/controls/FUiCtrlGroupContainer.cpp | 258 ++ src/ui/controls/FUiCtrlGroupItem.cpp | 20 + src/ui/controls/FUiCtrlGroupedListView.cpp | 124 +- src/ui/controls/FUiCtrlGroupedTableView.cpp | 127 +- src/ui/controls/FUiCtrlHeader.cpp | 35 + .../FUiCtrlIGroupedListViewItemProviderF.cpp | 36 + src/ui/controls/FUiCtrlIconListView.cpp | 159 + src/ui/controls/FUiCtrlIconListViewItem.cpp | 0 src/ui/controls/FUiCtrlKeypad.cpp | 27 + src/ui/controls/FUiCtrlLabel.cpp | 82 + src/ui/controls/FUiCtrlListItemBase.cpp | 19 + src/ui/controls/FUiCtrlListView.cpp | 106 +- src/ui/controls/FUiCtrlOptionMenu.cpp | 1 + src/ui/controls/FUiCtrlOverlayPanel.cpp | 45 +- src/ui/controls/FUiCtrlOverlayRegion.cpp | 233 +- src/ui/controls/FUiCtrlPanel.cpp | 56 + src/ui/controls/FUiCtrlPopup.cpp | 92 + src/ui/controls/FUiCtrlProgress.cpp | 52 + src/ui/controls/FUiCtrlProgressPopup.cpp | 4 +- src/ui/controls/FUiCtrlRadioGroup.cpp | 42 +- src/ui/controls/FUiCtrlScrollPanel.cpp | 192 +- src/ui/controls/FUiCtrlSearchBar.cpp | 75 + src/ui/controls/FUiCtrlSectionTableView.cpp | 97 +- src/ui/controls/FUiCtrlSimpleItem.cpp | 7 + src/ui/controls/FUiCtrlSlider.cpp | 84 + src/ui/controls/FUiCtrlSplitPanel.cpp | 97 + src/ui/controls/FUiCtrlTab.cpp | 1 + src/ui/controls/FUiCtrlTabBar.cpp | 31 +- src/ui/controls/FUiCtrlTableView.cpp | 105 +- src/ui/controls/FUiCtrlTableViewContextItem.cpp | 8 + src/ui/controls/FUiCtrlTableViewGroupItem.cpp | 24 +- src/ui/controls/FUiCtrlTableViewItem.cpp | 29 +- .../controls/FUiCtrlTableViewSimpleGroupItem.cpp | 6 + src/ui/controls/FUiCtrlTableViewSimpleItem.cpp | 6 + src/ui/controls/FUiCtrlTextBox.cpp | 57 + src/ui/controls/FUiCtrlTimePicker.cpp | 1 + src/ui/controls/FUiCtrl_AdjustmentEvent.cpp | 1 + src/ui/controls/FUiCtrl_Animation.cpp | 5 +- src/ui/controls/FUiCtrl_AnimationEvent.cpp | 1 + src/ui/controls/FUiCtrl_AnimationImpl.cpp | 1 + src/ui/controls/FUiCtrl_AnimationModel.cpp | 1 + src/ui/controls/FUiCtrl_AnimationPresenter.cpp | 7 +- src/ui/controls/FUiCtrl_Button.cpp | 456 ++- src/ui/controls/FUiCtrl_ButtonImpl.cpp | 146 +- src/ui/controls/FUiCtrl_ButtonItemImpl.cpp | 13 + src/ui/controls/FUiCtrl_ButtonPresenter.cpp | 388 ++- src/ui/controls/FUiCtrl_CheckButton.cpp | 255 +- src/ui/controls/FUiCtrl_CheckButtonImpl.cpp | 81 +- src/ui/controls/FUiCtrl_CheckButtonPresenter.cpp | 333 +- src/ui/controls/FUiCtrl_ColorChangeEvent.cpp | 1 + src/ui/controls/FUiCtrl_ColorPicker.cpp | 137 +- src/ui/controls/FUiCtrl_ColorPickerImpl.cpp | 7 +- src/ui/controls/FUiCtrl_ColorPickerModel.cpp | 30 +- src/ui/controls/FUiCtrl_ColorPickerPresenter.cpp | 330 +- src/ui/controls/FUiCtrl_ContextMenu.cpp | 123 +- .../controls/FUiCtrl_ContextMenuGridPresenter.cpp | 348 +- src/ui/controls/FUiCtrl_ContextMenuImpl.cpp | 38 +- src/ui/controls/FUiCtrl_ContextMenuItem.cpp | 92 +- .../controls/FUiCtrl_ContextMenuListPresenter.cpp | 251 +- src/ui/controls/FUiCtrl_ContextMenuModel.cpp | 7 +- src/ui/controls/FUiCtrl_CustomElement.cpp | 11 +- src/ui/controls/FUiCtrl_CustomItemImpl.cpp | 59 +- src/ui/controls/FUiCtrl_CustomListElements.cpp | 2 +- src/ui/controls/FUiCtrl_CustomListImpl.cpp | 21 +- src/ui/controls/FUiCtrl_CustomListItemImpl.cpp | 7 + src/ui/controls/FUiCtrl_DatePickerImpl.cpp | 23 +- src/ui/controls/FUiCtrl_DateTimeBar.cpp | 117 +- src/ui/controls/FUiCtrl_DateTimeBarItem.cpp | 8 +- src/ui/controls/FUiCtrl_DateTimeBarModel.cpp | 17 +- src/ui/controls/FUiCtrl_DateTimeBarPresenter.cpp | 202 +- src/ui/controls/FUiCtrl_DateTimeChangeEvent.cpp | 1 + src/ui/controls/FUiCtrl_DateTimeDisplayBox.cpp | 7 +- src/ui/controls/FUiCtrl_DateTimeModel.cpp | 1 + src/ui/controls/FUiCtrl_DateTimePicker.cpp | 62 +- src/ui/controls/FUiCtrl_DateTimePickerImpl.cpp | 21 +- src/ui/controls/FUiCtrl_DateTimePresenter.cpp | 192 +- src/ui/controls/FUiCtrl_DimmingLayer.cpp | 23 +- src/ui/controls/FUiCtrl_Edit.cpp | 592 +++- src/ui/controls/FUiCtrl_EditAreaImpl.cpp | 120 +- src/ui/controls/FUiCtrl_EditCopyPasteEvent.cpp | 0 src/ui/controls/FUiCtrl_EditCopyPasteManager.cpp | 926 +++-- src/ui/controls/FUiCtrl_EditDate.cpp | 254 +- src/ui/controls/FUiCtrl_EditDateImpl.cpp | 124 +- src/ui/controls/FUiCtrl_EditDatePresenter.cpp | 176 +- src/ui/controls/FUiCtrl_EditFieldImpl.cpp | 120 +- src/ui/controls/FUiCtrl_EditModel.cpp | 2 +- src/ui/controls/FUiCtrl_EditPresenter.cpp | 2690 ++++++++++---- src/ui/controls/FUiCtrl_EditTime.cpp | 200 +- src/ui/controls/FUiCtrl_EditTimeImpl.cpp | 109 +- src/ui/controls/FUiCtrl_EditTimePresenter.cpp | 258 +- src/ui/controls/FUiCtrl_ExpandableEditAreaImpl.cpp | 188 +- src/ui/controls/FUiCtrl_ExpandableListData.cpp | 119 - src/ui/controls/FUiCtrl_ExpandableListImpl.cpp | 334 +- src/ui/controls/FUiCtrl_FastScroll.cpp | 5 +- src/ui/controls/FUiCtrl_FastScrollIndex.cpp | 13 +- src/ui/controls/FUiCtrl_FastScrollPresenter.cpp | 816 +++-- src/ui/controls/FUiCtrl_FooterImpl.cpp | 294 +- src/ui/controls/FUiCtrl_FooterItemImpl.cpp | 7 + src/ui/controls/FUiCtrl_Form.cpp | 492 ++- src/ui/controls/FUiCtrl_FormImpl.cpp | 226 +- src/ui/controls/FUiCtrl_Frame.cpp | 193 +- src/ui/controls/FUiCtrl_FrameEvent.cpp | 8 + src/ui/controls/FUiCtrl_FrameImpl.cpp | 124 +- src/ui/controls/FUiCtrl_Gallery.cpp | 187 +- src/ui/controls/FUiCtrl_GalleryBitmap.cpp | 58 +- src/ui/controls/FUiCtrl_GalleryCanvas.cpp | 123 +- src/ui/controls/FUiCtrl_GalleryCanvasManager.cpp | 8 +- src/ui/controls/FUiCtrl_GalleryImageReader.cpp | 15 +- src/ui/controls/FUiCtrl_GalleryItem.cpp | 51 +- src/ui/controls/FUiCtrl_GalleryPresenter.cpp | 42 +- src/ui/controls/FUiCtrl_GalleryRenderer.cpp | 103 +- .../controls/FUiCtrl_GalleryViewEventHandler.cpp | 116 +- src/ui/controls/FUiCtrl_GalleryViewEventInfo.cpp | 7 +- src/ui/controls/FUiCtrl_GroupContainer.cpp | 1183 +++++++ src/ui/controls/FUiCtrl_GroupContainerImpl.cpp | 328 ++ .../controls/FUiCtrl_GroupContainerPresenter.cpp | 225 ++ src/ui/controls/FUiCtrl_GroupItemImpl.cpp | 27 +- src/ui/controls/FUiCtrl_GroupedListImpl.cpp | 21 +- src/ui/controls/FUiCtrl_GroupedListViewImpl.cpp | 460 +-- .../FUiCtrl_GroupedListViewItemProviderAdaptor.cpp | 116 +- src/ui/controls/FUiCtrl_HeaderImpl.cpp | 321 +- src/ui/controls/FUiCtrl_HeaderItemImpl.cpp | 7 + src/ui/controls/FUiCtrl_IconListItem.cpp | 187 +- .../FUiCtrl_IconListItemDrawingProperty.cpp | 193 +- src/ui/controls/FUiCtrl_IconListItemProvider.cpp | 0 .../FUiCtrl_IconListItemProviderAdaptor.cpp | 0 src/ui/controls/FUiCtrl_IconListPresenter.cpp | 1280 ++++--- src/ui/controls/FUiCtrl_IconListUtils.cpp | 23 +- src/ui/controls/FUiCtrl_IconListView.cpp | 243 +- src/ui/controls/FUiCtrl_IconListViewImpl.cpp | 121 +- src/ui/controls/FUiCtrl_IconListViewItemEvent.cpp | 0 .../controls/FUiCtrl_IconListViewItemEventArg.cpp | 0 src/ui/controls/FUiCtrl_IconListViewItemImpl.cpp | 0 src/ui/controls/FUiCtrl_Indicator.cpp | 126 +- src/ui/controls/FUiCtrl_IndicatorManager.cpp | 250 +- src/ui/controls/FUiCtrl_InputPad.cpp | 18 +- src/ui/controls/FUiCtrl_InputPadPresenter.cpp | 35 +- src/ui/controls/FUiCtrl_Keypad.cpp | 258 +- src/ui/controls/FUiCtrl_KeypadEvent.cpp | 1 + src/ui/controls/FUiCtrl_KeypadImpl.cpp | 17 + src/ui/controls/FUiCtrl_Label.cpp | 183 +- src/ui/controls/FUiCtrl_LabelImpl.cpp | 122 +- src/ui/controls/FUiCtrl_LabelPresenter.cpp | 79 +- src/ui/controls/FUiCtrl_LanguageEvent.cpp | 2 +- src/ui/controls/FUiCtrl_LinkEvent.cpp | 0 src/ui/controls/FUiCtrl_ListBaseImpl.cpp | 44 +- src/ui/controls/FUiCtrl_ListContextItemImpl.cpp | 6 +- src/ui/controls/FUiCtrl_ListImpl.cpp | 48 +- src/ui/controls/FUiCtrl_ListItemBaseImpl.cpp | 66 +- src/ui/controls/FUiCtrl_ListViewContextItem.cpp | 63 +- src/ui/controls/FUiCtrl_ListViewImpl.cpp | 424 +-- src/ui/controls/FUiCtrl_ListViewItem.cpp | 410 ++- .../FUiCtrl_ListViewItemProviderAdaptor.cpp | 72 +- src/ui/controls/FUiCtrl_ListViewModel.cpp | 30 +- .../controls/FUiCtrl_ListViewTouchEventHandler.cpp | 257 ++ src/ui/controls/FUiCtrl_MessageBox.cpp | 68 +- src/ui/controls/FUiCtrl_MessageBoxImpl.cpp | 46 +- src/ui/controls/FUiCtrl_MessageBoxPresenter.cpp | 330 +- src/ui/controls/FUiCtrl_OptionMenu.cpp | 10 +- src/ui/controls/FUiCtrl_OptionMenuImpl.cpp | 1 + src/ui/controls/FUiCtrl_OptionMenuItem.cpp | 1 + src/ui/controls/FUiCtrl_OptionMenuModel.cpp | 1 + src/ui/controls/FUiCtrl_OptionMenuPresenter.cpp | 212 +- src/ui/controls/FUiCtrl_OverlayAgent.cpp | 1034 ++++-- src/ui/controls/FUiCtrl_OverlayPanel.cpp | 187 +- src/ui/controls/FUiCtrl_OverlayPanelImpl.cpp | 253 +- src/ui/controls/FUiCtrl_OverlayRegionImpl.cpp | 397 +-- src/ui/controls/FUiCtrl_Panel.cpp | 34 +- src/ui/controls/FUiCtrl_PanelImpl.cpp | 25 +- src/ui/controls/FUiCtrl_PanelPresenter.cpp | 65 +- src/ui/controls/FUiCtrl_Popup.cpp | 137 +- src/ui/controls/FUiCtrl_PopupImpl.cpp | 204 +- src/ui/controls/FUiCtrl_PopupPresenter.cpp | 271 +- src/ui/controls/FUiCtrl_Progress.cpp | 49 +- src/ui/controls/FUiCtrl_ProgressImpl.cpp | 73 +- src/ui/controls/FUiCtrl_ProgressModel.cpp | 1 + src/ui/controls/FUiCtrl_ProgressPopup.cpp | 262 +- src/ui/controls/FUiCtrl_ProgressPopupEvent.cpp | 1 + src/ui/controls/FUiCtrl_ProgressPopupImpl.cpp | 129 +- src/ui/controls/FUiCtrl_ProgressPopupPresenter.cpp | 483 +-- src/ui/controls/FUiCtrl_ProgressPresenter.cpp | 116 +- src/ui/controls/FUiCtrl_PublicAdjustmentEvent.cpp | 1 + src/ui/controls/FUiCtrl_PublicAnimationEvent.cpp | 1 + src/ui/controls/FUiCtrl_PublicColorChangeEvent.cpp | 1 + .../controls/FUiCtrl_PublicDateTimeChangeEvent.cpp | 1 + src/ui/controls/FUiCtrl_PublicFrameEvent.cpp | 6 + src/ui/controls/FUiCtrl_PublicKeypadEvent.cpp | 0 src/ui/controls/FUiCtrl_PublicLanguageEvent.cpp | 2 +- src/ui/controls/FUiCtrl_PublicLinkEvent.cpp | 0 .../controls/FUiCtrl_PublicProgressPopupEvent.cpp | 1 + src/ui/controls/FUiCtrl_PublicScrollPanelEvent.cpp | 3 +- src/ui/controls/FUiCtrl_PublicSliderEvent.cpp | 1 + src/ui/controls/FUiCtrl_PublicSplitPanelEvent.cpp | 24 +- src/ui/controls/FUiCtrl_PublicTextBlockEvent.cpp | 1 + src/ui/controls/FUiCtrl_PublicTextEvent.cpp | 1 + src/ui/controls/FUiCtrl_RadioGroupImpl.cpp | 18 +- src/ui/controls/FUiCtrl_Scroll.cpp | 20 +- src/ui/controls/FUiCtrl_ScrollEvent.cpp | 35 +- src/ui/controls/FUiCtrl_ScrollEventArg.cpp | 8 +- src/ui/controls/FUiCtrl_ScrollPanel.cpp | 84 +- src/ui/controls/FUiCtrl_ScrollPanelEvent.cpp | 2 +- src/ui/controls/FUiCtrl_ScrollPanelImpl.cpp | 69 +- src/ui/controls/FUiCtrl_ScrollPanelModel.cpp | 28 +- src/ui/controls/FUiCtrl_ScrollPanelPresenter.cpp | 641 ++-- src/ui/controls/FUiCtrl_ScrollPresenter.cpp | 659 ++-- src/ui/controls/FUiCtrl_SearchBar.cpp | 235 +- src/ui/controls/FUiCtrl_SearchBarImpl.cpp | 142 +- src/ui/controls/FUiCtrl_SearchBarPresenter.cpp | 86 +- src/ui/controls/FUiCtrl_SimpleItemImpl.cpp | 31 +- .../controls/FUiCtrl_SlidableGroupedListImpl.cpp | 357 +- src/ui/controls/FUiCtrl_SlidableListImpl.cpp | 195 +- src/ui/controls/FUiCtrl_Slider.cpp | 69 +- src/ui/controls/FUiCtrl_SliderEvent.cpp | 1 + src/ui/controls/FUiCtrl_SliderImpl.cpp | 89 +- src/ui/controls/FUiCtrl_SliderModel.cpp | 1 + src/ui/controls/FUiCtrl_SliderOverlay.cpp | 48 +- src/ui/controls/FUiCtrl_SliderPresenter.cpp | 233 +- src/ui/controls/FUiCtrl_SplitPanel.cpp | 228 +- src/ui/controls/FUiCtrl_SplitPanelImpl.cpp | 115 +- src/ui/controls/FUiCtrl_SplitPanelModel.cpp | 1 + src/ui/controls/FUiCtrl_SplitPanelPresenter.cpp | 344 +- src/ui/controls/FUiCtrl_Tab.cpp | 228 +- src/ui/controls/FUiCtrl_TabBar.cpp | 100 +- src/ui/controls/FUiCtrl_TabBarImpl.cpp | 50 +- src/ui/controls/FUiCtrl_TabBarItem.cpp | 39 +- src/ui/controls/FUiCtrl_TabBarModel.cpp | 43 +- src/ui/controls/FUiCtrl_TabBarPresenter.cpp | 378 +- src/ui/controls/FUiCtrl_TabImpl.cpp | 1 + src/ui/controls/FUiCtrl_TabItem.cpp | 1 + src/ui/controls/FUiCtrl_TabModel.cpp | 1 + src/ui/controls/FUiCtrl_TabPresenter.cpp | 1226 +++++-- src/ui/controls/FUiCtrl_TableView.cpp | 199 +- src/ui/controls/FUiCtrl_TableViewImpl.cpp | 189 +- src/ui/controls/FUiCtrl_TableViewItem.cpp | 1966 ++++++++--- src/ui/controls/FUiCtrl_TableViewItemImpl.cpp | 47 +- src/ui/controls/FUiCtrl_TableViewItemProvider.cpp | 470 ++- .../FUiCtrl_TableViewItemProviderAdaptor.cpp | 146 +- src/ui/controls/FUiCtrl_TableViewPresenter.cpp | 1197 ++++--- src/ui/controls/FUiCtrl_TextBlockEvent.cpp | 1 + src/ui/controls/FUiCtrl_TextBoxImpl.cpp | 60 +- src/ui/controls/FUiCtrl_TextEvent.cpp | 3 +- src/ui/controls/FUiCtrl_TimePickerImpl.cpp | 21 +- src/ui/controls/FUiCtrl_TokenEdit.cpp | 11 +- src/ui/controls/FUiCtrl_TokenEditModel.cpp | 0 src/ui/controls/FUiCtrl_TokenEditPresenter.cpp | 1333 ++++--- src/ui/controls/FUiCtrl_Toolbar.cpp | 2425 ++++++++----- src/ui/controls/FUiCtrl_ToolbarPresenter.cpp | 1217 +++++-- src/ui/controls/FUiCtrl_UiIconListItemEvent.cpp | 0 src/ui/controls/FUiCtrl_UiListViewItemEvent.cpp | 4 - src/ui/controls/FUiCtrl_UiScrollEvent.cpp | 3 + src/ui/controls/FUiCtrl_UiScrollEventArg.cpp | 17 +- src/ui/effects/FUiEffects_EffectManagerImpl.cpp | 9 +- .../renderer/FUiEffects_RendererEffectRenderer.cpp | 8 +- src/ui/inc/FUiAnim_VisualElementCanvas.h | 1 + src/ui/inc/FUiAnim_VisualElementCoordinateSystem.h | 30 +- src/ui/inc/FUiAnim_VisualElementImpl.h | 48 +- src/ui/inc/FUiAnim_VisualElementSharedData.h | 6 +- src/ui/inc/FUiAnim_VisualElementSurfaceImpl.h | 11 +- src/ui/inc/FUiCtrl_AdjustmentEvent.h | 1 + src/ui/inc/FUiCtrl_Animation.h | 1 + src/ui/inc/FUiCtrl_AnimationEvent.h | 1 + src/ui/inc/FUiCtrl_AnimationFrameImpl.h | 1 + src/ui/inc/FUiCtrl_AnimationImpl.h | 1 + src/ui/inc/FUiCtrl_AnimationModel.h | 1 + src/ui/inc/FUiCtrl_AnimationPresenter.h | 1 + src/ui/inc/FUiCtrl_Button.h | 72 +- src/ui/inc/FUiCtrl_ButtonImpl.h | 13 + src/ui/inc/FUiCtrl_ButtonItemImpl.h | 2 + src/ui/inc/FUiCtrl_ButtonModel.h | 2 +- src/ui/inc/FUiCtrl_ButtonPresenter.h | 9 +- src/ui/inc/FUiCtrl_CheckButton.h | 29 +- src/ui/inc/FUiCtrl_CheckButtonImpl.h | 2 + src/ui/inc/FUiCtrl_CheckButtonModel.h | 2 +- src/ui/inc/FUiCtrl_CheckButtonPresenter.h | 27 +- src/ui/inc/FUiCtrl_ColorChangeEvent.h | 1 + src/ui/inc/FUiCtrl_ColorPicker.h | 16 +- src/ui/inc/FUiCtrl_ColorPickerImpl.h | 1 + src/ui/inc/FUiCtrl_ColorPickerModel.h | 1 + src/ui/inc/FUiCtrl_ColorPickerPresenter.h | 37 +- src/ui/inc/FUiCtrl_ContextMenu.h | 32 +- src/ui/inc/FUiCtrl_ContextMenuGridPresenter.h | 60 +- src/ui/inc/FUiCtrl_ContextMenuImpl.h | 7 +- src/ui/inc/FUiCtrl_ContextMenuItem.h | 21 +- src/ui/inc/FUiCtrl_ContextMenuListPresenter.h | 57 +- src/ui/inc/FUiCtrl_CustomElement.h | 2 +- src/ui/inc/FUiCtrl_CustomItemImpl.h | 14 +- src/ui/inc/FUiCtrl_CustomListImpl.h | 1 + src/ui/inc/FUiCtrl_DatePickerImpl.h | 5 +- src/ui/inc/FUiCtrl_DateTimeBar.h | 21 +- src/ui/inc/FUiCtrl_DateTimeBarItem.h | 8 +- src/ui/inc/FUiCtrl_DateTimeBarModel.h | 8 +- src/ui/inc/FUiCtrl_DateTimeBarPresenter.h | 35 +- src/ui/inc/FUiCtrl_DateTimeChangeEvent.h | 1 + src/ui/inc/FUiCtrl_DateTimeDisplayBox.h | 9 +- src/ui/inc/FUiCtrl_DateTimeModel.h | 1 + src/ui/inc/FUiCtrl_DateTimePicker.h | 8 +- src/ui/inc/FUiCtrl_DateTimePickerImpl.h | 5 +- src/ui/inc/FUiCtrl_DateTimePresenter.h | 8 +- src/ui/inc/FUiCtrl_Edit.h | 50 +- src/ui/inc/FUiCtrl_EditAreaImpl.h | 10 + src/ui/inc/FUiCtrl_EditCopyPasteEvent.h | 0 src/ui/inc/FUiCtrl_EditCopyPasteManager.h | 23 +- src/ui/inc/FUiCtrl_EditDate.h | 11 +- src/ui/inc/FUiCtrl_EditDateImpl.h | 17 +- src/ui/inc/FUiCtrl_EditDatePresenter.h | 25 +- src/ui/inc/FUiCtrl_EditFieldImpl.h | 8 + src/ui/inc/FUiCtrl_EditModel.h | 14 +- src/ui/inc/FUiCtrl_EditPresenter.h | 138 +- src/ui/inc/FUiCtrl_EditTime.h | 18 +- src/ui/inc/FUiCtrl_EditTimeImpl.h | 17 +- src/ui/inc/FUiCtrl_EditTimePresenter.h | 19 +- src/ui/inc/FUiCtrl_ExpandableEditAreaImpl.h | 20 +- src/ui/inc/FUiCtrl_ExpandableListData.h | 99 - src/ui/inc/FUiCtrl_ExpandableListImpl.h | 29 + src/ui/inc/FUiCtrl_FastScroll.h | 2 +- src/ui/inc/FUiCtrl_FastScrollPresenter.h | 100 +- src/ui/inc/FUiCtrl_FooterImpl.h | 6 + src/ui/inc/FUiCtrl_FooterItemImpl.h | 2 + src/ui/inc/FUiCtrl_Form.h | 25 +- src/ui/inc/FUiCtrl_FormImpl.h | 6 + src/ui/inc/FUiCtrl_FormModel.h | 2 +- src/ui/inc/FUiCtrl_FormPresenter.h | 2 +- src/ui/inc/FUiCtrl_Frame.h | 20 +- src/ui/inc/FUiCtrl_FrameEvent.h | 4 +- src/ui/inc/FUiCtrl_FrameImpl.h | 6 + src/ui/inc/FUiCtrl_FrameModel.h | 2 +- src/ui/inc/FUiCtrl_FramePresenter.h | 2 +- src/ui/inc/FUiCtrl_Gallery.h | 14 +- src/ui/inc/FUiCtrl_GalleryBitmap.h | 5 +- src/ui/inc/FUiCtrl_GalleryCanvas.h | 42 +- src/ui/inc/FUiCtrl_GalleryCanvasManager.h | 8 +- src/ui/inc/FUiCtrl_GalleryImageReader.h | 12 +- src/ui/inc/FUiCtrl_GalleryItem.h | 3 - src/ui/inc/FUiCtrl_GalleryPresenter.h | 12 +- src/ui/inc/FUiCtrl_GalleryRenderer.h | 14 +- src/ui/inc/FUiCtrl_GalleryViewEventHandler.h | 14 +- src/ui/inc/FUiCtrl_GalleryViewEventInfo.h | 8 +- src/ui/inc/FUiCtrl_GroupContainer.h | 160 + src/ui/inc/FUiCtrl_GroupContainerImpl.h | 93 + src/ui/inc/FUiCtrl_GroupContainerPresenter.h | 67 + src/ui/inc/FUiCtrl_GroupItemImpl.h | 10 +- src/ui/inc/FUiCtrl_GroupedListViewImpl.h | 49 +- .../FUiCtrl_GroupedListViewItemProviderAdaptor.h | 13 +- src/ui/inc/FUiCtrl_HeaderImpl.h | 6 + src/ui/inc/FUiCtrl_HeaderItemImpl.h | 2 + src/ui/inc/FUiCtrl_IActionEventListener.h | 6 +- src/ui/inc/FUiCtrl_IAdjustmentEventListener.h | 7 +- src/ui/inc/FUiCtrl_IAnimationEventListener.h | 7 +- src/ui/inc/FUiCtrl_IColorChangeEventListener.h | 7 +- src/ui/inc/FUiCtrl_IContextMenuPresenter.h | 6 +- src/ui/inc/FUiCtrl_ICustomElement.h | 2 +- src/ui/inc/FUiCtrl_IDateTimeChangeEventListener.h | 9 +- src/ui/inc/FUiCtrl_IEditCopyPasteEventListener.h | 4 +- src/ui/inc/FUiCtrl_IEditTextFilter.h | 120 + .../inc/FUiCtrl_IExpandableEditAreaEventListener.h | 4 +- .../FUiCtrl_IFormActivationChangeEventListener.h | 4 +- src/ui/inc/FUiCtrl_IFrameEventListener.h | 6 +- src/ui/inc/FUiCtrl_IGalleryRenderer.h | 12 +- src/ui/inc/FUiCtrl_IIconListItemEventListener.h | 0 src/ui/inc/FUiCtrl_IInputPadEventListener.h | 6 +- src/ui/inc/FUiCtrl_IKeypadEventListener.h | 0 src/ui/inc/FUiCtrl_ILanguageEventListener.h | 8 +- src/ui/inc/FUiCtrl_IListItemCommon.h | 2 - src/ui/inc/FUiCtrl_IProgressPopupEventListener.h | 7 +- src/ui/inc/FUiCtrl_IScrollEventListener.h | 17 +- src/ui/inc/FUiCtrl_IScrollPanelEventListener.h | 14 +- src/ui/inc/FUiCtrl_ISliderEventListener.h | 1 + src/ui/inc/FUiCtrl_ISplitPanelEventListener.h | 9 +- src/ui/inc/FUiCtrl_ITableViewItemEventListener.h | 24 +- src/ui/inc/FUiCtrl_ITextBlockEventListener.h | 1 + src/ui/inc/FUiCtrl_ITextEventListener.h | 11 +- src/ui/inc/FUiCtrl_ITokenFilter.h | 3 +- src/ui/inc/FUiCtrl_IUiLinkEventListener.h | 2 +- src/ui/inc/FUiCtrl_IUiListViewItemEventListener.h | 16 +- src/ui/inc/FUiCtrl_IconListItem.h | 14 +- src/ui/inc/FUiCtrl_IconListItemDrawingProperty.h | 68 +- src/ui/inc/FUiCtrl_IconListItemProvider.h | 0 src/ui/inc/FUiCtrl_IconListItemProviderAdaptor.h | 0 src/ui/inc/FUiCtrl_IconListPresenter.h | 134 +- src/ui/inc/FUiCtrl_IconListUtils.h | 6 +- src/ui/inc/FUiCtrl_IconListView.h | 79 +- src/ui/inc/FUiCtrl_IconListViewImpl.h | 40 +- src/ui/inc/FUiCtrl_IconListViewItemEvent.h | 0 src/ui/inc/FUiCtrl_IconListViewItemEventArg.h | 0 src/ui/inc/FUiCtrl_IconListViewItemImpl.h | 0 src/ui/inc/FUiCtrl_Indicator.h | 14 +- src/ui/inc/FUiCtrl_IndicatorManager.h | 19 +- src/ui/inc/FUiCtrl_InputPad.h | 6 +- src/ui/inc/FUiCtrl_InputPadPresenter.h | 18 +- src/ui/inc/FUiCtrl_Keypad.h | 11 +- src/ui/inc/FUiCtrl_KeypadEvent.h | 0 src/ui/inc/FUiCtrl_KeypadImpl.h | 4 +- src/ui/inc/FUiCtrl_Label.h | 27 +- src/ui/inc/FUiCtrl_LabelImpl.h | 9 + src/ui/inc/FUiCtrl_LabelModel.h | 2 +- src/ui/inc/FUiCtrl_LabelPresenter.h | 10 +- src/ui/inc/FUiCtrl_LanguageEvent.h | 4 +- src/ui/inc/FUiCtrl_LinkEvent.h | 0 src/ui/inc/FUiCtrl_ListBaseImpl.h | 6 +- src/ui/inc/FUiCtrl_ListImpl.h | 5 +- src/ui/inc/FUiCtrl_ListItemBaseImpl.h | 18 +- src/ui/inc/FUiCtrl_ListItemCommon.h | 2 - src/ui/inc/FUiCtrl_ListViewContextItem.h | 21 +- src/ui/inc/FUiCtrl_ListViewImpl.h | 43 +- src/ui/inc/FUiCtrl_ListViewItem.h | 64 +- src/ui/inc/FUiCtrl_ListViewItemProviderAdaptor.h | 11 +- src/ui/inc/FUiCtrl_ListViewModel.h | 14 +- src/ui/inc/FUiCtrl_ListViewTouchEventHandler.h | 89 + src/ui/inc/FUiCtrl_MessageBox.h | 4 +- src/ui/inc/FUiCtrl_MessageBoxImpl.h | 2 +- src/ui/inc/FUiCtrl_MessageBoxPresenter.h | 24 +- src/ui/inc/FUiCtrl_OptionMenu.h | 1 + src/ui/inc/FUiCtrl_OptionMenuImpl.h | 1 + src/ui/inc/FUiCtrl_OptionMenuItem.h | 1 + src/ui/inc/FUiCtrl_OptionMenuModel.h | 1 + src/ui/inc/FUiCtrl_OptionMenuPresenter.h | 5 + src/ui/inc/FUiCtrl_OverlayAgent.h | 94 +- src/ui/inc/FUiCtrl_OverlayPanel.h | 13 +- src/ui/inc/FUiCtrl_OverlayPanelImpl.h | 16 +- src/ui/inc/FUiCtrl_OverlayRegionImpl.h | 33 +- src/ui/inc/FUiCtrl_Panel.h | 4 +- src/ui/inc/FUiCtrl_PanelImpl.h | 7 +- src/ui/inc/FUiCtrl_Popup.h | 14 +- src/ui/inc/FUiCtrl_PopupImpl.h | 23 +- src/ui/inc/FUiCtrl_PopupPresenter.h | 12 +- src/ui/inc/FUiCtrl_Progress.h | 7 + src/ui/inc/FUiCtrl_ProgressImpl.h | 4 + src/ui/inc/FUiCtrl_ProgressModel.h | 1 + src/ui/inc/FUiCtrl_ProgressPopup.h | 14 +- src/ui/inc/FUiCtrl_ProgressPopupEvent.h | 1 + src/ui/inc/FUiCtrl_ProgressPopupImpl.h | 5 +- src/ui/inc/FUiCtrl_ProgressPopupPresenter.h | 32 +- src/ui/inc/FUiCtrl_ProgressPresenter.h | 7 +- src/ui/inc/FUiCtrl_PublicAdjustmentEvent.h | 1 + src/ui/inc/FUiCtrl_PublicAnimationEvent.h | 1 + src/ui/inc/FUiCtrl_PublicColorChangeEvent.h | 1 + src/ui/inc/FUiCtrl_PublicDateTimeChangeEvent.h | 1 + src/ui/inc/FUiCtrl_PublicFrameEvent.h | 2 + src/ui/inc/FUiCtrl_PublicKeypadEvent.h | 0 src/ui/inc/FUiCtrl_PublicLanguageEvent.h | 4 +- src/ui/inc/FUiCtrl_PublicLinkEvent.h | 0 src/ui/inc/FUiCtrl_PublicProgressPopupEvent.h | 1 + src/ui/inc/FUiCtrl_PublicScrollPanelEvent.h | 3 +- src/ui/inc/FUiCtrl_PublicSliderEvent.h | 1 + src/ui/inc/FUiCtrl_PublicSplitPanelEvent.h | 2 + src/ui/inc/FUiCtrl_PublicTextBlockEvent.h | 1 + src/ui/inc/FUiCtrl_PublicTextEvent.h | 1 + src/ui/inc/FUiCtrl_RadioGroup.h | 2 +- src/ui/inc/FUiCtrl_RadioGroupImpl.h | 1 + src/ui/inc/FUiCtrl_RadioGroupModel.h | 2 +- src/ui/inc/FUiCtrl_RadioGroupPresenter.h | 2 +- src/ui/inc/FUiCtrl_Scroll.h | 20 +- src/ui/inc/FUiCtrl_ScrollEventArg.h | 8 +- src/ui/inc/FUiCtrl_ScrollEventTypes.h | 3 +- src/ui/inc/FUiCtrl_ScrollPanel.h | 46 +- src/ui/inc/FUiCtrl_ScrollPanelEvent.h | 2 +- src/ui/inc/FUiCtrl_ScrollPanelImpl.h | 19 +- src/ui/inc/FUiCtrl_ScrollPanelModel.h | 28 +- src/ui/inc/FUiCtrl_ScrollPanelPresenter.h | 84 +- src/ui/inc/FUiCtrl_ScrollPresenter.h | 95 +- src/ui/inc/FUiCtrl_SearchBar.h | 769 +--- src/ui/inc/FUiCtrl_SearchBarImpl.h | 836 +---- src/ui/inc/FUiCtrl_SearchBarModel.h | 2 +- src/ui/inc/FUiCtrl_SearchBarPresenter.h | 6 +- src/ui/inc/FUiCtrl_SimpleItemImpl.h | 4 +- src/ui/inc/FUiCtrl_SlidableGroupedListImpl.h | 10 +- src/ui/inc/FUiCtrl_SlidableListImpl.h | 11 +- src/ui/inc/FUiCtrl_Slider.h | 12 +- src/ui/inc/FUiCtrl_SliderEvent.h | 1 + src/ui/inc/FUiCtrl_SliderImpl.h | 4 + src/ui/inc/FUiCtrl_SliderModel.h | 1 + src/ui/inc/FUiCtrl_SliderOverlay.h | 11 +- src/ui/inc/FUiCtrl_SliderPresenter.h | 23 +- src/ui/inc/FUiCtrl_SplitPanel.h | 33 +- src/ui/inc/FUiCtrl_SplitPanelImpl.h | 15 + src/ui/inc/FUiCtrl_SplitPanelModel.h | 1 + src/ui/inc/FUiCtrl_SplitPanelPresenter.h | 15 +- src/ui/inc/FUiCtrl_Tab.h | 19 +- src/ui/inc/FUiCtrl_TabBar.h | 25 +- src/ui/inc/FUiCtrl_TabBarImpl.h | 5 +- src/ui/inc/FUiCtrl_TabBarItem.h | 16 +- src/ui/inc/FUiCtrl_TabBarModel.h | 7 +- src/ui/inc/FUiCtrl_TabBarPresenter.h | 34 +- src/ui/inc/FUiCtrl_TabImpl.h | 3 +- src/ui/inc/FUiCtrl_TabItem.h | 3 +- src/ui/inc/FUiCtrl_TabModel.h | 3 +- src/ui/inc/FUiCtrl_TabPresenter.h | 41 +- src/ui/inc/FUiCtrl_TableView.h | 26 +- src/ui/inc/FUiCtrl_TableViewImpl.h | 24 +- src/ui/inc/FUiCtrl_TableViewItem.h | 140 +- src/ui/inc/FUiCtrl_TableViewItemImpl.h | 8 +- src/ui/inc/FUiCtrl_TableViewItemProvider.h | 30 +- src/ui/inc/FUiCtrl_TableViewItemProviderAdaptor.h | 17 +- src/ui/inc/FUiCtrl_TableViewPresenter.h | 105 +- src/ui/inc/FUiCtrl_TextBlockEvent.h | 0 src/ui/inc/FUiCtrl_TextBoxImpl.h | 72 +- src/ui/inc/FUiCtrl_TextEvent.h | 2 +- src/ui/inc/FUiCtrl_TimePickerImpl.h | 5 +- src/ui/inc/FUiCtrl_TokenEdit.h | 0 src/ui/inc/FUiCtrl_TokenEditModel.h | 0 src/ui/inc/FUiCtrl_TokenEditPresenter.h | 82 +- src/ui/inc/FUiCtrl_Toolbar.h | 47 +- src/ui/inc/FUiCtrl_ToolbarPresenter.h | 103 +- src/ui/inc/FUiCtrl_UiListViewItemEventArg.h | 3 +- src/ui/inc/FUiCtrl_UiScrollEventArg.h | 15 +- src/ui/inc/FUi_AccessibilityContainer.h | 21 +- src/ui/inc/FUi_AccessibilityContainerImpl.h | 5 +- src/ui/inc/FUi_AccessibilityElement.h | 20 +- src/ui/inc/FUi_AccessibilityElementImpl.h | 10 +- src/ui/inc/FUi_AccessibilityGesture.h | 2 +- src/ui/inc/FUi_AccessibilityManager.h | 38 +- src/ui/inc/FUi_AccessibilitySystemSettingLoader.h | 9 +- src/ui/inc/FUi_AccessibilityTtsPlayer.h | 21 +- src/ui/inc/FUi_ClipboardPopupEvent.h | 63 + src/ui/inc/FUi_Colorf.h | 2 +- src/ui/inc/FUi_ContainerImpl.h | 6 + src/ui/inc/FUi_Control.h | 136 +- src/ui/inc/FUi_ControlImpl.h | 103 +- src/ui/inc/FUi_ControlImplManager.h | 9 +- src/ui/inc/FUi_ControlManager.h | 33 +- src/ui/inc/FUi_CoordinateSystemUtils.h | 251 +- src/ui/inc/FUi_CustomControlBaseImpl.h | 3 +- src/ui/inc/FUi_Dimensionf.h | 2 +- src/ui/inc/FUi_EcoreEvas.h | 141 +- src/ui/inc/FUi_ErrorMessages.h | 0 src/ui/inc/FUi_FingerInfo.h | 16 +- src/ui/inc/FUi_FocusManagerImpl.h | 2 +- src/ui/inc/FUi_IAccessibilityFocusHandler.h | 43 + src/ui/inc/FUi_IAccessibilityListener.h | 21 +- src/ui/inc/FUi_IClipboardPopupEventListener.h | 79 + src/ui/inc/FUi_IFocusEventListener.h | 6 +- src/ui/inc/FUi_INotificationEventListener.h | 6 +- src/ui/inc/FUi_INotificationEventPreviewer.h | 6 +- src/ui/inc/FUi_IUiEventListener.h | 6 +- src/ui/inc/FUi_IUiEventManager.h | 6 +- src/ui/inc/FUi_IUiEventPreviewer.h | 6 +- src/ui/inc/FUi_IWindow.h | 1 + src/ui/inc/FUi_KeyEventInfoImpl.h | 92 + src/ui/inc/FUi_KeyEventManagerImpl.h | 2 +- src/ui/inc/FUi_LayoutAbsoluteLayout.h | 2 +- src/ui/inc/FUi_LayoutILayoutItemHandler.h | 16 +- src/ui/inc/FUi_LayoutLayout.h | 10 +- src/ui/inc/FUi_LayoutLayoutContainer.h | 2 +- src/ui/inc/FUi_LayoutLayoutItem.h | 11 +- src/ui/inc/FUi_LayoutLayoutMaker.h | 182 + src/ui/inc/FUi_LayoutLayoutTypes.h | 24 +- src/ui/inc/FUi_LayoutLinearLayout.h | 20 +- src/ui/inc/FUi_LayoutRelativeLayout.h | 2 +- src/ui/inc/FUi_LayoutTableLayout.h | 32 +- src/ui/inc/FUi_Math.h | 28 +- src/ui/inc/FUi_Matrix3Df.h | 2 +- src/ui/inc/FUi_ModalLoopManager.h | 3 +- src/ui/inc/FUi_Pointf.h | 2 +- src/ui/inc/FUi_Rectanglef.h | 2 +- src/ui/inc/FUi_ResourceManager.h | 84 +- src/ui/inc/FUi_ResourceSizeInfo.h | 4 +- src/ui/inc/FUi_SharedPtr.h | 6 + src/ui/inc/FUi_SystemUtilImpl.h | 162 + src/ui/inc/FUi_TouchEventInfoImpl.h | 9 +- src/ui/inc/FUi_TouchFlickGestureDetector.h | 6 +- src/ui/inc/FUi_TouchFlickGestureDetectorImpl.h | 2 + src/ui/inc/FUi_TouchGestureDetector.h | 3 + src/ui/inc/FUi_TouchLongPressGestureDetector.h | 12 +- src/ui/inc/FUi_TouchLongPressGestureDetectorImpl.h | 3 + src/ui/inc/FUi_TouchManager.h | 29 +- src/ui/inc/FUi_TouchPanningGestureDetector.h | 3 + src/ui/inc/FUi_TouchPinchGestureDetector.h | 11 +- src/ui/inc/FUi_TouchPinchGestureDetectorImpl.h | 3 + src/ui/inc/FUi_TouchRotationGestureDetector.h | 7 +- src/ui/inc/FUi_TouchRotationGestureDetectorImpl.h | 2 + src/ui/inc/FUi_TouchTapGestureDetector.h | 6 +- src/ui/inc/FUi_TouchTapGestureDetectorImpl.h | 3 + src/ui/inc/FUi_Types.h | 8 +- src/ui/inc/FUi_UiBuilder.h | 2 +- src/ui/inc/FUi_UiBuilderConfig.h | 7 +- src/ui/inc/FUi_UiBuilderControl.h | 2 +- src/ui/inc/FUi_UiBuilderControlElement.h | 2 +- src/ui/inc/FUi_UiBuilderControlItem.h | 2 +- src/ui/inc/FUi_UiBuilderControlLayout.h | 27 +- src/ui/inc/FUi_UiBuilderControlMaker.h | 122 +- src/ui/inc/FUi_UiBuilderControlTable.h | 2 +- src/ui/inc/FUi_UiBuilderRegister.h | 186 +- src/ui/inc/FUi_UiBuilderXmlHandler.h | 2 +- src/ui/inc/FUi_UiEvent.h | 10 +- src/ui/inc/FUi_UiEventManager.h | 6 +- src/ui/inc/FUi_UiEventTypes.h | 6 +- src/ui/inc/FUi_UiFocusEvent.h | 6 +- src/ui/inc/FUi_UiKeyEvent.h | 371 +- src/ui/inc/FUi_UiManagerIpcMessages.h | 29 + src/ui/inc/FUi_UiNotificationEvent.h | 8 +- src/ui/inc/FUi_UiTouchEvent.h | 11 +- src/ui/inc/FUi_VariantImpl.h | 2 + src/ui/inc/FUi_Window.h | 29 +- src/ui/inc/FUi_WindowImpl.h | 13 +- src/ui/layout/FUi_LayoutAbsoluteLayout.cpp | 4 +- src/ui/layout/FUi_LayoutLayout.cpp | 27 +- src/ui/layout/FUi_LayoutLayoutContainer.cpp | 30 +- src/ui/layout/FUi_LayoutLayoutItem.cpp | 62 +- src/ui/layout/FUi_LayoutLayoutItemInfo.h | 10 +- src/ui/layout/FUi_LayoutLayoutItemProxy.cpp | 12 +- src/ui/layout/FUi_LayoutLayoutItemProxy.h | 6 +- src/ui/layout/FUi_LayoutLayoutList.cpp | 8 +- src/ui/layout/FUi_LayoutLayoutMaker.cpp | 1521 ++++++++ src/ui/layout/FUi_LayoutLinearLayout.cpp | 287 +- src/ui/layout/FUi_LayoutProxyList.cpp | 27 +- src/ui/layout/FUi_LayoutRelativeLayout.cpp | 206 +- src/ui/layout/FUi_LayoutTableLayout.cpp | 265 +- .../resource/FUi_ResourceAccessibilityConfig.cpp | 9 +- src/ui/resource/FUi_ResourceButtonConfig.cpp | 22 +- src/ui/resource/FUi_ResourceCheckButtonConfig.cpp | 98 +- src/ui/resource/FUi_ResourceColorPickerConfig.cpp | 20 +- src/ui/resource/FUi_ResourceConfigMacro.h | 62 +- src/ui/resource/FUi_ResourceConfigParser.cpp | 77 +- src/ui/resource/FUi_ResourceConfigParser.h | 7 +- src/ui/resource/FUi_ResourceContextMenuConfig.cpp | 58 +- src/ui/resource/FUi_ResourceDateTimeBarConfig.cpp | 7 +- .../resource/FUi_ResourceDateTimePickerConfig.cpp | 18 +- src/ui/resource/FUi_ResourceEditConfig.cpp | 30 +- src/ui/resource/FUi_ResourceEditDateConfig.cpp | 13 +- src/ui/resource/FUi_ResourceEditTimeConfig.cpp | 22 +- src/ui/resource/FUi_ResourceFastScrollConfig.cpp | 33 +- src/ui/resource/FUi_ResourceFooterConfig.cpp | 122 +- src/ui/resource/FUi_ResourceFormConfig.cpp | 9 +- src/ui/resource/FUi_ResourceGalleryConfig.cpp | 2 +- .../resource/FUi_ResourceGroupContainerConfig.cpp | 37 + src/ui/resource/FUi_ResourceHeaderConfig.cpp | 272 +- src/ui/resource/FUi_ResourceIconListConfig.cpp | 6 +- src/ui/resource/FUi_ResourceInputPadConfig.cpp | 7 +- src/ui/resource/FUi_ResourceLabelConfig.cpp | 8 +- src/ui/resource/FUi_ResourceListConfig.cpp | 9 +- src/ui/resource/FUi_ResourceListViewConfig.cpp | 11 - src/ui/resource/FUi_ResourceLiveboxConfig.cpp | 44 + src/ui/resource/FUi_ResourceMap.h | 84 +- src/ui/resource/FUi_ResourceMapContainer.cpp | 24 + src/ui/resource/FUi_ResourceMapContainer.h | 15 +- src/ui/resource/FUi_ResourceMessageBoxConfig.cpp | 5 +- src/ui/resource/FUi_ResourceOptionMenuConfig.cpp | 29 +- src/ui/resource/FUi_ResourcePanelConfig.cpp | 72 +- src/ui/resource/FUi_ResourcePopupConfig.cpp | 113 +- src/ui/resource/FUi_ResourceProgressConfig.cpp | 46 + src/ui/resource/FUi_ResourceScrollConfig.cpp | 68 +- src/ui/resource/FUi_ResourceSearchBarConfig.cpp | 36 +- src/ui/resource/FUi_ResourceSizeInfo.cpp | 19 +- src/ui/resource/FUi_ResourceSliderConfig.cpp | 27 +- src/ui/resource/FUi_ResourceSplitPanelConfig.cpp | 7 +- src/ui/resource/FUi_ResourceTabBarConfig.cpp | 27 +- src/ui/resource/FUi_ResourceTabConfig.cpp | 45 +- src/ui/resource/FUi_ResourceTableViewConfig.cpp | 66 +- src/ui/resource/FUi_ResourceTokenEditConfig.cpp | 12 +- src/ui/scenes/FUiScenes_SceneManagerImpl.cpp | 278 +- src/ui/scenes/FUiScenes_SceneManagerImpl.h | 16 +- src/uifw/CMakeLists.txt | 4 +- 2699 files changed, 78529 insertions(+), 40188 deletions(-) mode change 100644 => 100755 inc/FGrpEnrichedText.h mode change 100644 => 100755 inc/FUi.h mode change 100644 => 100755 inc/FUiAccessibilityContainer.h mode change 100644 => 100755 inc/FUiContainer.h mode change 100644 => 100755 inc/FUiControl.h mode change 100644 => 100755 inc/FUiControls.h mode change 100644 => 100755 inc/FUiCtrlContextMenu.h mode change 100644 => 100755 inc/FUiCtrlControlsTypes.h mode change 100644 => 100755 inc/FUiCtrlDatePicker.h mode change 100644 => 100755 inc/FUiCtrlDateTimePicker.h mode change 100644 => 100755 inc/FUiCtrlEditArea.h mode change 100644 => 100755 inc/FUiCtrlEditField.h mode change 100644 => 100755 inc/FUiCtrlEditTypes.h mode change 100644 => 100755 inc/FUiCtrlForm.h mode change 100644 => 100755 inc/FUiCtrlFrame.h create mode 100644 inc/FUiCtrlGroupContainer.h delete mode 100644 inc/FUiCtrlGroupTypes.h mode change 100644 => 100755 inc/FUiCtrlGroupedListView.h create mode 100644 inc/FUiCtrlIEditTextFilter.h create mode 100644 inc/FUiCtrlIGroupedListViewItemProviderF.h create mode 100644 inc/FUiCtrlIGroupedTableViewItemProviderF.h create mode 100644 inc/FUiCtrlIListViewItemProviderF.h mode change 100644 => 100755 inc/FUiCtrlIProgressPopupEventListener.h create mode 100644 inc/FUiCtrlIScrollEventListenerF.h create mode 100644 inc/FUiCtrlISectionTableViewItemProviderF.h create mode 100644 inc/FUiCtrlISplitPanelEventListenerF.h create mode 100644 inc/FUiCtrlITableViewItemProviderF.h mode change 100644 => 100755 inc/FUiCtrlIconList.h mode change 100644 => 100755 inc/FUiCtrlInputTypes.h mode change 100644 => 100755 inc/FUiCtrlKeypad.h mode change 100644 => 100755 inc/FUiCtrlListView.h mode change 100644 => 100755 inc/FUiCtrlMessageBox.h mode change 100644 => 100755 inc/FUiCtrlOverlayPanel.h mode change 100644 => 100755 inc/FUiCtrlPopup.h mode change 100644 => 100755 inc/FUiCtrlSearchBar.h mode change 100644 => 100755 inc/FUiCtrlSplitPanel.h mode change 100644 => 100755 inc/FUiCtrlTextBox.h mode change 100644 => 100755 inc/FUiCtrlTimePicker.h mode change 100644 => 100755 inc/FUiCustomControlBase.h mode change 100644 => 100755 inc/FUiICustomItemEventListener.h create mode 100755 inc/FUiIDragDropEventListenerF.h mode change 100644 => 100755 inc/FUiIExpandableItemEventListener.h mode change 100644 => 100755 inc/FUiIFastScrollEventListener.h mode change 100644 => 100755 inc/FUiIGroupedItemEventListener.h mode change 100644 => 100755 inc/FUiIInputConnectionEventListener.h create mode 100644 inc/FUiIInputConnectionEventListenerF.h mode change 100644 => 100755 inc/FUiIInputConnectionProvider.h mode change 100644 => 100755 inc/FUiIItemEventListener.h mode change 100644 => 100755 inc/FUiILanguageEventListener.h create mode 100644 inc/FUiIPropagatedKeyEventListener.h create mode 100644 inc/FUiIPropagatedTouchEventListener.h mode change 100644 => 100755 inc/FUiISlidableGroupedListEventListener.h mode change 100644 => 100755 inc/FUiISlidableListEventListener.h mode change 100644 => 100755 inc/FUiITextBlockEventListener.h mode change 100644 => 100755 inc/FUiITextEventListener.h mode change 100644 => 100755 inc/FUiIUiLinkEventListener.h mode change 100644 => 100755 inc/FUiIWindowEventListener.h mode change 100644 => 100755 inc/FUiInputConnection.h mode change 100644 => 100755 inc/FUiInputConnectionTypes.h create mode 100644 inc/FUiKeyEventInfo.h create mode 100644 inc/FUiKeyTypes.h mode change 100644 => 100755 inc/FUiKeyboardMap.h mode change 100644 => 100755 inc/FUiLayout.h mode change 100755 => 100644 inc/FUiSystemUtil.h mode change 100644 => 100755 inc/FUiVariant.h mode change 100644 => 100755 inc/FUiVerticalBoxLayout.h mode change 100755 => 100644 inc/FUiWindow.h delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_Title_btn.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_Title_btn_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_arrow_button_press_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_arrow_button_press_ef.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_badge_bg.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_badge_bg.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_badge_bg_ef.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_badge_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_btn_circle_bg.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_btn_circle_bg_ef.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_btn_circle_bg_p_ef.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_01.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_01_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_01_bg_p_ef.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_01_ef.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_01_ef.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_01_ef_dim.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_01_ef_dim.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_01_ef_press.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_01_ef_press.9.png rename res/common/usr/share/osp/bitmaps/{720x1280/00_button_02.9.png => 480x800/00_button_02.#.png} (100%) mode change 100644 => 100755 rename res/common/usr/share/osp/bitmaps/{720x1280/00_button_02_ef.9.png => 480x800/00_button_02_ef.#.png} (100%) mode change 100644 => 100755 rename res/common/usr/share/osp/bitmaps/{720x1280/00_button_02_ef_press.9.png => 480x800/00_button_02_ef_press.#.png} (100%) mode change 100644 => 100755 delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_03.9.png rename res/common/usr/share/osp/bitmaps/{720x1280/00_button_03_ef.9.png => 480x800/00_button_03_dim_ef.#.png} (100%) mode change 100644 => 100755 delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_03_dim_ef.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_03_ef.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_03_ef_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_06_dim.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_06_normal.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_06_press.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_call.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_call_ef.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_cancel.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_expand_cancel.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_expand_cancel_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_expand_closed.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_expand_minus.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_expand_minus_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_expand_opened.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_expand_send.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_expand_send_ef.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_info.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_info_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_left.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_left_ef.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_minus.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_normal.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_normal_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_normal_effect_01.9.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_off.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_off_01.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_off_dim.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_off_dim_temp.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_off_temp.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_on.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_on_01.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_on_dim.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_on_dim_temp.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_on_off_handler.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_on_off_handler_dim.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_on_temp.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_plus.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_plus_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_radio.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_radio_dim.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_radio_press.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_radio_press1.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_radio_press2.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_radio_select.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_radio_select_dim.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_rename.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_rename_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_right.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_right_ef.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_seg_f_bg_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_seg_f_bg_02.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_seg_f_bg_03.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_seg_f_bg_ef_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_seg_f_bg_ef_02.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_seg_f_bg_ef_03.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_send.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_button_warning.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_warring.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_warring_ef.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_web.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_button_web_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_category_bg.9.png rename res/common/usr/share/osp/bitmaps/480x800/{00_category_button.9.png => 00_category_button.#.png} (100%) rename res/common/usr/share/osp/bitmaps/480x800/{00_category_button_focus.9.png => 00_category_button_focus.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_category_left_button.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_category_left_button_arrow.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_category_left_gd.png rename res/common/usr/share/osp/bitmaps/{720x1280/00_tab_bg.9.png => 480x800/00_category_panel_bg.#.png} (100%) mode change 100644 => 100755 delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_category_panel_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_category_panel_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_category_right_button.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_category_right_button_arrow.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_category_right_gd.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_check.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_check_angle.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_check_bg.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_check_bg_dim.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_check_bg_press.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_check_checking.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_check_checking_bg.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_check_checking_dim.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_check_index_bg.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_circle_bg.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_circle_bg_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_circle_bg_ef_dim.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_circle_bg_ef_press.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_color_picker_brightness.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_color_picker_brightness_h.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_color_picker_btn_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_color_picker_btn_left.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_color_picker_btn_right.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_color_picker_color.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_color_picker_color_h.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_color_picker_custom_color.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_color_picker_custom_color_h.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_color_picker_focus.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_color_picker_saturation.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_color_picker_saturation_h.png create mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_contacts_button_bg.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_contacts_button_bg.9.png create mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_contacts_button_bg_ef.#.png create mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_contacts_button_bg_press_ef.#.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_context_popup_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_context_popup_bg_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_context_popup_bg_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_context_popup_tail_bottom.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_context_popup_tail_bottom_01.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_context_popup_tail_bottom_effect.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_context_popup_tail_left.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_context_popup_tail_left_01.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_context_popup_tail_left_effect.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_context_popup_tail_right.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_context_popup_tail_right_01.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_context_popup_tail_right_effect.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_context_popup_tail_top.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_context_popup_tail_top_01.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_context_popup_tail_top_effect.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_date_picker_center_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_date_picker_center_bg_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_date_picker_center_bg_press_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_date_picker_left_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_date_picker_left_bg_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_date_picker_left_bg_press_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_date_picker_right_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_date_picker_right_bg_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_date_picker_right_bg_press_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_detail_button#5.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_detail_button.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_detail_button_01.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_detail_button_01_dim.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_detail_button_01_press.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_detail_button_dim#1.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_detail_button_dim.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_detail_button_press#3.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_detail_button_press.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_dialogue_group_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_dialogue_group_bg_bar.9.png rename res/common/usr/share/osp/bitmaps/{720x1280/00_toolbar_divider_line.9.png => 480x800/00_divider_line.#.png} (100%) delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_divider_line.9.png rename res/common/usr/share/osp/bitmaps/{720x1280/00_divider_line_translucent.9.png => 480x800/00_divider_line_translucent.#.png} (100%) mode change 100644 => 100755 delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_edit_field_bg.9.png rename res/common/usr/share/osp/bitmaps/{720x1280/00_edit_field_line_round_bg_01.9.png => 480x800/00_edit_field_line_round_bg_01.#.png} (100%) mode change 100644 => 100755 delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_edit_field_line_squre_bg_01.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_edit_field_no_line_round_bg.9.png rename res/common/usr/share/osp/bitmaps/{720x1280/00_edit_field_no_line_square_bg.9.png => 480x800/00_edit_field_no_line_square_bg.#.png} (100%) mode change 100644 => 100755 rename res/common/usr/share/osp/bitmaps/{720x1280/white/00_edit_field_round_bg.9.png => 480x800/00_edit_field_round_bg.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_edit_field_round_bg_ef.9.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_effect_tab_bounce_left.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_effect_tab_bounce_left_h.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_effect_tab_bounce_right.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_effect_tab_bounce_right_h.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_effect_title_tab_bounce_left.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_effect_title_tab_bounce_right.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_effect_toolbar_tab_bounce_left.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_effect_toolbar_tab_bounce_left_h.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_effect_toolbar_tab_bounce_right.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_effect_toolbar_tab_bounce_right_h.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_fast_scroll_handler.#.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_fast_scroll_handler_h.#.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_fast_scroll_popup_bg.#.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_fast_scroll_popup_bg.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_fast_scroll_popup_bg_ef.#.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_fast_scroll_popup_bg_ef.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_fast_scroll_rollover_bg.#.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_fast_scroll_rollover_bg_focus.#.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_fast_scroll_rollover_bg_focus.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_fast_scroll_rollover_bg_line_focus.#.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_fast_scroll_rollover_bg_line_focus.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_footer_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_footer_bg_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_footer_icon_close.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_footer_icon_close_press.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_footer_icon_more.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_footer_icon_more_press.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_bg.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_bg_focus.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_bg_focus.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_bg_p.9.png rename res/common/usr/share/osp/bitmaps/480x800/{00_groupedlist_bg_press.9.png => 00_groupedlist_bg_press.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_bottom_bg.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_bottom_bg_focus.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_bottom_bg_focus.9.png rename res/common/usr/share/osp/bitmaps/480x800/{00_groupedlist_bottom_bg_press.9.png => 00_groupedlist_bottom_bg_press.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_center_bg.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_center_bg_focus.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_center_bg_focus.9.png rename res/common/usr/share/osp/bitmaps/480x800/{00_groupedlist_center_bg_press.9.png => 00_groupedlist_center_bg_press.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_h_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_input_outline_h.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_normal_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_top_bg.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_top_bg_focus.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_top_bg_focus.9.png rename res/common/usr/share/osp/bitmaps/480x800/{00_groupedlist_top_bg_press.9.png => 00_groupedlist_top_bg_press.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_header_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_header_bg_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_header_bg_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_header_button_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_header_button_bg_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_header_button_bg_focus.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_header_button_bg_press_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_header_title_handler.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_icon_Back.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_icon_Back_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_icon_Back_ef_02.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_icon_Back_trans_ef.png create mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_icon_Hide.png create mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_icon_Hide_ef.png create mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_icon_Hide_ef_02.png create mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_icon_Hide_trans_ef.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_icon_back.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_icon_edit.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_icon_edit_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_icon_more.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_icon_more_ef.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_icon_plus.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_icon_plus_ef.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_iconlist_bg.9.png rename res/common/usr/share/osp/bitmaps/{720x1280/00_indexlist_bg.9.png => 480x800/00_indexlist_bg.#.png} (100%) rename res/common/usr/share/osp/bitmaps/{720x1280/00_indexlist_bg_ef.9.png => 480x800/00_indexlist_bg_ef.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_label_01_normal.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg_bottom.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg_bottom.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg_bottom_ef.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg_bottom_ef.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg_center.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg_center.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg_center_ef.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg_center_ef.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg_ef.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg_ef.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg_top.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg_top.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg_top_ef.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg_top_ef.9.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_01.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_02.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_03.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_04.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_05.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_06.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_07.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_08.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_09.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_10.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_11.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_12.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_13.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_14.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_15.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_16.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_17.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_18.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_19.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_20.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_21.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_22.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_23.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_24.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_25.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_26.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_27.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_28.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_29.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_process_30.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_progress_bar.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_progress_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_slider_icon_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_slider_icon_bg_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_list_slider_icon_bg_effect_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_on_button_controller#5.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_option_panel_handle_bg.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_option_panel_handle_bg_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_option_panel_handle_bg_ef_press.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_option_panel_handle_bg_p.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_option_panel_handle_bg_p_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_option_panel_handle_bg_press.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_option_panel_handle_more.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_option_panel_handle_more_press.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_option_tray_tail_bg.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_overscrolling_bottom.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_overscrolling_bottom.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_overscrolling_left.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_overscrolling_left.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_overscrolling_right.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_overscrolling_right.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_overscrolling_top.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_overscrolling_top.9.png rename res/common/usr/share/osp/bitmaps/{720x1280/00_fast_scroll_rollover_bg.9.png => 480x800/00_panel_bg.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_panel_bg.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_panel_handle_bg.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_panel_handle_bg.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_panel_handle_bg_ef.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_panel_handle_bg_ef.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_panel_handle_bg_ef_press.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_panel_handle_bg_ef_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_panel_handle_bg_p_ef.9.png rename res/common/usr/share/osp/bitmaps/480x800/{00_panel_list_press_bg.9.png => 00_panel_list_press_bg.#.png} (100%) rename res/common/usr/share/osp/bitmaps/480x800/{00_panel_list_press_bg_ef.9.png => 00_panel_list_press_bg_ef.#.png} (100%) create mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_popup_bg.#.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_popup_bg.9.png create mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_popup_bg_ef.#.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_popup_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_popup_bg_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_popup_bottom_bg.9.png rename res/common/usr/share/osp/bitmaps/480x800/{00_popup_bubble_bg.9.png => 00_popup_bubble_bg.#.png} (100%) rename res/common/usr/share/osp/bitmaps/{720x1280/00_popup_bubble_bg_ef.9.png => 480x800/00_popup_bubble_bg_ef.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_popup_bubble_tail_bottom_bg.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_popup_bubble_tail_left_bg.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_popup_bubble_tail_right_bg.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_popup_bubble_tail_top_bg.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_popup_title_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_processing_ani_52x52_00.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_processing_ani_52x52_01.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_processing_ani_52x52_02.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_processing_ani_52x52_03.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_processing_ani_52x52_04.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_processing_ani_52x52_05.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_processing_ani_52x52_06.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_processing_ani_52x52_07.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_processing_ani_52x52_08.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_processing_ani_52x52_09.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_progress.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_progress_bar.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_progress_bar_ef.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_progress_bar_ef.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_progress_bg.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_progress_bg.9.png rename res/common/usr/share/osp/bitmaps/480x800/{00_progress_ef.9.png => 00_progress_ef.#.png} (100%) create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_progress_ef_bg.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_progress_ef_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_reorder_group_list_bg.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_scroll_bar.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_scroll_bar_ef.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_scroll_bar_h.#.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_scroll_bar_h_ef.#.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_scroll_bar_handler_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_scroll_bar_handler_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_scroll_bar_handler_h.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_scroll_bar_handler_v.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_scroll_bar_v.#.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_scroll_bar_v_ef.#.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_scroll_icon_jump.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_scroll_icon_jump_left.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_search_clear_icon_normal.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_search_clear_icon_press.png create mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_search_edit_field_bg.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_search_edit_field_bg.9.png create mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_search_edit_field_bg_ef.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_search_edit_field_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_seg_line.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_seg_line_tr.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_slider_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_slider_bg_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_slider_handle.9.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_slider_handle.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_slider_handle_dim.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_slider_handle_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_slider_handle_ef_dim.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_slider_handle_ef_press.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_slider_handle_press.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_slider_popup_bg.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_slider_popup_bg_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_slider_popup_bottom_bg.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_slider_popup_bottom_bg_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_softkey_icon_add.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_softkey_icon_zoom.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_softkey_left_bg.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_softkey_left_bg_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_softkey_left_bg_ef_press.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_softkey_left_bg_p_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_softkey_left_text_bg.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_softkey_left_text_bg_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_softkey_left_text_bg_ef_press.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_softkey_left_text_bg_p_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_softkey_right_bg.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_softkey_right_bg_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_softkey_right_bg_ef_press.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_softkey_right_bg_p_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_softkey_right_text_bg.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_softkey_right_text_bg_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_softkey_right_text_bg_ef_press.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_softkey_right_text_bg_p_ef.png rename res/common/usr/share/osp/bitmaps/{720x1280/00_splite_handler_bg.9.png => 480x800/00_splite_handler_bg.#.png} (100%) mode change 100644 => 100755 rename res/common/usr/share/osp/bitmaps/{720x1280/00_splite_handler_bg_ef_h.9.png => 480x800/00_splite_handler_bg_ef_h.#.png} (100%) mode change 100644 => 100755 rename res/common/usr/share/osp/bitmaps/{720x1280/00_splite_handler_bg_ef_v.9.png => 480x800/00_splite_handler_bg_ef_v.#.png} (100%) mode change 100644 => 100755 mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_splite_handler_h.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_splite_handler_v.png create mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_system_control_bg.#.png rename res/common/usr/share/osp/bitmaps/{720x1280/00_arrow_button_press_bg.9.png => 480x800/00_tab_bg.#.png} (100%) create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_tab_focus.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_tab_focus.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_tab_icon_more_01.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_tab_icon_more_02.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_tab_move_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_tab_move_bg_ef.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_tab_press_ef.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_tab_press_ef.9.png rename res/common/usr/share/osp/bitmaps/{720x1280/00_thumbs_bg_focus.9.png => 480x800/00_thumbs_bg_focus.#.png} (100%) rename res/common/usr/share/osp/bitmaps/{720x1280/00_thumbs_line_bg.9.png => 480x800/00_thumbs_line_bg.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_thumbs_loading_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_tick_box_normal.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_time_picker_btn.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_time_picker_btn_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_time_picker_btn_press_effect.9.png rename res/common/usr/share/osp/bitmaps/480x800/{00_time_picker_keypad_bg.9.png => 00_time_picker_keypad_bg.#.png} (100%) rename res/common/usr/share/osp/bitmaps/480x800/{00_time_picker_keypad_button_bg.9.png => 00_time_picker_keypad_button_bg.#.png} (100%) rename res/common/usr/share/osp/bitmaps/480x800/{00_time_picker_keypad_button_bg_ef.9.png => 00_time_picker_keypad_button_bg_ef.#.png} (100%) rename res/common/usr/share/osp/bitmaps/{720x1280/00_timepicker_number_bg.9.png => 480x800/00_timepicker_number_bg.#.png} (100%) mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_timepicker_tail.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/00_timepicker_tail_01.png rename res/common/usr/share/osp/bitmaps/480x800/{00_title_bg.9.png => 00_title_bg.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_title_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_title_btn_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_title_btn_bg_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_title_button_bg_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_title_icon_more.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_title_line.png rename res/common/usr/share/osp/bitmaps/480x800/{00_toolbar_bg.9.png => 00_toolbar_bg.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_btn_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_btn_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_btn_bg_p_ef.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_bg.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_bg.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_bg_center.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_bg_left.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_bg_right.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_center_ef.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_center_press_ef.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_ef.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_ef.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_ef_press.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_ef_press.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_left_ef.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_left_ef_press.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_press.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_press.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_right_ef.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_right_press_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_line.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_line_01.png rename res/common/usr/share/osp/bitmaps/480x800/{00_toolbar_press.9.png => 00_toolbar_press.#.png} (100%) delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_trans_button_center.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_trans_button_center_press.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_trans_button_left.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_trans_button_left_press.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_trans_button_right.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/00_toolbar_trans_button_right_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_transparent_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_value_progress_bar.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_value_progress_bar_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_value_progress_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_value_progress_bg_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_Back_btn_normal.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_Back_btn_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_badge.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_control_tabbar_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_control_toolbar_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_divider_line.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_01.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_01_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_02.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_02_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_03.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_03_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_04.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_04_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_05.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_05_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_06.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_06_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_07.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_07_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_08.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_08_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_09.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_09_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_10.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_10_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_11.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_11_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_12.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_12_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_13.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_13_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_14.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_14_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_15.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_15_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_16.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_16_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_17.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_17_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_18.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_18_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_19.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_19_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_20.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_20_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_21.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_21_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_22.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_22_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_23.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_23_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_24.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_24_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_25.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_25_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_26.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_26_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_27.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_27_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_28.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_28_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_29.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_29_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_30.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_list_process_30_32x32.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_thumbs_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/00_winset_title_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/04_textinput_qwerty_button.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/04_textinput_qwerty_button_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/04_textinput_qwerty_button_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/Off_Background#5.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/On_Background#5.png rename res/common/usr/share/osp/bitmaps/{720x1280/TTS_focus.9.png => 480x800/TTS_focus.#.png} (100%) rename res/common/usr/share/osp/bitmaps/{720x1280/TTS_popup_bg.9.png => 480x800/TTS_popup_bg.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_btn_circle_bg_ef.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_button_01_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_button_edit_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_button_seg_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_button_seg_f_bg_ef_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_button_seg_f_bg_ef_02.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_button_seg_f_bg_ef_03.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_color_picker_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_dialogue_group_bg_line.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_edit_field_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_groupedlist_bg_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_groupedlist_bottom_bg_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_groupedlist_center_bg_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_groupedlist_top_bg_01.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_01.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_02.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_03.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_04.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_05.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_06.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_07.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_08.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_09.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_10.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_11.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_12.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_13.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_14.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_15.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_16.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_17.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_18.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_19.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_20.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_21.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_22.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_23.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_24.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_25.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_26.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_27.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_28.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_29.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_header_process_30.png rename res/common/usr/share/osp/bitmaps/480x800/black/{00_indexlist_bg_ef.9.png => 00_indexlist_bg_ef.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_indexlist_icon_line.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_01_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_02_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_03_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_04_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_05_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_06_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_07_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_08_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_09_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_10_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_11_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_12_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_13_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_14_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_15_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_16_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_17_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_18_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_19_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_20_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_21_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_22_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_23_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_24_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_25_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_26_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_27_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_28_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_29_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/black/00_list_process_30_32x32.png rename res/common/usr/share/osp/bitmaps/480x800/black/{00_popup_bg_ef.9.png => 00_popup_bg_ef.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_popup_bottom_bg.9.png rename res/common/usr/share/osp/bitmaps/480x800/black/{00_popup_bubble_bg_ef.9.png => 00_popup_bubble_bg_ef.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_popup_button_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_popup_title_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_popup_title_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_reorder_group_list_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_slider_handle_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_tab_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_tab_bg_focus_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_tab_bg_line_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_title_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_title_btn_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_title_button_bg_ef_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_title_option_btn_bg_ef.9.png rename res/common/usr/share/osp/bitmaps/480x800/black/{00_toolbar_bg_ef.9.png => 00_toolbar_bg_ef.#.png} (100%) rename res/common/usr/share/osp/bitmaps/480x800/black/{00_toolbar_press_ef.9.png => 00_toolbar_ef_press.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_toolbar_ef_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_toolbar_tab_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_toolbar_tab_bg_focus_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_toolbar_tab_bg_line_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/black/00_winset_badge.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/copy&paste_Icon02_left.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/copy&paste_Icon02_left_press.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/copy&paste_Icon02_right.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/copy&paste_Icon02_right_press.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/480x800/copy&paste_icon_search.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_btn_circle_bg_ef.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_button_01_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_button_edit_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_button_seg_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_button_seg_f_bg_ef_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_button_seg_f_bg_ef_02.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_button_seg_f_bg_ef_03.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_color_picker_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_dialogue_group_bg_line.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_edit_field_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_groupedlist_bg_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_groupedlist_bottom_bg_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_groupedlist_center_bg_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_groupedlist_top_bg_01.9.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_01.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_02.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_03.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_04.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_05.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_06.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_07.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_08.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_09.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_10.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_11.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_12.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_13.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_14.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_15.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_16.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_17.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_18.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_19.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_20.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_21.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_22.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_23.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_24.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_25.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_26.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_27.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_28.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_29.png create mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_header_process_30.png rename res/common/usr/share/osp/bitmaps/480x800/white/{00_indexlist_bg_ef.9.png => 00_indexlist_bg_ef.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_indexlist_icon_line.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_01_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_02_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_03_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_04_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_05_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_06_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_07_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_08_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_09_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_10_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_11_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_12_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_13_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_14_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_15_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_16_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_17_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_18_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_19_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_20_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_21_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_22_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_23_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_24_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_25_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_26_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_27_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_28_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_29_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_list_process_30_32x32.png create mode 100644 res/common/usr/share/osp/bitmaps/480x800/white/00_popup_bg_ef.#.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_popup_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_popup_bottom_bg.9.png rename res/common/usr/share/osp/bitmaps/480x800/white/{00_popup_bubble_bg_ef.9.png => 00_popup_bubble_bg_ef.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_popup_button_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_popup_title_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_popup_title_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_reorder_group_list_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_slider_handle_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_title_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_title_btn_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_title_button_bg_ef_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_title_option_btn_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_toolbar_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_toolbar_ef_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_toolbar_press_ef.9.png rename res/common/usr/share/osp/bitmaps/480x800/white/{00_toolbar_tab_bg_ef.9.png => 00_toolbar_tab_bg_ef.#.png} (100%) rename res/common/usr/share/osp/bitmaps/480x800/white/{00_toolbar_tab_bg_focus_ef.9.png => 00_toolbar_tab_bg_focus_ef.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_toolbar_tab_bg_line_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/480x800/white/00_winset_badge.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_Title_btn.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_Title_btn_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_arrow_button_press_ef.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_badge_bg.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_badge_bg.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_badge_bg_ef.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_badge_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_btn_circle_bg.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_btn_circle_bg_ef.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_btn_circle_bg_p_ef.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_01.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_01_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_01_bg_p_ef.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_01_ef.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_01_ef.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_01_ef_dim.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_01_ef_dim.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_01_ef_press.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_01_ef_press.9.png rename res/common/usr/share/osp/bitmaps/{480x800/00_button_02.9.png => 720x1280/00_button_02.#.png} (100%) rename res/common/usr/share/osp/bitmaps/{480x800/00_button_02_ef.9.png => 720x1280/00_button_02_ef.#.png} (100%) rename res/common/usr/share/osp/bitmaps/{480x800/00_button_02_ef_press.9.png => 720x1280/00_button_02_ef_press.#.png} (100%) rename res/common/usr/share/osp/bitmaps/720x1280/{00_button_03.9.png => 00_button_03.#.png} (100%) mode change 100644 => 100755 delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_03_dim_ef.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_03_ef_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_06_dim.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_06_normal.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_06_press.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_call.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_call_ef.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_cancel.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_expand_cancel.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_expand_cancel_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_expand_closed.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_expand_minus.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_expand_minus_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_expand_opened.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_expand_send.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_expand_send_ef.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_info.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_info_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_left.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_left_ef.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_minus.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_normal.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_normal_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_normal_effect_01.9.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_off.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_off_01.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_off_dim.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_off_dim_temp.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_off_temp.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_on.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_on_01.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_on_dim.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_on_dim_temp.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_on_off_handler.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_on_off_handler_dim.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_on_temp.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_plus.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_plus_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_radio.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_radio_dim.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_radio_normal1.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_radio_normal2.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_radio_press.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_radio_select.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_radio_select_dim.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_rename.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_rename_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_right.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_right_ef.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_seg_f_bg_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_seg_f_bg_02.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_seg_f_bg_03.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_seg_f_bg_ef_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_seg_f_bg_ef_02.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_seg_f_bg_ef_03.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_send.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_button_warning.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_warring.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_warring_ef.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_web.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_button_web_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_category_bg.9.png create mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_category_button.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_category_button.9.png create mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_category_button_focus.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_category_button_focus.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_category_left_button.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_category_left_button_arrow.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_category_left_gd.png create mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_category_panel_bg.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_category_panel_bg.9.png create mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_category_panel_bg_ef.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_category_panel_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_category_right_button.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_category_right_button_arrow.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_category_right_gd.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_check.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_check_angle.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_check_bg.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_check_bg_dim.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_check_bg_press.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_check_checking.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_check_checking_bg.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_check_checking_dim.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_check_index_bg.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_circle_bg.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_circle_bg_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_circle_bg_ef_dim.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_circle_bg_ef_press.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_color_picker_brightness.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_color_picker_brightness_h.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_color_picker_btn_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_color_picker_btn_left.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_color_picker_btn_right.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_color_picker_color.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_color_picker_color_h.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_color_picker_custom_color.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_color_picker_custom_color_h.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_color_picker_focus.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_color_picker_saturation.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_color_picker_saturation_h.png create mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_contacts_button_bg.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_contacts_button_bg.9.png create mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_contacts_button_bg_ef.#.png create mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_contacts_button_bg_press_ef.#.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_context_popup_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_context_popup_bg_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_context_popup_bg_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_context_popup_tail_bottom.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_context_popup_tail_bottom_01.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_context_popup_tail_bottom_effect.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_context_popup_tail_left.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_context_popup_tail_left_01.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_context_popup_tail_left_effect.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_context_popup_tail_right.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_context_popup_tail_right_01.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_context_popup_tail_right_effect.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_context_popup_tail_top.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_context_popup_tail_top_01.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_context_popup_tail_top_effect.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_date_picker_center_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_date_picker_center_bg_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_date_picker_center_bg_press_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_date_picker_left_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_date_picker_left_bg_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_date_picker_left_bg_press_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_date_picker_right_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_date_picker_right_bg_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_date_picker_right_bg_press_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_detail_button#5.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_detail_button.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_detail_button_01.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_detail_button_01_dim.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_detail_button_01_press.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_detail_button_dim#1.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_detail_button_dim.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_detail_button_press#3.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_detail_button_press.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_dialogue_group_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_dialogue_group_bg_bar.9.png rename res/common/usr/share/osp/bitmaps/720x1280/{00_divider_line.9.png => 00_divider_line.#.png} (100%) mode change 100644 => 100755 rename res/common/usr/share/osp/bitmaps/{480x800/00_divider_line_translucent.9.png => 720x1280/00_divider_line_translucent.#.png} (100%) mode change 100644 => 100755 delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_edit_field_bg.9.png rename res/common/usr/share/osp/bitmaps/{480x800/00_edit_field_line_round_bg_01.9.png => 720x1280/00_edit_field_line_round_bg_01.#.png} (100%) mode change 100644 => 100755 delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_edit_field_line_squre_bg_01.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_edit_field_no_line_round_bg.9.png rename res/common/usr/share/osp/bitmaps/{480x800/00_edit_field_no_line_square_bg.9.png => 720x1280/00_edit_field_no_line_square_bg.#.png} (100%) mode change 100644 => 100755 rename res/common/usr/share/osp/bitmaps/{480x800/00_edit_field_round_bg.9.png => 720x1280/00_edit_field_round_bg.#.png} (100%) mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_effect_tab_bounce_left.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_effect_tab_bounce_left_h.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_effect_tab_bounce_right.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_effect_tab_bounce_right_h.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_effect_title_tab_bounce_left.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_effect_title_tab_bounce_right.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_effect_toolbar_tab_bounce_left.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_effect_toolbar_tab_bounce_left_h.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_effect_toolbar_tab_bounce_right.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_effect_toolbar_tab_bounce_right_h.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_fast_scroll_handler.#.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_fast_scroll_handler_h.#.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_fast_scroll_popup_bg.#.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_fast_scroll_popup_bg.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_fast_scroll_popup_bg_ef.#.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_fast_scroll_popup_bg_ef.9.png rename res/common/usr/share/osp/bitmaps/{480x800/00_fast_scroll_rollover_bg.9.png => 720x1280/00_fast_scroll_rollover_bg.#.png} (100%) rename res/common/usr/share/osp/bitmaps/720x1280/{00_fast_scroll_rollover_bg_focus.9.png => 00_fast_scroll_rollover_bg_focus.#.png} (100%) rename res/common/usr/share/osp/bitmaps/720x1280/{00_fast_scroll_rollover_bg_line_focus.9.png => 00_fast_scroll_rollover_bg_line_focus.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_footer_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_footer_bg_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_footer_button_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_footer_button_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_footer_button_ef_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_footer_icon_Back.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_footer_icon_Back_ef.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_footer_icon_Back_ef_02.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_footer_icon_close.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_footer_icon_close_press.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_footer_icon_more.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_footer_icon_more2.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_footer_icon_more2_ef.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_footer_icon_more_press.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_groupedlist_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_groupedlist_bg_01.9.png rename res/common/usr/share/osp/bitmaps/720x1280/{00_groupedlist_bg_focus.9.png => 00_groupedlist_bg_focus.#.png} (100%) mode change 100644 => 100755 delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_groupedlist_bg_p.9.png rename res/common/usr/share/osp/bitmaps/720x1280/{00_groupedlist_bg_press.9.png => 00_groupedlist_bg_press.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_groupedlist_bottom_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_groupedlist_bottom_bg_01.9.png rename res/common/usr/share/osp/bitmaps/720x1280/{00_groupedlist_bottom_bg_focus.9.png => 00_groupedlist_bottom_bg_focus.#.png} (100%) mode change 100644 => 100755 rename res/common/usr/share/osp/bitmaps/720x1280/{00_groupedlist_bottom_bg_press.9.png => 00_groupedlist_bottom_bg_press.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_groupedlist_center_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_groupedlist_center_bg_01.9.png rename res/common/usr/share/osp/bitmaps/720x1280/{00_groupedlist_center_bg_focus.9.png => 00_groupedlist_center_bg_focus.#.png} (100%) mode change 100644 => 100755 rename res/common/usr/share/osp/bitmaps/720x1280/{00_groupedlist_center_bg_press.9.png => 00_groupedlist_center_bg_press.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_groupedlist_h_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_groupedlist_input_outline_h.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_groupedlist_normal_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_groupedlist_top_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_groupedlist_top_bg_01.9.png rename res/common/usr/share/osp/bitmaps/720x1280/{00_groupedlist_top_bg_focus.9.png => 00_groupedlist_top_bg_focus.#.png} (100%) mode change 100644 => 100755 rename res/common/usr/share/osp/bitmaps/720x1280/{00_groupedlist_top_bg_press.9.png => 00_groupedlist_top_bg_press.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_header_badge_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_header_badge_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_header_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_header_bg_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_header_bg_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_header_button_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_header_button_bg_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_header_button_bg_focus.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_header_button_bg_press_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_header_button_web.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_header_button_web_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_header_icon_edit.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_header_icon_edit_ef.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_header_icon_plus.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_header_icon_plus_ef.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_header_tab_press_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_header_title_handler.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_icon_Back.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_icon_Back_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_icon_Back_ef_02.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_icon_Back_trans_ef.png create mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_icon_Hide.png create mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_icon_Hide_ef.png create mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_icon_Hide_ef_02.png create mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_icon_Hide_trans_ef.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_icon_add.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_icon_back.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_icon_edit.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_icon_edit_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_icon_more.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_icon_more_ef.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_icon_plus.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_icon_plus_ef.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_iconlist_bg.9.png rename res/common/usr/share/osp/bitmaps/{480x800/00_indexlist_bg.9.png => 720x1280/00_indexlist_bg.#.png} (100%) rename res/common/usr/share/osp/bitmaps/{480x800/00_indexlist_bg_ef.9.png => 720x1280/00_indexlist_bg_ef.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_label_01_normal.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_group_bg.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_list_group_bg.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_group_bg_bottom.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_list_group_bg_bottom.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_group_bg_bottom_ef.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_list_group_bg_bottom_ef.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_group_bg_center.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_list_group_bg_center.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_group_bg_center_ef.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_list_group_bg_center_ef.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_group_bg_ef.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_list_group_bg_ef.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_group_bg_top.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_list_group_bg_top.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_group_bg_top_ef.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_list_group_bg_top_ef.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_group_press_bg.#.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_group_press_bg_bottom.#.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_group_press_bg_center.#.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_group_press_bg_top.#.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_01.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_02.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_03.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_04.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_05.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_06.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_07.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_08.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_09.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_10.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_11.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_12.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_13.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_14.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_15.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_16.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_17.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_18.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_19.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_20.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_21.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_22.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_23.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_24.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_25.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_26.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_27.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_28.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_29.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_process_30.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_progress_bar.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_progress_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_slider_icon_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_slider_icon_bg_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_list_slider_icon_bg_effect_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_on_button_controller#5.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_option_panel_contextual_popup_arrow.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_option_panel_handle_bg.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_option_panel_handle_bg_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_option_panel_handle_bg_ef_press.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_option_panel_handle_bg_p.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_option_panel_handle_bg_p_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_option_panel_handle_bg_press.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_option_panel_handle_more.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_option_panel_handle_more_press.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_option_tray_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_option_tray_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_option_tray_tail_bg.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_option_tray_tail_ef.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_overscrolling_bottom.#.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_overscrolling_bottom.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_overscrolling_left.#.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_overscrolling_left.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_overscrolling_right.#.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_overscrolling_right.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_overscrolling_top.#.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_overscrolling_top.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_panel_bg.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_panel_bg.9.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_panel_handle_arrow.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_panel_handle_bg.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_panel_handle_bg.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_panel_handle_bg_ef.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_panel_handle_bg_ef.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_panel_handle_bg_ef_press.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_panel_handle_bg_ef_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_panel_handle_bg_p_ef.9.png rename res/common/usr/share/osp/bitmaps/720x1280/{00_panel_list_press_bg.9.png => 00_panel_list_press_bg.#.png} (100%) rename res/common/usr/share/osp/bitmaps/720x1280/{00_panel_list_press_bg_ef.9.png => 00_panel_list_press_bg_ef.#.png} (100%) create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_popup_bg.#.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_popup_bg.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_popup_bg_ef.#.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_popup_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_popup_bottom_bg.9.png rename res/common/usr/share/osp/bitmaps/720x1280/{00_popup_bubble_bg.9.png => 00_popup_bubble_bg.#.png} (100%) rename res/common/usr/share/osp/bitmaps/{480x800/00_popup_bubble_bg_ef.9.png => 720x1280/00_popup_bubble_bg_ef.#.png} (100%) create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_popup_bubble_tail_bottom.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_popup_bubble_tail_bottom_bg.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_popup_bubble_tail_left.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_popup_bubble_tail_left_bg.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_popup_bubble_tail_right.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_popup_bubble_tail_right_bg.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_popup_bubble_tail_top.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_popup_bubble_tail_top_bg.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_popup_title_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_processing_ani_52x52_00.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_processing_ani_52x52_01.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_processing_ani_52x52_02.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_processing_ani_52x52_03.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_processing_ani_52x52_04.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_processing_ani_52x52_05.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_processing_ani_52x52_06.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_processing_ani_52x52_07.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_processing_ani_52x52_08.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_processing_ani_52x52_09.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_progress.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_progress_bar.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_progress_bar.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_progress_bar_ef.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_progress_bar_ef.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_progress_bar_ef_m.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_progress_bar_m.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_progress_bg.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_progress_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_progress_ef.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_progress_ef_bg.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_progress_ef_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_reorder_group_list_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_scroll_bar.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_scroll_bar_ef.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_scroll_bar_h.#.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_scroll_bar_h_ef.#.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_scroll_bar_handler_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_scroll_bar_handler_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_scroll_bar_handler_h.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_scroll_bar_handler_v.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_scroll_bar_v.#.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_scroll_bar_v_ef.#.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_search_clear_icon_normal.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_search_clear_icon_press.png create mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_search_edit_field_bg.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_search_edit_field_bg.9.png create mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_search_edit_field_bg_ef.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_search_edit_field_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_seg_line.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_seg_line_tr.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_slider_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_slider_bg_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_slider_handle.9.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_slider_handle.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_slider_handle_dim.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_slider_handle_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_slider_handle_ef_dim.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_slider_handle_ef_press.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_slider_handle_press.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_slider_popup_bg.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_slider_popup_bg_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_slider_popup_bottom_bg.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_slider_popup_bottom_bg_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_softkey_icon_add.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_softkey_icon_zoom.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_softkey_left_bg.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_softkey_left_bg_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_softkey_left_bg_ef_press.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_softkey_left_bg_p_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_softkey_left_text_bg.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_softkey_left_text_bg_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_softkey_left_text_bg_ef_press.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_softkey_left_text_bg_p_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_softkey_right_bg.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_softkey_right_bg_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_softkey_right_bg_ef_press.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_softkey_right_bg_p_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_softkey_right_text_bg.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_softkey_right_text_bg_ef.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_softkey_right_text_bg_ef_press.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_softkey_right_text_bg_p_ef.png rename res/common/usr/share/osp/bitmaps/{480x800/00_splite_handler_bg.9.png => 720x1280/00_splite_handler_bg.#.png} (100%) mode change 100644 => 100755 rename res/common/usr/share/osp/bitmaps/{480x800/00_splite_handler_bg_ef_h.9.png => 720x1280/00_splite_handler_bg_ef_h.#.png} (100%) mode change 100644 => 100755 rename res/common/usr/share/osp/bitmaps/{480x800/00_splite_handler_bg_ef_v.9.png => 720x1280/00_splite_handler_bg_ef_v.#.png} (100%) mode change 100644 => 100755 mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_splite_handler_h.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/00_splite_handler_v.png create mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_system_control_bg.#.png rename res/common/usr/share/osp/bitmaps/{480x800/00_tab_bg.9.png => 720x1280/00_tab_bg.#.png} (100%) mode change 100644 => 100755 rename res/common/usr/share/osp/bitmaps/720x1280/{00_tab_focus.9.png => 00_tab_focus.#.png} (100%) mode change 100644 => 100755 delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_tab_icon_more_01.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_tab_icon_more_02.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_tab_move_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_tab_move_bg_ef.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_tab_press_ef.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_tab_press_ef.9.png rename res/common/usr/share/osp/bitmaps/{480x800/00_thumbs_bg_focus.9.png => 720x1280/00_thumbs_bg_focus.#.png} (100%) rename res/common/usr/share/osp/bitmaps/{480x800/00_thumbs_line_bg.9.png => 720x1280/00_thumbs_line_bg.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_thumbs_loading_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_tick_box_normal.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_time_picker_btn.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_time_picker_btn_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_time_picker_btn_press_effect.9.png rename res/common/usr/share/osp/bitmaps/720x1280/{00_time_picker_keypad_bg.9.png => 00_time_picker_keypad_bg.#.png} (100%) rename res/common/usr/share/osp/bitmaps/720x1280/{00_time_picker_keypad_button_bg.9.png => 00_time_picker_keypad_button_bg.#.png} (100%) rename res/common/usr/share/osp/bitmaps/720x1280/{00_time_picker_keypad_button_bg_ef.9.png => 00_time_picker_keypad_button_bg_ef.#.png} (100%) rename res/common/usr/share/osp/bitmaps/{480x800/00_timepicker_number_bg.9.png => 720x1280/00_timepicker_number_bg.#.png} (100%) rename res/common/usr/share/osp/bitmaps/720x1280/{00_toolbar_bg.9.png => 00_title_bg.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_title_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_title_btn_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_title_btn_bg_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_title_button_bg_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_title_icon_more.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_title_icon_search.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_title_line.png rename res/common/usr/share/osp/bitmaps/720x1280/{00_title_bg.9.png => 00_toolbar_bg.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_btn_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_btn_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_btn_bg_ef_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_btn_bg_p_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_btn_focus.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_button.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_button.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_button_bg.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_button_bg.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_button_bg_center.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_button_bg_left.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_button_bg_right.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_button_center_ef.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_button_center_press_ef.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_button_ef.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_button_ef.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_button_ef_press.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_button_ef_press.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_button_left_ef.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_button_left_ef_press.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_button_press.#.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_button_press.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_button_right_ef.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_button_right_press_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_line.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_line_01.png rename res/common/usr/share/osp/bitmaps/720x1280/{00_toolbar_press.9.png => 00_toolbar_press.#.png} (100%) delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_trans_button_center.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_trans_button_center_press.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_trans_button_left.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_trans_button_left_press.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_trans_button_right.9.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/00_toolbar_trans_button_right_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_transparent_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_value_progress_bar.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_value_progress_bar_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_value_progress_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_value_progress_bg_effect.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_Back_btn_normal.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_Back_btn_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_badge.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_control_tabbar_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_control_toolbar_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_divider_line.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_01.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_02.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_03.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_04.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_05.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_06.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_07.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_08.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_09.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_10.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_11.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_12.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_13.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_14.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_15.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_16.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_17.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_18.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_19.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_20.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_21.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_22.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_23.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_24.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_25.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_26.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_27.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_28.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_29.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_list_process_30.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_thumbs_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/00_winset_title_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/04_textinput_qwerty_button.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/04_textinput_qwerty_button_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/04_textinput_qwerty_button_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/Off_Background#5.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/On_Background#5.png rename res/common/usr/share/osp/bitmaps/{480x800/TTS_focus.9.png => 720x1280/TTS_focus.#.png} (100%) rename res/common/usr/share/osp/bitmaps/{480x800/TTS_popup_bg.9.png => 720x1280/TTS_popup_bg.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_btn_circle_bg_ef.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_button_01_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_button_edit_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_button_seg_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_button_seg_f_bg_ef_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_button_seg_f_bg_ef_02.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_button_seg_f_bg_ef_03.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_color_picker_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_dialogue_group_bg_line.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_edit_field_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_groupedlist_bg_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_groupedlist_bottom_bg_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_groupedlist_center_bg_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_groupedlist_top_bg_01.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_01.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_02.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_03.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_04.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_05.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_06.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_07.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_08.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_09.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_10.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_11.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_12.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_13.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_14.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_15.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_16.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_17.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_18.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_19.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_20.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_21.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_22.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_23.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_24.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_25.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_26.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_27.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_28.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_29.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_header_process_30.png rename res/common/usr/share/osp/bitmaps/720x1280/black/{00_indexlist_bg_ef.9.png => 00_indexlist_bg_ef.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_indexlist_icon_line.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_01_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_02_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_03_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_04_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_05_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_06_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_07_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_08_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_09_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_10_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_11_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_12_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_13_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_14_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_15_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_16_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_17_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_18_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_19_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_20_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_21_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_22_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_23_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_24_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_25_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_26_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_27_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_28_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_29_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/black/00_list_process_30_32x32.png rename res/common/usr/share/osp/bitmaps/720x1280/black/{00_popup_bg_ef.9.png => 00_popup_bg_ef.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_popup_bottom_bg.9.png rename res/common/usr/share/osp/bitmaps/720x1280/black/{00_popup_bubble_bg_ef.9.png => 00_popup_bubble_bg_ef.#.png} (100%) rename res/common/usr/share/osp/bitmaps/720x1280/black/{00_popup_button_bg_ef.9.png => 00_popup_button_bg_ef.#.png} (100%) rename res/common/usr/share/osp/bitmaps/720x1280/black/{00_popup_title_bg.9.png => 00_popup_title_bg.#.png} (100%) rename res/common/usr/share/osp/bitmaps/720x1280/black/{00_popup_title_bg_ef.9.png => 00_popup_title_bg_ef.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_reorder_group_list_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_slider_handle_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_tab_bg_ef.9.png rename res/common/usr/share/osp/bitmaps/720x1280/black/{00_tab_bg_focus_ef.9.png => 00_tab_bg_focus_ef.#.png} (100%) rename res/common/usr/share/osp/bitmaps/720x1280/black/{00_tab_bg_line_ef.9.png => 00_tab_bg_line_ef.#.png} (100%) rename res/common/usr/share/osp/bitmaps/720x1280/black/{00_title_bg_ef.9.png => 00_title_bg_ef.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_title_btn_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_title_button_bg_ef_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_title_option_btn_bg_ef.9.png rename res/common/usr/share/osp/bitmaps/720x1280/black/{00_toolbar_bg_ef.9.png => 00_toolbar_bg_ef.#.png} (100%) rename res/common/usr/share/osp/bitmaps/720x1280/black/{00_toolbar_press_ef.9.png => 00_toolbar_ef_press.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_toolbar_ef_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_toolbar_tab_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_toolbar_tab_bg_focus_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_toolbar_tab_bg_line_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/00_winset_badge.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/pd_btn_bg.#.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/pd_btn_bg_arrow_down.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/black/pd_btn_bg_arrow_up.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/copy&paste_Icon02_left.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/copy&paste_Icon02_left_press.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/copy&paste_Icon02_right.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/copy&paste_Icon02_right_press.png mode change 100644 => 100755 res/common/usr/share/osp/bitmaps/720x1280/copy&paste_icon_search.png create mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_arrow_left.png create mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_arrow_right.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_btn_circle_bg_ef.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_button_01_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_button_edit_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_button_seg_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_button_seg_f_bg_ef_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_button_seg_f_bg_ef_02.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_button_seg_f_bg_ef_03.9.png create mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_category_button.#.png create mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_category_button_focus.#.png create mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_category_left_gradation.png create mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_category_panel_bg.#.png create mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_category_panel_bg_ef.#.png create mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_category_right_gradation.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_color_picker_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_dialogue_group_bg_line.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_edit_field_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_edit_field_round_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_groupedlist_bg_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_groupedlist_bottom_bg_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_groupedlist_center_bg_01.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_groupedlist_top_bg_01.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_01.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_02.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_03.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_04.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_05.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_06.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_07.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_08.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_09.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_10.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_11.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_12.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_13.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_14.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_15.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_16.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_17.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_18.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_19.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_20.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_21.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_22.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_23.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_24.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_25.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_26.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_27.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_28.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_29.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_header_process_30.png rename res/common/usr/share/osp/bitmaps/720x1280/white/{00_indexlist_bg_ef.9.png => 00_indexlist_bg_ef.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_indexlist_icon_line.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_01_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_02_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_03_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_04_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_05_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_06_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_07_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_08_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_09_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_10_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_11_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_12_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_13_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_14_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_15_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_16_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_17_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_18_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_19_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_20_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_21_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_22_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_23_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_24_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_25_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_26_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_27_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_28_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_29_32x32.png delete mode 100644 res/common/usr/share/osp/bitmaps/720x1280/white/00_list_process_30_32x32.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_popup_bg_ef.#.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_popup_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_popup_bottom_bg.9.png rename res/common/usr/share/osp/bitmaps/720x1280/white/{00_popup_bubble_bg_ef.9.png => 00_popup_bubble_bg_ef.#.png} (100%) rename res/common/usr/share/osp/bitmaps/720x1280/white/{00_popup_button_bg_ef.9.png => 00_popup_button_bg_ef.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_popup_title_bg.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_popup_title_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_reorder_group_list_bg.9.png rename res/common/usr/share/osp/bitmaps/720x1280/white/{00_slider_bg.9.png => 00_slider_bg.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_slider_handle.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_slider_handle_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_slider_handle_dim.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_slider_handle_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_title_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_title_btn_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_title_button_bg_ef_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_title_option_btn_bg_ef.9.png rename res/common/usr/share/osp/bitmaps/720x1280/white/{00_toolbar_bg_ef.9.png => 00_toolbar_bg_ef.#.png} (100%) rename res/common/usr/share/osp/bitmaps/720x1280/white/{00_toolbar_press_ef.9.png => 00_toolbar_ef_press.#.png} (100%) delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_toolbar_ef_press.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_toolbar_tab_bg_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_toolbar_tab_bg_focus_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_toolbar_tab_bg_line_ef.9.png delete mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/00_winset_badge.9.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/pd_btn_bg.#.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/pd_btn_bg_arrow_down.png create mode 100755 res/common/usr/share/osp/bitmaps/720x1280/white/pd_btn_bg_arrow_up.png mode change 100644 => 100755 src/app/FApp_UiAppImpl.cpp mode change 100755 => 100644 src/graphics/CMakeLists.txt mode change 100644 => 100755 src/graphics/FGrpBitmap.cpp mode change 100644 => 100755 src/graphics/FGrp_Bitmap.cpp mode change 100644 => 100755 src/graphics/FGrp_Bitmap.h mode change 100644 => 100755 src/graphics/FGrp_BitmapCoordHolder.h mode change 100644 => 100755 src/graphics/FGrp_BitmapImpl.cpp mode change 100644 => 100755 src/graphics/FGrp_BitmapUtil.cpp mode change 100644 => 100755 src/graphics/FGrp_BitmapUtil.h mode change 100644 => 100755 src/graphics/FGrp_Canvas.cpp mode change 100644 => 100755 src/graphics/FGrp_Canvas.h mode change 100644 => 100755 src/graphics/FGrp_CanvasCoordHolder.h mode change 100644 => 100755 src/graphics/FGrp_CanvasImpl.cpp create mode 100755 src/graphics/FGrp_CanvasTool.cpp mode change 100644 => 100755 src/graphics/FGrp_CoordinateSystem.cpp create mode 100755 src/graphics/FGrp_CoordinateSystemUtils.cpp delete mode 100644 src/graphics/FGrp_FontBidiManager.cpp delete mode 100644 src/graphics/FGrp_FontBidiManager.h create mode 100755 src/graphics/FGrp_FontBidiUtil.cpp create mode 100644 src/graphics/FGrp_FontBidiUtil.h mode change 100644 => 100755 src/graphics/FGrp_NonScale.cpp mode change 100644 => 100755 src/graphics/FGrp_ResUtil.h mode change 100644 => 100755 src/graphics/effect/FGrp_Effect.h mode change 100644 => 100755 src/graphics/effect/FGrp_EffectManip.cpp mode change 100644 => 100755 src/graphics/inc/FGrp_BitmapImpl.h mode change 100644 => 100755 src/graphics/inc/FGrp_CanvasImpl.h create mode 100755 src/graphics/inc/FGrp_CanvasTool.h create mode 100755 src/graphics/inc/FGrp_CoordinateSystemUtils.h mode change 100644 => 100755 src/graphics/inc/FGrp_NonScale.h mode change 100644 => 100755 src/graphics/text/FGrp_TextTextImage.cpp mode change 100644 => 100755 src/graphics/util/FGrp_Util.cpp mode change 100644 => 100755 src/graphics/util/FGrp_Util.h mode change 100644 => 100755 src/graphics/util/FGrp_UtilTemplate.h mode change 100644 => 100755 src/ui/FUiCardLayout.cpp mode change 100644 => 100755 src/ui/FUiContainer.cpp mode change 100644 => 100755 src/ui/FUiControl.cpp mode change 100644 => 100755 src/ui/FUiCustomControlBase.cpp mode change 100644 => 100755 src/ui/FUiGridLayout.cpp mode change 100644 => 100755 src/ui/FUiHorizontalBoxLayout.cpp mode change 100644 => 100755 src/ui/FUiInputConnection.cpp create mode 100644 src/ui/FUiKeyEventInfo.cpp mode change 100644 => 100755 src/ui/FUiKeyboardMap.cpp mode change 100644 => 100755 src/ui/FUiRelativeLayout.cpp mode change 100644 => 100755 src/ui/FUiVerticalBoxLayout.cpp mode change 100644 => 100755 src/ui/FUiWindow.cpp mode change 100644 => 100755 src/ui/FUi_CardLayoutImpl.cpp mode change 100644 => 100755 src/ui/FUi_CardLayoutImpl.h create mode 100644 src/ui/FUi_ClipboardPopupEvent.cpp mode change 100644 => 100755 src/ui/FUi_ContainerImpl.cpp mode change 100755 => 100644 src/ui/FUi_ControlImpl.cpp mode change 100755 => 100644 src/ui/FUi_ControlManager.cpp delete mode 100644 src/ui/FUi_CoordinateSystemUtils.cpp mode change 100644 => 100755 src/ui/FUi_CustomControlBaseImpl.cpp mode change 100644 => 100755 src/ui/FUi_ErrorMessages.cpp mode change 100644 => 100755 src/ui/FUi_GridLayoutImpl.cpp mode change 100644 => 100755 src/ui/FUi_GridLayoutImpl.h mode change 100644 => 100755 src/ui/FUi_HorizontalBoxLayoutImpl.cpp mode change 100644 => 100755 src/ui/FUi_HorizontalBoxLayoutImpl.h mode change 100644 => 100755 src/ui/FUi_InputConnectionImpl.cpp mode change 100644 => 100755 src/ui/FUi_InputConnectionImpl.h create mode 100644 src/ui/FUi_KeyEventInfoImpl.cpp mode change 100644 => 100755 src/ui/FUi_LayoutImpl.cpp mode change 100644 => 100755 src/ui/FUi_LayoutImpl.h mode change 100644 => 100755 src/ui/FUi_ModalLoopManager.cpp mode change 100644 => 100755 src/ui/FUi_RelativeLayoutImpl.cpp mode change 100644 => 100755 src/ui/FUi_RelativeLayoutImpl.h create mode 100644 src/ui/FUi_SystemUtilImpl.cpp mode change 100644 => 100755 src/ui/FUi_UiBuilder.cpp mode change 100644 => 100755 src/ui/FUi_UiEvent.cpp mode change 100644 => 100755 src/ui/FUi_UiKeyEvent.cpp create mode 100644 src/ui/FUi_UiManagerIpcMessages.cpp create mode 100644 src/ui/FUi_UiManagerProxy.cpp create mode 100644 src/ui/FUi_UiManagerProxy.h mode change 100644 => 100755 src/ui/FUi_UiNotificationEvent.cpp mode change 100644 => 100755 src/ui/FUi_VerticalBoxLayoutImpl.cpp mode change 100644 => 100755 src/ui/FUi_VerticalBoxLayoutImpl.h mode change 100644 => 100755 src/ui/FUi_WindowImpl.cpp create mode 100644 src/ui/animations/FUiAnim_AnimationGroupNode.cpp create mode 100644 src/ui/animations/FUiAnim_AnimationGroupNode.h delete mode 100644 src/ui/animations/FUiAnim_AnimationImpl.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrlAnimation.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrlColorPicker.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrlEditArea.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrlEditField.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrlExpandableEditArea.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrlGallery.cpp create mode 100644 src/ui/controls/FUiCtrlGroupContainer.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrlGroupedTableView.cpp create mode 100644 src/ui/controls/FUiCtrlIGroupedListViewItemProviderF.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrlIconListViewItem.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrlKeypad.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrlProgressPopup.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrlScrollPanel.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrlSearchBar.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrlSectionTableView.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrlTableView.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrlTextBox.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_ColorPicker.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_Edit.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_EditAreaImpl.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_EditCopyPasteEvent.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_EditFieldImpl.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_EditModel.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_ExpandableEditAreaImpl.cpp delete mode 100644 src/ui/controls/FUiCtrl_ExpandableListData.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_Form.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_FormImpl.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_Frame.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_Gallery.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_GalleryBitmap.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_GalleryCanvas.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_GalleryCanvasManager.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_GalleryImageReader.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_GalleryPresenter.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_GalleryRenderer.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_GalleryViewEventHandler.cpp create mode 100644 src/ui/controls/FUiCtrl_GroupContainer.cpp create mode 100644 src/ui/controls/FUiCtrl_GroupContainerImpl.cpp create mode 100644 src/ui/controls/FUiCtrl_GroupContainerPresenter.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_IconListItemProvider.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_IconListItemProviderAdaptor.cpp mode change 100755 => 100644 src/ui/controls/FUiCtrl_IconListPresenter.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_IconListViewItemEvent.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_IconListViewItemEventArg.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_IconListViewItemImpl.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_Keypad.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_KeypadEvent.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_LanguageEvent.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_LinkEvent.cpp create mode 100644 src/ui/controls/FUiCtrl_ListViewTouchEventHandler.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_MessageBox.cpp mode change 100755 => 100644 src/ui/controls/FUiCtrl_MessageBoxPresenter.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_OverlayPanel.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_Popup.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_ProgressPopup.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_ProgressPopupImpl.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_PublicKeypadEvent.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_PublicLanguageEvent.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_PublicLinkEvent.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_PublicProgressPopupEvent.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_ScrollPanelPresenter.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_SearchBar.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_SearchBarImpl.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_SearchBarPresenter.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_TokenEdit.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_TokenEditModel.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_Toolbar.cpp mode change 100644 => 100755 src/ui/controls/FUiCtrl_UiIconListItemEvent.cpp mode change 100644 => 100755 src/ui/inc/FUiCtrl_Edit.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_EditAreaImpl.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_EditCopyPasteEvent.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_EditCopyPasteManager.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_EditFieldImpl.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_EditModel.h delete mode 100644 src/ui/inc/FUiCtrl_ExpandableListData.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_Frame.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_GalleryBitmap.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_GalleryCanvas.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_GalleryCanvasManager.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_GalleryImageReader.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_GalleryRenderer.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_GalleryViewEventHandler.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_GalleryViewEventInfo.h create mode 100644 src/ui/inc/FUiCtrl_GroupContainer.h create mode 100644 src/ui/inc/FUiCtrl_GroupContainerImpl.h create mode 100644 src/ui/inc/FUiCtrl_GroupContainerPresenter.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_IEditCopyPasteEventListener.h create mode 100644 src/ui/inc/FUiCtrl_IEditTextFilter.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_IGalleryRenderer.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_IIconListItemEventListener.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_IKeypadEventListener.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_ILanguageEventListener.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_IUiLinkEventListener.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_IconListItemProvider.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_IconListItemProviderAdaptor.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_IconListViewItemEvent.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_IconListViewItemEventArg.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_IconListViewItemImpl.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_KeypadEvent.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_KeypadImpl.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_LanguageEvent.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_LinkEvent.h create mode 100644 src/ui/inc/FUiCtrl_ListViewTouchEventHandler.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_PopupPresenter.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_ProgressPopup.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_ProgressPopupImpl.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_ProgressPopupPresenter.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_PublicKeypadEvent.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_PublicLanguageEvent.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_PublicLinkEvent.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_SearchBar.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_SearchBarImpl.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_SearchBarPresenter.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_TextBlockEvent.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_TextBoxImpl.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_TextEvent.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_TokenEdit.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_TokenEditModel.h mode change 100644 => 100755 src/ui/inc/FUiCtrl_TokenEditPresenter.h create mode 100644 src/ui/inc/FUi_ClipboardPopupEvent.h mode change 100644 => 100755 src/ui/inc/FUi_ContainerImpl.h mode change 100644 => 100755 src/ui/inc/FUi_Control.h mode change 100644 => 100755 src/ui/inc/FUi_ControlImpl.h mode change 100644 => 100755 src/ui/inc/FUi_CoordinateSystemUtils.h mode change 100644 => 100755 src/ui/inc/FUi_CustomControlBaseImpl.h mode change 100644 => 100755 src/ui/inc/FUi_ErrorMessages.h create mode 100644 src/ui/inc/FUi_IAccessibilityFocusHandler.h create mode 100644 src/ui/inc/FUi_IClipboardPopupEventListener.h mode change 100644 => 100755 src/ui/inc/FUi_IWindow.h create mode 100644 src/ui/inc/FUi_KeyEventInfoImpl.h mode change 100644 => 100755 src/ui/inc/FUi_LayoutAbsoluteLayout.h mode change 100644 => 100755 src/ui/inc/FUi_LayoutILayoutItemHandler.h mode change 100644 => 100755 src/ui/inc/FUi_LayoutLayout.h mode change 100644 => 100755 src/ui/inc/FUi_LayoutLayoutContainer.h mode change 100644 => 100755 src/ui/inc/FUi_LayoutLayoutItem.h create mode 100755 src/ui/inc/FUi_LayoutLayoutMaker.h mode change 100644 => 100755 src/ui/inc/FUi_LayoutLayoutTypes.h mode change 100644 => 100755 src/ui/inc/FUi_LayoutLinearLayout.h mode change 100644 => 100755 src/ui/inc/FUi_LayoutRelativeLayout.h mode change 100644 => 100755 src/ui/inc/FUi_ModalLoopManager.h mode change 100644 => 100755 src/ui/inc/FUi_SharedPtr.h create mode 100644 src/ui/inc/FUi_SystemUtilImpl.h mode change 100644 => 100755 src/ui/inc/FUi_UiBuilder.h mode change 100644 => 100755 src/ui/inc/FUi_UiBuilderConfig.h mode change 100644 => 100755 src/ui/inc/FUi_UiBuilderControlMaker.h mode change 100644 => 100755 src/ui/inc/FUi_UiEvent.h create mode 100644 src/ui/inc/FUi_UiManagerIpcMessages.h mode change 100644 => 100755 src/ui/inc/FUi_UiNotificationEvent.h mode change 100644 => 100755 src/ui/inc/FUi_WindowImpl.h mode change 100644 => 100755 src/ui/layout/FUi_LayoutAbsoluteLayout.cpp mode change 100644 => 100755 src/ui/layout/FUi_LayoutLayout.cpp mode change 100644 => 100755 src/ui/layout/FUi_LayoutLayoutItem.cpp mode change 100644 => 100755 src/ui/layout/FUi_LayoutLayoutItemInfo.h mode change 100644 => 100755 src/ui/layout/FUi_LayoutLayoutItemProxy.cpp mode change 100644 => 100755 src/ui/layout/FUi_LayoutLayoutItemProxy.h mode change 100644 => 100755 src/ui/layout/FUi_LayoutLayoutList.cpp create mode 100755 src/ui/layout/FUi_LayoutLayoutMaker.cpp mode change 100644 => 100755 src/ui/layout/FUi_LayoutLinearLayout.cpp mode change 100644 => 100755 src/ui/layout/FUi_LayoutProxyList.cpp mode change 100644 => 100755 src/ui/layout/FUi_LayoutRelativeLayout.cpp mode change 100644 => 100755 src/ui/resource/FUi_ResourceAccessibilityConfig.cpp mode change 100644 => 100755 src/ui/resource/FUi_ResourceColorPickerConfig.cpp mode change 100644 => 100755 src/ui/resource/FUi_ResourceContextMenuConfig.cpp mode change 100644 => 100755 src/ui/resource/FUi_ResourceDateTimeBarConfig.cpp mode change 100644 => 100755 src/ui/resource/FUi_ResourceDateTimePickerConfig.cpp mode change 100644 => 100755 src/ui/resource/FUi_ResourceEditConfig.cpp mode change 100644 => 100755 src/ui/resource/FUi_ResourceEditTimeConfig.cpp mode change 100644 => 100755 src/ui/resource/FUi_ResourceFastScrollConfig.cpp mode change 100644 => 100755 src/ui/resource/FUi_ResourceGalleryConfig.cpp create mode 100644 src/ui/resource/FUi_ResourceGroupContainerConfig.cpp mode change 100644 => 100755 src/ui/resource/FUi_ResourceIconListConfig.cpp mode change 100644 => 100755 src/ui/resource/FUi_ResourceInputPadConfig.cpp create mode 100644 src/ui/resource/FUi_ResourceLiveboxConfig.cpp mode change 100644 => 100755 src/ui/resource/FUi_ResourceMessageBoxConfig.cpp mode change 100644 => 100755 src/ui/resource/FUi_ResourcePanelConfig.cpp mode change 100644 => 100755 src/ui/resource/FUi_ResourcePopupConfig.cpp create mode 100755 src/ui/resource/FUi_ResourceProgressConfig.cpp mode change 100644 => 100755 src/ui/resource/FUi_ResourceScrollConfig.cpp mode change 100644 => 100755 src/ui/resource/FUi_ResourceSearchBarConfig.cpp mode change 100644 => 100755 src/ui/resource/FUi_ResourceSliderConfig.cpp mode change 100644 => 100755 src/ui/resource/FUi_ResourceSplitPanelConfig.cpp mode change 100644 => 100755 src/ui/resource/FUi_ResourceTabBarConfig.cpp mode change 100644 => 100755 src/ui/resource/FUi_ResourceTabConfig.cpp mode change 100644 => 100755 src/ui/resource/FUi_ResourceTableViewConfig.cpp mode change 100644 => 100755 src/ui/resource/FUi_ResourceTokenEditConfig.cpp mode change 100644 => 100755 src/ui/scenes/FUiScenes_SceneManagerImpl.cpp mode change 100644 => 100755 src/ui/scenes/FUiScenes_SceneManagerImpl.h mode change 100755 => 100644 src/uifw/CMakeLists.txt diff --git a/NOTICE b/NOTICE index 13d0a7a..cca4178 100644 --- a/NOTICE +++ b/NOTICE @@ -1,9 +1,9 @@ Copyright (c) Samsung Electronics Co., Ltd. All rights reserved. -Except as noted, this software is licensed under Flora License, Version 1. -Please, see the LICENSE.Flora file for Flora License terms and conditions. +Except as noted, this software is licensed under Apache License, Version 2. +Please, see the LICENSE file for Apache License terms and conditions. Several source codes may have its original copyright owner and/or -be licensed under other than Flora License, Version 1, say, Apache License, Version 2. +be licensed under other than Apache License, Version 2, say, Flora License, Version 1. Please, see copyright and license comments section in the header of each file, -and the LICENSE.APLv2 for Apache License terms and conditions. +and the LICENSE.Flora for Flora License terms and conditions. diff --git a/inc/FGraphics.h b/inc/FGraphics.h index e10e972..815a7e1 100644 --- a/inc/FGraphics.h +++ b/inc/FGraphics.h @@ -92,89 +92,43 @@ using namespace Tizen::Base; using namespace Tizen::Graphics; bool -MyClass::GraphicsSample(void) +MyClass::GraphicsSample(Canvas& canvas) { result r = E_SUCCESS; - // Creates a canvas instance. - Canvas* pCanvas = new Canvas(); - r = pCanvas->Construct(); - if (IsFailed(r)) - { - goto CATCH; - } - - // Clears - pCanvas->SetBackgroundColor(Color(0xFF, 0xFF, 0xFF)); - r = pCanvas->Clear(); - if (IsFailed(r)) - { - goto CATCH; - } - - // Sets the foreground color of this canvas. - pCanvas->SetForegroundColor(Color::GetColor(COLOR_ID_GREEN)); + // Sets the background color of the canvas and then clears it + canvas.SetBackgroundColor(Color(0xFF, 0xFF, 0xFF)); + canvas.Clear(); - // Draws an ellipse. - r = pCanvas->DrawEllipse(Rectangle(50, 50, 50, 80)); - if (IsFailed(r)) - { - goto CATCH; - } - - r = pCanvas->DrawLine(Point(100, 100), Point(150, 150)); - if (IsFailed(r)) - { - goto CATCH; - } + // Sets the foreground color of this canvas + canvas.SetForegroundColor(Color::GetColor(COLOR_ID_GREEN)); - // Draws a circular arc. - r = pCanvas->DrawArc(Rectangle(10, 200, 50, 50), 30, 60, ARC_STYLE_PIE); - if (IsFailed(r)) - { - goto CATCH; - } + // Draws shapes + canvas.DrawEllipse(Rectangle(50, 50, 50, 80)); + canvas.DrawLine(Point(100, 100), Point(150, 150)); + canvas.DrawArc(Rectangle(10, 200, 50, 50), 30, 60, ARC_STYLE_PIE); { - // Creates a font instance. + // Creates an instance of Font Font font; r = font.Construct(FONT_STYLE_PLAIN, 32); if (IsFailed(r)) { - goto CATCH; + return false; } - // Sets the font to canvas. - r = pCanvas->SetFont(font); - if (IsFailed(r)) - { - goto CATCH; - } + // Sets the canvas font + canvas.SetFont(font); } - // Draws text at the specified location. - r = pCanvas->DrawText(Point(50, 50), String(L"Hello World")); - if (IsFailed(r)) - { - goto CATCH; - } + // Draws text at the specified location + canvas.DrawText(Point(50, 50), String(L"Hello World")); - // Shows the drawing result on the device screen. - r = pCanvas->Show(); - if (IsFailed(r)) - { - goto CATCH; - } - - // Cleans up. - delete pCanvas; + // Shows the drawing as a result on the device screen + canvas.Show(); return true; -CATCH: - delete pCanvas; - - return false; } * @endcode * diff --git a/inc/FGrpBitmap.h b/inc/FGrpBitmap.h index 69b71eb..e1d3477 100644 --- a/inc/FGrpBitmap.h +++ b/inc/FGrpBitmap.h @@ -33,8 +33,11 @@ #include #include #include +#include #include +#include #include +#include #include #include #include @@ -200,6 +203,85 @@ public: */ result Construct(const Tizen::Base::ByteBuffer& buffer, const Dimension& dim, BitmapPixelFormat pixelFormat, BufferScaling bufferScaling); + /* + * Initializes this instance of %Bitmap by copying a rectangular area of the Frame. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect The rectangular area of the Frame to be copied into bitmap @n + * The width and height of the rectangle must be greater than @c 0. @n + * The area defined by @c rect is clipped to the edges of the Frame so that + * the rectangle does not fall outside the edges of the Frame. @n + * The rectangle must not fall outside the edges of the Frame entirely. @n + * If these conditions are not satisfied, an E_OUT_OF_RANGE exception is returned. + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * + */ + result Construct(const FloatRectangle& rect); + + /* + * Initializes this instance of %Bitmap with the specified dimensions and pixel format. + * + * @since 2.1 + * + * @return An error code + * @param[in] dim The dimensions of the bitmap @n + * The width and height must be greater than @c 0. + * @param[in] format The pixel format + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * + */ + result Construct(const FloatDimension& dim, BitmapPixelFormat format); + + /* + * Initializes this instance of %Bitmap by copying the specified rectangular area of the specified canvas. + * + * @since 2.1 + * + * @return An error code + * @param[in] canvas The canvas to copy @n + * The canvas must be constructed successfully before it is passed into this method. @n + * If not, an E_INVALID_ARG exception is returned. + * @param[in] rect The rectangular area of the canvas to be copied into a bitmap @n + * The width and height of the rectangle must be greater than @c 0. @n + * The rectangle defined by @c rect is clipped to the edges of the canvas so that + * the rectangle does not fall outside the edges of the canvas. @n + * The rectangle must not fall outside the edges of the canvas entirely. @n + * If these conditions are not satisfied, an E_OUT_OF_RANGE exception is returned. + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * + */ + result Construct(const Canvas& canvas, const FloatRectangle& rect); + + /* + * Initializes this instance of %Bitmap by copying a rectangular area of the specified bitmap. + * + * @since 2.1 + * + * @return An error code + * @param[in] bitmap The source bitmap @n + * The bitmap must be constructed successfully before it is passed into this method. @n + * If not, an E_INVALID_ARG exception is returned. + * @param[in] rect The rectangular area of the source bitmap to be copied into this bitmap @n + * The width and height of the rectangle must be greater than @c 0. @n + * The rectangle defined by @c rect is clipped to the edges of the source bitmap so that + * the rectangle does not fall outside the edges of the source bitmap. @n + * The rectangle must not fall outside the edges of the source bitmap entirely. @n + * If these conditions are not satisfied, an E_OUT_OF_RANGE exception is returned. + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * + */ + result Construct(const Bitmap& bitmap, const FloatRectangle& rect); + public: /** * Scales the bitmap to the specified width and height. @@ -215,6 +297,20 @@ public: */ result Scale(const Dimension& dim); + /* + * Scales the bitmap to the specified width and height. + * + * @since 2.1 + * + * @return An error code + * @param[in] dim The dimensions of the specified rectangular area @n + * The width and height must be greater than @c 0. + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + * + */ + result Scale(const FloatDimension& dim); + /** * Merges the specified area of the source bitmap into the calling bitmap at the given Point. * @@ -235,6 +331,26 @@ public: */ result Merge(const Point& destPoint, const Bitmap& srcBitmap, const Rectangle& srcRect); + /* + * Merges the specified area of the source bitmap into the calling bitmap at the given Point. + * + * @since 2.1 + * + * @return An error code + * @param[in] destPoint The X and Y coordinate of the top-left corner of the destination area in the calling bitmap instance + * @param[in] srcBitmap The source bitmap instance to copy from + * @param[in] srcRect The rectangular area to copy from the source bitmap @n + The width and height of the rectangle must be greater than or equal to @c 0. + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE Either of the following conditions has occurred: @n + * - The value of the argument is outside the valid range defined by the method. @n + * - The destX, destY, srcX, or srcY has a negative value. @n + * - The specified @c srcWidth or @c srcHeight is less than @c 0. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * + */ + result Merge(const FloatPoint& destPoint, const Bitmap& srcBitmap, const FloatRectangle& srcRect); + /** * Gets the height of the bitmap. * @@ -246,6 +362,28 @@ public: */ int GetHeight(void) const; + /* + * Gets the height of the bitmap. + * + * @since 2.1 + * + * @return The height of the bitmap, @n + * else @c -1 if the method fails + * + */ + float GetHeightF(void) const; + + /* + * Gets the actual height of the bitmap. + * + * @since 2.1 + * + * @return The actual height of the bitmap, @n + * else @c -1.0f if the method fails + * + */ + float GetActualHeight(void) const; + /** * Gets the width of the bitmap. * @@ -257,6 +395,28 @@ public: */ int GetWidth(void) const; + /* + * Gets the width of the bitmap. + * + * @since 2.1 + * + * @return The width of the bitmap, @n + * else @c -1 if the method fails + * + */ + float GetWidthF(void) const; + + /* + * Gets the actual width of the bitmap. + * + * @since 2.1 + * + * @return The actual width of the bitmap, @n + * else @c -1.0f if the method fails + * + */ + float GetActualWidth(void) const; + /** * Gets the number of bits per pixel of the bitmap. * diff --git a/inc/FGrpCanvas.h b/inc/FGrpCanvas.h index 1d60357..e454507 100644 --- a/inc/FGrpCanvas.h +++ b/inc/FGrpCanvas.h @@ -30,6 +30,7 @@ #include #include #include +#include #include #include #include @@ -101,6 +102,20 @@ public: */ result Construct(const Rectangle& rect); + /* + * Initializes this instance of %Canvas with the specified parameter. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect The location and size of the canvas control on the device screen @n + * The width and height of the rectangle must be greater than @c 0.0f. + * If this condition is not satisfied, the E_OUT_OF_RANGE exception is returned. + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + */ + result Construct(const FloatRectangle& rect); + /** * Initializes this instance of %Canvas with the buffer information. * @@ -143,6 +158,22 @@ public: */ result Clear(const Rectangle& rect); + /* + * Clears a rectangular region of the current instance of %Canvas with the background color. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect The location and size of the rectangular region @n + * The width and height of the rectangle must be greater than or equal to @c 0.0f. + * The rectangular region must not fall outside the edges of the + * current instance of %Canvas entirely.If these conditions are not + * satisfied, the E_OUT_OF_RANGE exception is returned. + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + */ + result Clear(const FloatRectangle& rect); + /** * Copies the specified rectangular region from the specified instance of %Canvas to the current instance of * %Canvas at the specified location. @@ -162,6 +193,25 @@ public: */ result Copy(const Point& destPoint, const Canvas& srcCanvas, const Rectangle& srcRect); + /* + * Copies the specified rectangular region from the specified instance of %Canvas to the current instance of + * %Canvas at the specified location. + * + * @since 2.1 + * + * @return An error code + * @param[in] destPoint The location to copy the rectangular region + * @param[in] srcCanvas The source %Canvas + * @param[in] srcRect The location and size of the rectangular region on the source %Canvas @n + * The rectangular region must not fall outside the edges of + * the current instance of %Canvas entirely. If this condition is + * not satisfied, the E_OUT_OF_RANGE exception is returned. + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + */ + result Copy(const FloatPoint& destPoint, const Canvas& srcCanvas, const FloatRectangle& srcRect); + /** * Copies the scaled image of the specified rectangular region from the specified instance of * %Canvas to the current instance of %Canvas. @@ -185,6 +235,29 @@ public: */ result Copy(const Rectangle& destRect, const Canvas& srcCanvas, const Rectangle& srcRect); + /* + * Copies the scaled image of the specified rectangular region from the specified instance of + * %Canvas to the current instance of %Canvas. + * + * @since 2.1 + * + * @return An error code + * @param[in] destRect The location and size of the destination image @n + * The value of @c destRect must not fall outside the edges of + * the current instance of %Canvas entirely. If this condition is + * not satisfied, the E_OUT_OF_RANGE exception is returned. + * @param[in] srcCanvas The source %Canvas + * @param[in] srcRect The location and size of the source image @n + * The value of @c srcRect must not fall outside the edges of + * the current instance of %Canvas entirely. If this condition is + * not satisfied, the E_OUT_OF_RANGE exception is returned. + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of this operation. + */ + result Copy(const FloatRectangle& destRect, const Canvas& srcCanvas, const FloatRectangle& srcRect); + /** * Gets the line style set for the current instance of %Canvas. * @@ -206,6 +279,17 @@ public: */ int GetLineWidth(void) const; + /* + * Gets the line width of the current instance of %Canvas. + * + * @since 2.1 + * + * @return The line width, @n + * else @c -1.0f if the method fails + * @remarks The default value is 1.0f. + */ + float GetLineWidthF(void) const; + /** * Sets the line style for the current instance of %Canvas. * @@ -231,6 +315,19 @@ public: */ result SetLineWidth(int width); + /* + * Sets the line width for the current instance of %Canvas. + * + * @since 2.1 + * + * @return An error code + * @param[in] width The new width for the %Canvas control @n + * The width for the %Canvas control must be greater than @c 0.0f. + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + */ + result SetLineWidth(float width); + /** * Gets the dash pattern of the current instance of %Canvas. * @@ -244,6 +341,19 @@ public: */ result GetDashPattern(Tizen::Base::Collection::IListT& pattern, int& offset) const; + /* + * Gets the dash pattern of the current instance of %Canvas. + * + * @since 2.1 + * + * @return An error code + * @param[out] pattern The list containing the information of dash pattern. + * @param[out] offset The offset into the dash pattern at which the stroke must start + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specific input parameter is invalid. + */ + result GetDashPattern(Tizen::Base::Collection::IListT& pattern, float& offset) const; + /** * Sets the dash pattern for the current instance of %Canvas. * @@ -257,6 +367,63 @@ public: */ result SetDashPattern(const Tizen::Base::Collection::IListT& pattern, int offset); + /* + * Sets the dash pattern for the current instance of %Canvas. + * + * @since 2.1 + * + * @return An error code + * @param[in] pattern The list containing the information of dash pattern. + * @param[in] offset The offset into the dash pattern at which the stroke must start + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specific input parameter is invalid. + */ + result SetDashPattern(const Tizen::Base::Collection::IListT& pattern, float offset); + + /** + * Sets the line cap style. + * + * @since 2.1 + * + * @return An error code + * @param[in] lineCapStyle The new line cap style + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The input parameter is invalid. + */ + result SetLineCapStyle(LineCapStyle lineCapStyle); + + /** + * Gets the line cap style for the current instance. + * + * @since 2.1 + * + * @return Current line cap style + * @remarks The default style is LINE_CAP_STYLE_ROUND. + */ + LineCapStyle GetLineCapStyle(void) const; + + /** + * Sets the line join style. + * + * @since 2.1 + * + * @return An error code + * @param[in] lineJoinStyle The new line join style. + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The input parameter is invalid. + */ + result SetLineJoinStyle(LineJoinStyle lineJoinStyle); + + /** + * Gets the line join style for the current instance. + * + * @since 2.1 + * + * @return Current line join style + * @remarks The default style is LINE_JOIN_STYLE_ROUND. + */ + LineJoinStyle GetLineJoinStyle(void) const; + /** * Gets the color information at the specified point. * @@ -272,6 +439,21 @@ public: */ result GetPixel(const Point& point, Color& color) const; + /* + * Gets the color information at the specified point. + * + * @since 2.1 + * + * @return An error code + * @param[in] point The location of the point relative to the upper-left corner of the current instance of %Canvas @n + * The point must not fall outside the edges of %Canvas. If this + * condition is not satisfied, the E_OUT_OF_RANGE exception is returned. + * @param[out] color An instance of Color + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + */ + result GetPixel(const FloatPoint& point, Color& color) const; + /** * Sets a point at the specified coordinate. * @@ -287,6 +469,21 @@ public: */ result SetPixel(const Point& point); + /* + * Sets a point at the specified coordinate. + * + * @since 2.0 + * + * @return An error code + * @param[in] point The location of the point relative to the upper-left corner of the current instance of %Canvas @n + * The point must not entirely fall outside the edges of %Canvas. + * If this condition is not satisfied, the E_OUT_OF_RANGE exception + * is returned. + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + */ + result SetPixel(const FloatPoint& point); + /** * Draws a line between the two specified points. * @@ -299,6 +496,18 @@ public: */ result DrawLine(const Point& point1, const Point& point2); + /* + * Draws a line between the two specified points. + * + * @since 2.1 + * + * @return An error code + * @param[in] point1 The starting point + * @param[in] point2 The end point + * @exception E_SUCCESS The method is successful. + */ + result DrawLine(const FloatPoint& point1, const FloatPoint& point2); + /** * Draws a rectangle. * @@ -315,6 +524,22 @@ public: */ result DrawRectangle(const Rectangle& rect); + /* + * Draws a rectangle. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect The rectangle to be drawn on the %Canvas control @n + * The width and height of the rectangle must be greater than or equal to @c 0.0f. + * The rectangle must not entirely fall outside the edges of + * the %Canvas control. If these conditions are not satisfied, + * the E_OUT_OF_RANGE exception is returned. + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + */ + result DrawRectangle(const FloatRectangle& rect); + /** * Fills a rectangular region of the current instance of %Canvas with the specified color. * @@ -332,6 +557,23 @@ public: */ result FillRectangle(const Color& color, const Rectangle& rect); + /* + * Fills a rectangular region of the current instance of %Canvas with the specified color. + * + * @since 2.1 + * + * @return An error code + * @param[in] color The fill color + * @param[in] rect The rectangular region on the %Canvas control @n + * The width and height of the rectangle must be greater than or equal to @c 0.0f. + * The rectangle must not entirely fall outside the edges of the + * %Canvas control. If these conditions are not satisfied, the + * E_OUT_OF_RANGE exception is returned. + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + */ + result FillRectangle(const Color& color, const FloatRectangle& rect); + /** * Draws a round-edged rectangle. * @@ -350,6 +592,24 @@ public: */ result DrawRoundRectangle(const Rectangle& rect, const Dimension& arcDim); + /* + * Draws a round-edged rectangle. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect The location and size of the rectangle @n + * The width and height of the rectangle must be greater than or equal to @c 0.0f. + * The rectangle must not entirely fall outside the edges of the + * %Canvas control. If these conditions are not satisfied, the + * E_OUT_OF_RANGE exception is returned. + * @param[in] arcDim The width and height of the round edge @n + * The width and height in the @c arcDim parameter must be greater than or equal to @c 0.0f. + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + */ + result DrawRoundRectangle(const FloatRectangle& rect, const FloatDimension& arcDim); + /** * Draws a filled rectangle. * @@ -369,6 +629,25 @@ public: */ result FillRoundRectangle(const Color& color, const Rectangle& rect, const Dimension& arcDim); + /* + * Draws a filled rectangle. + * + * @since 2.1 + * + * @return An error code + * @param[in] color The fill color + * @param[in] rect The location and size of the rectangle @n + * The width and height of the rectangle must be greater than or equal to @c 0.0f. + * The rectangle must not entirely fall outside the edges of the + * %Canvas control. If these conditions are not satisfied, the + * E_OUT_OF_RANGE exception is returned. + * @param[in] arcDim The width and height of the round edge @n + * The width and height mentioned in the @c arcDim parameter must be greater than or equal to @c 0.0f. + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + */ + result FillRoundRectangle(const Color& color, const FloatRectangle& rect, const FloatDimension& arcDim); + /** * Draws an ellipse. * @@ -385,6 +664,22 @@ public: */ result DrawEllipse(const Rectangle& rect); + /* + * Draws an ellipse. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect The location and size of the bounding rectangle @n + * The width and height of the rectangle must be greater than or equal to @c 0.0f. + * The rectangle must not entirely fall outside the edges of the + * %Canvas control. If these conditions are not satisfied, the + * E_OUT_OF_RANGE exception is returned. + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + */ + result DrawEllipse(const FloatRectangle& rect); + /** * Draws a filled ellipse with the specified color. * @@ -402,6 +697,23 @@ public: */ result FillEllipse(const Color& color, const Rectangle& rect); + /* + * Draws a filled ellipse with the specified color. + * + * @since 2.1 + * + * @return An error code + * @param[in] color The fill color + * @param[in] rect The location and size of the bounding rectangle @n + * The width and height of the rectangle must be greater than or equal to @c 0.0f. @n + * The rectangle must not entirely fall outside the edges of the + * %Canvas control. If these conditions are not satisfied, the + * E_OUT_OF_RANGE exception is returned. + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + */ + result FillEllipse(const Color& color, const FloatRectangle& rect); + /** * Draws a circular arc. * @@ -422,6 +734,26 @@ public: */ result DrawArc(const Rectangle& rect, int startAngle, int endAngle, ArcStyle arcStyle); + /* + * Draws a circular arc. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect The location and size of the bounding rectangle @n + * The width and height of the rectangle must be greater than or equal to @c 0.0f. + * The rectangle must not entirely fall outside the edges of the + * %Canvas control. If these conditions are not satisfied, the + * E_OUT_OF_RANGE exception is returned. + * @param[in] startAngle The starting angle + * @param[in] endAngle The ending angle + * @param[in] arcStyle The arc style + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + * @exception E_INVALID_ARG A specified input parameter is invalid. + */ + result DrawArc(const FloatRectangle& rect, float startAngle, float endAngle, ArcStyle arcStyle); + /** * Draws a triangle. * @@ -435,6 +767,19 @@ public: */ result DrawTriangle(const Point& point1, const Point& point2, const Point& point3); + /* + * Draws a triangle. + * + * @since 2.1 + * + * @return An error code + * @param[in] point1 The location of the first vertex + * @param[in] point2 The location of the second vertex + * @param[in] point3 The location of the third vertex + * @exception E_SUCCESS The method is successful. + */ + result DrawTriangle(const FloatPoint& point1, const FloatPoint& point2, const FloatPoint& point3); + /** * Draw a filled triangle with the specified color. * @@ -449,6 +794,20 @@ public: */ result FillTriangle(const Color& color, const Point& point1, const Point& point2, const Point& point3); + /* + * Draw a filled triangle with the specified color. + * + * @since 2.1 + * + * @return An error code + * @param[in] color The fill color + * @param[in] point1 The location of the first vertex + * @param[in] point2 The location of the second vertex + * @param[in] point3 The location of the third vertex + * @exception E_SUCCESS The method is successful. + */ + result FillTriangle(const Color& color, const FloatPoint& point1, const FloatPoint& point2, const FloatPoint& point3); + /** * Draws a poly-line. * @@ -532,6 +891,22 @@ public: */ result DrawText(const Point& point, const Tizen::Base::String& text); + /* + * Draws a text at the specified location. + * + * @since 2.1 + * + * @return An error code + * @param[in] point The location to draw the text + * @param[in] text The text to draw + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_OPERATION_FAILED The operation has failed. + * @remarks The foreground color (RGB value only) of the %Canvas control is used as the text color. + * @remarks The em square has a defined font size. As a result, if the font's glyph exceeds its em square, it will be scaled down when it is drawn. + */ + result DrawText(const FloatPoint& point, const Tizen::Base::String& text); + /** * Draws a text at the specified location and length. * @@ -551,6 +926,25 @@ public: */ result DrawText(const Point& point, const Tizen::Base::String& text, int length); + /* + * Draws a text at the specified location and length. + * + * @since 2.1 + * + * @return An error code + * @param[in] point The location to draw the text + * @param[in] text The text to draw + * @param[in] length The number of characters in the string @n + * It must be greater than or equal to @c 0. + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + * @exception E_OPERATION_FAILED The operation has failed. + * @remarks The foreground color (RGB value only) of the %Canvas control is used as the text color. + * @remarks The em square has a defined font size. As a result, if the font's glyph exceeds its em square, it will be scaled down when it is drawn. + */ + result DrawText(const FloatPoint& point, const Tizen::Base::String& text, int length); + /** * Draws a text with an outline rendering at the specified location. * @@ -569,6 +963,24 @@ public: */ result DrawText(const Point& point, const Tizen::Base::String& text, const Color& outlineColor); + /* + * Draws a text with an outline rendering at the specified location. + * + * @since 2.1 + * + * @return An error code + * @param[in] point The location to draw the text + * @param[in] text The text to draw @n + * @param[in] outlineColor The color that is set as outline color + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + * @exception E_OPERATION_FAILED The operation has failed. + * @remarks The foreground color (RGB value only) of the %Canvas control is used as the text color. + * @remarks The em square has a defined font size. As a result, if the font's glyph exceeds its em square, it will be scaled down when it is drawn. + */ + result DrawText(const FloatPoint& point, const Tizen::Base::String& text, const Color& outlineColor); + /** * Draws a text with an outline rendering at the specified location and length. * @@ -590,6 +1002,27 @@ public: */ result DrawText(const Point& point, const Tizen::Base::String& text, int length, const Color& outlineColor); + /* + * Draws a text with an outline rendering at the specified location and length. + * + * @since 2.1 + * + * @return An error code + * @param[in] point The location to draw the text + * @param[in] text The text to draw + * @param[in] length The number of characters in the string @n + * It must be greater than or equal to @c 0. + * @param[in] outlineColor The color that is set as outline color + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + * @exception E_OPERATION_FAILED The operation has failed. + * + * @remarks The foreground color (RGB value only) of the %Canvas control is used as the text color. + * @remarks The em square has a defined font size. As a result, if the font's glyph exceeds its em square, it will be scaled down when it is drawn. + */ + result DrawText(const FloatPoint& point, const Tizen::Base::String& text, int length, const Color& outlineColor); + /** * Draws an enriched text at the specified area. * @@ -606,6 +1039,22 @@ public: */ result DrawText(const Point& point, const EnrichedText& enrichedText); + /* + * Draws an enriched text at the specified area. + * + * @since 2.1 + * + * @return An error code + * @param[in] point The location to draw the text + * @param[in] enrichedText The TextElement to draw + * @exception E_SUCCESS The method is successful. + * @exception E_DEVICE_UNAVAILABLE A specified device is invalid. + * + * @remarks The foreground color (RGB value only) of the %Canvas control is used as the text color. + * @remarks The em square has a defined font size. As a result, if the font's glyph exceeds its em square, it will be scaled down when it is drawn. + */ + result DrawText(const FloatPoint& point, const EnrichedText& enrichedText); + /** * Draws a bitmap image at the specified location. * @@ -625,6 +1074,25 @@ public: */ result DrawBitmap(const Point& point, const Bitmap& bitmap); + /* + * Draws a bitmap image at the specified location. + * + * @since 2.1 + * + * @return An error code + * @param[in] point The location of the upper-left corner of the bitmap + * @param[in] bitmap The bitmap to draw @n + * It must be constructed before being passed into this + * method. BitmapPixelFormat::BITMAP_PIXEL_FORMAT_R8G8B8A8 is + * not applicable for this method. The bitmap must not + * entirely fall outside the edges of the %Canvas control. If + * this condition is not satisfied, the E_OUT_OF_RANGE exception + * is returned. + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + */ + result DrawBitmap(const FloatPoint& point, const Bitmap& bitmap); + /** * Draws a bitmap image at the specified location. * @@ -645,6 +1113,26 @@ public: */ result DrawBitmap(const Rectangle& rect, const Bitmap& bitmap); + /* + * Draws a bitmap image at the specified location. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect The location and size of the scaled bitmap @n + * The rectangle must not entirely fall outside the edges of the + * %Canvas control. If this condition is not satisfied, the + * E_OUT_OF_RANGE exception is returned. + * @param[in] bitmap The bitmap to draw @n + * It must be constructed well before being passed into this + * method. + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + * @remarks BitmapPixelFormat::BITMAP_PIXEL_FORMAT_R8G8B8A8 is not applicable for this method. + */ + result DrawBitmap(const FloatRectangle& rect, const Bitmap& bitmap); + /** * Draws a color data corresponding to a rectangle of pixels from the specified bitmap onto %Canvas. * @@ -677,6 +1165,38 @@ public: */ result DrawBitmap(const Rectangle& destRect, const Bitmap& srcBitmap, const Rectangle& srcRect); + /* + * Draws a color data corresponding to a rectangle of pixels from the specified bitmap onto %Canvas. + * + * @since 2.1 + * + * @return An error code + * @param[in] destRect The destination rectangle of %Canvas @n + * The width and height of the rectangle must be greater than or equal to @c 0.0f. + * The rectangle defined by @c destRect will be clipped at the edges + * of the %Canvas control to prevent the rectangle from falling + * outside the edges of the %Canvas control. The destination + * rectangle of a %Canvas control must not fall outside the edges + * of the %Canvas control entirely. If these conditions are not + * satisfied, the E_OUT_OF_RANGE exception is returned. + * @param[in] srcBitmap The bitmap to draw + * @param[in] srcRect The source rectangle of a bitmap @n + * The width and height of the rectangle must be greater than or equal to @c 0.0f. + * The rectangle defined by @c srcRect will be clipped at the edges + * of the bitmap to prevent the rectangle from falling outside the + * edges of the bitmap. The source rectangle of a bitmap must not + * fall outside the edges of the bitmap entirely. If these + * conditions are not satisfied, the E_OUT_OF_RANGE exception is + * thrown. + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + * @remarks If the source and destination rectangles are not of the same size, + * the source bitmap is stretched to match the destination rectangle. @n + * BitmapPixelFormat::BITMAP_PIXEL_FORMAT_R8G8B8A8 is not applicable for this method. + */ + result DrawBitmap(const FloatRectangle& destRect, const Bitmap& srcBitmap, const FloatRectangle& srcRect); + /** * Draws a flipped bitmap image at the specified location. * @@ -693,6 +1213,22 @@ public: */ result DrawBitmap(const Point& point, const Bitmap& bitmap, FlipDirection dir); + /* + * Draws a flipped bitmap image at the specified location. + * + * @since 2.1 + * + * @return An error code + * @param[in] point The location to draw the bitmap + * @param[in] bitmap The bitmap to draw @n + * It must be constructed before being passed to this method. + * @param[in] dir The flip direction + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @remarks BitmapPixelFormat::BITMAP_PIXEL_FORMAT_R8G8B8A8 is not applicable for this method. + */ + result DrawBitmap(const FloatPoint& point, const Bitmap& bitmap, FlipDirection dir); + /** * Draws a rotated bitmap image at the specified location. * @@ -715,6 +1251,28 @@ public: */ result DrawBitmap(const Point& point, const Bitmap& bitmap, const Point& pivot, int degree); + /* + * Draws a rotated bitmap image at the specified location. + * + * @since 2.1 + * + * @return An error code + * @param[in] point A location to draw a bitmap image @n + * This location is relatively defined from the origin (upper-left + * corner) of the %Canvas control. + * @param[in] bitmap The bitmap to draw @n + * It must be constructed before being passed to this method. + * @param[in] pivot The center of rotation of a bitmap image @n + * This center is relatively defined from the origin (upper-left + * corner) of the bitmap. + * @param[in] degree The amount of rotation in degrees + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @remarks BitmapPixelFormat::BITMAP_PIXEL_FORMAT_R8G8B8A8 is not applicable for this method. + * @image html graphics_rotatebitmap.PNG + */ + result DrawBitmap(const FloatPoint& point, const Bitmap& bitmap, const FloatPoint& pivot, float degree); + /** * Draws a nine-patched bitmap at the specified location. * @@ -739,6 +1297,30 @@ public: */ result DrawNinePatchedBitmap(const Rectangle& rect, const Bitmap& bitmap); + /* + * Draws a nine-patched bitmap at the specified location. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect The location and size of the nine-patched bitmap @n + * The rectangle must not entirely fall outside the edges of the + * %Canvas control. If this condition is not satisfied, the + * E_OUT_OF_RANGE exception is returned. + * @param[in] bitmap The bitmap to draw @n + * It must be constructed before being passed to this method. + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + * + * @remarks BitmapPixelFormat::BITMAP_PIXEL_FORMAT_R8G8B8A8 is not applicable for this method. @n + * The nine-patched bitmap must have a stretchable section by drawing one (or more) 1-pixel-wide black line(s) in the + * left and top part of the border. + * @image html graphics_ninepatchedbitmap.PNG + * + */ + result DrawNinePatchedBitmap(const FloatRectangle& rect, const Bitmap& bitmap); + /** * Shows the current instance of %Canvas on the device screen. * @@ -804,6 +1386,26 @@ public: */ Rectangle GetBounds(void) const; + /* + * Gets the location and size of the current %Canvas instance on the device screen. + * + * @since 2.1 + * + * @return The Rectangle instance containing the location and size of the current %Canvas instance + * @remarks If this %Canvas instance is a Window %Canvas, it returns FloatRectangle(0.0f, 0.0f, w, h). + */ + FloatRectangle GetBoundsF(void) const; + + /* + * Gets the actual location and size of the current %Canvas instance on the device screen. + * + * @since 2.1 + * + * @return The Rectangle instance containing the actual location and size of the current %Canvas instance + * @remarks If this %Canvas instance is a Window %Canvas, it returns FloatRectangle(0.0f, 0.0f, w, h). + */ + FloatRectangle GetActualBounds(void) const; + /** * Sets the clip rectangle for a %Canvas control. @n * When a clip rectangle is set, any drawing is restricted within the specified rectangular area. The @@ -823,6 +1425,25 @@ public: */ result SetClipBounds(const Rectangle& rect); + /* + * Sets the clip rectangle for a %Canvas control. @n + * When a clip rectangle is set, any drawing is restricted within the specified rectangular area. The + * rectangular area defined is clipped at the edges of the %Canvas control so as to prevent the clipped rectangle + * from falling outside the %Canvas control. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect The bounds of the clip rectangle @n + * The width and height of the rectangle must be greater than or equal to @c 0.0f. + * The clip rectangle for a %Canvas control must not entirely fall + * outside the edges of the %Canvas control. If these conditions are + * not satisfied, the E_OUT_OF_RANGE exception is returned. + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + */ + result SetClipBounds(const FloatRectangle& rect); + /** * Gets the bounds of the clip rectangle of a %Canvas control. * @@ -832,6 +1453,15 @@ public: */ Rectangle GetClipBounds(void) const; + /* + * Gets the bounds of the clip rectangle of a %Canvas control. + * + * @since 2.1 + * + * @return An instance of Rectangle indicating the bounds of the clip rectangle + */ + FloatRectangle GetClipBoundsF(void) const; + /** * Locks the %Canvas control for direct pixel access. @n * This sets up a %Canvas control for accessing the pixels directly. Between the calls to the @@ -929,6 +1559,29 @@ public: */ result SetPosition(int x, int y); + /** + * Sets the composite mode. + * + * @since 2.1 + * + * @return An error code + * @param[in] compositeMode The new composite mode + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The input parameter is invalid. + */ + result SetCompositeMode(CompositeMode compositeMode); + + /** + * Gets the composite mode for the current instance. + * + * @since 2.1 + * + * @return Current composite mode + * @remarks The default value is COMPOSITE_MODE_SRC_OVER. + */ + CompositeMode GetCompositeMode(void) const; + + private: // // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects. diff --git a/inc/FGrpCanvasCommon.h b/inc/FGrpCanvasCommon.h index 9b1746a..cec684f 100644 --- a/inc/FGrpCanvasCommon.h +++ b/inc/FGrpCanvasCommon.h @@ -74,6 +74,64 @@ enum FlipDirection FLIP_DIRECTION_MIN = 0 // This enum value is for internal use only. Using this enum value can cause behavioral, security-related, and consistency-related issues in the application. }; +/** + * @enum LineCapStyle + * + * Defines the line cap style. + * + * @since 2.1 + */ +enum LineCapStyle +{ + LINE_CAP_STYLE_ROUND, /**< A rounded end */ + LINE_CAP_STYLE_BUTT, /**< A flat end */ + LINE_CAP_STYLE_SQUARE /**< A square end */ +}; + +/** + * @enum LineJoin + * + * Defines the line join style. + * + * @since 2.1 + */ +enum LineJoinStyle +{ + LINE_JOIN_STYLE_ROUND, /**< A rounded corner */ + LINE_JOIN_STYLE_MITER, /**< A sharp corner */ + LINE_JOIN_STYLE_BEVEL /**< A beveled corner */ +}; + +/** +* @enum CompositeMode +* +* Defines the composite mode. +* +* @since 2.1 +*/ +enum CompositeMode +{ + COMPOSITE_MODE_CLEAR, /**< Clearing destination layer */ + COMPOSITE_MODE_SRC, /**< Replacing destination layer */ + COMPOSITE_MODE_DST, /**< Ignoring the source */ + COMPOSITE_MODE_SRC_OVER, /**< Drawing source layer on top of destination layer */ + COMPOSITE_MODE_DST_OVER, /**< Drawing destination on top of source */ + COMPOSITE_MODE_SRC_IN, /**< Drawing source where there was destination content */ + COMPOSITE_MODE_DST_IN, /**< Leaving destination only where there was source content */ + COMPOSITE_MODE_SRC_OUT, /**< Drawing source where there was no destination content */ + COMPOSITE_MODE_DST_OUT, /**< Leaving destination only where there was no source content */ + COMPOSITE_MODE_SRC_ATOP, /**< Drawing source on top of destination content and only there */ + COMPOSITE_MODE_DST_ATOP, /**< Leaving destination on top of source content and only there */ + COMPOSITE_MODE_DST_XOR, /**< Source and destination are shown where there is only one of them. */ + COMPOSITE_MODE_ADD, /**< Source and destination layers are accumulated */ + COMPOSITE_MODE_SATURATE, /**< Assuming source and destination are disjoint geometries, like over */ + COMPOSITE_MODE_MULTIPLY, /**< Source and destination layers are multiplied. This causes the result to be at least as dark as the darker inputs. */ + COMPOSITE_MODE_SCREEN, /**< Source and destination are complemented and multiplied. This causes the result to be at least as light as the lighter inputs. */ + COMPOSITE_MODE_OVERLAY, /**< This mode multiplies or screens, depending on the lightness of the destination color. */ + COMPOSITE_MODE_DARKEN, /**< This mode replaces the destination with the source if it is darker, otherwise keeps the source. */ + COMPOSITE_MODE_LIGHTEN /**< This mode replaces the destination with the source if it is lighter, otherwise keeps the source. */ +}; + } } // Tizen::Graphics #endif // _FGRP_CANVAS_COMMON_H_ diff --git a/inc/FGrpCanvasTexture.h b/inc/FGrpCanvasTexture.h index af87599..3fc2f2c 100644 --- a/inc/FGrpCanvasTexture.h +++ b/inc/FGrpCanvasTexture.h @@ -6,7 +6,7 @@ // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://floralicense.org/license/ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an AS IS BASIS, @@ -79,7 +79,7 @@ public: * @exception E_INVALID_ARG Input parameter is invalid. * @exception E_UNSUPPORTED_OPERATION The target device does not support full features for %CanvasTexture. * @exception E_INVALID_STATE Getting egl information failed. It is necessary to bind egl context by using eglMakeCurrent funtion. - * @remarks There is a high probability for an occurrence of an out-of-memory exception. If possible, check whether the exception is E_OUT_OF_MEMORY or not. For more information on how to handle the out-of-memory exception, refer here. + * @remarks There is a high probability for an occurrence of an out-of-memory exception. If possible, check whether the exception is E_OUT_OF_MEMORY or not. For more information on how to handle the out-of-memory exception, refer here. */ result Construct(int textureId, int width, int height); diff --git a/inc/FGrpCoordinateSystem.h b/inc/FGrpCoordinateSystem.h index 1fdc0d6..f95ba3e 100644 --- a/inc/FGrpCoordinateSystem.h +++ b/inc/FGrpCoordinateSystem.h @@ -27,6 +27,9 @@ #include +#include +#include +#include namespace Tizen { namespace Graphics @@ -73,6 +76,16 @@ public: static int ConvertToLogicalX(int physicalX); /** + * Converts the physical value along x-axis to the logical one. + * + * @since 2.1 + * + * @return The converted logical value for the physical one + * @param[in] physicalX An input physical value to be converted + */ + static float ConvertToLogicalX(float physicalX); + + /** * Converts the physical value along y-axis to the logical one. * * @since 2.0 @@ -83,6 +96,16 @@ public: static int ConvertToLogicalY(int physicalY); /** + * Converts the physical value along y-axis to the logical one. + * + * @since 2.1 + * + * @return The converted logical value for the physical one + * @param[in] physicalY An input physical value to be converted + */ + static float ConvertToLogicalY(float physicalY); + + /** * Converts the logical value along x-axis to the physical one. * * @since 2.0 @@ -93,6 +116,16 @@ public: static int ConvertToPhysicalX(int logicalX); /** + * Converts the logical value along x-axis to the physical one. + * + * @since 2.1 + * + * @return The converted physical X value + * @param[in] logicalX An input logical value to be converted + */ + static float ConvertToPhysicalX(float logicalX); + + /** * Converts the logical value along y-axis to the physical one. * * @since 2.0 @@ -102,6 +135,46 @@ public: */ static int ConvertToPhysicalY(int logicalY); + /** + * Converts the logical value along y-axis to the physical one. + * + * @since 2.1 + * + * @return The converted physical Y value + * @param[in] logicalY An input logical value to be converted + */ + static float ConvertToPhysicalY(float logicalY); + + /** + * Returns the FloatPoint which will be pixel-exact in the device coordinate system, for best appearance on the display. + * + * @since 2.1 + * + * @return Device aligned point + * @param[in] point input point to be aligned. + */ + static FloatPoint AlignToDevice(const FloatPoint& point); + + /** + * Returns the FloatDimension which will be pixel-exact in the device coordinate system, for best appearance on the display. + * + * @since 2.1 + * + * @return Device aligned dimension + * @param[in] dimension input dimension to be aligned. + */ + static FloatDimension AlignToDevice(const FloatDimension& dimension); + + /** + * Returns the FloatRectangle which will be pixel-exact in the device coordinate system, for best appearance on the display. + * + * @since 2.1 + * + * @return Device aligned rectangle + * @param[in] rectangle input rectangle to be aligned. + */ + static FloatRectangle AlignToDevice(const FloatRectangle& rectangle); + private: // // This default constructor is intentionally declared as private because this class cannot be constructed. @@ -118,3 +191,4 @@ private: }} // Tizen::Graphics #endif // _FGRP_COORDINATE_SYSTEM_H_ + diff --git a/inc/FGrpEnrichedText.h b/inc/FGrpEnrichedText.h old mode 100644 new mode 100755 index cf9f8dd..c1d1f72 --- a/inc/FGrpEnrichedText.h +++ b/inc/FGrpEnrichedText.h @@ -1,4 +1,5 @@ // +// // Open Service Platform // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. // @@ -6,7 +7,7 @@ // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://floralicense.org/license/ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an AS IS BASIS, @@ -105,13 +106,12 @@ using namespace Tizen::App; using namespace Tizen::Graphics; bool -MyClass::EnrichedTextSample(void) +MyClass::EnrichedTextSample(Canvas& canvas) { result r = E_SUCCESS; EnrichedText* pEnrichedText = null; TextElement* pTextElement1 = null; TextElement* pTextElement2 = null; - Bitmap* pBitmap = null; // Creates an EnrichedText instance and sets the attributes pEnrichedText = new EnrichedText(); @@ -148,23 +148,12 @@ MyClass::EnrichedTextSample(void) } pTextElement2->SetTextColor(Color::GetColor(COLOR_ID_VIOLET)); - // Creates a bitmap and scales the size - pBitmap = App::GetInstance()->GetAppResource()->GetBitmapN(L"example.bmp"); - pBitmap->Scale(Dimension(40, 40)); - // Adds the TextElement and the bitmap to the EnrichedText pEnrichedText->Add(*pTextElement1); pEnrichedText->Add(*pTextElement2); - pEnrichedText->Add(*pBitmap); // Draws { - Canvas canvas; - r = canvas.Construct(); - if (IsFailed(r)) - { - goto CATCH; - } canvas.SetBackgroundColor(Color::GetColor(COLOR_ID_BLACK)); canvas.Clear(); canvas.FillRectangle(Color::GetColor(COLOR_ID_WHITE), Rectangle(50, 50, 380, 380)); @@ -237,6 +226,20 @@ public: result Construct(const Tizen::Graphics::Dimension& dim); /** + * Initializes this instance of %EnrichedText with the specified parameter. + * + * @since 2.1 + * + * @return An error code + * @param[in] dim The FloatDimension to set for %EnrichedText @n + * The width and height must be greater than @c 0.0f. + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_MEMORY The memory is insufficient. + * @exception E_INVALID_ARG The specified input parameter is invalid. + */ + result Construct(const Tizen::Graphics::FloatDimension& dim); + + /** * Inserts the TextElement instance in the %EnrichedText instance at the specified index. * * @since 2.0 @@ -362,6 +365,19 @@ public: /** * Sets the text size. * + * @since 2.1 + * + * @return An error code + * @param[in] size The new size of the %EnrichedText @n + * The width and height must be greater than @c 0.0f. + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The value of the parameter is outside the valid range defined by the method. + */ + result SetSize(const Tizen::Graphics::FloatDimension& size); + + /** + * Sets the text size. + * * @since 2.0 * * @return An error code @@ -375,6 +391,21 @@ public: result SetSize(int width, int height); /** + * Sets the text size. + * + * @since 2.1 + * + * @return An error code + * @param[in] width The new width of %EnrichedText @n + * It must be greater than @c 0.0f. + * @param[in] height The new height of %EnrichedText @n + * It must be greater than @c 0.0f. + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + */ + result SetSize(float width, float height); + + /** * Gets the size. * * @since 2.0 @@ -385,6 +416,16 @@ public: Tizen::Graphics::Dimension GetSize(void) const; /** + * Gets the size. + * + * @since 2.1 + * + * @return An instance of %FloatDimension containing the width and the height of the %EnrichedText instance + * + */ + Tizen::Graphics::FloatDimension GetSizeF(void) const; + + /** * Gets the size of the %EnrichedText instance. * * @since 2.0 @@ -395,6 +436,16 @@ public: void GetSize(int& width, int& height) const; /** + * Gets the size of the %EnrichedText instance. + * + * @since 2.1 + * + * @param[out] width The width of the control + * @param[out] height The height of the control + */ + void GetSize(float& width, float& height) const; + + /** * Gets the width of the %EnrichedText instance. * * @since 2.0 @@ -404,6 +455,15 @@ public: int GetWidth(void) const; /** + * Gets the width of the %EnrichedText instance. + * + * @since 2.1 + * + * @return The width + */ + float GetWidthF(void) const; + + /** * Gets the height of the %EnrichedText instance. * * @since 2.0 @@ -412,6 +472,14 @@ public: */ int GetHeight(void) const; + /** + * Gets the height of the %EnrichedText instance. + * + * @since 2.1 + * + * @return The height + */ + float GetHeightF(void) const; /** * Sets the vertical alignment. @@ -512,6 +580,19 @@ public: result SetLineSpace(int lineSpace); /** + * Sets the line spacing. + * + * @since 2.1 + * + * @return An error code + * @param[in] lineSpace The space between lines + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified input parameter is invalid. + * + */ + result SetLineSpace(float lineSpace); + + /** * Gets the line spacing. * * @since 2.0 @@ -521,6 +602,15 @@ public: int GetLineSpace(void) const; /** + * Gets the line spacing. + * + * @since 2.1 + * + * @return space The space between lines + */ + float GetLineSpaceF(void) const; + + /** * Refreshes the texts and bitmap according to the %EnrichedText instance's attributes. @n * If some attributes are changed (such as changes using @ref SetSize), you can get the exact * information of the text position or the number of lines after this method is called. @@ -548,7 +638,16 @@ public: int GetTotalLineHeight(void) const; /** - * Gets the displayed line count of the text in the %EnrichedText instance. @n + * Gets the height of the text in the %EnrichedText instance. + * + * @since 2.1 + * + * @return The line height + */ + float GetTotalLineHeightF(void) const; + + /** + * Gets the displayed line count of the text in the %EnrichedText instance. * * @since 2.0 * @@ -613,6 +712,20 @@ public: int GetLineHeight(int lineIndex) const; /** + * Gets the line height of the specified line. + * + * @since 2.1 + * + * @return The line height, @n + * else @c -1.0f if the method fails + * @param[in] lineIndex The line index + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified input parameter is invalid. + * @remarks The specific error code can be accessed using the GetLastResult() method. + */ + float GetLineHeightF(int lineIndex) const; + + /** * Gets the text length of the %EnrichedText object. * * @since 2.0 @@ -641,6 +754,25 @@ public: result GetTextExtent(int startTextIndex, int textLength, int& width, int& height, int& actualLength) const; /** + * Gets the extent of the %EnrichedText instance on the assumption that all TextElements are + * expanded to one line. + * + * @since 2.1 + * + * @return An error code + * @param[in] startTextIndex The starting text index of the %EnrichedText + * @param[in] textLength The length of the specified text @n + * It must be greater than or equal to @c 0. + * @param[out] width The width of the specified text + * @param[out] height The height of the specified text + * @param[out] actualLength The actual text length measured + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + * @exception E_INVALID_ARG A specified input parameter is invalid. + */ + result GetTextExtent(int startTextIndex, int textLength, float& width, float& height, int& actualLength) const; + + /** * Gets the extent of the %EnrichedText instance on the assumption that all %TextElements are * expanded to one line. * @@ -659,6 +791,23 @@ public: /** * Gets the extent of the %EnrichedText instance on the assumption that all %TextElements are + * expanded to one line. + * + * @since 2.1 + * @return An error code + * @param[in] startTextIndex The starting text index of the EnrichedText + * @param[in] textLength The length of the specified text @n + * It must be greater than or equal to @c 0. + * @param[out] size The extent of the specified text + * @param[out] actualLength The actual text length measured + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + * @exception E_INVALID_ARG A specified input parameter is invalid. + */ + result GetTextExtent(int startTextIndex, int textLength, Tizen::Graphics::FloatDimension& size, int& actualLength) const; + + /** + * Gets the extent of the %EnrichedText instance on the assumption that all %TextElements are * not expanded to one line. This function is useful for finding the extent of EnrichedText spanning multiple lines. * * @since 2.0 @@ -668,6 +817,16 @@ public: Tizen::Graphics::Dimension GetTextExtent(void) const; /** + * Gets the extent of the %EnrichedText instance on the assumption that all %TextElements are + * not expanded to one line. This function is useful for finding the extent of EnrichedText spanning multiple lines. + * + * @since 2.1 + * @return An instance of %FloatDimension containing the extent of the %EnrichedText instance, @n + * else (-1.0f, -1.0f) if the method fails + */ + Tizen::Graphics::FloatDimension GetTextExtentF(void) const; + + /** * Adds the specified bitmap image to the %EnrichedText instance. * * @since 2.0 @@ -715,6 +874,21 @@ public: */ result GetLinkInfoFromPosition(const Point& point, Tizen::Base::Utility::LinkInfo& linkInfo) const; + /* + * Gets the information about the link at the specified position. + * + * @since 2.1 + * + * @return An error code + * @param[in] point A point that is within the %EnrichedText object + * @param[out] linkInfo The LinkInfo object that represents the link at the specified position + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_OBJ_NOT_FOUND The required instance is not found. + * @remarks The method throws @c E_OBJ_NOT_FOUND if there is no linked text at the specified position. + * @see Tizen::Base::Utility::LinkInfo + */ + result GetLinkInfoFromPosition(const FloatPoint& point, Tizen::Base::Utility::LinkInfo& linkInfo) const; /** * Gets the information about the link at the specified position. @@ -734,6 +908,23 @@ public: result GetLinkInfoFromPosition(int x, int y, Tizen::Base::Utility::LinkInfo& linkInfo) const; /** + * Gets the information about the link at the specified position. + * + * @since 2.1 + * + * @return An error code + * @param[in] x The x-coordinate of a point that is within the %EnrichedText object + * @param[in] y The y-coordinate of a point that is within the %EnrichedText object + * @param[out] linkInfo The LinkInfo object that represents the link at the specified position + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_OBJ_NOT_FOUND The required instance is not found. + * @remarks The method throws @c E_OBJ_NOT_FOUND if there is no linked text at the specified position. + * @see Tizen::Base::Utility::LinkInfo + */ + result GetLinkInfoFromPosition(float x, float y, Tizen::Base::Utility::LinkInfo& linkInfo) const; + + /** * Gets the vertical alignment among text and bitmap element. * * @since 2.0 @@ -764,19 +955,16 @@ private: // This value is for internal use only. Using this value can cause behavioral, security-related, // and consistency-related issues in the application. // + /** + * @since 2.0 + */ class _EnrichedTextImpl * __pImpl; - // - // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects. - // EnrichedText(const EnrichedText& font); - - // - // The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects. - // EnrichedText& operator =(const EnrichedText& rhs); + }; // EnrichedText -}} // Tizen::Graphics +} } // Tizen::Graphics -#endif // _FGRP_ENRICHED_TEXT_H_ +#endif // _FGRP_ENRICHED_TEXT_H_ diff --git a/inc/FGrpFloatDimension.h b/inc/FGrpFloatDimension.h index 4d5b46a..1b3a162 100644 --- a/inc/FGrpFloatDimension.h +++ b/inc/FGrpFloatDimension.h @@ -6,7 +6,7 @@ // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://floralicense.org/license/ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an AS IS BASIS, diff --git a/inc/FGrpFloatMatrix4.h b/inc/FGrpFloatMatrix4.h index ceaec8c..0c96507 100644 --- a/inc/FGrpFloatMatrix4.h +++ b/inc/FGrpFloatMatrix4.h @@ -6,7 +6,7 @@ // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://floralicense.org/license/ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an AS IS BASIS, diff --git a/inc/FGrpFloatPoint.h b/inc/FGrpFloatPoint.h index d7de906..851f543 100644 --- a/inc/FGrpFloatPoint.h +++ b/inc/FGrpFloatPoint.h @@ -6,7 +6,7 @@ // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://floralicense.org/license/ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an AS IS BASIS, diff --git a/inc/FGrpFloatPoint3.h b/inc/FGrpFloatPoint3.h index fe91906..e578416 100644 --- a/inc/FGrpFloatPoint3.h +++ b/inc/FGrpFloatPoint3.h @@ -6,7 +6,7 @@ // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://floralicense.org/license/ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an AS IS BASIS, diff --git a/inc/FGrpFloatRectangle.h b/inc/FGrpFloatRectangle.h index 63b6cfb..5271950 100644 --- a/inc/FGrpFloatRectangle.h +++ b/inc/FGrpFloatRectangle.h @@ -6,7 +6,7 @@ // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://floralicense.org/license/ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an AS IS BASIS, @@ -345,3 +345,4 @@ private: }} // Tizen::Graphics #endif // _FGRP_FLOAT_RECTANGLE_H_ + diff --git a/inc/FGrpFloatVector4.h b/inc/FGrpFloatVector4.h index d9633bc..878d70b 100644 --- a/inc/FGrpFloatVector4.h +++ b/inc/FGrpFloatVector4.h @@ -6,7 +6,7 @@ // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://floralicense.org/license/ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an AS IS BASIS, diff --git a/inc/FGrpFont.h b/inc/FGrpFont.h index 1320d26..d0ac1db 100644 --- a/inc/FGrpFont.h +++ b/inc/FGrpFont.h @@ -28,6 +28,7 @@ #include #include #include +#include #include namespace Tizen { namespace Graphics @@ -97,7 +98,7 @@ public: * @endif * @return An error code * @param[in] fontNameOrPath The local file path of a font-resource file or app font name or system font name @n - * The app font name is retrieved using GetFaceName(Osp::Base::String& filepath). + * The app font name is retrieved using GetFaceName(Tizen::Base::String& filepath). * The system font name is retrieved using GetSystemFontListN(). * @param[in] style The font style @n * Multiple styles can be combined using the bitwise OR operator. @@ -143,6 +144,63 @@ public: result Construct(const Tizen::Base::ByteBuffer& fontData, int style, int size); /** + * Initializes this instance of %Font with the specified size and style. @n + * If the size and style are not specified, the default system font is set. + * + * @since 2.1 + * + * @return An error code + * @param[in] style The font style @n + * For more information, see Tizen::Graphics::FontStyle. + * @param[in] size The font size in pixels @n + * The size must be greater than @c 0.0f. + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + */ + result Construct(int style, float size); + + /** + * Initializes this instance of %Font with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] fontNameOrPath The local file path of a font-resource file or system font name @n + * The system font name is retrieved using GetSystemFontListN(). + * @param[in] style The font style @n + * Multiple styles can be combined using the bitwise OR operator. + * @param[in] size The font size in pixels @n + * The size must be greater than @c 0.0f. + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_FILE_NOT_FOUND The specified font cannot be found or accessed. + * @exception E_UNSUPPORTED_FORMAT The specified font format is not supported. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * @remarks Only TrueType font is supported. + * The value of fontNameOrPath is considered system font name if it matches one of the retrieved values using GetSystemFontListN(). + * If not, it is considered local file path of a font-resource file. + */ + result Construct(const Tizen::Base::String& fontNameOrPath, int style, float size); + + /** + * Initializes this instance of %Font with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] fontData The font data + * @param[in] style The font style @n + * Multiple styles can be combined using the bitwise OR operator. + * @param[in] size The font size in pixels @n + * The size must be greater than @c 0.0f. + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_UNSUPPORTED_FORMAT The specified font format is not supported. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + */ + result Construct(const Tizen::Base::ByteBuffer& fontData, int style, float size); + + /** * Gets the maximum height of the current instance of %Font. * * @since 2.0 @@ -153,6 +211,16 @@ public: int GetMaxHeight(void) const; /** + * Gets the maximum height of the current instance of %Font. + * + * @since 2.1 + * + * @return The maximum height of the current instance of %Font, @n + * else @c -1.0f if the method fails + */ + float GetMaxHeightF(void) const; + + /** * Gets the maximum width of the current instance of %Font. * * @since 2.0 @@ -163,6 +231,16 @@ public: int GetMaxWidth(void) const; /** + * Gets the maximum width of the current instance of %Font. + * + * @since 2.1 + * + * @return The maximum width of the current instance of %Font, @n + * else @c -1.0f if the method fails + */ + float GetMaxWidthF(void) const; + + /** * Gets the ascender of the current instance of %Font. * * @since 2.0 @@ -173,6 +251,16 @@ public: int GetAscender(void) const; /** + * Gets the ascender of the current instance of %Font. + * + * @since 2.1 + * + * @return The ascender of the current instance of %Font, @n + * else @c -1.0f if the method fails + */ + float GetAscenderF(void) const; + + /** * Gets the descender of the current instance of %Font. * * @since 2.0 @@ -183,6 +271,16 @@ public: int GetDescender(void) const; /** + * Gets the descender of the current instance of %Font. + * + * @since 2.1 + * + * @return The descender of the current instance of %Font, @n + * else @c -1.0f if the method fails + */ + float GetDescenderF(void) const; + + /** * Gets the left bear of a character. * * @since 2.0 @@ -196,6 +294,19 @@ public: result GetLeftBear(wchar_t character, int& leftBear) const; /** + * Gets the left bear of a character. + * + * @since 2.1 + * + * @return An error code + * @param[in] character A character for getting left bear + * @param[out] leftBear The left bear of the specified @c character + * @exception E_SUCCESS The method is successful. + * @exception E_DATA_NOT_FOUND The requested data does not exist. + */ + result GetLeftBear(wchar_t character, float& leftBear) const; + + /** * Gets the right bear of a character. * * @since 2.0 @@ -209,6 +320,19 @@ public: result GetRightBear(wchar_t character, int& rightBear) const; /** + * Gets the right bear of a character. + * + * @since 2.1 + * + * @return An error code + * @param[in] character A character for getting the right bear + * @param[out] rightBear The right bear of the specified @c character + * @exception E_SUCCESS The method is successful. + * @exception E_DATA_NOT_FOUND The requested data does not exist. + */ + result GetRightBear(wchar_t character, float& rightBear) const; + + /** * Gets the width and height of the font used in the specified text. @n * This method retrieves the font dimension of the text. * @@ -246,6 +370,22 @@ public: */ /** + * Gets the width and height of the font used in the specified text. @n + * This method retrieves the font dimension of the text. + * + * @since 2.1 + * + * @return An error code + * @param[in] text The string + * @param[in] length The length of @c text @n + * The length must be greater than or equal to @c 0.0f. + * @param[out] dim The width and height of the font of the @c text + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The value of @c length is greater than the actual length of @c text. + */ + result GetTextExtent(const Tizen::Base::String& text, int length, FloatDimension& dim) const; + + /** * Checks whether the font style of the current instance is bold. * * @since 2.0 @@ -306,6 +446,16 @@ public: int GetSize(void) const; /** + * Gets the font size of the current instance of %Font. + * + * @since 2.1 + * + * @return The font size, @n + * else @c -1.0f if the method fails + */ + float GetSizeF(void) const; + + /** * Sets the strikeout style for the current instance of %Font. * * @since 2.0 @@ -355,6 +505,15 @@ public: */ void SetCharSpace(int space); + /* + * Sets the character space. + * + * @since 2.1 + * + * @param[in] space A character space + */ + void SetCharSpace(float space); + /** * Gets the character space. * @@ -365,6 +524,16 @@ public: */ int GetCharSpace(void) const; + /* + * Gets the character space. + * + * @since 2.1 + * + * @return The character space of this font instance, @n + * else @c -1.0f if the method fails + */ + float GetCharSpaceF(void) const; + /** * Gets the face name. * @@ -378,20 +547,21 @@ private: friend class _FontImpl; // - // This method is for internal use only. Using this method can cause behavioral, security-related, - // and consistency-related issues in the application. + // This variable is for internal use only. + // Using this variable can cause behavioral, security-related, and consistency-related issues in the application. + // + // @since 2.0 // - /** - * @since 2.0 - */ class _FontImpl* __pImpl; - /* - * This is the copy constructor for the Font class. - * - * @remarks Do not use this constructor. - */ + // + // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects. + // Font(const Font& rhs); + + // + // The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects. + // Font& operator =(const Font& rhs); }; // Font diff --git a/inc/FGrpGlPlayer.h b/inc/FGrpGlPlayer.h index 345d3ac..2526b33 100644 --- a/inc/FGrpGlPlayer.h +++ b/inc/FGrpGlPlayer.h @@ -10,7 +10,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an AS IS BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // diff --git a/inc/FGrpIGlRenderer.h b/inc/FGrpIGlRenderer.h index 8748f7e..96d6353 100644 --- a/inc/FGrpIGlRenderer.h +++ b/inc/FGrpIGlRenderer.h @@ -10,7 +10,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an AS IS BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // diff --git a/inc/FGrpIVideoTextureUpdateListener.h b/inc/FGrpIVideoTextureUpdateListener.h index fe55f0c..85e4049 100644 --- a/inc/FGrpIVideoTextureUpdateListener.h +++ b/inc/FGrpIVideoTextureUpdateListener.h @@ -6,7 +6,7 @@ // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://floralicense.org/license/ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an AS IS BASIS, @@ -92,4 +92,4 @@ protected: }}} // Tizen::Graphics -#endif //_FGRP_IVIDEO_TEXTURE_UPDATE_LISTENER_H_ \ No newline at end of file +#endif //_FGRP_IVIDEO_TEXTURE_UPDATE_LISTENER_H_ diff --git a/inc/FGrpTextElement.h b/inc/FGrpTextElement.h index f2dfa28..2006978 100644 --- a/inc/FGrpTextElement.h +++ b/inc/FGrpTextElement.h @@ -1,4 +1,5 @@ // +// // Open Service Platform // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. // @@ -6,7 +7,7 @@ // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://floralicense.org/license/ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an AS IS BASIS, @@ -34,281 +35,281 @@ namespace Tizen { namespace Graphics { /** - * @class TextElement - * @brief This class provides methods for the text elements. - * - * @since 2.0 - * - * @final This class is not intended for extension. - * - * The %TextElement class encapsulates the characteristics of a text, such as the constant string and font style. - * A text element draws the text on to a canvas. - * - * For more information on the attributes of %TextElement, see EnrichedText. - * - */ +* @class TextElement +* @brief This class provides methods for the text elements. +* +* @since 2.0 +* +* @final This class is not intended for extension. +* +* The %TextElement class encapsulates the characteristics of a text, such as the constant string and font style. +* A text element draws the text on to a canvas. +* +* For more information on the attributes of %TextElement, see EnrichedText. +* +*/ class _OSP_EXPORT_ TextElement : public Tizen::Base::Object { public: /** - * This is the default constructor for this class. - * - * @since 2.0 - * - * @remarks After creating an instance of this class, one of the - * Construct() methods must be called explicitly to initialize this instance. - */ + * This is the default constructor for this class. + * + * @since 2.0 + * + * @remarks After creating an instance of this class, one of the + * Construct() methods must be called explicitly to initialize this instance. + */ TextElement(void); /** - * This is the destructor for this class. - * - * @since 2.0 - */ + * This is the destructor for this class. + * + * @since 2.0 + */ virtual ~TextElement(void); /** - * Initializes the current instance of %TextElement with the specified text. @n - * If the text is not specified, the default system font is set. - * - * @since 2.0 - * - * @return An error code - * @param[in] text The text string - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_MEMORY The memory is insufficient. - * @exception E_INVALID_ARG The specified input parameter is invalid. - */ + * Initializes the current instance of %TextElement with the specified text. @n + * If the text is not specified, the default system font is set. + * + * @since 2.0 + * + * @return An error code + * @param[in] text The text string + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_MEMORY The memory is insufficient. + * @exception E_INVALID_ARG The specified input parameter is invalid. + */ result Construct(const Tizen::Base::String& text); /** - * Initializes the current instance of %TextElement with the specified text. @n - * The canvas is used for initializing the font's color attributes, such as the foreground color and the background color. - * - * @since 2.0 - * - * @return An error code - * @param[in] text The text string - * @param[in] canvas The canvas to initialize the text element @n - * It sets the foreground and background colors of the text element. - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_MEMORY The memory is insufficient. - * @exception E_INVALID_ARG A specified input parameter is invalid. - */ + * Initializes the current instance of %TextElement with the specified text. @n + * The canvas is used for initializing the font's color attributes, such as the foreground color and the background color. + * + * @since 2.0 + * + * @return An error code + * @param[in] text The text string + * @param[in] canvas The canvas to initialize the text element @n + * It sets the foreground and background colors of the text element. + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_MEMORY The memory is insufficient. + * @exception E_INVALID_ARG A specified input parameter is invalid. + */ result Construct(const Tizen::Base::String& text, const Tizen::Graphics::Canvas& canvas); /** - * Initializes the current instance of %TextElement. - * - * @since 2.0 - * - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_MEMORY The memory is insufficient. - * @exception E_SYSTEM An unknown operating system error has occurred. - * @remarks To set the text, use the SetText() method. - * @see SetText() - */ + * Initializes the current instance of %TextElement. + * + * @since 2.0 + * + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_MEMORY The memory is insufficient. + * @exception E_SYSTEM An unknown operating system error has occurred. + * @remarks To set the text, use the SetText() method. + * @see SetText() + */ result Construct(void); /** - * Initializes the current instance of %TextElement to represent a linked text with the specified link information. @n - * If the link information is not specified, the default system font is set. - * - * @since 2.0 - * - * @return An error code - * @param[in] text The linked text string - * @param[in] linkType The link type - * @param[in] link The string that contains the actual link - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_MEMORY The memory is insufficient. - * @exception E_INVALID_ARG A specified input parameter is invalid. - * @exception E_SYSTEM An unknown operating system error has occurred. - * @remarks If the specified @c text is an empty string or - * @c linkType is LINK_TYPE_NONE, the method returns E_INVALID_ARG. - * @see Tizen::Base::Utility::LinkInfo - */ + * Initializes the current instance of %TextElement to represent a linked text with the specified link information. @n + * If the link information is not specified, the default system font is set. + * + * @since 2.0 + * + * @return An error code + * @param[in] text The linked text string + * @param[in] linkType The link type + * @param[in] link The string that contains the actual link + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_MEMORY The memory is insufficient. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_SYSTEM An unknown operating system error has occurred. + * @remarks If the specified @c text is an empty string or + * @c linkType is LINK_TYPE_NONE, the method returns E_INVALID_ARG. + * @see Tizen::Base::Utility::LinkInfo + */ result Construct(const Tizen::Base::String& text, Tizen::Base::Utility::LinkType linkType, const Tizen::Base::String& link); /** - * Initializes the current instance of %TextElement with the specified text and autolink mask. @n - * If the text and autolink mask are not specified, the default system font is set. - * - * @since 2.0 - * - * @return An error code - * @param[in] text The text string - * @param[in] autoLink The autolink mask @n - * Multiple link types can be combined using the bitwise OR operator (Tizen::Base::Utility::LinkType). @n - * For more information, see AutoLink Detection. - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG A specified input parameter is invalid. - * @exception E_OUT_OF_MEMORY The memory is insufficient. - * @exception E_SYSTEM An unknown operating system error has occurred. - * @remarks If @c text contains more than one detectable link, the first link is converted - * to a linked text and the rest of the links are ignored. - * @see Tizen::Base::Utility::LinkType - */ + * Initializes the current instance of %TextElement with the specified text and autolink mask. @n + * If the text and autolink mask are not specified, the default system font is set. + * + * @since 2.0 + * + * @return An error code + * @param[in] text The text string + * @param[in] autoLink The autolink mask @n + * Multiple link types can be combined using the bitwise OR operator (Tizen::Base::Utility::LinkType). @n + * For more information, see AutoLink Detection. + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_OUT_OF_MEMORY The memory is insufficient. + * @exception E_SYSTEM An unknown operating system error has occurred. + * @remarks If @c text contains more than one detectable link, the first link is converted + * to a linked text and the rest of the links are ignored. + * @see Tizen::Base::Utility::LinkType + */ result Construct(const Tizen::Base::String& text, unsigned long autoLink); /** - * Initializes the current instance of %TextElement to represent a linked text with the specified link information. @n - * If the link information is not specified, the default system font is set. - * - * @since 2.0. - * - * @return An error code - * @param[in] text The linked text string - * @param[in] linkType The link type - * @param[in] link The string that contains the actual link - * @param[in] canvas The canvas to initialize the text element @n - * It sets the foreground and background colors of the text element. - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_MEMORY The memory is insufficient. - * @exception E_INVALID_ARG A specified input parameter is invalid. - * @exception E_SYSTEM An unknown operating system error has occurred. - * @remarks If the specified @c text is an empty string or - * @c linkType is LINK_TYPE_NONE, the method returns E_INVALID_ARG. - * @see Tizen::Base::Utility::LinkType - */ + * Initializes the current instance of %TextElement to represent a linked text with the specified link information. @n + * If the link information is not specified, the default system font is set. + * + * @since 2.0. + * + * @return An error code + * @param[in] text The linked text string + * @param[in] linkType The link type + * @param[in] link The string that contains the actual link + * @param[in] canvas The canvas to initialize the text element @n + * It sets the foreground and background colors of the text element. + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_MEMORY The memory is insufficient. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_SYSTEM An unknown operating system error has occurred. + * @remarks If the specified @c text is an empty string or + * @c linkType is LINK_TYPE_NONE, the method returns E_INVALID_ARG. + * @see Tizen::Base::Utility::LinkType + */ result Construct(const Tizen::Base::String& text, Tizen::Base::Utility::LinkType linkType, const Tizen::Base::String& link, const Tizen::Graphics::Canvas& canvas); /** - * Initializes the current instance of %TextElement with the specified text, autolink mask, and graphics canvas. @n - * If the parameters are not specified, the default system font is set. - * - * @since 2.0 - * - * @return An error code - * @param[in] text The text string - * @param[in] autoLink The autolink mask @n - * Multiple link types can be combined using the bitwise OR operator (Tizen::Base::Utility::LinkType). @n - * For more information, see AutoLink Detection. - * @param[in] canvas The canvas to initialize the text element @n - * It sets the foreground and background colors of the text element. - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG A specified input parameter is invalid. - * @exception E_OUT_OF_MEMORY The memory is insufficient. - * @exception E_SYSTEM An unknown operating system error has occurred. - * @remarks If @c text contains more than one detectable link, the first link is converted - * to a linked text and rest of the links are ignored. - * @see Tizen::Base::Utility::LinkType - */ + * Initializes the current instance of %TextElement with the specified text, autolink mask, and graphics canvas. @n + * If the parameters are not specified, the default system font is set. + * + * @since 2.0 + * + * @return An error code + * @param[in] text The text string + * @param[in] autoLink The autolink mask @n + * Multiple link types can be combined using the bitwise OR operator (Tizen::Base::Utility::LinkType). @n + * For more information, see AutoLink Detection. + * @param[in] canvas The canvas to initialize the text element @n + * It sets the foreground and background colors of the text element. + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_OUT_OF_MEMORY The memory is insufficient. + * @exception E_SYSTEM An unknown operating system error has occurred. + * @remarks If @c text contains more than one detectable link, the first link is converted + * to a linked text and rest of the links are ignored. + * @see Tizen::Base::Utility::LinkType + */ result Construct(const Tizen::Base::String& text, unsigned long autoLink, const Tizen::Graphics::Canvas& canvas); /** - * Gets the string that contains the actual link. - * - * @since 2.0 - * - * @return The string that contains the actual link - * @remarks If the text element contains no linked text, the method returns an empty string. - */ + * Gets the string that contains the actual link. + * + * @since 2.0 + * + * @return The string that contains the actual link + * @remarks If the text element contains no linked text, the method returns an empty string. + */ Tizen::Base::String GetLink(void) const; /** - * Gets the type of the link of the text element. - * - * @since 2.0 - * - * @return The string that contains the actual link - * @remarks If the text element contains no linked text, the method returns LINK_TYPE_NONE. @n - * The link type of the first auto-detected link is returned. - */ + * Gets the type of the link of the text element. + * + * @since 2.0 + * + * @return The string that contains the actual link + * @remarks If the text element contains no linked text, the method returns LINK_TYPE_NONE. @n + * The link type of the first auto-detected link is returned. + */ Tizen::Base::Utility::LinkType GetLinkType(void) const; /** - * Sets the text of %TextElement with the specified string. - * - * @since 2.0 - * - * @return An error code - * @param[in] text The string to set - * @exception E_SUCCESS The method is successful. - */ + * Sets the text of %TextElement with the specified string. + * + * @since 2.0 + * + * @return An error code + * @param[in] text The string to set + * @exception E_SUCCESS The method is successful. + */ result SetText(const Tizen::Base::String& text); /** - * Sets the font of %TextElement. - * - * @since 2.0 - * - * @return An error code - * @param[in] font The font to set - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The specified input parameter is invalid. - */ + * Sets the font of %TextElement. + * + * @since 2.0 + * + * @return An error code + * @param[in] font The font to set + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified input parameter is invalid. + */ result SetFont(const Tizen::Graphics::Font& font); /** - * Sets the text color of %TextElement. - * - * @since 2.0 - * - * @return An error code - * @param[in] color The color to set - * @exception E_SUCCESS The method is successful. - */ + * Sets the text color of %TextElement. + * + * @since 2.0 + * + * @return An error code + * @param[in] color The color to set + * @exception E_SUCCESS The method is successful. + */ result SetTextColor(const Tizen::Graphics::Color& color); /** - * Sets the background color of %TextElement. - * - * @since 2.0 - * - * @return An error code - * @param[in] color The color to set - * @exception E_SUCCESS The method is successful. + * Sets the background color of %TextElement. + * + * @since 2.0 + * + * @return An error code + * @param[in] color The color to set + * @exception E_SUCCESS The method is successful. */ result SetBackgroundColor(const Tizen::Graphics::Color& color); /** - * Sets the outline color of %TextElement. - * - * @since 2.0 - * - * @return An error code - * @param[in] color The color to set - * @exception E_SUCCESS The method is successful. - */ + * Sets the outline color of %TextElement. + * + * @since 2.0 + * + * @return An error code + * @param[in] color The color to set + * @exception E_SUCCESS The method is successful. + */ result SetOutlineColor(const Tizen::Graphics::Color& color); /** - * Gets the text of %TextElement. - * - * @since 2.0 - * - * @return A string containing the text - */ + * Gets the text of %TextElement. + * + * @since 2.0 + * + * @return A string containing the text + */ Tizen::Base::String GetText(void) const; /** - * Gets the text color of %TextElement. - * - * @since 2.0 - * - * @return The foreground color - */ + * Gets the text color of %TextElement. + * + * @since 2.0 + * + * @return The foreground color + */ Tizen::Graphics::Color GetTextColor(void) const; /** - * Gets the background color of %TextElement. - * - * @since 2.0 - * - * @return The background color - */ + * Gets the background color of %TextElement. + * + * @since 2.0 + * + * @return The background color + */ Tizen::Graphics::Color GetBackgroundColor(void) const; /** - * Gets the outline color of %TextElement. - * - * @since 2.0 - * - * @return The outline color - */ + * Gets the outline color of %TextElement. + * + * @since 2.0 + * + * @return The outline color + */ Tizen::Graphics::Color GetOutlineColor(void) const; private: @@ -318,20 +319,19 @@ private: // This value is for internal use only. Using this value can cause behavioral, security-related, // and consistency-related issues in the application. // + /** + * @since 2.0 + */ class _TextElementImpl * __pImpl; - // // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects. - // TextElement(const TextElement& font); - // // The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects. - // TextElement& operator =(const TextElement& rhs); }; // TextElement -}} // Tizen::Graphics +} } // Tizen::Graphics #endif // _FGRP_TEXT_ELEMENT_H_ diff --git a/inc/FGrpVideoTexture.h b/inc/FGrpVideoTexture.h index 5d7f867..ccdb704 100644 --- a/inc/FGrpVideoTexture.h +++ b/inc/FGrpVideoTexture.h @@ -78,7 +78,7 @@ public: * @exception E_INVALID_ARG A specified input parameter is invalid. * @exception E_UNSUPPORTED_OPERATION The target device does not support full features for %VideoTexture. * @exception E_INVALID_STATE Getting egl information failed. It is necessary to bind egl context by using eglMakeCurrent funtion. - * @remarks There is a high probability for an occurrence of an out-of-memory exception. If possible, check whether the exception is E_OUT_OF_MEMORY or not. For more information on how to handle the out-of-memory exception, refer here. + * @remarks There is a high probability for an occurrence of an out-of-memory exception. If possible, check whether the exception is E_OUT_OF_MEMORY or not. For more information on how to handle the out-of-memory exception, refer here. */ result Construct(int textureId, int width, int height); diff --git a/inc/FUi.h b/inc/FUi.h old mode 100644 new mode 100755 index 5667f90..6d07fc3 --- a/inc/FUi.h +++ b/inc/FUi.h @@ -28,9 +28,7 @@ // Includes #include #include -#include #include -#include #include #include #include @@ -59,6 +57,7 @@ #include #include #include +#include #include #include #include @@ -72,6 +71,8 @@ #include #include #include +#include +#include #include #include #include @@ -91,7 +92,9 @@ #include #include #include +#include #include +#include #include #include #include @@ -108,7 +111,6 @@ #include #include #include -#include #include #include #include diff --git a/inc/FUiAccessibilityContainer.h b/inc/FUiAccessibilityContainer.h old mode 100644 new mode 100755 index 6c013af..11c5852 --- a/inc/FUiAccessibilityContainer.h +++ b/inc/FUiAccessibilityContainer.h @@ -84,119 +84,210 @@ private: * @endcode * - * @final This class is not intended for extension. - * This class represents a container for accessibility element. + * @code + +// Sample code for AccessibilitySample.cpp +#include "FApp.h" +#include "FMedia.h" +#include "AccessibilitySample.h" + +using namespace Tizen::App; +using namespace Tizen::Base; +using namespace Tizen::Graphics; +using namespace Tizen::Media; +using namespace Tizen::Ui; +using namespace Tizen::Ui::Controls; + +AccessibilitySample::AccessibilitySample(void) + : __pTizenBitmap(null) +{ +} + +AccessibilitySample::~AccessibilitySample(void) +{ + delete __pTizenBitmap; + __pTizenBitmap = null; +} + +result +AccessibilitySample::Initialize(void) +{ + Image image; + result r = Form::Construct(FORM_STYLE_NORMAL| FORM_STYLE_INDICATOR| FORM_STYLE_HEADER| FORM_STYLE_FOOTER); + r = image.Construct(); + String filepath = App::GetInstance()->GetAppResourcePath() + L"screen-density-xhigh/tizen.png"; + + __pTizenBitmap = image.DecodeN(filepath, BITMAP_PIXEL_FORMAT_ARGB8888); + return r; +} + +result +AccessibilitySample::OnInitializing(void) +{ + result r = E_SUCCESS; + + Header * pHeader = GetHeader(); + if (pHeader != null) + { + pHeader->SetStyle(HEADER_STYLE_TITLE); + pHeader->SetTitleText(L"Acessibility Sample"); + } + + //Draw Image + Canvas* pCanvas = GetCanvasN(); + Rectangle rt = pCanvas->GetBounds(); + int width = rt.width; + int height = rt.width * __pTizenBitmap->GetHeight() / __pTizenBitmap->GetWidth(); + r = pCanvas->DrawBitmap(Rectangle(rt.x, (rt.y + ( (rt.height - height) / 2)), width, height), *__pTizenBitmap); + + //Make accessibility element for drawn image. + AccessibilityElement* pAccessibilityElement = new AccessibilityElement(); + r = pAccessibilityElement->Construct(GetBounds(), L"Tizen Image"); + pAccessibilityElement->SetLabel(L"Tizen Image"); + pAccessibilityElement->SetTrait(L"Image"); + pAccessibilityElement->SetHint(L"This image rotates automatically."); + GetAccessibilityContainer()->AddElement(*pAccessibilityElement); + pAccessibilityElement->SetBounds(Rectangle(rt.x, (rt.y + ( (rt.height - height) / 2)), width, height)); + + Footer* pFooter = GetFooter(); + if (pFooter != null) + { + pFooter->SetStyle(FOOTER_STYLE_TAB); + + FooterItem footerItem1; + footerItem1.Construct(ID_FOOTER_ITEM1); + footerItem1.SetText(L"Item1"); + pFooter->AddItem(footerItem1); + + FooterItem footerItem2; + footerItem2.Construct(ID_FOOTER_ITEM2); + footerItem2.SetText(L"Item2"); + pFooter->AddItem(footerItem2); + + //Set information to system accessibility element. + AccessibilityContainer* pContainer = pFooter->GetAccessibilityContainer(); + AccessibilityElement* pElement = pContainer->GetElement(L"Tab2Text"); + pElement->SetHint(L"Test accessibility"); + } + delete pCanvas; + Invalidate(true); + return r; +} + * @endcode + * */ + class _OSP_EXPORT_ AccessibilityContainer : public Tizen::Base::Object { public: /** - * Gets the owner of the accessibility container - * - * @since 2.0 - * @return The control which owns this %AccessibilityContainer - * @see Control::GetAccessibilityContainer() - */ + * Gets the owner of the accessibility container + * + * @since 2.0 + * @return The control which owns this %AccessibilityContainer + * @see Control::GetAccessibilityContainer() + */ const Control* GetOwner(void) const; /** - * Gets the owner of the accessibility container - * - * @since 2.0 - * @return The control which owns this %AccessibilityContainer - * @see Control::GetAccessibilityContainer() - */ + * Gets the owner of the accessibility container + * + * @since 2.0 + * @return The control which owns this %AccessibilityContainer + * @see Control::GetAccessibilityContainer() + */ Control* GetOwner(void); /** - * Adds the IAccessibilityListener instance to the %AccessibilityContainer. @n - * The added listener gets notified when the accessibility status is changed. - * - * @since 2.0 - * @return An error code - * @param[in] listener The event listener to add - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_ALREADY_EXIST The instance of IAccessibilityListener is already registered. - * @see RemoveAccessibilityListener() - */ + * Adds the IAccessibilityListener instance to the %AccessibilityContainer. @n + * The added listener gets notified when the accessibility status is changed. + * + * @since 2.0 + * @return An error code + * @param[in] listener The event listener to add + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_ALREADY_EXIST The instance of IAccessibilityListener is already registered. + * @see RemoveAccessibilityListener() + */ result AddAccessibilityListener(IAccessibilityListener& listener); /** - * Removes the IAccessibilityListener listener instance. @n - * The removed listener is not notified even when the accessibility status is changed. - * - * - * @since 2.0 - * @return An error code - * @param[in] listener The listener to remove - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_NOT_FOUND The instance of listener is not found. - * @see AddAccessibilityListener() - */ + * Removes the IAccessibilityListener listener instance. @n + * The removed listener is not notified even when the accessibility status is changed. + * + * + * @since 2.0 + * @return An error code + * @param[in] listener The listener to remove + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_NOT_FOUND The instance of listener is not found. + * @see AddAccessibilityListener() + */ result RemoveAccessibilityListener(IAccessibilityListener& listener); /** - * Adds the accessibility element to the %AccessibilityContainer. - * - * @since 2.0 - * @return An error code - * @param[in] element The instance of AccessibilityElement - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_ALREADY_EXIST The instance of AccessibilityElement is already registered. - * @see RemoveElement(), RemoveAllElements() - * - */ + * Adds the accessibility element to the %AccessibilityContainer. + * + * @since 2.0 + * @return An error code + * @param[in] element The instance of AccessibilityElement + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_ALREADY_EXIST The instance of AccessibilityElement is already registered. + * @see RemoveElement() + * @see RemoveAllElements() + * + */ result AddElement(AccessibilityElement& element); /** - * Removes the accessibility element in the %AccessibilityContainer. - * - * @since 2.0 - * - * @return An error code - * - * @param[in] element The instance of AccessibilityElement - * - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_NOT_FOUND The instance of AccessibilityElement is already registered. - * @see AddElement(), InsertElement() - * - */ + * Removes the accessibility element in the %AccessibilityContainer. + * + * @since 2.0 + * + * @return An error code + * + * @param[in] element The instance of AccessibilityElement + * + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_NOT_FOUND The instance of AccessibilityElement is already registered. + * @see AddElement() + * + */ result RemoveElement(AccessibilityElement& element); /** - * Removes all of the accessibility elements in the %AccessibilityContainer. - * - * @since 2.0 - * - * @see AddElement, InsertElement - * - */ + * Removes all of the accessibility elements in the %AccessibilityContainer. + * + * @since 2.0 + * + * @see AddElement() + * + */ void RemoveAllElements(void); /** - * Gets the instance of accessibility element which is the child of the %AccessibilityContainer by the name. - * - * @since 2.0 - * - * @return The instance of child element, if there exists an element which has the given name @n - * else @c null - * - * @param[in] name The name of AccessibilityElement - * - */ + * Gets the instance of accessibility element which is the child of the %AccessibilityContainer by the name. + * + * @since 2.0 + * + * @return The instance of child element, if there exists an element which has the given name @n + * else @c null + * + * @param[in] name The name of AccessibilityElement + * + */ AccessibilityElement* GetElement(const Tizen::Base::String& name) const; /** - * Gets the list of accessibility elements that are the child of the %AccessibilityContainer. - * - * @since 2.0 - * - * @return The list of child element, if there exists some elements in the container. @n - * else @c null. - * - */ + * Gets the list of accessibility elements that are the child of the %AccessibilityContainer. + * + * @since 2.0 + * + * @return The list of child element, if there exists some elements in the container. @n + * else @c null. + * + */ Tizen::Base::Collection::IList* GetElementsN(void) const; private: diff --git a/inc/FUiAccessibilityElement.h b/inc/FUiAccessibilityElement.h index 824b66a..e5fce5a 100644 --- a/inc/FUiAccessibilityElement.h +++ b/inc/FUiAccessibilityElement.h @@ -32,12 +32,13 @@ namespace Tizen { namespace Base { - class String; + class String; }} //Tizen::Base namespace Tizen { namespace Graphics { - class Rectangle; + class Rectangle; + class FloatRectangle; }} //Tizen::Graphics namespace Tizen { namespace Ui @@ -45,131 +46,160 @@ namespace Tizen { namespace Ui class _AccessibilityElementImpl; /** - * @class AccessibilityElement - * @brief This class represents an accessibility element. - * @since 2.0 - * - * @final This class is not intended for extension. - * This class represents an accessibility element. - */ +* @class AccessibilityElement +* @brief This class represents an accessibility element. +* @since 2.0 +* +* @final This class is not intended for extension. +* This class represents an accessibility element. +*/ class _OSP_EXPORT_ AccessibilityElement : public Tizen::Base::Object { public: /** - * The object is not fully constructed after this constructor is called. For full construction, the Construct() method must be called right after calling this constructor. - * - * @since 2.0 - */ + * The object is not fully constructed after this constructor is called. For full construction, the Construct() method must be called right after calling this constructor. + * + * @since 2.0 + */ AccessibilityElement(void); /** - * This destructor overrides Tizen::Base::Object::~Object(). - * - * @since 2.0 - */ + * This destructor overrides Tizen::Base::Object::~Object(). + * + * @since 2.0 + */ virtual ~AccessibilityElement(void); /** - * Initializes the instance of %AccessibilityElement with the specified parameters. - * - * @since 2.0 - * - * @return An error code - * @param[in] bounds The bounds of the accessibility element - * @param[in] name The name of the accessibility element - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG Either the length of name parameter is @c 0, or the bounds are smaller than @c 0. - */ + * Initializes the instance of %AccessibilityElement with the specified parameters. + * + * @since 2.0 + * + * @return An error code + * @param[in] bounds The bounds of the accessibility element + * @param[in] name The name of the accessibility element + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG Either the length of name parameter is @c 0, or the bounds are smaller than @c 0. + */ result Construct(const Tizen::Graphics::Rectangle& bounds, const Tizen::Base::String& name); /** - * Gets the name of the element. - * - * @since 2.0 - * @return The name of the element - */ + * Initializes the instance of %AccessibilityElement with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] bounds The bounds of the accessibility element + * @param[in] name The name of the accessibility element + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG Either the length of name parameter is @c 0, or the bounds are smaller than @c 0. + */ + result Construct(const Tizen::Graphics::FloatRectangle& bounds, const Tizen::Base::String& name); + + /** + * Gets the name of the element. + * + * @since 2.0 + * @return The name of the element + */ Tizen::Base::String GetName(void) const; /** - * Sets the bounds to the element. - * - * @since 2.0 - * @param[in] bounds The bounds of the accessibility element. - */ + * Sets the bounds to the element. + * + * @since 2.0 + * @param[in] bounds The bounds of the accessibility element. + */ void SetBounds(const Tizen::Graphics::Rectangle& bounds); /** - * Gets the bounds of the element. - * - * @since 2.0 - * @return The bounds of the element - */ + * Sets the bounds to the element. + * + * @since 2.1 + * @param[in] bounds The bounds of the accessibility element. + */ + void SetBounds(const Tizen::Graphics::FloatRectangle& bounds); + + /** + * Gets the bounds of the element. + * + * @since 2.0 + * @return The bounds of the element + */ Tizen::Graphics::Rectangle GetBounds(void) const; /** - * Sets the label to the element. - * - * @since 2.0 - * @param[in] label The label of the accessibility element. - */ + * Gets the bounds of the element. + * + * @since 2.1 + * @return The bounds of the element + */ + Tizen::Graphics::FloatRectangle GetBoundsF(void) const; + + /** + * Sets the label to the element. + * + * @since 2.0 + * @param[in] label The label of the accessibility element. + */ void SetLabel(const Tizen::Base::String& label); /** - * Gets the label of the element. - * - * @since 2.0 - * @return The label of the element - */ + * Gets the label of the element. + * + * @since 2.0 + * @return The label of the element + */ Tizen::Base::String GetLabel(void) const; /** - * Sets the hint to the element. - * - * @since 2.0 - * @param[in] hint The hint of the accessibility element. - */ + * Sets the hint to the element. + * + * @since 2.0 + * @param[in] hint The hint of the accessibility element. + */ void SetHint(const Tizen::Base::String& hint); /** - * Gets the hint of the element. - * - * @since 2.0 - * @return The hint of the element - */ + * Gets the hint of the element. + * + * @since 2.0 + * @return The hint of the element + */ Tizen::Base::String GetHint(void) const; /** - * Sets the trait to the element. - * - * @since 2.0 - * @param[in] trait The trait of the accessibility element. - */ + * Sets the trait to the element. + * + * @since 2.0 + * @param[in] trait The trait of the accessibility element. + */ void SetTrait(const Tizen::Base::String& trait); /** - * Gets the trait of the element. - * - * @since 2.0 - * @return The trait of the element - */ + * Gets the trait of the element. + * + * @since 2.0 + * @return The trait of the element + */ Tizen::Base::String GetTrait(void) const; /** - * Sets the value to the element. - * - * @since 2.0 - * @param[in] value The value of the accessibility element. - */ + * Sets the value to the element. + * + * @since 2.0 + * @param[in] value The value of the accessibility element. + */ void SetValue(const Tizen::Base::String& value); /** - * Gets the value of the element. - * - * @since 2.0 - * @return The value of the element - */ + * Gets the value of the element. + * + * @since 2.0 + * @return The value of the element + */ Tizen::Base::String GetValue(void) const; private: @@ -189,4 +219,4 @@ private: }; // AccessibilityElement }} // Tizen::Ui -#endif //_FUI_ACCESSIBILITY_ELEMENT_H_ +#endif //_FUI_ACCESSIBILITY_ELEMENT_H_ \ No newline at end of file diff --git a/inc/FUiAccessibilityTypes.h b/inc/FUiAccessibilityTypes.h index 5972e35..e6a13b8 100644 --- a/inc/FUiAccessibilityTypes.h +++ b/inc/FUiAccessibilityTypes.h @@ -37,11 +37,11 @@ namespace Tizen { namespace Ui */ enum AccessibilityScreenReaderStatus { - ACCESSIBILITY_SCREEN_READER_STATUS__NONE, /**< initial value.*/ - ACCESSIBILITY_SCREEN_READER_STATUS_ERROR, /**Animating UI Controls. diff --git a/inc/FUiAnimFrameAnimator.h b/inc/FUiAnimFrameAnimator.h index 683632d..5783d3d 100644 --- a/inc/FUiAnimFrameAnimator.h +++ b/inc/FUiAnimFrameAnimator.h @@ -113,14 +113,30 @@ public: * * @return An error code * @param[in] form The form object to set - * @exception E_SUCCESS The method is successful. + * @exception E_SUCCESS The method is successful. * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. - * @exception E_SYSTEM A system error has occurred. + * @exception E_SYSTEM A system error has occurred. * @remarks Control::Invalidate() need not be called to display the form. @n * To select the animation to be used during this method, use SetFormTransitionAnimation() before calling this method. */ result SetCurrentForm(const Tizen::Ui::Controls::Form& form); + /** + * Sets the specified form as the current form of the frame with an animation. + * + * @since 2.1 + * + * @return An error code + * @param[in] pForm A pointer to form object to set. + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c pForm is @c null. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * @exception E_SYSTEM A system error has occurred. + * @remarks Control::Invalidate() need not be called to display the form. @n + * To select the animation to be used during this method, use SetFormTransitionAnimation() before calling this method. + */ + result SetCurrentForm(Tizen::Ui::Controls::Form* pForm); + /** * Sets the type of the form transition animation. diff --git a/inc/FUiAnimIVisualElementEventListener.h b/inc/FUiAnimIVisualElementEventListener.h index a70d77c..712697a 100644 --- a/inc/FUiAnimIVisualElementEventListener.h +++ b/inc/FUiAnimIVisualElementEventListener.h @@ -63,7 +63,7 @@ public: /** * Called when the child is attached to VisualElement. @n * Overrides the %OnChildAttached() method to provide user-specific code just after the child is attached to the %VisualElement. - * This method is invoked when @c child is attached to @c source by @c AttachChild, @c InsertChild, @c ChangeZOder, or @c SetZOrderGroup. + * This method is invoked when @c child is attached to @c source by @c AttachChild, @c InsertChild, @c ChangeZOder. * * @since 2.0 * @@ -78,7 +78,7 @@ public: /** * Called when the child is detached to VisualElement. @n * Overrides the %OnChildDetached() method to provide user-specific code just after the child is detached from the %VisualElement. - * This method is invoked when @c child is detached from @c source by @c AttachChild, @c InsertChild, @c ChangeZOder, or @c SetZOrderGroup. + * This method is invoked when @c child is detached from @c source by @c DetachChild, @c InsertChild, @c ChangeZOder. * * @since 2.0 * @@ -92,7 +92,7 @@ public: /** * Called when VisualElement is attached to the parent. @n * Overrides the %OnAttached() method to provide user-specific code just after the %VisualElement is attached to the parent. - * This method is invoked when @c source is attached to @c parent by @c AttachChild, @c InsertChild, @c ChangeZOder, or @c SetZOrderGroup. + * This method is invoked when @c source is attached to @c parent by @c AttachChild, @c InsertChild, @c ChangeZOder. * * @since 2.0 * @@ -107,7 +107,7 @@ public: /** * Called when VisualElement is detached to the parent. @n * Overrides the %OnDetached() method to provide user-specific code just after the %VisualElement is detached from the parent. - * This method is invoked when @c source is detached from @c parent by @c AttachChild, @c InsertChild, @c ChangeZOder, @c SetZOrderGroup, or @c DetachChild. + * This method is invoked when @c source is detached from @c parent by @c DetachChild, @c InsertChild, @c ChangeZOder. * * @since 2.0 * diff --git a/inc/FUiAnimVisualElement.h b/inc/FUiAnimVisualElement.h index a25ad79..c684858 100644 --- a/inc/FUiAnimVisualElement.h +++ b/inc/FUiAnimVisualElement.h @@ -29,6 +29,7 @@ #include #include #include +#include #include #include #include @@ -59,6 +60,7 @@ class _VisualElementImpl; * It also provides infrastructure necessary for animations (AddAnimation(), RemoveAnimation() and so on). * A %VisualElement object instantiated by applications works as a model object and may have a cloned counter part for presentation on screen which has a separated life-cycle. * The presentation object is managed by system and applications must not change properties of it. + * Use the presentation instance only for getting the current state of the visual element in the tree. If you call the setter methods of the presentation instance, it can cause unexpected behavior. * Most animations of %VisualElement are applied on presentation objects. Properties set by applications are stored in model objects while properties of presentation objects * are changing during implicit or explicit animations. * @@ -182,6 +184,7 @@ public: * * @since 2.0 * + * @return An error code * @param[in] pProvider The content provider to customize information on content * @exception E_SUCCESS The method is successful. * @exception E_INVALID_OPERATION This instance does not allow to set a content provider. @n @@ -210,6 +213,7 @@ public: * * @since 2.0 * + * @return An error code * @param[in] pListener The %VisualElement event listener * @exception E_SUCCESS The method is successful. * @exception E_INVALID_OPERATION This instance does not allow to set an event listener. @n @@ -388,6 +392,20 @@ public: bool IsChildOf(const VisualElement& other) const; /** + * Checks whether this instance is a child or descendant of the specified one. + * + * @since 2.1 + * + * @return @c true if this instance is a child or descendant of the specified one, @n + * else @c false + * @param[in] pOther A Pointer to %VisualElement instance to test relationship + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c pOther is null. + * @remarks The specific error code can be accessed using the GetLastResult() method. + */ + bool IsChildOf(const VisualElement* pOther) const; + + /** * Attaches a child to this instance. @n * The %AttachChild() method attaches the specified @c child at the highest position in the Z order group of the @c child. * If you need to change Z-Order group, you can change it using the SetZOrderGroup() method. @@ -395,9 +413,9 @@ public: * @since 2.0 * * @return An error code - * @param[in] child The %VisualElement instance to attach to this instance - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The input parameter is incorrect. Either of the following conditions has occurred: @n + * @param[in] child The %VisualElement instance to attach to this instance + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The input parameter is incorrect. Either of the following conditions has occurred: @n * - The specified @c child is not instantiated successfully. @n * - The specified @c child is this instance. @n * - The specified @c child is already an ancestor of this instance. @@ -409,6 +427,28 @@ public: result AttachChild(const VisualElement& child); /** + * Attaches a child to this instance. @n + * The %AttachChild() method attaches the specified @c pChild at the highest position in the Z order group of the @c pChild. + * If you need to change Z-Order group, you can change it using the SetZOrderGroup() method. + * + * @since 2.1 + * + * @return An error code + * @param[in] pChild A pointer to %VisualElement instance to attach to this instance + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The input parameter is incorrect. Either of the following conditions has occurred: @n + * - The specified @c pChild is not instantiated successfully. @n + * - The specified @c pChild is this instance. @n + * - The specified @c pChild is already an ancestor of this instance.@n + * - The specified @c pChild is @c null. + * @see SetZOrderGroup() + * @see InsertChild() + * @see DetachChild() + * @see ChangeZOrder() + */ + result AttachChild(VisualElement* pChild); + + /** * Inserts a child to this instance. @n * If @c pReference is not @c null, the Z order group of @c child will be changed into that of @c pReference and @c child will be * placed right above or below the @c pReference instance according to the @c above parameter. @@ -438,13 +478,44 @@ public: result InsertChild(const VisualElement& child, const VisualElement* pReference, bool above); /** + * Inserts a child to this instance. @n + * If @c pReference is not @c null, the Z order group of @c pChild will be changed into that of @c pReference and @c child will be + * placed right above or below the @c pReference instance according to the @c above parameter. + * + * @since 2.1 + * + * @return An error code + * @param[in] pChild A pointer to %VisualElement instance to attach to this instance + * @param[in] pReference A pointer to the %VisualElement instance that is referenced + * @param[in] above Specifies the position of @c pChild relative to the @c pReference + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The input parameter is incorrect. Either of the following conditions has occurred: @n + * - The specified @c pChild is not instantiated successfully. @n + * - The specified @c pChild is this instance. @n + * - The specified @c pChild and @c pReference are same. @n + * - The specified @c pChild is already an ancestor of this instance. @n + * - The parent of @c pReference is not this instance if @c pReference is not @c null. @n + * - The specified @c pChild is @c null. + * @remarks If @c above is @c true, the @c pChild will be attached above @c pReference in Z order, + * else it will be attached below the @c pReference %VisualElement. @n + * If @c pReference is @c null, the @c pChild will be attached at the highest position in the @c pChild's Z order group, + * else the child will be attached at the lowest position in the @c pChild's Z order group. + * @see SetZOrderGroup() + * @see AttachChild() + * @see DetachChild() + * @see ChangeZOrder() + */ + result InsertChild(VisualElement* pChild, const VisualElement* pReference, bool above); + + /** * Detaches a child from this instance. * * @since 2.0 * + * @return An error code * @param[in] child The %VisualElement instance to detach from this instance - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_NOT_FOUND The specified @c child is not a child of this instance. + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_NOT_FOUND The specified @c child is not a child of this instance. * @remarks This method detaches @c child from this instance. If you need to deallocate %VisualElement, call Destroy() method, not C++ delete. * @see InsertChild() * @see AttachChild() @@ -452,10 +523,27 @@ public: result DetachChild(const VisualElement& child); /** + * Detaches a child from this instance. + * + * @since 2.1 + * + * @return An error code + * @param[in] pChild A pointer to %VisualElement instance to detach from this instance + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_NOT_FOUND The specified @c pChild is not a child of this instance. + * @exception E_INVALID_ARG The specified @c pChild is @c null. + * @remarks This method detaches @c pChild from this instance. If you need to deallocate %VisualElement, call Destroy() method, not C++ delete. + * @see InsertChild() + * @see AttachChild() + */ + result DetachChild(VisualElement* pChild); + + /** * Changes Z order of this instance. * * @since 2.0 * + * @return An error code * @param[in] pReference A pointer to the %VisualElement instance that is referenced * @param[in] above Specifies the position of this instance relative to the @c pReference * @exception E_SUCCESS The method is successful. @@ -612,9 +700,7 @@ public: * * @since 2.0 * - * @return The rectangle to update - * @remarks The specific error code can be accessed using the GetLastResult() method. - * @remarks If an exception occurs, this method returns FloatRectangle(0.0, 0.0, -1.0, -1.0). + * @return The rectangle to update * @see InvalidateRectangle() */ Tizen::Graphics::FloatRectangle GetUpdateRectangle(void) const; @@ -656,8 +742,8 @@ public: * else @c null if an exception occurs * @exception E_SUCCESS The method is successful. * @exception E_INVALID_STATE This instance is in an invalid state. - * @exception E_INVALID_OPERATION The contents of this instance is set by the SetSurface() method. - * @exception E_OUT_OF_RANGE The size of the %VisualElement instance is @c 0 or smaller. + * @exception E_INVALID_OPERATION The contents of this instance is set by the SetSurface() method. @n + The canvas can be created for the model instance only. * @remarks This method allocates a Tizen::Graphics::Canvas whose bounds are equal to that of the %VisualElement. * It is the developer's responsibility to deallocate the canvas after use. * The canvas is guaranteed to be valid only if the properties of the parent %VisualElement of the canvas remain unchanged. @@ -666,10 +752,10 @@ public: * @remarks The specific error code can be accessed using the GetLastResult() method. * @remarks If an exception occurs, this method returns @c null. * @see GetCanvasN(const Tizen::Graphics::Rectangle& bounds) + * @see GetCanvasN(const Tizen::Graphics::FloatRectangle& bounds) */ Tizen::Graphics::Canvas* GetCanvasN(void) const; - /** * Creates and returns a graphic canvas of the specified area. * @@ -680,9 +766,10 @@ public: * @param[in] bounds The position relative to the top-left corner of the %VisualElement and size * @exception E_SUCCESS The method is successful. * @exception E_INVALID_STATE This instance is in an invalid state. - * @exception E_INVALID_OPERATION The contents of this instance is set by the SetSurface() method. + * @exception E_INVALID_OPERATION The contents of this instance is set by the SetSurface() method. @n + The canvas can be created for the model instance only. * @exception E_OUT_OF_RANGE The specified @c bounds do not intersect with the bounds of the %VisualElement. @n - * The width and height must be greater than @c 0. + * The width and height must be greater than or equal to @c 0. * @remarks Only the graphic canvas of displayable %VisualElement can be obtained. * If the specified area is not inside the %VisualElement, * the graphics canvas of overlapped area between the %VisualElement and the specified @c bound is returned. @n @@ -694,10 +781,40 @@ public: * @remarks The specific error code can be accessed using the GetLastResult() method. * @remarks If an exception occurs, this method returns @c null. * @see GetCanvasN() + * @see GetCanvasN(const Tizen::Graphics::FloatRectangle& bounds) */ Tizen::Graphics::Canvas* GetCanvasN(const Tizen::Graphics::Rectangle& bounds) const; /** + * Creates and returns a graphic canvas of the specified area. + * + * @since 2.1 + * + * @return The graphic canvas of the %VisualElement, @n + * else @c null if an exception occurs + * @param[in] bounds The position relative to the top-left corner of the %VisualElement and size + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_STATE This instance is in an invalid state. + * @exception E_INVALID_OPERATION The contents of this instance is set by the SetSurface() method. @n + The canvas can be created for the model instance only. + * @exception E_OUT_OF_RANGE The specified @c bounds do not intersect with the bounds of the %VisualElement. @n + * The width and height must be greater than or equal to @c 0. + * @remarks Only the graphic canvas of displayable %VisualElement can be obtained. + * If the specified area is not inside the %VisualElement, + * the graphics canvas of overlapped area between the %VisualElement and the specified @c bound is returned. @n + * This method allocates a Tizen::Graphics::Canvas whose bounds are equal to that of the %VisualElement. + * It is the developer's responsibility to deallocate the canvas after use. + * The canvas is guaranteed to be valid only if the properties of the parent %VisualElement of the canvas remain unchanged. + * Therefore, one must delete previously allocated canvas and create a new canvas using this method, + * if the size or position of the control is changed. @n + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @remarks If an exception occurs, this method returns @c null. + * @see GetCanvasN() + * @see GetCanvasN(const Tizen::Graphics::Rectangle& bounds) + */ + Tizen::Graphics::Canvas* GetCanvasN(const Tizen::Graphics::FloatRectangle& bounds) const; + + /** * Gets the name of this instance. * * @since 2.0 @@ -738,7 +855,7 @@ public: * * @since 2.0 * - * @return The property's value + * @return An error code * @param[in] property The %VisualElement's property * @param[in] value The value of the %VisualElement's property to set * @exception E_SUCCESS The method is successful. @@ -1123,6 +1240,7 @@ public: /** * Converts the specified @c point in @c pFromVisualElement coordinate space to this instance's coordinate space. + * The coordinate is converted by projecting it on the root coordinate space. * * @since 2.0 * @@ -1131,14 +1249,17 @@ public: * @param[in] pFromVisualElement The %VisualElement instance with @c point in its coordinate space * @exception E_SUCCESS The method is successful. * @exception E_INVALID_ARG The input parameter is incorrect. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n + The matrix for this conversion is singular which has zero determinant. * @remarks This instance and @c pFromVisualElement must share a common ancestor. @n - * If @c null, it is regarded that @c point is in the screen coordinate space. + * If @c null, it is regarded that @c point is in the root coordinate space. * @see ConvertCoordinates(Tizen::Graphics::FloatRectangle& rectangle, const VisualElement* pFromVisualElement) */ result ConvertCoordinates(Tizen::Graphics::FloatPoint& point, const VisualElement* pFromVisualElement) const; /** * Converts the specified @c rectangle in @c pFromVisualElement coordinate space to this instance's coordinate space. + * The coordinate is converted by projecting it on the root coordinate space. * * @since 2.0 * @@ -1147,14 +1268,32 @@ public: * @param[in] pFromVisualElement The %VisualElement instance with @c rectangle in its coordinate space * @exception E_SUCCESS The method is successful. * @exception E_INVALID_ARG The input parameter is incorrect. - * @exception E_SYSTEM A system error has occurred. - * @remarks This instance and @c pFromVisualElement must share a common parent. @n - * If @c null, it is regarded that @c rectangle is in the screen coordinate space. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n + The matrix for this conversion is singular which has zero determinant. + * @remarks This instance and @c pFromVisualElement must share a common ancestor. @n + * If @c null, it is regarded that @c rectangle is in the root coordinate space. * @see ConvertCoordinates(Tizen::Graphics::FloatPoint& point, const VisualElement* pFromVisualElement) */ result ConvertCoordinates(Tizen::Graphics::FloatRectangle& rectangle, const VisualElement* pFromVisualElement) const; /** + * Transforms point in @c pOriginVisualElement coordinate space into the specified vector in this instance's coordinate space. + * + * @since 2.1 + * + * @return The transformed vector + * @param[in] originPoint The point in @c pOriginVisualElement coordinate space + * @param[in] pOriginVisualElement The %VisualElement instance with @c originPoint in its coordinate space + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The input parameter is incorrect. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n + The matrix for this conversion is singular which has zero determinant. + * @remarks This instance and @c pOriginVisualElement must share a common ancestor. + * @remarks The specific error code can be accessed using the GetLastResult() method. + */ + Tizen::Graphics::FloatPoint3 TransformVectorFromOrigin(const Tizen::Graphics::FloatPoint3& originPoint, const VisualElement* pOriginVisualElement) const; + + /** * Sets the sub-rectangle of contents which this instance must display. * * @since 2.0 diff --git a/inc/FUiAnimVisualElementSurface.h b/inc/FUiAnimVisualElementSurface.h index 2351ece..e445271 100644 --- a/inc/FUiAnimVisualElementSurface.h +++ b/inc/FUiAnimVisualElementSurface.h @@ -28,6 +28,7 @@ #include #include #include +#include namespace Tizen { namespace Graphics { @@ -111,6 +112,23 @@ public: result Construct(const DisplayContext& displayContext, const Tizen::Graphics::Dimension& size); /** + * Initializes this instance of %VisualElementSurface with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] displayContext The display context of the window + * @param[in] size The size of the %VisualElementSurface instance + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The value of the argument is outside the valid range defined by the method. + * @exception E_INVALID_ARG The display context is invalid. + * @remarks The width and height of the @c size parameter is the logical size and must be greater than @c 0. + * @remarks If this condition is not satisfied, the E_OUT_OF_RANGE exception is returned. + * @see Tizen::Ui::Window::GetDisplayContext() + */ + result Construct(const DisplayContext& displayContext, const Tizen::Graphics::FloatDimension& size); + + /** * Gets the buffer-related information of the %VisualElementSurface instance. * * @since 2.0 @@ -135,6 +153,19 @@ public: Tizen::Graphics::Dimension GetSize(void) const; /** + * Gets the size of the %VisualElementSurface instance. + * + * @since 2.1 + * + * @return The size of the %VisualElementSurface instance + * @exception E_SUCCESS The method is successful. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @remarks If an error occurs, this method returns Tizen::Graphics:Dimension(0, 0). + */ + + Tizen::Graphics::FloatDimension GetSizeF(void) const; + + /** * Compares the Tizen::Base::Object instance with the calling %VisualElementSurface instance for equivalence. * * @since 2.0 diff --git a/inc/FUiClipboard.h b/inc/FUiClipboard.h index 3a06497..6360d58 100644 --- a/inc/FUiClipboard.h +++ b/inc/FUiClipboard.h @@ -140,7 +140,7 @@ ClipboardSample::OnActionPerformed(const Tizen::Ui::Control& source, int actionI | CLIPBOARD_DATA_TYPE_HTML | CLIPBOARD_DATA_TYPE_AUDIO | CLIPBOARD_DATA_TYPE_VIDEO ); - + //Gets data from the clipboard item String* pString = dynamic_cast(pItem->GetData()); @@ -171,7 +171,7 @@ public: * clipboard that can be obtained through this method. @n * The method returns @c null if a system error occurs. */ - static Clipboard* GetInstance(void); + static Clipboard* GetInstance(void); /** * Copies the specified @c item to the system clipboard. diff --git a/inc/FUiClipboardItem.h b/inc/FUiClipboardItem.h index dacd7a8..1c36612 100644 --- a/inc/FUiClipboardItem.h +++ b/inc/FUiClipboardItem.h @@ -58,7 +58,7 @@ public: ClipboardItem(void); /** - * This destructor overrides Osp::Base::Object::~Object(). + * This destructor overrides Tizen::Base::Object::~Object(). * * @since 2.0 */ @@ -103,12 +103,12 @@ public: private: // // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects. - // + // ClipboardItem(const ClipboardItem& rhs); // // The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects. - // + // ClipboardItem& operator =(const ClipboardItem& rhs); private: diff --git a/inc/FUiCompositeMode.h b/inc/FUiCompositeMode.h index b5654c8..a296288 100644 --- a/inc/FUiCompositeMode.h +++ b/inc/FUiCompositeMode.h @@ -2,14 +2,14 @@ // Open Service Platform // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. // -// Licensed under the Flora License, Version 1.0 (the License); +// Licensed under the Apache License, Version 2.0 (the License); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an AS IS BASIS, +// distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/inc/FUiContainer.h b/inc/FUiContainer.h old mode 100644 new mode 100755 index 9418b31..ce9ecda --- a/inc/FUiContainer.h +++ b/inc/FUiContainer.h @@ -102,6 +102,46 @@ public: */ result AddControl(const Control& control); + /* + * Adds the control at the end of the list maintained by the container. + * + * @since 2.1 + * + * @return An error code + * @param[in] control The control to be added to the container + * @param[in] pControl Pointer of the control to be added to the container + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c pControl is null. + * The specified @c control is an instance of Window, or this control's parent container. + * @exception E_MAX_EXCEEDED The number of child controls has exceeded the maximum limit. + * @exception E_INVALID_ARG + * @exception E_SYSTEM A system error has occurred. + * @remarks When the control is added, it is placed at the top of the drawing stack maintained by the container.@n + * This means the last control added is drawn last + * @remarks A control becomes displayable only after it has been added to a displayable container. Some methods may not work normally if the methods + * of the control are called before adding the control to a container. After the control is added to a %Container, the OnInitializing() + * method of the control are called before adding the control to a container. After the control is added to a %Container, the + * OnInitializing() method of the control is invoked for the initialization of the control such as creating and adding child controls. + * @see Tizen::Ui::Control::OnInitializing() + * @see Tizen::Ui::Control::OnTerminating() + * @code + * { + * // Uses Panel instead of Container, because Container is an abstract class. + * Panel* pPanel = new Panel(); + * pPanel->Construct(Rectangle(100, 250, 300, 300)); + * + * Form* pForm = new Form(); + * pForm->Construct(FORM_STYLE_NORMAL|FORM_STYLE_TITLE|FORM_STYLE_INDICATOR); + * pForm->AddControl(pPanel); + * + * //... + * pForm->Invalidate(true); + * //... + * } + * @endcode + */ + result AddControl(Control* pControl); + /** * Before the system calls OnDraw() method to allow the user to do custom drawing, this method is called to clear the canvas. The user can override this method to change this default behavior. * @@ -135,11 +175,11 @@ public: /** * @if OSPCOMPAT * @page CompOnDrawPage Compatibility for OnDraw() - * @section CompOnDrawPage IssueSection Issues + * @section CompOnDrawPageIssueSection Issues * Implementing this method in OSP compatible applications has the following issues: @n * -# The platform draws the control by calling the parent's OnDraw() callback before invoking the control's OnDraw() callback. So, the users can't control the control's drawing behavior by overriding the OnDraw() callback. * - * @section CompOnDrawPage SolutionSection Resolutions + * @section CompOnDrawPageSolutionSection Resolutions * This issue has been resolved in Tizen. @n * -# The platform does not call the parent's OnDraw() callback before invoking the control's OnDraw() callback. Therefore, you needs to call the parent container's OnDraw() callback in the OnDraw() callback if you override this method. * @endif @@ -151,7 +191,7 @@ public: * @since 2.0 * * @param[in] showState The new show state of the control - * @see Osp::Ui::Control::SetShowState() + * @see Tizen::Ui::Control::SetShowState() */ virtual void OnShowStateChanging(bool showState); @@ -218,10 +258,28 @@ public: * @exception E_OBJ_NOT_FOUND The specified instance is not found within the indicated range (that is, the @c control is not found). * @exception E_SYSTEM A system error has occurred. * @remarks The removed child control is deleted from the memory. Before deletion, OnTerminating() of the child control is called. + * If OnTerminating() method is overrided and returns an exception, that exception will be propagated. * @see Tizen::Ui::Control::OnTerminating() */ result RemoveControl(const Control& control); + /* + * Removes the specified control from the container. + * + * @since 2.1 + * + * @return An error code + * @param[in] pControl Pointer of the child control to be removed + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_NOT_FOUND The specified instance is not found within the indicated range (that is, the @c control is not found). + * @exception E_INVALID_ARG The specified @c pControl is null. + * @exception E_SYSTEM A system error has occurred. + * @remarks The removed child control is deleted from the memory. Before deletion, OnTerminating() of the child control is called. + * If OnTerminating() method is overrided and returns an exception, that exception will be propagated. + * @see Tizen::Ui::Control::OnTerminating() + */ + result RemoveControl(Control* pControl); + /** * Removes the specified control from the container. * @@ -233,6 +291,7 @@ public: * @exception E_OUT_OF_RANGE The specified @c index is out of range. * @exception E_SYSTEM A system error has occurred. * @remarks The removed child control is deleted from the memory. Before deletion, OnTerminating() of the child control is called. + * If OnTerminating() method is overrided and returns an exception, that exception will be propagated. * @see Tizen::Ui::Control::OnTerminating() */ result RemoveControl(int index); @@ -283,12 +342,12 @@ public: /** * @if OSPCOMPAT * @page CompGetControlPage Compatibility for GetControl() - * @section CompGetControlPage IssueSection Issues - * Implementing this method in OSP compatible applications has the following issues: @n - * -# GetControl() method searches for itself first and then child controls in OSP, whereas only @n - * child controls are searched for from Tizen. + * @section CompGetControlPageIssueSection Issues + * Implementing this method in OSP compatible applications has the following issues: @n + * -# GetControl() method searches for itself first and then child controls in API version 2.0, whereas only @n + * child controls are searched for from 2.1. * - * @section CompGetControlPage SolutionSection Resolutions + * @section CompGetControlPageSolutionSection Resolutions * This issue has been resolved in Tizen. @n * @endif */ @@ -361,6 +420,20 @@ public: */ bool IsAncestorOf(const Control& control) const; + /* + * Checks whether the specified control is a child or descendant of the container. + * + * @since 2.1 + * + * @return @c true if the specified control is within the containment hierarchy of the container, @n + * else @c false + * @param[in] pControl Pointer of the control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c pControl is null. + * @remarks The specific error code can be accessed using the GetLastResult() method. + */ + bool IsAncestorOf(const Control* pControl) const; + /** * Sets whether the specified child control must always be above other children. * @@ -428,6 +501,25 @@ public: */ bool IsControlAlwaysAtBottom(const Tizen::Ui::Control& control) const; + /* + * Checks whether the specified child control is always at the bottom of + * the drawing stack. + * + * @since 2.1 + * + * @return @c true if the specified child control is set as always at the bottom, @n + * else @c false + * @param[in] pControl Pointer of child control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid.@n + * The specified control is not a child of this + * container or @c pControl is null . + * @remarks The specific error code can be accessed using the GetLastResult() + * method. + * @see SetControlAlwaysAtBottom() + */ + bool IsControlAlwaysAtBottom(const Tizen::Ui::Control* pControl) const; + /** * Checks whether the specified child control is always on the top of * the drawing stack. @@ -447,6 +539,25 @@ public: */ bool IsControlAlwaysOnTop(const Tizen::Ui::Control& control) const; + /* + * Checks whether the specified child control is always on the top of + * the drawing stack. + * + * @since 2.1 + * + * @return @c true if the specified child control is set as always on the top, @n + * else @c false + * @param[in] pControl Pointer of child control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. @n + * The specified control is not a child of this + * container. or @c pControl is null + * @remarks The specific error code can be accessed using the GetLastResult() + * method. + * @see SetControlAlwaysOnTop() + */ + bool IsControlAlwaysOnTop(const Tizen::Ui::Control* pControl) const; + protected: /** * The object is not fully constructed after this constructor is called. For full construction, the Construct() method must be called right after calling this constructor. @@ -485,6 +596,25 @@ protected: */ result Construct(const Tizen::Graphics::Rectangle& rect, bool resizable = true, bool movable = true); + /* + * Initializes this instance of %Container. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect The rectangle bounds to be set + * @param[in] resizable Set to @c true to make the container resizable, @n + * else @c false + * @param[in] movable Set to @c true to make the container movable, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @remarks This method must be called from the derived classes's construct methods. + * @remarks If the @c resizable is @c false, IsResizable() returns @c false. + * @see IsResizable() + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect, bool resizable = true, bool movable = true); + /** * Initializes this instance of %Container with the specified layout and rectangular region. * @@ -507,6 +637,28 @@ protected: */ result Construct(const Tizen::Ui::Layout& layout, const Tizen::Graphics::Rectangle& rect, bool resizable = true, bool movable = true); + /* + * Initializes this instance of %Container with the specified layout and rectangular region. + * + * @since 2.1 + * + * @return An error code + * @param[in] layout The layout for both the portrait and landscape mode + * @param[in] rect The location and size of the %Container + * @param[in] resizable Set to @c true to make the container resizable, @n + * else @c false + * @param[in] movable Set to @c true to make the container movable, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @remarks This method must be called from the derived classes's construct methods. + * @remarks If the @c resizable is @c false, IsResizable() returns @c false. + * @see IsResizable() + * @see Tizen::Ui::Layout + * @see Tizen::Ui::Container::GetLayoutN() + */ + result Construct(const Tizen::Ui::Layout& layout, const Tizen::Graphics::FloatRectangle& rect, bool resizable = true, bool movable = true); + /** * Initializes this instance of %Container with the specified layouts and rectangular region. * @@ -532,6 +684,31 @@ protected: */ result Construct(const Tizen::Ui::Layout& portraitLayout, const Tizen::Ui::Layout& landscapeLayout, const Tizen::Graphics::Rectangle& rect, bool resizable = true, bool movable = true); + /* + * Initializes this instance of %Container with the specified layouts and rectangular region. + * + * @since 2.1 + * + * @return An error code + * @param[in] portraitLayout The layout for the portrait mode + * @param[in] landscapeLayout The layout for the landscape mode + * @param[in] rect The location and size of the %Container + * @param[in] resizable Set to @c true to make the container resizable, @n + * else @c false + * @param[in] movable Set to @c true to make the container movable, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @remarks If the @c resizable is @c false, IsResizable() returns @c false. + * @see IsResizable() + * @see Tizen::Ui::Layout + * @see Tizen::Ui::Layout + * @see Tizen::Ui::Container::GetLayoutN() + * @see Tizen::Ui::Container::GetPortraitLayoutN() + * @see Tizen::Ui::Container::GetLandscapeLayoutN() + */ + result Construct(const Tizen::Ui::Layout& portraitLayout, const Tizen::Ui::Layout& landscapeLayout, const Tizen::Graphics::FloatRectangle& rect, bool resizable = true, bool movable = true); + /** * Gets the index of the specified control. * @@ -545,6 +722,20 @@ protected: * */ result GetControlAt(const Control& control, int& index) const; + /* + * Gets the index of the specified control. + * + * @since 2.1 + * @return An error code + * @param[in] pControl Pointer of the control + * @param[out] index The index of the control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c pControl is null. + * @exception E_OBJ_NOT_FOUND The specified instance of Control is not found. + * @see SetControlAt() + * + */ + result GetControlAt(const Control* pControl, int& index) const; /** * Sets the control at the specified index. @@ -559,32 +750,74 @@ protected: * @exception E_SYSTEM A system error has occurred. * @remarks The @c control must be first added to this container. @n * Call the Invalidate() method after this, to apply the change to be shown. - * @see Invalidate(), GetControlAt() + * @see Invalidate() + * @see GetControlAt() * */ result SetControlAt(const Control& control, int index); -private: - // - // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects. - // - Container(const Container& rhs); - - // - // The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects. - // - Container& operator =(const Container& rhs); + /* + * Sets the control at the specified index. + * + * @since 2.1 + * + * @return An error code + * @param[in] pControl Pointer of the control + * @param[in] index The index + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c index is out of range. + * @exception E_INVALID_ARG The specified @c pControl is null. + * @exception E_SYSTEM A system error has occurred. + * @remarks The @c control must be first added to this container. @n + * Call the Invalidate() method after this, to apply the change to be shown. + * @see Invalidate() + * @see GetControlAt() + * + */ + result SetControlAt(Control* pControl, int index); protected: - friend class _ContainerImpl; + /* + * Called to notify that the bounds of the control is changing. + * + * @since 2.1 + * + * @return An error code + * @param[in] oldRect The old position and size values of the control + * @param[in] newRect The new position and size values of the control + * @remarks If the method returns an exception, the resulting exception + * is propagated and the control's size is unchanged.@n + * Provide control specific exceptions. + * @see Tizen::Ui::Control::SetBounds() + * @see Tizen::Ui::Control::SetSize() + */ + virtual result OnBoundsChanging(const Tizen::Graphics::FloatRectangle& oldRect, const Tizen::Graphics::FloatRectangle& newRect); - // - // This method is for internal use only. - // Using this method can cause behavioral, security-related, and consistency-related issues in the application. - // - // This method is reserved and may change its name at any time without prior notice. - // - virtual void Container_Reserved1(void) {} + /* + * Called to notify that the bounds of the control is changed. + * + * @since 2.1 + * + * @return An error code + * @param[in] oldRect The old position and size values of the control + * @param[in] newRect The new position and size values of the control + * @see Tizen::Ui::Control::SetBounds() + * @see Tizen::Ui::Control::SetSize() + */ + virtual void OnBoundsChanged(const Tizen::Graphics::FloatRectangle& oldRect, const Tizen::Graphics::FloatRectangle& newRect); + + /* + * Overrides this method to indicate that the specified @c width and @c height + * can be supported or a new @c width and @c height should be applied instead + * of the specified values. + * + * @since 2.1 + * + * @return A Boolean flag that indicates whether the specified @c width + * and @ height are supported. + * @param[in, out] evaluatedSize The width and the height that need to be evaluated. + */ + virtual void OnEvaluateSize(Tizen::Graphics::FloatDimension& evaluatedSize); // // This method is for internal use only. @@ -592,7 +825,7 @@ protected: // // This method is reserved and may change its name at any time without prior notice. // - virtual void Container_Reserved2(void) {} + virtual void Container_Reserved4(void) {} // // This method is for internal use only. @@ -600,24 +833,21 @@ protected: // // This method is reserved and may change its name at any time without prior notice. // - virtual void Container_Reserved3(void) {} + virtual void Container_Reserved5(void) {} +private: // - // This method is for internal use only. - // Using this method can cause behavioral, security-related, and consistency-related issues in the application. - // - // This method is reserved and may change its name at any time without prior notice. + // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects. // - virtual void Container_Reserved4(void) {} + Container(const Container& rhs); // - // This method is for internal use only. - // Using this method can cause behavioral, security-related, and consistency-related issues in the application. - // - // This method is reserved and may change its name at any time without prior notice. + // The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects. // - virtual void Container_Reserved5(void) {} + Container& operator =(const Container& rhs); +private: + friend class _ContainerImpl; }; // Container }} //Tizen::Ui diff --git a/inc/FUiControl.h b/inc/FUiControl.h old mode 100644 new mode 100755 index 622b764..0457734 --- a/inc/FUiControl.h +++ b/inc/FUiControl.h @@ -1,1489 +1,2187 @@ -// -// Open Service Platform -// Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. -// -// Licensed under the Flora License, Version 1.0 (the License); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://floralicense.org/license/ -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an AS IS BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// - -/** - * @file FUiControl.h - * @brief This is the header file for the %Control class. - * - * This header file contains the declarations of the %Control class. - */ - -#ifndef _FUI_CONTROL_H_ -#define _FUI_CONTROL_H_ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -namespace Tizen { namespace Ui { namespace Animations { -class ControlAnimator; -class VisualElement; -}}} - -namespace Tizen { namespace Ui { - -class AccessibilityContainer; -class Container; -class _ControlImpl; -class TouchGestureDetector; - -/** - * @class Control - * @brief This class is the abstract base class of all the UI control classes. - * - * @since 2.0 - * - * @remarks In order for a control to be displayed, it must first be bound to a window of the underlying window system. The control's window is - * created when it (or its ancestor) is added to a valid control containment hierarchy. A containment hierarchy is valid if and - * only if the root of the hierarchy is an instance of the Window class. - * - * The %Control class is the abstract base class of all user interface elements. It encapsulates a - * "window" of the underlying window system, and provides the infrastructure necessary for the - * elements to respond to user inputs. The %Control class also determines how a key event is dispatched - * and processed. - * - * For more information on the class features, see UI Controls. - * - * - * The following examples demonstrate how to use the %Control class. - * - * Size and Position - * - * @code - * // Sets the size - * pControl->SetSize(100, 100); // 100 pixels wide and 100 pixels long - * - * // Sets the position - * pControl->SetPosition(5, 5); // Control is drawn 5 pixels down and 5 pixels left from the top-left corner of its parent - * @endcode - * - * Draw and Show - * - * @code - * // Gets a instance of Canvas - * Canvas* pCanvas = pControl->GetCanvasN(); - * - * // Fills the canvas with white color - * pCanvas->Clear(Tizen::Graphics::Color(255, 255, 255)); - * - * // Shows changes on screen - * pControl->Invalidate(true); - * - * delete pCanvas; - * @endcode - * - * Key and input focus - * - * @code - * // Implements MyKeyEventListener - * IKeyEventListener* pKeyListener = new MyKeyEventListener(); - * pControl->SetFocus(); - * - * // The added key listener should be deleted after use - * pControl->AddKeyEventListener(*pKeyListener); - * @endcode - * - */ -class _OSP_EXPORT_ Control - : public Tizen::Base::Object -{ - -public: - /** - * This destructor overrides Tizen::Base::Object::~Object(). - * - * @since 2.0 - */ - virtual ~Control(void); - - /** - * Adds the IFocusEventListener instance to the %Control instance. @n - * The added listener gets notified when the control gains or loses its focus. - * - * @since 2.0 - * - * @param[in] listener The event listener to add - * @see RemoveFocusEventListener() - */ - void AddFocusEventListener(IFocusEventListener& listener); - - /** - * Adds the IKeyEventListener instance to the %Control instance. @n - * The added listener gets notified when a key is pressed, released, or long pressed. - * - * @since 2.0 - * - * @param[in] listener The event listener to add - * @see RemoveKeyEventListener() - */ - void AddKeyEventListener(IKeyEventListener& listener); - - /** - * Adds the ITouchEventListener instance to the %Control instance. @n - * The added listener gets notified when a touch event such as a press or a release is fired. - * - * @since 2.0 - * - * @param[in] listener The event listener to add - * @see RemoveTouchEventListener() - */ - void AddTouchEventListener(ITouchEventListener& listener); - - /** - * Adds the ITouchModeChangedEventListener instance to the %Control instance. @n - * The added listener gets notified when the device's touch mode is changed. - * - * @since 2.0 - * - * @param[in] listener The event listener to add - * @see RemoveTouchModeChangedEventListener() - */ - void AddTouchModeChangedEventListener(Tizen::Ui::ITouchModeChangedEventListener& listener); - - /** - * Adds the IDragDropEventListener instance to the %Control instance. @n - * The added listener gets notified when a drag or a drop happens in the control. - * - * @since 2.0 - * - * @param[in] listener The event listener to add - * @see RemoveDragDropEventListener() - */ - void AddDragDropEventListener(IDragDropEventListener& listener); - - /** - * Removes the focus listener instance. @n - * The removed listener is not notified even when focus events are fired. - * - * @since 2.0 - * - * @param[in] listener The listener to remove - * @see AddFocusEventListener() - */ - void RemoveFocusEventListener(IFocusEventListener& listener); - - /** - * Removes the key event listener instance. @n - * The removed listener is not notified even when key events are fired. - * - * @since 2.0 - * - * @param[in] listener The listener to remove - * @see AddKeyEventListener() - */ - void RemoveKeyEventListener(IKeyEventListener& listener); - - /** - * Removes the touch event listener instance. @n - * The removed listener is not notified even when touch events are fired. - * - * @since 2.0 - * - * @param[in] listener The listener to remove - * @see AddTouchEventListener() - */ - void RemoveTouchEventListener(ITouchEventListener& listener); - - /** - * Removes the touch mode changed event listener instance. @n - * The removed listener is not notified even when the touch mode changed events are fired. - * - * @since 2.0 - * - * @param[in] listener The listener to remove - * @see AddTouchModeChangedEventListener() - */ - void RemoveTouchModeChangedEventListener(Tizen::Ui::ITouchModeChangedEventListener& listener); - - /** - * Adds the IDragDropEventListener instance to the %Control instance. @n - * The added listener gets notified when a drag or a drop happens in the control. - * - * @since 2.0 - * - * @param[in] listener The event listener to add - * @see Tizen::Ui::IDragDropEventListener::OnTouchDragged() - * @see Tizen::Ui::IDragDropEventListener::OnTouchDropped() - * @see RemoveDragDropEventListener() - */ - void RemoveDragDropEventListener(IDragDropEventListener& listener); - - /** - * Overrides this method to provide user-specific initialization code before the control is added to a container. - * - * @since 2.0 - * - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_FAILURE The method has failed. - * @remarks This method is called when the control is about to be added to a container. - * @remarks To cancel adding this control to the parent, return @c E_FAILURE in this method. - * @see OnTerminating() - */ - virtual result OnInitializing(void); - - /** - * Overrides this method to provide user-specific termination code. - * - * @if OSPCOMPAT - * @brief [Compatibility] - * @endif - * @since 2.0 - * - * @if OSPCOMPAT - * @compatibility This method has compatibility issues with OSP compatible applications. @n - * For more information, see @ref CompOnTerminatingPage "here". - * @endif - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_FAILURE The method has failed. - * @remarks This method is called right before the control is removed successfully from the container. - * @remarks To cancel removing this control from the parent, return @c E_FAILURE in this method. - * @see OnInitializing() - */ - virtual result OnTerminating(void); - - /** - * @if OSPCOMPAT - * @page CompOnTerminatingPage Compatibility for OnTerminating() - * @section CompOnterminatingPage IssueSection Issues - * Implementing this method in OSP compatible applications has the following issues: @n - * -# OnTerminating() callback is called from child to parent. - * - * @section CompOnTerminatingPage SolutionSection Resolutions - * This issue has been resolved in Tizen. @n - * -# OnTerminating() callback is called from parent to child. - * @endif - */ - - /** - * Called asynchronously when the user event that is sent by SendUserEvent() method is - * dispatched to the control. - * - * @since 2.0 - * - * @param[in] requestId The user-defined event ID - * @param[in] pArgs A pointer to the argument list - * @see SendUserEvent() - */ - virtual void OnUserEventReceivedN(RequestId requestId, Tizen::Base::Collection::IList* pArgs); - - /** - * Checks whether the control is movable. - * - * @since 2.0 - * - * @return @c true if the control is movable, @n - * else @c false - * @exception E_SUCCESS The method is successful. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * @remarks When control is not movable SetPosition() and SetBounds() return @c E_UNSUPPORTED_OPERATION. - * @see SetPosition() - * @see SetBounds() - */ - bool IsMovable(void) const; - - /** - * Checks whether the control is resizable. - * - * @since 2.0 - * - * @return @c true if the control is resizable, @n - * else @c false - * @exception E_SUCCESS The method is successful. - * @remarks Even if this method returns @c true, the size can be changed internally. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * @remarks When control is not resizable, - * SetSize(), SetBounds(), SetMinimumSize() and SetMaximumSize() return @c E_UNSUPPORTED_OPERATION. - * @see SetSize() - * @see SetBounds() - * @see SetMinimumSize() - * @see SetMaximumSize() - */ - bool IsResizable(void) const; - - /** - * Gets the position and the size of the control. - * - * @since 2.0 - * - * @return An instance of the Tizen::Graphics::Rectangle that represents the position of top-left corner, - * the width, and the height of the control - * @remarks The shape of the control is rectangular that is defined by the top-left point, - * and the width or height. The position - * of the top-left point is relative to the top-left corner of the parent container. - * @see SetBounds() - */ - Tizen::Graphics::Rectangle GetBounds(void) const; - - /** - * Gets the position and the size of the control. - * - * @since 2.0 - * - * @param[out] x The x position of top-left corner of the control - * @param[out] y The y position of top-left corner of the control - * @param[out] width The width of the rectangular region - * @param[out] height The height of the rectangular region - * @remarks The shape of the control is regarded as a rectangle that is defined - * by the top-left point and the width or height. - * The position of the top-left point is relative to the top-left corner of - * the parent container. - * @see SetBounds() - */ - void GetBounds(int& x, int& y, int& width, int& height) const; - - /** - * Gets the position of the control's top-left corner. - * - * @since 2.0 - * - * @return The position of the control's top-left corner - * @remarks The position of top-left corner is relative to the top-left corner of its parent container. - * @see GetBounds() - */ - Tizen::Graphics::Point GetPosition(void) const; - - /** - * Gets the position of the control's top-left corner. - * - * @since 2.0 - * - * @param[out] x The x position of the control's top-left corner - * @param[out] y The y position of the control's top-left corner - * @remarks The position of top-left corner is relative to the top-left corner of its parent container. - * @see GetBounds() - */ - void GetPosition(int& x, int& y) const; - - /** - * Gets the size of the control. - * - * @since 2.0 - * - * @return The size of the control - * @see GetBounds() - */ - Tizen::Graphics::Dimension GetSize(void) const; - - /** - * Gets the size of the control. - * - * @since 2.0 - * - * @param[out] width The width of the control - * @param[out] height The height of the control - * @see GetBounds() - */ - void GetSize(int& width, int& height) const; - - /** - * Gets the x position of the control. @n - * The position of control is relative to the top-left corner of its parent container. - * - * @since 2.0 - * - * @return The x position of the control - * @see GetBounds() - * @see GetPosition() - * @see GetY() - */ - int GetX(void) const; - - /** - * Gets the y position of the control. @n - * The position of control is relative to the top-left corner of its parent container. - * - * @since 2.0 - * - * @return The y position of the control - * @see GetBounds() - * @see GetPosition() - * @see GetX() - */ - int GetY(void) const; - - /** - * Gets the width of the control. - * - * @since 2.0 - * - * @return The width of the control - * @see GetBounds() - * @see GetSize() - * @see GetHeight() - */ - int GetWidth(void) const; - - /** - * Gets the height of the control. - * - * @since 2.0 - * - * @return The height of the control - * @see GetBounds() - * @see GetSize() - * @see GetWidth() - */ - int GetHeight(void) const; - - /** - * Gets the minimum size of the control. - * - * @since 2.0 - * - * @return The minimum size of the control - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - * @remarks The first call of the method returns the system-defined minimum size. - * @remarks The specific error code can be accessed using the GetLastResult() method. - */ - Tizen::Graphics::Dimension GetMinimumSize(void) const; - - /** - * Gets the maximum size of the control. - * - * @since 2.0 - * - * @return The maximum size of the control - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - * @remarks The first call of the method returns the system-defined maximum size. - * @remarks The specific error code can be accessed using the GetLastResult() method. - */ - Tizen::Graphics::Dimension GetMaximumSize(void) const; - - /** - * Gets a font of the control. - * - * @since 2.0 - * - * @return The font name set in the control, @n - * else an empty string if the font is not set - * @see SetFont() - */ - Tizen::Base::String GetFont(void) const; - - /** - * Sets the position and size of the control. - * - * @since 2.0 - * - * @return An error code - * @param[in] rect The new bounds of the control - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The control has not been constructed as yet. - * @exception E_UNSUPPORTED_OPERATION This control is neither movable nor resizable. - * @exception E_INVALID_ARG The specified input parameter is invalid. - * @exception E_SYSTEM A system error has occurred. - * @remarks Do not override this method. - * @remarks The size of the control must be within the range defined by the minimum size and the maximum size. - * @see IsMovable() - * @see IsResizable() - * @see GetMinimumSize() - * @see GetMaximumSize() - * @see SetPosition() - * @see SetSize() - */ - result SetBounds(const Tizen::Graphics::Rectangle& rect); - - /** - * Sets the position and size of the control. @n - * The position is set at (x, y), and the @c width and @c height parameters contain - * the width and height values of the object, respectively. - * - * @since 2.0 - * - * @return An error code - * @param[in] x The new x position of the control - * @param[in] y The new y position of the control - * @param[in] width The new width of the control - * @param[in] height The new height of the control - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The control has not been constructed as yet. - * @exception E_UNSUPPORTED_OPERATION This control is neither movable nor resizable. - * @exception E_INVALID_ARG A specified input parameter is invalid. - * @exception E_SYSTEM A system error has occurred. - * @remarks Do not override this method. - * @remarks The size of the control must be within the range defined by the minimum size and the maximum size. - * @see IsMovable() - * @see IsResizable() - * @see GetMinimumSize() - * @see GetMaximumSize() - * @see SetPosition() - * @see SetSize() - */ - result SetBounds(int x, int y, int width, int height); - - /** - * Sets the relative position of the control. - * - * @since 2.0 - * - * @return An error code - * @param[in] Position The new position - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The control has not been constructed as yet. - * @exception E_UNSUPPORTED_OPERATION This control is not movable. - * @exception E_SYSTEM A system error has occurred. - * @remarks Do not override this method. - * @remarks The position of the control are relative to the top-left corner of its parent. - * @see IsMovable() - * @see SetBounds() - */ - result SetPosition(const Tizen::Graphics::Point& Position); - - /** - * Sets the position of the control. - * - * @since 2.0 - * @return An error code - * @param[in] x The new x position of the control - * @param[in] y The new y position of the control - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The control has not been constructed as yet. - * @exception E_UNSUPPORTED_OPERATION This control is not movable. - * @exception E_SYSTEM A system error has occurred. - * @remarks Do not override this method. - * @remarks The x,y position of the control are relative to the top-left corner of its parent. - * @see IsMovable() - * @see SetBounds() - */ - result SetPosition(int x, int y); - - /** - * Sets the size of the control. @n - * - * @since 2.0 - * - * @return An error code - * @param[in] size The new width and height - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The control has not been constructed as yet. - * @exception E_UNSUPPORTED_OPERATION This control is not resizable. - * @exception E_INVALID_ARG The specified input parameter is invalid. - * @exception E_SYSTEM A system error has occurred. - * @remarks Do not override this method. - * @remarks The size of the control must be within the range defined by the minimum size and the maximum size. - * @see IsResizable() - * @see GetMinimumSize() - * @see GetMaximumSize() - * @see SetBounds() - */ - result SetSize(const Tizen::Graphics::Dimension& size); - - /** - * Sets the size of the control. @n - * The @c width and @c height parameters contain the width and height values of the object, respectively. - * - * @since 2.0 - * - * @return An error code - * @param[in] width The new width of the control - * @param[in] height The new height of the control - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The control has not been constructed as yet. - * @exception E_UNSUPPORTED_OPERATION This control is not resizable. - * @exception E_INVALID_ARG A specified input parameter is invalid. - * @exception E_SYSTEM A system error has occurred. - * @remarks Do not override this method. - * @remarks The size of the control must be within the range defined by the minimum size and the maximum size. - * @see IsResizable() - * @see GetMinimumSize() - * @see GetMaximumSize() - * @see SetBounds() - */ - result SetSize(int width, int height); - - /** - * Sets the minimum size of the control. - * - * @since 2.0 - * - * @return An error code - * @param[in] newMinDim The new minimum size of the control - * @exception E_SUCCESS The method is successful. - * @exception E_UNSUPPORTED_OPERATION This control is not resizable. - * @exception E_INVALID_ARG The specified input parameter is invalid. - * @exception E_SYSTEM A system error has occurred. - * @remarks This method can affect the maximum size and the current size of the control. @n - * The control needs to be redrawn to reflect the change in its size. @n - * If the current maximum size or the control size is smaller than the new minimum size, - * it becomes the same as the new minimum size. - * @see IsResizable() - */ - result SetMinimumSize(const Tizen::Graphics::Dimension& newMinDim); - - /** - * Sets the maximum size of the control. - * - * @since 2.0 - * - * @return An error code - * @param[in] newMaxDim The new maximum size of the control - * @exception E_SUCCESS The method is successful. - * @exception E_UNSUPPORTED_OPERATION This control is not resizable. - * @exception E_INVALID_ARG The specified input parameter is invalid. - * @exception E_SYSTEM A system error has occurred. - * @remarks This method can affect the minimum size and the current size of the control. @n - * The control needs to be redrawn to reflect the change in its size. @n - * If the current minimum size or the control size is greater than the new maximum size, - * it becomes the same as the new maximum size. - * @see IsResizable() - */ - result SetMaximumSize(const Tizen::Graphics::Dimension& newMaxDim); - - /** - * Converts the specified screen position to the position in control's coordinate system. - * - * @since 2.0 - * - * @return The position relative to the top-left corner of the control's client-area - * @param[in] screenPosition The position relative to the top-left corner of the screen - * @see ConvertToScreenPosition() - */ - Tizen::Graphics::Point ConvertToControlPosition(const Tizen::Graphics::Point& screenPosition) const; - - /** - * Converts the specified position in the control's coordinate system to the screen position. - * - * @since 2.0 - * - * @return The position relative to the top-left corner of the screen - * @param[in] controlPosition The position relative to the top-left corner of the control's client-area - * @see ConvertToControlPosition() - */ - Tizen::Graphics::Point ConvertToScreenPosition(const Tizen::Graphics::Point& controlPosition) const; - - /** - * Sets the font of the control. - * - * @since 2.0 - * - * @return An error code - * @param[in] fontName The app font name or system font name @n - * The app font name is retrieved using Tizen::Graphics::Font::GetFaceName(Tizen::Base::String& filepath). @n - * The system font name is retrieved using Tizen::Graphics::Font::GetSystemFontListN(). - * Sets an empty string to reset. - * @exception E_SUCCESS The method is successful. - * @exception E_FILE_NOT_FOUND The specified font cannot be found or accessed. - * @remarks At first, the value of @c fontName is considered app font name if it matches one of the face names of the font files which are located in @b '/res/font'. - * If not, the value of @c fontName is considered system font name if it matches one of the retrieved values using Tizen::Graphics::Font::GetSystemFontListN(). - * @remarks The control first attempts to find the control font. If it fails, then it searches for the application default font and the system font, in sequence. - * @see GetFont() - */ - result SetFont(const Tizen::Base::String& fontName); - - /** - * Checks whether the specified @c point is inside the control. - * - * @since 2.0 - * - * @return @c true if the specified @c point is inside the control, @n - * else @c false - * @param[in] point The point to check - * @remarks The specified @c point must be defined relative to the top-left corner of the control. - */ - bool Contains(const Tizen::Graphics::Point& point) const; - - /** - * Checks whether the specified point is inside the control. - * - * @since 2.0 - * - * @return @c true if the specified point is inside the control, @n - * else @c false - * @param[in] x The x position of the point to check - * @param[in] y The y position of the point to check - * @remarks The specified point must be defined relative to the top-left corner of the control. - */ - bool Contains(int x, int y) const; - - /** - * Draws child controls recursively. - * - * @if OSPCOMPAT - * @brief [Compatibility] - * @endif - * @since 2.0 - * - * @if OSPCOMPAT - * @compatibility This method has compatibility issues with OSP compatible applications. @n - * For more information, see @ref CompDrawPage "here". - * @endif - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n - * Note: This control cannot be displayed. - * @exception E_SYSTEM A system error has occurred. - * @remarks This method calls OnDraw() immediately in a synchronous way. - * @see Show() - */ - result Draw(void); - - /** - * @if OSPCOMPAT - * @page CompDrawPage Compatibility for Draw() - * @section CompDrawPage IssueSection Issues - * Implementing this method in OSP compatible applications has the following issues: @n - * -# Draw() method draws child controls in a recursive way regardless of the visibility of the parent. - * - * @section CompDrawPage SolutionSection Resolutions - * This issue has been resolved in Tizen. @n - * -# Draw() method does not draw child controls if the control itself is not visible. - * @endif - */ - - /** - * Draws the control. - * - * @since 2.0 - * - * @param[in] recursive Set to @c true to draw child controls recursively, @n - * else @c false - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n - * Note: This control cannot be displayed. - * @exception E_SYSTEM A system error has occurred. - * @remarks This method calls OnDraw() immediately in a synchronous way. - * @see Show() - */ - result Draw(bool recursive); - - /** - * Shows the control on the screen. - * - * @since 2.0 - * @final Although this method is virtual, it should not be overridden. - * If overridden, it may not work as expected. - * - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n - * Note: This control cannot be displayed. - * @exception E_SYSTEM A system error has occurred. - * @remarks Do not override this method. - */ - virtual result Show(void); - - /** - * Invalidates the control. - * - * @since 2.0 - * - * @param[in] recursive Set to @c true to invalidate child controls recursively, @n - * else @c false - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n - * Note: This control cannot be displayed. - * @exception E_SYSTEM A system error has occurred. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * @remarks OnDraw() is not called immediately, but called asynchronously just before the screen is updated. - * @see Show() - */ - void Invalidate(bool recursive); - - /** - * Invalidates the control of the specified position and size. - * - * @since 2.0 - * - * @param[in] bounds The position relative to the top-left corner of the control - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n - * Note: This control cannot be displayed. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * @see Show() - */ - void InvalidateBounds(const Tizen::Graphics::Rectangle& bounds); - - /** - * Draws the control asynchronously. - * - * @since 2.0 - * - * @param[in] show Set to @c true to also show the control, @n - * else @c false - * @remarks This method posts a draw event in the event queue. @n - * Drawing requested by %RequestRedraw() occurs when the draw event is fired to the control. - */ - void RequestRedraw(bool show = true) const; - - /** - * Creates and returns a graphics canvas whose bounds (that is, position and size) are equal to those - * of the control. - * - * @since 2.0 - * - * @return The graphic canvas of the control, @n - * else @c null if an exception occurs - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. - * @remarks The method allocates a Tizen::Graphics::Canvas whose bounds are equal to that of the control. - * It is the developer's responsibility to deallocate the canvas after use. - * The canvas is guaranteed to be valid only if the properties of the parent controls of the canvas remain unchanged. - * Therefore, one must delete previously allocated canvas and create a new canvas using the %GetCanvasN() method - * if the size or position of the control is changed. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * @remarks The Frame and Form (and between different Form instances) share a single frame-buffer. Therefore, - * if custom drawing is performed on the graphic canvas of Frame and Form - * then it will appear on the screen regardless of which control is currently visible on the screen. - * @see GetCanvasN(const Tizen::Graphics::Rectangle& bounds) const - * @see GetCanvasN(int x, int y, int width, int height) const - * @code - * result - * MyForm::OnDraw(void) - * { - * result r = E_SUCCESS; - * Canvas* pCanvas = GetCanvasN(); - * if (pCanvas != null) - * { - * // add your drawing code here - * } - * if (pCanvas) - * delete pCanvas; - * // Do not call Show(). It will be called automatically after OnDraw() callback. - * return r; - * } - * @endcode - */ - Tizen::Graphics::Canvas* GetCanvasN(void) const; - - /** - * Creates and returns a graphic canvas of the control of the specified position and size. - * - * @since 2.0 - * - * @return The graphic canvas of the control, @n - * else @c null if an exception occurs - * @param[in] bounds The bounds of the graphic canvas - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE The specified bounds does not intercept with the bounds of the control. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. - * @remarks Only the graphic canvas of displayable controls can be obtained. - * If the specified area is not inside the control, - * the graphics canvas of overlapped area between the control and the specified bound is returned. @n - * @remarks The method allocates an Tizen::Graphics::Canvas whose bounds are equal to that of the control. - * It is the developer's responsibility to deallocate the canvas after use. - * The canvas is guaranteed to be valid only if the properties of the parent controls of the canvas remain unchanged. - * Therefore, one must delete previously allocated canvas and create a new canvas using the %GetCanvasN() method - * if the size or position of the control is changed. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * @remarks The Frame and Form (and between different Form instances) share a single frame-buffer. Therefore, - * if custom drawing is performed on the graphic canvas of Frame and Form - * then it will appear on the screen regardless of which control is currently visible on the screen. - * @see GetCanvasN(void) const - * @see GetCanvasN(int x, int y, int width, int height) const - */ - Tizen::Graphics::Canvas* GetCanvasN(const Tizen::Graphics::Rectangle& bounds) const; - - /** - * Creates and returns a graphic canvas of the specified position and size in the control. - * - * @since 2.0 - * - * @return The graphic canvas of the control, @n - * else @c null if an exception occurs - * @param[in] x The x position relative to the top-left corner of the control - * @param[in] y The y position relative to the top-left corner of the control - * @param[in] width The width of a graphic canvas - * @param[in] height The height of a graphic canvas - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE The specified bounds does not intercept with the bounds of the control. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. - * @remarks Only the graphic canvas of displayable controls can be obtained. - * If the specified area is not inside the control, - * the graphics canvas of the overlapped area between the control and the specified bound is returned. @n - * @remarks The method allocates an Tizen::Graphics::Canvas whose bounds are equal to that of the control. - * It is the developer's responsibility to deallocate the canvas after use. - * The canvas is guaranteed to be valid only if properties of the parent controls of the canvas remain unchanged. - * Therefore, one must delete the previously allocated canvas and create a new canvas using the %GetCanvasN() method - * if the size or position of the control is changed. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * @remarks The Frame and Form (and between different Form instances) share a single frame-buffer. Therefore, - * if custom drawing is performed on the graphic canvas of Frame and Form - * then it will appear on the screen regardless of which control is currently visible on the screen. - * @see GetCanvasN(void) const - * @see GetCanvasN(const Tizen::Graphics::Rectangle& bounds) const - */ - Tizen::Graphics::Canvas* GetCanvasN(int x, int y, int width, int height) const; - - /** - * Checks whether the control is currently visible on the screen. - * - * @since 2.0 - * - * @return @c true if the control is currently visible on the screen, @n - * else @c false - * @remarks If this method is called before the control is added to a parent, @c false is returned. - * @see GetShowState() - * @see SetShowState() - */ - bool IsVisible(void) const; - - /** - * Gets the current show state of the control. - * - * @since 2.0 - * - * @return The show state of the control - * @remarks Even if the control's state is "show", the control may not be visible. - * @see SetShowState() - * @see IsVisible() - */ - bool GetShowState(void) const; - - /** - * Sets the show state of the control. - * - * @since 2.0 - * - * @return An error code - * @param[in] state The new show state - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. - * Note: This control cannot be displayed. - * @exception E_SYSTEM A system error has occurred. - * @remarks Do not override this method. - * @remarks Even if this method is invoked, the control is not drawn or shown. @n - * To draw and show the control, use Invalidate() method. @n - * Once the control's show state is set to @c false, - * the show state needs to be set to @c true again before you draw and show the control. - * @see GetShowState() - * @see Invalidate() - */ - result SetShowState(bool state); - - /** - * Gets the dedicated %VisualElement instance for this control. - * - * @since 2.0 - * - * @return An instance of the VisualElement - * @remarks If an application developer modifies the state of the returned VisualElement - * and the host control is not aware of this change, then the control may behave egregiously. - * It is highly recommended to restore the %VisualElement state to avoid such conflicts. - */ - Tizen::Ui::Animations::VisualElement* GetVisualElement(void) const; - - /** - * Gets the parent of the control. - * - * @since 2.0 - * - * @return The current parent of the control - */ - Container* GetParent(void) const; - - /** - * Gets the name of the control. - * - * @since 2.0 - * - * @return The name of the control - */ - Tizen::Base::String GetName(void) const; - - /** - * Sets the name of the control. - * - * @since 2.0 - * - * @param[in] name The name of the control - */ - void SetName(const Tizen::Base::String& name); - - /** - * Checks whether the control is focusable. - * - * @since 2.0 - * - * @return @c true if control is focusable, @n - * else @c false - * @remarks The focus ability of the container classes like Panel is @c false by default. - */ - bool IsFocusable(void) const; - - /** - * Sets the focus ability of the control. @n - * Non-Focusable controls cannot take the key focus. - * - * @since 2.0 - * - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. - * Note: The control does not permit to change its focus ability. - * @exception E_SYSTEM A system error has occurred. - * @remarks The focus ability of the container classes like Panel is @c false by default. - * @remarks The RadioGroup class does not render the UI. - * Therefore, RadioGroup::SetFocusable() returns @c E_SYSTEM. - */ - result SetFocusable(bool focusable); - - /** - * Checks whether the control currently has the input focus. - * - * @since 2.0 - * - * @return @c true if the control currently has the input focus, @n - * else @c false - * @remarks If this method is called before the control is added to a parent, @c false is returned. - * @see SetFocus() - */ - bool HasFocus(void) const; - - /** - * Sets the focus to the control. @n - * This method is called if the control needs to listen to user input events such as key pressed. - * - * @since 2.0 - * - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. - * Note: This control cannot be displayed. - * @exception E_INVALID_CONDITION The control is not contained in, or is not the top z-order frame or form. - * @remarks Do not override this method. - */ - result SetFocus(void); - - /** - * Checks whether the control is enabled. - * - * @since 2.0 - * - * @return @c true if the control is enabled, @n - * else @c false - * @remarks If this method is called before the control is added to a parent, @c false is returned. - * @see SetEnabled() - */ - bool IsEnabled(void) const; - - /** - * Enables or disables the control. @n - * Only an enabled control can respond to the user input. By default, the control is enabled. - * - * @since 2.0 - * - * @return An error code - * @param[in] enable The new state of the object - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. - * @exception E_SYSTEM A system error has occurred. - * @remarks Do not override this method. - */ - result SetEnabled(bool enable); - - /** - * Checks whether the device is in touch mode. @n - * When the user interacts with the device by touching it, the device is in touch mode. - * - * @since 2.0 - * - * @return @c true if the device is in touch mode, @n - * else @c false - * @remarks This method returns @c false, for devices with QWERTY keyboard. - * The user can navigate the UI using directional keys. - */ - bool IsInTouchMode(void) const; - - /** - * Enables or disables the drag operation in the %Control. - * - * @since 2.0 - * - * @param[in] enable Set to @c true to enable the drag operation, @n - * else @c false - * @see SetDropEnabled() - */ - void SetDragEnabled(bool enable); - - /** - * Enables or disables the drop operations in the %Control. - * - * @since 2.0 - * - * @param[in] enable Set to @c true to enable drop operations, @n - * else @c false - * @remarks To receive drop event, control's drag property has to be enabled. - * @see SetDragEnabled() - */ - void SetDropEnabled(bool enable); - - /** - * Sends a user event to the control. - * - * @since 2.0 - * - * @param[in] requestId The user-defined event ID - * @param[in] pArgs A pointer to the argument list - * @remarks This method posts a user event in the event queue - * and returns immediately to support asynchronous actions of the framework. - * @see OnUserEventReceived() - */ - void SendUserEvent(RequestId requestId, const Tizen::Base::Collection::IList* pArgs) const; - - /** - * Stops the current UI event dispatch sequence by indicating the current input event is consumed. - * - * @since 2.0 - * - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - * @remarks If this method is invoked during an UI event (key or touch) propagation sequence, - * the method will stop the propagation and consequently the system will not be notified of the event. @n - * The method will not have any effect if no UI event is being dispatched. @n - * It is recommended that this method is called within IKeyEventListener or - * ITouchEventListener to stop the event from propagating to the next step. - */ - result ConsumeInputEvent(void); - - /** - * Gets the control animator of the current instance of %Control - * - * @since 2.0 - * - * @return A pointer to ControlAnimator, @n - * else @c null if this instance is not constructed or not added to a parent or non-animatable - */ - Tizen::Ui::Animations::ControlAnimator* GetControlAnimator(void) const; - - /** - * Adds the gesture detector to the %Control. @n - * The added gesture detector receives touch events prior to %Control. - * - * @since 2.0 - * - * @return An error code - * @param[in] gestureDetector The gesture detector - * @exception E_SUCCESS The method is successful. - * @see RemoveGestureDetector() - */ - result AddGestureDetector(const TouchGestureDetector& gestureDetector); - - /** - * Removes the gesture detector from the %Control. - * - * @since 2.0 - * - * @return An error code - * @param[in] gestureDetector The gesture detector - * @exception E_SUCCESS The method is successful. - * @see AddGestureDetector() - */ - result RemoveGestureDetector(const TouchGestureDetector& gestureDetector); - - /** - * @if OSPDEPREC - * Gets the composite mode for merging with other controls. - * - * @brief [Deprecated] - * @deprecated This method is deprecated because changing composition mode is not allowed any more. - * @since 2.0 - * - * @return The composite mode - * @exception E_SUCCESS The method is successful. - * @remarks In Tizen, this method only returns @c COMPOSITE_MODE_ALPHA_BLENDING. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * @endif - */ - Tizen::Ui::CompositeMode GetCompositeMode(void) const; - - /** - * @if OSPDEPREC - * Sets the composite mode for merging with other controls. - * - * @brief [Deprecated] - * @deprecated This method is deprecated because changing composition mode is not allowed any more. - * @since 2.0 - * - * @return An error code - * @param[in] compositeMode The composite mode - * @exception E_SUCCESS The method is successful. - * @exception E_UNSUPPORTED_OPERATION The method is not supported. - * @remarks In Tizen, only @c COMPOSITE_MODE_ALPHA_BLENDING is allowed. - * Otherwise, this method returns @c E_UNSUPPORTED_OPERATION. - * @endif - */ - result SetCompositeMode(Tizen::Ui::CompositeMode compositeMode); - - /** - * @if OSPDEPREC - * Gets the chroma key color value that is used for the control composition. - * - * @brief [Deprecated] - * @deprecated This method is deprecated because chroma key color is not supported any more. - * @since 2.0 - * - * @return The chroma key color - * @exception E_UNSUPPORTED_OPERATION The method is not supported. - * @remarks In Tizen, this method always fails and returns Tizen::Graphics::Color(0, 0, 0, 0). - * @remarks The specific error code can be accessed using the GetLastResult() method. - * @endif - */ - Tizen::Graphics::Color GetChromaKeyColor(void) const; - - /** - * @if OSPDEPREC - * Sets the chroma key color value that is used for the control composition. - * - * @brief [Deprecated] - * @deprecated This method is deprecated because chroma key color is not supported any more. - * @since 2.0 - * - * @return An error code - * @param[in] chromaKeyColor The chroma key color - * @exception E_UNSUPPORTED_OPERATION The method is not supported. - * @remarks In Tizen, this method always fails. - * @endif - */ - result SetChromaKeyColor(Tizen::Graphics::Color chromaKeyColor); - - /** - * Captures the composited scene of the Panel control. - * - * @since 2.0 - * - * @return A Tizen::Graphics::Bitmap instance that captures the current composited scene of the Panel control, @n - * else @c null if an error occurs - * @exception E_SUCCESS The method is successful. - * @exception E_UNSUPPORTED_OPERATION This method is not supported. - * @exception E_SYSTEM A system error has occurred. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * @remarks This method is not supported in the following class that is derived from Panel class: - * @li OverlayPanel - * @remarks The bounds of the %Panel control must be within the client area of the Form control to get a valid composited scene. - */ - Tizen::Graphics::Bitmap* GetCapturedBitmapN(void) const; - - /** - * Gets the position and the size of the invalidated bounds. - * - * @since 2.0 - * - * @return An instance of Tizen::Graphics::Rectangle that represents the position of top-left corner, - * the width, and the height of the invalidated bounds - */ - Tizen::Graphics::Rectangle GetInvalidatedBounds(void) const; - - /** - * Enables or disables the multi-point touch of the %Control. - * - * @since 2.0 - * - * @param[in] enable A Boolean flag indicating whether to enable the multi-point touch - * - * @see IsMultipointTouchEnabled() - */ - - void SetMultipointTouchEnabled(bool enable); - - /** - * Checks whether the multi-point touch is enabled. - * - * @since 2.0 - * - * @return @c true if the multi-point touch is enabled, @n - * else @c false - * @see SetMultipointTouchEnabled() - */ - bool IsMultipointTouchEnabled(void) const; - - /** - * Gets the accessibility container. - * - * @since 2.0 - * - * @return The accessibilit container of the control, if the control supports accessibility feature. @n - * Else @c null. - * @see AccessibilityContainer::GetOwner() - */ - const AccessibilityContainer* GetAccessibilityContainer(void) const; - - /** - * Gets the accessibility container. - * - * @since 2.0 - * - * @return The accessibilit container of the control, if the control supports accessibility feature. @n - * Else @c null. - * @see AccessibilityContainer::GetOwner() - */ - AccessibilityContainer* GetAccessibilityContainer(void); - -protected: - /** - * Gets the default key event listener. - * - * @since 2.0 - * - * @return The default key event listener, @n - * else @null is returned if listener is not set or a system error has occurred - * @see SetDefaultKeyEventListener() - */ - IKeyEventListener* GetDefaultkeyEventListener(void) const; - - /** - * Gets the default touch event listener. - * - * @since 2.0 - * - * @return The default touch event listener @n - * If not listener has been set or a system error has occurred @c null is returned. - * @see SetDefaultTouchEventListener() - */ - ITouchEventListener* GetDefaultTouchEventListener(void) const; - - /** - * Sets the default key event listener. - * - * @since 2.0 - * - * @return An error code - * @param[in] pDefaultListener The default key event listener - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - * @remarks The registered listener will be notified to handle the key events - * after all application event listeners have been notified. - * @see GetDefaultkeyEventListener() - */ - result SetDefaultKeyEventListener(IKeyEventListener* pDefaultListener); - - /** - * Sets the default touch event listener. - * - * @since 2.0 - * - * @return An error code - * @param[in] pDefaultListener The default touch event listener - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - * @remarks The registered listener will be notified to handle the touch events - * after all application event listeners have been notified. - * @see GetDefaultTouchEventListener() - */ - result SetDefaultTouchEventListener(ITouchEventListener* pDefaultListener); - - /** - * The object is not fully constructed after this constructor is called. For full construction, the Construct() method must be called right after calling this constructor. - * - * @since 2.0 - */ - Control(void); - - /** - * This method is for internal use only. Using this method can cause behavioral, security-related, - * and consistency-related issues in the application. - * - * Initializes this instance of %Control. - * - * @since 2.0 - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - */ - result Construct(void); - - /** - * Frees the resources allocated by Construct(). - * - * @since 2.0 - */ - void Dispose(void); - -protected: - _ControlImpl* _pControlImpl; - - // - // This method is for internal use only. Using this method can cause behavioral, security-related, - // and consistency-related issues in the application. - // - // This method is reserved and may change its name at any time without prior notice. - // - virtual void Control_Reserved1(void) {} - - // - // This method is for internal use only. Using this method can cause behavioral, security-related, - // and consistency-related issues in the application. - // - // This method is reserved and may change its name at any time without prior notice. - // - virtual void Control_Reserved2(void) {} - - // - // This method is for internal use only. Using this method can cause behavioral, security-related, - // and consistency-related issues in the application. - // - // This method is reserved and may change its name at any time without prior notice. - // - virtual void Control_Reserved3(void) {} - - // - // This method is for internal use only. Using this method can cause behavioral, security-related, - // and consistency-related issues in the application. - // - // This method is reserved and may change its name at any time without prior notice. - // - virtual void Control_Reserved4(void) {} - - // - // This method is for internal use only. Using this method can cause behavioral, security-related, - // and consistency-related issues in the application. - // - // This method is reserved and may change its name at any time without prior notice. - // - virtual void Control_Reserved5(void) {} - - // - // This method is for internal use only. Using this method can cause behavioral, security-related, - // and consistency-related issues in the application. - // - // This method is reserved and may change its name at any time without prior notice. - // - virtual void Control_Reserved6(void) {} - -private: - // - // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects. - // - Control(const Control& rhs); - - // - // The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects. - // - Control& operator =(const Control& rhs); - -private: - friend class _ControlImpl; -}; // Control - -}} // Tizen::Ui - -#endif // _FUI_CONTROL_H_ +// +// Open Service Platform +// Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. +// +// Licensed under the Flora License, Version 1.0 (the License); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://floralicense.org/license/ +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an AS IS BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +/** + * @file FUiControl.h + * @brief This is the header file for the %Control class. + * + * This header file contains the declarations of the %Control class. + */ + +#ifndef _FUI_CONTROL_H_ +#define _FUI_CONTROL_H_ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +namespace Tizen { namespace Ui { namespace Animations { +class ControlAnimator; +class VisualElement; +}}} + +namespace Tizen { namespace Ui { + +class AccessibilityContainer; +class Container; +class _ControlImpl; +class TouchGestureDetector; + +/** + * @class Control + * @brief This class is the abstract base class of all the UI control classes. + * + * @since 2.0 + * + * @remarks In order for a control to be displayed, it must first be bound to a window of the underlying window system. The control's window is + * created when it (or its ancestor) is added to a valid control containment hierarchy. A containment hierarchy is valid if and + * only if the root of the hierarchy is an instance of the Window class. + * + * The %Control class is the abstract base class of all user interface elements. It encapsulates a + * "window" of the underlying window system, and provides the infrastructure necessary for the + * elements to respond to user inputs. The %Control class also determines how a key event is dispatched + * and processed. + * + * For more information on the class features, see UI Controls. + * + * + * The following examples demonstrate how to use the %Control class. + * + * Size and Position + * + * @code + * // Sets the size + * pControl->SetSize(100, 100); // 100 pixels wide and 100 pixels long + * + * // Sets the position + * pControl->SetPosition(5, 5); // Control is drawn 5 pixels down and 5 pixels left from the top-left corner of its parent + * @endcode + * + * Draw and Show + * + * @code + * // Gets a instance of Canvas + * Canvas* pCanvas = pControl->GetCanvasN(); + * + * // Fills the canvas with white color + * pCanvas->Clear(Tizen::Graphics::Color(255, 255, 255)); + * + * // Shows changes on screen + * pControl->Invalidate(true); + * + * delete pCanvas; + * @endcode + * + * Key and input focus + * + * @code + * // Implements MyKeyEventListener + * IKeyEventListener* pKeyListener = new MyKeyEventListener(); + * pControl->SetFocus(); + * + * // The added key listener should be deleted after use + * pControl->AddKeyEventListener(*pKeyListener); + * @endcode + * + */ +class _OSP_EXPORT_ Control + : public Tizen::Base::Object +{ + +public: + /** + * This destructor overrides Tizen::Base::Object::~Object(). + * + * @since 2.0 + */ + virtual ~Control(void); + + /** + * Adds the IFocusEventListener instance to the %Control instance. @n + * The added listener gets notified when the control gains or loses its focus. + * + * @since 2.0 + * + * @param[in] listener The event listener to add + * @see RemoveFocusEventListener() + */ + void AddFocusEventListener(IFocusEventListener& listener); + + /** + * Adds the IKeyEventListener instance to the %Control instance. @n + * The added listener gets notified when a key is pressed, released, or long pressed. + * + * @since 2.0 + * + * @param[in] listener The event listener to add + * @see RemoveKeyEventListener() + */ + void AddKeyEventListener(IKeyEventListener& listener); + + /** + * Adds the ITouchEventListener instance to the %Control instance. @n + * The added listener gets notified when a touch event such as a press or a release is fired. + * + * @since 2.0 + * + * @param[in] listener The event listener to add + * @see RemoveTouchEventListener() + */ + void AddTouchEventListener(ITouchEventListener& listener); + + /** + * Adds the ITouchModeChangedEventListener instance to the %Control instance. @n + * The added listener gets notified when the device's touch mode is changed. + * + * @since 2.0 + * + * @param[in] listener The event listener to add + * @see RemoveTouchModeChangedEventListener() + */ + void AddTouchModeChangedEventListener(Tizen::Ui::ITouchModeChangedEventListener& listener); + + /** + * Adds the IDragDropEventListener instance to the %Control instance. @n + * The added listener gets notified when a drag or a drop happens in the control. + * + * @since 2.0 + * + * @param[in] listener The event listener to add + * @see RemoveDragDropEventListener() + */ + void AddDragDropEventListener(IDragDropEventListener& listener); + + /* + * Adds the IDragDropEventListenerF instance to the %Control instance. @n + * The added listener gets notified when a drag or a drop happens in the control. + * + * @since 2.1 + * + * @param[in] listener The event listener to add + * @see RemoveDragDropEventListenerF() + */ + void AddDragDropEventListener(IDragDropEventListenerF& listener); + + /** + * Removes the focus listener instance. @n + * The removed listener is not notified even when focus events are fired. + * + * @since 2.0 + * + * @param[in] listener The listener to remove + * @see AddFocusEventListener() + */ + void RemoveFocusEventListener(IFocusEventListener& listener); + + /** + * Removes the key event listener instance. @n + * The removed listener is not notified even when key events are fired. + * + * @since 2.0 + * + * @param[in] listener The listener to remove + * @see AddKeyEventListener() + */ + void RemoveKeyEventListener(IKeyEventListener& listener); + + /** + * Removes the touch event listener instance. @n + * The removed listener is not notified even when touch events are fired. + * + * @since 2.0 + * + * @param[in] listener The listener to remove + * @see AddTouchEventListener() + */ + void RemoveTouchEventListener(ITouchEventListener& listener); + + /** + * Removes the touch mode changed event listener instance. @n + * The removed listener is not notified even when the touch mode changed events are fired. + * + * @since 2.0 + * + * @param[in] listener The listener to remove + * @see AddTouchModeChangedEventListener() + */ + void RemoveTouchModeChangedEventListener(Tizen::Ui::ITouchModeChangedEventListener& listener); + + /** + * Adds the IDragDropEventListener instance to the %Control instance. @n + * The added listener gets notified when a drag or a drop happens in the control. + * + * @since 2.0 + * + * @param[in] listener The event listener to add + * @see Tizen::Ui::IDragDropEventListener::OnTouchDragged() + * @see Tizen::Ui::IDragDropEventListener::OnTouchDropped() + * @see RemoveDragDropEventListener() + */ + void RemoveDragDropEventListener(IDragDropEventListener& listener); + + /* + * Adds the IDragDropEventListenerF instance to the %Control instance. @n + * The added listener gets notified when a drag or a drop happens in the control. + * + * @since 2.1 + * + * @param[in] listener The event listener to add + * @see Tizen::Ui::IDragDropEventListenerF::OnTouchDraggedF() + * @see Tizen::Ui::IDragDropEventListenerF::OnTouchDroppedF() + * @see RemoveDragDropEventListenerF() + */ + void RemoveDragDropEventListenerF(IDragDropEventListenerF& listener); + + /** + * Overrides this method to provide user-specific initialization code before the control is added to a container. + * + * @since 2.0 + * + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_FAILURE The method has failed. + * @remarks This method is called when the control is about to be added to a container. + * @remarks To cancel adding this control to the parent, return @c E_FAILURE in this method. + * @see OnTerminating() + */ + virtual result OnInitializing(void); + + /** + * Overrides this method to provide user-specific termination code. + * + * @if OSPCOMPAT + * @brief [Compatibility] + * @endif + * @since 2.0 + * + * @if OSPCOMPAT + * @compatibility This method has compatibility issues with OSP compatible applications. @n + * For more information, see @ref CompOnTerminatingPage "here". + * @endif + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_FAILURE The method has failed. + * @remarks This method is called right before the control is removed from the container, or Destroy() method is being called. + * @remarks To cancel the removal or Destroy() operation, return any exception other than E_SUCCESS. + * @see OnInitializing() + */ + virtual result OnTerminating(void); + + /** + * @if OSPCOMPAT + * @page CompOnTerminatingPage Compatibility for OnTerminating() + * @section CompOnterminatingPageIssueSection Issues + * Implementation of this method in %Tizen API versions prior to 2.1 has the following issue: @n + * -# OnTerminating() callback is called from child to parent. + * + * @section CompOnTerminatingPageSolutionSection Resolutions + * The issue mentioned above is resolved in %Tizen API version 2.1 as follows: @n + * -# OnTerminating() callback is called from parent to child. + * @endif + */ + + /** + * Called asynchronously when the user event that is sent by SendUserEvent() method is + * dispatched to the control. + * + * @since 2.0 + * + * @param[in] requestId The user-defined event ID + * @param[in] pArgs A pointer to the argument list + * @see SendUserEvent() + */ + virtual void OnUserEventReceivedN(RequestId requestId, Tizen::Base::Collection::IList* pArgs); + + /** + * Deallocates this instance after removing all child controls of this control + * + * @since 2.1 + * + * @exception E_SUCCESS The method is successful. + * @remarks The control will be deleted from memory. Before it is deleted, OnTerminating() is called if it is attached to the main tree. + * @remarks If OnTerminating() method is overrided and returns an exception, that exception will be propagated. + * @see Tizen::Ui::Control:OnTerminating() + */ + result Destroy(void); + + /** + * Checks whether the control is movable. + * + * @since 2.0 + * + * @return @c true if the control is movable, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @remarks When control is not movable SetPosition() and SetBounds() return @c E_UNSUPPORTED_OPERATION. + * @see SetPosition() + * @see SetBounds() + */ + bool IsMovable(void) const; + + /** + * Checks whether the control is resizable. + * + * @since 2.0 + * + * @return @c true if the control is resizable, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @remarks Even if this method returns @c true, the size can be changed internally. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @remarks When control is not resizable, + * SetSize(), SetBounds(), SetMinimumSize() and SetMaximumSize() return @c E_UNSUPPORTED_OPERATION. + * @see SetSize() + * @see SetBounds() + * @see SetMinimumSize() + * @see SetMaximumSize() + */ + bool IsResizable(void) const; + + /** + * Gets the position and the size of the control. + * + * @since 2.0 + * + * @return An instance of the Tizen::Graphics::Rectangle that represents the position of top-left corner, + * the width, and the height of the control + * @remarks The shape of the control is rectangular that is defined by the top-left point, + * and the width or height. The position + * of the top-left point is relative to the top-left corner of the parent container. + * @see SetBounds() + */ + Tizen::Graphics::Rectangle GetBounds(void) const; + + /* + * Gets the position and the size of the control. + * + * @since 2.1 + * + * @return An instance of the Tizen::Graphics::FloatRectangle that represents the position of top-left corner, + * the width, and the height of the control + * @remarks The shape of the control is rectangular that is defined by the top-left point, + * and the width or height. The position + * of the top-left point is relative to the top-left corner of the parent container. + * @see SetBounds() + */ + Tizen::Graphics::FloatRectangle GetBoundsF(void) const; + + /** + * Gets the position and the size of the control. + * + * @since 2.0 + * + * @param[out] x The x position of top-left corner of the control + * @param[out] y The y position of top-left corner of the control + * @param[out] width The width of the rectangular region + * @param[out] height The height of the rectangular region + * @remarks The shape of the control is regarded as a rectangle that is defined + * by the top-left point and the width or height. + * The position of the top-left point is relative to the top-left corner of + * the parent container. + * @see SetBounds() + */ + void GetBounds(int& x, int& y, int& width, int& height) const; + + /* + * Gets the position and the size of the control. + * + * @since 2.1 + * + * @param[out] x The x position of top-left corner of the control + * @param[out] y The y position of top-left corner of the control + * @param[out] width The width of the rectangular region + * @param[out] height The height of the rectangular region + * @remarks The shape of the control is regarded as a rectangle that is defined + * by the top-left point and the width or height. + * The position of the top-left point is relative to the top-left corner of + * the parent container. + * @see SetBounds() + */ + void GetBounds(float& x, float& y, float& width, float& height) const; + + /** + * Gets the position of the control's top-left corner. + * + * @since 2.0 + * + * @return The position of the control's top-left corner + * @remarks The position of top-left corner is relative to the top-left corner of its parent container. + * @see GetBounds() + */ + Tizen::Graphics::Point GetPosition(void) const; + + /* + * Gets the position of the control's top-left corner. + * + * @since 2.1 + * + * @return The position of the control's top-left corner + * @remarks The position of top-left corner is relative to the top-left corner of its parent container. + * @see GetBounds() + */ + Tizen::Graphics::FloatPoint GetPositionF(void) const; + + /** + * Gets the position of the control's top-left corner. + * + * @since 2.0 + * + * @param[out] x The x position of the control's top-left corner + * @param[out] y The y position of the control's top-left corner + * @remarks The position of top-left corner is relative to the top-left corner of its parent container. + * @see GetBounds() + */ + void GetPosition(int& x, int& y) const; + + /* + * Gets the position of the control's top-left corner. + * + * @since 2.1 + * + * @param[out] x The x position of the control's top-left corner + * @param[out] y The y position of the control's top-left corner + * @remarks The position of top-left corner is relative to the top-left corner of its parent container. + * @see GetBounds() + */ + void GetPosition(float& x, float& y) const; + + /** + * Gets the size of the control. + * + * @since 2.0 + * + * @return The size of the control + * @see GetBounds() + */ + Tizen::Graphics::Dimension GetSize(void) const; + + /* + * Gets the size of the control. + * + * @since 2.1 + * + * @return The size of the control + * @see GetBounds() + */ + Tizen::Graphics::FloatDimension GetSizeF(void) const; + + /** + * Gets the size of the control. + * + * @since 2.0 + * + * @param[out] width The width of the control + * @param[out] height The height of the control + * @see GetBounds() + */ + void GetSize(int& width, int& height) const; + + /* + * Gets the size of the control. + * + * @since 2.1 + * + * @param[out] width The width of the control + * @param[out] height The height of the control + * @see GetBounds() + */ + void GetSize(float& width, float& height) const; + + /** + * Gets the x position of the control. @n + * The position of control is relative to the top-left corner of its parent container. + * + * @since 2.0 + * + * @return The x position of the control + * @see GetBounds() + * @see GetPosition() + * @see GetY() + */ + int GetX(void) const; + + /* + * Gets the x position of the control. @n + * The position of control is relative to the top-left corner of its parent container. + * + * @since 2.1 + * + * @return The x position of the control + * @see GetBounds() + * @see GetPosition() + * @see GetYF() + */ + float GetXF(void) const; + + /** + * Gets the y position of the control. @n + * The position of control is relative to the top-left corner of its parent container. + * + * @since 2.0 + * + * @return The y position of the control + * @see GetBounds() + * @see GetPosition() + * @see Get() + */ + int GetY(void) const; + + /* + * Gets the y position of the control. @n + * The position of control is relative to the top-left corner of its parent container. + * + * @since 2.1 + * + * @return The y position of the control + * @see GetBounds() + * @see GetPosition() + * @see GetXF() + */ + float GetYF(void) const; + + /** + * Gets the width of the control. + * + * @since 2.0 + * + * @return The width of the control + * @see GetBounds() + * @see GetSize() + * @see GetHeight() + */ + int GetWidth(void) const; + + /* + * Gets the width of the control. + * + * @since 2.1 + * + * @return The width of the control + * @see GetBounds() + * @see GetSizeF() + * @see GetHeightF() + */ + float GetWidthF(void) const; + + /** + * Gets the height of the control. + * + * @since 2.0 + * + * @return The height of the control + * @see GetBounds() + * @see GetSize() + * @see GetWidth() + */ + int GetHeight(void) const; + + /* + * Gets the height of the control. + * + * @since 2.1 + * + * @return The height of the control + * @see GetBounds() + * @see GetSizeF() + * @see GetWidthF() + */ + float GetHeightF(void) const; + + /** + * Gets the minimum size of the control. + * + * @since 2.0 + * + * @return The minimum size of the control + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @remarks The first call of the method returns the system-defined minimum size. + * @remarks The specific error code can be accessed using the GetLastResult() method. + */ + Tizen::Graphics::Dimension GetMinimumSize(void) const; + + /* + * Gets the minimum size of the control. + * + * @since 2.1 + * + * @return The minimum size of the control + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @remarks The first call of the method returns the system-defined minimum size. + * @remarks The specific error code can be accessed using the GetLastResult() method. + */ + Tizen::Graphics::FloatDimension GetMinimumSizeF(void) const; + + /** + * Gets the maximum size of the control. + * + * @since 2.0 + * + * @return The maximum size of the control + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @remarks The first call of the method returns the system-defined maximum size. + * @remarks The specific error code can be accessed using the GetLastResult() method. + */ + Tizen::Graphics::Dimension GetMaximumSize(void) const; + + /* + * Gets the maximum size of the control. + * + * @since 2.1 + * + * @return The maximum size of the control + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @remarks The first call of the method returns the system-defined maximum size. + * @remarks The specific error code can be accessed using the GetLastResult() method. + */ + Tizen::Graphics::FloatDimension GetMaximumSizeF(void) const; + + /** + * Gets a font of the control. + * + * @since 2.0 + * + * @return The font name set in the control @n + * else an empty string if the font is not set + * @see SetFont() + */ + Tizen::Base::String GetFont(void) const; + + /** + * Sets the position and size of the control. + * + * @since 2.0 + * + * @return An error code + * @param[in] rect The new bounds of the control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The control has not been constructed as yet. + * @exception E_UNSUPPORTED_OPERATION This control is neither movable nor resizable. + * @exception E_INVALID_ARG The specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + * @remarks Do not override this method. + * @remarks The size of the control must be within the range defined by the minimum size and the maximum size. + * @see IsMovable() + * @see IsResizable() + * @see GetMinimumSize() + * @see GetMaximumSize() + * @see SetPosition() + * @see SetSize() + */ + result SetBounds(const Tizen::Graphics::Rectangle& rect); + + /* + * Sets the position and size of the control. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect The new bounds of the control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The control has not been constructed as yet. + * @exception E_UNSUPPORTED_OPERATION This control is neither movable nor resizable. + * @exception E_INVALID_ARG The specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + * @remarks Do not override this method. + * @remarks The size of the control must be within the range defined by the minimum size and the maximum size. + * @see IsMovable() + * @see IsResizable() + * @see GetMinimumSize() + * @see GetMaximumSize() + * @see SetPosition() + * @see SetSiz() + */ + result SetBounds(const Tizen::Graphics::FloatRectangle& rect); + + /** + * Sets the position and size of the control. @n + * The position is set at (x, y), and the @c width and @c height parameters contain + * the width and height values of the object, respectively. + * + * @since 2.0 + * + * @return An error code + * @param[in] x The new x position of the control + * @param[in] y The new y position of the control + * @param[in] width The new width of the control + * @param[in] height The new height of the control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The control has not been constructed as yet. + * @exception E_UNSUPPORTED_OPERATION This control is neither movable nor resizable. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + * @remarks Do not override this method. + * @remarks The size of the control must be within the range defined by the minimum size and the maximum size. + * @see IsMovable() + * @see IsResizable() + * @see GetMinimumSize() + * @see GetMaximumSize() + * @see SetPosition() + * @see SetSize() + */ + result SetBounds(int x, int y, int width, int height); + + /* + * Sets the position and size of the control. @n + * The position is set at (x, y), and the @c width and @c height parameters contain + * the width and height values of the object, respectively. + * + * @since 2.1 + * + * @return An error code + * @param[in] x The new x position of the control + * @param[in] y The new y position of the control + * @param[in] width The new width of the control + * @param[in] height The new height of the control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The control has not been constructed as yet. + * @exception E_UNSUPPORTED_OPERATION This control is neither movable nor resizable. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + * @remarks Do not override this method. + * @remarks The size of the control must be within the range defined by the minimum size and the maximum size. + * @see IsMovable() + * @see IsResizable() + * @see GetMinimumSize() + * @see GetMaximumSize() + * @see SetPosition() + * @see SetSize() + */ + result SetBounds(float x, float y, float width, float height); + + /** + * Sets the relative position of the control. + * + * @since 2.0 + * + * @return An error code + * @param[in] Position The new position + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The control has not been constructed as yet. + * @exception E_UNSUPPORTED_OPERATION This control is not movable. + * @exception E_SYSTEM A system error has occurred. + * @remarks Do not override this method. + * @remarks The position of the control are relative to the top-left corner of its parent. + * @see IsMovable() + * @see SetBounds() + */ + result SetPosition(const Tizen::Graphics::Point& position); + + /* + * Sets the relative position of the control. + * + * @since 2.1 + * + * @return An error code + * @param[in] Position The new position + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The control has not been constructed as yet. + * @exception E_UNSUPPORTED_OPERATION This control is not movable. + * @exception E_SYSTEM A system error has occurred. + * @remarks Do not override this method. + * @remarks The position of the control are relative to the top-left corner of its parent. + * @see IsMovable() + * @see SetBounds() + */ + result SetPosition(const Tizen::Graphics::FloatPoint& position); + + /** + * Sets the position of the control. + * + * @since 2.0 + * @return An error code + * @param[in] x The new x position of the control + * @param[in] y The new y position of the control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The control has not been constructed as yet. + * @exception E_UNSUPPORTED_OPERATION This control is not movable. + * @exception E_SYSTEM A system error has occurred. + * @remarks Do not override this method. + * @remarks The x,y position of the control are relative to the top-left corner of its parent. + * @see IsMovable() + * @see SetBounds() + */ + result SetPosition(int x, int y); + + /* + * Sets the position of the control. + * + * @since 2.1 + * @return An error code + * @param[in] x The new x position of the control + * @param[in] y The new y position of the control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The control has not been constructed as yet. + * @exception E_UNSUPPORTED_OPERATION This control is not movable. + * @exception E_SYSTEM A system error has occurred. + * @remarks Do not override this method. + * @remarks The x,y position of the control are relative to the top-left corner of its parent. + * @see IsMovable() + * @see SetBounds() + */ + result SetPosition(float x, float y); + + /** + * Sets the size of the control. + * The @c width and @c height parameters contain the width and height values of the object, respectively. + * + * @since 2.0 + * + * @return An error code + * @param[in] size The new width and height + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The control has not been constructed as yet. + * @exception E_UNSUPPORTED_OPERATION This control is not resizable. + * @exception E_INVALID_ARG The specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + * @remarks Do not override this method. + * @remarks The size of the control must be within the range defined by the minimum size and the maximum size. + * @see IsResizable() + * @see GetMinimumSize() + * @see GetMaximumSize() + * @see SetBounds() + */ + result SetSize(const Tizen::Graphics::Dimension& size); + + /* + * Sets the size of the control. + * The @c width and @c height parameters contain the width and height values of the object, respectively. + * + * @since 2.1 + * + * @return An error code + * @param[in] size The new width and height + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The control has not been constructed as yet. + * @exception E_UNSUPPORTED_OPERATION This control is not resizable. + * @exception E_INVALID_ARG The specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + * @remarks Do not override this method. + * @remarks The size of the control must be within the range defined by the minimum size and the maximum size. + * @see IsResizable() + * @see GetMinimumSize() + * @see GetMaximumSize() + * @see SetBounds() + */ + result SetSize(const Tizen::Graphics::FloatDimension& size); + + /** + * Sets the size of the control. + * The @c width and @c height parameters contain the width and height values of the object, respectively. + * + * @since 2.0 + * + * @return An error code + * @param[in] width The new width of the control + * @param[in] height The new height of the control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The control has not been constructed as yet. + * @exception E_UNSUPPORTED_OPERATION This control is not resizable. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + * @remarks Do not override this method. + * @remarks The size of the control must be within the range defined by the minimum size and the maximum size. + * @see IsResizable() + * @see GetMinimumSize() + * @see GetMaximumSize() + * @see SetBounds() + */ + result SetSize(int width, int height); + + /* + * Sets the size of the control. + * The @c width and @c height parameters contain the width and height values of the object, respectively. + * + * @since 2.1 + * + * @return An error code + * @param[in] width The new width of the control + * @param[in] height The new height of the control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The control has not been constructed as yet. + * @exception E_UNSUPPORTED_OPERATION This control is not resizable. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + * @remarks Do not override this method. + * @remarks The size of the control must be within the range defined by the minimum size and the maximum size. + * @see IsResizable() + * @see GetMinimumSize() + * @see GetMaximumSize() + * @see SetBounds() + */ + result SetSize(float width, float height); + + /** + * Sets the minimum size of the control. + * + * @since 2.0 + * + * @return An error code + * @param[in] newMinDim The new minimum size of the control + * @exception E_SUCCESS The method is successful. + * @exception E_UNSUPPORTED_OPERATION This control is not resizable. + * @exception E_INVALID_ARG The specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + * @remarks This method can affect the maximum size and the current size of the control. @n + * The control needs to be redrawn to reflect the change in its size. @n + * If the current maximum size or the control size is smaller than the new minimum size, + * it becomes the same as the new minimum size. + * @see IsResizable() + */ + result SetMinimumSize(const Tizen::Graphics::Dimension& newMinDim); + + /* + * Sets the minimum size of the control. + * + * @since 2.1 + * + * @return An error code + * @param[in] newMinDim The new minimum size of the control + * @exception E_SUCCESS The method is successful. + * @exception E_UNSUPPORTED_OPERATION This control is not resizable. + * @exception E_INVALID_ARG The specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + * @remarks This method can affect the maximum size and the current size of the control. @n + * The control needs to be redrawn to reflect the change in its size. @n + * If the current maximum size or the control size is smaller than the new minimum size, + * it becomes the same as the new minimum size. + * @see IsResizable() + */ + result SetMinimumSize(const Tizen::Graphics::FloatDimension& newMinDim); + + /** + * Sets the maximum size of the control. + * + * @since 2.0 + * + * @return An error code + * @param[in] newMaxDim The new maximum size of the control + * @exception E_SUCCESS The method is successful. + * @exception E_UNSUPPORTED_OPERATION This control is not resizable. + * @exception E_INVALID_ARG The specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + * @remarks This method can affect the minimum size and the current size of the control. @n + * The control needs to be redrawn to reflect the change in its size. @n + * If the current minimum size or the control size is greater than the new maximum size, + * it becomes the same as the new maximum size. + * @see IsResizable() + */ + result SetMaximumSize(const Tizen::Graphics::Dimension& newMaxDim); + + /* + * Sets the maximum size of the control. + * + * @since 2.1 + * + * @return An error code + * @param[in] newMaxDim The new maximum size of the control + * @exception E_SUCCESS The method is successful. + * @exception E_UNSUPPORTED_OPERATION This control is not resizable. + * @exception E_INVALID_ARG The specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + * @remarks This method can affect the minimum size and the current size of the control. @n + * The control needs to be redrawn to reflect the change in its size. @n + * If the current minimum size or the control size is greater than the new maximum size, + * it becomes the same as the new maximum size. + * @see IsResizable() + */ + result SetMaximumSize(const Tizen::Graphics::FloatDimension& newMaxDim); + + /** + * Converts the specified screen position to the position in control's coordinate system. + * + * @since 2.0 + * + * @return The position relative to the top-left corner of the control's client-area + * @param[in] screenPosition The position relative to the top-left corner of the screen + * @see ConvertToScreenPosition() + */ + Tizen::Graphics::Point ConvertToControlPosition(const Tizen::Graphics::Point& screenPosition) const; + + /* + * Converts the specified screen position to the position in control's coordinate system. + * + * @since 2.1 + * + * @return The position relative to the top-left corner of the control's client-area + * @param[in] screenPosition The position relative to the top-left corner of the screen + * @see ConvertToScreenPosition() + */ + Tizen::Graphics::FloatPoint ConvertToControlPosition(const Tizen::Graphics::FloatPoint& screenPosition) const; + + /** + * Converts the specified position in the control's coordinate system to the screen position. + * + * @since 2.0 + * + * @return The position relative to the top-left corner of the screen + * @param[in] controlPosition The position relative to the top-left corner of the control's client-area + * @see ConvertToControlPosition() + */ + Tizen::Graphics::Point ConvertToScreenPosition(const Tizen::Graphics::Point& controlPosition) const; + + /* + * Converts the specified position in the control's coordinate system to the screen position. + * + * @since 2.1 + * + * @return The position relative to the top-left corner of the screen + * @param[in] controlPosition The position relative to the top-left corner of the control's client-area + * @see ConvertToControlPosition() + */ + Tizen::Graphics::FloatPoint ConvertToScreenPosition(const Tizen::Graphics::FloatPoint& controlPosition) const; + + /** + * Sets the font of the control. + * + * @since 2.0 + * + * @return An error code + * @param[in] fontName The app font name or system font name @n + * The app font name is retrieved using Tizen::Graphics::Font::GetFaceName(Tizen::Base::String& filepath). @n + * The system font name is retrieved using Tizen::Graphics::Font::GetSystemFontListN(). + * Sets an empty string to reset. + * @exception E_SUCCESS The method is successful. + * @exception E_FILE_NOT_FOUND The specified font cannot be found or accessed. + * @remarks At first, the value of @c fontName is considered app font name if it matches one of the face names of the font files which are located in @b '/res/font'. + * If not, the value of @c fontName is considered system font name if it matches one of the retrieved values using Tizen::Graphics::Font::GetSystemFontListN(). + * @remarks The control first attempts to find the control font. If it fails, then it searches for the application default font and the system font, in sequence. + * @see GetFont() + */ + result SetFont(const Tizen::Base::String& fontName); + + /** + * Checks whether the specified @c point is inside the control. + * + * @since 2.0 + * + * @return @c true if the specified @c point is inside the control, @n + * else @c false + * @param[in] point The point to check + * @remarks The specified @c point must be defined relative to the top-left corner of the control. + */ + bool Contains(const Tizen::Graphics::Point& point) const; + + /* + * Checks whether the specified @c point is inside the control. + * + * @since 2.1 + * + * @return @c true if the specified @c point is inside the control, @n + * else @c false + * @param[in] point The point to check + * @remarks The specified @c point must be defined relative to the top-left corner of the control. + */ + bool Contains(const Tizen::Graphics::FloatPoint& point) const; + + /** + * Checks whether the specified point is inside the control. + * + * @since 2.0 + * + * @return @c true if the specified point is inside the control, @n + * else @c false + * @param[in] x The x position of the point to check + * @param[in] y The y position of the point to check + * @remarks The specified point must be defined relative to the top-left corner of the control. + */ + bool Contains(int x, int y) const; + + /* + * Checks whether the specified point is inside the control. + * + * @since 2.1 + * + * @return @c true if the specified point is inside the control, @n + * else @c false + * @param[in] x The x position of the point to check + * @param[in] y The y position of the point to check + * @remarks The specified point must be defined relative to the top-left corner of the control. + */ + bool Contains(float x, float y) const; + + /** + * Draws child controls recursively. + * + * @if OSPCOMPAT + * @brief [Compatibility] + * @endif + * @since 2.0 + * + * @if OSPCOMPAT + * @compatibility This method has compatibility issues with OSP compatible applications. @n + * For more information, see @ref CompDrawPage "here". + * @endif + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n + * Note: This control cannot be displayed. + * @exception E_SYSTEM A system error has occurred. + * @remarks This method calls OnDraw() immediately in a synchronous way. + * @see Show() + */ + result Draw(void); + + /** + * @if OSPCOMPAT + * @page CompDrawPage Compatibility for Draw() + * @section CompDrawPageIssueSection Issues + * Implementation of this method in %Tizen API versions prior to 2.1 has the following issue: @n + * -# Draw() method draws child controls in a recursive way regardless of the visibility of the parent. + * + * @section CompDrawPageSolutionSection Resolutions + * The issue mentioned above is resolved in %Tizen API version 2.1 as follows: @n + * -# Draw() method does not draw child controls if the control itself is not visible. + * @endif + */ + + /** + * Draws the control. + * + * @since 2.0 + * + * @param[in] recursive Set to @c true to draw child controls recursively, @n + * else @c false + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n + * Note: This control cannot be displayed. + * @exception E_SYSTEM A system error has occurred. + * @remarks This method calls OnDraw() immediately in a synchronous way. + * @see Show() + */ + result Draw(bool recursive); + + /** + * Shows the control on the screen. + * + * @since 2.0 + * @final Although this method is virtual, it should not be overridden. + * If overridden, it may not work as expected. + * + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n + * Note: This control cannot be displayed. + * @exception E_SYSTEM A system error has occurred. + * @remarks Do not override this method. + */ + virtual result Show(void); + + /** + * Invalidates the control. + * + * @since 2.0 + * + * @param[in] recursive Set to @c true to invalidate child controls recursively, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n + * Note: This control cannot be displayed. + * @exception E_SYSTEM A system error has occurred. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @remarks OnDraw() is not called immediately, but called asynchronously just before the screen is updated. + * @see InvalidateBounds() + * @see Show() + */ + void Invalidate(bool recursive); + + /** + * Invalidates the control of the specified position and size. + * + * @since 2.0 + * + * @param[in] bounds The position relative to the top-left corner of the control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n + * Note: This control cannot be displayed. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @see Invalidate() + * @see Show() + */ + void InvalidateBounds(const Tizen::Graphics::Rectangle& bounds); + + /* + * Invalidates the control of the specified position and size. + * + * @since 2.1 + * + * @param[in] bounds The position relative to the top-left corner of the control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n + * Note: This control cannot be displayed. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @see Invalidate() + * @see Show() + */ + void InvalidateBounds(const Tizen::Graphics::FloatRectangle& bounds); + + /** + * Draws the control asynchronously. + * + * @since 2.0 + * + * @param[in] show Set to @c true to also show the %Control, @n + * else @c false + * @remarks This method posts a draw event in the event queue. @n + * Drawing requested by %RequestRedraw() occurs when the draw event is fired to the control. + */ + void RequestRedraw(bool show = true) const; + + /** + * Creates and returns a graphics canvas whose bounds (that is, position and size) are equal to those + * of the control. + * + * @since 2.0 + * + * @return The graphic canvas of the control, @n + * else @c null if an exception occurs + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * @remarks The method allocates a Tizen::Graphics::Canvas whose bounds are equal to that of the control. + * It is the developer's responsibility to deallocate the canvas after use. + * The canvas is guaranteed to be valid only if the properties of the parent controls of the canvas remain unchanged. + * Therefore, one must delete previously allocated canvas and create a new canvas using the %GetCanvasN() method + * if the size or position of the control is changed. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @remarks The Frame and Form (and between different Form instances) share a single frame-buffer. Therefore, + * if custom drawing is performed on the graphic canvas of Frame and Form + * then it will appear on the screen regardless of which control is currently visible on the screen. + * @see GetCanvasN(const Tizen::Graphics::Rectangle& bounds) const + * @see GetCanvasN(int x, int y, int width, int height) const + * @code + * result + * MyForm::OnDraw(void) + * { + * result r = E_SUCCESS; + * Canvas* pCanvas = GetCanvasN(); + * if (pCanvas != null) + * { + * // add your drawing code here + * } + * if (pCanvas) + * delete pCanvas; + * // Do not call Show(). It will be called automatically after OnDraw() callback. + * return r; + * } + * @endcode + */ + Tizen::Graphics::Canvas* GetCanvasN(void) const; + + /** + * Creates and returns a graphic canvas of the control of the specified position and size. + * + * @since 2.0 + * + * @return The graphic canvas of the control, @n + * else @c null if an exception occurs + * @param[in] bounds The bounds of the graphic canvas + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified bounds does not intercept with the bounds of the control. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * @remarks Only the graphic canvas of displayable controls can be obtained. + * If the specified area is not inside the control, + * the graphics canvas of overlapped area between the control and the specified bound is returned. @n + * @remarks The method allocates an Tizen::Graphics::Canvas whose bounds are equal to that of the control. + * It is the developer's responsibility to deallocate the canvas after use. + * The canvas is guaranteed to be valid only if the properties of the parent controls of the canvas remain unchanged. + * Therefore, one must delete previously allocated canvas and create a new canvas using the %GetCanvasN() method + * if the size or position of the control is changed. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @remarks The Frame and Form (and between different Form instances) share a single frame-buffer. Therefore, + * if custom drawing is performed on the graphic canvas of Frame and Form + * then it will appear on the screen regardless of which control is currently visible on the screen. + * @see GetCanvasN(void) const + * @see GetCanvasN(int x, int y, int width, int height) const + */ + Tizen::Graphics::Canvas* GetCanvasN(const Tizen::Graphics::Rectangle& bounds) const; + + /* + * Creates and returns a graphic canvas of the control of the specified position and size. + * + * @since 2.1 + * + * @return The graphic canvas of the control, @n + * else @c null if an exception occurs + * @param[in] bounds The bounds of the graphic canvas + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified bounds does not intercept with the bounds of the control. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * @remarks Only the graphic canvas of displayable controls can be obtained. + * If the specified area is not inside the control, + * the graphics canvas of overlapped area between the control and the specified bound is returned. @n + * @remarks The method allocates an Tizen::Graphics::Canvas whose bounds are equal to that of the control. + * It is the developer's responsibility to deallocate the canvas after use. + * The canvas is guaranteed to be valid only if the properties of the parent controls of the canvas remain unchanged. + * Therefore, one must delete previously allocated canvas and create a new canvas using the %GetCanvasN() method + * if the size or position of the control is changed. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @remarks The Frame and Form (and between different Form instances) share a single frame-buffer. Therefore, + * if custom drawing is performed on the graphic canvas of Frame and Form + * then it will appear on the screen regardless of which control is currently visible on the screen. + * @see GetCanvasN(void) const + * @see GetCanvasN(float x, float y, float width, float height) const + */ + Tizen::Graphics::Canvas* GetCanvasN(const Tizen::Graphics::FloatRectangle& bounds) const; + + /** + * Creates and returns a graphic canvas of the specified position and size in the control. + * + * @since 2.0 + * + * @return The graphic canvas of the control, @n + * else @c null if an exception occurs + * @param[in] x The x position relative to the top-left corner of the control + * @param[in] y The y position relative to the top-left corner of the control + * @param[in] width The width of a graphic canvas + * @param[in] height The height of a graphic canvas + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified bounds do not intercept with the bounds of the control. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * @remarks Only the graphic canvas of displayable controls can be obtained. + * If the specified area is not inside the control, + * the graphics canvas of the overlapped area between the control and the specified bound is returned. @n + * @remarks The method allocates an Tizen::Graphics::Canvas whose bounds are equal to that of the control. + * It is the developer's responsibility to deallocate the canvas after use. + * The canvas is guaranteed to be valid only if properties of the parent controls of the canvas remain unchanged. + * Therefore, one must delete the previously allocated canvas and create a new canvas using the %GetCanvasN() method + * if the size or position of the control is changed. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @remarks The Frame and Form (and between different Form instances) share a single frame-buffer. Therefore, + * if custom drawing is performed on the graphic canvas of Frame and Form + * then it will appear on the screen regardless of which control is currently visible on the screen. + * @see GetCanvasN(void) const + * @see GetCanvasN(const Tizen::Graphics::Rectangle& bounds) const + */ + Tizen::Graphics::Canvas* GetCanvasN(int x, int y, int width, int height) const; + + /* + * Creates and returns a graphic canvas of the specified position and size in the control. + * + * @since 2.1 + * + * @return The graphic canvas of the control, @n + * else @c null if an exception occurs + * @param[in] x The x position relative to the top-left corner of the control + * @param[in] y The y position relative to the top-left corner of the control + * @param[in] width The width of a graphic canvas + * @param[in] height The height of a graphic canvas + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified bounds do not intercept with the bounds of the control. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * @remarks Only the graphic canvas of displayable controls can be obtained. + * If the specified area is not inside the control, + * the graphics canvas of the overlapped area between the control and the specified bound is returned. @n + * @remarks The method allocates an Tizen::Graphics::Canvas whose bounds are equal to that of the control. + * It is the developer's responsibility to deallocate the canvas after use. + * The canvas is guaranteed to be valid only if properties of the parent controls of the canvas remain unchanged. + * Therefore, one must delete the previously allocated canvas and create a new canvas using the %GetCanvasN() method + * if the size or position of the control is changed. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @remarks The Frame and Form (and between different Form instances) share a single frame-buffer. Therefore, + * if custom drawing is performed on the graphic canvas of Frame and Form + * then it will appear on the screen regardless of which control is currently visible on the screen. + * @see GetCanvasN(void) const + * @see GetCanvasN(const Tizen::Graphics::FloatRectangle& bounds) const + */ + Tizen::Graphics::Canvas* GetCanvasN(float x, float y, float width, float height) const; + + /** + * Checks whether the control is currently visible on the screen. + * + * @since 2.0 + * + * @return @c true if the control is currently visible on the screen, @n + * else @c false + * @remarks If this method is called before the control is added to a parent, @c false is returned. + * @see GetShowState() + * @see SetShowState() + */ + bool IsVisible(void) const; + + /** + * Gets the current show state of the control. + * + * @since 2.0 + * + * @return The show state of the control + * @remarks Even if the control's state is "show", the control may not be visible. + * @see SetShowState() + * @see IsVisible() + */ + bool GetShowState(void) const; + + /** + * Sets the show state of the control. + * + * @since 2.0 + * + * @return An error code + * @param[in] state The new show state + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * Note: This control cannot be displayed. + * @exception E_SYSTEM A system error has occurred. + * @remarks Do not override this method. + * @remarks Even if this method is invoked, the control is not drawn or shown. @n + * To display the control, use Invalidate() methods. @n + * Once the control's show state is set to @c false, + * the show state needs to be set to @c true again before you invalidate the control. + * @see GetShowState() + * @see Invalidate() + */ + result SetShowState(bool state); + + /** + * Gets the dedicated %VisualElement instance for this control. + * + * @since 2.0 + * + * @return An instance of the VisualElement + * @remarks If an application developer modifies the state of the returned VisualElement + * and the host control is not aware of this change, then the control may behave egregiously. + * It is highly recommended to restore the %VisualElement state to avoid such conflicts. + */ + Tizen::Ui::Animations::VisualElement* GetVisualElement(void) const; + + /** + * Gets the parent of the control. + * + * @since 2.0 + * + * @return The current parent of the control + */ + Container* GetParent(void) const; + + /** + * Gets the name of the control. + * + * @since 2.0 + * + * @return The name of the control + */ + Tizen::Base::String GetName(void) const; + + /** + * Sets the name of the control. + * + * @since 2.0 + * + * @param[in] name The name of the control + */ + void SetName(const Tizen::Base::String& name); + + /** + * Checks whether the control is focusable. + * + * @since 2.0 + * + * @return @c true if control is focusable, @n + * else @c false + * @remarks The focus ability of the container classes like Panel is @c false by default. + */ + bool IsFocusable(void) const; + + /** + * Sets the focus ability of the control. @n + * Non-Focusable controls cannot take the key focus. + * + * @since 2.0 + * + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * Note: The control does not permit to change its focus ability. + * @exception E_SYSTEM A system error has occurred. + * @remarks The focus ability of the container classes like Panel is @c false by default. + * @remarks The RadioGroup class does not render the UI. + * Therefore, RadioGroup::SetFocusable() returns @c E_SYSTEM. + */ + result SetFocusable(bool focusable); + + /** + * Checks whether the control currently has the input focus. + * + * @since 2.0 + * + * @return @c true if the control currently has the input focus, @n + * else @c false + * @remarks If this method is called before the control is added to a parent, @c false is returned. + * @see SetFocus() + */ + bool HasFocus(void) const; + + /** + * Sets the focus to the control. @n + * This method is called if the control needs to listen to user input events such as key pressed. + * + * @since 2.0 + * + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * Note: This control cannot be displayed. + * @exception E_INVALID_CONDITION The control is not contained in, or is not the top z-order frame or form. + * @remarks Do not override this method. + */ + result SetFocus(void); + + /** + * Checks whether the control is enabled. + * + * @since 2.0 + * + * @return @c true if the control is enabled, @n + * else @c false + * @remarks If this method is called before the control is added to a parent, @c false is returned. + * @see SetEnabled() + */ + bool IsEnabled(void) const; + + /** + * Enables or disables the control. @n + * Only an enabled control can respond to the user input. By default, the control is enabled. + * + * @since 2.0 + * + * @return An error code + * @param[in] enable The new state of the object + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * @exception E_SYSTEM A system error has occurred. + * @remarks Do not override this method. + */ + result SetEnabled(bool enable); + + /** + * Checks whether the device is in touch mode. @n + * When the user interacts with the device by touching it, the device is in touch mode. + * + * @since 2.0 + * + * @return @c true if the device is in touch mode, @n + * else @c false + * @remarks This method returns @c false, for devices with QWERTY keyboard. + * The user can navigate the UI using directional keys. + */ + bool IsInTouchMode(void) const; + + /** + * Enables or disables the drag operation in the %Control. + * + * @since 2.0 + * + * @param[in] enable Set to @c true to enable the drag operation, @n + * else @c false + * @see SetDropEnabled() + */ + void SetDragEnabled(bool enable); + + /** + * Enables or disables the drop operations in the %Control. + * + * @since 2.0 + * + * @param[in] enable Set to @c true to enable drop operations, @n + * else @c false + * @remarks To receive drop event, control's drag property has to be enabled. + * @see SetDragEnabled() + */ + void SetDropEnabled(bool enable); + + /** + * Sends a user event to the control. + * + * @since 2.0 + * + * @param[in] requestId The user-defined event ID + * @param[in] pArgs A pointer to the argument list + * @remarks This method posts a user event in the event queue + * and returns immediately to support asynchronous actions of the framework. + * @see OnUserEventReceived() + */ + void SendUserEvent(RequestId requestId, const Tizen::Base::Collection::IList* pArgs) const; + + /** + * Stops the current UI event dispatch sequence by indicating the current input event is consumed. + * + * @brief [Deprecated] + * @deprecated This method is deprecated. Instead of using this method, return true inside Propagated Event Listeners which derived from IPropagatedKeyEventListener/IPropagatedTouchEventListener to consume event. + * @since 2.0 + * + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @remarks If this method is invoked during an UI event (key or touch) propagation sequence, + * the method will stop the propagation and consequently the system will not be notified of the event.@n + * The method will not have any effect if no UI event is being dispatched. @n + * It is recommended that this method is called within IKeyEventListener or + * ITouchEventListener to stop the event from propagating to the next step. + */ + result ConsumeInputEvent(void); + + /** + * Gets the control animator of the current instance of %Control. + * + * @since 2.0 + * + * @return A pointer to ControlAnimator, @n + * else @c null if this instance is not constructed or not added to a parent or non-animatable + */ + Tizen::Ui::Animations::ControlAnimator* GetControlAnimator(void) const; + + /** + * Adds the gesture detector to the %Control. @n + * The added gesture detector receives touch events prior to %Control. + * + * @since 2.0 + * + * @return An error code + * @param[in] gestureDetector The gesture detector + * @exception E_SUCCESS The method is successful. + * @see RemoveGestureDetector() + */ + result AddGestureDetector(const TouchGestureDetector& gestureDetector); + + /* + * Adds the gesture detector to the %Control. @n + * The added gesture detector receives touch events prior to %Control. + * + * @since 2.1 + * + * @return An error code + * @param[in] pGestureDetector Pointer of gesture detector + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c pGestureDetector is null. + * @see RemoveGestureDetector() + */ + result AddGestureDetector(TouchGestureDetector* pGestureDetector); + + /** + * Removes the gesture detector from the %Control. + * + * @since 2.0 + * + * @return An error code + * @param[in] gestureDetector The gesture detector + * @exception E_SUCCESS The method is successful. + * @see AddGestureDetector() + */ + result RemoveGestureDetector(const TouchGestureDetector& gestureDetector); + + /* + * Removes the gesture detector from the %Control. + * + * @since 2.1 + * + * @return An error code + * @param[in] pGestureDetector Pointer of gesture detector + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c pGestureDetector is null. + * @see AddGestureDetector() + */ + result RemoveGestureDetector(TouchGestureDetector* pGestureDetector); + + /** + * @if OSPDEPREC + * Gets the composite mode for merging with other controls. + * + * @brief [Deprecated] + * @deprecated This method is deprecated because changing composition mode is not allowed any more. + * @since 2.0 + * + * @return The composite mode + * @exception E_SUCCESS The method is successful. + * @remarks Since API version 2.1, this method only returns COMPOSITE_MODE_ALPHA_BLENDING. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @endif + */ + Tizen::Ui::CompositeMode GetCompositeMode(void) const; + + /** + * @if OSPDEPREC + * Sets the composite mode for merging with other controls. + * + * @brief [Deprecated] + * @deprecated This method is deprecated because changing composition mode is not allowed any more. + * @since 2.0 + * + * @return An error code + * @param[in] compositeMode The composite mode + * @exception E_SUCCESS The method is successful. + * @exception E_UNSUPPORTED_OPERATION The method is not supported. + * @remarks In Tizen, only @c COMPOSITE_MODE_ALPHA_BLENDING is allowed. + * Otherwise, this method returns @c E_UNSUPPORTED_OPERATION. + * @endif + */ + result SetCompositeMode(Tizen::Ui::CompositeMode compositeMode); + + /** + * @if OSPDEPREC + * Gets the chroma key color value that is used for the control composition. + * + * @brief [Deprecated] + * @deprecated This method is deprecated because chromakey color is not supported any more. + * @since 2.0 + * + * @return The chroma key color + * @exception E_UNSUPPORTED_OPERATION The method is not supported. + * @remarks In Tizen, this method always fails and returns Tizen::Graphics::Color(0, 0, 0, 0). + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @endif + */ + Tizen::Graphics::Color GetChromaKeyColor(void) const; + + /** + * @if OSPDEPREC + * Sets the chroma key color value that is used for the control composition. + * + * @brief [Deprecated] + * @deprecated This method is deprecated because chromakey color is not supported any more. + * @since 2.0 + * + * @return An error code + * @param[in] chromaKeyColor The chroma key color + * @exception E_UNSUPPORTED_OPERATION The method is not supported. + * @remarks In Tizen, this method always fails. + * @endif + */ + result SetChromaKeyColor(Tizen::Graphics::Color chromaKeyColor); + + /** + * Sets the bounds of the content area. + * + * @since 2.1 + * + * @param[in] rect The bounds of the content area + * @see GetContentAreaBounds() + */ + void SetContentAreaBounds(const Tizen::Graphics::Rectangle& rect); + + /* + * Sets the bounds of the content area. + * + * @since 2.1 + * + * @param[in] rect The bounds of the content area + * @see GetContentAreaBoundsF() + */ + void SetContentAreaBounds(const Tizen::Graphics::FloatRectangle& rect); + + /** + * Gets the bounds of the content area. + * + * @since 2.1 + * + * @return The bounds of the content area + * @see SetContentAreaBounds() + */ + Tizen::Graphics::Rectangle GetContentAreaBounds(void) const; + + /* + * Gets the bounds of the content area. + * + * @since 2.1 + * + * @return The bounds of the content area + * @see SetContentAreaBounds() + */ + Tizen::Graphics::FloatRectangle GetContentAreaBoundsF(void) const; + + /** + * Captures the composited scene of the %Panel control. + * + * @since 2.0 + * + * @return A Tizen::Graphics::Bitmap instance that captures the current composited scene of the Panel control, @n + * else @c null if an error occurs + * @exception E_SUCCESS The method is successful. + * @exception E_UNSUPPORTED_OPERATION This method is not supported. + * @exception E_SYSTEM A system error has occurred. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @remarks This method is not supported in the following class that is derived from Panel class: + * @li OverlayPanel + * @remarks The bounds of the %Panel control must be within the client area of the Form control to get a valid composited scene. + */ + Tizen::Graphics::Bitmap* GetCapturedBitmapN(void) const; + + /** + * Gets the position and the size of the invalidated bounds. + * + * @since 2.0 + * + * @return An instance of Tizen::Graphics::Rectangle that represents the position of top-left corner, + * the width, and the height of the invalidated bounds + */ + Tizen::Graphics::Rectangle GetInvalidatedBounds(void) const; + + /* + * Gets the position and the size of the invalidated bounds. + * + * @since 2.1 + * + * @return An instance of Tizen::Graphics::Rectangle that represents the position of top-left corner, + * the width, and the height of the invalidated bounds + */ + Tizen::Graphics::FloatRectangle GetInvalidatedBoundsF(void) const; + + /** + * Enables or disables the multi-point touch of the %Control. + * + * @since 2.0 + * + * @param[in] enable A Boolean flag indicating whether to enable the multi-point touch + * + * @see IsMultipointTouchEnabled() + */ + void SetMultipointTouchEnabled(bool enable); + + /** + * Checks whether the multi-point touch is enabled. + * + * @since 2.0 + * + * @return @c true if the multi-point touch is enabled, @n + * else @c false + * @see SetMultipointTouchEnabled() + */ + bool IsMultipointTouchEnabled(void) const; + + /** + * Gets the accessibility container. + * + * @since 2.0 + * + * @return The accessibilit container of the control, if the control supports accessibility feature. @n + * Else @c null. + * @see AccessibilityContainer::GetOwner() + */ + const AccessibilityContainer* GetAccessibilityContainer(void) const; + + /** + * Gets the accessibility container. + * + * @since 2.0 + * + * @return The accessibilit container of the control, if the control supports accessibility feature. @n + * Else @c null. + * @see AccessibilityContainer::GetOwner() + */ + AccessibilityContainer* GetAccessibilityContainer(void); + + /** + * Sets a propagated touch event listener to the Control. + * The registered listener will be notified when a touch event occurs in the control. Using the propagated touch event listener, an application can control the touch event routing path. + * + * @since 2.1 + * + * @param[in] pListener The event listener to which propagated touch events are dispatched. + * @remarks The specified event listener should be allocated in heap memory. + * To unregister the event listener, pass @c null to @c pListener. + + */ + void SetPropagatedTouchEventListener(IPropagatedTouchEventListener* pListener); + + /** + * Sets a propagated key event listener to the Control. + * The registered listener will be notified when a key event occurs in the control. Using the propagated key event listener, an application can control the key event routing path. + * + * @since 2.1 + * + * @param[in] pListener The event listener to which propagated touch events are dispatched. + * @remarks The specified event listener should be allocated in heap memory. + * To unregister the event listener, pass @c null to @c pListener. + + */ + void SetPropagatedKeyEventListener(IPropagatedKeyEventListener* pListener); + + + /** + * Sets the previous focus of the control. + * + * @since 2.1 + * + * @param[in] The pointer to the previous focus of the control + * @remarks Focus UI supports linear navigation of controls from top-left to bottom-right direction. This method allows for customizing the default navigation behavior. + * @remarks The platform will not take the ownership of pPreviousFocus after this call. + * @see SetNextFocus() + * @see GetPreviousFocus() + */ + void SetPreviousFocus(Control* pPreviousFocus); + + /** + * Sets the next focus of the control. + * + * @since 2.1 + * + * @param[in] The pointer to the next focus of the control + * @remarks Focus UI supports linear navigation of controls from top-left to bottom-right direction. This method allows for customizing the default navigation behavior. + * @remarks The platform will not take the ownership of pNextFocus after this call. + * @see SetPreviousFocus() + * @see GetNextFocus() + */ + void SetNextFocus(Control* pNextFocus); + + /** + * Gets the previous focus of the control + * + * @since 2.1 + * + * @return The pointer to the previous focus of the control, + * else @c null if the previous focus of the control is not set + * @see GetNextFocus() + * @see SetNextFocus () + */ + Control* GetPreviousFocus(void) const; + + + /** + * Gets the next focus of the control + * + * @since 2.1 + * + * @return The pointer to the next focus of the control + * else @c null if the next focus of the control is not set + * @see GetPreviousFocus() + * @see SetPreviousFocus () + */ + Control* GetNextFocus(void) const; + + /** + * Sets the touch press threshold of the Control in inches. + * A touch move event will start to fire if the move distance exceeds the touch press threshold value. + * For example, if the value is 0.5, a touch move event will be fired if the move distance exceeds 0.5 inch. + * This method is offered to control sensitivity of touch move event. + * + * @since 2.1 + * + * @param[in] distance The threshold to fire touch move event in inch + */ + void SetTouchPressThreshold(float distance); + + /** + * Gets the touch press threshold of the Control in inches. + * If the threshold has not been set, it returns the default value. + * + * @since 2.1 + * + * @return The threshold to fire touch move event + */ + float GetTouchPressThreshold(void) const; + + + /** + * Sets the font of the control with the specified file name. + * + * @since 2.1 + * + * @return An error code + * @param[in] file name The file name of a font-resource which are located in ‘/res/font’ + * Sets an empty string to reset. + * @exception E_SUCCESS The method is successful. + * @exception E_FILE_NOT_FOUND The specified font cannot be found or accessed. + * @exception E_UNSUPPORTED_FORMAT The specified font format is not supported. + * @see GetFontFile() + */ + result SetFontFromFile(const Tizen::Base::String& fileName); + + /** + * Gets a font file name of the control. + * + * @since 2.1 + * + * @return The font name set in the control @n + * else an empty string if the font is not set + * @see SetFontFromFile() + */ + Tizen::Base::String GetFontFile(void) const; + +protected: + /** + * Gets the default key event listener. + * + * @brief [Deprecated] + * @deprecated This method is deprecated. + * @since 2.0 + * + * @return The default key event listener. @n + * If no listener has been set or a system error has occurred, @c null is returned. + * @see SetDefaultKeyEventListener() + */ + IKeyEventListener* GetDefaultkeyEventListener(void) const; + + /** + * Gets the default touch event listener. + * + * @brief [Deprecated] + * @deprecated This method is deprecated. + * @since 2.0 + * + * @return The default touch event listener. + * If no listener has been set or a system error has occurred @c null is returned. + * @see SetDefaultTouchEventListener() + */ + ITouchEventListener* GetDefaultTouchEventListener(void) const; + + /** + * Sets the default key event listener. + * + * @brief [Deprecated] + * @deprecated This method is deprecated. Instead of using this method, use the SetPropagatedKeyEventListener() method. + * @since 2.0 + * + * @return An error code + * @param[in] pDefaultListener The default key event listener + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @remarks The registered listener will be notified to handle the key events + * after all application event listeners has been notified. + * @see GetDefaultkeyEventListener() + */ + result SetDefaultKeyEventListener(IKeyEventListener* pDefaultListener); + + /** + * Sets the default touch event listener. + * + * @brief [Deprecated] + * @deprecated This method is deprecated. Instead of using this method, use the SetPropagatedTouchEventListener() method. + * @since 2.0 + * + * @return An error code + * @param[in] pDefaultListener The default key event listener + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @remarks The registered listener will be notified to handle the touch events + * after all application event listeners has been notified. + * @see GetDefaultTouchEventListener() + */ + result SetDefaultTouchEventListener(ITouchEventListener* pDefaultListener); + + /** + * The object is not fully constructed after this constructor is called. For full construction, the Construct() method must be called right after calling this constructor. + * + * @since 2.0 + */ + Control(void); + + /** + * This method is for internal use only. Using this method can cause behavioral, security-related, + * and consistency-related issues in the application. + * + * Initializes this instance of %Control. + * + * @since 2.0 + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + */ + result Construct(void); + + /** + * Frees the resources allocated by Construct(). + * + * @since 2.0 + */ + void Dispose(void); + +protected: + _ControlImpl* _pControlImpl; + + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // This method is reserved and may change its name at any time without prior notice. + // + virtual void Control_Reserved1(void) {} + + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // This method is reserved and may change its name at any time without prior notice. + // + virtual void Control_Reserved2(void) {} + + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // This method is reserved and may change its name at any time without prior notice. + // + virtual void Control_Reserved3(void) {} + + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // This method is reserved and may change its name at any time without prior notice. + // + virtual void Control_Reserved4(void) {} + + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // This method is reserved and may change its name at any time without prior notice. + // + + virtual void Control_Reserved5(void) {} + + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // This method is reserved and may change its name at any time without prior notice. + // + virtual void Control_Reserved6(void) {} + +private: + // + // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects. + // + Control(const Control& rhs); + + // + // The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects. + // + Control& operator =(const Control& rhs); + +private: + friend class _ControlImpl; +}; // Control + +}} // Tizen::Ui + +#endif // _FUI_CONTROL_H_ diff --git a/inc/FUiControls.h b/inc/FUiControls.h old mode 100644 new mode 100755 index 2e63307..5e806b2 --- a/inc/FUiControls.h +++ b/inc/FUiControls.h @@ -55,12 +55,12 @@ #include #include #include +#include #include #include #include #include #include -#include #include #include #include @@ -70,6 +70,7 @@ #include #include #include +#include #include #include #include @@ -78,22 +79,28 @@ #include #include #include +#include #include #include +#include #include #include #include #include +#include #include #include #include +#include #include #include #include +#include #include #include #include #include +#include #include #include #include @@ -146,7 +153,7 @@ namespace Tizen * @brief This namespace contains the classes and interfaces for creating rich user interface components for the applications. * @since 2.0 * - * @remarks @b %Header @b %file: @b \#include @b @n + * @remarks @b Header @b %file: @b \#include @b @n * @b Library : @b osp-uifw * * The %Ui::Controls namespace contains classes that have graphical representations that can be displayed on the screen as UI elements and with @@ -174,7 +181,6 @@ namespace Controls * @endif */ /** - * @if OSPDEPREC * @htmlonly * * @endhtmlonly - * @endif */ extern const Tizen::Graphics::Color SYSTEM_COLOR_TITLE_TEXT; @@ -198,7 +203,6 @@ extern const Tizen::Graphics::Color SYSTEM_COLOR_TITLE_TEXT; * @endif */ /** - * @if OSPDEPREC * @htmlonly * * @endhtmlonly - * @endif */ extern const Tizen::Graphics::Color SYSTEM_COLOR_BODY_TEXT; @@ -222,7 +225,6 @@ extern const Tizen::Graphics::Color SYSTEM_COLOR_BODY_TEXT; * @endif */ /** - * @if OSPDEPREC * @htmlonly * * @endhtmlonly - * @endif */ extern const Tizen::Graphics::Color SYSTEM_COLOR_FOREGROUND; @@ -246,7 +247,6 @@ extern const Tizen::Graphics::Color SYSTEM_COLOR_FOREGROUND; * @endif */ /** - * @if OSPDEPREC * @htmlonly * * @endhtmlonly - * @endif */ extern const Tizen::Graphics::Color SYSTEM_COLOR_BACKGROUND; @@ -270,7 +269,6 @@ extern const Tizen::Graphics::Color SYSTEM_COLOR_BACKGROUND; * @endif */ /** - * @if OSPDEPREC * @htmlonly * * @endhtmlonly - * @endif */ extern const Tizen::Graphics::Color SYSTEM_COLOR_LIST_BACKGROUND; @@ -294,7 +291,6 @@ extern const Tizen::Graphics::Color SYSTEM_COLOR_LIST_BACKGROUND; * @endif */ /** - * @if OSPDEPREC * @htmlonly * * @endhtmlonly - * @endif */ extern const Tizen::Graphics::Color SYSTEM_COLOR_FORM_BACKGROUND; @@ -318,7 +313,6 @@ extern const Tizen::Graphics::Color SYSTEM_COLOR_FORM_BACKGROUND; * @endif */ /** - * @if OSPDEPREC * @htmlonly * * @endhtmlonly - * @endif */ extern const Tizen::Graphics::Color SYSTEM_COLOR_FORM_GROUP_BACKGROUND; @@ -342,7 +335,6 @@ extern const Tizen::Graphics::Color SYSTEM_COLOR_FORM_GROUP_BACKGROUND; * @endif */ /** - * @if OSPDEPREC * @htmlonly * * @endhtmlonly - * @endif */ extern const Tizen::Graphics::Color SYSTEM_COLOR_POPUP_BACKGROUND; @@ -366,7 +357,6 @@ extern const Tizen::Graphics::Color SYSTEM_COLOR_POPUP_BACKGROUND; * @endif */ /** - * @if OSPDEPREC * @htmlonly * * @endhtmlonly - * @endif */ extern const Tizen::Graphics::Color SYSTEM_COLOR_GROUP_ITEM_TEXT; @@ -390,7 +379,6 @@ extern const Tizen::Graphics::Color SYSTEM_COLOR_GROUP_ITEM_TEXT; * @endif */ /** - * @if OSPDEPREC * @htmlonly * * @endhtmlonly - * @endif */ extern const Tizen::Graphics::Color SYSTEM_COLOR_LIST_ITEM_TEXT; @@ -414,7 +401,6 @@ extern const Tizen::Graphics::Color SYSTEM_COLOR_LIST_ITEM_TEXT; * @endif */ /** - * @if OSPDEPREC * @htmlonly * * @endhtmlonly - * @endif */ extern const Tizen::Graphics::Color SYSTEM_COLOR_LIST_ITEM_PRESSED_TEXT; @@ -438,7 +423,6 @@ extern const Tizen::Graphics::Color SYSTEM_COLOR_LIST_ITEM_PRESSED_TEXT; * @endif */ /** - * @if OSPDEPREC * @htmlonly * * @endhtmlonly - * @endif */ extern const Tizen::Graphics::Color SYSTEM_COLOR_LIST_ITEM_HIGHLIGHTED_TEXT; diff --git a/inc/FUiCtrlAnimation.h b/inc/FUiCtrlAnimation.h index ed84d47..573f161 100644 --- a/inc/FUiCtrlAnimation.h +++ b/inc/FUiCtrlAnimation.h @@ -219,6 +219,25 @@ public: */ result Construct(const Tizen::Graphics::Rectangle& rect, const Tizen::Base::Collection::IList& aniFrames); + /* + * Initializes this instance of %Animation with the specified parameters. @n + * The input list of the AnimationFrame instances (@c aniFrames) should be deleted explicitly after use. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect An instance of the FloatRectangle class @n + * This instance represents the x and y coordinates of the top-left corner of the created window along with + * its width and height. + * @param[in] aniFrames An IList of %AnimationFrames used in the animation + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @remarks A control is fully usable only after it has been added to a container, therefore some methods may fail if used earlier. @n + * @remarks The size of the control must be within the range defined by the minimum size and the maximum size. + * @see AnimationFrame + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect, const Tizen::Base::Collection::IList& aniFrames); public: /** @@ -260,8 +279,9 @@ public: * * @since 2.0 * - * @return The total repeat count, @n - * else @c -1 if the %Animation instance is not constructed + * @return The total repeat count + * + * @remarks The default repeat count is 1. */ int GetRepeatCount(void) const; @@ -271,8 +291,9 @@ public: * * @since 2.0 * - * @return The current repeated count, @n - * else @c -1 if the %Animation instance is not constructed + * @return The current repeated count + * + * @remarks The default current repeated count is 0. */ int GetCurrentRepeatedCount(void) const; @@ -282,8 +303,9 @@ public: * * @since 2.0 * - * @return The total image count, @n - * else @c -1 if the %Animation instance is not constructed + * @return The total image count + * + * @remarks The default image count is 0. */ int GetImageCount(void) const; @@ -317,8 +339,9 @@ public: * * @since 2.0 * - * @return The status of animation, @n - * else ANIMATION_STOPPED if the %Animation control is not constructed + * @return The status of animation + * + * @remarks The default animation status is ANIMATION_STOPPED. */ AnimationStatus GetStatus(void) const; diff --git a/inc/FUiCtrlButton.h b/inc/FUiCtrlButton.h index 7c969cb..1ec7b85 100644 --- a/inc/FUiCtrlButton.h +++ b/inc/FUiCtrlButton.h @@ -211,6 +211,26 @@ public: result Construct(const Tizen::Graphics::Rectangle& rect, const Tizen::Base::String& text = L""); /** + * Initializes this instance of %Button with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect An instance of the Rectangle class @n + * This instance represents the x and y coordinates of the top-left corner @n + * of the created window along with its width and height. @n + * @param[in] text The text to be displayed on the button + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + * @remarks A control is fully functional only after it has been added to a container. Therefore, some methods may fail if they are used before + * adding the control to the container. + * @remarks To display the text in multi-lines or to denote the end of line, use '\\n'. + * @remarks The size of the control must be within the range defined by the minimum and maximum sizes. + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect, const Tizen::Base::String& text = L""); + + /** * Adds a listener instance. @n * The added listener can listen to events on the given event dispatcher's context when they are fired. * @@ -393,6 +413,36 @@ public: void SetNormalBitmap(const Tizen::Graphics::Point& position, const Tizen::Graphics::Bitmap& bitmap); /** + * Sets a bitmap that is to be displayed when the button is not pressed. + * + * @since 2.1 + * + * @param[in] position The location of a bitmap where it is to be displayed on the button + * @param[in] bitmap The bitmap of to be set + */ + void SetNormalBitmap(const Tizen::Graphics::FloatPoint& position, const Tizen::Graphics::Bitmap& bitmap); + + /** + * Sets the disabled bitmap of the button. + * + * @since 2.0 + * + * @param[in] position The location of disabled bitmap + * @param[in] bitmap The disabled bitmap of the button + */ + void SetDisabledBitmap(const Tizen::Graphics::Point& position, const Tizen::Graphics::Bitmap& bitmap); + + /** + * Sets the disabled bitmap of the button. + * + * @since 2.1 + * + * @param[in] position The location of disabled bitmap + * @param[in] bitmap The disabled bitmap of the button + */ + void SetDisabledBitmap(const Tizen::Graphics::FloatPoint& position, const Tizen::Graphics::Bitmap& bitmap); + + /** * Sets the bitmap that is to be displayed on the button when it is pressed. * * @since 2.0 @@ -403,14 +453,34 @@ public: void SetPressedBitmap(const Tizen::Graphics::Point& position, const Tizen::Graphics::Bitmap& bitmap); /** - * Sets the disabled bitmap of the button. - * - * @since 2.0 - * - * @param[in] position The location of disabled bitmap - * @param[in] bitmap The disabled bitmap of the button - */ - void SetDisabledBitmap(const Tizen::Graphics::Point& position, const Tizen::Graphics::Bitmap& bitmap); + * Sets the bitmap that is to be displayed on the button when it is pressed. + * + * @since 2.1 + * + * @param[in] position The location of a bitmap where it is to be displayed on the Button control + * @param[in] bitmap The bitmap to be set + */ + void SetPressedBitmap(const Tizen::Graphics::FloatPoint& position, const Tizen::Graphics::Bitmap& bitmap); + + /** + * Sets the highlighted bitmap of the button. + * + * @since 2.1 + * + * @param[in] position The location of highlighted bitmap + * @param[in] bitmap The highlighted bitmap of the button + */ + void SetHighlightedBitmap(const Tizen::Graphics::Point& position, const Tizen::Graphics::Bitmap& bitmap); + + /** + * Sets the highlighted bitmap of the button. + * + * @since 2.1 + * + * @param[in] position The location of highlighted bitmap + * @param[in] bitmap The highlighted bitmap of the button + */ + void SetHighlightedBitmap(const Tizen::Graphics::FloatPoint& position, const Tizen::Graphics::Bitmap& bitmap); /** * Sets the normal background bitmap of the button. @@ -422,6 +492,15 @@ public: void SetNormalBackgroundBitmap(const Tizen::Graphics::Bitmap& bitmap); /** + * Sets the disabled background bitmap of the button. + * + * @since 2.1 + * + * @param[in] bitmap The disabled background image + */ + void SetDisabledBackgroundBitmap(const Tizen::Graphics::Bitmap& bitmap); + + /** * Sets the pressed background bitmap of the button. * * @since 2.0 @@ -481,6 +560,20 @@ public: int GetTextSize(void) const; /** + * Gets the text size. + * + * @since 2.1 + * + * @return The size of the text, @n + * else @c -1.0f if an error occurs + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @see SetTextSize() + */ + float GetTextSizeF(void) const; + + /** * Sets the text size. * * @since 2.0 @@ -495,6 +588,21 @@ public: */ result SetTextSize(int size); + /** + * Sets the text size. + * + * @since 2.1 + * + * @return An error code + * @param[in] size The text size + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified input parameter is invalid. @n + * The specified @c size must be greater than @c 0. + * @exception E_SYSTEM A system error has occurred. + * @see GetTextSize() + */ + result SetTextSize(float size); + protected: friend class _ButtonImpl; diff --git a/inc/FUiCtrlCheckButton.h b/inc/FUiCtrlCheckButton.h index 66501a7..0d71a09 100644 --- a/inc/FUiCtrlCheckButton.h +++ b/inc/FUiCtrlCheckButton.h @@ -32,7 +32,6 @@ #include #include #include -#include namespace Tizen { namespace Ui { namespace Controls { @@ -64,14 +63,15 @@ enum CheckButtonStyle CHECK_BUTTON_STYLE_MARK_WITH_DIVIDER, /**< @if OSPDEPREC @deprecated This enumeration field is deprecated because the use of the divider style is no longer recommended @n Instead of using the divider style, use the detailed button style. @endif */ CHECK_BUTTON_STYLE_ONOFF, /**< @if OSPDEPREC @deprecated This enumeration field is deprecated because the use of the on-off style is no longer recommended @n - Instead of using the on-off style, use the on-off sliding style @endif */ + Instead of using the on-off style, use the on-off sliding style @endif*/ CHECK_BUTTON_STYLE_ONOFF_WITH_DIVIDER, /**< @if OSPDEPREC @deprecated This enumeration field is deprecated because the use of the on-off style is no longer recommended @endif */ CHECK_BUTTON_STYLE_RADIO, /**< The radio style for single selection */ CHECK_BUTTON_STYLE_RADIO_WITH_DIVIDER, /**< @if OSPDEPREC @deprecated This enumeration field is deprecated because the use of the divider style is no longer recommended @n - Instead of using the divider style, use the detailed button style @endif */ + Instead of using the divider style, use the detailed button style @endif*/ CHECK_BUTTON_STYLE_ONOFF_SLIDING, /**< The slider style on/off */ CHECK_BUTTON_STYLE_MARK_WITH_DETAILED_BUTTON, /**< The mark style with detail button */ CHECK_BUTTON_STYLE_RADIO_WITH_DETAILED_BUTTON, /**< The radio style with detail button */ + CHECK_BUTTON_STYLE_ONOFF_SLIDING_WITH_DIVIDER, /**< The slider style On/Off with divider @b Since: @b 2.1 */ }; /** @@ -217,6 +217,32 @@ public: BACKGROUND_STYLE_DEFAULT, bool showTitle = false, const Tizen::Base::String& text = L"", GroupStyle groupStyle = GROUP_STYLE_NONE); /** + * Initializes this instance of %CheckButton with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect An instance of the Rectangle class @n + * This instance represents the x and y coordinates of the top-left corner of the created window + * along with the width and height of the window. + * @param[in] style The style of the %CheckButton control + * @param[in] backgroundStyle The background style set of the %CheckButton control + * @param[in] showTitle Set to @c true to enable the title, @n + * else @c false + * @param[in] text The text of the %CheckButton control + * @param[in] groupStyle The group style of the %CheckButton control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid.@n + * The specified size is less than the minimum size of the control. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n + * The background style of BACKGROUND_STYLE_NONE does not work with group styles except GROUP_STYLE_NONE. + * @exception E_SYSTEM A system error has occurred. + * @remarks A control is fully usable only after it has been added to a container, therefore some methods may fail if used earlier. @n + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect, CheckButtonStyle style, BackgroundStyle backgroundStyle = + BACKGROUND_STYLE_DEFAULT, bool showTitle = false, const Tizen::Base::String& text = L"", GroupStyle groupStyle = GROUP_STYLE_NONE); + + /** * Sets the selected status of the %CheckButton control. * * @since 2.0 diff --git a/inc/FUiCtrlColorPicker.h b/inc/FUiCtrlColorPicker.h index 28cc03b..e98f169 100644 --- a/inc/FUiCtrlColorPicker.h +++ b/inc/FUiCtrlColorPicker.h @@ -16,11 +16,11 @@ // /** - * @file FUiCtrlColorPicker.h - * @brief This is the header file for the %ColorPicker class. - * - * This header file contains the declarations of the %ColorPicker class. - */ +* @file FUiCtrlColorPicker.h +* @brief This is the header file for the %ColorPicker class. +* +* This header file contains the declarations of the %ColorPicker class. +*/ #ifndef _FUI_CTRL_COLOR_PICKER_H_ #define _FUI_CTRL_COLOR_PICKER_H_ @@ -32,18 +32,18 @@ namespace Tizen { namespace Ui { namespace Controls { /** - * @class ColorPicker - * @brief This class defines the common behavior of a %ColorPicker control. - * - * @since 2.0 - * - * The %ColorPicker class displays a set of 3 sliders (hue, saturation, and luminance) with which the user can define a color. - * - * For more information on the class features, see ColorPicker. - * - * The following example demonstrates how to use the %ColorPicker class. - * - * @code +* @class ColorPicker +* @brief This class defines the common behavior of a %ColorPicker control. +* +* @since 2.0 +* +* The %ColorPicker class displays a set of 3 sliders (hue, saturation, and luminance) with which the user can define a color. +* +* For more information on the class features, see ColorPicker. +* +* The following example demonstrates how to use the %ColorPicker class. +* +* @code // Sample code for ColorPickerSample.h #include #include @@ -105,8 +105,8 @@ ColorPickerSample::OnColorChanged(const Control& source, const Color& color) { // .... } - * @endcode - */ +* @endcode +*/ class _OSP_EXPORT_ ColorPicker : public Tizen::Ui::Control @@ -139,6 +139,19 @@ public: */ result Construct(const Tizen::Graphics::Point& point); + /* + * Initializes this instance of %ColorPicker with the specified parameter. + * + * @since 2.1 + * + * @return An error code + * @param[in] point The position of this %ColorPicker in the container + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @remarks A control is fully usable only after it has been added to a container. Therefore, some methods may fail if the control is used earlier. + */ + result Construct(const Tizen::Graphics::FloatPoint& point); + /** * Gets the current color value of %ColorPicker. * diff --git a/inc/FUiCtrlContextMenu.h b/inc/FUiCtrlContextMenu.h old mode 100644 new mode 100755 index 9296d01..93869be --- a/inc/FUiCtrlContextMenu.h +++ b/inc/FUiCtrlContextMenu.h @@ -197,7 +197,7 @@ ContextMenuSample::OnTerminating(void) result r = E_SUCCESS; // Deallocates the __pContextMenu - delete __pContextMenu; + __pContextMenu->Destroy(); return r; } @@ -265,6 +265,20 @@ public: */ result Construct(const Tizen::Graphics::Point& point, ContextMenuStyle style); + /* + * Initializes this instance of %ContextMenu with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] point The x and y coordinates of the anchor of %ContextMenu + * @param[in] style The context menu style + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_STATE This instance has already been constructed. + * @exception E_SYSTEM A system error has occurred. + */ + result Construct(const Tizen::Graphics::FloatPoint& point, ContextMenuStyle style); + /** * Initializes this instance of %ContextMenu with the specified parameters. * @@ -280,6 +294,21 @@ public: */ result Construct(const Tizen::Graphics::Point& point, ContextMenuStyle style, ContextMenuAnchorDirection direction); + /* + * Initializes this instance of %ContextMenu with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] point The x and y coordinates of the anchor of the %ContextMenu control + * @param[in] style The context menu style + * @param[in] direction The anchor arrow direction + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_STATE This instance has already been constructed. + * @exception E_SYSTEM A system error has occurred. + */ + result Construct(const Tizen::Graphics::FloatPoint& point, ContextMenuStyle style, ContextMenuAnchorDirection direction); + /** * Adds a listener instance. * The added listener can listen to events on the given context of the event dispatcher when they are fired. @@ -523,6 +552,7 @@ public: * @return An error code * @param[in] index The location * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c index less than @c 0 or greater than the number of items in %ContextMenu. * @exception E_SYSTEM A system error has occurred. */ result RemoveItemAt(int index); @@ -608,6 +638,20 @@ public: */ result SetAnchorPosition(const Tizen::Graphics::Point& position); + /* + * Sets the position of the anchor. + * + * @since 2.1 + * + * @return An error code + * @param[in] position The new position + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_STATE This instance is in an invalid state. + * @remarks The x and y coordinates of the anchor are defined in the coordinate space of its parent, + * which means that @c x and @c y must be defined relative to the top-left corner (0,0) of its parent. + */ + result SetAnchorPosition(const Tizen::Graphics::FloatPoint& position); + /** * Gets the position of the anchor. * @@ -618,6 +662,16 @@ public: */ Tizen::Graphics::Point GetAnchorPosition(void) const; + /* + * Gets the position of the anchor. + * + * @since 2.1 + * + * @return The position of the anchor + * @remarks The coordinate of the anchor position is defined from the top-left corner of its parent Container. + */ + Tizen::Graphics::FloatPoint GetAnchorPositionF(void) const; + /** * Gets the color of the %ContextMenu control. * diff --git a/inc/FUiCtrlControlsTypes.h b/inc/FUiCtrlControlsTypes.h old mode 100644 new mode 100755 index 34cc315..1ccba1f --- a/inc/FUiCtrlControlsTypes.h +++ b/inc/FUiCtrlControlsTypes.h @@ -78,7 +78,7 @@ enum HorizontalAlignment { ALIGNMENT_LEFT, /**< The text is left-aligned */ ALIGNMENT_CENTER, /**< The text is center-aligned horizontally */ - ALIGNMENT_RIGHT /**< The text is right-aligned */ + ALIGNMENT_RIGHT /**< The text is right-aligned */ }; /** @@ -95,6 +95,22 @@ enum VerticalAlignment ALIGNMENT_BOTTOM /**< The text is bottom-aligned */ }; +/** + * @enum GroupStyle + * + * Defines the table view style of a control's border. + * + * @since 2.0 + */ +enum GroupStyle +{ + GROUP_STYLE_NONE, /**< A rectangle with no outline */ + GROUP_STYLE_SINGLE, /**< A rectangle with all corners rounded */ + GROUP_STYLE_TOP, /**< A rectangle with the two top corners rounded */ + GROUP_STYLE_MIDDLE, /**< A rectangle positioned at the center of a group */ + GROUP_STYLE_BOTTOM /**< A rectangle with the two bottom corners rounded */ +}; + }}}// Tizen::Ui::Controls #endif //_FUI_CTRL_CONTROLS_TYPES_H_ diff --git a/inc/FUiCtrlCustomItem.h b/inc/FUiCtrlCustomItem.h index 06d763f..9b0b01f 100644 --- a/inc/FUiCtrlCustomItem.h +++ b/inc/FUiCtrlCustomItem.h @@ -29,6 +29,7 @@ #include #include #include +#include #include #include #include @@ -85,6 +86,19 @@ public: */ result Construct(const Tizen::Graphics::Dimension& itemSize, ListAnnexStyle style); + /* + * Initializes this instance of %CustomItem with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] itemSize The size of the item + * @param[in] style The style of the annex + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + */ + result Construct(const Tizen::Graphics::FloatDimension& itemSize, ListAnnexStyle style); + /** * Adds an instance of EnrichedText as an element to the %CustomItem control. * @@ -100,6 +114,21 @@ public: */ result AddElement(const Tizen::Graphics::Rectangle& rect, int elementId, const Tizen::Graphics::EnrichedText& text); + /* + * Adds an instance of EnrichedText as an element to the %CustomItem control. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect The bounds of the element + * @param[in] elementId The element ID + * @param[in] text The instance of EnrichedText + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + */ + result AddElement(const Tizen::Graphics::FloatRectangle& rect, int elementId, const Tizen::Graphics::EnrichedText& text); + /** * Adds the text as an element to the %CustomItem control. * @@ -119,6 +148,25 @@ public: */ result AddElement(const Tizen::Graphics::Rectangle& rect, int elementId, const Tizen::Base::String& text, bool textSliding = true); + /* + * Adds the text as an element to the %CustomItem control. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect The bounds of the element + * @param[in] elementId The element ID + * @param[in] text The text string to add + * @param[in] textSliding Set to @c true to allow a long text to slide, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + * @remarks If the width of the specified @c text exceeds the width of the element and @c textSliding is set to @c true, the text slides + * automatically when the user long-presses. + */ + result AddElement(const Tizen::Graphics::FloatRectangle& rect, int elementId, const Tizen::Base::String& text, bool textSliding = true); + /** * Adds the text as an element to the %CustomItem control. * @@ -141,6 +189,28 @@ public: */ result AddElement(const Tizen::Graphics::Rectangle& rect, int elementId, const Tizen::Base::String& text, int textSize, const Tizen::Graphics::Color& normalTextColor, const Tizen::Graphics::Color& pressedTextColor, const Tizen::Graphics::Color& highlightedTextColor, bool textSliding = true); + /* + * Adds the text as an element to the %CustomItem control. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect The bounds of the element + * @param[in] elementId The element ID + * @param[in] text The text string to add + * @param[in] textSize The size of the text + * @param[in] normalTextColor The color of the text in the normal status + * @param[in] pressedTextColor The color of the text in the pressed status + * @param[in] highlightedTextColor The color of the text in the highlighted status + * @param[in] textSliding Set to @c true to allow a long text to slide, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + * @remarks The default size of text is 38 on a WVGA screen, 22 on a HVGA screen and 20 on a WQVGA screen. + */ + result AddElement(const Tizen::Graphics::FloatRectangle& rect, int elementId, const Tizen::Base::String& text, float textSize, const Tizen::Graphics::Color& normalTextColor, const Tizen::Graphics::Color& pressedTextColor, const Tizen::Graphics::Color& highlightedTextColor, bool textSliding = true); + /** * Adds the bitmap image as an element to the %CustomItem control. * @@ -158,6 +228,23 @@ public: */ result AddElement(const Tizen::Graphics::Rectangle& rect, int elementId, const Tizen::Graphics::Bitmap& normalBitmap, const Tizen::Graphics::Bitmap* pPressedBitmap = NULL, const Tizen::Graphics::Bitmap* pHighlightedBitmap = NULL); + /* + * Adds the bitmap image as an element to the %CustomItem control. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect The bounds of the element + * @param[in] elementId The element ID + * @param[in] normalBitmap The bitmap image displayed when the item is in normal status + * @param[in] pPressedBitmap The bitmap image displayed when the item is pressed + * @param[in] pHighlightedBitmap The bitmap image displayed when the item is highlighted + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + */ + result AddElement(const Tizen::Graphics::FloatRectangle& rect, int elementId, const Tizen::Graphics::Bitmap& normalBitmap, const Tizen::Graphics::Bitmap* pPressedBitmap = NULL, const Tizen::Graphics::Bitmap* pHighlightedBitmap = NULL); + /** * Adds the custom drawing element to the %CustomItem control. * @@ -173,6 +260,21 @@ public: */ result AddElement(const Tizen::Graphics::Rectangle& rect, int elementId, const ICustomElement& element); + /* + * Adds the custom drawing element to the %CustomItem control. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect The bounds of the element + * @param[in] elementId The element ID + * @param[in] element The custom element + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + */ + result AddElement(const Tizen::Graphics::FloatRectangle& rect, int elementId, const ICustomElement& element); + /** * Removes the element from the %CustomItem control. * diff --git a/inc/FUiCtrlCustomList.h b/inc/FUiCtrlCustomList.h index eb11c03..d38e9a3 100644 --- a/inc/FUiCtrlCustomList.h +++ b/inc/FUiCtrlCustomList.h @@ -2,14 +2,14 @@ // Open Service Platform // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. // -// Licensed under the Flora License, Version 1.0 (the License); +// Licensed under the Apache License, Version 2.0 (the License); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an AS IS BASIS, +// distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. @@ -353,7 +353,7 @@ public: * @since 2.0 * * @param[in] listener The event listener to be removed - * @endif + * @endif */ void RemoveCustomItemEventListener(Tizen::Ui::ICustomItemEventListener& listener); @@ -812,7 +812,7 @@ public: * @exception E_SUCCESS The method is successful. * @exception E_SYSTEM A system error has occurred. * @exception E_INVALID_ARG The specified input parameter is invalid. @n - * The specified @c index is less than @c 0 or greater than the item count. + * The specified @c index is less than @c 0 or greater than the item count. * @endif */ result ScrollToTop(int index); diff --git a/inc/FUiCtrlCustomListItem.h b/inc/FUiCtrlCustomListItem.h index c5c6a3a..b44408d 100644 --- a/inc/FUiCtrlCustomListItem.h +++ b/inc/FUiCtrlCustomListItem.h @@ -34,7 +34,7 @@ namespace Tizen { namespace Ui { namespace Controls class _CustomListItemImpl; class CustomListItemFormat; /** - * @if OSPDEPREC + * @if OSPDEPREC * @class CustomListItem * @brief [Deprecated] This class defines the common behavior of an item of the CustomList control. * diff --git a/inc/FUiCtrlCustomListTypes.h b/inc/FUiCtrlCustomListTypes.h index e2874eb..1bc394e 100644 --- a/inc/FUiCtrlCustomListTypes.h +++ b/inc/FUiCtrlCustomListTypes.h @@ -28,7 +28,7 @@ namespace Tizen { namespace Ui { namespace Controls { /** - * @if OSPDEPREC + * @if OSPDEPREC * @enum CustomListStyle * * Defines the styles of CustomList. @@ -45,8 +45,8 @@ enum CustomListStyle CUSTOM_LIST_STYLE_RADIO_WITH_DIVIDER, /**< @if OSPDEPREC The radio style with divider for single selection @endif */ CUSTOM_LIST_STYLE_MARK, /**< @if OSPDEPREC The mark style for multiple selection @endif */ CUSTOM_LIST_STYLE_MARK_WITH_DIVIDER, /**< @if OSPDEPREC The mark style with divider for multiple selection @endif */ - CUSTOM_LIST_STYLE_ONOFF, /**< @if OSPDEPREC The On/Off style */ - CUSTOM_LIST_STYLE_ONOFF_WITH_DIVIDER /**< @if OSPDEPREC The On/Off style with divider */ + CUSTOM_LIST_STYLE_ONOFF, /**< @if OSPDEPREC The On/Off style @endif */ + CUSTOM_LIST_STYLE_ONOFF_WITH_DIVIDER /**< @if OSPDEPREC The On/Off style with divider @endif */ }; }}} // Tizen::Ui::Controls diff --git a/inc/FUiCtrlDatePicker.h b/inc/FUiCtrlDatePicker.h old mode 100644 new mode 100755 index 11b88dc..852253f --- a/inc/FUiCtrlDatePicker.h +++ b/inc/FUiCtrlDatePicker.h @@ -16,11 +16,11 @@ // /** - * @file FUiCtrlDatePicker.h - * @brief This is the header file for the %DatePicker class. - * - * This header file contains the declarations of the %DatePicker class. - */ +* @file FUiCtrlDatePicker.h +* @brief This is the header file for the %DatePicker class. +* +* This header file contains the declarations of the %DatePicker class. +*/ #ifndef _FUI_CTRL_DATE_PICKER_H_ #define _FUI_CTRL_DATE_PICKER_H_ @@ -31,20 +31,20 @@ namespace Tizen { namespace Ui { namespace Controls { /** - * @class DatePicker - * @brief This class displays a full screen %DatePicker on top of the screen. - * - * @since 2.0 - * - * @remarks One cannot change the size and the position of the %DatePicker. - * - * The %DatePicker class displays a full screen window-based selector that allows the user to select a certain date. - * - * For more information on the class features, see DatePicker, TimePicker, and DateTimePicker. - * - * The following example demonstrates how to use the %DatePicker class. - * - * @code +* @class DatePicker +* @brief This class displays a full screen %DatePicker on top of the screen. +* +* @since 2.0 +* +* @remarks One cannot change the size and the position of the %DatePicker. +* +* The %DatePicker class displays a full screen window-based selector that allows the user to select a certain date. +* +* For more information on the class features, see DatePicker, TimePicker, and DateTimePicker. +* +* The following example demonstrates how to use the %DatePicker class. +* +* @code // Sample code for DatePickerSample.h #include @@ -142,7 +142,7 @@ DatePickerSample::OnTerminating(void) result r = E_SUCCESS; // Deallocates the date picker - delete __pDatePicker; + __pDatePicker->Destroy(); return r; } @@ -175,188 +175,188 @@ DatePickerSample::OnDateChangeCanceled(const Control& source) { // .... } - * @endcode - */ +* @endcode +**/ class _OSP_EXPORT_ DatePicker : public Tizen::Ui::Window { public: /** - * The object is not fully constructed after this constructor is called. For full construction, the Construct() method must be called right after calling this constructor. - * - * @since 2.0 - */ + * The object is not fully constructed after this constructor is called. For full construction, the Construct() method must be called right after calling this constructor. + * + * @since 2.0 + */ DatePicker(void); /** - * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. - * - * @since 2.0 - */ + * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. + * + * @since 2.0 + */ virtual ~DatePicker(void); /** - * Adds a data change event listener instance. @n - * The added listener is called when the date of the %DatePicker is changed either through user manipulation or by calling one of its setters. - * - * @since 2.0 - * - * @param[in] listener The listener to be added - * @see IDateChangeEventListener::OnDateChanged() - * @see IDateChangeEventListener::OnDateChangeCanceled() - * @see RemoveDateChangeEventListener() - */ + * Adds a data change event listener instance. @n + * The added listener is called when the date of the %DatePicker is changed either through user manipulation or by calling one of its setters. + * + * @since 2.0 + * + * @param[in] listener The listener to be added + * @see IDateChangeEventListener::OnDateChanged() + * @see IDateChangeEventListener::OnDateChangeCanceled() + * @see RemoveDateChangeEventListener() + */ void AddDateChangeEventListener(Tizen::Ui::IDateChangeEventListener& listener); /** - * Removes a date changed event listener instance. @n - * The removed listener cannot listen to events when they are fired. - * - * @since 2.0 - * - * @param[in] listener The listener to be removed - * @see IDateChangeEventListener::OnDateChanged() - * @see IDateChangeEventListener::OnDateChangeCanceled() - * @see AddDateChangeEventListener() - */ + * Removes a date changed event listener instance. @n + * The removed listener cannot listen to events when they are fired. + * + * @since 2.0 + * + * @param[in] listener The listener to be removed + * @see IDateChangeEventListener::OnDateChanged() + * @see IDateChangeEventListener::OnDateChangeCanceled() + * @see AddDateChangeEventListener() + */ void RemoveDateChangeEventListener(Tizen::Ui::IDateChangeEventListener& listener); /** - * Initializes this instance of %DatePicker with the specified parameter. - * - * @since 2.0 - * - * @return An error code - * @param[in] title The title - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - */ + * Initializes this instance of %DatePicker with the specified parameter. + * + * @since 2.0 + * + * @return An error code + * @param[in] title The title + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + */ result Construct(const Tizen::Base::String& title = L""); /** - * Gets the current date value of the %DatePicker control. - * - * @since 2.0 - * - * @return A %DateTime instance - */ + * Gets the current date value of the %DatePicker control. + * + * @since 2.0 + * + * @return A %DateTime instance + */ Tizen::Base::DateTime GetDate(void) const; /** - * Gets the current day value of the %DatePicker control. @n - * The day value is between @c 1 to @c 31. - * - * @since 2.0 - * - * @return The current day value, @n - * else @c -1 if an error occurs - */ + * Gets the current day value of the %DatePicker control. @n + * The day value is between @c 1 to @c 31. + * + * @since 2.0 + * + * @return The current day value, @n + * else @c -1 if an error occurs + */ int GetDay(void) const; /** - * Gets the current month value of the %DatePicker control. @n - * The month value is between @c 1 to @c 12. - * - * @since 2.0 - * - * @return The current month value, @n - * else @c -1 if an error occurs - */ + * Gets the current month value of the %DatePicker control. @n + * The month value is between @c 1 to @c 12. + * + * @since 2.0 + * + * @return The current month value, @n + * else @c -1 if an error occurs + */ int GetMonth(void) const; /** - * Gets the current year value of the %DatePicker control. - * The year value is between @c 1 to @c 9999. - * - * @since 2.0 - * - * @return The current year value, @n - * else @c -1 if an error occurs - * - */ + * Gets the current year value of the %DatePicker control. + * The year value is between @c 1 to @c 9999. + * + * @since 2.0 + * + * @return The current year value, @n + * else @c -1 if an error occurs + * + */ int GetYear(void) const; /** - * Sets the date value of the %DatePicker control. - * - * @since 2.0 - * - * @param[in] date The date to be set - */ + * Sets the date value of the %DatePicker control. + * + * @since 2.0 + * + * @param[in] date The date to be set + */ void SetDate(const Tizen::Base::DateTime& date); /** - * Sets the date value of the %DatePicker control with the current date. - * - * @since 2.0 - */ + * Sets the date value of the %DatePicker control with the current date. + * + * @since 2.0 + */ void SetCurrentDate(void); /** - * Sets the year value. @n - * The year value should be between @c 1 and @c 9999. - * - * @since 2.0 - * - * @return An error code - * @param[in] year The year value - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The specified year value is invalid. - */ + * Sets the year value. @n + * The year value should be between @c 1 and @c 9999. + * + * @since 2.0 + * + * @return An error code + * @param[in] year The year value + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified year value is invalid. + */ result SetYear(int year); /** - * Sets the month value. @n - * The month value should be between @c 1 and @c 12. - * - * @since 2.0 - * - * @return An error code - * @param[in] month The month value - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The specified month value is invalid. - */ + * Sets the month value. @n + * The month value should be between @c 1 and @c 12. + * + * @since 2.0 + * + * @return An error code + * @param[in] month The month value + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified month value is invalid. + */ result SetMonth(int month); /** - * Sets the day value. @n - * The day value should be between @c 1 and @c 31. - * - * @since 2.0 - * - * @return An error code - * @param[in] day The day value - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The specified @c day is invalid. - */ + * Sets the day value. @n + * The day value should be between @c 1 and @c 31. + * + * @since 2.0 + * + * @return An error code + * @param[in] day The day value + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c day is invalid. + */ result SetDay(int day); /** - * Sets the valid year range. - * The range should be set in between @c 1 and @c 9999. - * - * @since 2.0 - * - * @return An error code - * @param[in] minYear The minimum year for the valid range - * @param[in] maxYear The maximum year for the valid range - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The given year range is invalid. - * @exception E_SYSTEM A system error has occurred. - */ + * Sets the valid year range. + * The range should be set in between @c 1 and @c 9999. + * + * @since 2.0 + * + * @return An error code + * @param[in] minYear The minimum year for the valid range + * @param[in] maxYear The maximum year for the valid range + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The given year range is invalid. + * @exception E_SYSTEM A system error has occurred. + */ result SetYearRange(int minYear, int maxYear); /** - * Gets the valid year range. - * - * @since 2.0 - * - * @return An error code - * @param[out] minYear The minimum year for the valid range - * @param[out] maxYear The maximum year for the valid range - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - */ + * Gets the valid year range. + * + * @since 2.0 + * + * @return An error code + * @param[out] minYear The minimum year for the valid range + * @param[out] maxYear The maximum year for the valid range + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + */ result GetYearRange(int& minYear, int& maxYear) const; protected: diff --git a/inc/FUiCtrlDateTimePicker.h b/inc/FUiCtrlDateTimePicker.h old mode 100644 new mode 100755 index 543246e..867abca --- a/inc/FUiCtrlDateTimePicker.h +++ b/inc/FUiCtrlDateTimePicker.h @@ -16,11 +16,11 @@ // /** - * @file FUiCtrlDateTimePicker.h - * @brief This is the header file for the %DateTimePicker class. - * - * This header file contains the declarations of the %DateTimePicker class. - */ +* @file FUiCtrlDateTimePicker.h +* @brief This is the header file for the %DateTimePicker class. +* +* This header file contains the declarations of the %DateTimePicker class. +*/ #ifndef _FUI_CTRL_DATE_TIME_PICKER_H_ #define _FUI_CTRL_DATE_TIME_PICKER_H_ @@ -31,18 +31,18 @@ namespace Tizen { namespace Ui { namespace Controls { /** - * @class DateTimePicker - * @brief This class displays a full screen %DateTimePicker on top of the screen. - * - * @since 2.0 - * - * The %DateTimePicker class displays a full screen window-based selector that allows the user to select a certain date and time. - * - * For more information on the class features, see DatePicker, TimePicker, and DateTimePicker. - * - * The following example demonstrates how to use the %DateTimePicker class. - * - * @code +* @class DateTimePicker +* @brief This class displays a full screen %DateTimePicker on top of the screen. +* +* @since 2.0 +* +* The %DateTimePicker class displays a full screen window-based selector that allows the user to select a certain date and time. +* +* For more information on the class features, see DatePicker, TimePicker, and DateTimePicker. +* +* The following example demonstrates how to use the %DateTimePicker class. +* +* @code // Sample code for DateTimePickerSample.h #include @@ -141,7 +141,7 @@ DateTimePickerSample::OnTerminating(void) result r = E_SUCCESS; // Deallocates the date time picker - delete __pDateTimePicker; + __pDateTimePicker->Destroy(); return r; } @@ -174,8 +174,8 @@ DateTimePickerSample::OnDateTimeChangeCanceled(const Control& source) { // .... } - * @endcode - */ +* @endcode +**/ class _OSP_EXPORT_ DateTimePicker : public Tizen::Ui::Window diff --git a/inc/FUiCtrlEditArea.h b/inc/FUiCtrlEditArea.h old mode 100644 new mode 100755 index b424610..39d47e7 --- a/inc/FUiCtrlEditArea.h +++ b/inc/FUiCtrlEditArea.h @@ -35,6 +35,7 @@ #include #include #include +#include #include #include #include @@ -176,6 +177,28 @@ public: */ result Construct(const Tizen::Graphics::Rectangle& rect, InputStyle inputStyle = INPUT_STYLE_FULLSCREEN, int limitLength = 1000); + /** + * Initializes this instance of the %EditArea control with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect An instance of the Graphics::FloatRectangle class @n + * This instance represents the x and y coordinates of the top-left corner of the created window along with + * the width and height of the control. + * @param[in] inputStyle Determines whether the fullscreen keypad or overlay keypad is displayed + * @param[in] limitLength The maximum limit of the length of the text that can be displayed by %EditArea + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid.@n + * The specified @c limitLength is less than or equal to @c 0. @n + * The @c rect.width or the @c rect.height is less than 0. + * @exception E_SYSTEM A system error has occurred. + * @remarks Some methods of the control will only work as expected when it becomes 'displayable'. + * For more information, see Control::IsDisplayable() @n + * The orientation of the full-screen style keypad is determined by the current device orientation. + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect, InputStyle inputStyle = INPUT_STYLE_FULLSCREEN, int limitLength = 1000); + public: /** * Gets the horizontal text alignment. @@ -306,6 +329,19 @@ public: int GetLineSpacing(void) const; /** + * Gets the line spacing. + * + * @since 2.1 + * + * @return The line spacing, @n + * else @c -1 if an error occurs + * @exception E_SUCCESS The method is successful. + * @remarks The specific error code can be accessed using the GetLastResult()() method. + * @see SetLineSpacing() + */ + float GetLineSpacingF(void) const; + + /** * Sets the line spacing. @n * The line spacing is determined by multiplying @c multiplier to the default line spacing and adding @c extra. * @@ -326,6 +362,26 @@ public: result SetLineSpacing(int multiplier, int extra); /** + * Sets the line spacing. @n + * The line spacing is determined by multiplying @c multiplier to the default line spacing and adding @c extra. + * + * @code + * The line spacing = (default line spacing) * multiplier + extra + * @endcode + * @since 2.1 + * + * @return An error code + * @param[in] multiplier The line spacing multiplier + * @param[in] extra The extra line spacing + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid, or @n + * the specified line spacing value cannot be supported. + * @exception E_SYSTEM A system error has occurred. + * @see GetLineSpacingF() + */ + result SetLineSpacing(int multiplier, float extra); + + /** * Gets the margin value of the specified margin type. * * @since 2.0 @@ -341,6 +397,21 @@ public: int GetMargin(EditMarginType marginType) const; /** + * Gets the margin value of the specified margin type. + * + * @since 2.1 + * + * @return The margin value, @n + * else @c -1 if an error occurs + * @param[in] marginType The margin type + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @remarks The specific error code can be accessed using the GetLastResult()() method. + * @see SetMargin() + */ + float GetMarginF(EditMarginType marginType) const; + + /** * Sets the margin value for the specified margin type. * * @since 2.0 @@ -357,6 +428,22 @@ public: result SetMargin(EditMarginType marginType, int margin); /** + * Sets the margin value for the specified margin type. + * + * @since 2.1 + * + * @return An error code + * @param[in] marginType The margin type + * @param[in] margin The margin value to set + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. @n + * The specified @c margin cannot be a negative integer. + * @exception E_SYSTEM A system error has occurred. + * @see GetMarginF() + */ + result SetMargin(EditMarginType marginType, float margin); + + /** * Enables or disables the keypad action. * * @since 2.0 @@ -437,27 +524,27 @@ public: result SetKeypadStyle(KeypadStyle keypadStyle); /** - * Checks whether the text prediction is enabled. - * - * @since 2.0 - * @return @c true if the text prediction is enabled, @n - * else @c false - * @exception E_SUCCESS The method is successful. - * @see SetTextPredictionEnabled() - */ + * Checks whether the text prediction is enabled. + * + * @since 2.0 + * @return @c true if the text prediction is enabled, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @see SetTextPredictionEnabled() + */ bool IsTextPredictionEnabled(void) const; /** - * Enables or disables the text prediction. - * - * @since 2.0 - * @param[in] enable Set to @c true to enable the text prediction, @n - * else @c false - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_UNSUPPORTED_OPERATION This operation is not supported. - * @see IsTextPredictionEnabled() - */ + * Enables or disables the text prediction. + * + * @since 2.0 + * @param[in] enable Set to @c true to enable the text prediction, @n + * else @c false + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_UNSUPPORTED_OPERATION This operation is not supported. + * @see IsTextPredictionEnabled() + */ result SetTextPredictionEnabled(bool enable); /** @@ -519,6 +606,20 @@ public: int GetTextSize(void) const; /** + * Gets the text size. + * + * @since 2.1 + * + * @return The size of the text, @n + * else @c -1 if an error occurs + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @see SetTextSize() + */ + float GetTextSizeF(void) const; + + /** * Sets the text size. * * @since 2.0 @@ -534,6 +635,21 @@ public: result SetTextSize(int size); /** + * Sets the text size. + * + * @since 2.1 + * + * @return An error code + * @param[in] size The text size + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified input parameter is invalid. @n + * The specified @c size cannot be a negative integer. + * @exception E_SYSTEM A system error has occurred. + * @see GetTextSizeF() + */ + result SetTextSize(float size); + + /** * Gets the color of %EditArea for the specified status. * * @since 2.0 @@ -1155,7 +1271,7 @@ public: /** * Checks whether a portion of the text is blocked. * - * @since 2.0 + * @since 2.0 * * @return @c true if the text is blocked, @n * else @c false @@ -1287,6 +1403,27 @@ public: */ result GetCurrentLanguage(Tizen::Locales::LanguageCode& language) const; + /** + * Sets the text filter. + * + * @since 2.1 + * + * @param[in] pFilter The filter + * @remarks The %EditArea control checks with the registered filter to decide whether the user-entered text should be replaced. + */ + void SetEditTextFilter(IEditTextFilter* pFilter); + + /** + * Sends opaque command to the input method. + * + * @since 2.1 + * + * @param[in] command The opaque command + * @remarks This method can be used to provide domain-specific features that are only known between certain input methods and their clients. + * This method may not work, depending on the active Input Method. + */ + void SendOpaqueCommand (const Tizen::Base::String& command); + protected: friend class _EditAreaImpl; diff --git a/inc/FUiCtrlEditDate.h b/inc/FUiCtrlEditDate.h index 827aede..0f725ba 100644 --- a/inc/FUiCtrlEditDate.h +++ b/inc/FUiCtrlEditDate.h @@ -16,11 +16,11 @@ // /** - * @file FUiCtrlEditDate.h - * @brief This is the header file for the %EditDate class. - * - * This header file contains the declarations of the %EditDate class. - */ +* @file FUiCtrlEditDate.h +* @brief This is the header file for the %EditDate class. +* +* This header file contains the declarations of the %EditDate class. +*/ #ifndef _FUI_CTRL_EDITDATE_H_ #define _FUI_CTRL_EDITDATE_H_ @@ -32,18 +32,18 @@ namespace Tizen { namespace Ui { namespace Controls { /** - * @class EditDate - * @brief This class defines the common behavior of an %EditDate control. - * - * @since 2.0 - * - * The %EditDate class displays a small, fixed-size selector that allows the user to select a date. Unlike the DatePicker, %EditDate can be placed in a container. - * - * For more information on the class features, see EditDate and EditTime. - * - * The following example demonstrates how to use the %EditDate class. - * - * @code +* @class EditDate +* @brief This class defines the common behavior of an %EditDate control. +* +* @since 2.0 +* +* The %EditDate class displays a small, fixed-size selector that allows the user to select a date. Unlike the DatePicker, %EditDate can be placed in a container. +* +* For more information on the class features, see EditDate and EditTime. +* +* The following example demonstrates how to use the %EditDate class. +* +* @code // Sample code for EditDateSample.h #include @@ -112,210 +112,227 @@ EditDateSample::OnDateChangeCanceled(const Tizen::Ui::Control& source) { // .... } - * @endcode - */ +* @endcode +**/ class _OSP_EXPORT_ EditDate : public Tizen::Ui::Control { public: /** - * The object is not fully constructed after this constructor is called. For full construction, the Construct() method must be called right after calling this constructor. - * - * @since 2.0 - */ + * The object is not fully constructed after this constructor is called. For full construction, the Construct() method must be called right after calling this constructor. + * + * @since 2.0 + */ EditDate(void); /** - * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. - * - * @since 2.0 - */ + * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. + * + * @since 2.0 + */ virtual ~EditDate(void); /** - * Adds a data change event listener instance. - * Added listener is called when the date of the DatePicker is changed either through user manipulation or by calling one of its setters. - * - * @since 2.0 - * - * @param[in] listener The listener to be added - * @see IDateChangeEventListener::OnDateChanged() - * @see IDateChangeEventListener::OnDateChangeCanceled() - * @see RemoveDateChangeEventListener() - */ + * Adds a data change event listener instance. + * Added listener is called when the date of the DatePicker is changed either through user manipulation or by calling one of its setters. + * + * @since 2.0 + * + * @param[in] listener The listener to be added + * @see IDateChangeEventListener::OnDateChanged() + * @see IDateChangeEventListener::OnDateChangeCanceled() + * @see RemoveDateChangeEventListener() + */ void AddDateChangeEventListener(Tizen::Ui::IDateChangeEventListener& listener); /** - * Removes a date changed event listener instance. @n - * Removed listener cannot listen to events when they are fired. - * - * @since 2.0 - * - * @param[in] listener The listener to be removed - * @see IDateChangeEventListener::OnDateChanged() - * @see IDateChangeEventListener::OnDateChangeCanceled() - * @see AddDateChangeEventListener() - */ + * Removes a date changed event listener instance. @n + * Removed listener cannot listen to events when they are fired. + * + * @since 2.0 + * + * @param[in] listener The listener to be removed + * @see IDateChangeEventListener::OnDateChanged() + * @see IDateChangeEventListener::OnDateChangeCanceled() + * @see AddDateChangeEventListener() + */ void RemoveDateChangeEventListener(Tizen::Ui::IDateChangeEventListener& listener); /** - * Initializes this instance of %EditDate with the specified parameter. - * - * @since 2.0 - * - * @return An error code - * @param[in] point The position of the %EditDate in the container - * @param[in] title The title - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - * @remarks A control is fully usable only after it has been added to a container, therefore, some methods may fail if used earlier. - */ + * Initializes this instance of %EditDate with the specified parameter. + * + * @since 2.0 + * + * @return An error code + * @param[in] point The position of the %EditDate in the container + * @param[in] title The title + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @remarks A control is fully usable only after it has been added to a container, therefore, some methods may fail if used earlier. + */ result Construct(const Tizen::Graphics::Point& point, const Tizen::Base::String& title = L""); + /* + * Initializes this instance of %EditDate with the specified parameter. + * + * @since 2.1 + * + * @return An error code + * @param[in] point The position of the %EditDate in the container + * @param[in] title The title + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @remarks A control is fully usable only after it has been added to a container, therefore, some methods may fail if used earlier. + */ + result Construct(const Tizen::Graphics::FloatPoint& point, const Tizen::Base::String& title = L""); + /** - * Gets the current date value of the %EditDate control. - * - * @since 2.0 - * - * @return The date value - */ + * Gets the current date value of the %EditDate control. + * + * @since 2.0 + * + * @return The date value + */ Tizen::Base::DateTime GetDate(void) const; /** - * Gets the current day value of the %EditDate control. - * - * @since 2.0 - * - * @return The current day value as an integer, @n - * else @c -1 if the %EditDate instance is not constructed - */ + * Gets the current day value of the %EditDate control. + * + * @since 2.0 + * + * @return The current day value + * + * @remarks The default day value is the current system day. + */ int GetDay(void) const; /** - * Gets the current month value of the %EditDate control. - * - * @since 2.0 - * - * @return The current month value as an integer, @n - * else @c -1 if the %EditDate instance is not constructed - */ + * Gets the current month value of the %EditDate control. + * + * @since 2.0 + * + * @return The current month value as an integer + * + * @remarks The default month value is the current system month. + */ int GetMonth(void) const; /** - * Gets the current year value of the %EditDate control. - * - * @since 2.0 - * - * @return The current year value, @n - * else @c -1 if the %EditDate instance is not constructed - */ + * Gets the current year value of the %EditDate control. + * + * @since 2.0 + * + * @return The current year value + * + * @remarks The default year value is the current system year. + */ int GetYear(void) const; /** - * Sets the designated time value of the %EditDate control. - * - * @since 2.0 - * - * @param[in] date The date to be set - */ + * Sets the designated time value of the %EditDate control. + * + * @since 2.0 + * + * @param[in] date The date to be set + */ void SetDate(const Tizen::Base::DateTime& date); /** - * Sets the value of the %EditDate control using the current system date. - * - * @since 2.0 - */ + * Sets the value of the %EditDate control using the current system date. + * + * @since 2.0 + */ void SetCurrentDate(void); /** - * Sets the year value. - * The year value should be between @c 1 and @c 9999. - * - * @since 2.0 - * - * @return An error code - * @param[in] year The year to be set - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The given year value is invalid. - * @exception E_SYSTEM A system error has occurred. - */ + * Sets the year value. + * The year value should be between @c 1 and @c 9999. + * + * @since 2.0 + * + * @return An error code + * @param[in] year The year to be set + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The given year value is invalid. + * @exception E_SYSTEM A system error has occurred. + */ result SetYear(int year); /** - * Sets the month value of the %EditDate control. - * The month value should be between @c 1 and @c 12. - * - * @since 2.0 - * - * @return An error code - * @param[in] month The month to be set - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The given month value is invalid. - * @exception E_SYSTEM A system error has occurred. - * - */ + * Sets the month value of the %EditDate control. + * The month value should be between @c 1 and @c 12. + * + * @since 2.0 + * + * @return An error code + * @param[in] month The month to be set + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The given month value is invalid. + * @exception E_SYSTEM A system error has occurred. + * + */ result SetMonth(int month); /** - * Sets the day value of the %EditDate control. - * The day value should be between @c 1 and @c 31. - * - * @since 2.0 - * - * @return An error code - * @param[in] day The day to be set - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The given day value is invalid. - * @exception E_SYSTEM A system error has occurred. - */ + * Sets the day value of the %EditDate control. + * The day value should be between @c 1 and @c 31. + * + * @since 2.0 + * + * @return An error code + * @param[in] day The day to be set + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The given day value is invalid. + * @exception E_SYSTEM A system error has occurred. + */ result SetDay(int day); /** - * Enables the %DatePicker control. - * - * @since 2.0 - * - * @param[in] enable Set to @c true to enable the DatePicker control, @n - * else @c false - */ + * Enables the %DatePicker control. + * + * @since 2.0 + * + * @param[in] enable Set to @c true to enable the DatePicker control, @n + * else @c false + */ void SetDatePickerEnabled(bool enable); /** - * Checks whether the DatePicker control is enabled. - * - * @since 2.0 - * - * @return @c true if the DatePicker control is enabled, @n - * else @c false - */ + * Checks whether the DatePicker control is enabled. + * + * @since 2.0 + * + * @return @c true if the DatePicker control is enabled, @n + * else @c false + */ bool IsDatePickerEnabled(void) const; /** - * Sets the valid year range. @n - * The range should be set in between @c 1 and @c 9999. - * - * @since 2.0 - * - * @return An error code - * @param[in] minYear The minimum year for the valid range - * @param[in] maxYear The maximum year for the valid range - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The given year range is invalid. - * @exception E_SYSTEM A system error has occurred. - */ + * Sets the valid year range. @n + * The range should be set in between @c 1 and @c 9999. + * + * @since 2.0 + * + * @return An error code + * @param[in] minYear The minimum year for the valid range + * @param[in] maxYear The maximum year for the valid range + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The given year range is invalid. + * @exception E_SYSTEM A system error has occurred. + */ result SetYearRange(int minYear, int maxYear); /** - * Gets the valid year range. - * - * @since 2.0 - * - * @return An error code - * @param[out] minYear The minimum year for the valid range - * @param[out] maxYear The maximum year for the valid range - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - */ + * Gets the valid year range. + * + * @since 2.0 + * + * @return An error code + * @param[out] minYear The minimum year for the valid range + * @param[out] maxYear The maximum year for the valid range + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + */ result GetYearRange(int& minYear, int& maxYear) const; private: diff --git a/inc/FUiCtrlEditField.h b/inc/FUiCtrlEditField.h old mode 100644 new mode 100755 index 4eb2d6b..719247e --- a/inc/FUiCtrlEditField.h +++ b/inc/FUiCtrlEditField.h @@ -35,7 +35,7 @@ #include #include #include -#include +#include #include #include #include @@ -149,10 +149,10 @@ public: EditField(void); /** - * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. - * - * @since 2.0 - */ + * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. + * + * @since 2.0 + */ virtual ~EditField(void); /** @@ -186,6 +186,36 @@ public: result Construct(const Tizen::Graphics::Rectangle& rect, EditFieldStyle style = EDIT_FIELD_STYLE_NORMAL, InputStyle inputStyle = INPUT_STYLE_FULLSCREEN, bool showTitle = false, int limitLength = 100, GroupStyle groupStyle = GROUP_STYLE_NONE); /** + * Initializes this instance of the %EditField control with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect An instance of the Graphics::FloatRectangle class @n + * This instance represents the x and y coordinates of the top-left corner of the created window along with + * the width and height of the control. + * @param[in] style The style of the %EditField control + * @param[in] inputStyle The input style of the %EditField control + * @param[in] showTitle Set to @c true to display the title, @n + * else @c false + * @param[in] limitLength The limit for the length of the text in the %EditField control + * @param[in] groupStyle The table view style of the %EditField control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c limitLength is less than or equal to @c 0, or @n + * either the @c rect.width or the @c rect.height is less than @c 0. + * @exception E_UNSUPPORTED_OPTION The specified option is not supported. @n + * The title is not supported by small style %EditField. + * @exception E_SYSTEM A system error has occurred. + * @remarks A control is fully usable only after it has been added to a container. Therefore, some methods may fail if the control has been used + * earlier. The %EditField style of SMALL property cannot be used together with group styles. @n + * If the specified size is less than the minimum size, %EditField is constructed with the minimum size. + * @remarks Following are the input styles used for creating the different orientations of a keypad: @n + * - INPUT_STYLE_FULLSCREEN: The orientation is decided by the G-sensor value. @n + * - INPUT_STYLE_OVERLAY: The orientation is the same as that of a parent form. + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect, EditFieldStyle style = EDIT_FIELD_STYLE_NORMAL, InputStyle inputStyle = INPUT_STYLE_FULLSCREEN, bool showTitle = false, int limitLength = 100, GroupStyle groupStyle = GROUP_STYLE_NONE); + + /** * Initializes this instance of the %EditField control. * * @since 2.0 @@ -215,6 +245,36 @@ public: */ result Construct(const Tizen::Graphics::Rectangle& rect, EditFieldStyle style, InputStyle inputStyle, EditFieldTitleStyle titleStyle, bool enableClear = false, int limitLength = 100, GroupStyle groupStyle = GROUP_STYLE_NONE); + /** + * Initializes this instance of the %EditField control. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect The bounds of %EditField + * @param[in] style The style of the %EditField control + * @param[in] inputStyle The input style of the %EditField control + * @param[in] titleStyle The title style + * @param[in] enableClear Set to @c true to enable the clear button, @n + * else @c false + * @param[in] limitLength The limit of the length of text in the %EditField control + * @param[in] groupStyle The table view style of the %EditField control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. @n + * The specified @c limitLength is less than or equal to @c 0. @n + * The specified @c rect.width or the @c rect.height is less than @c 0. + * @exception E_UNSUPPORTED_OPTION The specified option is not supported. @n + * Title is not supported in small style %EditField. + * @exception E_SYSTEM A system error has occurred. + * @remarks A control is fully usable only after it has been added to a container. Therefore, some methods may fail if the control is used earlier. + * The %EditField style of SMALL property cannot be used together with group styles. @n + * If the specified size is less than the minimum size, EditFied() is constructed with the minimum size. + * @remarks Following are the input styles used for creating different orientations of a keypad: @n + * - INPUT_STYLE_FULLSCREEN: The orientation is decided by the G-sensor value.@n + * - INPUT_STYLE_OVERLAY: The orientation is similar to the parent Form. + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect, EditFieldStyle style, InputStyle inputStyle, EditFieldTitleStyle titleStyle, bool enableClear = false, int limitLength = 100, GroupStyle groupStyle = GROUP_STYLE_NONE); + public: /** * Gets the horizontal text alignment of the %EditField control. @@ -347,6 +407,21 @@ public: int GetMargin(EditMarginType marginType) const; /** + * Gets the margin value of the specified margin type. + * + * @since 2.1 + * + * @return The margin value of the specified margin type, @n + * else @c -1 if an error occurs + * @param[in] marginType The margin type + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @see SetMargin() + */ + float GetMarginF(EditMarginType marginType) const; + + /** * Sets the margin for the specified margin type. * * @since 2.0 @@ -363,6 +438,22 @@ public: result SetMargin(EditMarginType marginType, int margin); /** + * Sets the margin for the specified margin type. + * + * @since 2.1 + * + * @return An error code + * @param[in] marginType The margin type + * @param[in] margin The margin to set + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. @n + * The specified @c margin cannot be a negative integer. + * @exception E_SYSTEM A system error has occurred. + * @see GetMarginF() + */ + result SetMargin(EditMarginType marginType, float margin); + + /** * Enables or disables the keypad action. * * @since 2.0 @@ -500,6 +591,20 @@ public: int GetTextSize(void) const; /** + * Gets the text size. + * + * @since 2.1 + * + * @return The size of the text, @n + * else @c -1 if an error occurs + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @see SetTextSize() + */ + float GetTextSizeF(void) const; + + /** * Sets the text size. * * @since 2.0 @@ -515,6 +620,21 @@ public: result SetTextSize(int size); /** + * Sets the text size. + * + * @since 2.1 + * + * @return An error code + * @param[in] size The text size + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified input parameter is invalid. @n + * The @c size cannot be a negative integer. + * @exception E_SYSTEM A system error has occurred. + * @see GetTextSizeF() + */ + result SetTextSize(float size); + + /** * Gets the color of the %EditField control for the specified status. * * @since 2.0 @@ -658,13 +778,13 @@ public: void AddTextEventListener(Tizen::Ui::ITextEventListener& listener); /** - * Removes the ITextEventListener instance. @n - * The removed listener cannot listen to events when they are fired. - * - * @since 2.0 - * - * @param[in] listener The listener to be removed - */ + * Removes the ITextEventListener instance. @n + * The removed listener cannot listen to events when they are fired. + * + * @since 2.0 + * + * @param[in] listener The listener to be removed + */ void RemoveTextEventListener(Tizen::Ui::ITextEventListener& listener); /** @@ -681,13 +801,13 @@ public: void AddScrollPanelEventListener(Tizen::Ui::IScrollPanelEventListener& listener); /** - * Removes the specified scroll panel event listener instance. @n - * The removed listener cannot listen to events when they are fired. - * - * @since 2.0 - * - * @param[in] listener The listener to be removed - */ + * Removes the specified scroll panel event listener instance. @n + * The removed listener cannot listen to events when they are fired. + * + * @since 2.0 + * + * @param[in] listener The listener to be removed + */ void RemoveScrollPanelEventListener(Tizen::Ui::IScrollPanelEventListener& listener); /** @@ -736,7 +856,7 @@ public: /** * Gets the remaining length of the %EditField control. * - * @since 2.0 + * @since 2.0 * * @return The remaining length of the %EditField control, @n * else @c -1 if an error occurs @@ -756,7 +876,7 @@ public: /** * Checks whether the lowercase mode is enabled. * - * @since 2.0 + * @since 2.0 * * @return @c true if the lowercase mode is enabled, @n * else @c false @@ -1063,26 +1183,26 @@ public: bool IsKeypadEnabled(void) const; /** - * Checks whether the text prediction is enabled. - * - * @since 2.0 - * @return @c true if the text prediction is enabled, @n - * else @c false - * @see SetTextPredictionEnabled() - */ + * Checks whether the text prediction is enabled. + * + * @since 2.0 + * @return @c true if the text prediction is enabled, @n + * else @c false + * @see SetTextPredictionEnabled() + */ bool IsTextPredictionEnabled(void) const; /** - * Enables or disables the text prediction. - * - * @since 2.0 - * @param[in] enable Set to @c true to enable the text prediction, @n - * else @c false - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_UNSUPPORTED_OPERATION This operation is not supported. - * @see IsTextPredictionEnabled() - */ + * Enables or disables the text prediction. + * + * @since 2.0 + * @param[in] enable Set to @c true to enable the text prediction, @n + * else @c false + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_UNSUPPORTED_OPERATION This operation is not supported. + * @see IsTextPredictionEnabled() + */ result SetTextPredictionEnabled(bool enable); /** @@ -1268,30 +1388,51 @@ public: int GetOverlayKeypadCommandButtonActionId(CommandButtonPosition position) const; /** - * Sets the input language. - * - * @since 2.0 - * - * @return An error code - * @param[in] languageCode The language to be set - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_MEMORY The memory is insufficient. - * @remarks The application can set the language of the current keypad that is associated with the current %EditField. @n - * This method only works if the language to set is supported by the current preloaded keypad. - */ + * Sets the input language. + * + * @since 2.0 + * + * @return An error code + * @param[in] languageCode The language to be set + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_MEMORY The memory is insufficient. + * @remarks The application can set the language of the current keypad that is associated with the current %EditField. @n + * This method only works if the language to set is supported by the current preloaded keypad. + */ result SetCurrentLanguage(Tizen::Locales::LanguageCode languageCode); /** - * Gets the current input language. + * Gets the current input language. + * + * @since 2.0 + * + * @return An error code + * @param[out] language The current input language + * @exception E_SUCCESS The method is successful. + * @remarks The application can get the current language of the keypad that is associated with the current %EditField. + */ + result GetCurrentLanguage(Tizen::Locales::LanguageCode& language) const; + + /** + * Sets the text filter. * - * @since 2.0 + * @since 2.1 * - * @return An error code - * @param[out] language The current input language - * @exception E_SUCCESS The method is successful. - * @remarks The application can get the current language of the keypad that is associated with the current %EditField. + * @param[in] pFilter The filter + * @remarks The %EditField control checks with the registered filter to decide whether the user-entered text should be replaced. */ - result GetCurrentLanguage(Tizen::Locales::LanguageCode& language) const; + void SetEditTextFilter(IEditTextFilter* pFilter); + + /** + * Sends opaque command to the input method. + * + * @since 2.1 + * + * @param[in] command The opaque command + * @remarks This method can be used to provide domain-specific features that are only known between certain input methods and their clients. + * This method may not work, depending on the active Input Method. + */ + void SendOpaqueCommand (const Tizen::Base::String& command); protected: friend class _EditFieldImpl; diff --git a/inc/FUiCtrlEditTime.h b/inc/FUiCtrlEditTime.h index 178efa6..ea67098 100644 --- a/inc/FUiCtrlEditTime.h +++ b/inc/FUiCtrlEditTime.h @@ -16,11 +16,11 @@ // /** - * @file FUiCtrlEditTime.h - * @brief This is the header file for the %EditTime class. - * - * This header file contains the declarations of the %EditTime class. - */ +* @file FUiCtrlEditTime.h +* @brief This is the header file for the %EditTime class. +* +* This header file contains the declarations of the %EditTime class. +*/ #ifndef _FUI_CTRL_EDIT_TIME_H_ #define _FUI_CTRL_EDIT_TIME_H_ @@ -32,19 +32,19 @@ namespace Tizen { namespace Ui { namespace Controls { /** - * @class EditTime - * @brief This class defines the common behavior of an %EditTime control. - * - * @since 2.0 - * - * The %EditTime class displays a small, fixed-size selector that allows the user to select a time. - * Unlike TimePicker, %EditTime can be placed in a container. - * - * For more information on the class features, see EditDate and EditTime. - * - * The following example demonstrates how to use the %EditTime class. - * - * @code +* @class EditTime +* @brief This class defines the common behavior of an %EditTime control. +* +* @since 2.0 +* +* The %EditTime class displays a small, fixed-size selector that allows the user to select a time. +* Unlike TimePicker, %EditTime can be placed in a container. +* +* For more information on the class features, see EditDate and EditTime. +* +* The following example demonstrates how to use the %EditTime class. +* +* @code // Sample code for EditTimeSample.h #include @@ -112,8 +112,8 @@ EditTimeSample::OnTimeChangeCanceled(const Control& source) { // .... } - * @endcode - */ +* @endcode +**/ class _OSP_EXPORT_ EditTime : public Tizen::Ui::Control { @@ -126,7 +126,7 @@ public: EditTime(void); /** - * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. + * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. * * @since 2.0 */ @@ -162,20 +162,34 @@ public: * * @return An error code * @param[in] point The position of %EditTime in container - * @param[in] title The title + * @param[in] title The title * @exception E_SUCCESS The method is successful. * @exception E_SYSTEM A system error has occurred. */ result Construct(const Tizen::Graphics::Point& point, const Tizen::Base::String& title = L""); + /* + * Initializes this instance of %EditTime with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] point The position of %EditTime in container + * @param[in] title The title + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + */ + result Construct(const Tizen::Graphics::FloatPoint& point, const Tizen::Base::String& title = L""); + /** * Gets the current hour value of the %EditTime control. * * @since 2.0 * - * @return The current hour value, @n - * else @c -1 if the %EditTime instance is not constructed @n + * @return The current hour value. @n * The hour value is between @c 0 to @c 23. + * + * @remarks The default hour value is the current system hour. */ int GetHour(void) const; @@ -184,8 +198,9 @@ public: * * @since 2.0 * - * @return The current minute value, @n - * else @c -1 if this %EditTime instance is not constructed + * @return The current minute value + * + * @remarks The default minute value is the current system minute. */ int GetMinute(void) const; diff --git a/inc/FUiCtrlEditTypes.h b/inc/FUiCtrlEditTypes.h old mode 100644 new mode 100755 diff --git a/inc/FUiCtrlExpandableEditArea.h b/inc/FUiCtrlExpandableEditArea.h index 4f2fd73..4bf31bd 100644 --- a/inc/FUiCtrlExpandableEditArea.h +++ b/inc/FUiCtrlExpandableEditArea.h @@ -30,6 +30,7 @@ #include #include #include +#include #include #include #include @@ -97,12 +98,12 @@ enum ExpandableEditAreaTokenStatus * @since 2.0 * * The %ExpandableEditArea class displays a multi-line text editor the height of that is automatically adjusted according to the number of lines currently visible in the text box. +* +* For more information on the class features, see ExpandableEditArea. * - * For more information on the class features, see ExpandableEditArea. - * - * The following sample code demonstrates how to use the %ExpandableEditArea class. - * - * @code +* The following sample code demonstrates how to use the %ExpandableEditArea class. +* +* @code // Sample code for ExpandableEditAreaSample.h #include @@ -206,8 +207,8 @@ ExpandableEditAreaSample::OnExpandableEditAreaLineRemoved(Tizen::Ui::Controls::E { // .... } - * @endcode - */ +* @endcode +*/ class _OSP_EXPORT_ ExpandableEditArea : public Tizen::Ui::Control { @@ -249,6 +250,29 @@ public: */ result Construct(const Tizen::Graphics::Rectangle& rect, ExpandableEditAreaStyle style, ExpandableEditAreaTitleStyle titleStyle, int maxExpandableLines = 10); + /* + * Initializes this instance of %ExpandableEditArea with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect An instance of the Graphics::FloatRectangle class @n + * This instance represents the x and y coordinates of the top-left corner of the expandable edit area along with + * the width and height. + * @param[in] style The style of the expandable edit area + * @param[in] titleStyle The title style + * @param[in] maxExpandableLines The maximum number of lines to which the control can be expanded. + * @exception E_SUCCESS The method is successful. + * @exception E_UNSUPPORTED_OPTION The specified option is not supported. @n + * The token style %ExpandabledEditArea does not support EXPANDABLE_EDIT_AREA_TITLE_STYLE_TOP. + * @exception E_MAX_EXCEEDED The number of lines has exceeded the maximum limit. + * @exception E_INVALID_ARG A specified input parameter is invalid, or @n + * the specified @c maxLines is either negative or @c 0. + * @exception E_SYSTEM A system error has occurred. + * @remarks By default, the line count is @c 1. + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect, ExpandableEditAreaStyle style, ExpandableEditAreaTitleStyle titleStyle, int maxExpandableLines = 10); + // TEXT MANAGEMENT /** * Appends the specified character at the end of the existing text. @@ -283,168 +307,168 @@ public: result AppendText(const Tizen::Base::String& text); /** - * Appends the text that will be displayed by bitmap at the end of the existing text. - * - * @since 2.0 - * - * @return An error code - * @param[in] text The text to be appended @n - * It will be displayed by the @c textImage - * @param[in] textImage The alternate bitmap to be displayed - * @exception E_SUCCESS The method is successful. - * @exception E_MAX_EXCEEDED The length of the specified @c text exceeds the maximum length of the text that can be displayed by % ExpanableEditArea. - * @exception E_UNSUPPORTED_OPERATION The current state of the instance prohibits the execution of the specified operation. @n - * The operation is not supported if the style is EXPANDABLE_EDIT_AREA_STYLE_TOKEN. - * @remarks The method modifies the text buffer that is managed by the %ExpanableEditArea control. @n - * To display the changes, the control must be drawn again. The text to be appended will be displayed by the @c textImage. - */ + * Appends the text that will be displayed by bitmap at the end of the existing text. + * + * @since 2.0 + * + * @return An error code + * @param[in] text The text to be appended @n + * It will be displayed by the @c textImage + * @param[in] textImage The alternate bitmap to be displayed + * @exception E_SUCCESS The method is successful. + * @exception E_MAX_EXCEEDED The length of the specified @c text exceeds the maximum length of the text that can be displayed by % ExpanableEditArea. + * @exception E_UNSUPPORTED_OPERATION The current state of the instance prohibits the execution of the specified operation. @n + * The operation is not supported if the style is EXPANDABLE_EDIT_AREA_STYLE_TOKEN. + * @remarks The method modifies the text buffer that is managed by the %ExpanableEditArea control. @n + * To display the changes, the control must be drawn again. The text to be appended will be displayed by the @c textImage. + */ result AppendText(const Tizen::Base::String& text, const Tizen::Graphics::Bitmap& textImage); /** - * Deletes the character present at the current cursor position. - * - * @since 2.0 - * - * @return An error code - * @param[in] index The index - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The specified input parameter is invalid. @n - * The specified @c index is negative. - * @exception E_OUT_OF_RANGE The specified @c index is outside the bounds of the data structure. @n - * Either the specified @c index is greater than the number of elements or less than @c 0. - * @exception E_SYSTEM A system error has occurred. - * @remarks The method modifies the text buffer that is managed by the %ExpandableEditArea control. @n - * To display the changes, the control must be drawn again. - */ + * Deletes the character present at the current cursor position. + * + * @since 2.0 + * + * @return An error code + * @param[in] index The index + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified input parameter is invalid. @n + * The specified @c index is negative. + * @exception E_OUT_OF_RANGE The specified @c index is outside the bounds of the data structure. @n + * Either the specified @c index is greater than the number of elements or less than @c 0. + * @exception E_SYSTEM A system error has occurred. + * @remarks The method modifies the text buffer that is managed by the %ExpandableEditArea control. @n + * To display the changes, the control must be drawn again. + */ result DeleteCharacterAt(int index); /** - * Inserts a character at the specified index. - * - * @since 2.0 - * - * @return An error code - * @param[in] index The position to insert the character - * @param[in] character The character to be inserted - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE The specified @c index is outside the bounds of the data structure. @n - * Either the specified @c index is greater than the number of elements or less than @c 0. - * @exception E_MAX_EXCEEDED The length of the specified @c text exceeds system limitations. - * @exception E_SYSTEM A system error has occurred. - * @remarks The method modifies the text buffer that is managed by the %ExpandableEditArea control. @n - * To display the changes, the control must be drawn again. - */ + * Inserts a character at the specified index. + * + * @since 2.0 + * + * @return An error code + * @param[in] index The position to insert the character + * @param[in] character The character to be inserted + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c index is outside the bounds of the data structure. @n + * Either the specified @c index is greater than the number of elements or less than @c 0. + * @exception E_MAX_EXCEEDED The length of the specified @c text exceeds system limitations. + * @exception E_SYSTEM A system error has occurred. + * @remarks The method modifies the text buffer that is managed by the %ExpandableEditArea control. @n + * To display the changes, the control must be drawn again. + */ result InsertCharacterAt(int index, const Tizen::Base::Character& character); /** - * Inserts the text at the specified index. - * - * @since 2.0 - * - * @return An error code - * @param[in] index The position to insert the text - * @param[in] text The text to be inserted - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE The specified @c index is outside the bounds of the data structure. @n - * Either the specified @c index is greater than the number of elements or less than @c 0. - * @exception E_MAX_EXCEEDED The length of the specified @c text exceeds system limitations. - * @exception E_SYSTEM A system error has occurred. - */ + * Inserts the text at the specified index. + * + * @since 2.0 + * + * @return An error code + * @param[in] index The position to insert the text + * @param[in] text The text to be inserted + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c index is outside the bounds of the data structure. @n + * Either the specified @c index is greater than the number of elements or less than @c 0. + * @exception E_MAX_EXCEEDED The length of the specified @c text exceeds system limitations. + * @exception E_SYSTEM A system error has occurred. + */ result InsertTextAt(int index, const Tizen::Base::String& text); /** - * Inserts the text that will be displayed by bitmap at the specified text position. - * - * @since 2.0 - * - * @return An error code - * @param[in] position The position to insert the text - * @param[in] text The text to be inserted @n - * It will be displayed by the @c textImage - * @param[in] textImage The alternate bitmap to be displayed - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE The specified @c position is outside the valid range. @n - * Either the specified @c position is greater than the number of existing text in the % ExpanableEditArea or less than @c 0. - * @exception E_MAX_EXCEEDED The length of the specified @c text exceeds the maximum length of the text that can be displayed by % ExpanableEditArea. - * @exception E_UNSUPPORTED_OPERATION The current state of the instance prohibits the execution of the specified operation. @n - * The operation is not supported if the style is EXPANDABLE_EDIT_AREA_STYLE_TOKEN. - * @remarks The method modifies the text buffer that is managed by the %ExpanableEditArea control. @n - * To display the changes, the control must be drawn again. The text to be inserted will be displayed by the @c textImage. - */ + * Inserts the text that will be displayed by bitmap at the specified text position. + * + * @since 2.0 + * + * @return An error code + * @param[in] position The position to insert the text + * @param[in] text The text to be inserted @n + * It will be displayed by the @c textImage + * @param[in] textImage The alternate bitmap to be displayed + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c position is outside the valid range. @n + * Either the specified @c position is greater than the number of existing text in the % ExpanableEditArea or less than @c 0. + * @exception E_MAX_EXCEEDED The length of the specified @c text exceeds the maximum length of the text that can be displayed by % ExpanableEditArea. + * @exception E_UNSUPPORTED_OPERATION The current state of the instance prohibits the execution of the specified operation. @n + * The operation is not supported if the style is EXPANDABLE_EDIT_AREA_STYLE_TOKEN. + * @remarks The method modifies the text buffer that is managed by the %ExpanableEditArea control. @n + * To display the changes, the control must be drawn again. The text to be inserted will be displayed by the @c textImage. + */ result InsertTextAt(int position, const Tizen::Base::String& text, const Tizen::Graphics::Bitmap& textImage); /** - * Gets the portion of the text that is displayed by the %ExpandableEditArea control. - * - * @since 2.0 - * - * @return The specified portion of the text, @n - * else an empty string if an error occurs - * @param[in] start The starting index of the range - * @param[in] end The last index of the range - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE The specified index is outside the bounds of the data structure. @n - * The specified @c start or @c end is greater than the number of elements or less than @c 0. - * @exception E_SYSTEM A system error has occurred. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * @see GetText() - * @see SetText() - */ + * Gets the portion of the text that is displayed by the %ExpandableEditArea control. + * + * @since 2.0 + * + * @return The specified portion of the text, @n + * else an empty string if an error occurs + * @param[in] start The starting index of the range + * @param[in] end The last index of the range + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified index is outside the bounds of the data structure. @n + * The specified @c start or @c end is greater than the number of elements or less than @c 0. + * @exception E_SYSTEM A system error has occurred. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @see GetText() + * @see SetText() + */ Tizen::Base::String GetText(int start, int end) const; /** - * Gets the text of the %ExpandableEditArea control. - * - * @since 2.0 - * - * @return The text of the %ExpandableEditArea control, @n - * else an empty string if an error occurs - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - * @remarks The specific error code can be accessed using the GetLastResult() method. - */ + * Gets the text of the %ExpandableEditArea control. + * + * @since 2.0 + * + * @return The text of the %ExpandableEditArea control, @n + * else an empty string if an error occurs + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @remarks The specific error code can be accessed using the GetLastResult() method. + */ Tizen::Base::String GetText(void) const; /** - * Gets the text length. - * - * @since 2.0 - * - * @return The length of the text, @n - * else @c -1 if an error occurs - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - * @remarks The specific error code can be accessed using the GetLastResult() method. - */ + * Gets the text length. + * + * @since 2.0 + * + * @return The length of the text, @n + * else @c -1 if an error occurs + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @remarks The specific error code can be accessed using the GetLastResult() method. + */ int GetTextLength(void) const; /** - * Sets the text to be displayed by the %ExpandableEditArea control. - * - * @since 2.0 - * - * @param[in] text The text to be set - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The specified input parameter is invalid, @n - * or the length of the specified @c text exceeds system limitations. - * @exception E_SYSTEM A system error has occurred. - * @remarks To denote the end of a line use '\\n'. - * The method modifies the text buffer that is managed by the %ExpandableEditArea control. - * To display the changes, the control must be drawn again. - */ + * Sets the text to be displayed by the %ExpandableEditArea control. + * + * @since 2.0 + * + * @param[in] text The text to be set + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified input parameter is invalid, @n + * or the length of the specified @c text exceeds system limitations. + * @exception E_SYSTEM A system error has occurred. + * @remarks To denote the end of a line use '\\n'. + * The method modifies the text buffer that is managed by the %ExpandableEditArea control. + * To display the changes, the control must be drawn again. + */ result SetText(const Tizen::Base::String& text); /** - * Clears the text that is displayed by the %ExpandableEditArea control. - * - * @since 2.0 - * - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - * @remarks The method modifies the text buffer that is managed by the %ExpandableEditArea control. - * To display the changes, the control must be drawn again. - */ + * Clears the text that is displayed by the %ExpandableEditArea control. + * + * @since 2.0 + * + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @remarks The method modifies the text buffer that is managed by the %ExpandableEditArea control. + * To display the changes, the control must be drawn again. + */ result Clear(void); /** @@ -488,16 +512,16 @@ public: Tizen::Base::String GetGuideText(void) const; /** - * Sets the guide text to be displayed, when there is no data in the search field. - * - * @since 2.0 - * - * @return An error code - * @param[in] guideText The guide text - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - * @see GetGuideText() - */ + * Sets the guide text to be displayed, when there is no data in the search field. + * + * @since 2.0 + * + * @return An error code + * @param[in] guideText The guide text + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @see GetGuideText() + */ result SetGuideText(const Tizen::Base::String& guideText); // LINE MANAGEMENT @@ -522,7 +546,18 @@ public: * else @c -1 if an error occurs * @see SetLineSpacing () */ - int GetLineSpacing (void) const; + int GetLineSpacing(void) const; + + /* + * Gets the line spacing. + * + * @since 2.1 + * @return The line spacing, @n + * else @c -1.0f if an error occurs + * @see SetLineSpacing () + */ + + float GetLineSpacingF(void) const; /** * Sets the line spacing. @n @@ -540,18 +575,36 @@ public: * @exception E_INVALID_ARG This exception is returned when @c multiplier or @c extra is less than 0. * @see GetLineSpacing () */ - result SetLineSpacing (int multiplier, int extra); + result SetLineSpacing(int multiplier, int extra); - /** - * Gets the current line count. + /* + * Sets the line spacing. @n + * The line spacing is determined by multiplying @c multiplier to the default line spacing and adding @c extra. * - * @since 2.0 + * @code + * The line spacing = (default line spacing) * multiplier + extra + * @endcode * - * @return The line count of the text + * @since 2.1 + * @return An error code + * @param[in] multiplier The line spacing multiplier + * @param[in] extra The extra line spacing * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - * @remarks The specific error code can be accessed using the GetLastResult() method. + * @exception E_INVALID_ARG This exception is returned when @c multiplier or @c extra is less than 0. + * @see GetLineSpacing () */ + result SetLineSpacing(int multiplier, float extra); + + /** + * Gets the current line count. + * + * @since 2.0 + * + * @return The line count of the text + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @remarks The specific error code can be accessed using the GetLastResult() method. + */ int GetTextLineCount(void) const; // TEXT SIZE @@ -570,20 +623,49 @@ public: int GetTextSize(void) const; /** - * Sets the text size. + * Gets the text size. * - * @since 2.0 + * @since 2.1 * - * @return An error code - * @param[in] size The text size + * @return The size of the text, @n + * else @c -1 if an error occurs * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The specified @c size is invalid, @n - * or the specified @c size is a negative integer. * @exception E_SYSTEM A system error has occurred. - * @see GetTextSize() + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @see SetTextSize() */ + float GetTextSizeF(void) const; + + /** + * Sets the text size. + * + * @since 2.0 + * + * @return An error code + * @param[in] size The text size + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c size is invalid, @n + * or the specified @c size is a negative integer. + * @exception E_SYSTEM A system error has occurred. + * @see GetTextSize() + */ result SetTextSize(int size); + /** + * Sets the text size. + * + * @since 2.1 + * + * @return An error code + * @param[in] size The text size + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c size is invalid, @n + * or the specified @c size is a negative integer. + * @exception E_SYSTEM A system error has occurred. + * @see GetTextSizeF() + */ + result SetTextSize(float size); + // MARGINS /** * Gets the margin of the specified margin type. @@ -600,6 +682,21 @@ public: */ int GetMargin(EditMarginType marginType) const; + /* + * Gets the margin of the specified margin type. + * + * @since 2.1 + * + * @return The margin value of the specified margin type, @n + * else @c -1.0f if an error occurs + * @param[in] marginType The margin type + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @see SetMargin() + */ + float GetMarginF(EditMarginType marginType) const; + /** * Sets the margin for the specified margin type. * @@ -630,13 +727,46 @@ public: * * @section CompSetMarginPageSolutionSection Resolutions * This issue has been resolved in Tizen. @n + * @endif + */ + + /* + * Sets the margin for the specified margin type. + * + * @if OSPCOMPAT + * @brief [Compatibility] + * @endif + * @since 2.1 + * @if OSPCOMPAT + * @compatibility This method has compatibility issues with OSP compatible applications. @n + * For more information, see @ref CompSetMarginPage "here". + * @endif + * @return An error code + * @param[in] marginType The margin type + * @param[in] margin The margin to be set + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. @n + * The specified @c margin cannot be negative integer. + * @exception E_SYSTEM A system error has occurred. + * @see GetMargin() + */ + result SetMargin(EditMarginType marginType, float margin); + /* + * @if OSPCOMPAT + * @page CompSetMarginPage Compatibility for SetMargin() + * @section CompSetMarginPageIssueSection Issues + * Implementing this method in OSP compatible applications has the following issues: @n + * -# The SetMargin() method sets the margin value for ExpandableEditArea with only EXPANDABLE_EDIT_AREA_STYLE_NORMAL in API version 2.0. @n + * + * @section CompSetMarginPageSolutionSection Resolutions + * This issue has been resolved in Tizen. @n * @endif */ // LOWER CASE /** * Enables or disables the lowercase mode. - * + * @since 2.0 * * @return An error code @@ -708,46 +838,46 @@ public: result GetBlockRange(int& start, int& end) const; /** - * Releases the selection of the current text block. - * - * @since 2.0 - * - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - * @see GetBlockRange() - * @see SetBlockRange() - */ + * Releases the selection of the current text block. + * + * @since 2.0 + * + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @see GetBlockRange() + * @see SetBlockRange() + */ result ReleaseBlock(void); /** - * Removes the text content of the current text block. - * - * @since 2.0 - * - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_NOT_FOUND The specified instance is not found, @n - * or the text block is not selected. - * @exception E_SYSTEM A system error has occurred. - */ + * Removes the text content of the current text block. + * + * @since 2.0 + * + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_NOT_FOUND The specified instance is not found, @n + * or the text block is not selected. + * @exception E_SYSTEM A system error has occurred. + */ result RemoveTextBlock(void); /** - * Sets the block range for the text. - * - * @since 2.0 - * - * @return An error code - * @param[in] start The start index of the text block - * @param[in] end The end index of the text block - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE The specified index is outside the bounds of the data structure. @n - * Either the index is greater than the number of elements or less than @c 0. - * @exception E_SYSTEM A system error has occurred. - * @see ReleaseBlock() - * @see GetBlockRange() - */ + * Sets the block range for the text. + * + * @since 2.0 + * + * @return An error code + * @param[in] start The start index of the text block + * @param[in] end The end index of the text block + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified index is outside the bounds of the data structure. @n + * Either the index is greater than the number of elements or less than @c 0. + * @exception E_SYSTEM A system error has occurred. + * @see ReleaseBlock() + * @see GetBlockRange() + */ result SetBlockRange(int start, int end); // KEYPAD MANAGEMENT @@ -765,42 +895,42 @@ public: Tizen::Ui::KeypadAction GetKeypadAction(void) const; /** - * Gets the keypad style. - * - * @since 2.0 - * - * @return The keypad style - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * @see SetKeypadStyle() - */ + * Gets the keypad style. + * + * @since 2.0 + * + * @return The keypad style + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @see SetKeypadStyle() + */ KeypadStyle GetKeypadStyle(void) const; /** - * Hides the keypad associated with the %ExpandableEditArea control. - * - * @since 2.0 - * - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - * @see ShowKeypad() - */ + * Hides the keypad associated with the %ExpandableEditArea control. + * + * @since 2.0 + * + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @see ShowKeypad() + */ result HideKeypad(void); /** - * Checks whether the keypad is enabled. - * - * @since 2.0 - * - * @return @c true if the keypad is enabled, @n - * else @c false - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * @see SetKeypadEnabled() - */ + * Checks whether the keypad is enabled. + * + * @since 2.0 + * + * @return @c true if the keypad is enabled, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @see SetKeypadEnabled() + */ bool IsKeypadEnabled(void) const; /** @@ -818,68 +948,68 @@ public: result SetKeypadAction(Tizen::Ui::KeypadAction keypadAction); /** - * Sets the keypad style. - * - * @since 2.0 - * - * @return An error code - * @param[in] keypadStyle The keypad style - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The specified input parameter is invalid. @n - * The specified @c keypadStyle is KEYPAD_STYLE_PASSWORD. - * @exception E_SYSTEM A system error has occurred. - * @remarks Depending on the value of the keypad style, the layout of the keypad will change accordingly. - * @see GetKeypadStyle() - */ + * Sets the keypad style. + * + * @since 2.0 + * + * @return An error code + * @param[in] keypadStyle The keypad style + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified input parameter is invalid. @n + * The specified @c keypadStyle is KEYPAD_STYLE_PASSWORD. + * @exception E_SYSTEM A system error has occurred. + * @remarks Depending on the value of the keypad style, the layout of the keypad will change accordingly. + * @see GetKeypadStyle() + */ result SetKeypadStyle(KeypadStyle keypadStyle); /** - * Checks whether the text prediction is enabled. - * - * @since 2.0 - * @return @c true if the text prediction is enabled, @n - * else @c false - * @see SetTextPredictionEnabled() - */ + * Checks whether the text prediction is enabled. + * + * @since 2.0 + * @return @c true if the text prediction is enabled, @n + * else @c false + * @see SetTextPredictionEnabled() + */ bool IsTextPredictionEnabled(void) const; /** - * Enables or disables the text prediction. - * - * @since 2.0 - * @param[in] enable Set to @c true to enable the text prediction, @n - * else @c false - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_UNSUPPORTED_OPERATION This operation is not supported. - * @see IsTextPredictionEnabled() - */ + * Enables or disables the text prediction. + * + * @since 2.0 + * @param[in] enable Set to @c true to enable the text prediction, @n + * else @c false + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_UNSUPPORTED_OPERATION This operation is not supported. + * @see IsTextPredictionEnabled() + */ result SetTextPredictionEnabled(bool enable); /** - * Enables or disables the keypad. - * - * @since 2.0 - * - * @return An error code - * @param[in] enable Set to @c true to enable the virtual keypad, @n - * else @c false - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - * @see IsKeypadEnabled() - */ + * Enables or disables the keypad. + * + * @since 2.0 + * + * @return An error code + * @param[in] enable Set to @c true to enable the virtual keypad, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @see IsKeypadEnabled() + */ result SetKeypadEnabled(bool enable); /** - * Shows the keypad. - * - * @since 2.0 - * - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - * @see HideKeypad() - */ + * Shows the keypad. + * + * @since 2.0 + * + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @see HideKeypad() + */ result ShowKeypad(void); // TOKEN FILTER @@ -899,34 +1029,34 @@ public: result SetTokenFilter(const ITokenFilter* pFilter); /** - * Gets the text token filter. - * - * @since 2.0 - * - * @return The filter, @n - * else @c null if an error occurs - * @exception E_SUCCESS The method is successful. - * @exception E_UNSUPPORTED_OPERATION The current state of the instance prohibits the execution of the specified operation. @n - * The operation is not supported if the style is not EXPANDABLE_EDIT_AREA_STYLE_TOKEN. - * @exception E_SYSTEM A system error has occurred. - * @remarks The specific error code can be accessed using the GetLastResult() method. - */ + * Gets the text token filter. + * + * @since 2.0 + * + * @return The filter, @n + * else @c null if an error occurs + * @exception E_SUCCESS The method is successful. + * @exception E_UNSUPPORTED_OPERATION The current state of the instance prohibits the execution of the specified operation. @n + * The operation is not supported if the style is not EXPANDABLE_EDIT_AREA_STYLE_TOKEN. + * @exception E_SYSTEM A system error has occurred. + * @remarks The specific error code can be accessed using the GetLastResult() method. + */ ITokenFilter* GetTokenFilter(void) const; /** - * Appends the specified token. - * - * @since 2.0 - * - * @return An error code - * @param[in] token The token to be appended - * @exception E_SUCCESS The method is successful. - * @exception E_UNSUPPORTED_OPERATION The current state of the instance prohibits the execution of the specified operation. @n - * The operation is not supported if the style is not EXPANDABLE_EDIT_AREA_STYLE_TOKEN. - * @exception E_INVALID_ARG The specified input parameter is invalid. @n - * The length of the specified @c token is @c 0. - * @exception E_SYSTEM A system error has occurred. - */ + * Appends the specified token. + * + * @since 2.0 + * + * @return An error code + * @param[in] token The token to be appended + * @exception E_SUCCESS The method is successful. + * @exception E_UNSUPPORTED_OPERATION The current state of the instance prohibits the execution of the specified operation. @n + * The operation is not supported if the style is not EXPANDABLE_EDIT_AREA_STYLE_TOKEN. + * @exception E_INVALID_ARG The specified input parameter is invalid. @n + * The length of the specified @c token is @c 0. + * @exception E_SYSTEM A system error has occurred. + */ result AppendToken(const Tizen::Base::String& token); /** @@ -995,68 +1125,68 @@ public: int GetSelectedTokenIndex(void) const; /** - * Checks whether the token editing mode is enabled. - * - * @since 2.0 - * - * @return @c true if the editing mode is enabled, @n - * else @c false - * @exception E_SUCCESS The method is successful. - * @exception E_UNSUPPORTED_OPERATION The current state of the instance prohibits the execution of the specified operation. @n - * The operation is not supported if the style is not EXPANDABLE_EDIT_AREA_STYLE_TOKEN. - * @exception E_SYSTEM A system error has occurred. - * @remarks The specific error code can be accessed using the GetLastResult() method. - */ + * Checks whether the token editing mode is enabled. + * + * @since 2.0 + * + * @return @c true if the editing mode is enabled, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @exception E_UNSUPPORTED_OPERATION The current state of the instance prohibits the execution of the specified operation. @n + * The operation is not supported if the style is not EXPANDABLE_EDIT_AREA_STYLE_TOKEN. + * @exception E_SYSTEM A system error has occurred. + * @remarks The specific error code can be accessed using the GetLastResult() method. + */ bool IsTokenEditModeEnabled(void) const; /** - * Removes the token at the specified index. - * - * @since 2.0 - * - * @return An error code - * @param[in] index The index of the token to be removed - * @exception E_SUCCESS The method is successful. - * @exception E_UNSUPPORTED_OPERATION The current state of the instance prohibits the execution of the specified operation. @n - * The operation is not supported if the style is not EXPANDABLE_EDIT_AREA_STYLE_TOKEN. - * @exception E_OUT_OF_RANGE The specified index is outside the bounds of the data structure. @n - * Either the index is greater than the number of elements or less than @c 0. - * @exception E_SYSTEM A system error has occurred. - */ + * Removes the token at the specified index. + * + * @since 2.0 + * + * @return An error code + * @param[in] index The index of the token to be removed + * @exception E_SUCCESS The method is successful. + * @exception E_UNSUPPORTED_OPERATION The current state of the instance prohibits the execution of the specified operation. @n + * The operation is not supported if the style is not EXPANDABLE_EDIT_AREA_STYLE_TOKEN. + * @exception E_OUT_OF_RANGE The specified index is outside the bounds of the data structure. @n + * Either the index is greater than the number of elements or less than @c 0. + * @exception E_SYSTEM A system error has occurred. + */ result RemoveTokenAt(int index); /** - * Sets the selected state of the specified token. - * - * @since 2.0 - * - * @return An error code - * @param[in] index The index of the token to select - * @param[in] selected Set to @c true to select the specified token, @n - * else @c false to unselect - * @exception E_SUCCESS The method is successful. - * @exception E_UNSUPPORTED_OPERATION The current state of the instance prohibits the execution of the specified operation. @n - * The operation is not supported if the style is not EXPANDABLE_EDIT_AREA_STYLE_TOKEN. - * @exception E_OUT_OF_RANGE The specified index is outside the bounds of the data structure. @n - * Either the index is greater than the number of elements or less than @c 0. - * @exception E_SYSTEM A system error has occurred. - * @remarks The currently selected token gets unselected automatically. - */ + * Sets the selected state of the specified token. + * + * @since 2.0 + * + * @return An error code + * @param[in] index The index of the token to select + * @param[in] selected Set to @c true to select the specified token, @n + * else @c false to unselect + * @exception E_SUCCESS The method is successful. + * @exception E_UNSUPPORTED_OPERATION The current state of the instance prohibits the execution of the specified operation. @n + * The operation is not supported if the style is not EXPANDABLE_EDIT_AREA_STYLE_TOKEN. + * @exception E_OUT_OF_RANGE The specified index is outside the bounds of the data structure. @n + * Either the index is greater than the number of elements or less than @c 0. + * @exception E_SYSTEM A system error has occurred. + * @remarks The currently selected token gets unselected automatically. + */ result SetTokenSelected(int index, bool selected); /** - * Enables or disables the token edit mode. - * - * @since 2.0 - * - * @return An error code - * @param[in] enable Set to @c true to enable the token editing mode, @n - * else @c false - * @exception E_SUCCESS The method is successful. - * @exception E_UNSUPPORTED_OPERATION The current state of the instance prohibits the execution of the specified operation. @n - * The operation is not supported if the style is not EXPANDABLE_EDIT_AREA_STYLE_TOKEN. - * @exception E_SYSTEM A system error has occurred. - */ + * Enables or disables the token edit mode. + * + * @since 2.0 + * + * @return An error code + * @param[in] enable Set to @c true to enable the token editing mode, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @exception E_UNSUPPORTED_OPERATION The current state of the instance prohibits the execution of the specified operation. @n + * The operation is not supported if the style is not EXPANDABLE_EDIT_AREA_STYLE_TOKEN. + * @exception E_SYSTEM A system error has occurred. + */ result SetTokenEditModeEnabled(bool enable); // LIMIT LENGTH @@ -1359,29 +1489,29 @@ public: bool IsAutoResizingEnabled(void) const; /** - * Sets the input language. - * - * @since 2.0 - * - * @return An error code - * @param[in] languageCode The language to set - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_MEMORY The memory is insufficient. - * @remarks The application can set the language of the current keypad that is associated with the current %ExpandableEditArea. @n - * This method only works if the language to set is supported by the current preloaded keypad. - */ + * Sets the input language. + * + * @since 2.0 + * + * @return An error code + * @param[in] languageCode The language to set + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_MEMORY The memory is insufficient. + * @remarks The application can set the language of the current keypad that is associated with the current %ExpandableEditArea. @n + * This method only works if the language to set is supported by the current preloaded keypad. + */ result SetCurrentLanguage(Tizen::Locales::LanguageCode languageCode); /** - * Gets the current input language. - * - * @since 2.0 - * - * @return An error code - * @param[out] language The current input language - * @exception E_SUCCESS The method is successful. - * @remarks The application can get the current language of the keypad that is associated with the current %ExpandableEditArea. - */ + * Gets the current input language. + * + * @since 2.0 + * + * @return An error code + * @param[out] language The current input language + * @exception E_SUCCESS The method is successful. + * @remarks The application can get the current language of the keypad that is associated with the current %ExpandableEditArea. + */ result GetCurrentLanguage(Tizen::Locales::LanguageCode& language) const; // EVENT LISTENER MANAGEMENT @@ -1419,14 +1549,14 @@ public: void AddTextBlockEventListener(Tizen::Ui::ITextBlockEventListener& listener); /** - * Adds the specified ITextEventListener instance. @n - * The added listener can listen to the text-changed event. - * - * @since 2.0 - * - * @param[in] listener The listener to be added - * @see RemoveTextEventListener() - */ + * Adds the specified ITextEventListener instance. @n + * The added listener can listen to the text-changed event. + * + * @since 2.0 + * + * @param[in] listener The listener to be added + * @see RemoveTextEventListener() + */ void AddTextEventListener(Tizen::Ui::ITextEventListener& listener); /** @@ -1474,27 +1604,27 @@ public: void RemoveTextEventListener(Tizen::Ui::ITextEventListener& listener); /** - * Adds a listener instance for language events. @n - * The added listener is notified when the input language is changed. - * - * @since 2.0 - * - * @param[in] listener The listener to add - * @remarks The application can recognize when the language is changed from the keypad by adding Tizen::Ui::ILanguageEventListener. - * @see RemoveLanguageEventListener() - */ + * Adds a listener instance for language events. @n + * The added listener is notified when the input language is changed. + * + * @since 2.0 + * + * @param[in] listener The listener to add + * @remarks The application can recognize when the language is changed from the keypad by adding Tizen::Ui::ILanguageEventListener. + * @see RemoveLanguageEventListener() + */ void AddLanguageEventListener(Tizen::Ui::ILanguageEventListener& listener); /** - * Removes the specified listener instance. @n - * The removed listener cannot listen to events when they are fired. - * - * @since 2.0 - * - * @param[in] listener The listener to remove - * @see AddLanguageEventListener() - */ + * Removes the specified listener instance. @n + * The removed listener cannot listen to events when they are fired. + * + * @since 2.0 + * + * @param[in] listener The listener to remove + * @see AddLanguageEventListener() + */ void RemoveLanguageEventListener(Tizen::Ui::ILanguageEventListener& listener); @@ -1522,6 +1652,26 @@ public: */ bool IsAutoShrinkModeEnabled(void) const; + /** + * Sets the text filter. + * + * @since 2.1 + * + * @param[in] pFilter The filter + * @remarks The %ExpandableEditArea control checks with the registered filter to decide whether the user-entered text should be replaced. + */ + void SetEditTextFilter(IEditTextFilter* pFilter); + + /** + * Sends opaque command to the input method. + * + * @since 2.1 + * + * @param[in] command The opaque command + * @remarks This method can be used to provide domain-specific features that are only known between certain input methods and their clients. + * This method may not work, depending on the active Input Method. + */ + void SendOpaqueCommand (const Tizen::Base::String& command); protected: friend class _ExpandableEditAreaImpl; diff --git a/inc/FUiCtrlExpandableList.h b/inc/FUiCtrlExpandableList.h index 5a08381..77a8e68 100644 --- a/inc/FUiCtrlExpandableList.h +++ b/inc/FUiCtrlExpandableList.h @@ -1069,7 +1069,7 @@ public: * @deprecated This class is deprecated. Instead of using this class, use GroupedTableView class. * @since 2.0 * - * @param[in] color The background color + * @param[in] color The background color * @endif */ void SetBackgroundColor(const Tizen::Graphics::Color& color); diff --git a/inc/FUiCtrlFooter.h b/inc/FUiCtrlFooter.h index b2eeea3..fb62ec2 100644 --- a/inc/FUiCtrlFooter.h +++ b/inc/FUiCtrlFooter.h @@ -68,9 +68,9 @@ enum FooterStyle * The %Footer class displays a multi-purpose area at the bottom of the screen. It is used to switch between different application * "views", or to host buttons for performing user-defined actions. * - * For more information on the class features, see Footer. + *For more information on the class features, see Footer. * - * The following examples demonstrate how to use the %Footer class. + *The following examples demonstrate how to use the %Footer class. * - Constructing a footer * When creating a %Form, specify the FORM_STYLE_FOOTER parameter in the Form::Construct() method. * @@ -351,8 +351,8 @@ public: * @return The selected item index,@n * else @c -1 if an error occurs * @exception E_SUCCESS The method is successful. - * @exception E_UNSUPPORTED_OPERATION This operation is not supported. @n - * The operation is supported only when the style of the %Footer control is either segmented or tab. + * @exception E_UNSUPPORTED_OPERATION The operation is not supported when the style of the %Footer control is @c FOOTER_STYLE_BUTTON_TEXT, @n + * @c FOOTER_STYLE_BUTTON_ICON or @c FOOTER_STYLE_BUTTON_ICON_TEXT. * @remarks The specific error code can be accessed using the GetLastResult() method. */ int GetSelectedItemIndex(void) const; @@ -465,9 +465,7 @@ public: * The specified item is not constructed. * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation.@n * There are more than 2 footer items. - * @exception E_UNSUPPORTED_OPERATION This operation is not supported. @n - * The operation is supported when the style of the %Footer control is either - * @c FOOTER_STYLE_SEGMENTED_TEXT or @c FOOTER_STYLE_SEGMENTED_ICON. + * @exception E_UNSUPPORTED_OPERATION The operation is not supported when the style of the %Footer control is @c FOOTER_STYLE_TAB. * @exception E_SYSTEM A system error has occurred. * @remarks If there is an existing button item at the specified position, it is replaced with the new item.@n * However, the contents of the specified item are copied to the %Footer control. @@ -618,11 +616,7 @@ public: * @param[in] status The item status * @param[in] color The item color to be set * @exception E_SUCCESS The method is successful. - * @exception E_UNSUPPORTED_OPERATION This operation is not supported. @n - * The current style of the %Footer control does not support the operation. * @exception E_SYSTEM A system error has occurred. - * @remarks It is not possible to set the item colors for the normal and disabled status of the @c FOOTER_STYLE_TAB style %Footer control. @n - Furthermore, @c FOOTER_STYLE_BUTTON_ICON style %Footer control does not support this operation. * @see GetItemColor() */ result SetItemColor(FooterItemStatus status, const Tizen::Graphics::Color& color); @@ -658,8 +652,6 @@ public: * @exception E_SUCCESS The method is successful. * @exception E_OUT_OF_RANGE The specified index is outside the bounds of the data structure. @n * The index is greater than or equal to the number of elements or less than @c 0. - * @exception E_UNSUPPORTED_OPERATION This operation is not supported. @n - * The operation is not supported when the style of the %Footer control is @c FOOTER_STYLE_BUTTON_ICON. * @exception E_SYSTEM A system error has occurred. */ result SetItemBadgeIcon(int itemIndex, const Tizen::Graphics::Bitmap* pBadgeIcon); @@ -677,8 +669,6 @@ public: * @exception E_INVALID_ARG The specified @c number must be in the range defined by @c 0 and @c 99999. * @exception E_OUT_OF_RANGE The specified index is outside the bounds of the data structure. @n * The index is greater than or equal to the number of elements or less than @c 0. - * @exception E_UNSUPPORTED_OPERATION This operation is not supported. @n - * The operation is not supported when the style of the %Footer control is @c FOOTER_STYLE_BUTTON_ICON. * @exception E_SYSTEM A system error has occurred. * @remarks To remove the numbered badge icon from an item, pass @c 0 as the value of @c number. */ @@ -711,8 +701,8 @@ public: * The specified index is either greater than or equal to the number of items or is less than zero. * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n * The item at the specified index is disabled. - * @exception E_UNSUPPORTED_OPERATION This operation is not supported. @n - * The operation is not supported if the %Footer control style is either @c FOOTER_STYLE_BUTTON_TEXT or @c FOOTER_STYLE_BUTTON_ICON. + * @exception E_UNSUPPORTED_OPERATION The operation is not supported if the %Footer control style is @c FOOTER_STYLE_BUTTON_TEXT, @n + * @c FOOTER_STYLE_BUTTON_ICON or @c FOOTER_STYLE_BUTTON_ICON_TEXT. * @exception E_SYSTEM A system error has occurred. */ result SetItemSelected(int itemIndex); @@ -753,8 +743,7 @@ public: * @param[in] enable Set to @c true to enable the edit mode, @n * else @c false * @exception E_SUCCESS The method is successful. - * @exception E_UNSUPPORTED_OPERATION This operation is not supported. @n - * The operation is not supported when the style of the %Footer control style is not @c FOOTER_STYLE_TAB. + * @exception E_UNSUPPORTED_OPERATION The operation is supported when the style of the %Footer control style is @c FOOTER_STYLE_TAB. */ result SetTabEditModeEnabled(bool enable); @@ -783,9 +772,23 @@ public: /** + * Gets the position and size of the specified button item. + * + * @since 2.0 + * + * @return The position and size of the button item at the specified position. + * @param[in] position The position of the button item + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n + * There is no button set at the specified position. + * @remarks The specific error code can be accessed using the GetLastResult() method. + */ + Tizen::Graphics::Rectangle GetButtonBounds(ButtonPosition position) const; + + /** * Gets the position and size of the specified button item. * - * @since 2.0 + * @since 2.1 * * @return The position and size of the button item at the specified position. * @param[in] position The position of the button item @@ -794,7 +797,7 @@ public: * There is no button set at the specified position. * @remarks The specific error code can be accessed using the GetLastResult() method. */ - Tizen::Graphics::Rectangle GetButtonBounds(ButtonPosition position) const; + Tizen::Graphics::FloatRectangle GetButtonBoundsF(ButtonPosition position) const; protected: diff --git a/inc/FUiCtrlForm.h b/inc/FUiCtrlForm.h old mode 100644 new mode 100755 index 5c5ee9a..c4f8e12 --- a/inc/FUiCtrlForm.h +++ b/inc/FUiCtrlForm.h @@ -170,13 +170,13 @@ public: /** * Initializes this instance of %Form with the specified parameters. * - * @since 2.0 + * @since 2.0 * * @return An error code * @param[in] formStyle The form style @n * Multiple form styles can be combined using bitwise OR (see Tizen::Ui::Controls::FormStyle). * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The specified input parameter is invalid @if OSPCOMPAT @b Since: @b 2.0 @endif. @n + * @exception E_INVALID_ARG The specified input parameter is invalid. @n * - FORM_STYLE_HEADER and FORM_STYLE_TITLE are specified at the same time. @n * - FORM_STYLE_FOOTER and FORM_STYLE_SOFTKEY_0 are specified at the same time. @n * - FORM_STYLE_FOOTER and FORM_STYLE_SOFTKEY_1 are specified at the same time. @n @@ -364,6 +364,17 @@ public: */ Tizen::Graphics::Rectangle GetClientAreaBounds(void) const; + /* + * Gets the bounds of the client area. + * + * @since 2.0 + * + * @return The bounds of the client area + * @remarks The client area of the %Form control does not include the title, indicator, header and footer areas. + * header and footer areas. + * + */ + Tizen::Graphics::FloatRectangle GetClientAreaBoundsF(void) const; /** * Gets the style of the %Form control. @@ -579,7 +590,7 @@ public: * @param[in] formStyle The form style to set @n * This parameter can be a combination of Tizen::Ui::Controls::FormStyle. * @exception E_SUCCESS The method is successful @if OSPCOMPAT @b Since: @b 2.0 @endif. - * @exception E_INVALID_ARG A specified input parameter is invalid @if OSPCOMPAT @b Since: @b 2.0 @endif. @n + * @exception E_INVALID_ARG A specified input parameter is invalid. @n * - FORM_STYLE_HEADER and FORM_STYLE_TITLE are specified at the same time. @n * - FORM_STYLE_FOOTER and FORM_STYLE_SOFTKEY_0 are specified at the same time. @n * - FORM_STYLE_FOOTER and FORM_STYLE_SOFTKEY_1 are specified at the same time. @n @@ -902,6 +913,31 @@ public: */ OverlayRegion* GetOverlayRegionN(const Tizen::Graphics::Rectangle& rect, OverlayRegionType regionType); + /* + * Creates and returns an overlay region of the specified position and size. @n + * Due to the hardware accelerated rendering, there are limitations for an overlay region. @n + * The hardware capability for an overlay region is checked by using OverlayRegion::GetWidthUnit(), OverlayRegion::GetHeightUnit() and + * OverlayRegion::GetMaxCount(). + * If the specified condition is not satisfied, E_INVALID_ARG exception is returned. + * + * @since 2.1 + * + * @return An overlay region instance + * @param[in] rect The x and y coordinates relative to the top-left corner of the form along with the width and height + * @param[in] regionType The type of the overlay region + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_MAX_EXCEEDED The number of overlay regions has reached the maximum limit. + * @exception E_UNSUPPORTED_OPTION The specified option of the overlay region type is not supported. + * @exception E_SYSTEM A system error has occurred. + * @remarks The specific error code can be accessed using the GetLastResult() method. @n + * If the application runs on multi-screen resolutions, the specified bounds may not meet the hardware limitations of the overlay region. @n + * In such cases, GetOverlayRegionNF() returns the E_INVALID_ARG exception. To prevent this problem, the application should use the + * OverlayRegion::EvaluateBoundsF() method to get the validated bounds that can be used as the input bounds of the GetOverlayRegionNF() method. + * @remarks Do not use OverlayRegion with OverlayPanel. If used, the E_SYSTEM exception is thrown. + */ + OverlayRegion* GetOverlayRegionN(const Tizen::Graphics::FloatRectangle& rect, OverlayRegionType regionType); + /** * Creates and returns a graphics canvas whose bounds (position and size) are equal to the bounds of the client area of the %Form. @@ -915,7 +951,7 @@ public: * @remarks The method allocates Tizen::Graphics::Canvas whose bounds are equal to that of the client area of the %Form. @n * It is the responsibility of the developers to deallocate the canvas after use. * @remarks The canvas is valid only if the properties of the parent control of the canvas remain unchanged. @n - * Therefore, delete the previously allocated canvas and create a new canvas using the GetCanvasN() method @n + * Therefore, delete the previously allocated canvas and create a new canvas using the GetClientAreaCanvasN() method @n * if the size or position of the control is changed. * @remarks The specific error code can be accessed using the GetLastResult() method. * @remarks The Frame and %Form instances share a single frame-buffer. @n @@ -936,6 +972,18 @@ public: */ Tizen::Graphics::Point TranslateToClientAreaPosition(const Tizen::Graphics::Point& position) const; + /* + * Translates the specified position to the client coordinate. + * + * @since 2.0 + * + * @return The position relative to the top-left corner of the client area, @n + * else @c (-1,-1) if the instance is invalid + * @param[in] position The position relative to the top-left corner of the %Form control + * @see TranslateFromClientAreaPosition() + */ + Tizen::Graphics::FloatPoint TranslateToClientAreaPosition(const Tizen::Graphics::FloatPoint& position) const; + /** * Translates the specified client position to the control coordinate. * @@ -948,6 +996,17 @@ public: */ Tizen::Graphics::Point TranslateFromClientAreaPosition(const Tizen::Graphics::Point& clientPosition) const; + /* + * Translates the specified client position to the control coordinate. + * + * @since 2.0 + * + * @return The position relative to the top-left corner of the %Form control, @n + * else @c (-1,-1) if the instance is invalid + * @param[in] clientPosition The position relative to the top-left corner of the client area + * @see TranslateToClientAreaPosition() + */ + Tizen::Graphics::FloatPoint TranslateFromClientAreaPosition(const Tizen::Graphics::FloatPoint& clientPosition) const; /** * Sets the %Form back event listener. diff --git a/inc/FUiCtrlFrame.h b/inc/FUiCtrlFrame.h old mode 100644 new mode 100755 index b09eacc..ada5e35 --- a/inc/FUiCtrlFrame.h +++ b/inc/FUiCtrlFrame.h @@ -126,6 +126,26 @@ public: */ result Construct(const Tizen::Graphics::Rectangle& rect); + /* + * Initializes this instance of %Frame with the specified position and size. + * + * @since 2.0 + * + * @return An error code + * @param[in] rect An instance of the FloatRectangle class @n + * This instance represents the x and y coordinates of the top-left corner @n + * of the created window along with its width and height. @n + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified input parameter is invalid. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation (that + * is, the method is called on an instance that is constructed). + * @exception E_MAX_EXCEEDED The number of Frames and Forms exceeds the system limitation. + * @exception E_SYSTEM A system error has occurred. + * @remarks The maximum number of Forms that an application can construct is limited by available memory. + * @remarks The specified position and size are only applied when the show mode is not #FRAME_SHOW_MODE_FULL_SCREEN. + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect); + // Operation public: /** @@ -205,6 +225,24 @@ public: */ result SetCurrentForm(const Form& form); + /* + * Sets the specified Form control as the current %Form of the %Frame control. + * + * @since 2.0 + * + * @return An error code + * @param[in] pForm The form to be set as the current form of the %Frame control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified input parameter is invalid. + * The specified @c form is not a child control of the %Frame control. + * @exception E_SYSTEM A system error has occurred. + * @remarks If a form is set as the current form, it becomes the topmost form amongst its siblings. @n + * SetCurrentForm() does not call Invalidate() internally, so if the current form needs to be drawn + * immediately, Invalidate() should be called after SetCurrentForm(). + * Only Frame whose show mode is @c FRAME_SHOW_MODE_FULL_SCREEN can set a Form which has the style of @c FORM_STYLE_INDICATOR as the current form. + */ + result SetCurrentForm(Form* pForm); + /** * Gets the background color of the %Frame control. * diff --git a/inc/FUiCtrlFrameTypes.h b/inc/FUiCtrlFrameTypes.h index fee88bb..7778b48 100644 --- a/inc/FUiCtrlFrameTypes.h +++ b/inc/FUiCtrlFrameTypes.h @@ -37,11 +37,12 @@ namespace Tizen { namespace Ui { namespace Controls */ enum FrameShowMode { - FRAME_SHOW_MODE_FULL_SCREEN, /**< The full screen mode */ - FRAME_SHOW_MODE_PARTIAL_SCREEN, /**< The partial screen mode */ - FRAME_SHOW_MODE_PARTIAL_SCREEN_FLOATING, /**< The partial screen mode which is always on top of other Frames */ + FRAME_SHOW_MODE_FULL_SCREEN, /**< The Frame occupies the whole screen */ + FRAME_SHOW_MODE_PARTIAL_SCREEN, /**< The Frame occupies the partial screen */ + FRAME_SHOW_MODE_PARTIAL_SCREEN_FLOATING, /**< The Frame is always on top of other Frames, occupying the partial screen */ + FRAME_SHOW_MODE_MINIMIZED, // The Frame is minimized @b Since: @b 2.1 }; }}} // Tizen::Ui::Controls -#endif // _FUI_CTRL_FRAME_TYPES_H_ +#endif // _FUI_CTRL_FRAME_TYPES_H_ \ No newline at end of file diff --git a/inc/FUiCtrlGallery.h b/inc/FUiCtrlGallery.h index 208c6ed..b0cc832 100644 --- a/inc/FUiCtrlGallery.h +++ b/inc/FUiCtrlGallery.h @@ -213,6 +213,21 @@ public: */ result Construct(const Tizen::Graphics::Rectangle& rect); + /* + * Initializes this instance of %Gallery with the specified parameter. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect An instance of the Graphics::FloatRectangle class @n + * This instance represents the x and y coordinates of the top-left corner of the created %Gallery control along with the + * width and height. + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect); + /** * Sets the item provider that creates and deletes the items from the %Gallery control. * diff --git a/inc/FUiCtrlGroupContainer.h b/inc/FUiCtrlGroupContainer.h new file mode 100644 index 0000000..ddf5177 --- /dev/null +++ b/inc/FUiCtrlGroupContainer.h @@ -0,0 +1,444 @@ +// +// Open Service Platform +// Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. +// +// Licensed under the Flora License, Version 1.0 (the License); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://floralicense.org/license/ +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an AS IS BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +/* +* @file FUiCtrlGroupContainer.h +* @brief This is the header file for the %GroupContainer class. +* +* This header file contains the declarations of the %GroupContainer class. +*/ +#ifndef _FUI_CTRL_GROUP_CONTAINER_H_ +#define _FUI_CTRL_GROUP_CONTAINER_H_ + +#include +#include + +namespace Tizen { namespace Ui { namespace Controls +{ +/** +* @class GroupContainer +* @brief This class defines common behavior for a %GroupContainer container. +* +* @since 2.1 +* +* The %GroupContainer class displays child controls in grouping look. It is a concrete implementation of the Container class. +*/ + +class _OSP_EXPORT_ GroupContainer + : public Tizen::Ui::Container +{ +public: + /** + * The object is not fully constructed after this constructor is called. For full construction, the Construct() method must be called right after calling this constructor. + * + * @since 2.1 + */ + GroupContainer(void); + + /** + * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. + * + * @since 2.1 + */ + virtual ~GroupContainer(void); + + /** + * Initializes this instance of %GroupContainer with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect The location and size of the %GroupContainer control as an instance of FloatRectangle + * @param[in] rowCount The number of rows + * @param[in] columnCount The number of columns + * @param[in] lineWidth Width of the grid lines to draw + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. @n + * The width or height of @c rect or @c rowCount or @c columnnCount is negative or the value of @c lineWidth is @c 0 or negative. + * @exception E_OPERATION_FAILED The operation has failed. + * @remarks The available space for controls is less than the width or height of the container by the total width or height of the grid lines. + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect, int rowCount, int columnCount, float lineWidth = 1.0f); + + /** + * Adds a control at the specified row and column index. + * + * @since 2.1 + * + * @return An error code + * @param[in] control The control to add to the container + * @param[in] rowIndex The row index of the cell + * @param[in] columnIndex The column index of the cell + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c rowIndex or @c columnIndex is greater than the number of elements or less than @c 0. + * @exception E_INVALID_OPERATION The specified operation is not allowed + * @see Merge() + * @remarks If a control is being added to the merged cells, the row index and column index of a representative cell should be given. + * @remarks The control to add should be allocated in heap memory, and the ownership of the control is transferred to the platform. + */ + result AddControlAt(Control& control, int rowIndex, int columnIndex); + + /** + * Gets the control at the specified cell index in the GroupContainer. + * + * @since 2.1 + * + * @return The control at the specified index of the list, @n + * else @c null if the cell index is not valid or no control is added + * @param[in] rowIndex The row index of the cell + * @param[in] columnIndex The column index of the cell + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c rowIndex or @c columnIndex is greater than the number of elements or less than @c 0. + * @exception E_INVALID_OPERATION The specified operation is not allowed + * @remarks When you get the control from the merged cell, the row index and column index of a representative cell should be given. + */ + const Tizen::Ui::Control* GetControlAt(int rowIndex, int columnIndex) const; + + /** + * Gets the control at the specified cell index in the GroupContainer. + * + * @since 2.1 + * + * @return The control at the specified index of the list, @n + * else @c null if the cell index is not valid or no control is added + * @param[in] rowIndex The row index of the cell + * @param[in] columnIndex The column index of the cell + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c rowIndex or @c columnIndex is greater than the number of elements or less than @c 0. + * @exception E_INVALID_OPERATION The specified operation is not allowed + * @remarks When you get the control from the merged cells, the row index and column index of a representative cell should be given. + */ + Tizen::Ui::Control* GetControlAt(int rowIndex, int columnIndex); + + /** + * Removes the specified control from the specified row and column index + * + * @since 2.1 + * + * @return An error code + * @param[in] rowIndex The row index of the control to remove + * @param[in] columnIndex The column index of the control to remove + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c rowIndex or @c columnIndex is greater than the number of elements or less than @c 0. + * @exception E_OPERATION_FAILED The operation has failed. + * @exception E_OBJ_NOT_FOUND The specified cell does not have any control. + * @exception E_INVALID_OPERATION The specified operation is not allowed + * @remarks When you remove the control from the merged cell, the row index and column index of a representative cell should be given. + * @remarks The removed child control is deleted from the memory. Before it is removed from the container, OnTerminating() of the child control is called. + * @see Tizen::Ui::Control::OnTerminating() + */ + result RemoveControlAt (int rowIndex, int columnIndex); + + /** + * Sets the width of a column. + * + * @since 2.1 + * + * @return An error code + * @param[in] columnIndex The column index + * @param[in] width The new width of the column + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c columnIndex is greater than the number of elements or less than @c 0. + * @exception E_INVALID_ARG The specified @c width must be greater than or equal to @c 0. + * + */ + result SetColumnWidth(int columnIndex, float width); + + /** + * Gets the width of a column. + * + * @since 2.1 + * + * @return The width of the column + * @param[in] columnIndex The column index + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c columnIndex is greater than the number of elements or less than @c 0. + */ + float GetColumnWidth(int columnIndex) const; + + /** + * Sets the height of a row. + * + * @since 2.1 + * + * @return An error code + * @param[in] rowIndex The row index + * @param[in] height The new height of the row + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c rowIndex is greater than the number of elements or less than @c 0. + * @exception E_INVALID_ARG The specified @c height must be greater than or equal to @c 0. + * + */ + result SetRowHeight(int rowIndex, float height); + + /** + * Gets the height of a row. + * + * @since 2.1 + * + * @return The height of the row + * @param[in] rowIndex The row index + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c rowIndex is greater than the number of elements or less than @c 0. + * + */ + float GetRowHeight(int rowIndex) const; + /** + * Merges the cells for the given row and column index. + * + * @since 2.1 + * + * @return An error code + * @param[in] rowStartIndex The start index of the row from which the merge should happen + * @param[in] columnStartIndex The start index of the column from which the merge should happen + * @param[in] rowCount The number of cells to merge along the row + * @param[in] columnCount The number of cells to merge along the column + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c rowStartIndex or @c columnStartIndex is greater than the number of elements or less than @c 0 + * @remarks When the cells are merged, the top-left cell will play the role of representative cell on behalf of merged cells. @n + * To manipulate the merge cell, the row index and column index of the representative cell has to be given. Merging cells with the merged cell + * is allowed, but the newly merged cell should completely contain the all cells to merge. + */ + result Merge(int rowStartIndex, int columnStartIndex, int rowCount, int columnCount); + + /** + * Enables/disables resizing of the control in a cell + * + * @since 2.1 + * + * @return An error code + * @param[in] rowIndex The row index of the row in which the control should be resized + * @param[in] columnIndex The column index of the column in which the control should be resized + * @param[in] enable boolean value to enable or disable the resizing of control + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c rowIndex or @ccolumnIndex is greater than the number of elements or less than @c 0. + * + */ + result SetChildResizingEnabled(int rowIndex, int columnIndex, bool enable); + + /** + * Sets the margin of a cell + * + * @since 2.1 + * + * @return An error code + * @param[in] rowIndex The row index of the cell + * @param[in] columnIndex The column index of the cell + * @param[in] leftMargin The left margin + * @param[in] rightMargin The right margin + * @param[in] topMargin The top margin + * @param[in] bottomMargin The bottom margin + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c rowIndex or @c columnIndex is greater than the number of elements or less than @c 0. + * @exception E_INVALID_ARG The specified @c leftMargin or @c topMargin or @c rightMargin or @c bottomMargin must be greater than or equal to @c 0. + * @remarks The default margin value is 2 logical pixel. + */ + result SetMargin(int rowIndex, int columnIndex, float leftMargin, float rightMargin, float topMargin, float bottomMargin); + /** + * Splits the merged cells + * + * @since 2.1 + * + * @return An error code + * @param[in] rowIndex The row index of the representative cell of the merged cells + * @param[in] columnIndex The column index of the representative cell of the merged cells + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c rowIndex or @c columnIndex is greater than the number of elements or less than @c 0. + * @exception E_INVALID_ARG The specified row and column index are not those of the representative cell of the merged cells. + */ + result Split(int rowIndex, int columnIndex); + + /** + * Gets the bounds of specified cell + * + * @since 2.1 + * + * @return An instance of the FloatRectangle that represents the position of top-left corner, + * the width, and the height of the cell, @n else Rectangle(0.0f, 0.0f, -1.0f, -1.0f) if an error occurs + * @param[in] rowIndex The row index of the cell + * @param[in] columnIndex The column index of the cell + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c rowIndex or @c columnIndex is greater than the number of elements or less than @c 0. + */ + Tizen::Graphics::FloatRectangle GetBoundsAt(int rowIndex, int columnIndex) const; + + /** + * Enables/disables stretchable or shrinkable property of a column + * + * @since 2.1 + * + * @return An error code + * @param[in] columnIndex The column index of the cell + * @param[in] stretchable boolean value to set stretchable or shrinkable property + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c columnIndex is greater than the number of elements or less than @c 0. + */ + result SetColumnStretchable(int columnIndex, bool stretchable); + + /** + * Checks whether the column is stretchable or shrinkable + * + * @since 2.1 + * + * @return @c true if the column is stretchable or shrinkable + * else @c false + * @param[in] columnIndex The column index of the cell + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c columnIndex is greater than the number of elements or less than @c 0. + */ + bool IsColumnStretchable(int columnIndex) const; + + /** + * Enables/disables stretchable or shrinkable property of a row + * + * @since 2.1 + * + * @return An error code + * @param[in] rowIndex The row index of the cell + * @param[in] stretchable boolean value to set stretchable or shrinkable property + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c rowIndex is greater than the number of elements or less than @c 0. + */ + result SetRowStretchable(int rowIndex, bool stretchable); + + /** + * Checks whether the row is stretchable or shrinkable + * + * @since 2.1 + * + * @return @c true if the row is stretchable or shrinkable + * else @c false + * @param[in] rowIndex The row index of the cell + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c rowIndex is greater than the number of elements or less than @c 0. + */ + bool IsRowStretchable(int rowIndex) const; + + /** + * Gets the background color of the %GroupContainer control. + * + * @since 2.1 + * + * @return The background color, @n + * else RGBA(0, 0, 0, 0) if an error occurs + */ + Tizen::Graphics::Color GetBackgroundColor(void) const; + + /** + * Sets the background color of the %GroupContainer control. + * + * @since 2.1 + * + * @param[in] color The background color + */ + void SetBackgroundColor(const Tizen::Graphics::Color& color); + + /** + * Gets the row and column divider line color of the %GroupContainer control. + * + * @since 2.1 + * + * @return The row and column divider line color, @n + * else RGBA(0, 0, 0, 255) if line color is not set. + */ + Tizen::Graphics::Color GetLineColor(void) const; + + /** + * Sets the row and column divider line color of the %GroupContainer control. + * + * @since 2.1 + * + * @param[in] color The line color + */ + void SetLineColor(const Tizen::Graphics::Color& color); + +protected: + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // Following method is reserved and may change its name at any time without + // prior notice. + // + // @since 2.1 + // + virtual void GroupContainer_Reserved1(void) {} + + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // Following method is reserved and may change its name at any time without + // prior notice. + // + // @since 2.1 + // + virtual void GroupContainer_Reserved2(void) {} + + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // Following method is reserved and may change its name at any time without + // prior notice. + // + // @since 2.1 + // + virtual void GroupContainer_Reserved3(void) {} + + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // Following method is reserved and may change its name at any time without + // prior notice. + // + // @since 2.1 + // + virtual void GroupContainer_Reserved4(void) {} + + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // Following method is reserved and may change its name at any time without + // prior notice. + // + // @since 2.1 + // + virtual void GroupContainer_Reserved5(void) {} + +private: + friend class _GroupContainerImpl; + + // + // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects. + // + // @since 2.1 + // + GroupContainer(const GroupContainer& rhs); + + // + // The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects. + // + GroupContainer& operator =(const GroupContainer& rhs); + +}; // GroupContainer + +}}} //Tizen::Ui::Controls + +#endif // _FUI_CTRL_GROUP_CONTAINER_H_ diff --git a/inc/FUiCtrlGroupItem.h b/inc/FUiCtrlGroupItem.h index 0b079c2..7b1b202 100644 --- a/inc/FUiCtrlGroupItem.h +++ b/inc/FUiCtrlGroupItem.h @@ -28,6 +28,7 @@ #include #include #include +#include #include #include @@ -79,6 +80,18 @@ public: */ result Construct(const Tizen::Graphics::Dimension& itemSize); + /* + * Initializes this instance of %GroupItem with the specified parameter. + * + * @since 2.1 + * + * @return An error code + * @param[in] itemSize The size of the item + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + */ + result Construct(const Tizen::Graphics::FloatDimension& itemSize); + /** * Sets the background image of the item. * @@ -156,6 +169,20 @@ public: */ result SetTextSize(int size); + /* + * Sets the size of the text. + * + * @since 2.1 + * + * @return An error code + * @param[in] size The size of the text + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + * @see GetTextSize() + */ + result SetTextSize(float size); + /** * Gets the size of the text. * @@ -168,6 +195,18 @@ public: */ int GetTextSize(void) const; + /* + * Gets the size of the text. + * + * @since 2.1 + * + * @return The size of the text, + * else @c -1.0f if an error occurs + * + * @see SetTextSize() + */ + float GetTextSizeF(void) const; + /** * Sets the text and bitmap of the element for %GroupItem. * diff --git a/inc/FUiCtrlGroupTypes.h b/inc/FUiCtrlGroupTypes.h deleted file mode 100644 index 48b605b..0000000 --- a/inc/FUiCtrlGroupTypes.h +++ /dev/null @@ -1,47 +0,0 @@ -// -// Open Service Platform -// Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. -// -// Licensed under the Flora License, Version 1.0 (the License); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://floralicense.org/license/ -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an AS IS BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -/** - * @file FUiCtrlGroupTypes.h - * @brief This is the header file for the table view style enumeration. - * - * This header file contains the declarations of the table view style enumeration. - */ -#ifndef _FUI_CTRL_GROUP_TYPES_H_ -#define _FUI_CTRL_GROUP_TYPES_H_ - -namespace Tizen { namespace Ui { namespace Controls -{ - -/** - * @enum GroupStyle - * - * Defines the table view style of a control's border. - * - * @since 2.0 - */ -enum GroupStyle -{ - GROUP_STYLE_NONE, /**< A rectangle with no outline */ - GROUP_STYLE_SINGLE, /**< A rectangle with all corners rounded */ - GROUP_STYLE_TOP, /**< A rectangle with the two top corners rounded */ - GROUP_STYLE_MIDDLE, /**< A rectangle positioned at the center of a group */ - GROUP_STYLE_BOTTOM /**< A rectangle with the two bottom corners rounded */ -}; - -}}} // Tizen::Ui::Controls - -#endif // _FUI_CTRL_GROUP_TYPES_H_ diff --git a/inc/FUiCtrlGroupedList.h b/inc/FUiCtrlGroupedList.h index 8be75e8..a7c5c53 100644 --- a/inc/FUiCtrlGroupedList.h +++ b/inc/FUiCtrlGroupedList.h @@ -39,7 +39,7 @@ namespace Tizen { namespace Ui { namespace Controls { /** - * @if OSPDEPREC + * @if OSPDEPREC * @class GroupedList * @brief [Deprecated] This class defines the common behavior of a %GroupedList control. * diff --git a/inc/FUiCtrlGroupedListView.h b/inc/FUiCtrlGroupedListView.h old mode 100644 new mode 100755 index e0b0cf1..b1b159d --- a/inc/FUiCtrlGroupedListView.h +++ b/inc/FUiCtrlGroupedListView.h @@ -27,6 +27,7 @@ #include #include +#include #include #include #include @@ -34,8 +35,11 @@ #include #include #include +#include #include +#include #include +#include #include namespace Tizen { namespace Ui { namespace Controls @@ -433,6 +437,26 @@ public: */ result Construct(const Tizen::Graphics::Rectangle& rect, GroupedListViewStyle style, bool itemDivider, ListScrollStyle scrollStyle); + /* + * Initializes this instance of %GroupedListView with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect An instance of the Graphics::Rectangle class + * This instance represents the x and y coordinates of the top-left corner of the created + * %GroupedListView control along with the width and height. + * @param[in] style The style of the %GroupedListView control + * @param[in] itemDivider Set to @c true to display an item divider, @n + * else @c false + * @param[in] scrollStyle Set to scroll style + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. @n + * Either the @c rect.width or @c rect.height parameter has a negative value. + * @exception E_SYSTEM A system error has occurred. + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect, GroupedListViewStyle style, bool itemDivider, ListScrollStyle scrollStyle); + /** * Sets the item provider that creates and deletes items from the list. * @@ -447,6 +471,20 @@ public: */ result SetItemProvider(IGroupedListViewItemProvider& provider); + /* + * Sets the item provider that creates and deletes items from the list. + * + * @since 2.1 + * + * @return An error code + * @param[in] provider The item provider to create and delete items + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @remarks If an item provider is not set for the list, the list does not work. @n + * A provider should be allocated on a heap memory. + */ + result SetItemProvider(IGroupedListViewItemProviderF& provider); + /** * Adds an IGroupedListViewItemEventListener instance that listens to the state changes of the list view items. @n * The added listener can listen to events on the specified event dispatcher's context when they are fired. @@ -499,6 +537,18 @@ public: */ void AddScrollEventListener(IScrollEventListener& listener); + /* + * Adds an IScrollEventListener instance that listens to the state changes of a scroll event. @n + * The added listener can listen to events on the specified event dispatcher's context when they are fired. + * + * @since 2.1 + * + * @param[in] listener The event listener to be added + * @see IScrollEventListener::OnScrollEndReached() + * @see RemoveScrollEventListener() + */ + void AddScrollEventListener(IScrollEventListenerF& listener); + /** * Removes an IScrollEventListener instance that listens to the state changes of a scroll event. @n * The removed listener cannot listen to events when they are fired. @@ -511,6 +561,18 @@ public: */ void RemoveScrollEventListener(IScrollEventListener& listener); + /* + * Removes an IScrollEventListener instance that listens to the state changes of a scroll event. @n + * The removed listener cannot listen to events when they are fired. + * + * @since 2.1 + * + * @param[in] listener The event listener to be removed + * @see IScrollEventListener::OnScrollEndReached() + * @see AddScrollEventListener() + */ + void RemoveScrollEventListener(IScrollEventListenerF& listener); + /** * Adds a link event listener. * @@ -602,6 +664,7 @@ public: * @exception E_SUCCESS The method is successful. * @exception E_OUT_OF_RANGE A specified input parameter is invalid. * @exception E_SYSTEM A system error has occurred. + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ result ScrollToItem(int groupIndex, int itemIndex); @@ -618,6 +681,7 @@ public: * @exception E_SUCCESS The method is successful. * @exception E_OUT_OF_RANGE A specified input parameter is invalid. * @exception E_SYSTEM A system error has occurred. + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ result ScrollToItem(int groupIndex, int itemIndex, ListScrollItemAlignment itemAlignment); @@ -636,6 +700,7 @@ public: * @exception E_INVALID_OPERATION The item is disabled. * @exception E_SYSTEM A system error has occurred. * @remarks This method works only when the annex style of the item allows selection. + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ result SetItemChecked(int groupIndex, int itemIndex, bool check); @@ -649,6 +714,7 @@ public: * @param[in] groupIndex The group index * @param[in] itemIndex The item index * @remarks This method returns @c false, if the annex style of the item does not allow selection. + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ bool IsItemChecked(int groupIndex, int itemIndex) const; @@ -666,6 +732,7 @@ public: * @exception E_OUT_OF_RANGE A specified input parameter is invalid. * @exception E_SYSTEM A system error has occurred. * @remarks This method can only be used when the annex style of the list allows selection. + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ result SetItemEnabled(int groupIndex, int itemIndex, bool enable); @@ -678,6 +745,7 @@ public: * else @c false * @param[in] groupIndex The group index * @param[in] itemIndex The item index + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ bool IsItemEnabled(int groupIndex, int itemIndex) const; @@ -697,6 +765,7 @@ public: * * @return The total number of items in the specified group * @param[in] groupIndex The group index + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ int GetItemCountAt(int groupIndex) const; @@ -712,6 +781,7 @@ public: * @exception E_OUT_OF_RANGE A specified input parameter is invalid. * @exception E_SYSTEM A system error has occurred. * @remarks If no description text is set for the item at the specified index, it is not displayed. + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). * */ result ShowItemDescriptionText(int groupIndex, int itemIndex); @@ -727,6 +797,7 @@ public: * @exception E_SUCCESS The method is successful. * @exception E_OUT_OF_RANGE A specified input parameter is invalid. * @exception E_SYSTEM A system error has occurred. + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ result HideItemDescriptionText(int groupIndex, int itemIndex); @@ -794,9 +865,27 @@ public: * @exception E_SUCCESS The method is successful. * @exception E_SYSTEM A system error has occurred, or @n * there is no item at the specified position. + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ result GetItemIndexFromPosition(int x, int y, int& groupIndex, int& itemIndex) const; + /* + * Gets the index of the item at the specified position. + * + * @since 2.1 + * + * @return An error code + * @param[in] x The X position of the item + * @param[in] y The Y position of the item + * @param[out] groupIndex The index of the group that the item belongs to + * @param[out] itemIndex The index of the item + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred, or @n + * there is no item at the specified position. + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ + result GetItemIndexFromPosition(float x, float y, int& groupIndex, int& itemIndex) const; + /** * Gets the index of the item at the specified position. * @@ -809,9 +898,26 @@ public: * @exception E_SUCCESS The method is successful. * @exception E_SYSTEM A system error has occurred, or @n * there is no item at the specified position. + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ result GetItemIndexFromPosition(const Tizen::Graphics::Point& position, int& groupIndex, int& itemIndex) const; + /* + * Gets the index of the item at the specified position. + * + * @since 2.1 + * + * @return An error code + * @param[in] position The position of the item + * @param[out] groupIndex The index of the group that the item belongs to + * @param[out] itemIndex The index of the item + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred, or @n + * there is no item at the specified position. + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ + result GetItemIndexFromPosition(const Tizen::Graphics::FloatPoint& position, int& groupIndex, int& itemIndex) const; + /** * Gets the index of the item and ID of the element at the specified position. * @@ -828,9 +934,30 @@ public: * there is no item at the specified position. * @remarks @c groupIndex and @c itemIndex are -1 when there is no list item at the specified position. * @remarks @c elementId is -1 when there is no element at the specified position + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ result GetItemIndexFromPosition(int x, int y, int& groupIndex, int& itemIndex, int& elementId) const; + /* + * Gets the index of the item and ID of the element at the specified position. + * + * @since 2.1 + * + * @return An error code + * @param[in] x The X position of the item + * @param[in] y The Y position of the item + * @param[out] groupIndex The index of the group that the item belongs to + * @param[out] itemIndex The index of the item + * @param[out] elementId The ID of the element + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred, or + * there is no item at the specified position. + * @remarks @c groupIndex and @c itemIndex are -1 when there is no list item at the specified position. + * @remarks @c elementId is -1 when there is no element at the specified position + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ + result GetItemIndexFromPosition(float x, float y, int& groupIndex, int& itemIndex, int& elementId) const; + /** * Gets the index of the item and ID of the element at the specified position. * @@ -845,10 +972,30 @@ public: * @exception E_SYSTEM A system error has occurred, or * there is no item at the specified position. * @remarks @c groupIndex and @c itemIndex are -1 when there is no list item at the specified position. - * @remarks @c elementId is -1 when there is no element at the specified position + * @remarks @c elementId is -1 when there is no element at the specified position + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ result GetItemIndexFromPosition(const Tizen::Graphics::Point& position, int& groupIndex, int& itemIndex, int& elementId) const; + /* + * Gets the index of the item and ID of the element at the specified position. + * + * @since 2.1 + * + * @return An error code + * @param[in] position The position of the point + * @param[out] groupIndex The index of the group that the item belongs to + * @param[out] itemIndex The index of the item + * @param[out] elementId The ID of the element + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred, or + * there is no item at the specified position. + * @remarks @c groupIndex and @c itemIndex are -1 when there is no list item at the specified position. + * @remarks @c elementId is -1 when there is no element at the specified position + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ + result GetItemIndexFromPosition(const Tizen::Graphics::FloatPoint& position, int& groupIndex, int& itemIndex, int& elementId) const; + /** * Sets the color of a section. * @@ -998,6 +1145,7 @@ public: * @exception E_SUCCESS The method is successful. * @exception E_OUT_OF_RANGE A specified input parameter is invalid. * @exception E_SYSTEM A system error has occurred. + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ result ExpandGroup(int groupIndex); @@ -1011,6 +1159,7 @@ public: * @exception E_SUCCESS The method is successful. * @exception E_OUT_OF_RANGE A specified input parameter is invalid. * @exception E_SYSTEM A system error has occurred. + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ result CollapseGroup(int groupIndex); @@ -1023,10 +1172,33 @@ public: * @c else false * * @param[in] groupIndex The index of the group + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ bool IsGroupExpanded(int groupIndex) const; /** + * Expands all groups of list. + * + * @since 2.1 + * + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The feature of expanding all groups is only supported when %GroupedListView% is constructed with GroupedListViewStyle::GROUPED_LIST_VIEW_STYLE_INDEXED style. + * @see GroupedListView::Construct() + */ + result ExpandAllGroups(void); + + /** + * Collapses all groups of list. + * + * @since 2.1 + * + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The feature of collapsing all groups is only supported when %GroupedListView% is constructed with GroupedListViewStyle::GROUPED_LIST_VIEW_STYLE_INDEXED style. + * @see GroupedListView::Construct() + */ + result CollapseAllGroups(void); + + /** * Begins the reordering mode. * * @since 2.0 @@ -1062,6 +1234,26 @@ public: */ bool IsInReorderingMode(void) const; + /** + * Sets the scroll input handling mode. + * + * @since 2.1 + * + * @param[in] mode The scroll input handling mode + * @see GetScrollInputMode() + */ + void SetScrollInputMode(ScrollInputMode mode); + + /** + * Gets the scroll input handling mode. + * + * @since 2.1 + * + * @return The scroll input handling mode + * @see SetScrollInputMode() + */ + ScrollInputMode GetScrollInputMode(void) const; + protected: friend class _GroupedListViewImpl; diff --git a/inc/FUiCtrlGroupedTableView.h b/inc/FUiCtrlGroupedTableView.h index 1dc8933..f48a366 100644 --- a/inc/FUiCtrlGroupedTableView.h +++ b/inc/FUiCtrlGroupedTableView.h @@ -16,11 +16,11 @@ // /** - * @file FUiCtrlGroupedTableView.h - * @brief This is the header file for the %GroupedTableView class. - * - * This header file contains the declarations of the %GroupedTableView class and its helper classes. - */ +* @file FUiCtrlGroupedTableView.h +* @brief This is the header file for the %GroupedTableView class. +* +* This header file contains the declarations of the %GroupedTableView class and its helper classes. +*/ #ifndef _FUI_CTRL_GROUPED_TABLE_VIEW_H_ #define _FUI_CTRL_GROUPED_TABLE_VIEW_H_ @@ -29,13 +29,16 @@ #include #include #include +#include namespace Tizen { namespace Ui { namespace Controls { class IGroupedTableViewItemProvider; +class IGroupedTableViewItemProviderF; class IGroupedTableViewItemEventListener; class IFastScrollListener; class IScrollEventListener; +class IScrollEventListenerF; /** * @class GroupedTableView @@ -250,7 +253,7 @@ GroupedTableViewSample::CreateItem(int groupIndex, int itemIndex, int itemWidth) TableViewAnnexStyle style = TABLE_VIEW_ANNEX_STYLE_NORMAL; TableViewItem* pItem = new TableViewItem(); - switch (itemIndex % 5) + switch (itemIndex % 6) { case 0: style = TABLE_VIEW_ANNEX_STYLE_NORMAL; @@ -267,6 +270,9 @@ GroupedTableViewSample::CreateItem(int groupIndex, int itemIndex, int itemWidth) case 4: style = TABLE_VIEW_ANNEX_STYLE_RADIO; break; + case 5: + style = TABLE_VIEW_ANNEX_STYLE_ONOFF_SLIDING_WITH_DIVIDER; + break; default: break; } @@ -307,495 +313,639 @@ class _OSP_EXPORT_ GroupedTableView { public: /** - * The object is not fully constructed after this constructor is called. Hence, the Construct() method must be called after calling this constructor. - * - * @since 2.0 - */ + * The object is not fully constructed after this constructor is called. Hence, the Construct() method must be called after calling this constructor. + * + * @since 2.0 + */ GroupedTableView(void); /** - * This destructor overrides Tizen::Base::Object::~Object(). - * - * @since 2.0 - */ + * This destructor overrides Tizen::Base::Object::~Object(). + * + * @since 2.0 + */ virtual ~GroupedTableView(void); /** - * Initializes this instance of %GroupedTableView with the specified parameters. - * - * @since 2.0 - * - * @return An error code - * @param[in] rect An instance of the Graphics::Rectangle class - * This instance represents the x and y coordinates of the left top corner of the created %GroupedTableView along with the width and height. - * @param[in] itemDivider Set to @c true to display an item divider, @n - * else @c false - * @param[in] scrollStyle The style of %GroupedTableView scroll bar style - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG A specified input parameter is invalid, or either the rect.width or rect.height parameter has a negative value. - * - */ + * Initializes this instance of %GroupedTableView with the specified parameters. + * + * @since 2.0 + * + * @return An error code + * @param[in] rect An instance of the Graphics::Rectangle class + * This instance represents the x and y coordinates of the left top corner of the created %GroupedTableView along with the width and height. + * @param[in] itemDivider Set to @c true to display an item divider, @n + * else @c false + * @param[in] scrollStyle The style of %GroupedTableView scroll bar style + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid, or either the rect.width or rect.height parameter has a negative value. + * + */ result Construct(const Tizen::Graphics::Rectangle& rect, bool itemDivider, TableViewScrollBarStyle scrollStyle); + /* + * Initializes this instance of %GroupedTableView with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect An instance of the Graphics::FloatRectangle class + * This instance represents the x and y coordinates of the left top corner of the created %GroupedTableView along with the width and height. + * @param[in] itemDivider Set to @c true to display an item divider, @n + * else @c false + * @param[in] scrollStyle The style of %GroupedTableView scroll bar style + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid, or either the rect.width or rect.height parameter has a negative value. + * + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect, bool itemDivider, TableViewScrollBarStyle scrollStyle); + /** - * Sets the item provider that creates and deletes items for the grouped style table view. - * - * @since 2.0 - * - * @param[in] pProvider The item provider to create and delete items - * @remarks If an item provider is not set for the table view, the table view does not work. The specified provider should be allocated in heap memory. - * To reset the item provider, pass @c null to @c pProvider. - */ + * Sets the item provider that creates and deletes items for the grouped style table view. + * + * @since 2.0 + * + * @param[in] pProvider The item provider to create and delete items + * @remarks If an item provider is not set for the table view, the table view does not work. The specified provider should be allocated in heap memory. + * To reset the item provider, pass @c null to @c pProvider. + */ void SetItemProvider(IGroupedTableViewItemProvider* pProvider); - /** - * Expands the group's items. - * - * @since 2.0 - * - * @return An error code - * @param[in] groupIndex The index of the group - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE A specified input parameter is invalid. - */ + /* + * Sets the item provider that creates and deletes items for the grouped style table view. + * + * @since 2.1 + * + * @param[in] pProvider The item provider to create and delete items + * @remarks If an item provider is not set for the table view, the table view does not work. The specified provider should be allocated in heap memory. + * To reset the item provider, pass @c null to @c pProvider. + */ + void SetItemProviderF(IGroupedTableViewItemProviderF* pProvider); + + /** + * Expands the group's items. + * + * @since 2.0 + * + * @return An error code + * @param[in] groupIndex The index of the group + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE A specified input parameter is invalid. + * @remarks This method should be called only after TableView items are created. If this method needs to be called early in the lifecycle of the TableView, then UpdateTableView() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ result ExpandGroup(int groupIndex); /** - * Collapses the group's items. - * - * @since 2.0 - * - * @return An error code - * @param[in] groupIndex The index of the group - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE A specified input parameter is invalid. - */ + * Collapses the group's items. + * + * @since 2.0 + * + * @return An error code + * @param[in] groupIndex The index of the group + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE A specified input parameter is invalid. + * @remarks This method should be called only after TableView items are created. If this method needs to be called early in the lifecycle of the TableView, then UpdateTableView() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ result CollapseGroup(int groupIndex); /** - * Expands all groups of table view. - * - * @since 2.0 - * - */ - void ExpandAllGroup(void); + * Expands all groups of table view. + * + * @since 2.0 + * + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + */ + result ExpandAllGroups(void); /** - * Collapses all groups of table view. - * - * @since 2.0 - * - */ - void CollapseAllGroup(void); + * Collapses all groups of table view. + * + * @since 2.0 + * + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + */ + result CollapseAllGroups(void); + + /* + * Expands all groups of table view. + * + * @since 2.0 + * + */ + inline void ExpandAllGroup(void) + { + ExpandAllGroups(); + } + + /* + * Collapses all groups of table view. + * + * @since 2.0 + * + */ + inline void CollapseAllGroup(void) + { + CollapseAllGroups(); + } /** - * Returns whether the group is expanded or not. - * - * @since 2.0 - * - * @return @c true if the group is expanded, else @c false - * @param[in] groupIndex The index of the group - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE A specified input parameter is invalid. - */ + * Returns whether the group is expanded or not. + * + * @since 2.0 + * + * @return @c true if the group is expanded, else @c false + * @param[in] groupIndex The index of the group + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE A specified input parameter is invalid. + * @remarks This method should be called only after TableView items are created. If this method needs to be called early in the lifecycle of the TableView, then UpdateTableView() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ bool IsGroupExpanded(int groupIndex) const; /** - * Sets the grouped look is enabled. - * - * @since 2.0 - * - * @param[in] enable The enabled/disabled status - */ + * Sets the grouped look is enabled. + * + * @since 2.0 + * + * @param[in] enable The enabled/disabled status + */ void SetGroupedLookEnabled(bool enable); /** - * Returns whether the grouped look is enabled or not. - * - * @since 2.0 - * - * @return @c true if the grouped look is enabled, else @c false - */ + * Returns whether the grouped look is enabled or not. + * + * @since 2.0 + * + * @return @c true if the grouped look is enabled, else @c false + */ bool IsGroupedLookEnabled(void) const; /** - * Adds a listener instance that listens to state changes of table view items. @n - * The added listener can listen to events on the specified event dispatcher's context when they are fired. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The event listener to add - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_ALREADY_EXIST The listener is already added. - * @remarks The specified listener should be allocated in heap memory. - */ + * Adds a listener instance that listens to state changes of table view items. @n + * The added listener can listen to events on the specified event dispatcher's context when they are fired. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The event listener to add + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_ALREADY_EXIST The listener is already added. + * @remarks The specified listener should be allocated in heap memory. + */ result AddGroupedTableViewItemEventListener(IGroupedTableViewItemEventListener& listener); /** - * Removes a listener instance that listens to state changes of table view items. @n - * The removed listener cannot listen to events when they are fired. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The event listener to remove - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_NOT_FOUND The listener is not found. - */ + * Removes a listener instance that listens to state changes of table view items. @n + * The removed listener cannot listen to events when they are fired. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The event listener to remove + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_NOT_FOUND The listener is not found. + */ result RemoveGroupedTableViewItemEventListener(IGroupedTableViewItemEventListener& listener); /** - * Adds a listener instance that listens to state changes of a fast scroll. @n - * The added listener can listen to events on the specified event dispatcher's context when they are fired. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The event listener to add - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. - * @exception E_OBJ_ALREADY_EXIST The listener is already added. - * @remarks The specified listener should be allocated in heap memory. - */ + * Adds a listener instance that listens to state changes of a fast scroll. @n + * The added listener can listen to events on the specified event dispatcher's context when they are fired. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The event listener to add + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * @exception E_OBJ_ALREADY_EXIST The listener is already added. + * @remarks The specified listener should be allocated in heap memory. + */ result AddFastScrollListener(IFastScrollListener& listener); /** - * Removes a listener instance that listens to state changes of a fast scroll. @n - * The removed listener cannot listen to events when they are fired. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The event listener to remove - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. - * @exception E_OBJ_NOT_FOUND The listener is not found. - */ + * Removes a listener instance that listens to state changes of a fast scroll. @n + * The removed listener cannot listen to events when they are fired. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The event listener to remove + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * @exception E_OBJ_NOT_FOUND The listener is not found. + */ result RemoveFastScrollListener(IFastScrollListener& listener); /** - * Adds a listener instance that listens to state changes of a scroll event. @n - * The added listener can listen to events on the specified event dispatcher's context when they are fired. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The event listener to add - * @see IScrollEventListener::OnScrollEndReached() - * @see RemoveScrollEventListener() - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. - * @exception E_OBJ_ALREADY_EXIST The listener is already added. - * @remarks The specified listener should be allocated in heap memory. - */ + * Adds a listener instance that listens to state changes of a scroll event. @n + * The added listener can listen to events on the specified event dispatcher's context when they are fired. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The event listener to add + * @see IScrollEventListener::OnScrollEndReached() + * @see RemoveScrollEventListener() + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * @exception E_OBJ_ALREADY_EXIST The listener is already added. + * @remarks The specified listener should be allocated in heap memory. + */ result AddScrollEventListener(IScrollEventListener& listener); /** - * Removes a listener instance that listens to state changes of a scroll event. @n - * The removed listener cannot listen to events when they are fired. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The event listener to remove - * @see IScrollEventListener::OnScrollEndReached() - * @see AddScrollEventListener() - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. - * @exception E_OBJ_NOT_FOUND The listener is not found. - */ + * Removes a listener instance that listens to state changes of a scroll event. @n + * The removed listener cannot listen to events when they are fired. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The event listener to remove + * @see IScrollEventListener::OnScrollEndReached() + * @see AddScrollEventListener() + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * @exception E_OBJ_NOT_FOUND The listener is not found. + */ result RemoveScrollEventListener(IScrollEventListener& listener); + /* + * Adds a listener instance that listens to state changes of a scroll event. @n + * The added listener can listen to events on the specified event dispatcher's context when they are fired. + * + * @since 2.1 + * + * @return An error code + * @param[in] listener The event listener to add + * @see IScrollEventListenerF::OnScrollEndReached() + * @see RemoveScrollEventListenerF() + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * @exception E_OBJ_ALREADY_EXIST The listener is already added. + * @remarks The specified listener should be allocated in heap memory. + */ + result AddScrollEventListener(IScrollEventListenerF& listener); + + /* + * Removes a listener instance that listens to state changes of a scroll event. @n + * The removed listener cannot listen to events when they are fired. + * + * @since 2.1 + * + * @return An error code + * @param[in] listener The event listener to remove + * @see IScrollEventListenerF::OnScrollEndReached() + * @see AddScrollEventListenerF() + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * @exception E_OBJ_NOT_FOUND The listener is not found. + */ + result RemoveScrollEventListener(IScrollEventListenerF& listener); + /** - * Enables or disables the collapse by pinch gesture. - * - * @since 2.0 - * - * @param[in] enable Set to @c true to enable the collapse by pinch gesture, else @c false - */ + * Enables or disables the collapse by pinch gesture. + * + * @since 2.0 + * + * @param[in] enable Set to @c true to enable the collapse by pinch gesture, else @c false + */ void SetCollapseByPinchGestureEnabled(bool enable); /** - * Returns whether the collapse by pinch gesture is enabled or not. - * - * @since 2.0 - * - * @return @c true if the collapse by pinch gesture is enabled, else @c false - */ + * Returns whether the collapse by pinch gesture is enabled or not. + * + * @since 2.0 + * + * @return @c true if the collapse by pinch gesture is enabled, else @c false + */ bool IsCollapseByPinchGestureEnabled(void) const; /** - * Sets the text index of the fast scroll. - * - * @since 2.0 - * - * @return An error code - * @param[in] text The text of the index - * @param[in] useSearchIcon Set to @c true to show the magnifying icon, @n - * else @c false - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. - */ + * Sets the text index of the fast scroll. + * + * @since 2.0 + * + * @return An error code + * @param[in] text The text of the index + * @param[in] useSearchIcon Set to @c true to show the magnifying icon, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + */ result SetFastScrollIndex(const Tizen::Base::String& text, bool useSearchIcon); /** - * Gets the group and item indexes of the top item. - * - * @since 2.0 - * - * @return An error code - * @param[out] groupIndex The group index - * @param[out] itemIndex The item index - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_NOT_FOUND Top drawn item is not found. - */ + * Gets the group and item indexes of the top item. + * + * @since 2.0 + * + * @return An error code + * @param[out] groupIndex The group index + * @param[out] itemIndex The item index + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_NOT_FOUND Top drawn item is not found. + */ result GetTopDrawnItemIndex(int& groupIndex, int& itemIndex) const; /** - * Gets the group and item indexes of the bottom item. - * - * @since 2.0 - * - * @return An error code - * @param[out] groupIndex The group index - * @param[out] itemIndex The item index - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_NOT_FOUND Bottom drawn item is not found. - */ + * Gets the group and item indexes of the bottom item. + * + * @since 2.0 + * + * @return An error code + * @param[out] groupIndex The group index + * @param[out] itemIndex The item index + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_NOT_FOUND Bottom drawn item is not found. + */ result GetBottomDrawnItemIndex(int& groupIndex, int& itemIndex) const; /** - * Scrolls to the item at the specified index. - * The specified item is drawn at the position specified by the item alignment. - * - * @since 2.0 - * - * @return An error code - * @param[in] groupIndex The group index - * @param[in] itemIndex The item index - * @param[in] itemAlignment The item alignment - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE A specified input parameter is invalid. - * @remarks If the specified item. itemIndex is -1, then the method is applied to the group item with the given index. - */ + * Scrolls to the item at the specified index. + * The specified item is drawn at the position specified by the item alignment. + * + * @since 2.0 + * + * @return An error code + * @param[in] groupIndex The group index + * @param[in] itemIndex The item index + * @param[in] itemAlignment The item alignment + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE A specified input parameter is invalid. + * @remarks If the specified item. itemIndex is -1, then the method is applied to the group item with the given index. + * @remarks This method should be called only after TableView items are created. If this method needs to be called early in the lifecycle of the TableView, then UpdateTableView() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ result ScrollToItem(int groupIndex, int itemIndex, TableViewScrollItemAlignment itemAlignment = TABLE_VIEW_SCROLL_ITEM_ALIGNMENT_TOP); /** - * Checks or unchecks the item at the specified index. - * - * @since 2.0 - * - * @return An error code - * @param[in] groupIndex The group index - * @param[in] itemIndex The item index - * @param[in] check Set to @c true to select the item, @n - * else @c false - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE A specified input parameter is invalid. - * @exception E_INVALID_OPERATION The item is disabled. - * @remarks This method works only when the annex style of the item allows selection. - */ + * Checks or unchecks the item at the specified index. + * + * @since 2.0 + * + * @return An error code + * @param[in] groupIndex The group index + * @param[in] itemIndex The item index + * @param[in] check Set to @c true to select the item, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE A specified input parameter is invalid. + * @exception E_INVALID_OPERATION The item is disabled. + * @remarks This method works only when the annex style of the item allows selection. + * @remarks This method should be called only after TableView items are created. If this method needs to be called early in the lifecycle of the TableView, then UpdateTableView() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ result SetItemChecked(int groupIndex, int itemIndex, bool check); /** - * Returns whether the item at the specified index is selected or not. - * - * @since 2.0 - * - * @return @c true if the item is selected, @n - * else @c false - * @param[in] groupIndex The group index - * @param[in] itemIndex The item index - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE A specified input parameter is invalid. - * @remarks This method returns @c false, if the annex style of the item does not allow selection. + * Returns whether the item at the specified index is selected or not. + * + * @since 2.0 + * + * @return @c true if the item is selected, @n + * else @c false + * @param[in] groupIndex The group index + * @param[in] itemIndex The item index + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE A specified input parameter is invalid. + * @remarks This method returns @c false, if the annex style of the item does not allow selection. + * @remarks This method should be called only after TableView items are created. If this method needs to be called early in the lifecycle of the TableView, then UpdateTableView() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ bool IsItemChecked(int groupIndex, int itemIndex) const; /** - * Enables or disables the item at the specified index. - * - * @since 2.0 - * - * @return An error code - * @param[in] groupIndex The group index - * @param[in] itemIndex The item index - * @param[in] enable Set to @c true to enable the specified item, @n - * else @c false - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE A specified input parameter is invalid. - */ + * Enables or disables the item at the specified index. + * + * @since 2.0 + * + * @return An error code + * @param[in] groupIndex The group index + * @param[in] itemIndex The item index + * @param[in] enable Set to @c true to enable the specified item, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE A specified input parameter is invalid. + * @remarks This method should be called only after TableView items are created. If this method needs to be called early in the lifecycle of the TableView, then UpdateTableView() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ result SetItemEnabled(int groupIndex, int itemIndex, bool enable); /** - * Returns whether the item at the specified index is enabled or disabled. - * - * @since 2.0 - * - * @return @c true if the item is enabled, @n - * else @c false - * @param[in] groupIndex The group index - * @param[in] itemIndex The item index - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE A specified input parameter is invalid. - */ + * Returns whether the item at the specified index is enabled or disabled. + * + * @since 2.0 + * + * @return @c true if the item is enabled, @n + * else @c false + * @param[in] groupIndex The group index + * @param[in] itemIndex The item index + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE A specified input parameter is invalid. + * @remarks This method should be called only after TableView items are created. If this method needs to be called early in the lifecycle of the TableView, then UpdateTableView() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ bool IsItemEnabled(int groupIndex, int itemIndex) const; /** - * Counts the total number of groups. - * - * @since 2.0 - * - * @return The total number of groups - */ + * Counts the total number of groups. + * + * @since 2.0 + * + * @return The total number of groups + */ int GetGroupCount(void) const; /** - * Counts all the items of the specified group. - * - * @since 2.0 - * - * @return The total number of items in the specified group - * @param[in] groupIndex The group index - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE A specified input parameter is invalid. - */ + * Counts all the items of the specified group. + * + * @since 2.0 + * + * @return The total number of items in the specified group + * @param[in] groupIndex The group index + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE A specified input parameter is invalid. + */ int GetItemCountAt(int groupIndex) const; /** - * Updates the specified item. @n - * For instance, TABLE_VIEW_REFRESH_TYPE_ITEM_ADD is used when a new item needs to be added and TABLE_VIEW_REFRESH_TYPE_ITEM_REMOVE is used when an item is deleted from the - * table view. Moreover, TABLE_VIEW_REFRESH_TYPE_ITEM_MODIFY is used when the content of an existing item has changed and it needs to be updated. - * Note that calling this method with TABLE_VIEW_REFRESH_TYPE_ITEM_MODIFY invokes item provider's UpdateItem() for the given index in sequence. - * - * @since 2.0 - * - * @return An error code - * @param[in] groupIndex The group index - * @param[in] itemIndex The item index - * @param[in] type The item to be added, removed, or modified - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE A specified input parameter is invalid. - * @remarks If the specified item. itemIndex is -1, then the method is applied to the group item with the given index. - * Note that if TABLE_VIEW_REFRESH_TYPE_ITEM_REMOVE option is used to a group item, all the items in the group (including the group item itself) are - * removed from the table view. - */ + * Updates the specified item. @n + * For instance, TABLE_VIEW_REFRESH_TYPE_ITEM_ADD is used when a new item needs to be added and TABLE_VIEW_REFRESH_TYPE_ITEM_REMOVE is used when an item is deleted from the + * table view. Moreover, TABLE_VIEW_REFRESH_TYPE_ITEM_MODIFY is used when the content of an existing item has changed and it needs to be updated. + * Note that calling this method with TABLE_VIEW_REFRESH_TYPE_ITEM_MODIFY invokes item provider's UpdateItem() for the given index in sequence. + * + * @since 2.0 + * + * @return An error code + * @param[in] groupIndex The group index + * @param[in] itemIndex The item index + * @param[in] type The item to be added, removed, or modified + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE A specified input parameter is invalid. + * @remarks If the specified item. itemIndex is -1, then the method is applied to the group item with the given index. + * Note that if TABLE_VIEW_REFRESH_TYPE_ITEM_REMOVE option is used to a group item, all the items in the group (including the group item itself) are + * removed from the table view. + */ result RefreshItem(int groupIndex, int itemIndex, TableViewRefreshType type); /** - * Updates all the items of a table view. - * - * @since 2.0 - * - * @remarks This method clears all the items in the table view and invokes the methods of the item provider again to update the table view. - */ + * Updates all items of the table view. @n + * Note that calling this method invokes its item provider's UpdateItem() for all loaded items. + * + * @since 2.1 + * + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The %GroupedTableView item provider is processing the other request. + */ + result RefreshAllItems(void); + + /** + * Updates all the items of a table view. + * + * @since 2.0 + * + * @remarks This method clears all the items in the table view and invokes the methods of the item provider again to update the table view. + */ void UpdateTableView(void); /** - * Gets the index of the item at the specified position. - * - * @since 2.0 - * - * @param[in] position The position of the item - * @param[out] groupIndex The group index of the item on specified position - * @param[out] itemIndex The item index of the item on specified position - * @remarks This method sets both of groupIndex and itemIndex to -1 if no item is found at the given position. - */ + * Gets the index of the item at the specified position. + * + * @since 2.0 + * + * @param[in] position The position of the item + * @param[out] groupIndex The group index of the item on specified position + * @param[out] itemIndex The item index of the item on specified position + * @remarks This method sets both of groupIndex and itemIndex to -1 if no item is found at the given position. + * @remarks This method should be called only after TableView items are created. If this method needs to be called early in the lifecycle of the TableView, then UpdateTableView() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ void GetItemIndexFromPosition(const Tizen::Graphics::Point& position, int& groupIndex, int& itemIndex) const; + /* + * Gets the index of the item at the specified position. + * + * @since 2.1 + * + * @param[in] position The position of the item + * @param[out] groupIndex The group index of the item on specified position + * @param[out] itemIndex The item index of the item on specified position + * @remarks This method sets both of groupIndex and itemIndex to -1 if no item is found at the given position. + * @remarks This method should be called only after TableView items are created. If this method needs to be called early in the lifecycle of the TableView, then UpdateTableView() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ + void GetItemIndexFromPosition(const Tizen::Graphics::FloatPoint& position, int& groupIndex, int& itemIndex) const; + /** - * Sets the color of a division line between items. - * - * @since 2.0 - * - * @return An error code - * @param[in] color The division line color - */ + * Sets the color of a division line between items. + * + * @since 2.0 + * + * @return An error code + * @param[in] color The division line color + */ void SetItemDividerColor(const Tizen::Graphics::Color& color); /** - * Gets the color of a division line between items. - * - * @since 2.0 - * - * @return The color of a division line - */ + * Gets the color of a division line between items. + * + * @since 2.0 + * + * @return The color of a division line + */ Tizen::Graphics::Color GetItemDividerColor(void) const; /** - * Sets the background color of this control. - * - * @since 2.0 - * - * @param[in] color The background color - * @remarks The background bitmap has priority over the background color. When both the background bitmap and the background color are specified, - * only the bitmap image is displayed. - */ + * Sets the background color of this control. + * + * @since 2.0 + * + * @param[in] color The background color + * @remarks The background bitmap has priority over the background color. When both the background bitmap and the background color are specified, + * only the bitmap image is displayed. + */ void SetBackgroundColor(const Tizen::Graphics::Color& color); /** - * Sets the scroll input handling mode. - * - * @since 2.0 - * - * @param[in] mode The scroll input handling mode - * @see GetScrollInputMode() - */ + * Sets the scroll input handling mode. + * + * @since 2.0 + * + * @param[in] mode The scroll input handling mode + * @see GetScrollInputMode() + */ void SetScrollInputMode(ScrollInputMode mode); /** - * Gets the scroll input handling mode. - * - * @since 2.0 - * - * @return The scroll input handling mode - * @see SetScrollInputMode() - */ + * Gets the scroll input handling mode. + * + * @since 2.0 + * + * @return The scroll input handling mode + * @see SetScrollInputMode() + */ ScrollInputMode GetScrollInputMode(void) const; /** - * Gets the background color of this control. - * - * @since 2.0 - * - * @return The background color - */ + * Gets the background color of this control. + * + * @since 2.0 + * + * @return The background color + */ Tizen::Graphics::Color GetBackgroundColor(void) const; /* - * Scrolls the list contents with the amount of pixels. - * - * @since 2.0 - * - * @return An error code - * @param[in] pixel The amount of pixels to scroll - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE The specified @c pixel is out of range. - * @remarks If you call ScrollByPixel() with negative @c pixel when position of scroll is already top of contents then it will return E_OUT_OF_RANGE. - * Likewise, in case of positive @c pixel on the bottom position of scroll it will also return E_OUT_OF_RANGE. - */ + * Scrolls the list contents with the amount of pixels. + * + * @since 2.0 + * + * @return An error code + * @param[in] pixel The amount of pixels to scroll + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c pixel is out of range. + * @remarks If you call ScrollByPixel() with negative @c pixel when position of scroll is already top of contents then it will return E_OUT_OF_RANGE. + * Likewise, in case of positive @c pixel on the bottom position of scroll it will also return E_OUT_OF_RANGE. + */ result ScrollByPixel(int pixel); /* - * Gets the current scroll position - * - * @since 2.0 - */ + * Scrolls the list contents with the amount of pixels. + * + * @since 2.1 + * + * @return An error code + * @param[in] pixel The amount of pixels to scroll + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c pixel is out of range. + * @remarks If you call ScrollByPixel() with negative @c pixel when position of scroll is already top of contents then it will return E_OUT_OF_RANGE. + * Likewise, in case of positive @c pixel on the bottom position of scroll it will also return E_OUT_OF_RANGE. + */ + result ScrollByPixel(float pixel); + + /* + * Gets the current scroll position + * + * @since 2.0 + */ int GetCurrentScrollPosition(void) const; /* - * Enables or disables the scroll of GroupedTableView items. - * - * @since 2.0 - */ + * Gets the current scroll position + * + * @since 2.1 + */ + float GetCurrentScrollPositionF(void) const; + + /* + * Enables or disables the scroll of GroupedTableView items. + * + * @since 2.0 + */ void SetScrollEnabled(bool enable); /* - * Checks whether the scroll is enabled or disabled. - * - * @since 2.0 - */ + * Checks whether the scroll is enabled or disabled. + * + * @since 2.0 + */ bool IsScrollEnabled(void) const; private: diff --git a/inc/FUiCtrlHeader.h b/inc/FUiCtrlHeader.h index cf8c5fd..0b63bc2 100644 --- a/inc/FUiCtrlHeader.h +++ b/inc/FUiCtrlHeader.h @@ -349,8 +349,9 @@ public: * * @return The selected item index, @n * else @c -1 if an error occurs - * @exception E_SUCCESS The method is successful. - * @exception E_UNSUPPORTED_OPERATION This operation is not supported when the style of the %Header control is not @c HEADER_STYLE_SEGMENTED. + * @exception E_SUCCESS The method is successful. + * @exception E_UNSUPPORTED_OPERATION This operation is supported when the style of the %Header control is @c HEADER_STYLE_SEGMENTED, @n + * @c HEADER_STYLE_SEGMENTED_WITH_TITLE, @c HEADER_STYLE_TAB or @c HEADER_STYLE_TAB_WITH_TITLE. * @remarks The specific error code can be accessed using the GetLastResult() method. */ int GetSelectedItemIndex(void) const; @@ -635,15 +636,14 @@ public: * * @since 2.0 * - * @return An error code - * @param[in] itemIndex The item index - * @param[in] pBadgeIcon The bitmap for the icon - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE The specified index is outside the bounds of the data structure. @n - * The index is greater than or equal to the number of elements or less than @c 0. - * @exception E_UNSUPPORTED_OPERATION This operation is not supported. @n - * The operation is not supported when the style of the %Header control is not @c HEADER_STYLE_SEGMENTED. - * @exception E_SYSTEM A system error has occurred. + * @return An error code + * @param[in] itemIndex The item index + * @param[in] pBadgeIcon The bitmap for the icon + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified index is outside the bounds of the data structure. @n + * The index is greater than or equal to the number of elements or less than @c 0. + * @exception E_UNSUPPORTED_OPERATION The operation is not supported when the style of the %Header control is @c HEADER_STYLE_TITLE. + * @exception E_SYSTEM A system error has occurred. */ result SetItemBadgeIcon(int itemIndex, const Tizen::Graphics::Bitmap* pBadgeIcon); @@ -660,8 +660,7 @@ public: * @exception E_INVALID_ARG The specified @c number must be in the range defined by @c 0 and @c 99999. * @exception E_OUT_OF_RANGE The specified index is outside the bounds of the data structure. @n * The index is greater than or equal to the number of elements or less than @c 0. - * @exception E_UNSUPPORTED_OPERATION This operation is not supported. @n - * The operation is not supported when the style of the %Header control is not @c HEADER_STYLE_SEGMENTED. + * @exception E_UNSUPPORTED_OPERATION The operation is not supported when the style of the %Header control is @c HEADER_STYLE_TITLE. * @exception E_SYSTEM A system error has occurred. * @remarks To remove the numbered badge icon from an item, pass @c 0 as the value of @c number. */ @@ -728,8 +727,8 @@ public: * The index is greater than or equal to the number of elements or less than @c 0. * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n * The item at the specified index is disabled. - * @exception E_UNSUPPORTED_OPERATION This operation is not supported. @n - * The operation is not supported when the %Header control style is @c HEADER_STYLE_TITLE. + * @exception E_UNSUPPORTED_OPERATION The operation is not supported when the %Header control style is @c HEADER_STYLE_TITLE, @n + * @c HEADER_STYLE_TITLE_BUTTON or @c HEADER_STYLE_BUTTON. * @exception E_SYSTEM A system error has occurred. */ result SetItemSelected(int itemIndex); @@ -770,8 +769,8 @@ public: * @param[in] pIcon The title icon to be set @n * Set to @c null to remove the title icon. * @exception E_SUCCESS The method is successful. - * @exception E_UNSUPPORTED_OPERATION The current state of the instance does not support the execution of the specified operation @n - * The style of the %Header control is not @c HEADER_STYLE_TITLE. + * @exception E_UNSUPPORTED_OPERATION The operation is supported when the %Header control style is @c HEADER_STYLE_TITLE, @n + * @c HEADER_STYLE_SEGMENTED_WITH_TITLE or @c HEADER_STYLE_TAB_WITH_TITLE. * @exception E_SYSTEM A system error has occurred. */ result SetTitleIcon(const Tizen::Graphics::Bitmap* pIcon); @@ -785,9 +784,9 @@ public: * @return An error code * @param[in] text The text to be set * @exception E_SUCCESS The method is successful. - * @exception E_UNSUPPORTED_OPERATION The current state of the instance does not support the execution of the specified operation. @n - * The style of the %Header control is not @c HEADER_STYLE_TITLE. - * @exception E_SYSTEM A system error has occurred. + * @exception E_UNSUPPORTED_OPERATION The operation is supported when the %Header control style is @c HEADER_STYLE_TITLE, @n + * @c HEADER_STYLE_SEGMENTED_WITH_TITLE or @c HEADER_STYLE_TAB_WITH_TITLE. + * @exception E_SYSTEM A system error has occurred. * @remarks If the text cannot be displayed in a line, then the ellipsis is applied at the end. @n * When the title icon is set along with the title text, the title retains the left alignment. */ @@ -802,8 +801,8 @@ public: * @return An error code * @param[in] color The title text color to be set * @exception E_SUCCESS The method is successful. - * @exception E_UNSUPPORTED_OPERATION The current state of the instance does not support the execution of the specified operation. @n - * The style of the %Header control is not @c HEADER_STYLE_TITLE. + * @exception E_UNSUPPORTED_OPERATION The operation is supported when the %Header control style ist @c HEADER_STYLE_TITLE, @n + * @c HEADER_STYLE_SEGMENTED_WITH_TITLE or @c HEADER_STYLE_TAB_WITH_TITLE. * @exception E_SYSTEM A system error has occurred. */ result SetTitleTextColor(const Tizen::Graphics::Color& color); @@ -901,94 +900,136 @@ public: * @param[in] enable Set to @c true to enable the edit mode, @n * else @c false * @exception E_SUCCESS The method is successful. - * @exception E_UNSUPPORTED_OPERATION This operation is not supported. @n - * The operation is not supported when the style of the %Header control style is not @c Header_STYLE_TAB. + * @exception E_UNSUPPORTED_OPERATION The operation is supported when the style of the %Header control style is @c HEADER_STYLE_TAB @n + * or @c HEADER_STYLE_TAB_WITH_TITLE. */ result SetTabEditModeEnabled(bool enable); /** - * Sets the back button. - * - * @since 2.0 - * - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n - * There are more than 2 header items. - * @exception E_UNSUPPORTED_OPERATION This operation is not supported. @n - * The operation is not supported when the style of the %Header control is @c HEADER_STYLE_BUTTON. @n - * This device does not support the software back button. - * @remarks When the back button is pressed, OnFormBackRequested() of IFormBackEventListener is called. @n - * If the right button is already set, then the button is replaced with the back button. - */ + * Sets the back button. + * + * @since 2.0 + * + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n + * There are more than 2 header items. + * @exception E_UNSUPPORTED_OPERATION The operation is supported when the style of the %Header control is @c HEADER_STYLE_BUTTON. @n + * This device does not support the software back button. + * @remarks When the back button is pressed, OnFormBackRequested() of IFormBackEventListener is called. @n + * If the right button is already set, then the button is replaced with the back button. + */ result SetBackButton(void); /** - * Checks whether the back button item is set. - * - * @since 2.0 - * - * @return @c true if the back button item is set, @n - * else @c false - */ + * Checks whether the back button item is set. + * + * @since 2.0 + * + * @return @c true if the back button item is set, @n + * else @c false + */ bool IsBackButtonSet(void) const; /** - * Removes the back button item. - * - * @since 2.0 - * - */ + * Removes the back button item. + * + * @since 2.0 + * + */ void RemoveBackButton(void); /** - * Enables or disables the back button. - * - * @since 2.0 - * - * @return An error code - * @param[in] enable Set to @c true to enable the back button, @n - * else @c false - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n - * The back button item is not set. - */ + * Enables or disables the back button. + * + * @since 2.0 + * + * @return An error code + * @param[in] enable Set to @c true to enable the back button, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n + * The back button item is not set. + */ result SetBackButtonEnabled(bool enable); /** - * Gets the state of the back button. - * - * @since 2.0 - * - * @return The state of the back button, @n - * else @c BUTTON_ITEM_STATUS_NORMAL if an error occurs. - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n - * The back button is not set. - * @remarks The specific error code can be accessed using the GetLastResult() method. - */ + * Gets the state of the back button. + * + * @since 2.0 + * + * @return The state of the back button, @n + * else @c BUTTON_ITEM_STATUS_NORMAL if an error occurs. + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n + * The back button is not set. + * @remarks The specific error code can be accessed using the GetLastResult() method. + */ ButtonItemStatus GetBackButtonStatus(void) const; /** - * Gets the position and size of the specified button item. - * - * @since 2.0 - * - * @return The position and size of the button item at the specified position. - * @param[in] position The position of the button item - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n - * There is no button set at the specified position. - * @remarks The specific error code can be accessed using the GetLastResult() method. - */ + * Gets the position and size of the specified button item. + * + * @since 2.0 + * + * @return The position and size of the button item at the specified position. + * @param[in] position The position of the button item + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n + * There is no button set at the specified position. + * @remarks The specific error code can be accessed using the GetLastResult() method. + */ Tizen::Graphics::Rectangle GetButtonBounds(ButtonPosition position) const; + /** + * Gets the position and size of the specified button item. + * + * @since 2.1 + * + * @return The position and size of the button item at the specified position. + * @param[in] position The position of the button item + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n + * There is no button set at the specified position. + * @remarks The specific error code can be accessed using the GetLastResult() method. + */ + Tizen::Graphics::FloatRectangle GetButtonBoundsF(ButtonPosition position) const; + + /** + * Sets the badge icon. + * + * @since 2.1 + * + * @return An error code + * @param[in] pBadgeIcon The bitmap for the badge icon + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION This operation is invalid. @n + * The operation is invalid when the style of the %Header control is not @c HEADER_STYLE_TITLE or @c HEADER_STYLE_SEGMENTED_WITH_TITLE or @c HEADER_STYLE_TAB_WITH_TITLE. + * @remarks For icon size details, see here. + */ + result SetTitleBadgeIcon(const Tizen::Graphics::Bitmap* pBadgeIcon); + + /** + * Sets the numbered badge icon. + * + * @since 2.1 + * + * @return An error code + * @param[in] number The number value that should be displayed as the badge icon + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c number must be in the range defined by @c 0 and @c 99999. + * @exception E_INVALID_OPERATION This operation is invalid. @n + * The operation is invalid when the style of the %Header control is not @c HEADER_STYLE_TITLE or @c HEADER_STYLE_SEGMENTED_WITH_TITLE TITLE or @c HEADER_STYLE_TAB_WITH_TITLE. + * @remarks To remove the numbered badge icon from an item, pass @c 0 as the value of @c number. + */ + result SetTitleNumberedBadgeIcon(int number); + protected: // diff --git a/inc/FUiCtrlHeaderItem.h b/inc/FUiCtrlHeaderItem.h index 5d2b625..531c115 100644 --- a/inc/FUiCtrlHeaderItem.h +++ b/inc/FUiCtrlHeaderItem.h @@ -72,7 +72,7 @@ public: /** * This is the destructor for this class. - * + * * @since 2.0 */ virtual ~HeaderItem(void); diff --git a/inc/FUiCtrlIEditTextFilter.h b/inc/FUiCtrlIEditTextFilter.h new file mode 100644 index 0000000..11753f7 --- /dev/null +++ b/inc/FUiCtrlIEditTextFilter.h @@ -0,0 +1,119 @@ +// +// Open Service Platform +// Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. +// +// Licensed under the Apache License, Version 2.0 (the License); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +/** + * @file FUiCtrlIEditTextFilter.h + * @brief This is the header file for the %IEditTextFilter interface. + * + * This header file contains the declarations of the %IEditTextFilter interface. + * + */ +#ifndef _FUI_CTRL_IEDIT_TEXT_FILTER_H_ +#define _FUI_CTRL_IEDIT_TEXT_FILTER_H_ + +#include + +namespace Tizen {namespace Ui { namespace Controls +{ + +/** + * @interface IEditTextFilter + * @brief This interface defines the text filter. + * + * @since 2.1 + * + * The %IEditTextFilter interface is the listener interface for handling texts, for example, from EditFields. + * The class that processes a text event implements this interface, and the instance created with that class is registered with a + * UI control, using the control's SetEditTextFilter() method. + * + */ + +class _OSP_EXPORT_ IEditTextFilter +{ +public: + /** + * This polymorphic destructor should be overridden if required. + * This way, the destructors of the derived classes are called + * when the destructor of this interface is called. + * + * @since 2.1 + */ + virtual ~IEditTextFilter(void) {} + + /** + * Checks whether the text to be pasted from the %Clipboard needs to be replaced by other text. + * + * @since 2.1 + * + * @return @c true if the pasted text needs to be replaced, @n + * else @c false + * @param[in] pastedText The pasted text + * @param[out] replacedText The user-defined replacement text + */ + virtual bool ValidatePastedText(const Tizen::Base::String& pastedText, Tizen::Base::String& replacedText) = 0; + +protected: + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // This method is reserved and may change its name at any time without + // prior notice. + // + virtual void IEditTextFilter_Reserved1(void) {} + + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // This method is reserved and may change its name at any time without + // prior notice. + // + virtual void IEditTextFilter_Reserved2(void) {} + + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // This method is reserved and may change its name at any time without + // prior notice. + // + virtual void IEditTextFilter_Reserved3(void) {} + + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // This method is reserved and may change its name at any time without + // prior notice. + // + virtual void IEditTextFilter_Reserved4(void) {} + + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // This method is reserved and may change its name at any time without + // prior notice. + // + virtual void IEditTextFilter_Reserved5(void) {} +}; // IEditTextFilter + +}}} // Tizen::Ui::Controls + +#endif // _FUI_CTRL_IEDIT_TEXT_FILTER_H_ + diff --git a/inc/FUiCtrlIFastScrollListener.h b/inc/FUiCtrlIFastScrollListener.h index 0890518..b57b6a6 100644 --- a/inc/FUiCtrlIFastScrollListener.h +++ b/inc/FUiCtrlIFastScrollListener.h @@ -2,14 +2,14 @@ // Open Service Platform // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. // -// Licensed under the Flora License, Version 1.0 (the License); +// Licensed under the Apache License, Version 2.0 (the License); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an AS IS BASIS, +// distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. @@ -70,7 +70,7 @@ _OSP_EXPORT_ extern const wchar_t* const FAST_SCROLL_SEARCH_ICON_INDEX_STRING; * OnFastScrollIndexChanged() method of that instance is invoked. * * For more information on the class features, see ListViews. - * + */ class _OSP_EXPORT_ IFastScrollListener : public Tizen::Base::Runtime::IEventListener diff --git a/inc/FUiCtrlIFrameEventListener.h b/inc/FUiCtrlIFrameEventListener.h index 7ab468a..986b998 100644 --- a/inc/FUiCtrlIFrameEventListener.h +++ b/inc/FUiCtrlIFrameEventListener.h @@ -76,7 +76,7 @@ public: * * @param[in] source The source of the event */ - virtual void OnFrameActivated(const Tizen::Ui::Controls::Frame& source) { } + virtual void OnFrameActivated(const Tizen::Ui::Controls::Frame& source) {} /** * Called when a Frame instance is about to be deactivated. @n @@ -86,8 +86,27 @@ public: * * @param[in] source The source of the event */ - virtual void OnFrameDeactivated(const Tizen::Ui::Controls::Frame& source) { } + virtual void OnFrameDeactivated(const Tizen::Ui::Controls::Frame& source) {} + /* + * Called after a Frame instance is minimized. @n + * This method is called just after the system minimizes the %Frame instance of an application. + * + * @since 2.1 + * + * @param[in] source The source of the event + */ + virtual void OnFrameMinimized(const Tizen::Ui::Controls::Frame& source) {} + + /* + * Called after a Frame instance is restored. @n + * This method is called just after the system restores the %Frame instance of an application. + * + * @since 2.1 + * + * @param[in] source The source of the event + */ + virtual void OnFrameRestored(const Tizen::Ui::Controls::Frame& source) {} // Reserves protected: @@ -100,18 +119,7 @@ protected: // // @since 2.0 // - virtual void IFrameEventListener_Reserved1(void) { } - - // - //This method is for internal use only. Using this method can cause behavioral, security-related, - //and consistency-related issues in the application. - // - // This method is reserved and may change its name at any time without - // prior notice. - // - // @since 2.0 - // - virtual void IFrameEventListener_Reserved2(void) { } + virtual void IFrameEventListener_Reserved3(void) {} // //This method is for internal use only. Using this method can cause behavioral, security-related, @@ -122,7 +130,7 @@ protected: // // @since 2.0 // - virtual void IFrameEventListener_Reserved3(void) { } + virtual void IFrameEventListener_Reserved4(void) {} // //This method is for internal use only. Using this method can cause behavioral, security-related, @@ -133,19 +141,7 @@ protected: // // @since 2.0 // - virtual void IFrameEventListener_Reserved4(void) { } - - // - //This method is for internal use only. Using this method can cause behavioral, security-related, - //and consistency-related issues in the application. - // - // This method is reserved and may change its name at any time without - // prior notice. - // - // @since 2.0 - // - virtual void IFrameEventListener_Reserved5(void) { } - + virtual void IFrameEventListener_Reserved5(void) {} }; // IFrameEventListener }}} // Tizen::Ui::Controls diff --git a/inc/FUiCtrlIGroupedListViewItemProvider.h b/inc/FUiCtrlIGroupedListViewItemProvider.h index f0a5375..828f2d9 100644 --- a/inc/FUiCtrlIGroupedListViewItemProvider.h +++ b/inc/FUiCtrlIGroupedListViewItemProvider.h @@ -150,7 +150,6 @@ public: */ virtual bool DeleteItem(int groupIndex, int itemIndex, Tizen::Ui::Controls::ListItemBase* pItem, int itemWidth) = 0; - /** * Checks whether the item can be reordered. * diff --git a/inc/FUiCtrlIGroupedListViewItemProviderF.h b/inc/FUiCtrlIGroupedListViewItemProviderF.h new file mode 100644 index 0000000..0439967 --- /dev/null +++ b/inc/FUiCtrlIGroupedListViewItemProviderF.h @@ -0,0 +1,175 @@ +// +// Open Service Platform +// Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. +// +// Licensed under the Flora License, Version 1.0 (the License); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://floralicense.org/license/ +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an AS IS BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + + +/** + * @file FUiCtrlIGroupedListViewItemProviderF.h + * @brief This is the header file for the %IGroupedListViewItemProviderF interface. + * + * This header file contains the declarations of the %IGroupedListViewItemProviderF interface. @n + * If an event is generated, a method of this class is called. @n + * Therefore, if an application performs jobs related to the item events, it uses the methods of this class. + * + */ +#ifndef _FUI_CTRL_IGROUPED_LIST_VIEW_ITEM_PROVIDERF_H_ +#define _FUI_CTRL_IGROUPED_LIST_VIEW_ITEM_PROVIDERF_H_ + +#include +#include + +namespace Tizen {namespace Ui { namespace Controls +{ + +/** + * @interface IGroupedListViewItemProviderF + * @brief This interface implements the provider for the events generated by the GroupedListView control. + * + * @since 2.1 + * + * The %IGroupedListViewItemProviderF interface is the interface for handling GroupedListView items. + * The class that handles list items implements this interface, and the instance created using the GroupedListView's Construct() + * method. + * + * For more information on the class features, see ListViews. + */ +class _OSP_EXPORT_ IGroupedListViewItemProviderF +{ +// Operation +public: + /* + * This polymorphic destructor should be overridden if required. + * This way, the destructors of the derived classes are called + * when the destructor of this interface is called. + * + * @since 2.1 + */ + virtual ~IGroupedListViewItemProviderF(void) {} + + /* + * Gets the total number of groups. + * + * @since 2.1 + * + * @return The total number of groups + * @remarks This method must be implemented so that it returns the total number of groups in the GroupedListView control. + */ + virtual int GetGroupCount(void) = 0; + + /* + * Gets the total number of items in the specified group. + * + * @since 2.1 + * + * @return The total number of items in the specified group + * @param[in] groupIndex The index of the group + * @remarks This method must be implemented so that it returns the total number of items for the specified group in the GroupedListView control. + */ + virtual int GetItemCount(int groupIndex) = 0; + + /* + * Creates the group item for the specified index from the item provider. + * + * @since 2.1 + * + * @return A group item of the GroupedListView control + * @param[in] groupIndex The index of the group + * @param[in] itemWidth The width of the item + * @remarks An application that uses the GroupedListView control must implement this method. This method is expected to return a group item that is + * allocated on a heap memory. @n + * Note that when the item is not required, the GroupedListView control calls %IGroupedListViewItemProvider::DeleteGroupItem() and the + * application deallocates the item. + */ + virtual Tizen::Ui::Controls::GroupItem* CreateGroupItem(int groupIndex, float itemWidth) = 0; + + /* + * Deletes the specified group item. + * + * @since 2.1 + * + * @return @c true if the item is deallocated by this method, @n + * else @c false + * @param[in] groupIndex The index of the group + * @param[in] pItem The pointer to GroupItem that is to be deleted + * @param[in] itemWidth The width of the item + * @remarks An application that uses the %GroupedListView control must implement this method. @n + * Using this method, an application can deallocate the item. @n + * If an application deallocates the item, this method must return true. This notifies the GroupedListView control not to release the + * item. Otherwise, the item is deallocated by the GroupedListView control. + * @see CreateItem() + */ + virtual bool DeleteGroupItem(int groupIndex, Tizen::Ui::Controls::GroupItem* pItem, float itemWidth) = 0; + + /* + * Creates the specified item. + * + * @since 2.1 + * + * @return An item of the list + * @param[in] groupIndex The index of the group + * @param[in] itemIndex The index of the item + * @param[in] itemWidth The width of the item + * @remarks An application that uses the GroupedListView control must implement this method. @n + * This method is expected to return an item that is allocated on a heap memory. @n + * The returned item can be a simple or custom item. @n + * Note that when the item is not required, the GroupedListView control calls %IGroupedListViewItemProvider::DeleteItem() and the application + * deallocates the item. + * @see DeleteItem() + */ + virtual Tizen::Ui::Controls::ListItemBase* CreateItem(int groupIndex, int itemIndex, float itemWidth) = 0; + + /* + * Deletes the specified item. + * + * @since 2.1 + * + * @return @c true if the item is deallocated by this method, @n + * else @c false + * @param[in] groupIndex The index of the group + * @param[in] itemIndex The index of the item + * @param[in] pItem The pointer to ListItemBase that is to be deleted + * @param[in] itemWidth The width of the item + * @remarks An application that uses the GroupedListView control must implement this method. @n + * Using this method, an application can deallocate the item. @n + * If the application deallocates the item, this method must return true. This notifies the %GroupedListView control not to release the + * item. Otherwise, the item is deallocated by the %GroupedListView control. + * @see CreateItem() + */ + virtual bool DeleteItem(int groupIndex, int itemIndex, Tizen::Ui::Controls::ListItemBase* pItem, float itemWidth) = 0; + + /* + * Checks whether the item can be reordered. + * + * @since 2.1 + * + * @return @c true if the item can be reordered, else @c false + * @param[in] groupIndexFrom The source group index of the item + * @param[in] groupIndexTo The target group index of the item + */ + virtual bool IsReorderable(int groupIndexFrom, int groupIndexTo); + +protected: + // + // Following methods are reserved and may change its name at any time without prior notice. + // + virtual void IGroupedListViewItemProvider_Reserved1(void) {} + virtual void IGroupedListViewItemProvider_Reserved2(void) {} + virtual void IGroupedListViewItemProvider_Reserved3(void) {} +}; // IGroupedListViewItemProviderF + +}}} // Tizen::Ui::Controls + +#endif // _FUI_CTRL_IGROUPED_LIST_VIEW_ITEM_PROVIDERF_H_ diff --git a/inc/FUiCtrlIGroupedTableViewItemEventListener.h b/inc/FUiCtrlIGroupedTableViewItemEventListener.h index f91fbf2..131926d 100644 --- a/inc/FUiCtrlIGroupedTableViewItemEventListener.h +++ b/inc/FUiCtrlIGroupedTableViewItemEventListener.h @@ -15,14 +15,14 @@ // limitations under the License. // /** - * @file FUiCtrlIGroupedTableViewItemEventListener.h - * @brief This is the header file for the %IGroupedTableViewItemEventListener interface. - * - * This header file contains the declarations of the %IGroupedTableViewItemEventListener interface. @n - * If an item event is generated, a method of this interface is called. - * So, if an application does some jobs related to the item event, use the methods of this interface. - * - */ +* @file FUiCtrlIGroupedTableViewItemEventListener.h +* @brief This is the header file for the %IGroupedTableViewItemEventListener interface. +* +* This header file contains the declarations of the %IGroupedTableViewItemEventListener interface. @n +* If an item event is generated, a method of this interface is called. +* So, if an application does some jobs related to the item event, use the methods of this interface. +* +*/ #ifndef _FUI_CTRL_IGROUPED_TABLE_VIEW_ITEM_EVENT_LISTENER_H_ #define _FUI_CTRL_IGROUPED_TABLE_VIEW_ITEM_EVENT_LISTENER_H_ @@ -37,67 +37,67 @@ class TableViewContextItem; /** - * @interface IGroupedTableViewItemEventListener - * @brief This interface implements the listener for item event. - * - * @since 2.0 - * - * The %IGroupedTableViewItemEventListener interface implements a listener for receiving item change events. - * The class that is interested in processing an item event implements this interface, - * and the instance created with that class is registered with a UI control, using the control's - * AddGroupedTableViewItemEventListener() method. When the item event occurs, the OnItemStateChanged() method of that object is invoked. - */ +* @interface IGroupedTableViewItemEventListener +* @brief This interface implements the listener for item event. +* +* @since 2.0 +* +* The %IGroupedTableViewItemEventListener interface implements a listener for receiving item change events. +* The class that is interested in processing an item event implements this interface, +* and the instance created with that class is registered with a UI control, using the control's +* AddGroupedTableViewItemEventListener() method. When the item event occurs, the OnItemStateChanged() method of that object is invoked. +*/ class _OSP_EXPORT_ IGroupedTableViewItemEventListener : virtual public Tizen::Base::Runtime::IEventListener { public: /** - * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. - * - * @since 2.0 - */ + * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. + * + * @since 2.0 + */ virtual ~IGroupedTableViewItemEventListener(void) {} /** - * Called when the state of a TableViewGroupItem is changed. - * - * @since 2.0 - * - * @param[in] tableView The source of the event - * @param[in] groupIndex The group index - * @param[in] pItem The target item - * @param[in] status The status of the item - * @remarks This method is called when the TableViewGroupItem in the GroupedTableView is checked, unchecked, or selected. - */ + * Called when the state of a TableViewGroupItem is changed. + * + * @since 2.0 + * + * @param[in] tableView The source of the event + * @param[in] groupIndex The group index + * @param[in] pItem The target item + * @param[in] status The status of the item + * @remarks This method is called when the TableViewGroupItem in the GroupedTableView is checked, unchecked, or selected. + */ virtual void OnGroupedTableViewGroupItemStateChanged(Tizen::Ui::Controls::GroupedTableView& tableView, int groupIndex, Tizen::Ui::Controls::TableViewGroupItem* pItem, Tizen::Ui::Controls::TableViewItemStatus status) = 0; /** - * Called when the state of a TableViewItem in the GroupedTableView is changed. - * - * @since 2.0 - * - * @param[in] tableView The source of the event - * @param[in] groupIndex The group index - * @param[in] itemIndex The item index - * @param[in] pItem The target item - * @param[in] status The status of the item - * @remarks This method is called when the TableViewItem in the GroupedTableView is checked, unchecked, or selected. - */ + * Called when the state of a TableViewItem in the GroupedTableView is changed. + * + * @since 2.0 + * + * @param[in] tableView The source of the event + * @param[in] groupIndex The group index + * @param[in] itemIndex The item index + * @param[in] pItem The target item + * @param[in] status The status of the item + * @remarks This method is called when the TableViewItem in the GroupedTableView is checked, unchecked, or selected. + */ virtual void OnGroupedTableViewItemStateChanged(Tizen::Ui::Controls::GroupedTableView& tableView, int groupIndex, int itemIndex, Tizen::Ui::Controls::TableViewItem* pItem, Tizen::Ui::Controls::TableViewItemStatus status) = 0; /** - * Called when the TableViewContextItem is opened or closed. - * - * @since 2.0 - * - * @param[in] tableView The source of the event - * @param[in] groupIndex The group index - * @param[in] itemIndex The item index - * @param[in] pContextItem The context item which is opened or closed - * @param[in] activated @c true if a context item is opened,@n - * @c false, otherwise - */ + * Called when the TableViewContextItem is opened or closed. + * + * @since 2.0 + * + * @param[in] tableView The source of the event + * @param[in] groupIndex The group index + * @param[in] itemIndex The item index + * @param[in] pContextItem The context item which is opened or closed + * @param[in] activated @c true if a context item is opened,@n + * @c false, otherwise + */ virtual void OnGroupedTableViewContextItemActivationStateChanged(Tizen::Ui::Controls::GroupedTableView& tableView, int groupIndex, int itemIndex, Tizen::Ui::Controls::TableViewContextItem* pContextItem, bool activated) = 0; protected: diff --git a/inc/FUiCtrlIGroupedTableViewItemProvider.h b/inc/FUiCtrlIGroupedTableViewItemProvider.h index 58e8a5d..271c0dd 100644 --- a/inc/FUiCtrlIGroupedTableViewItemProvider.h +++ b/inc/FUiCtrlIGroupedTableViewItemProvider.h @@ -33,160 +33,160 @@ class TableViewItem; class TableViewGroupItem; /** - * @interface IGroupedTableViewItemProvider - * @brief This interface implements the listener for events on GroupedTableView. - * - * @since 2.0 - * - * The %IGroupedTableViewItemProvider interface implements an item provider which generates items for GroupedTableView. %GroupedTableView calls the item provider - * to request an item which is about to be displayed on a screen. Applications which use %GroupedTableView must implement the item provider. - * The class is registered with a %GroupedTableView, using the GroupedTableView's SetGroupedStyleItemProvider() method. - */ +* @interface IGroupedTableViewItemProvider +* @brief This interface implements the listener for events on GroupedTableView. +* +* @since 2.0 +* +* The %IGroupedTableViewItemProvider interface implements an item provider which generates items for GroupedTableView. %GroupedTableView calls the item provider +* to request an item which is about to be displayed on a screen. Applications which use %GroupedTableView must implement the item provider. +* The class is registered with a %GroupedTableView, using the GroupedTableView's SetGroupedStyleItemProvider() method. +*/ class _OSP_EXPORT_ IGroupedTableViewItemProvider { public: /** - * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. - * - * @since 2.0 - */ + * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. + * + * @since 2.0 + */ virtual ~IGroupedTableViewItemProvider(void) {} /** - * Gets the total number of groups. - * - * @since 2.0 - * - * @return The total number of groups - * @remarks This method must be implemented so that it returns the total number of groups in the GroupedTableView control. - */ + * Gets the total number of groups. + * + * @since 2.0 + * + * @return The total number of groups + * @remarks This method must be implemented so that it returns the total number of groups in the GroupedTableView control. + */ virtual int GetGroupCount(void) = 0; /** - * Gets the total number of items in the specified group. - * - * @since 2.0 - * - * @return The total number of items in the specified group - * @param[in] groupIndex The index of the group - * @remarks This method must be implemented so that it returns the total number of items for the specified group in the GroupedTableView control. - */ + * Gets the total number of items in the specified group. + * + * @since 2.0 + * + * @return The total number of items in the specified group + * @param[in] groupIndex The index of the group + * @remarks This method must be implemented so that it returns the total number of items for the specified group in the GroupedTableView control. + */ virtual int GetItemCount(int groupIndex) = 0; /** - * Gets the group item for the specified index from the item provider. - * - * @since 2.0 - * - * @return A group item of the GroupedTableView control - * @param[in] groupIndex The index of the group - * @param[in] itemWidth The width of the item - * @remarks An application that uses the GroupedTableView control must implement this method. This method is expected to return a group item that is - * allocated on a heap memory. - * Note that when the group item is not required, the %GroupedTableView control calls IGroupedTableViewItemProvider::DeleteGroupItem() and the - * application deallocates the item. - */ + * Gets the group item for the specified index from the item provider. + * + * @since 2.0 + * + * @return A group item of the GroupedTableView control + * @param[in] groupIndex The index of the group + * @param[in] itemWidth The width of the item + * @remarks An application that uses the GroupedTableView control must implement this method. This method is expected to return a group item that is + * allocated on a heap memory. + * Note that when the group item is not required, the %GroupedTableView control calls IGroupedTableViewItemProvider::DeleteGroupItem() and the + * application deallocates the item. + */ virtual TableViewGroupItem* CreateGroupItem(int groupIndex, int itemWidth) = 0; /** - * Deletes the specified group item. - * - * @since 2.0 - * - * @return @c true if the group item is deallocated by this method, - * else @c false - * @param[in] groupIndex The index of the group - * @param[in] pItem The pointer to TableViewGroupItem that is to be deleted - * @remarks An application that uses the GroupedTableView control must implement this method. - * Using this method, an application can deallocate the item. - * If an application deallocates the item, this method must return @c true. This notifies the %GroupedTableView control not to release the - * item. Otherwise, the item is deallocated by the %GroupedTableView control. - * @see CreateGroupItem() - */ + * Deletes the specified group item. + * + * @since 2.0 + * + * @return @c true if the group item is deallocated by this method, + * else @c false + * @param[in] groupIndex The index of the group + * @param[in] pItem The pointer to TableViewGroupItem that is to be deleted + * @remarks An application that uses the GroupedTableView control must implement this method. + * Using this method, an application can deallocate the item. + * If an application deallocates the item, this method must return @c true. This notifies the %GroupedTableView control not to release the + * item. Otherwise, the item is deallocated by the %GroupedTableView control. + * @see CreateGroupItem() + */ virtual bool DeleteGroupItem(int groupIndex, TableViewGroupItem* pItem) = 0; /** - * Updates the specified group item. - * - * @since 2.0 - * - * @param[in] groupIndex The group index - * @param[in] pItem The pointer to TableViewGroupItem that is to be updated - * @remarks An application that uses the GroupedTableView control must implement this method. - * This method is called when the modification of an group item is requested. - * The application can change @c pItem in this method, but should not keep @c pItem for later use. - */ + * Updates the specified group item. + * + * @since 2.0 + * + * @param[in] groupIndex The group index + * @param[in] pItem The pointer to TableViewGroupItem that is to be updated + * @remarks An application that uses the GroupedTableView control must implement this method. + * This method is called when the modification of an group item is requested. + * The application can change @c pItem in this method, but should not keep @c pItem for later use. + */ virtual void UpdateGroupItem(int groupIndex, TableViewGroupItem* pItem) = 0; /** - * Creates the specified item. - * - * @since 2.0 - * - * @return An item of the GroupedTableView - * @param[in] groupIndex The group index - * @param[in] itemIndex The item index - * @param[in] itemWidth The width of the item - * @remarks An application that uses the GroupedTableView control must implement this method. - * This method is expected to return an item that is allocated on a heap memory. - * The returned item can be a simple or custom item. - * Note that when the item is not required, the %GroupedTableView control calls IGroupedTableViewItemProvider::DeleteItem() and the application - * deallocates the item. - * @see DeleteItem() - */ + * Creates the specified item. + * + * @since 2.0 + * + * @return An item of the GroupedTableView + * @param[in] groupIndex The group index + * @param[in] itemIndex The item index + * @param[in] itemWidth The width of the item + * @remarks An application that uses the GroupedTableView control must implement this method. + * This method is expected to return an item that is allocated on a heap memory. + * The returned item can be a simple or custom item. + * Note that when the item is not required, the %GroupedTableView control calls IGroupedTableViewItemProvider::DeleteItem() and the application + * deallocates the item. + * @see DeleteItem() + */ virtual TableViewItem* CreateItem(int groupIndex, int itemIndex, int itemWidth) = 0; /** - * Deletes the specified item. - * - * @since 2.0 - * - * @return @c true if the item is deallocated by this method, @n - * else @c false - * @param[in] groupIndex The group index - * @param[in] itemIndex The item index - * @param[in] pItem The pointer to TableViewItem that is to be deleted - * @remarks An application that uses the GroupedTableView control must implement this method. - * Using this method, an application can deallocate the item. - * If the application deallocates the item, this method must return @c true. This notifies the %GroupedTableView control not to release the - * item. Otherwise, the item is deallocated by the %GroupedTableView control. - * @see CreateItem() - */ + * Deletes the specified item. + * + * @since 2.0 + * + * @return @c true if the item is deallocated by this method, @n + * else @c false + * @param[in] groupIndex The group index + * @param[in] itemIndex The item index + * @param[in] pItem The pointer to TableViewItem that is to be deleted + * @remarks An application that uses the GroupedTableView control must implement this method. + * Using this method, an application can deallocate the item. + * If the application deallocates the item, this method must return @c true. This notifies the %GroupedTableView control not to release the + * item. Otherwise, the item is deallocated by the %GroupedTableView control. + * @see CreateItem() + */ virtual bool DeleteItem(int groupIndex, int itemIndex, TableViewItem* pItem) = 0; /** - * Updates the specified item. - * - * @since 2.0 - * - * @param[in] groupIndex The group index - * @param[in] itemIndex The item index - * @param[in] pItem The pointer to TableViewItem that is to be updated - * @remarks An application that uses the GroupedTableView control must implement this method. - * This method is calle when the modification of an item is requested. - * The application can change @c pItem in this method, but should not keep @c pItem for later use. - */ + * Updates the specified item. + * + * @since 2.0 + * + * @param[in] groupIndex The group index + * @param[in] itemIndex The item index + * @param[in] pItem The pointer to TableViewItem that is to be updated + * @remarks An application that uses the GroupedTableView control must implement this method. + * This method is calle when the modification of an item is requested. + * The application can change @c pItem in this method, but should not keep @c pItem for later use. + */ virtual void UpdateItem(int groupIndex, int itemIndex, TableViewItem* pItem) = 0; /** - * Gets the default height of an group item. - * - * @since 2.0 - * - * @return The default height of an group item - * @remarks This method must be implemented so that it returns the default height of group items in the GroupedTableView control. - */ + * Gets the default height of an group item. + * + * @since 2.0 + * + * @return The default height of an group item + * @remarks This method must be implemented so that it returns the default height of group items in the GroupedTableView control. + */ virtual int GetDefaultGroupItemHeight(void) = 0; /** - * Gets the default height of an item. - * - * @since 2.0 - * - * @return The default height of an item - * @remarks This method must be implemented so that it returns the default height of items in the GroupedTableView control. - */ + * Gets the default height of an item. + * + * @since 2.0 + * + * @return The default height of an item + * @remarks This method must be implemented so that it returns the default height of items in the GroupedTableView control. + */ virtual int GetDefaultItemHeight(void) = 0; protected: diff --git a/inc/FUiCtrlIGroupedTableViewItemProviderF.h b/inc/FUiCtrlIGroupedTableViewItemProviderF.h new file mode 100644 index 0000000..884e1ad --- /dev/null +++ b/inc/FUiCtrlIGroupedTableViewItemProviderF.h @@ -0,0 +1,226 @@ +// +// Open Service Platform +// Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. +// +// Licensed under the Flora License, Version 1.0 (the License); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://floralicense.org/license/ +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an AS IS BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +/* +* @file FUiCtrlIGroupedTableViewItemProviderF.h +* @brief This is the header file for the %IGroupedTableViewItemProviderF interface. +* +* This header file contains the declarations of the %IGroupedTableViewItemProviderF interface. +* If the event is generated, a method of this interface is called. +* So, if applications do jobs related to item events, use the methods of this interface. +* +*/ +#ifndef _FUI_CTRL_IGROUPED_TABLE_VIEW_ITEM_PROVIDER_F_H_ +#define _FUI_CTRL_IGROUPED_TABLE_VIEW_ITEM_PROVIDER_F_H_ + +namespace Tizen { namespace Ui { namespace Controls +{ +class TableViewItem; +class TableViewGroupItem; + +/* +* @interface IGroupedTableViewItemProviderF +* @brief This interface implements the listener for events on GroupedTableView. +* +* @since 2.1 +* +* The %IGroupedTableViewItemProviderF interface implements an item provider which generates items for GroupedTableView. %GroupedTableView calls the item provider +* to request an item which is about to be displayed on a screen. Applications which use %GroupedTableView must implement the item provider. +* The class is registered with a %GroupedTableView, using the GroupedTableView's SetGroupedStyleItemProvider() method. +*/ +class _OSP_EXPORT_ IGroupedTableViewItemProviderF +{ +public: + /* + * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. + * + * @since 2.1 + */ + virtual ~IGroupedTableViewItemProviderF(void) {} + + /* + * Gets the total number of groups. + * + * @since 2.1 + * + * @return The total number of groups + * @remarks This method must be implemented so that it returns the total number of groups in the GroupedTableView control. + */ + virtual int GetGroupCount(void) = 0; + + /* + * Gets the total number of items in the specified group. + * + * @since 2.1 + * + * @return The total number of items in the specified group + * @param[in] groupIndex The index of the group + * @remarks This method must be implemented so that it returns the total number of items for the specified group in the GroupedTableView control. + */ + virtual int GetItemCount(int groupIndex) = 0; + + /* + * Gets the group item for the specified index from the item provider. + * + * @since 2.1 + * + * @return A group item of the GroupedTableView control + * @param[in] groupIndex The index of the group + * @param[in] itemWidth The width of the item + * @remarks An application that uses the GroupedTableView control must implement this method. This method is expected to return a group item that is + * allocated on a heap memory. + * Note that when the group item is not required, the %GroupedTableView control calls IGroupedTableViewItemProviderF::DeleteGroupItem() and the + * application deallocates the item. + */ + virtual TableViewGroupItem* CreateGroupItem(int groupIndex, float itemWidth) = 0; + + /* + * Deletes the specified group item. + * + * @since 2.1 + * + * @return @c true if the group item is deallocated by this method, + * else @c false + * @param[in] groupIndex The index of the group + * @param[in] pItem The pointer to TableViewGroupItem that is to be deleted + * @remarks An application that uses the GroupedTableView control must implement this method. + * Using this method, an application can deallocate the item. + * If an application deallocates the item, this method must return @c true. This notifies the %GroupedTableView control not to release the + * item. Otherwise, the item is deallocated by the %GroupedTableView control. + * @see CreateGroupItem() + */ + virtual bool DeleteGroupItem(int groupIndex, TableViewGroupItem* pItem) = 0; + + /* + * Updates the specified group item. + * + * @since 2.1 + * + * @param[in] groupIndex The group index + * @param[in] pItem The pointer to TableViewGroupItem that is to be updated + * @remarks An application that uses the GroupedTableView control must implement this method. + * This method is called when the modification of an group item is requested. + * The application can change @c pItem in this method, but should not keep @c pItem for later use. + */ + virtual void UpdateGroupItem(int groupIndex, TableViewGroupItem* pItem) = 0; + + /* + * Creates the specified item. + * + * @since 2.1 + * + * @return An item of the GroupedTableView + * @param[in] groupIndex The group index + * @param[in] itemIndex The item index + * @param[in] itemWidth The width of the item + * @remarks An application that uses the GroupedTableView control must implement this method. + * This method is expected to return an item that is allocated on a heap memory. + * The returned item can be a simple or custom item. + * Note that when the item is not required, the %GroupedTableView control calls IGroupedTableViewItemProviderF::DeleteItem() and the application + * deallocates the item. + * @see DeleteItem() + */ + virtual TableViewItem* CreateItem(int groupIndex, int itemIndex, float itemWidth) = 0; + + /* + * Deletes the specified item. + * + * @since 2.1 + * + * @return @c true if the item is deallocated by this method, @n + * else @c false + * @param[in] groupIndex The group index + * @param[in] itemIndex The item index + * @param[in] pItem The pointer to TableViewItem that is to be deleted + * @remarks An application that uses the GroupedTableView control must implement this method. + * Using this method, an application can deallocate the item. + * If the application deallocates the item, this method must return @c true. This notifies the %GroupedTableView control not to release the + * item. Otherwise, the item is deallocated by the %GroupedTableView control. + * @see CreateItem() + */ + virtual bool DeleteItem(int groupIndex, int itemIndex, TableViewItem* pItem) = 0; + + /* + * Updates the specified item. + * + * @since 2.1 + * + * @param[in] groupIndex The group index + * @param[in] itemIndex The item index + * @param[in] pItem The pointer to TableViewItem that is to be updated + * @remarks An application that uses the GroupedTableView control must implement this method. + * This method is calle when the modification of an item is requested. + * The application can change @c pItem in this method, but should not keep @c pItem for later use. + */ + virtual void UpdateItem(int groupIndex, int itemIndex, TableViewItem* pItem) = 0; + + /* + * Gets the default height of an group item. + * + * @since 2.1 + * + * @return The default height of an group item + * @remarks This method must be implemented so that it returns the default height of group items in the GroupedTableView control. + */ + virtual float GetDefaultGroupItemHeight(void) = 0; + + + /* + * Gets the default height of an item. + * + * @since 2.1 + * + * @return The default height of an item + * @remarks This method must be implemented so that it returns the default height of items in the GroupedTableView control. + */ + virtual float GetDefaultItemHeight(void) = 0; + +protected: + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // The following method is reserved, and its name can be changed at any time without prior notice. + // + // @since 2.1 + // + virtual void IGroupedTableViewItemProviderF_Reserved1(void) {} + + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // The following method is reserved, and its name can be changed at any time without prior notice. + // + // @since 2.1 + // + virtual void IGroupedTableViewItemProviderF_Reserved2(void) {} + + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // The following method is reserved, and its name can be changed at any time without prior notice. + // + // @since 2.1 + // + virtual void IGroupedTableViewItemProviderF_Reserved3(void) {} +}; // IGroupedTableViewItemProviderF + +}}} // Tizen::Ui::Controls + +#endif // _FUI_CTRL_IGROUPED_TABLE_VIEW_ITEM_PROVIDER_F_H_ \ No newline at end of file diff --git a/inc/FUiCtrlIIconListViewItemEventListener.h b/inc/FUiCtrlIIconListViewItemEventListener.h index b3e9be8..2b9d677 100644 --- a/inc/FUiCtrlIIconListViewItemEventListener.h +++ b/inc/FUiCtrlIIconListViewItemEventListener.h @@ -2,14 +2,14 @@ // Open Service Platform // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. // -// Licensed under the Flora License, Version 1.0 (the License); +// Licensed under the Apache License, Version 2.0 (the License); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an AS IS BASIS, +// distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/inc/FUiCtrlIIconListViewItemProvider.h b/inc/FUiCtrlIIconListViewItemProvider.h index 1c7a343..d1884a3 100644 --- a/inc/FUiCtrlIIconListViewItemProvider.h +++ b/inc/FUiCtrlIIconListViewItemProvider.h @@ -2,14 +2,14 @@ // Open Service Platform // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. // -// Licensed under the Flora License, Version 1.0 (the License); +// Licensed under the Apache License, Version 2.0 (the License); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an AS IS BASIS, +// distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/inc/FUiCtrlIListViewItemProviderF.h b/inc/FUiCtrlIListViewItemProviderF.h new file mode 100644 index 0000000..3fab075 --- /dev/null +++ b/inc/FUiCtrlIListViewItemProviderF.h @@ -0,0 +1,116 @@ +// +// Open Service Platform +// Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. +// +// Licensed under the Flora License, Version 1.0 (the License); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://floralicense.org/license/ +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an AS IS BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +/** + * @file FUiCtrlIListViewItemProviderF.h + * @brief This is the header file for the %IListViewItemProviderF interface. + * + * This header file contains the declarations of the %IListViewItemProviderF interface. @n + * If the event is generated, a method of this interface is called. @n + * So, if applications do jobs related to item events, use the methods of this interface. + * + */ +#ifndef _FUI_CTRL_ILIST_VIEW_ITEM_PROVIDERF_H_ +#define _FUI_CTRL_ILIST_VIEW_ITEM_PROVIDERF_H_ + +#include + +namespace Tizen {namespace Ui { namespace Controls +{ + +/* + * @interface IListViewItemProviderF + * @brief This interface implements the listener for events on %ListView. + * + * @since 2.1 + * + * The %IListViewItemProviderF interface is the interface for handling ListView items. + * The class that handles list items implements this interface, and the instance created using the ListView's Construct() method. + * + * For more information on the class features, see ListViews. + */ +class _OSP_EXPORT_ IListViewItemProviderF +{ +// Operation +public: + /* + * This polymorphic destructor should be overridden if required. + * This way, the destructors of the derived classes are called + * when the destructor of this interface is called. + * + * @since 2.1 + */ + virtual ~IListViewItemProviderF(void) {} + + /* + * Called when the ListView is about to be drawn and returns the number of total items. + * + * @since 2.1 + * + * @return The count of all items of the list + * @remarks This method must be implemented so that it returns the number of total items in the list. + * + */ + virtual int GetItemCount(void) = 0; + + /* + * Called when items need to be loaded. + * + * @since 2.1 + * + * @return An item of the ListView + * @param[in] index The index of the item + * @param[in] itemWidth The width of the item + * @remarks The applications that use ListView must implement this method. @n + * This method is expected to return an item which is allocated in a heap memory. @n + * The returned item can be a SimpleItem or CustomItem. @n + * Note that when the item becomes unnecessary, the ListView calls IListViewItemProvider::DeleteItem() and the application is in charge of + * deallocating the item. + * @see DeleteItem() + */ + virtual Tizen::Ui::Controls::ListItemBase* CreateItem(int index, float itemWidth) = 0; + + /* + * Called when an item becomes no longer used by the %ListView. + * + * @since 2.1 + * + * @return @c true, if the item is deallocated by this method, @n + * else @c false + * @param[in] index The index of the item + * @param[in] pItem The pointer to the item to be deleted + * @param[in] itemWidth The width of the item + * @remarks Applications which use ListView must implement this method. @n + * In this method, the applications have the chance of deallocating the item. @n + * If the application deallocates the item, this method returns @c true, notifying the %ListView not to free the item. @n + * Otherwise, the item will be deallocated by %ListView. + * @see CreateItem() + */ + virtual bool DeleteItem(int index, Tizen::Ui::Controls::ListItemBase* pItem, float itemWidth) = 0; + +protected: + // + // Following methods are reserved and may change its name at any time without prior notice. + // + virtual void IListViewItemProvider_Reserved1(void) {} + virtual void IListViewItemProvider_Reserved2(void) {} + virtual void IListViewItemProvider_Reserved3(void) {} +}; // IListViewItemProviderF + +}}} // Tizen::Ui::Controls + +#endif // _FUI_CTRL_ILIST_VIEW_ITEM_PROVIDERF_H_ diff --git a/inc/FUiCtrlIProgressPopupEventListener.h b/inc/FUiCtrlIProgressPopupEventListener.h old mode 100644 new mode 100755 index 6fd376e..d24a199 --- a/inc/FUiCtrlIProgressPopupEventListener.h +++ b/inc/FUiCtrlIProgressPopupEventListener.h @@ -14,8 +14,9 @@ // See the License for the specific language governing permissions and // limitations under the License. // + /** - * @file FUiCtrlIProgressPopupEventListener.h + * @file FUiICtrlProgressPopupEventListener.h * @brief This is the header file for the %IProgressPopupEventListener interface. * * This header file contains the declarations of the %IProgressPopupEventListener interface. @n @@ -47,7 +48,7 @@ namespace Tizen { namespace Ui * implements this interface, and the instance created with that class is registered with a UI control, using the control's * AddProgressPopupEventListener() method. When the ProgressPopup event occurs, the OnProgressPopupCanceled() method of that instance is invoked. * - * For more information on the class features, see in individual control topics under UI Controls. + * For more information on the class features, see in individual control topics under UI Controls. */ class _OSP_EXPORT_ IProgressPopupEventListener : virtual public Tizen::Base::Runtime::IEventListener diff --git a/inc/FUiCtrlIScrollEventListener.h b/inc/FUiCtrlIScrollEventListener.h index bcc3cd5..02d15d0 100644 --- a/inc/FUiCtrlIScrollEventListener.h +++ b/inc/FUiCtrlIScrollEventListener.h @@ -39,7 +39,7 @@ namespace Tizen {namespace Ui { namespace Controls /** * @interface IScrollEventListener - * @brief This interface implements a listener for ScrollPanel events. + * @brief This interface implements a listener for scroll events. * * @since 2.0 * @@ -79,9 +79,9 @@ public: * @since 2.0 * *@param[in] source The control being scrolled - *@param[in] scrollPos The scrolled position + *@param[in] scrollPosition The scrolled position */ - virtual void OnScrollPositionChanged(Tizen::Ui::Control& source, int scrollPos) {}; + virtual void OnScrollPositionChanged(Tizen::Ui::Control& source, int scrollPosition) {}; /** * Called when the control's scroll movement has come to a stop. @@ -110,7 +110,6 @@ protected: virtual void ScrollEventListener_Reserved2(void) {} // - // // This method is for internal use only. // Using this method can cause behavioral, security-related, and consistency-related issues in the application. // diff --git a/inc/FUiCtrlIScrollEventListenerF.h b/inc/FUiCtrlIScrollEventListenerF.h new file mode 100644 index 0000000..21f79bc --- /dev/null +++ b/inc/FUiCtrlIScrollEventListenerF.h @@ -0,0 +1,125 @@ +// +// Open Service Platform +// Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. +// +// Licensed under the Flora License, Version 1.0 (the License); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://floralicense.org/license/ +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an AS IS BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +/* + * @file FUiCtrlIScrollEventListenerF.h + * @brief This is the header file for the %IScrollEventListenerF interface. + * + * This header file contains the declarations of the %IScrollEventListenerF interface. @n + * If a change event is generated, a method of this interface is called. @n + * The applications that perform tasks related to the change events, call the methods of this interface. + * + */ +#ifndef _FUI_CTRL_ISCROLL_EVENT_LISTENER_F_H_ +#define _FUI_CTRL_ISCROLL_EVENT_LISTENER_F_H_ + +#include +#include + +namespace Tizen { namespace Ui +{ +class Control; +}} // Tizen::Ui + +namespace Tizen {namespace Ui { namespace Controls +{ + +/* + * @interface IScrollEventListenerF + * @brief This interface implements a listener for scroll events. + * + * @since 2.1 + * + * The %IScrollEventListenerF interface is the listener interface for receiving scroll events. + * The class that processes a scroll event implements this interface, and the instance created with that class is registered with + * a UI control, using the control's AddScrollEventListener() method. When the scroll event occurs, the OnScrollEndReached() + * method of that instance is invoked. + * + * For more information on the class features, see Panels and ListViews. + */ +class _OSP_EXPORT_ IScrollEventListenerF + : public Tizen::Base::Runtime::IEventListener +{ +// Operation +public: + /* + * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. + * + * @since 2.1 + * + */ + virtual ~IScrollEventListenerF(void) {} + + /* + * Called when the scroll reaches the top, bottom, left or right end. + * + * @since 2.1 + * + * @param[in] source The source of the event + * @param[in] type The type of scroll end event + */ + virtual void OnScrollEndReached(Tizen::Ui::Control& source, Tizen::Ui::Controls::ScrollEndEvent type) = 0; + + /* + * Called continuously when the control is being scrolled. + * + * @since 2.1 + * + *@param[in] source The control being scrolled + *@param[in] scrollPosition The scrolled position + */ + virtual void OnScrollPositionChanged(Tizen::Ui::Control& source, float scrollPosition) = 0; + + /* + * Called when the control's scroll movement has come to a stop. + * + * @since 2.1 + * + * @param[in] source The control being scrolled + */ + virtual void OnScrollStopped(Tizen::Ui::Control& source) = 0; + +protected: + // + // This method is for internal use only. + // Using this method can cause behavioral, security-related, and consistency-related issues in the application. + // + // This method is reserved and may change its name at any time without prior notice. + // + virtual void ScrollEventListener_Reserved1(void) {} + + // + // This method is for internal use only. + // Using this method can cause behavioral, security-related, and consistency-related issues in the application. + // + // This method is reserved and may change its name at any time without prior notice. + // + virtual void ScrollEventListener_Reserved2(void) {} + + // + // This method is for internal use only. + // Using this method can cause behavioral, security-related, and consistency-related issues in the application. + // + // This method is reserved and may change its name at any time without prior notice. + // + virtual void ScrollEventListener_Reserved3(void) {} + +}; // IScrollEventListenerF + +}}} // Tizen::Ui::Controls + +#endif // _FUI_CTRL_ISCROLL_EVENT_LISTENER_F_H_ diff --git a/inc/FUiCtrlISectionTableViewItemEventListener.h b/inc/FUiCtrlISectionTableViewItemEventListener.h index 46b41f7..88ee2bc 100644 --- a/inc/FUiCtrlISectionTableViewItemEventListener.h +++ b/inc/FUiCtrlISectionTableViewItemEventListener.h @@ -15,14 +15,14 @@ // limitations under the License. // /** - * @file FUiCtrlISectionTableViewItemEventListener.h - * @brief This is the header file for the %ISectionTableViewItemEventListener interface. - * - * This header file contains the declarations of the %ISectionTableViewItemEventListener interface. @n - * If an item event is generated, a method of this interface is called. - * So, if an application does some jobs related to the item event, use the methods of this interface. - * - */ +* @file FUiCtrlISectionTableViewItemEventListener.h +* @brief This is the header file for the %ISectionTableViewItemEventListener interface. +* +* This header file contains the declarations of the %ISectionTableViewItemEventListener interface. @n +* If an item event is generated, a method of this interface is called. +* So, if an application does some jobs related to the item event, use the methods of this interface. +* +*/ #ifndef _FUI_CTRL_ISECTION_TABLE_VIEW_ITEM_EVENT_LISTENER_H_ #define _FUI_CTRL_ISECTION_TABLE_VIEW_ITEM_EVENT_LISTENER_H_ @@ -36,53 +36,53 @@ class TableViewContextItem; /** - * @interface ISectionTableViewItemEventListener - * @brief This interface implements the listener for item event. - * - * @since 2.0 - * - * The %ISectionTableViewItemEventListener interface implements a listener for receiving item change events. - * The class that is interested in processing an item event implements this interface, - * and the instance created with that class is registered with a UI control, using the control's - * AddSectionTableViewItemEventListener() method. When the item event occurs, the OnItemStateChanged() method of that object is invoked. - */ +* @interface ISectionTableViewItemEventListener +* @brief This interface implements the listener for item event. +* +* @since 2.0 +* +* The %ISectionTableViewItemEventListener interface implements a listener for receiving item change events. +* The class that is interested in processing an item event implements this interface, +* and the instance created with that class is registered with a UI control, using the control's +* AddSectionTableViewItemEventListener() method. When the item event occurs, the OnItemStateChanged() method of that object is invoked. +*/ class _OSP_EXPORT_ ISectionTableViewItemEventListener : virtual public Tizen::Base::Runtime::IEventListener { public: /** - * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. - * - * @since 2.0 - */ + * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. + * + * @since 2.0 + */ virtual ~ISectionTableViewItemEventListener(void) {} /** - * Called when the state of a TableViewItem in the SectionTableView is changed. - * - * @since 2.0 - * - * @param[in] tableView The source of the event - * @param[in] sectionIndex The section index - * @param[in] itemIndex The item index - * @param[in] pItem The target item - * @param[in] status The status of the item - * @remarks This method is called when the TableViewItem in the SectionTableView is checked, unchecked, or selected. - */ + * Called when the state of a TableViewItem in the SectionTableView is changed. + * + * @since 2.0 + * + * @param[in] tableView The source of the event + * @param[in] sectionIndex The section index + * @param[in] itemIndex The item index + * @param[in] pItem The target item + * @param[in] status The status of the item + * @remarks This method is called when the TableViewItem in the SectionTableView is checked, unchecked, or selected. + */ virtual void OnSectionTableViewItemStateChanged(Tizen::Ui::Controls::SectionTableView& tableView, int sectionIndex, int itemIndex, Tizen::Ui::Controls::TableViewItem* pItem, Tizen::Ui::Controls::TableViewItemStatus status) = 0; /** - * Called when the TableViewContextItem is opened or closed. - * - * @since 2.0 - * - * @param[in] tableView The source of the event - * @param[in] sectionIndex The section index - * @param[in] itemIndex The item index - * @param[in] pContextItem The context item which is opened or closed - * @param[in] activated @c true if a context item is opened,@n - * @c false, otherwise - */ + * Called when the TableViewContextItem is opened or closed. + * + * @since 2.0 + * + * @param[in] tableView The source of the event + * @param[in] sectionIndex The section index + * @param[in] itemIndex The item index + * @param[in] pContextItem The context item which is opened or closed + * @param[in] activated @c true if a context item is opened,@n + * @c false, otherwise + */ virtual void OnSectionTableViewContextItemActivationStateChanged(Tizen::Ui::Controls::SectionTableView& tableView, int sectionIndex, int itemIndex, Tizen::Ui::Controls::TableViewContextItem* pContextItem, bool activated) = 0; protected: diff --git a/inc/FUiCtrlISectionTableViewItemProvider.h b/inc/FUiCtrlISectionTableViewItemProvider.h index 29067b4..7e52ef9 100644 --- a/inc/FUiCtrlISectionTableViewItemProvider.h +++ b/inc/FUiCtrlISectionTableViewItemProvider.h @@ -16,14 +16,14 @@ // /** - * @file FUiCtrlISectionTableViewItemProvider.h - * @brief This is the header file for the %ISectionTableViewItemProvider interface. - * - * This header file contains the declarations of the %ISectionTableViewItemProvider interface. - * If the event is generated, a method of this interface is called. - * So, if applications do jobs related to item events, use the methods of this interface. - * - */ +* @file FUiCtrlISectionTableViewItemProvider.h +* @brief This is the header file for the %ISectionTableViewItemProvider interface. +* +* This header file contains the declarations of the %ISectionTableViewItemProvider interface. +* If the event is generated, a method of this interface is called. +* So, if applications do jobs related to item events, use the methods of this interface. +* +*/ #ifndef _FUI_CTRL_ISECTION_TABLE_VIEW_ITEM_PROVIDER_H_ #define _FUI_CTRL_ISECTION_TABLE_VIEW_ITEM_PROVIDER_H_ @@ -32,152 +32,152 @@ namespace Tizen { namespace Ui { namespace Controls class TableViewItem; /** - * @interface ISectionTableViewItemProvider - * @brief This interface implements the listener for events on SectionTableView. - * - * @since 2.0 - * - * The %ISectionTableViewItemProvider interface implements an item provider which generates items for SectionTableView. %SectionTableView calls the item provider - * to request an item which is about to be displayed on a screen. Applications which use %SectionTableView must implement the item provider. - * The class is registered with a %SectionTableView, using the SectionTableView's SetSectionStyleItemProvider() method. - */ +* @interface ISectionTableViewItemProvider +* @brief This interface implements the listener for events on SectionTableView. +* +* @since 2.0 +* +* The %ISectionTableViewItemProvider interface implements an item provider which generates items for SectionTableView. %SectionTableView calls the item provider +* to request an item which is about to be displayed on a screen. Applications which use %SectionTableView must implement the item provider. +* The class is registered with a %SectionTableView, using the SectionTableView's SetSectionStyleItemProvider() method. +*/ class _OSP_EXPORT_ ISectionTableViewItemProvider { public: /** - * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. - * - * @since 2.0 - */ + * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. + * + * @since 2.0 + */ virtual ~ISectionTableViewItemProvider(void) {} /** - * Gets the total number of groups. - * - * @since 2.0 - * - * @return The total number of groups - * @remarks This method must be implemented so that it returns the total number of groups in the SectionTableView control. - */ + * Gets the total number of groups. + * + * @since 2.0 + * + * @return The total number of groups + * @remarks This method must be implemented so that it returns the total number of groups in the SectionTableView control. + */ virtual int GetSectionCount(void) = 0; /** - * Gets the total number of items in the specified group. - * - * @since 2.0 - * - * @return The total number of items in the specified group - * @param[in] sectionIndex The index of the section - * @remarks This method must be implemented so that it returns the total number of items for the specified section in the %SectionTableView control. - */ + * Gets the total number of items in the specified group. + * + * @since 2.0 + * + * @return The total number of items in the specified group + * @param[in] sectionIndex The index of the section + * @remarks This method must be implemented so that it returns the total number of items for the specified section in the %SectionTableView control. + */ virtual int GetItemCount(int sectionIndex) = 0; /** - * Creates the specified item. - * - * @since 2.0 - * - * @return An item of the SectionTableView - * @param[in] sectionIndex The section index - * @param[in] itemIndex The item index - * @param[in] itemWidth The width of the item - * @remarks An application that uses the SectionTableView control must implement this method. - * This method is expected to return an item that is allocated on a heap memory. - * The returned item can be a simple or custom item. - * Note that when the item is not required, the %SectionTableView control calls ISectionTableViewItemProvider::DeleteItem() and the application - * deallocates the item. - * @see DeleteItem() - */ + * Creates the specified item. + * + * @since 2.0 + * + * @return An item of the SectionTableView + * @param[in] sectionIndex The section index + * @param[in] itemIndex The item index + * @param[in] itemWidth The width of the item + * @remarks An application that uses the SectionTableView control must implement this method. + * This method is expected to return an item that is allocated on a heap memory. + * The returned item can be a simple or custom item. + * Note that when the item is not required, the %SectionTableView control calls ISectionTableViewItemProvider::DeleteItem() and the application + * deallocates the item. + * @see DeleteItem() + */ virtual TableViewItem* CreateItem(int sectionIndex, int itemIndex, int itemWidth) = 0; /** - * Deletes the specified item. - * - * @since 2.0 - * - * @return @c true if the item is deallocated by this method, @n - * else @c false - * @param[in] sectionIndex The section index - * @param[in] itemIndex The item index - * @param[in] pItem The pointer to TableViewItem to be deleted - * @remarks An application that uses the SectionTableView control must implement this method. - * Using this method, an application can deallocate the item. - * If the application deallocates the item, this method must return true. This notifies the %SectionTableView control not to release the - * item. Otherwise, the item is deallocated by the %SectionTableView control. - * @see CreateItem() - */ + * Deletes the specified item. + * + * @since 2.0 + * + * @return @c true if the item is deallocated by this method, @n + * else @c false + * @param[in] sectionIndex The section index + * @param[in] itemIndex The item index + * @param[in] pItem The pointer to TableViewItem to be deleted + * @remarks An application that uses the SectionTableView control must implement this method. + * Using this method, an application can deallocate the item. + * If the application deallocates the item, this method must return true. This notifies the %SectionTableView control not to release the + * item. Otherwise, the item is deallocated by the %SectionTableView control. + * @see CreateItem() + */ virtual bool DeleteItem(int sectionIndex, int itemIndex, TableViewItem* pItem) = 0; /** - * Updates the specified item. - * - * @since 2.0 - * - * @param[in] sectionIndex The section index - * @param[in] itemIndex The item index - * @param[in] pItem The pointer to TableViewItem to be updated - * @remarks An application that uses the SectionTableView control must implement this method. - * This method is calle when the modification of an item is requested. - * The application can change @c pItem in this method, but should not keep @c pItem for later use. - */ + * Updates the specified item. + * + * @since 2.0 + * + * @param[in] sectionIndex The section index + * @param[in] itemIndex The item index + * @param[in] pItem The pointer to TableViewItem to be updated + * @remarks An application that uses the SectionTableView control must implement this method. + * This method is calle when the modification of an item is requested. + * The application can change @c pItem in this method, but should not keep @c pItem for later use. + */ virtual void UpdateItem(int sectionIndex, int itemIndex, TableViewItem* pItem) = 0; /** - * Gets the header text of a specified section. - * - * @since 2.0 - * - * @return The section header text of specified section - * @param[in] sectionIndex The index of the group - * @remarks An application that uses the SectionTableView control must implement this method. @n - * The header text will be aligned left - */ + * Gets the header text of a specified section. + * + * @since 2.0 + * + * @return The section header text of specified section + * @param[in] sectionIndex The index of the group + * @remarks An application that uses the SectionTableView control must implement this method. @n + * The header text will be aligned left + */ virtual Tizen::Base::String GetSectionHeader(int sectionIndex) = 0; /** - * Returns whether the group has the section header or not. - * - * @since 2.0 - * - * @return @c true, if the section has an header @n - * @c false, otherwise - * @param[in] sectionIndex The index of the section - * @remarks An application that uses the SectionTableView control must implement this method. - */ + * Returns whether the group has the section header or not. + * + * @since 2.0 + * + * @return @c true, if the section has an header @n + * @c false, otherwise + * @param[in] sectionIndex The index of the section + * @remarks An application that uses the SectionTableView control must implement this method. + */ virtual bool HasSectionHeader(int sectionIndex) = 0; /** - * Gets the footer text of a specified section. - * - * @since 2.0 - * - * @return The footer text of specified section - * @param[in] sectionIndex The index of the section - * @remarks An application that uses the SectionTableView control must implement this method. @n - * The footer text will be aligned right. - */ + * Gets the footer text of a specified section. + * + * @since 2.0 + * + * @return The footer text of specified section + * @param[in] sectionIndex The index of the section + * @remarks An application that uses the SectionTableView control must implement this method. @n + * The footer text will be aligned right. + */ virtual Tizen::Base::String GetSectionFooter(int sectionIndex) = 0; /** - * Returns whether the section has the footer or not. - * - * @since 2.0 - * - * @return @c true, if the section has the footer @n - * @c false, - * @param[in] sectionIndex The index of the section - * @remarks An application that uses the SectionTableView control must implement this method. - */ + * Returns whether the section has the footer or not. + * + * @since 2.0 + * + * @return @c true, if the section has the footer @n + * @c false, + * @param[in] sectionIndex The index of the section + * @remarks An application that uses the SectionTableView control must implement this method. + */ virtual bool HasSectionFooter(int sectionIndex) = 0; /** - * Gets the default height of an item. - * - * @since 2.0 - * - * @return The default height of an item - * @remarks This method must be implemented so that it returns the default height of items in the SectionTableView control. - */ + * Gets the default height of an item. + * + * @since 2.0 + * + * @return The default height of an item + * @remarks This method must be implemented so that it returns the default height of items in the SectionTableView control. + */ virtual int GetDefaultItemHeight(void) = 0; protected: diff --git a/inc/FUiCtrlISectionTableViewItemProviderF.h b/inc/FUiCtrlISectionTableViewItemProviderF.h new file mode 100644 index 0000000..508b0f9 --- /dev/null +++ b/inc/FUiCtrlISectionTableViewItemProviderF.h @@ -0,0 +1,217 @@ +// +// Open Service Platform +// Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. +// +// Licensed under the Flora License, Version 1.0 (the License); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://floralicense.org/license/ +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an AS IS BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +/* +* @file FUiCtrlISectionTableViewItemProviderF.h +* @brief This is the header file for the %ISectionTableViewItemProviderF interface. +* +* This header file contains the declarations of the %ISectionTableViewItemProviderF interface. +* If the event is generated, a method of this interface is called. +* So, if applications do jobs related to item events, use the methods of this interface. +* +*/ +#ifndef _FUI_CTRL_ISECTION_TABLE_VIEW_ITEM_PROVIDER_F_H_ +#define _FUI_CTRL_ISECTION_TABLE_VIEW_ITEM_PROVIDER_F_H_ + +namespace Tizen { namespace Ui { namespace Controls +{ +class TableViewItem; + +/* +* @interface ISectionTableViewItemProviderF +* @brief This interface implements the listener for events on SectionTableView. +* +* @since 2.1 +* +* The %ISectionTableViewItemProviderF interface implements an item provider which generates items for SectionTableView. %SectionTableView calls the item provider +* to request an item which is about to be displayed on a screen. Applications which use %SectionTableView must implement the item provider. +* The class is registered with a %SectionTableView, using the SectionTableView's SetSectionStyleItemProvider() method. +*/ +class _OSP_EXPORT_ ISectionTableViewItemProviderF +{ +public: + /* + * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. + * + * @since 2.1 + */ + virtual ~ISectionTableViewItemProviderF(void) {} + + /* + * Gets the total number of groups. + * + * @since 2.1 + * + * @return The total number of groups + * @remarks This method must be implemented so that it returns the total number of groups in the SectionTableView control. + */ + virtual int GetSectionCount(void) = 0; + + /* + * Gets the total number of items in the specified group. + * + * @since 2.1 + * + * @return The total number of items in the specified group + * @param[in] sectionIndex The index of the section + * @remarks This method must be implemented so that it returns the total number of items for the specified section in the %SectionTableView control. + */ + virtual int GetItemCount(int sectionIndex) = 0; + + /* + * Creates the specified item. + * + * @since 2.1 + * + * @return An item of the SectionTableView + * @param[in] sectionIndex The section index + * @param[in] itemIndex The item index + * @param[in] itemWidth The width of the item + * @remarks An application that uses the SectionTableView control must implement this method. + * This method is expected to return an item that is allocated on a heap memory. + * The returned item can be a simple or custom item. + * Note that when the item is not required, the %SectionTableView control calls ISectionTableViewItemProviderF::DeleteItem() and the application + * deallocates the item. + * @see DeleteItem() + */ + virtual TableViewItem* CreateItem(int sectionIndex, int itemIndex, float itemWidth) = 0; + + /* + * Deletes the specified item. + * + * @since 2.1 + * + * @return @c true if the item is deallocated by this method, @n + * else @c false + * @param[in] sectionIndex The section index + * @param[in] itemIndex The item index + * @param[in] pItem The pointer to TableViewItem to be deleted + * @remarks An application that uses the SectionTableView control must implement this method. + * Using this method, an application can deallocate the item. + * If the application deallocates the item, this method must return true. This notifies the %SectionTableView control not to release the + * item. Otherwise, the item is deallocated by the %SectionTableView control. + * @see CreateItem() + */ + virtual bool DeleteItem(int sectionIndex, int itemIndex, TableViewItem* pItem) = 0; + + /* + * Updates the specified item. + * + * @since 2.1 + * + * @param[in] sectionIndex The section index + * @param[in] itemIndex The item index + * @param[in] pItem The pointer to TableViewItem to be updated + * @remarks An application that uses the SectionTableView control must implement this method. + * This method is calle when the modification of an item is requested. + * The application can change @c pItem in this method, but should not keep @c pItem for later use. + */ + virtual void UpdateItem(int sectionIndex, int itemIndex, TableViewItem* pItem) = 0; + + /* + * Gets the header text of a specified section. + * + * @since 2.1 + * + * @return The section header text of specified section + * @param[in] sectionIndex The index of the group + * @remarks An application that uses the SectionTableView control must implement this method. @n + * The header text will be aligned left + */ + virtual Tizen::Base::String GetSectionHeader(int sectionIndex) = 0; + + /* + * Returns whether the group has the section header or not. + * + * @since 2.1 + * + * @return @c true, if the section has an header @n + * @c false, otherwise + * @param[in] sectionIndex The index of the section + * @remarks An application that uses the SectionTableView control must implement this method. + */ + virtual bool HasSectionHeader(int sectionIndex) = 0; + + /* + * Gets the footer text of a specified section. + * + * @since 2.1 + * + * @return The footer text of specified section + * @param[in] sectionIndex The index of the section + * @remarks An application that uses the SectionTableView control must implement this method. @n + * The footer text will be aligned right. + */ + virtual Tizen::Base::String GetSectionFooter(int sectionIndex) = 0; + + /* + * Returns whether the section has the footer or not. + * + * @since 2.1 + * + * @return @c true, if the section has the footer @n + * @c false, + * @param[in] sectionIndex The index of the section + * @remarks An application that uses the SectionTableView control must implement this method. + */ + virtual bool HasSectionFooter(int sectionIndex) = 0; + + /* + * Gets the default height of an item. + * + * @since 2.1 + * + * @return The default height of an item + * @remarks This method must be implemented so that it returns the default height of items in the SectionTableView control. + */ + virtual float GetDefaultItemHeight(void) = 0; + +protected: + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // The following method is reserved, and its name can be changed at any time without prior notice. + // + // @since 2.1 + // + virtual void ISectionTableViewItemProviderF_Reserved1(void) {} + + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // The following method is reserved, and its name can be changed at any time without prior notice. + // + // @since 2.1 + // + virtual void ISectionTableViewItemProviderF_Reserved2(void) {} + + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // The following method is reserved, and its name can be changed at any time without prior notice. + // + // @since 2.1 + // + virtual void ISectionTableViewItemProviderF_Reserved3(void) {} +}; // ISectionTableViewItemProviderF + +}}} // Tizen::Ui::Controls + +#endif // _FUI_CTRL_ISECTION_TABLE_VIEW_ITEM_PROVIDER_F_H_ \ No newline at end of file diff --git a/inc/FUiCtrlISliderEventListener.h b/inc/FUiCtrlISliderEventListener.h index a343014..618a795 100644 --- a/inc/FUiCtrlISliderEventListener.h +++ b/inc/FUiCtrlISliderEventListener.h @@ -14,6 +14,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // + /** * @file FUiCtrlISliderEventListener.h * @brief This is the header file for the %ISliderEventListener interface. diff --git a/inc/FUiCtrlISplitPanelEventListener.h b/inc/FUiCtrlISplitPanelEventListener.h index 77b118c..5deb7c7 100644 --- a/inc/FUiCtrlISplitPanelEventListener.h +++ b/inc/FUiCtrlISplitPanelEventListener.h @@ -14,6 +14,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // + /** * @file FUiCtrlISplitPanelEventListener.h * @brief This is the header file for the %ISplitPanelEventListener interface. diff --git a/inc/FUiCtrlISplitPanelEventListenerF.h b/inc/FUiCtrlISplitPanelEventListenerF.h new file mode 100644 index 0000000..eeaa144 --- /dev/null +++ b/inc/FUiCtrlISplitPanelEventListenerF.h @@ -0,0 +1,116 @@ +// +// Open Service Platform +// Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. +// +// Licensed under the Flora License, Version 1.0 (the License); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://floralicense.org/license/ +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an AS IS BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +/** + * @file FUiCtrlISplitPanelEventListenerF.h + * @brief This is the header file for the %ISplitPanelEventListenerF interface. + * + * This header file contains the declarations of the %ISplitPanelEventListenerF interface. @n + * If a change event is generated, a method of this class is called. @n + * So, if the applications perform tasks related to change events, use the methods of this class. + * + */ +#ifndef _FUI_CTRL_ISPLIT_PANEL_EVENT_LISTENER_F_H_ +#define _FUI_CTRL_ISPLIT_PANEL_EVENT_LISTENER_F_H_ + +#include +#include +#include + +namespace Tizen { namespace Ui { namespace Controls +{ + +/** + * @interface ISplitPanelEventListenerF + * @brief This interface implements the listener for all splitpanel events. + * + * @since 2.1 + * + * The %ISplitPanelEventListenerF interface is the listener interface for receiving splitpanel events. + * The class that processes a splitpanel event implements this interface, and the instance created with that class is registered with + * a UI control, using the control's AddSplitPanelEventListener() method. When the splitpanel event occurs, a method of that instance is invoked. + * + * For more information on the class features, see SplitPanel. + */ +class _OSP_EXPORT_ ISplitPanelEventListenerF + : virtual public Tizen::Base::Runtime::IEventListener +{ +public: + /** + * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called + * + * @since 2.1 + */ + virtual ~ISplitPanelEventListenerF(void) {} + + /** + * + * Called when the divider moves. + * + * @since 2.1 + * + * @param[in] source The source of the event + * @param[in] position The position of the divider + */ + virtual void OnDividerPositionChanged(Tizen::Ui::Controls::SplitPanel& source, float position) = 0; + + /** + * Called when the divider is double pressed. + * + * @since 2.1 + * + * @param[in] source The source of the event + * @remark This method is invoked when an divider is double pressed. + */ + virtual void OnDividerDoublePressed(Tizen::Ui::Controls::SplitPanel& source) = 0; + +protected: + // + // This method is for internal use only. + // Using this method can cause behavioral, security-related, and consistency-related issues in the application. + // + // This method is reserved and may change its name at any time without prior notice. + // + // @since 2.1 + // + virtual void ISplitPanelEventListenerF_Reserved1(void) {} + + // + // This method is for internal use only. + // Using this method can cause behavioral, security-related, and consistency-related issues in the application. + // + // This method is reserved and may change its name at any time without prior notice. + // + // @since 2.1 + // + virtual void ISplitPanelEventListenerF_Reserved2(void) {} + + // + // This method is for internal use only. + // Using this method can cause behavioral, security-related, and consistency-related issues in the application. + // + // This method is reserved and may change its name at any time without prior notice. + // + // @since 2.1 + // + virtual void ISplitPanelEventListenerF_Reserved3(void) {} + +}; // ISplitPanelEventListenerF + +}}} // Tizen::Ui::Controls + +#endif // _FUI_CTRL_ISPLIT_PANEL_EVENT_LISTENER_F_H_ diff --git a/inc/FUiCtrlITableViewItemEventListener.h b/inc/FUiCtrlITableViewItemEventListener.h index 2f3a0d6..f7251cb 100644 --- a/inc/FUiCtrlITableViewItemEventListener.h +++ b/inc/FUiCtrlITableViewItemEventListener.h @@ -15,14 +15,14 @@ // limitations under the License. // /** - * @file FUiCtrlITableViewItemEventListener.h - * @brief This is the header file for the %ITableViewItemEventListener interface. - * - * This header file contains the declarations of the %ITableViewItemEventListener interface. @n - * If an item event is generated, a method of this interface is called. - * So, if an application does some jobs related to the item event, use the methods of this interface. - * - */ +* @file FUiCtrlITableViewItemEventListener.h +* @brief This is the header file for the %ITableViewItemEventListener interface. +* +* This header file contains the declarations of the %ITableViewItemEventListener interface. @n +* If an item event is generated, a method of this interface is called. +* So, if an application does some jobs related to the item event, use the methods of this interface. +* +*/ #ifndef _FUI_CTRL_ITABLE_VIEW_ITEM_EVENT_LISTENER_H_ #define _FUI_CTRL_ITABLE_VIEW_ITEM_EVENT_LISTENER_H_ @@ -36,63 +36,63 @@ class TableViewItem; class TableViewContextItem; /** - * @interface ITableViewItemEventListener - * @brief This interface implements the listener for item event. - * - * @since 2.0 - * - * The %ITableViewItemEventListener interface implements a listener for receiving item change events. - * The class that is interested in processing an item event implements this interface, - * and the instance created with that class is registered with a UI control, using the control's - * AddTableViewItemEventListener() method. When the item event occurs, the OnItemStateChanged() method of that object is invoked. - */ +* @interface ITableViewItemEventListener +* @brief This interface implements the listener for item event. +* +* @since 2.0 +* +* The %ITableViewItemEventListener interface implements a listener for receiving item change events. +* The class that is interested in processing an item event implements this interface, +* and the instance created with that class is registered with a UI control, using the control's +* AddTableViewItemEventListener() method. When the item event occurs, the OnItemStateChanged() method of that object is invoked. +*/ class _OSP_EXPORT_ ITableViewItemEventListener : virtual public Tizen::Base::Runtime::IEventListener { public: /** - * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. - * - * @since 2.0 - */ + * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. + * + * @since 2.0 + */ virtual ~ITableViewItemEventListener(void) {} /** - * Called when the state of a TableViewItem in the TableView is changed. - * - * @since 2.0 - * - * @param[in] tableView The source of the event - * @param[in] itemIndex The item index - * @param[in] pItem The target item - * @param[in] status The status of the item - * @remarks This method is called when a TableViewItem in the TableView is checked, unchecked, or selected. - * The application can change @c pItem in this method, but should not keep @c pItem for later use. - */ + * Called when the state of a TableViewItem in the TableView is changed. + * + * @since 2.0 + * + * @param[in] tableView The source of the event + * @param[in] itemIndex The item index + * @param[in] pItem The target item + * @param[in] status The status of the item + * @remarks This method is called when a TableViewItem in the TableView is checked, unchecked, or selected. + * The application can change @c pItem in this method, but should not keep @c pItem for later use. + */ virtual void OnTableViewItemStateChanged(Tizen::Ui::Controls::TableView& tableView, int itemIndex, Tizen::Ui::Controls::TableViewItem* pItem, Tizen::Ui::Controls::TableViewItemStatus status) = 0; /** - * Called when the TableViewContextItem is opened or closed. - * - * @since 2.0 - * - * @param[in] tableView The source of the event - * @param[in] itemIndex The item index - * @param[in] pContextItem The context item which is opened or closed - * @param[in] activated @c true if a context item is opened,@n - * @c false, otherwise - */ + * Called when the TableViewContextItem is opened or closed. + * + * @since 2.0 + * + * @param[in] tableView The source of the event + * @param[in] itemIndex The item index + * @param[in] pContextItem The context item which is opened or closed + * @param[in] activated @c true if a context item is opened,@n + * @c false, otherwise + */ virtual void OnTableViewContextItemActivationStateChanged(Tizen::Ui::Controls::TableView& tableView, int itemIndex, Tizen::Ui::Controls::TableViewContextItem* pContextItem, bool activated) = 0; /** - * Called when the item is reordered. - * - * @since 2.0 - * - * @param[in] tableView The source of the event - * @param[in] itemIndexFrom The start item index of the item - * @param[in] itemIndexTo The final item index of the item - */ + * Called when the item is reordered. + * + * @since 2.0 + * + * @param[in] tableView The source of the event + * @param[in] itemIndexFrom The start item index of the item + * @param[in] itemIndexTo The final item index of the item + */ virtual void OnTableViewItemReordered(Tizen::Ui::Controls::TableView& tableView, int itemIndexFrom, int itemIndexTo) = 0; protected: diff --git a/inc/FUiCtrlITableViewItemProvider.h b/inc/FUiCtrlITableViewItemProvider.h index 0bef40d..3901cde 100644 --- a/inc/FUiCtrlITableViewItemProvider.h +++ b/inc/FUiCtrlITableViewItemProvider.h @@ -16,14 +16,14 @@ // /** - * @file FUiCtrlITableViewItemProvider.h - * @brief This is the header file for the %ITableViewItemProvider interface. - * - * This header file contains the declarations of the %ITableViewItemProvider interface. - * If the event is generated, a method of this interface is called. - * So, if applications do jobs related to item events, use the methods of this interface. - * - */ +* @file FUiCtrlITableViewItemProvider.h +* @brief This is the header file for the %ITableViewItemProvider interface. +* +* This header file contains the declarations of the %ITableViewItemProvider interface. +* If the event is generated, a method of this interface is called. +* So, if applications do jobs related to item events, use the methods of this interface. +* +*/ #ifndef _FUI_CTRL_ITABLE_VIEW_ITEM_PROVIDER_H_ #define _FUI_CTRL_ITABLE_VIEW_ITEM_PROVIDER_H_ @@ -33,89 +33,89 @@ namespace Tizen { namespace Ui { namespace Controls class TableViewItem; /** - * @interface ITableViewItemProvider - * @brief This interface implements the listener for events on TableView. - * - * @since 2.0 - * - * The %ITableViewItemProvider interface implements an item provider which generates items for TableView. %TableView calls the item provider - * to request an item which is about to be displayed on a screen. Applications which use %TableView must implement the item provider. - * The class is registered with a %TableView, using the TableView's SetSimpleStyleItemProvider() method. - */ +* @interface ITableViewItemProvider +* @brief This interface implements the listener for events on TableView. +* +* @since 2.0 +* +* The %ITableViewItemProvider interface implements an item provider which generates items for TableView. %TableView calls the item provider +* to request an item which is about to be displayed on a screen. Applications which use %TableView must implement the item provider. +* The class is registered with a %TableView, using the TableView's SetSimpleStyleItemProvider() method. +*/ class _OSP_EXPORT_ ITableViewItemProvider { public: /** - * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. - * - * @since 2.0 - */ + * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. + * + * @since 2.0 + */ virtual ~ITableViewItemProvider(void) {} /** - * Gets the total number of items in the specified group. - * - * @since 2.0 - * - * @return The total number of items - * @remarks This method must be implemented so that it returns the total number of items for the specified group in the TableView control. - */ + * Gets the total number of items in the specified group. + * + * @since 2.0 + * + * @return The total number of items + * @remarks This method must be implemented so that it returns the total number of items for the specified group in the TableView control. + */ virtual int GetItemCount(void) = 0; /** - * Creates the specified item. - * - * @since 2.0 - * - * @return An item of the TableView - * @param[in] itemIndex The item index - * @param[in] itemWidth The width of the item - * @remarks An application that uses the TableView control must implement this method. - * This method is expected to return an item that is allocated on a heap memory. - * The returned item can be a %TableViewItem or a class derived from TableViewItem. - * Note that when the item is not required, the %TableView control calls ITableViewItemProvider::DeleteItem(), allowing the application to deallocate the item. - * @see DeleteItem() - */ + * Creates the specified item. + * + * @since 2.0 + * + * @return An item of the TableView + * @param[in] itemIndex The item index + * @param[in] itemWidth The width of the item + * @remarks An application that uses the TableView control must implement this method. + * This method is expected to return an item that is allocated on a heap memory. + * The returned item can be a %TableViewItem or a class derived from TableViewItem. + * Note that when the item is not required, the %TableView control calls ITableViewItemProvider::DeleteItem(), allowing the application to deallocate the item. + * @see DeleteItem() + */ virtual TableViewItem* CreateItem(int itemIndex, int itemWidth) = 0; /** - * Deletes the specified item. - * - * @since 2.0 - * - * @return @c true if the item is deallocated by this method, @n - * else @c false - * @param[in] itemIndex The item index - * @param[in] pItem The pointer to TableViewItem that is to be deleted - * @remarks An application that uses the TableView control must implement this method. - * Using this method, an application can deallocate the item. - * If the application deallocates the item, this method must return @c true. This notifies the %TableView not to release the - * item. Otherwise, the item is deallocated by the %TableView. - * @see CreateItem() - */ + * Deletes the specified item. + * + * @since 2.0 + * + * @return @c true if the item is deallocated by this method, @n + * else @c false + * @param[in] itemIndex The item index + * @param[in] pItem The pointer to TableViewItem that is to be deleted + * @remarks An application that uses the TableView control must implement this method. + * Using this method, an application can deallocate the item. + * If the application deallocates the item, this method must return @c true. This notifies the %TableView not to release the + * item. Otherwise, the item is deallocated by the %TableView. + * @see CreateItem() + */ virtual bool DeleteItem(int itemIndex, TableViewItem* pItem) = 0; /** - * Updates the specified item. - * - * @since 2.0 - * - * @param[in] itemIndex The item index - * @param[in] pItem The pointer to TableViewItem that is to be updated - * @remarks An application that uses the TableView control must implement this method. - * This method is called when the modification of an item is requested. - * The application can change @c pItem in this method, but should not keep @c pItem for later use. - */ + * Updates the specified item. + * + * @since 2.0 + * + * @param[in] itemIndex The item index + * @param[in] pItem The pointer to TableViewItem that is to be updated + * @remarks An application that uses the TableView control must implement this method. + * This method is called when the modification of an item is requested. + * The application can change @c pItem in this method, but should not keep @c pItem for later use. + */ virtual void UpdateItem(int itemIndex, TableViewItem* pItem) = 0; /** - * Gets the default height of an item. - * - * @since 2.0 - * - * @return The default height of an item - * @remarks This method must be implemented so that it returns the default height of items in the TableView control. - */ + * Gets the default height of an item. + * + * @since 2.0 + * + * @return The default height of an item + * @remarks This method must be implemented so that it returns the default height of items in the TableView control. + */ virtual int GetDefaultItemHeight(void) = 0; protected: diff --git a/inc/FUiCtrlITableViewItemProviderF.h b/inc/FUiCtrlITableViewItemProviderF.h new file mode 100644 index 0000000..b43d864 --- /dev/null +++ b/inc/FUiCtrlITableViewItemProviderF.h @@ -0,0 +1,155 @@ +// +// Open Service Platform +// Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. +// +// Licensed under the Flora License, Version 1.0 (the License); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://floralicense.org/license/ +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an AS IS BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +/* +* @file FUiCtrlITableViewItemProviderF.h +* @brief This is the header file for the %ITableViewItemProviderF interface. +* +* This header file contains the declarations of the %ITableViewItemProviderF interface. +* If the event is generated, a method of this interface is called. +* So, if applications do jobs related to item events, use the methods of this interface. +* +*/ + +#ifndef _FUI_CTRL_ITABLE_VIEW_ITEM_PROVIDER_F_H_ +#define _FUI_CTRL_ITABLE_VIEW_ITEM_PROVIDER_F_H_ + +namespace Tizen { namespace Ui { namespace Controls +{ +class TableViewItem; + +/* +* @interface ITableViewItemProviderF +* @brief This interface implements the listener for events on TableView. +* +* @since 2.1 +* +* The %ITableViewItemProviderF interface implements an item provider which generates items for TableView. %TableView calls the item provider +* to request an item which is about to be displayed on a screen. Applications which use %TableView must implement the item provider. +* The class is registered with a %TableView, using the TableView's SetSimpleStyleItemProvider() method. +*/ +class _OSP_EXPORT_ ITableViewItemProviderF +{ +public: + /* + * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. + * + * @since 2.1 + */ + virtual ~ITableViewItemProviderF(void) {} + + /* + * Gets the total number of items in the specified group. + * + * @since 2.1 + * + * @return The total number of items + * @remarks This method must be implemented so that it returns the total number of items for the specified group in the TableView control. + */ + virtual int GetItemCount(void) = 0; + + /* + * Creates the specified item. + * + * @since 2.1 + * + * @return An item of the TableView + * @param[in] itemIndex The item index + * @param[in] itemWidth The width of the item + * @remarks An application that uses the TableView control must implement this method. + * This method is expected to return an item that is allocated on a heap memory. + * The returned item can be a %TableViewItem or a class derived from TableViewItem. + * Note that when the item is not required, the %TableView control calls ITableViewItemProvider::DeleteItem(), allowing the application to deallocate the item. + * @see DeleteItem() + */ + virtual TableViewItem* CreateItem(int itemIndex, float itemWidth) = 0; + + /* + * Deletes the specified item. + * + * @since 2.1 + * + * @return @c true if the item is deallocated by this method, @n + * else @c false + * @param[in] itemIndex The item index + * @param[in] pItem The pointer to TableViewItem that is to be deleted + * @remarks An application that uses the TableView control must implement this method. + * Using this method, an application can deallocate the item. + * If the application deallocates the item, this method must return @c true. This notifies the %TableView not to release the + * item. Otherwise, the item is deallocated by the %TableView. + * @see CreateItem() + */ + virtual bool DeleteItem(int itemIndex, TableViewItem* pItem) = 0; + + /* + * Updates the specified item. + * + * @since 2.1 + * + * @param[in] itemIndex The item index + * @param[in] pItem The pointer to TableViewItem that is to be updated + * @remarks An application that uses the TableView control must implement this method. + * This method is called when the modification of an item is requested. + * The application can change @c pItem in this method, but should not keep @c pItem for later use. + */ + virtual void UpdateItem(int itemIndex, TableViewItem* pItem) = 0; + + /* + * Gets the default height of an item. + * + * @since 2.1 + * + * @return The default height of an item + * @remarks This method must be implemented so that it returns the default height of items in the TableView control. + */ + virtual float GetDefaultItemHeight(void) = 0; + +protected: + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // The following method is reserved, and its name can be changed at any time without prior notice. + // + // @since 2.1 + // + virtual void ITableViewItemProviderF_Reserved1(void) {} + + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // The following method is reserved, and its name can be changed at any time without prior notice. + // + // @since 2.1 + // + virtual void ITableViewItemProviderF_Reserved2(void) {} + + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // The following method is reserved, and its name can be changed at any time without prior notice. + // + // @since 2.1 + // + virtual void ITableViewItemProviderF_Reserved3(void) {} +}; // ITableViewItemProviderF + +}}} // Tizen::Ui::Controls + +#endif // _FUI_CTRL_ITABLE_VIEW_ITEM_PROVIDER_F_H_ \ No newline at end of file diff --git a/inc/FUiCtrlITokenFilter.h b/inc/FUiCtrlITokenFilter.h index 69da6db..fb48fa7 100644 --- a/inc/FUiCtrlITokenFilter.h +++ b/inc/FUiCtrlITokenFilter.h @@ -14,6 +14,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // + /** * @file FUiCtrlITokenFilter.h * @brief This is the header file for the %ITokenFilter interface. diff --git a/inc/FUiCtrlIconList.h b/inc/FUiCtrlIconList.h old mode 100644 new mode 100755 diff --git a/inc/FUiCtrlIconListTypes.h b/inc/FUiCtrlIconListTypes.h index 63ece76..9b3ebce 100644 --- a/inc/FUiCtrlIconListTypes.h +++ b/inc/FUiCtrlIconListTypes.h @@ -48,7 +48,7 @@ enum IconListStyle }; /** - * @if OSPDEPREC + * if OSPDEPREC * @enum IconListCheckBoxPosition * * Defines the check-box position. diff --git a/inc/FUiCtrlIconListView.h b/inc/FUiCtrlIconListView.h index 86d55f5..3ddd013 100644 --- a/inc/FUiCtrlIconListView.h +++ b/inc/FUiCtrlIconListView.h @@ -2,14 +2,14 @@ // Open Service Platform // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. // -// Licensed under the Flora License, Version 1.0 (the License); +// Licensed under the Apache License, Version 2.0 (the License); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an AS IS BASIS, +// distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. @@ -26,22 +26,17 @@ #define _FUI_CTRL_ICON_LIST_VIEW_H_ //Includes -#include -#include -#include -#include -#include -#include +#include #include #include -#include #include #include -#include #include #include #include +#include #include +#include namespace Tizen { namespace Ui { namespace Controls { @@ -247,8 +242,7 @@ public: * * @return An error code * @param[in] rect An instance of the Graphics::Rectangle class @n - * This instance represents the x and y coordinates of the top-left corner of the created %IconListView along with - * the width and height. + * This instance represents the x and y coordinates of the top-left corner of the created %IconListView along with the width and height. * @param[in] itemBitmapSize The size of an icon in the %IconListView * @param[in] style The style set of %IconListView * @param[in] direction The direction of scroll @@ -263,6 +257,28 @@ public: */ result Construct(const Tizen::Graphics::Rectangle& rect, const Tizen::Graphics::Dimension& itemBitmapSize, IconListViewStyle style = ICON_LIST_VIEW_STYLE_NORMAL, IconListViewScrollDirection direction = ICON_LIST_VIEW_SCROLL_DIRECTION_VERTICAL, IconListViewScrollStyle scrollStyle = ICON_LIST_SCROLL_STYLE_FADE_OUT); + /* + * Initializes this instance of %IconListView with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect An instance of the Graphics::FloatRectangle class @n + * This instance represents the x and y coordinates of the top-left corner of the created %IconListView along with the width and height. + * @param[in] itemBitmapSize The size of an icon in the %IconListView + * @param[in] style The style set of %IconListView + * @param[in] direction The direction of scroll + * @param[in] scrollStyle The scroll style of %IconListView + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + * @remarks A control is fully usable only after it has been added to a container, therefore some methods may fail if used earlier. + * @remarks The number of items to be displayed on a screen is calculated based on %IconListView size, item size, item spacing, and margins. @n + * The %IconListView cannot display more than 256 items on the screen at once. + * @remarks The actual size of bitmap to be displayed in %IconListView is smaller than the specified size when the border style is ICON_LIST_VIEW_ITEM_BORDER_STYLE_SHADOW. + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect, const Tizen::Graphics::FloatDimension& itemBitmapSize, IconListViewStyle style = ICON_LIST_VIEW_STYLE_NORMAL, IconListViewScrollDirection direction = ICON_LIST_VIEW_SCROLL_DIRECTION_VERTICAL, IconListViewScrollStyle scrollStyle = ICON_LIST_SCROLL_STYLE_FADE_OUT); + /** * Sets the item provider that creates and deletes items for the %IconListView control. * @@ -310,6 +326,18 @@ public: void AddScrollEventListener(IScrollEventListener& listener); /** + * Adds a listener instance that listens to state changes of a scroll event. @n + * The added listener can listen to events on the context of the given event dispatcher when they are fired. + * + * @since 2.1 + * + * @param[in] listener The event listener to be added + * @see IScrollEventListenerF::OnScrollEndReached() + * @see RemoveScrollEventListener() + */ + void AddScrollEventListener(IScrollEventListenerF& listener); + + /** * Removes a listener instance that listens to state changes of a scroll event. @n * The removed listener cannot listen to events when they are fired. * @@ -322,6 +350,18 @@ public: void RemoveScrollEventListener(IScrollEventListener& listener); /** + * Removes a listener instance that listens to state changes of a scroll event. @n + * The removed listener cannot listen to events when they are fired. + * + * @since 2.1 + * + * @param[in] listener The event listener to be removed + * @see IScrollEventListenerF::OnScrollEndReached() + * @see RemoveScrollEventListener() + */ + void RemoveScrollEventListener(IScrollEventListenerF& listener); + + /** * Sets the background bitmap of the %IconListView. * * @since 2.0 @@ -375,6 +415,22 @@ public: */ result SetMargin(MarginType type, int value); + /* + * Sets the margin of %IconListView. + * + * @since 2.1 + * + * @return An error code + * @param[in] type The type of margin + * @param[in] value The marginal value + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + * @remarks The number of items to be displayed on a screen is calculated based on %IconListView size, item size, item spacing, and + * margins. The %IconListView cannot display more than 256 items on screen at once. + */ + result SetMargin(MarginType type, float value); + /** * Gets the margin of %IconListView. * @@ -386,6 +442,17 @@ public: */ int GetMargin(MarginType type) const; + /* + * Gets the margin of %IconListView. + * + * @since 2.1 + * + * @return The marginal value of %IconListView, @n + * else @c -1 if an error occurs + * @param[in] type The type of margin + */ + float GetMarginF(MarginType type) const; + /** * Sets the horizontal and vertical spacing between the items. * @@ -402,6 +469,22 @@ public: */ result SetItemSpacing(int horizontalSpacing, int verticalSpacing); + /* + * Sets the horizontal and vertical spacing between the items. + * + * @since 2.1 + * + * @return An error code + * @param[in] horizontalSpacing The spacing between items in horizontal direction + * @param[in] verticalSpacing The spacing between items in vertical direction + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + * @remarks The number of items to be displayed on a screen is calculated based on %IconListView size, item size, item spacing, and + * margins. The %IconListView cannot display more than 256 items on screen at once. + */ + result SetItemSpacing(float horizontalSpacing, float verticalSpacing); + /** * Gets the horizontal spacing between items of %IconListView. * @@ -413,6 +496,16 @@ public: int GetItemHorizontalSpacing(void) const; /** + * Gets the horizontal spacing between items of %IconListView. + * + * @since 2.1 + * + * @return The value of space between items in horizontal direction, @n + * else @c -1 if an error occurs + */ + float GetItemHorizontalSpacingF(void) const; + + /** * Gets the vertical spacing between items of %IconListView. * * @since 2.0 @@ -422,6 +515,16 @@ public: */ int GetItemVerticalSpacing(void) const; + /* + * Gets the vertical spacing between items of %IconListView. + * + * @since 2.1 + * + * @return The value of space between items in vertical direction, @n + * else @c -1 if an error occurs + */ + float GetItemVerticalSpacingF(void) const; + /** * Sets the checked status of the specified item of %IconListView. * @@ -435,6 +538,7 @@ public: * @exception E_OUT_OF_RANGE The specified @c index is out of range. * @remarks This method can only be used when the style of the list allows selection. * @remarks The method only changes the state of the list item. %IconListView needs to be redrawn to reflect the change on the screen. + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the IconListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ result SetItemChecked(int index, bool check); @@ -447,6 +551,7 @@ public: * else @c false * @param[in] index The index of the item * @remarks This method can only be used when the style of the list allows selection. + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the IconListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ bool IsItemChecked(int index) const; @@ -462,6 +567,18 @@ public: */ int GetItemIndexFromPosition(int x, int y) const; + /* + * Gets the index of the item at the specified position. + * + * @since 2.1 + * + * @return The index of the item, @n + * else @c -1 when there is no list item at the specified position or when the %IconListView instance is invalid + * @param[in] x The x position of a point + * @param[in] y The y position of a point + */ + int GetItemIndexFromPosition(float x, float y) const; + /** * Gets the index of the item at the specified position. * @@ -473,6 +590,17 @@ public: */ int GetItemIndexFromPosition(const Tizen::Graphics::Point& position) const; + /* + * Gets the index of the item at the specified position. + * + * @since 2.1 + * + * @return The index of the item, @n + * else @c -1 if there is no list item at the specified position or when the %IconListView instance is invalid + * @param[in] position The position of a point + */ + int GetItemIndexFromPosition(const Tizen::Graphics::FloatPoint& position) const; + /** * Sets the horizontal alignment of the text of an item. * @@ -600,16 +728,38 @@ public: result SetItemTextSize(int size); /** + * Sets the size of the text of the %IconListView control. + * + * @since 2.1 + * + * @return An error code + * @param[in] size The size of the text + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + * @remarks If the specified @c size is less than the minimum size, this method fails. The minimum font size is @c 6 on devices of high screen density. + */ + result SetItemTextSize(float size); + + /** * Gets the size of the text of the %IconListView control. * * @since 2.0 * - * @return The size of the text of the %IconListView control, @n - * else @c -1 if the instance is invalid + * @return The size of the text of the %IconListView control, else @c -1 if the instance is invalid */ int GetItemTextSize(void) const; /** + * Gets the size of the text of the %IconListView control. + * + * @since 2.1 + * + * @return The size of the text of the %IconListView control, else @c -1.0f if the instance is invalid + */ + float GetItemTextSizeF(void) const; + + /** * Sets the position of the checkbox of the %IconListView control. * * @since 2.0 @@ -672,9 +822,38 @@ public: * @exception E_SUCCESS The method is successful. * @exception E_SYSTEM A system error has occurred. * @exception E_OUT_OF_RANGE The specified @c index is out of range. + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the IconListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ result ScrollToItem(int index); + /* + * Scrolls the list contents with the amount of pixels. + * + * @since 2.0 + * + * @return An error code + * @param[in] pixel The amount of pixels to scroll + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c pixel is out of range. + * @remarks If you call ScrollByPixel() with negative @c pixel when position of scroll is already top of contents then it will return E_OUT_OF_RANGE. + * Likewise, in case of positive @c pixel on the bottom position of scroll it will also return E_OUT_OF_RANGE. + */ + result ScrollByPixel(int pixel); + + /* + * Scrolls the list contents with the amount of pixels. + * + * @since 2.1 + * + * @return An error code + * @param[in] pixel The amount of pixels to scroll + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c pixel is out of range. + * @remarks If you call ScrollByPixel() with negative @c pixel when position of scroll is already top of contents then it will return E_OUT_OF_RANGE. + * Likewise, in case of positive @c pixel on the bottom position of scroll it will also return E_OUT_OF_RANGE. + */ + result ScrollByPixel(float pixel); + /** * Refreshes the specified item of %IconListView. * @@ -716,6 +895,19 @@ public: */ result GetItemBitmapSize(int& width, int& height) const; + /* + * Gets the size of bitmap of the item. + * + * @since 2.1 + * + * @return An error code + * @param[out] width The width of bitmap of the item + * @param[out] height The height of bitmap of the item + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_STATE This instance is in an invalid state. + */ + result GetItemBitmapSize(float& width, float& height) const; + /** * Gets the size of bitmap of the item. * @@ -726,6 +918,16 @@ public: */ Tizen::Graphics::Dimension GetItemBitmapSize(void) const; + /* + * Gets the size of bitmap of the item. + * + * @since 2.1 + * + * @return The size of bitmap of the item, @n + * else (-1, -1) if the instance is invalid + */ + Tizen::Graphics::FloatDimension GetItemBitmapSizeF(void) const; + /** * Gets the size of the item. * @@ -739,6 +941,19 @@ public: */ result GetItemSize(int& width, int& height) const; + /* + * Gets the size of the item. + * + * @since 2.1 + * + * @return An error code + * @param[out] width The width of the item + * @param[out] height The height of the item + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_STATE This instance is in an invalid state. + */ + result GetItemSize(float& width, float& height) const; + /** * Gets the size of the item. * @@ -749,6 +964,16 @@ public: */ Tizen::Graphics::Dimension GetItemSize(void) const; + /* + * Gets the size of the item. + * + * @since 2.1 + * + * @return The size of the item, @n + * else (-1, -1) if the instance is invalid + */ + Tizen::Graphics::FloatDimension GetItemSizeF(void) const; + /** * Sets the number of item lines to be scrolled for the magnetic scroll of %IconListView. * @@ -899,24 +1124,43 @@ public: */ bool IsInReorderingMode(void) const; + /** + * Sets the scroll input handling mode. + * + * @since 2.1 + * + * @param[in] mode The scroll input handling mode + * @see GetScrollInputMode() + */ + void SetScrollInputMode(ScrollInputMode mode); + + /** + * Gets the scroll input handling mode. + * + * @since 2.1 + * + * @return The scroll input handling mode + * @see SetScrollInputMode() + */ + ScrollInputMode GetScrollInputMode(void) const; + public: friend class _IconListViewImpl; private: - // - // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects. - // - // @since 2.0 - // + /** + * The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects. + * + * @since 2.0 + */ IconListView(const IconListView& rhs); - // - // The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects. - // - // @since 2.0 - // + /** + * The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects. + * + * @since 2.0 + */ IconListView& operator =(const IconListView& rhs); - }; // IconListView }}} // Tizen::Ui::Controls diff --git a/inc/FUiCtrlIconListViewItem.h b/inc/FUiCtrlIconListViewItem.h index 01d13f2..bf308de 100644 --- a/inc/FUiCtrlIconListViewItem.h +++ b/inc/FUiCtrlIconListViewItem.h @@ -2,14 +2,14 @@ // Open Service Platform // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. // -// Licensed under the Flora License, Version 1.0 (the License); +// Licensed under the Apache License, Version 2.0 (the License); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an AS IS BASIS, +// distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/inc/FUiCtrlIconListViewTypes.h b/inc/FUiCtrlIconListViewTypes.h index daf5405..b13004a 100644 --- a/inc/FUiCtrlIconListViewTypes.h +++ b/inc/FUiCtrlIconListViewTypes.h @@ -2,14 +2,14 @@ // Open Service Platform // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. // -// Licensed under the Flora License, Version 1.0 (the License); +// Licensed under the Apache License, Version 2.0 (the License); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an AS IS BASIS, +// distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/inc/FUiCtrlInputTypes.h b/inc/FUiCtrlInputTypes.h old mode 100644 new mode 100755 diff --git a/inc/FUiCtrlKeypad.h b/inc/FUiCtrlKeypad.h old mode 100644 new mode 100755 index 347c9cc..9f6376c --- a/inc/FUiCtrlKeypad.h +++ b/inc/FUiCtrlKeypad.h @@ -14,18 +14,20 @@ // See the License for the specific language governing permissions and // limitations under the License. // + /** - * @file FUiCtrlKeypad.h - * @brief This is the header file for the %Keypad class. - * - * This header file contains the declarations of the %Keypad class. - */ +* @file FUiCtrlKeypad.h +* @brief This is the header file for the %Keypad class. +* +* This header file contains the declarations of the %Keypad class. +*/ #ifndef _FUI_CTRL_KEYPAD_H_ #define _FUI_CTRL_KEYPAD_H_ #include #include +#include #include #include @@ -33,38 +35,38 @@ namespace Tizen { namespace Ui { namespace Controls { /** - * @if OSPDEPREC - * @enum KeypadInputModeCategory - * - * Defines the keypad input mode. - * - * @brief [Deprecated] - * @deprecated We no longer provide a method to specify the list of styles which the user can set the keypad to, @n - * or the current mode to initially set the keypad to, from this list. It is recommended to use the styles offered KeypadStyle enumeration instead. - * @since 2.0 - * @endif - */ +* @if OSPDEPREC +* @enum KeypadInputModeCategory +* +* Defines the keypad input mode. +* +* @brief [Deprecated] +* @deprecated We no longer provide a method to specify the list of styles which the user can set the keypad to, @n +* or the current mode to initially set the keypad to, from this list. It is recommended to use the styles offered KeypadStyle enumeration instead. +* @since 2.0 +* @endif +*/ enum KeypadInputModeCategory { KEYPAD_MODE_ALPHA = 0x0001, /**< @if OSPDEPREC The alphabetic input mode @endif */ - KEYPAD_MODE_PREDICTIVE = 0x0002, /**< @if OSPDEPREC The predictive input mode @endif*/ + KEYPAD_MODE_PREDICTIVE = 0x0002, /**< @if OSPDEPREC The predictive input mode @endif */ KEYPAD_MODE_NUMERIC = 0x0004, /**< @if OSPDEPREC The numeric input mode @endif */ KEYPAD_MODE_SYMBOL = 0x0008 /**< @if OSPDEPREC The symbolic input mode @endif */ }; /** - * @class Keypad - * @brief This class displays a keypad on top of the screen. - * - * @since 2.0 - * - * The %Keypad class displays the full screen keypad without using an EditField or EditArea. - * - * For more information on the class features, see Keypad. - * - * The following example demonstrates how to use the %Keypad class. - * - * @code +* @class Keypad +* @brief This class displays a keypad on top of the screen. +* +* @since 2.0 +* +* The %Keypad class displays the full screen keypad without using an EditField or EditArea. +* +* For more information on the class features, see Keypad. +* +* The following example demonstrates how to use the %Keypad class. +* +* @code // Sample code for KeypadSample.h #include @@ -155,7 +157,7 @@ KeypadSample::OnTerminating(void) result r = E_SUCCESS; // Deallocates the keypad - delete __pKeypad; + __pKeypad->Destroy(); return r; } @@ -189,8 +191,8 @@ KeypadSample::OnTextValueChangeCanceled(const Tizen::Ui::Control& source) { // .... } - * @endcode - */ +* @endcode +*/ class _OSP_EXPORT_ Keypad : public Tizen::Ui::Window @@ -252,26 +254,26 @@ public: result Construct(KeypadStyle keypadStyle, KeypadInputModeCategory category, int limitLength = 100); /** - * Checks whether the text prediction is enabled. - * - * @since 2.0 - * @return @c true if the text prediction is enabled, @n - * else @c false - * @see SetTextPredictionEnabled() - */ + * Checks whether the text prediction is enabled. + * + * @since 2.0 + * @return @c true if the text prediction is enabled, @n + * else @c false + * @see SetTextPredictionEnabled() + */ bool IsTextPredictionEnabled(void) const; /** - * Enables or disables the text prediction. - * - * @since 2.0 - * @param[in] enable Set to @c true to enable the text prediction, @n - * else @c false - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_UNSUPPORTED_OPERATION This operation is not supported. - * @see IsTextPredictionEnabled() - */ + * Enables or disables the text prediction. + * + * @since 2.0 + * @param[in] enable Set to @c true to enable the text prediction, @n + * else @c false + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_UNSUPPORTED_OPERATION This operation is not supported. + * @see IsTextPredictionEnabled() + */ result SetTextPredictionEnabled(bool enable); /** @@ -340,6 +342,27 @@ public: */ void SetText(Tizen::Base::String text); + /** + * Sets the text filter. + * + * @since 2.1 + * + * @param[in] pFilter The filter + * @remarks The %Keypad control checks with the registered filter to decide whether the user-entered text should be replaced. + */ + void SetEditTextFilter(IEditTextFilter* pFilter); + + /** + * Sends opaque command to the input method. + * + * @since 2.1 + * + * @param[in] command The opaque command + * @remarks This method can be used to provide domain-specific features that are only known between certain input methods and their clients. + * This method may not work, depending on the active Input Method. + */ + void SendOpaqueCommand (const Tizen::Base::String& command); + protected: friend class _KeypadImpl; diff --git a/inc/FUiCtrlLabel.h b/inc/FUiCtrlLabel.h index 160daa6..6c6f50d 100644 --- a/inc/FUiCtrlLabel.h +++ b/inc/FUiCtrlLabel.h @@ -70,9 +70,9 @@ public: private: Tizen::Ui::Controls::Label *__pLabel; }; - * @endcode - * - * @code +* @endcode +* +* @code // Sample code for LabelSample.cpp #include @@ -144,6 +144,25 @@ public: */ result Construct(const Tizen::Graphics::Rectangle& rect, const Tizen::Base::String& text); + /** + * Initializes this instance of %Label with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect An instance of the Rectangle class @n + * This instance represents the x and y coordinates of the top-left corner of the created window along with + * the width and height of the window. + * @param[in] text The text for this label instance + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + * @remarks A control is fully usable only after it has been added to a container, therefore some methods may fail if used earlier. + * To display text in multi-lines or to denote the end of line use '\\n'. @n + * The size of the control must be within the range defined by the minimum size and the maximum size. + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect, const Tizen::Base::String& text); + public: /** * Sets the specified text for the %Label control. @@ -222,12 +241,12 @@ public: void SetBackgroundColor(const Tizen::Graphics::Color& color); /** - * Gets the background color of the %Label control. - * - * @since 2.0 - * - * @return The background color - */ + * Gets the background color of the %Label control. + * + * @since 2.0 + * + * @return The background color + */ Tizen::Graphics::Color GetBackgroundColor(void) const; /** @@ -263,6 +282,20 @@ public: void SetTextConfig(int size, LabelTextStyle style); /** + * Sets the text attributes of the %Label control. + * + * @since 2.1 + * + * @param[in] size The size of the text + * @param[in] style The style of the text + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @remarks The specific error code can be accessed using the GetLastResult() method. @n + * If @c size is less than the minimum size, this method fails. The minimum font size is 6 on devices of high screen density. + */ + void SetTextConfig(float size, LabelTextStyle style); + + /** * Gets the text size of the %Label control. * * @since 2.0 @@ -273,6 +306,16 @@ public: int GetTextSize(void) const; /** + * Gets the text size of the %Label control. + * + * @since 2.1 + * + * @return The size of the text, @n + * else @c -1.0f if an error occurs + */ + float GetTextSizeF(void) const; + + /** * Gets the text style of the %Label control. * * @since 2.0 @@ -293,12 +336,28 @@ public: * @exception E_SUCCESS The method is successful. * @exception E_INVALID_ARG The specified input parameter is invalid. @n * The specified @c size must be greater than @c 0. - - * @see GetTopMargin(), GetLeftMargin() + * @see GetTopMargin() + * @see GetLeftMargin() */ result SetMargin(int topMargin, int leftMargin); /** + * Sets the top and left margins. + * + * @since 2.1 + * + * @return An error code + * @param[in] topMargin The top margin. + * @param[in] leftMargin The left margin. + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified input parameter is invalid. @n + * The specified @c size must be greater than @c 0. + * @see GetTopMargin() + * @see GetLeftMargin() + */ + result SetMargin(float topMargin, float leftMargin); + + /** * Gets the top margin. * * @since 2.0 @@ -309,6 +368,17 @@ public: */ int GetTopMargin(void) const; + /** + * Gets the top margin. + * + * @since 2.1 + * + * @return The size of the top margin, @n + * else @c -1.0f if an error occurs + * @see SetMargin() + */ + float GetTopMarginF(void) const; + /** * Gets the left margin. * @@ -320,6 +390,17 @@ public: */ int GetLeftMargin(void) const; + /** + * Gets the left margin. + * + * @since 2.1 + * + * @return The size of the left margin, @n + * else @c -1.0f if an error occurs. + * @see SetMargin() + */ + float GetLeftMarginF(void) const; + protected: friend class _LabelImpl; diff --git a/inc/FUiCtrlLabelTypes.h b/inc/FUiCtrlLabelTypes.h index ef33afe..cafbe46 100644 --- a/inc/FUiCtrlLabelTypes.h +++ b/inc/FUiCtrlLabelTypes.h @@ -15,18 +15,18 @@ // limitations under the License. // /** - * @file FUiCtrlLabelTypes.h - * @brief This is the header file for the LabelTextStyle enumeration. - * - * This header file contains the declarations of the LabelTextStyle enumeration. - */ +* @file FUiCtrlLabelTypes.h +* @brief This is the header file for the LabelTextStyle enumeration. +* +* This header file contains the declarations of the LabelTextStyle enumeration. +*/ #ifndef _FUI_CTRL_LABEL_ENUM_H_ #define _FUI_CTRL_LABEL_ENUM_H_ namespace Tizen { namespace Ui { namespace Controls { - /** +/** * @enum LabelTextStyle * * Defines the text styles of the label. @@ -40,7 +40,7 @@ enum LabelTextStyle LABEL_TEXT_STYLE_ITALIC, /**< The italic text style */ }; - /** +/** * @enum LabelContentHint * * Defines the content update type. diff --git a/inc/FUiCtrlList.h b/inc/FUiCtrlList.h index 7aeb2e4..1f9aa62 100644 --- a/inc/FUiCtrlList.h +++ b/inc/FUiCtrlList.h @@ -81,7 +81,7 @@ namespace Tizen { namespace Ui { namespace Controls * This is a simple UI application which uses a list control. * * - * @code +* @code //Sample code for ListSample.h #include diff --git a/inc/FUiCtrlListItemBase.h b/inc/FUiCtrlListItemBase.h index 2790b09..8e07fe1 100644 --- a/inc/FUiCtrlListItemBase.h +++ b/inc/FUiCtrlListItemBase.h @@ -168,6 +168,19 @@ public: */ result SetProgressMargins(int leftMargin, int rightMargin); + /* + * Sets the margin of the progress bar. + * + * @since 2.1 + * + * @return An error code + * @param[in] leftMargin The left margin of the progress bar + * @param[in] rightMargin The right margin of the progress bar + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + */ + result SetProgressMargins(float leftMargin, float rightMargin); + /** * Gets the width of the annex area. * @@ -179,6 +192,17 @@ public: */ static int GetAnnexWidth(ListAnnexStyle style); + /* + * Gets the width of the annex area. + * + * @since 2.1 + * + * @return The width of the annex + * @param[in] style The style of the annex + * @remarks The width of the annex area is different among annex styles. + */ + static float GetAnnexWidthF(ListAnnexStyle style); + protected: friend class _ListItemBaseImpl; @@ -204,6 +228,20 @@ protected: result Construct(const Tizen::Graphics::Dimension& itemSize, ListAnnexStyle style); // + // Initializes this instance of ListItem with the specified parameter. + // + // @since 2.1 + // + // @return An error code + // + // @param[in] itemSize The size of the item + // @param[in] style The style of Annex + // @exception E_SUCCESS The method is successful. + // @exception E_SYSTEM A system error has occurred. + // + result Construct(const Tizen::Graphics::FloatDimension& itemSize, ListAnnexStyle style); + + // // The following methods are reserved and may change its name at any time without prior notice. // virtual void ListItemBase_Reserved1(void) {} diff --git a/inc/FUiCtrlListTypes.h b/inc/FUiCtrlListTypes.h index 617b945..b2240e9 100644 --- a/inc/FUiCtrlListTypes.h +++ b/inc/FUiCtrlListTypes.h @@ -106,7 +106,7 @@ enum ListItemText }; /** - * @if OSPDEPREC + * if OSPDEPREC * @enum FastScrollIndexDigit * * Defines the number of digits or characters of the fast scroll index. diff --git a/inc/FUiCtrlListView.h b/inc/FUiCtrlListView.h old mode 100644 new mode 100755 index e8000e1..deb63be --- a/inc/FUiCtrlListView.h +++ b/inc/FUiCtrlListView.h @@ -27,14 +27,18 @@ #include #include +#include #include #include #include #include #include #include +#include #include +#include #include +#include #include namespace Tizen { namespace Ui { namespace Controls @@ -345,6 +349,25 @@ public: */ result Construct(const Tizen::Graphics::Rectangle& rect, bool itemDivider, ListScrollStyle scrollStyle); + /* + * Initializes this instance of %ListView with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect An instance of the Graphics::Rectangle class @n + * This instance represents the x and y coordinates of the left top corner of the created %ListView along with the width + * and height. + * @param[in] itemDivider Set to @c true to display an item divider, @n + * else @c false + * @param[in] scrollStyle Set to scroll style + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. @n + * Either the @c rect.width or @c rect.height parameter has a negative value. + * @exception E_SYSTEM A system error has occurred. + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect, bool itemDivider, ListScrollStyle scrollStyle); + /** * Sets the item provider that creates and deletes items for the list. * @@ -359,6 +382,19 @@ public: */ result SetItemProvider(IListViewItemProvider& provider); + /* + * Sets the item provider that creates and deletes items for the list. + * + * @since 2.1 + * + * @return An error code + * @param[in] provider The item provider to create and delete items + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @remarks If an item provider is not set for the list, the list does not work. @n + * The specified @c provider should be allocated in heap memory. + */ + result SetItemProvider(IListViewItemProviderF& provider); /** * Adds a listener instance that listens to state changes of list view items. @n @@ -412,6 +448,18 @@ public: */ void AddScrollEventListener(IScrollEventListener& listener); + /* + * Adds a listener instance that listens to state changes of a scroll event. @n + * The added listener can listen to events on the specified event dispatcher's context when they are fired. + * + * @since 2.1 + * + * @param[in] listener The event listener to add + * @see IScrollEventListener::OnScrollEndReached() + * @see RemoveScrollEventListener() + */ + void AddScrollEventListener(IScrollEventListenerF& listener); + /** * Removes a listener instance that listens to state changes of a scroll event. @n * The removed listener cannot listen to events when they are fired. @@ -424,6 +472,18 @@ public: */ void RemoveScrollEventListener(IScrollEventListener& listener); + /* + * Removes a listener instance that listens to state changes of a scroll event. @n + * The removed listener cannot listen to events when they are fired. + * + * @since 2.1 + * + * @param[in] listener The event listener to remove + * @see IScrollEventListener::OnScrollEndReached() + * @see AddScrollEventListener() + */ + void RemoveScrollEventListener(IScrollEventListenerF& listener); + /** * Adds a link event listener. * @@ -504,6 +564,7 @@ public: * @exception E_SUCCESS The method is successful. * @exception E_OUT_OF_RANGE The specified input parameter is invalid. * @exception E_SYSTEM A system error has occurred. + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ result ScrollToItem(int index); @@ -534,6 +595,7 @@ public: * @exception E_OUT_OF_RANGE A specified input parameter is invalid. * @exception E_INVALID_OPERATION The item is disabled. * @exception E_SYSTEM A system error has occurred. + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ result SetItemChecked(int index, bool check); @@ -545,6 +607,7 @@ public: * @return @c true if the item is checked, @n * else @c false * @param[in] index The item index + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ bool IsItemChecked(int index) const; @@ -559,6 +622,7 @@ public: * @exception E_SUCCESS The method is successful. * @exception E_OUT_OF_RANGE A specified input parameter is invalid. * @exception E_SYSTEM A system error has occurred. + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). * */ result SetItemEnabled(int index, bool enable); @@ -571,6 +635,7 @@ public: * @return @c true if the item is enabled, @n * else @c false * @param[in] index The item index + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ bool IsItemEnabled(int index) const; @@ -594,7 +659,7 @@ public: * @exception E_OUT_OF_RANGE The specified input parameter is invalid. * @exception E_SYSTEM A system error has occurred. * @remarks If no description text is set to the item of the specified index, this method does not show the description text. - * + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ result ShowItemDescriptionText(int index); @@ -608,6 +673,7 @@ public: * @exception E_SUCCESS The method is successful. * @exception E_OUT_OF_RANGE The specified input parameter is invalid. * @exception E_SYSTEM A system error has occurred. + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ result HideItemDescriptionText(int index); @@ -670,9 +736,24 @@ public: * @param[in] x The X position of the point * @param[in] y The Y position of the point * @remarks The method returns -1 when there is no list item at the specified position. + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ int GetItemIndexFromPosition(int x, int y) const; + /* + * Gets the index of the item at the specified position. + * + * @since 2.1 + * + * @return The index of the item, @n + * else @c -1 if there is no list item at the specified position + * @param[in] x The X position of the point + * @param[in] y The Y position of the point + * @remarks The method returns -1 when there is no list item at the specified position. + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ + int GetItemIndexFromPosition(float x, float y) const; + /** * Gets the index of the item at the specified position. * @@ -681,9 +762,22 @@ public: * @return The index of the item * @param[in] position The position of the point, @n * else @c -1 if there is no list item at the specified position + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ int GetItemIndexFromPosition(const Tizen::Graphics::Point& position) const; + /* + * Gets the index of the item at the specified position. + * + * @since 2.1 + * + * @return The index of the item + * @param[in] position The position of the point, @n + * else @c -1 if there is no list item at the specified position + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ + int GetItemIndexFromPosition(const Tizen::Graphics::FloatPoint& position) const; + /** * Gets the index of the item and ID of the element at the specified position. * @@ -698,10 +792,30 @@ public: * @exception E_SYSTEM A system error has occurred, or @n * there is no item at the specified position. * @remarks The specified @c itemIndex is -1 when there is no list item at the specified position. - * @remarks The specified @c elementId is -1 when there is no element at the specified position. + * @remarks The specified @c elementId is -1 when there is no element at the specified position. + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ result GetItemIndexFromPosition(int x, int y, int& itemIndex, int& elementId) const; + /* + * Gets the index of the item and ID of the element at the specified position. + * + * @since 2.1 + * + * @return An error code + * @param[in] x The X position of the item + * @param[in] y The Y position of the item + * @param[out] itemIndex The index of the item + * @param[out] elementId The ID of the element + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred, or @n + * there is no item at the specified position. + * @remarks The specified @c itemIndex is -1 when there is no list item at the specified position. + * @remarks The specified @c elementId is -1 when there is no element at the specified position. + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ + result GetItemIndexFromPosition(float x, float y, int& itemIndex, int& elementId) const; + /** * Gets the index of the item and ID of the element at the specified position. * @@ -716,9 +830,28 @@ public: * there is no item at the specified position. * @remarks The specified @c itemIndex is -1 when there is no list item at the specified position. * @remarks The specified @c elementId is -1 when there is no element at the specified position. + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). */ result GetItemIndexFromPosition(const Tizen::Graphics::Point& position, int& itemIndex, int& elementId) const; + /* + * Gets the index of the item and ID of the element at the specified position. + * + * @since 2.1 + * + * @return An error code + * @param[in] position The position of the point + * @param[out] itemIndex The index of the item + * @param[out] elementId The ID of the element + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred, or @n + * there is no item at the specified position. + * @remarks The specified @c itemIndex is -1 when there is no list item at the specified position. + * @remarks The specified @c elementId is -1 when there is no element at the specified position. + * @remarks This method should be called only after list items are created. If this method needs to be called early in the lifecycle of the ListView, then UpdateList() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ + result GetItemIndexFromPosition(const Tizen::Graphics::FloatPoint& position, int& itemIndex, int& elementId) const; + /** * Sets the color of a division line between items. * @@ -865,6 +998,27 @@ public: */ bool IsInReorderingMode(void) const; + /** + * Sets the scroll input handling mode. + * + * @since 2.1 + * + * @param[in] mode The scroll input handling mode + * @see GetScrollInputMode() + */ + void SetScrollInputMode(ScrollInputMode mode); + + + /** + * Gets the scroll input handling mode. + * + * @since 2.1 + * + * @return The scroll input handling mode + * @see SetScrollInputMode() + */ + ScrollInputMode GetScrollInputMode(void) const; + protected: friend class _ListViewImpl; diff --git a/inc/FUiCtrlListViewTypes.h b/inc/FUiCtrlListViewTypes.h index 9c51fe5..424013b 100644 --- a/inc/FUiCtrlListViewTypes.h +++ b/inc/FUiCtrlListViewTypes.h @@ -40,7 +40,8 @@ enum ListAnnexStyle LIST_ANNEX_STYLE_MARK, /**< The mark style annex for multiple selection */ LIST_ANNEX_STYLE_ONOFF_SLIDING, /**< The slider style On/Off */ LIST_ANNEX_STYLE_DETAILED, /**< Detailed style for further interaction */ - LIST_ANNEX_STYLE_RADIO /**< The radio style for simple look */ + LIST_ANNEX_STYLE_RADIO, /**< The radio style for simple look */ + LIST_ANNEX_STYLE_ONOFF_SLIDING_WITH_DIVIDER /**< The slider style On/Off with divider @b Since: @b 2.1 */ }; /** @@ -52,9 +53,9 @@ enum ListAnnexStyle */ enum ListItemDrawingStatus { - LIST_ITEM_DRAWING_STATUS_NORMAL = 0, /**< The normal drawing state */ - LIST_ITEM_DRAWING_STATUS_PRESSED, /**< The pressed drawing state */ - LIST_ITEM_DRAWING_STATUS_HIGHLIGHTED /**< The highlighted drawing state */ + LIST_ITEM_DRAWING_STATUS_NORMAL = 0, /**< The normal drawing state */ + LIST_ITEM_DRAWING_STATUS_PRESSED, /**< The pressed drawing state */ + LIST_ITEM_DRAWING_STATUS_HIGHLIGHTED /**< The highlighted drawing state */ }; /** @@ -66,9 +67,9 @@ enum ListItemDrawingStatus */ enum ListRefreshType { - LIST_REFRESH_TYPE_ITEM_ADD = 0, /**< The add type */ - LIST_REFRESH_TYPE_ITEM_REMOVE, /**< The remove type */ - LIST_REFRESH_TYPE_ITEM_MODIFY /**< The modify type */ + LIST_REFRESH_TYPE_ITEM_ADD = 0, /**< The add type */ + LIST_REFRESH_TYPE_ITEM_REMOVE, /**< The remove type */ + LIST_REFRESH_TYPE_ITEM_MODIFY /**< The modify type */ }; /** @@ -80,11 +81,11 @@ enum ListRefreshType */ enum ListItemStatus { - LIST_ITEM_STATUS_SELECTED = 0, /**< The selected item state */ - LIST_ITEM_STATUS_HIGHLIGHTED, /**< The highlighted item state */ - LIST_ITEM_STATUS_CHECKED, /**< The check item state */ - LIST_ITEM_STATUS_UNCHECKED, /**< The uncheck item state */ - LIST_ITEM_STATUS_MORE /**< The more item state */ + LIST_ITEM_STATUS_SELECTED = 0, /**< The selected item state */ + LIST_ITEM_STATUS_HIGHLIGHTED, /**< The highlighted item state */ + LIST_ITEM_STATUS_CHECKED, /**< The check item state */ + LIST_ITEM_STATUS_UNCHECKED, /**< The uncheck item state */ + LIST_ITEM_STATUS_MORE /**< The more item state */ }; /** @@ -96,8 +97,8 @@ enum ListItemStatus */ enum ListContextItemStatus { - LIST_CONTEXT_ITEM_STATUS_SELECTED = 0, /**< The selected context item state */ - LIST_CONTEXT_ITEM_STATUS_HIGHLIGHTED /**< The highlighted context item state */ + LIST_CONTEXT_ITEM_STATUS_SELECTED = 0, /**< The selected context item state */ + LIST_CONTEXT_ITEM_STATUS_HIGHLIGHTED /**< The highlighted context item state */ }; /** @@ -109,8 +110,8 @@ enum ListContextItemStatus */ enum SweepDirection { - SWEEP_DIRECTION_LEFT = 0, /**< The left direction */ - SWEEP_DIRECTION_RIGHT /**< The right direction */ + SWEEP_DIRECTION_LEFT = 0, /**< The left direction */ + SWEEP_DIRECTION_RIGHT /**< The right direction */ }; /** @@ -122,8 +123,8 @@ enum SweepDirection */ enum ListScrollItemAlignment { - LIST_SCROLL_ITEM_ALIGNMENT_TOP = 0, /**< The item is aligned at the top of the ListView at item scroll*/ - LIST_SCROLL_ITEM_ALIGNMENT_BOTTOM /**< The item is aligned at the bottom of the ListView at item scroll */ + LIST_SCROLL_ITEM_ALIGNMENT_TOP = 0, /**< The item is aligned at the top of the ListView at item scroll*/ + LIST_SCROLL_ITEM_ALIGNMENT_BOTTOM /**< The item is aligned at the bottom of the ListView at item scroll */ }; /** @@ -135,11 +136,11 @@ enum ListScrollItemAlignment */ enum ListScrollStyle { - SCROLL_STYLE_FADE_OUT = 0, /**< The fade-out scroll style */ - SCROLL_STYLE_FIXED, /**< The fixed scroll style */ - SCROLL_STYLE_FAST_SCROLL, /**< The fast scroll style */ - SCROLL_STYLE_JUMP_TO_TOP, /**< The jump to top scroll style */ - SCROLL_STYLE_THUMB /**< The thumb scroll style */ + SCROLL_STYLE_FADE_OUT = 0, /**< The fade-out scroll style */ + SCROLL_STYLE_FIXED, /**< The fixed scroll style */ + SCROLL_STYLE_FAST_SCROLL, /**< The fast scroll style */ + SCROLL_STYLE_JUMP_TO_TOP, /**< The jump to top scroll style */ + SCROLL_STYLE_THUMB /**< The thumb scroll style */ }; }}} // Tizen::Ui::Controls diff --git a/inc/FUiCtrlMessageBox.h b/inc/FUiCtrlMessageBox.h old mode 100644 new mode 100755 index a4aa470..8a726bd --- a/inc/FUiCtrlMessageBox.h +++ b/inc/FUiCtrlMessageBox.h @@ -16,11 +16,11 @@ // /** - * @file FUiCtrlMessageBox.h - * @brief This is the header file for the %MessageBox class. - * - * This header file contains the declarations of the %MessageBox class. - */ +* @file FUiCtrlMessageBox.h +* @brief This is the header file for the %MessageBox class. +* +* This header file contains the declarations of the %MessageBox class. +*/ #ifndef _FUI_CTRL_MESSAGE_BOX_H_ #define _FUI_CTRL_MESSAGE_BOX_H_ @@ -75,20 +75,20 @@ enum MessageBoxModalResult /** - * @class MessageBox - * @brief This class implements a message box. - * - * @since 2.0 - * - * The %MessageBox class displays a confirmation message when the user is asked to confirm an action, or a warning message when the - * user wants to continue a potentially dangerous action. It can also display information, question, alarm, and lock messages, or - * the user selections. - * - * For more information on the class features, see Popup and MessageBox. - * - * The following example demonstrates how to use the %MessageBox class. - * - * @code +* @class MessageBox +* @brief This class implements a message box. +* +* @since 2.0 +* +* The %MessageBox class displays a confirmation message when the user is asked to confirm an action, or a warning message when the +* user wants to continue a potentially dangerous action. It can also display information, question, alarm, and lock messages, or +* the user selections. +* +* For more information on the class features, see Popup and MessageBox. +* +* The following example demonstrates how to use the %MessageBox class. +* +* @code // Sample code for MessageBoxSample.h #include @@ -178,8 +178,8 @@ MessageBoxSample::OnActionPerformed(const Control& source, int actionId) break; } } - * @endcode - */ +* @endcode +*/ class _OSP_EXPORT_ MessageBox : public Tizen::Ui::Window diff --git a/inc/FUiCtrlOptionMenu.h b/inc/FUiCtrlOptionMenu.h index 80ad9a4..15d091f 100644 --- a/inc/FUiCtrlOptionMenu.h +++ b/inc/FUiCtrlOptionMenu.h @@ -14,6 +14,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // + /** * @file FUiCtrlOptionMenu.h * @brief This is the header file for the %OptionMenu class. diff --git a/inc/FUiCtrlOverlayPanel.h b/inc/FUiCtrlOverlayPanel.h old mode 100644 new mode 100755 index 316a0b2..c5d0455 --- a/inc/FUiCtrlOverlayPanel.h +++ b/inc/FUiCtrlOverlayPanel.h @@ -65,25 +65,24 @@ public: * Defines the various rotation options. * * @brief [Deprecated] - * @deprecated This enumerator is deprecated. Instead of using this class, use the %OverlayRegion class, that supports video playback and camera - * preview. + * @deprecated This enumerator is deprecated. Instead of using this class, use the %OverlayRegion class, that supports video playback and camera preview. * @since 2.0 * @endif */ enum Rotation { - ROTATION_NONE, /**< @if OSPDEPREC No rotation @endif */ - ROTATION_90, /**< @if OSPDEPREC The 90 degree rotation @endif */ - ROTATION_180, /**< @if OSPDEPREC The 180 degree rotation @endif */ - ROTATION_270, /**< @if OSPDEPREC The 270 degree rotation @endif */ - ROTATION_NONE_LR, /**< @if OSPDEPREC The horizontal mirroring @endif */ - ROTATION_NONE_UD, /**< @if OSPDEPREC The vertical mirroring @endif */ - ROTATION_90_LR, /**< @if OSPDEPREC The 90 degree rotation with horizontal mirroring @endif */ - ROTATION_90_UD, /**< @if OSPDEPREC The 90 degree rotation with vertical mirroring @endif */ - ROTATION_180_LR, /**< @if OSPDEPREC The 180 degree rotation with horizontal mirroring @endif */ - ROTATION_180_UD, /**< @if OSPDEPREC The 180 degree rotation with vertical mirroring @endif */ - ROTATION_270_LR, /**< @if OSPDEPREC The 270 degree rotation with horizontal mirroring @endif */ - ROTATION_270_UD, /**< @if OSPDEPREC The 270 degree rotation with vertical mirroring @endif */ + ROTATION_NONE, /**< @if OSPDEPREC No rotation @endif */ + ROTATION_90, /**< @if OSPDEPREC The 90 degree rotation @endif */ + ROTATION_180, /**< @if OSPDEPREC The 180 degree rotation @endif */ + ROTATION_270, /**< @if OSPDEPREC The 270 degree rotation @endif */ + ROTATION_NONE_LR, /**< @if OSPDEPREC The horizontal mirroring @endif */ + ROTATION_NONE_UD, /**< @if OSPDEPREC The vertical mirroring @endif */ + ROTATION_90_LR, /**< @if OSPDEPREC The 90 degree rotation with horizontal mirroring @endif */ + ROTATION_90_UD, /**< @if OSPDEPREC The 90 degree rotation with vertical mirroring @endif */ + ROTATION_180_LR, /**< @if OSPDEPREC The 180 degree rotation with horizontal mirroring @endif */ + ROTATION_180_UD, /**< @if OSPDEPREC The 180 degree rotation with vertical mirroring @endif */ + ROTATION_270_LR, /**< @if OSPDEPREC The 270 degree rotation with horizontal mirroring @endif */ + ROTATION_270_UD, /**< @if OSPDEPREC The 270 degree rotation with vertical mirroring @endif */ ROTATION_MAX }; @@ -101,7 +100,7 @@ public: enum BufferPixelFormat { /** - * @if OSPDEPREC + * @if OSPDEPREC * The ARGB8888 pixel format * * @since 2.0 @@ -110,20 +109,20 @@ public: BUFFER_PIXEL_FORMAT_ARGB8888, /** - * @if OSPDEPREC + * @if OSPDEPREC * The RGB565 pixel format * * @since 2.0 - * @endif + * @endif */ BUFFER_PIXEL_FORMAT_RGB565, /** - * @if OSPDEPREC + * @if OSPDEPREC * The 8 bit Y plane followed by 8 bit 2 X 2 subsampled U and V planes * * @since 2.0 - * @endif + * @endif */ BUFFER_PIXEL_FORMAT_YCbCr420_PLANAR }; @@ -159,20 +158,37 @@ public: * @deprecated This method is deprecated. Instead of using this class, use the %OverlayRegion class, that supports video playback and camera preview. * @since 2.0 * - * @return An error code - * @param[in] rect The location and size of the %OverlayPanel control @n - * The maximum size is 480 x 800 on a WVGA screen, or 240 x 400 on a WQVGA screen. @n - * The minimum size of this control is 32 x 32 on a WVGA screen. - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG A specified input parameter is invalid. - * @exception E_SYSTEM A system error has occurred. - * @remarks The size of the control must be within the range defined by the minimum size and the maximum size. - * @remarks Do not use %OverlayPanel in combination with %OverlayRegion. If used, %OverlayPanel may not work as expected. - * @see Tizen::Ui::Container + * @return An error code + * @param[in] rect The location and size of the %OverlayPanel control @n + * The maximum size is 480 x 800 on a WVGA screen, or 240 x 400 on a WQVGA screen. @n + * The minimum size of this control is 32 x 32 on a WVGA screen. + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + * @remarks The size of the control must be within the range defined by the minimum size and the maximum size. + * @remarks Do not use %OverlayPanel in combination with %OverlayRegion. If used, %OverlayPanel may not work as expected. + * @see Tizen::Ui::Container * @endif */ result Construct(const Tizen::Graphics::Rectangle& rect); + /* + * Initializes this instance of %OverlayPanel at the specified rectangle. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect The location and size of the %OverlayPanel control @n + * The maximum size is equal to screen size. for example 720 x 1280 on a HD screen, or 480 x 800 on a WVGA screen @n + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + * @remarks Do not use %OverlayPanel in combination with %OverlayRegion. If used, %OverlayPanel may not work as expected. + * @see Tizen::Ui::Container + * @endif + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect); + /** * @if OSPDEPREC * Sets the rotation of the input buffer. @n @@ -196,12 +212,23 @@ public: * @deprecated This method is deprecated. Instead of using this class, use the %OverlayRegion class, that supports video playback and camera preview. * @since 2.0 * - * @param[in] dim The dimension of the window to draw + * @param[in] dim The dimension of the window to draw * * @endif */ void SetRendererSize(Tizen::Graphics::Dimension& dim); + /* + * Changes the size of the displayed renderer. + * + * @since 2.1 + * + * @param[in] dim The dimension of the window to draw + * + * @endif + */ + void SetRendererSize(Tizen::Graphics::FloatDimension& dim); + /** * @if OSPDEPREC * Sets the aspect ratio of the renderer. @@ -210,9 +237,9 @@ public: * @deprecated This method is deprecated. Instead of using this class, use the %OverlayRegion class, that supports video playback and camera preview. * @since 2.0 * - * @param[in] fix Set to @c true if the renderer will display the aspect ratio of the input buffer even if the renderer and input data have - * different aspect ratios, @n - * else @c false + * @param[in] fix Set to @c true if the renderer will display the aspect ratio of the input buffer even if the renderer and input data have + * different aspect ratios, @n + * else @c false * @endif */ void SetRendererAspectRatio(bool fix); @@ -225,14 +252,14 @@ public: * @deprecated This method is deprecated. Instead of using this class, use the %OverlayRegion class, that supports video playback and camera preview. * @since 2.0 * - * @param[in] destDim The dimension of the window to be drawn - * @param[in] srcBuffer The source buffer - * @param[in] srcDim The source dimension - * @param[in] srcFormat The pixel format of buffer data - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG A specified input parameter is invalid. - * @exception E_SYSTEM A system error has occurred. - * @exception E_UNSUPPORTED_FORMAT The specified pixel format is not supported. + * @param[in] destDim The dimension of the window to be drawn + * @param[in] srcBuffer The source buffer + * @param[in] srcDim The source dimension + * @param[in] srcFormat The pixel format of buffer data + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + * @exception E_UNSUPPORTED_FORMAT The specified pixel format is not supported. * @remarks BUFFER_PIXEL_FORMAT_ARGB8888, and BUFFER_PIXEL_FORMAT_RGB565 are not supported. @n * Control::Invalidate() methods must be called to properly display the input buffer. * @@ -240,6 +267,25 @@ public: */ result SetInputBuffer(const Tizen::Graphics::Dimension& destDim, const Tizen::Base::ByteBuffer& srcBuffer, const Tizen::Graphics::Dimension& srcDim, BufferPixelFormat srcFormat); + /* + * Sets the input buffer. + * + * @since 2.1 + * + * @param[in] destDim The dimension of the window to be drawn + * @param[in] srcBuffer The source buffer + * @param[in] srcDim The source dimension + * @param[in] srcFormat The pixel format of buffer data + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + * @exception E_UNSUPPORTED_FORMAT The specified pixel format is not supported. + * @remarks Control::Invalidate() methods must be called to properly display the input buffer. + * + * @endif + */ + result SetInputBuffer(const Tizen::Graphics::FloatDimension& destDim, const Tizen::Base::ByteBuffer& srcBuffer, const Tizen::Graphics::Dimension& srcDim, BufferPixelFormat srcFormat); + /** * @if OSPDEPREC * Gets the information of the background buffer. @@ -249,9 +295,9 @@ public: * @since 2.0 * * @return An error code - * @param[out] info The information of the background buffer - * @exception E_SUCCESS The method is successful. - * @exception E_OPERATION_FAILED The operation has failed. + * @param[out] info The information of the background buffer + * @exception E_SUCCESS The method is successful. + * @exception E_OPERATION_FAILED The operation has failed. * @remarks Currently, this function provides buffer information except the pointer of the RGB color buffer. @n * Therefore, info.pPixels is always assigned @c null. * @endif diff --git a/inc/FUiCtrlOverlayRegion.h b/inc/FUiCtrlOverlayRegion.h index ed8a9b5..0ffcbd3 100644 --- a/inc/FUiCtrlOverlayRegion.h +++ b/inc/FUiCtrlOverlayRegion.h @@ -38,6 +38,7 @@ namespace Tizen { namespace Graphics class Point; class Dimension; class Rectangle; +class FloatRectangle; class BufferInfo; }} // Tizen::Graphics @@ -291,6 +292,18 @@ public: */ Tizen::Graphics::Rectangle GetBounds(void) const; + /* + * Gets the position and size of the overlay region. + * + * @since 2.1 + * + * @return An instance of FloatRectangle that represents the position of the top-left corner, the width, and the height of the overlay region + * @remarks The shape of an overlay region is rectangular, which is defined by the top-left point, and the width or height. The position of the top-left + * point is relative to the top-left corner of the parent form. + * + */ + Tizen::Graphics::FloatRectangle GetBoundsF(void) const; + /** * Gets the position and size of the overlay region. * @@ -306,6 +319,21 @@ public: */ void GetBounds(int& x, int& y, int& width, int& height) const; + /* + * Gets the position and size of the overlay region. + * + * @since 2.1 + * + * @param[out] x The x position of the top-left corner of the overlay region + * @param[out] y The y position of the top-left corner of the overlay region + * @param[out] width The width of the rectangular region + * @param[out] height The height of the rectangular region + * @remarks The shape of an overlay region is rectangular, which is defined by the top-left point, and the width or height. The position of the top-left + * point is relative to the top-left corner of the parent form. + * + */ + void GetBounds(float& x, float& y, float& width, float& height) const; + /** * Sets the input buffer. @n * Due to the hardware accelerated rendering, there are limitations for an input buffer. The input buffer has the same restriction regarding its size as @@ -338,8 +366,7 @@ public: * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. * @exception E_SYSTEM A system error has occurred. * @remarks This method provides the buffer information, except the pointer of a color buffer. Therefore, info.pPixels is always assigned as @c null. - */class Dimension; - + */ result GetBackgroundBufferInfo(Tizen::Graphics::BufferInfo& info) const; /** @@ -379,6 +406,31 @@ public: */ static bool EvaluateBounds(OverlayRegionEvaluationOption option, Tizen::Graphics::Rectangle& rect, bool& modified); + /* + * Evaluates and returns the valid position and size that are closest to the specified bounds. + * + * @since 2.1 + * + * @return @c true if the evaluation process does not meet an error, @n + * else @c false + * @param[in] option The option for evaluating the bounds of the overlay region + * @param[in, out] rect An instance of %FloatRectangle that represents the validated bounds of %OverlayRegion @n + * The width and height of the input rectangle must be greater than @c 0. + * @param[out] modified A boolean flag that indicates whether the specified @c rectangle is modified + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_UNSUPPORTED_OPTION A specified input parameter is not supported. + * @exception E_SYSTEM A system error has occurred. + * @remarks Due to the hardware accelerated rendering, there are limitations for an overlay region. @n + * The hardware capability for an overlay region is checked by using the GetWidthUnit(), GetHeightUnit() and GetMaxCount(). @n + * If the application runs on multi-screen resolutions, the specified bounds may not meet the hardware limitations of the overlay region. In + * such cases, GetOverlayRegionNF() will return E_INVALID_ARG. @n + * To prevent this kind of problem, the application must use the OverlayRegion::EvaluateBoundsF() method to get a validated bounds that can be + * used as the input bounds of the GetOverlayRegionNF() method. + * @remarks The specific error code can be accessed using the GetLastResult() method. + */ + static bool EvaluateBounds(OverlayRegionEvaluationOption option, Tizen::Graphics::FloatRectangle& rect, bool& modified); + /** * Gets the value of the width. @n * Only a multiple of this value can be allowed as the width of an overlay region. @@ -431,7 +483,7 @@ public: * The return value and each item in the list must be deleted by the caller. @n * The format list can vary depending on the device. After checking the supported formats using this API, it's better to use a proper pixel format. @n */ - static Tizen::Base::Collection::IListT< Tizen::Ui::Controls::OverlayRegionBufferPixelFormat >* GetSupportedBufferPixelFormatListN(void); + static Tizen::Base::Collection::IListT< OverlayRegionBufferPixelFormat >* GetSupportedBufferPixelFormatListN(void); private: // diff --git a/inc/FUiCtrlPanel.h b/inc/FUiCtrlPanel.h index 81e0680..d6944a4 100644 --- a/inc/FUiCtrlPanel.h +++ b/inc/FUiCtrlPanel.h @@ -28,7 +28,7 @@ #include #include #include -#include +#include namespace Tizen {namespace Base { @@ -144,6 +144,21 @@ public: */ result Construct(const Tizen::Graphics::Rectangle& rect, GroupStyle groupStyle = GROUP_STYLE_NONE); + /* + * Initializes this instance of %Panel with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect The location and size of the %Panel control as an instance of FloatRectangle + * @param[in] groupStyle The group style of the %Panel control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + * @remarks The specified group style determines the border look of the %Panel control. + * @see Tizen::Ui::Container, Tizen::Ui::GroupStyle + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect, GroupStyle groupStyle = GROUP_STYLE_NONE); /** * Initializes this instance of %Panel and child controls with the specified resource ID @n @@ -181,6 +196,24 @@ public: */ result Construct(const Tizen::Ui::Layout& layout, const Tizen::Graphics::Rectangle& rect, GroupStyle groupStyle = GROUP_STYLE_NONE); + /* + * Initializes this instance of %Panel with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] layout The layout for both the portrait and landscape modes + * @param[in] rect The location and size of the %Panel control as an instance of FloatRectangle + * @param[in] groupStyle The table view style of the %Panel control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. @n + * The specified layout is already bound to another container. + * @exception E_SYSTEM A system error has occurred. + * @remarks The specified group style determines the border look of the %Panel control. + * @see Tizen::Ui::Container, Tizen::Ui::GroupStyle + */ + result Construct(const Tizen::Ui::Layout& layout, const Tizen::Graphics::FloatRectangle& rect, GroupStyle groupStyle = GROUP_STYLE_NONE); + /** * Initializes this instance of %Panel with the specified layouts, rectangular region, and group style. * @@ -200,6 +233,25 @@ public: */ result Construct(const Tizen::Ui::Layout& portraitLayout, const Tizen::Ui::Layout& landscapeLayout, const Tizen::Graphics::Rectangle& rect, GroupStyle groupStyle = GROUP_STYLE_NONE); + /* + * Initializes this instance of %Panel with the specified layouts, rectangular region, and group style. + * + * @since 2.1 + * + * @return An error code + * @param[in] portraitLayout The layout for the portrait mode + * @param[in] landscapeLayout The layout for the landscape mode + * @param[in] rect The location and size of the %Panel control as an instance of FloatRectangle + * @param[in] groupStyle The table view style of the %Panel control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. @n + * The specified layout is already bound to another container. + * @exception E_SYSTEM A system error has occurred. + * @remarks The specified group style determines the border look of the %Panel control. + * @see Tizen::Ui::Container, Tizen::Ui::GroupStyle + */ + result Construct(const Tizen::Ui::Layout& portraitLayout, const Tizen::Ui::Layout& landscapeLayout, const Tizen::Graphics::FloatRectangle& rect, GroupStyle groupStyle = GROUP_STYLE_NONE); + /** * Gets the background color of the %Panel control. * diff --git a/inc/FUiCtrlPopup.h b/inc/FUiCtrlPopup.h old mode 100644 new mode 100755 index 2b7d7ca..aa737f6 --- a/inc/FUiCtrlPopup.h +++ b/inc/FUiCtrlPopup.h @@ -145,7 +145,7 @@ PopupSample::OnTerminating(void) result r = E_SUCCESS; // Deallocates the __pPopup - delete __pPopup; + __pPopup->Destroy(); return r; } @@ -169,8 +169,8 @@ PopupSample::OnActionPerformed(const Control& source, int actionId) break; } } - * @endcode - */ +* @endcode +*/ class _OSP_EXPORT_ Popup : public Tizen::Ui::Window @@ -205,6 +205,21 @@ public: */ result Construct(bool hasTitle, const Tizen::Graphics::Dimension& dim); + /* + * Initializes this instance of %Popup with the specified dimensions. + * + * @since 2.1 + * + * @return An error code + * @param[in] hasTitle Set to @c true if the %Popup control has a title, @n + * else @c false + * @param[in] dim The size of the %Popup control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_SYSTEM A system error has occurred. + */ + result Construct(bool hasTitle, const Tizen::Graphics::FloatDimension& dim); + /** * Initializes this instance of %Popup and child controls with the specified resource ID @n * @@ -240,6 +255,23 @@ public: */ result Construct(const Tizen::Ui::Layout& layout, bool hasTitle, const Tizen::Graphics::Dimension& dim); + /* + * Initializes this instance of %Popup with the specified layout and dimensions. + * + * @since 2.1 + * + * @return An error code + * @param[in] layout The layout for both the portrait and landscape mode + * @param[in] hasTitle Set to @c true if the %Popup control should have a title, @n + * else @c false + * @param[in] dim The size of the %Popup control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid, or + * the specified layout is already bound to another container. + * @exception E_SYSTEM A system error has occurred. + */ + result Construct(const Tizen::Ui::Layout& layout, bool hasTitle, const Tizen::Graphics::FloatDimension& dim); + /** * Initializes this instance of %Popup with the specified layouts and dimensions. * @@ -258,13 +290,31 @@ public: */ result Construct(const Tizen::Ui::Layout& portraitLayout, const Tizen::Ui::Layout& landscapeLayout, bool hasTitle, const Tizen::Graphics::Dimension& dim); + /* + * Initializes this instance of %Popup with the specified layouts and dimensions. + * + * @since 2.1 + * + * @return An error code + * @param[in] portraitLayout The layout for the portrait mode + * @param[in] landscapeLayout The layout for the landscape mode + * @param[in] hasTitle Set to @c true if this %Popup control should have a title, @n + * else @c false + * @param[in] dim The size of the %Popup control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid, or + * the specified layout is already bound to another container. + * @exception E_SYSTEM A system error has occurred. + */ + result Construct(const Tizen::Ui::Layout& portraitLayout, const Tizen::Ui::Layout& landscapeLayout, bool hasTitle, const Tizen::Graphics::FloatDimension& dim); + /** * Shows the modal window. @n * * @since 2.0 * @return An error code * @param[out] modalResult The %Popup's notification. @n - * This value is the 'modalResult' parameter of the EndModal() method + * This value is the 'modalResult' parameter of the EndModal() method * @exception E_SUCCESS The method is successful. * @exception E_INVALID_STATE The %Popup is not visible. The visible state of the %Popup should be set @c true. * @remarks Do not call this method from Tizen::App::App::OnAppInitializing(). @n @@ -315,6 +365,15 @@ public: */ Tizen::Graphics::Rectangle GetClientAreaBounds(void) const; + /* + * Gets the bounds of the client area. + * + * @since 2.1 + * + * @return The bounds of the client area in a FloatRectangle instance + */ + Tizen::Graphics::FloatRectangle GetClientAreaBoundsF(void) const; + /** * Creates and returns a graphics canvas whose bounds (position and size) are equal to the bounds of the client area of the %Popup control. * @@ -327,7 +386,7 @@ public: * @remarks The method allocates a Tizen::Graphics::Canvas whose bounds are equal to that of the client area of the %Popup control. @n * It is the responsibility of the developers to deallocate the canvas after use. * @remarks The canvas is valid only if the properties of the parent control of the canvas remain unchanged. @n - * Therefore, delete the previously allocated canvas and create a new canvas using the GetCanvasN() method if the size or position of the + * Therefore, delete the previously allocated canvas and create a new canvas using the GetClientAreaCanvasN() method if the size or position of the * control is changed. * @remarks The specific error code can be accessed using the GetLastResult() method. */ @@ -345,6 +404,18 @@ public: */ Tizen::Graphics::Point TranslateToClientAreaPosition(const Tizen::Graphics::Point& position) const; + /* + * Translates the specified position to the client coordinates. + * + * @since 2.1 + * + * @return The position in relative to the top-left corner of the client-area, @n + * else @c (-1.0f,-1.0f) if the instance is invalid + * @param[in] position The position relative to the top-left corner of the %Popup control + * @see TranslateFromClientAreaPositionF() + */ + Tizen::Graphics::FloatPoint TranslateToClientAreaPosition(const Tizen::Graphics::FloatPoint& position) const; + /** * Translates the specified client position to the control coordinate. * @@ -357,6 +428,18 @@ public: */ Tizen::Graphics::Point TranslateFromClientAreaPosition(const Tizen::Graphics::Point& clientPosition) const; + /* + * Translates the specified client position to the control coordinate. + * + * @since 2.1 + * + * @return The position in relative to the top-left corner of the %Popup control, @n + * else @c (-1.0f,-1.0f) if the instance is invalid + * @param[in] clientPosition The position relative to the top-left corner of the client area + * @see TranslateToClientAreaPositionF() + */ + Tizen::Graphics::FloatPoint TranslateFromClientAreaPosition(const Tizen::Graphics::FloatPoint& clientPosition) const; + /** * Gets the color of the %Popup control. * @@ -420,10 +503,10 @@ public: protected: friend class _PopupImpl; - // - // The following methods are reserved and may change its name at any time without - // prior notice. - // + /** + * The following methods are reserved and may change its name at any time without + * prior notice. + */ virtual void Popup_Reserved1(void) { } virtual void Popup_Reserved2(void) { } virtual void Popup_Reserved3(void) { } diff --git a/inc/FUiCtrlProgress.h b/inc/FUiCtrlProgress.h index 9ae9a0e..9009b14 100644 --- a/inc/FUiCtrlProgress.h +++ b/inc/FUiCtrlProgress.h @@ -14,6 +14,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // + /** * @file FUiCtrlProgress.h * @brief This is the header file for the %Progress class. @@ -176,6 +177,27 @@ public: */ result Construct(const Tizen::Graphics::Rectangle& rect, int minValue, int maxValue); + /* + * Initializes this instance of %Progress with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect An instance of the FloatRectangle class @n + * This instance represents the x and y coordinates of the top-left corner of the created window along with + * its width and height. + * @param[in] minValue The minimum value of the current instance of %Progress + * @param[in] maxValue The maximum value of the current instance of %Progress + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_OUT_OF_RANGE The value of an argument is outside the valid range defined by the method. @n + * The specified values should be positive and @c minValue should be less than @c maxValue. + * @exception E_SYSTEM A system error has occurred. + * @remarks A control is fully usable only after it has been added to a container, therefore some methods may fail if used earlier. @n + * @remarks The size of the control must be within the range defined by the minimum size and the maximum size. + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect, int minValue, int maxValue); + public: /** * Sets the current value of the %Progress control. @n @@ -264,6 +286,31 @@ public: */ Tizen::Graphics::Color GetBarColor(void) const; + + /** + * Sets the background color of the bar. + * + * @since 2.1 + * + * @param[in] color The color to be set + * @remarks The method ignores the alpha value of the @c color parameter and sets the alpha value to @c 255. + * @see GetBarBackgroundColor() + */ + void SetBarBackgroundColor(const Tizen::Graphics::Color& barBackgroundColor); + + /** + * Gets the background color of the bar. + * + * @since 2.1 + * + * @return The background color of the bar, @n + * else RGBA(0, 0, 0, 0) if an error occurs + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @see SetBarBackgroundColor() + */ + Tizen::Graphics::Color GetBarBackgroundColor(void) const; + + private: // // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects. diff --git a/inc/FUiCtrlProgressPopup.h b/inc/FUiCtrlProgressPopup.h index 43dbe07..d42d558 100644 --- a/inc/FUiCtrlProgressPopup.h +++ b/inc/FUiCtrlProgressPopup.h @@ -16,17 +16,19 @@ // /** - * @file FUiCtrlProgressPopup.h - * @brief This is the header file for the %ProgressPopup class. - * - * This header file contains the declarations of the %ProgressPopup class. - */ +* @file FUiCtrlProgressPopup.h +* @brief This is the header file for the %ProgressPopup class. +* +* This header file contains the declarations of the %ProgressPopup class. +*/ #ifndef _FUI_CTRL_PROGRESS_POPUP_H_ #define _FUI_CTRL_PROGRESS_POPUP_H_ + #include + namespace Tizen { namespace Ui { class IProgressPopupEventListener; @@ -35,16 +37,17 @@ class IProgressPopupEventListener; namespace Tizen { namespace Ui { namespace Controls { - /** * @class ProgressPopup * @brief This class defines the common behavior of a %ProgressPopup control. * - * @since 2.0 + * @since 2.0 * * The %ProgressPopup class displays processing animation to show processing status. * It can contain a title, body text and cancel button. * + * For more information on the class features, see ProgressPopup. + * * @see Tizen::Ui::Window * * The following example demonstrates how to use the %ProgressPopup class. @@ -72,7 +75,6 @@ public: private: static const int ID_BUTTON_PROGRESSPOPUP = 501; - static const int ID_BUTTON_CLOSE_PROGRESSPOPUP = 502; Tizen::Ui::Controls::ProgressPopup* __pProgressPopup; }; @@ -114,7 +116,7 @@ ProgressPopupSample::OnInitializing(void) __pProgressPopup->SetText(L"Hello World!!"); __pProgressPopup->AddProgressPopupEventListener(*this); - // Creates an instance of Button to open the ProgressPopup + // Creates an instance of Button to open the ProgressPopup. Button* pButtonProgressPopup = new Button(); pButtonProgressPopup->Construct(Rectangle(10, 10, 250, 60), L"Open ProgressPopup"); pButtonProgressPopup->SetActionId(ID_BUTTON_PROGRESSPOPUP); @@ -188,18 +190,20 @@ public: * @return An error code * @param[in] cancelButton Set to @c true if the %ProgressPopup window has a cancel button, @n * else @c false - * @param[in] translucent Set to @c true if the %ProgressPopup window is translucent, @n + * @param[in] transparent Set to @c true if the %ProgressPopup window is transparent, @n * else @c false * @exception E_SUCCESS The method is successful. * @exception E_SYSTEM A system error has occurred. @n - * This error occurs when the internal resource is not loaded. + This error occurs when the internal resource is not loaded. * @remarks To show a %ProgressPopup window, call Show() or DoModal() after calling the Construct() method. @n * By default, the title area and the body text are not shown. @n * Use SetTitleText() and SetText() to show the title area and the body text. - * @remarks If cancelButton is set to true and ProgressPopup is closed by pressing a Cancel Button, + * @remarks If @c transparent is set to true, a progress icon is only shown and a cancel button is not shown. @n + * Also, the texts set by SetTitleText() and SetText() are not shown. + * @remarks If @c cancelButton is set to true and ProgressPopup is closed by pressing a Cancel Button, * out parameter of DoModal(), modalResult, is -1. */ - result Construct(bool cancelButton, bool translucent); + result Construct(bool cancelButton, bool transparent); /** * Sets the text of the %ProgressPopup window. @@ -209,17 +213,18 @@ public: * @param[in] text The text to be set * @exception E_SUCCESS The method is successful. * @exception E_OUT_OF_MEMORY The memory is insufficient. + * @remarks If the %ProgressPopup window is constructed as transparent, the text is not shown. */ result SetText(const Tizen::Base::String& text); /** - * Gets the text of the %ProgressPopup window. - * - * @since 2.0 - * - * @return The text of the %ProgressPopup window, @n - * else an empty string if an error occurs - */ + * Gets the text of the %ProgressPopup window. + * + * @since 2.0 + * + * @return The text of the %ProgressPopup window, @n + * else an empty string if an error occurs + */ Tizen::Base::String GetText(void) const; /** diff --git a/inc/FUiCtrlRadioGroup.h b/inc/FUiCtrlRadioGroup.h index bbc3254..5dada93 100644 --- a/inc/FUiCtrlRadioGroup.h +++ b/inc/FUiCtrlRadioGroup.h @@ -162,9 +162,9 @@ RadioGroupSample::OnActionPerformed(const Control& source, int actionId) break; } } - * @endcode - * - */ + * @endcode + * + */ class _OSP_EXPORT_ RadioGroup : public Tizen::Ui::Control { @@ -177,10 +177,10 @@ public: RadioGroup(void); /** - * This is the destructor for this class. - * - * @since 2.0 - */ + * This is the destructor for this class. + * + * @since 2.0 + */ virtual ~RadioGroup(void); @@ -199,6 +199,8 @@ public: /** * Adds the check button to the radio group. * + * @brief [Deprecated] + * @deprecated This API is deprecated. * @since 2.0 * * @return An error code @@ -211,8 +213,25 @@ public: result Add(const CheckButton& checkButton); /** + * Adds the check button to the radio group. + * + * @since 2.1 + * + * @return An error code + * @param[in] pCheckButton The %CheckButton instance to be added + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified input parameter is invalid. @n + * The specified @c pCheckButton is @c null. + * @exception E_SYSTEM A system error has occurred. + * @remarks Only CheckButtons whose style is CHECK_BUTTON_STYLE_RADIO or CHECK_BUTTON_STYLE_RADIO_WITH_DIVIDER can be added to %RadioGroup. + */ + result Add(CheckButton* pCheckButton); + + /** * Removes the check button from the radio group. * + * @brief [Deprecated] + * @deprecated This API is deprecated. * @since 2.0 * * @return An error code @@ -224,6 +243,20 @@ public: */ result Remove(const CheckButton& checkButton); + /** + * Removes the check button from the radio group. + * + * @since 2.1 + * + * @return An error code + * @param[in] pCheckButton The %CheckButton instance to be removed + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_NOT_FOUND The object is not found. + * @exception E_SYSTEM A system error has occurred. + * @remarks Before removing %CheckButton from its parent container, it must be removed from %RadioGroup. + */ + result Remove(CheckButton* pCheckButton); + public: /** * Gets the number of check buttons in the radio group. @@ -237,6 +270,8 @@ public: /** * Selects the specified check button in the radio group. * + * @brief [Deprecated] + * @deprecated This API is deprecated. * @since 2.0 * * @param[in] checkButton The check button to be selected @@ -244,6 +279,16 @@ public: void SetSelectedItem(const CheckButton& checkButton); /** + * Selects the specified check button in the radio group. + * + * @since 2.1 + * + * @param[in] pCheckButton The check button to be selected + * @exception E_INVALID_ARG The specified @c pCheckButton is @c null. + */ + void SetSelectedItem(CheckButton* pCheckButton); + + /** * Gets the selected check button in the radio group. * * @since 2.0 @@ -254,57 +299,39 @@ public: */ const CheckButton* GetSelectedItem(void) const; +private: // // This method is for internal use only. // Using this method can cause behavioral, security-related, and consistency-related issues in the application. // - // This method is prohibited. If this method is used - // in an application, the application can get rejected during the certification - // process. - // - // (Blocked) Draws the control. - // - // @since 2.0 + // This method is reserved and may change its name at any time without + // prior notice. // - // @return An error code - // @exception E_UNSUPPORTED_OPERATION This operation is not supported. + // @since 2.1 // - virtual result Draw(void); + virtual void RadioGroup_Reserved1(void){} // // This method is for internal use only. // Using this method can cause behavioral, security-related, and consistency-related issues in the application. // - // This method is prohibited. If this method is used - // in an application, the application can get rejected during the certification - // process. + // This method is reserved and may change its name at any time without + // prior notice. // - // (Blocked) Shows this control. + // @since 2.1 // - // @since 2.0 - // - // @return An error code - // @exception E_UNSUPPORTED_OPERATION This operation is not supported. - // - virtual result Show(void); + virtual void RadioGroup_Reserved2(void){} // // This method is for internal use only. // Using this method can cause behavioral, security-related, and consistency-related issues in the application. // - // This method is prohibited. If this method is used - // in an application, the application can get rejected during the certification - // process. - // - // (Blocked) Gives the input focus to the control. @n - // One must call this method if the control needs to listen to the user input events such as key pressed. - // - // @since 2.0 + // This method is reserved and may change its name at any time without + // prior notice. // - // @return An error code - // @exception E_UNSUPPORTED_OPERATION This operation is not supported. + // @since 2.1 // - virtual result SetFocus(void); + virtual void RadioGroup_Reserved3(void){} protected: friend class _RadioGroupImpl; diff --git a/inc/FUiCtrlScrollEventTypes.h b/inc/FUiCtrlScrollEventTypes.h index eb73d54..e1b7e1b 100644 --- a/inc/FUiCtrlScrollEventTypes.h +++ b/inc/FUiCtrlScrollEventTypes.h @@ -14,6 +14,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // + /** * @file FUiCtrlScrollEventTypes.h * @brief This is the header file for the List enumerations. @@ -22,6 +23,7 @@ * * This header file contains the declarations of the scroll event enumerations. */ + #ifndef _FUI_CTRL_SCROLL_EVENT_ENUM_H_ #define _FUI_CTRL_SCROLL_EVENT_ENUM_H_ @@ -43,8 +45,6 @@ enum ScrollEndEvent SCROLL_END_EVENT_END_RIGHT /**< The scroll reaches right end */ }; -}; -}; -}; // Tizen::Ui::Controls +}}} // Tizen::Ui::Controls #endif diff --git a/inc/FUiCtrlScrollPanel.h b/inc/FUiCtrlScrollPanel.h index 4ed96cc..33adf29 100644 --- a/inc/FUiCtrlScrollPanel.h +++ b/inc/FUiCtrlScrollPanel.h @@ -31,8 +31,8 @@ #include #include #include +#include #include -#include namespace Tizen { namespace Ui { namespace Controls { @@ -153,6 +153,22 @@ public: result Construct(const Tizen::Graphics::Rectangle& rect); + /* + * Initializes this instance of %ScrollPanel with the specified rectangular region. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect The location and size of the %ScrollPanel control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The given width or height is less than 0. + * @exception E_SYSTEM A system error has occurred. + * @remarks By default, the scroll direction is vertical and the scroll area is resized automatically. + * @see Tizen::Ui::Container + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect); + + /** * Initializes this instance of %ScrollPanel and child controls with the specified resource ID @n * @@ -171,6 +187,7 @@ public: */ result Construct(const Tizen::Base::String& resourceId); + /** * Initializes this instance of %ScrollPanel with the specified rectangular region. * @@ -187,6 +204,22 @@ public: result Construct(const Tizen::Graphics::Rectangle& rect, ScrollPanelScrollDirection scrollDirection, bool autoResizingEnable); + /* + * Initializes this instance of %ScrollPanel with the specified rectangular region. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect The location and size of the %ScrollPanel control + * @param[in] scrollDirection The scroll direction of %ScrollPanel + * @param[in] autoResizingEnable Whether to resize the client area automatically + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The given width or height is less than 0. + * @see Tizen::Ui::Container + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect, ScrollPanelScrollDirection scrollDirection, bool autoResizingEnable); + + /** * Initializes this instance of %ScrollPanel with the specified layout and rectangular region. * @@ -204,6 +237,23 @@ public: result Construct(const Tizen::Ui::Layout& layout, const Tizen::Graphics::Rectangle& rect); + /* + * Initializes this instance of %ScrollPanel with the specified layout and rectangular region. + * + * @since 2.1 + * + * @return An error code + * @param[in] layout The layout for both the portrait and landscape mode + * @param[in] rect The location and size of the %ScrollPanel control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG @c layout is already bound to another container, or the given width or the height is less than 0. + * @exception E_SYSTEM A system error has occurred. + * @remarks By default, the scroll direction is vertical and the scroll area is resized automatically. + * @see Tizen::Ui::Container + */ + result Construct(const Tizen::Ui::Layout& layout, const Tizen::Graphics::FloatRectangle& rect); + + /** * Initializes this instance of %ScrollPanel with the specified layout and rectangular region. * @@ -221,6 +271,23 @@ public: result Construct(const Tizen::Ui::Layout& layout, const Tizen::Graphics::Rectangle& rect, ScrollPanelScrollDirection scrollDirection, bool autoResizingEnable); + /* + * Initializes this instance of %ScrollPanel with the specified layout and rectangular region. + * + * @since 2.1 + * + * @return An error code + * @param[in] layout The layout for both the portrait and landscape mode + * @param[in] rect The location and size of the %ScrollPanel control + * @param[in] scrollDirection The scroll direction of %ScrollPanel + * @param[in] autoResizingEnable Whether to resize the client area automatically + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG @c layout is already bound to another container, or the given width or height is less than 0. + * @see Tizen::Ui::Container + */ + result Construct(const Tizen::Ui::Layout& layout, const Tizen::Graphics::FloatRectangle& rect, ScrollPanelScrollDirection scrollDirection, bool autoResizingEnable); + + /** * Initializes this instance of %ScrollPanel with the specified layouts and rectangular region. * @@ -239,6 +306,24 @@ public: result Construct(const Tizen::Ui::Layout& portraitLayout, const Tizen::Ui::Layout& landscapeLayout, const Tizen::Graphics::Rectangle& rect); + /* + * Initializes this instance of %ScrollPanel with the specified layouts and rectangular region. + * + * @since 2.1 + * + * @return An error code + * @param[in] portraitLayout The layout for the portrait mode + * @param[in] landscapeLayout The layout for the landscape mode + * @param[in] rect The location and size of the %ScrollPanel control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG @c portraitLayout or @c landscapeLayout is already bound to another container, or the given width or height is less than 0. + * @exception E_SYSTEM A system error has occurred. + * @remarks By default, the scroll direction is vertical and the scroll area is resized automatically. + * @see Tizen::Ui::Container + */ + result Construct(const Tizen::Ui::Layout& portraitLayout, const Tizen::Ui::Layout& landscapeLayout, const Tizen::Graphics::FloatRectangle& rect); + + /** * Initializes this instance of %ScrollPanel with the specified layouts and rectangular region. * @@ -257,21 +342,54 @@ public: result Construct(const Tizen::Ui::Layout& portraitLayout, const Tizen::Ui::Layout& landscapeLayout, const Tizen::Graphics::Rectangle& rect, ScrollPanelScrollDirection scrollDirection, bool autoResizingEnable); + /* + * Initializes this instance of %ScrollPanel with the specified layouts and rectangular region. + * + * @since 2.1 + * + * @return An error code + * @param[in] portraitLayout The layout for the portrait mode + * @param[in] landscapeLayout The layout for the landscape mode + * @param[in] rect The location and size of the %ScrollPanel control + * @param[in] scrollDirection The scroll direction of %ScrollPanel + * @param[in] autoResizingEnable Whether to resize the client area automatically + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG @c portraitLayout or @c landscapeLayout is already bound to another container, or the given width or height is less than 0. + * @see Tizen::Ui::Container + */ + result Construct(const Tizen::Ui::Layout& portraitLayout, const Tizen::Ui::Layout& landscapeLayout, const Tizen::Graphics::FloatRectangle& rect, ScrollPanelScrollDirection scrollDirection, bool autoResizingEnable); + + /** * Adds a listener instance that listens to the state changes of a scroll event. @n * The added listener can listen to the events on the given event dispatcher's context when they are fired. * - * @since 2.0 + * @since 2.0 * * @param[in] listener The listener to add * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_MEMORY The memory is insufficient. - * @see IScrollEventListener::OnScrollEndReached() + * @exception E_OUT_OF_MEMORY The memory is insufficient. + * @see Tizen::Ui::Controls::IScrollEventListener * @see RemoveScrollEventListener() */ void AddScrollEventListener(IScrollEventListener& listener); + /* + * Adds a listener instance that listens to the state changes of a scroll event. @n + * The added listener can listen to the events on the given event dispatcher's context when they are fired. + * + * @since 2.1 + * + * @param[in] listener The listener to add + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_MEMORY The memory is insufficient. + * @see Tizen::Ui::Controls::IScrollEventListenerF + * @see RemoveScrollEventListener() + */ + void AddScrollEventListener(IScrollEventListenerF& listener); + + /** * Removes a listener instance that listens to the state changes of a scroll event. @n * The removed listener cannot listen to the events when they are fired. @@ -279,12 +397,25 @@ public: * @since 2.0 * * @param[in] listener The listener to remove - * @see IScrollEventListener::OnScrollEndReached() + * @see Tizen::Ui::Controls::IScrollEventListener * @see AddScrollEventListener() */ void RemoveScrollEventListener(IScrollEventListener& listener); + /* + * Removes a listener instance that listens to the state changes of a scroll event. @n + * The removed listener cannot listen to the events when they are fired. + * + * @since 2.1 + * + * @param[in] listener The listener to remove + * @see Tizen::Ui::Controls::IScrollEventListenerF + * @see AddScrollEventListener() + */ + void RemoveScrollEventListener(IScrollEventListenerF& listener); + + /** * Gets the scroll position. * @@ -295,6 +426,16 @@ public: int GetScrollPosition(void) const; + /* + * Gets the scroll position. + * + * @since 2.1 + * + * @return The scroll position + */ + float GetScrollPositionF(void) const; + + /** * @if OSPDEPREC * Sets the scroll position. @@ -308,6 +449,21 @@ public: */ void SetScrollPosition(int position); + + /* + * @if OSPDEPREC + * Sets the scroll position. + * + * @brief [Deprecated] + * @deprecated This method is deprecated. Instead of using this method, use the SetScrollPosition(int, bool), which supports animated scroll. + * @since 2.1 + * + * @param[in] position The scroll position + * @endif + */ + void SetScrollPosition(float position); + + /** * Sets the scroll position. * @@ -320,6 +476,20 @@ public: */ void SetScrollPosition(int position, bool withAnimation); + + /* + * Sets the scroll position. + * + * @since 2.1 + * + * @param[in] position The scroll position in pixel + * @param[in] withAnimation @c true to scroll the %ScrollPanel smoothly. @n + * else @c false. + * + */ + void SetScrollPosition(float position, bool withAnimation); + + /** * Scrolls to the bottom of %ScrollPanel. * @@ -358,6 +528,17 @@ public: Tizen::Graphics::Rectangle GetClientAreaBounds(void) const; + /* + * Gets the bounds of the client area. + * + * @since 2.1 + * + * @return The bounds of the client area + * + */ + Tizen::Graphics::FloatRectangle GetClientAreaBoundsF(void) const; + + /** * Sets the width of the client area. * @@ -373,6 +554,21 @@ public: result SetClientAreaWidth(int width); + /* + * Sets the width of the client area. + * + * @since 2.1 + * + * @return An error code + * @param[in] width The width of the client area to set + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG @c width is less than the width of %ScrollPanel + * @exception E_INVALID_OPERATION The width of the client area cannot be set when auto resizing of the client area is off, or the scroll direction is vertical. + * + */ + result SetClientAreaWidth(float width); + + /** * Sets the height of the client area. * @@ -388,6 +584,21 @@ public: result SetClientAreaHeight(int height); + /* + * Sets the height of the client area. + * + * @since 2.1 + * + * @return An error code + * @param[in] height The height of the client area to set + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG @c height is less than the height of %ScrollPanel + * @exception E_INVALID_OPERATION The height of the client area cannot be set when auto resizing of the client area is off, or the scroll direction is horizontal. + * + */ + result SetClientAreaHeight(float height); + + /** * Gets the scroll direction of the %ScrollPanel. * diff --git a/inc/FUiCtrlScrollPanelTypes.h b/inc/FUiCtrlScrollPanelTypes.h index 114013a..b4c250f 100644 --- a/inc/FUiCtrlScrollPanelTypes.h +++ b/inc/FUiCtrlScrollPanelTypes.h @@ -40,6 +40,19 @@ enum ScrollPanelScrollDirection SCROLL_PANEL_SCROLL_DIRECTION_HORIZONTAL /**< Horizontal scroll mode */ }; +/** +* @enum ScrollInputMode +* +* Defines the scroll interaction mode +* +* @since 2.0 +*/ +enum ScrollInputMode +{ + SCROLL_INPUT_MODE_ALLOW_ANY_DIRECTION = 0, /**< Scroll interaction is available to any direction. */ + SCROLL_INPUT_MODE_RESTRICT_TO_INITIAL_DIRECTION /**< Scroll interaction is restricted to first direction. */ +}; + }}} // Tizen::Ui::Controls #endif // _FUI_CTRL_SCROLL_PANEL_TYPES_H_ diff --git a/inc/FUiCtrlSearchBar.h b/inc/FUiCtrlSearchBar.h old mode 100644 new mode 100755 index 2a94567..7bfaf7b --- a/inc/FUiCtrlSearchBar.h +++ b/inc/FUiCtrlSearchBar.h @@ -30,6 +30,7 @@ #include #include #include +#include #include #include #include @@ -376,6 +377,28 @@ public: */ result Construct(const Tizen::Graphics::Rectangle& rect, bool searchBarButton = true, KeypadAction keypadAction = KEYPAD_ACTION_SEARCH); + /* + * Initializes this instance of the %SearchBar control with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect An instance of the Graphics::FloatRectangle class @n + * This instance represents the x and y coordinates of the top-left corner of the created window along with + * the width and height of the control. + * @param[in] searchBarButton Set to @c true to display the search bar button, @n + * else @c false + * @param[in] keypadAction The keypad action + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid, or @n + * the action ID of the specified item must be a positive integer. + * @exception E_SYSTEM A system error has occurred. + * @remarks It is recommended that %SearchBar should be placed at the top-left corner of Form's client area. + * @remarks By default, a "Cancel" button is displayed if @c searchBarButton is set to @c true. When the user presses the cancel button, + * the %SearchBar control returns to SEARCH_BAR_MODE_NORMAL automatically. + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect, bool searchBarButton = true, KeypadAction keypadAction = KEYPAD_ACTION_SEARCH); + /** * Gets the content of Control. * @@ -433,7 +456,7 @@ public: * @since 2.0 * * @return An error code - * @param[in] show Set to @c true to perform show on the content area, @n + * @param[in] invalidate Set to @c true to perform invalidate on the content area, @n * else @c false * @exception E_SUCCESS The method is successful. * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n @@ -484,6 +507,21 @@ public: */ result SetContentAreaSize(const Tizen::Graphics::Dimension& size); + /* + * Sets the size of the content area of the %SearchBar control. + * + * @since 2.1 + * + * @return An error code + * @param[in] size The size of the content area + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified input parameter is invalid. @n + * The width and height of @c size must be greater than or equal to @c 0. + * @remarks The content area must be resized when the orientation of the form is changed once the size of the content area is changed. + * @see GetContentAreaSizeF() + */ + result SetContentAreaSize(const Tizen::Graphics::FloatDimension& size); + /** * Gets the size of the content area of the %SearchBar control. * @@ -497,6 +535,19 @@ public: */ Tizen::Graphics::Dimension GetContentAreaSize(void) const; + /* + * Gets the size of the content area of the %SearchBar control. + * + * @since 2.1 + * + * @return The size of the content area + * @remarks The content area is the area where the 'content' of the %SearchBar control is displayed. The size of the content areas can + * be changed at runtime. + * @see AddSearchBarEventListener() + * @see ISearchBarEventListener + */ + Tizen::Graphics::FloatDimension GetContentAreaSizeF(void) const; + // Modes /** * Gets the search bar mode. @@ -891,6 +942,20 @@ public: int GetSearchFieldTextSize(void) const; /** + * Gets the text size of the search field. + * + * @since 2.1 + * + * @return The size of the text, @n + * else @c -1 if an error occurs + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @see SetSearchFieldTextSize() + */ + float GetSearchFieldTextSizeF(void) const; + + /** * Sets the text size of the text field of the %SearchBar control. * * @since 2.0 @@ -906,6 +971,21 @@ public: result SetSearchFieldTextSize(int size); /** + * Sets the text size of the text field of the %SearchBar control. + * + * @since 2.1 + * + * @return An error code + * @param[in] size The text size + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified input parameter is invalid, or @n + * the specified @c size cannot be a negative value. + * @exception E_SYSTEM A system error has occurred. + * @see GetSearchFieldTextSizeF() + */ + result SetSearchFieldTextSize(float size); + + /** * Gets the start and the end index of the currently selected text block. * * @since 2.0 @@ -1199,30 +1279,30 @@ public: result SetEllipsisPosition(EllipsisPosition position); /** - * Sets the input language. - * - * @since 2.0 - * - * @return An error code - * @param[in] languageCode The language to set - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_MEMORY The memory is insufficient. - * @remarks The application can set the language of the current keypad that is associated with the current %SearchBar. @n - * This method only works if the language to set is supported by the current preloaded keypad. - */ + * Sets the input language. + * + * @since 2.0 + * + * @return An error code + * @param[in] languageCode The language to set + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_MEMORY The memory is insufficient. + * @remarks The application can set the language of the current keypad that is associated with the current %SearchBar. @n + * This method only works if the language to set is supported by the current preloaded keypad. + */ result SetCurrentLanguage(Tizen::Locales::LanguageCode languageCode); /** - * Gets the current input language. - * - * @since 2.0 - * - * @return An error code - * @param[out] language The current input language - * @exception E_SUCCESS The method is successful. - * @remarks The application can get the current language of the keypad that is associated with the current %SearchBar. - */ + * Gets the current input language. + * + * @since 2.0 + * + * @return An error code + * @param[out] language The current input language + * @exception E_SUCCESS The method is successful. + * @remarks The application can get the current language of the keypad that is associated with the current %SearchBar. + */ result GetCurrentLanguage(Tizen::Locales::LanguageCode& language) const; @@ -1239,27 +1319,27 @@ public: KeypadAction GetKeypadAction(void) const; /** - * Checks whether the text prediction is enabled. - * - * @since 2.0 - * @return @c true if the text prediction is enabled, @n - * else @c false - * @exception E_SUCCESS The method is successful. - * @see SetTextPredictionEnabled() - */ + * Checks whether the text prediction is enabled. + * + * @since 2.0 + * @return @c true if the text prediction is enabled, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @see SetTextPredictionEnabled() + */ bool IsTextPredictionEnabled(void) const; /** - * Enables or disables the text prediction. - * - * @since 2.0 - * @param[in] enable Set to @c true to enable the text prediction, @n - * else @c false - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_UNSUPPORTED_OPERATION This operation is not supported. - * @see IsTextPredictionEnabled() - */ + * Enables or disables the text prediction. + * + * @since 2.0 + * @param[in] enable Set to @c true to enable the text prediction, @n + * else @c false + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_UNSUPPORTED_OPERATION This operation is not supported. + * @see IsTextPredictionEnabled() + */ result SetTextPredictionEnabled(bool enable); /** @@ -1381,30 +1461,50 @@ public: void RemoveKeypadEventListener(Tizen::Ui::IKeypadEventListener& listener); /** - * Adds a listener instance for language events. @n - * The added listener is notified when the input language is changed. - * - * @since 2.0 - * - * @param[in] listener The listener to add - * @remarks The application can recognize when the language is changed from the keypad by adding Tizen::Ui::ILanguageEventListener. - * @see RemoveLanguageEventListener() - */ + * Adds a listener instance for language events. @n + * The added listener is notified when the input language is changed. + * + * @since 2.0 + * + * @param[in] listener The listener to add + * @remarks The application can recognize when the language is changed from the keypad by adding Tizen::Ui::ILanguageEventListener. + * @see RemoveLanguageEventListener() + */ void AddLanguageEventListener(Tizen::Ui::ILanguageEventListener& listener); /** - * Removes the specified listener instance. @n - * The removed listener cannot listen to events when they are fired. + * Removes the specified listener instance. @n + * The removed listener cannot listen to events when they are fired. + * + * @since 2.0 + * + * @param[in] listener The listener to remove + * @see AddLanguageEventListener() + */ + + void RemoveLanguageEventListener(Tizen::Ui::ILanguageEventListener& listener); + + /** + * Sets the text filter. * - * @since 2.0 + * @since 2.1 * - * @param[in] listener The listener to remove - * @see AddLanguageEventListener() + * @param[in] pFilter The filter + * @remarks The %SearchBar control checks with the registered filter to decide whether the user-entered text should be replaced. */ + void SetEditTextFilter(IEditTextFilter* pFilter); - void RemoveLanguageEventListener(Tizen::Ui::ILanguageEventListener& listener); - + /** + * Sends opaque command to the input method. + * + * @since 2.1 + * + * @param[in] command The opaque command + * @remarks This method can be used to provide domain-specific features that are only known between certain input methods and their clients. + * This method may not work, depending on the active Input Method. + */ + void SendOpaqueCommand (const Tizen::Base::String& command); protected: friend class _SearchBarImpl; diff --git a/inc/FUiCtrlSectionTableView.h b/inc/FUiCtrlSectionTableView.h index 4357851..b7202ce 100644 --- a/inc/FUiCtrlSectionTableView.h +++ b/inc/FUiCtrlSectionTableView.h @@ -16,11 +16,11 @@ // /** - * @file FUiCtrlSectionTableView.h - * @brief This is the header file for the %SectionTableView class. - * - * This header file contains the declarations of the %SectionTableView class and its helper classes. - */ +* @file FUiCtrlSectionTableView.h +* @brief This is the header file for the %SectionTableView class. +* +* This header file contains the declarations of the %SectionTableView class and its helper classes. +*/ #ifndef _FUI_CTRL_SECTION_TABLE_VIEW_H_ #define _FUI_CTRL_SECTION_TABLE_VIEW_H_ @@ -29,13 +29,16 @@ #include #include #include +#include namespace Tizen { namespace Ui { namespace Controls { class ISectionTableViewItemProvider; +class ISectionTableViewItemProviderF; class ISectionTableViewItemEventListener; class IFastScrollListener; class IScrollEventListener; +class IScrollEventListenerF; /** * @class SectionTableView @@ -194,7 +197,7 @@ SectionTableViewSample::CreateItem(int sectionIndex, int itemIndex, int itemWidt TableViewAnnexStyle style = TABLE_VIEW_ANNEX_STYLE_NORMAL; TableViewItem* pItem = new TableViewItem(); - switch (itemIndex % 5) + switch (itemIndex % 6) { case 0: style = TABLE_VIEW_ANNEX_STYLE_NORMAL; @@ -211,6 +214,9 @@ SectionTableViewSample::CreateItem(int sectionIndex, int itemIndex, int itemWidt case 4: style = TABLE_VIEW_ANNEX_STYLE_RADIO; break; + case 5: + style = TABLE_VIEW_ANNEX_STYLE_ONOFF_SLIDING_WITH_DIVIDER; + break; default: break; } @@ -245,451 +251,563 @@ SectionTableViewSample::UpdateItem(int sectionIndex, int itemIndex, TableViewIte * @endcode * */ - class _OSP_EXPORT_ SectionTableView : public Tizen::Ui::Container { public: /** - * The object is not fully constructed after this constructor is called. Hence, the Construct() method must be called after calling this constructor. - * - * @since 2.0 - */ + * The object is not fully constructed after this constructor is called. Hence, the Construct() method must be called after calling this constructor. + * + * @since 2.0 + */ SectionTableView(void); /** - * This destructor overrides Tizen::Base::Object::~Object(). - * - * @since 2.0 - */ + * This destructor overrides Tizen::Base::Object::~Object(). + * + * @since 2.0 + */ virtual ~SectionTableView(void); /** - * Initializes this instance of %SectionTableView with the specified parameters. - * - * @since 2.0 - * - * @return An error code - * @param[in] rect An instance of the Graphics::Rectangle class - * This instance represents the x and y coordinates of the left top corner of the created %SectionTableView along with the width and height. - * @param[in] itemDivider Set to @c true to display an item divider, @n - * else @c false - * @param[in] scrollStyle The style of %SectionTableView scroll bar style - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG A specified input parameter is invalid, or either the rect.width or rect.height parameter has a negative value. - * - */ + * Initializes this instance of %SectionTableView with the specified parameters. + * + * @since 2.0 + * + * @return An error code + * @param[in] rect An instance of the Graphics::Rectangle class + * This instance represents the x and y coordinates of the left top corner of the created %SectionTableView along with the width and height. + * @param[in] itemDivider Set to @c true to display an item divider, @n + * else @c false + * @param[in] scrollStyle The style of %SectionTableView scroll bar style + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid, or either the rect.width or rect.height parameter has a negative value. + * + */ result Construct(const Tizen::Graphics::Rectangle& rect, bool itemDivider, TableViewScrollBarStyle scrollStyle); - /** - * Sets the item provider that creates and deletes items for the section style table view. - * - * @since 2.0 - * - * @param[in] pProvider The item provider to create and delete items - * @remarks If an item provider is not set for the table view, the table view does not work. - * The specified provider should be allocated in heap memory. - */ + /* + * Initializes this instance of %SectionTableView with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect An instance of the Graphics::FloatRectangle class + * This instance represents the x and y coordinates of the left top corner of the created %SectionTableView along with the width and height. + * @param[in] itemDivider Set to @c true to display an item divider, @n + * else @c false + * @param[in] scrollStyle The style of %SectionTableView scroll bar style + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid, or either the rect.width or rect.height parameter has a negative value. + * + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect, bool itemDivider, TableViewScrollBarStyle scrollStyle); + + /** + * Sets the item provider that creates and deletes items for the section style table view. + * + * @since 2.0 + * + * @param[in] pProvider The item provider to create and delete items + * @remarks If an item provider is not set for the table view, the table view does not work. + * The specified provider should be allocated in heap memory. + */ void SetItemProvider(ISectionTableViewItemProvider* pProvider); - /** - * Sets the color of a section. - * - * @since 2.0 - * - * @param[in] color The section color - * @remarks This method works only when the style of the %SectionTableView control is TABLE_VIEW_STYLE_SECTION. - */ + /* + * Sets the item provider that creates and deletes items for the section style table view. + * + * @since 2.1 + * + * @param[in] pProvider The item provider to create and delete items + * @remarks If an item provider is not set for the table view, the table view does not work. + * The specified provider should be allocated in heap memory. + */ + void SetItemProviderF(ISectionTableViewItemProviderF* pProvider); + + /** + * Sets the color of a section. + * + * @since 2.0 + * + * @param[in] color The section color + * @remarks This method works only when the style of the %SectionTableView control is TABLE_VIEW_STYLE_SECTION. + */ void SetSectionColor(const Tizen::Graphics::Color& color); /** - * Gets the color of a section. - * - * @since 2.0 - * - * @return The section color - */ + * Gets the color of a section. + * + * @since 2.0 + * + * @return The section color + */ Tizen::Graphics::Color GetSectionColor(void) const; /** - * Sets the grouped look is enabled. - * - * @since 2.0 - * - * @param[in] enable The enabled/disabled status - */ + * Sets the grouped look is enabled. + * + * @since 2.0 + * + * @param[in] enable The enabled/disabled status + */ void SetGroupedLookEnabled(bool enable); /** - * Returns whether the grouped look is enabled or not. - * - * @since 2.0 - * - * @return @c true if the grouped look is enabled, else @c false - */ + * Returns whether the grouped look is enabled or not. + * + * @since 2.0 + * + * @return @c true if the grouped look is enabled, else @c false + */ bool IsGroupedLookEnabled(void) const; /** - * Adds a listener instance that listens to state changes of table view items. @n - * The added listener can listen to events on the specified event dispatcher's context when they are fired. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The event listener to add - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_ALREADY_EXIST The listener is already added. - * @remarks The specified listener should be allocated in heap memory. - */ + * Adds a listener instance that listens to state changes of table view items. @n + * The added listener can listen to events on the specified event dispatcher's context when they are fired. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The event listener to add + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_ALREADY_EXIST The listener is already added. + * @remarks The specified listener should be allocated in heap memory. + */ result AddSectionTableViewItemEventListener(ISectionTableViewItemEventListener& listener); /** - * Removes a listener instance that listens to state changes of table view items. @n - * The removed listener cannot listen to events when they are fired. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The event listener to remove - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_NOT_FOUND The listener is not found. - */ + * Removes a listener instance that listens to state changes of table view items. @n + * The removed listener cannot listen to events when they are fired. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The event listener to remove + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_NOT_FOUND The listener is not found. + */ result RemoveSectionTableViewItemEventListener(ISectionTableViewItemEventListener& listener); /** - * Adds a listener instance that listens to state changes of a fast scroll. @n - * The added listener can listen to events on the specified event dispatcher's context when they are fired. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The event listener to add - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. - * @exception E_OBJ_ALREADY_EXIST The listener is already added. - * @remarks The specified listener should be allocated in heap memory. - */ + * Adds a listener instance that listens to state changes of a fast scroll. @n + * The added listener can listen to events on the specified event dispatcher's context when they are fired. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The event listener to add + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * @exception E_OBJ_ALREADY_EXIST The listener is already added. + * @remarks The specified listener should be allocated in heap memory. + */ result AddFastScrollListener(IFastScrollListener& listener); /** - * Removes a listener instance that listens to state changes of a fast scroll. @n - * The removed listener cannot listen to events when they are fired. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The event listener to remove - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. - * @exception E_OBJ_NOT_FOUND The listener is not found. - */ + * Removes a listener instance that listens to state changes of a fast scroll. @n + * The removed listener cannot listen to events when they are fired. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The event listener to remove + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * @exception E_OBJ_NOT_FOUND The listener is not found. + */ result RemoveFastScrollListener(IFastScrollListener& listener); /** - * Adds a listener instance that listens to state changes of a scroll event. @n - * The added listener can listen to events on the specified event dispatcher's context when they are fired. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The event listener to add - * @see IScrollEventListener::OnScrollEndReached() - * @see RemoveScrollEventListener() - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. - * @exception E_OBJ_ALREADY_EXIST The listener is already added. - * @remarks The specified listener should be allocated in heap memory. - */ + * Adds a listener instance that listens to state changes of a scroll event. @n + * The added listener can listen to events on the specified event dispatcher's context when they are fired. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The event listener to add + * @see IScrollEventListener::OnScrollEndReached() + * @see RemoveScrollEventListener() + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * @exception E_OBJ_ALREADY_EXIST The listener is already added. + * @remarks The specified listener should be allocated in heap memory. + */ result AddScrollEventListener(IScrollEventListener& listener); /** - * Removes a listener instance that listens to state changes of a scroll event. @n - * The removed listener cannot listen to events when they are fired. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The event listener to remove - * @see IScrollEventListener::OnScrollEndReached() - * @see AddScrollEventListener() - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. - * @exception E_OBJ_NOT_FOUND The listener is not found. - */ + * Removes a listener instance that listens to state changes of a scroll event. @n + * The removed listener cannot listen to events when they are fired. + * + * @since 2.1 + * + * @return An error code + * @param[in] listener The event listener to remove + * @see IScrollEventListener::OnScrollEndReached() + * @see AddScrollEventListener() + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * @exception E_OBJ_NOT_FOUND The listener is not found. + */ result RemoveScrollEventListener(IScrollEventListener& listener); - /** - * Sets the text index of the fast scroll. - * - * @since 2.0 - * - * @return An error code - * @param[in] text The text of the index - * @param[in] useSearchIcon Set to @c true to show the magnifying icon, @n - * else @c false - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG A specified input parameter is invalid. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. - */ + /* + * Adds a listener instance that listens to state changes of a scroll event. @n + * The added listener can listen to events on the specified event dispatcher's context when they are fired. + * + * @since 2.1 + * + * @return An error code + * @param[in] listener The event listener to add + * @see IScrollEventListenerF::OnScrollEndReached() + * @see RemoveScrollEventListener() + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * @exception E_OBJ_ALREADY_EXIST The listener is already added. + * @remarks The specified listener should be allocated in heap memory. + */ + result AddScrollEventListener(IScrollEventListenerF& listener); + + /* + * Removes a listener instance that listens to state changes of a scroll event. @n + * The removed listener cannot listen to events when they are fired. + * + * @since 2.1 + * + * @return An error code + * @param[in] listener The event listener to remove + * @see IScrollEventListenerF::OnScrollEndReached() + * @see AddScrollEventListener() + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * @exception E_OBJ_NOT_FOUND The listener is not found. + */ + result RemoveScrollEventListener(IScrollEventListenerF& listener); + + /** + * Sets the text index of the fast scroll. + * + * @since 2.0 + * + * @return An error code + * @param[in] text The text of the index + * @param[in] useSearchIcon Set to @c true to show the magnifying icon, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + */ result SetFastScrollIndex(const Tizen::Base::String& text, bool useSearchIcon); /** - * Gets the section and item indexes of the top item. - * - * @since 2.0 - * - * @return An error code - * @param[out] sectionIndex The section index - * @param[out] itemIndex The item index - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_NOT_FOUND Top drawn item is not found. - */ + * Gets the section and item indexes of the top item. + * + * @since 2.0 + * + * @return An error code + * @param[out] sectionIndex The section index + * @param[out] itemIndex The item index + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_NOT_FOUND Top drawn item is not found. + */ result GetTopDrawnItemIndex(int& sectionIndex, int& itemIndex) const; /** - * Gets the section and item indexes of the bottom item. - * - * @since 2.0 - * - * @return An error code - * @param[out] sectionIndex The section index - * @param[out] itemIndex The item index - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_NOT_FOUND Bottom drawn item is not found. - */ + * Gets the section and item indexes of the bottom item. + * + * @since 2.0 + * + * @return An error code + * @param[out] sectionIndex The section index + * @param[out] itemIndex The item index + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_NOT_FOUND Bottom drawn item is not found. + */ result GetBottomDrawnItemIndex(int& sectionIndex, int& itemIndex) const; /** - * Scrolls to the item at the specified index. - * The specified item is drawn at the position specified by the item alignment. - * - * @since 2.0 - * - * @return An error code - * @param[in] sectionIndex The section index - * @param[in] itemIndex The item index - * @param[in] itemAlignment The item alignment - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE A specified input parameter is invalid. - */ + * Scrolls to the item at the specified index. + * The specified item is drawn at the position specified by the item alignment. + * + * @since 2.0 + * + * @return An error code + * @param[in] sectionIndex The section index + * @param[in] itemIndex The item index + * @param[in] itemAlignment The item alignment + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE A specified input parameter is invalid. + * @remarks This method should be called only after TableView items are created. If this method needs to be called early in the lifecycle of the TableView, then UpdateTableView() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ result ScrollToItem(int sectionIndex, int itemIndex, TableViewScrollItemAlignment itemAlignment = TABLE_VIEW_SCROLL_ITEM_ALIGNMENT_TOP); /** - * Checks or unchecks the item at the specified index. - * - * @since 2.0 - * - * @return An error code - * @param[in] sectionIndex The section index - * @param[in] itemIndex The item index - * @param[in] check Set to @c true to select the item, @n - * else @c false - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE A specified input parameter is invalid. - * @exception E_INVALID_OPERATION The item is disabled. - * @remarks This method works only when the annex style of the item allows selection. - */ + * Checks or unchecks the item at the specified index. + * + * @since 2.0 + * + * @return An error code + * @param[in] sectionIndex The section index + * @param[in] itemIndex The item index + * @param[in] check Set to @c true to select the item, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE A specified input parameter is invalid. + * @exception E_INVALID_OPERATION The item is disabled. + * @remarks This method works only when the annex style of the item allows selection. + * @remarks This method should be called only after TableView items are created. If this method needs to be called early in the lifecycle of the TableView, then UpdateTableView() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ result SetItemChecked(int sectionIndex, int itemIndex, bool check); /** - * Returns whether the item at the specified index is selected or not. - * - * @since 2.0 - * - * @return @c true if the item is selected, @n - * else @c false - * @param[in] sectionIndex The section index - * @param[in] itemIndex The item index - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE A specified input parameter is invalid. - * @remarks This method returns @c false, if the annex style of the item does not allow selection. - */ + * Returns whether the item at the specified index is selected or not. + * + * @since 2.0 + * + * @return @c true if the item is selected, @n + * else @c false + * @param[in] sectionIndex The section index + * @param[in] itemIndex The item index + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE A specified input parameter is invalid. + * @remarks This method returns @c false, if the annex style of the item does not allow selection. + * @remarks This method should be called only after TableView items are created. If this method needs to be called early in the lifecycle of the TableView, then UpdateTableView() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ bool IsItemChecked(int sectionIndex, int itemIndex) const; /** - * Enables or disables the item at the specified index. - * - * @since 2.0 - * - * @return An error code - * @param[in] sectionIndex The section index - * @param[in] itemIndex The item index - * @param[in] enable Set to @c true to enable the specified item, @n - * else @c false - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE A specified input parameter is invalid. - */ + * Enables or disables the item at the specified index. + * + * @since 2.0 + * + * @return An error code + * @param[in] sectionIndex The section index + * @param[in] itemIndex The item index + * @param[in] enable Set to @c true to enable the specified item, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE A specified input parameter is invalid. + * @remarks This method should be called only after TableView items are created. If this method needs to be called early in the lifecycle of the TableView, then UpdateTableView() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ result SetItemEnabled(int sectionIndex, int itemIndex, bool enable); /** - * Returns whether the item at the specified index is enabled or disabled. - * - * @since 2.0 - * - * @return @c true if the item is enabled, @n - * else @c false - * @param[in] sectionIndex The section index - * @param[in] itemIndex The item index - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE A specified input parameter is invalid. - */ + * Returns whether the item at the specified index is enabled or disabled. + * + * @since 2.0 + * + * @return @c true if the item is enabled, @n + * else @c false + * @param[in] sectionIndex The section index + * @param[in] itemIndex The item index + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE A specified input parameter is invalid. + * @remarks This method should be called only after TableView items are created. If this method needs to be called early in the lifecycle of the TableView, then UpdateTableView() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ bool IsItemEnabled(int sectionIndex, int itemIndex) const; /** - * Counts the total number of sections. - * - * @since 2.0 - * - * @return The total number of sections - */ + * Counts the total number of sections. + * + * @since 2.0 + * + * @return The total number of sections + */ int GetSectionCount(void) const; /** - * Counts all the items of the specified section. - * - * @since 2.0 - * - * @return The total number of items in the specified section - * @param[in] sectionIndex The section index - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE A specified input parameter is invalid. - */ + * Counts all the items of the specified section. + * + * @since 2.0 + * + * @return The total number of items in the specified section + * @param[in] sectionIndex The section index + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE A specified input parameter is invalid. + */ int GetItemCountAt(int sectionIndex) const; /** - * Updates the specified item. @n - * For instance, TABLE_VIEW_REFRESH_TYPE_ITEM_ADD is used when a new item needs to be added and TABLE_VIEW_REFRESH_TYPE_ITEM_REMOVE is used when an item is deleted from the - * table view. Moreover, TABLE_VIEW_REFRESH_TYPE_ITEM_MODIFY is used when the content of an existing item has changed and it needs to be updated. - * Note that calling this method with TABLE_VIEW_REFRESH_TYPE_ITEM_MODIFY invokes item provider's UpdateItem() for the given index in sequence. - * - * @since 2.0 - * - * @return An error code - * @param[in] sectionIndex The section index - * @param[in] itemIndex The item index - * @param[in] type The item to be added, removed, or modified - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE A specified input parameter is invalid. - * @remarks If the specified item. itemIndex is -1, then the method is applied to the section item with the given index. - * Note that if TABLE_VIEW_REFRESH_TYPE_ITEM_REMOVE option is used to a section item, all the items in the section (including the section item itself) are - * removed from the table view. - */ + * Updates the specified item. @n + * For instance, TABLE_VIEW_REFRESH_TYPE_ITEM_ADD is used when a new item needs to be added and TABLE_VIEW_REFRESH_TYPE_ITEM_REMOVE is used when an item is deleted from the + * table view. Moreover, TABLE_VIEW_REFRESH_TYPE_ITEM_MODIFY is used when the content of an existing item has changed and it needs to be updated. + * Note that calling this method with TABLE_VIEW_REFRESH_TYPE_ITEM_MODIFY invokes item provider's UpdateItem() for the given index in sequence. + * + * @since 2.0 + * + * @return An error code + * @param[in] sectionIndex The section index + * @param[in] itemIndex The item index + * @param[in] type The item to be added, removed, or modified + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE A specified input parameter is invalid. + * @remarks If the specified item. itemIndex is -1, then the method is applied to the section item with the given index. + * Note that if TABLE_VIEW_REFRESH_TYPE_ITEM_REMOVE option is used to a section item, all the items in the section (including the section item itself) are + * removed from the table view. + */ result RefreshItem(int sectionIndex, int itemIndex, TableViewRefreshType type); /** - * Updates all the items of a table view. - * - * @since 2.0 - * - * @return An error code - * @remarks This method clears all the items in the table view and invokes the methods of the item provider again to update the table view. - */ + * Updates all items of the table view. @n + * Note that calling this method invokes its item provider's UpdateItem() for all loaded items. + * + * @since 2.1 + * + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The %SectionTableView item provider is processing the other request. + */ + result RefreshAllItems(void); + + /** + * Updates all the items of a table view. + * + * @since 2.0 + * + * @return An error code + * @remarks This method clears all the items in the table view and invokes the methods of the item provider again to update the table view. + */ void UpdateTableView(void); /** - * Gets the index of the item at the specified position. - * - * @since 2.0 - * - * @param[in] position The position of the item - * @param[out] sectionIndex The section index of the item on specified position - * @param[out] itemIndex The item index of the item on specified position - * @remarks This method sets both of sectionIndex and itemIndex to -1 if no item is found at the given position. - */ + * Gets the index of the item at the specified position. + * + * @since 2.0 + * + * @param[in] position The position of the item + * @param[out] sectionIndex The section index of the item on specified position + * @param[out] itemIndex The item index of the item on specified position + * @remarks This method sets both of sectionIndex and itemIndex to -1 if no item is found at the given position. + * @remarks This method should be called only after TableView items are created. If this method needs to be called early in the lifecycle of the TableView, then UpdateTableView() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ result GetItemIndexFromPosition(const Tizen::Graphics::Point& position, int& sectionIndex, int& itemIndex) const; - /** - * Sets the color of a division line between items. - * - * @since 2.0 - * - * @return An error code - * @param[in] color The division line color - */ + /* + * Gets the index of the item at the specified position. + * + * @since 2.1 + * + * @param[in] position The position of the item + * @param[out] sectionIndex The section index of the item on specified position + * @param[out] itemIndex The item index of the item on specified position + * @remarks This method sets both of sectionIndex and itemIndex to -1 if no item is found at the given position. + * @remarks This method should be called only after TableView items are created. If this method needs to be called early in the lifecycle of the TableView, then UpdateTableView() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ + result GetItemIndexFromPosition(const Tizen::Graphics::FloatPoint& position, int& sectionIndex, int& itemIndex) const; + + /** + * Sets the color of a division line between items. + * + * @since 2.0 + * + * @return An error code + * @param[in] color The division line color + */ void SetItemDividerColor(const Tizen::Graphics::Color& color); /** - * Gets the color of a division line between items. - * - * @since 2.0 - * - * @return The color of a division line - */ + * Gets the color of a division line between items. + * + * @since 2.0 + * + * @return The color of a division line + */ Tizen::Graphics::Color GetItemDividerColor(void) const; /** - * Sets the background color of this control. - * - * @since 2.0 - * - * @param[in] color The background color - * @remarks The background bitmap has priority over the background color. When both the background bitmap and the background color are specified, - * only the bitmap image is displayed. - */ + * Sets the background color of this control. + * + * @since 2.0 + * + * @param[in] color The background color + * @remarks The background bitmap has priority over the background color. When both the background bitmap and the background color are specified, + * only the bitmap image is displayed. + */ void SetBackgroundColor(const Tizen::Graphics::Color& color); /** - * Gets the background color of this control. - * - * @since 2.0 - * - * @return The background color - */ + * Gets the background color of this control. + * + * @since 2.0 + * + * @return The background color + */ Tizen::Graphics::Color GetBackgroundColor(void) const; /** - * Sets the scroll input handling mode. - * - * @since 2.0 - * - * @param[in] mode The scroll input handling mode - * @see GetScrollInputMode() - */ + * Sets the scroll input handling mode. + * + * @since 2.0 + * + * @param[in] mode The scroll input handling mode + * @see GetScrollInputMode() + */ void SetScrollInputMode(ScrollInputMode mode); /** - * Gets the scroll input handling mode. - * - * @since 2.0 - * - * @return The scroll input handling mode - * @see SetScrollInputMode() - */ + * Gets the scroll input handling mode. + * + * @since 2.0 + * + * @return The scroll input handling mode + * @see SetScrollInputMode() + */ ScrollInputMode GetScrollInputMode(void) const; /* - * Scrolls the list contents with the amount of pixels. - * - * @since 2.0 - * - * @return An error code - * @param[in] pixel The amount of pixels to scroll - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE The specified @c pixel is out of range. - * @remarks If you call ScrollByPixel() with negative @c pixel when position of scroll is already top of contents then it will return E_OUT_OF_RANGE. - * Likewise, in case of positive @c pixel on the bottom position of scroll it will also return E_OUT_OF_RANGE. - */ + * Scrolls the list contents with the amount of pixels. + * + * @since 2.0 + * + * @return An error code + * @param[in] pixel The amount of pixels to scroll + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c pixel is out of range. + * @remarks If you call ScrollByPixel() with negative @c pixel when position of scroll is already top of contents then it will return E_OUT_OF_RANGE. + * Likewise, in case of positive @c pixel on the bottom position of scroll it will also return E_OUT_OF_RANGE. + */ result ScrollByPixel(int pixel); /* - * Gets the current scroll position - * - * @since 2.0 - */ + * Scrolls the list contents with the amount of pixels. + * + * @since 2.1 + * + * @return An error code + * @param[in] pixel The amount of pixels to scroll + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c pixel is out of range. + * @remarks If you call ScrollByPixel() with negative @c pixel when position of scroll is already top of contents then it will return E_OUT_OF_RANGE. + * Likewise, in case of positive @c pixel on the bottom position of scroll it will also return E_OUT_OF_RANGE. + */ + result ScrollByPixel(float pixel); + + /* + * Gets the current scroll position + * + * @since 2.0 + */ int GetCurrentScrollPosition(void) const; /* - * Enables or disables the scroll of SectionTableView items. - * - * @since 2.0 - */ + * Gets the current scroll position + * + * @since 2.1 + */ + float GetCurrentScrollPositionF(void) const; + + /* + * Enables or disables the scroll of SectionTableView items. + * + * @since 2.0 + */ void SetScrollEnabled(bool enable); /* - * Checks whether the scroll is enabled or disabled. - * - * @since 2.0 - */ + * Checks whether the scroll is enabled or disabled. + * + * @since 2.0 + */ bool IsScrollEnabled(void) const; private: diff --git a/inc/FUiCtrlSimpleItem.h b/inc/FUiCtrlSimpleItem.h index 00bf28b..1be5a7e 100644 --- a/inc/FUiCtrlSimpleItem.h +++ b/inc/FUiCtrlSimpleItem.h @@ -28,6 +28,7 @@ #include #include #include +#include #include #include @@ -82,6 +83,19 @@ public: */ result Construct(const Tizen::Graphics::Dimension& itemSize, ListAnnexStyle style); + /* + * Initializes this instance of %SimpleItem with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] itemSize The size of the item + * @param[in] style The style of Annex + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + */ + result Construct(const Tizen::Graphics::FloatDimension& itemSize, ListAnnexStyle style); + /** * Sets the text string and bitmap image for %SimpleItem. * diff --git a/inc/FUiCtrlSlider.h b/inc/FUiCtrlSlider.h index bc01d84..20aaae9 100644 --- a/inc/FUiCtrlSlider.h +++ b/inc/FUiCtrlSlider.h @@ -14,6 +14,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // + /** * @file FUiCtrlSlider.h * @brief This is the header file for the %Slider class. @@ -34,7 +35,6 @@ #include #include #include -#include #include #include @@ -164,6 +164,33 @@ public: */ result Construct(const Tizen::Graphics::Rectangle& rect, BackgroundStyle backgroundStyle = BACKGROUND_STYLE_DEFAULT, bool showTitle = false, int minValue = 0, int maxValue = 100, GroupStyle groupStyle = GROUP_STYLE_NONE); + /* + * Initializes this instance of %Slider with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect An instance of the Graphics::FloatRectangle class @n + * This instance represents the x and y coordinates of the top-left corner of the created window along with + * the width and height of the control. + * @param[in] backgroundStyle The background style set of the slider + * @param[in] showTitle Set to @c true to enable the show title, @n + * else @c false + * @param[in] minValue The minimum slider value + * @param[in] maxValue The maximum slider value + * @param[in] groupStyle The table view style of the slider + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. @n + * The background style of BACKGROUND_STYLE_NONE does not work with group styles except GROUP_STYLE_NONE. + * @exception E_OUT_OF_RANGE The specified values are less than @c -99 or greater than @c 999. + * @exception E_SYSTEM A system error has occurred. + * @remarks A control is fully usable only after it has been added to a container. Therefore, some methods may fail if used earlier. @n + * If the given size is less than the minimum, it returns E_INVALID_ARG. + * @remarks The size of the control must be within the range defined by the minimum size and the maximum size. + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect, BackgroundStyle backgroundStyle = BACKGROUND_STYLE_DEFAULT, bool showTitle = false, int minValue = 0, int maxValue = 100, GroupStyle groupStyle = GROUP_STYLE_NONE); + /** * Adds a IAdjustmentEventListener instance. @n * The added listener listens to events on the context of the specified event dispatcher when they are fired. @@ -243,15 +270,15 @@ public: void SetIcon(IconPosition position, const Tizen::Graphics::Bitmap& icon); /** - * Sets the title of the slider. - * - * @since 2.0 - * - * @return An error code - * @param[in] title The title to be set - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - */ + * Sets the title of the slider. + * + * @since 2.0 + * + * @return An error code + * @param[in] title The title to be set + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + */ result SetTitleText(const Tizen::Base::String& title); /** @@ -259,8 +286,9 @@ public: * * @since 2.0 * - * @return The title text of the entered string, @n - * else an empty string if the %Slider instance is not constructed + * @return The title text of the entered string + * + * @remarks By default returns an empty string. */ Tizen::Base::String GetTitleText(void) const; @@ -307,6 +335,31 @@ public: */ result Construct(const Tizen::Graphics::Rectangle& rect, unsigned long sliderStyle, int minValue = 0, int maxValue = 100); + /* + * Initializes this instance of %Slider with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect An instance of the Graphics::FloatRectangle class @n + * This instance represents the x and y coordinates of the top-left corner of the created window along with + * its width and height. + * @param[in] sliderStyle The style of the slider @n + * Multiple link types can be combined using bitwise OR operator. See Tizen::Ui::Controls::SliderStyle. + * @param[in] minValue The minimum slider value + * @param[in] maxValue The maximum slider value + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified minimum and maximum values are less than @c -99, or greater than @c 999. + * @exception E_INVALID_ARG A specified input parameter is invalid, or the specified @c minValue is greater than @c maxVaue. + * @exception E_SYSTEM A system error has occurred. + * @remarks A control is fully functional only after it has been added to a container. Therefore, some methods may fail if they are used before + * adding the control to the container. @n + * If the specified size is less than the minimum size, the %Slider control is constructed with the minimum size. + * @remarks The width and the height of the control must be greater than @c 0. + * @remarks The size of the control must be within the range defined by the minimum size and the maximum size. + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect, unsigned long sliderStyle, int minValue = 0, int maxValue = 100); + /** * Adds a ISliderEventListener instance. @n * The added listener can listen to the slider-related events. @@ -353,6 +406,29 @@ public: Tizen::Graphics::Color GetBarColor(void) const; /** + * Sets the background color of the bar. + * + * @since 2.1 + * + * @param[in] color The color to be set + * @remarks The method ignores the alpha value of the @c color parameter and sets the alpha value to @c 255. + * @see GetBarBackgroundColor() + */ + void SetBarBackgroundColor(const Tizen::Graphics::Color& barBackgroundColor); + + /** + * Gets the background color of the bar. + * + * @since 2.1 + * + * @return The background color of the bar, @n + * else RGBA(0, 0, 0, 0) if an error occurs + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @see SetBarBackgroundColor() + */ + Tizen::Graphics::Color GetBarBackgroundColor(void) const; + + /** * Sets the color of the slider. * * @since 2.0 diff --git a/inc/FUiCtrlSliderTypes.h b/inc/FUiCtrlSliderTypes.h index c22f1a9..e781a3b 100644 --- a/inc/FUiCtrlSliderTypes.h +++ b/inc/FUiCtrlSliderTypes.h @@ -14,6 +14,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // + /** * @file FUiCtrlSliderTypes.h * @brief This is the header file for the SliderStyle enumerations. @@ -42,12 +43,12 @@ enum SliderStyle }; /** - * @enum SliderThumbStatus - * - * Defines the possible states of the slider thumb. - * - * @since 2.0 - */ +* @enum SliderThumbStatus +* +* Defines the possible states of the slider thumb. +* +* @since 2.0 +*/ enum SliderThumbStatus { diff --git a/inc/FUiCtrlSplitPanel.h b/inc/FUiCtrlSplitPanel.h old mode 100644 new mode 100755 index 8d7b5c1..eab92ad --- a/inc/FUiCtrlSplitPanel.h +++ b/inc/FUiCtrlSplitPanel.h @@ -16,11 +16,11 @@ // /** - * @file FUiCtrlSplitPanel.h - * @brief This is the header file for the %SplitPanel class. - * - * This header file contains the declarations of the %SplitPanel class. - */ +* @file FUiCtrlSplitPanel.h +* @brief This is the header file for the %SplitPanel class. +* +* This header file contains the declarations of the %SplitPanel class. +*/ #ifndef _FUI_CTRL_SPLIT_PANEL_H_ #define _FUI_CTRL_SPLIT_PANEL_H_ @@ -34,6 +34,7 @@ namespace Tizen { namespace Ui { namespace Controls { class ISplitPanelEventListener; +class ISplitPanelEventListenerF; /** * @class SplitPanel @@ -132,6 +133,22 @@ public: */ result Construct(const Tizen::Graphics::Rectangle& rect, SplitPanelDividerStyle splitPanelDividerStyle, SplitPanelDividerDirection splitPanelDividerDirection); + /* + * Initializes this instance of %SplitPanel with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect The location and size of the %SplitPanel control as a FloatRectangle instance. + * @param[in] splitPanelDividerStyle The divider style of the %SplitPanel control + * @param[in] splitPanelDividerDirection The divider direction of the %SplitPanel control @n + * The specified divider direction determines the divider is vertical or horizontal. + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect, SplitPanelDividerStyle splitPanelDividerStyle, SplitPanelDividerDirection splitPanelDividerDirection); + + /** * Adds a ISplitPanelEventListener instance. @n * The added listener listens to events on the context of the specified event dispatcher when they are fired. @@ -144,6 +161,18 @@ public: */ result AddSplitPanelEventListener(ISplitPanelEventListener& listener); + /* + * Adds a ISplitPanelEventListenerF instance. @n + * The added listener listens to events on the context of the specified event dispatcher when they are fired. + * + * @since 2.1 + * + * @param[in] listener The event listener to be added + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_ALREADY_EXIST The event listener already exists. + */ + result AddSplitPanelEventListener(ISplitPanelEventListenerF& listener); + /** * Removes a ISplitPanelEventListener instance. @n * The removed listener cannot listen to events when they are fired. @@ -156,6 +185,18 @@ public: */ result RemoveSplitPanelEventListener(ISplitPanelEventListener& listener); + /* + * Removes a ISplitPanelEventListenerF instance. @n + * The removed listener cannot listen to events when they are fired. + * + * @since 2.1 + * + * @param[in] listener The event listener to be removed + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_NOT_FOUND The event listener is not found. + */ + result RemoveSplitPanelEventListener(ISplitPanelEventListenerF& listener); + /** * Sets the pane to the %SplitPanel control. * @@ -196,11 +237,32 @@ public: * @exception E_SUCCESS The method is successful. * @exception E_OUT_OF_RANGE A specified input parameter is invalid. * @see GetDividerPosition() - * @see SetMaximumDividerPosition(), GetMaximumDividerPosition() - * @see SetMinimumDividerPosition(), GetMinimumDividerPosition() + * @see SetMaximumDividerPosition() + * @see GetMaximumDividerPosition() + * @see SetMinimumDividerPosition() + * @see GetMinimumDividerPosition() + * @remarks This Api sets the value to current orientation. The divider position must be reset when the orientation of the form is changed. */ result SetDividerPosition(int position); + /* + * Sets the divider position of the control. + * + * @since 2.1 + * + * @return An error code + * @param[in] position The position of divider + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE A specified input parameter is invalid. + * @see GetDividerPosition() + * @see SetMaximumDividerPosition() + * @see GetMaximumDividerPosition() + * @see SetMinimumDividerPosition() + * @see GetMinimumDividerPosition() + * @remarks This Api sets the value to current orientation. The divider position must be reset when the orientation of the form is changed. + */ + result SetDividerPosition(float position); + /** * Gets the current divider position of the control. * @@ -209,11 +271,28 @@ public: * @return The current divider position * @remarks The specific error code can be accessed using the GetLastResult() method. * @see SetDividerPosition() - * @see SetMaximumDividerPosition(), GetMaximumDividerPosition() - * @see SetMinimumDividerPosition(), GetMinimumDividerPosition() + * @see SetMaximumDividerPosition() + * @see GetMaximumDividerPosition() + * @see SetMinimumDividerPosition() + * @see GetMinimumDividerPosition() */ int GetDividerPosition(void) const; + /* + * Gets the current divider position of the control. + * + * @since 2.1 + * + * @return The current divider position + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @see SetDividerPosition() + * @see SetMaximumDividerPosition() + * @see GetMaximumDividerPosition() + * @see SetMinimumDividerPosition() + * @see GetMinimumDividerPosition() + */ + float GetDividerPositionF(void) const; + /** * Sets the divider maximum position of the control. * @@ -224,10 +303,28 @@ public: * @exception E_SUCCESS The method is successful. * @exception E_OUT_OF_RANGE A specified input parameter is invalid. * @see GetMaximumDividerPosition() - * @see SetMinimumDividerPosition(), GetMinimumDividerPosition() + * @see SetMinimumDividerPosition() + * @see GetMinimumDividerPosition() + * @remarks This Api sets the value to current orientation. The maximum divider position must be reset when the orientation of the form is changed. */ result SetMaximumDividerPosition(int position); + /* + * Sets the divider maximum position of the control. + * + * @since 2.1 + * + * @return An error code + * @param[in] position The position of divider. + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE A specified input parameter is invalid. + * @see GetMaximumDividerPosition() + * @see SetMinimumDividerPosition() + * @see GetMinimumDividerPosition() + * @remarks This Api sets the value to current orientation. The maximum divider position must be reset when the orientation of the form is changed. + */ + result SetMaximumDividerPosition(float position); + /** * Gets the maximum divider position. * @@ -235,10 +332,23 @@ public: * * @return The maximum divider position of the control. * @see SetMaximumDividerPosition() - * @see SetMinimumDividerPosition(), GetMinimumDividerPosition() + * @see SetMinimumDividerPosition() + * @see GetMinimumDividerPosition() */ int GetMaximumDividerPosition(void) const; + /* + * Gets the maximum divider position. + * + * @since 2.1 + * + * @return The maximum divider position of the control. + * @see SetMaximumDividerPosition() + * @see SetMinimumDividerPosition() + * @see GetMinimumDividerPosition() + */ + float GetMaximumDividerPositionF(void) const; + /** * Sets the divider minimum position of the control. * @@ -249,10 +359,28 @@ public: * @exception E_SUCCESS The method is successful. * @exception E_OUT_OF_RANGE A specified input parameter is invalid. * @see GetMinimumDividerPosition() - * @see SetMaximumDividerPosition(), GetMaximumDividerPosition() + * @see SetMaximumDividerPosition() + * @see GetMaximumDividerPosition() + * @remarks This Api sets the value to current orientation. The minimum divider position must be reset when the orientation of the form is changed. */ result SetMinimumDividerPosition(int position); + /* + * Sets the divider minimum position of the control. + * + * @since 2.1 + * + * @return An error code + * @param[in] position The position of divider. + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE A specified input parameter is invalid. + * @see GetMinimumDividerPosition() + * @see SetMaximumDividerPosition() + * @see GetMaximumDividerPosition() + * @remarks This Api sets the value to current orientation. The minimum divider position must be reset when the orientation of the form is changed. + */ + result SetMinimumDividerPosition(float position); + /** * Gets the minimum divider position. * @@ -260,10 +388,23 @@ public: * * @return The minimum divider position of the control. * @see SetMinimumDividerPosition() - * @see SetMaximumDividerPosition(), GetMaximumDividerPosition() + * @see SetMaximumDividerPosition() + * @see GetMaximumDividerPosition() */ int GetMinimumDividerPosition(void) const; + /* + * Gets the minimum divider position. + * + * @since 2.1 + * + * @return The minimum divider position of the control. + * @see SetMinimumDividerPosition() + * @see SetMaximumDividerPosition() + * @see GetMaximumDividerPosition() + */ + float GetMinimumDividerPositionF(void) const; + /** * Maximizes the specified pane. * diff --git a/inc/FUiCtrlTab.h b/inc/FUiCtrlTab.h index 8b1b508..b34494d 100644 --- a/inc/FUiCtrlTab.h +++ b/inc/FUiCtrlTab.h @@ -14,6 +14,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // + /** * @file FUiCtrlTab.h * @brief This is the header file for the %Tab class. diff --git a/inc/FUiCtrlTabBar.h b/inc/FUiCtrlTabBar.h index 05e59c8..1d834b2 100644 --- a/inc/FUiCtrlTabBar.h +++ b/inc/FUiCtrlTabBar.h @@ -193,6 +193,22 @@ public: */ result Construct(int x, int y, int width); + /* + * Initializes this instance of %TabBar with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] x The X position of the top left corner + * @param[in] y The Y position of the top left corner + * @param[in] width The width + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_INVALID_STATE This instance is in an invalid state. + * @exception E_SYSTEM A system error has occurred. + */ + result Construct(float x, float y, float width); + // Operation public: @@ -435,6 +451,20 @@ public: */ result SetWidth(int width); + /* + * Sets the width of the tab bar. + * + * @since 2.1 + * + * @return An error code + * @param[in] width The width + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified input parameter is invalid. + * @exception E_INVALID_STATE This instance is in an invalid state. + * @exception E_SYSTEM A system error has occurred. + */ + result SetWidth(float width); + //Listeners public: diff --git a/inc/FUiCtrlTableView.h b/inc/FUiCtrlTableView.h index ad142df..0da36ba 100644 --- a/inc/FUiCtrlTableView.h +++ b/inc/FUiCtrlTableView.h @@ -16,11 +16,11 @@ // /** - * @file FUiCtrlTableView.h - * @brief This is the header file for the %TableView class. - * - * This header file contains the declarations of the %TableView class and its helper classes. - */ +* @file FUiCtrlTableView.h +* @brief This is the header file for the %TableView class. +* +* This header file contains the declarations of the %TableView class and its helper classes. +*/ #ifndef _FUI_CTRL_TABLE_VIEW_H_ #define _FUI_CTRL_TABLE_VIEW_H_ @@ -29,13 +29,16 @@ #include #include #include +#include namespace Tizen { namespace Ui { namespace Controls { class ITableViewItemProvider; +class ITableViewItemProviderF; class ITableViewItemEventListener; class IFastScrollListener; class IScrollEventListener; +class IScrollEventListenerF; /** * @class TableView @@ -180,7 +183,7 @@ TableViewSample::CreateItem(int itemIndex, int itemWidth) TableViewAnnexStyle style = TABLE_VIEW_ANNEX_STYLE_NORMAL; TableViewItem* pItem = new TableViewItem(); - switch (itemIndex % 5) + switch (itemIndex % 6) { case 0: style = TABLE_VIEW_ANNEX_STYLE_NORMAL; @@ -197,6 +200,9 @@ TableViewSample::CreateItem(int itemIndex, int itemWidth) case 4: style = TABLE_VIEW_ANNEX_STYLE_RADIO; break; + case 5: + style = TABLE_VIEW_ANNEX_STYLE_ONOFF_SLIDING_WITH_DIVIDER; + break; default: break; } @@ -237,412 +243,524 @@ class _OSP_EXPORT_ TableView { public: /** - * The object is not fully constructed after this constructor is called. Hence, the Construct() method must be called after calling this constructor. - * - * @since 2.0 - */ + * The object is not fully constructed after this constructor is called. Hence, the Construct() method must be called after calling this constructor. + * + * @since 2.0 + */ TableView(void); /** - * This destructor overrides Tizen::Base::Object::~Object(). - * - * @since 2.0 - */ + * This destructor overrides Tizen::Base::Object::~Object(). + * + * @since 2.0 + */ virtual ~TableView(void); /** - * Initializes this instance of %TableView with the specified parameters. - * - * @since 2.0 - * - * @return An error code - * @param[in] rect An instance of the Graphics::Rectangle class - * This instance represents the x and y coordinates of the left top corner of the created %TableView along with the width and height. - * @param[in] itemDivider Set to @c true to display an item divider, @n - * else @c false - * @param[in] scrollStyle The style of %TableView scroll bar style - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG A specified input parameter is invalid, or either the rect.width or rect.height parameter has a negative value. - * - */ + * Initializes this instance of %TableView with the specified parameters. + * + * @since 2.0 + * + * @return An error code + * @param[in] rect An instance of the Graphics::Rectangle class + * This instance represents the x and y coordinates of the left top corner of the created %TableView along with the width and height. + * @param[in] itemDivider Set to @c true to display an item divider, @n + * else @c false + * @param[in] scrollStyle The style of %TableView scroll bar style + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid, or either the rect.width or rect.height parameter has a negative value. + * + */ result Construct(const Tizen::Graphics::Rectangle& rect, bool itemDivider, TableViewScrollBarStyle scrollStyle); + /* + * Initializes this instance of %TableView with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect An instance of the Graphics::FloatRectangle class + * This instance represents the x and y coordinates of the left top corner of the created %TableView along with the width and height. + * @param[in] itemDivider Set to @c true to display an item divider, @n + * else @c false + * @param[in] scrollStyle The style of %TableView scroll bar style + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid, or either the rect.width or rect.height parameter has a negative value. + * + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect, bool itemDivider, TableViewScrollBarStyle scrollStyle); + /** - * Sets the item provider that creates and deletes items for the simple style table view. - * - * @since 2.0 - * - * @param[in] pProvider The item provider to create and delete items - * @remarks If an item provider is not set for the table view, the table view does not work. The specified provider should be allocated in heap memory. - * To reset the item provider, pass @c null to @c pProvider. - */ + * Sets the item provider that creates and deletes items for the simple style table view. + * + * @since 2.0 + * + * @param[in] pProvider The item provider to create and delete items + * @remarks If an item provider is not set for the table view, the table view does not work. The specified provider should be allocated in heap memory. + * To reset the item provider, pass @c null to @c pProvider. + */ void SetItemProvider(ITableViewItemProvider* pProvider); + /* + * Sets the item provider that creates and deletes items for the simple style table view. + * + * @since 2.1 + * + * @param[in] pProvider The item provider to create and delete items + * @remarks If an item provider is not set for the table view, the table view does not work. The specified provider should be allocated in heap memory. + * To reset the item provider, pass @c null to @c pProvider. + */ + void SetItemProviderF(ITableViewItemProviderF* pProvider); + /** - * Begins the reordering mode. - * - * @since 2.0 - * - * @see ITableViewViewItemEventListener::OnTableViewItemReordered() - */ + * Begins the reordering mode. + * + * @since 2.0 + * + * @see ITableViewViewItemEventListener::OnTableViewItemReordered() + */ void BeginReorderingMode(void); /** - * Ends the reordering mode. - * - * @since 2.0 - * - * @see ITableViewViewItemEventListener::OnTableViewItemReordered() - */ + * Ends the reordering mode. + * + * @since 2.0 + * + * @see ITableViewViewItemEventListener::OnTableViewItemReordered() + */ void EndReorderingMode(void); /** - * Returns whether the %TableView control is in reordering mode or not. - * - * @since 2.0 - * - * @return @c true if the %TableView is in reordering mode, @n - * else @c false - */ + * Returns whether the %TableView control is in reordering mode or not. + * + * @since 2.0 + * + * @return @c true if the %TableView is in reordering mode, @n + * else @c false + */ bool IsInReorderingMode(void) const; /** - * Adds a listener instance that listens to state changes of table view items. @n - * The added listener can listen to events on the specified event dispatcher's context when they are fired. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The event listener to add - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_ALREADY_EXIST The listener is already added. - * @remarks The specified listener should be allocated in heap memory. - */ + * Adds a listener instance that listens to state changes of table view items. @n + * The added listener can listen to events on the specified event dispatcher's context when they are fired. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The event listener to add + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_ALREADY_EXIST The listener is already added. + * @remarks The specified listener should be allocated in heap memory. + */ result AddTableViewItemEventListener(ITableViewItemEventListener& listener); /** - * Removes a listener instance that listens to state changes of table view items. @n - * The removed listener cannot listen to events when they are fired. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The event listener to remove - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_NOT_FOUND The listener is not found. - */ + * Removes a listener instance that listens to state changes of table view items. @n + * The removed listener cannot listen to events when they are fired. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The event listener to remove + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_NOT_FOUND The listener is not found. + */ result RemoveTableViewItemEventListener(ITableViewItemEventListener& listener); /** - * Adds a listener instance that listens to state changes of a fast scroll. @n - * The added listener can listen to events on the specified event dispatcher's context when they are fired. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The event listener to add - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. - * @exception E_OBJ_ALREADY_EXIST The listener is already added. - * @remarks The specified listener should be allocated in heap memory. - */ + * Adds a listener instance that listens to state changes of a fast scroll. @n + * The added listener can listen to events on the specified event dispatcher's context when they are fired. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The event listener to add + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * @exception E_OBJ_ALREADY_EXIST The listener is already added. + * @remarks The specified listener should be allocated in heap memory. + */ result AddFastScrollListener(IFastScrollListener& listener); /** - * Removes a listener instance that listens to state changes of a fast scroll. @n - * The removed listener cannot listen to events when they are fired. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The event listener to remove - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. - * @exception E_OBJ_NOT_FOUND The listener is not found. - */ + * Removes a listener instance that listens to state changes of a fast scroll. @n + * The removed listener cannot listen to events when they are fired. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The event listener to remove + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * @exception E_OBJ_NOT_FOUND The listener is not found. + */ result RemoveFastScrollListener(IFastScrollListener& listener); /** - * Adds a listener instance that listens to state changes of a scroll event. @n - * The added listener can listen to events on the specified event dispatcher's context when they are fired. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The event listener to add - * @see IScrollEventListener::OnScrollEndReached() - * @see RemoveScrollEventListener() - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. - * @exception E_OBJ_ALREADY_EXIST The listener is already added. - * @remarks The specified listener should be allocated in heap memory. - */ + * Adds a listener instance that listens to state changes of a scroll event. @n + * The added listener can listen to events on the specified event dispatcher's context when they are fired. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The event listener to add + * @see IScrollEventListener::OnScrollEndReached() + * @see RemoveScrollEventListener() + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * @exception E_OBJ_ALREADY_EXIST The listener is already added. + * @remarks The specified listener should be allocated in heap memory. + */ result AddScrollEventListener(IScrollEventListener& listener); /** - * Removes a listener instance that listens to state changes of a scroll event. @n - * The removed listener cannot listen to events when they are fired. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The event listener to remove - * @see IScrollEventListener::OnScrollEndReached() - * @see AddScrollEventListener() - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. - * @exception E_OBJ_NOT_FOUND The listener is not found. - */ + * Removes a listener instance that listens to state changes of a scroll event. @n + * The removed listener cannot listen to events when they are fired. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The event listener to remove + * @see IScrollEventListener::OnScrollEndReached() + * @see AddScrollEventListener() + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * @exception E_OBJ_NOT_FOUND The listener is not found. + */ result RemoveScrollEventListener(IScrollEventListener& listener); + /* + * Adds a listener instance that listens to state changes of a scroll event. @n + * The added listener can listen to events on the specified event dispatcher's context when they are fired. + * + * @since 2.1 + * + * @return An error code + * @param[in] listener The event listener to add + * @see IScrollEventListenerF::OnScrollEndReached() + * @see RemoveScrollEventListenerF() + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * @exception E_OBJ_ALREADY_EXIST The listener is already added. + * @remarks The specified listener should be allocated in heap memory. + */ + result AddScrollEventListener(IScrollEventListenerF& listener); + + /* + * Removes a listener instance that listens to state changes of a scroll event. @n + * The removed listener cannot listen to events when they are fired. + * + * @since 2.1 + * + * @return An error code + * @param[in] listener The event listener to remove + * @see IScrollEventListenerF::OnScrollEndReached() + * @see AddScrollEventListenerF() + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + * @exception E_OBJ_NOT_FOUND The listener is not found. + */ + result RemoveScrollEventListener(IScrollEventListenerF& listener); + /** - * Sets the index table view of the scroll by texts. - * - * @since 2.0 - * - * @return An error code - * @param[in] text The text of the index - * @param[in] useSearchIcon Set to @c true to show the magnifying icon, @n - * else @c false - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG A specified input parameter is invalid. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. - */ + * Sets the index table view of the scroll by texts. + * + * @since 2.0 + * + * @return An error code + * @param[in] text The text of the index + * @param[in] useSearchIcon Set to @c true to show the magnifying icon, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation. + */ result SetFastScrollIndex(const Tizen::Base::String& text, bool useSearchIcon); /** - * Gets the group and item indexes of the top item. - * - * @since 2.0 - * - * @return The item index - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_NOT_FOUND Top drawn item is not found. - */ + * Gets the group and item indexes of the top item. + * + * @since 2.0 + * + * @return The item index + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_NOT_FOUND Top drawn item is not found. + */ int GetTopDrawnItemIndex(void) const; /** - * Gets the group and item indexes of the bottom item. - * - * @since 2.0 - * - * @return The item index - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_NOT_FOUND Bottom drawn item is not found. - */ + * Gets the group and item indexes of the bottom item. + * + * @since 2.0 + * + * @return The item index + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_NOT_FOUND Bottom drawn item is not found. + */ int GetBottomDrawnItemIndex(void) const; /** - * Scrolls to the item at the specified index. - * The specified item is drawn at the position specified by the item alignment. - * - * @since 2.0 - * - * @return An error code - * @param[in] itemIndex The targeted item index - * @param[in] itemAlignment The item alignment - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE A specified input parameter is invalid. - */ + * Scrolls to the item at the specified index. + * The specified item is drawn at the position specified by the item alignment. + * + * @since 2.0 + * + * @return An error code + * @param[in] itemIndex The targeted item index + * @param[in] itemAlignment The item alignment + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE A specified input parameter is invalid. + * @remarks This method should be called only after TableView items are created. If this method needs to be called early in the lifecycle of the TableView, then UpdateTableView() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ result ScrollToItem(int itemIndex, TableViewScrollItemAlignment itemAlignment = TABLE_VIEW_SCROLL_ITEM_ALIGNMENT_TOP); /** - * Checks or unchecks the item at the specified index. - * - * @since 2.0 - * - * @return An error code - * @param[in] itemIndex The item index to be checked - * @param[in] check Set to @c true to select the item, @n - * else @c false - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE A specified input parameter is invalid. - * @exception E_INVALID_OPERATION The item is disabled. - * @remarks This method works only when the annex style of the item allows selection. - */ + * Checks or unchecks the item at the specified index. + * + * @since 2.0 + * + * @return An error code + * @param[in] itemIndex The item index to be checked + * @param[in] check Set to @c true to select the item, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE A specified input parameter is invalid. + * @exception E_INVALID_OPERATION The item is disabled. + * @remarks This method works only when the annex style of the item allows selection. + * @remarks This method should be called only after TableView items are created. If this method needs to be called early in the lifecycle of the TableView, then UpdateTableView() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ result SetItemChecked(int itemIndex, bool check); /** - * Returns whether the item at the specified index is selected or not. - * - * @since 2.0 - * - * @return @c true if the item is selected, @n - * else @c false - * @param[in] itemIndex The item itemIndex - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE A specified input parameter is invalid. - * @remarks This method returns @c false, if the annex style of the item does not allow selection. - */ + * Returns whether the item at the specified index is selected or not. + * + * @since 2.0 + * + * @return @c true if the item is selected, @n + * else @c false + * @param[in] itemIndex The item itemIndex + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE A specified input parameter is invalid. + * @remarks This method returns @c false, if the annex style of the item does not allow selection. + * @remarks This method should be called only after TableView items are created. If this method needs to be called early in the lifecycle of the TableView, then UpdateTableView() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ bool IsItemChecked(int itemIndex) const; /** - * Enables or disables the item at the specified index. - * - * @since 2.0 - * - * @return An error code - * @param[in] itemIndex The item index - * @param[in] enable Set to @c true to enable the specified item, @n - * else @c false - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE A specified input parameter is invalid. - */ + * Enables or disables the item at the specified index. + * + * @since 2.0 + * + * @return An error code + * @param[in] itemIndex The item index + * @param[in] enable Set to @c true to enable the specified item, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE A specified input parameter is invalid. + * @remarks This method should be called only after TableView items are created. If this method needs to be called early in the lifecycle of the TableView, then UpdateTableView() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ result SetItemEnabled(int itemIndex, bool enable); /** - * Returns whether the item at the specified index is enabled or disabled. - * - * @since 2.0 - * - * @return @c true if the item is enabled, @n - * else @c false - * @param[in] itemIndex The item index - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE A specified input parameter is invalid. - */ + * Returns whether the item at the specified index is enabled or disabled. + * + * @since 2.0 + * + * @return @c true if the item is enabled, @n + * else @c false + * @param[in] itemIndex The item index + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE A specified input parameter is invalid. + * @remarks This method should be called only after TableView items are created. If this method needs to be called early in the lifecycle of the TableView, then UpdateTableView() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ bool IsItemEnabled(int itemIndex) const; /** - * Counts all the items of the specified group. - * - * @since 2.0 - * - * @return The total number of items - */ + * Counts all the items of the specified group. + * + * @since 2.0 + * + * @return The total number of items + */ int GetItemCount(void) const; /** - * Updates the specified item. @n - * For instance, TABLE_VIEW_REFRESH_TYPE_ITEM_ADD is used when a new item needs to be added and TABLE_VIEW_REFRESH_TYPE_ITEM_REMOVE is used when an item is deleted from the - * table view. Moreover, TABLE_VIEW_REFRESH_TYPE_ITEM_MODIFY is used when the content of an existing item has changed and it needs to be updated. - * Note that calling this method with TABLE_VIEW_REFRESH_TYPE_ITEM_MODIFY invokes item provider's UpdateItem() for the given index in sequence. - * - * @since 2.0 - * - * @return An error code - * @param[in] itemIndex The item index - * @param[in] type The item to be added, removed, or modified - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE A specified input parameter is invalid. - * @remarks If the specified itemIndex. - */ + * Updates the specified item. @n + * For instance, TABLE_VIEW_REFRESH_TYPE_ITEM_ADD is used when a new item needs to be added and TABLE_VIEW_REFRESH_TYPE_ITEM_REMOVE is used when an item is deleted from the + * table view. Moreover, TABLE_VIEW_REFRESH_TYPE_ITEM_MODIFY is used when the content of an existing item has changed and it needs to be updated. + * Note that calling this method with TABLE_VIEW_REFRESH_TYPE_ITEM_MODIFY invokes item provider's UpdateItem() for the given index in sequence. + * + * @since 2.0 + * + * @return An error code + * @param[in] itemIndex The item index + * @param[in] type The item to be added, removed, or modified + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE A specified input parameter is invalid. + * @remarks If the specified itemIndex. + */ result RefreshItem(int itemIndex, TableViewRefreshType type); /** - * Updates all the items of a table view. - * - * @since 2.0 - * - * @return An error code - * @remarks This method clears all the items in the table view and invokes the methods of the item provider again to update the table view. - */ + * Updates all items of the table view. @n + * Note that calling this method invokes its item provider's UpdateItem() for all loaded items. + * + * @since 2.1 + * + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The %TableView item provider is processing the other request. + */ + result RefreshAllItems(void); + + /** + * Updates all the items of a table view. + * + * @since 2.0 + * + * @return An error code + * @remarks This method clears all the items in the table view and invokes the methods of the item provider again to update the table view. + */ void UpdateTableView(void); /** - * Gets the index of the item at the specified position. - * - * @since 2.0 - * - * @return The item index of the item on specified position - * @param[in] position The position of the item - * @remarks This method returns -1 if no item is found at the given position. - */ + * Gets the index of the item at the specified position. + * + * @since 2.0 + * + * @return The item index of the item on specified position + * @param[in] position The position of the item + * @remarks This method returns -1 if no item is found at the given position. + * @remarks This method should be called only after TableView items are created. If this method needs to be called early in the lifecycle of the TableView, then UpdateTableView() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ int GetItemIndexFromPosition(const Tizen::Graphics::Point& position) const; + /* + * Gets the index of the item at the specified position. + * + * @since 2.1 + * + * @return The item index of the item on specified position + * @param[in] position The position of the item + * @remarks This method returns -1 if no item is found at the given position. + * @remarks This method should be called only after TableView items are created. If this method needs to be called early in the lifecycle of the TableView, then UpdateTableView() method should be called explicitly (e.g. during Tizen::Ui::Control::OnInitializing()). + */ + int GetItemIndexFromPosition(const Tizen::Graphics::FloatPoint& position) const; + /** - * Sets the color of a division line between items. - * - * @since 2.0 - * - * @return An error code - * @param[in] color The division line color - */ + * Sets the color of a division line between items. + * + * @since 2.0 + * + * @return An error code + * @param[in] color The division line color + */ void SetItemDividerColor(const Tizen::Graphics::Color& color); /** - * Gets the color of a division line between items. - * - * @since 2.0 - * - * @return The color of a division line - */ + * Gets the color of a division line between items. + * + * @since 2.0 + * + * @return The color of a division line + */ Tizen::Graphics::Color GetItemDividerColor(void) const; /** - * Sets the background color of this control. - * - * @since 2.0 - * - * @param[in] color The background color - * @remarks The background bitmap has priority over the background color. When both the background bitmap and the background color are specified, - * only the bitmap image is displayed. - */ + * Sets the background color of this control. + * + * @since 2.0 + * + * @param[in] color The background color + * @remarks The background bitmap has priority over the background color. When both the background bitmap and the background color are specified, + * only the bitmap image is displayed. + */ void SetBackgroundColor(const Tizen::Graphics::Color& color); /** - * Gets the background color of this control. - * - * @since 2.0 - * - * @return The background color - */ + * Gets the background color of this control. + * + * @since 2.0 + * + * @return The background color + */ Tizen::Graphics::Color GetBackgroundColor(void) const; /** - * Sets the scroll input handling mode. - * - * @since 2.0 - * - * @param[in] mode The scroll input handling mode - * @see GetScrollInputMode() - */ + * Sets the scroll input handling mode. + * + * @since 2.0 + * + * @param[in] mode The scroll input handling mode + * @see GetScrollInputMode() + */ void SetScrollInputMode(ScrollInputMode mode); /** - * Gets the scroll input handling mode. - * - * @since 2.0 - * - * @return The scroll input handling mode - * @see SetScrollInputMode() - */ + * Gets the scroll input handling mode. + * + * @since 2.0 + * + * @return The scroll input handling mode + * @see SetScrollInputMode() + */ ScrollInputMode GetScrollInputMode(void) const; /* - * Scrolls the list contents with the amount of pixels. - * - * @since 2.0 - * - * @return An error code - * @param[in] pixel The amount of pixels to scroll - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_RANGE The specified @c pixel is out of range. - * @remarks If you call ScrollByPixel() with negative @c pixel when position of scroll is already top of contents then it will return E_OUT_OF_RANGE. - * Likewise, in case of positive @c pixel on the bottom position of scroll it will also return E_OUT_OF_RANGE. - */ + * Scrolls the list contents with the amount of pixels. + * + * @since 2.0 + * + * @return An error code + * @param[in] pixel The amount of pixels to scroll + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c pixel is out of range. + * @remarks If you call ScrollByPixel() with negative @c pixel when position of scroll is already top of contents then it will return E_OUT_OF_RANGE. + * Likewise, in case of positive @c pixel on the bottom position of scroll it will also return E_OUT_OF_RANGE. + */ result ScrollByPixel(int pixel); /* - * Gets the current scroll position - * - * @since 2.0 - */ - int GetCurrentScrollPosition(void) const; + * Scrolls the list contents with the amount of pixels. + * + * @since 2.1 + * + * @return An error code + * @param[in] pixel The amount of pixels to scroll + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_RANGE The specified @c pixel is out of range. + * @remarks If you call ScrollByPixel() with negative @c pixel when position of scroll is already top of contents then it will return E_OUT_OF_RANGE. + * Likewise, in case of positive @c pixel on the bottom position of scroll it will also return E_OUT_OF_RANGE. + */ + result ScrollByPixel(float pixel); + + /* + * Gets the current scroll position + * + * @since 2.0 + */ + int GetCurrentScrollPosition(void) const; + + /* + * Gets the current scroll position + * + * @since 2.1 + */ + float GetCurrentScrollPositionF(void) const; /* - * Enables or disables the scroll of TableView items. - * - * @since 2.0 - */ + * Enables or disables the scroll of TableView items. + * + * @since 2.0 + */ void SetScrollEnabled(bool enable); /* - * Checks whether the scroll is enabled or disabled. - * - * @since 2.0 - */ + * Checks whether the scroll is enabled or disabled. + * + * @since 2.0 + */ bool IsScrollEnabled(void) const; private: diff --git a/inc/FUiCtrlTableViewContextItem.h b/inc/FUiCtrlTableViewContextItem.h index a33ad5e..32ddc13 100644 --- a/inc/FUiCtrlTableViewContextItem.h +++ b/inc/FUiCtrlTableViewContextItem.h @@ -16,11 +16,11 @@ // /** - * @file FUiCtrlTableViewContextItem.h - * @brief This is the header file for the %TableViewContextItem class. - * - * This header file contains the declarations of the %TableViewContextItem class and its helper classes. - */ +* @file FUiCtrlTableViewContextItem.h +* @brief This is the header file for the %TableViewContextItem class. +* +* This header file contains the declarations of the %TableViewContextItem class and its helper classes. +*/ #ifndef _FUI_CTRL_TABLE_VIEW_CONTEXT_ITEM_H_ #define _FUI_CTRL_TABLE_VIEW_CONTEXT_ITEM_H_ @@ -30,46 +30,58 @@ namespace Tizen { namespace Ui { namespace Controls { /** - * @class TableViewContextItem - * @brief This class defines common behavior for a %TableViewContextItem. - * - * @since 2.0 - * - * The %TableViewContextItem class is a class which represents a context item for TableView. - * A context item is shown when a table view item is swept, if %TableViewContextItem is set to the table view item. - * - */ +* @class TableViewContextItem +* @brief This class defines common behavior for a %TableViewContextItem. +* +* @since 2.0 +* +* The %TableViewContextItem class is a class which represents a context item for TableView. +* A context item is shown when a table view item is swept, if %TableViewContextItem is set to the table view item. +* +*/ class _OSP_EXPORT_ TableViewContextItem : public TableViewItemBase { public: /** - * The object is not fully constructed after this constructor is called. Hence, the Construct() method must be called after calling this constructor. - * - * @since 2.0 - */ + * The object is not fully constructed after this constructor is called. Hence, the Construct() method must be called after calling this constructor. + * + * @since 2.0 + */ TableViewContextItem(void); /** - * This destructor overrides Tizen::Base::Object::~Object(). - * - * @since 2.0 - */ + * This destructor overrides Tizen::Base::Object::~Object(). + * + * @since 2.0 + */ virtual ~TableViewContextItem(void); /** - * Initializes this instance of %TableViewContextItem with the specified parameter. - * - * @since 2.0 - * - * @return An error code - * @param[in] itemSize The size of the item - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_MEMORY The memory is insufficient. - */ + * Initializes this instance of %TableViewContextItem with the specified parameter. + * + * @since 2.0 + * + * @return An error code + * @param[in] itemSize The size of the item + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_MEMORY The memory is insufficient. + */ result Construct(const Tizen::Graphics::Dimension& itemSize); + /* + * Initializes this instance of %TableViewContextItem with the specified parameter. + * + * @since 2.1 + * + * @return An error code + * @param[in] itemSize The size of the item + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_MEMORY The memory is insufficient. + */ + result Construct(const Tizen::Graphics::FloatDimension& itemSize); + private: friend class _TableViewItemImpl; diff --git a/inc/FUiCtrlTableViewGroupItem.h b/inc/FUiCtrlTableViewGroupItem.h index 4e8f42e..73f11a7 100644 --- a/inc/FUiCtrlTableViewGroupItem.h +++ b/inc/FUiCtrlTableViewGroupItem.h @@ -30,71 +30,110 @@ namespace Tizen { namespace Ui { namespace Controls { /** - * @class TableViewGroupItem - * @brief This class defines common behavior of %TableViewGroupItem. - * - * @since 2.0 - * - * The %TableViewGroupItem class displays a table view group item. The %TableViewGroupItem can have any layout of Controls or Containers as children. - */ +* @class TableViewGroupItem +* @brief This class defines common behavior of %TableViewGroupItem. +* +* @since 2.0 +* +* The %TableViewGroupItem class displays a table view group item. The %TableViewGroupItem can have any layout of Controls or Containers as children. +*/ class _OSP_EXPORT_ TableViewGroupItem : public TableViewItemBase { public: /** - * The object is not fully constructed after this constructor is called. Hence, the Construct() method must be called after calling this constructor. - * - * @since 2.0 - */ + * The object is not fully constructed after this constructor is called. Hence, the Construct() method must be called after calling this constructor. + * + * @since 2.0 + */ TableViewGroupItem(void); /** - * This destructor overrides Tizen::Base::Object::~Object(). - * - * @since 2.0 - */ + * This destructor overrides Tizen::Base::Object::~Object(). + * + * @since 2.0 + */ virtual ~TableViewGroupItem(void); /** - * Initializes this instance of %TableViewGroupItem with the specified parameter. - * - * @since 2.0 - * - * @return An error code - * @param[in] itemSize The size of the item - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG A specified input parameter is invalid. - */ + * Initializes this instance of %TableViewGroupItem with the specified parameter. + * + * @since 2.0 + * + * @return An error code + * @param[in] itemSize The size of the item + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + */ result Construct(const Tizen::Graphics::Dimension& itemSize); /** - * Initializes this instance of %TableViewGroupItem with the specified parameter. - * - * @since 2.0 - * - * @return An error code - * @param[in] layout The layout for both of the portrait and landscape modes - * @param[in] itemSize The size of the item - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG A specified input parameter is invalid. - */ + * Initializes this instance of %TableViewGroupItem with the specified parameter. + * + * @since 2.0 + * + * @return An error code + * @param[in] layout The layout for both of the portrait and landscape modes + * @param[in] itemSize The size of the item + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + */ result Construct(const Tizen::Ui::Layout& layout, const Tizen::Graphics::Dimension& itemSize); /** - * Initializes this instance of %TableViewGroupItem with the specified parameter. - * - * @since 2.0 - * - * @return An error code - * @param[in] portraitLayout The layout for portrait mode - * @param[in] landscapeLayout The layout for landscape mode - * @param[in] itemSize The size of the item - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG A specified input parameter is invalid. - */ + * Initializes this instance of %TableViewGroupItem with the specified parameter. + * + * @since 2.0 + * + * @return An error code + * @param[in] portraitLayout The layout for portrait mode + * @param[in] landscapeLayout The layout for landscape mode + * @param[in] itemSize The size of the item + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + */ result Construct(const Tizen::Ui::Layout& portraitLayout, const Tizen::Ui::Layout& landscapeLayout, const Tizen::Graphics::Dimension& itemSize); + /* + * Initializes this instance of %TableViewGroupItem with the specified parameter. + * + * @since 2.1 + * + * @return An error code + * @param[in] itemSize The size of the item + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + */ + result Construct(const Tizen::Graphics::FloatDimension& itemSize); + + /* + * Initializes this instance of %TableViewGroupItem with the specified parameter. + * + * @since 2.1 + * + * @return An error code + * @param[in] layout The layout for both of the portrait and landscape modes + * @param[in] itemSize The size of the item + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + */ + result Construct(const Tizen::Ui::Layout& layout, const Tizen::Graphics::FloatDimension& itemSize); + + /* + * Initializes this instance of %TableViewGroupItem with the specified parameter. + * + * @since 2.1 + * + * @return An error code + * @param[in] portraitLayout The layout for portrait mode + * @param[in] landscapeLayout The layout for landscape mode + * @param[in] itemSize The size of the item + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + */ + result Construct(const Tizen::Ui::Layout& portraitLayout, const Tizen::Ui::Layout& landscapeLayout, const Tizen::Graphics::FloatDimension& itemSize); + private: friend class _TableViewItemImpl; diff --git a/inc/FUiCtrlTableViewItem.h b/inc/FUiCtrlTableViewItem.h index d309246..7f30a36 100644 --- a/inc/FUiCtrlTableViewItem.h +++ b/inc/FUiCtrlTableViewItem.h @@ -16,11 +16,11 @@ // /** - * @file FUiCtrlTableViewItem.h - * @brief This is the header file for the %TableViewItem class. - * - * This header file contains the declarations of the %TableViewItem class and its helper classes. - */ +* @file FUiCtrlTableViewItem.h +* @brief This is the header file for the %TableViewItem class. +* +* This header file contains the declarations of the %TableViewItem class and its helper classes. +*/ #ifndef _FUI_CTRL_TABLE_VIEW_ITEM_H_ #define _FUI_CTRL_TABLE_VIEW_ITEM_H_ @@ -32,98 +32,151 @@ namespace Tizen { namespace Ui { namespace Controls class TableViewContextItem; /** - * @class TableViewItem - * @brief This class defines common behavior for a %TableViewItem. - * - * @since 2.0 - * - * The %TableViewItem class is a base class which represents a table view item which is the unit of handling of TableView. - * - */ +* @class TableViewItem +* @brief This class defines common behavior for a %TableViewItem. +* +* @since 2.0 +* +* The %TableViewItem class is a base class which represents a table view item which is the unit of handling of TableView. +* +*/ class _OSP_EXPORT_ TableViewItem : public TableViewItemBase { public: /** - * The object is not fully constructed after this constructor is called. Hence, the Construct() method must be called after calling this constructor. - * - * @since 2.0 - */ + * The object is not fully constructed after this constructor is called. Hence, the Construct() method must be called after calling this constructor. + * + * @since 2.0 + */ TableViewItem(void); /** - * This destructor overrides Tizen::Base::Object::~Object(). - * - * @since 2.0 - */ + * This destructor overrides Tizen::Base::Object::~Object(). + * + * @since 2.0 + */ virtual ~TableViewItem(void); /** - * Initializes this instance of %TableViewItem with the specified parameter. - * - * @since 2.0 - * - * @return An error code - * @param[in] itemSize The size of the item - * @param[in] style The style of Annex - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG A specified input parameter is invalid. - */ + * Initializes this instance of %TableViewItem with the specified parameter. + * + * @since 2.0 + * + * @return An error code + * @param[in] itemSize The size of the item + * @param[in] style The style of Annex + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + */ result Construct(const Tizen::Graphics::Dimension& itemSize, TableViewAnnexStyle style = TABLE_VIEW_ANNEX_STYLE_NORMAL); /** - * Initializes this instance of %TableViewItem with the specified parameter. - * - * @since 2.0 - * - * @return An error code - * @param[in] layout The layout for both of the portrait and landscape modes - * @param[in] itemSize The size of the item - * @param[in] style The style of Annex - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG A specified input parameter is invalid. - */ + * Initializes this instance of %TableViewItem with the specified parameter. + * + * @since 2.0 + * + * @return An error code + * @param[in] layout The layout for both of the portrait and landscape modes + * @param[in] itemSize The size of the item + * @param[in] style The style of Annex + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + */ result Construct(const Tizen::Ui::Layout& layout, const Tizen::Graphics::Dimension& itemSize, TableViewAnnexStyle style = TABLE_VIEW_ANNEX_STYLE_NORMAL); /** - * Initializes this instance of %TableViewItem with the specified parameter. - * - * @since 2.0 - * - * @return An error code - * @param[in] portraitLayout The layout for portrait mode - * @param[in] landscapeLayout The layout for landscape mode - * @param[in] itemSize The size of the item - * @param[in] style The style of Annex - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG A specified input parameter is invalid. - */ + * Initializes this instance of %TableViewItem with the specified parameter. + * + * @since 2.0 + * + * @return An error code + * @param[in] portraitLayout The layout for portrait mode + * @param[in] landscapeLayout The layout for landscape mode + * @param[in] itemSize The size of the item + * @param[in] style The style of Annex + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + */ result Construct(const Tizen::Ui::Layout& portraitLayout, const Tizen::Ui::Layout& landscapeLayout, const Tizen::Graphics::Dimension& itemSize, TableViewAnnexStyle style = TABLE_VIEW_ANNEX_STYLE_NORMAL); + /* + * Initializes this instance of %TableViewItem with the specified parameter. + * + * @since 2.1 + * + * @return An error code + * @param[in] itemSize The size of the item + * @param[in] style The style of Annex + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + */ + result Construct(const Tizen::Graphics::FloatDimension& itemSize, TableViewAnnexStyle style = TABLE_VIEW_ANNEX_STYLE_NORMAL); + + /* + * Initializes this instance of %TableViewItem with the specified parameter. + * + * @since 2.1 + * + * @return An error code + * @param[in] layout The layout for both of the portrait and landscape modes + * @param[in] itemSize The size of the item + * @param[in] style The style of Annex + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + */ + result Construct(const Tizen::Ui::Layout& layout, const Tizen::Graphics::FloatDimension& itemSize, TableViewAnnexStyle style = TABLE_VIEW_ANNEX_STYLE_NORMAL); + + /* + * Initializes this instance of %TableViewItem with the specified parameter. + * + * @since 2.1 + * + * @return An error code + * @param[in] portraitLayout The layout for portrait mode + * @param[in] landscapeLayout The layout for landscape mode + * @param[in] itemSize The size of the item + * @param[in] style The style of Annex + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + */ + result Construct(const Tizen::Ui::Layout& portraitLayout, const Tizen::Ui::Layout& landscapeLayout, const Tizen::Graphics::FloatDimension& itemSize, TableViewAnnexStyle style = TABLE_VIEW_ANNEX_STYLE_NORMAL); + /** - * Sets context item that is displayed when an item is swept. - * - * @since 2.0 - * - * @return An error code - * @param[in] pItem The object of TableViewContextItem - * @remarks If context item is not set, TableView() does not display context item and an item sweep event is generated when an item is swept. - * pItem must be deleted by applications when it is no longer used. - */ + * Sets context item that is displayed when an item is swept. + * + * @since 2.0 + * + * @return An error code + * @param[in] pItem The object of TableViewContextItem + * @remarks If context item is not set, TableView() does not display context item and an item sweep event is generated when an item is swept. + * pItem must be deleted by applications when it is no longer used. + */ void SetContextItem(const TableViewContextItem* pItem); /** - * Get the width of the annex area. - * - * @since 2.0 - * - * @return The width of the annex - * @param[in] style The style of the annex - * @remarks The width of the annex area is different among annex styles. - */ + * Get the width of the annex area. + * + * @since 2.0 + * + * @return The width of the annex + * @param[in] style The style of the annex + * @remarks The width of the annex area is different among annex styles. + */ static int GetAnnexWidth(TableViewAnnexStyle style); + /* + * Get the width of the annex area. + * + * @since 2.1 + * + * @return The width of the annex + * @param[in] style The style of the annex + * @remarks The width of the annex area is different among annex styles. + */ + static float GetAnnexWidthF(TableViewAnnexStyle style); + private: friend class _TableViewItemImpl; diff --git a/inc/FUiCtrlTableViewItemBase.h b/inc/FUiCtrlTableViewItemBase.h index 2729b0a..5a3842c 100644 --- a/inc/FUiCtrlTableViewItemBase.h +++ b/inc/FUiCtrlTableViewItemBase.h @@ -33,95 +33,95 @@ namespace Tizen { namespace Ui { namespace Controls { /** - * @class TableViewItemBase - * @brief This class defines common behavior for a %TableViewItemBase. - * - * @since 2.0 - * - * The %TableViewItemBase class is a base class which represents a table view item which is the unit of handling of TableView. - * - */ +* @class TableViewItemBase +* @brief This class defines common behavior for a %TableViewItemBase. +* +* @since 2.0 +* +* The %TableViewItemBase class is a base class which represents a table view item which is the unit of handling of TableView. +* +*/ class _OSP_EXPORT_ TableViewItemBase : public Tizen::Ui::Container { public: /** - * Sets the background image of the item which is displayed when the item is in specified state. - * - * @since 2.0 - * - * @return An error code - * @param[in] pBitmap The background bitmap image - * @param[in] status The item drawing state - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_MEMORY The memory is insufficient. - * @remarks The background bitmap has priority over the background color. When both the background bitmap and the background color are specified, only the bitmap is displayed. - */ + * Sets the background image of the item which is displayed when the item is in specified state. + * + * @since 2.0 + * + * @return An error code + * @param[in] pBitmap The background bitmap image + * @param[in] status The item drawing state + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_MEMORY The memory is insufficient. + * @remarks The background bitmap has priority over the background color. When both the background bitmap and the background color are specified, only the bitmap is displayed. + */ result SetBackgroundBitmap(const Tizen::Graphics::Bitmap* pBitmap, TableViewItemDrawingStatus status = TABLE_VIEW_ITEM_DRAWING_STATUS_NORMAL); /** - * Sets the background color of the item which is displayed when the item is in specified state. - * - * @since 2.0 - * - * @return An error code - * @param[in] color The background color - * @param[in] status The item drawing state - */ + * Sets the background color of the item which is displayed when the item is in specified state. + * + * @since 2.0 + * + * @return An error code + * @param[in] color The background color + * @param[in] status The item drawing state + */ void SetBackgroundColor(const Tizen::Graphics::Color& color, TableViewItemDrawingStatus status = TABLE_VIEW_ITEM_DRAWING_STATUS_NORMAL); /** - * Gets the background color of the item which is displayed when the item is in the specified state. - * - * @since 2.0 - * - * @return The background color of the item - * @param[in] status The item drawing state - * - * @remarks If an error occurs, this method returns RGBA(0, 0, 0, 0). - * @see SetBackgroundColor() - */ + * Gets the background color of the item which is displayed when the item is in the specified state. + * + * @since 2.0 + * + * @return The background color of the item + * @param[in] status The item drawing state + * + * @remarks If an error occurs, this method returns RGBA(0, 0, 0, 0). + * @see SetBackgroundColor() + */ Tizen::Graphics::Color GetBackgroundColor(TableViewItemDrawingStatus status = TABLE_VIEW_ITEM_DRAWING_STATUS_NORMAL) const; /** - * Enables or disables the individual selection of a control. - * - * @since 2.0 - * - * @return An error code - * @param[in] pControl The child control to be selected individually. - * @param[in] enable Set to @c true to enable the individual selection of a control, else @c false - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG A specified input parameter is invalid. - */ + * Enables or disables the individual selection of a control. + * + * @since 2.0 + * + * @return An error code + * @param[in] pControl The child control to be selected individually. + * @param[in] enable Set to @c true to enable the individual selection of a control, else @c false + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + */ result SetIndividualSelectionEnabled(const Tizen::Ui::Control* pControl, bool enable); /** - * Returns whether the individual selection of a control is enabled or not. - * - * @since 2.0 - * - * @return @c true if the individual selection of a control is enabled, else @c false - * @param[in] pControl The target control. - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG A specified input parameter is invalid. - */ + * Returns whether the individual selection of a control is enabled or not. + * + * @since 2.0 + * + * @return @c true if the individual selection of a control is enabled, else @c false + * @param[in] pControl The target control. + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + */ bool IsIndividualSelectionEnabled(const Tizen::Ui::Control* pControl); protected: - // - // This class is constructible only as a subobject of a derived class. - // - // @since 2.0 - // + /** + * This class is constructible only as a subobject of a derived class. + * + * @since 2.0 + */ TableViewItemBase(void); - // - // This class is destructible only as a subobject of a derived class. - // - // @since 2.0 - // + /** + * This class is destructible only as a subobject of a derived class. + * + * @since 2.0 + */ virtual ~TableViewItemBase(void); // diff --git a/inc/FUiCtrlTableViewSimpleGroupItem.h b/inc/FUiCtrlTableViewSimpleGroupItem.h index a7864e0..06d1aa9 100644 --- a/inc/FUiCtrlTableViewSimpleGroupItem.h +++ b/inc/FUiCtrlTableViewSimpleGroupItem.h @@ -16,11 +16,11 @@ // /** - * @file FUiCtrlTableViewSimpleGroupItem.h - * @brief This is the header file for the %TableViewSimpleGroupItem class. - * - * This header file contains the declarations of the %TableViewSimpleGroupItem class and its helper classes. - */ +* @file FUiCtrlTableViewSimpleGroupItem.h +* @brief This is the header file for the %TableViewSimpleGroupItem class. +* +* This header file contains the declarations of the %TableViewSimpleGroupItem class and its helper classes. +*/ #ifndef _FUI_CTRL_TABLE_VIEW_SIMPLE_GROUP_ITEM_H_ #define _FUI_CTRL_TABLE_VIEW_SIMPLE_GROUP_ITEM_H_ @@ -30,13 +30,13 @@ namespace Tizen { namespace Ui { namespace Controls { /** - * @class TableViewSimpleGroupItem - * @brief This class defines common behavior of %TableViewSimpleGroupItem. - * - * @since 2.0 - * - * The %TableViewSimpleGroupItem class displays a table view group item. The basic layout of the %TableViewSimpleGroupItem instance is text and a bitmap arranged horizontally in one line. The bitmap can be omitted while text must be given. - */ +* @class TableViewSimpleGroupItem +* @brief This class defines common behavior of %TableViewSimpleGroupItem. +* +* @since 2.0 +* +* The %TableViewSimpleGroupItem class displays a table view group item. The basic layout of the %TableViewSimpleGroupItem instance is text and a bitmap arranged horizontally in one line. The bitmap can be omitted while text must be given. +*/ class _OSP_EXPORT_ TableViewSimpleGroupItem : public TableViewGroupItem @@ -81,6 +81,31 @@ public: */ result Construct(const Tizen::Ui::Layout& layout, const Tizen::Graphics::Dimension& itemSize); + /* + * Initializes this instance of %TableViewSimpleGroupItem with the specified parameter. + * + * @since 2.1 + * + * @return An error code + * @param[in] itemSize The size of the item + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + */ + result Construct(const Tizen::Graphics::FloatDimension& itemSize); + + /* + * Initializes this instance of %TableViewSimpleGroupItem with the specified parameter. + * + * @since 2.1 + * + * @return An error code + * @param[in] layout The layout for both of the portrait and landscape modes + * @param[in] itemSize The size of the item + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + */ + result Construct(const Tizen::Ui::Layout& layout, const Tizen::Graphics::FloatDimension& itemSize); + /** * Sets the text string and bitmap image for %TableViewSimpleGroupItem. * diff --git a/inc/FUiCtrlTableViewSimpleItem.h b/inc/FUiCtrlTableViewSimpleItem.h index 2c0bc5e..33119be 100644 --- a/inc/FUiCtrlTableViewSimpleItem.h +++ b/inc/FUiCtrlTableViewSimpleItem.h @@ -16,11 +16,11 @@ // /** - * @file FUiCtrlTableViewSimpleItem.h - * @brief This is the header file for the %TableViewSimpleItem class. - * - * This header file contains the declarations of the %TableViewSimpleItem class and its helper classes. - */ +* @file FUiCtrlTableViewSimpleItem.h +* @brief This is the header file for the %TableViewSimpleItem class. +* +* This header file contains the declarations of the %TableViewSimpleItem class and its helper classes. +*/ #ifndef _FUI_CTRL_TABLE_VIEW_SIMPLE_ITEM_H_ #define _FUI_CTRL_TABLE_VIEW_SIMPLE_ITEM_H_ @@ -84,6 +84,33 @@ public: */ result Construct(const Tizen::Ui::Layout& layout, const Tizen::Graphics::Dimension& itemSize, TableViewAnnexStyle style = TABLE_VIEW_ANNEX_STYLE_NORMAL); + /* + * Initializes this instance of %TableViewSimpleItem with the specified parameter. + * + * @since 2.1 + * + * @return An error code + * @param[in] itemSize The size of the item + * @param[in] style The style of Annex + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + */ + result Construct(const Tizen::Graphics::FloatDimension& itemSize, TableViewAnnexStyle style = TABLE_VIEW_ANNEX_STYLE_NORMAL); + + /* + * Initializes this instance of TableViewItem with the specified parameter. + * + * @since 2.1 + * + * @return An error code + * @param[in] layout The layout for both of the portrait and landscape modes + * @param[in] itemSize The size of the item + * @param[in] style The style of Annex + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + */ + result Construct(const Tizen::Ui::Layout& layout, const Tizen::Graphics::FloatDimension& itemSize, TableViewAnnexStyle style = TABLE_VIEW_ANNEX_STYLE_NORMAL); + /** * Sets the text string and bitmap image for %TableViewSimpleItem. * diff --git a/inc/FUiCtrlTableViewTypes.h b/inc/FUiCtrlTableViewTypes.h index 9681717..58afaa8 100644 --- a/inc/FUiCtrlTableViewTypes.h +++ b/inc/FUiCtrlTableViewTypes.h @@ -16,11 +16,11 @@ // /** - * @file FUiCtrlTableViewTypes.h - * @brief This is the header file for the TableView enumerations. - * - * This header file contains the declarations of the TableView enumerations. - */ +* @file FUiCtrlTableViewTypes.h +* @brief This is the header file for the TableView enumerations. +* +* This header file contains the declarations of the TableView enumerations. +*/ #ifndef _FUI_CTRL_TABLE_VIEW_TYPES_H_ #define _FUI_CTRL_TABLE_VIEW_TYPES_H_ @@ -28,28 +28,29 @@ namespace Tizen { namespace Ui { namespace Controls { /** - * @enum TableViewAnnexStyle - * - * Defines the style of annex in the items. - * - * @since 2.0 - */ +* @enum TableViewAnnexStyle +* +* Defines the style of annex in the items. +* +* @since 2.0 +*/ enum TableViewAnnexStyle { - TABLE_VIEW_ANNEX_STYLE_NORMAL = 0, /**< No annex */ - TABLE_VIEW_ANNEX_STYLE_MARK, /**< Mark style check for multiple selection */ - TABLE_VIEW_ANNEX_STYLE_ONOFF_SLIDING, /**< On/Off slider style */ - TABLE_VIEW_ANNEX_STYLE_DETAILED, /**< Detailed style for further interaction */ - TABLE_VIEW_ANNEX_STYLE_RADIO /**< Radio style check for simple look */ + TABLE_VIEW_ANNEX_STYLE_NORMAL = 0, /**< No annex */ + TABLE_VIEW_ANNEX_STYLE_MARK, /**< Mark style check for multiple selection */ + TABLE_VIEW_ANNEX_STYLE_ONOFF_SLIDING, /**< On/Off slider style */ + TABLE_VIEW_ANNEX_STYLE_DETAILED, /**< Detailed style for further interaction */ + TABLE_VIEW_ANNEX_STYLE_RADIO, /**< Radio style check for simple look */ + TABLE_VIEW_ANNEX_STYLE_ONOFF_SLIDING_WITH_DIVIDER /**< The slider style On/Off with divider @b Since: @b 2.1 */ }; /** - * @enum TableViewItemDrawingStatus - * - * Defines the drawing state of the items. - * - * @since 2.0 - */ +* @enum TableViewItemDrawingStatus +* +* Defines the drawing state of the items. +* +* @since 2.0 +*/ enum TableViewItemDrawingStatus { TABLE_VIEW_ITEM_DRAWING_STATUS_NORMAL = 0, /**< The normal drawing state */ @@ -58,12 +59,12 @@ enum TableViewItemDrawingStatus }; /** - * @enum TableViewRefreshType - * - * Defines the update type of the TableView item. - * - * @since 2.0 - */ +* @enum TableViewRefreshType +* +* Defines the update type of the TableView item. +* +* @since 2.0 +*/ enum TableViewRefreshType { TABLE_VIEW_REFRESH_TYPE_ITEM_ADD = 0, /**< Refresh request of adding an item */ @@ -72,12 +73,12 @@ enum TableViewRefreshType }; /** - * @enum TableViewItemStatus - * - * Defines the item state of the TableView. - * - * @since 2.0 - */ +* @enum TableViewItemStatus +* +* Defines the item state of the TableView. +* +* @since 2.0 +*/ enum TableViewItemStatus { TABLE_VIEW_ITEM_STATUS_SELECTED = 0, /**< The selected item state */ @@ -88,12 +89,12 @@ enum TableViewItemStatus }; /** - * @enum TableViewSweepDirection - * - * Defines the direction of the sweep interaction. - * - * @since 2.0 - */ +* @enum TableViewSweepDirection +* +* Defines the direction of the sweep interaction. +* +* @since 2.0 +*/ enum TableViewSweepDirection { TABLE_VIEW_SWEEP_DIRECTION_LEFT = 0, /**< The left direction */ @@ -101,12 +102,12 @@ enum TableViewSweepDirection }; /** - * @enum TableViewScrollItemAlignment - * - * Defines the alignment information for item scroll. - * - * @since 2.0 - */ +* @enum TableViewScrollItemAlignment +* +* Defines the alignment information for item scroll. +* +* @since 2.0 +*/ enum TableViewScrollItemAlignment { TABLE_VIEW_SCROLL_ITEM_ALIGNMENT_TOP = 0, /**< The item is aligned at the top of the TableView at item scroll*/ @@ -114,12 +115,12 @@ enum TableViewScrollItemAlignment }; /** - * @enum TableViewScrollBarStyle - * - * Defines the scroll bar style of the list. - * - * @since 2.0 - */ +* @enum TableViewScrollBarStyle +* +* Defines the scroll bar style of the list. +* +* @since 2.0 +*/ enum TableViewScrollBarStyle { TABLE_VIEW_SCROLL_BAR_STYLE_NONE = 0, /**< No scroll bar */ @@ -131,19 +132,6 @@ enum TableViewScrollBarStyle }; -/** - * @enum ScrollInputMode - * - * Defines the scroll interaction mode - * - * @since 2.0 - */ -enum ScrollInputMode -{ - SCROLL_INPUT_MODE_ALLOW_ANY_DIRECTION = 0, /** < Scroll interaction is available to any direction. */ - SCROLL_INPUT_MODE_RESTRICT_TO_INITIAL_DIRECTION /** < Scroll interaction is restricted to first direction. */ -}; - }}} // Tizen::Ui::Controls diff --git a/inc/FUiCtrlTextBox.h b/inc/FUiCtrlTextBox.h old mode 100644 new mode 100755 index 4d50354..d7d0e73 --- a/inc/FUiCtrlTextBox.h +++ b/inc/FUiCtrlTextBox.h @@ -167,8 +167,8 @@ TextBoxSample::OnInitializing(void) return r; } - * @endcode - */ +* @endcode +*/ class _OSP_EXPORT_ TextBox : public Tizen::Ui::Control { @@ -204,6 +204,21 @@ public: */ result Construct(const Tizen::Graphics::Rectangle& rect, TextBoxBorder border = TEXT_BOX_BORDER_ROUNDED); + /** + * Initializes this instance of %TextBox with the specified parameters. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect An instance of the Graphics::FloatRectangle class @n + * This instance represents the x and y coordinates of the top-left corner of the created window along with + * the width and height of the control. + * @param[in] border The border style + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect, TextBoxBorder border = TEXT_BOX_BORDER_ROUNDED); + // Operation public: /** @@ -417,6 +432,19 @@ public: int GetLineSpacing(void) const; /** + * Gets the line spacing. + * + * @since 2.1 + * + * @return The line spacing, @n + * else @c -1 if an error occurs + * @exception E_SUCCESS The method is successful. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @see SetLineSpacing() + */ + float GetLineSpacingF(void) const; + + /** * Sets the line spacing. @n * The line spacing is determined by multiplying @c multiplier to the default line spacing and adding @c extra. @n * @@ -437,6 +465,27 @@ public: */ result SetLineSpacing(int multiplier, int extra); + /** + * Sets the line spacing. @n + * The line spacing is determined by multiplying @c multiplier to the default line spacing and adding @c extra. @n + * + * @code + * The line spacing = (default line spacing) * multiplier + extra + * @endcode + * + * @since 2.1 + * + * @return An error code + * @param[in] multiplier The line spacing multiplier + * @param[in] extra The extra line spacing + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. @n + * The specified line spacing value cannot be supported. + * @exception E_SYSTEM A system error has occurred. + * @see GetLineSpacingF() + */ + result SetLineSpacing(int multiplier, float extra); + // Text Alignment /** * Gets the horizontal text alignment. @@ -480,6 +529,20 @@ public: int GetTextSize(void) const; /** + * Gets the text size of the %TextBox control. + * + * @since 2.1 + * + * @return The size of the text, @n + * else @c -1 if an error occurs + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @see SetTextSize() + */ + float GetTextSizeF(void) const; + + /** * Sets the text size. * * @since 2.0 @@ -494,6 +557,21 @@ public: */ result SetTextSize(int size); + /** + * Sets the text size. + * + * @since 2.1 + * + * @return An error code + * @param[in] size The text size + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified input parameter is invalid. @n + * The specified @c size cannot be a negative integer. + * @exception E_SYSTEM A system error has occurred. + * @see GetTextSizeF() + */ + result SetTextSize(float size); + // Text Font /** * @if OSPDEPREC @@ -517,14 +595,14 @@ public: result GetFontType(Tizen::Base::String& typefaceName, unsigned long& style) const; /** - * Gets the text style mask of the %TextBox control. - * - * @since 2.0 - * - * @return A bitwise combination of Tizen::Ui::Controls::TextBoxTextStyle - * @see SetTextStyle() - * @see TextBoxTextStyle - */ + * Gets the text style mask of the %TextBox control. + * + * @since 2.0 + * + * @return A bitwise combination of Tizen::Ui::Controls::TextBoxTextStyle + * @see SetTextStyle() + * @see TextBoxTextStyle + */ unsigned long GetTextStyle(void) const; /** @@ -553,18 +631,18 @@ public: result SetFontType(const Tizen::Base::String& typefaceName, unsigned long style); /** - * Sets the text style mask of the %TextBox control. - * - * @since 2.0 - * - * @return An error code - * @param[in] style The text style @n - * Multiple styles can be combined using the bitwise OR operator (see Tizen::Ui::Controls::TextBoxTextStyle). - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_MEMORY The memory is insufficient. - * @see GetTextStyle() - * @see TextBoxTextStyle - */ + * Sets the text style mask of the %TextBox control. + * + * @since 2.0 + * + * @return An error code + * @param[in] style The text style @n + * Multiple styles can be combined using the bitwise OR operator (see Tizen::Ui::Controls::TextBoxTextStyle). + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_MEMORY The memory is insufficient. + * @see GetTextStyle() + * @see TextBoxTextStyle + */ result SetTextStyle(unsigned long style); using Control::SetFont; diff --git a/inc/FUiCtrlTimePicker.h b/inc/FUiCtrlTimePicker.h old mode 100644 new mode 100755 index 646b49a..7b30e21 --- a/inc/FUiCtrlTimePicker.h +++ b/inc/FUiCtrlTimePicker.h @@ -14,12 +14,13 @@ // See the License for the specific language governing permissions and // limitations under the License. // + /** - * @file FUiCtrlTimePicker.h - * @brief This is the header file for the %TimePicker class. - * - * This header file contains the declarations of the %TimePicker class. - */ +* @file FUiCtrlTimePicker.h +* @brief This is the header file for the %TimePicker class. +* +* This header file contains the declarations of the %TimePicker class. +*/ #ifndef _FUI_CTRL_TIME_PICKER_H_ #define _FUI_CTRL_TIME_PICKER_H_ @@ -30,18 +31,18 @@ namespace Tizen { namespace Ui { namespace Controls { /** - * @class TimePicker - * @brief This class displays a %TimePicker control on top of the screen. - * - * @since 2.0 - * - * The %TimePicker class displays a full screen window-based selector that allows the user to select a certain time. - * - * For more information on the class features, see DatePicker, TimePicker, and DateTimeimePicker. - * - * The following example demonstrates how to use the %TimePicker class. - * - * @code +* @class TimePicker +* @brief This class displays a %TimePicker control on top of the screen. +* +* @since 2.0 +* +* The %TimePicker class displays a full screen window-based selector that allows the user to select a certain time. +* +* For more information on the class features, see DatePicker, TimePicker, and DateTimeimePicker. +* +* The following example demonstrates how to use the %TimePicker class. +* +* @code // Sample Code for TimePickerSample.h #include @@ -139,7 +140,7 @@ TimePickerSample::OnTerminating(void) result r = E_SUCCESS; // Deallocates the time picker - delete __pTimePicker; + __pTimePicker->Destroy(); return r; } @@ -172,8 +173,8 @@ TimePickerSample::OnTimeChangeCanceled(const Control& source) { // Todo: } - * @endcode - */ +* @endcode +**/ class _OSP_EXPORT_ TimePicker : public Tizen::Ui::Window { diff --git a/inc/FUiCustomControlBase.h b/inc/FUiCustomControlBase.h old mode 100644 new mode 100755 index 3be3449..e90d999 --- a/inc/FUiCustomControlBase.h +++ b/inc/FUiCustomControlBase.h @@ -51,18 +51,18 @@ class _OSP_EXPORT_ CustomControlBase // Lifecycle public: /** - * @if OSPDEPREC + * @if OSPDEPREC * This destructor overrides Tizen::Base::Object::~Object(). * * @brief [Deprecated] * @deprecated This class is deprecated. Instead of using this class, use the Container class. * @since 2.0 - * @endif + * @endif */ virtual ~CustomControlBase(void); /** - * @if OSPDEPREC + * @if OSPDEPREC * Notifies that the bounds of the control is about to change. * * @brief [Deprecated] @@ -77,12 +77,12 @@ public: * Provide control specific exceptions. * @see Tizen::Ui::Control::SetBounds() * @see Tizen::Ui::Control::SetSize() - * @endif + * @endif */ virtual result PrepareBoundsChange(const Tizen::Graphics::Rectangle& oldRect, const Tizen::Graphics::Rectangle& newRect); /** - * @if OSPDEPREC + * @if OSPDEPREC * Overrides this method to indicate that the specified @c width and @c height * can be supported or a new @c width and @c height must be applied instead * of the specified values. @@ -95,24 +95,24 @@ public: * and @ height are supported * @param[in, out] width The width that needs to evaluate * @param[in, out] height The height that needs to evaluate - * @endif + * @endif */ virtual bool EvaluateSize(int& width, int& height); protected: /** - * @if OSPDEPREC + * @if OSPDEPREC * The object is not fully constructed after this constructor is called. For full construction, one of the %Construct() method must be called right after calling this constructor. * * @brief [Deprecated] * @deprecated This class is deprecated. Instead of using this class, use the Container class. * @since 2.0 - * @endif + * @endif */ CustomControlBase(void); /** - * @if OSPDEPREC + * @if OSPDEPREC * Initializes this instance of %CustomControlBase. * * @brief [Deprecated] @@ -131,12 +131,12 @@ protected: * @remarks This method must be called from the derived classes's construct methods. * @remarks If the @c resizable is @c false, IsResizable() returns @c false. * @see IsResizable() - * @endif + * @endif */ result Construct(const Tizen::Graphics::Rectangle& rect, bool resizable = true, bool movable = true); /** - * @if OSPDEPREC + * @if OSPDEPREC * Initializes this instance of %CustomControlBase with the specified layout and rectangular region. * * @brief [Deprecated] @@ -158,12 +158,12 @@ protected: * @see IsResizable() * @see Tizen::Ui::Layout * @see Tizen::Ui::Container::GetLayoutN() - * @endif + * @endif */ result Construct(const Tizen::Ui::Layout& layout, const Tizen::Graphics::Rectangle& rect, bool resizable = true, bool movable = true); /** - * @if OSPDEPREC + * @if OSPDEPREC * Initializes this instance of %CustomControlBase with the specified layouts and rectangular region. * * @brief [Deprecated] @@ -187,30 +187,30 @@ protected: * @see Tizen::Ui::Container::GetLayoutN() * @see Tizen::Ui::Container::GetPortraitLayoutN() * @see Tizen::Ui::Container::GetLandscapeLayoutN() - * @endif + * @endif */ result Construct(const Tizen::Ui::Layout& portraitLayout, const Tizen::Ui::Layout& landscapeLayout, const Tizen::Graphics::Rectangle& rect, bool resizable = true, bool movable = true); private: /** - * @if OSPDEPREC + * @if OSPDEPREC * The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects. * * @brief [Deprecated] * @deprecated This class is deprecated. Instead of using this class, use the Container class. * @since 2.0 - * @endif + * @endif */ CustomControlBase(const CustomControlBase& rhs); /** - * @if OSPDEPREC + * @if OSPDEPREC * The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects. * * @brief [Deprecated] * @deprecated This class is deprecated. Instead of using this class, use the Container class. * @since 2.0 - * @endif + * @endif */ CustomControlBase& operator =(const CustomControlBase& rhs); @@ -245,4 +245,3 @@ protected: }} // Tizen::Ui #endif // _FUI_CUSTOM_CONTROL_BASE_H_ - diff --git a/inc/FUiDataBindingContext.h b/inc/FUiDataBindingContext.h index 4f2f253..dc578ba 100644 --- a/inc/FUiDataBindingContext.h +++ b/inc/FUiDataBindingContext.h @@ -60,7 +60,7 @@ class _DataBindingContextImpl; class DataBindingSample : public Tizen::Ui::Controls::Form - , public Osp::Ui::IActionEventListener + , public Tizen::Ui::IActionEventListener { public: DataBindingSample(void); @@ -68,18 +68,18 @@ public: virtual bool Initialize(void); virtual result OnInitializing(void); - virtual void OnActionPerformed(const Osp::Ui::Control& source, int actionId); + virtual void OnActionPerformed(const Tizen::Ui::Control& source, int actionId); private : static const int ID_BUTTON_UNBIND = 402; static const int ID_BUTTON_UPDATE_BINDING = 403; static const int ID_BUTTON_BIND = 404; - Osp::Base::Integer __bindIntegerToButtonText; - Osp::Ui::Controls::Button* __pUnbindButton; - Osp::Ui::Controls::Button* __pUpdateBindingButton; - Osp::Ui::Controls::Button* __pTargetButton; - Osp::Ui::Controls::Button* __pBindButton; + Tizen::Base::Integer __bindIntegerToButtonText; + Tizen::Ui::Controls::Button* __pUnbindButton; + Tizen::Ui::Controls::Button* __pUpdateBindingButton; + Tizen::Ui::Controls::Button* __pTargetButton; + Tizen::Ui::Controls::Button* __pBindButton; }; * @endcode @@ -183,125 +183,125 @@ class _OSP_EXPORT_ DataBindingContext { public: /** - * This is the destructor for this class. - * - * @since 2.0 - */ + * This is the destructor for this class. + * + * @since 2.0 + */ virtual ~DataBindingContext(void); public: /** - * Gets the owner of this data binding context. - * - * @since 2.0 - * - * @return The context owner - */ + * Gets the owner of this data binding context. + * + * @since 2.0 + * + * @return The context owner + */ Control* GetContextOwner(void) const; /** - * Binds the specified control's property and data source. - * - * @since 2.0 - * - * @return An error code - * @param[in] bindingId The binding ID - * @param[in] controlName The name of target property owner - * @param[in] propertyName The target property name - * @param[in] dataSource The data binding source - * @param[in] sourceType The data type of the @c dataSource - * @param[in] flow The data flow type - * @param[in] trigger The data binding trigger type - * @param[in] pListener The data binding listener - * @param[in] pValidator The data validator - * @param[in] pTransformer The data transformer - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - * @exception E_INVALID_ARG 1. sourceType is not of a supported type. - * 2. flow is not of a supported type. - * 3. trigger is not of a supported type. - * @exception E_OBJ_NOT_FOUND 1. The control named controlName does not exist. - * 2. The parameter "propertyName" is not found in control properties. - * @exception E_UNSUPPORTED_FORMAT The given transformer does not supported changing source type to target type. - * @exception E_UNSUPPORTED_OPERATION In this system, binding with the given trigger and flow is not supported. - * @remarks The propertyName parameter is defined in "UI Builder Guide". @n - * There is no duplication check for each binding ID. @n - * Please use a unique binding ID for each binding setting. - */ + * Binds the specified control's property and data source. + * + * @since 2.0 + * + * @return An error code + * @param[in] bindingId The binding ID + * @param[in] controlName The name of target property owner + * @param[in] propertyName The target property name + * @param[in] dataSource The data binding source + * @param[in] sourceType The data type of the @c dataSource + * @param[in] flow The data flow type + * @param[in] trigger The data binding trigger type + * @param[in] pListener The data binding listener + * @param[in] pValidator The data validator + * @param[in] pTransformer The data transformer + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @exception E_INVALID_ARG 1. sourceType is not of a supported type. + 2. flow is not of a supported type. + 3. trigger is not of a supported type. + * @exception E_OBJ_NOT_FOUND 1. The control named controlName does not exist. + 2. The parameter "propertyName" is not found in control properties. + * @exception E_UNSUPPORTED_FORMAT The given transformer does not supported changing source type to target type. + * @exception E_UNSUPPORTED_OPERATION In this system, binding with the given trigger and flow is not supported. + * @remarks The propertyName parameter is defined in "UI Builder Guide". @n + * There is no duplication check for each binding ID. @n + * Please use a unique binding ID for each binding setting. + */ result Bind(const Tizen::Base::String& bindingId, const Tizen::Base::String& controlName, const Tizen::Base::String& propertyName, Tizen::Base::Object& dataSource, DataBindingDataType sourceType, DataBindingFlow flow, DataBindingTrigger trigger, const IDataBindingListener* pListener, const IDataBindingDataValidator* pValidator, const IDataBindingDataTransformer* pTransformer = null); /** - * Sets the binding listener for the specified data binding. - * - * @since 2.0 - * - * @return An error code - * @param[in] bindingId The binding ID - * @param[in] pListener The data binding listener - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - * @exception E_OBJ_NOT_FOUND The given binding ID is not registered. - * @exception E_INVALID_ARG The given listener is not valid. - * @remarks If you give pListener parameter as 'null', the existing dataBindingEventListener will be removed. - */ + * Sets the binding listener for the specified data binding. + * + * @since 2.0 + * + * @return An error code + * @param[in] bindingId The binding ID + * @param[in] pListener The data binding listener + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @exception E_OBJ_NOT_FOUND The given binding ID is not registered. + * @exception E_INVALID_ARG The given listener is not valid. + * @remarks If you give pListener parameter as 'null', the existing dataBindingEventListener will be removed. + */ result SetDataBindingEventListener(const Tizen::Base::String& bindingId, IDataBindingListener* pListener); /** - * Unbinds all bindings that exist in this context. - * - * @since 2.0 - * - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - */ + * Unbinds all bindings that exist in this context. + * + * @since 2.0 + * + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + */ result UnbindAll(void); /** - * Unbinds a binding that exists in this context. - * - * @since 2.0 - * - * @return An error code - * @param[in] bindingId The binding ID - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - * @exception E_OBJ_NOT_FOUND The given binding ID is not registered. - */ + * Unbinds a binding that exists in this context. + * + * @since 2.0 + * + * @return An error code + * @param[in] bindingId The binding ID + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @exception E_OBJ_NOT_FOUND The given binding ID is not registered. + */ result Unbind(const Tizen::Base::String& bindingId); /** - * Updates all 'explicit' data bindings. - * - * @since 2.0 - * - * @return An error code - * @param[in] destType The destination type - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - * @exception E_INVALID_ARG The specified @c destType is not of a supported type. - * @remarks If you have set a data binding listener, @n - * this function is returned after that listener is called. - * @see IDataBindingListener - */ + * Updates all 'explicit' data bindings. + * + * @since 2.0 + * + * @return An error code + * @param[in] destType The destination type + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @exception E_INVALID_ARG The specified @c destType is not of a supported type. + * @remarks If you have set a data binding listener, @n + this function is returned after that listener is called. + * @see IDataBindingListener + */ result UpdateAllBindings(DataBindingDestinationType destType); /** - * Updates the specified data binding. - * - * @since 2.0 - * - * @param[in] bindingId The binding ID - * @param[in] destType The destination type - * @exception E_SUCCESS The method is successful. - * @exception E_SYSTEM A system error has occurred. - * @exception E_OBJ_NOT_FOUND The given binding ID is not registered. - * @exception E_INVALID_OPERATION The given binding's trigger is not 'explicit' type. - * @exception E_INVALID_ARG The specified @c destType is not supported in binding ID. - * @remarks If you have set a data binding listener, @n - * this function is returned after that listener is called. - * @see IDataBindingListener - */ + * Updates the specified data binding. + + * @since 2.0 + * + * @param[in] bindingId The binding ID + * @param[in] destType The destination type + * @exception E_SUCCESS The method is successful. + * @exception E_SYSTEM A system error has occurred. + * @exception E_OBJ_NOT_FOUND The given binding ID is not registered. + * @exception E_INVALID_OPERATION The given binding's trigger is not 'explicit' type. + * @exception E_INVALID_ARG The specified @c destType is not supported in binding ID. + * @remarks If you have set a data binding listener, @n + this function is returned after that listener is called. + * @see IDataBindingListener + */ result UpdateBinding(const Tizen::Base::String& bindingId, DataBindingDestinationType destType); private: diff --git a/inc/FUiDataBindingTypes.h b/inc/FUiDataBindingTypes.h index 2fb3bcb..3dc69d3 100644 --- a/inc/FUiDataBindingTypes.h +++ b/inc/FUiDataBindingTypes.h @@ -28,12 +28,12 @@ namespace Tizen { namespace Ui { /** - * @enum DataBindingFlow - * - * Defines the possible data flow types. - * - * @since 2.0 - */ +* @enum DataBindingFlow +* +* Defines the possible data flow types. +* +* @since 2.0 +*/ enum DataBindingFlow { DATA_BINDING_FLOW_ONE_WAY = 0, /**< The data flow is one way from source to target */ @@ -42,12 +42,12 @@ enum DataBindingFlow }; /** - * @enum DataBindingTrigger - * - * Defines the possible data binding trigger types. - * - * @since 2.0 - */ +* @enum DataBindingTrigger +* +* Defines the possible data binding trigger types. +* +* @since 2.0 +*/ enum DataBindingTrigger { DATA_BINDING_TRIGGER_IMMEDIATE = 0, /**< Immediate trigger */ @@ -55,12 +55,12 @@ enum DataBindingTrigger }; /** - * @enum DataBindingDataType - * - * Defines the possible data types for data binding source. - * - * @since 2.0 - */ +* @enum DataBindingDataType +* +* Defines the possible data types for data binding source. +* +* @since 2.0 +*/ enum DataBindingDataType { DATA_BINDING_DATA_TYPE_BOOLEAN = 0, /**< Boolean type */ @@ -76,12 +76,12 @@ enum DataBindingDataType }; /** - * @enum DataBindingDestinationType - * - * Defines the possible destination types for explicit data bindings. - * - * @since 2.0 - */ +* @enum DataBindingDestinationType +* +* Defines the possible destination types for explicit data bindings. +* +* @since 2.0 +*/ enum DataBindingDestinationType { DATA_BINDING_DESTINATION_TYPE_SOURCE = 0, /**< Update source with latest data of associated target */ diff --git a/inc/FUiEffects.h b/inc/FUiEffects.h index 345b69d..e83b9f5 100644 --- a/inc/FUiEffects.h +++ b/inc/FUiEffects.h @@ -2,14 +2,14 @@ // Open Service Platform // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. // -// Licensed under the Flora License, Version 1.0 (the License); +// Licensed under the Apache License, Version 2.0 (the License); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an AS IS BASIS, +// distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/inc/FUiEffectsEffect.h b/inc/FUiEffectsEffect.h index 322cc2d..3c1fffe 100644 --- a/inc/FUiEffectsEffect.h +++ b/inc/FUiEffectsEffect.h @@ -2,14 +2,14 @@ // Open Service Platform // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. // -// Licensed under the Flora License, Version 1.0 (the License); +// Licensed under the Apache License, Version 2.0 (the License); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an AS IS BASIS, +// distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/inc/FUiEffectsEffectManager.h b/inc/FUiEffectsEffectManager.h index 9565c2d..9e290ac 100644 --- a/inc/FUiEffectsEffectManager.h +++ b/inc/FUiEffectsEffectManager.h @@ -2,14 +2,14 @@ // Open Service Platform // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. // -// Licensed under the Flora License, Version 1.0 (the License); +// Licensed under the Apache License, Version 2.0 (the License); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an AS IS BASIS, +// distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/inc/FUiEffectsIEffectEventListener.h b/inc/FUiEffectsIEffectEventListener.h index e55c1c1..2da0f4b 100644 --- a/inc/FUiEffectsIEffectEventListener.h +++ b/inc/FUiEffectsIEffectEventListener.h @@ -2,14 +2,14 @@ // Open Service Platform // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. // -// Licensed under the Flora License, Version 1.0 (the License); +// Licensed under the Apache License, Version 2.0 (the License); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an AS IS BASIS, +// distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/inc/FUiEffectsIEffectResourceProvider.h b/inc/FUiEffectsIEffectResourceProvider.h index cc57332..94201d1 100644 --- a/inc/FUiEffectsIEffectResourceProvider.h +++ b/inc/FUiEffectsIEffectResourceProvider.h @@ -2,14 +2,14 @@ // Open Service Platform // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. // -// Licensed under the Flora License, Version 1.0 (the License); +// Licensed under the Apache License, Version 2.0 (the License); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an AS IS BASIS, +// distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/inc/FUiEffectsTypes.h b/inc/FUiEffectsTypes.h index a12a62f..897de58 100644 --- a/inc/FUiEffectsTypes.h +++ b/inc/FUiEffectsTypes.h @@ -2,14 +2,14 @@ // Open Service Platform // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. // -// Licensed under the Flora License, Version 1.0 (the License); +// Licensed under the Apache License, Version 2.0 (the License); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an AS IS BASIS, +// distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/inc/FUiFocusManager.h b/inc/FUiFocusManager.h index 1a9fa2a..b992bb5 100644 --- a/inc/FUiFocusManager.h +++ b/inc/FUiFocusManager.h @@ -47,7 +47,7 @@ class _OSP_EXPORT_ FocusManager { public: /** - * Gets the pointer to the current focus manager. + * Gets the pointer to the current focus manager. * * @since 2.0 * @@ -66,12 +66,12 @@ public: Control* GetCurrentFocusOwner(void) const; /** - * Gets the current focused Window. - * - * @since 2.0 - * + * Gets the current focused Window. + * + * @since 2.0 + * * @return The current focused Window - * @remarks The method returns the application's current focus owner's ancestor Window or the %Window that is currently focused. + * @remarks The method returns the application's current focus owner's ancestor Window or the %Window that is currently focused. */ Window* GetCurrentFocusedWindow(void) const; diff --git a/inc/FUiGridLayout.h b/inc/FUiGridLayout.h index c6ee3ff..dcd5616 100755 --- a/inc/FUiGridLayout.h +++ b/inc/FUiGridLayout.h @@ -290,6 +290,23 @@ public: */ result SetColumnSpacing(int columnIndex, int space); + /* + * Sets the space before the specified column index. + * + * @since 2.1 + * + * @return An error code + * @param[in] columnIndex The column index + * @param[in] space An @c int representing the space + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified input parameter is invalid. + * @exception E_OUT_OF_RANGE The specified index is out of range. + * @exception E_SYSTEM A system error has occurred. + * @remarks This method does not perform any operation if the value of @c columnIndex is 0. + * @remarks The column spacing cannot be applied to the first column. + */ + result SetColumnSpacing(int columnIndex, float space); + /** * Sets the stretching ability of the specified row. * @@ -378,6 +395,23 @@ public: */ result SetRowSpacing(int rowIndex, int space); + /* + * Sets the space before the specified column index. + * + * @since 2.1 + * + * @return An error code + * @param[in] rowIndex The row index + * @param[in] space An @c int representing the space + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified input parameter is invalid. + * @exception E_OUT_OF_RANGE The specified index is out of range. + * @exception E_SYSTEM A system error has occurred. + * @remarks This method does not perform any operation if the value of @c rowIndex is @c 0. + * @remarks The row spacing cannot be applied to the first column. + */ + result SetRowSpacing(int rowIndex, float space); + /** * Sets the position and span of the control. @n * Adds the control at the specified position. @@ -443,6 +477,24 @@ public: */ result SetMargin(Control& childControl, int left, int right, int top, int bottom); + /* + * Sets the margins of the specified control. + * + * @since 2.1 + * + * @return An error code + * @param[in] childControl The control for which the margins are set + * @param[in] left The left margin + * @param[in] right The right margin + * @param[in] top The top margin + * @param[in] bottom The bottom margin + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. @n + * The specified @c childControl parameter is not a child of the container that owns the layout. + * @exception E_SYSTEM A system error has occurred. + * @remarks By default, the margins are set to @c 0. + */ + result SetMargin(Control& childControl, float left, float right, float top, float bottom); private: // // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects. diff --git a/inc/FUiHorizontalBoxLayout.h b/inc/FUiHorizontalBoxLayout.h index 275b2c1..e3b7035 100755 --- a/inc/FUiHorizontalBoxLayout.h +++ b/inc/FUiHorizontalBoxLayout.h @@ -256,6 +256,21 @@ public: */ result SetSpacing(Control& childControl, int space); + /* + * Sets the space between the specified control and its predecessor. + * + * @since 2.1 + * + * @return An error code + * @param[in] childControl The control for which the space is set + * @param[in] space The space + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c childControl parameter is not a child of the container that owns the layout. + * @exception E_SYSTEM A system error has occurred. + * @remarks By default, the spacing is set to @c 0. + */ + result SetSpacing(Control& childControl, float space); + /** * Sets the vertical margins of the specified control. * @@ -272,6 +287,22 @@ public: */ result SetVerticalMargin(Control& childControl, int top, int bottom); + /* + * Sets the vertical margins of the specified control. + * + * @since 2.1 + * + * @return An error code + * @param[in] childControl The control for which the margins are set + * @param[in] top The top margin + * @param[in] bottom The bottom margin + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c childControl parameter is not a child of the container that owns the layout. + * @exception E_SYSTEM A system error has occurred. + * @remarks By default, the margins are set to @c 0. + */ + result SetVerticalMargin(Control& childControl, float top, float bottom); + /** * Sets the width of the specified control with the fixed length. * @@ -286,6 +317,20 @@ public: */ result SetWidth(Control& childControl, int width); + /* + * Sets the width of the specified control with the fixed length. + * + * @since 2.1 + * + * @return An error code + * @param[in] childControl The control for which the width is set + * @param[in] width The value of the width + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c childControl parameter is not a child of the container that owns the layout. + * @exception E_SYSTEM A system error has occurred. + */ + result SetWidth(Control& childControl, float width); + /** * Sets the width of the specified control with the fitting policy. * @@ -315,6 +360,20 @@ public: */ result SetHeight(Control& childControl, int height); + /* + * Sets the height of the specified control with a fixed length. + * + * @since 2.1 + * + * @return An error code + * @param[in] childControl The control for which the height is set + * @param[in] height The value of the height + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c childControl parameter is not a child of the container that owns the layout. + * @exception E_SYSTEM A system error has occurred. + */ + result SetHeight(Control& childControl, float height); + /** * Sets the height of the specified control with the fitting policy. * diff --git a/inc/FUiIAccessibilityListener.h b/inc/FUiIAccessibilityListener.h index 5103004..30d3bd8 100644 --- a/inc/FUiIAccessibilityListener.h +++ b/inc/FUiIAccessibilityListener.h @@ -35,60 +35,59 @@ class AccessibilityElement; class Control; /** - * @interface IAccessibilityListener - * @brief This interface is the listener interface for accessibility screen reader - * - * @since 2.0 - * - * This %IAccessibilityListener defines methods for accessibility screen reader - * - */ +* @interface IAccessibilityListener +* @brief This interface is the listener interface for accessibility screen reader +* +* @since 2.0 +* +* This %IAccessibilityListener defines methods for accessibility screen reader +* +*/ class _OSP_EXPORT_ IAccessibilityListener : virtual public Tizen::Base::Runtime::IEventListener { public: /** - * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. - * - * @since 2.0 - */ + * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. + * + * @since 2.0 + */ virtual ~IAccessibilityListener(void) {} /** - * Notifies when the accessibility element gets a focus. - * - * @since 2.0 - * @param[in] control The control that has a accessibility element. - * @param[in] element The element. - */ + * Notifies when the accessibility element gets a focus. + * + * @since 2.0 + * @param[in] control The control that has a accessibility element. + * @param[in] element The element. + */ virtual void OnAccessibilityFocusIn(const Control& control, const AccessibilityElement& element) = 0; /** - * Notifies when the accessibility element losts a focus. - * - * @since 2.0 - * @param[in] control The control that has a accessibility element. - * @param[in] element The element. - */ - virtual void OnAccessibilityFocusOut(const Control& control, const AccessibilityElement& element) = 0; - + * Notifies when the accessibility element losts a focus. + * + * @since 2.0 + * @param[in] control The control that has a accessibility element. + * @param[in] element The element. + */ + virtual void OnAccessibilityFocusOut(const Control& control, const AccessibilityElement& element) = 0; /** - * Notifies when the accessibility element is operated. - * - * @since 2.0 - * @param[in] control The control that has a accessibility element. - * @param[in] element The element. - */ + * Notifies when the accessibility element is operated. + * + * @since 2.0 + * @param[in] control The control that has a accessibility element. + * @param[in] element The element. + */ virtual void OnAccessibilityActionPerformed(const Control& control, const AccessibilityElement& element) = 0; /** - * Notifies when the accessibility screen status is changed. - * - * @since 2.0 - * @param[in] control The control that has a accessibility element. - * @param[in] element The focused element. - * @param[in] status The changed status. - */ + * Notifies when the accessibility screen status is changed. + * + * @since 2.0 + * @param[in] control The control that has a accessibility element. + * @param[in] element The focused element. + * @param[in] status The changed status. + */ virtual void OnAccessibilityScreenReaderStatusChanged(const Control& control, const AccessibilityElement& element, AccessibilityScreenReaderStatus status) = 0; protected: @@ -139,4 +138,4 @@ protected: }; // IAccessibilityListener }} // Tizen::Ui -#endif // _FUI_IACCESSIBILITY_LISTENER_H_ +#endif // _FUI_IACCESSIBILITY_LISTENER_H_ \ No newline at end of file diff --git a/inc/FUiIAdjustmentEventListener.h b/inc/FUiIAdjustmentEventListener.h index 49771e0..3e74e5f 100644 --- a/inc/FUiIAdjustmentEventListener.h +++ b/inc/FUiIAdjustmentEventListener.h @@ -14,6 +14,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // + /** * @file FUiIAdjustmentEventListener.h * @brief This is the header file for the %IAdjustmentEventListener interface. diff --git a/inc/FUiIAnimationEventListener.h b/inc/FUiIAnimationEventListener.h index 4151466..fb3602b 100644 --- a/inc/FUiIAnimationEventListener.h +++ b/inc/FUiIAnimationEventListener.h @@ -14,6 +14,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // + /** * @file FUiIAnimationEventListener.h * @brief This is the header file for the %IAnimationEventListener interface. diff --git a/inc/FUiIColorChangeEventListener.h b/inc/FUiIColorChangeEventListener.h index 06634f3..a06e287 100644 --- a/inc/FUiIColorChangeEventListener.h +++ b/inc/FUiIColorChangeEventListener.h @@ -14,6 +14,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // + /** * @file FUiIColorChangeEventListener.h * @brief This is the header file for the %IColorChangeEventListener interface. diff --git a/inc/FUiICustomItemEventListener.h b/inc/FUiICustomItemEventListener.h old mode 100644 new mode 100755 index 46bb675..486b54e --- a/inc/FUiICustomItemEventListener.h +++ b/inc/FUiICustomItemEventListener.h @@ -39,7 +39,7 @@ namespace Tizen {namespace Ui { /** - * @if OSPDEPREC + * @if OSPDEPREC * @interface ICustomItemEventListener * @brief [Deprecated] This interface implements the listener for the item event. * @@ -57,18 +57,18 @@ class _OSP_EXPORT_ ICustomItemEventListener // Operation public: /** - * @if OSPDEPREC + * @if OSPDEPREC * This is the destructor for this class. * * @brief [Deprecated] * @deprecated This class is deprecated. Instead of using this class, use IListViewItemEventListener class. * @since 2.0 - * @endif + * @endif */ virtual ~ICustomItemEventListener(void) {} /** - * @if OSPDEPREC + * @if OSPDEPREC * Called when the state of CustomListItem is changed. * * @brief [Deprecated] @@ -81,13 +81,13 @@ public: * @param[in] status The state of the item * @remarks Implement this method in a class which derives %ICustomItemEventListener to handle the user interaction at the CustomListItem. * @remarks If CustomList is constructed with CUSTOM_LIST_STYLE_RADIO_WITH_DIVIDER, this method is called when the radio button is selected. - * @endif + * @endif */ virtual void OnItemStateChanged(const Tizen::Ui::Control& source, int index, int itemId, Tizen::Ui::ItemStatus status) = 0; /** - * @if OSPDEPREC + * @if OSPDEPREC * Called when the state of an element in the CustomListItem is changed. * * @brief [Deprecated] @@ -103,7 +103,7 @@ public: * CustomListItem. * @remarks If CustomList is constructed with CUSTOM_LIST_STYLE_RADIO_WITH_DIVIDER, this method is not called when the radio button is selected. * Instead, OnItemStateChanged(const Tizen::Ui::Control& source, int index, int itemId, Tizen::Ui::ItemStatus status) is called. - * @endif + * @endif */ virtual void OnItemStateChanged(const Tizen::Ui::Control& source, int index, int itemId, int elementId, Tizen::Ui::ItemStatus status) = 0; diff --git a/inc/FUiIDataBindingDataTransformer.h b/inc/FUiIDataBindingDataTransformer.h index 1c13f4a..b2ae8fe 100644 --- a/inc/FUiIDataBindingDataTransformer.h +++ b/inc/FUiIDataBindingDataTransformer.h @@ -37,13 +37,13 @@ namespace Tizen { namespace Ui { /** - * @interface IDataBindingDataTransformer - * @brief This interface defines methods for transforming the value of the data that will be updated to the binding target or source. - * - * @since 2.0 - * - * The %IDataBindingDataTransformer interface defines methods for transforming the value of source type to the value of destination type. - */ +* @interface IDataBindingDataTransformer +* @brief This interface defines methods for transforming the value of the data that will be updated to the binding target or source. +* +* @since 2.0 +* +* The %IDataBindingDataTransformer interface defines methods for transforming the value of source type to the value of destination type. +*/ class _OSP_EXPORT_ IDataBindingDataTransformer { public: @@ -55,53 +55,53 @@ public: virtual ~IDataBindingDataTransformer(void) {}; /** - * Transforms the value of the data of source type to value of target type. - * @since 2.0 - * @return @c true if it is successful to convert source to target @n - * else @c false - * @param[in] bindingId the specified binding id - * @param[in] sourceType The source data type - * @param[in] sourceData The data source - * @param[in] targetType The target data type - * @param[out] targetData The data target - */ + * Transforms the value of the data of source type to value of target type. + * @since 2.0 + * @return @c true if it is successful to convert source to target @n + * else @c false + * @param[in] bindingId the specified binding id + * @param[in] sourceType The source data type + * @param[in] sourceData The data source + * @param[in] targetType The target data type + * @param[out] targetData The data target + */ virtual bool TransformSourceToTarget(const Tizen::Base::String& bindingId, DataBindingDataType sourceType, const Tizen::Base::Object& sourceData, DataBindingDataType targetType, Tizen::Base::Object& targetData) = 0; /** - * Transforms the value of the data of target type to value of source type. - * @since 2.0 - * @return @c true if it is successful to convert target to source @n - * else @c false - * @param[in] bindingId the specified binding id - * @param[in] targetType The target data type - * @param[in] targetData The data target - * @param[in] sourceType The source data type - * @param[out] sourceData The data source - */ + * Transforms the value of the data of target type to value of source type. + * @since 2.0 + * @return @c true if it is successful to convert target to source @n + * else @c false + * @param[in] bindingId the specified binding id + * @param[in] targetType The target data type + * @param[in] targetData The data target + * @param[in] sourceType The source data type + * @param[out] sourceData The data source + */ virtual bool TransformTargetToSource(const Tizen::Base::String& bindingId, DataBindingDataType targetType, const Tizen::Base::Object& targetData, DataBindingDataType sourceType, Tizen::Base::Object& sourceData) = 0; /** - * Checks whether the this transformer can convert the source type to target type - * - * @since 2.0 - * @return @c true It is possible to transform source type to target type, @n - * else @c It's not possible - * @param[in] bindingId the specified binding id - * @param[in] sourceType The source data type - * @param[in] targetType The taret data type - */ + * Checks whether the this transformer can convert the source type to target type + * + * @since 2.0 + * @return @c true It is possible to transform source type to target type, @n + * else @c It's not possible + * @param[in] bindingId the specified binding id + * @param[in] sourceType The source data type + * @param[in] targetType The taret data type + */ virtual bool IsSourceToTargetTransformable(const Tizen::Base::String& bindingId, DataBindingDataType sourceType, DataBindingDataType targetType) = 0; /** - * Checks whether the this transformer can convert the target type to source type - * - * @since 2.0 - * @return @c true It is possible to transform target type to source type, @n - * else @c It's not possible - * @param[in] bindingId the specified binding id - * @param[in] targetType The taret data type - * @param[in] sourceType The source data type - */ + * Checks whether the this transformer can convert the target type to source type + * + * @since 2.0 + * @return @c true It is possible to transform target type to source type, @n + * else @c It's not possible + * @param[in] bindingId the specified binding id + * @param[in] targetType The taret data type + * @param[in] sourceType The source data type + */ virtual bool IsTargetToSourceTransformable(const Tizen::Base::String& bindingId, DataBindingDataType targetType, DataBindingDataType sourceType) = 0; protected: diff --git a/inc/FUiIDataBindingDataValidator.h b/inc/FUiIDataBindingDataValidator.h index 375d431..017973d 100644 --- a/inc/FUiIDataBindingDataValidator.h +++ b/inc/FUiIDataBindingDataValidator.h @@ -37,14 +37,14 @@ namespace Tizen { namespace Ui { /** - * @interface IDataBindingDataValidator - * @brief This interface defines methods for validating the value of transformed data that will be updated to the binding - * target or source. - * - * @since 2.0 - * - * The %IDataBindingDataValidator interface defines methods for validating the value of transformed data that will be updated to the binding. - */ +* @interface IDataBindingDataValidator +* @brief This interface defines methods for validating the value of transformed data that will be updated to the binding +* target or source. +* +* @since 2.0 +* +* The %IDataBindingDataValidator interface defines methods for validating the value of transformed data that will be updated to the binding. +*/ class _OSP_EXPORT_ IDataBindingDataValidator { public: @@ -56,25 +56,25 @@ public: virtual ~IDataBindingDataValidator(void) {}; /** - * Validates the value of the transformed data that will be updated to the binding target. - * - * @since 2.0 - * @return @c true if the specified value is valid, @n - * else @c false - * @param[in] bindingId The binding Id to validate - * @param[in] data The data to validate - */ + * Validates the value of the transformed data that will be updated to the binding target. + * + * @since 2.0 + * @return @c true if the specified value is valid, @n + * else @c false + * @param[in] bindingId The binding Id to validate + * @param[in] data The data to validate + */ virtual bool ValidateDataToTarget(const Tizen::Base::String& bindingId, const Tizen::Base::Object& data) = 0; /** - * Validates the value of the transformed data that will be updated to the binding source. - * - * @since 2.0 - * @return @c true if the specified value is valid, @n - * else @c false - * @param[in] bindingId The binding Id to validate - * @param[in] data The data to validate - */ + * Validates the value of the transformed data that will be updated to the binding source. + * + * @since 2.0 + * @return @c true if the specified value is valid, @n + * else @c false + * @param[in] bindingId The binding Id to validate + * @param[in] data The data to validate + */ virtual bool ValidateDataToSource( const Tizen::Base::String& bindingId, const Tizen::Base::Object& data) = 0; protected: diff --git a/inc/FUiIDataBindingListener.h b/inc/FUiIDataBindingListener.h index c64fd75..9443532 100644 --- a/inc/FUiIDataBindingListener.h +++ b/inc/FUiIDataBindingListener.h @@ -32,13 +32,13 @@ namespace Tizen { namespace Ui { /** - * @interface IDataBindingListener - * @brief This interface is the listener interface for receiving data binding-related events. - * - * @since 2.0 - * - * The %IDataBindingListener interface defines methods for receiving data binding-related events. - */ +* @interface IDataBindingListener +* @brief This interface is the listener interface for receiving data binding-related events. +* +* @since 2.0 +* +* The %IDataBindingListener interface defines methods for receiving data binding-related events. +*/ class _OSP_EXPORT_ IDataBindingListener : public Tizen::Base::Runtime::IEventListener { @@ -51,38 +51,42 @@ public: virtual ~IDataBindingListener(void) {}; /** - * Called when the data transfer for source is completed by the data binding. - * - * @since 2.0 - * - * @param[in] bindingId The binding ID - * @param[in] controlName The name of binding target control - * @param[in] propertyName The name of binding target property - */ - virtual void OnDataBindingSourceUpdated(const Tizen::Base::String& bindingId, const Tizen::Base::String& controlName, const Tizen::Base::String& propertyName) = 0; + * Called when the data transfer for source is completed by the data binding. + * + * @since 2.0 + * + * @param[in] bindingId The binding ID + * @param[in] controlName The name of binding target control + * @param[in] propertyName The name of binding target property + */ + virtual void OnDataBindingSourceUpdated(const Tizen::Base::String& bindingId, const Tizen::Base::String& controlName + , const Tizen::Base::String& propertyName) = 0; /** - * Called when the data transfer for target is completed by the data binding. - * - * @since 2.0 - * - * @param[in] bindingId The binding ID - * @param[in] controlName The name of binding target control - * @param[in] propertyName The name of binding target property - */ - virtual void OnDataBindingTargetUpdated(const Tizen::Base::String& bindingId, const Tizen::Base::String& controlName, const Tizen::Base::String& propertyName) = 0; + * Called when the data transfer for target is completed by the data binding. + * + * @since 2.0 + * + * @param[in] bindingId The binding ID + * @param[in] controlName The name of binding target control + * @param[in] propertyName The name of binding target property + */ + virtual void OnDataBindingTargetUpdated(const Tizen::Base::String& bindingId, const Tizen::Base::String& controlName + , const Tizen::Base::String& propertyName) = 0; + /** - * Called when a validation has failed during data transfer. - * - * @since 2.0 - * - * @param[in] bindingId The binding ID - * @param[in] controlName The name of binding target control - * @param[in] propertyName The name of binding target property - * @param[in] destType The data binding destination type - */ - virtual void OnDataBindingValidationFailed(const Tizen::Base::String& bindingId, const Tizen::Base::String& controlName, const Tizen::Base::String& propertyName, DataBindingDestinationType destType) = 0; + * Called when a validation has failed during data transfer. + * + * @since 2.0 + * + * @param[in] bindingId The binding ID + * @param[in] controlName The name of binding target control + * @param[in] propertyName The name of binding target property + * @param[in] destType The data binding destination type + */ + virtual void OnDataBindingValidationFailed(const Tizen::Base::String& bindingId, const Tizen::Base::String& controlName + , const Tizen::Base::String& propertyName, DataBindingDestinationType destType) = 0; protected: // diff --git a/inc/FUiIDateChangeEventListener.h b/inc/FUiIDateChangeEventListener.h index dc3df7e..53df8a8 100644 --- a/inc/FUiIDateChangeEventListener.h +++ b/inc/FUiIDateChangeEventListener.h @@ -14,6 +14,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // + /** * @file FUiIDateChangeEventListener.h * @brief This is the header file for the %IDateChangeEventListener interface. diff --git a/inc/FUiIDateTimeChangeEventListener.h b/inc/FUiIDateTimeChangeEventListener.h index 3f92c6c..51470d6 100644 --- a/inc/FUiIDateTimeChangeEventListener.h +++ b/inc/FUiIDateTimeChangeEventListener.h @@ -14,6 +14,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // + /** * @file FUiIDateTimeChangeEventListener.h * @brief This is the header file for the %IDateTimeChangeEventListener interface. diff --git a/inc/FUiIDragDropEventListenerF.h b/inc/FUiIDragDropEventListenerF.h new file mode 100755 index 0000000..e54d7c3 --- /dev/null +++ b/inc/FUiIDragDropEventListenerF.h @@ -0,0 +1,110 @@ + +// +// Open Service Platform +// Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. +// +// Licensed under the Flora License, Version 1.0 (the License); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://floralicense.org/license/ +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an AS IS BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +/* +* @file FUiIDragDropEventListenerF.h +* @brief This is the header file for the %IDragDropEventListenerF interface. +* +* This header file contains the declarations of the %IDragDropEventListenerF interface. +*/ +#ifndef _FUI_IDRAG_DROP_EVENT_LISTENERF_H_ +#define _FUI_IDRAG_DROP_EVENT_LISTENERF_H_ + +#include +#include +#include + +namespace Tizen { namespace Ui +{ + +class Control; + +/* + * @interface IDragDropEventListenerF + * @brief This interface implements the listener for a drag and drop event. + * + * @since 2.1 + * + * The %IDragDropEventListenerF interface is the listener interface for receiving drag and drop events. + * The class that processes a drag and drop event implements this interface, and the instance created with that class is + * registered with a UI control, using the control's AddDragDropEventListenerF() method. When the drag and drop event occurs, a + * method of that instance is invoked. + * @n + * For more information on the class features, see Event Listeners. + */ +class _OSP_EXPORT_ IDragDropEventListenerF + : virtual public Tizen::Base::Runtime::IEventListener +{ +// Operation +public: + // + // This method is for internal use only. + // Using this method can cause behavioral, security-related, and consistency-related issues in the application. + // + // This is the destructor for this class. + // + // @since 2.1 + // + virtual ~IDragDropEventListenerF(void) {} + + /* + * Called when an entity is dragged. + * + * @since 2.1 + * + * @param[in] source The source of the event + * @param[in] startPosition The start position + * @param[in] currentPosition The current position + */ + virtual void OnTouchDraggedF(const Tizen::Ui::Control& source, + const Tizen::Graphics::FloatPoint& startPosition, const Tizen::Graphics::FloatPoint& currentPosition) = 0; + + /* + * Called when an entity is dropped. + * + * @since 2.1 + * + * @param[in] source The source of the event + * @param[in] startPosition The start position + * @param[in] currentPosition The current position + */ + virtual void OnTouchDroppedF(const Tizen::Ui::Control& source, + const Tizen::Graphics::FloatPoint& startPosition, const Tizen::Graphics::FloatPoint& currentPosition) = 0; + +protected: + // Reserved virtual methods for later extension + // + // The following methods are reserved and may change its name at any time without prior notice. + // + virtual void IDragDropEventListenerF_Reserved1(void) {} + + // Reserved virtual methods for later extension + // + // The following methods are reserved and may change its name at any time without prior notice. + // + virtual void IDragDropEventListenerF_Reserved2(void) {} + + // Reserved virtual methods for later extension + // + // The following methods are reserved and may change its name at any time without prior notice. + // + virtual void IDragDropEventListenerF_Reserved3(void) {} +}; // IDragDropEventListenerF + +} } // Tizen::Ui + +#endif // _FUI_IDRAG_DROP_EVENT_LISTENERF_H_ diff --git a/inc/FUiIExpandableItemEventListener.h b/inc/FUiIExpandableItemEventListener.h old mode 100644 new mode 100755 index e20b8f6..37dea68 --- a/inc/FUiIExpandableItemEventListener.h +++ b/inc/FUiIExpandableItemEventListener.h @@ -57,19 +57,19 @@ class _OSP_EXPORT_ IExpandableItemEventListener // Operation public: /** - * @if OSPDEPREC + * @if OSPDEPREC * This is the destructor for this class. * * @brief [Deprecated] * @deprecated This listener is deprecated. This listener is deprecated. Instead of using this class, use - * IGroupedTableViewEventListener. + * IGroupedTableViewEventListener. * @since 2.0 - * @endif + * @endif */ virtual ~IExpandableItemEventListener(void) {} /** - * @if OSPDEPREC + * @if OSPDEPREC * Called when the state of CustomListItem in the ExpandableList is changed. @n * If a main item is selected, the index of the sub-item is @c -1. * @@ -84,29 +84,29 @@ public: * @param[in] status The state of the item * @remarks Implement this method in a class that derives %IExpandableItemEventListener to handle the user interaction at the CustomListItem of the * ExpandableList. - * @endif + * @endif */ virtual void OnItemStateChanged(const Tizen::Ui::Control& source, int mainIndex, int subIndex, int itemId, Tizen::Ui::ItemStatus status) = 0; /** - * @if OSPDEPREC - * Called when the state of an element in CustomListItem in ExpandableList is changed. @n - * If a main item is selected, the index of the sub-item is @c -1. - * @brief [Deprecated] - * @deprecated This listener is deprecated. Instead of using this class, use IGroupedTableViewEventListener. - * @since 2.0 - * - * @param[in] source The source control from which the event is fired - * @param[in] mainIndex The main index of the item - * @param[in] subIndex The sub index of the item - * @param[in] itemId The item ID - * @param[in] elementId The element ID - * @param[in] status The state of the element - * @remarks Implement this method in a class that derives %IExpandableItemEventListener to handle the user interaction at the element in - * CustomListItem of ExpandableList. - * @endif - */ + * @if OSPDEPREC + * Called when the state of an element in CustomListItem in ExpandableList is changed. @n + * If a main item is selected, the index of the sub-item is @c -1. + * @brief [Deprecated] + * @deprecated This listener is deprecated. Instead of using this class, use IGroupedTableViewEventListener. + * @since 2.0 + * + * @param[in] source The source control from which the event is fired + * @param[in] mainIndex The main index of the item + * @param[in] subIndex The sub index of the item + * @param[in] itemId The item ID + * @param[in] elementId The element ID + * @param[in] status The state of the element + * @remarks Implement this method in a class that derives %IExpandableItemEventListener to handle the user interaction at the element in + * CustomListItem of ExpandableList. + * @endif + */ virtual void OnItemStateChanged(const Tizen::Ui::Control& source, int mainIndex, int subIndex, int itemId, int elementId, Tizen::Ui::ItemStatus status) = 0; }; //IExpandableItemEventListener diff --git a/inc/FUiIFastScrollEventListener.h b/inc/FUiIFastScrollEventListener.h old mode 100644 new mode 100755 index a933728..442dad1 --- a/inc/FUiIFastScrollEventListener.h +++ b/inc/FUiIFastScrollEventListener.h @@ -2,14 +2,14 @@ // Open Service Platform // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. // -// Licensed under the Flora License, Version 1.0 (the License); +// Licensed under the Apache License, Version 2.0 (the License); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an AS IS BASIS, +// distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. @@ -58,18 +58,18 @@ class _OSP_EXPORT_ IFastScrollEventListener // Operation public: /** - * @if OSPDEPREC + * @if OSPDEPREC * This is the destructor for this class. * * @brief [Deprecated] * @deprecated This class is deprecated. Instead of using this class, use the IFastScrollListener class. * @since 2.0 - * @endif + * @endif */ virtual ~IFastScrollEventListener(void) {} /** - * @if OSPDEPREC + * @if OSPDEPREC * Called when a main index is selected. * * @brief [Deprecated] @@ -78,12 +78,12 @@ public: * * @param[in] source The source of the event * @param[in] mainIndex The main index - * @endif + * @endif */ virtual void OnMainIndexChanged(const Tizen::Ui::Control& source, Tizen::Base::Character& mainIndex) = 0; /** - * @if OSPDEPREC + * @if OSPDEPREC * Called when a sub index is selected. * * @brief [Deprecated] @@ -98,7 +98,7 @@ public: virtual void OnSubIndexChanged(const Tizen::Ui::Control& source, Tizen::Base::Character& mainIndex, Tizen::Base::Character& subIndex) = 0; /** - * @if OSPDEPREC + * @if OSPDEPREC * Called when a main index is expanded. * * @brief [Deprecated] @@ -112,7 +112,7 @@ public: virtual void OnMainIndexSelected(const Tizen::Ui::Control& source, Tizen::Base::Character& mainIndex) = 0; /** - * @if OSPDEPREC + * @if OSPDEPREC * Called when a sub index is expanded. * * @brief [Deprecated] diff --git a/inc/FUiIFocusEventListener.h b/inc/FUiIFocusEventListener.h index 2b9cfbd..c7352fb 100644 --- a/inc/FUiIFocusEventListener.h +++ b/inc/FUiIFocusEventListener.h @@ -2,14 +2,14 @@ // Open Service Platform // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. // -// Licensed under the Flora License, Version 1.0 (the License); +// Licensed under the Apache License, Version 2.0 (the License); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an AS IS BASIS, +// distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. @@ -32,14 +32,11 @@ namespace Tizen { namespace Ui class Control; -/** - * @enum FocusStatus - * - * Defines constants used to identify focus status. - * - * @since 2.0 - * - */ +// +//@enum FocusStatus +//Defines constants used to identify focus status. +//@since 2.0 +// enum FocusStatus { diff --git a/inc/FUiIGroupedItemEventListener.h b/inc/FUiIGroupedItemEventListener.h old mode 100644 new mode 100755 index 5111668..cb0354e --- a/inc/FUiIGroupedItemEventListener.h +++ b/inc/FUiIGroupedItemEventListener.h @@ -54,29 +54,29 @@ class _OSP_EXPORT_ IGroupedItemEventListener { public: /** - * @if OSPDEPREC + * @if OSPDEPREC * This is the default constructor for this class. * * @brief [Deprecated] * @deprecated This class is deprecated. Instead of using this class, use IGroupedListViewItemEventListener class. * @since 2.0 - * @endif + * @endif */ IGroupedItemEventListener(void) {}; /** - * @if OSPDEPREC + * @if OSPDEPREC * This is the destructor for this class. * * @brief [Deprecated] * @deprecated This class is deprecated. Instead of using this class, use IGroupedListViewItemEventListener class. * @since 2.0 - * @endif + * @endif */ virtual ~IGroupedItemEventListener(void) {}; /** - * @if OSPDEPREC + * @if OSPDEPREC * Called when the state of an element in the CustomListItem instance in the GroupedList instance is changed. @n * For example, this method is called when an element of %CustomListItem in %GroupedList is checked, unchecked, or selected. * @@ -93,12 +93,12 @@ public: * @remarks If GroupedList or SlidableGroupedList is constructed with CUSTOM_LIST_STYLE_RADIO_WITH_DIVIDER, this method is not called when the * radio button is selected. Instead, OnItemStateChanged(const Tizen::Ui::Control &source, int groupIndex, int itemIndex, int itemId, * Tizen::Ui::ItemStatus status) is called. - * @endif - */ + * @endif + */ virtual void OnItemStateChanged(const Tizen::Ui::Control& source, int groupIndex, int itemIndex, int itemId, int elementId, Tizen::Ui::ItemStatus status) = 0; /** - * @if OSPDEPREC + * @if OSPDEPREC * Called when the state of an item in the grouped list is changed. @n * For example, this method is called when an item of the GroupedList control is checked, unchecked, or selected. * @@ -113,7 +113,7 @@ public: * @param[in] status The state of the item * @remarks If GroupedList or SlidableGroupedList is constructed with CUSTOM_LIST_STYLE_RADIO_WITH_DIVIDER, this method is called when the radio * button is selected. - * @endif + * @endif */ virtual void OnItemStateChanged(const Tizen::Ui::Control& source, int groupIndex, int itemIndex, int itemId, Tizen::Ui::ItemStatus status) = 0; }; //IGroupedItemEventListener diff --git a/inc/FUiIInputConnectionEventListener.h b/inc/FUiIInputConnectionEventListener.h old mode 100644 new mode 100755 index 8fbc4da..bc5fd74 --- a/inc/FUiIInputConnectionEventListener.h +++ b/inc/FUiIInputConnectionEventListener.h @@ -32,11 +32,11 @@ #include namespace Tizen { namespace Base { -class String; + class String; }} // Tizen::Base namespace Tizen { namespace Graphics { -class Rectangle; + class Rectangle; }} // Tizen::Graphics diff --git a/inc/FUiIInputConnectionEventListenerF.h b/inc/FUiIInputConnectionEventListenerF.h new file mode 100644 index 0000000..4d490f6 --- /dev/null +++ b/inc/FUiIInputConnectionEventListenerF.h @@ -0,0 +1,180 @@ +// +// Open Service Platform +// Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. +// +// Licensed under the Flora License, Version 1.0 (the License); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://floralicense.org/license/ +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an AS IS BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +/** + * @file FUiIInputConnectionEventListenerF.h + * @brief This is the header file for the %IInputConnectionEventListenerF class. + * + * This header file contains the declarations of the %IInputConnectionEventListenerF class. + * + * + */ + +#ifndef _FUI_IINPUT_CONNECTION_EVENT_LISTENER_F_H_ +#define _FUI_IINPUT_CONNECTION_EVENT_LISTENER_F_H_ + +#include +#include +#include + +namespace Tizen { namespace Base { + class String; +}} // Tizen::Base + +namespace Tizen { namespace Graphics { + class FloatRectangle; +}} // Tizen::Graphics + + +namespace Tizen { namespace Ui { + +class InputConnection; + +/** + * @class IInputConnectionEventListenerF + * @brief This is the header file for the %IInputConnectionEventListenerF class. + * This header file contains the declarations of the %IInputConnectionEventListenerF class. + * It's possible to not work the callback depending on the current InputMethod. + * @since 2.1 + * + * The %IInputConnectionEventListener interface defines methods for processing between the InputConnection and the input method. + */ +class _OSP_EXPORT_ IInputConnectionEventListenerF + : virtual public Tizen::Base::Runtime::IEventListener +{ +public: + /** + * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. + * + * @since 2.1 + */ + virtual ~IInputConnectionEventListenerF(void) {} + + /** + * Notifies when the show state of the InputPanel is changed. + * + * @since 2.1 + * @param[in] source The source of the event + * @param[in] showState The state + */ + virtual void OnInputConnectionPanelShowStateChanged(Tizen::Ui::InputConnection& source, Tizen::Ui::InputPanelShowState showState) = 0; + + /** + * Notifies when the language of the InputPanel is changed. + * + * @since 2.1 + * @param[in] source The source of the event + * @param[in] language The language code + */ + virtual void OnInputConnectionPanelLanguageChanged(Tizen::Ui::InputConnection& source, Tizen::Locales::LanguageCode language) = 0; + + /** + * Notifies when the size of the InputPanel is changed. + * + * @since 2.1 + * @param[in] source The source of the event + * @param[in] bounds The size + */ + virtual void OnInputConnectionPanelBoundsChanged(Tizen::Ui::InputConnection& source, const Tizen::Graphics::FloatRectangle& bounds) = 0; + + /** + * Notifies when the show state of the Text-Prediction is changed. + * + * @since 2.1 + * @param[in] source The source of the event + * @param[in] isShown The state + */ + virtual void OnInputConnectionTextPredictionShowStateChanged(Tizen::Ui::InputConnection& source, bool isShown) = 0; + + /** + * Notifies when the size of the Text-Prediction is changed. + * + * @since 2.1 + * @param[in] source The source of the event + * @param[in] bounds The size + */ + virtual void OnInputConnectionTextPredictionBoundsChanged(Tizen::Ui::InputConnection& source, const Tizen::Graphics::FloatRectangle& bounds) = 0; + + /** + * Notifies when the key of the InputPanel is selected. + * + * @since 2.1 + * @param[in] source The source of the event + * @param[in] committedText The committed text. + */ + virtual void OnInputConnectionTextCommitted(Tizen::Ui::InputConnection& source, const Tizen::Base::String& committedText) = 0; + + /** + * Notifies when the key of the InputPanel is selected during the composing. + * + * @since 2.1 + * @param[in] source The source of the event + * @param[in] composingText The composing text. + * @param[in] cursorPosition the current cursor position. + */ + virtual void OnInputConnectionComposingTextChanged(Tizen::Ui::InputConnection& source, const Tizen::Base::String& composingText, int cursorPosition) = 0; + +protected: + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // This method is reserved and may change its name at any time without + // prior notice. + // + virtual void IInputConnectionEventListenerF_Reserved1(void) {} + + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // This method is reserved and may change its name at any time without + // prior notice. + // + virtual void IInputConnectionEventListenerF_Reserved2(void) {} + + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // This method is reserved and may change its name at any time without + // prior notice. + // + virtual void IInputConnectionEventListenerF_Reserved3(void) {} + + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // This method is reserved and may change its name at any time without + // prior notice. + // + virtual void IInputConnectionEventListenerF_Reserved4(void) {} + + // + // This method is for internal use only. Using this method can cause behavioral, security-related, + // and consistency-related issues in the application. + // + // This method is reserved and may change its name at any time without + // prior notice. + // + virtual void IInputConnectionEventListenerF_Reserved5(void) {} +}; // IInputConnectionEventListenerF + +}} // Tizen::Ui +#endif // _FUI_IINPUT_CONNECTION_EVENT_LISTENER_F_H_ + diff --git a/inc/FUiIInputConnectionProvider.h b/inc/FUiIInputConnectionProvider.h old mode 100644 new mode 100755 index 7c9e2db..7cbe8b5 --- a/inc/FUiIInputConnectionProvider.h +++ b/inc/FUiIInputConnectionProvider.h @@ -30,7 +30,7 @@ #include namespace Tizen { namespace Base { -class String; + class String; }} // Tizen::Base namespace Tizen { namespace Ui { diff --git a/inc/FUiIItemEventListener.h b/inc/FUiIItemEventListener.h old mode 100644 new mode 100755 index 9d5b81a..59d4f9b --- a/inc/FUiIItemEventListener.h +++ b/inc/FUiIItemEventListener.h @@ -52,7 +52,7 @@ enum ItemStatus ITEM_CHECKED = 0, /**< @if OSPDEPREC The item has been checked (toggle of the check area) @endif */ ITEM_UNCHECKED, /**< @if OSPDEPREC The item has been unchecked (toggle of the check area) @endif */ ITEM_SELECTED, /**< @if OSPDEPREC The item has been selected (non-check area of the item) @endif */ - ITEM_HIGHLIGHTED /**< @if OSPDEPREC The item has been highlighted (non-check area of the item) @endif */ + ITEM_HIGHLIGHTED /**< @if OSPDEPREC The item has been highlighted (non-check area of the item) @b Since: @b 1.1 @endif */ }; /** @@ -73,18 +73,18 @@ class _OSP_EXPORT_ IItemEventListener // Operation public: /** - * @if OSPDEPREC + * @if OSPDEPREC * This is the destructor for this class. * * @brief [Deprecated] * @deprecated This class is deprecated. Instead of using this class, use IListViewItemEventListener class. * @since 2.0 - * @endif + * @endif */ virtual ~IItemEventListener(void) {} /** - * @if OSPDEPREC + * @if OSPDEPREC * Called when an item event occurs. * * @brief [Deprecated] @@ -95,7 +95,7 @@ public: * @param[in] index The index of the item * @param[in] itemId The item ID * @param[in] status The item status - * @endif + * @endif */ virtual void OnItemStateChanged(const Tizen::Ui::Control& source, int index, int itemId, Tizen::Ui::ItemStatus status) = 0; }; //IItemEventListener diff --git a/inc/FUiIKeyEventListener.h b/inc/FUiIKeyEventListener.h index ec1917f..0b3a211 100644 --- a/inc/FUiIKeyEventListener.h +++ b/inc/FUiIKeyEventListener.h @@ -14,7 +14,6 @@ // See the License for the specific language governing permissions and // limitations under the License. // - /** * @file FUiIKeyEventListener.h * @brief This is the header file for the %IKeyEventListener interface. @@ -23,467 +22,16 @@ * If a key event is generated, a method of this interface is called. @n * If an application performs tasks related to the key event, use the methods of this interface. */ - #ifndef _FUI_IKEY_EVENT_LISTENER_H_ #define _FUI_IKEY_EVENT_LISTENER_H_ #include #include +#include namespace Tizen {namespace Ui { class Control; -/** - * @enum KeyCode - * - * Defines the list of keys supported by the system. @n - * Note that certain keys may not be available on all devices. @n - * Please use the Tizen::Ui::KeyboardMap class to query the availability of a specific key on the target device. - * - * @since 2.0 - */ -enum KeyCode -{ - /** - * The invalid key - */ - KEY_INVALID = 0x0000, - - /** - * The up side key - */ - KEY_SIDE_UP, - - /** - * The down side key - */ - KEY_SIDE_DOWN, - - /** - * The Ok key - */ - KEY_OK, - - /** - * The clear key - */ - KEY_CLEAR, - - /** - * The camera key - */ - KEY_CAMERA, - - /** - * The task switcher key - */ - KEY_SWITCH, - - /** - * The 0 key - */ - KEY_0, - - /** - * The 1 key - */ - KEY_1, - - /** - * The 2 key - */ - KEY_2, - - /** - * The 3 key - */ - KEY_3, - - /** - * The 4 key - */ - KEY_4, - - /** - * The 5 key - */ - KEY_5, - - /** - * The 6 key - */ - KEY_6, - - /** - * The 7 key - */ - KEY_7, - - /** - * The 8 key - */ - KEY_8, - - /** - * The 9 key - */ - KEY_9, - - /** - * The asterisk key - */ - KEY_ASTERISK, - - /** - * The sharp key - */ - KEY_SHARP, - - /** - * The left directional key - */ - KEY_LEFT, - - /** - * The up directional key - */ - KEY_UP, - - /** - * The down directional key - */ - KEY_DOWN, - - /** - * The right directional key - */ - KEY_RIGHT, - - /* - * The Placeholder - */ - KEY_MAX, - - /** - * The A key - */ - KEY_A, - - /** - * The B key - */ - KEY_B, - - /** - * The C key - */ - KEY_C, - - /** - * The D key - */ - KEY_D, - - /** - * The E key - */ - KEY_E, - - /** - * The F key - */ - KEY_F, - - /** - * The G key - */ - KEY_G, - - /** - * The H key - */ - KEY_H, - - /** - * The I key - */ - KEY_I, - - /** - * The J key - */ - KEY_J, - - /** - * The K key - */ - KEY_K, - - /** - * The L key - */ - KEY_L, - - /** - * The M key - */ - KEY_M, - - /** - * The N key - */ - KEY_N, - - /** - * The O key - */ - KEY_O, - - /** - * The P key - */ - KEY_P, - - /** - * The Q key - */ - KEY_Q, - - /** - * The R key - */ - KEY_R, - - /** - * The S key - */ - KEY_S, - - /** - * The T key - */ - KEY_T, - - /** - * The U key - */ - KEY_U, - - /** - * The V key - */ - KEY_V, - - /** - * The W key - */ - KEY_W, - - /** - * The Y key - */ - KEY_Y, - - /** - * The X key - */ - KEY_X, - - /** - * The Z key - */ - KEY_Z, - - /** - * The backspace key - */ - KEY_BACKSPACE, - - /** - * The comma key - */ - KEY_COMMA, - - /** - * The enter key - */ - KEY_ENTER, - - /** - * The Caps Lock key - */ - KEY_CAPSLOCK, - - /** - * The Question key - */ - KEY_QUESTION, - - /** - * The Alt key - */ - KEY_ALT, - - /** - * The Language Symbol key - */ - KEY_SYM, - - /** - * The Language Setting key - */ - KEY_SETTING, - - /** - * The Space key - */ - KEY_SPACE, - - /** - * The Dot key - */ - KEY_DOT, - - /** - * The Function key - */ - KEY_FN, - - /** - * The camera half shutter key - */ - KEY_CAMERA_HALF_SHUTTER, - - /** - * The Character symbol 1 key - */ - KEY_CHAR_SYM_1, - - /** - * The Character symbol 2 key - */ - KEY_CHAR_SYM_2, - - /** - * The Character symbol 3 key - */ - KEY_CHAR_SYM_3, - - /** - * The Character symbol 4 key - */ - KEY_CHAR_SYM_4, - - /** - * The Character symbol 5 key - */ - KEY_CHAR_SYM_5, - - /** - * The Character symbol 6 key - */ - KEY_CHAR_SYM_6, - - /** - * The Character symbol 7 key - */ - KEY_CHAR_SYM_7, - - /** - * The Character symbol 8 key - */ - KEY_CHAR_SYM_8, - - /** - * The Character symbol 9 key - */ - KEY_CHAR_SYM_9, - - /** - * The Character symbol A key - */ - KEY_CHAR_SYM_A, - - /** - * The Character symbol B key - */ - KEY_CHAR_SYM_B, - - /** - * The Character symbol C key - */ - KEY_CHAR_SYM_C, - - /** - * The Character symbol D key - */ - KEY_CHAR_SYM_D, - - /** - * The Character symbol E key - */ - KEY_CHAR_SYM_E, - - /** - * The Character symbol F key - */ - KEY_CHAR_SYM_F, - - /** - * The Special function 1 key - */ - KEY_FN_1, - - /** - * The Special function 2 key - */ - KEY_FN_2, - - /** - * The Special function 3 key - */ - KEY_FN_3, - - /** - * The Special function 4 key - */ - KEY_FN_4, - - /** - * The Special function 5 key - */ - KEY_FN_5, - - /** - * The power key - */ - KEY_POWER_HOLD, - - /** - * The delete key - */ - KEY_DELETE, - - /* - * placeholder key - */ - KEY_HARDWARE_MAX -}; - - -/** - * @enum KeyState - * - * Defines the state of the key. - * - * @since 2.0 - */ -enum KeyState -{ - KEY_PRESSED = 0x0001, /**< The key is pressed */ - KEY_RELEASED = 0x0002, /**< The key is released */ - KEY_LONGPRESSED = 0x0003 /**< The key pressed and held down over a predefined duration */ -}; /** * @interface IKeyEventListener @@ -505,15 +53,19 @@ enum KeyState class _OSP_EXPORT_ IKeyEventListener : virtual public Tizen::Base::Runtime::IEventListener { +// Operation public: - /** - * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. - * - * @since 2.0 - * - */ + // + // This method is for internal use only. + // Using this method can cause behavioral, security-related, and consistency-related issues in the application. + // + // This is the destructor for this class. + // + // @since 2.0 + // virtual ~IKeyEventListener(void) {} + /** * Called when a key is pressed. * @@ -524,6 +76,7 @@ public: */ virtual void OnKeyPressed(const Tizen::Ui::Control& source, Tizen::Ui::KeyCode keyCode) = 0; + /** * Called when a key is released. * @@ -534,6 +87,7 @@ public: */ virtual void OnKeyReleased(const Tizen::Ui::Control& source, Tizen::Ui::KeyCode keyCode) = 0; + /** * Called when a key is pressed and held down for some time. * @@ -546,35 +100,26 @@ public: virtual void OnKeyLongPressed(const Tizen::Ui::Control& source, Tizen::Ui::KeyCode keyCode) = 0; protected: + // Reserved virtual methods for later extension // - // This method is for internal use only. Using this method can cause behavioral, security-related, - // and consistency-related issues in the application. - // - // This method is reserved and may change its name at any time without - // prior notice. + // The following methods are reserved and may change its name at any time without prior notice. // virtual void IKeyEventListener_Reserved1(void) {} + // Reserved virtual methods for later extension // - // This method is for internal use only. Using this method can cause behavioral, security-related, - // and consistency-related issues in the application. - // - // This method is reserved and may change its name at any time without - // prior notice. + // The following methods are reserved and may change its name at any time without prior notice. // virtual void IKeyEventListener_Reserved2(void) {} + // Reserved virtual methods for later extension // - // This method is for internal use only. Using this method can cause behavioral, security-related, - // and consistency-related issues in the application. - // - // This method is reserved and may change its name at any time without - // prior notice. + // The following methods are reserved and may change its name at any time without prior notice. // virtual void IKeyEventListener_Reserved3(void) {} }; // IKeyEventListener -}} // Tizen::Ui +} } // Tizen::Ui #endif //_FUI_IKEY_EVENT_LISTENER_H_ diff --git a/inc/FUiILanguageEventListener.h b/inc/FUiILanguageEventListener.h old mode 100644 new mode 100755 diff --git a/inc/FUiIPropagatedKeyEventListener.h b/inc/FUiIPropagatedKeyEventListener.h new file mode 100644 index 0000000..13374e4 --- /dev/null +++ b/inc/FUiIPropagatedKeyEventListener.h @@ -0,0 +1,153 @@ +// +// Open Service Platform +// Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. +// +// Licensed under the Flora License, Version 1.0 (the License); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://floralicense.org/license/ +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an AS IS BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +/** + * @file FUiIPropagatedKeyEventListener.h + * @brief This is the header file for the %IPropagatedKeyEventListener interface. + * + * This header file contains the declarations of the %IPropagatedKeyEventListener interface. + */ + +#ifndef _FUI_IPROPAGATED_KEY_EVENT_LISTENER_H_ +#define _FUI_IPROPAGATED_KEY_EVENT_LISTENER_H_ + +namespace Tizen { namespace Ui +{ + +class Control; +class KeyEventInfo; + +/** + * @interface IPropagatedKeyEventListener + * @brief This interface is used as the argument to the propagated key event listener. + * + * @since 2.1 + * + * The %IPropagatedKeyEventListener interface is the listener interface for receiving propagated key events. + * The class that processes a propagated key event implements this interface, and the instance created with that class is registered with a + * UI control, using the control's SetPropagatedKeyEventListener() method. When the key event occurs, a method of that instance which is derived from %IPropagatedKeyEventListener is + * invoked. + * Propagated key event listeners work according to the event previewing and bubbling concept. @n + * When a key event occurs, as a previewing notification it is routed from the top-most Window, which is usually a Frame, + * to a control which is the parent of the control where the event occurs. Then, as a bubbling notification it is routed from + * the control to the top-most Window. + * In both previewing and bubbling paths, event routing can be controlled by the value returned by the listener. Returning @c true, which means + * the event is processed in the listener of the notified control, stops further routing. Returning @c false allows the next event receiver + * to listen the event. + * @n + * For more information on the class features, see Event Listeners. + */ +class _OSP_EXPORT_ IPropagatedKeyEventListener +{ +public: + /** + * This polymorphic destructor should be overridden if required. + * This way, the destructors of the derived classes are called when the destructor of this interface is called. + * + * @since 2.1 + */ + virtual ~IPropagatedKeyEventListener(void){} + + /** + * Called during the bubbling step when a key is pressed. + * + * @since 2.1 + * + * @return Whether the key event is processed by the listener or not. + * @param[in] source The source of the event + * @param[in] keyEventInfo The key event information + */ + virtual bool OnKeyPressed(Control& source, const KeyEventInfo& keyEventInfo) = 0; + + /** + * Called during the bubbling step when a key is released. + * + * @since 2.1 + * + * @return Whether the key event is processed by the listener or not. + * @param[in] source The source of the event + * @param[in] keyEventInfo The key event information + */ + virtual bool OnKeyReleased(Control& source, const KeyEventInfo& keyEventInfo) = 0; + + /** + * Called during the previewing step when a key is pressed. + * + * @since 2.1 + * @return Whether the key event is processed by the listener or not + + * @param[in] source The source of the event + * @param[in] keyEventInfo The key event information + */ + virtual bool OnPreviewKeyPressed(Control& source, const KeyEventInfo& keyEventInfo) = 0; + + /** + * Called during the previewing step when a key is released. + * + * @since 2.1 + * @return Whether the key event is processed by the listener or not + + * @param[in] source The source of the event + * @param[in] keyEventInfo The key event information + */ + virtual bool OnPreviewKeyReleased(Control& source, const KeyEventInfo& keyEventInfo) = 0; + + /** + * Called before OnPreviewKeyPressed() or OnPreviewKeyReleased() listener is called, allowing the application to modify the keyEventInfo instance. + * Before previewing and bubbling paths, this method is called once. + * + * @since 2.1 + * + * @return Whether the KeyEventInfo instance is modified or not. + * @param[in] source The source of the event + * @param[in,out] keyEventInfo The key event information which can be converted by this method + */ + virtual bool TranslateKeyEventInfo(Control& source, KeyEventInfo& keyEventInfo) { return false; } + +protected: + // Reserved virtual methods for later extension + // + // The following methods are reserved and may change its name at any time without prior notice. + // + virtual void IPropagatedKeyEventListener_Reserved1(void) {} + + // Reserved virtual methods for later extension + // + // The following methods are reserved and may change its name at any time without prior notice. + // + virtual void IPropagatedKeyEventListener_Reserved2(void) {} + + // Reserved virtual methods for later extension + // + // The following methods are reserved and may change its name at any time without prior notice. + // + virtual void IPropagatedKeyEventListener_Reserved3(void) {} + + // Reserved virtual methods for later extension + // + // The following methods are reserved and may change its name at any time without prior notice. + // + virtual void IPropagatedKeyEventListener_Reserved4(void) {} + + // Reserved virtual methods for later extension + // + // The following methods are reserved and may change its name at any time without prior notice. + // + virtual void IPropagatedKeyEventListener_Reserved5(void) {} +}; //IPropagatedKeyEventListener + +}} // Tizen::Ui +#endif // _FUI_IPROPAGATED_KEY_EVENT_LISTENER_H_ \ No newline at end of file diff --git a/inc/FUiIPropagatedTouchEventListener.h b/inc/FUiIPropagatedTouchEventListener.h new file mode 100644 index 0000000..21ef75d --- /dev/null +++ b/inc/FUiIPropagatedTouchEventListener.h @@ -0,0 +1,174 @@ +// +// Open Service Platform +// Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. +// +// Licensed under the Flora License, Version 1.0 (the License); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://floralicense.org/license/ +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an AS IS BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +/** + * @file FUiIPropagatedTouchEventListener.h + * @brief This is the header file for the %IPropagatedTouchEventListener interface. + * + * This header file contains the declarations of the %IPropagatedTouchEventListener interface. + */ + +#ifndef _FUI_IPROPAGATED_TOUCH_EVENT_LISTENER_H_ +#define _FUI_IPROPAGATED_TOUCH_EVENT_LISTENER_H_ + +namespace Tizen { namespace Ui { + +class Control; +class TouchEventInfo; + +/** + * @interface IPropagatedTouchEventListener + * @brief This interface is used as the argument to the propagated touch event listener. + * + * @since 2.1 + * + * The %IPropagatedTouchEventListener interface is the listener interface for receiving propagated touch events. + * The class that processes a propagated touch event implements this interface, and the instance created with that class is registered with a + * UI control, using the control's SetPropagatedTouchEventListener() method. When the touch event occurs, a method of that instance which is derived from %IPropagatedTouchEventListener is + * invoked. + * Propagated touch event listeners work according to the event previewing and bubbling concept. @n + * When a touch event occurs, as a previewing notification it is routed from the top-most Window, which is usually a Frame, + * to a control which is the parent of the control where the event occurs. Then, as a bubbling notification it is routed from + * the control to the top-most Window. + * In both previewing and bubbling paths, event routing can be controlled by the value returned by the listener. Returning @c true, which means + * the event is processed in the listener of the notified control, stops further routing. Returning @c false allows the next event receiver + * to listen the event. + * @n + * For more information on the class features, see Event Listeners. + */ +class _OSP_EXPORT_ IPropagatedTouchEventListener +{ +public: + /** + * This polymorphic destructor should be overridden if required. + * This way, the destructors of the derived classes are called when the destructor of this interface is called. + * + * @since 2.1 + */ + virtual ~IPropagatedTouchEventListener(void){} + + /** + * Called during the bubbling step when a touch pressed. + * + * @since 2.1 + * + * @return Whether the touch event is processed by the listener or not + * @param[in] source The source of the event + * @param[in] touchInfo The touch event information + */ + virtual bool OnTouchPressed(Control& source, const TouchEventInfo& touchEventInfo) = 0; + + /** + * Called during the bubbling step when a touch released. + * + * @since 2.1 + * + * @return Whether the touch event is processed by the listener or not + * @param[in] source The source of the event + * @param[in] touchInfo The touch event information + */ + virtual bool OnTouchReleased(Control& source, const TouchEventInfo& touchEventInfo) = 0; + + /** + * Called during the bubbling step when a touch moved. + * + * @since 2.1 + * + * @return Whether the touch event is processed by the listener or not + * @param[in] source The source of the event + * @param[in] touchInfo The touch event information + */ + virtual bool OnTouchMoved(Control& source, const TouchEventInfo& touchEventInfo) = 0; + + /** + * Called during the bubbling step when a touch canceled. + * + * @since 2.1 + * + * @return Whether the touch event is processed by the listener or not + * @param[in] source The source of the event + * @param[in] touchInfo The touch event information + */ + virtual bool OnTouchCanceled(Control& source, const TouchEventInfo& touchEventInfo) = 0; + + /** + * Called during the previewing step when a touch pressed. + * + * @since 2.1 + * @return Whether the touch event is processed by the listener or not + + * @param[in] source The source of the event + * @param[in] touchInfo The touch event information + */ + virtual bool OnPreviewTouchPressed(Control& source, const TouchEventInfo& touchEventInfo) = 0; + + + /** + * Called during the previewing step when a touch released. + * + * @since 2.1 + * @return Whether the touch event is processed by the listener or not + + * @param[in] source The source of the event + * @param[in] touchInfo The touch event information + */ + virtual bool OnPreviewTouchReleased(Control& source, const TouchEventInfo& touchEventInfo) = 0; + + /** + * Called during the previewing step when a touch moved. + * + * @since 2.1 + * @return Whether the touch event is processed by the listener or not + + * @param[in] source The source of the event + * @param[in] touchInfo The touch event information + */ + virtual bool OnPreviewTouchMoved(Control& source, const TouchEventInfo& touchEventInfo) = 0; + +protected: + // Reserved virtual methods for later extension + // + // The following methods are reserved and may change its name at any time without prior notice. + // + virtual void IPropagatedTouchEventListener_Reserved1(void) {} + + // Reserved virtual methods for later extension + // + // The following methods are reserved and may change its name at any time without prior notice. + // + virtual void IPropagatedTouchEventListener_Reserved2(void) {} + + // Reserved virtual methods for later extension + // + // The following methods are reserved and may change its name at any time without prior notice. + // + virtual void IPropagatedTouchEventListener_Reserved3(void) {} + + // Reserved virtual methods for later extension + // + // The following methods are reserved and may change its name at any time without prior notice. + // + virtual void IPropagatedTouchEventListener_Reserved4(void) {} + + // Reserved virtual methods for later extension + // + // The following methods are reserved and may change its name at any time without prior notice. + // + virtual void IPropagatedTouchEventListener_Reserved5(void) {} +}; // IPropagatedTouchEventListener + +}} // Tizen::Ui +#endif // _FUI_IPROPAGATED_TOUCH_EVENT_LISTENER_H_ \ No newline at end of file diff --git a/inc/FUiIScrollPanelEventListener.h b/inc/FUiIScrollPanelEventListener.h index ab0291f..431e790 100644 --- a/inc/FUiIScrollPanelEventListener.h +++ b/inc/FUiIScrollPanelEventListener.h @@ -2,14 +2,14 @@ // Open Service Platform // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. // -// Licensed under the Flora License, Version 1.0 (the License); +// Licensed under the Apache License, Version 2.0 (the License); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an AS IS BASIS, +// distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. @@ -61,7 +61,7 @@ public: /** * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. * - * @since 2.0 + * @since 2.0 */ virtual ~IScrollPanelEventListener(void) {} diff --git a/inc/FUiISlidableGroupedListEventListener.h b/inc/FUiISlidableGroupedListEventListener.h old mode 100644 new mode 100755 index 9c22671..ac673f5 --- a/inc/FUiISlidableGroupedListEventListener.h +++ b/inc/FUiISlidableGroupedListEventListener.h @@ -38,7 +38,7 @@ namespace Tizen {namespace Ui { /** - * @if OSPDEPREC +* @if OSPDEPREC * @interface ISlidableGroupedListEventListener * @brief [Deprecated] This interface implements the listener for events on SlidableGroupedList. * @deprecated This class is deprecated. Instead of using this class, use IGroupedListViewItemEventListener class. @@ -55,18 +55,18 @@ class _OSP_EXPORT_ ISlidableGroupedListEventListener // Operation public: /** - * @if OSPDEPREC + * @if OSPDEPREC * This is the destructor for this class. * * @brief [Deprecated] This interface implements the listener for events on SlidableGroupedList. * @deprecated This class is deprecated. Instead of using this class, use IGroupedListViewItemEventListener class. * @since 2.0 - * @endif + * @endif */ virtual ~ISlidableGroupedListEventListener(void) {} /** - * @if OSPDEPREC + * @if OSPDEPREC * Called when the %SlidableGroupedList is about to be drawn and requests the listener to set the properties of the list such as the total height and the * number of items in each group. * @@ -74,12 +74,12 @@ public: * @deprecated This class is deprecated. Instead of using this class, use IGroupedListViewItemEventListener class. * @since 2.0 * @param[in] source The source of the event - * @endif + * @endif */ virtual void OnListPropertyRequested(const Tizen::Ui::Control& source) = 0; /** - * @if OSPDEPREC + * @if OSPDEPREC * Called when the items need to be loaded to the top. * * @brief [Deprecated] This interface implements the listener for events on SlidableGroupedList. @@ -89,12 +89,12 @@ public: * @param[in] groupIndex The index of the list group * @param[in] itemIndex The index of the list item in the specified group * @param[in] numItems The number of items - * @endif + * @endif */ virtual void OnLoadToTopRequested(const Tizen::Ui::Control& source, int groupIndex, int itemIndex, int numItems) = 0; /** - * @if OSPDEPREC + * @if OSPDEPREC * Called when the items need to be loaded to the bottom. * * @brief [Deprecated] This interface implements the listener for events on SlidableGroupedList. @@ -104,12 +104,12 @@ public: * @param[in] groupIndex The index of the list group * @param[in] itemIndex The index of the list item in the specified group * @param[in] numItems The number of items - * @endif + * @endif */ virtual void OnLoadToBottomRequested(const Tizen::Ui::Control& source, int groupIndex, int itemIndex, int numItems) = 0; /** - * @if OSPDEPREC + * @if OSPDEPREC * Called when an item is about to be unloaded from memory. @n * The user-allocated resources associated with the item to be unloaded need to be freed when OnUnloadItemRequested() is called. * @@ -120,7 +120,7 @@ public: * @param[in] source The source of the event * @param[in] groupIndex The index of the list group * @param[in] itemIndex The index of the list item in the specified group - * @endif + * @endif */ virtual void OnUnloadItemRequested(const Tizen::Ui::Control& source, int groupIndex, int itemIndex) = 0; diff --git a/inc/FUiISlidableListEventListener.h b/inc/FUiISlidableListEventListener.h old mode 100644 new mode 100755 index 3674979..402d007 --- a/inc/FUiISlidableListEventListener.h +++ b/inc/FUiISlidableListEventListener.h @@ -56,18 +56,18 @@ class _OSP_EXPORT_ ISlidableListEventListener // Operation public: /** - * @if OSPDEPREC + * @if OSPDEPREC * This is the destructor for this class. * * @brief [Deprecated] This interface implements the listener for events on %SlidableList. * @deprecated This class is deprecated. Instead of using this class, use IListViewItemEventListener class. * @since 2.0 - * @endif + * @endif */ virtual ~ISlidableListEventListener(void) {} /** - * @if OSPDEPREC + * @if OSPDEPREC * Called when the slidable list is about to be drawn and requests to set the properties of the list such as the total height. * * @brief [Deprecated] This interface implements the listener for events on %SlidableList. @@ -75,12 +75,12 @@ public: * @since 2.0 * * @param[in] source The source of the event - * @endif + * @endif */ virtual void OnListPropertyRequested(const Tizen::Ui::Control& source) = 0; /** - * @if OSPDEPREC + * @if OSPDEPREC * Called when the items need to be loaded to the top. * * @brief [Deprecated] This interface implements the listener for events on %SlidableList. @@ -90,12 +90,12 @@ public: * @param[in] source The source of the event * @param[in] index The index of the item * @param[in] numItems The number of items - * @endif + * @endif */ virtual void OnLoadToTopRequested(const Tizen::Ui::Control& source, int index, int numItems) = 0; /** - * @if OSPDEPREC + * @if OSPDEPREC * Called when the items need to be loaded to the bottom. * * @brief [Deprecated] This interface implements the listener for events on %SlidableList. @@ -105,12 +105,12 @@ public: * @param[in] source The source of the event * @param[in] index The index of the item * @param[in] numItems The number of items - * @endif + * @endif */ virtual void OnLoadToBottomRequested(const Tizen::Ui::Control& source, int index, int numItems) = 0; /** - * @if OSPDEPREC + * @if OSPDEPREC * Called when an item is about to be unloaded from memory. @n * The user-allocated resources associated with the item must be freed before unloading, when OnUnloadItemRequested() is called. * @@ -120,7 +120,7 @@ public: * * @param[in] source The source of the event * @param[in] index The index of the item - * @endif + * @endif */ virtual void OnUnloadItemRequested(const Tizen::Ui::Control& source, int index) = 0; diff --git a/inc/FUiITextBlockEventListener.h b/inc/FUiITextBlockEventListener.h old mode 100644 new mode 100755 diff --git a/inc/FUiITextEventListener.h b/inc/FUiITextEventListener.h old mode 100644 new mode 100755 index 3b2130c..a103480 --- a/inc/FUiITextEventListener.h +++ b/inc/FUiITextEventListener.h @@ -14,6 +14,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // + /** * @file FUiITextEventListener.h * @brief This is the header file for the %ITextEventListener interface. diff --git a/inc/FUiITimeChangeEventListener.h b/inc/FUiITimeChangeEventListener.h index 4051676..a9bc295 100644 --- a/inc/FUiITimeChangeEventListener.h +++ b/inc/FUiITimeChangeEventListener.h @@ -14,6 +14,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // + /** * @file FUiITimeChangeEventListener.h * @brief This is the header file for the %ITimeChangeEventListener interface. diff --git a/inc/FUiITouchCustomGestureEventListener.h b/inc/FUiITouchCustomGestureEventListener.h index 0309340..7699485 100644 --- a/inc/FUiITouchCustomGestureEventListener.h +++ b/inc/FUiITouchCustomGestureEventListener.h @@ -47,45 +47,45 @@ class _OSP_EXPORT_ ITouchCustomGestureEventListener public: /** * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. - * - * @since 2.0 - */ + * + * @since 2.0 + */ virtual ~ITouchCustomGestureEventListener(void) {} /** - * Called when a custom gesture detection is started. - * - * @since 2.0 - * - * @param[in] gestureDetector The custom gesture detector instance - */ + * Called when a custom gesture detection is started. + * + * @since 2.0 + * + * @param[in] gestureDetector The custom gesture detector instance + */ virtual void OnCustomGestureStarted(Tizen::Ui::TouchGestureDetector& gestureDetector) = 0; /** - * Called when a custom gesture is detected and is in progress. - * - * @since 2.0 - * - * @param[in] gestureDetector The custom gesture detector instance - */ + * Called when a custom gesture is detected and is in progress. + * + * @since 2.0 + * + * @param[in] gestureDetector The custom gesture detector instance + */ virtual void OnCustomGestureChanged(Tizen::Ui::TouchGestureDetector& gestureDetector) = 0; /** - * Called when a custom gesture detection is finished. - * - * @since 2.0 - * - * @param[in] gestureDetector The custom gesture detector instance - */ + * Called when a custom gesture detection is finished. + * + * @since 2.0 + * + * @param[in] gestureDetector The custom gesture detector instance + */ virtual void OnCustomGestureFinished(Tizen::Ui::TouchGestureDetector& gestureDetector) = 0; /** - * Called when a custom gesture detection is canceled. - * - * @since 2.0 - * - * @param[in] gestureDetector The custom gesture detector instance - */ + * Called when a custom gesture detection is canceled. + * + * @since 2.0 + * + * @param[in] gestureDetector The custom gesture detector instance + */ virtual void OnCustomGestureCanceled(Tizen::Ui::TouchGestureDetector& gestureDetector) = 0; protected: diff --git a/inc/FUiITouchModeChangedEventListener.h b/inc/FUiITouchModeChangedEventListener.h index 2b0b995..a17ccd6 100644 --- a/inc/FUiITouchModeChangedEventListener.h +++ b/inc/FUiITouchModeChangedEventListener.h @@ -96,6 +96,6 @@ protected: }; // ITouchModeChangedEventListener -}} // Tizen::Ui +} } // Tizen::Ui #endif // _FUI_ITOUCH_MODE_CHANGED_EVENT_LISTENER_H_ diff --git a/inc/FUiITouchPanningGestureEventListener.h b/inc/FUiITouchPanningGestureEventListener.h index bf6c2f0..781f7dd 100644 --- a/inc/FUiITouchPanningGestureEventListener.h +++ b/inc/FUiITouchPanningGestureEventListener.h @@ -16,11 +16,11 @@ // /** - * @file FUiITouchPanningGestureEventListener.h - * @brief This is the header file for the %ITouchPanningGestureEventListener interface. - * - * This header file contains the declarations of the %ITouchPanningGestureEventListener interface. - */ +* @file FUiITouchPanningGestureEventListener.h +* @brief This is the header file for the %ITouchPanningGestureEventListener interface. +* +* This header file contains the declarations of the %ITouchPanningGestureEventListener interface. +*/ #ifndef _FUI_ITOUCH_PANNING_GESTURE_EVENT_LISTENER_H_ #define _FUI_ITOUCH_PANNING_GESTURE_EVENT_LISTENER_H_ @@ -50,44 +50,44 @@ public: * This polymorphic destructor should be overridden if required. * This way, the destructors of the derived classes are called when the destructor of this interface is called. * - * @since 2.0 + * @since 2.0 */ virtual ~ITouchPanningGestureEventListener(void) {} /** - * Called when a panning gesture detection is started. - * - * @since 2.0 - * - * @param[in] gestureDetector The panning gesture detector instance - */ + * Called when a panning gesture detection is started. + * + * @since 2.0 + * + * @param[in] gestureDetector The panning gesture detector instance + */ virtual void OnPanningGestureStarted(Tizen::Ui::TouchPanningGestureDetector& gestureDetector) = 0; /** - * Called when a panning gesture is detected and is in progress. - * - * @since 2.0 - * - * @param[in] gestureDetector The panning gesture detector instance - */ + * Called when a panning gesture is detected and is in progress. + * + * @since 2.0 + * + * @param[in] gestureDetector The panning gesture detector instance + */ virtual void OnPanningGestureChanged(Tizen::Ui::TouchPanningGestureDetector& gestureDetector) = 0; /** - * Called when a panning gesture detection is finished. - * - * @since 2.0 - * - * @param[in] gestureDetector The panning gesture detector instance - */ + * Called when a panning gesture detection is finished. + * + * @since 2.0 + * + * @param[in] gestureDetector The panning gesture detector instance + */ virtual void OnPanningGestureFinished(Tizen::Ui::TouchPanningGestureDetector& gestureDetector) = 0; /** - * Called when a panning gesture detection is canceled. - * - * @since 2.0 - * - * @param[in] gestureDetector The panning gesture detector instance - */ + * Called when a panning gesture detection is canceled. + * + * @since 2.0 + * + * @param[in] gestureDetector The panning gesture detector instance + */ virtual void OnPanningGestureCanceled(Tizen::Ui::TouchPanningGestureDetector& gestureDetector) = 0; protected: diff --git a/inc/FUiITouchPinchGestureEventListener.h b/inc/FUiITouchPinchGestureEventListener.h index aea1cc8..ff31803 100644 --- a/inc/FUiITouchPinchGestureEventListener.h +++ b/inc/FUiITouchPinchGestureEventListener.h @@ -16,11 +16,11 @@ // /** - * @file FUiITouchPinchGestureEventListener.h - * @brief This is the header file for the %ITouchPinchGestureEventListener interface. - * - * This header file contains the declarations of the %ITouchPinchGestureEventListener interface. - */ +* @file FUiITouchPinchGestureEventListener.h +* @brief This is the header file for the %ITouchPinchGestureEventListener interface. +* +* This header file contains the declarations of the %ITouchPinchGestureEventListener interface. +*/ #ifndef _FUI_ITOUCH_PINCH_GESTURE_EVENT_LISTENER_H_ #define _FUI_ITOUCH_PINCH_GESTURE_EVENT_LISTENER_H_ @@ -50,45 +50,45 @@ class _OSP_EXPORT_ ITouchPinchGestureEventListener public: /** * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. - * - * @since 2.0 - */ + * + * @since 2.0 + */ virtual ~ITouchPinchGestureEventListener(void) {} /** - * Called when a pinch gesture detection is started. - * - * @since 2.0 - * - * @param[in] gestureDetector The pinch gesture detector instance - */ + * Called when a pinch gesture detection is started. + * + * @since 2.0 + * + * @param[in] gestureDetector The pinch gesture detector instance + */ virtual void OnPinchGestureStarted(Tizen::Ui::TouchPinchGestureDetector& gestureDetector) = 0; /** - * Called when a pinch gesture is detected and is in progress. - * - * @since 2.0 - * - * @param[in] gestureDetector The pinch gesture detector instance - */ + * Called when a pinch gesture is detected and is in progress. + * + * @since 2.0 + * + * @param[in] gestureDetector The pinch gesture detector instance + */ virtual void OnPinchGestureChanged(Tizen::Ui::TouchPinchGestureDetector& gestureDetector) = 0; /** - * Called when a pinch gesture detection is finished. - * - * @since 2.0 - * - * @param[in] gestureDetector The pinch gesture detector instance - */ + * Called when a pinch gesture detection is finished. + * + * @since 2.0 + * + * @param[in] gestureDetector The pinch gesture detector instance + */ virtual void OnPinchGestureFinished(Tizen::Ui::TouchPinchGestureDetector& gestureDetector) = 0; /** - * Called when a pinch gesture detection is canceled. - * - * @since 2.0 - * - * @param[in] gestureDetector The pinch gesture detector instance - */ + * Called when a pinch gesture detection is canceled. + * + * @since 2.0 + * + * @param[in] gestureDetector The pinch gesture detector instance + */ virtual void OnPinchGestureCanceled(Tizen::Ui::TouchPinchGestureDetector& gestureDetector) = 0; protected: diff --git a/inc/FUiITouchRotationGestureEventListener.h b/inc/FUiITouchRotationGestureEventListener.h index 6a53c7c..16dfb1b 100644 --- a/inc/FUiITouchRotationGestureEventListener.h +++ b/inc/FUiITouchRotationGestureEventListener.h @@ -16,11 +16,11 @@ // /** - * @file FUiITouchRotationGestureEventListener.h - * @brief This is the header file for the %ITouchRotationGestureEventListener interface. - * - * This header file contains the declarations of the %ITouchRotationGestureEventListener interface. - */ +* @file FUiITouchRotationGestureEventListener.h +* @brief This is the header file for the %ITouchRotationGestureEventListener interface. +* +* This header file contains the declarations of the %ITouchRotationGestureEventListener interface. +*/ #ifndef _FUI_ITOUCH_ROTATION_GESTURE_EVENT_LISTENER_H_ #define _FUI_ITOUCH_ROTATION_GESTURE_EVENT_LISTENER_H_ @@ -50,44 +50,44 @@ public: * This polymorphic destructor should be overridden if required. * This way, the destructors of the derived classes are called when the destructor of this interface is called. * - * @since 2.0 + * @since 2.0 */ virtual ~ITouchRotationGestureEventListener(void) {} /** - * Called when a rotation gesture detection is started. - * - * @since 2.0 - * - * @param[in] gestureDetector The rotation gesture detector instance - */ + * Called when a rotation gesture detection is started. + * + * @since 2.0 + * + * @param[in] gestureDetector The rotation gesture detector instance + */ virtual void OnRotationGestureStarted(Tizen::Ui::TouchRotationGestureDetector& gestureDetector) = 0; /** - * Called when a rotation gesture is detected and is in progress. - * - * @since 2.0 - * - * @param[in] gestureDetector The rotation gesture detector instance - */ + * Called when a rotation gesture is detected and is in progress. + * + * @since 2.0 + * + * @param[in] gestureDetector The rotation gesture detector instance + */ virtual void OnRotationGestureChanged(Tizen::Ui::TouchRotationGestureDetector& gestureDetector) = 0; /** - * Called when a rotation gesture detection is finished. - * - * @since 2.0 - * - * @param[in] gestureDetector The rotation gesture detector instance - */ + * Called when a rotation gesture detection is finished. + * + * @since 2.0 + * + * @param[in] gestureDetector The rotation gesture detector instance + */ virtual void OnRotationGestureFinished(Tizen::Ui::TouchRotationGestureDetector& gestureDetector) = 0; /** - * Called when a rotation gesture detection is canceled. - * - * @since 2.0 - * - * @param[in] gestureDetector The rotation gesture detector instance - */ + * Called when a rotation gesture detection is canceled. + * + * @since 2.0 + * + * @param[in] gestureDetector The rotation gesture detector instance + */ virtual void OnRotationGestureCanceled(Tizen::Ui::TouchRotationGestureDetector& gestureDetector) = 0; protected: diff --git a/inc/FUiITouchTapGestureEventListener.h b/inc/FUiITouchTapGestureEventListener.h index 154304b..2d95c9d 100644 --- a/inc/FUiITouchTapGestureEventListener.h +++ b/inc/FUiITouchTapGestureEventListener.h @@ -16,11 +16,11 @@ // /** - * @file FUiITouchTapGestureEventListener.h - * @brief This is the header file for the %ITouchTapGestureEventListener interface. - * - * This header file contains the declarations of the %ITouchTapGestureEventListener interface. - */ +* @file FUiITouchTapGestureEventListener.h +* @brief This is the header file for the %ITouchTapGestureEventListener interface. +* +* This header file contains the declarations of the %ITouchTapGestureEventListener interface. +*/ #ifndef _FUI_ITOUCH_TAP_GESTURE_EVENT_LISTENER_H_ #define _FUI_ITOUCH_TAP_GESTURE_EVENT_LISTENER_H_ @@ -44,32 +44,32 @@ namespace Tizen { namespace Ui * */ class _OSP_EXPORT_ ITouchTapGestureEventListener - : virtual public ITouchGestureEventListener + : virtual public ITouchGestureEventListener { public: /** * This polymorphic destructor should be overridden if required. This way, the destructors of the derived classes are called when the destructor of this interface is called. - * - * @since 2.0 - */ + * + * @since 2.0 + */ virtual ~ITouchTapGestureEventListener(void) {} /** - * Called when a tap gesture is detected. - * - * @since 2.0 - * - * @param[in] gestureDetector The tap gesture detector instance - */ + * Called when a tap gesture is detected. + * + * @since 2.0 + * + * @param[in] gestureDetector The tap gesture detector instance + */ virtual void OnTapGestureDetected(Tizen::Ui::TouchTapGestureDetector& gestureDetector) = 0; /** - * Called when a tap gesture detection is canceled. - * - * @since 2.0 - * - * @param[in] gestureDetector The tap gesture detector instance - */ + * Called when a tap gesture detection is canceled. + * + * @since 2.0 + * + * @param[in] gestureDetector The tap gesture detector instance + */ virtual void OnTapGestureCanceled(Tizen::Ui::TouchTapGestureDetector& gestureDetector) = 0; protected: diff --git a/inc/FUiIUiLinkEventListener.h b/inc/FUiIUiLinkEventListener.h old mode 100644 new mode 100755 diff --git a/inc/FUiIWindowEventListener.h b/inc/FUiIWindowEventListener.h old mode 100644 new mode 100755 index db8a608..392558c --- a/inc/FUiIWindowEventListener.h +++ b/inc/FUiIWindowEventListener.h @@ -108,6 +108,6 @@ protected: virtual void IWindowEventListener_Reserved3(void) {} }; -}}; // Tizen::Ui +} }; // Tizen::Ui #endif // _FUI_IWINDOW_EVENT_LISTENER_H_ diff --git a/inc/FUiInputConnection.h b/inc/FUiInputConnection.h old mode 100644 new mode 100755 index facaadb..8a78f9e --- a/inc/FUiInputConnection.h +++ b/inc/FUiInputConnection.h @@ -25,8 +25,10 @@ #ifndef _FUI_INPUT_CONNECTION_H_ #define _FUI_INPUT_CONNECTION_H_ +#include #include #include +#include #include #include @@ -212,6 +214,20 @@ public: result Construct(const Control* pControl, IInputConnectionEventListener& listener, IInputConnectionProvider& provider); /** + * Initializes this instance of the %InputConnection with the specified parameter. + * + * @since 2.1 + * @return An error code + * @param[in] pControl The source object for connecting the Input Method. + * @param[in] listener An instance of the %IInputConnectionEventListenerF for processing the event + * @param[in] provider The %InputConnection provider + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_SYSTEM The method cannot proceed due to a severe system error. + */ + result Construct(const Control* pControl, IInputConnectionEventListenerF& listener, IInputConnectionProvider& provider); + + /** * Binds the %InputConnection to the current active Input Method * * @since 2.0 @@ -302,14 +318,14 @@ public: void SetInputPanelActionEnabled(bool enable); /** - * Sets the language of the current active Input Panel. - * - * @since 2.0 - * @param[in] languageCode The language to set - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_MEMORY The memory is insufficient. - * @remarks This method may not work, depending on the current active Input Method. - */ + * Sets the language of the current active Input Panel. + * + * @since 2.0 + * @param[in] languageCode The language to set + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_MEMORY The memory is insufficient. + * @remarks This method may not work, depending on the current active Input Method. + */ result SetInputPanelLanguage(Tizen::Locales::LanguageCode languageCode); /** @@ -336,6 +352,18 @@ public: */ result SetCursorBounds(const Tizen::Graphics::Rectangle& rect); + /* + * Sets the bounds of the cursor + * + * @since 2.1 + * @param[in] rect the rectangle to be set + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @exception E_INVALID_STATE This exception is thrown when BindInputMethod is not called before calling this method. + */ + result SetCursorBounds(const Tizen::Graphics::FloatRectangle& rect); + /** * Gets the bounds of the current active Input Panel. * @@ -348,6 +376,18 @@ public: */ Tizen::Graphics::Rectangle GetInputPanelBounds(void) const; + /* + * Gets the bounds of the current active Input Panel. + * + * @since 2.1 + * @return An instance of the rectangle that represents the position of the top-left corner, + * the width, and the height of the Input Panel. + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_STATE This exception is thrown when BindInputMethod is not called before calling this method. + * @remarks The specific error code can be accessed using the GetLastResult() method. + */ + Tizen::Graphics::FloatRectangle GetInputPanelBoundsF(void) const; + /** * Enables or disables text prediction. * @@ -358,6 +398,17 @@ public: */ void SetTextPredictionEnabled(bool enable); + /** + * Sends opaque command to the input method. + * + * @since 2.1 + * + * @param[in] command The opaque command + * @remarks This method can be used to provide domain-specific features that are only known between certain input methods and their clients. + * This method may not work, depending on the active Input Method. + */ + void SendOpaqueCommand (const Tizen::Base::String& command); + private: // // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects. diff --git a/inc/FUiInputConnectionTypes.h b/inc/FUiInputConnectionTypes.h old mode 100644 new mode 100755 diff --git a/inc/FUiKeyEventInfo.h b/inc/FUiKeyEventInfo.h new file mode 100644 index 0000000..cb71139 --- /dev/null +++ b/inc/FUiKeyEventInfo.h @@ -0,0 +1,146 @@ +// +// Open Service Platform +// Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. +// +// Licensed under the Flora License, Version 1.0 (the License); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://floralicense.org/license/ +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an AS IS BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +/** + * @file FUiKeyEventInfo.h + * @brief This is the header file for the %KeyEventInfo class. + * + * This header file contains the declarations of the %KeyEventInfo class. + * + */ + +#ifndef _FUI_KEY_EVENT_INFO_H_ +#define _FUI_KEY_EVENT_INFO_H_ + +#include +#include + +namespace Tizen { namespace Ui +{ + +class Control; +class _KeyEventInfoImpl; + +/** + * @class KeyEventInfo + * @brief This class stores the information of each key events. + * + * @since 2.1 + * + * The %KeyEventInfo class provides the key event information: key code and key modifiers. + * @see IPropagatedKeyEventListener::OnKeyPressed() + * @see IPropagatedKeyEventListener::OnKeyReleased() + * @see IPropagatedKeyEventListener::TranslateKeyEventInfo() + * + */ +class _OSP_EXPORT_ KeyEventInfo + : public Tizen::Base::Object +{ +public: + /** + * Initializes this instance of %KeyEventInfo. + * + * @since 2.1 + * + * @param[in] keyCode The key code which represents the key of interest + * @param[in] keyModifier The key modifier which modifies the normal action of the key + * @see Tizen::Ui::KeyCode + * @see Tizen::Ui::KeyModifier + */ + KeyEventInfo(KeyCode keyCode, int keyModifiers); + + /** + * This destructor overrides Tizen::Base::Object::~Object(). + * + * @since 2.1 + */ + virtual ~KeyEventInfo(void); + + /** + * Sets the key code + * + * @since 2.1 + * + * @param[in] keyCode The key code + * @see GetKeyCode() + * + */ + void SetKeyCode(KeyCode keyCode); + + /** + * Gets the key code. + * + * @since 2.1 + * + * @return The key code + * @see SetKeyCode() + */ + KeyCode GetKeyCode(void) const; + + /** + * Sets bitwise ored key modifiers of the keyboard such as Control, Shift, Numeric lock, and so on. + * + * @since 2.1 + * + * @param[in] keyModifiers The key modifiers which can be combined using the bitwise OR operator + * @see GetKeyModifier() + * @see Tizen::Ui::KeyModifier + * + */ + void SetKeyModifier(int keyModifiers); + + /** + * Gets the key modifiers of the keyboard such as Control, Shift, Numeric lock, and so on. + * + * @since 2.1 + * + * @return The bitwise oring key modifiers + * @see SetKeyModifier() + * @see Tizen::Ui::KeyModifier + */ + int GetKeyModifier(void) const; + +private: + /* + * This is the default constructor for this class. + * + * @since 2.1 + */ + KeyEventInfo(void); + + /* + * The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects. + * + * @since 2.1 + */ + KeyEventInfo(const KeyEventInfo& rhs); + + /* + * The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects. + * + * @since 2.1 + */ + KeyEventInfo& operator =(const KeyEventInfo& rhs); + +private: + _KeyEventInfoImpl* __pKeyEventInfoImpl; + +}; // KeyEventInfo + +} } // Tizen::Ui + +#endif // _FUI_KEY_EVENT_INFO_H_ diff --git a/inc/FUiKeyEventManager.h b/inc/FUiKeyEventManager.h index a08bed1..b5d3429 100644 --- a/inc/FUiKeyEventManager.h +++ b/inc/FUiKeyEventManager.h @@ -33,7 +33,7 @@ namespace Tizen { namespace Base { namespace Runtime { class _IEvent; class IEventArg; -}}} +} } } namespace Tizen {namespace Ui { @@ -56,7 +56,7 @@ class _OSP_EXPORT_ KeyEventManager { public: /** - * This destructor overrides Osp::Base::Object::~Object(). + * This destructor overrides Tizen::Base::Object::~Object(). * * @since 2.0 */ @@ -85,7 +85,7 @@ public: */ void AddKeyEventListener(IKeyEventListener& listener); - /** + /** * Removes the %IKeyEventListener instance. @n * The removed listener is not notified even when the key events are fired. * @@ -130,6 +130,6 @@ private: }; // KeyEventManager -}} // Tizen::Ui +} } // Tizen::Ui #endif // _FUI_KEY_EVENT_MANAGER_H_ diff --git a/inc/FUiKeyTypes.h b/inc/FUiKeyTypes.h new file mode 100644 index 0000000..cf5ab3b --- /dev/null +++ b/inc/FUiKeyTypes.h @@ -0,0 +1,237 @@ +// +// Open Service Platform +// Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. +// +// Licensed under the Flora License, Version 1.0 (the License); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://floralicense.org/license/ +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an AS IS BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +/** +* @file FUiKeyTypes.h +* @brief This is the header file for the Key enumeration. +* +* This header file contains the declarations of the Key enumeration. +*/ +#ifndef _FUI_KEY_TYPES_H_ +#define _FUI_KEY_TYPES_H_ + +namespace Tizen { namespace Ui +{ + +/** + * @enum KeyCode + * + * Defines the list of keys supported by the system. @n + * Note that certain keys may not be available on all devices. @n + * Please use the Tizen::Ui::KeyboardMap class to query the availability of a specific key on the target device. + * + * @since 2.0 + */ +enum KeyCode +{ + KEY_INVALID = 0x0000, /**< The invalid key */ + KEY_SIDE_UP, /**< The up side key */ + KEY_SIDE_DOWN, /**< The down side key */ + KEY_OK, /**< The ok key */ + KEY_CLEAR, /**< The clear key */ + KEY_CAMERA, /**< The camera key */ + KEY_SWITCH, /**< The task switcher key */ + KEY_0, /**< The 0 key */ + KEY_1, /**< The 1 key */ + KEY_2, /**< The 2 key */ + KEY_3, /**< The 3 key */ + KEY_4, /**< The 4 key */ + KEY_5, /**< The 5 key */ + KEY_6, /**< The 6 key */ + KEY_7, /**< The 7 key */ + KEY_8, /**< The 8 key */ + KEY_9, /**< The 9 key */ + KEY_ASTERISK, /**< The asterisk key */ + KEY_SHARP, /**< The sharp key */ + KEY_LEFT, /**< The left directional key */ + KEY_UP, /**< The up directional key */ + KEY_DOWN, /**< The down directional key */ + KEY_RIGHT, /**< The right directional key */ + KEY_MAX, /**< The Placeholder */ + KEY_A, /**< The A key */ + KEY_B, /**< The B key */ + KEY_C, /**< The C key */ + KEY_D, /**< The D key */ + KEY_E, /**< The E key */ + KEY_F, /**< The F key */ + KEY_G, /**< The G key */ + KEY_H, /**< The H key */ + KEY_I, /**< The I key */ + KEY_J, /**< The J key */ + KEY_K, /**< The K key */ + KEY_L, /**< The L key */ + KEY_M, /**< The M key */ + KEY_N, /**< The N key */ + KEY_O, /**< The O key */ + KEY_P, /**< The P key */ + KEY_Q, /**< The Q key */ + KEY_R, /**< The R key */ + KEY_S, /**< The S key */ + KEY_T, /**< The T key */ + KEY_U, /**< The U key */ + KEY_V, /**< The V key */ + KEY_W, /**< The W key */ + KEY_X, /**< The X key */ + KEY_Y, /**< The Y key */ + KEY_Z, /**< The Z key */ + KEY_BACKSPACE, /**< The backspace key */ + KEY_COMMA, /**< The comma key */ + KEY_ENTER, /**< The enter key */ + KEY_CAPSLOCK, /**< The Caps Lock key */ + KEY_QUESTION, /**< The Question key */ + KEY_ALT, /**< The Alt key */ + KEY_SYM, /**< The Language Symbolkey */ + KEY_SETTING, /**< The Language Setting key */ + KEY_SPACE, /**< The Space key */ + KEY_DOT, /**< The Dot key */ + KEY_FN, /**< The Function key */ + KEY_CAMERA_HALF_SHUTTER, /**< The camera half shutter key */ + KEY_CHAR_SYM_1, /**< The Character symbol 1 key */ + KEY_CHAR_SYM_2, /**< The Character symbol 2 key */ + KEY_CHAR_SYM_3, /**< The Character symbol 3 key */ + KEY_CHAR_SYM_4, /**< The Character symbol 4 key */ + KEY_CHAR_SYM_5, /**< The Character symbol 5 key */ + KEY_CHAR_SYM_6, /**< The Character symbol 6 key */ + KEY_CHAR_SYM_7, /**< The Character symbol 7 key */ + KEY_CHAR_SYM_8, /**< The Character symbol 8 key */ + KEY_CHAR_SYM_9, /**< The Character symbol 9 key */ + KEY_CHAR_SYM_A, /**< The Character symbol A key */ + KEY_CHAR_SYM_B, /**< The Character symbol B key */ + KEY_CHAR_SYM_C, /**< The Character symbol C key */ + KEY_CHAR_SYM_D, /**< The Character symbol D key */ + KEY_CHAR_SYM_E, /**< The Character symbol E key */ + KEY_CHAR_SYM_F, /**< The Character symbol F key */ + KEY_FN_1, /**< The function 1 key */ + KEY_FN_2, /**< The function 2 key */ + KEY_FN_3, /**< The function 3 key */ + KEY_FN_4, /**< The function 4 key */ + KEY_FN_5, /**< The function 5 key */ + KEY_POWER_HOLD, /**< The power key */ + KEY_DELETE, /**< The delete key */ + + KEY_APOSTROPHE, /**< The apostrophe key */ + KEY_BACKSLASH, /**< The backslash key */ + KEY_CONTEXT_MENU, /**< The menu key */ + KEY_EQUAL, /**< The equal key */ + KEY_ESC, /**< The esc key */ + KEY_FN_6, /**< The function 6 key */ + KEY_FN_7, /**< The function 7 key */ + KEY_FN_8, /**< The function 8 key */ + KEY_FN_9, /**< The function 9 key */ + KEY_FN_10, /**< The function 10 key */ + KEY_FN_11, /**< The function 11 key */ + KEY_FN_12, /**< The function 12 key */ + KEY_GRAVE, /**< The grave key */ + KEY_INSERT, /**< The insert key */ + KEY_LANGUAGE_SWITCH, /**< The language switch key */ + KEY_LEFT_ALT, /**< The left alt key */ + KEY_LEFT_BRACKET, /**< The left bracket key */ + KEY_LEFT_CTRL, /**< The left control key */ + KEY_LEFT_SHIFT, /**< The left shift key */ + KEY_LEFT_WIN, /**< The left window key */ + KEY_MINUS, /**< The minus key */ + KEY_MOVE_END, /**< The end key */ + KEY_MOVE_HOME, /**< The home key */ + KEY_NUM_LOCK, /**< The number lock key */ + KEY_NUMPAD_0, /**< The Numpad 0 key */ + KEY_NUMPAD_1, /**< The Numpad 1 key */ + KEY_NUMPAD_2, /**< The Numpad 2 key */ + KEY_NUMPAD_3, /**< The Numpad 3 key */ + KEY_NUMPAD_4, /**< The Numpad 4 key */ + KEY_NUMPAD_5, /**< The Numpad 5 key */ + KEY_NUMPAD_6, /**< The Numpad 6 key */ + KEY_NUMPAD_7, /**< The Numpad 7 key */ + KEY_NUMPAD_8, /**< The Numpad 8 key */ + KEY_NUMPAD_9, /**< The Numpad 9 key */ + KEY_NUMPAD_ADD, /**< The Numpad add key */ + KEY_NUMPAD_DIVIDE, /**< The Numpad divide key */ + KEY_NUMPAD_DOT, /**< The Numpad dot key */ + KEY_NUMPAD_ENTER, /**< The Numpad enter key */ + KEY_NUMPAD_MULTIPLY, /**< The Numpad multiply key */ + KEY_NUMPAD_SUBTRACT, /**< The Numpad subtract key */ + KEY_PAGE_DOWN, /**< The page down key */ + KEY_PAGE_UP, /**< The page up key */ + KEY_PAUSE_BREAK, /**< The pause key */ + KEY_PRINT, /**< The print key */ + KEY_RIGHT_ALT, /**< The right alt key */ + KEY_RIGHT_BRACKET, /**< The right bracket key */ + KEY_RIGHT_CTRL, /**< The right control key */ + KEY_RIGHT_SHIFT, /**< The right shift key */ + KEY_RIGHT_WIN, /**< The right window key */ + KEY_SCROLL_LOCK, /**< The scroll lock key */ + KEY_SEMICOLON, /**< The semicolon key */ + KEY_SLASH, /**< The slash key */ + KEY_TAB, /**< The tab key */ + KEY_OEM_1, /**< The OEM 1 key */ + KEY_OEM_2, /**< The OEM 2 key */ + KEY_OEM_3, /**< The OEM 3 key */ + KEY_OEM_4, /**< The OEM 4 key */ + KEY_OEM_5, /**< The OEM 5 key */ + KEY_OEM_6, /**< The OEM 6 key */ + KEY_OEM_7, /**< The OEM 7 key */ + KEY_OEM_8, /**< The OEM 8 key */ + KEY_OEM_9, /**< The OEM 9 key */ + KEY_OEM_10, /**< The OEM 10 key */ + KEY_OEM_11, /**< The OEM 11 key */ + KEY_OEM_12, /**< The OEM 12 key */ + KEY_OEM_13, /**< The OEM 13 key */ + KEY_OEM_14, /**< The OEM 14 key */ + KEY_OEM_15, /**< The OEM 15 key */ + KEY_OEM_16, /**< The OEM 16 key */ + KEY_OEM_17, /**< The OEM 17 key */ + KEY_OEM_18, /**< The OEM 18 key */ + KEY_OEM_19, /**< The OEM 19 key */ + KEY_OEM_20, /**< The OEM 20 key */ + KEY_HARDWARE_MAX /**< placeholder key */ +}; + +/** + * @enum KeyState + * + * Defines the state of the key. + * + * @since 2.0 + */ +enum KeyState +{ + KEY_PRESSED = 0x0001, /**< The key is pressed */ + KEY_RELEASED = 0x0002, /**< The key is released */ + KEY_LONGPRESSED = 0x0003 /**< The key pressed and held down over a predefined duration */ +}; + +/** + * @enum KeyModifier + * + * Defines constants used to identify key modifiers. + * + * @since 2.1 + */ +enum KeyModifier +{ + KEY_MODIFIER_NONE = 0, /**< No active modifiers */ + KEY_MODIFIER_SHIFT = 1 << 0, /**< "Shift" is pressed */ + KEY_MODIFIER_CTRL = 1 << 1, /**< "Control" is pressed */ + KEY_MODIFIER_ALT = 1 << 2, /**< "Alt" is pressed */ + KEY_MODIFIER_WIN = 1 << 3, /**< "Win" (between "Ctrl" and "Alt") is pressed */ + KEY_MODIFIER_SCROLL_LOCK = 1 << 4, /**< "Scroll" is locked */ + KEY_MODIFIER_NUM_LOCK = 1 << 5, /**< "Number" is locked */ + KEY_MODIFIER_CAPS_LOCK = 1 << 6, /**< "Caps" is locked */ +}; + +}} // Tizen::Ui + +#endif // _FUI_KEY_TYPES_H_ + diff --git a/inc/FUiKeyboardMap.h b/inc/FUiKeyboardMap.h old mode 100644 new mode 100755 index 4742cf4..cb50a9d --- a/inc/FUiKeyboardMap.h +++ b/inc/FUiKeyboardMap.h @@ -50,35 +50,35 @@ enum KeyboardKeyLabelType /** * @if OSPDEPREC * The first label to be displayed - * @endif + * @endif */ KEYBOARD_KEY_LABEL_1 = 0x0000, /** * @if OSPDEPREC * The second label to be displayed after KEY_CAPSLOCK or KEY_FN is pressed - * @endif + * @endif */ KEYBOARD_KEY_LABEL_2, /** * @if OSPDEPREC * The third label to be displayed when the key is toggled twice (without pressing KEY_CAPSLOCK or KEY_FN) - * @endif + * @endif */ KEYBOARD_KEY_LABEL_3, /** * @if OSPDEPREC * The fourth label to be displayed when the key is toggled the third time (without pressing KEY_CAPSLOCK or KEY_FN) - * @endif + * @endif */ KEYBOARD_KEY_LABEL_4, /* * @if OSPDEPREC * The max value - * @endif + * @endif */ KEYBOARD_KEY_LABEL_MAX = 255 }; @@ -122,18 +122,18 @@ class _OSP_EXPORT_ KeyboardMap { public: /** - * @if OSPDEPREC + * @if OSPDEPREC * This destructor overrides Tizen::Base::Object::~Object(). * * @brief [Deprecated] * @deprecated This class is deprecated because it is not supported by platform. * @since 2.0 - * @endif + * @endif */ virtual ~KeyboardMap(void); /** - * @if OSPDEPREC + * @if OSPDEPREC * Gets the pointer to the %KeyboardMap instance. * * @brief [Deprecated] @@ -141,13 +141,13 @@ public: * @since 2.0 * * @return The current %KeyboardMap instance - * @endif + * @endif */ static KeyboardMap* GetInstance(void); public: /** - * @if OSPDEPREC + * @if OSPDEPREC * Checks whether the specified key is a printing key (the key has one or more labels printed on the corresponding key). * * @brief [Deprecated] @@ -157,12 +157,12 @@ public: * @return @c true if the specified key is a printing key, @n * else @c false * @param[in] keyCode The key - * @endif + * @endif */ bool IsPrintingKey(KeyCode keyCode) const; /** - * @if OSPDEPREC + * @if OSPDEPREC * Checks whether the specified key is available on the current keyboard. * * @brief [Deprecated] @@ -172,12 +172,12 @@ public: * @return @c true if the specified key is available on the current keyboard, @n * else @c false * @param[in] keyCode The key - * @endif + * @endif */ bool IsKeyAvailable(KeyCode keyCode) const; /** - * @if OSPDEPREC + * @if OSPDEPREC * Gets the name of the keyboard type. * * @brief [Deprecated] @@ -218,12 +218,12 @@ public: * QWERTY_11x4_KOREA Korean, English * QWERTY_11x4_NORTH-AMERICA English * - * @endif - */ + * @endif + */ Tizen::Base::String GetKeyboardType(void) const; /** - * @if OSPDEPREC + * @if OSPDEPREC * Gets the label of the specified key. * * @brief [Deprecated] @@ -234,7 +234,7 @@ public: * else an empty string if the specified key is not a printing key or the secondary/tertiary character label is not defined * @param[in] keyCode The key * @param[in] type The keyboard key label type - * @endif + * @endif */ Tizen::Base::String GetDisplayableLabel(KeyCode keyCode, KeyboardKeyLabelType type = KEYBOARD_KEY_LABEL_1) const; diff --git a/inc/FUiLayout.h b/inc/FUiLayout.h old mode 100644 new mode 100755 diff --git a/inc/FUiRelativeLayout.h b/inc/FUiRelativeLayout.h index 48c4e70..62b0d46 100755 --- a/inc/FUiRelativeLayout.h +++ b/inc/FUiRelativeLayout.h @@ -246,6 +246,23 @@ public: */ result SetRelation(Control& childControl, const Control& targetControl, RectangleEdgeRelation edgeRelation); + /* + * Sets the relation of the specified child control for the edge with other control. + * + * @since 2.0 + * + * @return An error code + * @param[in] childControl The control for which the relation is set + * @param[in] pTargetControl The target control @n + * It must be a parent or sibling. + * @param[in] edgeRelation The edge of the specified control to be aligned with the edge of the target control + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified input parameter is invalid. @n + * Either the specified @c childControl or the specified @c targetControl is not a child of the container that owns the layout. + * @exception E_SYSTEM A system error has occurred. + */ + result SetRelation(Control& childControl, Control *pTargetControl, RectangleEdgeRelation edgeRelation); + /** * Resets the relation of the specified control for the vertical edge. * @@ -311,6 +328,25 @@ public: */ result SetMargin(Control& childControl, int left, int right, int top, int bottom); + /* + * Sets the margins of the specified control. + * + * @since 2.1 + * + * @return An error code + * @param[in] childControl The control for which the margins are set + * @param[in] left The left margin + * @param[in] right The right margin + * @param[in] top The top margin + * @param[in] bottom The bottom margin + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified input parameter is invalid. @n + * The specified @c childControl parameter is not a child of the container that owns the layout. + * @exception E_SYSTEM A system error has occurred. + * @remarks By default, the margins are set to @c 0. + */ + result SetMargin(Control& childControl, float left, float right, float top, float bottom); + /** * Sets the width of the specified control to the fixed size. * @@ -326,6 +362,21 @@ public: */ result SetWidth(Control& childControl, int width); + /* + * Sets the width of the specified control to the fixed size. + * + * @since 2.1 + * + * @return An error code + * @param[in] childControl The control for which the width is set + * @param[in] width The value of the width + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified input parameter is invalid. @n + * The specified @c childControl parameter is not a child of the container that owns the layout. + * @exception E_SYSTEM A system error has occurred. + */ + result SetWidth(Control& childControl, float width); + /** * Sets the width of the specified control as per the fitting policy. * @@ -356,6 +407,21 @@ public: */ result SetHeight(Control& childControl, int height); + /* + * Sets the height of the specified control to the fixed size. + * + * @since 2.1 + * + * @return An error code + * @param[in] childControl The control for which the height is set + * @param[in] height The value of the height + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified input parameter is invalid. @n + * The specified @c childControl parameter is not a child of the container that owns the layout. + * @exception E_SYSTEM A system error has occurred. + */ + result SetHeight(Control& childControl, float height); + /** * Sets the height of the specified control as per the fitting policy. * diff --git a/inc/FUiSystemUtil.h b/inc/FUiSystemUtil.h old mode 100755 new mode 100644 index edec3aa..1895ccd --- a/inc/FUiSystemUtil.h +++ b/inc/FUiSystemUtil.h @@ -16,12 +16,12 @@ // /** - * @file FUiSystemUtil.h - * @brief This is the header file for the SystemUtil - * - * This header file contains the declarations of the SystemUtil class. - * - */ +* @file FUiSystemUtil.h +* @brief This is the header file for the SystemUtil +* +* This header file contains the declarations of the SystemUtil class. +* +*/ #ifndef _FUI_SYSTEM_UTIL_H_ #define _FUI_SYSTEM_UTIL_H_ @@ -32,133 +32,146 @@ namespace Tizen { namespace Graphics { class Bitmap; class Point; +class FloatPoint; }} namespace Tizen { namespace Ui { /** - * @enum KeyEventType - * - * Defines key event types. - * - * @since 2.0 - */ +* @enum KeyEventType +* +* Defines key event types. +* +* @since 2.0 +*/ enum KeyEventType { - KEY_EVENT_TYPE_PRESSED, /**< Key pressed event type */ - KEY_EVENT_TYPE_RELEASED, /**< Key released event type */ + KEY_EVENT_TYPE_PRESSED, /**< Key pressed event type */ + KEY_EVENT_TYPE_RELEASED, /**< Key released event type */ }; /** - * @enum TouchEventType - * - * Defines touch event types. - * - * @since 2.0 - */ +* @enum TouchEventType +* +* Defines touch event types. +* +* @since 2.0 +*/ enum TouchEventType { - TOUCH_EVENT_TYPE_PRESSED, /**< Touch pressed event type */ - TOUCH_EVENT_TYPE_RELEASED, /**< Touch released event type */ - TOUCH_EVENT_TYPE_MOVED /**< Touch moved event type */ + TOUCH_EVENT_TYPE_PRESSED, /**< Touch pressed event type */ + TOUCH_EVENT_TYPE_RELEASED, /**< Touch released event type */ + TOUCH_EVENT_TYPE_MOVED /**< Touch moved event type */ }; /** - * @if VISPARTNER-MANUFACTURER - * @class SystemUtil - * @brief This is a class for system utililty such as touch, key, and capturing screen. It provides - * functionalities to simulate user inputs. - * @since 2.0 - * @final This class is not intended for extension. - * @visibility partner-manufacturer - * - * This class provides methods to generate user's input events such as - * touch and key events for helping test application and to capture current screen. - * @endif - */ +* @class SystemUtil +* @brief This is a class for system utililty such as touch, key, and capturing screen. It provides +* functionalities to simulate user inputs. +* @since 2.0 +* @final This class is not intended for extension. +* +* This class provides methods to generate user's input events such as +* touch and key events for helping test application and to capture current screen. +*/ class _OSP_EXPORT_ SystemUtil { public: - /** - * @if VISPARTNER-MANUFACTURER - * Generates a key event - * - * @since 2.0 - * @visibility partner-manufacturer - * @privilege %http://tizen.org/privilege/inputmanager - * - * @return An error code - * @param[in] keyEvent The event type of the key to be generated - * @param[in] keyCode The code of the key - * @exception E_SUCCESS The method was successful. - * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method. - * @exception E_OPERATION_FAILED An error occurred in the underlying system. - * @exception E_INVALID_ARG The specified @c keyEvent or @c keyCode is not supported. - * @endif - */ - static result GenerateKeyEvent(KeyEventType keyEvent, KeyCode keyCode); - - /** - * @if VISPARTNER-MANUFACTURER - * Generates a touch event - * - * @since 2.0 - * @visibility partner-manufacturer - * @privilege %http://tizen.org/privilege/inputmanager - * - * @return An error code - * @param[in] touchEvent The event type of the touch to be generated - * @param[in] point The point on which the touch occurs - * @exception E_SUCCESS The method was successful. - * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method. - * @exception E_OPERATION_FAILED An error occurred in the underlying system. - * @exception E_INVALID_ARG The specified @c touchEvent is not supported. - * @endif - */ - static result GenerateTouchEvent(TouchEventType touchEvent, const Tizen::Graphics::Point& point); - - /** - * @if VISPARTNER-MANUFACTURER - * Captures a screen - * - * @since 2.0 - * @visibility partner-manufacturer - * @privilege %http://tizen.org/privilege/inputmanager - * - * @return A pointer to the captured screen bitmap, @n - * else @c null if it fails to capture screen - * @exception E_SUCCESS The method was successful. - * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method. - * @exception E_OPERATION_FAILED An error occurred in the underlying system. - * @remarks There is a high probability for an occurrence of an out-of-memory exception. If possible, check whether the exception is E_OUT_OF_MEMORY or not. For more information on how to handle the out-of-memory exception, refer here. - * @remarks The specific error code can be accessed using the GetLastResult() method. @n - * The returned bitmap should be deleted by the application after use. - * @endif - */ - static Tizen::Graphics::Bitmap* CaptureScreenN(void); + /** + * Generates a key event + * + * @since 2.0 + * + * @privlevel platform + * @privilege %http://tizen.org/privilege/inputmanager + * + * @return An error code + * @param[in] keyEvent The event type of the key to be generated + * @param[in] keyCode The code of the key + * @exception E_SUCCESS The method was successful. + * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method. + * @exception E_OPERATION_FAILED An error occurred in the underlying system. + * @exception E_INVALID_ARG The specified @c keyEvent or @c keyCode is not supported. + */ + static result GenerateKeyEvent(KeyEventType keyEvent, KeyCode keyCode); + + /** + * Generates a touch event + * + * @since 2.0 + * + * @privlevel platform + * @privilege %http://tizen.org/privilege/inputmanager + * + * @return An error code + * @param[in] touchEvent The event type of the touch to be generated + * @param[in] point The point on which the touch occurs + * @exception E_SUCCESS The method was successful. + * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method. + * @exception E_OPERATION_FAILED An error occurred in the underlying system. + * @exception E_INVALID_ARG The specified @c touchEvent is not supported. + */ + static result GenerateTouchEvent(TouchEventType touchEvent, const Tizen::Graphics::Point& point); + + /** + * Generates a touch event + * + * @since 2.0 + * + * @privlevel platform + * @privilege %http://tizen.org/privilege/inputmanager + * + * @return An error code + * @param[in] touchEvent The event type of the touch to be generated + * @param[in] point The point on which the touch occurs + * @exception E_SUCCESS The method was successful. + * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method. + * @exception E_OPERATION_FAILED An error occurred in the underlying system. + * @exception E_INVALID_ARG The specified @c touchEvent is not supported. + */ + static result GenerateTouchEvent(TouchEventType touchEvent, const Tizen::Graphics::FloatPoint& point); + + /** + * Captures a screen + * + * @since 2.0 + * + * @privlevel platform + * @privilege %http://tizen.org/privilege/inputmanager + * + * @return A pointer to the captured screen bitmap, @n + * else @c null if it fails to capture screen + * @exception E_SUCCESS The method was successful. + * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method. + * @exception E_OPERATION_FAILED An error occurred in the underlying system. + * @remarks There is a high probability for an occurrence of an out-of-memory exception. If possible, check whether the exception is E_OUT_OF_MEMORY or not. For more information on how to handle the out-of-memory exception, refer here. + * @remarks The specific error code can be accessed using the GetLastResult() method. @n + * The returned bitmap should be deleted by the application after use. + */ + static Tizen::Graphics::Bitmap* CaptureScreenN(void); private: - // + // // This default constructor is intentionally declared as private because this class cannot be constructed. - // - SystemUtil(void); + // + SystemUtil(void); - // + // // This destructor is intentionally declared as private because this class cannot be constructed. - // - SystemUtil(const SystemUtil& rhs); - - // - // The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects. - // - SystemUtil& operator =(const SystemUtil& rhs); - - // - // This is a destructor for this class. - // This destructor is intentionally declared as private because this class cannot be constructed. - // - ~SystemUtil(void); + // + SystemUtil(const SystemUtil& rhs); + + // + // The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects. + // + SystemUtil& operator =(const SystemUtil& rhs); + + // + // This is a destructor for this class. + // This destructor is intentionally declared as private because this class cannot be constructed. + // + ~SystemUtil(void); }; //SystemUtil diff --git a/inc/FUiTouch.h b/inc/FUiTouch.h index 2f00f60..d6f99eb 100644 --- a/inc/FUiTouch.h +++ b/inc/FUiTouch.h @@ -177,30 +177,30 @@ class _OSP_EXPORT_ Touch { public: /** - * @if OSPDEPREC + * @if OSPDEPREC * This is the default constructor for this class. * * @brief [Deprecated] * @deprecated This method is deprecated because the %Touch class is not supported any more. Instead, use the Tizen::Ui::TouchEventManager class. * @since 2.0 - * @endif + * @endif */ Touch(void); /** - * @if OSPDEPREC - * This destructor overrides Osp::Base::Object::~Object(). + * @if OSPDEPREC + * This destructor overrides Tizen::Base::Object::~Object(). * * @brief [Deprecated] * @deprecated This method is deprecated because the %Touch class is not supported any more. Instead, use the Tizen::Ui::TouchEventManager class. * @since 2.0 - * @endif + * @endif */ virtual ~Touch(void); public: /** - * @if OSPDEPREC + * @if OSPDEPREC * Enables or disables the multi-point touch of the Control. * * @brief [Deprecated] @@ -213,12 +213,12 @@ public: * @exception E_SUCCESS The method is successful. * @exception E_SYSTEM A system error has occurred. * @see IsMultipointEnabled() - * @endif + * @endif */ result SetMultipointEnabled(const Tizen::Ui::Control& control, bool enable); /** - * @if OSPDEPREC + * @if OSPDEPREC * Checks whether the multi-point touch is enabled. * * @brief [Deprecated] @@ -228,13 +228,13 @@ public: * @return @c true if the multi-point touch is enabled, @n * else @c false * @see IsMultipointEnabled() - * @endif + * @endif */ bool IsMultipointEnabled(const Tizen::Ui::Control& control) const; /** - * @if OSPDEPREC + * @if OSPDEPREC * Gets the touch position. * If there is only a single touch, that is returned. If there are multi-point touches, then the position of the last touch is returned. * @@ -245,12 +245,12 @@ public: * * @return The coordinates of the touch * @remarks If an error occurs, this method returns Point(-1, -1). - * @endif + * @endif */ Tizen::Graphics::Point GetPosition(void) const; /** - * @if OSPDEPREC + * @if OSPDEPREC * Gets the touch position by ID. * * @brief [Deprecated] @@ -261,12 +261,12 @@ public: * @return The coordinates of the touch * @param[in] id The ID of the touch * @remarks If an error occurs, this method returns Point(-1, -1). - * @endif + * @endif */ Tizen::Graphics::Point GetPosition(unsigned long id) const; /** - * @if OSPDEPREC + * @if OSPDEPREC * Gets the touch position relative to the specified control. * * @brief [Deprecated] @@ -277,12 +277,12 @@ public: * @return The coordinates of the touch * @param[in] control The source control * @remarks If an error occurs, this method returns Point(-1, -1). - * @endif + * @endif */ Tizen::Graphics::Point GetPosition(const Tizen::Ui::Control& control) const; /** - * @if OSPDEPREC + * @if OSPDEPREC * Gets the touch position relative to the specified control by ID. * * @brief [Deprecated] @@ -294,27 +294,27 @@ public: * @param[in] control The source control * @param[in] id The ID of the touch * @remarks If an error occurs, this method returns Point(-1, -1). - * @endif + * @endif */ Tizen::Graphics::Point GetPosition(const Tizen::Ui::Control& control, unsigned long id) const; /** - * @if OSPDEPREC - * Gets the status of the touch by ID. - * - * @brief [Deprecated] - * @deprecated This method is deprecated because the %Touch class is not supported any more. - * Instead, get the Tizen::Ui::TouchEventManager::GetTouchInfoListN() and use the Tizen::Ui::TouchEventInfo::GetTouchStatus() method. - * @since 2.0 - * - * @param[in] id The ID of the touch - * @return The touch status - * @endif - */ + * @if OSPDEPREC + * Gets the status of the touch by ID. + * + * @brief [Deprecated] + * @deprecated This method is deprecated because the %Touch class is not supported any more. + * Instead, get the Tizen::Ui::TouchEventManager::GetTouchInfoListN() and use the Tizen::Ui::TouchEventInfo::GetTouchStatus() method. + * @since 2.0 + * + * @param[in] id The ID of the touch + * @return The touch status + * @endif + */ TouchStatus GetTouchStatus(unsigned long id) const; /** - * @if OSPDEPREC + * @if OSPDEPREC * Gets the list of the multi-point touches, each represented by TouchInfo. * * @brief [Deprecated] @@ -323,12 +323,12 @@ public: * * @return List of the TouchInfo * @see Tizen::Ui::TouchInfo - * @endif + * @endif */ Tizen::Base::Collection::IList* GetTouchInfoListN(void) const; /** - * @if OSPDEPREC + * @if OSPDEPREC * Gets the list of the multi-point touch positions relative to the specified control, each represented by TouchInfo. * * @brief [Deprecated] @@ -338,25 +338,25 @@ public: * @return A list of the TouchInfo instances * @param[in] control The source object for calculating the coordinates * @see Tizen::Ui::TouchInfo - * @endif + * @endif */ Tizen::Base::Collection::IList* GetTouchInfoListN(const Tizen::Ui::Control& control) const; /** - * @if OSPDEPREC - * Gets the count of the multi-point touches. - * - * @brief [Deprecated] - * @deprecated This method is deprecated because the %Touch class is not supported any more. Instead, get the count of Tizen::Ui::TouchEventManager::GetTouchInfoListN() method. - * @since 2.0 - * - * @return The number of the multi-point touches - * @endif - */ + * @if OSPDEPREC + * Gets the count of the multi-point touches. + * + * @brief [Deprecated] + * @deprecated This method is deprecated because the %Touch class is not supported any more. Instead, get the count of Tizen::Ui::TouchEventManager::GetTouchInfoListN() method. + * @since 2.0 + * + * @return The number of the multi-point touches + * @endif + */ int GetPointCount(void) const; /** - * @if OSPDEPREC + * @if OSPDEPREC * Gets the point ID at the given index. * * @brief [Deprecated] @@ -366,7 +366,7 @@ public: * * @return The touch point ID * @param[in] index The index of the touch - * @endif + * @endif */ unsigned long GetPointId(int index) const; @@ -382,6 +382,6 @@ private: Touch& operator =(const Touch&); }; // Touch -}} // Tizen::Ui +} } // Tizen::Ui #endif // _FUI_TOUCH_H_ diff --git a/inc/FUiTouchEventInfo.h b/inc/FUiTouchEventInfo.h index 3c5d0d9..f9bafb3 100644 --- a/inc/FUiTouchEventInfo.h +++ b/inc/FUiTouchEventInfo.h @@ -28,11 +28,12 @@ #include #include +#include namespace Tizen { namespace Base { namespace Runtime { class IEventArg; -}}} +} } } namespace Tizen { namespace Ui { @@ -67,7 +68,15 @@ enum TouchStatus * @final This class is not intended for extension. * * The %TouchEventInfo class provides the touch event information: touch position, status, ID, and so on. - * @see ITouchEventListener, ITouchEventListener::OnTouchPressed(), @if OSPDEREC ITouchEventListener::OnTouchLongPressed(), @endif ITouchEventListener::OnTouchReleased(), ITouchEventListener::OnTouchMoved(), @if OSPDEPREC ITouchEventListener::OnTouchDoublePressed(), @endif ITouchEventListener::OnTouchFocusIn(), ITouchEventListener::OnTouchFocusOut() + * @see ITouchEventListener::OnTouchPressed() + * @see ITouchEventListener::OnTouchReleased() + * @see ITouchEventListener::OnTouchMoved() + * @see ITouchEventListener::OnTouchFocusIn() + * @see ITouchEventListener::OnTouchFocusOut() + * @if OSPDEPREC + * @see ITouchEventListener::OnTouchLongPressed() + * @see ITouchEventListener::OnTouchDoublePressed() + * @endif * */ class _OSP_EXPORT_ TouchEventInfo @@ -118,6 +127,15 @@ public: */ Tizen::Graphics::Point GetStartPosition(void) const; + /* + * Gets the start position of the touch event. + * + * @since 2.1 + * + * @return The start position of the touch event + */ + Tizen::Graphics::FloatPoint GetStartPositionF(void) const; + /** * Gets the current position of the touch event. * @@ -127,6 +145,15 @@ public: */ Tizen::Graphics::Point GetCurrentPosition(void) const; + /* + * Gets the current position of the touch event. + * + * @since 2.1 + * + * @return The current position of the touch event + */ + Tizen::Graphics::FloatPoint GetCurrentPositionF(void) const; + /** * Gets the touch status. * @@ -161,6 +188,6 @@ private: _TouchEventInfoImpl* __pTouchEventInfoImpl; }; // TouchEventInfo -}} //Tizen::Ui +} } //Tizen::Ui #endif // _FUI_TOUCH_EVENT_INFO_H_ diff --git a/inc/FUiTouchEventManager.h b/inc/FUiTouchEventManager.h index 3fa286a..d03b619 100644 --- a/inc/FUiTouchEventManager.h +++ b/inc/FUiTouchEventManager.h @@ -52,15 +52,15 @@ class _OSP_EXPORT_ TouchEventManager { public: /** - * Gets the instance of the %TouchEventManager. - * - * @since 2.0 - * @return A instance of the %TouchEventManager - * @exception E_SUCCESS The method is successful. - * @exception E_OUT_OF_MEMORY The memory is insufficient. - * @remarks This method provides a global point of access to the TouchEventManager. And the specific error code can be accessed using the - * GetLastResult() method. - */ + * Gets the instance of the %TouchEventManager. + * + * @since 2.0 + * @return A instance of the %TouchEventManager + * @exception E_SUCCESS The method is successful. + * @exception E_OUT_OF_MEMORY The memory is insufficient. + * @remarks This method provides a global point of access to the TouchEventManager. And the specific error code can be accessed using the + * GetLastResult() method. + */ static TouchEventManager* GetInstance(void); /** @@ -98,6 +98,6 @@ private: _TouchEventManagerImpl* __pTouchEventManagerImpl; }; // TouchEventManager -}} //Tizen::Ui +} } //Tizen::Ui #endif // _FUI_TOUCH_EVENT_MANAGER_H_ diff --git a/inc/FUiTouchFlickGestureDetector.h b/inc/FUiTouchFlickGestureDetector.h index e05256b..89e9f67 100644 --- a/inc/FUiTouchFlickGestureDetector.h +++ b/inc/FUiTouchFlickGestureDetector.h @@ -71,7 +71,7 @@ public: TouchFlickGestureDetector(void); /** - * This destructor overrides Osp::Base::Object::~Object(). + * This destructor overrides Tizen::Base::Object::~Object(). * * @since 2.0 */ @@ -88,36 +88,49 @@ public: result Construct(void); /** - * Adds the ITouchFlickGestureEventListener instance to the flick gesture detector instance. @n - * The added listener gets notified when a gesture is recognized. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The event listener to add - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_ALREADY_EXIST The listener is already added. - * @see RemoveFlickGestureEventListener() - */ + * Adds the ITouchFlickGestureEventListener instance to the flick gesture detector instance. @n + * The added listener gets notified when a gesture is recognized. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The event listener to add + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_ALREADY_EXIST The listener is already added. + * @see RemoveFlickGestureEventListener() + */ result AddFlickGestureEventListener(Tizen::Ui::ITouchFlickGestureEventListener& listener); /** - * Removes the IFlickGestureEventListener instance from the flick gesture detector instance. + * Removes the IFlickGestureEventListener instance from the flick gesture detector instance. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The listener to remove + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_NOT_FOUND The specified @c listener is not found. + * @see AddFlickGestureEventListener() + */ + result RemoveFlickGestureEventListener(Tizen::Ui::ITouchFlickGestureEventListener& listener); + + /** + * Gets the distance of flick. * * @since 2.0 * * @return An error code - * @param[in] listener The listener to remove + * @param[out] xDistance The distance in x direction + * @param[out] yDistance The distance in y direction * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_NOT_FOUND The specified @c listener is not found. - * @see AddFlickGestureEventListener() + * @remarks If an error occurs, this method returns the x distance of -1 and the y distance of -1. */ - result RemoveFlickGestureEventListener(Tizen::Ui::ITouchFlickGestureEventListener& listener); + result GetDistance(int& xDistance, int& yDistance) const; - /** + /* * Gets the distance of flick. * - * @since 2.0 + * @since 2.1 * * @return An error code * @param[out] xDistance The distance in x direction @@ -125,7 +138,7 @@ public: * @exception E_SUCCESS The method is successful. * @remarks If an error occurs, this method returns the x distance of -1 and the y distance of -1. */ - result GetDistance(int& xDistance, int& yDistance) const; + result GetDistance(float& xDistance, float& yDistance) const; /** * Gets the duration of flick. @@ -165,4 +178,4 @@ private: }} // Tizen::Ui -#endif //_FUI_TOUCH_FLICK_GESTURE_DETECTOR_H_ +#endif //_FUI_TOUCH_FLICK_GESTURE_DETECTOR_H_ \ No newline at end of file diff --git a/inc/FUiTouchGestureDetector.h b/inc/FUiTouchGestureDetector.h index 9033d49..68fede5 100644 --- a/inc/FUiTouchGestureDetector.h +++ b/inc/FUiTouchGestureDetector.h @@ -72,7 +72,7 @@ public: TouchGestureDetector(void); /** - * This destructor overrides Osp::Base::Object::~Object(). + * This destructor overrides Tizen::Base::Object::~Object(). * * @since 2.0 */ @@ -173,6 +173,22 @@ public: */ result StartOnFailureOf(const TouchGestureDetector& gestureDetector); + /* + * Sets priority between gesture detectors. + * + * @since 2.1 + * + * @return An error code + * @param[in] pGestureDetector Pointer of gesture detector + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The @c pGestureDetector is null. + * @remarks If you want to set relationship between gesture detectors, call this method. + * If @c gestureDetector fails in recognizing a gesture, the gesture detector which waits for it starts the processing of recognizing. + * If @c gestureDetector succeeds in recognizing a gesture, + * the state of the gesture detector which waits for it changes to GESTURE_DETECTOR_STATE_FAIL. + */ + result StartOnFailureOf(TouchGestureDetector* pGestureDetector); + /** * Called when touch is pressed in the Control which the gesture detector is attached to. * @@ -289,4 +305,4 @@ protected: }} // Tizen::Ui -#endif //_FUI_TOUCH_GESTURE_DETECTOR_H_ \ No newline at end of file +#endif //_FUI_TOUCH_GESTURE_DETECTOR_H_ diff --git a/inc/FUiTouchInfo.h b/inc/FUiTouchInfo.h index 03bc75b..d267a32 100644 --- a/inc/FUiTouchInfo.h +++ b/inc/FUiTouchInfo.h @@ -52,7 +52,7 @@ class _OSP_EXPORT_ TouchInfo { public: /** - * @if OSPDEPREC + * @if OSPDEPREC * This is the default constructor for this class. * * @brief [Deprecated] @@ -68,42 +68,42 @@ public: } /** - * @if OSPDEPREC - * The ID of the Touch instance. - * - * @brief [Deprecated] - * @deprecated This method is deprecated because the %TouchInfo class is not supported any more. Instead, get the Tizen::Ui::TouchEventManager::GetTouchInfoListN() - * and use the Tizen::Ui::TouchEventInfo::GetPointId() method. - * @since 2.0 - * @endif - */ + * @if OSPDEPREC + * The ID of the Touch instance. + * + * @brief [Deprecated] + * @deprecated This method is deprecated because the %TouchInfo class is not supported any more. Instead, get the Tizen::Ui::TouchEventManager::GetTouchInfoListN() + * and use the Tizen::Ui::TouchEventInfo::GetPointId() method. + * @since 2.0 + * @endif + */ unsigned long id; /** - * @if OSPDEPREC - * The position of the Touch instance. - * - * @brief [Deprecated] - * @deprecated This method is deprecated because the %TouchInfo class is not supported any more. Instead, get the Tizen::Ui::TouchEventManager::GetTouchInfoListN() - * and use the Tizen::Ui::TouchEventInfo::GetCurrentPosition() method. - * @since 2.0 - * @endif - */ + * @if OSPDEPREC + * The position of the Touch instance. + * + * @brief [Deprecated] + * @deprecated This method is deprecated because the %TouchInfo class is not supported any more. Instead, get the Tizen::Ui::TouchEventManager::GetTouchInfoListN() + * and use the Tizen::Ui::TouchEventInfo::GetCurrentPosition() method. + * @since 2.0 + * @endif + */ Tizen::Graphics::Point position; /** - * @if OSPDEPREC - * The status of the Touch instance, using only the @c TOUCH_PRESSED and @c TOUCH_RELEASED states. - * - * @brief [Deprecated] - * @deprecated This method is deprecated because the %TouchInfo class is not supported any more. Instead, get the Tizen::Ui::TouchEventManager::GetTouchInfoListN() - * and use the Tizen::Ui::TouchEventInfo::GetTouchStatus() method. - * @since 2.0 - * @endif - */ + * @if OSPDEPREC + * The status of the Touch instance, using only the @c TOUCH_PRESSED and @c TOUCH_RELEASED states. + * + * @brief [Deprecated] + * @deprecated This method is deprecated because the %TouchInfo class is not supported any more. Instead, get the Tizen::Ui::TouchEventManager::GetTouchInfoListN() + * and use the Tizen::Ui::TouchEventInfo::GetTouchStatus() method. + * @since 2.0 + * @endif + */ TouchStatus status; }; // TouchInfo -}} // Tizen::Ui +} } // Tizen::Ui #endif // _FUI_TOUCH_INFO_H_ diff --git a/inc/FUiTouchLongPressGestureDetector.h b/inc/FUiTouchLongPressGestureDetector.h index 9074119..037d50e 100644 --- a/inc/FUiTouchLongPressGestureDetector.h +++ b/inc/FUiTouchLongPressGestureDetector.h @@ -72,44 +72,44 @@ public: result Construct(void); /** - * Adds the ITouchLongPressGestureEventListener instance to the long press gesture detector instance. @n - * The added listener gets notified when a gesture is recognized. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The event listener to add - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_ALREADY_EXIST The listener is already added. - * @see RemoveLongPressGestureEventListener() - */ + * Adds the ITouchLongPressGestureEventListener instance to the long press gesture detector instance. @n + * The added listener gets notified when a gesture is recognized. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The event listener to add + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_ALREADY_EXIST The listener is already added. + * @see RemoveLongPressGestureEventListener() + */ result AddLongPressGestureEventListener(Tizen::Ui::ITouchLongPressGestureEventListener& listener); /** - * Removes the ITouchLongPressGestureEventListener instance from the long press gesture detector instance. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The listener to remove - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_NOT_FOUND The specified @c listener is not found. - * @see AddLongPressGestureEventListener() - */ + * Removes the ITouchLongPressGestureEventListener instance from the long press gesture detector instance. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The listener to remove + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_NOT_FOUND The specified @c listener is not found. + * @see AddLongPressGestureEventListener() + */ result RemoveLongPressGestureEventListener(Tizen::Ui::ITouchLongPressGestureEventListener& listener); /** - * Sets the duration needed for the recognition of long press gesture. - * - * @since 2.0 - * - * @param[in] duration The time duration - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The specified @c duration is less than @c 0. - * @remarks The default value is @c 500 milliseconds. - * @see GetDuration() - * - */ + * Sets the duration needed for the recognition of long press gesture. + * + * @since 2.0 + * + * @param[in] duration The time duration + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c duration is less than @c 0. + * @remarks The default value is @c 500 milliseconds. + * @see GetDuration() + * + */ result SetDuration(int duration); /** @@ -125,60 +125,88 @@ public: int GetDuration(void) const; /** - * Sets the allowed displacement of touch move for the recognition of long press gesture. - * - * @since 2.0 - * - * @param[in] allowance The allowed move displacement - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The specified @c allowance is less than @c 0. - * @remarks The long press gesture is recognized when touch is pressed and moved within the given allowed displacement from the first touch point for the given duration. - * The default allowance is @c 10. - * @see GetMoveAllowance() - * - */ + * Sets the allowed displacement of touch move for the recognition of long press gesture. + * + * @since 2.0 + * + * @param[in] allowance The allowed move displacement + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c allowance is less than @c 0. + * @remarks The long press gesture is recognized when touch is pressed and moved within the given allowed displacement from the first touch point for the given duration. + * The default allowance is @c 10. + * @see GetMoveAllowance() + * + */ result SetMoveAllowance(int allowance); + /* + * Sets the allowed displacement of touch move for the recognition of long press gesture. + * + * @since 2.1 + * + * @param[in] allowance The allowed move displacement + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c allowance is less than @c 0. + * @remarks The long press gesture is recognized when touch is pressed and moved within the given allowed displacement from the first touch point for the given duration. + * The default allowance is @c 10. + * @see GetMoveAllowance() + * + */ + result SetMoveAllowance(float allowance); + /** - * Gets the allowed move bounds. - * - * @since 2.0 - * - * @return The allowed move bounds - * @exception E_SUCCESS The method is successful. - * @remarks If an error occurs, this method returns -1. - * @see SetMoveAllowance() - * - */ + * Gets the allowed move bounds. + * + * @since 2.0 + * + * @return The allowed move bounds + * @exception E_SUCCESS The method is successful. + * @remarks If an error occurs, this method returns -1. + * @see SetMoveAllowance() + * + */ int GetMoveAllowance(void) const; + /* + * Gets the allowed move bounds. + * + * @since 2.1 + * + * @return The allowed move bounds + * @exception E_SUCCESS The method is successful. + * @remarks If an error occurs, this method returns -1. + * @see SetMoveAllowance() + * + */ + float GetMoveAllowanceF(void) const; + /** - * Sets the finger count for the recognition of long press gesture at the same time. - * - * @since 2.0 - * - * @param[in] count The finger count for long press gesture - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The specified @c count is less than @c 0. - * @remarks The default value is @c 1. - * It is recommended to check the maximum touch count of a device before changing the touch count of a gesture detector. - * You can set the gesture touch count to more than the maximum device touch count, but the gesture recognition may not work as you expected. - * @see GetTouchCount() - * - */ + * Sets the finger count for the recognition of long press gesture at the same time. + * + * @since 2.0 + * + * @param[in] count The finger count for long press gesture + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c count is less than @c 0. + * @remarks The default value is @c 1. + * It is recommended to check the maximum touch count of a device before changing the touch count of a gesture detector. + * You can set the gesture touch count to more than the maximum device touch count, but the gesture recognition may not work as you expected. + * @see GetTouchCount() + * + */ result SetTouchCount(int count); /** - * Gets the finger count for the recognition of long press gesture at the same time. - * - * @since 2.0 - * - * @return The finger count for long press gesture - * @exception E_SUCCESS The method is successful. - * @remarks If an error occurs, this method returns -1. - * @see GetTouchCount() - * - */ + * Gets the finger count for the recognition of long press gesture at the same time. + * + * @since 2.0 + * + * @return The finger count for long press gesture + * @exception E_SUCCESS The method is successful. + * @remarks If an error occurs, this method returns -1. + * @see GetTouchCount() + * + */ int GetTouchCount(void) const; private: diff --git a/inc/FUiTouchPanningGestureDetector.h b/inc/FUiTouchPanningGestureDetector.h index 92abf7f..024da95 100644 --- a/inc/FUiTouchPanningGestureDetector.h +++ b/inc/FUiTouchPanningGestureDetector.h @@ -72,71 +72,71 @@ public: result Construct(void); /** - * Adds the ITouchPanningGestureEventListener instance to the panning gesture detector instance. @n - * The added listener gets notified when a gesture is recognized. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The event listener to add - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_ALREADY_EXIST The listener is already added. - * @see RemoveRotationGestureEventListener() - */ + * Adds the ITouchPanningGestureEventListener instance to the panning gesture detector instance. @n + * The added listener gets notified when a gesture is recognized. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The event listener to add + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_ALREADY_EXIST The listener is already added. + * @see RemoveRotationGestureEventListener() + */ result AddPanningGestureEventListener(Tizen::Ui::ITouchPanningGestureEventListener& listener); /** - * Removes the ITouchPanningGestureEventListener instance from the panning gesture detector instance. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The listener to remove - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_NOT_FOUND The specified @c listener is not found. - * @see AddRotationGestureEventListener() - */ + * Removes the ITouchPanningGestureEventListener instance from the panning gesture detector instance. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The listener to remove + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_NOT_FOUND The specified @c listener is not found. + * @see AddRotationGestureEventListener() + */ result RemovePanningGestureEventListener(Tizen::Ui::ITouchPanningGestureEventListener& listener); /** - * Gets the list of the touched points represented by TouchInfo. - * - * @since 2.0 - * - * @return A list of the TouchInfo - * @exception E_SUCCESS The method is successful. - * @remarks If an error occurs, this method returns @c null. - * @see Tizen::Ui::TouchInfo - */ + * Gets the list of the touched points represented by TouchInfo. + * + * @since 2.0 + * + * @return A list of the TouchInfo + * @exception E_SUCCESS The method is successful. + * @remarks If an error occurs, this method returns @c null. + * @see Tizen::Ui::TouchInfo + */ Tizen::Base::Collection::IList* GetTouchInfoListN(void) const; /** - * Sets the finger count for the recognition of panning gesture at the same time. - * - * @since 2.0 - * - * @param[in] count The finger count for panning gesture - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The specified @c count is less than @c 0. - * @remarks The default value is @c 1. - * It is recommended to check the maximum touch count of a device before changing the touch count of a gesture detector. - * You can set the gesture touch count to more than the maximum device touch count, but the gesture recognition may not work as you expected. - * @see GetTouchCount() - * - */ + * Sets the finger count for the recognition of panning gesture at the same time. + * + * @since 2.0 + * + * @param[in] count The finger count for panning gesture + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c count is less than @c 0. + * @remarks The default value is @c 1. + * It is recommended to check the maximum touch count of a device before changing the touch count of a gesture detector. + * You can set the gesture touch count to more than the maximum device touch count, but the gesture recognition may not work as you expected. + * @see GetTouchCount() + * + */ result SetTouchCount(int count); /** - * Gets the finger count for the recognition of panning gesture at the same time. - * - * @since 2.0 - * - * @return The finger count for panning gesture - * @exception E_SUCCESS The method is successful. - * @remarks If an error occurs, this method returns -1. - * @see SetTouchCount() - * - */ + * Gets the finger count for the recognition of panning gesture at the same time. + * + * @since 2.0 + * + * @return The finger count for panning gesture + * @exception E_SUCCESS The method is successful. + * @remarks If an error occurs, this method returns -1. + * @see SetTouchCount() + * + */ int GetTouchCount(void) const; private: @@ -154,6 +154,6 @@ protected: friend class _TouchPanningGestureDetectorImpl; }; // TouchPanningGestureDetector -}} // Tizen::Ui +} } // Tizen::Ui #endif //_FUI_TOUCH_PANNING_GESTURE_DETECTOR_H_ diff --git a/inc/FUiTouchPinchGestureDetector.h b/inc/FUiTouchPinchGestureDetector.h index b59d09b..8aa4158 100644 --- a/inc/FUiTouchPinchGestureDetector.h +++ b/inc/FUiTouchPinchGestureDetector.h @@ -28,6 +28,7 @@ #include #include +#include namespace Tizen { namespace Ui { @@ -73,42 +74,53 @@ public: result Construct(void); /** - * Adds the ITouchPinchGestureEventListener instance to the pinch gesture detector instance. @n - * The added listener gets notified when a gesture is recognized. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The event listener to add - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_ALREADY_EXIST The listener is already added. - * @see RemoveRotationGestureEventListener() - */ + * Adds the ITouchPinchGestureEventListener instance to the pinch gesture detector instance. @n + * The added listener gets notified when a gesture is recognized. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The event listener to add + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_ALREADY_EXIST The listener is already added. + * @see RemoveRotationGestureEventListener() + */ result AddPinchGestureEventListener(Tizen::Ui::ITouchPinchGestureEventListener& listener); /** - * Removes the ITouchPinchGestureEventListener instance from the pinch gesture detector instance. + * Removes the ITouchPinchGestureEventListener instance from the pinch gesture detector instance. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The listener to remove + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_NOT_FOUND The specified @c listener is not found. + * @see AddRotationGestureEventListener() + */ + result RemovePinchGestureEventListener(Tizen::Ui::ITouchPinchGestureEventListener& listener); + + /** + * Gets the center position of two touch points. * * @since 2.0 * - * @return An error code - * @param[in] listener The listener to remove + * @return The center point * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_NOT_FOUND The specified @c listener is not found. - * @see AddRotationGestureEventListener() + * @remarks If an error occurs, this method returns Point(-1, -1). */ - result RemovePinchGestureEventListener(Tizen::Ui::ITouchPinchGestureEventListener& listener); + Tizen::Graphics::Point GetCenterPoint(void) const; - /** + /* * Gets the center position of two touch points. * - * @since 2.0 + * @since 2.1 * * @return The center point * @exception E_SUCCESS The method is successful. * @remarks If an error occurs, this method returns Point(-1, -1). */ - Tizen::Graphics::Point GetCenterPoint(void) const; + Tizen::Graphics::FloatPoint GetCenterPointF(void) const; /** * Gets the scale factor among touched point @@ -120,6 +132,16 @@ public: */ int GetScale(void) const; + /* + * Gets the scale factor among touched point + * + * @since 2.1 + * + * @return The scale factor among touched points + * @remarks Get scale factor for a pinch gesture in progress + */ + float GetScaleF(void) const; + private: // // This is the copy constructor for this class. diff --git a/inc/FUiTouchRotationGestureDetector.h b/inc/FUiTouchRotationGestureDetector.h index 6ef0bc5..d58c09f 100644 --- a/inc/FUiTouchRotationGestureDetector.h +++ b/inc/FUiTouchRotationGestureDetector.h @@ -72,54 +72,65 @@ public: result Construct(void); /** - * Adds the ITouchRotationGestureEventListener instance to the rotation gesture detector instance. @n - * The added listener gets notified when a gesture is recognized. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The event listener to add - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_ALREADY_EXIST The listener is already added. - * @see RemoveRotationGestureEventListener() - */ + * Adds the ITouchRotationGestureEventListener instance to the rotation gesture detector instance. @n + * The added listener gets notified when a gesture is recognized. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The event listener to add + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_ALREADY_EXIST The listener is already added. + * @see RemoveRotationGestureEventListener() + */ result AddRotationGestureEventListener(Tizen::Ui::ITouchRotationGestureEventListener& listener); /** - * Removes the ITouchRotationGestureEventListener instance from the rotation gesture detector instance. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The listener to remove - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_NOT_FOUND The specified @c listener is not found. - * @see AddRotationGestureEventListener() - */ + * Removes the ITouchRotationGestureEventListener instance from the rotation gesture detector instance. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The listener to remove + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_NOT_FOUND The specified @c listener is not found. + * @see AddRotationGestureEventListener() + */ result RemoveRotationGestureEventListener(Tizen::Ui::ITouchRotationGestureEventListener& listener); /** - * Gets the angle between the previous touch points and the current touch points. - * - * @since 2.0 - * - * @return The angle between two touch points - * @exception E_SUCCESS The method is successful. - * @remarks If an error occurs, this method returns -1. - */ + * Gets the angle between the previous touch points and the current touch points. + * + * @since 2.0 + * + * @return The angle between two touch points + * @exception E_SUCCESS The method is successful. + * @remarks If an error occurs, this method returns -1. + */ float GetAngle(void) const; /** - * Gets the distance between two touch points. - * - * @since 2.0 - * - * @return The distance between two touch points - * @exception E_SUCCESS The method is successful. - * @remarks If an error occurs, this method returns -1. - */ + * Gets the distance between two touch points. + * + * @since 2.0 + * + * @return The distance between two touch points + * @exception E_SUCCESS The method is successful. + * @remarks If an error occurs, this method returns -1. + */ int GetDistance(void) const; + /* + * Gets the distance between two touch points. + * + * @since 2.1 + * + * @return The distance between two touch points + * @exception E_SUCCESS The method is successful. + * @remarks If an error occurs, this method returns -1. + */ + float GetDistanceF(void) const; + private: // // This is the copy constructor for this class. @@ -135,6 +146,6 @@ protected: friend class _TouchRotationGestureDetectorImpl; }; // TouchRotationGestureDetector -}} // Tizen::Ui +} } // Tizen::Ui -#endif //_FUI_TOUCH_ROTATION_GESTURE_DETECTOR_H_ +#endif //_FUI_TOUCH_ROTATION_GESTURE_DETECTOR_H_ \ No newline at end of file diff --git a/inc/FUiTouchTapGestureDetector.h b/inc/FUiTouchTapGestureDetector.h index 8eb92f2..457c1c6 100644 --- a/inc/FUiTouchTapGestureDetector.h +++ b/inc/FUiTouchTapGestureDetector.h @@ -72,44 +72,44 @@ public: result Construct(void); /** - * Adds the ITouchTapGestureEventListener instance to the tap gesture detector instance. @n - * The added listener gets notified when a gesture is recognized. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The event listener to add - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_ALREADY_EXIST The listener is already added. - * @see RemoveTapGestureEventListener() - */ + * Adds the ITouchTapGestureEventListener instance to the tap gesture detector instance. @n + * The added listener gets notified when a gesture is recognized. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The event listener to add + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_ALREADY_EXIST The listener is already added. + * @see RemoveTapGestureEventListener() + */ result AddTapGestureEventListener(Tizen::Ui::ITouchTapGestureEventListener& listener); /** - * Removes the ITouchTapGestureEventListener instance from the tap gesture detector instance. - * - * @since 2.0 - * - * @return An error code - * @param[in] listener The listener to remove - * @exception E_SUCCESS The method is successful. - * @exception E_OBJ_NOT_FOUND The specified @c listener is not found. - * @see AddTapGestureEventListener() - */ + * Removes the ITouchTapGestureEventListener instance from the tap gesture detector instance. + * + * @since 2.0 + * + * @return An error code + * @param[in] listener The listener to remove + * @exception E_SUCCESS The method is successful. + * @exception E_OBJ_NOT_FOUND The specified @c listener is not found. + * @see AddTapGestureEventListener() + */ result RemoveTapGestureEventListener(Tizen::Ui::ITouchTapGestureEventListener& listener); /** - * Sets the tap count required for the recognition of tap gesture. - * - * @since 2.0 - * - * @param[in] count The tap count - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The specified @c tap count is less than @c 0. - * @remarks The default value is @c 2. - * @see GetTapCount() - * - */ + * Sets the tap count required for the recognition of tap gesture. + * + * @since 2.0 + * + * @param[in] count The tap count + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c tap count is less than @c 0. + * @remarks The default value is @c 2. + * @see GetTapCount() + * + */ result SetTapCount(int count); /** @@ -126,17 +126,17 @@ public: int GetTapCount(void) const; /** - * Sets the time interval between taps. - * - * @since 2.0 - * - * @param[in] interval The time interval between taps - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The specified @c interval is less than @c 0. - * @remarks If the interval between touches is longer than @c interval, the sequence of touch actions is not recognized as a tap gesture. The default value is @c 330. - * @see GetTapInterval() - * - */ + * Sets the time interval between taps. + * + * @since 2.0 + * + * @param[in] interval The time interval between taps + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c interval is less than @c 0. + * @remarks If the interval between touches is longer than @c interval, the sequence of touch actions is not recognized as a tap gesture. The default value is @c 330. + * @see GetTapInterval() + * + */ result SetTapInterval(int interval); /** @@ -153,51 +153,67 @@ public: int GetTapInterval(void) const; /** - * Sets the finger count for the recognition of tap gesture at the same time. - * - * @since 2.0 - * - * @param[in] count The finger count for long press gesture - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The specified @c count is less than @c 0. - * @remarks If the touch count at the same time is less than @c count, the sequence of touch actions is not recognized as a tap gesture. The default value is @c 1. @n - * It is recommended to check the maximum touch count of a device before changing the touch count of a gesture detector. - * You can set the gesture touch count to more than the maximum device touch count, but the gesture recognition may not work as you expected. - * @see GetTouchCount() - * - */ + * Sets the finger count for the recognition of tap gesture at the same time. + * + * @since 2.0 + * + * @param[in] count The finger count for long press gesture + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c count is less than @c 0. + * @remarks If the touch count at the same time is less than @c count, the sequence of touch actions is not recognized as a tap gesture. The default value is @c 1. @n + * It is recommended to check the maximum touch count of a device before changing the touch count of a gesture detector. + * You can set the gesture touch count to more than the maximum device touch count, but the gesture recognition may not work as you expected. + * @see GetTouchCount() + * + */ result SetTouchCount(int count); /** - * Gets the finger count for the recognition of tap gesture at the same time. - * - * @since 2.0 - * - * @return The finger count for tap gesture - * @exception E_SUCCESS The method is successful. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * @remarks If an error occurs, this method returns @c -1. - * @see GetTouchCount() - * - */ + * Gets the finger count for the recognition of tap gesture at the same time. + * + * @since 2.0 + * + * @return The finger count for tap gesture + * @exception E_SUCCESS The method is successful. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * @remarks If an error occurs, this method returns @c -1. + * @see GetTouchCount() + * + */ int GetTouchCount(void) const; /** - * Sets the allowed displacement between touches for the recognition of tap gesture. - * - * @since 2.0 - * - * @param[in] allowance The allowed displacement between touches - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The specified @c allowance is less than @c 0. - * @exception E_INVALID_CONDITION %Touch count is more than @c 2. - * @remarks The tap gesture is recognized when touches are pressed within the given allowed displacement from the first touch point. The default allowance is @c 10. @n - * MoveAllowance is effective only when touch count is @c 1. If touch count is more than 1, MoveAllowance is ignored. - * @see GetMoveAllowance() - * - */ + * Sets the allowed displacement between touches for the recognition of tap gesture. + * + * @since 2.0 + * + * @param[in] allowance The allowed displacement between touches + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c allowance is less than @c 0. + * @exception E_INVALID_CONDITION %Touch count is more than @c 2. + * @remarks The tap gesture is recognized when touches are pressed within the given allowed displacement from the first touch point. The default allowance is @c 10. @n + * MoveAllowance is effective only when touch count is @c 1. If touch count is more than 1, MoveAllowance is ignored. + * @see GetMoveAllowance() + * + */ result SetMoveAllowance(int allowance); + /* + * Sets the allowed displacement between touches for the recognition of tap gesture. + * + * @since 2.1 + * + * @param[in] allowance The allowed displacement between touches + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c allowance is less than @c 0. + * @exception E_INVALID_CONDITION %Touch count is more than @c 2. + * @remarks The tap gesture is recognized when touches are pressed within the given allowed displacement from the first touch point. The default allowance is @c 10. @n + * MoveAllowance is effective only when touch count is @c 1. If touch count is more than 1, MoveAllowance is ignored. + * @see GetMoveAllowance() + * + */ + result SetMoveAllowance(float allowance); + /** * Gets ths allowed displacement between touches for the recognition of tap gesture. * @@ -209,6 +225,18 @@ public: * @see SetMoveAllowance() */ int GetMoveAllowance(void) const; + + /* + * Gets ths allowed displacement between touches for the recognition of tap gesture. + * + * @since 2.1 + * + * @return The allowed displacement between touches + * @exception E_SUCCESS The method is successful. + * @remarks If an error occurs, this method returns @c -1. + * @see SetMoveAllowance() + */ + float GetMoveAllowanceF(void) const; private: // // This is the copy constructor for this class. @@ -226,4 +254,4 @@ protected: }} // Tizen::Ui -#endif //_FUI_TOUCH_TAP_GESTURE_DETECTOR_H_ +#endif //_FUI_TOUCH_TAP_GESTURE_DETECTOR_H_ \ No newline at end of file diff --git a/inc/FUiUiConfiguration.h b/inc/FUiUiConfiguration.h index 4ca8538..b80add3 100644 --- a/inc/FUiUiConfiguration.h +++ b/inc/FUiUiConfiguration.h @@ -40,40 +40,65 @@ public: * @since 2.0 * * @return An error code - * @param[in] fontName The app font name or system font name @n - * The app font name is retrieved using Tizen::Graphics::GetFaceName(Tizen::Base::String& filepath). - * The system font name is retrieved using Tizen::Graphics::Font::GetSystemFontListN(). - * Sets an empty string if you want to reset - * @exception E_SUCCESS The method is successful. + * @param[in] fontName The app font name or system font name @n + * The app font name is retrieved using Tizen::Graphics::GetFaceName(Tizen::Base::String& filepath). + * The system font name is retrieved using Tizen::Graphics::Font::GetSystemFontListN(). + * Sets an empty string if you want to reset + * @exception E_SUCCESS The method is successful. * @exception E_FILE_NOT_FOUND The specified font cannot be found or accessed. - * @remarks At First, the value of fontName is considered app font name if it matches one of the face names of the font files which is located in '/res/font'. - * If not, the value of fontName is considered system font name if it matches one of the retrieved values using GetSystemFontListN(). - * @remarks The control first attempt to find the control font. If it fails, then it searches for the application default font and the system font, in sequence. - * @see GetDefaultFont() - */ + * @remarks At First, the value of fontName is considered app font name if it matches one of the face names of the font files which is located in '/res/font'. + * If not, the value of fontName is considered system font name if it matches one of the retrieved values using GetSystemFontListN(). + * @remarks The control first attempt to find the control font. If it fails, then it searches for the application default font and the system font, in sequence. + * @see GetDefaultFont() + */ static result SetDefaultFont(const Tizen::Base::String& fontName); /** - * Gets the default font for all the Controls. + * Gets the default font for all the Controls. + * + * @since 2.0 + * + * @return The app font name or system font name @n + * else an empty string if the default font is not set + * @see SetDefaultFont() + */ + static Tizen::Base::String GetDefaultFont(void); + + /** + * Sets the font of the control with the specified file name. * - * @since 2.0 + * @since 2.1 * - * @return The app font name or system font name @n - * else an empty string if the default font is not set - * @see SetDefaultFont() - */ - static Tizen::Base::String GetDefaultFont(void); + * @return An error code + * @param[in] file name The file name of a font-resource which are located in '/res/font'. + * Sets an empty string to reset. + * @exception E_SUCCESS The method is successful. + * @exception E_FILE_NOT_FOUND The specified font cannot be found or accessed. + * @exception E_UNSUPPORTED_FORMAT The specified font format is not supported. + * @see GetDefaultFontFile() + */ + static result SetDefaultFontFromFile(const Tizen::Base::String& fileName); + /** + * Gets a font file name of the control. + * + * @since 2.1 + * + * @return The font name set in the control @n + * else an empty string if the font is not set + * @see SetDefaultFontFromFile() + */ + static Tizen::Base::String GetDefaultFontFile(void); private: // // This default constructor is intentionally declared as private because this class cannot be constructed. - // + // UiConfiguration(void); // // This destructor is intentionally declared as private because this class cannot be constructed. - // + // ~UiConfiguration(void); // diff --git a/inc/FUiVariant.h b/inc/FUiVariant.h old mode 100644 new mode 100755 index b73bcc8..7497550 --- a/inc/FUiVariant.h +++ b/inc/FUiVariant.h @@ -2,14 +2,14 @@ // Open Service Platform // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. // -// Licensed under the Flora License, Version 1.0 (the License); +// Licensed under the Apache License, Version 2.0 (the License); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://floralicense.org/license/ +// http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an AS IS BASIS, +// distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. @@ -42,6 +42,8 @@ namespace Tizen { namespace Graphics class FloatRectangle; class FloatDimension; class FloatMatrix4; + class FloatPoint3; + class FloatVector4; } } namespace Tizen { namespace Ui @@ -77,7 +79,9 @@ enum VariantType VARIANT_TYPE_FLOAT_RECTANGLE, /**< The FloatRectangle type */ VARIANT_TYPE_DIMENSION, /**< The Dimension type */ VARIANT_TYPE_FLOAT_DIMENSION, /**< The FloatDimension type */ - VARIANT_TYPE_FLOAT_MATRIX4 /**< The FloatMatrix4 type */ + VARIANT_TYPE_FLOAT_MATRIX4, /**< The FloatMatrix4 type */ + VARIANT_TYPE_FLOAT_POINT3, /**< The FloatPoint3 type @b Since: @b 2.1 */ + VARIANT_TYPE_FLOAT_VECTOR4 /**< The FloatPoint3 type @b Since: @b 2.1 */ }; /** @@ -94,765 +98,828 @@ class _OSP_EXPORT_ Variant { public: /** - * This is the default constructor for this class. - * - * @since 2.0 - */ + * This is the default constructor for this class. + * + * @since 2.0 + */ Variant(void); /** - * This is the copy constructor for the %Variant class. - * - * @since 2.0 - * - * @param[in] value A reference to the %Variant instance to copy - */ + * This is the copy constructor for the %Variant class. + * + * @since 2.0 + * + * @param[in] value A reference to the %Variant instance to copy + */ Variant(const Variant& value); /** - * Initializes this instance of %Variant with the specified @c int value. - * - * @since 2.0 - * - * @param[in] value An @c int value - */ + * Initializes this instance of %Variant with the specified @c int value. + * + * @since 2.0 + * + * @param[in] value An @c int value + */ Variant(int value); /** - * Initializes this instance of %Variant with the specified unsigned @c int value. - * - * @since 2.0 - * - * @param[in] value An unsigned @c int value - */ + * Initializes this instance of %Variant with the specified unsigned @c int value. + * + * @since 2.0 + * + * @param[in] value An unsigned @c int value + */ Variant(unsigned int value); /** - * Initializes this instance of %Variant with the specified bool value. - * - * @since 2.0 - * - * @param[in] value A bool value - */ + * Initializes this instance of %Variant with the specified bool value. + * + * @since 2.0 + * + * @param[in] value A bool value + */ Variant(bool value); /** - * Initializes this instance of %Variant with the specified @c float value. - * - * @since 2.0 - * - * @param[in] value A @c float value - */ + * Initializes this instance of %Variant with the specified @c float value. + * + * @since 2.0 + * + * @param[in] value A @c float value + */ Variant(float value); /** - * Initializes this instance of %Variant with the specified @c double value. - * - * @since 2.0 - * - * @param[in] value A @c double value - */ + * Initializes this instance of %Variant with the specified @c double value. + * + * @since 2.0 + * + * @param[in] value A @c double value + */ Variant(double value); /** - * Initializes this instance of %Variant with the specified @c long value. - * - * @since 2.0 - * - * @param[in] value A @c long value - */ + * Initializes this instance of %Variant with the specified @c long value. + * + * @since 2.0 + * + * @param[in] value A @c long value + */ Variant(long value); /** - * Initializes this instance of %Variant with the specified unsigned @c long value. - * - * @since 2.0 - * - * @param[in] value An unsigned @c long value - */ + * Initializes this instance of %Variant with the specified unsigned @c long value. + * + * @since 2.0 + * + * @param[in] value An unsigned @c long value + */ Variant(unsigned long value); /** - * Initializes this instance of %Variant with the specified @c long @c long value. - * - * @since 2.0 - * - * @param[in] value A @c long @c long value - */ + * Initializes this instance of %Variant with the specified @c long @c long value. + * + * @since 2.0 + * + * @param[in] value A @c long @c long value + */ Variant(long long value); /** - * Initializes this instance of %Variant with the specified unsigned @c long @c long value. - * - * @since 2.0 - * - * @param[in] value An unsigned @c long @c long value - */ + * Initializes this instance of %Variant with the specified unsigned @c long @c long value. + * + * @since 2.0 + * + * @param[in] value An unsigned @c long @c long value + */ Variant(unsigned long long value); /** - * Initializes this instance of %Variant with the specified array of characters. - * - * @since 2.0 - * - * @param[in] pValue An array of characters value - */ + * Initializes this instance of %Variant with the specified array of characters. + * + * @since 2.0 + * + * @param[in] pValue An array of characters value + */ Variant(const char* pValue); /** - * Initializes this instance of %Variant with the specified array of Unicode characters. - * - * @since 2.0 - * - * @param[in] pValue An array of Unicode characters value - */ + * Initializes this instance of %Variant with the specified array of Unicode characters. + * + * @since 2.0 + * + * @param[in] pValue An array of Unicode characters value + */ Variant(const wchar_t* pValue); /** - * Initializes this instance of %Variant with the specified unsigned string value. - * - * @since 2.0 - * - * @param[in] value An unsigned string value - */ + * Initializes this instance of %Variant with the specified Tizen::Base::String value. + * + * @since 2.0 + * + * @param[in] value A Tizen::Base::String value + */ Variant(const Tizen::Base::String& value); /** - * Initializes this instance of %Variant with the specified unsigned datetime value. - * - * @since 2.0 - * - * @param[in] value An unsigned datetime value - */ + * Initializes this instance of %Variant with the specified Tizen::Base::DateTime value. + * + * @since 2.0 + * + * @param[in] value A Tizen::Base::DateTime value + */ Variant(const Tizen::Base::DateTime& value); /** - * Initializes this instance of %Variant with the specified unsigned color value. - * - * @since 2.0 - * - * @param[in] value An unsigned color value - */ + * Initializes this instance of %Variant with the specified Tizen::Graphics::Color value. + * + * @since 2.0 + * + * @param[in] value A Tizen::Graphics::Color value + */ Variant(const Tizen::Graphics::Color& value); /** - * Initializes this instance of %Variant with the specified unsigned point value. - * - * @since 2.0 - * - * @param[in] value An unsigned point value - */ + * Initializes this instance of %Variant with the specified Tizen::Graphics::Point value. + * + * @since 2.0 + * + * @param[in] value A Tizen::Graphics::Point value + */ Variant(const Tizen::Graphics::Point& value); /** - * Initializes this instance of %Variant with the specified floatpoint value. - * - * @since 2.0 - * - * @param[in] value A floatpoint value - */ + * Initializes this instance of %Variant with the specified Tizen::Graphics::FloatPoint value. + * + * @since 2.0 + * + * @param[in] value A Tizen::Graphics::FloatPoint value + */ Variant(const Tizen::Graphics::FloatPoint& value); /** - * Initializes this instance of %Variant with the specified rectangle value. - * - * @since 2.0 - * - * @param[in] value A rectangle value - */ + * Initializes this instance of %Variant with the specified Tizen::Graphics::Rectangle value. + * + * @since 2.0 + * + * @param[in] value A Tizen::Graphics::Rectangle value + */ Variant(const Tizen::Graphics::Rectangle& value); /** - * Initializes this instance of %Variant with the specified float-rectangle value. - * - * @since 2.0 - * - * @param[in] value A float-rectangle value - */ + * Initializes this instance of %Variant with the specified Tizen::Graphics::FloatRectangle value. + * + * @since 2.0 + * + * @param[in] value A Tizen::Graphics::FloatRectangle value + */ Variant(const Tizen::Graphics::FloatRectangle& value); /** - * Initializes this instance of %Variant with the specified dimension value. - * - * @since 2.0 - * - * @param[in] value A dimension value - */ + * Initializes this instance of %Variant with the specified Tizen::Graphics::Dimension value. + * + * @since 2.0 + * + * @param[in] value A Tizen::Graphics::Dimension value + */ Variant(const Tizen::Graphics::Dimension& value); /** - * Initializes this instance of %Variant with the specified float-dimension value. - * - * @since 2.0 - * - * @param[in] value A float-dimension value - */ + * Initializes this instance of %Variant with the specified Tizen::Graphics::FloatDimension value. + * + * @since 2.0 + * + * @param[in] value A Tizen::Graphics::FloatDimension value + */ Variant(const Tizen::Graphics::FloatDimension& value); /** - * Initializes this instance of %Variant with the specified float-matrix4 value. - * - * @since 2.0 - * - * @param[in] value A float-matrix4 value - */ + * Initializes this instance of %Variant with the specified Tizen::Graphics::FloatMatrix4 value. + * + * @since 2.0 + * + * @param[in] value A Tizen::Graphics::FloatMatrix4 value + */ Variant(const Tizen::Graphics::FloatMatrix4& value); /** - * This is the destructor for this class. - * - * @since 2.0 - */ + * Initializes this instance of %Variant with the specified Tizen::Graphics::FloatPoint3 value. + * + * @since 2.1 + * + * @param[in] value A Tizen::Graphics::FloatPoint3 value + */ + Variant(const Tizen::Graphics::FloatPoint3& value); + + /** + * Initializes this instance of %Variant with the specified Tizen::Graphics::FloatVector4 value. + * + * @since 2.1 + * + * @param[in] value A Tizen::Graphics::FloatVector4 value + */ + Variant(const Tizen::Graphics::FloatVector4& value); + + /** + * This is the destructor for this class. + * + * @since 2.0 + */ virtual ~Variant(void); /** - * Assigns the value of the specified instance to the current instance of %Variant. - * - * @since 2.0 - * - * @return A reference to the %Variant instance - * @param[in] rhs An instance of %Variant to copy - */ + * Assigns the value of the specified instance to the current instance of %Variant. + * + * @since 2.0 + * + * @return A reference to the %Variant instance + * @param[in] rhs An instance of %Variant to copy + */ Variant& operator =(const Variant& rhs); /** - * Assigns the value of the specified instance to the current instance of %Variant. - * - * @since 2.0 - * - * @return A reference to the %Variant instance - * @param[in] rhs An @c int value - */ + * Assigns the value to the current instance of %Variant. + * + * @since 2.0 + * + * @return A reference to the %Variant instance + * @param[in] rhs An @c int value + */ Variant& operator =(int rhs); /** - * Assigns the value of the specified instance to the current instance of %Variant. - * - * @since 2.0 - * - * @return A reference to the %Variant instance - * @param[in] rhs An unsigned @c int value - * - */ + * Assigns the value to the current instance of %Variant. + * + * @since 2.0 + * + * @return A reference to the %Variant instance + * @param[in] rhs An unsigned @c int value + * + */ Variant& operator =(unsigned int rhs); /** - * Assigns the value of the specified instance to the current instance of %Variant. - * - * @since 2.0 - * @return A reference to the %Variant instance - * @param[in] rhs A @c bool value - * - */ + * Assigns the value to the current instance of %Variant. + * + * @since 2.0 + * @return A reference to the %Variant instance + * @param[in] rhs A @c bool value + * + */ Variant& operator =(bool rhs); /** - * Assigns the value of the specified instance to the current instance of %Variant. - * - * @since 2.0 - * - * @return A reference to the %Variant instance - * @param[in] rhs A @c float value - * - */ + * Assigns the value to the current instance of %Variant. + * + * @since 2.0 + * + * @return A reference to the %Variant instance + * @param[in] rhs A @c float value + * + */ Variant& operator =(float rhs); /** - * Assigns the value of the specified instance to the current instance of %Variant. - * - * @since 2.0 - * - * @return A reference to the %Variant instance - * @param[in] rhs A @c double value - * - */ + * Assigns the value to the current instance of %Variant. + * + * @since 2.0 + * + * @return A reference to the %Variant instance + * @param[in] rhs A @c double value + * + */ Variant& operator =(double rhs); /** - * Assigns the value of the specified instance to the current instance of %Variant. - * - * @since 2.0 - * - * @return A reference to the %Variant instance - * @param[in] rhs A @c long value - * - */ + * Assigns the value to the current instance of %Variant. + * + * @since 2.0 + * + * @return A reference to the %Variant instance + * @param[in] rhs A @c long value + * + */ Variant& operator =(long rhs); /** - * Assigns the value of the specified instance to the current instance of %Variant. - * - * @since 2.0 - * - * @return A reference to the %Variant instance - * @param[in] rhs An unsigned @c long value - * - */ + * Assigns the value to the current instance of %Variant. + * + * @since 2.0 + * + * @return A reference to the %Variant instance + * @param[in] rhs An unsigned @c long value + * + */ Variant& operator =(unsigned long rhs); /** - * Assigns the value of the specified instance to the current instance of %Variant. - * - * @since 2.0 - * - * @return A reference to the %Variant instance - * @param[in] rhs A @c long @c long value - * - */ + * Assigns the value to the current instance of %Variant. + * + * @since 2.0 + * + * @return A reference to the %Variant instance + * @param[in] rhs A @c long @c long value + * + */ Variant& operator =(long long rhs); /** - * Assigns the value of the specified instance to the current instance of %Variant. - * - * @since 2.0 - * @return A reference to the %Variant instance - * @param[in] rhs An unsigned @c long @c long value - * - */ + * Assigns the value to the current instance of %Variant. + * + * @since 2.0 + * @return A reference to the %Variant instance + * @param[in] rhs An unsigned @c long @c long value + * + */ Variant& operator =(unsigned long long rhs); /** - * Assigns the value of the pointer to the current instance of %Variant. - * - * @since 2.0 - * - * @return A reference to the %Variant instance - * @param[in] pRhs A pointer to an array of characters - * - */ + * Assigns the value of the pointer to the current instance of %Variant. + * + * @since 2.0 + * + * @return A reference to the %Variant instance + * @param[in] pRhs A pointer to an array of characters + * + */ Variant& operator =(const char* pRhs); /** - * Assigns the value of the pointer to the current instance of %Variant. - * - * @since 2.0 - * - * @return A reference to the %Variant instance - * @param[in] pRhs A pointer to an array of Unicode characters - * - */ + * Assigns the value of the pointer to the current instance of %Variant. + * + * @since 2.0 + * + * @return A reference to the %Variant instance + * @param[in] pRhs A pointer to an array of Unicode characters + * + */ Variant& operator =(const wchar_t* pRhs); /** - * Assigns the value of the specified instance of Tizen::Base::String to the current instance of %Variant. - * - * @since 2.0 - * - * @return A reference to the %Variant instance - * @param[in] rhs An instance of Tizen::Base::String - */ + * Assigns the value of the specified instance of Tizen::Base::String to the current instance of %Variant. + * + * @since 2.0 + * + * @return A reference to the %Variant instance + * @param[in] rhs An instance of Tizen::Base::String + */ Variant& operator =(const Tizen::Base::String& rhs); /** - * Assigns the value of the specified instance of Tizen::Base::DateTime to the current instance of %Variant. - * - * @since 2.0 - * - * @return A reference to the %Variant instance - * @param[in] rhs An instance of Tizen::Base::DateTime - */ + * Assigns the value of the specified instance of Tizen::Base::DateTime to the current instance of %Variant. + * + * @since 2.0 + * + * @return A reference to the %Variant instance + * @param[in] rhs An instance of Tizen::Base::DateTime + */ Variant& operator =(const Tizen::Base::DateTime& rhs); /** - * Assigns the value of the specified instance of Tizen::Graphics::Color to the current instance of %Variant. - * - * @since 2.0 - * @return A reference to the %Variant instance - * @param[in] rhs An instance of Tizen::Graphics::Color - */ + * Assigns the value of the specified instance of Tizen::Graphics::Color to the current instance of %Variant. + * + * @since 2.0 + * @return A reference to the %Variant instance + * @param[in] rhs An instance of Tizen::Graphics::Color + */ Variant& operator =(const Tizen::Graphics::Color& rhs); /** - * Assigns the value of the specified instance of Tizen::Graphics::Point to the current instance of %Variant. - * - * @since 2.0 - * @return A reference to the %Variant instance - * @param[in] rhs An instance of Tizen::Graphics::Point - */ + * Assigns the value of the specified instance of Tizen::Graphics::Point to the current instance of %Variant. + * + * @since 2.0 + * @return A reference to the %Variant instance + * @param[in] rhs An instance of Tizen::Graphics::Point + */ Variant& operator =(const Tizen::Graphics::Point& rhs); /** - * Assigns the value of the specified instance of Tizen::Graphics::FloatPoint to the current instance of %Variant. - * - * @since 2.0 - * @return A reference to the %Variant instance - * @param[in] rhs An instance of Tizen::Graphics::FloatPoint - */ + * Assigns the value of the specified instance of Tizen::Graphics::FloatPoint to the current instance of %Variant. + * + * @since 2.0 + * @return A reference to the %Variant instance + * @param[in] rhs An instance of Tizen::Graphics::FloatPoint + */ Variant& operator =(const Tizen::Graphics::FloatPoint& rhs); /** - * Assigns the value of the specified instance of Tizen::Graphics::Rectangle to the current instance of %Variant. - * - * @since 2.0 - * @return A reference to the %Variant instance - * @param[in] rhs An instance of Tizen::Graphics::Rectangle - */ + * Assigns the value of the specified instance of Tizen::Graphics::Rectangle to the current instance of %Variant. + * + * @since 2.0 + * @return A reference to the %Variant instance + * @param[in] rhs An instance of Tizen::Graphics::Rectangle + */ Variant& operator =(const Tizen::Graphics::Rectangle& rhs); /** - * Assigns the value of the specified instance of Tizen::Graphics::FloatRectangle to the current instance of %Variant. - * - * @since 2.0 - * @return A reference to the %Variant instance - * @param[in] rhs An instance of Tizen::Graphics::FloatRectangle - */ + * Assigns the value of the specified instance of Tizen::Graphics::FloatRectangle to the current instance of %Variant. + * + * @since 2.0 + * @return A reference to the %Variant instance + * @param[in] rhs An instance of Tizen::Graphics::FloatRectangle + */ Variant& operator =(const Tizen::Graphics::FloatRectangle& rhs); /** - * Assigns the value of the specified instance of Tizen::Graphics::Dimension to the current instance of %Variant. - * - * @since 2.0 - * @return A reference to the %Variant instance - * @param[in] rhs An instance of Tizen::Graphics::Dimension - */ + * Assigns the value of the specified instance of Tizen::Graphics::Dimension to the current instance of %Variant. + * + * @since 2.0 + * @return A reference to the %Variant instance + * @param[in] rhs An instance of Tizen::Graphics::Dimension + */ Variant& operator =(const Tizen::Graphics::Dimension& rhs); /** - * Assigns the value of the specified instance of Tizen::Graphics::FloatDimension to the current instance of %Variant. - * - * @since 2.0 - * @return A reference to the %Variant instance - * @param[in] rhs An instance of Tizen::Graphics::FloatDimension - */ + * Assigns the value of the specified instance of Tizen::Graphics::FloatDimension to the current instance of %Variant. + * + * @since 2.0 + * @return A reference to the %Variant instance + * @param[in] rhs An instance of Tizen::Graphics::FloatDimension + */ Variant& operator =(const Tizen::Graphics::FloatDimension& rhs); /** - * Assigns the value of the specified instance of Tizen::Graphics::FloatMatrix4 to the current instance of %Variant. - * - * @since 2.0 - * @return A reference to the %Variant instance - * @param[in] rhs An instance of Tizen::Graphics::FloatMatrix4 - */ + * Assigns the value of the specified instance of Tizen::Graphics::FloatMatrix4 to the current instance of %Variant. + * + * @since 2.0 + * @return A reference to the %Variant instance + * @param[in] rhs An instance of Tizen::Graphics::FloatMatrix4 + */ Variant& operator =(const Tizen::Graphics::FloatMatrix4& rhs); /** - * Checks whether the specified instance and current instance of %Variant have equal values. - * - * @since 2.0 - * @return @c true if the two instances of %Variant are equal, @n - * else @c false - * @param[in] lhs An instance of %Variant - * @param[in] rhs An instance of %Variant - */ + * Assigns the value of the specified instance of Tizen::Graphics::FloatPoint3 to the current instance of %Variant. + * + * @since 2.1 + * @return A reference to the %Variant instance + * @param[in] rhs An instance of Tizen::Graphics::FloatPoint3 + */ + Variant& operator =(const Tizen::Graphics::FloatPoint3& rhs); + + /** + * Assigns the value of the specified instance of Tizen::Graphics::FloatVecto4 to the current instance of %Variant. + * + * @since 2.1 + * @return A reference to the %Variant instance + * @param[in] rhs An instance of Tizen::Graphics::FloatVector4 + */ + Variant& operator =(const Tizen::Graphics::FloatVector4& rhs); + + /** + * Checks whether the specified instance and current instance of %Variant have equal values. + * + * @since 2.0 + * @return @c true if the two instances of %Variant are equal, @n + * else @c false + * @param[in] lhs An instance of %Variant + * @param[in] rhs An instance of %Variant + */ _OSP_EXPORT_ friend bool operator ==(const Variant& lhs, const Variant& rhs); /** - * Checks whether the specified instance and current instance of %Variant have different values. - * @since 2.0 - * - * @return @c true if the values of the two instances of %Variant are not equal, @n - * else @c false - * @param[in] lhs An instance of %Variant - * @param[in] rhs An instance of %Variant - * - */ + * Checks whether the specified instance and current instance of %Variant have different values. + * @since 2.0 + * + * @return @c true if the values of the two instances of %Variant are not equal, @n + * else @c false + * @param[in] lhs An instance of %Variant + * @param[in] rhs An instance of %Variant + * + */ _OSP_EXPORT_ friend bool operator !=(const Variant& lhs, const Variant& rhs); /** - * Gets the signed @c int equivalent of the current instance. - * - * @since 2.0 - * - * @return Signed @c int equivalent of the current instance - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_INT. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * The method returns @c 0 and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_INT. - * - */ + * Gets the signed @c int equivalent of the current instance. + * + * @since 2.0 + * + * @return Signed @c int equivalent of the current instance + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_INT. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * The method returns @c 0 and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_INT. + * + */ int ToInt(void) const; /** - * Gets the unsigned @c int equivalent of the current instance. - * - * @since 2.0 - * - * @return Unsigned @c int equivalent of the current instance - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_UINT. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * The method returns @c 0 and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_UINT. - * - */ + * Gets the unsigned @c int equivalent of the current instance. + * + * @since 2.0 + * + * @return Unsigned @c int equivalent of the current instance + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_UINT. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * The method returns @c 0 and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_UINT. + * + */ unsigned int ToUInt(void) const; /** - * Gets the @c bool equivalent of the current instance. - * - * @since 2.0 - * - * @return @c bool equivalent of the current instance - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_BOOL. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * The method returns @c false and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_BOOL. - * - */ + * Gets the @c bool equivalent of the current instance. + * + * @since 2.0 + * + * @return @c bool equivalent of the current instance + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_BOOL. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * The method returns @c false and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_BOOL. + * + */ bool ToBool(void) const; /** - * Gets the @c float equivalent of the current instance. - * - * @since 2.0 - * - * @return @c float equivalent of the current instance - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_FLOAT. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * The method returns @c 0 and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_FLOAT. - * - */ + * Gets the @c float equivalent of the current instance. + * + * @since 2.0 + * + * @return @c float equivalent of the current instance + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_FLOAT. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * The method returns @c 0 and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_FLOAT. + * + */ float ToFloat(void) const; /** - * Gets the @c double equivalent of the current instance. - * - * @since 2.0 - * - * @return @c double equivalent of the current instance - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_DOUBLE. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * The method returns @c 0 and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_DOUBLE. - * - */ + * Gets the @c double equivalent of the current instance. + * + * @since 2.0 + * + * @return @c double equivalent of the current instance + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_DOUBLE. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * The method returns @c 0 and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_DOUBLE. + * + */ double ToDouble(void) const; /** - * Gets the signed @c long equivalent of the current instance. - * - * @since 2.0 - * - * @return Signed @c long equivalent of the current instance - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_LONG. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * The method returns @c 0 and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_LONG. - * - */ + * Gets the signed @c long equivalent of the current instance. + * + * @since 2.0 + * + * @return Signed @c long equivalent of the current instance + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_LONG. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * The method returns @c 0 and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_LONG. + * + */ long ToLong(void) const; /** - * Gets the unsigned @c int equivalent of the current instance. - * - * @since 2.0 - * - * @return Unsigned @c long equivalent of the current instance - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_ULONG. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * The method returns @c 0 and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_ULONG. - * - */ + * Gets the unsigned @c int equivalent of the current instance. + * + * @since 2.0 + * + * @return Unsigned @c long equivalent of the current instance + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_ULONG. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * The method returns @c 0 and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_ULONG. + * + */ unsigned long ToULong(void) const; /** - * Gets the signed @c long @c long equivalent of the current instance. - * - * @since 2.0 - * - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_LONGLONG. - * - * @remarks The specific error code can be accessed using the GetLastResult() method. - * The method returns @c 0 and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_LONGLONG. - * - */ + * Gets the signed @c long @c long equivalent of the current instance. + * + * @since 2.0 + * + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_LONGLONG. + * + * @remarks The specific error code can be accessed using the GetLastResult() method. + * The method returns @c 0 and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_LONGLONG. + * + */ long long ToLongLong(void) const; /** - * Gets the unsigned @c long @c long equivalent of the current instance. - * - * @since 2.0 - * - * @return Unsigned @c long @c long equivalent of the current instance - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_ULONGLONG. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * The method returns @c 0 and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_ULONGLONG. - * - */ + * Gets the unsigned @c long @c long equivalent of the current instance. + * + * @since 2.0 + * + * @return Unsigned @c long @c long equivalent of the current instance + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_ULONGLONG. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * The method returns @c 0 and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_ULONGLONG. + * + */ unsigned long long ToULongLong(void) const; /** - * Gets the Tizen::Base::String representation of the value of the current instance. - * - * @since 2.0 - * - * @return A Tizen::Base::String representing the value of the current instance - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_STRING. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * The method returns String("") and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_STRING. - * - */ + * Gets the Tizen::Base::String representation of the value of the current instance. + * + * @since 2.0 + * + * @return A Tizen::Base::String representing the value of the current instance + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_STRING. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * The method returns String("") and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_STRING. + * + */ Tizen::Base::String ToString(void) const; /** - * Gets the Tizen::Base::DateTime representation of the value of the current instance. - * - * @since 2.0 - * - * @return A Tizen::Base::DateTime representing the value of the current instance - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_DATETIME. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * The method returns DateTime and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_DATETIME. - * - */ + * Gets the Tizen::Base::DateTime representation of the value of the current instance. + * + * @since 2.0 + * + * @return A Tizen::Base::DateTime representing the value of the current instance + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_DATETIME. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * The method returns DateTime and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_DATETIME. + * + */ Tizen::Base::DateTime ToDateTime(void) const; /** - * Gets the Tizen::Graphics::Color representation of the value of the current instance. - * - * @since 2.0 - * - * @return A Tizen::Graphics::Color representing the value of the current instance - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_COLOR. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * The method returns Color and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_COLOR. - * - */ + * Gets the Tizen::Graphics::Color representation of the value of the current instance. + * + * @since 2.0 + * + * @return A Tizen::Graphics::Color representing the value of the current instance + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_COLOR. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * The method returns Color and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_COLOR. + * + */ Tizen::Graphics::Color ToColor(void) const; /** - * Gets the Tizen::Graphics::Point representation of the value of the current instance. - * - * @since 2.0 - * - * @return A Tizen::Graphics::Point representing the value of the current instance - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_POINT. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * The method returns Point and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_POINT. - * - */ + * Gets the Tizen::Graphics::Point representation of the value of the current instance. + * + * @since 2.0 + * + * @return A Tizen::Graphics::Point representing the value of the current instance + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_POINT. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * The method returns Point and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_POINT. + * + */ Tizen::Graphics::Point ToPoint(void) const; /** - * Gets the Tizen::Graphics::FloatPoint representation of the value of the current instance. - * - * @since 2.0 - * - * @return A Tizen::Graphics::FloatPoint representing the value of the current instance - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_FLOATPOINT. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * The method returns FloatPoint and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_FLOATPOINT. - * - */ + * Gets the Tizen::Graphics::FloatPoint representation of the value of the current instance. + * + * @since 2.0 + * + * @return A Tizen::Graphics::FloatPoint representing the value of the current instance + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_FLOAT_POINT. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * The method returns FloatPoint and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_FLOAT_POINT. + * + */ Tizen::Graphics::FloatPoint ToFloatPoint(void) const; /** - * Gets the Tizen::Graphics::Rectangle representation of the value of the current instance. - * - * @since 2.0 - * - * @return A Tizen::Graphics::Rectangle representing the value of the current instance - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_RECTANGLE. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * The method returns Rectangle and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_RECTANGLE. - * - */ + * Gets the Tizen::Graphics::Rectangle representation of the value of the current instance. + * + * @since 2.0 + * + * @return A Tizen::Graphics::Rectangle representing the value of the current instance + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_RECTANGLE. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * The method returns Rectangle and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_RECTANGLE. + * + */ Tizen::Graphics::Rectangle ToRectangle(void) const; /** - * Gets the Tizen::Graphics::FloatRectangle representation of the value of the current instance. - * - * @since 2.0 - * - * @return A Tizen::Graphics::FloatRectangle representing the value of the current instance - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_FLOATRECTANGLE. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * The method returns FloatRectangle and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_FLOATRECTANGLE. - * - */ + * Gets the Tizen::Graphics::FloatRectangle representation of the value of the current instance. + * + * @since 2.0 + * + * @return A Tizen::Graphics::FloatRectangle representing the value of the current instance + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_FLOAT_RECTANGLE. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * The method returns FloatRectangle and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_FLOAT_RECTANGLE. + * + */ Tizen::Graphics::FloatRectangle ToFloatRectangle(void) const; /** - * Gets the Tizen::Graphics::Dimension representation of the value of the current instance. - * - * @since 2.0 - * - * @return A Tizen::Graphics::Dimension representing the value of the current instance - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_DIMENSION. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * The method returns Dimension and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_DIMENSION. - * - */ + * Gets the Tizen::Graphics::Dimension representation of the value of the current instance. + * + * @since 2.0 + * + * @return A Tizen::Graphics::Dimension representing the value of the current instance + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_DIMENSION. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * The method returns Dimension and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_DIMENSION. + * + */ Tizen::Graphics::Dimension ToDimension(void) const; /** - * Gets the Tizen::Graphics::FloatDimension representation of the value of the current instance. - * - * @since 2.0 - * - * @return A Tizen::Graphics::FloatDimension representing the value of the current instance - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_FLOATDIMENSION. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * The method returns FloatDimension and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_FLOATDIMENSION. - * - */ + * Gets the Tizen::Graphics::FloatDimension representation of the value of the current instance. + * + * @since 2.0 + * + * @return A Tizen::Graphics::FloatDimension representing the value of the current instance + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_FLOAT_DIMENSION. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * The method returns FloatDimension and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_FLOAT_DIMENSION. + * + */ Tizen::Graphics::FloatDimension ToFloatDimension(void) const; /** - * Gets the Tizen::Graphics::FloatMatrix4 representation of the value of the current instance. - * - * @since 2.0 - * - * @return A Tizen::Graphics::FloatMatrix4 representing the value of the current instance - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_FLOATMATRIX4. - * @remarks The specific error code can be accessed using the GetLastResult() method. - * The method returns FloatMatrix4 and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_FLOATMATRIX4. - * - */ + * Gets the Tizen::Graphics::FloatMatrix4 representation of the value of the current instance. + * + * @since 2.0 + * + * @return A Tizen::Graphics::FloatMatrix4 representing the value of the current instance + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_FLOAT_MATRIX4. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * The method returns FloatMatrix4() and generates E_INVALID_OPERATION exception if the current variant type is not VARIANT_TYPE_FLOAT_MATRIX4. + * + */ Tizen::Graphics::FloatMatrix4 ToFloatMatrix4(void) const; /** - * Checks whether the variant is empty. - * - * @since 2.0 - * - * @return @c true if the current instance is @c NULL_VARIANT, @n - * else @c false - */ + * Gets the Tizen::Graphics::FloatPoint3 representation of the value of the current instance. + * + * @since 2.1 + * + * @return A Tizen::Graphics::FloatPoint3 representing the value of the current instance + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_FLOAT_POINT3. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * The method returns FloatPoint3 and generates @c E_INVALID_OPERATION exception if the current variant type is not @c VARIANT_TYPE_FLOAT_POINT3. + * + */ + Tizen::Graphics::FloatPoint3 ToFloatPoint3(void) const; + + /** + * Gets the Tizen::Graphics::FloatVector4 representation of the value of the current instance. + * @since 2.1 + * + * @return A Tizen::Graphics::FloatVector4 representing the value of the current instance + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current variant type is not @c VARIANT_TYPE_FLOAT_VECTOR4. + * @remarks The specific error code can be accessed using the GetLastResult() method. + * The method returns FloatVector4() and generates E_INVALID_OPERATION exception if the current variant type is not VARIANT_TYPE_FLOAT_VECTOR4. + * + */ + Tizen::Graphics::FloatVector4 ToFloatVector4(void) const; + + /** + * Checks whether the variant is empty. + * + * @since 2.0 + * + * @return @c true if the current instance is NULL_VARIANT, @n + * else @c false + */ bool IsEmpty(void) const; /** - * Gets the type of the variant. - * - * @since 2.0 - * - * @return The variant type - */ + * Gets the type of the variant. + * + * @since 2.0 + * + * @return The variant type + */ VariantType GetType(void) const; /** - * Checks whether the current instance of %Variant equals the specified instance of %Variant. - * - * @since 2.0 - * - * @return @c true if the values of the current instance is equal to the value of the specified instance, @n - * else @c false - * @param[in] obj An instance of %Variant - * @remarks This method overrides Tizen::Base::Object::Equals(). This method uses the values of the %Variant to compare the two instances. - */ + * Checks whether the current instance of %Variant equals the specified instance of %Variant. + * + * @since 2.0 + * + * @return @c true if the values of the current instance is equal to the value of the specified instance, @n + * else @c false + * @param[in] obj An instance of %Variant + * @remarks This method overrides Tizen::Base::Object::Equals(). This method uses the values of the %Variant to compare the two instances. + */ virtual bool Equals(const Object& obj) const; /** - * Gets the hash value of the current instance. - * - * @since 2.0 - * - * @return The hash value of the current instance - * @remarks Two equal instances must return the same hash value. For better performance, the used hash function must generate a random distribution for all inputs. - */ + * Gets the hash value of the current instance. + * + * @since 2.0 + * + * @return The hash value of the current instance + * @remarks Two equal instances must return the same hash value. For better performance, the used hash function must generate a random distribution for all inputs. + */ virtual int GetHashCode(void) const; public: diff --git a/inc/FUiVerticalBoxLayout.h b/inc/FUiVerticalBoxLayout.h old mode 100644 new mode 100755 index 3330f48..041b7c0 --- a/inc/FUiVerticalBoxLayout.h +++ b/inc/FUiVerticalBoxLayout.h @@ -251,6 +251,21 @@ public: */ result SetSpacing(Control& childControl, int space); + /* + * Sets the space between the specified control and its predecessor. + * + * @since 2.1 + * + * @return An error code + * @param[in] childControl The control for which the space is set + * @param[in] space The space + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c childControl parameter is not a child of the container that owns the layout. + * @exception E_SYSTEM A system error has occurred. + * @remarks By default, the spacing is set to @c 0. + */ + result SetSpacing(Control& childControl, float space); + /** * Sets the horizontal margins of the specified control. * @@ -267,6 +282,22 @@ public: */ result SetHorizontalMargin(Control& childControl, int left, int right); + /* + * Sets the horizontal margins of the specified control. + * + * @since 2.1 + * + * @return An error code + * @param[in] childControl The control for which the margins are set + * @param[in] left The left margin + * @param[in] right The right margin + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c childControl parameter is not a child of the container that owns the layout. + * @exception E_SYSTEM A system error has occurred. + * @remarks By default, the margins are set to @c 0. + */ + result SetHorizontalMargin(Control& childControl, float left, float right); + /** * Sets the width of the specified control with the fixed length. * @@ -281,6 +312,20 @@ public: */ result SetWidth(Control& childControl, int width); + /* + * Sets the width of the specified control with the fixed length. + * + * @since 2.1 + * + * @return An error code + * @param[in] childControl The control for which the width is set + * @param[in] width The value of the width + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c childControl parameter is not a child of the container that owns the layout. + * @exception E_SYSTEM A system error has occurred. + */ + result SetWidth(Control& childControl, float width); + /** * Sets the width of the specified control with the fitting policy. * @@ -309,6 +354,20 @@ public: */ result SetHeight(Control& childControl, int height); + /* + * Sets the height of the specified control with a fixed length. + * + * @since 2.1 + * + * @return An error code + * @param[in] childControl The control for which the height is set + * @param[in] height The value of the height + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c childControl parameter is not a child of the container that owns the layout. + * @exception E_SYSTEM A system error has occurred. + */ + result SetHeight(Control& childControl, float height); + /** * Sets the height of the specified control with the fitting policy. * diff --git a/inc/FUiWindow.h b/inc/FUiWindow.h old mode 100755 new mode 100644 index 3762ff1..2ecc4f8 --- a/inc/FUiWindow.h +++ b/inc/FUiWindow.h @@ -1,306 +1,382 @@ -// -// Open Service Platform -// Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. -// -// Licensed under the Flora License, Version 1.0 (the License); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://floralicense.org/license/ -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an AS IS BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// - -/** - * @file FUiWindow.h - * @brief This is the header file for the %Window class. - * - * This header file contains the declarations of the %Window class. - */ - -#ifndef _FUI_WINDOW_H_ -#define _FUI_WINDOW_H_ - -#include -#include -#include - -namespace Tizen { namespace Ui { namespace Animations { -class DisplayContext; -}}} - -namespace Tizen { namespace Ui -{ - -class _WindowImpl; - -/** - * @enum WindowState - * - * Defines the state of %Window. - * - * @since 2.0 - */ -enum WindowState -{ - WINDOW_STATE_INITIALIZED = 0x0000, /**< The initial state of the window */ - WINDOW_STATE_ACTIVATED = 0x0001, /**< The state indicates that the window is the topmost window */ - WINDOW_STATE_DEACTIVATED = 0x0002, /**< The state indicates that the window is not the topmost window */ -}; - -/** - * @enum WindowZOrderGroup - * - * Defines the Z order group of %Window. - * - * @since 2.0 - */ -enum WindowZOrderGroup -{ - WINDOW_Z_ORDER_GROUP_HIGHEST, /** The highest group for windows such as the call screen */ - WINDOW_Z_ORDER_GROUP_HIGH, /** The high qroup for windows such as the lock screen */ - WINDOW_Z_ORDER_GROUP_NORMAL, /** The default group of apps */ -}; - -/** - * @class Window - * @brief This class provides abstract top-level 'window' objects. - * - * @since 2.0 - * - * The %Window is a top-level window such as Controls::Frame, Controls::MessageBox, and Controls::Popup. - * The descendants of a %Window can exist outside of their applications's bounds. - * The %Window class is an abstract base class. - * - */ -class _OSP_EXPORT_ Window - : public Container -{ - -public: - /** - * This destructor overrides Tizen::Base::Object::~Object(). - * - * @since 2.0 - */ - virtual ~Window(void) = 0; - - /** - * Adds the listener instance. @n - * The added listener can listen to events on when they are fired. - * - * @since 2.0 - * - * @param[in] listener The event listener to add - * @see RemoveWindowEventListener() - */ - void AddWindowEventListener(Tizen::Ui::IWindowEventListener& listener); - - /** - * Removes a listener instance. @n - * The removed listener cannot listen to events when they are fired. - * - * @since 2.0 - * - * @param[in] listener The listener to remove - * @see AddWindowEventListener() - */ - void RemoveWindowEventListener(Tizen::Ui::IWindowEventListener& listener); - - /** - * Shows the %Window. - * - * @since 2.0 - * - * @final Although this method is virtual, it should not be overridden. - * If overridden, it may not work as expected. - * - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation, or - * this control is not 'displayable'. - * @exception E_SYSTEM A system error has occurred. - */ - virtual result Show(void); - - /** - * Sets the owner of the window. - * - * @since 2.0 - * - * @param[in] pControl The control - * @remarks The ownership of @c pControl is not transferred to this instance. It is the developer's responsibility to deallocate @c pControl even after calling this method. - */ - void SetOwner(Tizen::Ui::Control *pControl); - - /** - * @if VISPARTNER-OPERATOR - * Sets the Z order group of %Window. - * - * @since 2.0 - * - * @visibility partner-operator - * @privilege %http://tizen.org/privilege/uimanager - * - * @return An error code - * @param[in] windowZOrderGroup The Z order group of %Window - * @exception E_SUCCESS The method is successful. - * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method. - * @remarks If this method is not explicitly called, the Z order group of %Window is set to #WINDOW_Z_ORDER_GROUP_NORMAL. - * @endif - */ - result SetZOrderGroup(WindowZOrderGroup windowZOrderGroup); - - /** - * Gets the current state of the window. - * - * @since 2.0 - * - * @return The current state of the window - */ - WindowState GetWindowState(void) const; - - /** - * Gets the display context of the window. - * - * @since 2.0 - * - * @return A pointer to the DisplayContext instance - */ - Tizen::Ui::Animations::DisplayContext* GetDisplayContext(void) const; - -protected: - /** - * Initializes this instance of %Window. - * - * @since 2.0 - * - * @return An error code - * @param[in] rect The rectangle bounds to set - * @param[in] resizable Set to @c true to make the window resizable, @n - * else @c false - * @param[in] movable Set to @c true to make the window movable, @n - * else @c false - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG A specified input parameter is invalid. - * @remarks This method must be called from the derived classes's construct methods. - * @remarks If the @c resizable is @c false, IsResizable() returns @c false. - * @see IsResizable() - */ - result Construct(const Tizen::Graphics::Rectangle& rect, bool resizable = true, bool movable = true); - - /** - * Initializes this instance of %Window with the specified layout and rectangular region. - * - * @since 2.0 - * - * @return An error code - * @param[in] layout The layout for both the portrait and landscape mode - * @param[in] rect The location and size of the %window - * @param[in] resizable Set to @c true to make the window resizable, @n - * else @c false - * @param[in] movable Set to @c true to make the window movable, @n - * else @c false - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG A specified input parameter is invalid. - * @remarks This method must be called from the derived classes's construct methods. - * @remarks If the @c resizable is @c false, IsResizable() returns @c false. - * @see IsResizable() - * @see Tizen::Ui::Layout - * @see Tizen::Ui::Container::GetLayoutN() - */ - result Construct(const Tizen::Ui::Layout& layout, const Tizen::Graphics::Rectangle& rect, bool resizable = true, bool movable = true); - - /** - * Initializes this instance of %Window with the specified layouts and rectangular region. - * - * @since 2.0 - * - * @return An error code - * @param[in] portraitLayout The layout for the portrait mode - * @param[in] landscapeLayout The layout for the landscape mode - * @param[in] rect The location and size of the %Window - * @param[in] resizable Set to @c true to make the window resizable, @n - * else @c false - * @param[in] movable Set to @c true to make the window movable, @n - * else @c false - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG A specified input parameter is invalid. - * @remarks If the @c resizable is @c false, IsResizable() returns @c false. - * @see IsResizable() - * @see Tizen::Ui::Layout - * @see Tizen::Ui::Container::GetLayoutN() - * @see Tizen::Ui::Container::GetPortraitLayoutN() - * @see Tizen::Ui::Container::GetLandscapeLayoutN() - */ - result Construct(const Tizen::Ui::Layout& portraitLayout, const Tizen::Ui::Layout& landscapeLayout, const Tizen::Graphics::Rectangle& rect, bool resizable = true, bool movable = true); - - /** - * The object is not fully constructed after this constructor is called. For full construction, the Construct() method must be called right after calling this constructor. - * - * @since 2.0 - */ - Window(void); - -private: - // - // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects. - // - Window(const Window& rhs); - - // - // The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects. - // - Window& operator =(const Window& rhs); - -protected: - friend class _WindowImpl; - - // - // This method is for internal use only. Using this method can cause behavioral, - // security-related, and consistency-related issues in the application. - // - // This method is reserved and may change its name at any time without prior notice. - // - virtual void Window_Reserved1(void) {} - - // - // This method is for internal use only. Using this method can cause behavioral, - // security-related, and consistency-related issues in the application. - // - // This method is reserved and may change its name at any time without prior notice. - // - virtual void Window_Reserved2(void) {} - - // - // This method is for internal use only. Using this method can cause behavioral, - // security-related, and consistency-related issues in the application. - // - // This method is reserved and may change its name at any time without prior notice. - // - virtual void Window_Reserved3(void) {} - - // - // This method is for internal use only. Using this method can cause behavioral, - // security-related, and consistency-related issues in the application. - // - // This method is reserved and may change its name at any time without prior notice. - // - virtual void Window_Reserved4(void) {} - - // - // This method is for internal use only. Using this method can cause behavioral, - // security-related, and consistency-related issues in the application. - // - // This method is reserved and may change its name at any time without prior notice. - // - virtual void Window_Reserved5(void) {} -}; // Window - -}} // Tizen::Ui - -#endif //_FUI_WINDOW_H_ +// +// Open Service Platform +// Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. +// +// Licensed under the Flora License, Version 1.0 (the License); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://floralicense.org/license/ +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an AS IS BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +/** + * @file FUiWindow.h + * @brief This is the header file for the %Window class. + * + * This header file contains the declarations of the %Window class. + */ + +#ifndef _FUI_WINDOW_H_ +#define _FUI_WINDOW_H_ + +#include +#include +#include + +namespace Tizen { namespace Ui { namespace Animations { +class DisplayContext; +}}} + +namespace Tizen { namespace Ui +{ + +class _WindowImpl; + +/** + * @enum WindowState + * + * Defines the state of %Window. + * + * @since 2.0 + */ +enum WindowState +{ + WINDOW_STATE_INITIALIZED = 0x0000, /**< The initial state of the window */ + WINDOW_STATE_ACTIVATED = 0x0001, /**< The state indicates that the window is the topmost window */ + WINDOW_STATE_DEACTIVATED = 0x0002, /**< The state indicates that the window is not the topmost window */ +}; + +/** + * @enum WindowZOrderGroup + * + * Defines the Z order group of %Window. + * + * @since 2.0 + */ +enum WindowZOrderGroup +{ + WINDOW_Z_ORDER_GROUP_HIGHEST, /**< The highest group for windows such as the call screen */ + WINDOW_Z_ORDER_GROUP_HIGH, /**< The high qroup for windows such as the lock screen */ + WINDOW_Z_ORDER_GROUP_NORMAL, /**< The default group of apps */ +}; + +/** + * @class Window + * @brief This class provides abstract top-level 'window' objects. + * + * @since 2.0 + * + * The %Window is a top-level window such as Controls::Frame, Controls::MessageBox, and Controls::Popup. + * The descendants of a %Window can exist outside of their applications's bounds. + * The %Window class is an abstract base class. + * + */ +class _OSP_EXPORT_ Window + : public Container +{ + +public: + /** + * This destructor overrides Tizen::Base::Object::~Object(). + * + * @since 2.0 + */ + virtual ~Window(void) = 0; + +public: + /** + * Adds the listener instance. @n + * The added listener can listen to events on when they are fired. + * + * @since 2.0 + * + * @param[in] listener The event listener to add + * @see RemoveWindowEventListener() + */ + void AddWindowEventListener(Tizen::Ui::IWindowEventListener& listener); + + /** + * Removes a listener instance. @n + * The removed listener cannot listen to events when they are fired. + * + * @since 2.0 + * + * @param[in] listener The listener to remove + * @see AddWindowEventListener() + */ + void RemoveWindowEventListener(Tizen::Ui::IWindowEventListener& listener); + + /** + * Shows the %Window. + * + * @since 2.0 + * + * @final Although this method is virtual, it should not be overridden. + * If overridden, it may not work as expected. + * + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation, or + * this control is not 'displayable'. + * @exception E_SYSTEM A system error has occurred. + */ + virtual result Show(void); + + /** + * Sets the owner of the window. + * + * @since 2.0 + * + * @param[in] pControl The control + * @remarks The ownership of @c pControl is not transferred to this instance. It is the developer's responsibility to deallocate @c pControl even after calling this method. + */ + void SetOwner(Tizen::Ui::Control *pControl); + + /** + * Gets the owner of the window. + * + * @since 2.1 + * + * @return The owner of the window + * @see SetOwner() + */ + Tizen::Ui::Control* GetOwner(void) const; + + /** + * Sets the Z order group of %Window. + * + * @since 2.0 + * + * @privlevel platform + * @privilege http://tizen.org/privilege/uimanager + * + * @return An error code + * @param[in] windowZOrderGroup The Z order group of %Window + * @exception E_SUCCESS The method is successful. + * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method. + * @remarks If this method is not explicitly called, the Z order group of %Window is set to #WINDOW_Z_ORDER_GROUP_NORMAL. + */ + result SetZOrderGroup(WindowZOrderGroup windowZOrderGroup); + + /** + * Gets the current state of the window. + * + * @since 2.0 + * + * @return The current state of the window + */ + WindowState GetWindowState(void) const; + + /** + * Gets the display context of the window. + * + * @since 2.0 + * + * @return A pointer to the DisplayContext instance + */ + Tizen::Ui::Animations::DisplayContext* GetDisplayContext(void) const; + +protected: + /** + * Initializes this instance of %Window. + * + * @since 2.0 + * + * @return An error code + * @param[in] rect The rectangle bounds to set + * @param[in] resizable Set to @c true to make the window resizable, @n + * else @c false + * @param[in] movable Set to @c true to make the window movable, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @remarks This method must be called from the derived classes's construct methods. + * @remarks If the @c resizable is @c false, IsResizable() returns @c false. + * @see IsResizable() + */ + result Construct(const Tizen::Graphics::Rectangle& rect, bool resizable = true, bool movable = true); + + /* + * Initializes this instance of %Window. + * + * @since 2.1 + * + * @return An error code + * @param[in] rect The rectangle bounds to set + * @param[in] resizable Set to @c true to make the window resizable, @n + * else @c false + * @param[in] movable Set to @c true to make the window movable, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @remarks This method must be called from the derived classes's construct methods. + * @remarks If the @c resizable is @c false, IsResizable() returns @c false. + * @see IsResizable() + */ + result Construct(const Tizen::Graphics::FloatRectangle& rect, bool resizable = true, bool movable = true); + + /** + * Initializes this instance of %Window with the specified layout and rectangular region. + * + * @since 2.0 + * + * @return An error code + * @param[in] layout The layout for both the portrait and landscape mode + * @param[in] rect The location and size of the %window + * @param[in] resizable Set to @c true to make the window resizable, @n + * else @c false + * @param[in] movable Set to @c true to make the window movable, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @remarks This method must be called from the derived classes's construct methods. + * @remarks If the @c resizable is @c false, IsResizable() returns @c false. + * @see IsResizable() + * @see Tizen::Ui::Layout + * @see Tizen::Ui::Container::GetLayoutN() + */ + result Construct(const Tizen::Ui::Layout& layout, const Tizen::Graphics::Rectangle& rect, bool resizable = true, bool movable = true); + + /* + * Initializes this instance of %Window with the specified layout and rectangular region. + * + * @since 2.1 + * + * @return An error code + * @param[in] layout The layout for both the portrait and landscape mode + * @param[in] rect The location and size of the %window + * @param[in] resizable Set to @c true to make the window resizable, @n + * else @c false + * @param[in] movable Set to @c true to make the window movable, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @remarks This method must be called from the derived classes's construct methods. + * @remarks If the @c resizable is @c false, IsResizable() returns @c false. + * @see IsResizable() + * @see Tizen::Ui::Layout + * @see Tizen::Ui::Container::GetLayoutN() + */ + result Construct(const Tizen::Ui::Layout& layout, const Tizen::Graphics::FloatRectangle& rect, bool resizable = true, bool movable = true); + + /** + * Initializes this instance of %Window with the specified layouts and rectangular region. + * + * @since 2.0 + * + * @return An error code + * @param[in] portraitLayout The layout for the portrait mode + * @param[in] landscapeLayout The layout for the landscape mode + * @param[in] rect The location and size of the %Window + * @param[in] resizable Set to @c true to make the window resizable, @n + * else @c false + * @param[in] movable Set to @c true to make the window movable, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @remarks If the @c resizable is @c false, IsResizable() returns @c false. + * @see IsResizable() + * @see Tizen::Ui::Layout + * @see Tizen::Ui::Layout + * @see Tizen::Ui::Container::GetLayoutN() + * @see Tizen::Ui::Container::GetPortraitLayoutN() + * @see Tizen::Ui::Container::GetLandscapeLayoutN() + */ + result Construct(const Tizen::Ui::Layout& portraitLayout, const Tizen::Ui::Layout& landscapeLayout, const Tizen::Graphics::Rectangle& rect, bool resizable = true, bool movable = true); + + /* + * Initializes this instance of %Window with the specified layouts and rectangular region. + * + * @since 2.1 + * + * @return An error code + * @param[in] portraitLayout The layout for the portrait mode + * @param[in] landscapeLayout The layout for the landscape mode + * @param[in] rect The location and size of the %Window + * @param[in] resizable Set to @c true to make the window resizable, @n + * else @c false + * @param[in] movable Set to @c true to make the window movable, @n + * else @c false + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG A specified input parameter is invalid. + * @remarks If the @c resizable is @c false, IsResizable() returns @c false. + * @see IsResizable() + * @see Tizen::Ui::Layout + * @see Tizen::Ui::Layout + * @see Tizen::Ui::Container::GetLayoutN() + * @see Tizen::Ui::Container::GetPortraitLayoutN() + * @see Tizen::Ui::Container::GetLandscapeLayoutN() + */ + result Construct(const Tizen::Ui::Layout& portraitLayout, const Tizen::Ui::Layout& landscapeLayout, const Tizen::Graphics::FloatRectangle& rect, bool resizable = true, bool movable = true); + + /** + * The object is not fully constructed after this constructor is called. For full construction, the Construct() method must be called right after calling this constructor. + * + * @since 2.0 + */ + Window(void); + +private: + // + // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects. + // + Window(const Window& rhs); + + // + // The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects. + // + Window& operator =(const Window& rhs); + +protected: + friend class _WindowImpl; + + // + // This method is for internal use only. Using this method can cause behavioral, + // security-related, and consistency-related issues in the application. + // + // This method is reserved and may change its name at any time without prior notice. + // + virtual void Window_Reserved1(void) {} + + // + // This method is for internal use only. Using this method can cause behavioral, + // security-related, and consistency-related issues in the application. + // + // This method is reserved and may change its name at any time without prior notice. + // + virtual void Window_Reserved2(void) {} + + // + // This method is for internal use only. Using this method can cause behavioral, + // security-related, and consistency-related issues in the application. + // + // This method is reserved and may change its name at any time without prior notice. + // + virtual void Window_Reserved3(void) {} + + // + // This method is for internal use only. Using this method can cause behavioral, + // security-related, and consistency-related issues in the application. + // + // This method is reserved and may change its name at any time without prior notice. + // + virtual void Window_Reserved4(void) {} + + // + // This method is for internal use only. Using this method can cause behavioral, + // security-related, and consistency-related issues in the application. + // + // This method is reserved and may change its name at any time without prior notice. + // + virtual void Window_Reserved5(void) {} +}; // Window + +}} // Tizen::Ui + +#endif //_FUI_WINDOW_H_ diff --git a/packaging/osp-uifw.spec b/packaging/osp-uifw.spec index c96e58a..caad97e 100755 --- a/packaging/osp-uifw.spec +++ b/packaging/osp-uifw.spec @@ -3,8 +3,8 @@ Name: osp-uifw Summary: The UI Framework library of OSP -Version: 1.2.0.0 -Release: 44 +Version: 1.2.1.0 +Release: 59 Group: TO_BE/FILLED_IN License: TO BE FILLED IN Source0: %{name}-%{version}.tar.gz @@ -26,11 +26,7 @@ BuildRequires: pkgconfig(ecore) BuildRequires: pkgconfig(ethumb) BuildRequires: pkgconfig(ewebkit2) BuildRequires: pkgconfig(xdamage) -%ifarch %{ix86} -BuildRequires: pkgconfig(egl) -%else BuildRequires: pkgconfig(gles20) -%endif BuildRequires: pkgconfig(fribidi) BuildRequires: pkgconfig(freetype2) BuildRequires: pkgconfig(glib-2.0) @@ -38,7 +34,7 @@ BuildRequires: pkgconfig(harfbuzz) BuildRequires: pkgconfig(icu-i18n) BuildRequires: pkgconfig(libdri2) BuildRequires: pkgconfig(libdrm) -BuildRequires: pkgconfig(libdrm_slp) +BuildRequires: pkgconfig(libtbm) BuildRequires: pkgconfig(libpng) BuildRequires: pkgconfig(libwbxml2) BuildRequires: pkgconfig(osp-appfw) @@ -58,6 +54,7 @@ BuildRequires: libexif-devel BuildRequires: liblua-devel BuildRequires: libtiff-devel BuildRequires: tolua++-devel +BuildRequires: pkgconfig(feedback) # runtime requires Requires: capi-appfw-application diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_Title_btn.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_Title_btn.9.png deleted file mode 100755 index 637904c910fea232d361d3c2c2ed6df5be15fde1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2963 zcmV;E3vBd>P)KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z0002KNklST5QSkgN-73GqGA{}V2OW>w6sWBg$zKLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z0002ONklA3=!KFDFSvZL! z0s$kz2Z402Q1#{9`=yo-w^W^~Isq#I?*dXlO+q`X!u=f}U?<>uFqmc)u-gFw)&lwy z!y#V4ItGR>hC_xJm@*l%S!0ERRIjsngHgR`AAySi_iTaxs{@$%F08~~P}hH{nxl8OKT N002ovPDHLkV1mnVeQ^K) diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_arrow_button_press_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_arrow_button_press_bg.9.png deleted file mode 100755 index 27b873b9308ad6783b97ef851ff6abea61be02b0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 976 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 QN&o-=07*qoM6N<$g7gD^3IG5A diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_badge_bg.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_badge_bg.#.png new file mode 100755 index 0000000000000000000000000000000000000000..449cf8d2eabe6f1befc40b4cf6393756db667843 GIT binary patch literal 3328 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 KMNUMnLSTZXpe;-Q literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_badge_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_badge_bg.9.png deleted file mode 100644 index c1bf3337e8aabb4453018779fdc937eccfdaa536..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1423 zcmbVMdrTX396y0MAz^e3GQf$q+XGpk_n_CuNtw4^JL+tyZ4EdR+|fJWpzW3GK?{b3 z;Ujze;c#)1xsXBva}W#@F(I(P7BjNI68>N;ab}c}X&uH9g+d&0UV);2kePVN-S74J zd_UjU@6K4vM-vk=5&!^5G!{};X*?jkdtZ7{`j#e@rAkA(s4o$1e7WeO1r{I~zKjKp zF1muXvNTg)bDPZvfY@@*ULuy5-Xa{lOHM~Ha=*(Xu>m0eu-`*Fs#y^%V=Fkf7J4!? z0)ZT(g^F<#V)E$NO0KX$U~LU%yQ87np<$rI1z^6PkPNt3kp}%Pr`t>Twa}VfLYham zVF+AJSi&~&q zuS4KGBFDSIh()@LuNAeB?0C|Szg^MxWn$s3|b;H09^PKtNbx>&bpq_mK9B4;>;(37MZ zQR$V2Je<;FD5^G4q(Pz4VLBXFU`jk{V@qxxf}s>b;(DnNs2)?}DwP4nDN?D%@+b_8 za*b}UNV^?uRF{kBu5&fdT%h_%gxR`S4Y2*UEvN51o~R%EO{-2*>d{#M1im# z2wylDZ@br0rIB^4E)3~Av7OI)Qu}`Ss(<3l%;zn`?K_BH2Yap^oNw$2Y&)C1IBRXS zr!T&t?DX`dDH~NM&eet$w}zdjfg1_xBC`9{fywtr3AK>3RPb5y!}%4pH>Wo1LH4_8 zUAC2M@{2U; L&D7UNPBi}wMp6hw diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_badge_bg_ef.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_badge_bg_ef.#.png new file mode 100755 index 0000000000000000000000000000000000000000..2ac679e8ff5a2b8245faa87cdf4bab1ac74af204 GIT binary patch literal 4278 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 Y0MntTYz4nNp#T5?07*qoM6N<$g0zJLO8@`> literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_badge_bg_ef.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_badge_bg_ef.9.png deleted file mode 100644 index 776d7f51d646ca3fe08db18976daf0d8f641353e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2362 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 HP6Gfry(8$;Je51Pnr{ z+6O4UA2?O1h)o4WsI82xR7OYXU>yn;u!D$#fJk|?V7o!U{wUp<-S08yoO|y5?l)T! z9ktQjg=p$L_i`rP&D!cJOPg6t1y(Nv|(swR7bE$BtfuQr&MJkIIsmt*Jy>5p>MBK0F7Em zQLtbL)`cM%noT)+BsM2XuFA<&@zj*yAV6T|69OoLD*-dQO>5wrg_IdxJ~6j#gA`x} zf@caTuT3Su(LflcM*tQL@>fA@I>2Vq=uC*m`B343529E3aAZRj~Xr=%frcVdyJRT2(7$Ae;Payma*;-s__SYJG<`l$; zL8aH|a1EvfY>LV)m=PCJ2&b=8Ky~x7TElFah=PG;r4FRiAX`dvKp6giD2mRb4Y&+> z4f1Rq0?H5rX4I>QgG=+Vh0^iE^oSD2^l}W_Hdn>y3=GE%8JG?Ti)GR1fI_2H zVA zpzUD)bd{?+$Lv^B$8pf@JL4vM*1uQ4MQ7Tn0xz7;odW6%7n* zyA&A68!jyz7!(-B1`Y?L$1QX0ZE9Pp6+H4*B}l450$MzFJr@}(jimT)*JJW8mTO*cyH*ZUanYc!+_Lk=2gcSi z`iYQ(6E)4vXY2)wlPl`J59=VI?p_;LDSqz%q`Soac6Ev;78;k&F3nk#JLMUa`qbBM zhi6jZ73U7vJG&?Mp1pZ0W@MPEtZK>GZ0#(Flr^n7qbxw04pzV(wEbhHeoMQSX4t9V zAIb516PxY5R;K3mwu(%@+bf)tVY=Im0Z#3ntS4{*c~nqqDLe8JdyL$0W)Zd6l7A06 zv7K=t>&TkCX2+|MLstT5cY;Km)Ak73mu63bRL0l{`rt7J=Q|Wh;(rZocloR$j$5s2IQMcg zCCCzOrfgV~s!*XX>rdX!9m~1Jc;M4V8x@TDJ)J5nx!DrqdZN5PxG;Y0__IT`ovyFO zzv-2I7`@i5ydu3N!ma*nU|Z$tkB2{}^f2qF(v=gk4T9Z+BCv6US9-JdH^nwkO_TsX zkf^pSudE3NR;LxcSXVcFtgg!~rRVRV3Qp(F++QNzHHYj-vE0=cS4~WFNB0$@BY!!K vc`ZTKbu{`M$EGhIe9rkwHSRn5HOYbGJ@xiI%ahh%+b=>I9wojQn!4*BtJsGh diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_btn_circle_bg_p_ef.png b/res/common/usr/share/osp/bitmaps/480x800/00_btn_circle_bg_p_ef.png deleted file mode 100755 index 30b56bac90afa5e4d47fffb8fe902ebab06f44fa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1705 zcmeAS@N?(olHy`uVBq!ia0vp^Iv~u!1|;QLq8NdcWQl7;NpOBzNqJ&XDuZK6ep0G} zXKrG8YEWuoN@d~6R2v2cW~I!Kh>{3jAFJg2T)jk)8oi3#0-$aN1{?c|g2d$P)DnfH z)bz|eTc!8A_bVx6rr0WloBA5~7C5J7WO`H;r3P2|g(O#HCtIc{+1n}DR9FEG$W1Lt zRH(?!$t$+1uvG$^YXxM3g!Ppaz)DK8ZIvL7itr6kaLzAERWQ{v&`mZlGgL4$(K9qL zur#sMQ7|$vG|)FR(l;>IH8ij?HMcS_RDc2{plwAdX;wilZcw{`JX@uVl9B=|ef{$C za=mh6z5JqdeM3u2OML?)eIp}XpbFjM%Dj@q3f;V7Wta&rsl~}fnFS@8`FRQ;6BCp2 zOG|8(fG&l2A-4c-Y+f-mn1BJMUy)d#Z>VPg@)As;uP=V3xw&xF#U(+h2=`(&xHzP; zAXPsowK%`DC>a=WY04n03ap%qQWHz^i$e1Ab6}wukda@KU!0L&px_*As%NMWo|%`D zUtSDW@9S&jnO9trn3tUD>0+w{G(j&jGsVil$i>{m(bUz{+|13;(ACh=*u=uZ!rZ{k z+0@0<$jB6?*Cju>G&eP`1g19yq1O$kUQklVEdbi=l3J8mmYU*Ll%J~r_OewbZnrq& zG!Lpb1-DyVaO%|uIz}H9u}BdO69T3l5EGtkfgE_kPt60S_99@i7L)NP0p=E2PZ!6K zid$D^#^zr(kZ66Zb~|d-p&v8KE_yaNI58D63yFLD{%_A%*qq>WAnI0M>D^muy_Wa- zOp`Y~+gvF1QX^{1vHt$}{oC$yXfECE8-DusCT)%1Oo}cm??0D)xS+}Jy;JQAfmfd* z*`pl819*HFDt_Va@{$ZuX*=4xc0I=~{|(+5e7c-V8(0tPB^>{@K+>eaughYNw8Wb8 zh1I9+&%eCa$|!y5>Wvxd`xx&&^jPuy{)K-D$_E(s_TM&?p6igzl%4LpE9=m#$z zwt+1|`j?gKq0R0y8$usE{?;}#Ax3x&=iVikV<&ESr*8RYmT=;s2@xR%2fL1ZQ4PNs z@*sV}srLFAd0~8Jse-rfMRT9o!TI9NnqvVwjGs1Umd`!x&N8DT?N?%z7UYhP0Jl-z{GHSaem9w=1WFmcJ!h0o^A zdV2PlMUKP@AMVZx=UJZq63RSayli5ab3=6I0b#k=rZ$ntmbq(lRtSbqi(R%uO{D6O zb)(_?wl|@(mq$Om5nJlfcd0C!d0oZ2SiVWywt60j@7dL;J)QMz)Dos*4!_7JFD!~~ zKEI@}dEQIE7e)OG1JjS~Sa-CsbmC8eQ}b#Uo!%?u?7U%Z>b>C2O<~<9%3l~hw!C4m zr7d>h+Z_Q<+3jVL{g<2z_5YC(te(O9`ex>v{q<)ec{yZhx zdd&%+m8mCdH~YnMm2K4H;bIhy+F5wOE$!a^(!`mO@76J0U_UN)Fr00HkCyBX2EFnnD}HYdzZ)O4{hjxV bct$pcPxqrOb96h|L6wK6tDnm{r-UW|8jhLG diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_01.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_01.#.png new file mode 100755 index 0000000000000000000000000000000000000000..095e55011d6ce9bc389ac67346f623f0bd659bfd GIT binary patch literal 1176 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 OnNmrt_@rp_&OZPVP#2p3 literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_01_ef.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_01_ef.9.png deleted file mode 100644 index ec4b7755ef92933bb38123eebd7bbfac984b3db3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2680 zcmbVOX;4$=8ji9PmVmghh%pEPk{v=40U-%t4LbrMlmv1}B9Np>fFz(-HgPE}77>CP zL93#GXa&(yR>fi|ARw08qbF76%9eSZvv+ z_W?H$NF#|C5iNW=Bdc@w&qAv}wKv3I5l>wdRtiOsn3f9g zC4LllnEC|4=CO%564?do>Wn8*ovGd!G@68UMUx0FID!`iOGTk^Yc~Fli+9GLsa_b0 zGnMRxMtfsOSdupZOCVsVcrOf|L|Ehc@x>ArKM`2d<*9W)a>@V5C6Yw|OCk_O2m~o> z9T375NCaZ8KnNv=yCBfeC?20J$PllV=R>p0hm{Ui@`=0KWRhh}2gj!~Sar5J}eL59A92}lu zHNgl#hH&9#`Wqn{H^`y5Tsxw!_(dQ?63g(t*Zs*{y=~^x7nmEii#oHiV7oHg?oEvZ z-P5P{xBgCuhE$q1?hJlI>l<5KJkUFze&DRYAu10o#lX|h1Qd>_4@u=N6&>Zvt3UeYZO`uZv414t)v98p=P(?o2^4T2)HNO zdC5DM7^=mc@PW$9>ood$%6jaMyu{~E$h7V#&VwuTZT(E)y08twcL}-&n`*vI_+mH? zYveec%U@C)6n@TXdO1U*Byp@qt_}MSO!dH z<8M!QY-jqM00`dfjgM8P;7!|SHRJL4vFZG0EnsG}bYw!#)l$sLC;- z-FkZJWS-3?@gegnuDuy!RGO|WJ_)w-gT0&hr7J$iz94;S$YgrTtsL~lA?$NjOkY>m zVSvlEXJRZIPnBC(qDn%(ahQF?#@z4!D3 z2Im8HGsa#OuJehJ-D+yuZDcKrYKR=SaQpemz(Db>wC+>;l6PM_cG6qHGJuUYc7^RA zX)S=^Qj9<{} zv-=(-VH9QA0~Z;dJCBdqPGOzQYN%e2N8M3%g$<338&J~CGtJ71ARix{+i!<2goZ*Q zo6q$J#GJgg`HZ<|?RParrS+S716z;ecp?~Yfs2l$Q5Az_q3kNBf2+7az`Mx+xiPx`gq&9sl-;I#O* zm0GWqT3-o1^4RB;O4v|aO33>4`LWp|*4HPBTKmk=Y%54g_6>gsBIc@idbm%b@x?0#?Yy1U@e z&`6{E#X)@Y3VFeZe82;buNwXB`Q&7kd}?SoXvin>OySF3W1UNe?%mef*>~yL=mBE! zI3ZW`)lA6pA2Sp8RVtOT@LTd$CSNpcsqn)^hj%KCcKVLr1#Nmr_?<36b?JxxsWCoT_eR?gkbE$r;{zRN^8YHO4#0<39T@WQ&O1&H)ly&WC9 zs#ZMTO_%xy99=3}0JFF`e<63S~TMdE7jA@7|#o%Zsrr zgruBCwRvus?~fP^2D2x6cULfamN zQU3bHB_JqA*khgse(Wsc%h7gLMMe?mkJf~q7oL*HOq<{)<#O}d^uS4rgQI5)(_ za1+qsOAn81At%!ex8uy=xaef(a(GF4)A^e|jaE$eHY;23lGS>d@lGd* z!R^eFr?>V>=IdK&^7fOr4%PN7UoT$#4st;MY{u`c>kU91>Gv%22Am$R{tNnf2T`t) Hm^ps}WaM9_ diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_01_ef_dim.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_01_ef_dim.#.png new file mode 100755 index 0000000000000000000000000000000000000000..934658a3fa75116da1045b184e8dfeb5376ee59d GIT binary patch literal 2021 zcmbVNYg7|w8Xk(EMNq2Paw`rAP!9{4Ozs&HB#;Es8lVs)=d2(hnLvbOLNY)?E9K^0 z*R}|F1GTmmDd9+|M%M!36$=O!h+xGdi&z!5V6lZ-ksT1+{o(14opWZs+w;87d;8Ap zh>ebPaq@Hm0Ki2OC5$6RH{$hN;z)e0#UF1b1`k{$$Kx?Io~tmRfIx+%qM$^pNJHaL zh02_D9pwRly;>ua<8tXbM2TrBidhWBq}3B_0N|}P=@rTh6bDn$G>wi=8av-i0yQc= zDUm6qO7#(Fx+W^mfX3%V%anN;O0J5uHWcKU5W;{K#TB4Qo2fG*CO&D-E<(&_w;>WZ z2f;J=q?b;~rLkZHWRP?HzPMDG4tXckC#gTxp#L{Su(LQI*hMRmAD$R`me6qQDW zu)-slbT)$%E@p^DG#C!2v*B0&C(TCnjtE>$4r(CI81OT?wau!zPLz!6+n zEatMqX<`wRv%r<;jJQIlL>F{5gzh{S{!1B4 zrie7pRsBCXg9vA!+2;74W?9%GI&gOSs`ZJ*tILDxh#O-duEww9?&AQkXq7}LkeP0m zBuHY&k#0HJ)^~V5UQoSnko_XEm`o9ne0?}2pA~gQZQy{*K)ZM9?o9bcdDDJeGgA<; zLUb^yHEczTFF7nIdV5w-h-rrx)|LFvkD4|mdKEkGd)m{RG`9J-#>twdfSMXlAFmSE zXI+)8r7wC49eS@FVz2b!-A-Ayf7N=$2jV_v(9%E0E^XU5gYE7< z;*B~M8ZPB69p%B6`h@Gg~^;9~IuT4Gd^cRrV9)U{b}2`&uWX*m+NEu5Y*e3W zu45iPd!w_{GBPq^yLt0NdjLvrpPG`pot$iW?@GO__6t+OQ9(mPL%A$)I4L>#OhNy- zH9N=5Ri7;WGqj>@x~sc;Ws+P@^)Ho--M{aLM(=d*>k-#;Zo7W}Y1I92Wv)UYmMZVnt23PaPnHB_yqDb7x!1>a@3l7{wj*>&#X_^>yqzg`GF zNiWH=7QCOtaKATjv0>kJGP5T>U^#G?wPn=-rL)gBzPU@QZSfBdmM#AI)4NVX)8yk` zNM>gG5APPL&R6pmg)Od#j*foVjj-8iP0P=G_npda|67Uwc;?pc$SB8D)kvi!fYrI$ z+uQB;$;siiUl6lHJx~OO1(Ut^?p+QwX4Z{hh8KfuG}I# zBRPL<=n0mY>26;LYz!=`=D4@38_J3-wY4(Zfp(8j|23|D?Jidy-RbWiupNBks&8OI zaB%sZjy=MR&!fKXR;krjL#Why?mj-Y=SK_utEJ_3Up-`B9(TQ+lX6(I^UJ^Gfa4uM z$pSaKEt?_Rbd}`+o%ipy{E+2vJXNr~aTCL7Yf}@nA!X8#J83=g%LaaHH>9(USitdZ z^>SWmhx(gZ3d#P*keck?LH!cfx2%^GpKR${edxuP;6C1sz6{CdHL*uHk7a<~Vez>W zennw`3O~1jb$~U6MgIX+d@xP` literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_01_ef_dim.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_01_ef_dim.9.png deleted file mode 100644 index 0e5238a5a9f634ff8d96f7721de3a9742ed1cdb7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2680 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 F{ci=qV6y-K diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_01_ef_press.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_01_ef_press.#.png new file mode 100755 index 0000000000000000000000000000000000000000..ba91ca2f8ec4e1a9ef003271387875bec76d478d GIT binary patch literal 1686 zcmeAS@N?(olHy`uVBq!ia0vp^B0wy~!3HF^H`mkxDajJoh?3y^w370~qErUQl>DSr z1<%~X^wgl##FWaylc_cg49sbnArU1JzCKpT`MG+DAT@dwxdlMo3=B5*6$OdO*{LN8 zNvY|XdA3ULckfqH$V{%1*XSQL?vFu&J;D8jzb> zlBiITo0C^;Rbi_HHrEQs1_|pcDS(xfWZNo192Makpx~Tel&WB=XRMoSU}&gdW~OIo zVrph)sH0$HU}&Uo07PcGh9*{~W>!Y#3Q(W~w5=#5%__*n4QdyVXRDM^Qc_^0uU}qX zu2*iXmtT~wZ)j<02{OaTNEfI=x41H|B(Xv_uUHvof=g;~a#3bMNoIbY0?5R~r2Ntn zTP2`NAzsKW@b!fooL3ADC}5E3S0onb8|oS8=jMX^1y)^L5|oN?23FO@A(aKG`a!A1 z`K3k4!1zd0hG_s$k5Qq*xb;`($vh-(Z$%!z|ah41~$E}Zf+)y&W48OZmt%FhOS0V=9aFm z&PJ}LCT>Osj?S(yy`Fi+C5d^-sW5vpf%Zc68sODyYQIiTYT_2~brHzU=H@@2doG*pS6t$x$>r(K z?im|@zssL&AhF|{bX($y<3UEpUhZ~DWVw8R>w`!J|F^#QJG(vaDps2w+Rw9Q<}yj` zsb2g-okvWUhOq5$Nttx=$=9NtHS$*J3xA7Qn0`@u%jx;Rb8lRHuZz-rh3^ga2kcK7 z-DwcF&?s7b(L#=^HP6}3|5L1!{D*a6tMB%@Esj^*-s$`9=ZoXI3CtD@XPAr?Y}qbJ zPw;2HE%wlB|NZ!H6*m2f<&9$3{+hg+=+Wk$*Cu~e?W2vri?3DFANGky>`(vs!E0$y zrKb9aw4!Fo1$;FOc3ByZHbmZwD*1gi>#OCy@Ta0;4`#0AL*r^G!k94~RK@oM5d<9lq$qqqEw>W1QfUnUqxyehHc zH!Rn-&3LJAKVR=fWQxs=D>b`PUzY8@%cz{7!S}miW$VP1vSw4b?@VT%VkfU^l6!3q zM`^XYllRRHHP&enRnF~N?5U=V3umPiUb=1hN}IjX%Xovb3dM~-$|`AqAN6)}ePyG^Wg+%~Z}uWyKa^n70T z%ICgIgEsw3ZlBQjM{WA)vzyQToN?USp(WGI*(1>6&|WoujG75wwz=kXpK_ zF!zh(g)Nzj=l;F5BKNUe<~zT?cg$S>a~m+|NvtfE>TCE4swq5O{an^LB{Ts5bQyEz literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_01_ef_press.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_01_ef_press.9.png deleted file mode 100644 index 2285b3e45cf838aaa25c616877d4329c661ad22d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2860 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 Udt0JyAOHXW07*qoM6N<$f&-4VrT_o{ diff --git a/res/common/usr/share/osp/bitmaps/720x1280/00_button_03_ef.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_03_dim_ef.#.png old mode 100644 new mode 100755 similarity index 100% rename from res/common/usr/share/osp/bitmaps/720x1280/00_button_03_ef.9.png rename to res/common/usr/share/osp/bitmaps/480x800/00_button_03_dim_ef.#.png diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_03_dim_ef.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_03_dim_ef.9.png deleted file mode 100644 index 4749b1f84b77ccd5ba8c1d3924ca0e95fa998321..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4529 zcmV;i5l-%jP)KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z000KuNklhB{o@%wX2y@PW0KeoZ60pb3JhUU1QlJNvS3rFR2D1{ zE0B;PAy~3Wi7K(Epc~j$fWHfS;c~e{Q9`akb=}t<+OYGD8zms*zlNY;O1NJre+q0{9IPHMa$1=1BmrEiM)ZmoHy@FEIK_CX-H-Qr;Nj zz4zU@5JDi1V_~fo^?F0ci7gZ+rx#{s=4t@GO+?FE0y6V7fD@(C*|pUxOULuMY?w-= z95aKN;T#i#!QK%7kdRCuNJ&gYAR>feDAza2squ+jPtMNn8w0RFM60&|0x$snQ7ryP zR?4ey<#V}^h!_BpBoWqHver=>oZ6FQB7#zqwF$gxFEumM`o=~omoGduGcy+g_&O2A z%nZ@B#77nvi^FTHm;av6^WK7CSNgPFyTrY3#J$(3yrvc0XsB|j)*5%8W zHnmY#QmK@4j>)-%oa2yN)oX%v@NqZS}lGscXhx;=F>6M|8 z?9cY>{rpm|^Hn-~X0}nU9^I@~eL9`l&|1}kz*u99Z#J7Mw*2Ks9(lY>M9*|8+#f~F zHDk16W>{;*K5md z(YQvMNoQ@<7~`$;WUZq(ir}4{mrDIEGdR4ton#$2_}FP<%n@hfgEq0S){%2eT5IoY zQUfsF4LD-04ZZhZ@5p;kQ50LPs})b&fX*>4;Y3?P` zdjV-w7ohuUiih*Qt88VI&HPqzSY~#IOn)ju2k}4W2494eB<@s)@t>? zp8VH)9}Nu-i9_=T<_9yGr-cwdXfzrx=d#&)I-T)BV7%7a6A?CRH8VB2cLu;QX8ulh z3;NtY-+lWpW23o?-7V-iPDB`nVso<^CW$>Hr97aNngigI#1@^i9~+}T8Xg`>rBW$B zFpzRmYQElruHMjs?o?O-aBOmF_xG=?TwE(mj5m}L45Yl2l7$eglnSi1Mdw_}dv3Rw z1C~;95Cld_>4Ly`DK#r4*n3YKf z1W(MqZ6gR)O0ZIjg;adAjgZY1zA-zy&jR>r$42O7l$Lsq>~^BTwAW#`&NZQ2xe}18yzbs zij#@Ssoh`d%L?lHVF17p06#r{esQ_HezoMhEmt=yD?$kFHoLs{G&G!@l0pt=^P_Wn z_RJIj90TxTUuM@$33&j|;YK^JSDXT{jO%vZ`c^k;+NojLp4=T9mj4|9Tmlek%LcOs P00000NkvXXu0mjfcIbD5 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_03_ef.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_03_ef.9.png deleted file mode 100644 index 4749b1f84b77ccd5ba8c1d3924ca0e95fa998321..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4529 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 P00000NkvXXu0mjfcIbD5 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_03_ef_press.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_03_ef_press.9.png deleted file mode 100644 index 1d97aecbd1c3d12358dc72a8c7504a54f1174bf1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4696 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_06_normal.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_06_normal.9.png deleted file mode 100755 index 355f50d46c5c6b2bf0d0f26dde95b1a4bda17e30..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 281 zcmV+!0p|XRP)$;Z|VpVkvi1KC9mU?#$^S zk5?Rn2=ryiT(wwL$da{%*IQ|yG)Itk;c?+BwV~(cx`52`3cs#uGDZGMq1gI}&fv)v zN4W}~ODz%GYAr93`CdX~tCRIw);q23nG72plN{9bN;!MB9F$;hU|i4?@q*z{y$0LH ic-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN)WnQ(*-(AUCxn zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!uxKsVXI%uvD1M9IxIyg#@@$ndN=gc>^!3Zj z%k|2Q_413-^$jg8E%gnI^o@*kfhu&1EAvVcD|GXUm0>2hq!uR^WfqiV=I1GZOiWD5 zFD#PU%0_}#n6BP2AO_EVu8M)o`HUDF34YC)x{-2sR(CaRb3oXS&*t9 zlvJmgIvE?7S(>>y0d-m$8oC-enwdMh zm^zslni-fGySh2S^m^tMmn7yTr^4*b1lkML>xfscm2**QVo82cNPd0}ECmE)=Gku_A z^g)RODY3wWfGH5fgeQF<2cCIS^ME;~2$(ele&mKTFfj3Xx;TbZ+v_G#CK_$xq62x+xrOkFm0;rZa}j-tBWYDGbBQ`KDJ zZ%KD2>6e?DO-|SU@>ThI!n=lFla42zo4W7MuJPYd<0NZ6lR?w+ovJMG!+UHQKkT-$I= zRPH0A%6^u2+1KVx2J(}d_u9obckx8Uqy;{gSz)>+v$fr8V?h1vt+y`h{r7)2dz=}U zTfIg4=Q|Q#>zabPT5no&U2Q!S(&JaTHeA*8<{qK6rH_sF?lA5@)xV;b$ySj!dz;w= z!L2WtR`e#tMt-m8Y{Mdfc!!6`eYCwDK zj8$9bXJ<6_ZpmiX(3%5`A6S%d!J>;*gGIx^bWJ`Z8$*o>?+)gLo1#G_uBWS?%Q~lo FCIDWZ4XgkF diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_call_ef.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_call_ef.png deleted file mode 100644 index f82b7271e2259d284336ca25b3bca49050473ebf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3831 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 UElb^aIYH%#r>mdKI;Vst05C41YybcN diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_expand_cancel.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_expand_cancel.png deleted file mode 100644 index 14141a129c763ee00f366cb4a51fd618c1b5913b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1655 zcmeAS@N?(olHy`uVBq!ia0vp^ULefD1|(%J94Z7-k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*9U+nA0*tB1$5BeXNr6bM+EIYV;~{3xK*A7;Nk-3KEmEQ%e+* zQqwc@Y?a>c-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN)WnQ(*-(AUCxn zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!uxKsVXI%uvD1M9IxIyg#@@$ndN=gc>^!3Zj z%k|2Q_413-^$jg8E%gnI^o@*kfhu&1EAvVcD|GXUm0>2hq!uR^WfqiV=I1GZOiWD5 zFD#PU%0_}#n6BP2AO_EVu8M)o`HUDF34YC)x{-2sR(CaRb3oXS&*t9 zlvJmgx)_<6o0yvz0(CkX8oC-enHsuS zxLF#SI2kw^8C#md^m^tMmn7yTr^4*b1lkMLYk*g;m2**QVo82cNPd0}ECmE)=Gku_A z^g)RODY3wWfGH5fgeQF<2cCIS^ME;~2$(gZ`IV{}7?_rOx;TbZ+YkN=^ zyZ^Srzh~1HpPaSBSljQ$$@jAJ8t=a0+stpg+gN|%zW3a2H6C4yG@vLcK*Ti=ikjh~ zj)5Xms{(^;9R3Pa91=hNaHoo);3uiKe>Pt#S3SjbXg~9}LyJQ%2+lLtt^A;xlg@Z& z!^QgONp1)0o~#kKSu%5p;RoGI=jQN6nyK7fFXm&t$VW4Yl7}-E2sW#D|!_g zen*+Dd~H+ugZgS8TTQMN*AEml?cN&@b~86n)H6%v?p`NtuWOedXlJbcJxzShPqxaH z8pjjD7jOOiWPWn=3^&j1ZrbnE69j6mWn3-RJsf%A9Mhb1zD>6x+0|WMs@^@7UcLR- zq|0ZlR!qD)^%>9e+z-YJmtX{uJdq4!q3xbKLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z000EDNklgks{(jn?`R?M{V)NJY93F_D;R zQo7W&xJcTCR*-`0?gYO=W6~(G1vjlx34ubPS|MpVDe3se+i4)^}<|D1QunHeV{m{qroAuvz|%0L+?17)Dh43vQ~PzK6C87Ko~W}pm|fih4A z%0QVJC&aI2Rb}!dn=iI@#pIY0x6d~n+_ko>2t8?z8h=ljxY8Nn| zezrO1PKiiV^Yy3k1*mgwmqIE6OF#~|2z&mY=xgIz*IJy zooZ@o`m14|dLq(%`SRu73l}bI)y4*kfs-1lH&l&fKYv`h zbm`ersq{=Emj{{V=H|uj?(WZnAb76gUL~w<;GGz(J*uR6Rnl|?Bt#^$yuAEzE|)v3 z2T{{gul2Q6M8?7}oC|{B`Gh58fllBMa1!X%WIqCY06YzBsXSDLbX;!P(OU1rrS$u# z7T|OgMUQ*$4{g}6;Y1 z3&mpbz$(f*2)q?jlB-y+TV7rs5s^?thSFMpnxGJo?HY#HRtdu$Ks&H`g>X9|B9Vv; zrFqb4gF-}FMC42uhVwxX^dyyE3aC;^O`4M;5jmQ6MAQRRSy>ZN6fLcwEE2-)gofK- zJyJ)##w_!|Yx#WsyV2264>VP&@Ym1I&Mrk!bj&$7QjZ0%s}m@ka~reS>{;)9pt)(a z7G_gdSJ%(LMui%tz1~cnAngH;dG9xA;aROliGY%p554tRccxB|j%b5>Ui&p)93aC8WNOqZZ|Mk(co4>a#0iw z1K)V>d#b>C4Cr&tW!4NR4Yxs6(qvMD3*fyU&SWyZKt7YnoGuoNFIIt79?{g^YF?<_ z8oC|V26umz1~(Fs0TJ0LBHwET-?Ksm-w|u1`+@ZhTW|txz$d_m+PiH|sJQ<#1&F=g za)(og*A>>AjST9c&d$!hn3DeYq>4AV32NUiBI98g<`cs3Hmvsc_QSbc?ukZjVLFS& z;`GeS%p0qOTOy>``)*GilEQFoY^*h(&rgZSM~w_>n~02tVYpBz6ke_tZmYmb9R4jW zE$#5$kBi7P5qYK2o8qk^@?{u?i-khrB@MT#N=ks$qG7lY1VPW-+}tLGbX`Oatd;3O zi->$xDwVE!??>Z9x4V2ow~EL_sZ_e+y`L75IT3kbt&Lf>h{)F(ZbSD8eOyFtrUfa@ znR(fEYWwl+efsIpQsZK3orV4R`T-uZ7$^f}W}pm|fih4A%0L+?GXrIy43vQ~PzK6C inHeYpWuP8F`*#3_E_7Wk1$b-#0000IO5Fy!7k|=Zwj0}I(q!sp z3(_ixD0tGVP(2mIUc^(?qV%F5h{r0u2>u~>7epufR}Zd%ym>S8ecyXC@6FB0iPN3o zV_}M-I&))ko{ZzczpsPX<8NOskl`rK6z~)(;d^$+UI^%W2BmUj3TL zg|WWousp*BM`{2S<^NF2YN9=yhr9XyQ`l204rKGtLyN9X3Rmn6LOEjEg&Ib#iqL%H z7AH#xBd>%Uke-S&JeW3Z1C_lhUQxuH?P1NKLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z0003GNkl42R5ZS?*fr=u4N`aj24IGe!lFU4WWdJ= zR5^6wc?YoMNB{kHai!K8{oV}%P@q780tHH-K!E}U3KS@T0tE^bC{O|g3KS?%pg;)} zC{Un4f%@OwUhBc7l&2(jjo)XgwLW$QmEG`F#Fpbvkyt z-9vX!!!TU-`~B mP@n_~6sW)K2LJ&7{{sLgqcX#gvwxld0000c-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN)WnQ(*-(AUCxn zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!uxKsVXI%uvD1M9IxIyg#@@$ndN=gc>^!3Zj z%k|2Q_413-^$jg8E%gnI^o@*kfhu&1EAvVcD|GXUm0>2hq!uR^WfqiV=I1GZOiWD5 zFD#PU%0_}#n6BP2AO_EVu8M)o`HUDF34YC)x{-2sR(CaRb3oXS&*t9 zlvJmgnm9XJm>QcI0(CkX8oC-e8CjS( z8W~#{TN;~~0ufBFXI^nhVqS78%-&3(y->Xdc=cL27o{eau&JJ*LU?9gN`84UD0(2ibxAGCEK5ysE6UGR0Ee$tCKme%`x~M+g`6>T;F(8gi*iOiWXxC(uKuRpTFT*DMKc*WiqFMYod= z&3{}x;W}BmezUodW&Y;kqThx$?^oM+Z?e95x7uiPW%|AD5HC)*f-M1zu7M&D)VxTe z3yLJ5Lau>{?Q6WvcW{>dl$o#m)OMA04&!YHJ;CxNs|_}OdjC4cw>x{m(mZd$yR~Yb zQ>GPOTYgpGL_kRBrIiiS4l9UHU!h{V*o;lao=vaWXV&Frt{3e7Ot70=VPWAWOX2HgWMXH(`Wz9e;_`Cb4R$Yx8t=;{hd((iwVgZrwdGV3V?f`B>qU$@xz}!P66D#cdV{ao=}2?UU7PcJj@@@#F`sMNBHr84 z3FSv7mHfNfyw2vOmt3hKn`i%leQ91?;Zwe({W>b4BC3$N>SezAl!fX?*>c`D?0M?% z)9nAi`Ulr3HPs6zpK)zC`ACNUfS`xg&WQzH`EK{q6<@YSs$MuhdHMs}A89Us4RWIn zcC@Yt)GrKul$=p(+7hyW+vmDv5Tk0ry)BVXck|h8x2d`NsH=Q$vE|k@y(uhzO{>!n zO1xlwD;6s8H;dU^XPpI?)m?2pj;&%of44rDe37{!=4zg%=jrpiBU=Tt+JCOfsS4Y7 za97;wrAw+89KKr=y4Cy*%k2M)*KL>RiQwB_6ZN{PO0VK%)sCY9*S$|2nrrm)QcdCg z+0!^aTAqEnDzf0%6X&|hAVob-&uHU%?!KmW)8EH^7d~{JV?KS$Bd3!(y#2G^A3sx2 zE&jdtP)KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z000GPNkl8?*QNFP<*QqPoz~h3y}i9F z2C(71&W67OnZm#+YytIg3+M*UyCO5|ipsRx^R>Cp8UWTj;C=_| zLrM0U1!as`06YPV2mS<3IuK`pzk!PmlFfsX1u{-$#iBo~qYhSbO@VTWcCEA8X;(0| zI#}oPKwQmW`olU5d?u;qn%L_ZV`_l)z@5NPz!Bhtv)ZMrgj1}}A_#&pNs^RoenFWb zjRIZ;ZUOcJUjc{QgfbltIJfTeEfFA7Q0bl@Ifj-=ax z$*w{lXN(!``dsSi>3J6Td7#6(IF6S@QPda&!3kh>sUh_ZxTFoJ4}#z=U@lOTe>f*; znxr=+9Ziy?OHxjkBO|F@(lJTTvU}^+tuF(&0i%nJKa+Q&O{}DMJCNkP&JYsmNe%-i;YNNUG}Y?tXXIu3f8(C~1kcwyV!>%fWzan2utgM#Q~dftU*HaHpZouA=W8_G`2X{dfKe?h5KRckzG+b&Z7o zRb4GeK>@1vi0QlM)KR4J5F84F?IXs`4r?Un0657h86 zV`hvlnHr)_#fZW-S6C*PiNj^e+zc$bP&S(kOiZSO5u&r3(F}c$QuGfp6Yp~OKF|9; zzvtukJnu`k%CgM#N75k(%CwZ5>|lLL`qEOt|Iu&HwSnbf!CWWQaBd+)^9*EgaZLO^@ zG~VT=?55K7SU}Sw9zh6DC>jcd6d|R82Q-Ms@zh9DcNif2Jn=vEWwZ1*vK!D7-Q;6&kKT~w)2tu$f; zVb?lLs7+uk z{-8knolGJw3*xS0jrYV-MxLPsj(2ceYhnUy9!}tb9xebIYt#xH-pl%3Tqr2DCtj_I z;n@zxRmyWdc#U6*-6Z~h*B!^Y{tss;NCuUL<6py)*a8zMi5sI2l#R>7_`!|g!PS^? zx*vd`q$P{V;1HuX-~7({C6@J~>?>$Fl|CT!olSn>{(>Aw1ylj$o=wfnQC%CzRe?A8 z$&;^VWeA=a&q{> z^iAcdUE{|;*`*yj3dM5mP4DGSxX)C{2AeaMGHll@(Fft!*yw1-(EQvR=LYLjVe&+t z=EH0Um3=5Fa%@)o)RR2+&cW`Q>50D88{UX5d~m^XHF>6JF;eu{^H#p`h+KT_SG(?( z@^*C_x}5%OUwVn`rwdbyhut>s!a`;&FY?*Xr?xiae0<*3606<^kLUa)iww?-QF7*J zbwgBET24-K&Qd?JJF|?;4)bEMGq|yxs0TzqS4J;hYg9W?zn3 z$`;Kt&lS$KWC%Sixj)?XL?hRGXW#DlvHpYd%LA9YzwayfeP!A_G=H_fU&AZKE3Y)p z-_3i!FjhN~vLnCOqZUJK^yFw--agyoX;1vJ`i(WSc5*6PHgB057Lm!@+NRcR6}o(b zOzHf?v%7B#n%^+}^|brOQgyF#CH!aq{xiqk8aInY;ZRo~HBP+5bXuYdB|G9>n4MZG a>q&x&Pp4#GEV~5S4nY=kr766pvF~rYZ3fc- diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_info_ef.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_info_ef.png deleted file mode 100644 index 49ce8016153bd2295fe2e844cf4b7b654e253326..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3705 zcmV-<4uKLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z000A|Nkl#)#%0zYbg)KR*@D7E&B1yYbaQyK;96)Y z6u}+5cyaS0gHlGo4YtG9KVaxC;=qH4i7hf}M=v{U>Bd%L{XsiYI!TkqLq3@JHQ@2{ z9ev&ql6=0GhZoQDeBa;a2@zGr^#AHG1P01L87Ko~pbV7BKp7|lWuOd{fih4g17)BL zlz}o(2Fe6LXH)|dkpOrD=mE;Wbycl+izkX(7!i3HIO8(D3UmQ=;G(L2YoMB$bRPH( zxCd+kyMetx7Wh{jM*yYo1#Z6BB&~3K$$5+%A<$AGEu+ zu&^+c&*yVq0#ntfy^g7>R;$(1s@msbjMr+lleJoHLsdWa5tl^t*DRNS6K&3a1`5FX zjxRkCNsGvp+1c4o%H{Gkcf1aq^#v(%hSNFnFPt0y6L{oo!8ujkvS+=fjyp4X7uW{& z0R6yW;5!4=$fn&u09jz4} zMvK|316v~_BR!T;&9ZwM_`~(4e>68YHxvZHP0Of;`rSxnBOG5opFaY8Z=irgB5?qC z;GXeX)tyeK_xbWpkpoq&R-bhZ{9k1^Jw3fQnN0o^g&4i}C=odbtO5_im&V4%jsssu z0aO$+Dhu3q^QTsIWipvJon2&&e8uRgL=u(hKB<@GWzI1vnyFI|KA@2mh{QUg; z-QC^aLGnGoc6$M)m2~e3#<^|w)8k?3@?Mfz-^{_2)tE`;|YISwB zt6kX@i^T)+c>G425zOZz(zByLiO4=@G9Ui;l04UH3q<5y;KbzQ>i_7bnJ!JUZY z-N(g{(d?qJ=&ZQA;d?;e^78VPfq{WDz!p@A4SG+`UVvT zJ_Cl__jTYZaG8in?0*j)pD~MpGEfG}WS|U`fih4A%0QV6lz}o(2FgGgCF)sm X*Fl(iJxQM<00000NkvXXu0mjfNNnqv diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_left.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_left.png old mode 100644 new mode 100755 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_left_ef.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_left_ef.png deleted file mode 100644 index e805dd44dfded96132b1976083fed12636009152..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3394 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 Y0Gbw*&|8Y8#{d8T07*qoM6N<$g38oMZ~y=R diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_minus.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_minus.png deleted file mode 100755 index 622616cf09611dbb1e7fa9e966ba92bbd6450872..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 996 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_normal_effect_01.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_normal_effect_01.9.png deleted file mode 100755 index 87f9a6cd3456930ec08422a1fd8f0132a8ab8c13..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3814 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_off.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_off.png old mode 100644 new mode 100755 index 34e311f3e423d62ba981a43655247810829f4dc5..b296d37d6aa8d6a00432aa43353e66cfde52e358 GIT binary patch delta 2140 zcmV-i2&4CdCgCL^iBL{Q4GJ0x0000DNk~Le000150000g2nGNE05ghA!?7Ws3V#eq zL_t(|+U%Qch+J10$A9OZ`!;j$%$@hm>?YIJY_jc|*n~h45iON!eT72(Dr%%9A{440 z6h8?-Fcrob6@ITP4;EAQS7uW{az|;scd3)*a zIp8$#>Km`U^6p9~jw2Px$bmw>Me^pimlym{iC z9F*3WdVJI46;0de2^jP(BB|btj;YT>fz8M^~?09=I@b=@MtooIg6p|*fE=QDoHY#BpQvN={l-Zky1fX z6oeQ-&|ydzF2eSGpH8PktJS7bsW3NJrc$lqx-R*Ap8fmw4UB(edM{2Q`5f@OwSfN9 z`S;H}(=Qpt*;$SsKTgCn$z(F*a#iO0y+u^*XzE z?P79rvUef1EcWc(j}Sry{MBk5k2UJ`XBNt36rtQ~fgf<{)F~{>B0rv|P}o5(m&LN8 zn;P=+Vi=7?$YwJXc5G*2VjRbDIDg>+^;*4$Q@h!sG*3|L+O%5Dy-P*56+!Q7 zwVDJ$uoR*#w&HA&NHjt&n;mJ$nx+$pT4z`iDKU-3vcs+1VE*}NW>iY-zeBxcYZdqLnMSisw$>o z^e|FY4WKeiqh~b3KqyL2v!d3>rq0b~W7R&*W`kf+PuIUFsv4@M^)S;-6BajjR|I|1 zFwB9dBO0|wHo;h!FAvq6uj}I`5EULi2SF7Irt9bqD7u&67PZ+aM zS-^GMY+3(esFKT#;Vr$yMP8DL!b1olqTI4^+rP>kv+OuRC^uUeLMoNrqPl`5lWBa< z@8M;~9E1=r(ziR_5BiUm9Yfdko~a-Raeor2EwX*7eZ(|-I7umqISGK@u2#KUj{Sb( zBvU<^4uqtVNi56WA`IxdPCh@5?|VI*;)x_u$|JyqflzSBLicXDbmP%ZpDr6_glpG6 zT6ZyKGnl4njF0cY_qshnf~snyb9saiiT)URC68XV!--S|*%u#nyB)UgDBw8B`+pL0 zBx$bEJj_VQx0j@i`UasppQc5&khj96vM;H1yshUnKoHW#EE^Ed1HW0*{J4Yk`hQX2*I^Jm z?zS6r@3Tx%2!Uoq(9I}9h}VGUfRENZejRm;$AQCP7<|_2bnv{+K&Z1>Oi>i1s-bE+ zQq>Vcybe4M-0}Hku>nAnz>k410S|^@s4W+1f|30dfIwN=vXfE;Xf7ome*umFv+KU| zMm({$@bR&+SR#`JJ`ZTX7coYZbOZR$(s%pw?K;O2nR^3z%kDsiwh-JK``-Xlr3#dN SO5{@j0000 z4j6~p$=6Suznuk7Jo(g3=V&_!Xa(R=;A!A~U>q2gGGev4I#?cN8su^gKn%PCECPQ8 zUOV~viTD1OaE|~-qbPcGvAV$g+$@boop!55yWJk>+gQ^yJm1GOEegdVrGL^0uIJ4F zzXV?X^Pm2BWn=E+-#C0%;eH1=y0}>V+J_g;vA9^>6}o9OOjfljBx+4JX^o}Ny5sfLCoG=vzu^f^fqRH9I*ls8XSDjb+PfPZ21X04UU1B_4X ze;N4x?ZAEM;)QcZXRm(J^TEvQ4DX&gMJ!{4F0f1!)3PuO16|iK3>{tQplO3cRw?2n zM#>l|B~nVFPDCUl;y5Og$?)(O9;T4b_bk2dbDw9ZG~8Dr`oTRuH#_s(#S3S9HadIm z9B0p-?dp?lkS%>290KuR;z_l zih~CavVUTtCw;sB;DdOc|2^Q9?ck2baXkIbzu!VincC#Tk3Qn`>G!cS7C{hDEEdS; zL$cW%mSuLqiovg@lO#b(NxR*l*=(|0t5L01S*g|OL=lfX@_#U+BO|FbuIur@p@-fA zzO-F$;RiFHOq0Y3LKB;#x=`iJnKQVqL%CdLa;n0Zy1CMY1L8E2a3` zn{NV89vxw{Jb#Msd3^=`vuH{wq?FWZD_p&Lm6@4Ya*oSazw+gDv0+&pdhii6O*7WZ z=#=LkSzcO%M5TU}%a<;b#4#fy!;FoM5eC7o0lT58rfHJThm4JlQ5r5$udgsSJD1`l zBe{`TJ>5?ho>^I5LI{x>m#05wXlRJ?=qR4&er9g}JAbLrg1~32T&9rEbLr#DJ*?K@ z9=X2ds4Jzu-dt^+pRmU;)1}Z zG+g5HrOQMzN);K6W}Wp;Vajv&M^Oh9DOay8*U0Ddgh7aD4we*HR)&$$eK@X%X`1M| zj%{Zt4S$c~`{9l%xO^Dm2R=)SODSH7jESOXbiMt$3HRPkr_sI|7U=X{zF*qLk(Gs83iu58uZ^QLK~BA?I%+3rKTfwMS{Sy{R96O&G-O|#k9 z8Gl?f9LMcpW||hj`K@rT7=|(3?GaoP=fLwA)Wc5ol^ToHd6Fdk4eIq3=I3VE=`k*$ z3q03N@v?0jA;jtHWdYzX*_`v;W@F{Lw8J5m(Le%TU2U?u+QcwSgwW`8I(Kbv-wRMG zNoj7*bpcNFD}R6MxE`7&HiuGBES3hobbpmHx~pI{O`}*WrC4d2z;S$lSNp+z!_MZg zGHGcrbsg9B*t2UEgawpJ*9EzpgK1fR2j1%kHwK;!!eXl8P%5EVENuw&t~cAx68Hhy zx@>L?KVJa&SxT3$Tl<2Y&7HO~Hkzhwj#x&N$Hq5uxLs?8VNx!SBW0B0^?IGPwI))=L{Vp8aavXeT^BfxhvT}aL?NSgPancC zOuV3g(DfUFy&2pMdo_;bw;Q!3;#l_0`GjsDguW^8gKA18CRf63Afu_T3)~lhstzMoKFD{(S4#Zz8(w*%`O4a`s)SY zH}&O(8{Ya}IP~ek-LqS`8}<Us%f!vFvP07*qoM6N<$f~A!( AmjD0& diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_off_01.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_off_01.png deleted file mode 100755 index 852772125f6b4400d504145d0d78dc0559d3988e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3437 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 P00000NkvXXu0mjfojqvT diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_off_dim.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_off_dim.png old mode 100644 new mode 100755 index 5a023d43cddc37851f80fc665a0ae7a20c8c30ab..76c00357231cc655dc669d9b948aaec7fcbec92a GIT binary patch delta 2083 zcmV+;2;BGVGN>gXiBL{Q4GJ0x0000DNk~Le000150000g2nGNE05ghA!?7Wr3V#RF zNklfAm5r@B-*?Sj@8z5x~k|Wu&75S>X=jp|$41-n_{R1aHTTb6zii z(*DQ*4xoTwiJ5fwKX-vXu=Vvq&L|ya;F{KYrQK@MYBkyI_nAz_ zByqxEu)DOB!)z7+-wz0a4CP9dOc+jpE#T4DUwzqq8=$WM*E;Q1?(w5Kt!9%XiQoCK zw{4qJxk~NoH8Nq?03Lty?|*In&( ztOIv}&2snu!=*JX2gZr%O_A>@C6&Z~gFz45sI{<9|=3t!Y9J%8fP-8%>&ux%UP z^9X_f&+~8`8`Cr~3@_|k@Ns^Ux_%T^V|$ys_wM0)E~Qe5N~KITo5gjV6BmnRGa&>*2&9ylritS?1VKP1%n*hl z+s!7;?IxR>n>>8@kQ+B{%v`^*QRj9x_o)zK1JEx5og3`#u7B>d+sGpt8^tI_J&o{TY|KI^D)fK`pJe)foj%aRgQLe09 zozFt%SFEes+gk`JX2yEGjue7wwZeOsE|JS+F-`NGhkVqOQe-k2R##WKbZM1L5ODAQ z{}xy^8k+!DUw_oS6I$z9Z>NJ4@^GX{%9AHgD3*$cp8T#z#aX=D_dTkWGL=f1ZnsOn z*Pr1v8I2i@h9MB11UejzhNNk_pQ7!J#&!eObE%ZeOAXmHEnLsXG_BVF+oxP9lh5aA zY&T|jNh#@dy9X8Zu^OEl4TlSvMz`0aSS*msWibq6>3;w_j!V8!nsJaMN$9kjjK`xh z%Sf2XP%0K^w|5qpjYb22+({lCOed3>FpxqL#}WBl4##npPLplhp;)ReM4?iOVyTL4 zJLiZHlQ0a?Iz^{?hS_v7fw`XiQP5VJCJSMpq{8#PrId_puE0sYAq3>|g>y-W>$wD( zfGCP)n1AUs1+Y(&4nyk{ITr?w>tG#IUzjb)nnzK4)vmYX>8 z^BB;HQfi^Jv~7DSwfVHYmh<#vlu|hMUfba)Hznl@OYlf3V*#}5It#yB20QJ}&v|x; zgb*mhz_INaMuuSmL?>zV(6nuYlrzKk{H09i(tk8%I2^oi&Tu#&-P6;vFN%hVVVX0{ zEXRSp&D~=`_ifu*$T~c4c{j9oI_(qnH;N*5I_+~mBM34G#0)cMFPrI~1iIrmE^=Sk z4@NGVWmyl|q-ny|<}>=eE>RR60`B*^G`4;rO_Os!BMid@X6~K}v`*A$DP_y^gW`BJ zoPTYqcs`TKcqw6Pt?70v%$`k5bOuqva#-BFAa(mFj-n5C+KsvNPGCC@qtS>)V}FzB zbn?yvR!UJWSIK0uOedom9zqCmg))X|tph)uSVg`hNB%6DPHMew`=BHB>%$EL)3Vs@ z@6zja84UX8uCjh(-4cQzAP7RjY>p(3h@!ZBwO+SP z5-&!DGECI|!I|k~LYk&bCd=#PmVafTl)|(u&8Zk5p;{`2MB;wo_Jp zH?-Ctj|P1vO_G5NkmFRPpf&<#h<$)@fRt zj0Z$ZS}C5VQ)k*Pmg6CWXzY9OsUe)@#D5X^SnD(&Pp8E3lq8OL7hgJ(Qh1^a6T`Gn zhIIgV?YKPoO@KZyAGprm`zx;2S{^iM(xrV1Kp^+G?36OtFQW&*=DtKs&wS_ecw&F& z*S<+6SF(V@er{e|QqnQ|r$PHW&CQoh&g4pO2lR!#f(%_Ccsut00RU7)^o??k>Q4Xw N002ovPDHLkV1gRe`UU_1 delta 3829 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%0DrQAoQQl?U=P%4$k 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 IM6N<$f~@)g#sB~S diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_on_01.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_on_01.png deleted file mode 100755 index bfdc2336bfd733e7ccf41b86de966afa22252df3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3055 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_on_dim.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_on_dim.png old mode 100644 new mode 100755 index 8ebea422c15a73839e79f6b6968d977c1c3267dc..e661fb6e72e98399c236e53b366460c69ec6cbe4 GIT binary patch delta 2079 zcmV+)2;leCGNdITiBL{Q4GJ0x0000DNk~Le000150000g2nGNE05ghA!?7Wr3V#RB zNkljd+&B3S=AFo$C8r(lzD&)5#)UY z^xbpLJrjj7hMs);B6|qF8_`el@PD}v&vN?BxBG!2kOo{p0YMitS>E`&3RHmEb03~v z*=ghHH{X8jFBN-q9YtUaC@z%dt%ZdWtCb3kMx7{(SX*1|TFRMh7JyVLAPCa*4-Asd zWE#K>Fu4`_w+VU_7+Wka za`?zNqX)`M(tO*8|GB%!AJ1K; zT&W|3L@0$)HbQBHl@8j(_vo@sYOY@_hx4 z9y@^$;uBzHH=vK-nVvj!ce>pgKDju}2miQ1WI$;L?f6)3fOb+S%Ry=jDK$dKE(9H8 z;)pm3iNXe9eT`OQjj+B(*s5dVh@ZSP%CBEPidM=0Z*XXsL*ILT61e=h2}_|~uN}I7 z?+!vHwesUHr}^{8H-C`Y!u8TPsXpu=hh_Un%UK7!q0w}qMq|u|R!5jPB5E~>S~VJL z%QRNYG^@*edg&g`R?KhCoJ>4AH~WD8{(-S{CcCnezupP-*h5X;YW~-zO8n)M8)(PJ zO&9Po1K6o7+V&7q?GJ}61VRV|5|o9qTudBbc^Pa!Lw#kQ+J8!k3)g2DDg>PV(V@iS zlamviIQjC6LWpU=JgU}_sjjUJFP0aOLT;{BE9Ot zDbcovn=TR*MhOZd*nWnypG`1Zt|mCut2IjN(b>VTD=Ll6&(9#FNUV=8PE%u>CA^tA;ox!K_(tz_yzFR?toq zMQvuV+J97N+u!%m#a>*9c6_v(W@)XNU>3*m!|Zy;I9eMMBex|fSRTr&#R^na{w^Jr5 zr6wCV32s_j0Ig0wx@tMjdaYv18t(I;cL#Qqw102myHL zR4D|ClcP_bGRIpEE8Zsum-8g!LvDhX)*9FI+dyv*C+-C4OkcCn*nGnn!#h9dW6uRiC{~UBNb#2LQDY>+X_hu4L8QTHTU2yVc6OdFDlMn zs&nqra?e+6$l(Ep-@Q>FYBdu{%;4}dD5cw4THE8cSO{@7lj}>E1IF;nSF#)%@q2`U zd`k1)=>wQ3OmNEN@+hVM%MN|RodVZ zvbl|mq^~%D*48!P)^0!pyb!jUhnLFpB=-m$*X6?P8XsIJF}vK{_kdkXa^_SYXMaxR zFs=IfNWzxvFqbc4+0G;#I^bUi8sJp3Ss$$|mD#>eYYU-mE=;U);Z}t!cUEbJ`zzi) zI^uKc*?`wy$l|DoRvOH=uj63rp!C_-^EX0|1Wc;XdySqgns}002ov JPDHLkV1fyC?}GpU delta 3806 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_on_dim_temp.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_on_dim_temp.png deleted file mode 100644 index 8ebea422c15a73839e79f6b6968d977c1c3267dc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6485 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_on_off_handler.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_on_off_handler.png old mode 100644 new mode 100755 index 645e3b0860de43a21cae7a8e33d824c66a8856d5..b6575edd22850b95aa802e82ea70b669e29c74c4 GIT binary patch delta 2151 zcmV-t2$=WDC5|SrzY2c{IY~r8RCwCVnR{$oR~^T{=h*l9k;HLcb`r-)SJZCMbgb<< z^#RpbyFpi>iEabLSV0VdU@t160n%6z@W&)XVTeD_hQzC@I?}FaT1y|KTOTX!T2`j! z!P+=UV<)9{?9{P+ZQpy(IsD;sz1uYHk~T>>S3l`Wmhbu8-|K(;e!oiyA-Ius{McJq z^{LMg0MsT#ijcxBIezRdQ7CB8v>XbB0v`F|rYY~mIR}|0s0HExpa4)``t{b^7cN}T zt|)4tqN1WzRTaNsn3-%gJ7AhdG7{p*BuXDRS0Y!gNKq-aO;RJP1aL!?xCOGFX3pXwHZ`3mH+&kC#MC zUoG-Cy^s+`F((XN6N&hUh@9^gM-O+t{?J38pGOFB%YClNA%wW5My()mefwMAT)64+ zuWoB?4KE4=f&c^r7Z8F&KmcM2u0{w5Zl81o zHW?_L$`-yLSZPDtLE4GEh;krN|0M5;l2v*kSv@gNI1uH+Rp`jk()>hy0Wy}7! z`Fl?<1K^hXPYN~B7zV??t+}XZ(Lt9&0DdI#4aK;xQAcTTailJx} z-924LHa`57M*&>6rLU_@PXKtHdHOr6L(NSaT3g$|S;;3k7ZB1dXH>W-J)d!eTfzu6 zht_|*@ca)p0Pskjt4vSiNmI3Q#XUa`1{=WzFN>JP%f3%A7{ucCMLz`K1EAVr?V#@G zzW?m!!Y!et!C+&_C&kS8I6{nvH9~JYiw)+IR8*) z#pYM}KzYBW#wN6eLth3^DXm-vB>~5b*hYXsEBd3&0L}N^+;XQ9WKyo5$lR<;`2Qgn$6xcDdnpyV|7b9RPm} z3sg}QrA|@Q*-7lvT#BN=;dIu?U~*WdCjgv;5HBI+O63+RRe%rzN{B~75<4g{4MW!r z1Dr8XN^cn~XAFj6z%)(W7VL0Z?La}-vxR&C>=tUYl>7yX#R7E0(CoFT1PO(s|D~hhdsXjg6tV_uLuTVwXWVfI?622hn&uF_=sx zOR${HYSlFHVw}M+bc~OWBc4bk4j(<mNKc92tLn{F-LzzNvS4f zFmxT!SQLYULq`B)WW!em6%sVNXYc+uA_M*DWHO1OuER8EuKl>4$xV}?Sk!Sjokm|I zqP@B2K!*g?Czg38fNVTI8avz7`}$BUibA0PUDs#bUrPa`BVWj4aPR_pd(XW&6pal? z&~iKCl%Pzus;Q2SzjfTcVE%uG3a>YC+q~Og1^#TLD{J(V&leDl#t`X`q+jdU{VISY z0L|VyJ8gxF4j`=?#>Kt+I=8AW*Uwz4sx&t@!|UCi^Xv4pC|Y4-1WwG03(xW6962OY{=!?u(Mq~{ghHh zDQzbN)UB%EvI-}J0J4A5nJS>68_@C^GUFLsh(>X?yN4Zn=S0W$9XnqJZ~;JEYV(Ss zc*~Y8lY$ECv;ts$aISACm&=X#{nek;4bw#_EuSJna4;^cnpci(MA^KhByONsEF!1n zkal4*hoD{?1(z@)CfoZP0rK==G*~P5^%u0O|oW`~B4m9$bI_ z!ymt6;o4ABlNxBKM@2;?T&e=6qQL2JfI6tHT;nhqgJ~Gh4FlP14vFL_V#62BzDWPk zJ$n!A7#&TX127C=R6?55o#w$d0`~y$184xy6bLlT-?0Avjp1-;NsZrMU0q!bm#V_; zaf4C^ylyuN#R7j!#!xI2QPhh_r^k^RyPO#w9(jNN!9%-av61rtE=p5hwxuF*qZ4Oq zB(BOn+Yg{lYPsgl#f$D(y!aE#eZH!Iuc|6Y9aO2RtgO%Ga!F<~J(JDGGns6>yZb+9 z-aGStH-MDXUJ}5V^hf<#bI}`};X7pe>IG0G#V23DBPU-QPFww8%2~Z8&6=@^1^AI; z@tgT7Vto;DNjSIExMJ&Z>;b7u;Jm!ouV?0&0-fj*RKhuIkQ2W%F{wE|-On~xfc`(U d$5UDV8vuImmu(9)bZr0t002ovPDHLkV1hHq8zcY# delta 2082 zcmV+-2;KLNCdnnRzY2c`^hrcPRCwCdnR#p+)fvElZ)SJ)aJ;*=vtD~^uj3p|8j?oo zAw`6yfgY$RB87&iE&T(6KxzY}6j6y@DIirUt%@qqs1Y;@RB0;Spn9-+^b~Q7<`L6eU-xGgIDLxE`5JFt?y?{AM z4E;NR)Z(~A?)v*nDx1x)>gKf<{30pkMS}_r;{klX`1#L1`iZ4WZwyC5OZ@)eH6D*y zYgtwUKt7*8CZ#i$$&9xT4Gq8X($1Z`Hg5b)A5a8rKxvs$P@%;F0)N@@r*AYjH{TTs zg_i^Z0lZ!dpJjhxnkF8v2Y^DMfRvJAu|%PeXM8*(Q>pZ>wzjq>*4=f_>p)%u%c%kt zT7!XSw*2->ix)3?BpR)s9}0yD1pJ^BWk1)-QLeiX2=U%`rpMBx(<%D;`giWxv*)qz z|KP_5fP!`lbvd90V69xaBKngJKYX&eIdO9&9HF|p8l``vhLoC5=~uZ(1qcKPp|1u) z2$G{o1_uX9-CZYsy84zizXHaA(z#&I2WkNRZ{N3m!EI~5@@z|U;+j}PBT7n85;a+q z=MP&10wDy#Fvu5*jE*MhIC^B;gAYCYKwI0vVGS!U2Gjuj_pblu;;(;g?TbxK&2_Q* z7)nW$lox*o_`iUKKnMdN40?NeINp8y&F?($y)_39wh!xIQdMb&OPFa*gV?0hvV%D-pANkQQfe_$zrMUNL?gNlO_`&bq z|5PH8m=lY|kdA(^e9z>UD^fZW&uwaIV&TUYtbKoK)35IXs&r2Nzn~@%-1y`Z_s*R= zXGL>U6UuQ=($T)Drc{)4CY~Ri8Kt!~@$fx&-?Ly6%AOLb%F-DB z2=RY-!?o+bb@z3E-wo<vK&-GKwVv(wd$rXe%5V%kIR1r0^v~g(nusyzOiDGX*?7lP=rGvqS2Y3 z0-o1Olx|SJ)2Z5B5t8?25zu@FuB0j)$1#;sIF8gs!_|Q;FED=+ zg)-c&O+}+5lcU*Esf2WFlp!XnoM|<@QYa}Y6bclJ#hm*;Po;NhJ9ubhd^}qy6pB8> zFfmPI`aM)B94X0;XUS#rNuBJKTcZwOk7Y9bsdTEv=d%z348xdqvpcp;I-MewN}Y1| zR27XnKruNodNi3#w$wx-)9$C0_$YssY(|nvPMz*KpeugIy)xNAzN`DhzlVl~D3(e% z&eYbQ=dVvCwp}8h&oeMMP}=j)H}>jI^#h=}?K}SZYENHpCX>mOVWoqbhEpnuEgcG_ zB4>Kf(APiscK^WOpsPcj0Cj*|u~#k<6swy6!U)t&YU^J z-o5)?0LHXN-xo|u)2E()VaL{%mgXB8VzIDc&O``-X_{BeU&|)9$>$3k@9v`GSm*v- zufFy#Ank7S3>Rn-NDmE8Y))xfY?k!C-$7Aq0k@M>UrK zTUmKZc8P2@$5>B4Ico-wE)FH&9h0<)8}wWw z9aFafGl8Z^B)nkV9k+i!v|#?c`His{wY9Yb{C<2s3y;T(X&M-YiEwFJDOK)ZrNp)! zN~IEoLV;{9M{i#rgF{2?eQW=VTYtZ8GjIav0a7~qs0*DvRR*?xpay6J61U#6YR!_5 zFJ9dgZw%Dd)e#AWuq-cL%UcF^`L9$G=}1bpJpnl~l4N*fnA3kfy#u>nh&2m)d44l{w8*4CER zPk(ahvWCXkynuh-AGR#3DiH980LC(zVJT&CES(uRaq?9AzI|{1XK-k^2S@@#`kHc0 zo-b>VJ9%Tl0s=s_mJl#Qi(h|`ds!~(Awot6Nm^es`uEa>%XIV!zl0LVOxnHpKor0C+QNTNo2Wr~m)} M07*qoM6N<$f}d6L3IG5A diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_on_off_handler_dim.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_on_off_handler_dim.png new file mode 100755 index 0000000000000000000000000000000000000000..d0086463bc041fe8164d8d7f00e5b2af2dbe27df GIT binary patch literal 4713 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 literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_on_temp.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_on_temp.png deleted file mode 100644 index a4baf3b8bf27fa139128304047455a989d0039ce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6545 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 D#)7jY diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_plus.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_plus.png deleted file mode 100644 index 6ba5a3b73fc3c8a6f677e215e999a781297cb2bf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3003 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_plus_ef.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_plus_ef.png deleted file mode 100644 index 613b8cbdfe01d9b08260529916b534408fad463b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3230 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 QAOHXW07*qoM6N<$f(zsOCjbBd diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_radio.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_radio.png old mode 100644 new mode 100755 index 64a8f273e71446cba4c28f43183ff1a28c7b269c..520937c8286d28d01e84d121eebedde3f4ff3811 GIT binary patch delta 2344 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 literal 4797 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 XIppj@*}}GC00000NkvXXu0mjfI=lv} diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_radio_press.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_radio_press.png old mode 100644 new mode 100755 index 789d761b4edbb8432b62a9c4af2cbd1f13eef2a0..756d23028a0cae1df91dce88072d7cd23bc31037 GIT binary patch literal 3283 zcmaJ^c{o&k8y-?*Cs9lqW1GZ`vDHi_+e{2b8oMlwF)}iXS+Yh%UP-c+N_Iubz9gkW zNM#E#W%t@br7TIl(ObRWA79_Ou5*6Nb>H{%Jiq6@&UH?VwUw!epsXMO01&~Nq4C^N zZSxk`#(g$5v>xXUyIB}VmJQ8|W6_x2G&;z{ zMi&YPIgqKIG=Js~JPwD%Qkg6Ql}N&(QDCkDluY(S9>Hj88|xyB^e_l*I2@y8Y@~O@ zL%>&A*R5`ApmIy{`&&i=arJ8m!`Tcwq#{Ryqr!FJ)}r#iu4d z&ci1r;ghXL=FL(Q(|K;P7x09LCYu!Sg@Y0=_xO!co@tMLyz4*Ywespss-)DR)4qy! zqvj4{6NAi0i?E@M^$qKEtL8;Qjdy$WxQ9dSEb@R!XL5A@?fD_j2U`v$ z_^lqb`D4Y$K!c$@$j>>-b0+WRf_$h+d2SE<7d$*VTXtkaME%@gO+qd=vUjO>W%+V? zeL0=D23uCc%J9mpDh<{ruzVtTS0=yMe3&{=FbpXfhklxMmM63J@uEumqTb66%BPDY zCpS)+Q-fxp)3IEya-$xfFK{ROu*InKcD=v*f@ZYaiw<{OS*ou=B$$Oj(`UA;N`5rg zl(JRAYVjGBjD+%*oD-jd3OLx*kef?)V|otax*MGZ0oG&A#X*BxDajf%6!4^&U0G99Fh2EC*FnPqMnFZ-BwGh;kh+u&h_L=(y-b#g| zO`?gBK9!#KeU+*uue)Q=@vsE5XUeUraA9V9kTkx&-#5>vXGVM}#9X{dh{{2kb|-@c z>rz^CXUjjn?f?F60eCg&OXXPDaXnPR)wi|mlCTq*VPN^#eTyKuxUb0f^@<6Wp&@66 zzOsRnJFh&IY6(FZI9+yv1>1;+obx9R#)7ojtk(wOg)Rn|6Idy_~fYt0Y);=+&@m4CI4p0!4_E+or_5B803}~qXpF6;j9523{%Ki>a6wY z&Gx5F-(xTIk^TKkyq0e~oYbrl;>FxBoE)%Rwsy_D8=i<&N-wuJq%@zuI;Z1h5HNKg|EN&_)xE3BSQ6@7j2)KN{^dQIYlMt`2F!4f# zaAP4lr6Jq#oNPhg%*zL^<<1AdMcv-7g+X;M*le|l@Pi{#xE${5iSIVq&DKsM6QXw1 z>aShOb*Bq#Z~7#zxKgUyyz?O!9$iwpcg!_@KppVa)~TTWOK(~f@$-1Ajm?*!E$ywL z5Pukp&Ogqn(3pLyBb#oA1G_|h8y9v?uFtgdi{U@E^?p#!Zl4P01M(2_nYgb_K9%z1 z)-pr4rB(C?S$~4>`&T;7?!?OHCo7%rD9Atqoc`V>a_+L5plhM+onB>({VS9>L_M&| z1gN;F%dt&(vA4q}cZ1Lw?IO_)d#BES@7wQCEUKtj6n)9UsYq<7?&fmY z+rV+ds9n6ho`m5OghHviJu~(0Wls$lpWhr>4au@mOBoZO^0;8OMi}vn3_9WLHbSOH z>(3w8$g2d(f?ZtHj>?>mrrkK_93-c}PWxIPvDfzcgh1RnqP-oP1viKDl3u*QvU*iE=0FhS=a1eT<&E{_g M7Gs6JXM7^!KY$>t82|tP literal 5175 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_radio_press1.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_radio_press1.png deleted file mode 100755 index ebc3620fe88c05df1929d216e8102caffc67b76b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3620 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 OK=E|-b6Mw<&;$VWOPVkM literal 3078 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 UG+Y2nd;kCd07*qoM6N<$f&{( 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 FV1ldJuu}j4 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_rename.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_rename.png deleted file mode 100644 index 39a9e71458d200e5d8e4c4f727e9ac8da75f6716..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1384 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_right.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_right.png old mode 100644 new mode 100755 index 3657da2707adc3d5ccfa49bcba8cd131c3c989f5..cbc85217a73eb322fde4a74fca6c87a23c7a95b0 GIT binary patch delta 296 zcmX>kzDHcKGr-TCmrII^fq{Y7)59eQNE?7K2OE$KXZqQ`QE@(3{c}$j$B>F!Z?0eT zWi}LOc~~FZ=)FTI$Y}-33x%ain1h_G7O=cvu=22)VWZM#u4Gc^WB4Nr7K8E^0HRlZR3=W{@89ZJ6T-G@yGywoG;&H_Q delta 303 zcmdlZen?!gGr-TCmrII^fq{Y7)59eQNb7+x2OE$K->GfBQE@(3{aa5L$B>F!Z>~G? zG8qcAKHSg3sLjZ!%_yS4SirysL=H@R99#zuK4Oru;j2#A{Lqa(qhhj2<}-u8mrUN8 zcrH335s)E~x8q@(G>G^wZeyqxIF;3ZPNVXL2`iKzYG&Kddm*-)S@_7(mc^Uip3#0F zvF-DuPkdWmrsg@7zN;_&bU6Btjg&m|e+D}~xt{*k?LVG!|9NqD*GB#H-vVc=ZZbdm zRlWUG@pA2j#rnH{e~nfZk!5z@8X(+xjz9n6_KYn{-t6^a?y;I_n-mx|S+tE!B5mDv xrey~>H|i~4`}O+Sg2TM#cfiDl^+%E!ijv-V{O@?=3k(7VPgg$|mUT`EO#mwNeJTI| diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_right_ef.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_right_ef.png old mode 100644 new mode 100755 index adabc3ddbff16bfe9fcc74eee275fe5ad2fcd415..1e62d778f3b7346ed1e90589acd9583b15132a21 GIT binary patch literal 1254 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTC$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWuD@%u1Od5hW46K32*3xq68pHF_1f1wh>l3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|8hm3bwJ6}oxF$}kgLQj3#|G7CyF^YauyCMG83 zmzLNn0bL65LT&-v*t}wBFaZNhzap_f-%!s0Mv>2~2MaLa#Yay`ZF!TL84#CABECEH%ZgC_h&L>}9J=+-@3U0TU;?%1Tbc{YIVv!;mCIn19ASOK70y*%6pPC0u?M1+3{e6y%1p@(GNgR*8HBN7`UgCem zJ9652-bMOmtiPsSDrj*H)Vc6g?va2YLsH8f@g37S4rn=XCGaY8ZfKgownngWo`2w$ z@9Y0*&~}F*7i_ny6h4DN6KAFu{Gt<GYGf5dbD z3T1W4E5$4JeHAi_-6L@z?4uIH?4#WbUk=Y%`)Fy}1F6E4#Xr6_%)Dpz*kYg0q$j2v zP3-r-pZ{=q?F&0y1FhsE<&%%{dmZJMVG(d(V1yDM?tjxhz+e=azU1QB(BGhv$J5o% JWt~$(695HLvK{~c literal 3380 zcmY*bWmJ@l7X1hrhVF(-NlB+P%+TFKN(qA^&6UO(k>-NrP=kbYsGx%*phF`u2uKbg zEg*0yL8-@GZ@stHU2E^N_xXADIzM)@g_%Az1qTHH0Mv#CI#xHT_YcX*Zf20=%Cj2* z2O2np001T9KO_PQi`f8x!u$agYGL6M5E>BT6A;L22!-+n1_yXQc;p2D;d5wfxQ+D| zi~8x}F~m3tkz*WS#Z1m?1xZCPWeSP$f$5Br_{wIPEj#ITbxAn~N|Q*^(-CRRmf}YTzVh_Ailmgm^W~@t->LS~jghN&(;Ax%N9dMO5RRNG&p^&n0YOy@;i3N)*Wc5( zye6rIq!0`Q=*U~{^Mzar5CLbgYHD}*aiEU?QTPNUIe;@Q!bx)_Uej(v3Y>`$&xmlL znRkuJ5lnzqWICh@(9$D9p!0>Sfl^YyZOGGO6|j&1+=QQOOaKVR^eK*OkAiY{O;4KR5d_b3B15`eTJ%-aBX-3s9Fbd=2iITavnnG`PykVXM+ z0|El!z_S8?N$(J*c5tVOZd2?gse)!Tte~YDsoQ z6tK%8qC3nBU0Izi6erzTlqV?=kei z+KVx*S~3Ks>lCIP$yV|wL$XABZ;xN!Us)1AC(&3^0A4@TAd1SAsB!Tm`DrXnXCI1N zIR${jwt&vBBIG0ppSb1Gudb)tMk@;C*_5k;xmX~PZxv^LUA9#73?P3@Dw7FF!GvP%uVX67Pmak(kCH1kVdl0 z_C1YyAnk8=@{&%Gb|jcodw`tLoo_CQ$RovGAf24GApVT6(}0vARgm{{5|bsrai)TS zj8%#audM<1p?WZ}a-y@|hfLK0K=$cHLc6|94zk%&{VUZwD7Hq4F2;oV3KE+UBdj?HO6m+KG6T_ zVe^ocNwhZ*7nowmV3eYZN`m$%2{I%@WreZNi4EVpv>9g@*Bke@64(;2Es{6j5Xk;K zci*=eq?{wpduJei4ZYUACb!19#&_sMf%eb}dUm)XQA>)9E+iGWn+2n1cwi+&*_6#-$OspFXZx=p}xSz zhqm;;qrQ_Ihfz@{Fvs;L!A01M*g$M>_As_r`6gBD6RGU|HquHmJNcUhv;_gS_F@>Z zXy(j8id>^yp-dG)q+Xp0?dPHT9r zYE5Dtye7a#^JT2VWipvVw@J4-^rdC#8`stLK3+;s_LgvQK40qkgg=oAJwk6rW}_dA zwdG%Ox23Ar)s`tk<&5NDEmlW4-kPA*{GhYqP&4qRNHyvxHf51%Uvx#3vr66sE92$t zTbGB*v#&R(x2)IS=}>IitwvXM=(ahWBWbkzjf9Aa4KGCPLCu^Y+BqLDa+0=R! zf&$dIrTPg6mQa^&Eoh~Ct~+Y^StfQ&tzuH|FFo3{2Yt?~f~$Ugeti`}WI}vG#-`h* zdxch}*ecN~RTEW{{*mF4@{y?mg(7vCY1z%9&7$d|rB*k`a7S@W4d%U5mTs)MK#XKCuW9l2ve-Uc(N*r_ZQ;*0k*V|tJCwxr=(XzQX0eK;!|8xnVvl$vb(bVw4VAz8%Pw=mGLW)yl7IR9c;{)K3XgIvg$?g8jG%k?o$$``rPzDo_U=1_Aa{N1L2l&4fCta18v zYh_s7srx>w#!rpl7poepYD$Z;iw>^CO1Rd6)*-*P{*JD66;x-YS zBpIoVbRs@Ki;U*`l&+~l@cP+2yQ`g6iq&S;&Uo7RbiK2Y&u8Gr^G3eY&3t?&{sB$A zMeO&fFCg~~_tfrKD&hFVcvymFdSH@0$CwOCA#7|O8nUGGTPIIvu?Q|>uKY^ENI^`a zPV%AJoYDvR51M_F-VVc)_Go*EE+WC&icZbrJVm&@)XMTFu#oS)XVd&ml~fx z5^RZVO((r4z0M8KTTV5blIyn4^3MHS8qNHIcKb=jNiIPGG?;1Z*GcYibsMXUsXIIR zH2r^kyh87XNl+_N+x}JDw;~Xz6S1~+3SK(pp;noDoEFuv44U}kF*lrB>LH}?uu!ka zy71h|!|8+hu*TTb_G09PKH(4AVtF-(2%{sL&kyFdo=#-L4@c9`x#*Z!$zStsgmO&O zrYC;sA#K3^2fEPZaoy|GP1SZ)yz}Av(8FfJIwR~otnihJtKW9$w%S$pgn55kaa&;% z*4Y=k7uoSH%KLPSvqTBMaNH4bz;Zn`S)#1I&~X$QaN2u%vc$3w8!UW@A8MNo6W(iV zH*a@6*4ovcg)SscYC2ub&+N}Xd58-uJsO+WKP8Kg8@hm zth}Nbe7SW|4IRBdDpbOHRem+p#L6NSdp5ZuF$R3ILI}0RRyP0KcwpbPE9flm>upHvmw{2LRT9EZ5$fqDt&)sH1HYKKFy5p2Vol zggdw4Y&ks3=n zdP91h(9DTRm!Ey!Io+@H0uuJ90gvs{WPC0-kPISeUH?YHzjqTof&G=2 z{LQ!Sf`0&gI4{rPI&Ug2GDnW@>9mR2Xs0H=#hvGm7F9a6j1O)$|Zi7?PPX zg!62LG5zjuohZ0G$3o5IL)4FvS(+atG{i*+-D!n>+rO}mjdoIfLD5|HB#R^@svYeE zTrg>uQYR6nCPBmCL4B^Ec7i)N-+baNYIJimy3nr4^=}pgCDz$rF@3efyg;DjM@9iC zFG~<>C(Z(o8Q^ktd@A|cLWC*(SC+EIiIHYtxroXUsCa_&1MD{^-c9e;wMDbEZ};+-uRA9pl~!94fxOnz{IXziVsm5|OT08ytF2gW zEFEbZqN1QqX2;^*49_+*om0*_FZpAFNkk5N{tJuWI5{^3s%|h$1n(ZL8|3Jzvql%_ zv9LPB$pn|?Z~h~nglDdBg*jy?t$>UNI7Omx@D~=vllgY_C-m<@Y9NhY3B(AQjZYZ| z;n5un{`*8p;Kbq7TnFIZ z#FKn>H+EX+vA*Q>v?r6E`+p(-fA>EFb!XaGS|I?Ii;cQMZ30m@ZwVOcn&~t_+@Agi DfyOy6 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_seg_f_bg_01.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_seg_f_bg_01.9.png deleted file mode 100755 index 935687c57836c56647cd70b5ce471cc0b0202b52..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1042 zcmaJ=U2D@&7>>yNm<~imoG>`c*p00Ds7{w6ys#!D=Y!{Y-simUduDoj zPB%3kYosWuDV>rsWIXJBdv=lk^_i9?GBo2v9%s=YE-N;qVj3zykT#Sdn1PBmcIhqb zrl_5?p3CFBd`?u6!6+VvaSe;GDXKf_T8dhN7!=@;Zbs5&;8Z1-Qnr>4lW6L2|PumfJShHCQdhxU|2O- z)7eTBNf_%Y7Rxi7ccdy%mj4emj2ha(8My8DpTbUV%z|tNI%vdJN#O?Dyik@Hx1oZO zokM82n#JBC!pJEi3&gVm!-GEE)KJ-};AL4%n+{e?6{e*KO%xbi*F;_j1%(88L*XRP zC-_(}5KMLklASyk7eYd!%9W5hVn7pDx!N{2S(odzf?<)!614SEs3mP=fXb0Yy}lO` zx1N_xu2$cRRF}&VGptwGzY1O5BHiOnYi&ywwZ?}g>2{m6^}9#s6>=pe(^4$we*Te* zHNF7*OK^FW-FSVsb5)<(pi5neFLS$pDpL)#FExAo+KvPKlYzp=m0w+{(O37Ut-0v! z<~7*9uiQFW{H873yz${_>%xWpt82HM`Mq!Yvn$WeM%zDKIRh@gytsa7VwRqNey_!B qJ+ipu9{fI?zC#t?cRZe6S!y^+eN8=xyCrwsyQS$wkM!`=z{DTIno=_W diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_seg_f_bg_02.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_seg_f_bg_02.9.png deleted file mode 100755 index 46e03a1e2849f88de47460b01d0eb2238d15629c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 984 zcmaJ=O>5LZ7>=%rRQ4b!q96`g@E~p`v)>suw%ugc2AWc~3*D2LO{U$nO(rH&H|@o$ zr-Fib@a#dbB8Ybn76d6ng<@3qo}=4lH|>Fwh~(uCIzeU%eKA>!{*l(Ui?VBVBi9Gb9U}b1i#w z)m9vF@(QTNmSs?b-{0PUY*w@8;og70E^dW3j757cG&3T~Fkbt5jXKlHJK&c?1 zf~*vj%OEEs8KNAN%ULAjVj0T_3_g)Z3!Nq0)Ek3Xe5ZB6qr#tt)ywiveH1Pjw-o)y{;7Vs8T64 z%6enS)v3Mi5uXjY&H+~+%S~Fr3wUImgzin^G(zfue#+P#?`3+d-hk_j_fi|nh1?8G zF7~gB9v<=TNtUCw<(pCC6Q6f`$lH4AvG$TbiCIIRZpB|ZzxVbgQ>jeq+V1<^Ul-mU zdH(L{qX&nZLMHR$R%7SHv(BZ=XL$GP6i62y;_sD}Z#%c&eA+$Pu6%s5brkK8i&I;N XgflCKU{~**PTrbPpVME|uHX3s76CJs diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_seg_f_bg_03.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_seg_f_bg_03.9.png deleted file mode 100755 index e98ea714c0952d0219877e15403d6e07b9fbd333..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1026 zcmaJ=PfXKL94^ifL)=Lc1^@8UU0wf-m95PxjCGT#CCgaC4#v>657t2YYWrXXjS0kq zgs8~D#2bkiq9(*U2l1j1FPx0==FOYl^dQ04u?-K-Ca>>LzVG{ezu)`4<-+LIa93{^ zMN#4Wh*BhTcQ8(MlK;cyi(xYL;A|O>p-EiRTu7x2RDmFGX;ZKWHDmtv9!ybGh&D@Q zTvl&LI}n27O1v z%ZsAOaxpd*ixNcCo42v%M{O_CR8XL&yQYIpWP?CatDspd)5Pgf3YOE7wY^4}NWoZN zb6B3?f|Qy-RsBEIvRY^l7vZtre+ql0c?YsZ=%HCxCl@yv2|_ti#)TS2ZV928W)%xn zgppT84#b&u4it(VrXU z6)u}h3)w^_)8r~hpS7Tkn_T0VJJ6OJw1VZ3$O?4LIcVfuWPy6hlG)x%e_Oo<*J$r0 z-j>S}Gi-3Ne_eF*h;&b|Y_%=fv>G4Uq}yH6)_a!@9+M|Amsipy|4Zff;o)E?6baqh z+1>fo_x|MT51UU{PZX(0WWTbySXjGo_xyvEi4<7>Jamp(>e)RN&Rjb<=&mlE-u<}# zjoN-v`O(*X|9R)5-sH{jM)A{~j(B>l_eD7Ob?D{d&;1ql)!8=_p?CK-*Pc-woz%ve U#MVfZyB@sCe0EgX8lG7C0~zv01^@s6 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_seg_f_bg_ef_01.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_seg_f_bg_ef_01.9.png deleted file mode 100755 index 7335e58ceab5f81a1ebbb91ab172aade4d52e814..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1153 zcmeAS@N?(olHy`uVBq!ia0vp^A|TAc1|)ksWqE;=WQl7;NpOBzNqJ&XDuZK6ep0G} zXKrG8YEWuoN@d~6R2v2cW~I!Kh>{3jAFJg2T)jk)8oi3#0-$aN1{?c|g2d$P)DnfH z)bz|eTc!8A_bVx6rr0WloBA5~7C5J7WO`H;r3P2|g(O#HCtIc{+1n}DR9FEG$W1Lt zRH(?!$t$+1uvG$^YXxM3g!Ppaz)DK8ZIvL7itr6kaLzAERWQ{v&`mZlGgL4$(K9qL zur#sMQ7|$vG|)FR(l;>IH8ij?HMcS_RDc2{plwAdX;wilZcw{`JX@uVl9B=|ef{$C za=mh6z5JqdeM3u2OML?)eIp}XpbFjM%Dj@q3f;V7Wta&rsl~}fnFS@8`FRQ;6BCp2 zOG|8(fG&l2A-4c-Y+f-mn1BJMUy)d#Z>VPg@)As;uP=V3xw&xF#U(+h2=`(&xHzP; zAXPsowK%`DC>a=WY04n03ap%qQWHz^i$e1Ab6}wukda@KU!0L&px_*As%NMWo|%`D zUtSDW@9S&jnO9trn3tUD>0+w{G(j&jGsVix(#gQW#o5%<+|td^(AChw$i&Fe$jsH; z)WF!>)yx&9*Cju>G&eP`1g19yq1OzjUQklVEdbi=l3J8mmYU*Ll%J~r_OewbZnqfY zG!Lpb1-DyFaO%|uIz}H9u}BdO69T3l5EGtkfgE_kPt60S_99@i7GGJF0?ZO$JzX3_ zDsHWra*(UpfX6}ltBpkQbKbI>+kXbjeP^x``0_}91)_mGh$az29z>_U=zhTUcW3 z^$Dqx3m8|gGU7jQqN0px)ofdiE801;j?J-8X8aiCwjzLiTWDD#3ylxk S{5bpFw0>5iK#joG@jqGUVH9Nj@@&NOpuXMGH; z>_$-0LodBV1}XH=g#x1xUThz&^u@&~pzS(!kIobSk89iXDX+qj|`I z?L)0eZKz)pb-KO|)Or#TFdm zsBzUisIFr8Do(5tcL9OpIhGe#E*#`JDHN7C9xQz{iRS3NQbLX`#Ui^1ox#|aST>u@ zGTBN7IejcIiXzJitRMslBIxEUta?Gq-JVyFp{qHDjSXZ0Us3HrgE&GHr@vD$?PXcZ zT`ChP80)Dv%QKvxQXZ%%|A(69GTOxn_{Z-*h23P%hHL`5XwcEf#r1CYL)lW)fhtB$ z5}|>7727fhBR7L=5N!`JJV+UqjpgnowAb z@q806R`WG6nG<3mK3vHO4SBANv_TVEIM3DpaK(aLzZFcIM3$jr9EEz!K_*yCSuzTH zsV=Cu#MKLX2^ZwD#0=|S>|Yn1KO)`ZFPGbvY?d1zTBO?@($=>}(uc^CxEGfjlHQw} z7nPFYiqhe;pDOOp-A{dlZ*#Y{J)XVyd7$^&!ifWq)PwD(STM4#zPohIi_T$i#Mm)9 zWxqT8{zuEglar&{3jAFJg2T)jk)8oi3#0-$aN1{?c|g2d$P)DnfH z)bz|eTc!8A_bVx6rr0WloBA5~7C5J7WO`H;r3P2|g(O#HCtIc{+1n}DR9FEG$W1Lt zRH(?!$t$+1uvG$^YXxM3g!Ppaz)DK8ZIvL7itr6kaLzAERWQ{v&`mZlGgL4$(K9qL zur#sMQ7|$vG|)FR(l;>IH8ij?HMcS_RDc2{plwAdX;wilZcw{`JX@uVl9B=|ef{$C za=mh6z5JqdeM3u2OML?)eIp}XpbFjM%Dj@q3f;V7Wta&rsl~}fnFS@8`FRQ;6BCp2 zOG|8(fG&l2A-4c-Y+f-mn1BJMUy)d#Z>VPg@)As;uP=V3xw&xF#U(+h2=`(&xHzP; zAXPsowK%`DC>a=WY04n03ap%qQWHz^i$e1Ab6}wukda@KU!0L&px_*As%NMWo|%`D zUtSDW@9S&jnO9trn3tUD>0+w{G(j&jGsViu$G&eP`1g19yq1OzjUQklVEdbi=l3J8mmYU*Ll%J~r_OewbZnqfY zG!Lpb1-DyFaO%|uIz}H9u}BdO69T3l5EGtkfgE_kPt60S_99@i{-Adhm|GZGJzX3_ zDsHWr;?31;Akg-?KyixRE^Uwg3))|d;=KJIt>gZFSHx@jqg5g;i_AVwJlEl+d`0N& z3I1dcyXWEQGlIJQ>{bZTzw~y#pz{6O^&DoG;!^Z9mYzDO(zPggTIwVTm)qO4&VMeK zIeuP&<5S{ZW;IWxn)~$vhdpuj?ElP76xYxO^^eDdw_jSXXiQg1HTA zV$H%2Z^AamgkEKck&0m!b3M40>7nd8RwG`GrB9smgfq@>YUTR*Mf>*FJ0`ucr%Pkk zGiLoa_@>axb-m;iTl�hg9b_rN><0E0J`UIA`(Vx$u)}X9Yf1ndtI_J6kF_xYLs~ h=QQSYy4y4HFzk+8$a=Tv6{x6T@O1TaS?83{1OSbTitzvd diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_send.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_send.png deleted file mode 100755 index 5ff5764edccae35921613b8728bd2d2c291de0d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1231 zcmeAS@N?(olHy`uVBq!ia0vp^Iv~u!1|;QLq8NdcWQl7;NpOBzNqJ&XDuZK6ep0G} zXKrG8YEWuoN@d~6R2v2cW~I!Kh>{3jAFJg2T)jk)8oi3#0-$aN1{?c|g2d$P)DnfH z)bz|eTc!8A_bVx6rr0WloBA5~7C5J7WO`H;r3P2|g(O#HCtIc{+1n}DR9FEG$W1Lt zRH(?!$t$+1uvG$^YXxM3g!Ppaz)DK8ZIvL7itr6kaLzAERWQ{v&`mZlGgL4$(K9qL zur#sMQ7|$vG|)FR(l;>IH8ij?HMcS_RDc2{plwAdX;wilZcw{`JX@uVl9B=|ef{$C za=mh6z5JqdeM3u2OML?)eIp}XpbFjM%Dj@q3f;V7Wta&rsl~}fnFS@8`FRQ;6BCp2 zOG|8(fG&l2A-4c-Y+f-mn1BJMUy)d#Z>VPg@)As;uP=V3xw&xF#U(+h2=`(&xHzP; zAXPsowK%`DC>a=WY04n03ap%qQWHz^i$e1Ab6}wukda@KU!0L&px_*As%NMWo|%`D zUtSDW@9S&jnO9trn3tUD>0+w{G(j&jGsViu#L&svz|hgu+}y~}(ACh=$jQYGDB@~n zVQ67uZVJ=ulAm0fo0?Yw)0=|O>x5G;C@JI?0Bv?jEy^rQO>ryA&s6|>*(wvaTP$#z z2i2Q`+bxzj_38s1qYsK$q=<$I0aFi%2~V~_4m{zf<^fZC5inUFGjS_qU|@9iba4!+ zxb>rZYUS*kc*yvGu(Lya zrShS}0)cyb^L(E#$!`AGEahz={5;$6XUxiTa$8FLcU?Vum$Sez?iZ8U4KLd_4x#08 zc^%sPA@fprOCxy?iO)ROE#f}e_rUyh?vs2Q3i!@UO%>iWZHEW{l$7K+ZMhxRa2D>w7_Tn;wlc=M))QYWZE*0hM%+Vcm=1en3cia#w zk_v*f_ksecr-Ck!_|Of6kf@|EB)UCHba@LZ=*+gOJ+uwXoXdRQ_y6brzjLm$V~=m` zwzU*R`C{#If{cFeT~kTEJ5C=gBg0nQn!;VE4`&q{QcW64Lpo+C{V)L)ZRFS!*g#Pg zjGj#4RD7SPB7;>t4C@*eVN+B?qiZSZ0K{|}_Uop^e3`k=(7GluJ&`zwTP-l7x94ow zmFq~VxdBzsn8w|7gDVmN17d}CjX~29U5Ux-ie&C>a}1q_-~oyGlT<3+Nw**y(h(K} zR8Y^;^cwCH`4pvMR#$<^h3aqYcA`n7ysF@E(qEW!} zt-Qboo15fNRH*0M1?9DPRa;#RD6e@?cYdOJ%Sqqio~5#@M<)D}XWw0PzFzsYVfw(l z*0;24c*##yR90;P?{B8pj2@hSyKtymnoBOO+Pm|a+Fc{9lgPi`2PeuZD&J7wr}rNp zzufzHtb1z7)pK`zpFhn`j!MZ_A7{2NY?@ntW@>Qp`Vr<`^{*FjcH6?wXZLP6(fd!| k|2TRflFQ4C)!e2ksMg%2(RK5;o_m)%*4iQ8Xzo4r8|F`Av;Y7A diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_warring.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_warring.png deleted file mode 100644 index 7e63d67fc3f566219d4569b712902b8d220dff7c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1193 zcmbVMO=uKX9G`quvvdV9hghl%6M}Qeql%6yP`(`(rwh&V2z`W1@ z@BjOMzOVCrpN2ypg(!*&XHRGaGM^0o-5-$g3}Si+j#y5DS-*Rqp)E7P z3`jX4=c;hjIx+3R{^`D=F+FC;CUfj4-BVGB0vlqTuGr&_uT&CDRj)$U!77NUTvl^DL4SeOyDvqzxUM)e;Q3;Y`a^GOE<23Zj^f11&8AAcJnQ)}&~v zON>i$ysl$AtQt*<@f1)AQU)L`%CU@~W>Vd;OtMSLfGup+@v-h0u+D1{-c4+3N35cH zP{+tCA~asFfcz-J$R9;6t@cYCpa(3+L}fonPt98mde%8;W;|rm)%YsbHvIqXcMWU) zpP2E)7(OVDe-umoh*V&(+$w#t*=io>kdE<4Yy5Ek$akczo@TXVvGVNAvtPpV!iO!3 zGp$N!nTov%_5RA9y$~L3j-3x*+PmxG%)F$npZcTo%F5$h-^TccRn}ck=F}R*P-dcmToD5(qKP@c` zeBZfx=IQMjb{~77B~)yB`N(;3>CTta9m_vo{&x1z(oAU}&$I6jw#SpLSNH7s(|EGB t@cH`U{8xj&H&-d=n*U|WwT+(Uc4~ItwbSg6yH|t9Bb)BiZlngk_zU*ee`^2$ diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_warring_ef.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_warring_ef.png deleted file mode 100644 index 358c8afa7384be24618b75d156f95946368abf34..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2983 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_button_web.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_button_web.9.png deleted file mode 100644 index 04eeacab042c6c1edc2b0ee43f652f5a7640c579..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1331 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_category_button.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_category_button.#.png similarity index 100% rename from res/common/usr/share/osp/bitmaps/480x800/00_category_button.9.png rename to res/common/usr/share/osp/bitmaps/480x800/00_category_button.#.png diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_category_button_focus.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_category_button_focus.#.png similarity index 100% rename from res/common/usr/share/osp/bitmaps/480x800/00_category_button_focus.9.png rename to res/common/usr/share/osp/bitmaps/480x800/00_category_button_focus.#.png diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_category_left_button.png b/res/common/usr/share/osp/bitmaps/480x800/00_category_left_button.png deleted file mode 100755 index 7b7a58d77dc6bfebd30bd83b59ed0015a165d4a1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2940 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_category_left_gd.png b/res/common/usr/share/osp/bitmaps/480x800/00_category_left_gd.png deleted file mode 100755 index 7b7a58d77dc6bfebd30bd83b59ed0015a165d4a1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2940 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_category_right_button.png b/res/common/usr/share/osp/bitmaps/480x800/00_category_right_button.png deleted file mode 100755 index f4b75b6550195835b1cfb9d23266d2cfb0d573ef..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2941 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 II;Vst0H~g!LjV8( diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_category_right_gd.png b/res/common/usr/share/osp/bitmaps/480x800/00_category_right_gd.png deleted file mode 100755 index f4b75b6550195835b1cfb9d23266d2cfb0d573ef..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2941 zcmV-@3xf2CP)KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z0001}NklPFLLmtWDg=bNWRHSzKzD zCdf5N6FHmUKA-*_Q3*4tMh7s!00Rs#z-o=$zoN}KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z000CvNkl`_;KpJRDyD3zsPN$pp3%v5|-ms7` zdSxz8`V7EC_?c5HBqT~Qth5S=lCV}NiXbsS*(2Mizu(P6{w9)y#AUC{;GBDgghU)r zR{1>5#f_Bf<1sp4z-i8+LP*>-r$9m?5h!)O$X0s|WfRvE(nxPOfXkSI1IU~cAR&^_Qh$KQfP$z835kV3(dKrZy>m6i!N$$c;uebyJCGc;hk}r>0LvS@ z*_LG|KiIgDi(KqzWdDz+I1XHhN|2DqjMY=y_y&(=F2DML55#==A;*BDQMu)WM7F_1 zUGpKTlw!OxeQLy^IABy|%o2kMSMwpNZ(c%9D2%V3_R|Brdo4^jD^!?drWGgx;#I=r z8dF%mh4b-VHl|yV)WRqMWm;@hd;DxlNFzP4GpCq)8@t&K6bdQ$EC*l; z7v`|0=^*ap1;HmG9E=iBLDdc(PMk+ZumM?i@>}}Z9;>HLNGzTPQ?w`#N7I|sC7Cg+ zjZp&n)aRl9+*v}Van@zzw)EjJnAj|&YoAm?qByevM|~HylecbQyE4phxELj%Gv|ls z-BnJg!t8IrcY1(h;b4>=3ZD%B zO83sy_<#9|uR{%7a2wez{kW3MY!DK86IrHh70!*X;5H4sh-)^6o19=ZAPdzY1s74qWXo?w?CIJ<-(bhobT|a&NTf1fRZ?)T%oSi)&odnUxb5nhpDm24MG~*f-@tAmF+OsM z(UN8=bTQ~=6BCiDk5^`okoaqCl(C{ZN_`$WW(yN;U=0KW3wY}dCT<_O#0jq){Mk~W zCNU+jMyxL9mFW}`2CvM>Y?i}x+W!KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z000B2NklDBE;@j`EG{4old$n!HU0R3HOrpsG3a|hh3lC7m*k~;E?3R!GU0uO1fdey9 zl>ln~*HO zy=Ui3d-v^JB~+BW4v|+$gjPuHLTdMnu#p;s&Lef6>V;MAFOIzONL~G+UBKOrxUAnH zcXhSrcu(NlCzjMxGp$DuIzDSx{&hAME;N!OhkhA&Q$+`R?(x);u;5&3p|6W*3S76SVHpO?NGi$$ln9FF8GagKM$= zI^Ko-_>Seb9{X%?J#e|ua$XA1%7!LgJDwk4QU(w@U2vkt2h?IBa8p$kZnDpjU zrl>^GQ8GZfm>i|J4s~_=!?B#oA(Vws6db*$i2}pL+~1V~)N$@ad@L>ENTrdAf+8Lv z(|4K)pr@E!Dh23b_ephT@e2w%iTg$>VQwDVIbj2{#%;enMy4 z2m;>$AwZTJ^y8IY4j+4+bNMtvOSs+$_c3v_g-#{;8Tb{5S4ux*0nN9qX2;eKS-W%v zi?21er=6h_t@MZ-7l5NcKai=E_5r{KwgOMD+r`@ZpW^n$2dQ(}|9ld%adJa`LT3*# z7`(_Z;0MkCgHAEfl?1xFQ(oX1U_EeW{k?c^@mW<@`gJOsAPYo+Zs5EFi2%7u>saTy zXnUPbb_K8um;jPa#GS~@)oWBDX!fqTok!(VF+Cr@`dH>)a04 cc^ZEX06`Hej+@$J3jhEB07*qoM6N<$f*q0WT>t<8 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_check_bg.png b/res/common/usr/share/osp/bitmaps/480x800/00_check_bg.png old mode 100644 new mode 100755 index bda4edf86d4bf9142c6aae5cdc6262c02b226b48..8f64030d0623d0d0e00970300f2a9a9d71f942f2 GIT binary patch literal 2043 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_check_bg_dim.png b/res/common/usr/share/osp/bitmaps/480x800/00_check_bg_dim.png old mode 100644 new mode 100755 index 9e3331a2cb5b3f42fb55459592e1af966e2de8c6..22fcaf48c96c3944fa248dbd614cf348dcb5fa16 GIT binary patch literal 1952 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_check_bg_press.png b/res/common/usr/share/osp/bitmaps/480x800/00_check_bg_press.png old mode 100644 new mode 100755 index 7f7548f0622790d98e098ccb6550e5d760132197..43a3e163589886706927acf29a76ecd6ef05e38a GIT binary patch literal 2179 zcmaJ@c|4T+9v({_Ybn_>G{(}+GP}WO3NwSjSjLcDW9DTBGw+yrF(kJ|PB~JRPAC&8 zH<7YaNu5rMbfe-V%c)T6Xg!t|(w*s~bN{&R`}w@@Z}~jW^WC05-hKYQ9@-jfHDEB9 zHrSc4vlfJ!(vGG4kQc~@$Es%qlvk( zBqr7UTP*pBjO0O(h=fL`rlz7&@hDInhsHWNIiWE)G!ADcN7zZygb-V5CzO~kDo_Cl zN6Z&Nd{Br`D6(U~WQdHEXZlwO0?~I_q2ybecx0iY7h0fO74)rPu9i&PFlbRFk;Dy?H}fk}SFR-IOD;sxq+qEPYR#WHb;jGLr#znDZpp?KUmLswcuqx=uuk+b>c&4w$&W{h|l0;+tk;d>n3_B4nlCz4z~dCoglXNbpyO{}ED& zf9${$YV}&Yt_lQyH#pV(Dm`rG^zvW175*^<#DsC+eGp-)GTUinH z>%z5_@g>~+o3|_j5*ra|Wp#P$9h5&GUTN~m%RgWohY7ZRYC`x~_J{hbvpY_(d#91Y zP^-uxm$EBD&swwlwjVDOS;Z-|cR}Qm=UjcfR&}3414&<`gMT*q9|vI>{Y zU`q6TW$e(t9B<8m@*maV)xYGSEzc;Yzn@<}q^hy5^{s{)EFu4w{>Gt^*k;*GNmy13 zbkMo8BQq&B9$ZC+g|!-0PPX?I7&kTA&pAaOZMg*Bg#FCpYyUE%>q* z_Re3)(wXT+jPMGp@(aKlKKW$SF_MZ0hFad#$OzkZX!E>zgZh(V^7L<$>l)w&Jx_xx z$PbgtMSP-`i7i@%o;6TBK&;a!YFVf6vqN_B>fMC|>om<(x8GQY^r~TO%BjdaZs>=7 zV{KkN!PZCIgUZ{Ro7?J)H)5=Fn0YDq!~g6|QlU3Qgr0l2-=ubfjYbabi_6daO!U5n zQMEN^>Q|Fr`i8aejO|KdSOVKeEED(f7|d_Cv| z7B+@2=Nm$7GcKGja60H~xeHQiadj8ujg3W}ojQ;3Ot@@e(NG2K`Iw-|B(z8?P-gGT z@E{eLPdRG}fBB#z%C91*!F<_<`T6c)kBK{eiFVGv2bKDz%w%uNrabB0bnBeit>axW zRWICxX3^sX)kUkr=cihEgxMD@S;O1(Hnk4Tz_pbex`{@o0FF6$g1@>a*U!hU|9sFB vcYIs@W@EKd*`<)^h%a9@2NvFVq^t$2`GDDNQMorl@moNr`BLlLw(j~5@`QuO literal 4116 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 Sebvzb0000{( zJaZG%Q-e|yQz{EjrrIztFe_z-M3hAM`dB6B=jtVb)aX^@765fKFxc2v6eK2Rr0UTq__OB&@Hb09I0xZL0)vRD^GUf^&XRs)DJWfo`&anW2K2iJqZ} zfu)J1j)IYap@F`kk-mYsuAzaIskxPbp#l^r0c|TvNwW%aaf8|g1^l#~=$>Fbx5 zm+O@q>*W`v>l<2HTIw4Z=^Gj80#)c1SLT%@R_NvxE5l51Ni9w;$}A|!%+FH*nV6WA zUs__T1av9H3%LbwWAlok!2}F2{ffi_eM3D1ke6TzeSPsO&CP|YE-nd5MYtEM!Nnn! z1*!T$sm1xFMajU3OH&3}Rbb^@l$uzQUlfv`p92fUfQlFz zskrs###!Db2LaXu1F;0oX%38XA71!c9pK{WEZ05I9L6B~;_TuX71M=u8u>mr9&4Gw znpl5ED19;~XXmG#*8Qw^7ir8GR5I>YDI$#$xyR+Z<+3&<;sE{dOg1<%?ZU z_U8M0r2F*7>s=M}p601^e#MCsyz(CN_5Rq!6`q^ykhbNC{q31*x;NBPW`1bsOIr}} zEaXD4sMym|hcM3N+YI+zcW;_KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z0003&Nkl1uz8GsQo0t0Ypk3M#TW&|Ye4R=fF2FVDyafE~K%?OOZ z2K4e(LdYawOl7HlB?J~feq{UoUW;Ad_k^q$0#^i#fDteP{&&Fr+7Dz!V!Z07*qoM6N<$g1KtF@c;k- diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_check_checking_bg.png b/res/common/usr/share/osp/bitmaps/480x800/00_check_checking_bg.png deleted file mode 100755 index 9bcb1a5f2bbd42a8d7c1f2c65c532cf77c4f8552..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3278 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 M07*qoM6N<$f}cSeng9R* diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_check_checking_dim.png b/res/common/usr/share/osp/bitmaps/480x800/00_check_checking_dim.png old mode 100644 new mode 100755 index 1413cb61681a2721e871450fa2d48343f5e5a74a..bd5a9ed6b7fb4ae4ad9a5dbef1dc16c7eddaa537 GIT binary patch literal 1235 zcmeAS@N?(olHy`uVBq!ia0vp^S|H591|*LjJ{b+9BuiW)N`mv#O3D+9QW+dm@{>{( zJaZG%Q-e|yQz{EjrrIztFe_z-M3hAM`dB6B=jtVb)aX^@765fKFxc2v6eK2Rr0UTq__OB&@Hb09I0xZL0)vRD^GUf^&XRs)DJWfo`&anW2K2iJqZ} zfu)J1j)IYap@F`kk-mYsuAzaIskxPbp#l^r0c|TvNwW%aaf8|g1^l#~=$>Fbx5 zm+O@q>*W`v>l<2HTIw4Z=^Gj80#)c1SLT%@R_NvxE5l51Ni9w;$}A|!%+FH*nV6WA zUs__T1av9H3%LbwWAlok!2}F2{ffi_eM3D1ke6TzeSPsO&CP|YE-nd5MYtEM!Nnn! z1*!T$sm1xFMajU3OH&3}Rbb^@l$uzQUlfv`p92fUfQ;L)Q)j~<+Pl;ks~R$l(__m8YR+|4>XdOEQY5fTv+AF{HX zW{E{DSaKx0=-_;|{Zn>pzqnTV_DrJAoS8f=N+Jt6Twlz0u$}7p{C4t%ew+8<|7xr) z-Y6FRc$fRMi|JDPVZkKs!i4v4n~XvZ)b82FrR5kVa71bai>Et>Wz;REsfx)CV%xT; zOB%7NT(q3H+|WFs(_cT7EAWd;T7yr|m%wXYe~x9}Vm~alhR5^y@!)qp-W|e6+?YMJ zZJMsG@o_44lom`(^;pX#ziUzFgCO&bxga*z(&=xG_St;9)O2Ot2g9N*3EHczjL!aC zEG8Uy=UY|yj~Su!OTJvpZ{@y}Qj{UCk|fQ~&Ua|1WdVa1!haXi?g7{s)Hv1Iwm(@t&ab&p^eDr>mdKI;Vst0N7iqoB#j- literal 3096 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 a{{sL9&=eK>p0wKl0000l3^w)^1&PVosU-?Y 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_circle_bg_ef.png b/res/common/usr/share/osp/bitmaps/480x800/00_circle_bg_ef.png old mode 100644 new mode 100755 index e4deabdf2c7e82374313bca516ada2dc66996c68..f8980c0ae1279774e0d548a9cb5cc5d0cd61457d GIT binary patch literal 3812 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_circle_bg_ef_dim.png b/res/common/usr/share/osp/bitmaps/480x800/00_circle_bg_ef_dim.png old mode 100644 new mode 100755 index e4deabdf2c7e82374313bca516ada2dc66996c68..052b6b4853393fa540ae70f6d35a3d0d6918c057 GIT binary patch literal 3812 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 literal 5726 zcmV-k7NO~hP)KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z000Y#NklfoE5pd+~q|iMJ2Q-P)Q`!rAej+L{XG%)gqb% zm5SDCR6sJ|pb+5xFcSSMiZ*Q!1a06SF3=We&|GRZfZK#|9NN~UHEgrBASaXsF;yki zV0m9I_j2}JX3k81a4AuQWJPi$>H`LgUCi!0^WodMyze37@1Djdi6{E@)&ba4Yh3`E z0PF(5YF#1#9{`vIFbUusfOG%(-kBl*^!5+l*SO?NaGG--0f3Z}F>bafjXKVZY&@Q5caoc07-Me$_$L6b5<sQ52E2-(!qvLT-K}grJmL-L{?FnM!5i0R9TVKM+E^ z`vQNWZ|}$TeHy?^3k!3eSFOCqsGcE&=qQSa)*3QW1X?lQ_csH?h?Hss07mH?phYYe z`#%sGaYi*E1dK7QwI-1w&GCfOm(4cD0h|Qz`W<1{OrHOW6a35NLgA?AyW>jwA96;t zlo5%d$nb-pT}856YiuQiq)gLV0H6}4H4OkF3_b&ZdY+fnS{Df+|3ewO6tk?47-N!i zJ{|hyS7&C#j(E)eyZTh>y8uqz4d`y*4uF4IT$pclD}{eH4DKqWh?LTB-Rf^>t#(^h zj5yAw^Ny4Jekz^&F8~riPEoF>K>?6DufVv!L}3cbIv7+f{Vpv z_nMUAP(wDi3&3Fjl{=TpJ8Md%|CUl|2QZpnoDbbf;Wf^=3If4=zq(xr`FPB-;^~Im z%MID)*8$`KEY$`QACn{pKpH?Mzc6zkpP&C@-w%Al;OAqp#AVAeA}J-coz!n<8geFp z-vMy#cBMkzTLa#E6FdvxorQ(DnZPTZ(ON@FX_U*AAbUO3hrj{*#4`8kaeXpy6 z2_OTYac25|PZXB&N2Qd%OeUQ-Ip=~90xOmr$mW__0DK<6!g_EDXxwZ!espwkac(j6 z%d5~(sj10Sy73#E+d7`LEHhgw zm!6SQT3Ty_LFMe?;@l#D(Hhe&L2r|dZ!Ip&TYj}Prj)t??KnZ zwYB;9gwfX4=8uk!PBUhXZ`s=QCC70ptME!G_|?+b;=;TI;9GYCe|mYj@P%?IKT0Xp zQc9y(DjrPOcCoE}+i~9yt|pVo{Nclg6@E=|`0!zsOeXWbA6#u~-*!A<+r?t3cu-1d zP)c>VlpkGQE_|W39Nz@j8qgZ(?H@D&yySWAxMi6#2m~vZO8ZU2bXqrm`uS?LI+IGJ zN_aq#N~KEGYIUY{^QWIT4bv%>O8bLAFv~Kf=egqmUea2dx6Alf7UpMNCH)Vjl*Dz* zI|=Yub4&Y|WfVP7=(X@Nie{Qy+P_SI$6U9(Q%Xsc^gmpfpLGFzSD*U2()8+y6DO7dkcZJuoH((pG`(6^pZdBV1iPXrG6*5s^D5&2UR=%k zYR110Ft2A*@=mXV57k&CME(<>nwnzQYx`>Ns;pax+#DzrQ|#S z1VNB73}fDPU3u)-F|pC$$BrEnuIoy}Fy@0G$N)f%wTl91q6DQVibxQKNkZvTp-{j^ z)%N;UC=@^_T?)c58ATCcl(+!W6o5krd;ri&8I%xD2%+(agb+egLOiXMQTr$W;M6vt z8^>A#K;e;%o5yboprSQmwS#(~l(r4SAdd>FVHiXy9bY41SO6*%z^u~P#2C|@^HLN= z=^zN`qf+BR5YQ-!(wy@WV@yX%+W?j*fJsVu4gg{?D=$Qtvu&I0*s){7v%X`;4r1Fj z6C%vTVpbji2;~g`u22A%7&CH&5OB^tt#vt_vIly4dgw-j_w@A8bjlvkT9-NJ9w7vr z8BG8tD1dYEgxy}NCq*f{rj)6>Hr0dTIBIz%bEwyKuZSkF-a@7C4Tw@N7)Aq0s; z{G#vs`RSQ4OaJ5C8%qG*Ak^5- z7}JhpPYWUF){e~w2L}h)MrC_&aFA{7*nCh3K^@1QW{hdVtS$g=5JHw{ZKwH1+o{{7 zwI+sPDATge3lY9JG&B_J?CgB#f6~s*PBJt!6cZwR(X_1dhG8hJHHpXVodCYSvW~A@ zBwkIWGVw^EiF2+q>G})4=cTrFZu$MAM~@m08~o_eqsF$*Ek}IMOJ~yc7dYoSQfSI# zvNnKMZd~2|{p?r>;G6MyvUfG>iA4N;*RA~7(7ruehlhvx!>aA!;bA_sZ_ifOt^7qS z7F(0;WG{eku5LtYm%Nv=xh9)3tDAGK)9K7bLdYa%eN?L!^6YB_LXLMc$l3!_0`n2&h{U8o|kFNWyeg@ zR7xqbsXlusl}e8S_{l9Y^V!osyYXhv-UF+m=R1pwb0Y9o^ur(sjJdgm1DqSSh}4lE z|M;iZM@B}(_3PI^(ebyVqk|kda>N)OKG=v9U2ZH8pil6KHL1B?k^1 z;7>mJWbAXF-Tu7qd4EDFxtz;2yk(lET9KJIeXPt(&a43+xCy>a*k4)|_GzK8^jO99 zev@-M}q3nXW@&82+i0 zGIZ?t`>9m=zb(s9E5d&I?!x|=)32`qf9hkbl%>}VgS$}_kuVJDV!rS>-}fIk41-vf zbwiN#{{Q(IemIcG!Zph}QZfB+33jWp_@WH3<{9 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_circle_bg_ef_press.png b/res/common/usr/share/osp/bitmaps/480x800/00_circle_bg_ef_press.png old mode 100644 new mode 100755 index c5751a864c398ec537bbb79fcc2068c5fdf6bc95..ae6ee4a88c3c86e7dfaad58fb5e83f213eee5117 GIT binary patch literal 3866 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 Wwl;Mw$GUj`Z`BZOf~wSWjQl^g4#@KW literal 5719 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 b|NjF3j|rF`FWGd`00000NkvXXu0mjfZ&iTI diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_color_picker_btn_right.png b/res/common/usr/share/osp/bitmaps/480x800/00_color_picker_btn_right.png deleted file mode 100755 index ed6ade94c4a277e605e9102ebadbb8c5fdd5eebc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2974 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 Incp+@8>~rg9smFU literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_contacts_button_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_contacts_button_bg.9.png deleted file mode 100644 index 67e57181fbf7a7d450ae29c2ba4da469c50426f4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1185 zcmbVMTWAzl7#<@HnoFxMirbfAEVNd4=A6k)+?i%8*_mCl;>PV}(YzQtnK{W$l9@Bk zoVb%niB>9?p-KfDL<}}`hTK36liaMXO4re`z_GIs zGMMD5PIc$)qn=hnaJ*b@Uf2!h5=B!cgoY0qVhrin9CnaPvU-xEUwF&5R9yzCL_17q2}w$e5T+7JOImMD ziFzUpWC&^+3vv@JN`3Dg-ODvo~@OYMkOV6>bseY%-%9^}%F@o8&3`*YJR+E#b7dV4XPdUo`qhJB!E z|JySwKD$%7a{gp~S^Wd!+sRj8`U^JP!#^D#&;Bx%eD~Lt&P#b<$6wlkyGQC6t8SBg zfA{-q&t&e!wpW@@e{-QXhZ%H@i}crvLx| diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_contacts_button_bg_ef.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_contacts_button_bg_ef.#.png new file mode 100644 index 0000000000000000000000000000000000000000..41b3a65edce7ce119f9e76dcf1915fce237cc8dc GIT binary patch literal 1297 zcmbVMZD`zN98bNj>x=E?5Op`CA)7d~cX_$HToQV_<}SJRVAqxFVXGBfE_vDuZC;wB z-nDa}Zra)}YjJj{U}1D$29wdM6Am^%6jzIreo&|bsmhpiO07d-g0ntp@2VflJ{U-z z=l?vv-~auew>sKe>ubHW2!hln+k`Y+8{q4$u7cmuJ=%+K+3$$mPN&i9?S}-NKA2?_h^r?CT`?Yut zLscb$b%jzy%8Y}Y+BRZ=&XM+vJkl?-3Kl(rHWxUkKm(417PJA~<_ZyPQ!fYi?lF#` zn-Hfzf^9j~o$5g2h6T`&pYX{9O`>$rPX-A#$Tp!AK@vDg;Y8R+5?mDfDpZDhje#7d+NtR`Cg2E}v2N6DdSa+m?Pqz=2H3-0#E!A{X zLq}bWQq~x9A{g{^D+J92Y{&&dZ@6QY3X38Q2!=eQ0o_Ro5e(k=6;*eLfTmFf1KQP&DJl9piak5UDuL#Dgpy60s6j`9C?sp)r=;An_5lTiez;FAKMDcsEdwXqTP(4Q?VR8Jv`f$Te@YUMMJdeRqLnvnUU zxjTPX{I(mtTA$gdRSwr>-X1F!ix*~R?_OG3TAFKUXoyY>J;|7_%75JXX8ek=@(FS= z@;Ne8dunQGs#Oq9a|;i@!Z1vCeeTnz+YT%z@t3aNA_9RE^DW5f(a~t(?yZ_<$8J1S zUwQ4=^pX3AX2__`ST2|-TZy`^QWe# z8xOB6p1ilt58nRr-LJe}@2>C9d&VxUeOJ7KMWfNW_f`m^tzo8W=CQMl`zOa+Ct7Ov y{``Zv`V{(sXa0J}cp+Ac{8 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_context_popup_bg_effect.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_context_popup_bg_effect.9.png deleted file mode 100755 index d2ace05b9c28f7acbc8493fb1b3477277937b0dc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4174 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 Y0HPe=uQeXeX8-^I07*qoM6N<$g7r(!Q2+n{ diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_context_popup_tail_bottom.png b/res/common/usr/share/osp/bitmaps/480x800/00_context_popup_tail_bottom.png deleted file mode 100755 index beb51c02b03e06ef8e7e47e645873bad551ae2de..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2947 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_context_popup_tail_bottom_01.png b/res/common/usr/share/osp/bitmaps/480x800/00_context_popup_tail_bottom_01.png deleted file mode 100755 index 2b68d0031c52b4fd03297b2d2e2fb0bb7e4cfd6d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2954 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 LNkvXXu0mjfW}1Em diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_context_popup_tail_right_effect.png b/res/common/usr/share/osp/bitmaps/480x800/00_context_popup_tail_right_effect.png deleted file mode 100755 index c839d8ea915c3598d1585c8ee2de2b24ddbff004..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3094 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_context_popup_tail_top.png b/res/common/usr/share/osp/bitmaps/480x800/00_context_popup_tail_top.png deleted file mode 100755 index c898ab2c5beef385eb74d599fbfb876f6fcc8222..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2947 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_context_popup_tail_top_01.png b/res/common/usr/share/osp/bitmaps/480x800/00_context_popup_tail_top_01.png deleted file mode 100755 index 3bfb34f2710f172e0855f7c115f56f2ebb054cfb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2941 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 M07*qoM6N<$f~Ll?SO5S3 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_date_picker_center_bg_press_effect.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_date_picker_center_bg_press_effect.9.png deleted file mode 100755 index a1cb877c9500dd72538eff126014d50f9a68dd9f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3071 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 N002ovPDHLkV1j_Ts{#N3 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_date_picker_left_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_date_picker_left_bg.9.png deleted file mode 100755 index f01153151c1993781988493548b6a3eaee8fb3a7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3110 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 A>;M1& diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_date_picker_left_bg_effect.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_date_picker_left_bg_effect.9.png deleted file mode 100755 index 4c8f57a4fc2c320da0e5e93aafc664059d632f12..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3487 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 N002ovPDHLkV1ja?aU=i$ diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_date_picker_left_bg_press_effect.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_date_picker_left_bg_press_effect.9.png deleted file mode 100755 index 7ae5980a4ae95e57e72e41f8c225dc4e298f5d27..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3500 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_date_picker_right_bg_effect.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_date_picker_right_bg_effect.9.png deleted file mode 100755 index 966793a6dcf444b8c17c5ece5ce2efc9ed44e11d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3422 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 AG5`Po diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_date_picker_right_bg_press_effect.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_date_picker_right_bg_press_effect.9.png deleted file mode 100755 index a175af3ce711c7a985d3d526bfde9dd9c084382d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3537 zcmV;?4KDJDP)KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z0008~Nkl@hzh!GV8MKnIhi$pLcS;@;J&P?_mi`)(Ck|2uN%)lJjVqhQVn|sd8 zGUtk-Y*YxM0E)_g|8fNcL{S7e$L5CuIbaDG1%_00;SXo%H$WO#2J(Q}L@j6Vh+Ty^P-#!-G|&LF*%EuY9w2Ye`~on)34j8^ zDM2g%i#E4*5%E>^#aaMk%fGP-yHp0SQ&r;wzDe zn4+XtuZ)i4)EHyBfhUEg31nE1TENdje&>Y5g-CYfCvx)BEY{zeM4io z0nK|_#i)rFES34|{QtaIHXV+y08liLWVOMo|e}31w>Q zD#yQm$pT}c>w%khdaHcjPv$1SZ3PBH1-N$Oo>N<&-E#NV^}U|w4yx*0XaFK2?VSg< zjE)SXKJ~xd$IA3F9G6iMk>0+~)xPhiuUtBR*z?@};<2j}^s;&UYBc45fQDnJPmI;-m zv|MXQsiba*WRR_>sYv`rx4QR_``qXGo%cECeb0NopU>yJy?>lkHy1k@DOD*D2qfcR zkMj`BsP$VyOz>>ysLco_6_%|xYcDOB#ReE8kPVR*M1nX_fDn=g2_VKqc9G0MAdzaa zr#H*n*~yGRqv!+cHu@Y2U4RCG%&ja zM`98fWIBsXqe9jhfgoBG%K|F!^sf*obPsY!D2w@%oXY&3EJ4}~H~`%Mp$|7;e6v}P z?+41+`M(hq%1>)1%Y*c{^Z&}v^o*gC3_M6oS`>pIsA90zKcxO!Xx;F83}(&%Bb+3t zA|8lflD>U#b~bYrI8UYm5jYwlibA5Y9B>xUs35oi+x0*5z6q7AVKq#+!Qv$a8BkUy{v zR3;0c5=iT!>sa#NSfl^Mnqe6vfJI|?(r6Jsy2&k+#-cGpX>MeGf1KeO2!bJu*FO6XFwo{WCxs$C+Ed%zGQ?# zyV~75pJK5Fm)kM5eZsy))!r4J?KkaZg2se27Vw`ZX(cubP#v80f?~TCz7*G7s+^%J z=engP=a^d=uS!t|7T@>y@oi?vN^o=tJ9y;9;!9n7`!fl%v(fB{FTI}xPw4ytutxB?UvI+!b;O8P@oSJ6IP$px_ zUId1VvG@Nhyv1vEVB@b*1*6iNB*42{%rKTie`Jl-fA8 z{a&wQ_MqC3Hl>;)+t%I@5b$mx-+1Z+xsUhku2MfBfdQ?( z+OpMJD7#9unVgJKZV>9^>h`!K5ANh09-Nc!jZb5cXu=uTC5LnsV=v3fu-8e$YJnw@ zm2yGP6Ib`7M~x&Rhca`0IP@kyBL>)MPVc3wgjseszXUnrmayA9DF?rd@^fLK3N6*I z?J8>!SQ+JFx_Q`{GX-G2v!#Y|Tm0s3Dq^R;PR`g{&z#`a*~?nQfCr?nD&au|y91wl z`+O`odei&jnI@G?g$>}g;8c_3nA!5*l=IFBf7x@mhO{jQGvx zy|OkcycUxRP*ibqf5`K2pGZ6YX08m}AamAc6&9`q0|OiCzj0q67(gl>rMI46FnprD3w zLbg+;J=i!R4igtS{cvaFt4C@_v5)!^{2j`xE~9k!UUq8Z^v}$E z5POwj!0tAKr721zX*($?9iW7^Yo`!)%8e0Hj^Qr{^J|0@+9nHEY6|TvRKiw!FG4&k zf)w0$I;za{gCU1#6>7yzPj^+QW-z=^*0W{iUeBAJiO2c=HWj>WW4phzH+G*R5=aiZ zE~5^AJ2wZoNmF6TB>*|i&%GtbKd|xsiryEsdFxau z>(r7gdgVy;wU(i>D0BHVEy-eybC#-Ui%%$CwLbSIP9NB}+xk@Lbvdj0K$^H*ip`O9 zjT~UhkxSE#Y7Gr7&1HTqMT))JDcOfvcDw@r+TtdW{Ee(sowJkUIH|VZawqfgCuE1y zGt`~=Yt#~jZKt0aM-0m{N2(-~V#f{=HtDo3sP}xWn#nKd&YADGPxP>rowXR9a$8|Oq?dxEM#|aa;CWALI%f!7; z^rRorD^~`+vkp~;`^klAVaW2HTQRvd4-$!;?D4vb)xQiNwB#Z0fzxbO(fsfxig>W_GX>Q`MaBs*@{1$w*OSeeeWZ;h6@;9tHA+-Id6f0BiP*G+Uk?S)tir$te{>d9X$u;g|-iHrGs;}IdMIfe3SFO zLX#v@ZiPRL)EoVsfBfj-ZFzN3`A|{cZBijh1;?cIol{vBJ8XbFQRD-9N(^va5=(h+ zZ3+v;FJ&*Z(hEr3{rhZ@e4minlQv6JdaPT?)Zw(}4EaV0z4I|U{r$`F*RG#iOZoHo z!BJ}Yja)$Cs3~-hYqc_IWGqej*iw(j$rWm$XCGlKr{`*Uu1U*K5`6!)^izIaO~=2w zAPe)n3uOsXb-dd5glp2x7uyS!d(@kJx&SIK2YeNID)2?SR%_sV!fM=Rd>$p)r(M-9 z0v$RK^_o{P(N-5^u|3*Xer%Zj>>9#+;Ze>0+|rX82|Pk?IsPnvsNuK!CO30IMHMqZ zK!cNt^ioo9;Jd4}Wl!U7TGHa(rLX8+L44{z&yd%3wcMr2y|PvGT>aam$(Pk)R{De0 zJ|fykiEu*O3$fDBy!Rawe}v1ro=mbiansU$uBSI93Z~zC#!r%cb6-9f@Dt?*YFXU!thzs|IhI+_=!5;T_+S`XBWmxf)c z{4{005wxYsRj0#C_k7k#VYZWn2)Dpf&yRO0L38?}^vlBdxtfX!4Q!N1Ke~Rbt|_3_ z8y{vkJ{jDS{A6*o`EfBl_7x=VRzzmBRd?OmwA##g;qBUb_A>eP?T>_2HC-!w0AHuU zdTwz~X6ltugowiag*sC&-1fnbe+I1mIkLNPc~!Mi_L5*sHHt0UB?^JGL|d!4^TmVf PzY7kwE;ueG@bLct+8}%% diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_detail_button.png b/res/common/usr/share/osp/bitmaps/480x800/00_detail_button.png deleted file mode 100755 index cdfaefa326e097939b4398d0a6c52b907869fbf8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3227 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 PzY7kwE;ueG@bLct+8}%% diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_detail_button_01.png b/res/common/usr/share/osp/bitmaps/480x800/00_detail_button_01.png deleted file mode 100755 index a4d932f8a0aee9a49c57a318f3e81c27b505252b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3189 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 XH^2?%M1SCI{s^EQ+)y=kN7?@YvqpU3 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_detail_button_01_dim.png b/res/common/usr/share/osp/bitmaps/480x800/00_detail_button_01_dim.png deleted file mode 100755 index 725440ff23b52c05ac825d943e32c255281cf0ad..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2709 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 Fe*=9Mcl!VU diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_detail_button_01_press.png b/res/common/usr/share/osp/bitmaps/480x800/00_detail_button_01_press.png deleted file mode 100755 index d7b6491da5886090633d1f59094c1a6f39e51ade..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3234 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_detail_button_dim#1.png b/res/common/usr/share/osp/bitmaps/480x800/00_detail_button_dim#1.png deleted file mode 100755 index 9f4d74e59cb991bbbfc3c23ab1607038b9babae0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2702 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 ODKR!MBi$i5h5Zk`Y|7mL diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_detail_button_press.png b/res/common/usr/share/osp/bitmaps/480x800/00_detail_button_press.png deleted file mode 100755 index 17f41d6bbc62d72a9672245e40ba90d8679aeb5a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3329 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 ODKR!MBi$i5h5Zk`Y|7mL diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_dialogue_group_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_dialogue_group_bg.9.png deleted file mode 100755 index 4761eac4ef6c13afb08066359f4f5317bd09ca82..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2849 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 diff --git a/res/common/usr/share/osp/bitmaps/720x1280/00_divider_line_translucent.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_divider_line_translucent.#.png old mode 100644 new mode 100755 similarity index 100% rename from res/common/usr/share/osp/bitmaps/720x1280/00_divider_line_translucent.9.png rename to res/common/usr/share/osp/bitmaps/480x800/00_divider_line_translucent.#.png diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_edit_field_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_edit_field_bg.9.png deleted file mode 100755 index a5fba96533958d5f2978a63614c9a92c919319d8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2916 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_effect_tab_bounce_left.png b/res/common/usr/share/osp/bitmaps/480x800/00_effect_tab_bounce_left.png old mode 100644 new mode 100755 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_effect_tab_bounce_left_h.png b/res/common/usr/share/osp/bitmaps/480x800/00_effect_tab_bounce_left_h.png new file mode 100755 index 0000000000000000000000000000000000000000..371309113c06d1d1dc4952e77e1787296e59209d GIT binary patch literal 4407 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 Ua@PsaB>(^b07*qoM6N<$g6kqqTmS$7 literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_effect_toolbar_tab_bounce_left_h.png b/res/common/usr/share/osp/bitmaps/480x800/00_effect_toolbar_tab_bounce_left_h.png new file mode 100755 index 0000000000000000000000000000000000000000..a5f423f083176e81bad9c7f71a85924fce16c478 GIT binary patch literal 4356 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 literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_fast_scroll_handler_h.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_fast_scroll_handler_h.#.png new file mode 100755 index 0000000000000000000000000000000000000000..5b16a186b4944c55f23e2b65279f264b5930b890 GIT binary patch literal 1562 zcmeAS@N?(olHy`uVBq!ia0vp^UO+6x!3HD+;!d>zDajJoh?3y^w370~qErUQl>DSr z1<%~X^wgl##FWaylc_cg49rTIArU1JzCKpT`MG+DAT@dwxdlMo3=B5*6$OdO*{LN8 zNvY|XdA3ULckfqH$V{%1*XSQL?vFu&J;D8jzb> zlBiITo0C^;Rbi_HHrEQs1_|pcDS(xfWZNo192Makpx~Tel&WB=XRMoSU}&gdW~OIo zVrph)sH0$HU}&Uo07PcGh9*{~W>!Y#3Q(W~w5=#5%__*n4QdyVXRDM^Qc_^0uU}qX zu2*iXmtT~wZ)j<02{OaTNEfI=x41H|B(Xv_uUHvof=g;~a#3bMNoIbY0?5R~r2Ntn zTP2`NAzsKWfE$}v3=Jk=fazBx7U&!58GyV5Q|Rl9UukYGTy=3tP%6T`SPd=?sVqp< z4@xc0FD*(2MqHXQ$f^P>=c3falKi5O{QMkPC;vUD~!GInxu zHF9yafa!I~PcF?(%`1WFO+n~2!>JdP6mkoIHoK%2WtOF;xE1B+DuBIgm5JLe#yHJ` z>P^Az789I$^?{Dj2SqGWM8kxDsRzV_CtDx~p72xifT_I*n5@e!{;XkOVCwU9aSW-r z^=8KTY+*-{KQM}t8@Y{Tq&$t{R>f*2Zz;lHVtN%RPAB!t8v^$#EHLC(V zMER9G1iywvXKH$9cZZw4Jt(y_OL2D6tQmJx{_@G5)!7}g&@IK7f8U;&sW%(X?=%1W z%yV1rv!4gO5H{NeWeFg7di)s1anP2bk{{P_A+}$g?#5HC%Z(+@Ql<$10bnccd?|v3(YHKXgWYKOt48#gXUzkid#q;r#X zRnW%s94@Put;({P_`uzC{(_3Yt%jC|#{eXUe z27iE(K=6Z=Q7c0hsUA}EC|)uzb!I-xyj7`oDPj^Tt^T%?PV3r>SA_9Ort#ZXS~;J$ zuzDKYe@AA|T&Eqif-^WOr_Z~*e0jRqP0`~eOYWUGvBJ>Kuu?F!DfIk=Pd}$FZERfK zZxGWs?Pb~19U_}I?frS^XYt9!?tJl1x`J!WJ=zjes`S6}o;$a1+3(9XU&Kyb3@M4} zGUPnC^~mFmeV3Q}seONU^X@v0u4m;Atw|SW%&PkO=+;;1#W&YDE`A|=*5QTmjT!6S zF>0?fbFyA|%|m6+;_Uk8`!Y;+o$YTZxHSFp%b)9$^^e;}&A4!8alwM`7nF90?0na_ zS^j7OYb4_?*{p=(S+gd|^IM+c`NgIi=nydNov#`DG1e~IB@Qp%S{_l-Ig-U?-?VB2 zul4y5hW<_0yR)|iMz(0yJbZe%V^PAXZ~4DY{$Fzc4f|wPCPuFYp#}evgX_cQF|{sk fexTJ_$6>%QBb;UNIo;QcpwimY)z4*}Q$iB}l0Q@& literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_fast_scroll_popup_bg.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_fast_scroll_popup_bg.#.png new file mode 100755 index 0000000000000000000000000000000000000000..264061485cde63cc8537f893c9e6ced312c58096 GIT binary patch literal 2977 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 XWLn+gLjAeF00000NkvXXu0mjf#B_w{ literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_fast_scroll_popup_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_fast_scroll_popup_bg.9.png deleted file mode 100755 index d80d3fcfcfeaa0d6f06c398a277c5a7403f7d9df..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1087 zcmaJ=O-K|`9G?(MDpQG~B;+w(Gby{cIO>|~g7aUpE1()jJe7tohoq5yDvmFgg zIz(a}47wB%eUKqhhv*O;BCs&%P*8{JQc;KK5FP4N*c)@TL)*Zc_rdS?`~Uv`_kT0l zf!?~!O`9o-s>}2#IWjkgqjn?t@8@n`CDU%4D&Rp>#AVHcRJVzA2r{-d0&`F^CyqXa z35u$rt$YC&)PBi8Hlu|YCa_(?rl>?$;A+Mw#6X85mXoBvK6pq2%S_Tkg376`3`Ly1>D5?dm!wM=yAsQm z%VnnA&LD4u>pKu|YgFYJf403VBmN1kn$sW`& z^706cRjQaRA&mSIa)CT3FgzHt921rO6}+lS8OO((W5A4(q=^D!S*9eU+66u?^mKL# z0?()T?zo&zcPgE!n8?XWyHMdO$QZYwgDYHfohw)6hOJ<`B(efM>lifC9LHoj^;??>3?4E1G zr$|x~v-;}V&U$%PyZ3DA z8-M@%=hBC!d%;Uxk4z~w$D13Cqnqj?Pdc`bZkc(1BGz#EO3$G$iH7+rvpVw6-Z;{< lVdvpX{6akTVsFbdRYSdf{b{`C;c-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN)WnQ(*-(AUCxn zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!uxKsVXI%uvD1M9IxIyg#@@$ndN=gc>^!3Zj z%k|2Q_413-^$jg8E%gnI^o@*kfhu&1EAvVcD|GXUm0>2hq!uR^WfqiV=I1GZOiWD5 zFD#PU%0_}#n6BP2AO_EVu8M)o`HUDF34YC)x{-2sR(CaRb3oXS&*t9 zlv>1qhnW#Q!N zX5nOEY2a$&=wxbS2Gi@AS6q^qmz)Z-Hxp~q&Aq%{;DFibEv*c5!g_JNpz`jJT%3gJ#? zr^G2GUE_Vg$7y-$O7LPS^mPrSl`YTXkHJ9y{1#3mW$G+}Mn z>s{Ah`#Ps=yZzSo#yW=C4N`5pT@;sYonvr@t^0l2=E$4xzb{|-v9|H(9R1wL`Rh5q zCi$vOzF`-rez#EbU{iD%;M7CB>~jSz)uzY0ZghzuvntajT0;Hrx-G zGy9XGr0yBbL?6rWcb?KfBbNKRhAm0n`&IPPDJ+74u(0dT~!P=ub#12u8>{acmI^r;91s86$<_Nxa^CWt z&%Zg?n#@%{%rWD9?GaU>=^d3G>%)4cY_qxbp|V!X>W$>ijmo7{oI77;Og5p*UGt5uTer+HUKV0-RIg~(!*|uDzmvuO{y&xa-@Ad4 Y;qYngcaioDTR}y#r>mdKI;Vst0FEU$ApigX literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_fast_scroll_popup_bg_ef.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_fast_scroll_popup_bg_ef.9.png deleted file mode 100755 index f06c27520b7146d4b0bbeafb3403f16414ba597a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3142 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_fast_scroll_rollover_bg.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_fast_scroll_rollover_bg.#.png new file mode 100755 index 0000000000000000000000000000000000000000..97ae24d5200d88f3f36e6e5f8d0a3aaa6106378d GIT binary patch literal 2848 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_fast_scroll_rollover_bg_line_focus.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_fast_scroll_rollover_bg_line_focus.#.png new file mode 100755 index 0000000000000000000000000000000000000000..95d97b7c663291ec3813f8ca6f3872afe2aaa1cf GIT binary patch literal 2855 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 OWuIpix4(MBmVW@GRu=>S diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_footer_bg_01.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_footer_bg_01.9.png deleted file mode 100755 index ab9dc9ec9ac3f889d30aafe7cfe346a7b05d8831..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1311 zcmbVMPiz!b7=N1$)j&5&0Q1YX4VY4m5e}X_iN+%k65@pj#56I82a+C4D&b!s93T>7qCH6T&33n_sT`cc%zN+q ze!t)Meee6`!{MQQsf{mh1OTLpgL)Z gx9^L!V1|6cFW$Y&caRPiVp#|<-pV8BLo zNEKak0+yj^&%S*X<^V|APNj;grTvP9T*i!jn8@`B8i3s1$TzJih^ac9a6FZMeDN|( zIkrlVWlCJh*WjcxI2XXtxuJ?RH)Y8-y>}0lixfiOLTplzJMD!^q|z;3g{DGddX$}n8o;`%tMk7syM%4V}~Py)wuEGMwMkmj?BC@369wI7ANZNu;YOxPGa$M(l;{LXncOk?FHM!?CU#=hgBKaTz`hV_omCGV4RO3_~;%SmZv& zdplrKyJriU0Q6r2mXEj$H2F^RsHUi{Qt?DYyI_et9P0#if z1j%S+ohQ+1S-HRok}Qc*hHhi+|5GuR1jELy@wZm#9FhKumurnrHfy5;Ju)u=8H{b+ z&sE5jjuiEQO0@iF`TUu0xh?Y}%=bHP9zQn!iF5jk)3p~q+w!q_cW{3br>{Mzocr2- z@;F>L{4miosy})uy7=84sdoL{8}lpp(v9sKz`Z&3)gQll^2?!HLrI`imzNH{e*fp4 zfExSh_LmlDzTeFQeBo&CZ`T|!ya+yDNPt2&_^9Wf8*UMBxdThFxqovqHWS#XD@zjC zSqH?}e66cFyJEC}vE_&VveXt5wO1}}PB!T-pml>Cze=eN+fz)xuqt)s#U!|zE47?S zP(+GE7$g6^`D6Fuk<=$~)xPW3E}H4|Xv(-T|Y{05wi Oe_6%CkbX8_JN6gl{GCSt diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_footer_icon_close.png b/res/common/usr/share/osp/bitmaps/480x800/00_footer_icon_close.png deleted file mode 100755 index 1601390a6ae116300e07840d755cbaaa543c4dd9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3469 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_footer_icon_close_press.png b/res/common/usr/share/osp/bitmaps/480x800/00_footer_icon_close_press.png deleted file mode 100755 index 8d0f69257163a2de80c053ee7cc7e945c38e5315..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3069 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 LNkvXXu0mjf;p4L9 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_footer_icon_more.png b/res/common/usr/share/osp/bitmaps/480x800/00_footer_icon_more.png deleted file mode 100755 index 14377962bf0d8c1a825362de55ab292fee6b9897..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3119 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 JPDHLkV1o1M#`XXJ diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_footer_icon_more_press.png b/res/common/usr/share/osp/bitmaps/480x800/00_footer_icon_more_press.png deleted file mode 100755 index 2925aecb614a7254d82768473310d7a78ddbaecf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1087 zcmaJ=TSyd97@oz@u)?5-ilW2#Qqaz2*L8OXH?y5pmzqV^1tqc^XU^)RGiRJRwzEPM z_EJ!Rl2OoWcSyp7qCzSvErRNyz?UKjf}%1avnV^GyV^tBfpg{izW;iTG$iVlm98zN zC~8@}UQCjGqdONDllAED>pI!i;8-(mL}{FnElAa{~ZE{1V*ldvhOs@gGSr4wS%2HQ0wLVvnBN&`)e&`kk}lgudW(CT|F*w~v$ zDZQOaSf#7CfGS5I0y@MpaP%(27Mut@t1FPR`^?f{7J@q?^qf=8QUi!03xWW{c@?gb z1C>0(`zwOM;AY_Cc#h?KEbsI3LBa16I1c0nO{`gJT1bkuIa}lwp*t`(1(wZZGEBzL zAgi6_!{M;2;q!S3!fR&@EIVGqF3&57&{izX#2PYyt0=dj9vq>Gr*k3b=De(7=h8$H z#yYae@(kyOlm|-E|Dn1*kG63VF8KRTVLO#IA)ACY>ai43xOBN|$`qm&lrgeW2zBMN z*wBG6vOACoqKyI2q!}v8*t2L!65@u9WkZ2+F+vkQqiL!T4TWQ|KsXi(@MOfeP)%hh z>I(*Wf2bl5ii&xzh?E{38aU5Y7r3`SzuUXH64 z_C+knWr;JaTh_nIoPQ#{;~wXmmR#oB9vYS=gQaG=ggA9?C{lBO`fIq`>WR< z8q1#lQrRMo*1em$I4v;a!~B73LpMs$vDO@ZSHRzr#gPn`$9~NHH*= z3wJ^b4Mb^?ZhXX`AdHVFUC8(aqT}eftD^3`np#&Q=D=Bf-*@K6oY#yDV~oC1TR>l| zNgxR%fxZn$rBV?(ozAY&XjVt%{ePGRMz7Zs>+9oem@tiK9_7-p<7h6W4<1F^NWRdu`FKv5K|t*v<{#bAs90O0EC zYH!@>9vZOOY<8c|2e-Gk5R1jYL*Gq^$K!|X zcKZ$Lm^R**G8h`Fx(SSS))Ag#rnJfH;mr zcXxM4sZ=78B$3HvLUOqrVT=*a^R0M1zPrD_pPlO57)O0}c1Bbxm4AG{-v^8_2!a5u zRto?Cdc7WCi~(Z|Pft$}jYfZcD#}N~IDBhr{G&ej_Q!qt<8 delta 1162 zcmV;51ah_q=T20}qA2_!1|1H8MSMQ7RSLVv(% z6%^tPT9n3B1~S4lqgMSmW?@m3N~u}CcE<9@yk~LoaPIA-W52F9=7o1LF!MgoXWr-g zzTbI=z!<|vXf^Ob8V|yQ@E|-04}Zdg@E{)vZsbs&%;)ovNF>gq(dZwMNW{ja zl**M80Knbd9c*oFS*%v8jizac#bRX_jEeUWolZA0FfgFhXf(jGEQG^hrQh$L?&#=% zU@&NVi6#I59v&Xx=;-K+%jL4IudhQQk$_5%sW^d96a@x@0n}>skAJtPQmH^B5|xE1 z2a(I=;PmwLFPf$&+-^5SA`vJQ3U6Z?g+ifEC=^0X&EJchL?QvLR$IJ&5~iV{p(I41 zP=IJOy61MgEl#HsLZJ|3v)Sh@hg`+9wzl>;lga!LC&n0k`}PfOZf>IS@o}V9t4Dsm zzm%|x;*P~)7dD%X>VNC&gZldV7v)#csuc_dow;1DEKE5Fj4?{3Qpn|U>4%1fpt-sE zNxRQAw~9=o$Kx3$N%E^gp&*NaMIsSU6a@eP0)b#!uh)Mv7!03GCets=2>^g$7}(w2 zwKyCOug~X$WHJdaJ%c7H9bkERS>Mys+1VN7^ZAmc|7JV8-|v5<7mP8wzrRP<*VpLw_7?rS1Tn@apUj0fu2-*Nwi!5IP(VeJYhII~(bA8m+9XjEs(sf?O`I z=s@DlORJn-ianFbpzZDL&tqd_pi-$GiN9(@Bxp1mPU3!djr`oa zUauvQNc=-DMfMkrSke!{KBLabd+~41Kn$70DrlzJB?c7|SBlzFbJO~fMgYY0c2oJ)8 cRA2i(0KzA!+_lFX$N&HU07*qoM6N<$g7tDN5C8xG diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_grid_select_check_bg.png b/res/common/usr/share/osp/bitmaps/480x800/00_grid_select_check_bg.png index b7b6fc1d24ee93415e8dd4639440e2d3cdf992d0..c04d36e8c6f74c3c3d49068c7866a0f4ea4f75a3 100755 GIT binary patch delta 1263 zcmVO7zY|5+%fYW1_djaKR1n zhIpkWC4?&oi3!OP6GI?fhSQ`ATS8((mj&viDDqW0kczMUdUtbbY6kq?LWuZgFK-rzodT5rcEINM`^)d& zzi)^{B6(9&Q+fbJQM4mRjzldMOXAX{OA$@e0>G3I;;-%gf!Jos_5jBNfq>)Ity`tT z!^8SuFc_1Ohyn>93FOI$6)1{QTvu1eg$oy6U%!6+Dey!HF|k#Iwgcn{g?~Z~?d|RR z`uqEJs;Y*8e}Hu$CP6g$2nnSF3T0YL4<9~U($Uee+S=OshXh;rP#~Ab0JdU|?(ymIA=9(X2Gl-T8t7Jvd+Z8qBhuh%f?`=JNCN-N4(_VqWHMT3K0X zXlZFNtExJk1sDJon0xr};qr|eH}(N_>5G{_-?g>1mCen~%>m&oz<;De&ECF!8^7Q0 z0LnK4Dthtag=1h~APFqUEuAfCKqMB6z3k}dFw189A0T^IS6Au!`ud{mG1*oU2oDVn z#pdVdkICA456Ct$GLo02y4g%`R8(I$;rv}97QKRb+1N8M-_Qc zzXRIu^?DWHb(U*qBY&;?{r&`CNe41dOiUD}_k$ej?aa(f3^1kx=_8Ryo;;&+t#~q- zjD|v?e4sD|q>DzQLgw^SNQ=kg0uU*nw??Bexk01MmGVp`Qxb@#0M;riD`SBEQ`l&$ z)v8w%WerHCfR<03IH5}Kl4~iIm6Zju|Gi7mvcut6HJi;PpMM}qhK7cQBrucNsRO4^ zpDvL8IcK#4m|9y~*MLAKknh^HYp;NPIV|qt+S=OEnwpxwGgAhzg(&vq}|N6 zbb#gN&6|;QE1MaKCwK4OUD50H2jq1on=+m|cW!@EQ_~Y*axwhkrAT{zjf!0H-cqym)GGaPS!r`UnR9y=`7pRCH)~cvy3}T%*A6|7T%S zmcZB7*B5GPYC0(GW&TG15rDy9FdXXb?bW$luHQ0Ywz`*n3D~b*z3S}l?p^|3N-wN^ zU;!H|Dk`c52M1NB)9D2sZ`KDk({tcgx7+=5UteE|&3|V57WhJ1O|b)zy*i!l>*nU> zZ^p*PB2K6C7a_#s-3}X$#pChDuC6XqPfriQU@#1<$%w_}qsb3UU7w5fdcCo+vC-Js z*}3X)IK}~=5Mpt+!-n)4I1bpy$H&Y2`}_C!d_I#T_TYvIC}J` z?#!7pYD9B$bHrpaO-hjG+nEoE51gQt0yfziN`N9c=~$5K^YUz(5kkavGO!Y#+eq)< Z0RWbh&i%KQH~s(s002ovPDHLkV1m-9Z!G`- delta 1825 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 P00000NkvXXu0mjfVVYUF diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_grid_select_check_bg_press.png b/res/common/usr/share/osp/bitmaps/480x800/00_grid_select_check_bg_press.png index ea085aac926574a5793237b416df3de3882c1778..4e5507ecc1cbbdbeb4f111261f6f6fcc30ea13f3 100755 GIT binary patch delta 1547 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 Hu0mjf9Mh-| diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_bg.9.png deleted file mode 100755 index ce44719333c792034401cd6779e249954d15eda1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2912 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 KMNUMnLSTZMn`@H* diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_bg_focus.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_bg_focus.#.png new file mode 100755 index 0000000000000000000000000000000000000000..3902a484bced4878efec212b7e57a2a3ff3bddb3 GIT binary patch literal 3003 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 literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_bg_focus.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_bg_focus.9.png deleted file mode 100644 index 94dc214c30d0bcb5a200142e42219bdb4e3f4349..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3041 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_bg_p.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_bg_p.9.png deleted file mode 100755 index 134d87b2995a264d38bdcc56c22123e2d6889ccd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3446 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_bg_press.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_bg_press.#.png similarity index 100% rename from res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_bg_press.9.png rename to res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_bg_press.#.png diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_bottom_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_bottom_bg.9.png deleted file mode 100755 index a2cef7e0e3b24cbe19a3de459bc30f419986d1ca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2880 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 emw|5ab{zo9w>;`S@Lt~l0000W>>ZV diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_bottom_bg_focus.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_bottom_bg_focus.#.png new file mode 100755 index 0000000000000000000000000000000000000000..a12b5c63432f83b3ea99d0cf6a0b555d62d7bf62 GIT binary patch literal 3135 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 P00000NkvXXu0mjfehpk+ diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_top_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_groupedlist_top_bg.9.png deleted file mode 100755 index d6b52df6c1348083ef57cc534939fa4c2a6224fc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2888 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 tpQ?|aO=Zh+&+HZZXOR^0SKJM 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 FzW}A4d5r)7 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_header_bg_01.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_header_bg_01.9.png deleted file mode 100755 index 283360ad04cd083f8b4f21c20fcae8edf8f670e0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3178 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_header_bg_effect.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_header_bg_effect.9.png deleted file mode 100755 index 95caa238547028a6e29921e477aca748a84d67ee..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3134 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_header_button_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_header_button_bg.9.png deleted file mode 100755 index c1b0ae92c75a411f9e55abd9cf3583f9bf24a7f3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3214 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 A+5i9m diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_header_button_bg_effect.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_header_button_bg_effect.9.png deleted file mode 100755 index 841020e0ddc4cd88df23f29ab657983d2d86382b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3758 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_header_button_bg_press_effect.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_header_button_bg_press_effect.9.png deleted file mode 100755 index 700c2d04ed0a55589bffd1c618964f86fcc7eab9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3902 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 M07*qoM6N<$g5Ez+6#xJL diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_header_title_handler.png b/res/common/usr/share/osp/bitmaps/480x800/00_header_title_handler.png deleted file mode 100755 index 082f3cabdf0dea7d7f996a757ca2e5f5b3481740..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1146 zcmaJ>PiWIn7%xmjhQdywGBCuGV3YTf^-sd;Nb{1eVCLuw+s&oP+Zxv7#pKnt0}u0{ zhzBp?N$~DL1doD4yi5@$h!+p)4&p)3i5Hb^^`&d)4r75N@8x~J-}n8#Ke;_URXQ6Ol_|1H-cDg7x*5p%GSwek>`3Qbg97a1~q3*b2^DImk~hP z0a?Ihp#bHvTrPKklK=!FkVGh@VNR7L6#%Y(@yuJ~E~ph`_I9`Y6yPXc=a{~s1V<+-L>XCp;80{Kq(gM#S-Id^n6>qUl<2~{q z?k9_-O>Ent2n8TUJ)1<|0A*Q+BYc0)I;Iu;KllUr<7y|wVg<*f89A(q3+MK^I^0oW z*w>(1cC>_96-~Plv{~unN)*Ba_V;rp%DY)bcQg#( zP^_v)*rp_^64Dqn)O4Lt64yz{=`$H_)(c$Hij!J1MNBKgk#`NdW<-3hmv+@Vz&q4{ z3=L??ieVAmzDHlXumq*dD=Y7cOqPZKvcj_h>1>zm)VOE=$r6;``jU%pBAw@Xuxy1#$k>2BY;d;I0eRAKw! wiZ-%VaXUL(?=e>zUE8Rg`uJHMxiWMNq$Y2le+~XV|CRg=%ElCWT%5o057CQzvH$=8 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_icon_Back.png b/res/common/usr/share/osp/bitmaps/480x800/00_icon_Back.png old mode 100644 new mode 100755 index 75880ae346a91c11e4290ac0f30f146ca2fa33bb..7e6851d99ac6f7ee390835b6a14187f81da698d7 GIT binary patch delta 508 zcmV*esiBL{Q4GJ0x0000DNk~Le0000g0000g2nGNE0L8<}Td^UZ3V*pt zL_t(|+U%I?QNlnJg}-GeAXZ?gK&-&ffp&luXbE%x9Y6=r0b>Qk3W60t2ge^q2a+Z3 zZW10dxjXkqVCUw{eV!X5iCd5!HzFO-4rm9o1L`A&35FepIR=8%RV4WM);OjFmlwg?RyddE8Hd z6tVTM`k%_p6xItuH4~Z$MOC+oKqqGgd8j*~XV>WoTK;zy?Ii2y?cWCaqmMGUTOxtm&;n&V`0FRD5xuISJ4 z;Zwh1&x{>O_B}An)h4qNPf=~qqfJr7P5mvjTAmuPu>eMGe<}H>+2TfsS7fJ(O}3{f yuU^+haG#IO)nUK%Tkg7#WF62BXb1G-@;v~yJGbV5A$sWm0000YALtXis)>{VR=^@)e-iksf(NG7=e|W zLMRqm4M3_WNzLKYI#MAn?b7=aZ{RnOYU9$b4Y}${mwiom0j_!(Q>u8YSbri++aYfc zJOS50Ub1(AuezIg;6rjp%sN8(*i*tWYNf7 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_icon_Back_ef.png b/res/common/usr/share/osp/bitmaps/480x800/00_icon_Back_ef.png old mode 100644 new mode 100755 index da925341feaf18f0215119c790401a2a2005605e..f78d47d8d1238b89d3e02605644fc981dc3a55a4 GIT binary patch delta 1059 zcmV+;1l;@79I+iCiBL{Q4GJ0x0000DNk~Le0000g0000g2nGNE0L8<}Td^UZ3V+;5 zL_t(|+U%HLXj^p@$3G{zP0W(5OQLB^oh(zVwT0H=+pJIvqcW3OC%z4&kCw_D_@W*5 zr4R1KCm(z$`XnU?H85Ej()pm2ilMdQsz%tbX;E6E&7J+TCi(et1J{tIH-ENuEC=tbnLrfF^2Z1!j1CtwBm7f^s6 z3>c3kU(v1LuKWGgHB(=znH-Mc4I9D=RA(+S}W&06DAmczJpGIl!08<;wm@hr^K% zg+gBy&0PRK0lWarDWwv7?x^A2N~vq>>+7G#VzHpb-94O6r$19lU9;$FYisNJ+S=Ns zcs$->TEhu+dOV)D0JoW|6llTU*xlVtrBbPj7Ebc9SS&VB;T_+tlz$rA-rioCo15!3 z<@O<uhap^=)o$E-o!Cy$sm*c-N`xx}&1x6j>0FF{jh{Qb$L} zm{A1)wtyQxpYOzep|2(#o}8GNh*qnflv2lMXJ_9t)pa*uc}LB*0QC9&{>y`dgWso8 zsZooC-KyQpWHJCA(|@l1B_h6RWnQUt&?1qDcW7uRQwyobUf z>7eWSFG{Jus|75~H#$1{DsbF1^i(_^KV2BFMd2?1eIAdeTSOLWjeR?&9*vBQJOO-ppqe|c*Bf13T}=W7QGeo$L?S2a*4)*>0wVG{ zkTPW7ZR7couC6ZoodkUm@b9Cz6yOCOG3ELqkT%Ae5{bk+fk5D+I|X_Mc-oMM<-|g(z0(F{>dJ<8Mndh&sRfeS!4@F);0;{jtwT}5X^OD2=&cXoDW zORiHd(0Dxlfq0?VD{k56=jTsmGMPE0)F(=*qgM22HKhfBjg5`>lgZ?c*Xv!h+wEm1 z&E;}px7)o=r}Nq7=H}Bbmunk%8~EB%D^jB!1wJggUCP-%zz@I|#(}cl+%^8qYk)RD d9{|w*1^@zZs~IzLPfh>;002ovPDHLkV1k+y0q_6- delta 966 zcmV;%13CP$9n>5liBL{Q4GJ0x0000DNk~Le0000b0000b2nGNE0L7jl1F<2W3V(k| zL_t(|+U%I`Ya4YO$6w#}b}?=G_*Rt9Px%%>}M_(%~4 z`WN`X2YnPapSFVvn=RT0Q$(^tXol0C=-5!M=xji*((97D_2YwmBd27^C8_O%zTxvA z;V$>i_x=9-Iwd09ZRp}I#1^UlHGe6i)f<#j4+4jPRp5Ll55H5A87&ezW*A0)5CluW zPT(qFZ;E_MseYx@Y2dyf2xfp!fv?8L$1@u)pO)$va1Zb`@B^>}RDo@#X{I)ml$NS5 z2!ii{?|?;M1&|Flx>Bki7y_Ii2tEg{11=D3c=k1ss^00Wl}e=;@Ho&N@qc;00XLd@ zSVT}ty=WN5(?Jl}El9Nscm{Y3h(#dO4crTC(^-2-M6T2&1v~;A0p@^fEl3pu62Oj# zS*!q4-;)L&)z6s{k!%0Ba(a6DAn>e~P5sAqsS)c1GQbhjG~WT96A@~Gi0pA)_ea~d zUv9x0>w#|Ier3S3x6tSIh{#b9IpcYrozLeV3jO&Vzze{E zdZZAM9ufJ_^E|tWr2F&v{3~rXVrzMMxd?0zo!H)ifq|2EA{ABAwtq?0h|SH-y&IBp zC-9PpG)(2o!1KMmy%&athKi2kyca>zRwjD)%^T?O!rs-H8wW3 z518J}#o_S6!opSHPyN}<<#JDL);6;pI1Z%rtah_jK(pCwvaM~V4r<%YT9fP6w0{!7 z72uMd*90(TXJ=o_WHRU1gVYni>%h-?g+d`)E|<@V z$i*-r5xG4McYqVNZ67cU;M1&07*qoM6N<$g72EmBLDyZ diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_icon_Back_ef_02.png b/res/common/usr/share/osp/bitmaps/480x800/00_icon_Back_ef_02.png old mode 100644 new mode 100755 index c2cc7f95ee57609973b44c26dca0a48e781f5284..50ab2c008e75a599b8a49c3328ff86570af3f0d0 GIT binary patch delta 1078 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 P00000NkvXXu0mjfa}f~$ literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_icon_Hide_ef.png b/res/common/usr/share/osp/bitmaps/480x800/00_icon_Hide_ef.png new file mode 100644 index 0000000000000000000000000000000000000000..a0fecb4255798d7229fce20516843dea41a48afd GIT binary patch literal 3885 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 literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_icon_Hide_trans_ef.png b/res/common/usr/share/osp/bitmaps/480x800/00_icon_Hide_trans_ef.png new file mode 100644 index 0000000000000000000000000000000000000000..464a17d86e38fdc32d4b95fcb8b7c8878bcd705a GIT binary patch literal 3251 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 literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_icon_back.png b/res/common/usr/share/osp/bitmaps/480x800/00_icon_back.png deleted file mode 100755 index 970619b698bd163a02ed4c39ab041a1d5541fa7a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1256 zcmeAS@N?(olHy`uVBq!ia0vp^Y9P$P1|(P5zFY^SBuiW)N`mv#O3D+9QW+dm@{>{( zJaZG%Q-e|yQz{EjrrIztFe_z-M3hAM`dB6B=jtVb)aX^@765fKFxc2v6eK2Rr0UTq__OB&@Hb09I0xZL0)vRD^GUf^&XRs)DJWfo`&anW2K2iJqZ} zfu)J1j)IYap@F`kk-mYsuAzaIskxPbp#l^r0c|TvNwW%aaf8|g1^l#~=$>Fbx5 zm+O@q>*W`v>l<2HTIw4Z=^Gj80#)c1SLT%@R_NvxE5l51Ni9w;$}A|!%+FH*nV6WA zUs__T1av9H3%LbwWAlok!2}F2{ffi_eM3D1ke6TzeSPsO&CP|YE-nd5MYtEM!Nnn! z1*!T$sm1xFMajU3OH&3}Rbb^@l$uzQUlfv`p92fUfQ_=yk)X7nBro3xGDeq!wkCrKY$Q<>xAZy=;|<+bzyG z&4cPq!R;0ooO<TaC){3sQgIY<0XFvc4}bDWLJ_!go^x+7ftF*WW&+!EDeL zwa{93ikc4J)hlk92P9re-<5LIJS36Tnb)&0DWU0~-0ia)`J@&;x_4&s`9H^e;|gpEGUr*e2#L&1uui?dvY!=gjL{mvi_@o#GDGUE6rI7YQERyKt3nL`Svij`EPr zoRfFA9Ao+3DP@+ZnCDcG^*rO)W~0oLlHtnVuV<|LJv)AfeW=WtgFxiBc^eZCgS(r& UK}2C$AgJu|boFyt=akR{04PztM*si- diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_icon_edit.png b/res/common/usr/share/osp/bitmaps/480x800/00_icon_edit.png deleted file mode 100644 index 8005ca187ef43ead702afeb80822096c979710a2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3577 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_icon_edit_ef.png b/res/common/usr/share/osp/bitmaps/480x800/00_icon_edit_ef.png deleted file mode 100644 index 80bc218240ac350aed221fdd9b0b5581daddf395..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4378 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 Ug+bc&xBvhE07*qoM6N<$f~^=ZUH||9 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_icon_jump.png b/res/common/usr/share/osp/bitmaps/480x800/00_icon_jump.png index 4a9a404a7dc90b596e216c2d29aae16af09cd4ee..518aa05a70f0d6e797b932beb1324480cbbee5f2 100755 GIT binary patch delta 283 zcmV+$0p$Lb7q1r~iBL{Q4GJ0x0000DNk~Le0000U0000U2nGNE06Q?QqOl>L3V+&3 zL_t(|+U(ZR4T3NbfZ_j$126(3;0SKQ3QnL-;0lc32yTEISSQd8&Ig}>R%t!bkZ?&~ zF3_(f*DIo`v%(pujf@wtM{&KZs*Z<0`_DKIGsTxxTE=zsQI}WMLWQK) zL6L~oKnHXPP0}3EWrEgs@VU^Rc(`*3cc3z8 zQd^YUwA<+urvQ8iJl_HjPu_X=72T_a&O2NAS=8G_!7vwsKb$PoJybp%HCo; hO~Mvli)(4{djM{8>bcazzd`^2002ovPDHLkV1gnscLo3e delta 257 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_icon_jump_left.png b/res/common/usr/share/osp/bitmaps/480x800/00_icon_jump_left.png index b7ec3140e179788f948794d482caf86a1f1495df..83f603f0993f821c18b7b33453fcbe8f4f66575b 100755 GIT binary patch delta 296 zcmV+@0oVS!7rYlCiBL{Q4GJ0x0000DNk~Le0000U0000U2nGNE06Q?QqOl>L3V-KG zL_t(|+U%Cy4T3NbfWI0Bs2ey!M{pDw!3}f+H_%O3fe{#?8=Mc2_=~o8MIPjm3n``f zxc@p4VGda_ll&jJdU@jrfCpNHI2l<)Zi!<18jh` z&DHtP@Vn$PLUrH*(0p(qXkLuJL46(Dk&_Xj)q&G2Z9beoA?)*9UBbh>g9Y6Cn1M}0X7HST?)4Et`n24b_^*fI;jbwi>6Tz~a3!Yh-%`h<%x u+NYDj-H`r%c#>G>`O|f|&@bSr#i3mQ0000E&~7qvCw7`e&Xljv*Dd-b}m5 z+hicnwqKd=07oAf88J!kXv|UYd%$7AH2VPCetw4oE{#k_#q~3TPRYvejr)I1Wn(+* zn-qHnNkg~Bj~{Fob67BbT;rj9Xh&kpzo2v%2gW(K<-ahzQe3z{DT1Srd2PcP_O&ex zGG+}ihOhMBzw3};@T~E57BBVx8=(@i@_SKk=yh(lw4#{V>k@Me9*X?BZWYM%(r%HK zkwWChzd3bRJ7t(3d^@VldW!#X>FlX97i30sR^%<`Ia}xPXU)YngYvI&9MNTRdk<%Y r2fP*PI3Z}ZW=-J9Kk?hA-O6Ur*x%q>Fi|)h=ywKBS3j3^P6c-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN)WnQ(*-(AUCxn zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!uxKsVXI%uvD1M9IxIyg#@@$ndN=gc>^!3Zj z%k|2Q_413-^$jg8E%gnI^o@*kfhu&1EAvVcD|GXUm0>2hq!uR^WfqiV=I1GZOiWD5 zFD$Tv3bSNU;+l1ennz|zM-B0$V)JVzP|XC=H|jx7ncO3BHWAB;NpiyW)Z+ZoqGVvir744~DzI`cN=+=uFAB-e&w+(vKt_H^esM;Afr4|esh*)icxGNo zet9uiy|1s8XI^nhVqS8pr;Du;&;-5A%oHmlCktm|BS%*=S4U$*Lsuh5OEXh97fUl& z11A>~Qxi9sUYGpj(%jU%5}4i;gkCqCdO=Acw*Y9fOKMSOS!#+~QGTuh*vnR#xZUE6 z(>$o&6x?oc!Kqgt=oo!a#3DsBObD2IKumbD1#;jCKQ#}S+KYh6`bGe!6$1m~W=|K# zkcwMLfByfsKkUG8EU=sXOp=?MTdKlQ-Xq@|isCa;4TWbd<#N!H?QlMN^yuEsB1>gu z{wo`wMBlk_V+G%mGUkul{`{#)RnmEymYl4el$v^0?P`)(N?%V8kM)FId`IS2R#cqf zj68Mj+`Mm}pP%n`(6e?Gb3Ry~RKvCPi`Il{xsIorTv<LOic^d z@bK8*@PqrLSbAz|;e7jgyRJEF+EdziEN`y7aNvN$=T}!(|6KBfDMH47zFn-Axw(1M zoi|ffEM00UpR#k?wr?&vtZe)SSL==~{LXyh;}j7Eh0~=4KVq0>HEm3ERETrPoY;A~ zNN(2jt1LBs!QCs9EN|+ysqTp0o_AG0e%~Ly3H6OCcNdt6^USxYyma^a_3I)UIy(~% zHYKH4+U$_;I4`_XtnVVLNW+i6^&A=sR}F$bWbCf`5zQlz!0_~E)SjX*DaSxXny0Iu J%Q~loCIIJ4=^_9C literal 3234 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 UWdFu|n*aa+07*qoM6N<$f{K3;ga7~l diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_icon_more.png b/res/common/usr/share/osp/bitmaps/480x800/00_icon_more.png old mode 100644 new mode 100755 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_icon_more_ef.png b/res/common/usr/share/osp/bitmaps/480x800/00_icon_more_ef.png old mode 100644 new mode 100755 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_icon_plus.png b/res/common/usr/share/osp/bitmaps/480x800/00_icon_plus.png deleted file mode 100644 index 1b103332ac1b42d03fc23a1ab5f56a5b60c3be72..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3141 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_iconlist_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_iconlist_bg.9.png deleted file mode 100755 index 30726b2c4a3ee3305bcbc37a42bad203ceba110d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 473 zcmV;~0Ve*5P)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2ipuA z0|6NR^lY5~00CJ^L_t(Y$F-GVPQx$^g}-DeAP^vK!zsA`Ie@X1rU`$ZC(A2?tq{q} zrZrz*9Qy@MkIssbfYj;j{DtWm*aACXulZ9^fmT)sdyqIACa?n8;Mu83{FtY1sk(Qm zYf?M`MK7R)x1Td^1sfgsQ(`mv*jxx7w000DN$epLYv3MM6h!#;Lbz205?FvM2k#kp zT9KCF#LiP**&`>{uYoVEZLZ!|!6WRb%gZ+n@>_6M%=%sbDlOeSM01ThC~Er`;1Rgd z>01T70(ar?X2s;@7G8FMce&c&O3cG1_uU{9@S%01V(-$^4Bmh@2iiE#nSkp6u7d2f zZYy|=c{kB&ak|nn}HoE-#ObfuUP85*(vnt7{j3+l+Vha*`_z7yin8C z?WhKDiw8RE0rTVH{>uxu3@-1@Uuz*q&Xc{`9QvRw?4X6xTkO{KU$_4kg1MnUG9DqZ P00000NkvXXu0mjff9KD& diff --git a/res/common/usr/share/osp/bitmaps/720x1280/00_indexlist_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_indexlist_bg.#.png similarity index 100% rename from res/common/usr/share/osp/bitmaps/720x1280/00_indexlist_bg.9.png rename to res/common/usr/share/osp/bitmaps/480x800/00_indexlist_bg.#.png diff --git a/res/common/usr/share/osp/bitmaps/720x1280/00_indexlist_bg_ef.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_indexlist_bg_ef.#.png similarity index 100% rename from res/common/usr/share/osp/bitmaps/720x1280/00_indexlist_bg_ef.9.png rename to res/common/usr/share/osp/bitmaps/480x800/00_indexlist_bg_ef.#.png diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_label_01_normal.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_label_01_normal.9.png deleted file mode 100755 index 355f50d46c5c6b2bf0d0f26dde95b1a4bda17e30..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 281 zcmV+!0p|XRP)uj^9HmhH0x>N69I9D;O%Dw=`^!di%#cm4C&Q)!g&MFC(b>SRJH8U6xkbAQorl{3$1Xz1 zSejdMs!|+abJ#;{j0X_|#337(cqjo`lDkYJ|9oAT$~cz7gfIH!46`mIWXRq8Oowh(GBNJ%~8|&Xxrg`G#k?#KI06TGU7I z1W9w$)1?q>w^&>;?D)%xqA3#s-4!4Y1ltbdT15M#g#LA7RkUB8bdgX(KA!LldLPxD zEi%pByM;m^^+wt2S@cr$x{8en8#$z)ra5}To0h3)(Rdb!YBnjyHBE$2mL#Z&(Ox;4 zjV7R+Y}r_iD@mdl15z@s$pBJT5<*qWgG5rx<}{!tTHJ!;6WuXTOV^^h%iP2}xk}DM zI>BBU<9e$C25OjKzlL2lHyGm~J8U^7ZusH#EJdp#&pM3EyoYUeF~5qnioPcOU))Pv z^L=tAP-ld&IQ~;Ctu0!C;dG_+>0+gMkV8Ahqpk7q+p{WdtNDW3TMmA^eF|=z+Py^` z{p#ZBn_W*mYttd^<-z3fnVJ0GuRedWz+Y{@fBpMZ?d&CA4G|I+W-In literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg.9.png deleted file mode 100644 index 351f1386482e06fde2cc9564bea62f9cbd6dbf98..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 353 zcmeAS@N?(olHy`uVBq!ia0vp^5anMprBNVYeY$Kep*R+Vo@qXKw@TIiJqTph(ejM zo~fRpfx(xeg+NsoJY5_^JiPCQp5|(H;5l=0{s(c^`i%+|x?jSpK23Qiv1yCMZNbfQ zRUAz|X=UFG1w%!*xwr)C$XU$#!?7~?I%}?!>+VnG8l~D>1^zWKirL<^z8~hWMSp>{ zrIK1azcpUqe9Wr+Bb4~&M#^CAd=d#Wzp$Pz1NP{>4 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg_bottom.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg_bottom.#.png new file mode 100755 index 0000000000000000000000000000000000000000..7e6f6a17184c08f5b991f0f2b15f3506cbd17201 GIT binary patch literal 2909 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 Hu0mjf=+|YO literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg_bottom.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg_bottom.9.png deleted file mode 100644 index 90d73b938d4c66396d01b778718f2dbbf7981e32..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 302 zcmeAS@N?(olHy`uVBq!ia0vp^5anMprBNVYeY$Kep*R+Vo@qXKw@TIiJqTph(ejM zo~fRpfx(xeg+NtvJzX3_JiOmdHRNkh5MbHL=IG9a0rwaR*`vBQJ^Q!T_2I)Sn=(rssx!9ddF{wJ z8Rehfa`W$!i|OgyOgUT^#96**Hr!+gX5=tEBYGgExkO%3`YAZj%52 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg_bottom_ef.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg_bottom_ef.#.png new file mode 100755 index 0000000000000000000000000000000000000000..9851e6d1a1a006e65cda83e9b3a8781ea348f843 GIT binary patch literal 3085 zcmV+o4D$1dP)KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z0003vNkl&4<}GMP%Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D02*{fSaefwW^{L9 za%BKeVQFr3E>1;MAa*k@H7+qQF!XYv00045Nklg(y~M=y(hPMpv?-`mSW1ZW8(xt4(R`uq8aPMD@%!1T6hzbW*1Z0A2 z2YGShhPBswyF2E9k{n*#-7$N^y4BY}dY~=`8;;8YkOUhj{DAlXtbQbdJ`B|Z(hD!I g;68v=<}{!g04=3L10rdEz5oCK07*qoM6N<$g4!^?ga7~l diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg_center.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg_center.#.png new file mode 100755 index 0000000000000000000000000000000000000000..02ee1d1b0b18652b8c0274f29e607903e0584a21 GIT binary patch literal 2860 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 P00000NkvXXu0mjfWRGh{ literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg_top.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_list_group_bg_top.9.png deleted file mode 100644 index 44d946aa6afe515c22775f2ae435d5f3ba54ec4e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 310 zcmeAS@N?(olHy`uVBq!ia0vp^5anMprBNVYeY$Kep*R+Vo@qXKw@TIiJqTph(ejM zo~fRpfx(xeg+NtHJzX3_JiOnAI&w7_@SHyB|HD;Y^9RGh`xUF+9&?Gj+A*8`V?fJ9 zHQ(J<9UM0p6vTAy6`1^#z0|_Xn%X(R&EL8=E?Mo53cVju2lS^FNt!J?EP8 zh0~hj9~6|&@qM;V-gKLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z0003~Nkl!WdKMwcMG#mC zEeaPRE^HU!W^|!p{>d2#nbT$_W}?N2=Az%_Y%b?J-#wgrh?(IRA_4$MKz_8g2I9y4 z7Jw`O-7e?}8`#0W<=EP+UCV*puR8k}3{Fa=$KhMM_0a8gU)bVLi~$Ln4@sf56e4Hy1Xsi#Ow9fLq(RKR4r*?0`j@6XtmoL(dg=RV*lWdh%{$L@n%CWFmr8E z697=Pq{Ym&WU`|B8^X>{Z63XJa=3uY$F z0D&1HoX!0|9eFm}$EjAzT&Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D02*{fSaefwW^{L9 za%BKeVQFr3E>1;MAa*k@H7+qQF!XYv00045Nkl&9QF=D zB=sB$g3E|>5fRZC%tX=)2udGBVQ&z)3ldjJuaPTZ;C6n)RqhN7G}bjic>@{qmN8iV}sS00R~dTr_0V!uD7d zIJn>6c0W!}nmgsa-A$RyOKha|8w^-DaM3W8IJQBZ65WfliV@GH3CHI}EC&}2v{)0{ zV9+OJws~ajWNfG|-ZN1KVKQzVNyy5$sCVsk3xNag>#r)+l g5Blt3U(r{61CilD3W8MRvj6}907*qoM6N<$g4w=o(L%-h1EszWeTNWAEwm(!(W5l9ubcR#VIi zV%%B0DgO4mM=N4_!0k5QXFZ;}F_kKWbt$L^?jdbbmz=!#O3RWoFZ-=FZ#&Nnj|GaG zW0Wk21Y45I+gap#1Ij^{9{Qmv|2Y371D}}kf#x75s?xr{dm7XI)4i5=I`DKNZ$AO$ z%n$+rl@W%uXR)%N_|vo}{@M u7b;(FbS^r*&MLTQ@VT}7ujalV*UqGQ38!f8{Nu_Xe_M5X&-$>_dHEYD(F diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_list_progress_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_list_progress_bg.9.png deleted file mode 100755 index 80d12bff7a75235f824ba2c6dde0b9c575a76205..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 978 zcmaJ=zi-n(7~w!P5DD=)L#7@4N3_*K3a#=I_pP9Jf&2 z)EjKR%Ery>bL?L}y?2LAX>gNiU^E9o<$4nUA3WC#N`fXK`$-k+T|!CNB|a!^ z%K`!|$FoU49N`T^t$HCfJquTLjb{pimp-;%ZTsq~ZpW zP{P%Tb>L!;CS3cHo14mwTfy~NWE}_2b8J@v;(}4isx#dSnyNSE+S9#AQ@N0tf$_!u zbz;TyXcwXCwex#8T%Wytd@=<28z=A1&TgHi zQt9;Y)wK_UL3)Q<`FwspzqHeNG`j^}+`p1~aQqZ~Zx!puGv9u2GjrUpw~Oy*=DLgV NE31}k`q{?L%Rh&^ED!(y diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_list_slider_icon_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_list_slider_icon_bg.9.png deleted file mode 100755 index d64969fdaf871b72f7f543dc31f85c5332cfe93d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3168 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_list_slider_icon_bg_effect_01.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_list_slider_icon_bg_effect_01.9.png deleted file mode 100755 index d0fb0dd61b3550d2af703cc5c28cecf938a3ac3e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4063 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 RKXCv6002ovPDHLkV1iE0xWfPd diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_option_panel_contextual_popup_arrow.png b/res/common/usr/share/osp/bitmaps/480x800/00_option_panel_contextual_popup_arrow.png index 5367c6b41d873d8437dbb8ec29ed1cb205ac8143..acc9514b3d9ae48f5dc72de506eb612e3837f802 100755 GIT binary patch literal 2945 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 DwaHW| diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_option_panel_handle_bg.png b/res/common/usr/share/osp/bitmaps/480x800/00_option_panel_handle_bg.png old mode 100644 new mode 100755 index 6dc00209ffae7dae186f3069efee6cdd286371e8..b3302ac20497baafac21e31dfa1d8fad0b6c39b5 GIT binary patch literal 1224 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 CVEuCd diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_option_panel_handle_bg_ef.png b/res/common/usr/share/osp/bitmaps/480x800/00_option_panel_handle_bg_ef.png old mode 100644 new mode 100755 index 35bea63cdc2a39603a433d8bfeb7adeb58672c10..d66d67c428497fe9c8a61c7b5a9bf84e46d1103c GIT binary patch literal 1554 zcmeAS@N?(olHy`uVBq!ia0vp^bAZ^7gAGVt^{dYWQj#UE5hcO-X(i=}MX3yqDfvmM z3ZA)%>8U}fi7AzZCsS=07?_nZLn2Bde0{8v^K*7iAWdWaj57fJ{tG z$}cUkRRX#c;)UD-xUqS~&|m@vn0`fKfxe-h0mw@*g}%P{mFDKcRTq~8r6Sym)!^cg z%7Rq=pw#00(xPNw#HA^NtSYc_E=o--$uA1Y&(DE{Vn9ZINq%ugeu08>u&JJ*LU?9g zN`84USiP^Wm1kaYNn&1ds;7&s63_&_%*+%kH#18kR|^XhGdB|_Lqk_1M@MsK7grZ^ zGe>7LLrYf!m|mCsATTyF!Z|2%}KXQ<0PoK2c`pi6z<-I=`|C|cD#U&=zRPW_2xW?sZ7&kYorQh8d7B^=e zwVw9&^SaI7Z3INLOXceJmkX&{oi<`sa6J&tz`@SJ-cZm`0A?UDL1Iu*I0H!UIjuLIHx8HtC>EV2voWLLU zUwFgo38GxA!K<%c3R*cO;$_nBO(%3aw;Wm9@3#12zlm@6?YGx-rk_sP8a4B1Qli;x z-tV!$RJ5jct-JpE9Y@#EMYrCT>Ax+r{u;OAV1mHS6Ls@^)CyN$_2O%1o@6WWv?wxs zb*Sz9^Xsp*Ux|LW>uz4gAltX*5|6d zeiPq*+_-5cyZSBvd~@DyUi{;-)v*l zYlZbuXMJ~^e!A$9#ks!Yi%QwB)U0Mz}rGg)TMQ|y3C=81wXl; zm#yGnUu1k|Z%|{)WKRpfKTR)q()nAIAEszsRh9W4>0t5F>+D}Xh zJ5b-E-62|{K&kvwjGXFbhYNK@mk9IS^sv||+1JwCzlY0!VL_eCnf|x4qClmzr>mdK II;Vst04V4}xBvhE literal 3401 zcmai$RaDduu*ZK(cXucyu>wo;r(u^)fu&KJMUWDdl6C3)gSgTxf=ZWyEK<@9i-2@V z3kX~Z7bN!bf4wjFoX^bn%$a$ac$lOIrh2qgTvPx6&>HA#Tij~Vt(j7g-TJa9-ql;7 z4A8d=0sv~}{|p4=6>tCmmDyt$?7;&s|6uf5W0Y|M8GX~ z+0^hWr%VdmWE1YH5aEz zrkW$)E zaK=AI6et!zGdvAi3TWzrP?#KHOQ47Za2|1U-2fg)0L~&Wx2FIU<~%n71US6mX9X2y z0DR0IiQ0gd3Q#?6ovZ`cN&zgMM!ibFoCF|cVB@I|d~5qx$=PEyE7@c2c?Zs?9=5I#CW35`pA4Hj;NlaR%)7SrlA|T=Fy} zyTfuhWuoNhf1Hfo?j?iuw%e2IP#j$?4yTZYrE`+l>mVZtxVmoKY>ih1Xac}mFmmEX z9MZsrQXxb6-n_eaNaFQ~y671`#j~DXvk@rTU9dR`_-{5k#jl#@=eIUD=L~zH4lcts zkvE8Lr%s#eCl^T7EBx7yuj@ilG7qElNX~zBkDeNr@QlBvjCEbwPS?9?q9$DNP6_lH zxHj8@SvJg>0@JkfQcq+`1d^by#rp0|65Q8U#V?7~SLK0^-s+%;42klGZp43#L>O#? zJJ<05aNO$O^<9*L808hSHXcGa(zw<4PFNVz$0xTN%(Ms#sCEXXct9+KWcHG zc5#SzlJRtrE_G2~IV;3Mg?hW83{Wa}6wgyO{U)m3T-JUr1Mn4M=tV9J-N~walZS5ahsUUo=w?J?oIw<2P%xKX5fc&%XLwUVQ)juEru<*Ei#WB87-^# zc^1p%#c)RXbbDw`G1j8aJfWOf?pdDFSPYwiQAy3a%qcD}b}#(nx}U)TSS8_yaukcbfF%;zBIKyZd|)a4kLa!#di4#1@prT24oa_MvZt!%+q z@C(+AVX92SOyNv!Fa%yvSz5VLNo{pvH3Cnscw`w_t7|1|xluv+J*χyi+lG_qd zp;Deui75AnYkWZ3T_=&*^%(b*u3(<7@~O=l7wlihmX*-z)rSZ2rY_ zaBI#rZ)=KLWks)L9i+1j%Zo-2{L(wD58f*$B|-oEaxqk%c#oOOw^Rm zY9%XuO1O(#wL?1m$_{f1zdk}08vB>6gthPd<%xt`!>@h+mYwO**pfBS2$3z);5bzK zowWhUq?ZCX`0gXsDA8#{!pXyW|1HAl8si}l4u zx*%NH5lwxyJ%{LabYx59zt?KyvQ6r&+rYgzY%P z_?+wpmU%?1_c6vYe@YL*j%W^wIY~@OGKwCN%vP7o=k8w~Y~M5tJ_~%f7Cw1~$#2N- zJ}6(TJ5)G)e3-EGc2w@ISfQP4(6^pJ*bnoq2@UGEnNmKh)krg#SrnpiM-bu$$*`%J z{n%6zQi*ptVpsp8{`BpJ`i83Fip+|g)2L!+(_qtxS&x6AQ`{=-r69qb5Kfo?%24+} z2;!tDttbbg%k%IT{2gf;%8MR<>gNx%Qj40kShdolYofQhYWTedf4!>V$M59eGH{RS z;vOJ>&U_*|kLDGoCCB)gpYorAv+Hy@uXUm67EWv_Swf|~oX|LoXq|KD-Bn;)j z>Xnk-stbxOaxEJDlAd;>)3z8}gC|BjN|NAO1-~a>SFa9E64o*6)Eg1(Igr7J0b#|s z?$fw3whBomapf#c<3!Vc-u#ai1Gt6q6UuL7Z!{3d8DVh^$H z`Fy0>Bd-3Y&o8A3awn5~$fw~|HL0Bh6&70h6K*d$3ns5ec-VM$j3o^#WmOg4A3GRr z7+!p(Sa9@~aKO~fwDuZX5^rQ9!E3wSUhS<^uNoM(NVUOAdOzNptXlO;G8XJRZB}() zlU<8!7Y;Y^iF(vE9NpCj^4X`hqS}g!++UhKcxYw|v0H6)`5TYnR%cC0u4P$d&t`o& zC%P26#hu_k+>yKV=5s|=Z?pTj=cMQE_KHNI16@{S_I5U%AMO0YXWCWk&j)9JbQU4m zW1@?#F<4mh`wrDFZ60MqxG@zC_y_nY{4ZSLaB{iPW%k@};*dL{?T_5A=|zV&{I&Yf z*F`IkmC3Z{w8y2vWdmNLHmP#=JnPc;VU4M8;K2a#B=I%5ARTtL`TI2Qq#E2JedhkY z9^Js*uQ!;Z5D8iZTC0Bx`qu>mw8J)c@sz9hJG9CR&r>6+*T|>tKIcX7LcF1Q$9cN> zmU)*Bt`03`qv{hgdn@5rdW(1I3*=Po!VFK~Lys4Bqo>e_>_&)sED%&#hsmL{Mq;)<-a0O9ul02KoO7ld2g1%PK#0I=r_0LnQ4!0!LrsZSRGh=L8Ywcw!(zm_|^!CEY+ z-?HG5{ly3~Oq}Fyr*I=*bbU>npG?SePrnBC$q!3Pe&d*Q z1)4Zx@03-d!b68_m=}tSL?5GHXN{B$)&H8^_&qpWUp-QPioe99ds}4fG>aue+wg~> zsz|@4MfY)`c@oDO>zGG%_{(7BxIS0&gXb!`tJIuy37&FXxxYiNtXcYYPA+IPJc)2S zLFk=}w|IPr2F8@I;-^@;vL7#MWp$>r$;sTCvB@-fgkPi7$fHJBQp|wLf&M9!ZQh%Dzi<@8_8M!{w)@dDQ-C zrhjBhz_`OydW^AVdc<`fq3Lr#2qG<#0rf@r=O8f!s2ZP0qId>lil_lf4CT)PbW5!g z;aLz-9*&#?>P!mrCw-|z94+homy*Nn&9>sBM220FqM$U&L6Yxk#0pK$0@{Cp{gx~S zqHG4?q7}|pcY8F?*p`enr9e|=oe&Tcf3UUGf2jp3KfkVC@CJZ=0tPy!+O<&U G=>G)+TQ|!9 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_option_panel_handle_bg_ef_press.png b/res/common/usr/share/osp/bitmaps/480x800/00_option_panel_handle_bg_ef_press.png old mode 100644 new mode 100755 index 638e68d62a938142624e677c270c76be4d2308f9..7497d12ce7fa104593605be813947f09edb8982e GIT binary patch literal 1427 zcmaJ>drTX396uOg(pY9(bV4(CxtUE9dXLfvy-^TakQ!RCKq!HX9qkXev3q!T(1J{G z0SO5Y<8)EOZ2U(P%^-$B5De5Y(ij$S5=1~2P^WPWaG3B&mf^Kf*dN17?tYK&=kxhK zb1gac*OZEQ1q4A#YnH_!ubuL1e=1u3PTA{ed5M!UoKh}VCV40UKxuBS6u?%7DhCcg zxoh6~0VG4vA%xCzN={og>Eala3Sv+%!^><4N>26il&ca*a49IKSrf84IE=uw+k_P8 zY`Bd#g9Z@rOW6>Qd8h$FDVN!K%!tTbAc5}uL%k1lJY)yjUjLdB2}7@ zouHhy9N5eW0M?ubLH4h7~M8bO|&s(Hsj0 z6{%9LN-`mGq&q1v{GKc;?v_a|80MvTj6m^VN@1YQ_Ww|Z*+Ywx1MJ89L}4+nh6k7f zh+LK6k{efcGU$pY%>tk#PRQf93*jo}RB#d}R&YFQ&efp=TtKsK&Lf8KHXCVWMTufv zz-loevI0ueZci^ue)c57gV`x(|*;cOVy&gTaE0eXP;pD|vc?+r6=s z4|{_TSb5q7d8}`Jkktf1k%z68v^?+Z{rQQ?S^fq8;;GEz@5QK^tR0_4tIn)!Z=3Z; zOwyO_<5Sg%`We-x;`>ST)ECJoye)xGlZPGzJ};cq7C1`o+TU$B%0J6T+9U1$n53Ab zh|>|L7hYP3>TJ0D1VdEkV+OxSE) z-D!WZ_{PuU9gWM}jrGW17Z%nU*?7@()qW&Df4=Sc;&X2wYo3UiyLij@@x|;}XUu^6*@IA&u;%XP}EhGvsyj)_0;+N_O&bV-B)UAH_tG=zb{MmYj>1=i?^o&0Z=$p z*gZX3)?;jCMr@@2tLsw(zU(wr-^y0^WbY?84>zAr@%fgEHpTh}MZP+uX<4(V3oP|G z6Yjk_-5OVXXvX``a~W^`wYBB^!!&fsKlo5R9o6?|=WykQ(ta$qdsJT?>d9V(Lmk;I ieW+Ez(*J$EKJsa3eWNjT1t@&M-=sCeZs|%tcj-R_{u4C- literal 3377 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 M$5gux;`;o*0MMK~O#lD@ diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_option_panel_handle_bg_p.png b/res/common/usr/share/osp/bitmaps/480x800/00_option_panel_handle_bg_p.png deleted file mode 100755 index 6c729bf75dd22e5eb56bbe5a8b3450088864552b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1204 zcmeAS@N?(olHy`uVBq!ia0vp^EkLZ#!3HFi<|lOlDajJoh?3y^w370~qErUQl>DSr z1<%~X^wgl##FWaylc_cg49rTIArU1JzCKpT`MG+DAT@dwxdlMo3=B5*6$OdO*{LN8 zNvY|XdA3ULckfqH$V{%1*XSQL?vFu&J;D8jzb> zlBiITo0C^;Rbi_HHrEQs1_|pcDS(xfWZNo192Makpx~Tel&WB=XP}#GU}mUbW};_k zVqj@vsiRh+i#(Mch>H3D2mX`VkM*2oZxQ#zd*q`*i_F@Av`lL zCBM8Ftlrnx$}_LHBrz{J)zigR321^|W@d_&qmzlFg^8n^sgs$Dp`ojxrG<-uvzei} zldH3-v9p;uOs`9Ra%paAUI|QZ3S6&~0ZzT3q>x(xwAm%KD6=dz#jPkmR{`v0t4!Q( zalvUGRBsASw>Y}u)TknMZjb|@r&|R1_nkA zPZ!6Kid%1P72_CLOVmw8>GV3l;^%Mzbj8-eHp8{T=&{8gdQz`(=-Bo6s5 to$b{>SI&Cx3@Kw&e{6ZJu#Z)OVTRA^#bpVv9|MaK22WQ%mvv4FO#pv8l*a%7 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_option_panel_handle_bg_p_ef.png b/res/common/usr/share/osp/bitmaps/480x800/00_option_panel_handle_bg_p_ef.png deleted file mode 100755 index 95ed9349b1c468623bea251a5fc8f26e35ed9dd4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1360 zcmeAS@N?(olHy`uVBq!ia0vp^EkLZ#!3HFi<|lOlDajJoh?3y^w370~qErUQl>DSr z1<%~X^wgl##FWaylc_cg49rTIArU1JzCKpT`MG+DAT@dwxdlMo3=B5*6$OdO*{LN8 zNvY|XdA3ULckfqH$V{%1*XSQL?vFu&J;D8jzb> zlBiITo0C^;Rbi_HHrEQs1_|pcDS(xfWZNo192Makpx~Tel&WB=XP}#GU}mUbW};_k zVqj@vsiRh+i#(Mch>H3D2mX`VkM*2oZxQ#zd*q`*i_F@Av`lL zCBM8Ftlrnx$}_LHBrz{J)zigR321^|W@d_&levMjk(rsZsgs$Dp`ojxg`=CZlckfn zp`o#>g@Kb1Os`9Ra%paAUI|QZ3PP_7PQ9R{kXrz>*(J3ovn(~mttdZN0qkX~Ox$j9 z#AzN>ZwhX=IN{W*4|I$^C}NQ!8YToxJs>7L*#bH6grAxROzlO$Wc_!_@~I3Aj7L0O z978H@y_sd}eb|AaZMMW(&85x(8zN=8n)O=qxc>d$`9SSa+SLc!%{HEG&ws#laBXY0 zRIOZvWt4~J&gJj#PPK3iEMd@!$zxPt!3DPn<=^F&J%00Q!Lk;w1tMDyJUcm6{i)y1 zuuGrLhRWxExHjdX$Klq@8R1XEewxK|Db6}*__=b0j7IpW?yqeVc#ccy_4ZCQ3Ku)( z(UK9yasAB8eMO7z%&6R?+>-Jl%Od>URCZQlZp6c5ae(rRFfyA$U|HY0M zX02BA>t*Rb)&41UTG!Id_BlH<|4eu=Oa6tCxTC-n?-OUH2{=EE{Aprzrhcn)ds)U7 z)m0mFT6BDamtTMV)2x5))As$^ot|6E6IN!-`z14_c$3E@m3QBN@AOsN6s4_mHajZu z_mLIPw60E?c+)2JNvP~auC)`Ct}ip%d{e;nZN^EqqTeTN&uiy!2X1K0@%P@bE<3b? zPie~=nO%yC5BUF2WNZ*11V7kEd^P-YGsWoRVFMrc#S^XN`h)Wxelwcuw^yTU*Xo$h a$_E&V+1pm=FHdy=m2sY~elF{r5}E+-|K+6s diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_option_panel_handle_bg_press.png b/res/common/usr/share/osp/bitmaps/480x800/00_option_panel_handle_bg_press.png old mode 100644 new mode 100755 index dedb34758a01fe31baa6ad61a1c2c471dcf39460..2fa1f46c2a39f00949fcd95332638b8fa2254389 GIT binary patch literal 1210 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 F{{usb23`OF diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_option_panel_handle_more.png b/res/common/usr/share/osp/bitmaps/480x800/00_option_panel_handle_more.png new file mode 100755 index 0000000000000000000000000000000000000000..31b21ebc6043cd4ef395f19617cd5282d7147229 GIT binary patch literal 3095 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 literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_option_tray_tail_bg.png b/res/common/usr/share/osp/bitmaps/480x800/00_option_tray_tail_bg.png deleted file mode 100755 index 3d16da3b79f26823945feecdfc1532869d93e278..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1023 zcmaJ=PiWIn9L_c^W3WHqX$tbpKv8V+k~W)-t6kT$u3*OKit9mfY4X~}EqO6{v)L{d zQN(!=Jvb0Scl4lm6g-G*Zit8%PvU8w#o|?hySSfugDqta^0pFUpJ=u@5bzPa-!8OlJ&&}7XgWbVI2+& zU^vPNQ5cKHP681MkQYQAj)Vm$OCvHAKx47gn`@NhoRVqyqNg}pA;gh+zFMtv)d+{( zGB3npF&>J%D26E_>@C_v^TW0`)KpNAr@N*@Ol*TdQ7hsF5@%_oyD3;sOV;)pWugV+ zea+zo4hAVTfvWm{sAaX#9?7A-c>gKvM1^y*gf1<*e-y&DK#?iL+FJGfhKQGLe)xekv+O1iI2fY#73n zm`XxPNv6k>u*p@hzF;AnG`YqeS8B@*M!|BZX9cJ*!MW-h)TVqQPt-(h&opzUwb#3{@CVdiKR!Qdl&&8dO+mAc?2RgSd zjqU7T>CAM7=5Jl@d;4@NVHbMVf3LpmUO92$p;h~N?0!dLwWth&ee3=AqHEh8cmOtP z-wM>!Kxv~qcKq-M_~p)fhFtr)b_8C0QdvKA_XcyI>*nkyCKReMUCgszKfLpA?9;)M N%%&%m=i{^2{{W$$MDPFr diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_overscrolling_bottom.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_overscrolling_bottom.#.png new file mode 100755 index 0000000000000000000000000000000000000000..adc1cbef754fe1c4803c67f6664bcf75a33658da GIT binary patch literal 2843 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 literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_overscrolling_bottom.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_overscrolling_bottom.9.png deleted file mode 100644 index 3be0788d111e62058adda5eac2f3e18cb634057a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2832 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 literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_overscrolling_left.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_overscrolling_left.9.png deleted file mode 100644 index 860463fa0e96f92ffb2c37932b95de6f37be0358..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2835 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_overscrolling_right.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_overscrolling_right.#.png new file mode 100755 index 0000000000000000000000000000000000000000..73532ed6ba52a6d8ffa4cc251706f995893ddafb GIT binary patch literal 2845 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_overscrolling_top.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_overscrolling_top.#.png new file mode 100755 index 0000000000000000000000000000000000000000..3e608cb0443dca364e218f54e2bef78b94da5f50 GIT binary patch literal 2849 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_panel_handle_arrow.png b/res/common/usr/share/osp/bitmaps/480x800/00_panel_handle_arrow.png index d7f216c40cf565975dd00584f8a0edc4ec7d44f5..1facf104f0d2bbcc9f366043bcfac3c5d6bd3f7a 100755 GIT binary patch delta 2964 zcmV;F3v2Yx2$~m=B!3BTNLh0L01FcU01FcV0GgZ_000V4X+uL$P-t&-Z*ypGa3D!T zLm+T+Z)Rz1WdHzp+MQEpR8#2|J@?-9LQ9B%luK_?6$l_wLW_VDktQl32@pz%A)(n7 zQNa;KMFbnjpojyGj)066Q7jCK3fKqaA)=0hqlk*i`{8?|Yk$_f_vX$1wbwr9tn;0- z&j-K=43f59&ghTmgWD0l;*TI7}*0BAb^tj|`8MF3bZ02F3R#5n-i zEdVe{S7t~6u(trf&JYW-00;~KFj0twDF6g}0AR=?BX|IWnE(_<@>e|ZE3OddDgXd@ znX){&BsoQaTL>+22Uk}v9w^R97b_GtVFF>AKrX_0nSU8Ffiw@`^UMGMppg|3;Dhu1 zc+L*4&dxTDwhmt{>c0m6B4T3W{^ifBa6kY6;dFk{{wy!E8h|?nfNlPwCGG@hUJIag z_lst-4?wj5py}FI^KkfnJUm6Akh$5}<>chpO2k52Vaiv1{%68pz*qfj`F=e7_x0eu z;v|7GU4MZ`1o+^>%=Ap99M6&ogks$0k4OBs3;+Bb(;~!4V!2o<6ys46agIcqjPo+3 zB8fthDa9qy|77CdEc*jK-!%ZRYCZvbku9iQV*~a}ClFY4z~c7+0P?$U!PF=S1Au6Q z;m>#f??3%Vpd|o+W=WE9003S@Bra6Svp>fO0Dk~Ppn)o|K^yeJ7%adB9Ki+L!3+Fg zHiSYX#KJ-lLJDMn9CBbOtb#%)hRv`YDqt_vKpix|QD}yfa1JiQRk#j4a1Z)n2%fLC6RbVIkUx0b+_+BaR3cnT7Zv!AJxWizFb)h!jyGOOZ85F;a?DAXP{m@;!0_ zIe&*-M!JzZ$N(~e{D!NlT@zqLtGcXcuVrX|L#Xx)I%#9!{6gSJKPrN9dR61N3(c z4Tcqi$B1Vr8Jidf7-t!G7_XR2rWw%BIv?Wdily+ylO`+*KY$4Vz$Cr4+G&IO(4Q`uA9rwXSQO+7mGt}d!;r5mBU zM0dY#r|y`ZzFvTyOmC;&dA;ZQ9DOhSRQ+xGr}ak+SO&8UBnI0I&KNw!HF0k|9WTe* z@liuv!$3o&VU=N*;e?U7(SJOn)kcj*4~%KXT;n9;ZN_cJqb3F>Atp;r>P_yNQcbz0 zDW*G2J50yT%*~?B)|oY%Ju%lZ=bPu7*PGwBU|M)uEVih&xMfMQu79>|wtZn|Vi#w( z#jeBdlf9FDx_yoPJqHbk*$%56S{;6Kv~mM9!g3B(KJ}#RZ#@)!h;8Eq#KMS9gFl*neeosSBfoHYnBQIkwkyowPu(zdm zs`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMeBmZRodjHV?r+_5^X9J0W zL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0?0=B0A@}E)&XLY(4uw#D z=+@8&Vdi0r!+s1Wg@=V#hChyQh*%oYF_$%W(cD9G-$eREmPFp0XE9GXuPsV7Dn6<% zYCPIEx-_~!#x7=A%+*+(SV?S4962s3t~PFLzTf=q^M~S{;tS(@7nm=|U2u7!&cgJC zrxvL$5-d8FKz~e#PB@hCK@cja7K|nG6L%$!3VFgE!e=5c(KgYD*h5?@9!~N|DouKl z?2)`Rc_hU%r7Y#SgeR$xyi5&D-J3d|7MgY-Z8AMNy)lE5k&tmhsv%92wrA>R=4N)w ztYw9={>5&Kw=W)*2gz%*kgNq+Eef_mrsz~!DAy_nvVUh~S7yJ>iOM;atDY;(?aZ^v z+mJV$@1Ote62cPUlD4IWOIIx&SmwQ~YB{nzae3Pc;}r!fhE@iwJh+OsDs9zItL;~p zu715HdQEGAUct(O!LkCy1<%NCg+}G`0PgpNm-?d@-hMgNe6^V+j6x$b<6@S<$ z+<4_1hktL%znR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX4c}I@?e+FW+b@^R zDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i&_B8C(+grT%{XWUQ z+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?SIDu(gXbmBM!FLxzyDi(mhmCkJc;e zM-ImyzW$x>cP$Mz4ONYt#^NJzM0w=t_X*$k9t}F$c8q(h;Rn+nb{%IOFKR-X@|s4Q zQ=0o*Vq3aT%s$c9>fU<%N829{oHRUHc}nwC$!Xf@g42^{^3RN&m7RTlF8SPG+oHC6 z=YM0)-)awU@466l;nGF_i|0GMJI-A4xODQe+vO8ixL2C5I$v$-bm~0*lhaSfyPUh4 zuDM)mx$b(swR>jw=^LIm&fWCAdGQwi*43UlJ>9+YdT;l|_x0Zv-F|W>{m#p~*>@-I zt-MdXU-UrjLD@syht)q@{@mE_+<$7ocYmPs(cDM(28Dyq{*m>M4?_iynUBkc4TkHU zI6gT!;y-fz>HMcd&t%Ugo)`Y2{>!cx7B7DI)$7;J(U{Spm-3gBzioV_{p!H$8L!*M z!p0uH$#^p{Ui4P`?ZJ24cOCDe-w#jZd?0@)|7iKK^;6KN`;!@ylm7$*nDhK&Gk-1H z0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F}0002RNkl75KA*WovV@M&1HMGG> z5>!w@1r=0KK?N1m(r#h51#lSbd4B@9TcIxiCjhrW$O*uCc1yB0SLXL1d0cX|K(nz` zqy?IVZ9-b1(b#6B2O5PnA-zzLyo^NlK)qNOvKMN_x{(pkR%{nC3R=Td9_c$kvkj;K0000< KMNUMnLSTZxX@!0O literal 1103 zcmaJ=TWHfz7>>6w218$jIedtj^TwJ>*Jd^>Zf(-Ks-3kfv~wtC$=Moba$<63yNL>$ zcYIR>@lt*8@*r*~K8T3O^g#q~FV2ZCf}&$M5JmApJn7czgEf$IwIH$`gt?tO~XHIYjBV{FWlKt^vH zv_Z#Udr}?jQv({+vW{%d30S}YNFj5^F4GZmB2~~8@Y+3QD6#-SeIhkuDjkcH60`y7 zr&*86@*K(gXwJt5e1Qhi%W^Ekc^S6J!?A+DNnkm0_M>n#Tk8=La%46Z-icHOAxmJG zY&J`08)<0wGF%`KU|28X^?ESE;|!Qc$$3ntuBadbN40ee>ChxyMWq||Bay;RXHqb% zlC0^>mI)V($tf1Y(X5+N5g3d8A8HsSw1X1hkKca^JIMhHFbUwmep|&C*Hh<)vINNn z3W9bL!d=BG#xoE>Cj%`~>hRMXnbJ)SW}N~)789bTgA`K*QCXz00dIg zeclkqg}Jq|#D{pv$NL-EMu`s;xiVDy4Pc@oS1WO4wk+3e1;fITWnk-jfEKZ#K^9UL z^zvThvU;;zt*jR*T$amVGmLw&e_eF(2zQUWEVV7(lo}tHxZ7>q)*r^MKEh98EGh?+ zxrwRqEmgzpqWSUL-#?~CmVNzv?=V^YZRw|qclo1d&M$u0S@V@yxM|PuzNdHYhN|C& zH^hSr7AFhC^Ebi#>5=;Usr>sxttY|tXCJpVz$XXy|7;xHxJ~`?`9<5*@pGL=R?ppA z^LlXd%=n7sFE7-L_bi`SFQzL$=|3v@OKsEI&IeZ}R`w!px>6kKuj{e@q)?7`_a{HnN(9OeULg*8`?R+Pf>iyn_R2uN?^GM`^Y)GTqUBK!NKWcZV&+ zNj8^lDh^^m*w*Y16qINYi5tNUnK~y3)6v4At(T`n=O*Xm_b@OR?YY@Y8T7PYzRtBcJYk06i9FZD6%^!Wcorc z0^4mAvM<(%8F?Kjwx?DJAh#;hY^^G_5;i0`2~Kp8vH%Mt26nM!4v}bP> zR}*Z7q=`1H){=J=QY=Y4iK0%YQ|*jab3ze{69j=`8dRfE$q1EL>5v$g${~iWDbPT) z3U*$ya}L<2$P{oD5{1Z4AGN^pep!dOdQ9?xp)Q6;aW&>^X$@#J{y&su{b*4#fq(rz zR#-Gw@&Gjfk*g4_^2HT~`AYGmP5_L=31*HfTRX+--e-5%IH$OR zHyX(_hbS=)D@da$L{?DS?KUzxC54EN#|?3Y7#hd*8X|>$(Lm_1cpQ(`)0l3JOLNu= z7C59euFcQYVC!;yqrmcVWf}G6gBv6VOe!3Pd`+68&6FD@Rx1VJ0Z)94hl>*^n)KfPmQp1w45KXgal=;=;V z3B9+z%oE#kg33$JTL>sy-i!bMidyPBO_~=@MSU1GJgkZ+X&xt@>r&s{a=+pu!ufjA zoIBx6{?OtZ3CV@!yHB@94!wP1K0Rmlzyr_dwfbE-ts^%+-qNxyI5l0JnxmeW`HH&Z;fTrT);-IL$S((eJ>%9d{!;p_ z`-9LSey>tB`1kgU%I5Blda1fH9ptZR0A$KM?DEN9F|P8M9b=bEi+P6(g| zN31=+ePi&Rs+pRaR_gP-;{)!)6=Ue9lkUEzq@@Q{H}jE#pg-?)a1WP;Lq>B)N=tR$ zMcn1mnC6_L~=* ulnO&pc*M-K@?3Rx=d;5<92>g;1weswmuGLaD&)T_1f}US>2~eGBmV%}=_1Sk literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_panel_handle_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_panel_handle_bg.9.png deleted file mode 100644 index 673c0445014e018f2ec1183683ddb26ac9c020e5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3556 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_panel_handle_bg_ef.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_panel_handle_bg_ef.#.png new file mode 100755 index 0000000000000000000000000000000000000000..a84c61b3a1f3802f5073fb1449f3e664aca499bb GIT binary patch literal 1960 zcmaJ?Yg7|w8Xg3?g5+ngb7Emb~k^uvmOqvW5pezVT z$?YXk8nFZm7eP4oA;K`a5dFbhw|^6+A%0RiIGSS|ue zP-Q+MN0jQ4_pc(c0N@E}6j^wdG=-p_x!U!3Ka>fl04a6(Ts8i{xu`d}zAs z0t9N*d?+(o%8=?4ku4f=sR2nZl_^xEg(|KZ62yVACLSSxBDfMXp<11hXW~P%x;$d< z4$~oU7J?V@p`VJ%lBR))m;nK!X$-20!DfQ&C>k@0!Hwds0a*+tgU)2p85}B;!Heeb z7))^PfrxAdbskR+i{^3>CqA?V$Mrlqy|}oTRvbyg4Eb~>m&>IySacSPN+77l5*@BI zQFX@9c?B3Tstg)EuEBJmTTz*d72$k{sPv~6Q2lFJopJ7(hzp~elzKXo#&EYZ50py( zKNLk@qm8&6`MKU-6*ekL^ax#!7_lOQiWpp8s5_OOmuNtgIA%~_n0Eda)3#tZX5515 z!Nl}v8WYUa=+s!TaTYI?@+3MVuGFaz3CxEG1)4^q=0yrQkxUMo!xlxsOs0?(FHA^C z5OTP1VtjNIH-e2^4juM;W4Q;AF43rEKvKPT6nQCAh#FF0)ob(;W|I{#U&w4;(CuNitoBB%_YO< zxAxgc3EMk%8554an4#?b?G?|vsWaTm-KQVMrUvHgIz{)6R*Dja4)p z+C4t$xF7hquI<(D>gA;!Q>(6jto|hXG@HX2m3*-D%XTJOwo4F()~ z^&Tk#y}4~Hd-Z8pUgofW-Ti&d@?N|2v-Mr+jp9#Nqve*G+JRa)FrBh(!2eD#$?Vmy zt)4OdkOYNTx|5R4g;Zt1xP)>`A8K(9YflA39+Q@=F(4gzf#!^yxP(q+LRQyks_{vbNxuH?Y?{26ghYp z71sotZ5Y}0ra0_A{~$)jGsHgvkJxNEfO583Ts-gk|UH;)u_uA~e+u9qFp zj{wg1zX-T+zr3-raVn?%**Up=Ff}#xZmj>)i7V$%p0vFEzQHEH+I8lP-r;b3B|Ba{ z9A|}_*P%L{tnXVxV99^m(jq!4G=(|SFGI|6nXR{O3=bb{bI5n3@4UFSNp9Z@hTrSS zJH=F3pFDZ8z9Hgp-@mE*5{B@xKhf1IsuPt(hT~jcNyQh-E){mVKHRfsSrB=fGQunl zyY)r|Wm|6hA++E`+rIwt%W z-8dEpT?|j2+4aKiRe3>Vc20f>cmh3{ VoT{!>=iI+uKq8dEj)cusKLYhE2S)$^ literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_panel_handle_bg_ef.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_panel_handle_bg_ef.9.png deleted file mode 100644 index 24bf5b0cdfbb79ac5366b604566922363f7a7461..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4705 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 Mbpy3JsN<{u06H(fcK`qY diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_panel_handle_bg_ef_press.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_panel_handle_bg_ef_press.#.png new file mode 100755 index 0000000000000000000000000000000000000000..79195aa06129576920479bbe7f78d1c8eb8e89a5 GIT binary patch literal 2188 zcmai0YgiLk8lDIkkRnC-i0AR)nWN^?i4}F7-m!scME3=#EV1qCtkT7@`qTtIQz()wjLLf`bkApZ6 zUznVD9ijn%0Zzn?KqA<|Q~@j|@bwr%l30qe0f6R}B;^YdAOwts;zSZp+*DHw4ipJJ zaXeQxi7oYm;zfZeGAJx1geyo%5Kx3TFFHs|qM`y~2;qZC;yn^MHOUh5sGsWV8P_ zR4o30mLnYK&wBr>u$-GLg@_zT4)2u-P~&#l>QhOnelm!Uz%nij?^(RX(0CYu;GPJGR@-!&`U<9xjKHQ|i z$r2sBmbvPhVyYuk7b9JB68u`I+OS>~dV1?zckZm|tWLX;4rG2y+OVql)1eDZQM<;X z;?B}}Y$UP&ezK-#XU%|w*3x_o#o3dh+9MFK7Oh zmsb2_)o{4UPHJUA(BT(`^`CR?j6om3WLe-ULlu~Ah|!0uybl5&&xi9n-3^;kE3y5N z3eilF`pfC6$bHtGzuS+V->nQ&nkq+Y>c2P7n`-dNWdMl-^Om6tT=Xw!3^QgKYt7uzX54N|^4pt0u6`dxm;TUk1ISpf82^LZi&9!sZ|B?-0% z(Z9L%RYEFj+NL#nnYtR|V5)Lkk!Mx#u#u|M>Grp335_>fa9hunqGf<*&Yq-=>E6{!b)dkAMH#cFof|A{b$41{ zVTW(d&^?W*Tw}9ati8nSe~~IKKe->Hwhrp;NJuL&r)LHloXcLVv6ObVt7}6?!X4U` zpIk9i;VgB7n-3{1HRT%(OUKq;+}?$y=e~CcFj;g6H4OD`!La{h<=|G;#hwk#wU>-! z(RXsJ?DmDHX1SDvZ2vj1ldjt77CmZKYLYv1W}pOLcNW8)zMj)|@Aa!!Kge%1i1!rM zF!|HvJ8HHh=q5+N9t)DkXw{)GyjLL-m9M?|20WAYN3ixa&S&++vtz{NQnT*QTj|WZ z2VPuzTxF1@E$}!O@QIfNH{6!UKF&niD(YxqrbBeMmoHA-85xPl6u>XX=Wyc$-|a%v zG)=(Yvg#^ng{I3Z?p?Wh%;blQnWDDgDg3GF+}{&AF>YDbcaiBtvAu zt+32UtE)E-TFn}roPh$4`k!TmX8sXwz-jXdF@LHV(w&IPyP|wnJQl6YOlgs~hz2Gy zybBLM4GP_%>+tZH0Mk;~cIx}TaIH`1kgKjN6~?zWdv|ru2Z79njUEhJ_xx z6X~KyF}(>OCn2VthQ0W+7mYUAu6%ZCp!voY?;Ta)<8SvG)J4e;n27O@UpVkgj(&X3 zv1jD?I+5Ft_E;=-ze%qJmSdTIi<|uzfo#3&TuH9?!>|U8hM8a3L?2eGz-h|C79$T? zh1KJJ;Fo}9eHpWnK(TqVR!ynWeEmf}cq*2+73(LrJ=xfym@U;7|J@jKk3H%fH#pZ< zwC?!IPJ8d}Jd?+&8&3mkqnba<_Geb~Rb{Cw-^?|u^9nx7xLTa^Xm~g(AF_$G(NtIW z_C0hd40d=pGm|VivTbtqLU=>6Bj%rJ6!_sgLu;UcyT!=-Ok|P%|A55|VbuD@9Q-#k CfO?Yv literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_panel_handle_bg_ef_press.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_panel_handle_bg_ef_press.9.png deleted file mode 100644 index b8a38ea770546540ef07a6291e20fb9852d575cd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4220 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_panel_handle_bg_p_ef.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_panel_handle_bg_p_ef.9.png deleted file mode 100755 index 2d699a2cb1719ce0c6b695d3d0475d1eea9eb5fc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1942 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 Tu|?dCpmNL8)z4*}Q$iB};K#<8 literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_popup_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_popup_bg.9.png deleted file mode 100755 index 4b49813b11ebe72a39dd9e740fe450504a901f2c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1082 zcmaJ=TSyd97#`A01WBQXE|BB+RJn88i@Vcq%eoicaLv|D7wKVVXU@8l&75)O=&llF z20`>-N`cUW8X*!QJp?@zB$Pz?&|41@grPwYl`mmo*co-Lhqi$;=fd}W|M&mrKR4Q1 zn<^^~R}chI8Ep>5@qE-85MC~wxa-soKq8q}FKVWc_fcEA0$y9k3`K51P>+w=HkFLEkwItx z(n+&6iFI+L%RzGv*5mNhlRV3@497EUgN=w>*N$HTBZ!}B(bu$coI67x3AtScylfGHV@jufbomZF%3eaJ^)r`sv0 z`mU^I?vx1^jLC~S!_lmjQUMr?{U55TyJ!=|!5_c>6gCqBI$+|!gnfpDFD_GOh0=wf z0Yn6i1cVn0Rcy;b1kEhe$zZ#a=EzP(lVQ%>!pCAlR5OvNNgx{XQCNXi6j_MaU7S18 z$T{uqMve<}fiNF*yIn5M!ACsdu)V+yL8(s#8Y*z*KU}^j*J=e-$B{$8Q2K!!F`!Cr zr7S2#y#yjf^>(;&aW8C9E`!Z5*2VsH(S;-2J=Su!ZSiKe@qvcB-N0?V`t)uJKZ&_$ zD3Hi6r8hP={Ux5E(b4MJ>Y0hr`d=$uEyq&ngCu)lZDwH}y=g0b@%ZYxe{{VpxqoW5 z{B^6Fd%k&T&+%`|m(KH(pGW*PcHUb$X2{n+)=e(1_Wl^ZwQ&0mJvsDJT+2R~o>+L; zm04LIfAH`3)j mV9V4_OOgJ?eP{NTR;7r`Gw)B_AA1zAUUM|u8k%cN4gUt6oM;jN diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_popup_bg_ef.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_popup_bg_ef.#.png new file mode 100644 index 0000000000000000000000000000000000000000..7a393e17b007f488d087864d2f9182f9e7e1a0ef GIT binary patch literal 2444 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_popup_bg_effect.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_popup_bg_effect.9.png deleted file mode 100755 index 206b062aa6657b248bc741636cd863b6fdaba757..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2730 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 MBjNVY)j;paFNNi2ApigX diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_popup_bubble_tail_left_bg.png b/res/common/usr/share/osp/bitmaps/480x800/00_popup_bubble_tail_left_bg.png deleted file mode 100755 index 8dee9d8dd882e4160bdbe9c734e6a0aab2a5beb5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1095 zcmaJ=J8aWH7 zcnDF%V_;<<2q7_`4hRN>fG&U#105Kk6R#a1F;;?eX$k|u()s>7ec$&#?{Z=EP%OGD z%5hvQe^@QDeFs~6I@;M^U%EBHwl10-rzJ8;Yr2QIv`H!$EPrk+j92eoO z@;DvWMihhCf*xXoz;+p%;|2x;S2w0H1r*3Pu zXxW&ZHe{0@JO~B?g$dZ0>L9RBIKC33_!V7++2OUwgB1v!PVv8k8rKRSLp%(U0*o85 z4}rdffD%wn$oqf<5fqUm!u~jdO0r*p2&{fQ^X8e8N>RcQ+MO>>HltQj0hsRMabEhNgHH>F*S5cTLvuSIfi- zCI-4IA_0aeHG!J;f2eJ*p?zA!f8zb8uwSmbSS(_n%ysrf5-O;hrYPj$z@c{Rl|1;MgRrC-XTjG8{smqGPFu|u0&^AA^U$qh%rc9~}td)6sz<~(A9m6R2$bu4`?^;WrN z>sb0*azz%57&i8=MmMk6^n~Wx*s{ag;A4kPyT`_QF*diCJ&7lIHC+ytD$75A4o0FA zW}^e5Lf6%Ok^0$SQ>3R@fc3@BIdWm7@os1m%(s6Ygxh;iVe8!H#?7JmbDxHm+pah_ zVqe=n-+kZ7zZ%*No?UtiE3x$(PIr3?r3&czcx0Qg1+~9i_kF6^8PQM67q8u49$t9U z`|gL-`JnCO#z*{yuBFo64F|93I)Ul8pX=78Q?KiVnN;XPaHy!EM>y(cEfn+g(aJgtIeGopk0+Gf#K5 z4(UNmL=4)fE3`@8Wyd zKv6DQ%e3Ow#7R*>IwLz6Ca;@>O;HWuyeTVP5Q8l2(2NlM{rO88XljT)>rZeAGX^`g z=6(yN`&%+ff0q(e>F`m|kQa%74zUdKdbeSV`4GLVE0VQy%+g>Pg1bWWimBE_62y=N zfuG^L3K!r(Kwx-*3kpFG@NqoH@;;WU_wtR|a`FvxN~*5~sQgxBsfu$=cAw!5StL0hpj6Klu-j-s4JJvc-YrzWc)ULB9|aVkNGGlpY-#xWrZ0xs7GHPAljpi7Y`&>xF8Qg>|YmMIwIZUEZ5qWY}Ohd8l>AT($*8tUWLh%n2k%3 zO#W+jacL>+@>lG16<#H|@oVzdZ9ggA6|bxP{ec>}vGi=<^IX`qc|P1b>RH%0JTq|f z*14+Ud<8gjZ*l-ERt&$M*1#6FGQ0o6o=wGHS3VEjt}4`=FH?o?x#>dp8Hx}4cLWX{oR}&sjGdk_smjayW=9@h q`sit^{pLCSjvK%D^!#KUwV{rB+xH?m^nknTJnDF3i}WbkHuwjBMq%{; diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_popup_bubble_tail_top_bg.png b/res/common/usr/share/osp/bitmaps/480x800/00_popup_bubble_tail_top_bg.png deleted file mode 100755 index ed639afc8f85acfba766abbe5618237609e3415b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1098 zcmaJ=Pe>F|7@yKg&7vrliVo966yeUFb$4|KN8R07YpbPQ12Oti}K99mf~&wjD)Ms10UNPBH-zRA3sAQBBH%1dx=z z6R$u6L6lKyGKEsHBfJbXT5>S7tr?h25DiVXA<5kUk!g@sb%C0H_JSf+MWEV!F*as| zL6>^4-vn*_tx37RTMj5xQzO}6^H@LwNFr^mN4I!epbEM?ww+^!A`1}IEl_`wO2y)2 z7@C0e(X3l${T%7{(wvtKcmp-0hvis?^Du0kn`3!j9nW&)(nsNFrjp?kV#`u2>0 z|CFE^%d)z))F#|8#+D3*qgkh)cSLd2!vy(7+8d`Q*a7v-8rU>f!m|YA5p|889LUD8Ma2~Lyh&}f&bV_TsUm7>o+;!zIE*!0@ zS*(1$UrbdT`dGK`Vf8Q^oS`NrE+?^>9UCFaw-M*xPW!o+$`$8zMdPy AiU0rr diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_popup_title_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_popup_title_bg.9.png deleted file mode 100755 index b4be8c0deeba452d98e19ba300b2418aed63dd23..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1010 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 ijrADNV?fo7{|*4keQgNMJCeZw0000fo diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_processing_ani_52x52_06.png b/res/common/usr/share/osp/bitmaps/480x800/00_processing_ani_52x52_06.png deleted file mode 100755 index 08a44fe60284440161d322a866605a85f417ea8a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4763 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_processing_ani_52x52_08.png b/res/common/usr/share/osp/bitmaps/480x800/00_processing_ani_52x52_08.png deleted file mode 100755 index 3d8fe4e643e835c12cc2737c0e3f1bfb97c097d4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4727 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 Y?yU~hKRADFCjL(p^-1lU!pXA_0hq;o2LJ#7 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_progress_bar_ef.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_progress_bar_ef.#.png new file mode 100755 index 0000000000000000000000000000000000000000..ab84f18940ddf979e2b6ea004b8cdbf06c10cffd GIT binary patch literal 1435 zcmeAS@N?(olHy`uVBq!ia0vp^d_XM4!3HGT`Ez4{lw^r(L`iUdT1k0gQ7VIDN`6wR zf@f}GdTLN=VoGJ<$y6H#2IjQPkcg59UmvUF{9L_6kQ%*;+ybC(1_m4Zih{)C?9>v4 zq}24xJX@vryZ0+8WTx0Eg`4^s_!c;)W@LI)6{QAO`Gq7`WhYyvDB0U7*i={n4aiL` zNmQuF&B-gas<2f8n`;GRgM{^!6u?SKvTcwn`Gtf;oFf&vzGto0N zF|ahT)KM@pFf`CNG}1RP*EKY-GBvj{FjRm7C7^9ZDQQ+gE^bh}fIM5JjFOT9D}DX) z@^Za$W4-*MbbUihOG|wNBYh(yU7!lx;>x^|#0uTKVr7^KE~&-IMVSR9nfZANAQKal z@=Hr>m4GgVcpk{1iHq`zbF$JDTz5Q`N^fZsd*)yF1AWQ8NHOu6f09p zS5qTn7ZXP#Ggnt5Lqkgw6GK-cV@FG4Cu4I%OADA8*z_70npqecm^qrcI+_^*bvZhk zIJ&qQJDNJWx|&=Gku_A^g)RODY3wWfGH5fgeQF<2cCIS^ME;~2$(e_x$BoPFfg9>ba4!+ zxV0z5*8fm|$lKTAmxL5}CUi7=lr+pe*!bYZllYJ7AJip&GM_nj=zzlw2?dJ)B}27i zY6=TkqZZ7&{lUlifCjU<<;&N#-@n|gepj11?>Xo0V-kzm?*tF;0Ik#DASIV={p`B$xboi#0Wt@T{Ly&+n*ho5^rEsETb`+HM_PTca#FL$bV+UD$G zaDE^vaWH+=s$Fq<(~aiEuMK;B(SPghx2rZroH_D|c?QGmxs!APMbbMGHPnwRZ(-of&Z2$$W471a z0_rn;j-5-}Y<6qYx6q9`nFbOWZHX@)f3#q`F1_+xXW^b0#+A8Mt7Q|fR%`SH2FW%^8F{= jyOr5h{`YUpXJlizF7hamJuhk@sJQfW^>bP0l+XkK9ry^x literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_progress_bar_ef.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_progress_bar_ef.9.png deleted file mode 100644 index ed7f99e6d7809f0382ad06442b287c148149fd14..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1409 zcmbVMZA=qq950AK7-SIG#)>Y-p&R1pz4Y4BlL~F`IvQ-(m8#8xn@4*sH|X7QJ!pXs zW4f7H)Xb@b=@y-v3`N-31_|P(&JVg}gv^)hO@(CH!~g@r4DN$uPl2+1Ab!{-chB4J z_xry-x7T5RAuUCjqEIN(tYwrFjM>pQIT3tELxu-ncv`02a)scNLyW{Kj9#INg{%R_ z&pKJg+gSH4TdYv5@^LP=?6z$oJwiamL@}yxKm=@sqPQe1GM*Y%hN@UU#~a|O!3!|N zc@6M(jSaPlX11CuYm(TCCcDeiRO8Wm;gZczahL=G0aj+9aG;hCl3@e9pi6>zbQ^)8 z1&CZ@fES%|+Z>QtkXT5gLJK{p7K5~e3L{WGp?@C2Q4B>e96@!37)ok%B#J>x4-BkH zULWbCEK9b)$^ci(vPdFGC=^nK)G9&pBbZ*VM^GHW@j`$o3^wvI6E5U~c`*fw4SFO_ zlsSQiqKZtFP%j%`;OSxr0nuh#7UqLXi2^A@!iqH!&tgR+zT*Nqj?L06;5 zB2G3a)Jq;v4_{u44088qLs1~`hI~=tKv9@lO7PSNSYEbL1{j>EyquRrjYbQK>S@eE z5HyZqCbLOLnbca^OsS0orip2+#HG|Gli8@#YK$5J!)Uz70%S0X*3)`5UPS0(Tq_@x z8Q#Oj>~g^F5?Av`E@_rnMiwNOAk@Y>z)>y8LacV(_YIUG?i(HCv7n+;ttk>#>h41@5tndFqkx z=jMEW9D4^%9SG#)dVAYzyRHOhlzaQKel6&HSlXzpk`BrON0=45u|8Fzl$k&(g6JqDt>-T;dJKo!OFsplTUh3ZV z#hIIDjt}2`SgD$$-}>qmyL$0kK%-))sTYVXI zc5spGri+<>ebSX5IU8xunjT2_voo_lY4foT4>=W|IGws_z94Dbp0PE|MY&RzcisSWwU diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_progress_bg.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_progress_bg.#.png new file mode 100755 index 0000000000000000000000000000000000000000..e44943eb0001dd483c4b7cb9c096c26916c5d18b GIT binary patch literal 1281 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 Y0J#OjPK4Pm@c;k-07*qoM6N<$f)|Me8UO$Q literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_progress_ef_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_progress_ef_bg.9.png deleted file mode 100644 index 8431c08e6f5933134509446082fb2144aef3e16e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1869 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 UPIfuqvH$=807*qoM6N<$f;^RLAOHXW diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_scroll_bar.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_scroll_bar.9.png deleted file mode 100644 index 7afa4f37b084ef8415b0aef19d3bc1b65adc0da3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2937 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 UDvv#|YybcN07*qoM6N<$f@<)DI{*Lx literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_scroll_bar_handler_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_scroll_bar_handler_bg.9.png deleted file mode 100755 index 1a3304fbc92d6b621c699552a6b5a8b0c6c39152..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2949 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_scroll_bar_handler_bg_ef.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_scroll_bar_handler_bg_ef.9.png deleted file mode 100755 index 28f027db10d4dfc26f1d324ae9848d383f201419..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3192 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_search_clear_icon_normal.png b/res/common/usr/share/osp/bitmaps/480x800/00_search_clear_icon_normal.png deleted file mode 100755 index 3bafd0269910c1664b023c911ff1010758b1e928..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1784 zcmeAS@N?(olHy`uVBq!ia0vp^dLYcf1|-9GYMTQo$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWuD@%nF$y5hW46K32*3xq68pHF_1f1wh>l3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|8RIuSMv>2~2MaLa!4}y`Y4UTL84#CABECEH%ZgC_h&L>|v`++-|YJX&zK> z3U0Sp;?%1Tbc{YIT9Kj|CIn17ASOJ~0y*$xpPC0u>qWps%|5UD7BH{mdAc};RNQ(q z^J2G;#>G=5xOw|{12 z`0l%Dk2CVjmYHpPaQuzg1P_&*z4OnesVnCl^*bc~ko!aA56&Nvao0 zJl2?Z@V%AJ&Cm)d*&k0WEEf1Lj4+m zT}Ip9M`r~VNcMYV$4uJx*dp`S9RX((-#^Q@Eoqt;98+h#NXB{6%^==0AS+2ya7E>#VF z;i2;Be04}vV!`X4Z!-QDFI{UjdbPsmxk(wPjy~`XoH}jw)hu@@mSyQ7?&md} zUT?D4R(kvX{q$BR$L;f8y_o6v{u6(wG#6X5j$HribfGJqYAai0S2bJ@iCX3{$!~do zMoe~y`)3CcG2b=InD#Aa((Ssd!aZ@`*Q8yIZ&$g9-s-($kZmZ|{q>scEsx8-0ZIY8 zo`3%xX*Yj584 zcb#t2Zy7|U-ctIC9|T{(O(L??`*A9 zC=py-`{2k=>tSwrApDV3Li>6VJ?11l2{Ju6{1-oD!M< DFe$=( diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_search_clear_icon_press.png b/res/common/usr/share/osp/bitmaps/480x800/00_search_clear_icon_press.png deleted file mode 100755 index 6ae38e78ebe6fe0aad11b306a7f20b70d0bd07a3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3026 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 RasBTdfWz*?@T~n4{sTrSLCXLD diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_search_edit_field_bg.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_search_edit_field_bg.#.png new file mode 100644 index 0000000000000000000000000000000000000000..5dc8486eb4fc181f5c824cfa0da31605fb954091 GIT binary patch literal 1104 zcmeAS@N?(olHy`uVBq!ia0vp^A|TAc1|)ksWqE;=WQl7;NpOBzNqJ&XDuZK6ep0G} zXKrG8YEWuoN@d~6R2v2cW~I!Kh>{3jAFJg2T)jk)8oi3#0-$aN1{?c|g2d$P)DnfH z)bz|eTc!8A_bVx6rr0WloBA5~7C5J7WO`H;r3P2|g(O#HCtIc{+1n}DR9FEG$W1Lt zRH(?!$t$+1uvG$^YXxM3g!Ppaz)DK8ZIvL7itr6kaLzAERWQ{v&`mZlGgL4$(K9qL zur#sMQ7|$vG|)FR(l;>IH8ij?HMcS_RDc2{plwAdX;wilZcw{`JX@uVl9B=|ef{$C za=mh6z5JqdeM3u2OML?)eIp}XpbFjM%Dj@q3f;V7Wta&rsl~}fnFS@8`FRQ;6BCp2 zOG|8(fG&l2A-4c-Y+f-mn1BJMUy)d#Z>VPg@)As;uP=V3xw&xF#U(+h2=`(&xHzP; zAXPsowK%`DC>a=WY04n03ap%qQWHz^i$e1Ab6}wukda@KU!0L&px_*As%NMWo|%`D zUtSDW@9S&jnO9trn3tUD>0+w{G(j&jGsVin(a71@(b>Sv)yde<(ACJv+{x9=(b&?$ z)Wpcd#nKX{*Cju>G&eP`1g19yq1OmO9%P))HO8n|MqxG8D zjr0R%Uzt*DXA5d+>Z{F3Jo#+HX6HI@$8!()W8U|v8$A8?|NG?iOn!W8wzJyFHt4@j z`}k>6;%?P%n^LNUw5o4a+{%e`EYI*@;Ejr&skoP)U0j~~gPKj6`SuUt4U7y);)(Gp SA+w4>dEC?0&t;ucLK6U3+-mFq literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_search_edit_field_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_search_edit_field_bg.9.png deleted file mode 100644 index 4f20436a1edab5e00519bcad277bba8b033525cb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3028 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 D$UWzR delta 500 zcmV&#h)3J#4|udH(JCS$qW_>(t5%PQs7>?_BqB;F z5^Y`>^n6=%r%q#j+?(ng*Nl75xu2PH&OI}cB#6k9L7)os0(Za-umxNJApArU z89FL-sSk^^u`Se_xtbVhpbnu;KYw?<2+jIfMv2gM0SE3H%f1^YKs!(ahJj9FvyK?^ z4PC3yo_UUIp`nbhmV_FK=brHm-MCr06{=)r?@K3*&y!Hu2Xtzd>K>3-H;mtW5vbct zp9Me=>Nmc-S)dk|s;Wub79k=|-1)*4N~**lTR~TZOYGA|M0+0S(ae>80Dp>on!s}& z=)%km1R)~IK;?5E(aZxK1NZKJ80ZT?O#`ik`8DOeWa{L=9pECZ3cWg?x4hnGK^^YU z#mkKXSWW2M*sp{%)sckBsp}X$rcDhBExI?bwyUAtdm`~>@p$m)<|`o}T%X%1*!0bX zcP=r%90H29F0>|ec-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN)WnQ(*-(AUCxn zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!uxKsVXI%uvD1M9IxIyg#@@$ndN=gc>^!3Zj z%k|2Q_413-^$jg8E%gnI^o@*kfhu&1EAvVcD|GXUm0>2hq!uR^WfqiV=I1GZOiWD5 zFD$Tv3bSNU;+l1ennz|zM-B0$V)JVzP|XC=H|jx7ncO3BHWAB;NpiyW)Z+ZoqGVvir744~DzI`cN=+=uFAB-e&w+(vKt_H^esM;Afr4|esh*)icxGNo zet9uiy|1s8XI^nhVqS8pr;Du;&;-5A%oHmV3rkZ+GgkvMS0@ugLsuh5OH*ezb4xQL z6DMaEM<-X9UYGpj(%jU%5}4i;gkD3OdO=Acw*Y9fOKMSOS!#+~QGTuh*vnR#INjpn ziqkx(-V~f}adE?`S0CsYeNeF5qb5yDM_={{hbyx8#O2+s}1 z*Y^#R6sxCxG_zn|{owB7TIngNzf~izG08EXb@Itj{-`n|?A6~07RyQgY-!bU~0DIRZFwtl~THTJ=+^w__XnAfG;;mos`t<5UuU|eBlv25>y zMRCnLCY?W(E|J-FWaffnt12cOdF!*$_mSMX9aE2d_xY&1lYQ2X=N8N7+--T*m#6ZP z$)mV`asqS8O!rQsrI*jG4*2rzfqtRQ@h}7mI$8n^uZvj;8$8iS3cj>It{Lmp(CUzMHMm@3cm> z-^=HzvQhk!+4`^kXBF1JZ&D6mQT_0wG}X=Ylj*0)AC;BA`OatJVK}PAqJ N=IQF^vd$@?2>?g|>9GI+ literal 3225 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 LNkvXXu0mjfq<;X8 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_seg_line.png b/res/common/usr/share/osp/bitmaps/480x800/00_seg_line.png deleted file mode 100755 index 316081f8303114e8c70865603417b03a1c09fd2c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2804 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_slider_handle.png b/res/common/usr/share/osp/bitmaps/480x800/00_slider_handle.png old mode 100644 new mode 100755 index 7c8f2db2116d316cb2477ca88fca16cf53109508..bed93746a1ca712f3b1924a3a1f34a61bd43fd56 GIT binary patch delta 548 zcmV+<0^9we8rT`IzzTl@Nkl{7w`2c6 zml3<`D$!MR(M?1Y8C`dku1bj_VmD2@iZqRBkMi_Dn0Q|Pmj$cBK*IEEFKpaQ_JPy9;MI8VsK|Xx~5JA=l0fai5x%NVK z38Z~2v~^$}DD{6TWc^x+tk1y%M1VrSKlIDM6|iVPyYmIi0%es9Bn=53APnSHyV0Cs zP3NjAz>;AADIjJSV9cQH^SfQQ1rWFP9R_B>7C_9PHA7>q*#)Q= z3Q(~NP_oLmY4%_jpaEPP2ymhj^eZX=Cx!u>4s(Ay-2moP+i8F;L!SP=B~2=4 zz=R`Z4VVVroE#|u)*Okj`fT$j_@09AU|A*alOl1ZQ`p+^LD-7wmKKjalon^)5_bz8 zh`TYj<@M|^%j>NJjzf+6J?-^`M%RdG<*y^AL50l8kS__$029CzP_S3vpDy>#RbtO_;iEl4&Ym?cTeQ#&x?OXOY zejdBL`F`HKnctsRki;6dmVZg&z3^m=LO`6n@!1nkSh% zz?@k%<=`!$l{^8Kg^qI)-|3q|#jF8t3Y~cn-}ZWz05d|rJ&JGpV;g`%B$>My2g<;E zpgMpUbq?GDc9VbNK(9#rWI*Bpioi27CIq+mEmZZq@8kSo(iTd30_#2L{n!Rja!uy0 z0<}Q$wJBiP72tkHA{K%@a0R#%Sk}B4w~gWet_KECG7we(Q|28A&8oHl(}5OWGqwPg zKmp3O0OdddtY6}jKmkr{0geI%_+<<5DNulhEkG0a5+HxT2bVy$8{qb7xB$Eg4B&++ zaH4&!nhn!C2P1l%_Lr0E_>*&E=w zNf?`H5BahJxLlG}O$j&)`~<#tjQyJxz>wMKq<#dD(*6wq^^(%183mgL00000NkvXX Hu0mjfc;_b( diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_slider_handle_dim.png b/res/common/usr/share/osp/bitmaps/480x800/00_slider_handle_dim.png deleted file mode 100755 index 6ae009d040dd41a50df568a64abd85d2b8970182..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1134 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 literal 4918 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_slider_handle_ef_dim.png b/res/common/usr/share/osp/bitmaps/480x800/00_slider_handle_ef_dim.png old mode 100644 new mode 100755 index 29b644a417719a64bd1500634fd76192850120f6..8285673c18ff253f48111670b41bb98d88725670 GIT binary patch literal 2917 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 K`I1Le+J68p(c_>1 literal 4926 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 literal 4475 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_slider_popup_bg.png b/res/common/usr/share/osp/bitmaps/480x800/00_slider_popup_bg.png old mode 100644 new mode 100755 index 6b43d183924a155f67e8e70f1869f22dc18c20ed..d540acd0a34167e0be7b81ae4b127c71853282ef GIT binary patch delta 411 zcmcaCaY16k0j~OLPZ!6Kid%1PZ}d7GAaV3#eNf>i#$9DXRwaQlF||zU_g!MNMPla0 z#ENjg%Uh=uA#n60`vup4C>gG&78S}-x+N>j3*P@cBs+_(sNPcXZ_tj8^=nm2l)fk} zaXFT4uvIIy^{$wd8p~X{!wE|SvKY$`aAjWScp>7Het@qsWWPXt71OMl4fDAbCk9SU z31gGa*>I3V;t%tmX%ovsn7&Ik=6gRdQ2r3eIfwbUWWw(Qn)k2izE#~d<$3H1?JFy$ zee{X%G~2+aqyOTRS>wAo$KUCFP_(LNW7|J3uxoSd`H4qdduAT_C3|oF;~8;1oqtNb z|A*gY$Tr@$n`K+j>n&BK%cZR!vdzzyxgGp_eZyIi>X#>bRH_A^3z$CCddi+)S|i8s zT64dyZ$tC0OKX)Aot!^QNcH%=nXG^H!sR~aQ(N~;yEd_4>L-<+6A$)Gz|+;wWt~$(697y>x~TvF delta 414 zcmca0aam%+0j~NwPZ!6Kid%1P8+sphkT~|S{?#k?0wE<2b>ml$Ug`Md`PFG%SJG%= zz23J=V}}OUqX2=WtbtRwniTq-*DpHiH9hX(yGrK;6C6IhE`FldDE@KpRHxle{!U&g z^_pQW)(dhQJmt2=bCfpJ@ANrv*U2L##MDT; znb+(_0*S;w)^}-7YS%EX?Kz;{dcmf^^_MOG`~zORJD9h?Mq;e_N1$BbXrZ)eGCoM~7e6fxtAv&pe7SJuBtqX>dU3@3j5Gp|6H_V+Po@HOFe_z-M3hAM`dB6B=jtVb)aX^@765ev4YaQ)NKDR7Em25H zP0!4;ReHaBzmh^`img((sjq==fpcm`rbks#YH*cbNODznvSo^ry`6$hg%!|%+|-gp zg^Jvqyke^gTP3i$RzNmLSYJs2tfVB{Rte&$2;Tq&=lr5n1yel(-DCqZLj^MvJwp=% zOA|{S1tSAP1ARjyeFJk{Ljx;Qb1MTw1t?Gg+E$d3W) zw8T~k=u(Imatq+b<`qMO2^e7d6^RA-jpO)U)FObpCiolFf4U5y-#9nCEbjGUd_ z+}upeU5#OSUGkGlb5rw5V0u#!dJS>v1to>t0-((H#s~$ri|gC;ZerU}`S{ChLggYkmw2jB`9) z978H@y}7;Hi`h}4Em3)PgUg1kn}lo{rYhXvYRbq=6lkdsbkbUz6S9Z3TH8@XdTSuJ zql-??nk^T?HVRGt`a6|L%Ex2lnL}r+KRDe`$(d)HDs;nX)-qee-g{>K&824YDyswy zc0BB{f3WFS*MkhRR)R zotOII7pir6)LHbwJYHE+Y( z#4k>o6>>N$dhLxv|MNacga^OljqGtOePouj+%R2S^y{>XRk`hVSNyj3=6$p9u3p^c z$B#Gvm{l=n*WuN7X9Th#pLhPZb<6!t)3x9I`DP|`KH>Ih{;U(e2J344cYoTk`-+;$>%8RaHS6zu zm&-fXFz;%$obc;C@8tD%9^Ng-ZE<~n#UiQuOgs!z8GbC#z9}{VRCal~`njxgN@xNA Dy-3?E literal 3170 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 delta 288 zcmbOwzC~QIGr-TCmrII^fq{Y7)59eQNZW!i2OE%-OGF!Z*CcK zF&PTDJrox_=(TavE$JJPRc!hRk6+rf^@?v0W!bn{lto+8U!XHDqNUb;$t;66?oJ#j z!7dlJ^SnrO=@!$C+LCc`kt>MtrGDY%@WqOPGYt!uf(1Y_zb7TO%4H|SS(JZUxJ~t= z&YNPj8~*e3G zO%9j_&lb9K_a4L+prQBnzJAW8W4zTpTz=vo?g+R8z>Mvur5PCh|7T{HD5UiCTRx`= P(9;Z_u6{1-oD!M{M{>z;r-5*!y8I zVRRBN3DD%U8jlTzg%9m&A7moJN0Lu`FiF4(H~}Z%1e|~qZ~{)iOUY+%4Vm+w9Z&!d zfYQGK{sI@E27UuCUe}*m3W$i`=YRd!2~tha&OpXagU(tpa5_wGG`%~JCeTeWnUUB?c?imsKTYXI1a_osBUv~baox<~PQeO@1>QV#+ptxSk6!h{l=t+shJAV?A9o%j=DQ_VT6yZp z&EK2%hCUoJmmUwjp$~^%3l{O|SnJ`%pkr~T0`$hzo^Zi6_S+O!Ec0Vm)DoPZN>0#3jQ7=X6{0Hr{ev$`QBl>h($07*qo IM6N<$g83UW>i_@% delta 606 zcmV-k0-^o08t)k)iBL{Q4GJ0x0000DNk~Le0000z0000z2nGNE03Kpt>9HZ73V#|& zL_t(|+U%PBae_b)#UD-zxDqJA4nisj9VB*O33iYYl2o9nKvMy9ARTB2>mOWZ$a$RH z7aY3FFeB)k`{SP6?!%0T@My8X0|rAgG($5qLo+l(Gc-d_9Z%jPWWDb!0h9oqtcx1JS&_cz`RvL{@)OBh5UA>zxwS#IC4oMBMtx6R-a6oog+L2=fz&aIG@)BK z_gVUXKd3ZH5otlU37rA}cfpU=iWwPNo#m|ua98T;a+VadIxBeqXlQP3Wq)Ysh2t`n z1IRmPb^w|{RpPgD{F+MbT`0#t0dqQN*7PKxbLF@RoL8M9v~G4nM(B&ktz{_aB5+=L ziqK8uB$p9?I?m9Ch|5Z$bYM*y(1b=wrVKdSZxNS6&(`um%TQgzvA*wyqXl0_ZY`5F z5p*WthlSBMGZSH$U6dQ_B7c)>TE#LE#xe%gyZz8&rUvk$G$2X&-a^Wn0`KM-pV;^I zHTx?k@CoJJS3j4sT2oDjL+7#1PM#a$onK4cA^n)pE@2N&W0j%t;w+(RLnE>`JRO;B zKOG%BRTCj9c*@SnF!0PCJaxP17WmzIWPRXg04tE8TAR5ssDgVbU^7l`=pX3LSMnME s$(^AYnxPq*p&6Q?8JeLPdX%^f09^>uX{=TsQ~&?~07*qoM6N<$f@^3DJOBUy diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_softkey_left_bg.png b/res/common/usr/share/osp/bitmaps/480x800/00_softkey_left_bg.png old mode 100644 new mode 100755 index 21fda21f65ec811d3069d4626cc4bc535acc2a75..62f92ae0e4ab5553a4c7fbd3fc2c41e4632f2a6d GIT binary patch literal 1155 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_softkey_left_bg_ef.png b/res/common/usr/share/osp/bitmaps/480x800/00_softkey_left_bg_ef.png old mode 100644 new mode 100755 index 047f5c797d033cbb91a6dc1c3549a77573c568ca..15b67e35f979bae909e2826ef38a3879b6b22d0b GIT binary patch literal 1267 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 literal 3194 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 UE_=D|tV@xVO?OIT?Yl?*0Nt5=(*OVf delta 2965 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 R`8PpDm#3?r%Q~loCIH_w-Shwe delta 3149 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 delta 3187 zcmV-(42<*Z3$z)KB!3BTNLh0L01FcU01FcV0GgZ_000V4X+uL$P-t&-Z*ypGa3D!T zLm+T+Z)Rz1WdHzp+MQEpR8#2|J@?-9LQ9B%luK_?6$l_wLW_VDktQl32@pz%A)(n7 zQNa;KMFbnjpojyGj)066Q7jCK3fKqaA)=0hqlk*i`{8?|Yk$_f_vX$1wbwr9tn;0- z&j-K=43f59&ghTmgWD0l;*TI7}*0BAb^tj|`8MF3bZ02F3R#5n-i zEdVe{S7t~6u(trf&JYW-00;~KFj0twDF6g}0AR=?BX|IWnE(_<@>e|ZE3OddDgXd@ znX){&BsoQaTL>+22Uk}v9w^R97b_GtVFF>AKrX_0nSU8Ffiw@`^UMGMppg|3;Dhu1 zc+L*4&dxTDwhmt{>c0m6B4T3W{^ifBa6kY6;dFk{{wy!E8h|?nfNlPwCGG@hUJIag z_lst-4?wj5py}FI^KkfnJUm6Akh$5}<>chpO2k52Vaiv1{%68pz*qfj`F=e7_x0eu z;v|7GU4MZ`1o+^>%=Ap99M6&ogks$0k4OBs3;+Bb(;~!4V!2o<6ys46agIcqjPo+3 zB8fthDa9qy|77CdEc*jK-!%ZRYCZvbku9iQV*~a}ClFY4z~c7+0P?$U!PF=S1Au6Q z;m>#f??3%Vpd|o+W=WE9003S@Bra6Svp>fO0Dk~Ppn)o|K^yeJ7%adB9Ki+L!3+Fg zHiSYX#KJ-lLJDMn9CBbOtb#%)hRv`YDqt_vKpix|QD}yfa1JiQRk#j4a1Z)n2%fLC6RbVIkUx0b+_+BaR3cnT7Zv!AJxWizFb)h!jyGOOZ85F;a?DAXP{m@;!0_ zIe&*-M!JzZ$N(~e{D!NlT@zqLtGcXcuVrX|L#Xx)I%#9!{6gSJKPrN9dR61N3(c z4Tcqi$B1Vr8Jidf7-t!G7_XR2rWw%BIv?Wdily+ylO`+*KY$4Vz$Cr4+G&IO(4Q`uA9rwXSQO+7mGt}d!;r5mBU zM0dY#r|y`ZzFvTyOmC;&dA;ZQ9DOhSRQ+xGr}ak+SO&8UBnI0I&KNw!HF0k|9WTe* z@liuv!$3o&VU=N*;e?U7(SJOn)kcj*4~%KXT;n9;ZN_cJqb3F>Atp;r>P_yNQcbz0 zDW*G2J50yT%*~?B)|oY%Ju%lZ=bPu7*PGwBU|M)uEVih&xMfMQu79>|wtZn|Vi#w( z#jeBdlf9FDx_yoPJqHbk*$%56S{;6Kv~mM9!g3B(KJ}#RZ#@)!h;8Eq#KMS9gFl*neeosSBfoHYnBQIkwkyowPu(zdm zs`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMeBmZRodjHV?r+_5^X9J0W zL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0?0=B0A@}E)&XLY(4uw#D z=+@8&Vdi0r!+s1Wg@=V#hChyQh*%oYF_$%W(cD9G-$eREmPFp0XE9GXuPsV7Dn6<% zYCPIEx-_~!#x7=A%+*+(SV?S4962s3t~PFLzTf=q^M~S{;tS(@7nm=|U2u7!&cgJC zrxvL$5-d8FKz~e#PB@hCK@cja7K|nG6L%$!3VFgE!e=5c(KgYD*h5?@9!~N|DouKl z?2)`Rc_hU%r7Y#SgeR$xyi5&D-J3d|7MgY-Z8AMNy)lE5k&tmhsv%92wrA>R=4N)w ztYw9={>5&Kw=W)*2gz%*kgNq+Eef_mrsz~!DAy_nvVUh~S7yJ>iOM;atDY;(?aZ^v z+mJV$@1Ote62cPUlD4IWOIIx&SmwQ~YB{nzae3Pc;}r!fhE@iwJh+OsDs9zItL;~p zu715HdQEGAUct(O!LkCy1<%NCg+}G`0PgpNm-?d@-hMgNe6^V+j6x$b<6@S<$ z+<4_1hktL%znR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX4c}I@?e+FW+b@^R zDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i&_B8C(+grT%{XWUQ z+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?SIDu(gXbmBM!FLxzyDi(mhmCkJc;e zM-ImyzW$x>cP$Mz4ONYt#^NJzM0w=t_X*$k9t}F$c8q(h;Rn+nb{%IOFKR-X@|s4Q zQ=0o*Vq3aT%s$c9>fU<%N829{oHRUHc}nwC$!Xf@g42^{^3RN&m7RTlF8SPG+oHC6 z=YM0)-)awU@466l;nGF_i|0GMJI-A4xODQe+vO8ixL2C5I$v$-bm~0*lhaSfyPUh4 zuDM)mx$b(swR>jw=^LIm&fWCAdGQwi*43UlJ>9+YdT;l|_x0Zv-F|W>{m#p~*>@-I zt-MdXU-UrjLD@syht)q@{@mE_+<$7ocYmPs(cDM(28Dyq{*m>M4?_iynUBkc4TkHU zI6gT!;y-fz>HMcd&t%Ugo)`Y2{>!cx7B7DI)$7;J(U{Spm-3gBzioV_{p!H$8L!*M z!p0uH$#^p{Ui4P`?ZJ24cOCDe-w#jZd?0@)|7iKK^;6KN`;!@ylm7$*nDhK&Gk-1H z0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F}0005sNklDuiT`p$}Z3n@@$=TiA|9=xiCnrH&m4XIy$?KBp5l>se?Vbk?k&+It zA70ZR&dfx#FV6@FC5{RE`Rz`RJhHna586P+>7 z>b8l`kOWDsq!>bYF|*s0l9ldJ-k4!k+r?+6oeU&NgQQiA@l?`d>EaDDtbYbczEOO( zQQ~xt*6VdJv#afPo8}wkojFzoCEqG(+A203NotnM<%y)HIh4d4tGluF)9=j;iR-$q zS*=!^5|n`%RtII&*PCzo1LL%xYdzmSgi2U*-Pprg&3nNL7}>^DBC8x z%`)W2IXBKPy)5KxGKLO>y)5Kssx1QY@a5l{#y^zVHD00960 Z0{|NvXu-fVN3Z|@002ovPDHLkV1g&v^*jIo diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_softkey_left_text_bg_p_ef.png b/res/common/usr/share/osp/bitmaps/480x800/00_softkey_left_text_bg_p_ef.png deleted file mode 100755 index eff4c335a9aa4429d1139aa59d3d46eac0aa85a3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1491 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 RZg2RX>&S8uM{KKW{{i6IAh`el literal 3298 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 g4>yG z;9YoqQGg049@s2Y#Z_1ruL(usEfFV=m$|Xh7=r{vsB>6MY?U-7=E9eB88kPyNgP{( z=q)b%UQ!K#TFfJ>5Gx`mYlJGMv0^(x+bO5rxeK#VG)2-jk}9#%6jM~fP&Bsu;3%5P zH!(rhw;T(tTzIptD-1~*hCvvGgsetM+UazXl#R66tO#M%IwhTpStTt$rNBZhq6&&G z$P#8Ma*cAk?!r-~_ev0z6t)jx=V4YsO$HCGmE-OdcMJVYhF2Bkx zPs=r1K~zv=7OFxA5VGJP5#=Q+~EQ6uUHig|0rc2Mo6j`17jw*M5-jWR?H^_JN68cMCQr zJamG6SqPjnl;`q(eE5Vtao5tbd3bV>xc~j!mg`${2=f=k0N4Y-J}@`C?beRMk;U&% zz4hVFr;kdDKQ(t8`oXyH$NKa0(tKW7{GG4*j#)kiH`cyza@X!x_P+G&@t*3NPdpQR zwEew{U^+8vr$0FQ;ONlB(dXj>?&Gsl$&Fylns1?cYbx9J|M~dMwqx%3gHI*LuL31$ zWIV7jJT|#rF}h|34u1|N2FJIsd#~)iQB{Bbkr^c!o$4Lx_--P(5WfB8$qU)x%ZK-U zGBMQq+a+OSAZO8-dH2YxedITD*FHNlZvk)4w?wlK#h*NF$)xT~3Ek1#85uu^V ISA-LP12Eyv4*&oF literal 3112 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 dQ2}sz3ITC=mtM!gjDSr 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 A(f|Me diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_softkey_right_text_bg_ef.png b/res/common/usr/share/osp/bitmaps/480x800/00_softkey_right_text_bg_ef.png old mode 100644 new mode 100755 index 30a94019d3d8916745a3dc8792102bf135074cf8..1c125df676eb177d78d9bb3072bb1dcccc88f6c2 GIT binary patch literal 1549 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 b{{sMy_l%w#`efb!015yANkvXXu0mjfCRRfp diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_softkey_right_text_bg_ef_press.png b/res/common/usr/share/osp/bitmaps/480x800/00_softkey_right_text_bg_ef_press.png old mode 100644 new mode 100755 index b871be6af8e801a2e435a9686ec2ff811e2149b8..255218663a8f7415c7314738b46d13d193a3ca0c GIT binary patch literal 1483 zcmeAS@N?(olHy`uVBq!ia0vp^T|n%|!3HG%|LZ#jq$EpRBT9nv(@M${i&7aJQ}UBi z6+Ckj(^G>|6H_V+Po~;1Ffc1+hD4M^`1)8S=jZArg4F0$^BXQ!4Z zB&DWj=GiK}-@RW+Av48RDcsc8z_-9TH6zobswg$M$}c3jDm&RSMakYy!KT6rXh3di zNuokUZcbjYRfVk**jy_h8zii+qySb@l5ML5aa4qFfP!;=QL2Keo`G(%ftjI#nTejE ziGihwrH+D;fuVuEp^?6Uxvrssm8rRvfuRBvC;@FNN=dT{a&d#&1?1T(Wt5Z@Sn2DR zmzV368|&p4rRy77T3YHG80i}s=>k>g7FXt#Bv$C=6)VF`a7isrF3Kz@$;{7F0GXJW zlwVq6s|0i@#0$9vaAWg|p}_G8yuzFu#E6=>*lEl2^R8JRMC7=m(LT&-jW|!2W%(B!Jx1#)91+bT`GI6`b z5T|)iy(zfeVuVw#KF~4xpom3^XqXT%^?;c0WDDfL6MkwQFtrx}lXX7hmS+qMO!l5G zjv*Dd-rV)~KV%@$P!Y*pDkqu$ zXczwdRQF9&(YfA^I`7Xy0s$NvEFw%?jI9k$EF!x!ice0S5|msSaXRL7%*iK4YkA6F zU-Ca`v-1ACGhCCRD|dX~zwhLmlzXYO7`m8!CpqwKj?pVFX7ec5u|0L?#GVs5sagC> zK1wfT_576YTQV*6-JOe{U-ZvXpBXMG?XZz?irEdVDfiq?ezNIz{&@VXmP1gbN@>dK z9rpxXICCfSc|}gUN>v#U?qE9c66Wzt7)%^USdYXZ~&s{{D>PIGaaQ-1(H( z>vEqjp162Vm%AINAre&e@L1CNLAegT)u zyWNh6bPlump>U5|oC8IFh~&BxOuog7Ap>SG-aGMA*cOd*^HZwOhY? zYuMc8Mb(pk{{NhtaM&`J@A}?VT5IS0-u2E)Q`vS+n0EBEr+HR$_xY<$&e|Ap<@3)w yr{4Ppia1C*{Qeu4yZv^~=9@iRuN`e?U}o4Fdtj^Ivy;m~#jB^QpUXO@geCy>2Oa|e literal 3173 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_softkey_right_text_bg_p_ef.png b/res/common/usr/share/osp/bitmaps/480x800/00_softkey_right_text_bg_p_ef.png deleted file mode 100755 index 84ea5b9e939c5b70ade6efee6f8074767a9bdc9d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1446 zcmaJ>e`p(396z^WXSL4C{&1bbd8^aGa(6GeTyjUVHpyMvY)u=|xKx<5m%G>YXmjs+ zcWu%tvn@kt{Q(hmtGVzfK=n9|DKbnZlc6&n8d=>85Cnl?-HhAq!VxZe$Z(Xb%doc>86;?{ zmTo#aGRQoml0pMcfWk^wETql2-reKaC33@FEfy{tlT}Ox&@5vWV)FiqsAzP3L^@rH zww*YDRc4EkcOdQ&1z*2D+ySA@MwSJ;};Hn2Ps#v`ccdI? zB%}_cq2WZNV%s#N>Y8ZwAP3n!$P_t$mj`fO&Bc3w;sO8{RPeY}mm+Y$@8vk2=hPzW zS~e_z)-aRcVPy~w%H9yq0U!e*EJ+P+wjs!Zkedqzi`a-^JBp#gyplXtzl)XD#fo7I zDh{#|2=x`WSga_Y47Yh{KqhrVLm4~Yf6R^jOVH8>q1IrbG+AhcsNW+$FY_UH$is7j zSC9b!A)faH{XT5NAC|p7iCV?tnw6?JFo1>oaWv z#b6~&e(SB-ip43szw@7^gM|mBqX`Y%Nedsm2MH=k5cg#xQZSLdzPJ$B`*G)%m%pD) zl~^w48wZojWq+gb6`57AtX`@H$~naYmQ`l@F( z$kUs)Ed9p6^l$l|owIXwHx`aJUOl?`NNZ*J`)@7`_T9X5eCqUplLrqiU7VVGH?{e^ zyh!i+WZ(2ijuKw`tbdUo-1@@A2Um`amrb4tKTz{@zwqkwHIu)zzY)7BHr+UIy5cG1 zYaIV^$3I77Q#+<#d{XZ?Hm`m&t}X44|NYk9ubVoL{W_kTy>d;Y7L-)k>cOro>H?`=cA>VrArP_axHHgoL~v5}y^ W>v((SRQ(wKaS{=^MS3UHIrbmm8tHHV diff --git a/res/common/usr/share/osp/bitmaps/720x1280/00_splite_handler_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_splite_handler_bg.#.png old mode 100644 new mode 100755 similarity index 100% rename from res/common/usr/share/osp/bitmaps/720x1280/00_splite_handler_bg.9.png rename to res/common/usr/share/osp/bitmaps/480x800/00_splite_handler_bg.#.png diff --git a/res/common/usr/share/osp/bitmaps/720x1280/00_splite_handler_bg_ef_h.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_splite_handler_bg_ef_h.#.png old mode 100644 new mode 100755 similarity index 100% rename from res/common/usr/share/osp/bitmaps/720x1280/00_splite_handler_bg_ef_h.9.png rename to res/common/usr/share/osp/bitmaps/480x800/00_splite_handler_bg_ef_h.#.png diff --git a/res/common/usr/share/osp/bitmaps/720x1280/00_splite_handler_bg_ef_v.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_splite_handler_bg_ef_v.#.png old mode 100644 new mode 100755 similarity index 100% rename from res/common/usr/share/osp/bitmaps/720x1280/00_splite_handler_bg_ef_v.9.png rename to res/common/usr/share/osp/bitmaps/480x800/00_splite_handler_bg_ef_v.#.png diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_splite_handler_h.png b/res/common/usr/share/osp/bitmaps/480x800/00_splite_handler_h.png old mode 100644 new mode 100755 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_splite_handler_v.png b/res/common/usr/share/osp/bitmaps/480x800/00_splite_handler_v.png old mode 100644 new mode 100755 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_system_control_bg.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_system_control_bg.#.png new file mode 100644 index 0000000000000000000000000000000000000000..c8d27149cc13630d868be8b43b8ac6156622e225 GIT binary patch literal 3141 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 literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/720x1280/00_arrow_button_press_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_tab_bg.#.png similarity index 100% rename from res/common/usr/share/osp/bitmaps/720x1280/00_arrow_button_press_bg.9.png rename to res/common/usr/share/osp/bitmaps/480x800/00_tab_bg.#.png diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_tab_focus.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_tab_focus.#.png new file mode 100755 index 0000000000000000000000000000000000000000..25a8827c2592cef45df913b275c32700341e08b4 GIT binary patch literal 2814 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 Q%K!iX07*qoM6N<$f+`0%^#A|> literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_tab_focus.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_tab_focus.9.png deleted file mode 100644 index 68b47e801ef592bb11e8a86b555f443da24df2ab..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 954 zcmaJ=zi-n(7)4mXYV9-j6}y#K z5DOAW{1dL(pK@e8$U9-dI zTg6zu&Hr!cqhEYlW9>fc(jm*-gb3R{9S~rL?uc}V>z_USPMU&Hf&NAbGw)S99&#pZk3ixOD}~FYhQ1?E-#gjZW?bNw(f}E h1X(c3!v}lo;EMo%+`ZWONbeV~$!_nP?^{PN{s20oA@%?O diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_tab_icon_more_01.png b/res/common/usr/share/osp/bitmaps/480x800/00_tab_icon_more_01.png deleted file mode 100755 index ceefaab584d3326a4852f88c4d1fad07a89a0a06..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1146 zcmaJ=TWHfz7>=%r&N+Q3sGEbB!KSe0Qrpgi#jR`Ft-5xjt+*#$nw)K6OHNEq*KRL@ z_lfx64IdQ23oCd*AAAxK=@8Vtj13eK5%EP3FE4^PoF}ubK3D_Ex$u48|NWOt_Qku_ zR@YS%1hF>SEhX^Ud0U;!N?(8hV?RDuLmPM_PBxMoX4;mO9~RO6-zUb1`X0tl+!SSL<&3ooq}$b zWevMnCR{KkCz}jMvrbASU@Z23sIHgMHcEg$e*Y+cs~Otv3-}_f zt-%1tg*m=6(77WL^z-2$$3;515?6vsMh6Bean&-{&sO9*qoA8OvIHz`45$$c>f}<& zf>zm!R8g(0-+TBJO`e0s)r_lNt9 zTe_Qh++7&>-g_nge%ZT+9W7lAT~(nPrm5Cj^)-?|y}M&3bdGNOmUu3ookjW)VXUL! z!enUZMTao6?!@BT*~{$u+PM|)*16E4D_uV!^wgcWve101{>c7i_b74mlhxDBlW6|n z^-IrscOT!fVa@gQ%%xr7g*t+r4jiUwcHsr2pPR_}3*U1$LcI(uuWI>*GV_aW+ o&*P~>2hhiKF_C;Ba{( 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_tab_move_bg_ef.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_tab_move_bg_ef.9.png deleted file mode 100755 index 35249f772c208b896923831dcdde09e87def92c5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3186 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 diff --git a/res/common/usr/share/osp/bitmaps/720x1280/00_thumbs_bg_focus.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_thumbs_bg_focus.#.png similarity index 100% rename from res/common/usr/share/osp/bitmaps/720x1280/00_thumbs_bg_focus.9.png rename to res/common/usr/share/osp/bitmaps/480x800/00_thumbs_bg_focus.#.png diff --git a/res/common/usr/share/osp/bitmaps/720x1280/00_thumbs_line_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_thumbs_line_bg.#.png similarity index 100% rename from res/common/usr/share/osp/bitmaps/720x1280/00_thumbs_line_bg.9.png rename to res/common/usr/share/osp/bitmaps/480x800/00_thumbs_line_bg.#.png diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_thumbs_loading_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_thumbs_loading_bg.9.png deleted file mode 100755 index cffac378e096cfdce780bd445a4540c227a34258..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2861 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 LNkvXXu0mjfL(xx4 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_tick_box_normal.png b/res/common/usr/share/osp/bitmaps/480x800/00_tick_box_normal.png deleted file mode 100755 index cc034329a20bf6f0e43b4b38a08a7e8fdc53222e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2946 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_time_picker_btn.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_time_picker_btn.9.png deleted file mode 100755 index c1b0ae92c75a411f9e55abd9cf3583f9bf24a7f3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3214 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 A+5i9m diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_time_picker_btn_effect.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_time_picker_btn_effect.9.png deleted file mode 100755 index 841020e0ddc4cd88df23f29ab657983d2d86382b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3758 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 M07*qoM6N<$g5Ez+6#xJL diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_time_picker_keypad_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_time_picker_keypad_bg.#.png similarity index 100% rename from res/common/usr/share/osp/bitmaps/480x800/00_time_picker_keypad_bg.9.png rename to res/common/usr/share/osp/bitmaps/480x800/00_time_picker_keypad_bg.#.png diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_time_picker_keypad_button_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_time_picker_keypad_button_bg.#.png similarity index 100% rename from res/common/usr/share/osp/bitmaps/480x800/00_time_picker_keypad_button_bg.9.png rename to res/common/usr/share/osp/bitmaps/480x800/00_time_picker_keypad_button_bg.#.png diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_time_picker_keypad_button_bg_ef.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_time_picker_keypad_button_bg_ef.#.png similarity index 100% rename from res/common/usr/share/osp/bitmaps/480x800/00_time_picker_keypad_button_bg_ef.9.png rename to res/common/usr/share/osp/bitmaps/480x800/00_time_picker_keypad_button_bg_ef.#.png diff --git a/res/common/usr/share/osp/bitmaps/720x1280/00_timepicker_number_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_timepicker_number_bg.#.png similarity index 100% rename from res/common/usr/share/osp/bitmaps/720x1280/00_timepicker_number_bg.9.png rename to res/common/usr/share/osp/bitmaps/480x800/00_timepicker_number_bg.#.png diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_timepicker_tail.png b/res/common/usr/share/osp/bitmaps/480x800/00_timepicker_tail.png old mode 100644 new mode 100755 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_timepicker_tail_01.png b/res/common/usr/share/osp/bitmaps/480x800/00_timepicker_tail_01.png old mode 100644 new mode 100755 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_title_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_title_bg.#.png similarity index 100% rename from res/common/usr/share/osp/bitmaps/480x800/00_title_bg.9.png rename to res/common/usr/share/osp/bitmaps/480x800/00_title_bg.#.png diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_title_bg_ef.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_title_bg_ef.9.png deleted file mode 100755 index 662181f70fcacfb390fbf0d033807a10ff278c4b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2897 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_title_btn_bg_press.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_title_btn_bg_press.9.png deleted file mode 100755 index 940d14c7a748519e2866fb5ce3238d76c3015db2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2895 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_title_button_bg_press.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_title_button_bg_press.9.png deleted file mode 100755 index 089c76094444083c7b377e539b3a4f9a4d881621..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2904 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 I%jW3SZ`>yz2mk;8 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_bg.#.png similarity index 100% rename from res/common/usr/share/osp/bitmaps/480x800/00_toolbar_bg.9.png rename to res/common/usr/share/osp/bitmaps/480x800/00_toolbar_bg.#.png diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_btn_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_btn_bg.9.png deleted file mode 100755 index cf7a6beb9ab3a14e24869e0475dba68ab04276db..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1077 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 E00j%hi~s-t diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button.#.png new file mode 100755 index 0000000000000000000000000000000000000000..36563c8d79164ecd6ae43d9f0ab52bad308f76e9 GIT binary patch literal 3632 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 literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button.9.png deleted file mode 100644 index 75844597462e85964fa66d972420d8e0d9cd7db9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5680 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_center_press_ef.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_center_press_ef.9.png deleted file mode 100644 index f59c8d835004b77a4b9d40cf253433575737fe65..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3003 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_ef.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_ef.#.png new file mode 100755 index 0000000000000000000000000000000000000000..f588027ba1fce54832eb242f2f4b320a88a80548 GIT binary patch literal 4064 zcmbVPc{r47|2MKPry)tQjIkfgW*9S!Ff*7K9b0E)$uNV#7-q&YiWF(Glu;=}lFE{` z(8&@ZTUt00vLsvO*ej*<8|R$P@BQOk?;r1TUC(oGpU-#y-q-b<`NhdjR!Uh)NJvPQ zXpeUhjEL=5LQL>g+s~^O40|~QGRKt}z=@`?XhPOhrXLMNWKaTWE;I_28_`X(5E9xE zKzAc^$RtOMKa&BWY-1oXjBo*4NXTM;OgP0qgvJ5+(E{mVSnyKA12BkA#e#n|A;C!D zI9d?hK9)sujdgPKj}7rhQ^ET!K^8F>fdB@LLjlDwLc`dY7%cctxfsEGdm9P{{R!cO zV8MSGMJD|M!ZBGikO>54ohxtUxFnjYdOZ2q*$!BtRIkxnUeij8Pa{ z^M?dHjqT5(hjZx6FwnL{iXStQg9QsL{mTVLIEnO+;4t>zff9ra8bb+(!XYpygR$+` zpJ+D6h4%ku{41L6#to-IU1)4(B+Flrj{wadWI^oyyP|ENz#7a!7G01ON+_P`AIYGF zafo;uvS#C^b z=#L8cC5XvkvV)l6Ae^fS1P=O@9!6zGv$xapm$!HtiylRz+On7o(4Xy$@P7`5)q-g>T|Ry+tuqPMk&e7;~y+tS&N%H3QVSuZyL*q@aaM$8aHe6 z%J4&ElbvM1M1UICy1HLBF*Qs4=n&2iCdD#CF>1m_F6n*3*ba&pu} zB*})cJgqY?H)5-eyip5^(r5&j++p-V|-&=vJ+V~ zf4yR!5qLUT*qa58A9;4MaΠ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 UIyU&VV*8()NN~be*!Z6OKWeB1&j0`b literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_ef.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_ef.9.png deleted file mode 100644 index 198294e42d5d73e0e3292266fd07a75c034f258c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3865 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_press.#.png b/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_press.#.png new file mode 100755 index 0000000000000000000000000000000000000000..44b5c56d1fb3c68b67a0cef2e77ffb94752e9b9d GIT binary patch literal 3984 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 literal 0 HcmV?d00001 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_press.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_press.9.png deleted file mode 100644 index 34de8d27736fca9689de35cd37a28a10aa84af53..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5988 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 Q%m4rY07*qoM6N<$f;e3vi~s-t diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_right_press_ef.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_button_right_press_ef.9.png deleted file mode 100644 index 5ea7c49bf598297d74e7f432b69fc2feb6e65014..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5913 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_line.png b/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_line.png deleted file mode 100755 index 72edeadf610060b3dda24a06c4befb680dcbc243..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 936 zcmaJ=zmL-}6b?UBp%b?;07A&hNeBrV+u_-)azV3MU$Qfd zl=>lO3qtiU4Q*#i7#NbV7ii+IPoG8Lxte%VvXB+(Wa1q!BGO&7dd_0%D6V+;7*tc0 z3;2ZDAoWj!SWPu?rK|EdJBA`yLD*Ci&rS8MHqdEAKuJPH2bD1>?@M?eDf`MpAR~+* zmLaMXF;Ytv6=AUcM4l~jM{37tu5g+a9L>>byUu|26bjW30Tf` zFSvLsHyZ^%y;rDX6Ji1r7f0JClTX^#Fl5qC%>gzA> R9z4z7j@f7#@9TqCe*jq}AfNyM diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_line_01.png b/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_line_01.png deleted file mode 100644 index 241ac95d1c593078a174ee17633cd53a2c9dc890..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 946 zcmaJ=O^ee&7>){MS$4sLi0f&{f*{z;q-~l_Xk6N+aSNML+QRl|noQf!O(rH&llCGk zcn~k%{1^U#J*ar{=taSc2p;yf{(v5wbepaRYhW@TJkRq!?>q0jYPX*3Zr|VLIBvIj zq<7eSlZ}I|9Q%Jed3edDJ=*BgE*a9;3Ncr8$N+<;XN_Fz}OsDIZOh}o?r?Fc;xyTe|i3%2d<;>Cz6TGppM7x(LBW6d8=p7C${47 zhmS!eQJH{;sRa`6)Q{9e(2+AcvEFq<& zJOTwIA}AIhlJg=`C0RuxSbaQ;7CJ+3A*Wdt+hamWG$sM4cO^jt zC$8_1I9lROQ*HVYwR{^lb&Y2Vg6leJv06SbN^+wp6^o+SDAdZbT$N;_(Wur?S&}oZ zPVA|NeVTEdYp$`8o3?@%u*fitB9lqHp9vW(KAg``1Nh zN346&<+^RzX5IMMXWbsMwyxc|D6=Q=ps81T$@jtCw{I3Ne*OL#9q-)!kh2$O;yq*U f)60)H>;<=lxUa8sUw)il;Pe$W8!i1^?djPcId&!3 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_press.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_press.#.png similarity index 100% rename from res/common/usr/share/osp/bitmaps/480x800/00_toolbar_press.9.png rename to res/common/usr/share/osp/bitmaps/480x800/00_toolbar_press.#.png diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_trans_button_center.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_trans_button_center.9.png deleted file mode 100644 index ef6633f50ea2468cc5e3d2de7aa092774485d126..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2930 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_trans_button_center_press.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_trans_button_center_press.9.png deleted file mode 100644 index dfa75c0afd7146998c168abd1509302e83a414d8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2973 zcmV;O3u5$%P)KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z0002UNkl(@+kvX8E?(t8nx>CPVXXy86+qK86JtygKwZ}} zk_q6v0Kod=`j+dhtTsCdEz|h|5Y@X#GU{BR@KFQ!40HApSB0adB zPf*$~;@3qk%koeZ#gU|F0Lb(F8ihfYW%np9lv3S04zz7M?jk30c~7bEi(Uf&$$(Ka T6d8z>00000NkvXXu0mjfaFvA? diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_trans_button_left.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_trans_button_left.9.png deleted file mode 100644 index 8fb55610a758bdfc0aa87af4627dd3fbc1d89c2f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5864 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_trans_button_left_press.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_trans_button_left_press.9.png deleted file mode 100644 index f324dca0e5b2a29057b3061f693c3aacc775d8ad..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6144 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 KQL2Yozx^Md?33L9 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_trans_button_right.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_toolbar_trans_button_right.9.png deleted file mode 100644 index 363f3c2b024318d309d4c52e3ceebd583ee44474..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5992 zcmV-u7nkUXP)KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z000b=Nkl>fEw_DG39SH$ z2ZV%pUoH|7`~x6BzynAKiDw=V@Pc;9veE)8mW0(3Zc98KPj5V)8P7~#rutTwb57Mc zhX+?hPBz)tvE4&SrLOK)cYpeKZuR?|AHn@Ymybm2>hk}`LA2H&gnZ>g-eUj`%IjSK zN9FUI049&~qmL2G4?HJYYZOIcBuU~brAU$_E@RAQjM-V1IYm+I0(cw1 zcS_)=25166v)P1XoKmU*XhI0lT5CecdtW4_BuXhNr8M$9H)^$7((CmiA%s1j z&;8@$Y&I83lK6XjdtVrj$6o~S*8u(ofO;Z;qtU2CDOHqGMF>%bVJOoy3)3`n z$8m&h+qrGqg=w17wry$Kb|IytQc5m_u!IoIbzN4g)zaB)7Vhuw|NLY!`82C(yq zM=&Apjbd$@=A!(^+On*LWm$9Abx&4TSMM|$jj`i6%=5g=b=}-`U2a)cQAM>V3WG6b zan7AA%iJu>yt{Yrt{og4tOEGU@_gh0L2z*&I-LXG_tP*86W{ll>$;-qww!aT9O-VFrrvZqt?%yc{?K$f-2(7?0FqAx z_?Z`OXmbCR_lLJU(=@?sIztqlKnRi6>-FvP=g+^@Y&K6CjmDx@t1;Jgb3zEDlr+mS zJ4q5JO;bNf5`SlBXJb4brvQEn!0;0Rer#VL1e6lwd4ch0h@+z;(QG#VR%=$T*E33~7DAYD9J`CfqPAEpf_}fhaddQ)1Nc<{vyTI$kF%ai zDdBq_E?l^XPN%bW^XAQ8+}hgu>|iixPbQNMLG5}CYkt`Ey& zqbT|^fIobyfbT_9Yt$PJT)p}!dh6EK=cSYmfPW^0=vJ#0d!AQlt$8`Y(<@i5?7s8P zJFhPmi?;#%(?@+b#S=V~Qt)dvJoD*i2|!-i+S+<`G#WMM^SK8AuIuKtT8#%mkovx# z_IkYmfZqhLx)i_)(sf;|uC8J*7`(Q#v-6qpc-&Yl7A_$~`@YYEAYipxEnQzUFHIpRxP>{?Cj?qxNhz^OaJ>wryELW{%@z-EMbSMv*QJuo~fOYinq?+pD*4 z-+nEMqDGP=E+IsFo|pT+&wbzL>+9=-FbtajUSBGp)*4bNv{yTbqUgrq;o;fYZ06^A zZdjHjUDqvK*X54mux__|4B(fR3Rpqfwv8V?d)D0D-F6 zw8qA{b7X&i|K-JE5irIqtu-9SDQw%$9mf&9UT+BCbwWseselz^r_)86rWdBuX)BIn zS1CnI(^RhO=C*C;uIutJ3}XPFI~70x=yW>9!NI|^X_|VRbCXi4%RDEyEGus`8WDh3 zmkwCXjm=gIv)SxQnx-!2+)_#r%d%vdq!rz6cLd-SLI_5HVi{kN|o!n48Z!SMbNS=D5X55l%chzT5FVWno_DQ%gO6gHwxO)zpNLAEf69 z08p(pISoK5CCa9J5SjoWMNt?4vL}{yKKha;K?o^IAF0cAy7J>B&vUynVM}jfLI`9b zK`9l6VHD;3r%TODlu{(mbEneCr_u+75HJiQuJp3j8l|i!N-3IUnO|;uoK6I@EQRAZ zk!4whX_^Hg1WGAd?j%sgSO{S6)Bxi+L9JFhavX=7rm3{n$n)GNih?So%rs3K0JcvJ za6X@*-EQA;94EIdO9CKyp3|Zz%%Uhv##jr$e=Qx55CX;+lv49%vpI4cM^po(C<>z} z3Nw!5FwgT?YrS(SfYZqYK@hxKT7{etf;`X7JkPD7D9n?SlQjU}UivM6Wn{Uj4}K8 z`1ov=Wkap?HFbq``g^^{MUFr{SG#Y&hz^?<4ONk&M1O&ivG(@Y_dV6zo^MBgy z_T2YpWLfsz2d9>&8bLw`48y>|{vOgaedqb-pZ`Xu)0u=}$N(VA zGAl_ECrJ|T;NalmXf(P6;FmwLn>^7zM+mf5IN0Au9LGD)J@?#KyWQ?dyh|Gs|x`q#SM?#ar^N@AL(6hfFu zk~kIIty{NVOOoVG+%LkwQvb*4EZ5)9Ew?@M|BNo<1HJK`wF}k4G2{hx5(N%{MkSHg31u?P;UYNKMmJLI|tc zGmhi9w!OXmauh`&fFG|iw69pmuuFmE=S|9SoT^|!j+?x@jd#6b{n zN~zAW%*wLNna}5bk|e?Q_V!Do(dZn2p9C;|s09Dv`xrn7h1ME_!2tK}9msmUe)HP3 zYj3vO?cvJG$~+81X4`h5wMLqzR+^>{M(%Ut@wf-z3jn_N&<5gtY5eyURg`I>l!zAz z#wTM;qNu3VYTtY2nP>jB-EI#WjmA6-!_0MEVHk!kih?r6-d9wyy}kWoQ4|FLegeS$ zBPkL9uuKzKmfbg?gdi6jjB{|tFrUxCITyBVk5*PzZoTlr3%9~BoP}W+m(?D^Fbr9y zi)NN(PF0o?MbYZ+?(WO;`TP!mUjYz3a+mtB!XDE!Q_HeuuIomPM&qE_Y#vvIJ=M-o zl~0r!gL2NR>Nq#cGVk4Y-@Sfva`I^*#Ge89ok!gbsAQ4}05@*j_|r;5RF<>y#kOtd zrfC+oZ5QQMfh2@LYfXd@R0v@UAuPt2!#Q^*lgaAd-rkSQW-|rgOSoUc_elj4G0VM+ z(T5b5y(hLyJprW@@;o=HD!8(4%jTRrNsC$)T<08kW#S!uWj3mmo9 z4;DC5DWzGZh9@T{7vnfS$2pfJ*k1q`J#o6Ddz!2LSa+odo07J%c&wX2Uj%{=U=TDHsizX1S6 W-M1_;6)B|v0000KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z000fDNkl3B7z0AcvG@5c2e2{z zz5<{#zCHz@e=85YksuIb42~W>`X^Ui6Jrddlva`?p4OTqN#f;s?&NvyWLf4)DOUh| zAHbVq;M)es0H9v453j!27(=wyWM*cDYORS<%Fs1S19@C*Qi5EiA>5JEH|gjklP7-Pn=EJGY=-QC@v2XG9)zg#cqb*K2DhaUPHN~yLiO99Z9WogD(;W& zOS-NrDW#eaVw6%$N=b{Na5(37Q50^HB*EI+T61@ImjU=HfPV&{Z#DhI7=yd+y6fxX zhbuyeVvI@4vI@o+_dG9kT{jDYAoDyg_dKs~97jz4ObB5MAy}U0Zl34fa5yZludg@z z{eBO?UjR6Fvw(zKRcb&8k(APcF_x4{rPVMDJFe>{zV8o%AV^E4(kKkW)c5_u zvMgncAw^Lz&bgaqnU`gmzq-2G-q_ff1@M*ec{6~QXY4Qh{y&+))})K9XNk5fD+$AJwN|TL^nHI=sZ^p$r82Bmt9!2N3dWd{Qd&h(*jbi&X`1?j z!Jx9TvNAsy3{C_1V*trb0shKg9yi8lz-Snw0j*%PgpnM&$gp$q1UApSfsJ!-BOXSE zF*a&68gEyt)l0Qnty`}FK%ydD*#`@D9#8W?76wQ-7pM!xm?c2^%MsW9$W{o z*y(is2*7Uw7+%*(a>K=Q0%|$f_lcjv{C$t&ofn?5P9J~qNSdZ|LWtL-ly-rl}{cXzin91cUJ6m?x!1VNDdzMma9a9}kI!%qTubUJ`nAVb{q z$Wyrg$QKYr(Zju7Z(q0DZKP@H5<)Oecjmfo)@rqO#!;lx0UVD>%Pr%C^V4IxCm+wC5T zqNowau}=swuInn#^SJA}d8^gh0`N;y1q28vbJ4i_&9cn4 zZCm=j&ppp8=H}*hec#_l2zhvlfaCG#mhix5e;Hb9CyJs&gTbJlB#8$AuImcdb-Cj> zyxDB-0C;-3fB*<(u!9C3IQk@p!{J9qqfuit8ihqsShj5|$8m(~y2aew+zx;z2qBfJ z0!~WLeUCj2t+l(ix7QvHht)jKZAz)}JWn`|BRtRJ<#IU&@Yr+#$5C|3Ei4}X1p58{ z$Kp7yjz*)v7(*P#QI6vX+qOluT8#i4ojTwoii-~%g%DyU%d&EsrUB=iF~&4wOftq~ ztJUfPc$^SIrwa&xFcq~FmV?^-z0g|wLI{s@?g}9&rBqW&m1SAl_x%{aJ$DGuMrC#%j4_s! z(kY6<)>>0a=|l_Cp6BHN7VZcjh=rim0sx}5W@FWiPJ}8-sj+Qa04U#?2oef6tYh4t zFe#;Vxx*x8a@w|C0H^=}9qTevohTp#%yuD!2(Hl$4FJO!QvgbLCdF4ebd4V%&k+Ei z#uzePFasC^DFql~{2En(03hSEXLl%q21UMid7Y(HQA*83cAlI<2xp>%(dlPafyV;? zFqBeZS(c=fYNZs>S`)1`5kj~V8Tk$XO2oZQ5JI$NS%NX92q9)H))TEY&9W>QZ+qMU zKqb)Mz5qfmjSHZ0YC#IIigGFVcYhe<2b43c?AF?gs`NPRBO%B zG_3+ynmV8{8d_xNURp+}R9f{sFY`Q)GscV%f=Vfwl#=CnJ_F$7^Z}JXw0;UaOH8R$ z+Vp)taU4f!ts$kfq?9a<aYC9C@8*%wbRE@sZ^FrrP82ODrJl@Eu|zv2quKEhr{7r0KPG0Km#Lk zte$)sS+b|<_42x~x0(ij~lS~hAJaf+ z6deHY+*FkXqa;+)!}41%Aq>Nd<#M?@Gcz-AT~{ilSe9jOp6AZi*4Dl(%XW-0uS^Zl z=*tu1XAqtUHatBGYaDM@A4rmf19<+niRkY)?)s}I@y4-d5d^`7 zX0v&=(P-?3VVDs@kmtFbrm4?4_q*NhM*;jc0CoE#Xf(9sNP8t|1!`DY|9tUTtS-Hs@7uTUrB{wrfImnz5T#AwX3%g(7(kNrE_z!_%ivKRy@?QUJg8gC4Q*Y13;-F!`EeYFOG`^fq9`f@_{^kp`|toKU`2wodl9F; z^Bm5;{jDoAb#``kb!KK}XLfeBABG`UN|B-{?9piCCrMITT3ULf+wJZL@L7Do-rS7? z8V#crjO0*7f_$)vGp~LXr{DY!SeBJEo6QsTdVRHCukSP(ji^$oB(CcUDJ9AC+>PTn z7)S20-QC?e0G|hN{(57=u0R+)ZmP#XT8_O69O9w zwQ9AxQ?J*fYPGr-1VKRv(bt+PmX?-&EQ+EMfS&-cej`a^0KlUaT(+eYFj^uR>|hja zVzj%7UgrYhVFW^mbX|96et!N;sZ`o2m&?6swK^=9%cCF&GRBzES|iVMKhJYFO;bOL zqS=*|l_Pt5dlv!x8i44ArJN5i_9#keVOdt{`~FtBT;8y4JNA8l6o%m_48yooDvc)F z2LLd!NllDB7cN}*c(2#{SWy&z2jCB`|IPb-Oce_Y3onkXQJN4UEz44tWeMB1bH{OV z$8osld71C~Sr7!dZQGJDrnJ^3&vSQTjpCfU{eFLTZEfvGhr^);@Dwgv_-?XIFoXd> zyWL)XA9If|7aE8O-%;x6i5BK~19|G|A<5?PgSS#pc zk3vplIAe?%8yd;jGdM9g(y=X%^?JQ_uh+Xbj^q8Db2SEg7C`sIemP~k|b$lSvJEtuXE1ZN~vW4{|?|q0I%FuL3TWg-%sgO6Zrv`eX3{2ddYVI pY~5OqY;LN|T-U6cwi@=|0{{ZA4w&jF3$y?L002ovPDHLkV1nXh?pFW+ diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_transparent_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_transparent_bg.9.png deleted file mode 100755 index 1606d60a28e64412be0d472207cfdc9beab00342..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 198 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 IM6N<$g1jPzD*ylh diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_value_progress_bar_effect.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_value_progress_bar_effect.9.png deleted file mode 100755 index 678ad167d3b97c227b44ff5e9f6031c08741d60a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2982 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 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_value_progress_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_value_progress_bg.9.png deleted file mode 100755 index b0b605981b2f9add97f8c60eb1b9c7f76f906497..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2956 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 JPDHLkV1gExdjtRg diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_winset_Back_btn_press.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_winset_Back_btn_press.9.png deleted file mode 100755 index 29fa717d85bf99db5a6a79e54f6bbecebd43bb97..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2973 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 Zf}~fWa5?q8o5J${kcb0C=Ql;~`UgtMoB#j- diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_winset_control_tabbar_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_winset_control_tabbar_bg.9.png deleted file mode 100755 index abccffca93a5f1b9285d528b0c7662182a81dc67..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 104 zcmeAS@N?(olHy`uVBq!ia0vp^tUzqU!3HF!2nc=vQu>}Qjv*Ddk`o*n{_~tTaQygl zd!ECpo#IobPyf$hs=LK&=d(u6{1-oD!M< D^;9D9 diff --git a/res/common/usr/share/osp/bitmaps/480x800/00_winset_control_toolbar_bg.9.png b/res/common/usr/share/osp/bitmaps/480x800/00_winset_control_toolbar_bg.9.png deleted file mode 100755 index a65a4b278f424ad04680f89423c3ac1fd8c66bda..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2819 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