--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/data/details.svg Fri Sep 17 08:29:24 2010 +0300
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 14.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 43363) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="800px" height="600px" viewBox="0 0 800 600" enable-background="new 0 0 800 600" xml:space="preserve">
+<rect x="0.445" y="0.86" fill="#030303" stroke="#3286B2" stroke-width="7" width="800" height="600"/>
+</svg>
--- a/data/detailsview.docml Thu Sep 02 20:26:45 2010 +0300
+++ b/data/detailsview.docml Fri Sep 17 08:29:24 2010 +0300
@@ -4,46 +4,42 @@
<widget name="content" role="HbView:widget" type="HbWidget">
<widget name="ImageIcon" type="HbLabel">
<enums name="alignment" value="AlignVCenter|AlignHCenter"/>
- <icon iconName="qtg_small_smiley_very_cool" name="icon"/>
- <real name="z" value="1"/>
+ <real name="z" value="3"/>
<sizehint height="21.19403un" type="PREFERRED" width="39.55224un"/>
</widget>
<widget name="FavIcon" plugin="glxdetailscustomplugin" type="GlxDetailsIcon">
- <real name="z" value="2"/>
+ <real name="z" value="3"/>
</widget>
- <widget name="ImageName" plugin="glxdetailscustomplugin" type="GlxDetailsTextEdit">
+ <widget name="ShareButton" type="HbPushButton">
<real name="z" value="3"/>
- <sizehint type="PREFERRED" width="44.92537un"/>
+ <sizepolicy horizontalPolicy="Preferred" horizontalStretch="0" verticalPolicy="Preferred" verticalStretch="0"/>
+ <sizehint type="PREFERRED" width="42.53731un"/>
+ <string locid="txt_photos_button_share" name="text"/>
</widget>
- <widget name="container" type="HbWidget">
- <widget name="DateText" type="HbLabel">
- <rect height="3.28358un" name="geometry" width="6.71un" x="0un" y="0un"/>
- <string name="plainText" value="Label"/>
+ <widget name="DetailsViewList" type="HbListView">
+ <widget name="prototype" role="HbAbstractView:prototype" type="HbListViewItem">
+ <string name="state" value="normal"/>
</widget>
- <widget name="TimeText" type="HbLabel">
- <rect height="3.28358un" name="geometry" width="6.71un" x="0un" y="0un"/>
- <string name="plainText" value="Label"/>
- </widget>
- <widget name="SizeText" type="HbLabel">
- <rect height="3.28358un" name="geometry" width="6.71un" x="0un" y="0un"/>
- <string name="plainText" value="Label"/>
- </widget>
- <widget name="Descriptions" type="HbLabel">
- <rect height="3.28358un" name="geometry" width="6.71un" x="0un" y="0un"/>
- <string locid="txt_photos_formlabel_description" name="plainText" value="Description :"/>
- </widget>
- <widget name="DescriptionsText" plugin="glxdetailscustomplugin" type="GlxDetailsTextEdit"/>
- <sizehint height="23.8806un" type="PREFERRED" width="23.8806un"/>
+ <bool name="itemRecycling" value="FALSE"/>
+ <real name="z" value="22"/>
+ <sizepolicy horizontalPolicy="Expanding" horizontalStretch="0" verticalPolicy="Expanding" verticalStretch="0"/>
+ <sizehint height="47.7612un" type="PREFERRED" width="expr(var(hb-param-screen-short-edge) )"/>
+ </widget>
+ <widget name="ImageBackGround" type="HbLabel">
+ <enums name="aspectRatioMode" value="IgnoreAspectRatio"/>
+ <real name="z" value="1"/>
</widget>
<layout type="anchor">
<anchoritem dst="ImageIcon" dstEdge="TOP" spacing="1.64179un" src="" srcEdge="TOP"/>
<anchoritem dst="ImageIcon" dstEdge="RIGHT" spacing="-12.83582un" src="" srcEdge="RIGHT"/>
<anchoritem dst="FavIcon" dstEdge="TOP" spacing="14.32836un" src="" srcEdge="TOP"/>
<anchoritem dst="FavIcon" dstEdge="RIGHT" spacing="-10.59702un" src="" srcEdge="RIGHT"/>
- <anchoritem dst="ImageName" dstEdge="LEFT" spacing="3.13433un" src="" srcEdge="LEFT"/>
- <anchoritem dst="ImageName" dstEdge="TOP" spacing="25.52239un" src="" srcEdge="TOP"/>
- <anchoritem dst="container" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
- <anchoritem dst="container" dstEdge="TOP" spacing="0un" src="" srcEdge="TOP"/>
+ <anchoritem dst="ShareButton" dstEdge="LEFT" spacing="2.98507un" src="" srcEdge="LEFT"/>
+ <anchoritem dst="ShareButton" dstEdge="TOP" spacing="2.98507un" src="" srcEdge="TOP"/>
+ <anchoritem dst="DetailsViewList" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+ <anchoritem dst="DetailsViewList" dstEdge="TOP" spacing="11.26119un" src="" srcEdge="TOP"/>
+ <anchoritem dst="ImageBackGround" dstEdge="LEFT" spacing="4.32836un" src="" srcEdge="LEFT"/>
+ <anchoritem dst="ImageBackGround" dstEdge="TOP" spacing="4.47761un" src="" srcEdge="TOP"/>
</layout>
</widget>
<string name="title" value="View"/>
@@ -53,46 +49,24 @@
<widget name="view" type="HbView">
<bool name="contentFullScreen" value="TRUE"/>
</widget>
- <widget name="ImageName" plugin="glxdetailscustomplugin" type="GlxDetailsTextEdit">
- <sizepolicy horizontalPolicy="Fixed" horizontalStretch="0" verticalPolicy="Fixed" verticalStretch="0"/>
- <sizehint height="6un" type="FIXED" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 2un)"/>
- <sizehint height="6un" type="MINIMUM" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 2un)"/>
- <sizehint height="6un" type="MAXIMUM" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 2un)"/>
- </widget>
- <widget name="SizeText" type="HbLabel">
- <rect height="6un" name="geometry" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 2un)" x="0.5un" y="expr(6un +var(hb-param-margin-gene-bottom) + 6un +var(hb-param-margin-gene-bottom) )"/>
+ <widget name="ShareButton" type="HbPushButton">
<sizepolicy horizontalPolicy="Fixed" horizontalStretch="0" verticalPolicy="Fixed" verticalStretch="0"/>
- <sizehint height="6un" type="FIXED" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 2un)"/>
- <sizehint height="6un" type="MINIMUM" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 2un)"/>
- <sizehint height="6un" type="MAXIMUM" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 2un)"/>
- <string name="plainText"/>
- </widget>
- <widget name="TimeText" type="HbLabel">
- <rect height="6un" name="geometry" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 2un)" x="0.5un" y="expr(6un +var(hb-param-margin-gene-bottom) )"/>
- <sizepolicy horizontalPolicy="Fixed" horizontalStretch="0" verticalPolicy="Fixed" verticalStretch="0"/>
- <sizehint height="6un" type="FIXED" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 2un)"/>
- <sizehint height="6un" type="MINIMUM" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 2un)"/>
- <sizehint height="6un" type="MAXIMUM" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 2un)"/>
- <string name="plainText"/>
- </widget>
- <widget name="DescriptionsText" plugin="glxdetailscustomplugin" type="GlxDetailsTextEdit">
- <real name="z" value="5"/>
- <rect height="11.49254un" name="geometry" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 2un)" x="0.5un" y="29un"/>
- <sizepolicy horizontalPolicy="Fixed" horizontalStretch="0" verticalPolicy="Fixed" verticalStretch="0"/>
- <sizehint height="11.49254un" type="FIXED" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 2un)"/>
- <sizehint height="11.49254un" type="MINIMUM" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 2un)"/>
- <sizehint height="11.49254un" type="MAXIMUM" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 2un)"/>
+ <sizehint type="FIXED" width="31.95un"/>
+ <sizehint type="MINIMUM" width="31.95un"/>
+ <sizehint type="MAXIMUM" width="31.95un"/>
</widget>
<widget name="content" role="HbView:widget" type="HbWidget">
<layout type="anchor">
- <anchoritem dst="ImageName" dstEdge="LEFT" spacing="expr(var(hb-param-margin-gene-screen) + 0.5un)" src="" srcEdge="LEFT"/>
- <anchoritem dst="ImageName" dstEdge="TOP" spacing="expr(var(hb-param-margin-gene-screen) + 0.5un)" src="ImageIcon" srcEdge="BOTTOM"/>
- <anchoritem dst="container" dstEdge="LEFT" spacing="expr(var(hb-param-margin-gene-screen) )" src="" srcEdge="LEFT"/>
- <anchoritem dst="container" dstEdge="TOP" spacing="expr(var(hb-param-margin-gene-bottom) )" src="ImageName" srcEdge="BOTTOM"/>
<anchoritem dst="FavIcon" dstEdge="RIGHT" spacing="0un" src="ImageIcon" srcEdge="RIGHT"/>
<anchoritem dst="FavIcon" dstEdge="BOTTOM" spacing="0un" src="ImageIcon" srcEdge="BOTTOM"/>
- <anchoritem dst="ImageIcon" dstEdge="LEFT" spacing="expr(var(hb-param-margin-gene-screen) )" src="" srcEdge="LEFT"/>
- <anchoritem dst="ImageIcon" dstEdge="TOP" spacing="expr(var(hb-param-widget-chrome-height) +var(hb-param-margin-gene-screen))" src="" srcEdge="TOP"/>
+ <anchoritem dst="ShareButton" dstEdge="TOP" spacing="expr(var(hb-param-margin-gene-screen) + 0.5un)" src="ImageIcon" srcEdge="BOTTOM"/>
+ <anchoritem dst="ShareButton" dstEdge="CENTERH" spacing="expr(var(hb-param-screen-width) /2px)" src="" srcEdge="LEFT"/>
+ <anchoritem dst="ImageBackGround" dstEdge="LEFT" spacing="expr(var(hb-param-margin-gene-screen) )" src="" srcEdge="LEFT"/>
+ <anchoritem dst="ImageBackGround" dstEdge="TOP" spacing="expr(var(hb-param-widget-chrome-height) +var(hb-param-margin-gene-screen))" src="" srcEdge="TOP"/>
+ <anchoritem dst="ImageIcon" dstEdge="LEFT" spacing="0.5un" src="ImageBackGround" srcEdge="LEFT"/>
+ <anchoritem dst="ImageIcon" dstEdge="TOP" spacing="0.5un" src="ImageBackGround" srcEdge="TOP"/>
+ <anchoritem dst="DetailsViewList" dstEdge="LEFT" spacing="expr(var(hb-param-margin-gene-screen) -1un)" src="" srcEdge="LEFT"/>
+ <anchoritem dst="DetailsViewList" dstEdge="TOP" spacing="12un" src="ImageBackGround" srcEdge="BOTTOM"/>
</layout>
</widget>
<widget name="FavIcon" plugin="glxdetailscustomplugin" type="GlxDetailsIcon">
@@ -101,78 +75,53 @@
<sizehint height="expr(var(hb-param-graphic-size-primary-small) + var(hb-param-graphic-size-primary-small) )" type="MINIMUM" width="expr(var(hb-param-graphic-size-primary-small) + var(hb-param-graphic-size-primary-small) )"/>
<sizehint height="expr(var(hb-param-graphic-size-primary-small) + var(hb-param-graphic-size-primary-small) )" type="MAXIMUM" width="expr(var(hb-param-graphic-size-primary-small) + var(hb-param-graphic-size-primary-small) )"/>
</widget>
- <widget name="DateText" type="HbLabel">
- <rect height="6un" name="geometry" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 2un)" x="0.5un" y="0un"/>
- <sizepolicy horizontalPolicy="Fixed" horizontalStretch="0" verticalPolicy="Fixed" verticalStretch="0"/>
- <sizehint type="FIXED" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 2un)"/>
- <sizehint height="6un" type="MINIMUM" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 2un)"/>
- <sizehint height="6un" type="MAXIMUM" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 2un)"/>
- <string name="plainText"/>
- </widget>
- <widget name="ImageIcon" type="HbLabel">
+ <widget name="ImageBackGround" type="HbLabel">
+ <enums name="aspectRatioMode" value="IgnoreAspectRatio"/>
<sizepolicy horizontalPolicy="Fixed" horizontalStretch="0" verticalPolicy="Fixed" verticalStretch="0"/>
<sizehint height="31.95un" type="FIXED" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) )"/>
<sizehint height="31.95un" type="MINIMUM" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) )"/>
<sizehint height="31.95un" type="MAXIMUM" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) )"/>
</widget>
- <widget name="container" type="HbWidget">
+ <widget name="DetailsViewList" type="HbListView">
+ <bool name="itemRecycling" value="FALSE"/>
+ <bool name="longPressEnabled" value="FALSE"/>
+ <enums name="verticalScrollBarPolicy" value="ScrollBarAlwaysOff"/>
+ <bool name="uniformItemSizes" value="FALSE"/>
+ <enums name="horizontalScrollBarPolicy" value="ScrollBarAlwaysOff"/>
<sizepolicy horizontalPolicy="Fixed" horizontalStretch="0" verticalPolicy="Fixed" verticalStretch="0"/>
- <sizehint height="40.74627un" type="FIXED" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) )"/>
- <sizehint height="40.74627un" type="MINIMUM" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) )"/>
- <sizehint height="40.74627un" type="MAXIMUM" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) )"/>
+ <sizehint height="39un" type="FIXED" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) + 2un)"/>
+ <sizehint height="39un" type="MINIMUM" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) + 2un)"/>
+ <sizehint height="39un" type="MAXIMUM" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) + 2un)"/>
</widget>
- <widget name="Descriptions" type="HbLabel">
- <rect height="40.2" name="geometry" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 2un)" x="0.5un" y="expr(6un +var(hb-param-margin-gene-bottom) + 6un +var(hb-param-margin-gene-bottom) + 6un +var(hb-param-margin-gene-bottom) )"/>
+ <widget name="ImageIcon" type="HbLabel">
+ <enums name="aspectRatioMode" value="KeepAspectRatio"/>
<sizepolicy horizontalPolicy="Fixed" horizontalStretch="0" verticalPolicy="Fixed" verticalStretch="0"/>
- <sizehint height="6un" type="FIXED" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 2un)"/>
- <sizehint height="6un" type="MINIMUM" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 2un)"/>
- <sizehint height="6un" type="MAXIMUM" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 2un)"/>
- <string locid="txt_photos_formlabel_description" name="plainText"/>
+ <sizehint height="expr(31.95un - 1un)" type="FIXED" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 1un)"/>
+ <sizehint height="expr(31.95un - 1un)" type="MINIMUM" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 1un)"/>
+ <sizehint height="expr(31.95un - 1un)" type="MAXIMUM" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 1un)"/>
</widget>
</section>
<section name="landscape">
<widget name="view" type="HbView">
<bool name="contentFullScreen" value="TRUE"/>
</widget>
- <widget name="ImageName" plugin="glxdetailscustomplugin" type="GlxDetailsTextEdit">
- <sizepolicy horizontalPolicy="Fixed" horizontalStretch="0" verticalPolicy="Fixed" verticalStretch="0"/>
- <sizehint height="6un" type="MINIMUM" width="31.95un"/>
- <sizehint height="6un" type="MAXIMUM" width="31.95un"/>
- </widget>
- <widget name="SizeText" type="HbLabel">
- <rect height="6un" name="geometry" width="56un" x="0.5un" y="expr(6un +var(hb-param-margin-gene-bottom) + 6un +var(hb-param-margin-gene-bottom) )"/>
+ <widget name="ShareButton" type="HbPushButton">
<sizepolicy horizontalPolicy="Fixed" horizontalStretch="0" verticalPolicy="Fixed" verticalStretch="0"/>
- <sizehint height="6un" type="FIXED" width="56un"/>
- <sizehint height="6un" type="MINIMUM" width="56un"/>
- <sizehint height="6un" type="MAXIMUM" width="56un"/>
- <string name="plainText"/>
- </widget>
- <widget name="TimeText" type="HbLabel">
- <rect height="6un" name="geometry" width="56un" x="0.5un" y="expr(6un +var(hb-param-margin-gene-bottom) )"/>
- <sizepolicy horizontalPolicy="Fixed" horizontalStretch="0" verticalPolicy="Fixed" verticalStretch="0"/>
- <sizehint height="6un" type="FIXED" width="55un"/>
- <sizehint height="6un" type="MINIMUM" width="55un"/>
- <sizehint height="6un" type="MAXIMUM" width="56un"/>
- <string name="plainText"/>
- </widget>
- <widget name="DescriptionsText" plugin="glxdetailscustomplugin" type="GlxDetailsTextEdit">
- <real name="z" value="6"/>
- <rect height="11.49254un" name="geometry" width="56un" x="0.5un" y="28.95522un"/>
- <sizepolicy horizontalPolicy="Fixed" horizontalStretch="0" verticalPolicy="Fixed" verticalStretch="0"/>
- <sizehint height="11.49254un" type="FIXED" width="56un"/>
- <sizehint height="11.49254un" type="MINIMUM" width="56un"/>
- <sizehint height="11.49254un" type="MAXIMUM" width="56un"/>
+ <sizehint type="MINIMUM" width="31.95un"/>
+ <sizehint height="7.5un" type="MAXIMUM" width="31.95un"/>
</widget>
<widget name="content" role="HbView:widget" type="HbWidget">
<layout type="anchor">
- <anchoritem dst="ImageName" dstEdge="LEFT" spacing="expr(var(hb-param-margin-gene-screen) )" src="" srcEdge="LEFT"/>
- <anchoritem dst="ImageName" dstEdge="TOP" spacing="expr(var(hb-param-margin-gene-middle-vertical) )" src="ImageIcon" srcEdge="BOTTOM"/>
<anchoritem dst="FavIcon" dstEdge="RIGHT" spacing="0un" src="ImageIcon" srcEdge="RIGHT"/>
<anchoritem dst="FavIcon" dstEdge="BOTTOM" spacing="0un" src="ImageIcon" srcEdge="BOTTOM"/>
- <anchoritem dst="ImageIcon" dstEdge="LEFT" spacing="expr(var(hb-param-margin-gene-screen) )" src="" srcEdge="LEFT"/>
- <anchoritem dst="ImageIcon" dstEdge="TOP" spacing="expr(var(hb-param-widget-chrome-height) +var(hb-param-margin-gene-screen))" src="" srcEdge="TOP"/>
- <anchoritem dst="container" dstEdge="LEFT" spacing="expr(var(hb-param-margin-gene-screen) + 31.95un + var(hb-param-margin-gene-left))" src="" srcEdge="LEFT"/>
- <anchoritem dst="container" dstEdge="TOP" spacing="expr(var(hb-param-widget-chrome-height) +var(hb-param-margin-gene-screen))" src="" srcEdge="TOP"/>
+ <anchoritem dst="ShareButton" dstEdge="LEFT" spacing="expr(var(hb-param-margin-gene-screen) )" src="" srcEdge="LEFT"/>
+ <anchoritem dst="ShareButton" dstEdge="TOP" spacing="expr(var(hb-param-margin-gene-middle-vertical) )" src="ImageIcon" srcEdge="BOTTOM"/>
+ <anchoritem dst="DetailsViewList" dstEdge="LEFT" spacing="expr(var(hb-param-margin-gene-screen) + 31.95un + var(hb-param-margin-gene-left))" src="" srcEdge="LEFT"/>
+ <anchoritem dst="DetailsViewList" dstEdge="TOP" spacing="expr(var(hb-param-widget-chrome-height) +var(hb-param-margin-gene-screen))" src="" srcEdge="TOP"/>
+ <anchoritem dst="ImageBackGround" dstEdge="LEFT" spacing="1.9403un" src="" srcEdge="LEFT"/>
+ <anchoritem dst="ImageBackGround" dstEdge="TOP" spacing="11.49254un" src="" srcEdge="TOP"/>
+ <anchoritem dst="ImageIcon" dstEdge="LEFT" spacing="0.45un" src="ImageBackGround" srcEdge="LEFT"/>
+ <anchoritem dst="ImageIcon" dstEdge="TOP" spacing="0.45un" src="ImageBackGround" srcEdge="TOP"/>
</layout>
</widget>
<widget name="FavIcon" plugin="glxdetailscustomplugin" type="GlxDetailsIcon">
@@ -181,38 +130,35 @@
<sizehint height="expr(var(hb-param-graphic-size-primary-small) + var(hb-param-graphic-size-primary-small) )" type="MINIMUM" width="expr(var(hb-param-graphic-size-primary-small) + var(hb-param-graphic-size-primary-small) )"/>
<sizehint height="expr(var(hb-param-graphic-size-primary-small) + var(hb-param-graphic-size-primary-small) )" type="MAXIMUM" width="expr(var(hb-param-graphic-size-primary-small) + var(hb-param-graphic-size-primary-small) )"/>
</widget>
- <widget name="DateText" type="HbLabel">
- <rect height="6un" name="geometry" width="56un" x="0.5un" y="0un"/>
- <sizepolicy horizontalPolicy="Fixed" horizontalStretch="0" verticalPolicy="Fixed" verticalStretch="0"/>
- <sizehint type="FIXED" width="56un"/>
- <sizehint height="6un" type="MINIMUM" width="56un"/>
- <sizehint height="6un" type="MAXIMUM" width="56un"/>
- <string name="plainText"/>
- </widget>
- <widget name="ImageIcon" type="HbLabel">
+ <widget name="ImageBackGround" type="HbLabel">
<sizepolicy horizontalPolicy="Fixed" horizontalStretch="0" verticalPolicy="Fixed" verticalStretch="0"/>
<sizehint height="31.95un" type="FIXED" width="31.95un"/>
<sizehint height="31.95un" type="MINIMUM" width="31.95un"/>
<sizehint height="31.95un" type="MAXIMUM" width="31.95un"/>
</widget>
- <widget name="container" type="HbWidget">
+ <widget name="DetailsViewList" type="HbListView">
+ <bool name="itemRecycling" value="FALSE"/>
+ <bool name="longPressEnabled" value="FALSE"/>
+ <enums name="verticalScrollBarPolicy" value="ScrollBarAlwaysOff"/>
+ <bool name="uniformItemSizes" value="FALSE"/>
+ <enums name="horizontalScrollBarPolicy" value="ScrollBarAlwaysOff"/>
<sizepolicy horizontalPolicy="Fixed" horizontalStretch="0" verticalPolicy="Fixed" verticalStretch="0"/>
- <sizehint height="40.74627un" type="FIXED" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 31.95un - var(hb-param-margin-gene-left) )"/>
- <sizehint height="40.74627un" type="MINIMUM" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 31.95un - var(hb-param-margin-gene-left) )"/>
- <sizehint height="40.74627un" type="MAXIMUM" width="expr( var(hb-param-screen-width) -var(hb-param-margin-gene-screen) -var(hb-param-margin-gene-screen) - 31.95un - var(hb-param-margin-gene-left) )"/>
+ <sizehint height="40.74627un" type="FIXED" width="385.8"/>
+ <sizehint height="40.74627un" type="MINIMUM" width="385.8"/>
+ <sizehint height="40.74627un" type="MAXIMUM" width="385.8"/>
</widget>
- <widget name="Descriptions" type="HbLabel">
- <rect height="6un" name="geometry" width="56un" x="0.5un" y="expr(6un +var(hb-param-margin-gene-bottom) + 6un +var(hb-param-margin-gene-bottom) + 6un +var(hb-param-margin-gene-bottom) )"/>
+ <widget name="ImageIcon" type="HbLabel">
+ <enums name="aspectRatioMode" value="KeepAspectRatio"/>
<sizepolicy horizontalPolicy="Fixed" horizontalStretch="0" verticalPolicy="Fixed" verticalStretch="0"/>
- <sizehint height="6un" type="FIXED" width="56un"/>
- <sizehint height="6un" type="MINIMUM" width="56un"/>
- <sizehint height="6un" type="MAXIMUM" width="56un"/>
- <string locid="txt_photos_formlabel_description" name="plainText"/>
+ <sizehint height="31un" type="FIXED" width="31un"/>
+ <sizehint height="31un" type="MINIMUM" width="31un"/>
+ <sizehint height="31.95un" type="MAXIMUM" width="31.95un"/>
</widget>
</section>
- <metadata activeUIState="landscape" display="NHD-3.2-inch_landscape" unit="un">
+ <metadata activeUIState="portrait" display="NHD-3.2-inch_portrait" unit="un">
<uistate name="Common ui state" sections="#common"/>
<uistate name="portrait" sections="#common portrait"/>
<uistate name="landscape" sections="#common landscape"/>
+ <dummydata objectName="DetailsViewList" section="#common" value="0"/>
</metadata>
</hbdocument>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/data/fullscreenzoomin.fxml Fri Sep 17 08:29:24 2010 +0300
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<layers xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:noNamespaceSchemaLocation="http://www.nokia.com/FXML/10.1">
+ <comment>Created using carbide.fx 1.5.0; FxML revision 0.84; Platform 10.1 </comment>
+ <visual src="Item">
+ <param name="scale_y" type="anim">
+ <style>linear</style>
+ <duration>0.4</duration>
+ <keyframe at="0.0">1.0</keyframe>
+ <keyframe at="1.0">0.1</keyframe>
+ </param>
+ <param name="scale_origin_x" ref="visual.width">0.5</param>
+ <param name="scale_origin_y" ref="visual.height">0.5</param>
+ <param name="scale_x" type="anim">
+ <style>linear</style>
+ <duration>0.4</duration>
+ <keyframe at="0.0">1.0</keyframe>
+ <keyframe at="1.0">0.1</keyframe>
+ </param>
+ <param name="opacity" type="anim">
+ <style>linear</style>
+ <duration>0.4</duration>
+ <keyframe at="0.0">1.0</keyframe>
+ <keyframe at="1.0">0.0</keyframe>
+ </param>
+ </visual>
+</layers>
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/data/fullscreenzoomout.fxml Fri Sep 17 08:29:24 2010 +0300
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<layers xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:noNamespaceSchemaLocation="http://www.nokia.com/FXML/10.1">
+ <comment>Created using carbide.fx 1.5.0; FxML revision 0.84; Platform 10.1 </comment>
+ <visual src="Item">
+ <param name="scale_x" type="anim">
+ <style>linear</style>
+ <duration>0.4</duration>
+ <keyframe at="0.0">0.1</keyframe>
+ <keyframe at="1.0">1.0</keyframe>
+ </param>
+ <param name="scale_origin_x" ref="visual.width">0.5</param>
+ <param name="scale_origin_y" ref="visual.height">0.5</param>
+ <param name="scale_y" type="anim">
+ <style>linear</style>
+ <duration>0.4</duration>
+ <keyframe at="0.0">0.1</keyframe>
+ <keyframe at="1.0">1.0</keyframe>
+ </param>
+ <param name="opacity" type="anim">
+ <style>linear</style>
+ <duration>0.4</duration>
+ <keyframe at="0.0">0.0</keyframe>
+ <keyframe at="1.0">1.0</keyframe>
+ </param>
+ </visual>
+</layers>
\ No newline at end of file
--- a/engine/collectionframework/plugins/glxcollectionpluginalbums/group/glxcollectionpluginalbums.mmp Thu Sep 02 20:26:45 2010 +0300
+++ b/engine/collectionframework/plugins/glxcollectionpluginalbums/group/glxcollectionpluginalbums.mmp Fri Sep 17 08:29:24 2010 +0300
@@ -54,6 +54,7 @@
SYSTEMINCLUDE ../../../../../inc
SYSTEMINCLUDE ../../../../../gallery/loc
SYSTEMINCLUDE ../../../datasource/manager/inc
+SYSTEMINCLUDE /epoc32/include/mw/hb/hbcore
// System includes for epoc32/include
@@ -69,5 +70,6 @@
LIBRARY glxdatasourcemanager.lib
LIBRARY mpxcommon.lib
LIBRARY flogger.lib
+LIBRARY HbCore.lib
SMPSAFE
// End of File
--- a/engine/collectionframework/plugins/glxcollectionpluginalbums/src/glxcollectionpluginalbums.cpp Thu Sep 02 20:26:45 2010 +0300
+++ b/engine/collectionframework/plugins/glxcollectionpluginalbums/src/glxcollectionpluginalbums.cpp Fri Sep 17 08:29:24 2010 +0300
@@ -37,6 +37,7 @@
#include <glxmediageneraldefs.h>
#include <glxmediacollectioninternaldefs.h>
#include <glxcollectiongeneraldefs.h>
+#include <hbtextresolversymbian.h>
#include <glxpanic.h>
#include <mglxdatasource.h>
@@ -214,24 +215,13 @@
}
else
{
- if(0 == usageCount)
- {
- tempTitle = LoadLocalizedStringLC(KNoImages);
+ tempTitle = HbTextResolverSymbian::LoadLC(KAlbumContainer, usageCount);
// Set the title in the response.
aResponse->SetTextValueL(attr, *tempTitle);
CleanupStack::PopAndDestroy(tempTitle);
continue;
- }
- else if (1 == usageCount)
- {
- tempTitle = LoadLocalizedStringLC(KResourceFile, R_ALBUM_ITEM_SUB_TITLE_SINGLE);
- }
- else
- {
- tempTitle = LoadLocalizedStringLC(KResourceFile, R_ALBUM_ITEM_SUB_TITLE_MULTI);
- }
}
TPtr formatString = tempTitle->Des();
@@ -279,13 +269,13 @@
{
if( TGlxMediaId(KCapturedAlbumId) == aMediaId )
{
- HBufC* title = LoadLocalizedStringLC(KCameraText);
+ HBufC* title = HbTextResolverSymbian::LoadLC(KCameraText);
aResponse->SetTextValueL(attr, *title);
CleanupStack::PopAndDestroy(title);
}
else if (TGlxMediaId(KFavoriteAlbumId) == aMediaId )
{
- HBufC* title = LoadLocalizedStringLC(KMyFavText);
+ HBufC* title = HbTextResolverSymbian::LoadLC(KMyFavText);
aResponse->SetTextValueL(attr, *title);
CleanupStack::PopAndDestroy(title);
}
--- a/inc/glxlocalisationstrings.h Thu Sep 02 20:26:45 2010 +0300
+++ b/inc/glxlocalisationstrings.h Fri Sep 17 08:29:24 2010 +0300
@@ -121,19 +121,25 @@
#define GLX_ALBUM_NAME_COUNT_LABEL "txt_photos_subhead_1_l2"
//to show the total image count in grid view
-#define GLX_GRID_VIEW_COUNT_LABEL "txt_photos_subtitle_ln_images"
+#define GLX_GRID_VIEW_COUNT_LABEL "txt_photos_subhead_all_l2"
//mark all label to be shown in marking mode view
-#define GLX_LABEL_MARK_ALL hbTrId("txt_photos_list_mark_all")
+#define GLX_LABEL_MARK_ALL hbTrId("txt_photos_list_mark_all")
//mark all label to be shown in marking mode view
-#define GLX_LABEL_MARK_COUNT hbTrId("txt_photos_list_lnln")
+#define GLX_LABEL_MARK_COUNT "txt_photos_list_l1l2"
+
+#define GLX_GRID_NO_IMAGE hbTrId("txt_photos_info_no_content")
//*******************************DETAILS VIEW**********************************************
-//Description field
-#define GLX_DETAILS_DESCRIPTION hbTrId("txt_photos_formlabel_description")
+//Name Field inside the text editor in the Details View
+#define GLX_DETAILS_NAME hbTrId("txt_photos_list_name")
+
+//Description Field inside the text editor in the Details View
+#define GLX_DETAILS_DESCRIPTION hbTrId("txt_photos_list_description")
+
//Details view "Date" Label to show the captured date of the image, where %1 is the date
#define GLX_DETAILS_DATE "txt_photos_list_date_1"
@@ -183,14 +189,21 @@
// progressing not to be shown while removing selected images from an album
#define GLX_REMOVE_IMAGES hbTrId("txt_photos_info_removing_images")
-#define GLX_DIALOG_NAME_PROMPT hbTrId("txt_photos_title_enter_name")
+#define GLX_DIALOG_ALBUM_PROMPT hbTrId("txt_photos_title_enter_name")
+
+//Name Prompt
+#define GLX_DIALOG_NAME_PROMPT hbTrId("txt_photos_dialog_image_name")
+
+//Description Prompt
+#define GLX_DIALOG_DESCRIPTION hbTrId("txt_photos_dialog_description")
+
#define GLX_DIALOG_ALBUM_NAME_DEFAULT hbTrId("txt_photos_dialog_enter_name_entry_album")
-#define GLX_DIALOG_DELETE_ONE_ITEM hbTrId("txt_photos_info_deleting_1")
+#define GLX_DIALOG_DELETE_ONE_ITEM hbTrId("txt_photos_info_delete_1")
//Name already in use alert when user tries to name/reanme the album with an already existing album name
-#define GLX_NAME_ALREADY_EXIST hbTrId("txt_photos_dpopinfo_name_1_already_in_use")
+#define GLX_NAME_ALREADY_EXIST "txt_photos_info_name_1_already_in_use"
#define GLX_PROCESSING hbTrId( "txt_common_info_processing" )
@@ -234,7 +247,6 @@
#define GLX_ITEMS_MYFAV "txt_photos_subtitle_ln_items"
#define GLX_SUBTITLE_CAM_GRIDVIEW hbTrId("txt_photos_subtitle_my_camera")
#define GLX_SUBTITLE_MYFAV_GRIDVIEW hbTrId("txt_photos_subtitle_my_favorites")
-#define GLX_GRID_NO_IMAGE hbTrId("txt_photos_info_no_content")
#define GLX_ALBUM_SELECTION_TITLE hbTrId("txt_photos_dialog_select_album")
#define GLX_IMAGE_VIEWER hbTrId("txt_photos_title_image_viewer")
--- a/inc/glxsymbianlocalisationstrings.h Thu Sep 02 20:26:45 2010 +0300
+++ b/inc/glxsymbianlocalisationstrings.h Fri Sep 17 08:29:24 2010 +0300
@@ -19,7 +19,7 @@
#define GLXSYMBIANLOCALISATIONSTRINGS_H_
//SYMBIAN RELATED LOCALISATION STRINGS
-_LIT(KNoImages,"txt_photos_grid_no_images");
+_LIT(KAlbumContainer,"txt_photos_dblist_val_ln_images");
_LIT(KCameraText,"txt_photos_dblist_my_camera");
_LIT(KMyFavText,"txt_photos_dblist_my_favorites");
--- a/main/main.cpp Thu Sep 02 20:26:45 2010 +0300
+++ b/main/main.cpp Fri Sep 17 08:29:24 2010 +0300
@@ -43,7 +43,7 @@
OstTraceExt3( TRACE_NORMAL, DUP1__MAIN, "::main Time at Launch HHMMSS =%d::%d::%d",
localTime.hour(), localTime.minute(), localTime.second() );
- GlxApplication app(argc, argv, Hb::NoSplash);
+ GlxApplication app(argc, argv, XQServiceUtil::isService(argc, argv) ? Hb::NoSplash : Hb::DefaultApplicationFlags);
bool loaded(false);
QTranslator translator;
QString path = "Z:/resource/qt/translations/";
@@ -59,7 +59,7 @@
OstTraceEventStart0( EVENT_DUP1__MAIN_START, "launch" );
if(!XQServiceUtil::isService()){
- HbSplashScreen::start();
+
stateMgr = new GlxStateManager();
app.setApplicationName( GLX_TITLE );
stateMgr->launchApplication();
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/package_definition.xml Fri Sep 17 08:29:24 2010 +0300
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<SystemDefinition schema="3.0.0" xmlns:qt="http://www.nokia.com/qt">
+ <package id="photos" name="Photos" levels="util support ui app">
+ <collection id="photos_group" name="Photos Group" level="support">
+ <component id="photos_group_build" filter="s60" name="Photos Group Build" introduced="^4">
+ <!--<unit bldFile="group" qt:proFile="group.pro"/> -->
+ </component>
+ </collection>
+ <collection id="photos_loggers" name="Photos Loggers" level="util">
+ <component id="photos_loggerqt" filter="s60" name="Photos Logger Qt" introduced="^4">
+ <!--<unit bldFile="loggers/loggerqt" qt:proFile="loggerqt.pro"/> -->
+ </component>
+ </collection>
+ <collection id="photos_commonutilities" name="Photos Common Utilities" level="util">
+ <component id="photos_externalutility" filter="s60" name="Photos External Utility" introduced="^4">
+ <!--<unit bldFile="commonutilities/externalutility" qt:proFile="externalutility.pro"/> -->
+ </component>
+ <component id="imagedecoderwrapper" filter="s60" name="Image Decoder Wrapper" introduced="^4">
+ <!--<unit bldFile="commonutilities/imagedecoderwrapper" qt:proFile="imagedecoderwrapper.pro"/> -->
+ </component>
+ </collection>
+ <collection id="photos_ui" name="Photos UI" level="ui">
+ <!-- need to move exports from ui.pro into separate .pro or bld.inf -->
+ <component id="detailscustomwidget " filter="s60" name="Details Custom Widget" introduced="^4">
+ <!--<unit bldFile="ui/detailscustomwidget " qt:proFile="detailscustomwidget.pro"/> -->
+ </component>
+ <component id="photos_uiengine" filter="s60" name="Photos UI Engine" introduced="^4">
+ <!--<unit bldFile="ui/uiengine" qt:proFile="uiengine.pro"/> -->
+ </component>
+ <component id="photos_commandhandlers" filter="s60" name="Photos Command Handlers" introduced="^4">
+ <!--<unit bldFile="ui/commandhandlers" qt:proFile="commandhandlers.pro"/> -->
+ </component>
+ <component id="photos_viewutilities" filter="s60" name="Photos View Utilities" introduced="^4">
+ <!--<unit bldFile="ui/viewutilities" qt:proFile="commandhandlers.pro"/> -->
+ </component>
+ <component id="photos_widgets" filter="s60" name="Photos Widgets" introduced="^4">
+ <!--<unit bldFile="ui/widgets" qt:proFile="widgets.pro"/> -->
+ </component>
+ <component id="photos_views" filter="s60" name="Photos Views" introduced="^4">
+ <!--<unit bldFile="ui/views" qt:proFile="views.pro"/> -->
+ </component>
+ <component id="photos_viewmanagement" filter="s60" name="Photos View Management" introduced="^4">
+ <!--<unit bldFile="ui/viewmanagement" qt:proFile="viewmanagement.pro"/> -->
+ </component>
+ </collection>
+ <collection id="photos_main" name="Photos Main" level="support">
+ <component id="photos_main_build" filter="s60" name="Photos Main Build" introduced="^4">
+ <!--<unit bldFile="main" qt:proFile="main.pro"/> -->
+ </component>
+ </collection>
+ <collection id="gallery" name="Gallery" level="ui">
+ <component id="gallery_build" filter="s60" name="Gallery Build" introduced="^4">
+ <!--<unit bldFile="gallery" qt:proFile="gallery.pro"/> -->
+ </component>
+ </collection>
+ <collection id="imageviewerapp" name="Image Viewer App" level="support">
+ <component id="imageviewerapp_build" filter="s60" name="Image Viewer App Build" introduced="^4">
+ <!--<unit bldFile="imageviewerapp" qt:proFile="imageviewerapp.pro"/> -->
+ </component>
+ </collection>
+ <collection id="photos_info" name="Photos Info" level="support">
+ <component id="photos_build" filter="s60" name="Photos Build" introduced="^4">
+ <!-- split this up into the above components -->
+ <unit bldFile="." qt:proFile="photos.pro"/>
+ </component>
+ </collection>
+ </package>
+</SystemDefinition>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/package_map.xml Fri Sep 17 08:29:24 2010 +0300
@@ -0,0 +1,1 @@
+<PackageMap root="sf" layer="app"/>
--- a/photos.qrc Thu Sep 02 20:26:45 2010 +0300
+++ b/photos.qrc Fri Sep 17 08:29:24 2010 +0300
@@ -9,6 +9,8 @@
<file>data/opacity_deactivate.fxml</file>
<file>data/zoomin.fxml</file>
<file>data/zoomout.fxml</file>
+ <file>data/fullscreenzoomin.fxml</file>
+ <file>data/fullscreenzoomout.fxml</file>
<file>data/helix.fxml</file>
<file>data/fadein.fxml</file>
<file>data/uphide.fxml</file>
@@ -21,10 +23,10 @@
<file>data/rotatefslandscape.fxml</file>
<file>data/rotatefsprotrait.fxml</file>
<file>data/photos.css</file>
- <file>data/listview.docml</file>
- <file>data/fullscreen.docml</file>
- <file>data/slideshow.docml</file>
- <file>data/detailsview.docml</file>
+ <file alias="data/listview.docml">data/listview.docml</file>
+ <file alias="data/fullscreen.docml">data/fullscreen.docml</file>
+ <file alias="data/slideshow.docml">data/slideshow.docml</file>
+ <file alias="data/detailsview.docml">data/detailsview.docml</file>
<file>data/Wait/qgn_graf_ring_wait_01.svg</file>
<file>data/Wait/qgn_graf_ring_wait_02.svg</file>
<file>data/Wait/qgn_graf_ring_wait_03.svg</file>
@@ -35,5 +37,6 @@
<file>data/Wait/qgn_graf_ring_wait_08.svg</file>
<file>data/Wait/qgn_graf_ring_wait_09.svg</file>
<file>data/Wait/qgn_graf_ring_wait_10.svg</file>
+ <file>data/details.svg</file>
</qresource>
</RCC>
--- a/ui/commandhandlers/bwins/glxcommandhandlerbaseu.def Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/commandhandlers/bwins/glxcommandhandlerbaseu.def Fri Sep 17 08:29:24 2010 +0300
@@ -13,9 +13,9 @@
?ProgressTextL@GlxMpxCommandHandler@@MBE?AVQString@@XZ @ 12 NONAME ; class QString GlxMpxCommandHandler::ProgressTextL(void) const
?HandleCommandCompleteL@GlxMpxCommandHandler@@MAEXPAXPAVCMPXMedia@@HPAVMGlxMediaList@@@Z @ 13 NONAME ; void GlxMpxCommandHandler::HandleCommandCompleteL(void *, class CMPXMedia *, int, class MGlxMediaList *)
?metaObject@GlxMpxCommandHandler@@UBEPBUQMetaObject@@XZ @ 14 NONAME ; struct QMetaObject const * GlxMpxCommandHandler::metaObject(void) const
- ?TryExitL@GlxMpxCommandHandler@@AAEXH@Z @ 15 NONAME ; void GlxMpxCommandHandler::TryExitL(int)
- ?HandleMediaL@GlxMpxCommandHandler@@MAEXHPAVMGlxMediaList@@@Z @ 16 NONAME ; void GlxMpxCommandHandler::HandleMediaL(int, class MGlxMediaList *)
- ?HandleErrorL@GlxMpxCommandHandler@@MAEXH@Z @ 17 NONAME ; void GlxMpxCommandHandler::HandleErrorL(int)
+ ?commandCancelled@GlxMpxCommandHandler@@QAEXXZ @ 15 NONAME ; void GlxMpxCommandHandler::commandCancelled(void)
+ ?TryExitL@GlxMpxCommandHandler@@AAEXH@Z @ 16 NONAME ; void GlxMpxCommandHandler::TryExitL(int)
+ ?HandleMediaL@GlxMpxCommandHandler@@MAEXHPAVMGlxMediaList@@@Z @ 17 NONAME ; void GlxMpxCommandHandler::HandleMediaL(int, class MGlxMediaList *)
??0GlxModelCommandHandler@@QAE@XZ @ 18 NONAME ; GlxModelCommandHandler::GlxModelCommandHandler(void)
?CreateMediaListL@GlxMpxCommandHandler@@AAEXHHW4TGlxFilterItemType@@@Z @ 19 NONAME ; void GlxMpxCommandHandler::CreateMediaListL(int, int, enum TGlxFilterItemType)
?executeMpxCommand@GlxMpxCommandHandler@@AAEX_N@Z @ 20 NONAME ; void GlxMpxCommandHandler::executeMpxCommand(bool)
@@ -44,6 +44,7 @@
??0GlxMpxCommandHandler@@QAE@XZ @ 43 NONAME ; GlxMpxCommandHandler::GlxMpxCommandHandler(void)
??_EGlxMpxCommandHandler@@UAE@I@Z @ 44 NONAME ; GlxMpxCommandHandler::~GlxMpxCommandHandler(unsigned int)
?HandleItemModifiedL@GlxMpxCommandHandler@@MAEXABV?$RArray@H@@PAVMGlxMediaList@@@Z @ 45 NONAME ; void GlxMpxCommandHandler::HandleItemModifiedL(class RArray<int> const &, class MGlxMediaList *)
- ??_EGlxModelCommandHandler@@UAE@I@Z @ 46 NONAME ; GlxModelCommandHandler::~GlxModelCommandHandler(unsigned int)
- ?DoHandleCommandCompleteL@GlxMpxCommandHandler@@MAEXPAXPAVCMPXMedia@@HPAVMGlxMediaList@@@Z @ 47 NONAME ; void GlxMpxCommandHandler::DoHandleCommandCompleteL(void *, class CMPXMedia *, int, class MGlxMediaList *)
+ ?HandleErrorL@GlxMpxCommandHandler@@MBEXH@Z @ 46 NONAME ; void GlxMpxCommandHandler::HandleErrorL(int) const
+ ??_EGlxModelCommandHandler@@UAE@I@Z @ 47 NONAME ; GlxModelCommandHandler::~GlxModelCommandHandler(unsigned int)
+ ?DoHandleCommandCompleteL@GlxMpxCommandHandler@@MAEXPAXPAVCMPXMedia@@HPAVMGlxMediaList@@@Z @ 48 NONAME ; void GlxMpxCommandHandler::DoHandleCommandCompleteL(void *, class CMPXMedia *, int, class MGlxMediaList *)
--- a/ui/commandhandlers/bwins/glxcommoncommandhandlersu.def Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/commandhandlers/bwins/glxcommoncommandhandlersu.def Fri Sep 17 08:29:24 2010 +0300
@@ -1,89 +1,89 @@
EXPORTS
??_EGlxCommandHandlerRemoveFrom@@UAE@I@Z @ 1 NONAME ; GlxCommandHandlerRemoveFrom::~GlxCommandHandlerRemoveFrom(unsigned int)
- ?RotateImageL@GlxCommandHandlerRotate@@AAEXV?$TBuf@$0BAA@@@@Z @ 2 NONAME ; void GlxCommandHandlerRotate::RotateImageL(class TBuf<256>)
- ?qt_metacall@GlxCommandHandlerNewMedia@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 3 NONAME ; int GlxCommandHandlerNewMedia::qt_metacall(enum QMetaObject::Call, int, void * *)
- ?ProgressTextL@GlxCommandHandlerRemoveFrom@@EBE?AVQString@@XZ @ 4 NONAME ; class QString GlxCommandHandlerRemoveFrom::ProgressTextL(void) const
- ??0GlxCommandHandlerRename@@QAE@XZ @ 5 NONAME ; GlxCommandHandlerRename::GlxCommandHandlerRename(void)
- ??1GlxCommandHandlerAddToContainer@@UAE@XZ @ 6 NONAME ; GlxCommandHandlerAddToContainer::~GlxCommandHandlerAddToContainer(void)
- ?getStaticMetaObject@GlxCommandHandlerNewMedia@@SAABUQMetaObject@@XZ @ 7 NONAME ; struct QMetaObject const & GlxCommandHandlerNewMedia::getStaticMetaObject(void)
- ?SetImageOrientationL@GlxCommandHandlerRotate@@AAEXG@Z @ 8 NONAME ; void GlxCommandHandlerRotate::SetImageOrientationL(unsigned short)
- ?ConfirmationTextL@GlxCommandHandlerDelete@@EBE?AVQString@@_N@Z @ 9 NONAME ; class QString GlxCommandHandlerDelete::ConfirmationTextL(bool) const
- ??_EGlxCommandHandlerSend@@UAE@I@Z @ 10 NONAME ; GlxCommandHandlerSend::~GlxCommandHandlerSend(unsigned int)
- ?trUtf8@GlxCommandHandlerNewMedia@@SA?AVQString@@PBD0@Z @ 11 NONAME ; class QString GlxCommandHandlerNewMedia::trUtf8(char const *, char const *)
- ?HandleErrorL@GlxCommandHandlerNewMedia@@MAEXH@Z @ 12 NONAME ; void GlxCommandHandlerNewMedia::HandleErrorL(int)
- ?GetName@GlxCommandHandlerRename@@ABE?AVQString@@AAVMGlxMediaList@@@Z @ 13 NONAME ; class QString GlxCommandHandlerRename::GetName(class MGlxMediaList &) const
- ?tr@GlxCommandHandlerNewMedia@@SA?AVQString@@PBD0H@Z @ 14 NONAME ; class QString GlxCommandHandlerNewMedia::tr(char const *, char const *, int)
- ?DoExecuteCommandL@GlxCommandHandlerRotate@@UAEXHAAVMGlxMediaList@@AAH@Z @ 15 NONAME ; void GlxCommandHandlerRotate::DoExecuteCommandL(int, class MGlxMediaList &, int &)
- ?CompletionTextL@GlxCommandHandlerComment@@EBE?AVQString@@XZ @ 16 NONAME ; class QString GlxCommandHandlerComment::CompletionTextL(void) const
- ?metaObject@GlxCommandHandlerNewMedia@@UBEPBUQMetaObject@@XZ @ 17 NONAME ; struct QMetaObject const * GlxCommandHandlerNewMedia::metaObject(void) const
- ?CreateCommandL@GlxCommandHandlerDelete@@UBEPAVCMPXMedia@@HAAVMGlxMediaList@@AAH@Z @ 18 NONAME ; class CMPXMedia * GlxCommandHandlerDelete::CreateCommandL(int, class MGlxMediaList &, int &) const
- ?CreateCommandL@GlxCommandHandlerAddToContainer@@UBEPAVCMPXMedia@@HAAVMGlxMediaList@@AAH@Z @ 19 NONAME ; class CMPXMedia * GlxCommandHandlerAddToContainer::CreateCommandL(int, class MGlxMediaList &, int &) const
- ?CompletionTextL@GlxCommandHandlerDelete@@EBE?AVQString@@XZ @ 20 NONAME ; class QString GlxCommandHandlerDelete::CompletionTextL(void) const
- ?DoHandleCommandCompleteL@GlxCommandHandlerNewMedia@@MAEXPAXPAVCMPXMedia@@HPAVMGlxMediaList@@@Z @ 21 NONAME ; void GlxCommandHandlerNewMedia::DoHandleCommandCompleteL(void *, class CMPXMedia *, int, class MGlxMediaList *)
- ??0GlxCommandHandlerComment@@QAE@XZ @ 22 NONAME ; GlxCommandHandlerComment::GlxCommandHandlerComment(void)
- ?GenerateNewMediaItemTitleL@GlxCommandHandlerNewMedia@@ABE?AVQString@@V2@AAVMGlxMediaList@@@Z @ 23 NONAME ; class QString GlxCommandHandlerNewMedia::GenerateNewMediaItemTitleL(class QString, class MGlxMediaList &) const
- ??1GlxCommandHandlerRemoveFrom@@UAE@XZ @ 24 NONAME ; GlxCommandHandlerRemoveFrom::~GlxCommandHandlerRemoveFrom(void)
- ??_EGlxCommandHandlerEditImage@@UAE@I@Z @ 25 NONAME ; GlxCommandHandlerEditImage::~GlxCommandHandlerEditImage(unsigned int)
- ?qt_metacast@GlxCommandHandlerNewMedia@@UAEPAXPBD@Z @ 26 NONAME ; void * GlxCommandHandlerNewMedia::qt_metacast(char const *)
- ??0GlxCommandHandlerRemoveFrom@@QAE@XZ @ 27 NONAME ; GlxCommandHandlerRemoveFrom::GlxCommandHandlerRemoveFrom(void)
- ?HandleItemAddedL@GlxCommandHandlerNewMedia@@MAEXHHPAVMGlxMediaList@@@Z @ 28 NONAME ; void GlxCommandHandlerNewMedia::HandleItemAddedL(int, int, class MGlxMediaList *)
- ?tr@GlxCommandHandlerNewMedia@@SA?AVQString@@PBD0@Z @ 29 NONAME ; class QString GlxCommandHandlerNewMedia::tr(char const *, char const *)
- ?createNewMedia@GlxCommandHandlerAddToContainer@@ABEXXZ @ 30 NONAME ; void GlxCommandHandlerAddToContainer::createNewMedia(void) const
- ?ReadImageOrientationL@GlxCommandHandlerRotate@@AAEGXZ @ 31 NONAME ; unsigned short GlxCommandHandlerRotate::ReadImageOrientationL(void)
- ??_EGlxCommandHandlerComment@@UAE@I@Z @ 32 NONAME ; GlxCommandHandlerComment::~GlxCommandHandlerComment(unsigned int)
- ??1GlxCommandHandlerRotate@@UAE@XZ @ 33 NONAME ; GlxCommandHandlerRotate::~GlxCommandHandlerRotate(void)
- ?CreateCommandL@GlxCommandHandlerRename@@UBEPAVCMPXMedia@@HAAVMGlxMediaList@@AAH@Z @ 34 NONAME ; class CMPXMedia * GlxCommandHandlerRename::CreateCommandL(int, class MGlxMediaList &, int &) const
- ??1GlxCommandHandlerNewMedia@@UAE@XZ @ 35 NONAME ; GlxCommandHandlerNewMedia::~GlxCommandHandlerNewMedia(void)
- ??_EGlxCommandHandlerNewMedia@@UAE@I@Z @ 36 NONAME ; GlxCommandHandlerNewMedia::~GlxCommandHandlerNewMedia(unsigned int)
- ?CompletionTextL@GlxCommandHandlerRemoveFrom@@EBE?AVQString@@XZ @ 37 NONAME ; class QString GlxCommandHandlerRemoveFrom::CompletionTextL(void) const
- ??_EGlxCommandHandlerDelete@@UAE@I@Z @ 38 NONAME ; GlxCommandHandlerDelete::~GlxCommandHandlerDelete(unsigned int)
- ?ProgressTextL@GlxCommandHandlerDelete@@EBE?AVQString@@XZ @ 39 NONAME ; class QString GlxCommandHandlerDelete::ProgressTextL(void) const
- ?CompletionTextL@GlxCommandHandlerRename@@EBE?AVQString@@XZ @ 40 NONAME ; class QString GlxCommandHandlerRename::CompletionTextL(void) const
- ?staticMetaObject@GlxCommandHandlerNewMedia@@2UQMetaObject@@B @ 41 NONAME ; struct QMetaObject const GlxCommandHandlerNewMedia::staticMetaObject
- ?DestroyExifWriter@GlxCommandHandlerRotate@@AAEXXZ @ 42 NONAME ; void GlxCommandHandlerRotate::DestroyExifWriter(void)
- ??0GlxCommandHandlerDelete@@QAE@XZ @ 43 NONAME ; GlxCommandHandlerDelete::GlxCommandHandlerDelete(void)
- ??1GlxCommandHandlerRename@@UAE@XZ @ 44 NONAME ; GlxCommandHandlerRename::~GlxCommandHandlerRename(void)
- ??0GlxCommandHandlerSend@@QAE@XZ @ 45 NONAME ; GlxCommandHandlerSend::GlxCommandHandlerSend(void)
- ?HandleError@GlxCommandHandlerNewMedia@@MAEXH@Z @ 46 NONAME ; void GlxCommandHandlerNewMedia::HandleError(int)
- ??0GlxCommandHandlerAddToContainer@@QAE@XZ @ 47 NONAME ; GlxCommandHandlerAddToContainer::GlxCommandHandlerAddToContainer(void)
- ??_EGlxCommandHandlerRename@@UAE@I@Z @ 48 NONAME ; GlxCommandHandlerRename::~GlxCommandHandlerRename(unsigned int)
- ?GetName@GlxCommandHandlerComment@@ABE?AVQString@@AAVMGlxMediaList@@@Z @ 49 NONAME ; class QString GlxCommandHandlerComment::GetName(class MGlxMediaList &) const
- ?HandleErrorL@GlxCommandHandlerRename@@EAEXH@Z @ 50 NONAME ; void GlxCommandHandlerRename::HandleErrorL(int)
- ?doHandleUserAction@GlxCommandHandlerEditImage@@UBEXPAVGlxMediaModel@@V?$QList@VQModelIndex@@@@@Z @ 51 NONAME ; void GlxCommandHandlerEditImage::doHandleUserAction(class GlxMediaModel *, class QList<class QModelIndex>) const
- ??_EGlxCommandHandlerRotate@@UAE@I@Z @ 52 NONAME ; GlxCommandHandlerRotate::~GlxCommandHandlerRotate(unsigned int)
- ?ExecuteLD@GlxCommandHandlerNewMedia@@QAEHAAVTGlxMediaId@@AAVQString@@@Z @ 53 NONAME ; int GlxCommandHandlerNewMedia::ExecuteLD(class TGlxMediaId &, class QString &)
- ?ProgressTextL@GlxCommandHandlerAddToContainer@@EBE?AVQString@@XZ @ 54 NONAME ; class QString GlxCommandHandlerAddToContainer::ProgressTextL(void) const
- ??1GlxCommandHandlerComment@@UAE@XZ @ 55 NONAME ; GlxCommandHandlerComment::~GlxCommandHandlerComment(void)
- ??0GlxCommandHandlerEditImage@@QAE@XZ @ 56 NONAME ; GlxCommandHandlerEditImage::GlxCommandHandlerEditImage(void)
- ??1GlxCommandHandlerSend@@UAE@XZ @ 57 NONAME ; GlxCommandHandlerSend::~GlxCommandHandlerSend(void)
- ?CompletionTextL@GlxCommandHandlerAddToContainer@@EBE?AVQString@@XZ @ 58 NONAME ; class QString GlxCommandHandlerAddToContainer::CompletionTextL(void) const
- ??0GlxCommandHandlerNewMedia@@QAE@XZ @ 59 NONAME ; GlxCommandHandlerNewMedia::GlxCommandHandlerNewMedia(void)
- ?executeCommand@GlxCommandHandlerEditImage@@UAEXHHV?$QList@VQModelIndex@@@@@Z @ 60 NONAME ; void GlxCommandHandlerEditImage::executeCommand(int, int, class QList<class QModelIndex>)
- ?trUtf8@GlxCommandHandlerNewMedia@@SA?AVQString@@PBD0H@Z @ 61 NONAME ; class QString GlxCommandHandlerNewMedia::trUtf8(char const *, char const *, int)
- ?doHandleUserAction@GlxCommandHandlerSend@@UBEXPAVGlxMediaModel@@V?$QList@VQModelIndex@@@@@Z @ 62 NONAME ; void GlxCommandHandlerSend::doHandleUserAction(class GlxMediaModel *, class QList<class QModelIndex>) const
- ??_EGlxCommandHandlerAddToContainer@@UAE@I@Z @ 63 NONAME ; GlxCommandHandlerAddToContainer::~GlxCommandHandlerAddToContainer(unsigned int)
- ?ProgressTextL@GlxCommandHandlerNewMedia@@EBE?AVQString@@XZ @ 64 NONAME ; class QString GlxCommandHandlerNewMedia::ProgressTextL(void) const
- ?CreateCommandL@GlxCommandHandlerRotate@@UBEPAVCMPXMedia@@HAAVMGlxMediaList@@AAH@Z @ 65 NONAME ; class CMPXMedia * GlxCommandHandlerRotate::CreateCommandL(int, class MGlxMediaList &, int &) const
- ?CreateCommandL@GlxCommandHandlerComment@@UBEPAVCMPXMedia@@HAAVMGlxMediaList@@AAH@Z @ 66 NONAME ; class CMPXMedia * GlxCommandHandlerComment::CreateCommandL(int, class MGlxMediaList &, int &) const
- ?CompletionTextL@GlxCommandHandlerNewMedia@@EBE?AVQString@@XZ @ 67 NONAME ; class QString GlxCommandHandlerNewMedia::CompletionTextL(void) const
- ?CreateCommandL@GlxCommandHandlerRemoveFrom@@UBEPAVCMPXMedia@@HAAVMGlxMediaList@@AAH@Z @ 68 NONAME ; class CMPXMedia * GlxCommandHandlerRemoveFrom::CreateCommandL(int, class MGlxMediaList &, int &) const
- ??1GlxCommandHandlerEditImage@@UAE@XZ @ 69 NONAME ; GlxCommandHandlerEditImage::~GlxCommandHandlerEditImage(void)
- ?CalculateFinalOrientationL@GlxCommandHandlerRotate@@AAEGG@Z @ 70 NONAME ; unsigned short GlxCommandHandlerRotate::CalculateFinalOrientationL(unsigned short)
- ?InitializeExifWriterL@GlxCommandHandlerRotate@@AAEXV?$TBuf@$0BAA@@@@Z @ 71 NONAME ; void GlxCommandHandlerRotate::InitializeExifWriterL(class TBuf<256>)
- ??1GlxCommandHandlerDelete@@UAE@XZ @ 72 NONAME ; GlxCommandHandlerDelete::~GlxCommandHandlerDelete(void)
- ?CreateCommandL@GlxCommandHandlerNewMedia@@MBEPAVCMPXMedia@@HAAVMGlxMediaList@@AAH@Z @ 73 NONAME ; class CMPXMedia * GlxCommandHandlerNewMedia::CreateCommandL(int, class MGlxMediaList &, int &) const
- ??0GlxCommandHandlerRotate@@QAE@XZ @ 74 NONAME ; GlxCommandHandlerRotate::GlxCommandHandlerRotate(void)
- ?qt_metacast@GlxCommandHandlerEditImage@@UAEPAXPBD@Z @ 75 NONAME ; void * GlxCommandHandlerEditImage::qt_metacast(char const *)
- ?staticMetaObject@GlxCommandHandlerEditImage@@2UQMetaObject@@B @ 76 NONAME ; struct QMetaObject const GlxCommandHandlerEditImage::staticMetaObject
- ?clearMediaModel@GlxCommandHandlerEditImage@@AAEXXZ @ 77 NONAME ; void GlxCommandHandlerEditImage::clearMediaModel(void)
- ?metaObject@GlxCommandHandlerEditImage@@UBEPBUQMetaObject@@XZ @ 78 NONAME ; struct QMetaObject const * GlxCommandHandlerEditImage::metaObject(void) const
- ?handleOk@GlxCommandHandlerEditImage@@QAEXABVQVariant@@@Z @ 79 NONAME ; void GlxCommandHandlerEditImage::handleOk(class QVariant const &)
- ?getStaticMetaObject@GlxCommandHandlerEditImage@@SAABUQMetaObject@@XZ @ 80 NONAME ; struct QMetaObject const & GlxCommandHandlerEditImage::getStaticMetaObject(void)
- ?trUtf8@GlxCommandHandlerEditImage@@SA?AVQString@@PBD0@Z @ 81 NONAME ; class QString GlxCommandHandlerEditImage::trUtf8(char const *, char const *)
- ?storeItems@GlxCommandHandlerEditImage@@QAEXABVQModelIndex@@HH@Z @ 82 NONAME ; void GlxCommandHandlerEditImage::storeItems(class QModelIndex const &, int, int)
- ?tr@GlxCommandHandlerEditImage@@SA?AVQString@@PBD0H@Z @ 83 NONAME ; class QString GlxCommandHandlerEditImage::tr(char const *, char const *, int)
- ?qt_metacall@GlxCommandHandlerEditImage@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 84 NONAME ; int GlxCommandHandlerEditImage::qt_metacall(enum QMetaObject::Call, int, void * *)
- ?handleError@GlxCommandHandlerEditImage@@QAEXHABVQString@@@Z @ 85 NONAME ; void GlxCommandHandlerEditImage::handleError(int, class QString const &)
- ?trUtf8@GlxCommandHandlerEditImage@@SA?AVQString@@PBD0H@Z @ 86 NONAME ; class QString GlxCommandHandlerEditImage::trUtf8(char const *, char const *, int)
- ?tr@GlxCommandHandlerEditImage@@SA?AVQString@@PBD0@Z @ 87 NONAME ; class QString GlxCommandHandlerEditImage::tr(char const *, char const *)
+ ?qt_metacast@GlxCommandHandlerEditImage@@UAEPAXPBD@Z @ 2 NONAME ; void * GlxCommandHandlerEditImage::qt_metacast(char const *)
+ ?RotateImageL@GlxCommandHandlerRotate@@AAEXV?$TBuf@$0BAA@@@@Z @ 3 NONAME ; void GlxCommandHandlerRotate::RotateImageL(class TBuf<256>)
+ ?staticMetaObject@GlxCommandHandlerEditImage@@2UQMetaObject@@B @ 4 NONAME ; struct QMetaObject const GlxCommandHandlerEditImage::staticMetaObject
+ ?qt_metacall@GlxCommandHandlerNewMedia@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 5 NONAME ; int GlxCommandHandlerNewMedia::qt_metacall(enum QMetaObject::Call, int, void * *)
+ ?ProgressTextL@GlxCommandHandlerRemoveFrom@@EBE?AVQString@@XZ @ 6 NONAME ; class QString GlxCommandHandlerRemoveFrom::ProgressTextL(void) const
+ ??0GlxCommandHandlerRename@@QAE@XZ @ 7 NONAME ; GlxCommandHandlerRename::GlxCommandHandlerRename(void)
+ ??1GlxCommandHandlerAddToContainer@@UAE@XZ @ 8 NONAME ; GlxCommandHandlerAddToContainer::~GlxCommandHandlerAddToContainer(void)
+ ?getStaticMetaObject@GlxCommandHandlerNewMedia@@SAABUQMetaObject@@XZ @ 9 NONAME ; struct QMetaObject const & GlxCommandHandlerNewMedia::getStaticMetaObject(void)
+ ?SetImageOrientationL@GlxCommandHandlerRotate@@AAEXG@Z @ 10 NONAME ; void GlxCommandHandlerRotate::SetImageOrientationL(unsigned short)
+ ?ConfirmationTextL@GlxCommandHandlerDelete@@EBE?AVQString@@_N@Z @ 11 NONAME ; class QString GlxCommandHandlerDelete::ConfirmationTextL(bool) const
+ ??_EGlxCommandHandlerSend@@UAE@I@Z @ 12 NONAME ; GlxCommandHandlerSend::~GlxCommandHandlerSend(unsigned int)
+ ?trUtf8@GlxCommandHandlerNewMedia@@SA?AVQString@@PBD0@Z @ 13 NONAME ; class QString GlxCommandHandlerNewMedia::trUtf8(char const *, char const *)
+ ?GetName@GlxCommandHandlerRename@@ABE?AVQString@@AAVMGlxMediaList@@@Z @ 14 NONAME ; class QString GlxCommandHandlerRename::GetName(class MGlxMediaList &) const
+ ?tr@GlxCommandHandlerNewMedia@@SA?AVQString@@PBD0H@Z @ 15 NONAME ; class QString GlxCommandHandlerNewMedia::tr(char const *, char const *, int)
+ ?clearMediaModel@GlxCommandHandlerEditImage@@AAEXXZ @ 16 NONAME ; void GlxCommandHandlerEditImage::clearMediaModel(void)
+ ?metaObject@GlxCommandHandlerEditImage@@UBEPBUQMetaObject@@XZ @ 17 NONAME ; struct QMetaObject const * GlxCommandHandlerEditImage::metaObject(void) const
+ ?DoExecuteCommandL@GlxCommandHandlerRotate@@UAEXHAAVMGlxMediaList@@AAH@Z @ 18 NONAME ; void GlxCommandHandlerRotate::DoExecuteCommandL(int, class MGlxMediaList &, int &)
+ ?CompletionTextL@GlxCommandHandlerComment@@EBE?AVQString@@XZ @ 19 NONAME ; class QString GlxCommandHandlerComment::CompletionTextL(void) const
+ ?handleOk@GlxCommandHandlerEditImage@@QAEXABVQVariant@@@Z @ 20 NONAME ; void GlxCommandHandlerEditImage::handleOk(class QVariant const &)
+ ?metaObject@GlxCommandHandlerNewMedia@@UBEPBUQMetaObject@@XZ @ 21 NONAME ; struct QMetaObject const * GlxCommandHandlerNewMedia::metaObject(void) const
+ ?CreateCommandL@GlxCommandHandlerDelete@@UBEPAVCMPXMedia@@HAAVMGlxMediaList@@AAH@Z @ 22 NONAME ; class CMPXMedia * GlxCommandHandlerDelete::CreateCommandL(int, class MGlxMediaList &, int &) const
+ ?CreateCommandL@GlxCommandHandlerAddToContainer@@UBEPAVCMPXMedia@@HAAVMGlxMediaList@@AAH@Z @ 23 NONAME ; class CMPXMedia * GlxCommandHandlerAddToContainer::CreateCommandL(int, class MGlxMediaList &, int &) const
+ ?CompletionTextL@GlxCommandHandlerDelete@@EBE?AVQString@@XZ @ 24 NONAME ; class QString GlxCommandHandlerDelete::CompletionTextL(void) const
+ ?DoHandleCommandCompleteL@GlxCommandHandlerNewMedia@@MAEXPAXPAVCMPXMedia@@HPAVMGlxMediaList@@@Z @ 25 NONAME ; void GlxCommandHandlerNewMedia::DoHandleCommandCompleteL(void *, class CMPXMedia *, int, class MGlxMediaList *)
+ ??0GlxCommandHandlerComment@@QAE@XZ @ 26 NONAME ; GlxCommandHandlerComment::GlxCommandHandlerComment(void)
+ ?GenerateNewMediaItemTitleL@GlxCommandHandlerNewMedia@@ABE?AVQString@@V2@AAVMGlxMediaList@@@Z @ 27 NONAME ; class QString GlxCommandHandlerNewMedia::GenerateNewMediaItemTitleL(class QString, class MGlxMediaList &) const
+ ??1GlxCommandHandlerRemoveFrom@@UAE@XZ @ 28 NONAME ; GlxCommandHandlerRemoveFrom::~GlxCommandHandlerRemoveFrom(void)
+ ??_EGlxCommandHandlerEditImage@@UAE@I@Z @ 29 NONAME ; GlxCommandHandlerEditImage::~GlxCommandHandlerEditImage(unsigned int)
+ ?qt_metacast@GlxCommandHandlerNewMedia@@UAEPAXPBD@Z @ 30 NONAME ; void * GlxCommandHandlerNewMedia::qt_metacast(char const *)
+ ??0GlxCommandHandlerRemoveFrom@@QAE@XZ @ 31 NONAME ; GlxCommandHandlerRemoveFrom::GlxCommandHandlerRemoveFrom(void)
+ ?HandleItemAddedL@GlxCommandHandlerNewMedia@@MAEXHHPAVMGlxMediaList@@@Z @ 32 NONAME ; void GlxCommandHandlerNewMedia::HandleItemAddedL(int, int, class MGlxMediaList *)
+ ?tr@GlxCommandHandlerNewMedia@@SA?AVQString@@PBD0@Z @ 33 NONAME ; class QString GlxCommandHandlerNewMedia::tr(char const *, char const *)
+ ?createNewMedia@GlxCommandHandlerAddToContainer@@ABEXXZ @ 34 NONAME ; void GlxCommandHandlerAddToContainer::createNewMedia(void) const
+ ?ReadImageOrientationL@GlxCommandHandlerRotate@@AAEGXZ @ 35 NONAME ; unsigned short GlxCommandHandlerRotate::ReadImageOrientationL(void)
+ ??_EGlxCommandHandlerComment@@UAE@I@Z @ 36 NONAME ; GlxCommandHandlerComment::~GlxCommandHandlerComment(unsigned int)
+ ?getStaticMetaObject@GlxCommandHandlerEditImage@@SAABUQMetaObject@@XZ @ 37 NONAME ; struct QMetaObject const & GlxCommandHandlerEditImage::getStaticMetaObject(void)
+ ?HandleErrorL@GlxCommandHandlerRename@@EBEXH@Z @ 38 NONAME ; void GlxCommandHandlerRename::HandleErrorL(int) const
+ ??1GlxCommandHandlerRotate@@UAE@XZ @ 39 NONAME ; GlxCommandHandlerRotate::~GlxCommandHandlerRotate(void)
+ ?CreateCommandL@GlxCommandHandlerRename@@UBEPAVCMPXMedia@@HAAVMGlxMediaList@@AAH@Z @ 40 NONAME ; class CMPXMedia * GlxCommandHandlerRename::CreateCommandL(int, class MGlxMediaList &, int &) const
+ ??1GlxCommandHandlerNewMedia@@UAE@XZ @ 41 NONAME ; GlxCommandHandlerNewMedia::~GlxCommandHandlerNewMedia(void)
+ ??_EGlxCommandHandlerNewMedia@@UAE@I@Z @ 42 NONAME ; GlxCommandHandlerNewMedia::~GlxCommandHandlerNewMedia(unsigned int)
+ ?CompletionTextL@GlxCommandHandlerRemoveFrom@@EBE?AVQString@@XZ @ 43 NONAME ; class QString GlxCommandHandlerRemoveFrom::CompletionTextL(void) const
+ ?trUtf8@GlxCommandHandlerEditImage@@SA?AVQString@@PBD0@Z @ 44 NONAME ; class QString GlxCommandHandlerEditImage::trUtf8(char const *, char const *)
+ ??_EGlxCommandHandlerDelete@@UAE@I@Z @ 45 NONAME ; GlxCommandHandlerDelete::~GlxCommandHandlerDelete(unsigned int)
+ ?ProgressTextL@GlxCommandHandlerDelete@@EBE?AVQString@@XZ @ 46 NONAME ; class QString GlxCommandHandlerDelete::ProgressTextL(void) const
+ ?CompletionTextL@GlxCommandHandlerRename@@EBE?AVQString@@XZ @ 47 NONAME ; class QString GlxCommandHandlerRename::CompletionTextL(void) const
+ ?staticMetaObject@GlxCommandHandlerNewMedia@@2UQMetaObject@@B @ 48 NONAME ; struct QMetaObject const GlxCommandHandlerNewMedia::staticMetaObject
+ ?DestroyExifWriter@GlxCommandHandlerRotate@@AAEXXZ @ 49 NONAME ; void GlxCommandHandlerRotate::DestroyExifWriter(void)
+ ??0GlxCommandHandlerDelete@@QAE@XZ @ 50 NONAME ; GlxCommandHandlerDelete::GlxCommandHandlerDelete(void)
+ ??1GlxCommandHandlerRename@@UAE@XZ @ 51 NONAME ; GlxCommandHandlerRename::~GlxCommandHandlerRename(void)
+ ??0GlxCommandHandlerSend@@QAE@XZ @ 52 NONAME ; GlxCommandHandlerSend::GlxCommandHandlerSend(void)
+ ?HandleError@GlxCommandHandlerNewMedia@@MAEXH@Z @ 53 NONAME ; void GlxCommandHandlerNewMedia::HandleError(int)
+ ??0GlxCommandHandlerAddToContainer@@QAE@XZ @ 54 NONAME ; GlxCommandHandlerAddToContainer::GlxCommandHandlerAddToContainer(void)
+ ??_EGlxCommandHandlerRename@@UAE@I@Z @ 55 NONAME ; GlxCommandHandlerRename::~GlxCommandHandlerRename(unsigned int)
+ ?GetName@GlxCommandHandlerComment@@ABE?AVQString@@AAVMGlxMediaList@@@Z @ 56 NONAME ; class QString GlxCommandHandlerComment::GetName(class MGlxMediaList &) const
+ ?doHandleUserAction@GlxCommandHandlerEditImage@@UBEXPAVGlxMediaModel@@V?$QList@VQModelIndex@@@@@Z @ 57 NONAME ; void GlxCommandHandlerEditImage::doHandleUserAction(class GlxMediaModel *, class QList<class QModelIndex>) const
+ ?storeItems@GlxCommandHandlerEditImage@@QAEXABVQModelIndex@@HH@Z @ 58 NONAME ; void GlxCommandHandlerEditImage::storeItems(class QModelIndex const &, int, int)
+ ??_EGlxCommandHandlerRotate@@UAE@I@Z @ 59 NONAME ; GlxCommandHandlerRotate::~GlxCommandHandlerRotate(unsigned int)
+ ?ExecuteLD@GlxCommandHandlerNewMedia@@QAEHAAVTGlxMediaId@@AAVQString@@@Z @ 60 NONAME ; int GlxCommandHandlerNewMedia::ExecuteLD(class TGlxMediaId &, class QString &)
+ ?ProgressTextL@GlxCommandHandlerAddToContainer@@EBE?AVQString@@XZ @ 61 NONAME ; class QString GlxCommandHandlerAddToContainer::ProgressTextL(void) const
+ ??1GlxCommandHandlerComment@@UAE@XZ @ 62 NONAME ; GlxCommandHandlerComment::~GlxCommandHandlerComment(void)
+ ??0GlxCommandHandlerEditImage@@QAE@XZ @ 63 NONAME ; GlxCommandHandlerEditImage::GlxCommandHandlerEditImage(void)
+ ?tr@GlxCommandHandlerEditImage@@SA?AVQString@@PBD0H@Z @ 64 NONAME ; class QString GlxCommandHandlerEditImage::tr(char const *, char const *, int)
+ ??1GlxCommandHandlerSend@@UAE@XZ @ 65 NONAME ; GlxCommandHandlerSend::~GlxCommandHandlerSend(void)
+ ?CompletionTextL@GlxCommandHandlerAddToContainer@@EBE?AVQString@@XZ @ 66 NONAME ; class QString GlxCommandHandlerAddToContainer::CompletionTextL(void) const
+ ??0GlxCommandHandlerNewMedia@@QAE@XZ @ 67 NONAME ; GlxCommandHandlerNewMedia::GlxCommandHandlerNewMedia(void)
+ ?executeCommand@GlxCommandHandlerEditImage@@UAEXHHV?$QList@VQModelIndex@@@@@Z @ 68 NONAME ; void GlxCommandHandlerEditImage::executeCommand(int, int, class QList<class QModelIndex>)
+ ?trUtf8@GlxCommandHandlerNewMedia@@SA?AVQString@@PBD0H@Z @ 69 NONAME ; class QString GlxCommandHandlerNewMedia::trUtf8(char const *, char const *, int)
+ ?qt_metacall@GlxCommandHandlerEditImage@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 70 NONAME ; int GlxCommandHandlerEditImage::qt_metacall(enum QMetaObject::Call, int, void * *)
+ ?doHandleUserAction@GlxCommandHandlerSend@@UBEXPAVGlxMediaModel@@V?$QList@VQModelIndex@@@@@Z @ 71 NONAME ; void GlxCommandHandlerSend::doHandleUserAction(class GlxMediaModel *, class QList<class QModelIndex>) const
+ ??_EGlxCommandHandlerAddToContainer@@UAE@I@Z @ 72 NONAME ; GlxCommandHandlerAddToContainer::~GlxCommandHandlerAddToContainer(unsigned int)
+ ?handleError@GlxCommandHandlerEditImage@@QAEXHABVQString@@@Z @ 73 NONAME ; void GlxCommandHandlerEditImage::handleError(int, class QString const &)
+ ?ProgressTextL@GlxCommandHandlerNewMedia@@EBE?AVQString@@XZ @ 74 NONAME ; class QString GlxCommandHandlerNewMedia::ProgressTextL(void) const
+ ?trUtf8@GlxCommandHandlerEditImage@@SA?AVQString@@PBD0H@Z @ 75 NONAME ; class QString GlxCommandHandlerEditImage::trUtf8(char const *, char const *, int)
+ ?CreateCommandL@GlxCommandHandlerRotate@@UBEPAVCMPXMedia@@HAAVMGlxMediaList@@AAH@Z @ 76 NONAME ; class CMPXMedia * GlxCommandHandlerRotate::CreateCommandL(int, class MGlxMediaList &, int &) const
+ ?CreateCommandL@GlxCommandHandlerComment@@UBEPAVCMPXMedia@@HAAVMGlxMediaList@@AAH@Z @ 77 NONAME ; class CMPXMedia * GlxCommandHandlerComment::CreateCommandL(int, class MGlxMediaList &, int &) const
+ ?CompletionTextL@GlxCommandHandlerNewMedia@@EBE?AVQString@@XZ @ 78 NONAME ; class QString GlxCommandHandlerNewMedia::CompletionTextL(void) const
+ ?tr@GlxCommandHandlerEditImage@@SA?AVQString@@PBD0@Z @ 79 NONAME ; class QString GlxCommandHandlerEditImage::tr(char const *, char const *)
+ ?CreateCommandL@GlxCommandHandlerRemoveFrom@@UBEPAVCMPXMedia@@HAAVMGlxMediaList@@AAH@Z @ 80 NONAME ; class CMPXMedia * GlxCommandHandlerRemoveFrom::CreateCommandL(int, class MGlxMediaList &, int &) const
+ ??1GlxCommandHandlerEditImage@@UAE@XZ @ 81 NONAME ; GlxCommandHandlerEditImage::~GlxCommandHandlerEditImage(void)
+ ?HandleErrorL@GlxCommandHandlerNewMedia@@IAEXH@Z @ 82 NONAME ; void GlxCommandHandlerNewMedia::HandleErrorL(int)
+ ?CalculateFinalOrientationL@GlxCommandHandlerRotate@@AAEGG@Z @ 83 NONAME ; unsigned short GlxCommandHandlerRotate::CalculateFinalOrientationL(unsigned short)
+ ?InitializeExifWriterL@GlxCommandHandlerRotate@@AAEXV?$TBuf@$0BAA@@@@Z @ 84 NONAME ; void GlxCommandHandlerRotate::InitializeExifWriterL(class TBuf<256>)
+ ??1GlxCommandHandlerDelete@@UAE@XZ @ 85 NONAME ; GlxCommandHandlerDelete::~GlxCommandHandlerDelete(void)
+ ?CreateCommandL@GlxCommandHandlerNewMedia@@MBEPAVCMPXMedia@@HAAVMGlxMediaList@@AAH@Z @ 86 NONAME ; class CMPXMedia * GlxCommandHandlerNewMedia::CreateCommandL(int, class MGlxMediaList &, int &) const
+ ??0GlxCommandHandlerRotate@@QAE@XZ @ 87 NONAME ; GlxCommandHandlerRotate::GlxCommandHandlerRotate(void)
--- a/ui/commandhandlers/commandhandlerbase/inc/glxmpxcommandhandler.h Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/commandhandlers/commandhandlerbase/inc/glxmpxcommandhandler.h Fri Sep 17 08:29:24 2010 +0300
@@ -42,7 +42,7 @@
public slots:
void messageDialogClose(HbAction* action);
-
+ void commandCancelled();
protected: // From MGlxMediaListObserver
/// See @ref MGlxMediaListObserver::HandleItemAddedL
void HandleItemAddedL(TInt aStartIndex, TInt aEndIndex, MGlxMediaList* aList);
@@ -81,7 +81,7 @@
virtual CMPXCommand* CreateCommandL(TInt aCommandId, MGlxMediaList& aMediaList, TBool& aConsume) const = 0;
virtual void DoExecuteCommandL(TInt aCommandId, MGlxMediaList& aMediaList, TBool& aConsume);
- virtual void HandleErrorL(TInt aErrorCode);
+ virtual void HandleErrorL(TInt aErrorCode) const;
virtual QString CompletionTextL() const;
virtual QString ProgressTextL() const;
virtual QString ConfirmationTextL(bool multiSelection = false) const;
--- a/ui/commandhandlers/commandhandlerbase/src/glxmodelcommandhandler.cpp Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/commandhandlers/commandhandlerbase/src/glxmodelcommandhandler.cpp Fri Sep 17 08:29:24 2010 +0300
@@ -12,6 +12,7 @@
void GlxModelCommandHandler::executeCommand(int commandId, int collectionId,QList<QModelIndex> indexList)
{
+ Q_UNUSED(commandId);
GlxModelParm modelParm (collectionId, 0);
GlxMediaModel* mediaModel = new GlxMediaModel (modelParm);
doHandleUserAction(mediaModel,indexList);
--- a/ui/commandhandlers/commandhandlerbase/src/glxmpxcommandhandler.cpp Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/commandhandlers/commandhandlerbase/src/glxmpxcommandhandler.cpp Fri Sep 17 08:29:24 2010 +0300
@@ -349,6 +349,7 @@
{
// @todo error received. Close progress note
DismissProgressNoteL();
+ MGlxMediaList::UnmarkAllL(*iMediaList);
iMediaList->RemoveMediaListObserver(this);
iMediaList->Close();
iMediaList = NULL;
@@ -371,19 +372,9 @@
// Default implementation shows an error note
// -----------------------------------------------------------------------------
//
-void GlxMpxCommandHandler::HandleErrorL(TInt aErrorCode)
+void GlxMpxCommandHandler::HandleErrorL(TInt aErrorCode) const
{
OstTraceFunctionEntry0( GLXMPXCOMMANDHANDLER_HANDLEERRORL_ENTRY );
- // show error note
- // TextResolver instance for error resolving.
- CTextResolver* textresolver = CTextResolver::NewLC();
- // Resolve the error text
- const TDesC& text = textresolver->ResolveErrorString(aErrorCode);
-
- QString qtText = QString::fromUtf16(text.Ptr(), text.Length());
-
- HbNotificationDialog::launchDialog(qtText);
- CleanupStack::PopAndDestroy(textresolver);
OstTraceFunctionExit0( GLXMPXCOMMANDHANDLER_HANDLEERRORL_EXIT );
}
@@ -410,6 +401,7 @@
{
mProgressDialog = new HbProgressDialog(HbProgressDialog::WaitDialog);
mProgressDialog->setText(ProgressTextL());
+ connect ( mProgressDialog, SIGNAL (cancelled()), this, SLOT(commandCancelled()));
mProgressDialog->show();
}
@@ -525,3 +517,11 @@
{
return QString();
}
+
+void GlxMpxCommandHandler::commandCancelled()
+ {
+ disconnect ( mProgressDialog, SIGNAL (cancelled()), this, SLOT(commandCancelled()));
+ mProgressDialog = NULL;
+ iMediaList->CancelCommand();
+ TryExitL(KErrCancel);
+ }
--- a/ui/commandhandlers/commoncommandhandlers/inc/glxcommandhandleraddtocontainer.h Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/commandhandlers/commoncommandhandlers/inc/glxcommandhandleraddtocontainer.h Fri Sep 17 08:29:24 2010 +0300
@@ -53,6 +53,7 @@
mutable bool mNewMediaAdded ;
mutable CMPXCollectionPath* mTargetContainers ;
mutable QString mAlbumName;
+ mutable bool mIsAddtoFavCmd;
};
class GlxAlbumSelectionPopup: public QObject
--- a/ui/commandhandlers/commoncommandhandlers/inc/glxcommandhandlerrename.h Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/commandhandlers/commoncommandhandlers/inc/glxcommandhandlerrename.h Fri Sep 17 08:29:24 2010 +0300
@@ -36,7 +36,11 @@
private:
QString CompletionTextL() const;
QString GetName(MGlxMediaList& aMediaList) const;
- void HandleErrorL(TInt aErrorCode);
+ void HandleErrorL(TInt aErrorCode) const;
+
+public :
+ //Stores the Name of the Album or File.
+ mutable QString mMediaTitle;
};
#endif // GLXCOMMANDHANDLERRENAME_H
--- a/ui/commandhandlers/commoncommandhandlers/src/glxcommandhandleraddtocontainer.cpp Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/commandhandlers/commoncommandhandlers/src/glxcommandhandleraddtocontainer.cpp Fri Sep 17 08:29:24 2010 +0300
@@ -108,7 +108,7 @@
}
GlxCommandHandlerAddToContainer::GlxCommandHandlerAddToContainer() :
- mNewMediaAdded(false),mAlbumName(QString())
+ mNewMediaAdded(false),mAlbumName(QString()),mIsAddtoFavCmd(false)
{
OstTraceFunctionEntry0( GLXCOMMANDHANDLERADDTOCONTAINER_GLXCOMMANDHANDLERADDTOCONTAINER_ENTRY );
mTargetContainers = NULL;
@@ -128,8 +128,10 @@
OstTraceFunctionEntry0( GLXCOMMANDHANDLERADDTOCONTAINER_CREATECOMMANDL_ENTRY );
CMPXCommand* command = NULL;
mAlbumName.clear();
+ mIsAddtoFavCmd = false;
if(aCommandId == EGlxCmdAddToFav)
{
+ mIsAddtoFavCmd = TRUE;
mAlbumName = GLX_ALBUM_FAV;
CMPXCollectionPath* targetCollection = CMPXCollectionPath::NewL();
CleanupStack::PushL(targetCollection);
@@ -241,7 +243,8 @@
while (error == KErrAlreadyExists)
{
- HbMessageBox::warning(GLX_NAME_ALREADY_EXIST);
+ QString stringToDisplay = hbTrId(GLX_NAME_ALREADY_EXIST).arg(newTitle);
+ HbMessageBox::warning(stringToDisplay);
error = KErrNone;
error = commandHandlerNewMedia->ExecuteLD(newMediaId,newTitle);
}
@@ -264,7 +267,7 @@
QString GlxCommandHandlerAddToContainer::CompletionTextL() const
{
- if(!mAlbumName.isNull()){
+ if(!mAlbumName.isNull() && mIsAddtoFavCmd == false){
return (hbTrId(GLX_IMAGES_ADDED).arg(mAlbumName));
}
return QString();
--- a/ui/commandhandlers/commoncommandhandlers/src/glxcommandhandlercomment.cpp Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/commandhandlers/commoncommandhandlers/src/glxcommandhandlercomment.cpp Fri Sep 17 08:29:24 2010 +0300
@@ -15,7 +15,6 @@
*
*/
-#include <hbmessagebox.h>
#include <hblabel.h>
#include <mpxcollectionpath.h>
@@ -44,7 +43,7 @@
CMPXCommand* command = NULL;
QString mainPane = GetName(aMediaList);
- QString title(GLX_DETAILS_DESCRIPTION);
+ QString title(GLX_DIALOG_DESCRIPTION);
QString mediaTitle = NULL;
bool ok = false;
GlxTextInputDialog* dlg = new GlxTextInputDialog(false);
--- a/ui/commandhandlers/commoncommandhandlers/src/glxcommandhandlernewmedia.cpp Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/commandhandlers/commoncommandhandlers/src/glxcommandhandlernewmedia.cpp Fri Sep 17 08:29:24 2010 +0300
@@ -67,7 +67,7 @@
bool ok = false;
QString mediaTitle = NULL;
GlxTextInputDialog* dlg = new GlxTextInputDialog();
- mediaTitle = dlg->getText(GLX_DIALOG_NAME_PROMPT, mainPane, &ok);
+ mediaTitle = dlg->getText(GLX_DIALOG_ALBUM_PROMPT, mainPane, &ok);
delete dlg;
iNewMediaCreationError = KErrNone;
if (ok == true)
@@ -182,9 +182,12 @@
void GlxCommandHandlerNewMedia::HandleErrorL(TInt aErrorCode)
{
OstTraceFunctionEntry0( GLXCOMMANDHANDLERNEWMEDIA_HANDLEERRORL_ENTRY );
- if (aErrorCode == KErrAlreadyExists && !mShowConfirmation)
+ if (aErrorCode == KErrAlreadyExists && !mShowConfirmation && iNewMediaItemTitle)
{
- HbMessageBox::warning("Album Already Exist!!!" );
+ QString albumName = QString::fromUtf16(iNewMediaItemTitle->Des().Ptr(),
+ iNewMediaItemTitle->Length());
+ QString stringToDisplay = hbTrId(GLX_NAME_ALREADY_EXIST).arg(albumName);
+ HbMessageBox::warning(stringToDisplay);
}
OstTraceFunctionExit0( GLXCOMMANDHANDLERNEWMEDIA_HANDLEERRORL_EXIT );
}
--- a/ui/commandhandlers/commoncommandhandlers/src/glxcommandhandlerrename.cpp Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/commandhandlers/commoncommandhandlers/src/glxcommandhandlerrename.cpp Fri Sep 17 08:29:24 2010 +0300
@@ -1,32 +1,39 @@
/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
+ * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+ * All rights reserved.
+ * This component and the accompanying materials are made available
+ * under the terms of "Eclipse Public License v1.0"
+ * which accompanies this distribution, and is available
+ * at the URL "http://www.eclipse.org/legal/epl-v10.html".
+ *
+ * Initial Contributors:
+ * Nokia Corporation - initial contribution.
+ *
+ * Contributors:
+ *
+ * Description:
+ *
+ */
-#include <hbmessagebox.h>
-#include <hblabel.h>
+//Includes Qt/Symbian
+#include <QFile>
+#include <caf/manager.h>
+//Includes Orbit
+#include <hblabel.h>
+#include <hbmessagebox.h>
+
+//User Includes
+#include <mglxmedialist.h>
+#include <glxcommondialogs.h>
#include <mpxcollectionpath.h>
-#include <mglxmedialist.h>
#include <glxcommandfactory.h>
-#include <glxcommandhandlerrename.h>
#include <glxattributecontext.h>
+#include <glxcommandhandlers.hrh>
#include <glxattributeretriever.h>
+#include "glxlocalisationstrings.h"
#include <glxfetchcontextremover.h>
-#include <glxcommondialogs.h>
-#include "glxlocalisationstrings.h"
+#include <glxcommandhandlerrename.h>
GlxCommandHandlerRename::GlxCommandHandlerRename()
{
@@ -42,29 +49,88 @@
Q_UNUSED(aCommandId);
Q_UNUSED(aConsume);
+ bool ok = false;
CMPXCommand* command = NULL;
+ CMPXCollectionPath* path = NULL;
QString mainPane = GetName(aMediaList);
- QString mediaTitle = NULL;
- bool ok = false;
GlxTextInputDialog* dlg = new GlxTextInputDialog();
- mediaTitle = dlg->getText(GLX_DIALOG_NAME_PROMPT, mainPane, &ok);
+
+ if (aCommandId == EGlxCmdRenameFile)
+ {
+ mMediaTitle = dlg->getText(GLX_DIALOG_NAME_PROMPT, mainPane, &ok);
+ }
+ else
+ {
+ mMediaTitle = dlg->getText(GLX_DIALOG_ALBUM_PROMPT, mainPane, &ok);
+ }
delete dlg;
if(ok == true)
{
- TPtrC16 newMediaItemTitleDes
- = (reinterpret_cast<const TUint16*> (mediaTitle.utf16()));
-
+ TPtrC16 newMediaItemTitleDes =
+ (reinterpret_cast<const TUint16*> (mMediaTitle.utf16()));
HBufC* newMediaItemTitle = newMediaItemTitleDes.Alloc();
CleanupStack::PushL(newMediaItemTitle);
- CMPXCollectionPath* path = aMediaList.PathLC(
- NGlxListDefs::EPathFocusOrSelection);
- command =
- TGlxCommandFactory::RenameCommandLC(*newMediaItemTitle,*path);
- CleanupStack::Pop(command);
- CleanupStack::PopAndDestroy(path);
- CleanupStack::PopAndDestroy(newMediaItemTitle);
+ if (aCommandId == EGlxCmdRenameFile)
+ {
+ TDesC& aTitleText = *newMediaItemTitle;
+ TInt index = aMediaList.FocusIndex();
+ const TGlxMedia& media = aMediaList.Item(index);
+ TParsePtrC parsePtr(media.Uri());
+
+ //Constructs the File Name with complete Path
+ TFileName destinationFileName;
+ destinationFileName.Append(parsePtr.DriveAndPath());
+ destinationFileName.Append(aTitleText);
+ destinationFileName.Append(parsePtr.Ext());
+
+ HBufC* modifiedName = destinationFileName.AllocLC();
+ QString fileName = QString::fromUtf16(modifiedName->Ptr(),
+ modifiedName->Length());
+
+ ContentAccess::CManager *manager =
+ ContentAccess::CManager::NewL();
+ CleanupStack::PushL(manager);
+
+ QFile filePath(fileName);
+ bool isFileExist = filePath.exists();
+
+ if (!isFileExist)
+ {
+ //rename the media
+ TInt error = manager->RenameFile(media.Uri(), *modifiedName);
+
+ if (error == KErrNone)
+ {
+ path = aMediaList.PathLC(
+ NGlxListDefs::EPathFocusOrSelection);
+ command = TGlxCommandFactory::RenameCommandLC(
+ *newMediaItemTitle, *path);
+ CleanupStack::Pop(command);
+ CleanupStack::PopAndDestroy(path);
+ }
+ }
+ else
+ {
+ //The Name of the file name already exists, display an message .
+ HandleErrorL(KErrAlreadyExists);
+ }
+ CleanupStack::PopAndDestroy(manager);
+ CleanupStack::PopAndDestroy(modifiedName);
+ CleanupStack::PopAndDestroy(newMediaItemTitle);
+ }
+ else
+ {
+ //Rename of Album
+ CMPXCollectionPath* path = aMediaList.PathLC(
+ NGlxListDefs::EPathFocusOrSelection);
+ command = TGlxCommandFactory::RenameCommandLC(*newMediaItemTitle,
+ *path);
+ CleanupStack::Pop(command);
+ CleanupStack::PopAndDestroy(path);
+ CleanupStack::PopAndDestroy(newMediaItemTitle);
+ }
}
return command;
}
@@ -146,12 +212,13 @@
return title;
}
-void GlxCommandHandlerRename::HandleErrorL(TInt aErrorCode)
+void GlxCommandHandlerRename::HandleErrorL(TInt aErrorCode) const
{
if(aErrorCode == KErrAlreadyExists)
{
- HbMessageBox::warning("Name Already Exist!!!", new HbLabel(
- "Rename"));
+ QString stringToDisplay = hbTrId(GLX_NAME_ALREADY_EXIST).arg(
+ mMediaTitle);
+ HbMessageBox::warning(stringToDisplay);
}
else{
GlxMpxCommandHandler::HandleErrorL(aErrorCode);
--- a/ui/commandhandlers/commoncommandhandlers/src/glxcommondialogs.cpp Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/commandhandlers/commoncommandhandlers/src/glxcommondialogs.cpp Fri Sep 17 08:29:24 2010 +0300
@@ -19,6 +19,7 @@
#include <hbaction.h>
#include <QEventLoop>
+const int MAXSTRINGLENGHT = 256;
GlxTextInputDialog::GlxTextInputDialog(bool disableOkForEmptyText)
: mDialog ( NULL ),
@@ -42,6 +43,7 @@
mDialog->setPromptText(label);
mDialog->setInputMode(HbInputDialog::TextInput);
mDialog->setValue(text);
+ mDialog->lineEdit(0)->setMaxLength(MAXSTRINGLENGHT);
if(mDisableOkForEmptyText){
connect(mDialog->lineEdit(0), SIGNAL( textChanged (const QString &) ),
this, SLOT( textChanged (const QString &)));
--- a/ui/commandhandlers/eabi/glxcommandhandlerbaseu.def Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/commandhandlers/eabi/glxcommandhandlerbaseu.def Fri Sep 17 08:29:24 2010 +0300
@@ -6,13 +6,13 @@
_ZN20GlxMpxCommandHandler11HandleErrorEi @ 5 NONAME
_ZN20GlxMpxCommandHandler11qt_metacallEN11QMetaObject4CallEiPPv @ 6 NONAME
_ZN20GlxMpxCommandHandler11qt_metacastEPKc @ 7 NONAME
- _ZN20GlxMpxCommandHandler12HandleErrorLEi @ 8 NONAME
- _ZN20GlxMpxCommandHandler12HandleMediaLEiP13MGlxMediaList @ 9 NONAME
- _ZN20GlxMpxCommandHandler13ProgressNoteLEi @ 10 NONAME
- _ZN20GlxMpxCommandHandler14HandleMessageLERK9CMPXMediaP13MGlxMediaList @ 11 NONAME
- _ZN20GlxMpxCommandHandler14executeCommandEii5QListI11QModelIndexE @ 12 NONAME
- _ZN20GlxMpxCommandHandler16CreateMediaListLEii18TGlxFilterItemType @ 13 NONAME
- _ZN20GlxMpxCommandHandler16HandleItemAddedLEiiP13MGlxMediaList @ 14 NONAME
+ _ZN20GlxMpxCommandHandler12HandleMediaLEiP13MGlxMediaList @ 8 NONAME
+ _ZN20GlxMpxCommandHandler13ProgressNoteLEi @ 9 NONAME
+ _ZN20GlxMpxCommandHandler14HandleMessageLERK9CMPXMediaP13MGlxMediaList @ 10 NONAME
+ _ZN20GlxMpxCommandHandler14executeCommandEii5QListI11QModelIndexE @ 11 NONAME
+ _ZN20GlxMpxCommandHandler16CreateMediaListLEii18TGlxFilterItemType @ 12 NONAME
+ _ZN20GlxMpxCommandHandler16HandleItemAddedLEiiP13MGlxMediaList @ 13 NONAME
+ _ZN20GlxMpxCommandHandler16commandCancelledEv @ 14 NONAME
_ZN20GlxMpxCommandHandler16staticMetaObjectE @ 15 NONAME DATA 16
_ZN20GlxMpxCommandHandler17ConfirmationNoteLER13MGlxMediaList @ 16 NONAME
_ZN20GlxMpxCommandHandler17DoExecuteCommandLEiR13MGlxMediaListRi @ 17 NONAME
@@ -41,24 +41,25 @@
_ZN22GlxModelCommandHandlerD1Ev @ 40 NONAME
_ZN22GlxModelCommandHandlerD2Ev @ 41 NONAME
_ZNK20GlxMpxCommandHandler10metaObjectEv @ 42 NONAME
- _ZNK20GlxMpxCommandHandler13ProgressTextLEv @ 43 NONAME
- _ZNK20GlxMpxCommandHandler15CompletionNoteLEv @ 44 NONAME
- _ZNK20GlxMpxCommandHandler15CompletionTextLEv @ 45 NONAME
- _ZNK20GlxMpxCommandHandler17ConfirmationTextLEb @ 46 NONAME
- _ZTI17GlxCommandHandler @ 47 NONAME
- _ZTI20GlxMpxCommandHandler @ 48 NONAME
- _ZTI22GlxModelCommandHandler @ 49 NONAME
- _ZTV17GlxCommandHandler @ 50 NONAME
- _ZTV20GlxMpxCommandHandler @ 51 NONAME
- _ZTV22GlxModelCommandHandler @ 52 NONAME
- _ZThn8_N20GlxMpxCommandHandler11HandleErrorEi @ 53 NONAME
- _ZThn8_N20GlxMpxCommandHandler12HandleMediaLEiP13MGlxMediaList @ 54 NONAME
- _ZThn8_N20GlxMpxCommandHandler14HandleMessageLERK9CMPXMediaP13MGlxMediaList @ 55 NONAME
- _ZThn8_N20GlxMpxCommandHandler16HandleItemAddedLEiiP13MGlxMediaList @ 56 NONAME
- _ZThn8_N20GlxMpxCommandHandler18HandleItemRemovedLEiiP13MGlxMediaList @ 57 NONAME
- _ZThn8_N20GlxMpxCommandHandler19HandleFocusChangedLEN12NGlxListDefs16TFocusChangeTypeEiiP13MGlxMediaList @ 58 NONAME
- _ZThn8_N20GlxMpxCommandHandler19HandleItemModifiedLERK6RArrayIiEP13MGlxMediaList @ 59 NONAME
- _ZThn8_N20GlxMpxCommandHandler19HandleItemSelectedLEiiP13MGlxMediaList @ 60 NONAME
- _ZThn8_N20GlxMpxCommandHandler22HandleCommandCompleteLEPvP9CMPXMediaiP13MGlxMediaList @ 61 NONAME
- _ZThn8_N20GlxMpxCommandHandler26HandleAttributesAvailableLEiRK6RArrayI13TMPXAttributeEP13MGlxMediaList @ 62 NONAME
+ _ZNK20GlxMpxCommandHandler12HandleErrorLEi @ 43 NONAME
+ _ZNK20GlxMpxCommandHandler13ProgressTextLEv @ 44 NONAME
+ _ZNK20GlxMpxCommandHandler15CompletionNoteLEv @ 45 NONAME
+ _ZNK20GlxMpxCommandHandler15CompletionTextLEv @ 46 NONAME
+ _ZNK20GlxMpxCommandHandler17ConfirmationTextLEb @ 47 NONAME
+ _ZTI17GlxCommandHandler @ 48 NONAME
+ _ZTI20GlxMpxCommandHandler @ 49 NONAME
+ _ZTI22GlxModelCommandHandler @ 50 NONAME
+ _ZTV17GlxCommandHandler @ 51 NONAME
+ _ZTV20GlxMpxCommandHandler @ 52 NONAME
+ _ZTV22GlxModelCommandHandler @ 53 NONAME
+ _ZThn8_N20GlxMpxCommandHandler11HandleErrorEi @ 54 NONAME
+ _ZThn8_N20GlxMpxCommandHandler12HandleMediaLEiP13MGlxMediaList @ 55 NONAME
+ _ZThn8_N20GlxMpxCommandHandler14HandleMessageLERK9CMPXMediaP13MGlxMediaList @ 56 NONAME
+ _ZThn8_N20GlxMpxCommandHandler16HandleItemAddedLEiiP13MGlxMediaList @ 57 NONAME
+ _ZThn8_N20GlxMpxCommandHandler18HandleItemRemovedLEiiP13MGlxMediaList @ 58 NONAME
+ _ZThn8_N20GlxMpxCommandHandler19HandleFocusChangedLEN12NGlxListDefs16TFocusChangeTypeEiiP13MGlxMediaList @ 59 NONAME
+ _ZThn8_N20GlxMpxCommandHandler19HandleItemModifiedLERK6RArrayIiEP13MGlxMediaList @ 60 NONAME
+ _ZThn8_N20GlxMpxCommandHandler19HandleItemSelectedLEiiP13MGlxMediaList @ 61 NONAME
+ _ZThn8_N20GlxMpxCommandHandler22HandleCommandCompleteLEPvP9CMPXMediaiP13MGlxMediaList @ 62 NONAME
+ _ZThn8_N20GlxMpxCommandHandler26HandleAttributesAvailableLEiRK6RArrayI13TMPXAttributeEP13MGlxMediaList @ 63 NONAME
--- a/ui/commandhandlers/eabi/glxcommoncommandhandlersu.def Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/commandhandlers/eabi/glxcommoncommandhandlersu.def Fri Sep 17 08:29:24 2010 +0300
@@ -9,111 +9,111 @@
_ZN23GlxCommandHandlerDeleteD0Ev @ 8 NONAME
_ZN23GlxCommandHandlerDeleteD1Ev @ 9 NONAME
_ZN23GlxCommandHandlerDeleteD2Ev @ 10 NONAME
- _ZN23GlxCommandHandlerRename12HandleErrorLEi @ 11 NONAME
- _ZN23GlxCommandHandlerRenameC1Ev @ 12 NONAME
- _ZN23GlxCommandHandlerRenameC2Ev @ 13 NONAME
- _ZN23GlxCommandHandlerRenameD0Ev @ 14 NONAME
- _ZN23GlxCommandHandlerRenameD1Ev @ 15 NONAME
- _ZN23GlxCommandHandlerRenameD2Ev @ 16 NONAME
- _ZN23GlxCommandHandlerRotate12RotateImageLE4TBufILi256EE @ 17 NONAME
- _ZN23GlxCommandHandlerRotate17DestroyExifWriterEv @ 18 NONAME
- _ZN23GlxCommandHandlerRotate17DoExecuteCommandLEiR13MGlxMediaListRi @ 19 NONAME
- _ZN23GlxCommandHandlerRotate20SetImageOrientationLEt @ 20 NONAME
- _ZN23GlxCommandHandlerRotate21InitializeExifWriterLE4TBufILi256EE @ 21 NONAME
- _ZN23GlxCommandHandlerRotate21ReadImageOrientationLEv @ 22 NONAME
- _ZN23GlxCommandHandlerRotate26CalculateFinalOrientationLEt @ 23 NONAME
- _ZN23GlxCommandHandlerRotateC1Ev @ 24 NONAME
- _ZN23GlxCommandHandlerRotateC2Ev @ 25 NONAME
- _ZN23GlxCommandHandlerRotateD0Ev @ 26 NONAME
- _ZN23GlxCommandHandlerRotateD1Ev @ 27 NONAME
- _ZN23GlxCommandHandlerRotateD2Ev @ 28 NONAME
- _ZN24GlxCommandHandlerCommentC1Ev @ 29 NONAME
- _ZN24GlxCommandHandlerCommentC2Ev @ 30 NONAME
- _ZN24GlxCommandHandlerCommentD0Ev @ 31 NONAME
- _ZN24GlxCommandHandlerCommentD1Ev @ 32 NONAME
- _ZN24GlxCommandHandlerCommentD2Ev @ 33 NONAME
- _ZN25GlxCommandHandlerNewMedia11HandleErrorEi @ 34 NONAME
- _ZN25GlxCommandHandlerNewMedia11qt_metacallEN11QMetaObject4CallEiPPv @ 35 NONAME
- _ZN25GlxCommandHandlerNewMedia11qt_metacastEPKc @ 36 NONAME
- _ZN25GlxCommandHandlerNewMedia12HandleErrorLEi @ 37 NONAME
- _ZN25GlxCommandHandlerNewMedia16HandleItemAddedLEiiP13MGlxMediaList @ 38 NONAME
- _ZN25GlxCommandHandlerNewMedia16staticMetaObjectE @ 39 NONAME DATA 16
- _ZN25GlxCommandHandlerNewMedia19getStaticMetaObjectEv @ 40 NONAME
- _ZN25GlxCommandHandlerNewMedia24DoHandleCommandCompleteLEPvP9CMPXMediaiP13MGlxMediaList @ 41 NONAME
- _ZN25GlxCommandHandlerNewMedia9ExecuteLDER11TGlxMediaIdR7QString @ 42 NONAME
- _ZN25GlxCommandHandlerNewMediaC1Ev @ 43 NONAME
- _ZN25GlxCommandHandlerNewMediaC2Ev @ 44 NONAME
- _ZN25GlxCommandHandlerNewMediaD0Ev @ 45 NONAME
- _ZN25GlxCommandHandlerNewMediaD1Ev @ 46 NONAME
- _ZN25GlxCommandHandlerNewMediaD2Ev @ 47 NONAME
- _ZN26GlxCommandHandlerEditImage14executeCommandEii5QListI11QModelIndexE @ 48 NONAME
- _ZN26GlxCommandHandlerEditImageC1Ev @ 49 NONAME
- _ZN26GlxCommandHandlerEditImageC2Ev @ 50 NONAME
- _ZN26GlxCommandHandlerEditImageD0Ev @ 51 NONAME
- _ZN26GlxCommandHandlerEditImageD1Ev @ 52 NONAME
- _ZN26GlxCommandHandlerEditImageD2Ev @ 53 NONAME
- _ZN27GlxCommandHandlerRemoveFromC1Ev @ 54 NONAME
- _ZN27GlxCommandHandlerRemoveFromC2Ev @ 55 NONAME
- _ZN27GlxCommandHandlerRemoveFromD0Ev @ 56 NONAME
- _ZN27GlxCommandHandlerRemoveFromD1Ev @ 57 NONAME
- _ZN27GlxCommandHandlerRemoveFromD2Ev @ 58 NONAME
- _ZN31GlxCommandHandlerAddToContainerC1Ev @ 59 NONAME
- _ZN31GlxCommandHandlerAddToContainerC2Ev @ 60 NONAME
- _ZN31GlxCommandHandlerAddToContainerD0Ev @ 61 NONAME
- _ZN31GlxCommandHandlerAddToContainerD1Ev @ 62 NONAME
- _ZN31GlxCommandHandlerAddToContainerD2Ev @ 63 NONAME
- _ZNK21GlxCommandHandlerSend18doHandleUserActionEP13GlxMediaModel5QListI11QModelIndexE @ 64 NONAME
- _ZNK23GlxCommandHandlerDelete13ProgressTextLEv @ 65 NONAME
- _ZNK23GlxCommandHandlerDelete14CreateCommandLEiR13MGlxMediaListRi @ 66 NONAME
- _ZNK23GlxCommandHandlerDelete15CompletionTextLEv @ 67 NONAME
- _ZNK23GlxCommandHandlerDelete17ConfirmationTextLEb @ 68 NONAME
- _ZNK23GlxCommandHandlerRename14CreateCommandLEiR13MGlxMediaListRi @ 69 NONAME
- _ZNK23GlxCommandHandlerRename15CompletionTextLEv @ 70 NONAME
- _ZNK23GlxCommandHandlerRename7GetNameER13MGlxMediaList @ 71 NONAME
- _ZNK23GlxCommandHandlerRotate14CreateCommandLEiR13MGlxMediaListRi @ 72 NONAME
- _ZNK24GlxCommandHandlerComment14CreateCommandLEiR13MGlxMediaListRi @ 73 NONAME
- _ZNK24GlxCommandHandlerComment15CompletionTextLEv @ 74 NONAME
- _ZNK24GlxCommandHandlerComment7GetNameER13MGlxMediaList @ 75 NONAME
- _ZNK25GlxCommandHandlerNewMedia10metaObjectEv @ 76 NONAME
- _ZNK25GlxCommandHandlerNewMedia13ProgressTextLEv @ 77 NONAME
- _ZNK25GlxCommandHandlerNewMedia14CreateCommandLEiR13MGlxMediaListRi @ 78 NONAME
- _ZNK25GlxCommandHandlerNewMedia15CompletionTextLEv @ 79 NONAME
- _ZNK25GlxCommandHandlerNewMedia26GenerateNewMediaItemTitleLE7QStringR13MGlxMediaList @ 80 NONAME
- _ZNK26GlxCommandHandlerEditImage18doHandleUserActionEP13GlxMediaModel5QListI11QModelIndexE @ 81 NONAME
- _ZNK27GlxCommandHandlerRemoveFrom13ProgressTextLEv @ 82 NONAME
- _ZNK27GlxCommandHandlerRemoveFrom14CreateCommandLEiR13MGlxMediaListRi @ 83 NONAME
- _ZNK27GlxCommandHandlerRemoveFrom15CompletionTextLEv @ 84 NONAME
- _ZNK31GlxCommandHandlerAddToContainer13ProgressTextLEv @ 85 NONAME
- _ZNK31GlxCommandHandlerAddToContainer14CreateCommandLEiR13MGlxMediaListRi @ 86 NONAME
- _ZNK31GlxCommandHandlerAddToContainer14createNewMediaEv @ 87 NONAME
- _ZNK31GlxCommandHandlerAddToContainer15CompletionTextLEv @ 88 NONAME
- _ZTI21GlxCommandHandlerSend @ 89 NONAME
- _ZTI23GlxCommandHandlerDelete @ 90 NONAME
- _ZTI23GlxCommandHandlerRename @ 91 NONAME
- _ZTI23GlxCommandHandlerRotate @ 92 NONAME
- _ZTI24GlxCommandHandlerComment @ 93 NONAME
- _ZTI25GlxCommandHandlerNewMedia @ 94 NONAME
- _ZTI26GlxCommandHandlerEditImage @ 95 NONAME
- _ZTI27GlxCommandHandlerRemoveFrom @ 96 NONAME
- _ZTI31GlxCommandHandlerAddToContainer @ 97 NONAME
- _ZTV21GlxCommandHandlerSend @ 98 NONAME
- _ZTV23GlxCommandHandlerDelete @ 99 NONAME
- _ZTV23GlxCommandHandlerRename @ 100 NONAME
- _ZTV23GlxCommandHandlerRotate @ 101 NONAME
- _ZTV24GlxCommandHandlerComment @ 102 NONAME
- _ZTV25GlxCommandHandlerNewMedia @ 103 NONAME
- _ZTV26GlxCommandHandlerEditImage @ 104 NONAME
- _ZTV27GlxCommandHandlerRemoveFrom @ 105 NONAME
- _ZTV31GlxCommandHandlerAddToContainer @ 106 NONAME
- _ZThn8_N25GlxCommandHandlerNewMedia11HandleErrorEi @ 107 NONAME
- _ZThn8_N25GlxCommandHandlerNewMedia16HandleItemAddedLEiiP13MGlxMediaList @ 108 NONAME
- _ZN26GlxCommandHandlerEditImage10storeItemsERK11QModelIndexii @ 109 NONAME
- _ZN26GlxCommandHandlerEditImage11handleErrorEiRK7QString @ 110 NONAME
- _ZN26GlxCommandHandlerEditImage11qt_metacallEN11QMetaObject4CallEiPPv @ 111 NONAME
- _ZN26GlxCommandHandlerEditImage11qt_metacastEPKc @ 112 NONAME
- _ZN26GlxCommandHandlerEditImage15clearMediaModelEv @ 113 NONAME
- _ZN26GlxCommandHandlerEditImage16staticMetaObjectE @ 114 NONAME DATA 16
- _ZN26GlxCommandHandlerEditImage19getStaticMetaObjectEv @ 115 NONAME
- _ZN26GlxCommandHandlerEditImage8handleOkERK8QVariant @ 116 NONAME
- _ZNK26GlxCommandHandlerEditImage10metaObjectEv @ 117 NONAME
+ _ZN23GlxCommandHandlerRenameC1Ev @ 11 NONAME
+ _ZN23GlxCommandHandlerRenameC2Ev @ 12 NONAME
+ _ZN23GlxCommandHandlerRenameD0Ev @ 13 NONAME
+ _ZN23GlxCommandHandlerRenameD1Ev @ 14 NONAME
+ _ZN23GlxCommandHandlerRenameD2Ev @ 15 NONAME
+ _ZN23GlxCommandHandlerRotate12RotateImageLE4TBufILi256EE @ 16 NONAME
+ _ZN23GlxCommandHandlerRotate17DestroyExifWriterEv @ 17 NONAME
+ _ZN23GlxCommandHandlerRotate17DoExecuteCommandLEiR13MGlxMediaListRi @ 18 NONAME
+ _ZN23GlxCommandHandlerRotate20SetImageOrientationLEt @ 19 NONAME
+ _ZN23GlxCommandHandlerRotate21InitializeExifWriterLE4TBufILi256EE @ 20 NONAME
+ _ZN23GlxCommandHandlerRotate21ReadImageOrientationLEv @ 21 NONAME
+ _ZN23GlxCommandHandlerRotate26CalculateFinalOrientationLEt @ 22 NONAME
+ _ZN23GlxCommandHandlerRotateC1Ev @ 23 NONAME
+ _ZN23GlxCommandHandlerRotateC2Ev @ 24 NONAME
+ _ZN23GlxCommandHandlerRotateD0Ev @ 25 NONAME
+ _ZN23GlxCommandHandlerRotateD1Ev @ 26 NONAME
+ _ZN23GlxCommandHandlerRotateD2Ev @ 27 NONAME
+ _ZN24GlxCommandHandlerCommentC1Ev @ 28 NONAME
+ _ZN24GlxCommandHandlerCommentC2Ev @ 29 NONAME
+ _ZN24GlxCommandHandlerCommentD0Ev @ 30 NONAME
+ _ZN24GlxCommandHandlerCommentD1Ev @ 31 NONAME
+ _ZN24GlxCommandHandlerCommentD2Ev @ 32 NONAME
+ _ZN25GlxCommandHandlerNewMedia11HandleErrorEi @ 33 NONAME
+ _ZN25GlxCommandHandlerNewMedia11qt_metacallEN11QMetaObject4CallEiPPv @ 34 NONAME
+ _ZN25GlxCommandHandlerNewMedia11qt_metacastEPKc @ 35 NONAME
+ _ZN25GlxCommandHandlerNewMedia12HandleErrorLEi @ 36 NONAME
+ _ZN25GlxCommandHandlerNewMedia16HandleItemAddedLEiiP13MGlxMediaList @ 37 NONAME
+ _ZN25GlxCommandHandlerNewMedia16staticMetaObjectE @ 38 NONAME DATA 16
+ _ZN25GlxCommandHandlerNewMedia19getStaticMetaObjectEv @ 39 NONAME
+ _ZN25GlxCommandHandlerNewMedia24DoHandleCommandCompleteLEPvP9CMPXMediaiP13MGlxMediaList @ 40 NONAME
+ _ZN25GlxCommandHandlerNewMedia9ExecuteLDER11TGlxMediaIdR7QString @ 41 NONAME
+ _ZN25GlxCommandHandlerNewMediaC1Ev @ 42 NONAME
+ _ZN25GlxCommandHandlerNewMediaC2Ev @ 43 NONAME
+ _ZN25GlxCommandHandlerNewMediaD0Ev @ 44 NONAME
+ _ZN25GlxCommandHandlerNewMediaD1Ev @ 45 NONAME
+ _ZN25GlxCommandHandlerNewMediaD2Ev @ 46 NONAME
+ _ZN26GlxCommandHandlerEditImage10storeItemsERK11QModelIndexii @ 47 NONAME
+ _ZN26GlxCommandHandlerEditImage11handleErrorEiRK7QString @ 48 NONAME
+ _ZN26GlxCommandHandlerEditImage11qt_metacallEN11QMetaObject4CallEiPPv @ 49 NONAME
+ _ZN26GlxCommandHandlerEditImage11qt_metacastEPKc @ 50 NONAME
+ _ZN26GlxCommandHandlerEditImage14executeCommandEii5QListI11QModelIndexE @ 51 NONAME
+ _ZN26GlxCommandHandlerEditImage15clearMediaModelEv @ 52 NONAME
+ _ZN26GlxCommandHandlerEditImage16staticMetaObjectE @ 53 NONAME DATA 16
+ _ZN26GlxCommandHandlerEditImage19getStaticMetaObjectEv @ 54 NONAME
+ _ZN26GlxCommandHandlerEditImage8handleOkERK8QVariant @ 55 NONAME
+ _ZN26GlxCommandHandlerEditImageC1Ev @ 56 NONAME
+ _ZN26GlxCommandHandlerEditImageC2Ev @ 57 NONAME
+ _ZN26GlxCommandHandlerEditImageD0Ev @ 58 NONAME
+ _ZN26GlxCommandHandlerEditImageD1Ev @ 59 NONAME
+ _ZN26GlxCommandHandlerEditImageD2Ev @ 60 NONAME
+ _ZN27GlxCommandHandlerRemoveFromC1Ev @ 61 NONAME
+ _ZN27GlxCommandHandlerRemoveFromC2Ev @ 62 NONAME
+ _ZN27GlxCommandHandlerRemoveFromD0Ev @ 63 NONAME
+ _ZN27GlxCommandHandlerRemoveFromD1Ev @ 64 NONAME
+ _ZN27GlxCommandHandlerRemoveFromD2Ev @ 65 NONAME
+ _ZN31GlxCommandHandlerAddToContainerC1Ev @ 66 NONAME
+ _ZN31GlxCommandHandlerAddToContainerC2Ev @ 67 NONAME
+ _ZN31GlxCommandHandlerAddToContainerD0Ev @ 68 NONAME
+ _ZN31GlxCommandHandlerAddToContainerD1Ev @ 69 NONAME
+ _ZN31GlxCommandHandlerAddToContainerD2Ev @ 70 NONAME
+ _ZNK21GlxCommandHandlerSend18doHandleUserActionEP13GlxMediaModel5QListI11QModelIndexE @ 71 NONAME
+ _ZNK23GlxCommandHandlerDelete13ProgressTextLEv @ 72 NONAME
+ _ZNK23GlxCommandHandlerDelete14CreateCommandLEiR13MGlxMediaListRi @ 73 NONAME
+ _ZNK23GlxCommandHandlerDelete15CompletionTextLEv @ 74 NONAME
+ _ZNK23GlxCommandHandlerDelete17ConfirmationTextLEb @ 75 NONAME
+ _ZNK23GlxCommandHandlerRename12HandleErrorLEi @ 76 NONAME
+ _ZNK23GlxCommandHandlerRename14CreateCommandLEiR13MGlxMediaListRi @ 77 NONAME
+ _ZNK23GlxCommandHandlerRename15CompletionTextLEv @ 78 NONAME
+ _ZNK23GlxCommandHandlerRename7GetNameER13MGlxMediaList @ 79 NONAME
+ _ZNK23GlxCommandHandlerRotate14CreateCommandLEiR13MGlxMediaListRi @ 80 NONAME
+ _ZNK24GlxCommandHandlerComment14CreateCommandLEiR13MGlxMediaListRi @ 81 NONAME
+ _ZNK24GlxCommandHandlerComment15CompletionTextLEv @ 82 NONAME
+ _ZNK24GlxCommandHandlerComment7GetNameER13MGlxMediaList @ 83 NONAME
+ _ZNK25GlxCommandHandlerNewMedia10metaObjectEv @ 84 NONAME
+ _ZNK25GlxCommandHandlerNewMedia13ProgressTextLEv @ 85 NONAME
+ _ZNK25GlxCommandHandlerNewMedia14CreateCommandLEiR13MGlxMediaListRi @ 86 NONAME
+ _ZNK25GlxCommandHandlerNewMedia15CompletionTextLEv @ 87 NONAME
+ _ZNK25GlxCommandHandlerNewMedia26GenerateNewMediaItemTitleLE7QStringR13MGlxMediaList @ 88 NONAME
+ _ZNK26GlxCommandHandlerEditImage10metaObjectEv @ 89 NONAME
+ _ZNK26GlxCommandHandlerEditImage18doHandleUserActionEP13GlxMediaModel5QListI11QModelIndexE @ 90 NONAME
+ _ZNK27GlxCommandHandlerRemoveFrom13ProgressTextLEv @ 91 NONAME
+ _ZNK27GlxCommandHandlerRemoveFrom14CreateCommandLEiR13MGlxMediaListRi @ 92 NONAME
+ _ZNK27GlxCommandHandlerRemoveFrom15CompletionTextLEv @ 93 NONAME
+ _ZNK31GlxCommandHandlerAddToContainer13ProgressTextLEv @ 94 NONAME
+ _ZNK31GlxCommandHandlerAddToContainer14CreateCommandLEiR13MGlxMediaListRi @ 95 NONAME
+ _ZNK31GlxCommandHandlerAddToContainer14createNewMediaEv @ 96 NONAME
+ _ZNK31GlxCommandHandlerAddToContainer15CompletionTextLEv @ 97 NONAME
+ _ZTI21GlxCommandHandlerSend @ 98 NONAME
+ _ZTI23GlxCommandHandlerDelete @ 99 NONAME
+ _ZTI23GlxCommandHandlerRename @ 100 NONAME
+ _ZTI23GlxCommandHandlerRotate @ 101 NONAME
+ _ZTI24GlxCommandHandlerComment @ 102 NONAME
+ _ZTI25GlxCommandHandlerNewMedia @ 103 NONAME
+ _ZTI26GlxCommandHandlerEditImage @ 104 NONAME
+ _ZTI27GlxCommandHandlerRemoveFrom @ 105 NONAME
+ _ZTI31GlxCommandHandlerAddToContainer @ 106 NONAME
+ _ZTV21GlxCommandHandlerSend @ 107 NONAME
+ _ZTV23GlxCommandHandlerDelete @ 108 NONAME
+ _ZTV23GlxCommandHandlerRename @ 109 NONAME
+ _ZTV23GlxCommandHandlerRotate @ 110 NONAME
+ _ZTV24GlxCommandHandlerComment @ 111 NONAME
+ _ZTV25GlxCommandHandlerNewMedia @ 112 NONAME
+ _ZTV26GlxCommandHandlerEditImage @ 113 NONAME
+ _ZTV27GlxCommandHandlerRemoveFrom @ 114 NONAME
+ _ZTV31GlxCommandHandlerAddToContainer @ 115 NONAME
+ _ZThn8_N25GlxCommandHandlerNewMedia11HandleErrorEi @ 116 NONAME
+ _ZThn8_N25GlxCommandHandlerNewMedia16HandleItemAddedLEiiP13MGlxMediaList @ 117 NONAME
--- a/ui/detailscustomwidget/bwins/glxdetailscustomwidgetsu.def Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/detailscustomwidget/bwins/glxdetailscustomwidgetsu.def Fri Sep 17 08:29:24 2010 +0300
@@ -1,22 +1,22 @@
EXPORTS
- ?focusInEvent@GlxDetailsTextEdit@@MAEXPAVQFocusEvent@@@Z @ 1 NONAME ; void GlxDetailsTextEdit::focusInEvent(class QFocusEvent *)
- ??1GlxDetailsIcon@@UAE@XZ @ 2 NONAME ; GlxDetailsIcon::~GlxDetailsIcon(void)
- ??1GlxDetailsTextEdit@@UAE@XZ @ 3 NONAME ; GlxDetailsTextEdit::~GlxDetailsTextEdit(void)
- ?trUtf8@GlxDetailsIcon@@SA?AVQString@@PBD0H@Z @ 4 NONAME ; class QString GlxDetailsIcon::trUtf8(char const *, char const *, int)
- ?labelPressed@GlxDetailsTextEdit@@IAEXXZ @ 5 NONAME ; void GlxDetailsTextEdit::labelPressed(void)
- ?qt_metacall@GlxDetailsIcon@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 6 NONAME ; int GlxDetailsIcon::qt_metacall(enum QMetaObject::Call, int, void * *)
- ?metaObject@GlxDetailsIcon@@UBEPBUQMetaObject@@XZ @ 7 NONAME ; struct QMetaObject const * GlxDetailsIcon::metaObject(void) const
- ?tr@GlxDetailsIcon@@SA?AVQString@@PBD0H@Z @ 8 NONAME ; class QString GlxDetailsIcon::tr(char const *, char const *, int)
- ?staticMetaObject@GlxDetailsIcon@@2UQMetaObject@@B @ 9 NONAME ; struct QMetaObject const GlxDetailsIcon::staticMetaObject
- ??_EGlxDetailsTextEdit@@UAE@I@Z @ 10 NONAME ; GlxDetailsTextEdit::~GlxDetailsTextEdit(unsigned int)
- ?tr@GlxDetailsTextEdit@@SA?AVQString@@PBD0@Z @ 11 NONAME ; class QString GlxDetailsTextEdit::tr(char const *, char const *)
- ?trUtf8@GlxDetailsIcon@@SA?AVQString@@PBD0@Z @ 12 NONAME ; class QString GlxDetailsIcon::trUtf8(char const *, char const *)
+ ??1GlxDetailsIcon@@UAE@XZ @ 1 NONAME ; GlxDetailsIcon::~GlxDetailsIcon(void)
+ ??1GlxDetailsTextEdit@@UAE@XZ @ 2 NONAME ; GlxDetailsTextEdit::~GlxDetailsTextEdit(void)
+ ?trUtf8@GlxDetailsIcon@@SA?AVQString@@PBD0H@Z @ 3 NONAME ; class QString GlxDetailsIcon::trUtf8(char const *, char const *, int)
+ ?qt_metacall@GlxDetailsIcon@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 4 NONAME ; int GlxDetailsIcon::qt_metacall(enum QMetaObject::Call, int, void * *)
+ ?metaObject@GlxDetailsIcon@@UBEPBUQMetaObject@@XZ @ 5 NONAME ; struct QMetaObject const * GlxDetailsIcon::metaObject(void) const
+ ?tr@GlxDetailsIcon@@SA?AVQString@@PBD0H@Z @ 6 NONAME ; class QString GlxDetailsIcon::tr(char const *, char const *, int)
+ ?staticMetaObject@GlxDetailsIcon@@2UQMetaObject@@B @ 7 NONAME ; struct QMetaObject const GlxDetailsIcon::staticMetaObject
+ ??_EGlxDetailsTextEdit@@UAE@I@Z @ 8 NONAME ; GlxDetailsTextEdit::~GlxDetailsTextEdit(unsigned int)
+ ?tr@GlxDetailsTextEdit@@SA?AVQString@@PBD0@Z @ 9 NONAME ; class QString GlxDetailsTextEdit::tr(char const *, char const *)
+ ?gestureEvent@GlxDetailsTextEdit@@MAEXPAVQGestureEvent@@@Z @ 10 NONAME ; void GlxDetailsTextEdit::gestureEvent(class QGestureEvent *)
+ ?trUtf8@GlxDetailsIcon@@SA?AVQString@@PBD0@Z @ 11 NONAME ; class QString GlxDetailsIcon::trUtf8(char const *, char const *)
+ ?setTextItemReadOnly@GlxDetailsTextEdit@@QAEX_N@Z @ 12 NONAME ; void GlxDetailsTextEdit::setTextItemReadOnly(bool)
?getStaticMetaObject@GlxDetailsTextEdit@@SAABUQMetaObject@@XZ @ 13 NONAME ; struct QMetaObject const & GlxDetailsTextEdit::getStaticMetaObject(void)
?updateFavourites@GlxDetailsIcon@@IAEXXZ @ 14 NONAME ; void GlxDetailsIcon::updateFavourites(void)
?mousePressEvent@GlxDetailsIcon@@MAEXPAVQGraphicsSceneMouseEvent@@@Z @ 15 NONAME ; void GlxDetailsIcon::mousePressEvent(class QGraphicsSceneMouseEvent *)
?staticMetaObject@GlxDetailsTextEdit@@2UQMetaObject@@B @ 16 NONAME ; struct QMetaObject const GlxDetailsTextEdit::staticMetaObject
- ?setItemText@GlxDetailsTextEdit@@QAEXABVQString@@@Z @ 17 NONAME ; void GlxDetailsTextEdit::setItemText(class QString const &)
- ?tr@GlxDetailsIcon@@SA?AVQString@@PBD0@Z @ 18 NONAME ; class QString GlxDetailsIcon::tr(char const *, char const *)
+ ?tr@GlxDetailsIcon@@SA?AVQString@@PBD0@Z @ 17 NONAME ; class QString GlxDetailsIcon::tr(char const *, char const *)
+ ?setItemText@GlxDetailsTextEdit@@QAEXABVQString@@@Z @ 18 NONAME ; void GlxDetailsTextEdit::setItemText(class QString const &)
?getStaticMetaObject@GlxDetailsIcon@@SAABUQMetaObject@@XZ @ 19 NONAME ; struct QMetaObject const & GlxDetailsIcon::getStaticMetaObject(void)
?qt_metacall@GlxDetailsTextEdit@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 20 NONAME ; int GlxDetailsTextEdit::qt_metacall(enum QMetaObject::Call, int, void * *)
?trUtf8@GlxDetailsTextEdit@@SA?AVQString@@PBD0H@Z @ 21 NONAME ; class QString GlxDetailsTextEdit::trUtf8(char const *, char const *, int)
@@ -24,11 +24,11 @@
?qt_metacast@GlxDetailsIcon@@UAEPAXPBD@Z @ 23 NONAME ; void * GlxDetailsIcon::qt_metacast(char const *)
??_EGlxDetailsIcon@@UAE@I@Z @ 24 NONAME ; GlxDetailsIcon::~GlxDetailsIcon(unsigned int)
?trUtf8@GlxDetailsTextEdit@@SA?AVQString@@PBD0@Z @ 25 NONAME ; class QString GlxDetailsTextEdit::trUtf8(char const *, char const *)
- ?metaObject@GlxDetailsTextEdit@@UBEPBUQMetaObject@@XZ @ 26 NONAME ; struct QMetaObject const * GlxDetailsTextEdit::metaObject(void) const
- ?qt_metacast@GlxDetailsTextEdit@@UAEPAXPBD@Z @ 27 NONAME ; void * GlxDetailsTextEdit::qt_metacast(char const *)
- ?tr@GlxDetailsTextEdit@@SA?AVQString@@PBD0H@Z @ 28 NONAME ; class QString GlxDetailsTextEdit::tr(char const *, char const *, int)
- ??0GlxDetailsIcon@@QAE@PAVQGraphicsItem@@@Z @ 29 NONAME ; GlxDetailsIcon::GlxDetailsIcon(class QGraphicsItem *)
- ?focusOutEvent@GlxDetailsTextEdit@@MAEXPAVQFocusEvent@@@Z @ 30 NONAME ; void GlxDetailsTextEdit::focusOutEvent(class QFocusEvent *)
+ ?editorTapped@GlxDetailsTextEdit@@IAEXXZ @ 26 NONAME ; void GlxDetailsTextEdit::editorTapped(void)
+ ?metaObject@GlxDetailsTextEdit@@UBEPBUQMetaObject@@XZ @ 27 NONAME ; struct QMetaObject const * GlxDetailsTextEdit::metaObject(void) const
+ ?qt_metacast@GlxDetailsTextEdit@@UAEPAXPBD@Z @ 28 NONAME ; void * GlxDetailsTextEdit::qt_metacast(char const *)
+ ?tr@GlxDetailsTextEdit@@SA?AVQString@@PBD0H@Z @ 29 NONAME ; class QString GlxDetailsTextEdit::tr(char const *, char const *, int)
+ ??0GlxDetailsIcon@@QAE@PAVQGraphicsItem@@@Z @ 30 NONAME ; GlxDetailsIcon::GlxDetailsIcon(class QGraphicsItem *)
??0GlxDetailsTextEdit@@QAE@PAVQGraphicsItem@@@Z @ 31 NONAME ; GlxDetailsTextEdit::GlxDetailsTextEdit(class QGraphicsItem *)
?setItemIcon@GlxDetailsIcon@@QAEXABVHbIcon@@@Z @ 32 NONAME ; void GlxDetailsIcon::setItemIcon(class HbIcon const &)
--- a/ui/detailscustomwidget/detailscustomwidgets/glxdetailsicon.cpp Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/detailscustomwidget/detailscustomwidgets/glxdetailsicon.cpp Fri Sep 17 08:29:24 2010 +0300
@@ -50,7 +50,7 @@
stackedLayout->addItem( mFavIcon );
setLayout( stackedLayout );
- mFavIcon->setOpacity(0.7);
+ mFavIcon->setOpacity(0.9);
HbFrameItem* frame = new HbFrameItem(this);
frame->frameDrawer().setFrameType(HbFrameDrawer::NinePieces);
frame->frameDrawer().setFrameGraphicsName("qtg_fr_multimedia_trans");
--- a/ui/detailscustomwidget/detailscustomwidgets/glxdetailstextedit.cpp Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/detailscustomwidget/detailscustomwidgets/glxdetailstextedit.cpp Fri Sep 17 08:29:24 2010 +0300
@@ -1,60 +1,62 @@
/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: This is custom widget for details view in photos for displaying the description of image .
-*
-*/
-
+ * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+ * All rights reserved.
+ * This component and the accompanying materials are made available
+ * under the terms of "Eclipse Public License v1.0"
+ * which accompanies this distribution, and is available
+ * at the URL "http://www.eclipse.org/legal/epl-v10.html".
+ *
+ * Initial Contributors:
+ * Nokia Corporation - initial contribution.
+ *
+ * Contributors:
+ *
+ * Description: This is custom widget for details view in photos for displaying the description of image .
+ *
+ */
+#include <QDebug>
+#include <QEvent>
+#include <QInputContext>
+#include <QGraphicsObject>
+
+#include <hbeditorinterface>
+#include <hbtapgesture.h>
+#include <hbapplication.h>
#include "glxdetailstextedit.h"
-#include <hbeditorinterface>
-#include <QEvent>
-
-
//--------------------------------------------------------------------------------------------------------------------------------------------
-//focusInEvent
+//gestureEvent
//--------------------------------------------------------------------------------------------------------------------------------------------
-void GlxDetailsTextEdit::focusInEvent (QFocusEvent *event)
- {
- if(event->reason() == Qt::MouseFocusReason )
- {
- event->setAccepted(TRUE);
- emit labelPressed();
+void GlxDetailsTextEdit::gestureEvent(QGestureEvent* event)
+{
+ HbLineEdit::gestureEvent(event);
+ HbTapGesture *tap = qobject_cast<HbTapGesture *> (event->gesture(Qt::TapGesture));
+ if (tap && (tap->state() == Qt::GestureFinished || tap->state() == Qt::GestureUpdated)) {
+ QInputContext *ic = qApp->inputContext();
+ if (ic) {
+ QEvent *openEvent = new QEvent(QEvent::CloseSoftwareInputPanel);
+ ic->filterEvent(openEvent);
+ delete openEvent;
+
+ if (!mEditorReadOnly && tap->state() == Qt::GestureFinished) {
+ //Only emit the signal in case of editor is not ready only
+ emit editorTapped();
+ }
}
-
}
-
-
-//--------------------------------------------------------------------------------------------------------------------------------------------
-//focusOutEvent
-//--------------------------------------------------------------------------------------------------------------------------------------------
-void GlxDetailsTextEdit::focusOutEvent (QFocusEvent *event)
- {
- event->setAccepted(TRUE);
- }
-
+}
//--------------------------------------------------------------------------------------------------------------------------------------------
//GlxDetailsTextEdit
//--------------------------------------------------------------------------------------------------------------------------------------------
-GlxDetailsTextEdit::GlxDetailsTextEdit(QGraphicsItem *parent) : HbTextEdit( parent )
+GlxDetailsTextEdit::GlxDetailsTextEdit(QGraphicsItem *parent) :
+ HbLineEdit(parent), mEditorReadOnly(0)
{
- setAlignment(Qt::AlignLeft);
- mDesc = new HbEditorInterface(this);
- clearContextMenuFlag(Hb::ShowTextContextMenuOnLongPress);
- mDesc->setInputConstraints (HbEditorConstraintIgnoreFocus);
+ setAlignment(Qt::AlignLeft);
+ clearContextMenuFlag(Hb::ShowTextContextMenuOnLongPress);
+ grabGesture(Qt::TapGesture);
}
//--------------------------------------------------------------------------------------------------------------------------------------------
@@ -62,14 +64,21 @@
//--------------------------------------------------------------------------------------------------------------------------------------------
GlxDetailsTextEdit::~GlxDetailsTextEdit()
{
- delete mDesc;
- mDesc = NULL;
+ mEditorReadOnly = FALSE;
}
//--------------------------------------------------------------------------------------------------------------------------------------------
//setItemText
//--------------------------------------------------------------------------------------------------------------------------------------------
-void GlxDetailsTextEdit::setItemText( const QString &text )
+void GlxDetailsTextEdit::setItemText(const QString &text)
{
- setPlainText( text );
+ setPlainText(text);
}
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//setTextItemReadOnly
+//--------------------------------------------------------------------------------------------------------------------------------------------
+void GlxDetailsTextEdit::setTextItemReadOnly(bool value)
+{
+ mEditorReadOnly = value;
+}
--- a/ui/detailscustomwidget/detailscustomwidgets/glxdetailstextedit.h Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/detailscustomwidget/detailscustomwidgets/glxdetailstextedit.h Fri Sep 17 08:29:24 2010 +0300
@@ -1,24 +1,24 @@
/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: This is custom widget for details view in photos for displaying the description of image .
-*
-*/
-
+ * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+ * All rights reserved.
+ * This component and the accompanying materials are made available
+ * under the terms of "Eclipse Public License v1.0"
+ * which accompanies this distribution, and is available
+ * at the URL "http://www.eclipse.org/legal/epl-v10.html".
+ *
+ * Initial Contributors:
+ * Nokia Corporation - initial contribution.
+ *
+ * Contributors:
+ *
+ * Description: This is custom widget for details view in photos for displaying the description of image .
+ *
+ */
+
#ifndef GlXDETAILSDESCEDIT_H
#define GlXDETAILSDESCEDIT_H
-#include <hbtextedit.h>
+#include <hblineedit.h>
#ifdef BUILD_DETAILSCUSTOM
#define MY_EXPORT Q_DECL_EXPORT
@@ -26,25 +26,26 @@
#define MY_EXPORT Q_DECL_IMPORT
#endif
-class HbEditorInterface;
-class MY_EXPORT GlxDetailsTextEdit : public HbTextEdit
-{
- Q_OBJECT
-
+class MY_EXPORT GlxDetailsTextEdit: public HbLineEdit
+{
+Q_OBJECT
+
public:
GlxDetailsTextEdit(QGraphicsItem *parent = NULL);
- ~GlxDetailsTextEdit();
- void setItemText( const QString &text );
-
+ ~GlxDetailsTextEdit();
+ void setItemText(const QString &text);
+ void setTextItemReadOnly(bool value);
+
protected:
- void focusInEvent (QFocusEvent *event) ;
- void focusOutEvent (QFocusEvent *event) ;
+ void gestureEvent(QGestureEvent* event);
+
+signals :
+ void editorTapped();
-
-signals :
- void labelPressed();
private:
- HbEditorInterface *mDesc;
+ //flag to set if the editor should emit signal or not for edit.
+ bool mEditorReadOnly;
+
};
#endif // GlXDETAILSDESCEDIT_H
--- a/ui/detailscustomwidget/eabi/glxdetailscustomwidgetsu.def Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/detailscustomwidget/eabi/glxdetailscustomwidgetsu.def Fri Sep 17 08:29:24 2010 +0300
@@ -15,11 +15,11 @@
_ZN18GlxDetailsTextEdit11qt_metacallEN11QMetaObject4CallEiPPv @ 14 NONAME
_ZN18GlxDetailsTextEdit11qt_metacastEPKc @ 15 NONAME
_ZN18GlxDetailsTextEdit11setItemTextERK7QString @ 16 NONAME
- _ZN18GlxDetailsTextEdit12focusInEventEP11QFocusEvent @ 17 NONAME
- _ZN18GlxDetailsTextEdit12labelPressedEv @ 18 NONAME
- _ZN18GlxDetailsTextEdit13focusOutEventEP11QFocusEvent @ 19 NONAME
- _ZN18GlxDetailsTextEdit16staticMetaObjectE @ 20 NONAME DATA 16
- _ZN18GlxDetailsTextEdit19getStaticMetaObjectEv @ 21 NONAME
+ _ZN18GlxDetailsTextEdit12editorTappedEv @ 17 NONAME
+ _ZN18GlxDetailsTextEdit12gestureEventEP13QGestureEvent @ 18 NONAME
+ _ZN18GlxDetailsTextEdit16staticMetaObjectE @ 19 NONAME DATA 16
+ _ZN18GlxDetailsTextEdit19getStaticMetaObjectEv @ 20 NONAME
+ _ZN18GlxDetailsTextEdit19setTextItemReadOnlyEb @ 21 NONAME
_ZN18GlxDetailsTextEditC1EP13QGraphicsItem @ 22 NONAME
_ZN18GlxDetailsTextEditC2EP13QGraphicsItem @ 23 NONAME
_ZN18GlxDetailsTextEditD0Ev @ 24 NONAME
@@ -39,8 +39,6 @@
_ZThn8_N14GlxDetailsIcon17mouseReleaseEventEP24QGraphicsSceneMouseEvent @ 38 NONAME
_ZThn8_N14GlxDetailsIconD0Ev @ 39 NONAME
_ZThn8_N14GlxDetailsIconD1Ev @ 40 NONAME
- _ZThn8_N18GlxDetailsTextEdit12focusInEventEP11QFocusEvent @ 41 NONAME
- _ZThn8_N18GlxDetailsTextEdit13focusOutEventEP11QFocusEvent @ 42 NONAME
- _ZThn8_N18GlxDetailsTextEditD0Ev @ 43 NONAME
- _ZThn8_N18GlxDetailsTextEditD1Ev @ 44 NONAME
+ _ZThn8_N18GlxDetailsTextEditD0Ev @ 41 NONAME
+ _ZThn8_N18GlxDetailsTextEditD1Ev @ 42 NONAME
--- a/ui/inc/glxcommandhandlers.hrh Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/inc/glxcommandhandlers.hrh Fri Sep 17 08:29:24 2010 +0300
@@ -59,6 +59,7 @@
EGlxCmdSelectSlideshow, //play the slide show with selected item
EGlxCmdAlbumSlideShow, //play the slide show for a album
EGlxCmdRename,
+ EGlxCmdRenameFile,
EGlxCmdAddToFav,
EGlxCmdRemoveFromFav,
EGlxCmdPlay,
--- a/ui/inc/glxdocloaderdefs.h Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/inc/glxdocloaderdefs.h Fri Sep 17 08:29:24 2010 +0300
@@ -50,18 +50,15 @@
#define GLX_LISTVIEW_DOCMLPATH ":/data/listview.docml"
//DETAILS VIEW
-#define GLX_DETAILSVIEW_DOCMLPATH ":/data/detailsview.docml"
-#define GLX_DETAILSVIEW_VIEW "view"
-#define GLX_DETAILSVIEW_IMAGE "ImageIcon"
-#define GLX_DETAILSVIEW_FAVICON "FavIcon"
-#define GLX_DETAILSVIEW_IMGNAME "ImageName"
-#define GLX_DETAILSVIEW_DATETEXT "DateText"
-#define GLX_DETAILSVIEW_SIZETEXT "SizeText"
-#define GLX_DETAILSVIEW_TIMETEXT "TimeText"
-#define GLX_DETAILSVIEW_DESCRPTION "Descriptions"
-#define GLX_DETAILSVIEW_DESCRPTIONTEXT "DescriptionsText"
-#define GLX_DETAILSVIEW_LSSECTION "landscape"
-#define GLX_DETAILSVIEW_PTSECTION "portrait"
+#define GLX_DETAILSVIEW_DOCMLPATH ":/data/detailsview.docml"
+#define GLX_DETAILSVIEW_VIEW "view"
+#define GLX_DETAILSVIEW_IMGBCKGROUND "ImageBackGround"
+#define GLX_DETAILSVIEW_IMAGE "ImageIcon"
+#define GLX_DETAILSVIEW_FAVICON "FavIcon"
+#define GLX_DETAILSVIEW_SHAREBUTTON "ShareButton"
+#define GLX_DETAILSVIEW_LISTWIDGET "DetailsViewList"
+#define GLX_DETAILSVIEW_LSSECTION "landscape"
+#define GLX_DETAILSVIEW_PTSECTION "portrait"
#endif /* GLXDOCLOADERDEFS_H */
--- a/ui/inc/glxmodelroles.h Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/inc/glxmodelroles.h Fri Sep 17 08:29:24 2010 +0300
@@ -47,7 +47,8 @@
GlxRemoveContextRole, //to remove the context
GlxTempVisualWindowIndex, //to store the visual index obtained from AM temporarily
GlxImageCorruptRole, //To get the corrupt image status
- GlxPaintPageFlag
+ GlxPaintPageFlag,
+ GlxImageTitle //to fetch the title of the image
};
--- a/ui/uiengine/medialistwrapper/src/glxmlwrapper_p.cpp Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/uiengine/medialistwrapper/src/glxmlwrapper_p.cpp Fri Sep 17 08:29:24 2010 +0300
@@ -1315,9 +1315,10 @@
//QImage share the memory occupied by data
QImage image(data, aBitmap->SizeInPixels().iWidth, aBitmap->SizeInPixels().iHeight, bytesPerLine, QImage::Format_RGB16);
- QPixmap pixmap = QPixmap::fromImage(image);
- pixmap = pixmap.scaled( itemWidth, itemHeight, Qt::KeepAspectRatio );
-
+ QPixmap pixmap = QPixmap::fromImage(image);
+ if ( aBitmap->SizeInPixels().iWidth > itemWidth || aBitmap->SizeInPixels().iHeight > itemHeight ) {
+ pixmap = pixmap.scaled( itemWidth, itemHeight, Qt::KeepAspectRatio );
+ }
aBitmap->UnlockHeap();
HbIcon* targetIcon = new HbIcon( QIcon( pixmap ) );
--- a/ui/uiengine/model/mediamodel/src/glxmediamodel.cpp Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/uiengine/model/mediamodel/src/glxmediamodel.cpp Fri Sep 17 08:29:24 2010 +0300
@@ -302,6 +302,10 @@
return (mMLWrapper->retrieveItemUri(itemIndex));
}
+ if (role == GlxImageTitle) {
+ return mMLWrapper->retrieveListTitle(itemIndex);
+ }
+
if(role == GlxDimensionsRole) {
return (mMLWrapper->retrieveItemDimension(itemIndex));
}
--- a/ui/viewmanagement/statehandler/src/glxcommandhandlerfactory.cpp Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/viewmanagement/statehandler/src/glxcommandhandlerfactory.cpp Fri Sep 17 08:29:24 2010 +0300
@@ -51,6 +51,7 @@
case EGlxCmdSend : cmdHandler = new GlxCommandHandlerSend();
break;
+ case EGlxCmdRenameFile:
case EGlxCmdRename: cmdHandler = new GlxCommandHandlerRename();
break;
--- a/ui/viewmanagement/viewmanager/src/glxviewmanager.cpp Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/viewmanagement/viewmanager/src/glxviewmanager.cpp Fri Sep 17 08:29:24 2010 +0300
@@ -241,8 +241,8 @@
static int i = 0;
HbIcon icon;
User::ResetInactivityTime();
+ QString text( GLX_REFRESHING );
- //To:Do temp code remove later
if ( mProgressDialog ) {
i = ++i % 10;
icon = HbIcon( QString( ":/data/Wait/qgn_graf_ring_wait_%1.svg" ).arg( i + 1, 2, 10, QChar( '0' ) ) );
@@ -255,13 +255,16 @@
}
if ( currentValue < 0 ) {
- mProgressDialog->setText( QString( GLX_REFRESHING ) ); //To:Do string will change later
+ mProgressDialog->setText( text );
mProgressDialog->setProgressValue( 0 );
+ mProgressDialog->setProgressDialogType( HbProgressDialog::WaitDialog );
}
else {
int value = max - currentValue;
mProgressDialog->setProgressValue( value );
- mProgressDialog->setText( QString( " %1 " ).arg( currentValue ) );
+ text.append( QString( "\n %1 " ).arg( currentValue ) );
+ mProgressDialog->setText( text );
+ mProgressDialog->setProgressDialogType( HbProgressDialog::ProgressDialog );
}
}
}
--- a/ui/views/detailsview/inc/glxdetailsview.h Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/views/detailsview/inc/glxdetailsview.h Fri Sep 17 08:29:24 2010 +0300
@@ -1,47 +1,57 @@
/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: ?Description
-*
-*/
-
+ * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+ * All rights reserved.
+ * This component and the accompanying materials are made available
+ * under the terms of "Eclipse Public License v1.0"
+ * which accompanies this distribution, and is available
+ * at the URL "http://www.eclipse.org/legal/epl-v10.html".
+ *
+ * Initial Contributors:
+ * Nokia Corporation - initial contribution.
+ *
+ * Contributors:
+ *
+ * Description: ?Description
+ *
+ */
+
#ifndef GLXDETAILSVIEW_H
#define GLXDETAILSVIEW_H
+//Includes
#include <glxview.h>
-
+#include <QAbstractItemModel>
-class GlxMediaModel;
-class QAbstractItemModel;
-class HbIconItem;
-
-class GlxFavMediaModel;
-class HbDocumentLoader;
+//Orbit/Qt forward declartion
+class HbIcon;
class HbLabel;
+class HbIconItem;
+class HbListView;
class HbPushButton;
+
+//User Defined forward declartion
+class GlxDetailsIcon;
+class GlxFavMediaModel;
class GlxDetailsTextEdit;
-class GlxDetailsIcon;
-
class GlxDetailsViewDocLoader;
+class GlxDetailsViewModelWrapper;
-class GlxDetailsView : public GlxView
-{
+/**
+ * Class Description
+ * This is Details view class .The functionality of details view is to show the detail of the image like
+ * Name of the image ,Date the image was created , time the image was modified , size of the image
+ * and show the description of the image.here in this view , the name of the image and description can be changed.
+ */
+class GlxDetailsView : public GlxView
+ {
- Q_OBJECT
+Q_OBJECT
public:
+
/*
* class constructor.
+ * @param - HbMainWindow object
*/
GlxDetailsView(HbMainWindow *window);
/*
@@ -50,143 +60,193 @@
~GlxDetailsView();
/*
+ * From GlxView
+ * This is called from the view manager before the view is going to Activated.
+ */
+ void initializeView(QAbstractItemModel *model, GlxView *preView);
+
+ /**
+ * From GlxView
* This is called from the view manager when the view is going to be activated.
*/
- void activate() ;
+ void activate();
/*
- * This is called from the view manager when the view is going to be de-activated.
- */
- void deActivate();
-
- /*
- * This is called from the view manager before the view is going to Activated.
- */
- void initializeView( QAbstractItemModel *model, GlxView *preView );
-
- /*
+ * From GlxView
* This is called from the view manager before the view is going to de-activated.
*/
void resetView();
/*
- * Sets the model corresponding to this view.
+ * From GlxView
+ * This is called from the view manager when the view is going to be de-activated.
*/
- void setModel (QAbstractItemModel *model);
+ void deActivate();
+
/*
+ * From GlxView
+ * Sets the model corresponding to this view.
+ * This is called from the view manager before the view is going to Activated.
+ * @Param - model is of type GlxMediaModel
+ */
+ void setModel(QAbstractItemModel *model);
+
+ /*
+ * //From GlxView
+ * This is called from the view manager before the view is going to Activated.
* return the view item for animation
- */
+ */
QGraphicsItem * getAnimationItem(GlxEffect transtionEffect);
-
-public slots:
- void updateLayout(Qt::Orientation);
- void rowsRemoved(const QModelIndex &parent, int start, int end);
- void dataChanged(QModelIndex startIndex, QModelIndex endIndex);
- void modelDestroyed();
- void updateFavourites();
- void UpdateDescription();
- void FillDetails();
-
private:
/*
- * Retrieves the image from the model and shows the image
+ * cleanUp()
+ * cleans up the resources used.
+ */
+ void cleanUp();
+
+ /*
+ * showImage()
+ * Retrieves the image from the model and displays the image
*/
void showImage();
/*
- * Sets the Date to the label recieved from MDS
+ * setFavModel
+ * This Function creates the favourite model, to determine if the image is added to favourite.
*/
- void setImageName();
-
- void setDesc();
+ void setFavModel();
/*
- * Sets the Date to the label received from MDS
- */
- void setDate();
-
- /*
- * Sets the time to the label received from MDS
- */
- void setTime();
-
- /*
- * Sets the size to the label received from MDS
- */
- void setSize();
-
- /*
- * create the favourite model
- */
- void setFavModel();
-
- /*
- * Add all the model releted connection and data
+ * initializeNewModel()
+ * Add all the model related connection and data
*/
void initializeNewModel();
+
/*
+ * clearCurrentModel()
* clear all the model releted connection and data
*/
void clearCurrentModel();
-
- /*
- * cleans up the resources used.
- */
- void cleanUp();
-
- QString sizeinStrings(int size);
/*
+ * setConnections()
* connects the items to slot to respective signals
*/
void setConnections();
/*
+ * clearConnections()
* clear the connections
*/
void clearConnections();
-
+
+ /**
+ * getSubState()
+ * This Function retrieves the state of the details view, whether it launched from the Photos app
+ * or whether it was launched from other app like File Manager, MMS , Camera ...
+ */
int getSubState();
+
+private slots:
+
+ /**
+ * updateLayout()
+ * This Loads the View/Section corresponding to the Orientation.
+ * @Param - Orientation , specifies the current Orientation.
+ */
+ void updateLayout(Qt::Orientation);
+
+ /**
+ * rowsRemoved()
+ * This Slot is called when the item is removed from the model.
+ * @Param - parent is of type QModelIndex.
+ * @Param - start, this specifies the starting index of the item being removed.
+ * @Param - end ,this specifies the ending index of the item being removed.
+ */
+ void rowsRemoved(const QModelIndex &parent, int start, int end);
+
+ /**
+ * modelDestroyed()
+ * This Slot is called whenever the model is deleted.
+ */
+ void modelDestroyed();
+
+ /**
+ * dataChanged()
+ * This Slot is called whenever the data in an existing item changes.
+ * @Param - startIndex, this specifies the starting index of the affected items.
+ * @Param - endIndex ,this specifies the ending index of the affected items .
+ */
+ void dataChanged(QModelIndex startIndex, QModelIndex endIndex);
+
+ /**
+ * refreshDetailsview()
+ * This Slot is called when the data shown in details view has to be refreshed.
+ */
+ void refreshDetailsview();
+
+ /**
+ * triggerTheCommand()
+ * This Slot is called when the file details has to be changed like file name and description
+ * @param - row, The Row specifies the row index of the widget in the list widget of details view.
+ */
+ void triggerTheCommand(int row);
+
+ /**
+ * updateFavourites()
+ * This Slot is called whenever the image is added to Favourites
+ */
+ void updateFavourites();
+
+ /**
+ * launchShareDialog()
+ * This Slot is called when the image has to be sent via services like MMS, Bluetooth,Email...
+ */
+ void launchShareDialog();
+
private:
-
+
+ //Contains the thumbnail shown in teh details view.
+ HbLabel *mImageBackGround;
+
//Contains the thumbnail shown in teh details view.
HbLabel *mDetailsIcon;
+
+ //contains the view instance
+ HbView *mView;
//Contains the favourite icon which adds or removes the image to favourite folder
GlxDetailsIcon *mFavIcon;
-
+
//The media Model to acess the attributes; not owned,dont delete.
- QAbstractItemModel *mModel;
-
+ QAbstractItemModel *mModel;
+
//The media Model to acess the attributes whether image is in favourite folder or not;owned by this view
- GlxFavMediaModel *mFavModel;
-
+ GlxFavMediaModel *mFavModel;
+
//The reference to the Main Window
HbMainWindow *mWindow;
-
+
int mSelIndex;
-
- //Document Loader
+
+ //custom Document Loader to load the details view
GlxDetailsViewDocLoader *mDocLoader;
-
- //Shows the Images
- GlxDetailsTextEdit *mImageName;
-
- //Shows the descriptions
- GlxDetailsTextEdit *mDescriptions;
-
- //Shows the Date
- HbLabel *mDateLabel;
-
- //Shows the size of the image
- HbLabel *mSizeLabel;
-
- //Shows the time
- HbLabel *mTimeLabel;
-
+
+ //Contains the disabled favourite icon
HbIcon mFavIconEnabled;
+
+ //Contains the enabled favourite icon
HbIcon mFavIconDisabled;
-};
+
+ //Contains the List view
+ HbListView *mListView;
+
+ //Contains the List model
+ GlxDetailsViewModelWrapper *mListModel;
+
+ //holds the share button
+ HbPushButton *mShareButton;
+ };
#endif //GLXDETAILSVIEW_H
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/ui/views/detailsview/inc/glxdetailsviewitemprototype.h Fri Sep 17 08:29:24 2010 +0300
@@ -0,0 +1,116 @@
+/*
+ * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+ * All rights reserved.
+ * This component and the accompanying materials are made available
+ * under the terms of "Eclipse Public License v1.0"
+ * which accompanies this distribution, and is available
+ * at the URL "http://www.eclipse.org/legal/epl-v10.html".
+ *
+ * Initial Contributors:
+ * Nokia Corporation - initial contribution.
+ *
+ * Contributors:
+ *
+ * Description: ?Description
+ *
+ */
+
+#ifndef GLXDETAILSVIEWITEMPROTOTYPE_H
+#define GLXDETAILSVIEWITEMPROTOTYPE_H
+
+//Includes
+#include <hblistviewitem.h>
+
+//Orbit/Qt forward declartion
+class HbLabel;
+
+//User Defined forward declartion
+class GlxDetailsTextEdit;
+
+/**
+ * Class Description
+ * This is Custom widget class to create custom widgets in the list widget of the details view
+ */
+class GlxDetailsViewItemProtoType : public HbListViewItem
+ {
+Q_OBJECT
+
+public:
+ /*
+ * The Enum here corresponds to the the custom widget's indexes occuring in the List Widget
+ */
+ enum WidgetIndex
+ {
+ widgetNameIndex = 0,
+ widgetDateIndex,
+ widgetTimeIndex,
+ widgetSizeIndex,
+ widgetDescriptionIndex
+ };
+
+ /*
+ * Constructor
+ * @param - parent of this widget
+ */
+ GlxDetailsViewItemProtoType(QGraphicsItem* parent = 0);
+
+ /*
+ * Destructor
+ */
+ virtual ~GlxDetailsViewItemProtoType();
+
+ /**
+ * createItem()
+ * From HbAbstractViewItem
+ * Creates a new item.
+ */
+ HbAbstractViewItem* createItem();
+
+ /**
+ * updateChildItems()
+ * From HbAbstractViewItem
+ * Creates the custom widget corresponding to the widget index retrived through the model
+ */
+ void updateChildItems();
+
+private slots:
+
+ /**
+ * forwardSignalsToView()
+ * This slot is called when the rename or description has to be changed
+ */
+ void forwardSignalsToView();
+
+ /**
+ * updateWidgetValues()
+ * This slot is called when there is a change in the model data
+ */
+ void updateWidgetValues();
+
+signals:
+
+ /**
+ * signalFromCustomWidget : This signal is emitted to the details view, to update or launch dialogs
+ * like description field editing or renaming of the image file name
+ * @param - row , specifies the widget index in the list widget
+ */
+ void signalFromCustomWidget(int row);
+
+private:
+ //Image Name Editor:To display the Image Name
+ GlxDetailsTextEdit *mImageNameEditor;
+
+ //Description Editor:To display the Description/comments of the image
+ GlxDetailsTextEdit *mDescriptionEditor;
+
+ //Displays the Date of the image
+ HbLabel *mDateLabel;
+
+ //Displays the time of the image
+ HbLabel *mTimeLabel;
+
+ //Displays the size of the image
+ HbLabel *mSizeLabel;
+ };
+
+#endif // GLXDETAILSVIEWITEMPROTOTYPE_H
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/ui/views/detailsview/inc/glxdetailsviewmodelwrapper.h Fri Sep 17 08:29:24 2010 +0300
@@ -0,0 +1,101 @@
+/*
+ * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+ * All rights reserved.
+ * This component and the accompanying materials are made available
+ * under the terms of "Eclipse Public License v1.0"
+ * which accompanies this distribution, and is available
+ * at the URL "http://www.eclipse.org/legal/epl-v10.html".
+ *
+ * Initial Contributors:
+ * Nokia Corporation - initial contribution.
+ *
+ * Contributors:
+ *
+ * Description: ?Description
+ *
+ */
+
+#ifndef GLXDETAILSVIEWMODELWRAPPER
+#define GLXDETAILSVIEWMODELWRAPPER
+
+//Includes
+#include <QAbstractItemModel>
+
+/**
+ * Class Description
+ * This is Wrapper class,which access the model [GlxMediaModel] for the widgets created in the details view
+ * Here it specifies the no:of custom widgets to be created in the list view for the details view
+ */
+
+class GlxDetailsViewModelWrapper : public QAbstractItemModel
+ {
+Q_OBJECT
+public:
+
+ /**
+ * Constructor
+ * @param - QAbstractItemModel object, this object is passed from the details view, while creating this
+ * class object
+ */
+ GlxDetailsViewModelWrapper(QAbstractItemModel *model);
+
+ /**
+ * Destructor
+ */
+ ~GlxDetailsViewModelWrapper();
+
+ /**
+ * From QAbstractItemModel
+ * This Function specifies the no:of custom widgets to be created as well
+ * the no:of custom widgets present.
+ */
+ int rowCount(const QModelIndex &parent = QModelIndex()) const;
+
+ /**
+ * From QAbstractItemModel
+ */
+ int columnCount(const QModelIndex &parent = QModelIndex()) const;
+
+ /**
+ * From QAbstractItemModel
+ */
+ QModelIndex parent(const QModelIndex &child) const;
+
+ /**
+ * From QAbstractItemModel
+ * This Function returns the data fetched from the Model corresponding to the role passed
+ */
+ QVariant data(const QModelIndex &index, int role) const;
+
+ /**
+ * From QAbstractItemModel
+ * This Function verifies if the index passed is valid or not.
+ */
+ QModelIndex index(int row, int column, const QModelIndex &parent =
+ QModelIndex()) const;
+
+ /**
+ * This Function Emits the Signal for the Custom widgets to refresh thier data shown
+ */
+ void refreshCustomWidget();
+
+private:
+
+ /**
+ * This Function returns the size in standard form like Bytes,KB,MB,GB
+ * @param :size , specified in Bytes
+ */
+ QString sizeinStrings(int size) const;
+
+signals:
+ /*
+ * This Signal Specifies Custom widgets to refresh thier data shown as there is change in data in the model
+ */
+ void updateCustomWidgets();
+private:
+
+ //This variable is initialised with model passed by the view, while creating this class object
+ QAbstractItemModel *mModel;
+ };
+
+#endif //GLXDETAILSVIEWMODELWRAPPER_H
--- a/ui/views/detailsview/src/glxdetailsview.cpp Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/views/detailsview/src/glxdetailsview.cpp Fri Sep 17 08:29:24 2010 +0300
@@ -5,7 +5,6 @@
* 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.
*
@@ -15,76 +14,46 @@
*
*/
-//--------------------------------------------------------------------------------------------------------------------------------------------
-
+//Includes Qt
#include <QModelIndex>
-#include <qdatetime.h>
#include <QDebug>
-#include <HbAnchorLayout.h>
-//--------------------------------------------------------------------------------------------------------------------------------------------
+//Includes Orbit
#include <hblabel.h>
-#include <hbdataform.h>
#include <hbinstance.h>
-#include <hbiconitem.h>
-#include <hbframeitem.h>
+#include <hblistview.h>
#include <hbpushbutton.h>
-#include <hbdataformmodel.h>
-#include <hbdocumentloader.h>
-#include <hbdataformmodelitem.h>
-#include <hbdataformviewitem.h>
#include <hbparameterlengthlimiter.h>
-//--------------------------------------------------------------------------------------------------------------------------------------------
-#include "glxviewids.h"
+
+//User Includes
+#include "glxlog.h" //contains the declaration of GLX LOGS
+#include "glxviewids.h" //contains view ids used here
#include "glxicondefs.h" //Contains the icon names/Ids
-#include "glxmodelparm.h"
-#include "glxmediamodel.h"
-#include "glxdetailsview.h"
-#include "glxfavmediamodel.h"
-#include "glxdocloaderdefs.h"
-#include <glxcommandhandlers.hrh>
-#include "glxlocalisationstrings.h"
-#include "glxdetailstextedit.h"
-#include "glxdetailsicon.h"
-
-
-#include "glxviewdocloader.h"
-#include <glxcollectionpluginalbums.hrh>
-
-#include "glxlog.h"
-#include "glxloggerenabler.h"
-
-
+#include "glxmodelparm.h" //contains the declaration of GlxModelParm used to check for favourites
+#include "shareuidialog.h" //contains the declaration for share ui/send dialogs
+#include "glxdetailsicon.h" //contains the declaration of glxdetailsicon to show the image
+#include "glxdetailsview.h" //contains the declaration of this file/class
+#include "glxviewdocloader.h" //contains the declaration of GlxDetailsViewDocLoader
+#include "glxfavmediamodel.h" //contains the declaration of GlxFavMediaModel,used to check for favourites
+#include "glxdocloaderdefs.h" //contains the #define/constants of docml constants
+#include "glxcommandhandlers.hrh" //contains the declaration of rename and description command
+#include "glxlocalisationstrings.h" //contains the localisation strings
+#include "glxdetailsviewmodelwrapper.h" //contains the model wrapper for the media model of list widget
+#include "glxdetailsviewitemprototype.h" //contains the custom widgets prototype decalaration
+#include "glxcollectionpluginalbums.hrh" //contains declaration of KGlxCollectionPluginFavoritesAlbumId
#include "OstTraceDefinitions.h"
#ifdef OST_TRACE_COMPILER_IN_USE
#include "glxdetailsviewTraces.h"
#endif
-//SIZE OF THE IMAGE , LAYOUTS TEAM NEED TO GIVER THE SIZE IN UNITS
-#define GLX_IMAGE_WIDTH 333
-#define GLX_IMAGE_HEIGHT 215
-const int KBytesInKB = 1024;
-const int KBytesInMB = 1024 * 1024;
-const int KBytesInGB = 1024 * 1024 * 1024;
-
//--------------------------------------------------------------------------------------------------------------------------------------------
//GlxDetailsView
//--------------------------------------------------------------------------------------------------------------------------------------------
-GlxDetailsView::GlxDetailsView(HbMainWindow *window)
- : GlxView( GLX_DETAILSVIEW_ID ),
- mDetailsIcon( NULL ),
- mFavIcon( NULL ),
- mModel( NULL ),
- mFavModel( NULL ),
- mWindow( window ),
- mSelIndex( 0 ),
- mDocLoader( NULL ),
- mImageName( NULL ),
- mDescriptions( NULL ),
- mDateLabel( NULL ),
- mSizeLabel( NULL ),
- mTimeLabel( NULL )
+GlxDetailsView::GlxDetailsView(HbMainWindow *window) :
+ GlxView(GLX_DETAILSVIEW_ID), mImageBackGround(NULL), mDetailsIcon(NULL), mView(NULL), mFavIcon(
+ NULL), mModel(NULL), mFavModel(NULL), mWindow(window), mSelIndex(0), mDocLoader(NULL),
+ mListView(NULL), mListModel(NULL), mShareButton(NULL)
{
GLX_LOG_INFO("GlxDetailsView::GlxDetailsView");
OstTraceFunctionEntry0( GLXDETAILSVIEW_GLXDETAILSVIEW_ENTRY );
@@ -98,161 +67,203 @@
GlxDetailsView::~GlxDetailsView()
{
OstTrace0( TRACE_IMPORTANT, GLXDETAILSVIEW_GLXDETAILSVIEW, "GlxDetailsView::~GlxDetailsView" );
-
+
+ delete mDetailsIcon;
+ mDetailsIcon = NULL;
+
+ delete mImageBackGround;
+ mImageBackGround = NULL;
+
+ delete mView;
+ mView = NULL;
+
+ mDocLoader->reset();
delete mDocLoader;
- mDocLoader = NULL;
+ mDocLoader = NULL;
+
+}
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//initializeView
+//--------------------------------------------------------------------------------------------------------------------------------------------
+void GlxDetailsView::initializeView(QAbstractItemModel *model, GlxView *preView)
+{
+ Q_UNUSED( preView )
+ OstTraceFunctionEntry0( GLXDETAILSVIEW_INITIALIZEVIEW_ENTRY );
+ bool loaded = false;
+
+ if (!mDocLoader) {
+ mDocLoader = new GlxDetailsViewDocLoader();
+ }
+ mDocLoader->load(GLX_DETAILSVIEW_DOCMLPATH, &loaded);
+
+ if (!mView) {
+
+ mView = static_cast<HbView*> (mDocLoader->findWidget(GLX_DETAILSVIEW_VIEW));
+ mImageBackGround = static_cast<HbLabel*> (mDocLoader->findWidget(
+ GLX_DETAILSVIEW_IMGBCKGROUND));
+ mDetailsIcon = static_cast<HbLabel*> (mDocLoader->findWidget(GLX_DETAILSVIEW_IMAGE));
+ }
+
+ mFavIcon = static_cast<GlxDetailsIcon*> (mDocLoader->findWidget(GLX_DETAILSVIEW_FAVICON));
+
+ mShareButton = static_cast<HbPushButton*> (mDocLoader->findWidget(GLX_DETAILSVIEW_SHAREBUTTON));
+
+ mListView = static_cast<HbListView*> (mDocLoader->findWidget(GLX_DETAILSVIEW_LISTWIDGET));
+
+ //Set the Model
+ mModel = model;
+
+ //Set the Layout Correspondingly.
+ updateLayout(mWindow->orientation());
+
+ GlxDetailsViewItemProtoType *prototype = new GlxDetailsViewItemProtoType(mListView);
+ mListView->setItemPrototype(prototype);
+ mListModel = new GlxDetailsViewModelWrapper(mModel);
+ mListView->setModel(mListModel);
+
+ mImageBackGround->show();
+ mDetailsIcon->show();
- cleanUp();
+ setWidget(mView);
+
+
+
+ OstTraceFunctionExit0( GLXDETAILSVIEW_INITIALIZEVIEW_EXIT );
}
//--------------------------------------------------------------------------------------------------------------------------------------------
//activate
//--------------------------------------------------------------------------------------------------------------------------------------------
void GlxDetailsView::activate()
- {
+{
OstTraceFunctionEntry0( GLXDETAILSVIEW_ACTIVATE_ENTRY );
- //create and set the Favourite Model
- if(getSubState() != IMAGEVIEWER_DETAIL_S) {
- setFavModel();
+
+ mFavIconEnabled = HbIcon(GLXICON_ADD_TO_FAV);
+ mFavIconDisabled = HbIcon(GLXICON_REMOVE_FAV);
+
+ if (getSubState() != IMAGEVIEWER_DETAIL_S) {
+ //set the favorite model to check if this image is in favourites folder or not
+ setFavModel();
+ mFavIcon->setItemIcon(mFavIconDisabled);
}
-
- //fill the data
- FillDetails();
-
- //Initialze the Model
- initializeNewModel();
-
- //make the connections
- setConnections();
-
- //Set context mode to fetch descriptions
- mModel->setData(QModelIndex(), (int) GlxContextComment, GlxContextRole);
-
- OstTraceFunctionExit0( GLXDETAILSVIEW_ACTIVATE_EXIT );
+ else {
+ mFavIcon->hide();
}
-//--------------------------------------------------------------------------------------------------------------------------------------------
-//initializeView
-//--------------------------------------------------------------------------------------------------------------------------------------------
-void GlxDetailsView::initializeView( QAbstractItemModel *model, GlxView *preView)
-{
- Q_UNUSED( preView )
- OstTraceFunctionEntry0( GLXDETAILSVIEW_INITIALIZEVIEW_ENTRY );
- bool loaded = false;
+ //Initialze the Model
+ initializeNewModel();
- if(!mDocLoader)
- {
- mDocLoader = new GlxDetailsViewDocLoader();
- }
-
- //Load the docml
- mDocLoader->load(GLX_DETAILSVIEW_DOCMLPATH, &loaded);
-
- HbView *mView = static_cast<HbView*> (mDocLoader->findWidget(
- GLX_DETAILSVIEW_VIEW));
-
- mDetailsIcon = static_cast<HbLabel*> (mDocLoader->findWidget(
- GLX_DETAILSVIEW_IMAGE));
- mFavIcon = static_cast<GlxDetailsIcon*> (mDocLoader->findWidget(
- GLX_DETAILSVIEW_FAVICON));
-
+ //make the connections
+ setConnections();
- mDescriptions = static_cast<GlxDetailsTextEdit*> (mDocLoader->findWidget(
- GLX_DETAILSVIEW_DESCRPTIONTEXT));
-
- mImageName = static_cast<GlxDetailsTextEdit*> (mDocLoader->findWidget(
- GLX_DETAILSVIEW_IMGNAME));
-
- mDateLabel = static_cast<HbLabel*> (mDocLoader->findWidget(
- GLX_DETAILSVIEW_DATETEXT));
-
- mTimeLabel = static_cast<HbLabel*> (mDocLoader->findWidget(
- GLX_DETAILSVIEW_TIMETEXT));
-
- mSizeLabel = static_cast<HbLabel*> (mDocLoader->findWidget(
- GLX_DETAILSVIEW_SIZETEXT));
+ //Set context mode to fetch descriptions
+ mModel->setData(QModelIndex(), (int) GlxContextComment, GlxContextRole);
- mFavIconEnabled = HbIcon(GLXICON_ADD_TO_FAV);
- mFavIconDisabled = HbIcon(GLXICON_REMOVE_FAV);
-
- //Set the Model
- mModel = model;
- if(getSubState() == IMAGEVIEWER_DETAIL_S) {
- mFavIcon->hide();
- }
- else
- {
- mFavIcon->setItemIcon(HbIcon(GLXICON_REMOVE_FAV));
- }
-
- setWidget(mView);
-
- //Set the Layout Correspondingly.
- updateLayout(mWindow->orientation());
-
- OstTraceFunctionExit0( GLXDETAILSVIEW_INITIALIZEVIEW_EXIT );
- }
+ OstTraceFunctionExit0( GLXDETAILSVIEW_ACTIVATE_EXIT );
+}
//--------------------------------------------------------------------------------------------------------------------------------------------
//resetView
//--------------------------------------------------------------------------------------------------------------------------------------------
void GlxDetailsView::resetView()
- {
+{
GLX_LOG_INFO("GlxDetailsView::resetView");
+
+ //Remove the context created to update details
+ if (mModel) {
+ mModel->setData(QModelIndex(), (int) GlxContextComment, GlxRemoveContextRole);
+ }
+
+ //clear the connections
+ clearConnections();
+ //clear the model
+ clearCurrentModel();
+
+ delete mFavIcon;
+ mFavIcon = NULL;
+
+ delete mFavModel;
+ mFavModel = NULL;
+
+ delete mShareButton;
+ mShareButton = NULL;
+
OstTrace0( TRACE_NORMAL, GLXDETAILSVIEW_RESETVIEW, "GlxDetailsView::resetView" );
- }
+}
//--------------------------------------------------------------------------------------------------------------------------------------------
//deActivate
//--------------------------------------------------------------------------------------------------------------------------------------------
void GlxDetailsView::deActivate()
- {
+{
GLX_LOG_INFO("GlxDetailsView::deActivate");
OstTraceFunctionEntry0( GLXDETAILSVIEW_DEACTIVATE_ENTRY );
- //Remove the context created to update details
- mModel->setData(QModelIndex(), (int) GlxContextComment,
- GlxRemoveContextRole);
+ mImageBackGround->hide();
+ mDetailsIcon->hide();
cleanUp();
-
+
OstTraceFunctionExit0( GLXDETAILSVIEW_DEACTIVATE_EXIT );
+}
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//setModel
+//--------------------------------------------------------------------------------------------------------------------------------------------
+void GlxDetailsView::setModel(QAbstractItemModel *model)
+{
+ OstTrace0( TRACE_NORMAL, GLXDETAILSVIEW_SETMODEL, "GlxDetailsView::setModel" );
+ if (mModel == model) {
+ return;
}
+ clearCurrentModel();
+ mModel = model;
+ initializeNewModel();
+}
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//getAnimationItem
+//--------------------------------------------------------------------------------------------------------------------------------------------
+QGraphicsItem * GlxDetailsView::getAnimationItem(GlxEffect transtionEffect)
+{
+ OstTrace0( TRACE_NORMAL, GLXDETAILSVIEW_GETANIMATIONITEM, "GlxDetailsView::getAnimationItem" );
+ if (transtionEffect == FULLSCREEN_TO_DETAIL || transtionEffect == DETAIL_TO_FULLSCREEN) {
+ return this;
+ }
+ return NULL;
+}
//--------------------------------------------------------------------------------------------------------------------------------------------
//cleanUp
//--------------------------------------------------------------------------------------------------------------------------------------------
void GlxDetailsView::cleanUp()
- {
- qDebug("GlxDetailsView::cleanUp Enter");
- //clear the connections
- clearConnections();
-
- clearCurrentModel();
+{
+ delete mListModel;
+ mListModel = NULL;
+
+ delete mListView;
+ mListView = NULL;
- delete mFavModel;
- mFavModel = NULL;
-
- delete mFavIcon;
- mFavIcon = NULL;
+ takeWidget();
+}
- delete mDetailsIcon;
- mDetailsIcon = NULL;
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//showImage
+//--------------------------------------------------------------------------------------------------------------------------------------------
+void GlxDetailsView::showImage()
+{
+ QVariant variant = mModel->data(mModel->index(0, 0), GlxFocusIndexRole);
+ if (variant.isValid() && variant.canConvert<int> ()) {
+ mSelIndex = variant.value<int> ();
}
-//--------------------------------------------------------------------------------------------------------------------------------------------
-//setModel
-//--------------------------------------------------------------------------------------------------------------------------------------------
-void GlxDetailsView::setModel(QAbstractItemModel *model)
- {
- OstTrace0( TRACE_NORMAL, GLXDETAILSVIEW_SETMODEL, "GlxDetailsView::setModel" );
- if (mModel == model)
- {
- return;
- }
- clearCurrentModel();
- mModel = model;
- initializeNewModel();
+ variant = mModel->data(mModel->index(mSelIndex, 0), GlxFsImageRole);
+
+ if (variant.isValid() && variant.canConvert<HbIcon> ()) {
+ mDetailsIcon->setIcon(variant.value<HbIcon> ());
+ mImageBackGround->setIcon(HbIcon(":/data/details.svg"));
}
+}
//--------------------------------------------------------------------------------------------------------------------------------------------
//setFavModel
@@ -260,9 +271,8 @@
void GlxDetailsView::setFavModel()
{
GlxModelParm modelParm;
- QString imagePath = (mModel->data(mModel->index(mModel->data(
- mModel->index(0, 0), GlxFocusIndexRole).value<int> (), 0),
- GlxUriRole)).value<QString> ();
+ QString imagePath = (mModel->data(mModel->index(mModel->data(mModel->index(0, 0),
+ GlxFocusIndexRole).value<int> (), 0), GlxUriRole)).value<QString> ();
if (mFavModel == NULL) {
modelParm.setCollection(KGlxCollectionPluginFavoritesAlbumId);
@@ -278,11 +288,12 @@
void GlxDetailsView::initializeNewModel()
{
OstTrace0( TRACE_NORMAL, GLXDETAILSVIEW_INITIALIZENEWMODEL, "GlxDetailsView::initializeNewModel" );
-
+
if (mModel) {
- connect( mModel, SIGNAL(rowsRemoved(QModelIndex,int,int)), this, SLOT(rowsRemoved(QModelIndex,int,int)));
- connect( mModel, SIGNAL( updateDetailsView() ), this, SLOT( FillDetails() ));
- connect( mModel, SIGNAL( destroyed() ), this, SLOT( modelDestroyed() ) );
+ connect(mModel, SIGNAL(rowsRemoved(QModelIndex,int,int)), this,
+ SLOT(rowsRemoved(QModelIndex,int,int)));
+ connect(mModel, SIGNAL( updateDetailsView() ), this, SLOT( refreshDetailsview() ));
+ connect(mModel, SIGNAL( destroyed() ), this, SLOT( modelDestroyed() ));
}
}
@@ -294,9 +305,10 @@
OstTrace0( TRACE_NORMAL, GLXDETAILSVIEW_CLEARCURRENTMODEL, "GlxDetailsView::clearCurrentModel" );
if (mModel) {
- disconnect(mModel, SIGNAL(rowsRemoved(QModelIndex,int,int)), this, SLOT(rowsRemoved(QModelIndex,int,int)));
- disconnect(mModel, SIGNAL( updateDetailsView() ), this, SLOT( FillDetails() ));
- disconnect( mModel, SIGNAL( destroyed() ), this, SLOT( modelDestroyed() ) );
+ disconnect(mModel, SIGNAL(rowsRemoved(QModelIndex,int,int)), this,
+ SLOT(rowsRemoved(QModelIndex,int,int)));
+ disconnect(mModel, SIGNAL( updateDetailsView() ), this, SLOT( refreshDetailsview() ));
+ disconnect(mModel, SIGNAL( destroyed() ), this, SLOT( modelDestroyed() ));
mModel = NULL;
}
}
@@ -306,17 +318,25 @@
//--------------------------------------------------------------------------------------------------------------------------------------------
void GlxDetailsView::setConnections()
{
+
connect(mWindow, SIGNAL(orientationChanged(Qt::Orientation)), this,
- SLOT(updateLayout(Qt::Orientation)));
-
- if(getSubState() != IMAGEVIEWER_DETAIL_S) {
- connect(mFavIcon, SIGNAL(updateFavourites()), this, SLOT(updateFavourites()));
-
- connect(mDescriptions, SIGNAL(labelPressed()), this,
- SLOT(UpdateDescription()));
-
- connect(mFavModel, SIGNAL( dataChanged(QModelIndex,QModelIndex) ),
- this, SLOT( dataChanged(QModelIndex,QModelIndex) ));
+ SLOT(updateLayout(Qt::Orientation)));
+
+ connect(mShareButton, SIGNAL(clicked()), this, SLOT(launchShareDialog()));
+
+ if (getSubState() != IMAGEVIEWER_DETAIL_S) {
+
+ connect(mFavIcon, SIGNAL(updateFavourites()), this, SLOT(updateFavourites()));
+
+ connect(mFavModel, SIGNAL( dataChanged(QModelIndex,QModelIndex) ), this,
+ SLOT( dataChanged(QModelIndex,QModelIndex) ));
+
+ //Connect the signals only in case of details view launched from photos app
+ // and dont connect the signals if the details view is launched from MMS,File Manager
+ // or other apps.
+ connect((mListView->itemPrototypes()).at(0), SIGNAL(signalFromCustomWidget(int)), this,
+ SLOT(triggerTheCommand(int)));
+
}
}
@@ -325,318 +345,158 @@
//--------------------------------------------------------------------------------------------------------------------------------------------
void GlxDetailsView::clearConnections()
{
-
- qDebug("GlxDetailsView:: clearConnections");
+ GLX_LOG_INFO("GlxDetailsView::clearConnections ");
+
disconnect(mWindow, SIGNAL(orientationChanged(Qt::Orientation)), this,
- SLOT(updateLayout(Qt::Orientation)));
-
- if(mModel && getSubState() != IMAGEVIEWER_DETAIL_S) {
- disconnect(mFavIcon, SIGNAL(updateFavourites()), this, SLOT(updateFavourites()));
- disconnect(mDescriptions, SIGNAL(labelPressed()), this,
- SLOT(UpdateDescription()));
- disconnect(mFavModel, SIGNAL( dataChanged(QModelIndex,QModelIndex) ),
- this, SLOT( dataChanged(QModelIndex,QModelIndex) ));
+ SLOT(updateLayout(Qt::Orientation)));
+
+ if (mModel && getSubState() != IMAGEVIEWER_DETAIL_S) {
+
+ disconnect((mListView->itemPrototypes()).at(0), SIGNAL(signalFromCustomWidget(int)), this,
+ SLOT(triggerTheCommand(int)));
+
+ disconnect(mShareButton, SIGNAL(released()), this, SLOT(launchShareDialog()));
+
+ disconnect(mFavIcon, SIGNAL(updateFavourites()), this, SLOT(updateFavourites()));
+
+ disconnect(mFavModel, SIGNAL( dataChanged(QModelIndex,QModelIndex) ), this,
+ SLOT( dataChanged(QModelIndex,QModelIndex) ));
}
}
//--------------------------------------------------------------------------------------------------------------------------------------------
-//getAnimationItem
+//getSubState
//--------------------------------------------------------------------------------------------------------------------------------------------
-QGraphicsItem * GlxDetailsView::getAnimationItem(GlxEffect transtionEffect)
- {
- OstTrace0( TRACE_NORMAL, GLXDETAILSVIEW_GETANIMATIONITEM, "GlxDetailsView::getAnimationItem" );
- if (transtionEffect == FULLSCREEN_TO_DETAIL || transtionEffect
- == DETAIL_TO_FULLSCREEN)
- {
- return this;
+int GlxDetailsView::getSubState()
+{
+ int substate = NO_DETAIL_S;
+
+ if (mModel) {
+ QVariant variant = mModel->data(mModel->index(0, 0), GlxSubStateRole);
+
+ if (variant.isValid() && variant.canConvert<int> ()) {
+ substate = variant.value<int> ();
}
- return NULL;
}
+ return substate;
+}
//--------------------------------------------------------------------------------------------------------------------------------------------
//updateLayout
//--------------------------------------------------------------------------------------------------------------------------------------------
void GlxDetailsView::updateLayout(Qt::Orientation orient)
- {
- OstTrace1( TRACE_NORMAL, GLXDETAILSVIEW_UPDATELAYOUT, "GlxDetailsView::updateLayout;orient=%d", orient );
+{
GLX_LOG_INFO("GlxDetailsView::updateLayout ");
bool loaded = false;
QString section;
//Load the widgets accroding to the current Orientation
- if (orient == Qt::Horizontal)
- {
+ if (orient == Qt::Horizontal) {
section = GLX_DETAILSVIEW_LSSECTION;
- }
- else
- {
+ }
+ else {
section = GLX_DETAILSVIEW_PTSECTION;
- }
+ }
//Load the Sections
mDocLoader->load(GLX_DETAILSVIEW_DOCMLPATH, section, &loaded);
showImage();
- //This is just to over come the bug in docloader,once that is fixed we can remove the
- //below lines of code
- FillDetails();
-
+
GLX_LOG_INFO1("GlxDetailsView::updateLayout =%d\n",loaded);
- }
+}
//--------------------------------------------------------------------------------------------------------------------------------------------
//rowsRemoved
//--------------------------------------------------------------------------------------------------------------------------------------------
-void GlxDetailsView::rowsRemoved(const QModelIndex &parent, int start,
- int end)
- {
+void GlxDetailsView::rowsRemoved(const QModelIndex &parent, int start, int end)
+{
Q_UNUSED(parent);
Q_UNUSED(start);
Q_UNUSED(end);
OstTrace0( TRACE_NORMAL, GLXDETAILSVIEW_ROWSREMOVED, "GlxDetailsView::rowsRemoved" );
- if (mModel->rowCount() <= 0)
- {
+ if (mModel->rowCount() <= 0) {
return emit actionTriggered(EGlxCmdEmptyData);
- }
-
- if (start <= mSelIndex && end >= mSelIndex)
- {
- return emit actionTriggered(EGlxCmdBack);
- }
}
+ if (start <= mSelIndex && end >= mSelIndex) {
+ return emit actionTriggered(EGlxCmdBack);
+ }
+}
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//modelDestroyed
+//--------------------------------------------------------------------------------------------------------------------------------------------
void GlxDetailsView::modelDestroyed()
{
mModel = NULL;
}
//--------------------------------------------------------------------------------------------------------------------------------------------
-//FillData
-//--------------------------------------------------------------------------------------------------------------------------------------------
-void GlxDetailsView::FillDetails()
- {
- OstTrace0( TRACE_NORMAL, GLXDETAILSVIEW_SETFORMDATA, "GlxDetailsView::setFormData" );
-
- qDebug("GlxDetailsView::FillDetails");
- //Call to set the Image Name
- setImageName();
-
- //Call to set the description
- setDesc();
-
- //Call to set the date in the from
- setDate();
-
- //Call to set the time
- setTime();
-
- //Call to set the size
- setSize();
-
- }
-//--------------------------------------------------------------------------------------------------------------------------------------------
-//showImage
-//--------------------------------------------------------------------------------------------------------------------------------------------
-void GlxDetailsView::showImage()
- {
- OstTrace0( TRACE_NORMAL, GLXDETAILSVIEW_SHOWIMAGE, "GlxDetailsView::showImage" );
-
- QVariant variant = mModel->data(mModel->index(0, 0), GlxFocusIndexRole);
- if (variant.isValid() && variant.canConvert<int> ())
- {
- mSelIndex = variant.value<int> ();
- }
-
- variant = mModel->data(mModel->index(mSelIndex, 0), GlxFsImageRole);
-
- if (variant.isValid() && variant.canConvert<HbIcon> ())
- {
- mDetailsIcon->setIcon(variant.value<HbIcon> ());
- }
- }
-
-//--------------------------------------------------------------------------------------------------------------------------------------------
-//setImageName
-//--------------------------------------------------------------------------------------------------------------------------------------------
-void GlxDetailsView::setImageName()
- {
- OstTraceFunctionEntry0( GLXDETAILSVIEW_SETIMAGENAME_ENTRY );
- QString imagePath = (mModel->data(mModel->index(mModel->data(
- mModel->index(0, 0), GlxFocusIndexRole).value<int> (), 0),
- GlxUriRole)).value<QString> ();
- QString imageName = imagePath.section('\\', -1);
-
- mImageName->setItemText(imageName);
- OstTraceFunctionExit0( GLXDETAILSVIEW_SETIMAGENAME_EXIT );
- }
-
-//--------------------------------------------------------------------------------------------------------------------------------------------
-//setImageName
-//--------------------------------------------------------------------------------------------------------------------------------------------
-void GlxDetailsView::setDesc()
- {
-
- //This is a hack , Initialize to some characters and then set the text
- //as of know if the description text is Null , we cant see the Description edit box
- //The issue has been informed to Application designer team.
- mDescriptions->setItemText("a");
- QString description = (mModel->data(mModel->index(mModel->data(
- mModel->index(0, 0), GlxFocusIndexRole).value<int> (), 0),
- GlxDescRole)).value<QString> ();
- mDescriptions->setItemText(description);
- }
-
-//--------------------------------------------------------------------------------------------------------------------------------------------
-//setDate
-//--------------------------------------------------------------------------------------------------------------------------------------------
-void GlxDetailsView::setDate()
- {
- OstTraceFunctionEntry0( GLXDETAILSVIEW_SETDATE_ENTRY );
-
- QString datestring;
- QString dateFormat("dd.MM.yyyy");
- QDate date = (mModel->data(mModel->index(mModel->data(
- mModel->index(0, 0), GlxFocusIndexRole).value<int> (), 0),
- GlxDateRole)).value<QDate> ();
-
- if (date.isNull() == FALSE)
- {
- OstTrace0( TRACE_NORMAL, GLXDETAILSVIEW_SETDATE, "GlxDetailsView::setDate is not NULL" );
- QString dateStringValue = date.toString(dateFormat);
- datestring = hbTrId(GLX_DETAILS_DATE).arg(dateStringValue);
- }
-
- mDateLabel->setPlainText(datestring);
-
- OstTraceFunctionExit0( GLXDETAILSVIEW_SETDATE_EXIT );
- }
-
-//--------------------------------------------------------------------------------------------------------------------------------------------
-//setTime
-//--------------------------------------------------------------------------------------------------------------------------------------------
-void GlxDetailsView::setTime()
- {
- QString timestring;
- QString timeFormat("h:m ap");
- QTime timevalue = (mModel->data(mModel->index(mModel->data(mModel->index(
- 0, 0), GlxFocusIndexRole).value<int> (), 0), GlxTimeRole)).value<
- QTime> ();
-
- if (timevalue.isNull() == FALSE)
- {
- QString timeStringValue = timevalue.toString(timeFormat);
- timestring = hbTrId(GLX_DETAILS_TIME).arg(timeStringValue);
- }
- mTimeLabel->setPlainText(timestring);
- }
-
-//--------------------------------------------------------------------------------------------------------------------------------------------
-//setSize
-//--------------------------------------------------------------------------------------------------------------------------------------------
-void GlxDetailsView::setSize()
- {
- int size = 0;
- size = (mModel->data(mModel->index(mModel->data(mModel->index(0, 0),
- GlxFocusIndexRole).value<int> (), 0), GlxSizeRole)).value<int> ();
-
- QString sizeString;
- sizeString = sizeinStrings(size);
- mSizeLabel->setPlainText(sizeString);
-
- }
-
-//--------------------------------------------------------------------------------------------------------------------------------------------
//dataChanged
//--------------------------------------------------------------------------------------------------------------------------------------------
void GlxDetailsView::dataChanged(QModelIndex startIndex, QModelIndex endIndex)
- {
+{
Q_UNUSED(endIndex);
QVariant variant = mFavModel->data(startIndex, GlxFavorites);
- if (variant.isValid() && variant.canConvert<bool> ())
- {
- if (variant.value<bool> ())
- {
+ if (variant.isValid() && variant.canConvert<bool> ()) {
+ if (variant.value<bool> ()) {
mFavIcon->setItemIcon(mFavIconEnabled);
- }
- else
- {
+ }
+ else {
mFavIcon->setItemIcon(mFavIconDisabled);
- }
}
}
+}
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//refreshDetailsview
+//--------------------------------------------------------------------------------------------------------------------------------------------
+void GlxDetailsView::refreshDetailsview()
+{
+ GLX_LOG_INFO("GlxDetailsView::refreshDetailsview ");
+ mListModel->refreshCustomWidget();
+}
//--------------------------------------------------------------------------------------------------------------------------------------------
-//UpdateDescription
+//triggerTheCommand
//--------------------------------------------------------------------------------------------------------------------------------------------
-void GlxDetailsView::UpdateDescription()
- {
- GLX_LOG_INFO("GlxDetailsView::UpdateDescription ");
- qDebug("GlxDetailsView::UpdateDescription");
- emit actionTriggered(EGlxCmdComment);
+void GlxDetailsView::triggerTheCommand(int row)
+{
+ GLX_LOG_INFO("GlxDetailsView::triggerTheCommand ");
+
+ if (row == GlxDetailsViewItemProtoType::widgetNameIndex) {
+ emit actionTriggered(EGlxCmdRenameFile);
}
+ else {
+ emit actionTriggered(EGlxCmdComment);
+ }
+}
//--------------------------------------------------------------------------------------------------------------------------------------------
//updateFavourites
//--------------------------------------------------------------------------------------------------------------------------------------------
void GlxDetailsView::updateFavourites()
- {
+{
QVariant variant = mFavModel->data(mFavModel->index(0, 0), GlxFavorites);
- if (variant.isValid() && variant.canConvert<bool> ())
- {
- if (variant.value<bool> ())
- {
+ if (variant.isValid() && variant.canConvert<bool> ()) {
+ if (variant.value<bool> ()) {
emit actionTriggered(EGlxCmdRemoveFromFav);
- }
- else
- {
+ }
+ else {
emit actionTriggered(EGlxCmdAddToFav);
- }
}
}
+}
//--------------------------------------------------------------------------------------------------------------------------------------------
-//sizeinStrings
+//launchShareDialog
//--------------------------------------------------------------------------------------------------------------------------------------------
-QString GlxDetailsView::sizeinStrings(int size)
- {
- QString sizeString;
- if (size >= KBytesInGB)
- {
- int gbSize = size / KBytesInGB; // Size in GB
- sizeString = HbParameterLengthLimiter(GLX_DETAILS_SIZE_GB, gbSize);
- }
- else if (size >= KBytesInMB)
- {
- int mbSize = size / KBytesInMB; // Size in MB
- sizeString = HbParameterLengthLimiter(GLX_DETAILS_SIZE_MB, mbSize);
- }
- else if (size >= KBytesInKB)
- {
- int kbSize = size / KBytesInKB; // Size in KB
- sizeString = HbParameterLengthLimiter(GLX_DETAILS_SIZE_KB, kbSize);
- }
- else
- {
- sizeString = HbParameterLengthLimiter(GLX_DETAILS_SIZE_BYTES, size);
- }
- return sizeString;
- }
+void GlxDetailsView::launchShareDialog()
+{
+ GLX_LOG_INFO("GlxDetailsView::launchShareDialog ");
+ emit actionTriggered(EGlxCmdSend);
+}
-//--------------------------------------------------------------------------------------------------------------------------------------------
-//getSubState
-//--------------------------------------------------------------------------------------------------------------------------------------------
-int GlxDetailsView::getSubState()
- {
- int substate = NO_DETAIL_S;
-
- if (mModel) {
- QVariant variant = mModel->data(mModel->index(0, 0), GlxSubStateRole);
-
- if (variant.isValid() && variant.canConvert<int> ()) {
- substate = variant.value<int> ();
- }
- }
- return substate;
- }
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/ui/views/detailsview/src/glxdetailsviewitemprototype.cpp Fri Sep 17 08:29:24 2010 +0300
@@ -0,0 +1,298 @@
+/*
+ * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+ * All rights reserved.
+ * This component and the accompanying materials are made available
+ * under the terms of "Eclipse Public License v1.0"
+ * which accompanies this distribution, and is available
+ * at the URL "http://www.eclipse.org/legal/epl-v10.html".
+ *
+ * Initial Contributors:
+ * Nokia Corporation - initial contribution.
+ *
+ * Contributors:
+ *
+ * Description: ?Description
+ *
+ */
+
+//Includes
+#include <QDebug>
+#include <hblabel.h>
+#include <QGraphicsLinearLayout>
+
+//User Includes
+#include "glxviewids.h"
+#include "glxmodelroles.h" //Contains the declaration of the roles used to retrieve the data from model
+#include "glxdetailstextedit.h" //Contains the declaration of the custom widget glxdetailstextedit
+#include "glxlocalisationstrings.h" //contains the localisation strings
+#include "glxdetailsviewmodelwrapper.h" //Contains the declaration of the modelwrapper
+#include "glxdetailsviewitemprototype.h" //contains the declaration of this file/class
+
+#define CONTENTMARGINS 5
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//GlxDetailsViewItemProtoType
+//--------------------------------------------------------------------------------------------------------------------------------------------
+GlxDetailsViewItemProtoType::GlxDetailsViewItemProtoType(QGraphicsItem* parent) :
+ HbListViewItem(parent)
+{
+}
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//~GlxDetailsViewItemProtoType
+//--------------------------------------------------------------------------------------------------------------------------------------------
+GlxDetailsViewItemProtoType::~GlxDetailsViewItemProtoType()
+{
+ int widgetIndex = modelIndex().row();
+ switch (widgetIndex) {
+
+ case widgetNameIndex:
+ {
+ delete mImageNameEditor;
+ mImageNameEditor = NULL;
+ break;
+ }
+
+ case widgetDateIndex:
+ {
+ delete mDateLabel;
+ mDateLabel = NULL;
+ break;
+ }
+
+ case widgetTimeIndex:
+ {
+ delete mDateLabel;
+ mDateLabel = NULL;
+ break;
+ }
+
+ case widgetSizeIndex:
+ {
+ delete mSizeLabel;
+ mSizeLabel = NULL;
+ break;
+ }
+
+ case widgetDescriptionIndex:
+ {
+ delete mDescriptionEditor;
+ mDescriptionEditor = NULL;
+ break;
+ }
+
+ default:
+ break;
+ }
+
+}
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//createItem
+//--------------------------------------------------------------------------------------------------------------------------------------------
+HbAbstractViewItem* GlxDetailsViewItemProtoType::createItem()
+{
+ return new GlxDetailsViewItemProtoType(*this);
+}
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//updateChildItems
+//--------------------------------------------------------------------------------------------------------------------------------------------
+void GlxDetailsViewItemProtoType::updateChildItems()
+{
+
+ switch (modelIndex().row()) {
+
+ case widgetNameIndex:
+ {
+ //create the editor
+ mImageNameEditor = new GlxDetailsTextEdit(this);
+ mImageNameEditor->setMaxRows(1);
+
+ //retrieve the name from the model
+ QString nameString(GLX_DETAILS_NAME);
+ QVariant nameData = modelIndex().data(GlxUriRole).toString();
+ if (nameData.isValid()) {
+ if (nameData.canConvert<QString> ()) {
+ nameString.append(nameData.toString());
+ }
+ }
+ mImageNameEditor->setItemText(nameString);
+
+ //Get the sub state of the details view
+ int substate = modelIndex().data(GlxSubStateRole).toInt();
+ if (substate != IMAGEVIEWER_DETAIL_S) {
+ connect(mImageNameEditor, SIGNAL(editorTapped()), this, SLOT(forwardSignalsToView()));
+ }
+ else {
+ mImageNameEditor->setTextItemReadOnly(TRUE);
+ }
+
+ //Connect the Signals
+ const QAbstractItemModel *model = (modelIndex().model());
+ connect(model, SIGNAL(updateCustomWidgets()), this, SLOT(updateWidgetValues()));
+
+ //Add the Layout
+ QGraphicsLinearLayout *widgetLayout = new QGraphicsLinearLayout(Qt::Horizontal, 0);
+ widgetLayout->setContentsMargins(CONTENTMARGINS,CONTENTMARGINS,CONTENTMARGINS,CONTENTMARGINS);
+ widgetLayout->addItem(mImageNameEditor);
+ setLayout(widgetLayout);
+ break;
+ }
+
+ case widgetDateIndex:
+ {
+ //retrieve the date from the model
+ QString dateString;
+ QVariant dateData = modelIndex().data(GlxDateRole).toString();
+ if (dateData.isValid()) {
+ if (dateData.canConvert<QString> ()) {
+ dateString = dateData.toString();
+ }
+ }
+
+ //create the label and set the data
+ mDateLabel = new HbLabel(this);
+ mDateLabel->setPlainText(dateString);
+ mDateLabel->setMinimumHeight(size().height() + 50);
+
+ QGraphicsLinearLayout *widgetLayout = new QGraphicsLinearLayout(Qt::Horizontal, 0);
+ widgetLayout->setContentsMargins(CONTENTMARGINS, CONTENTMARGINS, CONTENTMARGINS, CONTENTMARGINS);
+ widgetLayout->addItem(mDateLabel);
+ setLayout(widgetLayout);
+ break;
+
+ }
+ case widgetTimeIndex:
+ {
+ //retrieve the time from the model
+ QString timeString;
+ QVariant timeData = modelIndex().data(GlxTimeRole).toString();
+ if (timeData.isValid()) {
+ if (timeData.canConvert<QString> ()) {
+ timeString = timeData.toString();
+ }
+ }
+
+ //create the label and set the data
+ mTimeLabel = new HbLabel(this);
+ mTimeLabel->setPlainText(timeString);
+ mTimeLabel->setMinimumHeight(size().height() + 50);
+
+ //Add the Layout
+ QGraphicsLinearLayout *widgetLayout = new QGraphicsLinearLayout(Qt::Horizontal, 0);
+ widgetLayout->setContentsMargins(CONTENTMARGINS, CONTENTMARGINS, CONTENTMARGINS, CONTENTMARGINS);
+ widgetLayout->addItem(mTimeLabel);
+ setLayout(widgetLayout);
+ break;
+ }
+
+ case widgetSizeIndex:
+ {
+ //retrieve the size from the model
+ QString sizeString;
+ QVariant sizeData = modelIndex().data(GlxSizeRole).toString();
+ if (sizeData.isValid()) {
+ if (sizeData.canConvert<QString> ()) {
+ sizeString = sizeData.toString();
+ }
+ }
+
+ //create the label and set the data
+ mSizeLabel = new HbLabel(this);
+ mSizeLabel->setPlainText(sizeString);
+ mSizeLabel->setMinimumHeight(size().height() + 50);
+
+ //Add the Layout
+ QGraphicsLinearLayout *widgetLayout = new QGraphicsLinearLayout(Qt::Horizontal, 0);
+ widgetLayout->setContentsMargins(CONTENTMARGINS, CONTENTMARGINS, CONTENTMARGINS, CONTENTMARGINS);
+ widgetLayout->addItem(mSizeLabel);
+ setLayout(widgetLayout);
+ break;
+ }
+
+ case widgetDescriptionIndex:
+ {
+ //create the editor
+ mDescriptionEditor = new GlxDetailsTextEdit(this);
+ mDescriptionEditor->setMaxRows(5);
+
+ //retrieve the size from the model
+ QString descString(GLX_DETAILS_DESCRIPTION);
+ QVariant descData = modelIndex().data(GlxDescRole).toString();
+ if (descData.isValid()) {
+ if (descData.canConvert<QString> ()) {
+ descString.append(descData.toString());
+ }
+ }
+ mDescriptionEditor->setItemText(descString);
+
+ //Get the sub state of the details view
+ int substate = modelIndex().data(GlxSubStateRole).toInt();
+ if (substate != IMAGEVIEWER_DETAIL_S) {
+ connect(mDescriptionEditor, SIGNAL(editorTapped()), this, SLOT(forwardSignalsToView()));
+ }
+ else {
+ mDescriptionEditor->setTextItemReadOnly(TRUE);
+ }
+
+ //Connect the Signals
+ const QAbstractItemModel *model = (modelIndex().model());
+ connect(model, SIGNAL(updateCustomWidgets()), this, SLOT(updateWidgetValues()));
+
+ //Add the Layout
+ QGraphicsLinearLayout *widgetLayout = new QGraphicsLinearLayout(Qt::Horizontal, 0);
+ widgetLayout->setContentsMargins(CONTENTMARGINS,CONTENTMARGINS,CONTENTMARGINS,CONTENTMARGINS);
+ widgetLayout->addItem(mDescriptionEditor);
+ setLayout(widgetLayout);
+ break;
+ }
+
+ default:
+ break;
+ }
+
+ HbListViewItem::updateChildItems();
+
+}
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//forwardSignalsToView
+//--------------------------------------------------------------------------------------------------------------------------------------------
+void GlxDetailsViewItemProtoType::forwardSignalsToView()
+{
+ int widgetIndex = modelIndex().row();
+ emit static_cast<GlxDetailsViewItemProtoType*> (prototype())->signalFromCustomWidget(
+ widgetIndex);
+}
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//updateWidgetValues
+//--------------------------------------------------------------------------------------------------------------------------------------------
+void GlxDetailsViewItemProtoType::updateWidgetValues()
+{
+ int widgetIndex = modelIndex().row();
+ if (widgetIndex == GlxDetailsViewItemProtoType::widgetNameIndex) {
+
+ QString nameString(GLX_DETAILS_NAME);
+ QVariant nameData = modelIndex().data(GlxUriRole).toString();
+
+ if (nameData.isValid()) {
+ if (nameData.canConvert<QString> ()) {
+ nameString.append(nameData.toString());
+ }
+ }
+ mImageNameEditor->setItemText(nameString);
+ }
+ else {
+ QString descString(GLX_DETAILS_DESCRIPTION);
+ QVariant descData = modelIndex().data(GlxDescRole).toString();
+
+ if (descData.isValid()) {
+ if (descData.canConvert<QString> ()) {
+ descString.append(descData.toString());
+ }
+ }
+ mDescriptionEditor->setItemText(descString);
+ }
+}
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/ui/views/detailsview/src/glxdetailsviewmodelwrapper.cpp Fri Sep 17 08:29:24 2010 +0300
@@ -0,0 +1,217 @@
+/*
+ * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+ * All rights reserved.
+ * This component and the accompanying materials are made available
+ * under the terms of "Eclipse Public License v1.0"
+ * which accompanies this distribution, and is available
+ * at the URL "http://www.eclipse.org/legal/epl-v10.html".
+ *
+ * Initial Contributors:
+ * Nokia Corporation - initial contribution.
+ *
+ * Contributors:
+ *
+ * Description: ?Description
+ *
+ */
+
+//Includes
+#include <QDebug>
+#include <QModelIndex>
+#include <qdatetime.h>
+#include <hbparameterlengthlimiter.h>
+
+//User Includes
+#include "glxmodelroles.h" //Contains the declaration of the roles used to retrieve the data from model
+#include "glxlocalisationstrings.h" //contains the localisation strings
+#include "glxdetailsviewmodelwrapper.h" //contains the declaration of this file/class
+//Constants
+const int KBytesInKB = 1024;
+const int KBytesInMB = 1024 * 1024;
+const int KBytesInGB = 1024 * 1024 * 1024;
+const int TOTAL_NO_FIELDS_LIST = 5;
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//GlxDetailsViewModelWrapper
+//--------------------------------------------------------------------------------------------------------------------------------------------
+GlxDetailsViewModelWrapper::GlxDetailsViewModelWrapper(QAbstractItemModel *model) :
+ mModel(model)
+{
+
+}
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//~GlxDetailsViewModelWrapper
+//--------------------------------------------------------------------------------------------------------------------------------------------
+GlxDetailsViewModelWrapper::~GlxDetailsViewModelWrapper()
+{
+
+}
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//rowCount
+//--------------------------------------------------------------------------------------------------------------------------------------------
+int GlxDetailsViewModelWrapper::rowCount(const QModelIndex &parent) const
+{
+ Q_UNUSED(parent);
+ return TOTAL_NO_FIELDS_LIST;
+}
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//columnCount
+//--------------------------------------------------------------------------------------------------------------------------------------------
+int GlxDetailsViewModelWrapper::columnCount(const QModelIndex &parent) const
+{
+ Q_UNUSED(parent);
+ return 1;
+}
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//parent
+//--------------------------------------------------------------------------------------------------------------------------------------------
+QModelIndex GlxDetailsViewModelWrapper::parent(const QModelIndex &child) const
+{
+ Q_UNUSED(child);
+
+ //returns always invalid model index
+ return QModelIndex();
+}
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//data
+//--------------------------------------------------------------------------------------------------------------------------------------------
+QVariant GlxDetailsViewModelWrapper::data(const QModelIndex &index, int role) const
+{
+ int rowIndex = index.row();
+
+ qDebug
+ ("GlxDetailsViewModelWrapper::data index %d role %d", rowIndex, role);
+
+ if ((!index.isValid()) || (rowIndex >= rowCount())) {
+ return QVariant();
+ }
+
+ switch (role) {
+
+ case GlxUriRole:
+ {
+ QString imageName = (mModel->data(mModel->index(mModel->data(mModel->index(0, 0),
+ GlxFocusIndexRole).toInt(), 0), GlxImageTitle)).toString();
+ return imageName;
+ }
+
+ case GlxDateRole:
+ {
+ QString datestring;
+ QString dateFormat("dd.MM.yyyy");
+ QDate date = (mModel->data(mModel->index(mModel->data(mModel->index(0, 0),
+ GlxFocusIndexRole).toInt(), 0), GlxDateRole)).value<QDate> ();
+
+ if (date.isNull() == FALSE) {
+
+ QString dateStringValue = date.toString(dateFormat);
+ datestring = hbTrId(GLX_DETAILS_DATE).arg(dateStringValue);
+ }
+ return datestring;
+ }
+
+ case GlxTimeRole:
+ {
+ QString timestring;
+ QString timeFormat("h:m ap");
+ QTime timevalue = (mModel->data(mModel->index(mModel->data(mModel->index(0, 0),
+ GlxFocusIndexRole).toInt(), 0), GlxTimeRole)).value<QTime> ();
+
+ if (timevalue.isNull() == FALSE) {
+ QString timeStringValue = timevalue.toString(timeFormat);
+ timestring = hbTrId(GLX_DETAILS_TIME).arg(timeStringValue);
+ }
+ return timestring;
+ }
+
+ case GlxSizeRole:
+ {
+ int size = 0;
+ QString sizeString;
+ size = (mModel->data(mModel->index(
+ mModel->data(mModel->index(0, 0), GlxFocusIndexRole).toInt(), 0), GlxSizeRole)).toInt();
+
+ sizeString = sizeinStrings(size);
+
+ return sizeString;
+ }
+
+ case GlxDescRole:
+ {
+ QString description = (mModel->data(mModel->index(mModel->data(mModel->index(0, 0),
+ GlxFocusIndexRole).toInt(), 0), GlxDescRole)).toString();
+
+ return description;
+ }
+
+ case GlxSubStateRole:
+ {
+ int substate = 0;
+
+ if (mModel) {
+ QVariant variant = mModel->data(mModel->index(0, 0), GlxSubStateRole);
+
+ if (variant.isValid() && variant.canConvert<int> ()) {
+ substate = variant.value<int> ();
+ }
+ }
+ return substate;
+ }
+
+ default:
+ return QVariant();
+ }
+}
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//index
+//--------------------------------------------------------------------------------------------------------------------------------------------
+QModelIndex GlxDetailsViewModelWrapper::index(int row, int column, const QModelIndex & /*parent*/) const
+{
+ //Q_UNUSED(parent)
+ qDebug
+ (" GlxDetailsViewModelWrapper::index row index %d column index %d", row, column);
+
+ if ((row < 0) || (row >= rowCount()) || (column < 0) || (column >= columnCount())) {
+ return QModelIndex();
+ }
+
+ return QAbstractItemModel::createIndex(row, column);
+}
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//refreshCustomWidget
+//--------------------------------------------------------------------------------------------------------------------------------------------
+void GlxDetailsViewModelWrapper::refreshCustomWidget()
+{
+ emit updateCustomWidgets();
+}
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//sizeinStrings
+//--------------------------------------------------------------------------------------------------------------------------------------------
+QString GlxDetailsViewModelWrapper::sizeinStrings(int size) const
+{
+ QString sizeString;
+ if (size >= KBytesInGB) {
+ int gbSize = size / KBytesInGB; // Size in GB
+ sizeString = HbParameterLengthLimiter(GLX_DETAILS_SIZE_GB, gbSize);
+ }
+ else if (size >= KBytesInMB) {
+ int mbSize = size / KBytesInMB; // Size in MB
+ sizeString = HbParameterLengthLimiter(GLX_DETAILS_SIZE_MB, mbSize);
+ }
+ else if (size >= KBytesInKB) {
+ int kbSize = size / KBytesInKB; // Size in KB
+ sizeString = HbParameterLengthLimiter(GLX_DETAILS_SIZE_KB, kbSize);
+ }
+ else {
+ sizeString = HbParameterLengthLimiter(GLX_DETAILS_SIZE_BYTES, size);
+ }
+ return sizeString;
+}
--- a/ui/views/docloaders/src/glxviewdocloader.cpp Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/views/docloaders/src/glxviewdocloader.cpp Fri Sep 17 08:29:24 2010 +0300
@@ -107,26 +107,7 @@
QObject* GlxDetailsViewDocLoader::createObject(const QString &type, const QString &name)
{
qDebug() <<"GlxDetailsViewDocLoader::createObject -->";
-
-
- if (GLX_DETAILSVIEW_IMGNAME == name)
- {
- qDebug() << "GlxDetailsViewDocLoader::createObject:GLX_DETAILSVIEW_IMGNAME -->";
-
- QObject *object = new GlxDetailsTextEdit();
- object->setObjectName(name);
- return object;
- }
-
- if (GLX_DETAILSVIEW_DESCRPTIONTEXT == name)
- {
- qDebug() << "GlxDetailsViewDocLoader::createObject:GLX_DETAILSVIEW_DESCRPTIONTEXT -->";
-
- QObject *object = new GlxDetailsTextEdit();
- object->setObjectName(name);
- return object;
- }
-
+
if (GLX_DETAILSVIEW_FAVICON == name)
{
qDebug() << "GlxDetailsViewDocLoader::createObject:ICON -->";
--- a/ui/views/fullscreenview/inc/glxcoverflow.h Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/views/fullscreenview/inc/glxcoverflow.h Fri Sep 17 08:29:24 2010 +0300
@@ -335,6 +335,20 @@
* @return - return the uri of the image.
*/
QString getUri( int index );
+
+ /**
+ * getImageDimension - To get the dimension of the image.
+ * @param - image index.
+ * @return - return the dimension of the image.
+ */
+ QSize getImageDimension( int index );
+
+ /**
+ * getImageSize() - To get the image size.
+ * @param - image index.
+ * @return - return the size of the image.
+ */
+ int getImageSize( int index );
/**
* isAnimatedImage() - To get the GIF file info of the image
--- a/ui/views/fullscreenview/src/glxcoverflow.cpp Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/views/fullscreenview/src/glxcoverflow.cpp Fri Sep 17 08:29:24 2010 +0300
@@ -34,6 +34,8 @@
#define GLX_COVERFLOW_SPEED 32
#define GLX_BOUNCEBACK_SPEED 16
#define GLX_BOUNCEBACK_DELTA 8
+#define MAX_GIF_DIMENSION 640
+const int KBytesInMB = 1024 * 1024;
GlxCoverFlow::GlxCoverFlow( QGraphicsItem *parent )
: HbWidget( parent ),
@@ -76,6 +78,7 @@
mIconItem[i]->setBrush( QBrush( Qt::black ) );
mIconItem[i]->setSize( QSize( 0, 0 ) );
mIconItem[i]->setAlignment( Qt::AlignCenter );
+ mIconItem[i]->setIconScaling( false );
mIconItem[i]->setObjectName( QString( "Cover%1" ).arg( i ) );
}
@@ -199,7 +202,6 @@
index = calculateIndex( mSelIndex + i - 2 );
if ( index == startIndex.row() ) {
index = ( mSelItemIndex + i - 2 + NBR_ICON_ITEM ) % NBR_ICON_ITEM;
- qDebug("GlxCoverFlow::dataChanged index = %d mSelItemIndex = %d ", index, mSelItemIndex );
mIconItem[ index ]->setIcon( getIcon( startIndex.row() ) );
if ( index == mSelItemIndex ) {
playAnimation( );
@@ -614,6 +616,25 @@
return QString();
}
+QSize GlxCoverFlow::getImageDimension( int index )
+{
+ QVariant variant = mModel->data( mModel->index( index, 0 ), GlxDimensionsRole );
+ if ( variant.isValid() && variant.canConvert< QSize > () ){
+ return variant.value< QSize > () ;
+ }
+ return QSize();
+}
+
+int GlxCoverFlow::getImageSize( int index )
+{
+ QVariant variant = mModel->data( mModel->index( index, 0 ), GlxSizeRole );
+ if ( variant.isValid() && variant.canConvert< int > () ){
+ return variant.value< int > () ;
+ }
+ return 0;
+}
+
+
bool GlxCoverFlow::isAnimatedImage( int index )
{
int frameCount = 0;
@@ -621,5 +642,14 @@
if ( variant.isValid() && variant.canConvert< int > () ) {
frameCount = variant.value< int > () ;
}
- return frameCount > 1 ? true : false ;
+
+ if ( frameCount > 1 ) {
+ int size = getImageSize( index );
+ QSize dimn = getImageDimension( index );
+
+ if ( size <= KBytesInMB && dimn.width() <= MAX_GIF_DIMENSION && dimn.height() <= MAX_GIF_DIMENSION ) {
+ return true;
+ }
+ }
+ return false ;
}
--- a/ui/views/fullscreenview/src/glxfullscreenview.cpp Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/views/fullscreenview/src/glxfullscreenview.cpp Fri Sep 17 08:29:24 2010 +0300
@@ -74,8 +74,8 @@
HbEffect::add( QString( "HbGridView" ), QString( ":/data/transitionup.fxml" ), QString( "TapShow" ) );
HbEffect::add( QString( "HbGridView" ), QString( ":/data/transitiondown.fxml" ), QString( "TapHide" ) );
- HbEffect::add( QString( "HbGridViewItem" ), QString( ":/data/zoomin.fxml" ), QString( "SelectHide" ) );
- HbEffect::add( QString( "HbGridViewItem" ), QString( ":/data/zoomout.fxml" ), QString( "SelectShow" ) );
+ HbEffect::add( QString( "HbGridViewItem" ), QString( ":/data/fullscreenzoomin.fxml" ), QString( "SelectHide" ) );
+ HbEffect::add( QString( "HbGridViewItem" ), QString( ":/data/fullscreenzoomout.fxml" ), QString( "SelectShow" ) );
HbEffect::add( QString( "HbIconItem" ), QString( ":/data/rotatefslandscape.fxml" ), QString( "RotateFSLS" ) );
HbEffect::add( QString( "HbIconItem" ), QString( ":/data/rotatefsprotrait.fxml" ), QString( "RotateFSPT" ) );
@@ -742,6 +742,7 @@
if( mCoverFlow && mZoomWidget ) {
disconnect(mZoomWidget,SIGNAL( pinchGestureReceived(int) ), mCoverFlow, SLOT( zoomStarted(int) ) );
disconnect(mZoomWidget,SIGNAL( zoomWidgetMovedBackground(int) ), mCoverFlow, SLOT( zoomFinished(int) ) );
+ disconnect( mCoverFlow, SIGNAL( doubleTapEventReceived( QPointF ) ), mZoomWidget, SLOT( animateZoomIn( QPointF ) ) );
}
disconnect(mWindow, SIGNAL(orientationChanged(Qt::Orientation)), this, SLOT(orientationChanged(Qt::Orientation)));
@@ -783,8 +784,8 @@
HbEffect::remove( QString("HbGridView"), QString(":/data/transitionup.fxml"), QString( "TapShow" ));
HbEffect::remove( QString("HbGridView"), QString(":/data/transitiondown.fxml"), QString( "TapHide" ));
- HbEffect::remove( QString( "HbGridViewItem" ), QString( ":/data/zoomin.fxml" ), QString( "SelectHide" ) );
- HbEffect::remove( QString( "HbGridViewItem" ), QString( ":/data/zoomout.fxml" ), QString( "SelectShow" ) );
+ HbEffect::remove( QString( "HbGridViewItem" ), QString( ":/data/fullscreenzoomin.fxml" ), QString( "SelectHide" ) );
+ HbEffect::remove( QString( "HbGridViewItem" ), QString( ":/data/fullscreenzoomout.fxml" ), QString( "SelectShow" ) );
HbEffect::remove( QString( "HbIconItem" ), QString( ":/data/rotatefslandscape.fxml" ), QString( "RotateFSLS" ) );
HbEffect::remove( QString( "HbIconItem" ), QString( ":/data/rotatefsprotrait.fxml" ), QString( "RotateFSPT" ) );
@@ -803,6 +804,7 @@
mIconItems[ i ]->setZValue( mImageStrip->zValue() - 2 );
mIconItems[ i ]->setPos( 0, 0 );
mIconItems[ i ]->setAlignment( Qt::AlignCenter );
+ mIconItems[ i ]->setIconScaling( false );
}
}
}
--- a/ui/views/slideshowview/src/glxslideshowwidget.cpp Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/views/slideshowview/src/glxslideshowwidget.cpp Fri Sep 17 08:29:24 2010 +0300
@@ -75,6 +75,7 @@
mBackGroundItem->setBrush( QBrush( Qt::black ) );
mAnimItem = new HbIconItem( this );
mAnimItem->setAlignment( Qt::AlignCenter );
+ mAnimItem->setIconScaling( false );
// Now load the view and the contents.
// and then set the play icon to the button
@@ -87,6 +88,7 @@
mSelIndex[ i ] = -1;
mIconItems[ i ] = new HbIconItem( this );
mIconItems[ i ]->setAlignment( Qt::AlignCenter );
+ mIconItems[ i ]->setIconScaling( false );
mIconItems[ i ]->setObjectName( QString( "SlideShowIcon%1" ).arg( i ) );
}
--- a/ui/views/views.pro Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/views/views.pro Fri Sep 17 08:29:24 2010 +0300
@@ -69,6 +69,8 @@
fullscreenview/inc/glxcoverflow.h \
fullscreenview/inc/glxfullscreenview.h \
detailsview/inc/glxdetailsview.h \
+ detailsview/inc/glxdetailsviewitemprototype.h \
+ detailsview/inc/glxdetailsviewmodelwrapper.h \
gridview/inc/glxgridview.h \
slideshowsettingsview/inc/glxslideshowsettingsview.h \
listview/inc/glxlistview.h \
@@ -80,7 +82,9 @@
SOURCES += viewbase/src/glxview.cpp \
fullscreenview/src/glxcoverflow.cpp \
fullscreenview/src/glxfullscreenview.cpp \
- detailsview/src/glxdetailsview.cpp \
+ detailsview/src/glxdetailsview.cpp \
+ detailsview/src/glxdetailsviewitemprototype.cpp \
+ detailsview/src/glxdetailsviewmodelwrapper.cpp \
gridview/src/glxgridview.cpp \
slideshowsettingsview/src/glxslideshowsettingsview.cpp \
listview/src/glxlistview.cpp \
--- a/ui/widgets/bwins/glxzoomwidgetu.def Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/widgets/bwins/glxzoomwidgetu.def Fri Sep 17 08:29:24 2010 +0300
@@ -10,37 +10,38 @@
?tr@GlxZoomWidget@@SA?AVQString@@PBD0H@Z @ 9 NONAME ; class QString GlxZoomWidget::tr(char const *, char const *, int)
?sceneEvent@GlxZoomWidget@@MAE_NPAVQEvent@@@Z @ 10 NONAME ; bool GlxZoomWidget::sceneEvent(class QEvent *)
?forceZoomToBackground@GlxZoomWidget@@QAEXXZ @ 11 NONAME ; void GlxZoomWidget::forceZoomToBackground(void)
- ?trUtf8@GlxZoomWidget@@SA?AVQString@@PBD0@Z @ 12 NONAME ; class QString GlxZoomWidget::trUtf8(char const *, char const *)
- ?getFocusedImage@GlxZoomWidget@@AAE?AVQPixmap@@XZ @ 13 NONAME ; class QPixmap GlxZoomWidget::getFocusedImage(void)
- ?animateDoubleTap@GlxZoomWidget@@QAEXXZ @ 14 NONAME ; void GlxZoomWidget::animateDoubleTap(void)
- ?setModel@GlxZoomWidget@@QAEXPAVQAbstractItemModel@@@Z @ 15 NONAME ; void GlxZoomWidget::setModel(class QAbstractItemModel *)
- ?finalizeWidgetTransform@GlxZoomWidget@@AAEXXZ @ 16 NONAME ; void GlxZoomWidget::finalizeWidgetTransform(void)
- ?executeGestureEvent@GlxZoomWidget@@AAE_NPAVQGraphicsItem@@PAVQGestureEvent@@@Z @ 17 NONAME ; bool GlxZoomWidget::executeGestureEvent(class QGraphicsItem *, class QGestureEvent *)
- ?zoomImage@GlxZoomWidget@@AAEXMVQPointF@@@Z @ 18 NONAME ; void GlxZoomWidget::zoomImage(float, class QPointF)
- ?activate@GlxZoomWidget@@QAEXXZ @ 19 NONAME ; void GlxZoomWidget::activate(void)
- ?connectDecodeRequestToPinchEvent@GlxZoomWidget@@QAEXXZ @ 20 NONAME ; void GlxZoomWidget::connectDecodeRequestToPinchEvent(void)
- ?indexChanged@GlxZoomWidget@@QAEXH@Z @ 21 NONAME ; void GlxZoomWidget::indexChanged(int)
- ?animateZoomIn@GlxZoomWidget@@QAEXVQPointF@@@Z @ 22 NONAME ; void GlxZoomWidget::animateZoomIn(class QPointF)
- ?getStaticMetaObject@GlxZoomWidget@@SAABUQMetaObject@@XZ @ 23 NONAME ; struct QMetaObject const & GlxZoomWidget::getStaticMetaObject(void)
- ?animationTimeLineFinished@GlxZoomWidget@@QAEXXZ @ 24 NONAME ; void GlxZoomWidget::animationTimeLineFinished(void)
- ?isFocussedItemCorrupt@GlxZoomWidget@@AAE_NXZ @ 25 NONAME ; bool GlxZoomWidget::isFocussedItemCorrupt(void)
- ?qt_metacall@GlxZoomWidget@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 26 NONAME ; int GlxZoomWidget::qt_metacall(enum QMetaObject::Call, int, void * *)
- ?zoomWidgetMovedBackground@GlxZoomWidget@@IAEXH@Z @ 27 NONAME ; void GlxZoomWidget::zoomWidgetMovedBackground(int)
- ?indexChanged@GlxZoomWidget@@QAEXXZ @ 28 NONAME ; void GlxZoomWidget::indexChanged(void)
- ?animateZoomOut@GlxZoomWidget@@QAEXVQPointF@@@Z @ 29 NONAME ; void GlxZoomWidget::animateZoomOut(class QPointF)
- ?timerEvent@GlxZoomWidget@@MAEXPAVQTimerEvent@@@Z @ 30 NONAME ; void GlxZoomWidget::timerEvent(class QTimerEvent *)
- ?adjustGestureCenter@GlxZoomWidget@@AAEXAAVQPointF@@AAM@Z @ 31 NONAME ; void GlxZoomWidget::adjustGestureCenter(class QPointF &, float &)
- ?stepZoom@GlxZoomWidget@@IAEXXZ @ 32 NONAME ; void GlxZoomWidget::stepZoom(void)
- ?metaObject@GlxZoomWidget@@UBEPBUQMetaObject@@XZ @ 33 NONAME ; struct QMetaObject const * GlxZoomWidget::metaObject(void) const
- ?decodedImageAvailable@GlxZoomWidget@@QAEXXZ @ 34 NONAME ; void GlxZoomWidget::decodedImageAvailable(void)
- ??_EGlxZoomWidget@@UAE@I@Z @ 35 NONAME ; GlxZoomWidget::~GlxZoomWidget(unsigned int)
- ??1GlxZoomWidget@@UAE@XZ @ 36 NONAME ; GlxZoomWidget::~GlxZoomWidget(void)
- ?sceneEventFilter@GlxZoomWidget@@MAE_NPAVQGraphicsItem@@PAVQEvent@@@Z @ 37 NONAME ; bool GlxZoomWidget::sceneEventFilter(class QGraphicsItem *, class QEvent *)
- ?pinchGestureReceived@GlxZoomWidget@@IAEXH@Z @ 38 NONAME ; void GlxZoomWidget::pinchGestureReceived(int)
- ?setZoomParams@GlxZoomWidget@@AAEXXZ @ 39 NONAME ; void GlxZoomWidget::setZoomParams(void)
- ?setWindowSize@GlxZoomWidget@@QAEXVQSize@@@Z @ 40 NONAME ; void GlxZoomWidget::setWindowSize(class QSize)
- ?retreiveFocusedImage@GlxZoomWidget@@AAEXXZ @ 41 NONAME ; void GlxZoomWidget::retreiveFocusedImage(void)
- ?modelDestroyed@GlxZoomWidget@@IAEXXZ @ 42 NONAME ; void GlxZoomWidget::modelDestroyed(void)
- ?tr@GlxZoomWidget@@SA?AVQString@@PBD0@Z @ 43 NONAME ; class QString GlxZoomWidget::tr(char const *, char const *)
- ?trUtf8@GlxZoomWidget@@SA?AVQString@@PBD0H@Z @ 44 NONAME ; class QString GlxZoomWidget::trUtf8(char const *, char const *, int)
+ ?resetDecoder@GlxZoomWidget@@AAEXXZ @ 12 NONAME ; void GlxZoomWidget::resetDecoder(void)
+ ?trUtf8@GlxZoomWidget@@SA?AVQString@@PBD0@Z @ 13 NONAME ; class QString GlxZoomWidget::trUtf8(char const *, char const *)
+ ?getFocusedImage@GlxZoomWidget@@AAE?AVQPixmap@@XZ @ 14 NONAME ; class QPixmap GlxZoomWidget::getFocusedImage(void)
+ ?animateDoubleTap@GlxZoomWidget@@QAEXXZ @ 15 NONAME ; void GlxZoomWidget::animateDoubleTap(void)
+ ?setModel@GlxZoomWidget@@QAEXPAVQAbstractItemModel@@@Z @ 16 NONAME ; void GlxZoomWidget::setModel(class QAbstractItemModel *)
+ ?finalizeWidgetTransform@GlxZoomWidget@@AAEXXZ @ 17 NONAME ; void GlxZoomWidget::finalizeWidgetTransform(void)
+ ?executeGestureEvent@GlxZoomWidget@@AAE_NPAVQGraphicsItem@@PAVQGestureEvent@@@Z @ 18 NONAME ; bool GlxZoomWidget::executeGestureEvent(class QGraphicsItem *, class QGestureEvent *)
+ ?zoomImage@GlxZoomWidget@@AAEXMVQPointF@@@Z @ 19 NONAME ; void GlxZoomWidget::zoomImage(float, class QPointF)
+ ?activate@GlxZoomWidget@@QAEXXZ @ 20 NONAME ; void GlxZoomWidget::activate(void)
+ ?connectDecodeRequestToPinchEvent@GlxZoomWidget@@QAEXXZ @ 21 NONAME ; void GlxZoomWidget::connectDecodeRequestToPinchEvent(void)
+ ?indexChanged@GlxZoomWidget@@QAEXH@Z @ 22 NONAME ; void GlxZoomWidget::indexChanged(int)
+ ?animateZoomIn@GlxZoomWidget@@QAEXVQPointF@@@Z @ 23 NONAME ; void GlxZoomWidget::animateZoomIn(class QPointF)
+ ?getStaticMetaObject@GlxZoomWidget@@SAABUQMetaObject@@XZ @ 24 NONAME ; struct QMetaObject const & GlxZoomWidget::getStaticMetaObject(void)
+ ?animationTimeLineFinished@GlxZoomWidget@@QAEXXZ @ 25 NONAME ; void GlxZoomWidget::animationTimeLineFinished(void)
+ ?isFocussedItemCorrupt@GlxZoomWidget@@AAE_NXZ @ 26 NONAME ; bool GlxZoomWidget::isFocussedItemCorrupt(void)
+ ?qt_metacall@GlxZoomWidget@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 27 NONAME ; int GlxZoomWidget::qt_metacall(enum QMetaObject::Call, int, void * *)
+ ?zoomWidgetMovedBackground@GlxZoomWidget@@IAEXH@Z @ 28 NONAME ; void GlxZoomWidget::zoomWidgetMovedBackground(int)
+ ?indexChanged@GlxZoomWidget@@QAEXXZ @ 29 NONAME ; void GlxZoomWidget::indexChanged(void)
+ ?animateZoomOut@GlxZoomWidget@@QAEXVQPointF@@@Z @ 30 NONAME ; void GlxZoomWidget::animateZoomOut(class QPointF)
+ ?timerEvent@GlxZoomWidget@@MAEXPAVQTimerEvent@@@Z @ 31 NONAME ; void GlxZoomWidget::timerEvent(class QTimerEvent *)
+ ?adjustGestureCenter@GlxZoomWidget@@AAEXAAVQPointF@@AAM@Z @ 32 NONAME ; void GlxZoomWidget::adjustGestureCenter(class QPointF &, float &)
+ ?stepZoom@GlxZoomWidget@@IAEXXZ @ 33 NONAME ; void GlxZoomWidget::stepZoom(void)
+ ?metaObject@GlxZoomWidget@@UBEPBUQMetaObject@@XZ @ 34 NONAME ; struct QMetaObject const * GlxZoomWidget::metaObject(void) const
+ ?decodedImageAvailable@GlxZoomWidget@@QAEXXZ @ 35 NONAME ; void GlxZoomWidget::decodedImageAvailable(void)
+ ??_EGlxZoomWidget@@UAE@I@Z @ 36 NONAME ; GlxZoomWidget::~GlxZoomWidget(unsigned int)
+ ??1GlxZoomWidget@@UAE@XZ @ 37 NONAME ; GlxZoomWidget::~GlxZoomWidget(void)
+ ?sceneEventFilter@GlxZoomWidget@@MAE_NPAVQGraphicsItem@@PAVQEvent@@@Z @ 38 NONAME ; bool GlxZoomWidget::sceneEventFilter(class QGraphicsItem *, class QEvent *)
+ ?pinchGestureReceived@GlxZoomWidget@@IAEXH@Z @ 39 NONAME ; void GlxZoomWidget::pinchGestureReceived(int)
+ ?setZoomParams@GlxZoomWidget@@AAEXXZ @ 40 NONAME ; void GlxZoomWidget::setZoomParams(void)
+ ?setWindowSize@GlxZoomWidget@@QAEXVQSize@@@Z @ 41 NONAME ; void GlxZoomWidget::setWindowSize(class QSize)
+ ?retreiveFocusedImage@GlxZoomWidget@@AAEXXZ @ 42 NONAME ; void GlxZoomWidget::retreiveFocusedImage(void)
+ ?modelDestroyed@GlxZoomWidget@@IAEXXZ @ 43 NONAME ; void GlxZoomWidget::modelDestroyed(void)
+ ?tr@GlxZoomWidget@@SA?AVQString@@PBD0@Z @ 44 NONAME ; class QString GlxZoomWidget::tr(char const *, char const *)
+ ?trUtf8@GlxZoomWidget@@SA?AVQString@@PBD0H@Z @ 45 NONAME ; class QString GlxZoomWidget::trUtf8(char const *, char const *, int)
--- a/ui/widgets/eabi/glxzoomwidgetu.def Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/widgets/eabi/glxzoomwidgetu.def Fri Sep 17 08:29:24 2010 +0300
@@ -6,47 +6,48 @@
_ZN13GlxZoomWidget11qt_metacastEPKc @ 5 NONAME
_ZN13GlxZoomWidget12indexChangedEi @ 6 NONAME
_ZN13GlxZoomWidget12indexChangedEv @ 7 NONAME
- _ZN13GlxZoomWidget13animateZoomInE7QPointF @ 8 NONAME
- _ZN13GlxZoomWidget13setWindowSizeE5QSize @ 9 NONAME
- _ZN13GlxZoomWidget13setZoomParamsEv @ 10 NONAME
- _ZN13GlxZoomWidget14animateZoomOutE7QPointF @ 11 NONAME
- _ZN13GlxZoomWidget14modelDestroyedEv @ 12 NONAME
- _ZN13GlxZoomWidget15getFocusedImageEv @ 13 NONAME
- _ZN13GlxZoomWidget15setMinMaxZValueEii @ 14 NONAME
- _ZN13GlxZoomWidget16animateDoubleTapEv @ 15 NONAME
- _ZN13GlxZoomWidget16sceneEventFilterEP13QGraphicsItemP6QEvent @ 16 NONAME
- _ZN13GlxZoomWidget16staticMetaObjectE @ 17 NONAME DATA 16
- _ZN13GlxZoomWidget17limitRequiredSizeER6QSizeF @ 18 NONAME
- _ZN13GlxZoomWidget17sendDecodeRequestEi @ 19 NONAME
- _ZN13GlxZoomWidget19adjustGestureCenterER7QPointFRf @ 20 NONAME
- _ZN13GlxZoomWidget19executeGestureEventEP13QGraphicsItemP13QGestureEvent @ 21 NONAME
- _ZN13GlxZoomWidget19getStaticMetaObjectEv @ 22 NONAME
- _ZN13GlxZoomWidget20pinchGestureReceivedEi @ 23 NONAME
- _ZN13GlxZoomWidget20retreiveFocusedImageEv @ 24 NONAME
- _ZN13GlxZoomWidget21decodedImageAvailableEv @ 25 NONAME
- _ZN13GlxZoomWidget21forceZoomToBackgroundEv @ 26 NONAME
- _ZN13GlxZoomWidget21isFocussedItemCorruptEv @ 27 NONAME
- _ZN13GlxZoomWidget23finalizeWidgetTransformEv @ 28 NONAME
- _ZN13GlxZoomWidget25animationTimeLineFinishedEv @ 29 NONAME
- _ZN13GlxZoomWidget25zoomWidgetMovedBackgroundEi @ 30 NONAME
- _ZN13GlxZoomWidget32connectDecodeRequestToPinchEventEv @ 31 NONAME
- _ZN13GlxZoomWidget7cleanUpEv @ 32 NONAME
- _ZN13GlxZoomWidget8activateEv @ 33 NONAME
- _ZN13GlxZoomWidget8setModelEP18QAbstractItemModel @ 34 NONAME
- _ZN13GlxZoomWidget8stepZoomEv @ 35 NONAME
- _ZN13GlxZoomWidget9zoomImageEf7QPointF @ 36 NONAME
- _ZN13GlxZoomWidgetC1EP13QGraphicsItem @ 37 NONAME
- _ZN13GlxZoomWidgetC2EP13QGraphicsItem @ 38 NONAME
- _ZN13GlxZoomWidgetD0Ev @ 39 NONAME
- _ZN13GlxZoomWidgetD1Ev @ 40 NONAME
- _ZN13GlxZoomWidgetD2Ev @ 41 NONAME
- _ZNK13GlxZoomWidget10metaObjectEv @ 42 NONAME
- _ZTI13GlxZoomWidget @ 43 NONAME
- _ZTV13GlxZoomWidget @ 44 NONAME
- _ZThn16_N13GlxZoomWidgetD0Ev @ 45 NONAME
- _ZThn16_N13GlxZoomWidgetD1Ev @ 46 NONAME
- _ZThn8_N13GlxZoomWidget10sceneEventEP6QEvent @ 47 NONAME
- _ZThn8_N13GlxZoomWidget16sceneEventFilterEP13QGraphicsItemP6QEvent @ 48 NONAME
- _ZThn8_N13GlxZoomWidgetD0Ev @ 49 NONAME
- _ZThn8_N13GlxZoomWidgetD1Ev @ 50 NONAME
+ _ZN13GlxZoomWidget12resetDecoderEv @ 8 NONAME
+ _ZN13GlxZoomWidget13animateZoomInE7QPointF @ 9 NONAME
+ _ZN13GlxZoomWidget13setWindowSizeE5QSize @ 10 NONAME
+ _ZN13GlxZoomWidget13setZoomParamsEv @ 11 NONAME
+ _ZN13GlxZoomWidget14animateZoomOutE7QPointF @ 12 NONAME
+ _ZN13GlxZoomWidget14modelDestroyedEv @ 13 NONAME
+ _ZN13GlxZoomWidget15getFocusedImageEv @ 14 NONAME
+ _ZN13GlxZoomWidget15setMinMaxZValueEii @ 15 NONAME
+ _ZN13GlxZoomWidget16animateDoubleTapEv @ 16 NONAME
+ _ZN13GlxZoomWidget16sceneEventFilterEP13QGraphicsItemP6QEvent @ 17 NONAME
+ _ZN13GlxZoomWidget16staticMetaObjectE @ 18 NONAME DATA 16
+ _ZN13GlxZoomWidget17limitRequiredSizeER6QSizeF @ 19 NONAME
+ _ZN13GlxZoomWidget17sendDecodeRequestEi @ 20 NONAME
+ _ZN13GlxZoomWidget19adjustGestureCenterER7QPointFRf @ 21 NONAME
+ _ZN13GlxZoomWidget19executeGestureEventEP13QGraphicsItemP13QGestureEvent @ 22 NONAME
+ _ZN13GlxZoomWidget19getStaticMetaObjectEv @ 23 NONAME
+ _ZN13GlxZoomWidget20pinchGestureReceivedEi @ 24 NONAME
+ _ZN13GlxZoomWidget20retreiveFocusedImageEv @ 25 NONAME
+ _ZN13GlxZoomWidget21decodedImageAvailableEv @ 26 NONAME
+ _ZN13GlxZoomWidget21forceZoomToBackgroundEv @ 27 NONAME
+ _ZN13GlxZoomWidget21isFocussedItemCorruptEv @ 28 NONAME
+ _ZN13GlxZoomWidget23finalizeWidgetTransformEv @ 29 NONAME
+ _ZN13GlxZoomWidget25animationTimeLineFinishedEv @ 30 NONAME
+ _ZN13GlxZoomWidget25zoomWidgetMovedBackgroundEi @ 31 NONAME
+ _ZN13GlxZoomWidget32connectDecodeRequestToPinchEventEv @ 32 NONAME
+ _ZN13GlxZoomWidget7cleanUpEv @ 33 NONAME
+ _ZN13GlxZoomWidget8activateEv @ 34 NONAME
+ _ZN13GlxZoomWidget8setModelEP18QAbstractItemModel @ 35 NONAME
+ _ZN13GlxZoomWidget8stepZoomEv @ 36 NONAME
+ _ZN13GlxZoomWidget9zoomImageEf7QPointF @ 37 NONAME
+ _ZN13GlxZoomWidgetC1EP13QGraphicsItem @ 38 NONAME
+ _ZN13GlxZoomWidgetC2EP13QGraphicsItem @ 39 NONAME
+ _ZN13GlxZoomWidgetD0Ev @ 40 NONAME
+ _ZN13GlxZoomWidgetD1Ev @ 41 NONAME
+ _ZN13GlxZoomWidgetD2Ev @ 42 NONAME
+ _ZNK13GlxZoomWidget10metaObjectEv @ 43 NONAME
+ _ZTI13GlxZoomWidget @ 44 NONAME
+ _ZTV13GlxZoomWidget @ 45 NONAME
+ _ZThn16_N13GlxZoomWidgetD0Ev @ 46 NONAME
+ _ZThn16_N13GlxZoomWidgetD1Ev @ 47 NONAME
+ _ZThn8_N13GlxZoomWidget10sceneEventEP6QEvent @ 48 NONAME
+ _ZThn8_N13GlxZoomWidget16sceneEventFilterEP13QGraphicsItemP6QEvent @ 49 NONAME
+ _ZThn8_N13GlxZoomWidgetD0Ev @ 50 NONAME
+ _ZThn8_N13GlxZoomWidgetD1Ev @ 51 NONAME
--- a/ui/widgets/glxzoomwidget/inc/glxzoomwidget.h Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/widgets/glxzoomwidget/inc/glxzoomwidget.h Fri Sep 17 08:29:24 2010 +0300
@@ -101,6 +101,8 @@
void setZoomParams();
bool isFocussedItemCorrupt();
+ //Reset the decoder and the associated flags
+ void resetDecoder();
//data members
private:
//to be in sync with the model
--- a/ui/widgets/glxzoomwidget/src/glxzoomwidget.cpp Thu Sep 02 20:26:45 2010 +0300
+++ b/ui/widgets/glxzoomwidget/src/glxzoomwidget.cpp Fri Sep 17 08:29:24 2010 +0300
@@ -66,8 +66,7 @@
GlxZoomWidget::~GlxZoomWidget()
{
- //disconnect all existing signals
- disconnect(this,SIGNAL( pinchGestureReceived(int) ), this, SLOT( sendDecodeRequest(int) ) );
+
//AA
disconnect( this, SIGNAL( stepZoom() ), this, SLOT( animateDoubleTap()));
//no Null checks required
@@ -76,10 +75,16 @@
delete mBlackBackgroundItem;
//reset the decoder to cancel pending tasks
if(mImageDecoder) {
- mImageDecoder->resetDecoder();
+ resetDecoder();
delete mImageDecoder;
}
}
+void GlxZoomWidget::resetDecoder()
+{
+ mImageDecoder->resetDecoder();
+ mImageDecodeRequestSend = false;
+ mDecodedImageAvailable = false;
+}
void GlxZoomWidget::setModel (QAbstractItemModel *model)
{
@@ -113,7 +118,7 @@
emit zoomWidgetMovedBackground(mFocusIndex);
//this actually resets the ZoomWidget and decoder
if(mImageDecoder) {
- mImageDecoder->resetDecoder();
+ resetDecoder();
}
retreiveFocusedImage();
@@ -122,22 +127,21 @@
void GlxZoomWidget::indexChanged(int index)
{
if(mFocusIndex != index) {
- mImageDecoder->resetDecoder();//reset the decoder first to cancel pending tasks
- mImageDecodeRequestSend = false;
- mDecodedImageAvailable = false;
+ resetDecoder(); //reset the decoder first to cancel pending tasks
retreiveFocusedImage(); //Update mZoomItem with focused Image
}
}
void GlxZoomWidget::cleanUp()
{
+ disconnect(this,SIGNAL( pinchGestureReceived(int) ), this, SLOT( sendDecodeRequest(int) ) );
if(mModel) {
disconnect( mModel, SIGNAL( dataChanged(QModelIndex,QModelIndex) ), this, SLOT( dataChanged(QModelIndex,QModelIndex) ) );
disconnect( mModel, SIGNAL( destroyed() ), this, SLOT( modelDestroyed() ) );
mModel = NULL;
}
if(mImageDecoder) {
- mImageDecoder->resetDecoder();
+ resetDecoder();
}
mZoomItem->setPixmap(QPixmap());
}
@@ -222,11 +226,14 @@
if (pinchG->state() == Qt::GestureStarted) {
emit pinchGestureReceived(mFocusIndex);
//bring the zoom widget to foreground
+ if(zValue()!=mMaxZValue)
+ {
setZValue(mMaxZValue);
//show the black background
mBlackBackgroundItem->setParentItem(parentItem());
mBlackBackgroundItem->setZValue(mMaxZValue - 1);
mBlackBackgroundItem->show();
+ }
}
if (pinchG->state() == Qt::GestureFinished) {