traverso-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Traverso-commit] traverso/src/traverso Interface.cpp


From: Remon Sijrier
Subject: [Traverso-commit] traverso/src/traverso Interface.cpp
Date: Mon, 07 May 2007 20:16:30 +0000

CVSROOT:        /sources/traverso
Module name:    traverso
Changes by:     Remon Sijrier <r_sijrier>       07/05/07 20:16:30

Modified files:
        src/traverso   : Interface.cpp 

Log message:
        * some fixes for keymap to html export

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/traverso/src/traverso/Interface.cpp?cvsroot=traverso&r1=1.75&r2=1.76

Patches:
Index: Interface.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/traverso/Interface.cpp,v
retrieving revision 1.75
retrieving revision 1.76
diff -u -b -r1.75 -r1.76
--- Interface.cpp       7 May 2007 20:14:11 -0000       1.75
+++ Interface.cpp       7 May 2007 20:16:30 -0000       1.76
@@ -573,25 +573,42 @@
                QString name = objects.key(objectlist);
                
                out << "<h3>" << name << "</h3>";
-               out << "<table><tr><td width=200>" << tr("<b>Description</b>") 
<< "</td><td>" << tr("<b>Key Sequence</b>") << "</td></tr>";
+               out << "<table><tr><td width=220>" << tr("<b>Description</b>") 
<< "</td><td>" << tr("<b>Key Sequence</b>") << "</td></tr>";
+               
+               QStringList result;
                
                foreach(const QMetaObject* mo, objectlist) {
                        QList<MenuData > list;
                        
                        ie().create_menudata_for_metaobject(mo, list);
                
+                       QList<QMenu* > menulist;
                        QMenu* menu = create_context_menu(0, &list);
                        if (menu) {
+                               menulist.append(menu);
                                foreach(QAction* action, menu->actions()) {
+                                       if (action->menu()) {
+                                               menulist.append(action->menu());
+                                       }
+                               }
+                               for (int i=0; i<menulist.size(); ++i) {
+                                       QMenu* somemenu = menulist.at(i);
+                                       foreach(QAction* action, 
somemenu->actions()) {
                                        QStringList strings = 
action->data().toStringList();
                                        if (strings.size() >= 3) {
-                                               out << "<tr><td>" << 
strings.at(1) << "</td><td>" << strings.at(2) << "</td></tr>";
+                                                       QString submenuname = 
"";
+                                                       if (i > 0) {
+                                                               submenuname = 
somemenu->menuAction()->text() + "&#160;&#160;&#160;&#160;";
+                                                       }
+                                                       result += 
QString("<tr><td>") + submenuname + strings.at(1) + "</td><td>" + strings.at(2) 
+ "</td></tr>";
+                                               }
                                        }
                                }
                                delete menu;
                        }
-
                }
+               result.sort();
+               out << result.join("");
                out << "</table></br></br>";
        }
        
@@ -693,11 +710,13 @@
                QAction* action = menu->insertMenu(0, sub);
                action->setText(key);
                foreach(MenuData data, *list) {
-                       QAction* action = new QAction(this);
+                       QAction* action = new QAction(sub);
                        QString keyfact = 
create_keyfact_string(data.keysequence, data.modifierkeys);
                        QString text = QString(data.description + "  " + 
keyfact);
                        action->setText(text);
-                       action->setData(data.iedata);
+                       QStringList strings;
+                       strings << data.iedata << data.description << keyfact;
+                       action->setData(strings);
                        sub->addAction(action);
                }
                




reply via email to

[Prev in Thread] Current Thread [Next in Thread]