clock/clockui/clockwidget/clockwidgetimpl/src/digitalclockwidget.cpp
changeset 57 bb2d3e476f29
parent 45 b6db4fd4947b
equal deleted inserted replaced
55:2c54b51f39c4 57:bb2d3e476f29
    25 #include <QTimer>
    25 #include <QTimer>
    26 #include <QTime>
    26 #include <QTime>
    27 
    27 
    28 // User includes
    28 // User includes
    29 #include "digitalclockwidget.h"
    29 #include "digitalclockwidget.h"
       
    30 #include "OstTraceDefinitions.h"
       
    31 #ifdef OST_TRACE_COMPILER_IN_USE
       
    32 #include "digitalclockwidgetTraces.h"
       
    33 #endif
       
    34 
    30 
    35 
    31 // Constants
    36 // Constants
    32 const int clockUpdateInterval  (60000); // msec
    37 const int clockUpdateInterval  (60000); // msec
    33 
    38 
    34 /*!
    39 /*!
    45 */
    50 */
    46 DigitalClockWidget::DigitalClockWidget(bool useAmPm, QGraphicsItem *parent)
    51 DigitalClockWidget::DigitalClockWidget(bool useAmPm, QGraphicsItem *parent)
    47   : HbWidget(parent),
    52   : HbWidget(parent),
    48     mUseAmPm(useAmPm)
    53     mUseAmPm(useAmPm)
    49 {
    54 {
       
    55     OstTraceFunctionEntry0( DIGITALCLOCKWIDGET_DIGITALCLOCKWIDGET_ENTRY );
    50     bool result = HbStyleLoader::registerFilePath(":/resource/digitalclockwidget.widgetml");
    56     bool result = HbStyleLoader::registerFilePath(":/resource/digitalclockwidget.widgetml");
    51     result = HbStyleLoader::registerFilePath(":/resource/digitalclockwidget.css");
    57     result = HbStyleLoader::registerFilePath(":/resource/digitalclockwidget.css");
    52     result = HbStyleLoader::registerFilePath(":/resource/digitalclockwidget_color.css");
    58     result = HbStyleLoader::registerFilePath(":/resource/digitalclockwidget_color.css");
    53 
    59 
    54     createPrimitives();
    60     createPrimitives();
    58     
    64     
    59     QTime time = QTime::currentTime();
    65     QTime time = QTime::currentTime();
    60     int initialIntervalTime = (clockUpdateInterval - ( time.msec() + (time.second() * 1000)));
    66     int initialIntervalTime = (clockUpdateInterval - ( time.msec() + (time.second() * 1000)));
    61     mTimer->start(initialIntervalTime);
    67     mTimer->start(initialIntervalTime);
    62     
    68     
       
    69 OstTraceFunctionExit0( DIGITALCLOCKWIDGET_DIGITALCLOCKWIDGET_EXIT );
    63 }
    70 }
    64 
    71 
    65 /*!
    72 /*!
    66     Destructor.
    73     Destructor.
    67 */
    74 */
    68 DigitalClockWidget::~DigitalClockWidget()
    75 DigitalClockWidget::~DigitalClockWidget()
    69 {   
    76 {   
       
    77     OstTraceFunctionEntry0( DUP1_DIGITALCLOCKWIDGET_DIGITALCLOCKWIDGET_ENTRY );
    70     mTimer->stop();
    78     mTimer->stop();
    71     HbStyleLoader::unregisterFilePath(":/resource/digitalclockwidget.widgetml");
    79     HbStyleLoader::unregisterFilePath(":/resource/digitalclockwidget.widgetml");
    72     HbStyleLoader::unregisterFilePath(":/resource/digitalclockwidget.css");
    80     HbStyleLoader::unregisterFilePath(":/resource/digitalclockwidget.css");
    73     HbStyleLoader::unregisterFilePath(":/resource/digitalclockwidget_color.css");
    81     HbStyleLoader::unregisterFilePath(":/resource/digitalclockwidget_color.css");
    74 
    82 
       
    83 OstTraceFunctionExit0( DUP1_DIGITALCLOCKWIDGET_DIGITALCLOCKWIDGET_EXIT );
    75 }
    84 }
    76 
    85 
    77 /*!
    86 /*!
    78     Updates clock visualization according to current time
    87     Updates clock visualization according to current time
    79  */
    88  */
    80 void DigitalClockWidget::tick()
    89 void DigitalClockWidget::tick()
    81 {
    90 {
       
    91     OstTraceFunctionEntry0( DIGITALCLOCKWIDGET_TICK_ENTRY );
    82     mTimer->setInterval(clockUpdateInterval);
    92     mTimer->setInterval(clockUpdateInterval);
    83     updatePrimitives();
    93     updatePrimitives();
    84     update();
    94     update();
       
    95 OstTraceFunctionExit0( DIGITALCLOCKWIDGET_TICK_EXIT );
    85 }
    96 }
    86 
    97 
    87 /*!
    98 /*!
    88     Toggles time format
    99     Toggles time format
    89  */
   100  */
    90 void DigitalClockWidget::setAmPm(bool useAmPm)
   101 void DigitalClockWidget::setAmPm(bool useAmPm)
    91 {
   102 {
       
   103     OstTraceFunctionEntry0( DIGITALCLOCKWIDGET_SETAMPM_ENTRY );
    92     
   104     
    93     bool old = mUseAmPm;
   105     bool old = mUseAmPm;
    94     mUseAmPm = useAmPm;
   106     mUseAmPm = useAmPm;
    95     
   107     
    96     if (mUseAmPm != old) { // change am/pm label
   108     if (mUseAmPm != old) { // change am/pm label
   101 	    } else {
   113 	    } else {
   102 	    	mAmPmLabel->setText(""); // set am/pm label as null
   114 	    	mAmPmLabel->setText(""); // set am/pm label as null
   103 	    }
   115 	    }
   104     }
   116     }
   105     
   117     
       
   118 OstTraceFunctionExit0( DIGITALCLOCKWIDGET_SETAMPM_EXIT );
   106 }
   119 }
   107 
   120 
   108 /*!
   121 /*!
   109     @copydoc HbWidget::resizeEvent()
   122     @copydoc HbWidget::resizeEvent()
   110  */
   123  */
   111 void DigitalClockWidget::resizeEvent(QGraphicsSceneResizeEvent *event)
   124 void DigitalClockWidget::resizeEvent(QGraphicsSceneResizeEvent *event)
   112 {
   125 {
       
   126     OstTraceFunctionEntry0( DIGITALCLOCKWIDGET_RESIZEEVENT_ENTRY );
   113     HbWidget::resizeEvent(event);
   127     HbWidget::resizeEvent(event);
       
   128 OstTraceFunctionExit0( DIGITALCLOCKWIDGET_RESIZEEVENT_EXIT );
   114 }
   129 }
   115 
   130 
   116 /*!
   131 /*!
   117     Creates all widget primitives.
   132     Creates all widget primitives.
   118  */
   133  */
   119 void DigitalClockWidget::createPrimitives()
   134 void DigitalClockWidget::createPrimitives()
   120 {
   135 {
       
   136     OstTraceFunctionEntry0( DIGITALCLOCKWIDGET_CREATEPRIMITIVES_ENTRY );
   121     mClockLabel = new HbTextItem(this);    
   137     mClockLabel = new HbTextItem(this);    
   122     mClockLabel->setTextWrapping( Hb::TextNoWrap );
   138     mClockLabel->setTextWrapping( Hb::TextNoWrap );
   123     HbStyle::setItemName(mClockLabel, QLatin1String("clockLabel"));
   139     HbStyle::setItemName(mClockLabel, QLatin1String("clockLabel"));
   124     
   140     
   125     mAmPmLabel = new HbTextItem(this);
   141     mAmPmLabel = new HbTextItem(this);
   126     mClockLabel->setTextWrapping( Hb::TextNoWrap );
   142     mClockLabel->setTextWrapping( Hb::TextNoWrap );
   127     HbStyle::setItemName(mAmPmLabel, QLatin1String("amPmLabel"));
   143     HbStyle::setItemName(mAmPmLabel, QLatin1String("amPmLabel"));
       
   144 OstTraceFunctionExit0( DIGITALCLOCKWIDGET_CREATEPRIMITIVES_EXIT );
   128 }
   145 }
   129 
   146 
   130 /*!
   147 /*!
   131     @copydoc HbWidget::updatePrimitives()
   148     @copydoc HbWidget::updatePrimitives()
   132     updates all widget primitives
   149     updates all widget primitives
   133  */
   150  */
   134 void DigitalClockWidget::updatePrimitives()
   151 void DigitalClockWidget::updatePrimitives()
   135 {
   152 {
       
   153 OstTraceFunctionEntry0( DIGITALCLOCKWIDGET_UPDATEPRIMITIVES_ENTRY );
   136 
   154 
   137     QTime time = QTime::currentTime();
   155     QTime time = QTime::currentTime();
   138     QString timeString;
   156     QString timeString;
   139     
   157     
   140     if (mUseAmPm) {
   158     if (mUseAmPm) {
   152     timeString.append(timeSeparator); // append time separator
   170     timeString.append(timeSeparator); // append time separator
   153     timeString.append(time.toString("mm")); //append minute part
   171     timeString.append(time.toString("mm")); //append minute part
   154 
   172 
   155     mClockLabel->setText(timeString);
   173     mClockLabel->setText(timeString);
   156 
   174 
       
   175 OstTraceFunctionExit0( DIGITALCLOCKWIDGET_UPDATEPRIMITIVES_EXIT );
   157 }
   176 }