<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>icons/cutemaze.desktop</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -1,3 +1,6 @@
+2008-05-25 Graeme Gott &lt;graeme@gottcode.org&gt;
+	* Improve statusbar message handling.
+
 2008-03-20 Graeme Gott &lt;graeme@gottcode.org&gt;
 	* Tag version 1.0.1.
 	* Relicense to GPLv3.</diff>
      <filename>ChangeLog</filename>
    </modified>
    <modified>
      <diff>@@ -1,29 +1,28 @@
 Installation
 ============
 
-Open a terminal and browse into the extracted &quot;cutemaze&quot; folder.
+Open a terminal and browse into the extracted folder.
 
 Linux:
     1.) Type 'qmake' to configure the program. If you would like to install the
-        program somewhere other than /usr, pass a new value for PREFIX during
-        configuration: 'qmake PREFIX=/opt'.
+        program somewhere other than /usr/local, pass a new value for PREFIX
+        during configuration: 'qmake PREFIX=/opt'.
 
     2.) Type 'make' to compile the program.
 
-    3.) Become root (type 'su') and type 'make install' to install the program.
+    3.) Type 'sudo make install' to install the program.
 
-Windows:
-    1.) Type 'qmake' to configure the program.
+Mac OS X:
+    1.) Type 'qmake -spec macx-g++' to configure the program.
 
     2.) Type 'make' to compile the program.
 
-    3.) Type 'windows_deploy' to copy the program and its required libraries
-        into a subfolder named &quot;CuteMaze&quot;.
+    3.) Type './mac_deploy.sh' to create a disk image of the program.
 
-Mac OS X:
-    1.) Type 'qmake -spec macx-g++' to configure the program.
+Windows:
+    1.) Type 'qmake' to configure the program.
 
     2.) Type 'make' to compile the program.
 
-    3.) Type './mac_deploy.sh' to create two disk images of the program, one
-        with QT bundled and one without.
+    3.) Type 'windows_deploy' to copy the program and its required libraries
+        into a subfolder.</diff>
      <filename>README</filename>
    </modified>
    <modified>
      <diff>@@ -44,7 +44,7 @@ win32 {
 
 unix: !macx {
 	isEmpty(PREFIX) {
-		PREFIX = /usr
+		PREFIX = /usr/local
 	}
 
 	binary.path = $$PREFIX/bin/
@@ -54,7 +54,7 @@ unix: !macx {
 	icon.files = icons/cutemaze.png
 
 	desktop.path = $$PREFIX/share/applications/
-	desktop.files = cutemaze.desktop
+	desktop.files = icons/cutemaze.desktop
 
 	INSTALLS += binary icon desktop
 }</diff>
      <filename>cutemaze.pro</filename>
    </modified>
    <modified>
      <diff>@@ -1,25 +1,21 @@
 #!/bin/bash
 
 APP=&quot;CuteMaze&quot;
-VERSION=&quot;1.0.1&quot;
+VERSION=&quot;1.0.2&quot;
 
 BUNDLE=&quot;$APP.app&quot;
+BUNDLE_FW=&quot;$BUNDLE/Contents/Frameworks&quot;
 EXE=&quot;$BUNDLE/Contents/MacOS/CuteMaze&quot;
 EXE_FW=&quot;@executable_path/../Frameworks&quot;
 QT_FW=`qmake -query QT_INSTALL_LIBS`
+QTCORE=&quot;QtCore.framework/Versions/4/QtCore&quot;
+QTGUI=&quot;QtGui.framework/Versions/4/QtGui&quot;
+QTXML=&quot;QtXml.framework/Versions/4/QtXml&quot;
+QTSVG=&quot;QtSvg.framework/Versions/4/QtSvg&quot;
 
-# Strip executable
 strip $EXE
 
-# Create disk image without bundled Qt
-echo -n &quot;Creating disk image... &quot;
-hdiutil create -quiet -ov -srcfolder $BUNDLE -format UDBZ -volname &quot;$APP&quot; &quot;$APP $VERSION.dmg&quot;
-hdiutil internet-enable -quiet -yes &quot;$APP $VERSION.dmg&quot;
-echo &quot;Done&quot;
-
-# Copy Frameworks
 echo -n &quot;Copying frameworks... &quot;
-BUNDLE_FW=&quot;$BUNDLE/Contents/Frameworks&quot;
 mkdir $BUNDLE_FW
 cp -R $QT_FW/QtCore.framework $BUNDLE_FW
 cp -R $QT_FW/QtGui.framework $BUNDLE_FW
@@ -27,19 +23,13 @@ cp -R $QT_FW/QtXml.framework $BUNDLE_FW
 cp -R $QT_FW/QtSvg.framework $BUNDLE_FW
 echo &quot;Done&quot;
 
-# Set framework names
 echo -n &quot;Setting framework names... &quot;
-QTCORE=&quot;QtCore.framework/Versions/4/QtCore&quot;
-QTGUI=&quot;QtGui.framework/Versions/4/QtGui&quot;
-QTXML=&quot;QtXml.framework/Versions/4/QtXml&quot;
-QTSVG=&quot;QtSvg.framework/Versions/4/QtSvg&quot;
 install_name_tool -id $EXE_FW/$QTCORE $BUNDLE_FW/$QTCORE
 install_name_tool -id $EXE_FW/$QTGUI $BUNDLE_FW/$QTGUI
 install_name_tool -id $EXE_FW/$QTXML $BUNDLE_FW/$QTXML
 install_name_tool -id $EXE_FW/$QTSVG $BUNDLE_FW/$QTSVG
 echo &quot;Done&quot;
 
-# Update locations in executable
 echo -n &quot;Updating locations in executable... &quot;
 install_name_tool -change $QTCORE $EXE_FW/$QTCORE $EXE
 install_name_tool -change $QTGUI $EXE_FW/$QTGUI $EXE
@@ -47,7 +37,6 @@ install_name_tool -change $QTXML $EXE_FW/$QTXML $EXE
 install_name_tool -change $QTSVG $EXE_FW/$QTSVG $EXE
 echo &quot;Done&quot;
 
-# Update locations in frameworks
 echo -n &quot;Updating locations in frameworks... &quot;
 install_name_tool -change $QTCORE $EXE_FW/$QTCORE $BUNDLE_FW/$QTGUI
 install_name_tool -change $QTCORE $EXE_FW/$QTCORE $BUNDLE_FW/$QTXML
@@ -56,8 +45,7 @@ install_name_tool -change $QTGUI $EXE_FW/$QTGUI $BUNDLE_FW/$QTSVG
 install_name_tool -change $QTXML $EXE_FW/$QTXML $BUNDLE_FW/$QTSVG
 echo &quot;Done&quot;
 
-# Create second disk image
-echo -n &quot;Creating disk image with bundled Qt... &quot;
-hdiutil create -quiet -ov -srcfolder $BUNDLE -format UDBZ -volname &quot;$APP&quot; &quot;$APP Qt $VERSION.dmg&quot;
-hdiutil internet-enable -quiet -yes &quot;$APP Qt $VERSION.dmg&quot;
+echo -n &quot;Creating disk image... &quot;
+hdiutil create -quiet -ov -srcfolder $BUNDLE -format UDBZ -volname &quot;$APP&quot; &quot;${APP}_$VERSION.dmg&quot;
+hdiutil internet-enable -quiet -yes &quot;${APP}_$VERSION.dmg&quot;
 echo &quot;Done&quot;</diff>
      <filename>mac_deploy.sh</filename>
    </modified>
    <modified>
      <diff>@@ -44,8 +44,6 @@ Board::Board(QMainWindow* parent)
 	m_total_targets(3),
 	m_maze(0),
 	m_show_path(true),
-	m_show_time(true),
-	m_show_steps(true),
 	m_smooth_movement(true),
 	m_col_delta(0),
 	m_row_delta(0),
@@ -62,9 +60,19 @@ Board::Board(QMainWindow* parent)
 	m_move_animation-&gt;setUpdateInterval(25);
 	connect(m_move_animation, SIGNAL(frameChanged(int)), this, SLOT(repaint()));
 
-	// Create status message
-	m_status_message = new QLabel;
-	parent-&gt;statusBar()-&gt;addPermanentWidget(m_status_message);
+	// Create status messages
+	m_status_time_message = new QLabel;
+	m_status_time_message-&gt;setContentsMargins(10, 0, 10, 0);
+	parent-&gt;statusBar()-&gt;addPermanentWidget(m_status_time_message);
+
+	m_status_steps_message = new QLabel;
+	m_status_steps_message-&gt;setContentsMargins(10, 0, 10, 0);
+	parent-&gt;statusBar()-&gt;addPermanentWidget(m_status_steps_message);
+
+	m_status_remain_message = new QLabel;
+	m_status_remain_message-&gt;setContentsMargins(10, 0, 10, 0);
+	parent-&gt;statusBar()-&gt;addPermanentWidget(m_status_remain_message);
+
 	m_status_timer = new QTimer(this);
 	m_status_timer-&gt;setInterval(1000);
 	connect(m_status_timer, SIGNAL(timeout()), this, SLOT(updateStatusMessage()));
@@ -138,6 +146,7 @@ void Board::newGame()
 	// Show
 	update();
 	updateStatusMessage();
+	m_status_remain_message-&gt;setVisible(true);
 
 	m_paused = false;
 	emit pauseAvailable(true);
@@ -148,7 +157,9 @@ void Board::newGame()
 
 void Board::loadGame()
 {
-	m_status_message-&gt;clear();
+	m_status_time_message-&gt;clear();
+	m_status_steps_message-&gt;clear();
+	m_status_remain_message-&gt;clear();
 
 	QSettings settings;
 
@@ -187,6 +198,7 @@ void Board::loadGame()
 	// Show
 	update();
 	updateStatusMessage();
+	m_status_remain_message-&gt;setVisible(true);
 
 	// Should not happen, but handle a finished game
 	if (m_targets.isEmpty()) {
@@ -235,9 +247,9 @@ void Board::loadSettings()
 	QSettings settings;
 
 	// Load gameplay settings
+	m_status_steps_message-&gt;setVisible(settings.value(&quot;Show Steps&quot;, true).toBool());
+	m_status_time_message-&gt;setVisible(settings.value(&quot;Show Time&quot;, true).toBool());
 	m_show_path = settings.value(&quot;Show Path&quot;, true).toBool();
-	m_show_steps = settings.value(&quot;Show Steps&quot;, true).toBool();
-	m_show_time = settings.value(&quot;Show Time&quot;, true).toBool();
 	m_smooth_movement = settings.value(&quot;Smooth Movement&quot;, true).toBool();
 
 	// Load player controls
@@ -387,22 +399,12 @@ void Board::updateStatusMessage()
 		return;
 	}
 
-	QString time;
-	if (m_show_time) {
-		QTime t(0, 0, 0);
-		t = t.addMSecs(m_player_time.elapsed() + m_player_total_time);
-		time = t.toString(&quot;hh:mm:ss&quot;);
-	}
+	QTime t(0, 0, 0);
+	t = t.addMSecs(m_player_time.elapsed() + m_player_total_time);
 
-	if (m_show_steps &amp;&amp; m_show_time) {
-		m_status_message-&gt;setText(tr(&quot;%1 elapsed, %2 steps taken, %3 of %4 targets remaining&quot;) .arg(time) .arg(m_player_steps) .arg(m_targets.size()) .arg(m_total_targets));
-	} else if (m_show_steps) {
-		m_status_message-&gt;setText(tr(&quot;%1 steps taken, %2 of %3 targets remaining&quot;) .arg(m_player_steps) .arg(m_targets.size()) .arg(m_total_targets));
-	} else if (m_show_time) {
-		m_status_message-&gt;setText(tr(&quot;%1 elapsed, %2 of %3 targets remaining&quot;) .arg(time) .arg(m_targets.size()) .arg(m_total_targets));
-	} else {
-		m_status_message-&gt;setText(tr(&quot;%1 of %2 targets remaining&quot;) .arg(m_targets.size()) .arg(m_total_targets));
-	}
+	m_status_time_message-&gt;setText(tr(&quot;%1 elapsed&quot;) .arg(t.toString(&quot;hh:mm:ss&quot;)));
+	m_status_steps_message-&gt;setText(tr(&quot;%1 steps taken&quot;) .arg(m_player_steps));
+	m_status_remain_message-&gt;setText(tr(&quot;%1 of %2 targets remain&quot;) .arg(m_targets.size()) .arg(m_total_targets));
 }
 
 // ============================================================================
@@ -508,23 +510,6 @@ void Board::finish()
 	m_status_timer-&gt;stop();
 	update();
 
-	QString time;
-	if (m_show_time) {
-		QTime t(0, 0, 0);
-		t = t.addSecs(seconds);
-		time = t.toString(&quot;hh:mm:ss&quot;);
-	}
-
-	if (m_show_steps &amp;&amp; m_show_time) {
-		m_status_message-&gt;setText(tr(&quot;%1 elapsed, %2 steps taken&quot;) .arg(time) .arg(m_player_steps));
-	} else if (m_show_steps) {
-		m_status_message-&gt;setText(tr(&quot;%1 steps taken&quot;) .arg(m_player_steps));
-	} else if (m_show_time) {
-		m_status_message-&gt;setText(tr(&quot;%1 elapsed&quot;) .arg(time));
-	} else {
-		m_status_message-&gt;setText(tr(&quot;Success!&quot;));
-	}
-
 	// Add high score
 	emit finished(m_player_steps, seconds, algorithm, size);
 }</diff>
      <filename>src/board.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -72,13 +72,12 @@ private:
 	Maze* m_maze;
 	QPoint m_start;
 	QList&lt;QPoint&gt; m_targets;
-	QLabel* m_status_message;
+	QLabel* m_status_time_message;
+	QLabel* m_status_steps_message;
+	QLabel* m_status_remain_message;
 	QTimer* m_status_timer;
 
 	bool m_show_path;
-	bool m_show_time;
-	bool m_show_steps;
-
 	bool m_smooth_movement;
 	int m_col_delta;
 	int m_row_delta;</diff>
      <filename>src/board.h</filename>
    </modified>
    <modified>
      <diff>@@ -286,7 +286,7 @@ Window::Window()
 #else
 	initMenuBar();
 #endif
-	m_pause_action-&gt;setShortcut(Qt::Key_P);
+	m_pause_action-&gt;setShortcut(tr(&quot;P&quot;));
 	m_pause_action-&gt;setCheckable(true);
 	connect(m_pause_action, SIGNAL(toggled(bool)), m_board, SLOT(pauseGame(bool)));
 	connect(m_board, SIGNAL(pauseAvailable(bool)), m_pause_action, SLOT(setEnabled(bool)));
@@ -348,9 +348,9 @@ void Window::closeEvent(QCloseEvent* event)
 void Window::initMenuBar()
 {
 	QMenu* game_menu = menuBar()-&gt;addMenu(tr(&quot;Game&quot;));
-	game_menu-&gt;addAction(tr(&quot;New Game&quot;), m_board, SLOT(newGame()), tr(&quot;Ctrl+N&quot;));
-	m_pause_action = game_menu-&gt;addAction(tr(&quot;Pause Game&quot;));
-	game_menu-&gt;addAction(tr(&quot;High Scores&quot;), m_scores, SLOT(show()), tr(&quot;Ctrl+H&quot;));
+	game_menu-&gt;addAction(tr(&quot;New&quot;), m_board, SLOT(newGame()), tr(&quot;Ctrl+N&quot;));
+	m_pause_action = game_menu-&gt;addAction(tr(&quot;Pause&quot;));
+	game_menu-&gt;addAction(tr(&quot;Scores&quot;), m_scores, SLOT(show()));
 	game_menu-&gt;addAction(tr(&quot;Settings&quot;), m_settings, SLOT(show()));
 	game_menu-&gt;addAction(tr(&quot;Quit&quot;), this, SLOT(close()), tr(&quot;Ctrl+Q&quot;));
 }
@@ -380,10 +380,8 @@ void Window::initToolBar()
 	action = toolbar-&gt;addAction(icons.at(0), tr(&quot;New&quot;), m_board, SLOT(newGame()));
 	action-&gt;setShortcut(tr(&quot;Ctrl+N&quot;));
 	m_pause_action = toolbar-&gt;addAction(icons.at(1), tr(&quot;Pause&quot;));
-	action = toolbar-&gt;addAction(icons.at(2), tr(&quot;Scores&quot;), m_scores, SLOT(show()));
-	action-&gt;setShortcut(tr(&quot;Ctrl+H&quot;));
-	action = toolbar-&gt;addAction(icons.at(3), tr(&quot;Settings&quot;), m_settings, SLOT(show()));
-	action-&gt;setShortcut(tr(&quot;Ctrl+S&quot;));
+	toolbar-&gt;addAction(icons.at(2), tr(&quot;Scores&quot;), m_scores, SLOT(show()));
+	toolbar-&gt;addAction(icons.at(3), tr(&quot;Settings&quot;), m_settings, SLOT(show()));
 	action = toolbar-&gt;addAction(icons.at(4), tr(&quot;Quit&quot;), this, SLOT(close()));
 	action-&gt;setShortcut(tr(&quot;Ctrl+Q&quot;));
 	addToolBar(toolbar);</diff>
      <filename>src/window.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,5 +1,4 @@
 MKDIR CuteMaze
-STRIP release\CuteMaze.exe
 COPY release\CuteMaze.exe CuteMaze
 COPY %QTDIR%\bin\mingwm10.dll CuteMaze
 COPY %QTDIR%\bin\QtCore4.dll CuteMaze</diff>
      <filename>windows_deploy.bat</filename>
    </modified>
  </modified>
  <removed type="array">
    <removed>
      <filename>cutemaze.desktop</filename>
    </removed>
  </removed>
  <parents type="array">
    <parent>
      <id>9101f392d81447be77c18c3b07fc18e0b7d22821</id>
    </parent>
  </parents>
  <author>
    <name>Graeme Gott</name>
    <email>graeme@gottcode.org</email>
  </author>
  <url>http://github.com/gottcode/cutemaze/commit/863c61a92c005b80aeb630e1ee8f57782d965b75</url>
  <id>863c61a92c005b80aeb630e1ee8f57782d965b75</id>
  <committed-date>2008-06-16T14:10:21-07:00</committed-date>
  <authored-date>2008-06-16T14:10:21-07:00</authored-date>
  <message>Improve statusbar message handling.</message>
  <tree>161eaa75b57bb9889fc4ed7672a53435e021ebf4</tree>
  <committer>
    <name>Graeme Gott</name>
    <email>graeme@gottcode.org</email>
  </committer>
</commit>
