[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    kdenonbeta/kgeography
From:       Albert Astals Cid <tsdgeos () terra ! es>
Date:       2005-03-04 17:07:06
Message-ID: 20050304170706.F1452157B9 () office ! kde ! org
[Download RAW message or body]

CVS commit by aacid: 

Do not create another mapAsker in consult mode if we are already at it


  M +4 -0      Changelog   1.39
  M +1 -1      src/askwidget.cpp   1.9
  M +1 -1      src/askwidget.h   1.9
  M +7 -1      src/kgeography.cpp   1.37
  M +6 -1      src/mapasker.cpp   1.18
  M +1 -0      src/mapasker.h   1.14


--- kdenonbeta/kgeography/Changelog  #1.38:1.39
@@ -1,2 +1,6 @@
+2005-03-04 Albert Astals Cid <tsdgeos@terra.es>
+        * Do not create another mapAsker in consult mode if we are already at
+        it
+
 2005-03-02 Albert Astals Cid <tsdgeos@terra.es>
         * More scrollbars correction

--- kdenonbeta/kgeography/src/askwidget.cpp  #1.8:1.9
@@ -23,6 +23,6 @@ askWidget::askWidget(QWidget *parent, KG
                 p_answers = new QLabel(w);
                 p_answers -> setAlignment(AlignTop | AlignHCenter);
-                p_answers -> show();
                 resetAnswers();
+                p_answers -> show();
         }
         else p_answers = 0;

--- kdenonbeta/kgeography/src/askwidget.h  #1.8:1.9
@@ -53,9 +53,9 @@ Q_OBJECT
                 KGmap *p_map;
                 userAnswer p_currentAnswer;
+                QLabel *p_answers;
         
         private:
                 void updateLabel();
                 
-                QLabel *p_answers;
                 int p_correctAnswers, p_incorrectAnswers;
                 

--- kdenonbeta/kgeography/src/kgeography.cpp  #1.36:1.37
@@ -137,5 +137,4 @@ void kgeography::openMap()
         if (mp.exec() == mapChooser::Accepted)
         {
-                delete p_map;
                 setMap(mp.getMap());
                 resizeMainWindow();
@@ -145,4 +144,8 @@ void kgeography::openMap()
 void kgeography::consult()
 {
+        // No need to create another map viewer if we are already in it
+        mapAsker *ma = dynamic_cast<mapAsker*>(p_askWidget);
+        if (ma && !ma -> isAsker()) return;
+        
         showResultsDialog();
         removeOldAskWidget();
@@ -238,4 +241,5 @@ void kgeography::removeOldAskWidget()
 {
         delete p_askWidget;
+        p_askWidget = 0;
         p_zoom -> setEnabled(false);
         p_zoomOriginal -> setEnabled(false);
@@ -268,7 +272,9 @@ void kgeography::putAskWidget()
 void kgeography::setMap(KGmap *m)
 {
+        removeOldAskWidget();
         kgeographySettings *set = kgeographySettings::self();
         set -> setLastMap(m -> getFile());
         set -> writeConfig();
+        delete p_map;
         p_map = m;
         p_currentMap -> setText(i18n("<qt>Current map:<br><b>%1</b></qt>").arg(p_map -> getName()));

--- kdenonbeta/kgeography/src/mapasker.cpp  #1.17:1.18
@@ -55,5 +55,4 @@ mapAsker::mapAsker(QWidget *parent, KGma
                 p_next = new QLabel(w);
                 p_next -> setAlignment(AlignTop | AlignHCenter);
-                p_next -> show();
                 p_fill = new QWidget(w);
                 p_fill -> show();
@@ -74,4 +73,9 @@ mapAsker::~mapAsker()
 }
 
+bool mapAsker::isAsker() const
+{
+        return p_answers;
+}
+
 void mapAsker::mousePressEvent(QMouseEvent*)
 {
@@ -162,4 +166,5 @@ void mapAsker::nextQuestionHook(const QS
 {
         p_next -> setText(i18n("Please click on %1").arg(division));
+        p_next -> show();
         p_currentAnswer.setQuestion(division);
         p_currentAnswer.setCorrectAnswer(p_map -> getColor(division));

--- kdenonbeta/kgeography/src/mapasker.h  #1.13:1.14
@@ -31,4 +31,5 @@ Q_OBJECT
 
                 QSize mapSize() const;
+                bool isAsker() const;
                 
         protected:


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic