(svn r13501) -Feature(tte): ctrl+click on sign you own to remove it (Osai, planetmaker)
--- a/src/signs_func.h Thu Jun 12 21:36:56 2008 +0000
+++ b/src/signs_func.h Thu Jun 12 22:29:42 2008 +0000
@@ -15,6 +15,7 @@
/* signs_gui.cpp */
void ShowRenameSignWindow(const Sign *si);
+void HandleClickOnSign(const Sign *si);
void ShowSignList();
--- a/src/signs_gui.cpp Thu Jun 12 21:36:56 2008 +0000
+++ b/src/signs_gui.cpp Thu Jun 12 22:29:42 2008 +0000
@@ -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 Thu Jun 12 21:36:56 2008 +0000
+++ b/src/viewport.cpp Thu Jun 12 22:29:42 2008 +0000
@@ -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;
}
}