[Aptitude-svn-commit] r3479 - in branches/aptitude-0.3/aptitude: . src/vscreen
Daniel Burrows
dburrows@costa.debian.org
Mon, 27 Jun 2005 21:22:46 +0000
Author: dburrows
Date: Mon Jun 27 21:22:43 2005
New Revision: 3479
Modified:
branches/aptitude-0.3/aptitude/ChangeLog
branches/aptitude-0.3/aptitude/src/vscreen/vscreen.cc
branches/aptitude-0.3/aptitude/src/vscreen/vscreen_widget.h
Log:
Fix the core code to compile in the new regime.
Modified: branches/aptitude-0.3/aptitude/ChangeLog
==============================================================================
--- branches/aptitude-0.3/aptitude/ChangeLog (original)
+++ branches/aptitude-0.3/aptitude/ChangeLog Mon Jun 27 21:22:43 2005
@@ -1,5 +1,9 @@
2005-06-27 Daniel Burrows <dburrows@debian.org>
+ * src/vscreen/vscreen.cc, src/vscreen/vscreen.h:
+
+ Fix compilation problems from the new keybindings stuff.
+
* src/vscreen/vscreen.cc:
Use the function-key information from get_wch() to decide what
Modified: branches/aptitude-0.3/aptitude/src/vscreen/vscreen.cc
==============================================================================
--- branches/aptitude-0.3/aptitude/src/vscreen/vscreen.cc (original)
+++ branches/aptitude-0.3/aptitude/src/vscreen/vscreen.cc Mon Jun 27 21:22:43 2005
@@ -29,6 +29,7 @@
#include "curses++.h"
#include "vscreen_widget.h"
+#include "transcode.h"
#include "vs_editline.h"
#include "vs_menu.h"
#include "vs_menubar.h"
@@ -190,54 +191,54 @@
keybinding undokey, helpkey, researchkey;
keybinding menutogglekey, cancelkey;
- upkey.push_back(KEY_UP);
- upkey.push_back('k');
- downkey.push_back(KEY_DOWN);
- downkey.push_back('j');
- leftkey.push_back(KEY_LEFT);
- leftkey.push_back('h');
- rightkey.push_back(KEY_RIGHT);
- rightkey.push_back('l');
- quitkey.push_back("q"[0]);
-
- historyprevkey.push_back(KEY_UP);
- historyprevkey.push_back(KEY_CTRL('p'));
- historynextkey.push_back(KEY_DOWN);
- historynextkey.push_back(KEY_CTRL('n'));
-
- homekey.push_back(KEY_HOME);
- homekey.push_back(KEY_CTRL("a"[0]));
- endkey.push_back(KEY_END);
- endkey.push_back(KEY_CTRL("e"[0]));
-
- delfkey.push_back(KEY_DC);
- delfkey.push_back(KEY_CTRL("d"[0]));
-
- delbkey.push_back(KEY_BACKSPACE);
- delbkey.push_back(KEY_CTRL("h"[0]));
-
- ppagekey.push_back(KEY_PPAGE);
- ppagekey.push_back(KEY_CTRL("b"[0]));
-
- npagekey.push_back(KEY_NPAGE);
- npagekey.push_back(KEY_CTRL("f"[0]));
-
- undokey.push_back(KEY_CTRL("u"[0]));
- undokey.push_back(KEY_CTRL('_'));
-
- helpkey.push_back('?');
- helpkey.push_back(KEY_CTRL("h"[0]));
- helpkey.push_back(KEY_F(1));
-
- menutogglekey.push_back(KEY_F(10));
- menutogglekey.push_back(KEY_CTRL(' '));
-
- cancelkey.push_back(KEY_CTRL("g"[0]));
- cancelkey.push_back('\e');
- cancelkey.push_back(KEY_CTRL('['));
+ upkey.push_back(key(KEY_UP, true));
+ upkey.push_back(key(L'k', false));
+ downkey.push_back(key(KEY_DOWN, true));
+ downkey.push_back(key(L'j', false));
+ leftkey.push_back(key(KEY_LEFT, true));
+ leftkey.push_back(key(L'h', false));
+ rightkey.push_back(key(KEY_RIGHT, true));
+ rightkey.push_back(key(L'l', false));
+ quitkey.push_back(key(L'q', false));
+
+ historyprevkey.push_back(key(KEY_UP, true));
+ historyprevkey.push_back(KEY_CTRL(L'p'));
+ historynextkey.push_back(key(KEY_DOWN, true));
+ historynextkey.push_back(KEY_CTRL(L'n'));
+
+ homekey.push_back(key(KEY_HOME, true));
+ homekey.push_back(KEY_CTRL(L'a'));
+ endkey.push_back(key(KEY_END, true));
+ endkey.push_back(KEY_CTRL(L'e'));
+
+ delfkey.push_back(key(KEY_DC, true));
+ delfkey.push_back(KEY_CTRL(L'd'));
+
+ delbkey.push_back(key(KEY_BACKSPACE, true));
+ delbkey.push_back(KEY_CTRL(L'h'));
+
+ ppagekey.push_back(key(KEY_PPAGE, true));
+ ppagekey.push_back(KEY_CTRL(L'b'));
+
+ npagekey.push_back(key(KEY_NPAGE, true));
+ npagekey.push_back(KEY_CTRL(L'f'));
+
+ undokey.push_back(KEY_CTRL(L'u'));
+ undokey.push_back(KEY_CTRL(L'_'));
+
+ helpkey.push_back(key(L'?', false));
+ helpkey.push_back(KEY_CTRL(L'h'));
+ helpkey.push_back(key(KEY_F(1), true));
+
+ menutogglekey.push_back(key(KEY_F(10), true));
+ menutogglekey.push_back(KEY_CTRL(L' '));
+
+ cancelkey.push_back(KEY_CTRL(L'g'));
+ cancelkey.push_back(key(L'\e', true));
+ cancelkey.push_back(KEY_CTRL(L'['));
- researchkey.push_back('\\');
- researchkey.push_back('n');
+ researchkey.push_back(key(L'\\', false));
+ researchkey.push_back(key(L'n', true));
init_curses();
@@ -248,43 +249,43 @@
rootwin.keypad(true);
global_bindings.set("Quit", quitkey);
- global_bindings.set("Cycle", '\t');
- global_bindings.set("Refresh", KEY_CTRL("l"[0]));
+ global_bindings.set("Cycle", key(L'\t', false));
+ global_bindings.set("Refresh", KEY_CTRL(L'l'));
global_bindings.set("Up", upkey);
global_bindings.set("Down", downkey);
- global_bindings.set("LevelDown", "J"[0]);
- global_bindings.set("LevelUp", "K"[0]);
+ global_bindings.set("LevelDown", key(L'J', false));
+ global_bindings.set("LevelUp", key(L'K', false));
global_bindings.set("Left", leftkey);
global_bindings.set("Right", rightkey);
global_bindings.set("HistoryNext", historynextkey);
global_bindings.set("HistoryPrev", historyprevkey);
- global_bindings.set("Parent", '^');
+ global_bindings.set("Parent", key(L'^', false));
global_bindings.set("PrevPage", ppagekey);
global_bindings.set("NextPage", npagekey);
global_bindings.set("Begin", homekey);
global_bindings.set("End", endkey);
- global_bindings.set("Search", '/');
+ global_bindings.set("Search", key(L'/', false));
global_bindings.set("ReSearch", researchkey);
global_bindings.set("DelBack", delbkey);
global_bindings.set("DelForward", delfkey);
- global_bindings.set("DelEOL", KEY_CTRL("k"[0]));
- global_bindings.set("DelBOL", KEY_CTRL("u"[0]));
+ global_bindings.set("DelEOL", KEY_CTRL(L'k'));
+ global_bindings.set("DelBOL", KEY_CTRL(L'u'));
- global_bindings.set("Confirm", KEY_ENTER);
+ global_bindings.set("Confirm", key(KEY_ENTER, true));
global_bindings.set("Cancel", cancelkey);
global_bindings.set("Undo", undokey);
global_bindings.set("Help", helpkey);
global_bindings.set("ToggleMenuActive", menutogglekey);
- global_bindings.set("PushButton", ' ');
- global_bindings.set("Yes", _("yes_key")[0]);
- global_bindings.set("No", _("no_key")[0]);
-
- global_bindings.set("ToggleExpanded", KEY_ENTER);
- global_bindings.set("ExpandAll", '[');
- global_bindings.set("CollapseAll", ']');
- global_bindings.set("SelectParent", '^');
+ global_bindings.set("PushButton", key(L' ', false));
+ global_bindings.set("Yes", key(transcode(_("yes_key"))[0], false));
+ global_bindings.set("No", key(transcode(_("no_key"))[0], false));
+
+ global_bindings.set("ToggleExpanded", key(KEY_ENTER, true));
+ global_bindings.set("ExpandAll", key(L'[', false));
+ global_bindings.set("CollapseAll", key(L']', false));
+ global_bindings.set("SelectParent", key(L'^', false));
vs_editline::init_bindings();
vs_menu::init_bindings();
@@ -500,6 +501,8 @@
toplevel->win.nodelay(false);
} while(wch==(wint_t) KEY_RESIZE);
+ key k(wch, status == KEY_CODE_YES);
+
sigprocmask(SIG_BLOCK, &signals, &prevsignals);
if(status != ERR)
@@ -518,11 +521,11 @@
vscreen_tryupdate();
}
}
- else if(global_bindings.key_matches(wch, "Refresh"))
+ else if(global_bindings.key_matches(k, "Refresh"))
vscreen_redraw();
else if(toplevel)
{
- toplevel->dispatch_key(key(wch, status == KEY_CODE_YES));
+ toplevel->dispatch_key(k);
main_hook();
vscreen_tryupdate();
}
@@ -583,6 +586,8 @@
vscreen_acquirelock();
} while(wch==KEY_RESIZE);
+ key k = key(wch, result == KEY_CODE_YES);
+
// used when asynchronous resizing was dangerous
//if(resized)
// {
@@ -610,11 +615,11 @@
vscreen_tryupdate();
}
}
- else if(global_bindings.key_matches(wch, "Refresh"))
+ else if(global_bindings.key_matches(k, "Refresh"))
vscreen_redraw();
else if(result!=ERR && toplevel)
{
- toplevel->dispatch_char(key(wch, result == KEY_CODE_YES));
+ toplevel->dispatch_key(k);
main_hook();
vscreen_tryupdate();
}
Modified: branches/aptitude-0.3/aptitude/src/vscreen/vscreen_widget.h
==============================================================================
--- branches/aptitude-0.3/aptitude/src/vscreen/vscreen_widget.h (original)
+++ branches/aptitude-0.3/aptitude/src/vscreen/vscreen_widget.h Mon Jun 27 21:22:43 2005
@@ -29,6 +29,7 @@
#include "config/style.h"
class vs_container;
+class key;
struct size
{