changeset 9510:e5653305882a draft

(svn r13501) -Feature(tte): ctrl+click on sign you own to remove it (Osai, planetmaker)
author smatz <smatz@openttd.org>
date Thu, 12 Jun 2008 22:29:42 +0000
parents 8f3760896606
children 79e79188f27c
files src/signs_func.h src/signs_gui.cpp src/viewport.cpp
diffstat 3 files changed, 14 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/src/signs_func.h
+++ b/src/signs_func.h
@@ -15,6 +15,7 @@
 
 /* signs_gui.cpp */
 void ShowRenameSignWindow(const Sign *si);
+void HandleClickOnSign(const Sign *si);
 
 void ShowSignList();
 
--- a/src/signs_gui.cpp
+++ b/src/signs_gui.cpp
@@ -8,6 +8,7 @@
 #include "textbuf_gui.h"
 #include "window_gui.h"
 #include "player_gui.h"
+#include "player_func.h"
 #include "signs_base.h"
 #include "signs_func.h"
 #include "debug.h"
@@ -301,6 +302,15 @@
 	_query_sign_edit_widgets,
 };
 
+void HandleClickOnSign(const Sign *si)
+{
+	if (_ctrl_pressed && si->owner == _local_player) {
+		RenameSign(si->index, "");
+		return;
+	}
+	ShowRenameSignWindow(si);
+}
+
 void ShowRenameSignWindow(const Sign *si)
 {
 	/* Delete all other edit windows and the save window */
--- a/src/viewport.cpp
+++ b/src/viewport.cpp
@@ -1870,7 +1870,7 @@
 						y <  si->sign.top + 12 &&
 						x >= si->sign.left &&
 						x <  si->sign.left + si->sign.width_1) {
-					ShowRenameSignWindow(si);
+					HandleClickOnSign(si);
 					return true;
 				}
 			}
@@ -1884,7 +1884,7 @@
 						y <  si->sign.top + 24 &&
 						x >= si->sign.left &&
 						x <  si->sign.left + si->sign.width_1 * 2) {
-					ShowRenameSignWindow(si);
+					HandleClickOnSign(si);
 					return true;
 				}
 			}
@@ -1900,7 +1900,7 @@
 						y <  si->sign.top + ScaleByZoom(12, vp->zoom) &&
 						x >= si->sign.left &&
 						x <  si->sign.left + ScaleByZoom(si->sign.width_2, vp->zoom)) {
-					ShowRenameSignWindow(si);
+					HandleClickOnSign(si);
 					return true;
 				}
 			}