/*
* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
* which accompanies this distribution, and is available
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
*
* Initial Contributors:
* Nokia Corporation - initial contribution.
*
* Contributors:
*
* Description: Resource STRUCT definitions specifically for the camera*
*/
// INCLUDES
#include "Cam.hrh"
#include "CamSettings.hrh"
#include "CamSettingsInternal.hrh"
// MACROS
// STRUCTURE DEFINITIONS
#ifndef CAMERAAPP_PLUGIN_BUILD
//****************************************************
// REMEMBER ALL THE RESOURCES SPECIFIC TO CAMERA ONLY
//****************************************************
//----------------------------------------------------
//
// CAM_DYNAMIC_SETTING_ITEM_DATA
// The initialisation data for a dynamic setting item.
//
//----------------------------------------------------
//
STRUCT CAM_DYNAMIC_SETTING_ITEM_DATA
{
// Settings model Id for this item.
WORD id;
// Default value.
WORD default;
}
#endif //CAMERAAPP_PLUGIN_BUILD
//****************************************************************
// REMEMBER ALL THE RESOURCES BELOW ARE FOR BOTH CAMERA AND PLUGIN
//****************************************************************
// -----------------------------------------------------------------------------
// CAMERA_BITMAP
// This structure is for defining the bitmaps of a sidepane indicator.
// -----------------------------------------------------------------------------
//
STRUCT CAMERA_BITMAP
{
LONG bitmap_id;
}
// -----------------------------------------------------------------------------
// CAMERA_INDICATOR_COORDS
// This structure is for defining the position of a side pane indicator.
// -----------------------------------------------------------------------------
//
STRUCT CAMERA_INDICATOR_COORDS
{
WORD tl_x; // top left x co-ordinate
WORD tl_y; // top left y co-ordinate
WORD br_x; // bottom right x co-ordinate
WORD br_y; // bottom right y co-ordinate
}
// -----------------------------------------------------------------------------
// CAMERA_INDICATOR
// This structure is for defining a side pane indicator.
// -----------------------------------------------------------------------------
//
STRUCT CAMERA_INDICATOR
{
WORD indicator_id;
STRUCT coords;
STRUCT bitmaps[];
}
// -----------------------------------------------------------------------------
// CAMERA_SIDEPANE
// This structure is for defining a camera side pane.
// -----------------------------------------------------------------------------
//
STRUCT CAMERA_SIDEPANE
{
STRUCT indicators[];
}
// -----------------------------------------------------------------------------
// CAPTURE_SETUP_LIST_ITEM
// This structure is for defining a list item in a capture
// set-up list control
// -----------------------------------------------------------------------------
//
STRUCT CAPTURE_SETUP_LIST_ITEM
{
LTEXT item_text;
WORD setting_value_id;
LONG bitmap_id = -1; // no bitmap
}
// -----------------------------------------------------------------------------
// LOCATION_SETTING_LIST_ITEM
// This structure is for defining a list item in a location
// set-up list control
// -----------------------------------------------------------------------------
//
STRUCT LOCATION_SETTING_LIST_ITEM
{
LTEXT item_text;
WORD setting_value_id;
LONG bitmap_id = -1; // no bitmap
}
STRUCT CAM_LOCATION_SELECT_SUMMARY
{
WORD setting_value_id;
LONG summary_icon = -1;
LTEXT summary_description_text;
}
STRUCT CAM_LOCATION_SELECT_SUMMARY_LAYOUT
{
STRUCT summary_rect;
STRUCT summary_inner_rect;
STRUCT summary_icon;
STRUCT summary_description[];
}
//----------------------------------------------------
//
// CAM_CAPTURE_SETUP_MENU_DATA
// All the contents and layout data for a capture setup menu.
//
//----------------------------------------------------
//
STRUCT CAM_CAPTURE_SETUP_MENU_DATA
{
// Data for the layout of the listbox.
STRUCT listbox_layout;
// Data for the list box item contents.
STRUCT contents[];
// Data for the layout of the text items in the listbox.
STRUCT text_layout;
// Data for the layout of the bitmaps in the list box.
STRUCT bitmap_layout;
// Data for icon text layout.
STRUCT icontext_layout;
// The offset of the highlighted rectangle (when list item selected)
// from the normal rectangle of a list item.
WORD highlighted_offset;
// The height of a list item.
WORD list_item_height;
}
//----------------------------------------------------
//
// CAM_CAPTURE_SETUP_MENU_ITEM_REF
// Reference to a capture setup menu item.
//
//----------------------------------------------------
//
STRUCT CAM_CAPTURE_SETUP_MENU_ITEM_REF
{
LLINK capture_setup_menu_item_ref = 0;
}
//----------------------------------------------------
//
// CAM_CAPTURE_SETUP_MENU_ITEM_ARRAY
// Array of all data for a capture setup menu item
//
//----------------------------------------------------
//
STRUCT CAM_CAPTURE_SETUP_MENU_ITEM_ARRAY
{
// Settings model Id for this setting item
WORD id;
// Text for this capture setup menu item.
LTEXT text;
// Data for a capture setup menu item
STRUCT capture_setup_menu_item[];
}
//----------------------------------------------------
//
// CAM_CAPTURE_SETUP_MENU_ITEM_DATA
// Data for a single setting of a capture setup menu item.
//
//----------------------------------------------------
//
STRUCT CAM_CAPTURE_SETUP_MENU_ITEM_DATA
{
// Id for this setting value
WORD id;
// Id of the bitmap that is associated with this setting value (-1 default = none).
WORD bitmap = -1;
// Text to be used instead of an icon for this setting value ("" default = none).
LTEXT icontext = "";
}
//----------------------------------------------------
//
// CAM_CAPTURE_SETUP_MENU_LISTBOX
// Data for capture setup menu listbox
//
//----------------------------------------------------
//
STRUCT CAM_CAPTURE_SETUP_MENU_LISTBOX
{
WORD bottomOffset; // vertical distance from bottom of screen of capture setup menu
}
//----------------------------------------------------
//
// CAM_CAPTURE_SETUP_MENU_LISTBOX
// Data for capture setup menu listbox
//
//----------------------------------------------------
//
STRUCT CAM_CAPTURE_SETUP_MENU_LISTBOX_ITEMDRAWER
{
WORD textWidth; // width of the area allocated to drawing text, in pixels
WORD bitmapWidth; // width of the area allocated to drawing bitmaps, in pixels
WORD itemVerticalMargin;
WORD highlightOffset;
WORD textLeftMargin;
}
// -----------------------------------------------------------------------------
//
// CAM_BURST_GRID_ITEM
// Data for drawing of the Burst capture Thumbnail grid
// -----------------------------------------------------------------------------
//
STRUCT CAM_BURST_GRID_ITEM
{
STRUCT cell_rect; // outline rectangle for each cell in the grid
STRUCT high_rect; // outline rectangle for the cell highlight
STRUCT mark_rect; // outline rectangle for the "mark" of the cell
STRUCT thmb_rect; // outline rectangle for the thumbnail draw area
}
// -----------------------------------------------------------------------------
//
// CAM_RECT_SIZE
//
// -----------------------------------------------------------------------------
//
STRUCT CAM_RECT_SIZE
{
WORD width;
WORD height;
}
// -----------------------------------------------------------------------------
//
// CAM_SLIDER_EV_ITEM
// Data for drawing of the EV Slider legend
// -----------------------------------------------------------------------------
//
STRUCT CAM_SLIDER_EV_ITEM
{
WORD item = ECamSliderLegendItemText;
LTEXT text = "";
LONG bitmap_id = 0;
LONG mask_id = 0;
}
// -----------------------------------------------------------------------------
//
// CAM_SLIDER_LEGEND_ITEM
// Data for drawing of the Slider legend
// -----------------------------------------------------------------------------
//
STRUCT CAM_SLIDER_LEGEND_ITEM
{
WORD item = ECamSliderLegendItemText;
STRUCT position;
LTEXT text = "";
LONG bitmap_id = 0;
LONG mask_id = 0;
}
// -----------------------------------------------------------------------------
//
// CAM_SLIDER_CONTRAST_LEGEND_ITEM
// Data for drawing of the Slider legend for Contrast
// -----------------------------------------------------------------------------
//
STRUCT CAM_SLIDER_CONTRAST_LEGEND_ITEM
{
WORD item = ECamSliderLegendItemText;
LTEXT text = "";
LONG bitmap_id = 0;
LONG mask_id = 0;
}
//----------------------------------------------------
//
// CAM_USER_SCENE_SETUP_LIST_DATA
// Data for a user scene setup list
//
//----------------------------------------------------
//
STRUCT CAM_USER_SCENE_SETUP_LIST_DATA
{
// List title
LLINK title_id = 0;
// Array of all items for a user scene setup list
STRUCT user_scene_setup_list_items[];
}
//----------------------------------------------------
//
// CAM_USER_SCENE_SETUP_LIST_ITEM_REF
// Reference to a user scene setup list item.
//
//----------------------------------------------------
//
STRUCT CAM_USER_SCENE_SETUP_LIST_ITEM_REF
{
LLINK user_scene_setup_list_item_ref = 0;
}
//----------------------------------------------------
//
// CAM_USER_SCENE_SETUP_LIST_ITEM_DATA
// All data for an item in the user scene list item.
//
//----------------------------------------------------
//
STRUCT CAM_USER_SCENE_SETUP_LIST_ITEM_DATA
{
// Settings model Id for the setting type associated with this item
// e.g. white balance, or colour effect.
WORD id;
// Text associated with the setting type.
LTEXT text;
// Array of all possible values for this user scene setup list item
STRUCT user_scene_setup_list_item_values[];
}
//----------------------------------------------------
//
// CAM_USER_SCENE_SETUP_LIST_ITEM_VALUE
// A possible value, and associated text
// for an item of the user scene setup list.
//
//----------------------------------------------------
//
STRUCT CAM_USER_SCENE_SETUP_LIST_ITEM_VALUE
{
// Settings model Id for this user setup scene list item value
WORD id;
// Associated text with the user setup scene list item value.
LTEXT text;
}
//----------------------------------------------------
//
// CAM_STATIC_SETTING_ITEM_DATA
// The initialisation data for a static setting item.
//
//----------------------------------------------------
//
STRUCT CAM_STATIC_SETTING_ITEM_DATA
{
// Settings model Id for this item.
WORD id;
// The shared data key for the item.
LTEXT key;
// Default value, if there is no value in shared data.
//WORD default;
}
//----------------------------------------------------
//
// CAM_SETTING_ITEMS_DEFAULT_DATA
// Default values for a list of settings items.
//
//----------------------------------------------------
//
STRUCT CAM_SETTING_ITEMS_DEFAULT_DATA
{
// Array of all possible values for this user scene setup list item
STRUCT settings_default_values[];
}
//----------------------------------------------------
//
// CAM_NON_STATIC_SETTING_ITEM_DATA
// The data for a non-static setting item.
//
//----------------------------------------------------
//
STRUCT CAM_NON_STATIC_SETTING_ITEM_DATA
{
// Settings model Id for this item.
WORD id;
// Default value.
WORD default;
}
//----------------------------------------------------
//
// CAM_SCENE_SETTING_ITEM_DATA
// The data for a scene setting item.
//
//----------------------------------------------------
//
STRUCT CAM_SCENE_SETTING_ITEM_DATA
{
// Settings model Id for this scene item.
WORD id;
// Array of settings for this scene item
STRUCT scene_items[];
}
//----------------------------------------------------
//
// CAM_SCENE_SETTINGS_DATA_REF
// Reference to a scene's settings data.
//
//----------------------------------------------------
//
STRUCT CAM_SCENE_SETTINGS_DATA_REF
{
LLINK scene_settings_data_ref = 0;
}
//----------------------------------------------------
//
// CAM_SETTING_ITEMS_DATA
// Data for a list of settings items.
//
//----------------------------------------------------
//
STRUCT CAM_SCENE_SETTING_DATA
{
WORD scene_item_id;
// Array of setting items data.
STRUCT settings_items[];
}
//----------------------------------------------------
//
// CAM_SETTING_ITEMS_DATA
// Data for a list of settings items.
//
//----------------------------------------------------
//
STRUCT CAM_SETTING_ITEMS_DATA
{
// Array of setting items data.
STRUCT settings_items[];
}
// -----------------------------------------------------------------------------
// CAM_ENGINE_UPDATE
// This structure is for defining whether the engine needs to be updated with
// settings after a prepare.
// -----------------------------------------------------------------------------
//
STRUCT CAM_ENGINE_UPDATE
{
WORD update;
}
// -----------------------------------------------------------------------------
// CAM_VIDEO_QUALITY_LEVEL
// Structure holding parameters for video quality setting item
//
// -----------------------------------------------------------------------------
//
STRUCT CAM_VIDEO_QUALITY_LEVEL
{
// Id for this quality level
WORD id;
// Id of the resolution to use (may be overridden by separate
// resolution setting)
WORD resolution;
// Target frame rate of video (frames per second)
DOUBLE frame_rate;
// Desired bit rate of video (bits per second)
LONG bit_rate;
// Desired bit rate of audio (bits per second)
LONG audio_bit_rate;
// Mime type for video. If not specified, the value in shared data
// (101F8667.ini) is used.
LTEXT mime_type = "";
// Preferred supplier for MMF camcorder plugin. If not specified, the
// value in shared data (101F8667.ini) is used.
LTEXT16 preferred_supplier = "";
// Video codec. If not specified, the
// value in shared data (101F8667.ini) is used.
LTEXT video_type = "";
// Audio codec (FOURCC). If not specified, the
// value in shared data (101F8667.ini) is used.
LTEXT audio_type = "";
// video file type id
WORD file_type = ECamVideoMpeg4;
// video length (long or short)
WORD video_length = ECamVideoClipMax;
//
}
//----------------------------------------------------
//
// CAM_VIDEO_QUALITY_ARRAY
// Array of all video quality levels
//
//----------------------------------------------------
//
STRUCT CAM_VIDEO_QUALITY_ARRAY
{
// Data for all quality levels
STRUCT quality_levels[];
}
// -----------------------------------------------------------------------------
// CAM_PHOTO_QUALITY_LEVEL
// Structure holding parameters for photo quality setting item
//
// -----------------------------------------------------------------------------
//
STRUCT CAM_PHOTO_QUALITY_LEVEL
{
// Id for this quality level
WORD id;
// Id of the resolution to use (may be overridden by separate
// resolution setting)
WORD resolution;
// Photo quality
WORD quality;
}
//----------------------------------------------------
//
// CAM_PHOTO_QUALITY_ARRAY
// Array of all photo quality levels
//
//----------------------------------------------------
//
STRUCT CAM_PHOTO_QUALITY_ARRAY
{
// Data for all quality levels
STRUCT quality_levels[];
}
//----------------------------------------------------
//
// CAM_RESOLUTION
// Numeric data for a photo/video resolution preset.
//
//----------------------------------------------------
//
STRUCT CAM_RESOLUTION
{
WORD width;
WORD height;
}
//----------------------------------------------------
//
// CAM_RESOLUTION_ARRAY
// Array of all photo/video resolutions
//
//----------------------------------------------------
//
STRUCT CAM_RESOLUTION_ARRAY
{
// Data for video resolutions
STRUCT resolutions[];
}
//----------------------------------------------------
//
// CAM_QUALITY_SLIDER
// Text strings for quality slider control
//
//----------------------------------------------------
//
STRUCT CAM_QUALITY_SLIDER
{
LTEXT title_text = "";
LTEXT subtitle_text_top = "";
LTEXT subtitle_text_bottom = "";
LTEXT remaining_text = "";
STRUCT setting_title_texts[];
STRUCT setting_desc_texts[];
WORD setting_enum[];
}
//----------------------------------------------------
//
// CAM_QUALITY_SLIDER_LAYOUT
// Layouts for quality slider control
//
//----------------------------------------------------
//
STRUCT CAM_QUALITY_SLIDER_LAYOUT
{
STRUCT slider_position;
STRUCT subtitle_top;
STRUCT subtitle_bottom;
STRUCT setting_title;
STRUCT setting_descriptions[];
STRUCT remaining_title;
STRUCT remaining_text;
STRUCT storage_icon;
STRUCT desc_rect;
STRUCT desc_inner_rect1;
STRUCT desc_inner_rect2;
}
STRUCT CAM_DECORATIONS
{
STRUCT decorations[];
}
STRUCT CAM_DECORATION
{
WORD type;
STRUCT decoration;
}
STRUCT CAM_BLENDED_BACKGROUND
{
WORD tl_x;
WORD tl_y;
WORD width;
}
STRUCT CAM_DVF_BLANKER
{
WORD tl_x;
WORD tl_y;
WORD width;
WORD height;
}
STRUCT CAM_RECORDING_ICON
{
WORD tl_x;
WORD tl_y;
WORD width;
WORD height;
}
#include "CamModeSelect.rh"
STRUCT CAM_ACTIVE_PALETTE_ITEM
{
LONG item_id = -1;
LONG cmd_id;
BYTE position = -1;
BYTE isVisible = 1;
BYTE type;
}
STRUCT CAM_AP_POST_CAPTURE_ITEM
{
LTEXT text;
LONG bitmap_id;
}
STRUCT CAM_AP_TT_ITEM
{
LTEXT text;
}