Author: mir3x
Date: Fri Nov 20 17:22:19 2015
New Revision: 30717

URL: http://svn.gna.org/viewcvs/freeciv?rev=30717&view=rev
Log:
Information about other players technologies could be wrong in qt-client. 
Fixed.

See bug #24095


Modified:
    branches/S2_5/client/gui-qt/plrdlg.cpp
    branches/S2_5/client/gui-qt/plrdlg.h

Modified: branches/S2_5/client/gui-qt/plrdlg.cpp
URL: 
http://svn.gna.org/viewcvs/freeciv/branches/S2_5/client/gui-qt/plrdlg.cpp?rev=30717&r1=30716&r2=30717&view=diff
==============================================================================
--- branches/S2_5/client/gui-qt/plrdlg.cpp      (original)
+++ branches/S2_5/client/gui-qt/plrdlg.cpp      Fri Nov 20 17:22:19 2015
@@ -466,11 +466,11 @@
       advance_iterate(A_FIRST, padvance) {
         tech_id = advance_number(padvance);
         if (player_invention_state(me, tech_id) == TECH_KNOWN
-            && (player_invention_state(pplayer, tech_id) == TECH_UNKNOWN)) {
+            && (player_invention_state(pplayer, tech_id) != TECH_KNOWN)) {
           a++;
           sorted_list_a << advance_name_for_player(pplayer, tech_id);
         }
-        if (player_invention_state(me, tech_id) == TECH_UNKNOWN
+        if (player_invention_state(me, tech_id) != TECH_KNOWN
             && (player_invention_state(pplayer, tech_id) == TECH_KNOWN)) {
           b++;
           sorted_list_b << advance_name_for_player(pplayer, tech_id);
@@ -513,7 +513,7 @@
                     + QString("</i>") + sp;
     }
   }
-  plr->update_report();
+  plr->update_report(false);
 }
 
 /**************************************************************************
@@ -636,8 +636,19 @@
 /**************************************************************************
   Updates widget
 **************************************************************************/
-void plr_report::update_report()
-{
+void plr_report::update_report(bool update_selection)
+{
+  QModelIndex qmi;
+
+  /* Force updating selected player information */
+  if (update_selection == true) {
+    qmi = plr_wdg->currentIndex();
+    if (qmi.isValid()){
+      plr_wdg->clearSelection();
+      plr_wdg->setCurrentIndex(qmi);
+    }
+  }
+
   meet_but->setDisabled(true);
   cancel_but->setDisabled(true);
   withdraw_but->setDisabled(true);

Modified: branches/S2_5/client/gui-qt/plrdlg.h
URL: 
http://svn.gna.org/viewcvs/freeciv/branches/S2_5/client/gui-qt/plrdlg.h?rev=30717&r1=30716&r2=30717&view=diff
==============================================================================
--- branches/S2_5/client/gui-qt/plrdlg.h        (original)
+++ branches/S2_5/client/gui-qt/plrdlg.h        Fri Nov 20 17:22:19 2015
@@ -151,7 +151,7 @@
 public:
   plr_report();
   ~plr_report();
-  void update_report();
+  void update_report(bool update_selection = true);
   void init();
 private:
   struct player *other_player;


_______________________________________________
Freeciv-commits mailing list
Freeciv-commits@gna.org
https://mail.gna.org/listinfo/freeciv-commits

Reply via email to