QTfrontend/ui/widget/about.cpp
changeset 6175 a80833ddaef0
parent 6067 fe7990b3db66
child 6616 f77bb02b669f
equal deleted inserted replaced
6174:2d5717595471 6175:a80833ddaef0
    16  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
    16  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
    17  */
    17  */
    18 
    18 
    19 #include <QGridLayout>
    19 #include <QGridLayout>
    20 #include <QLabel>
    20 #include <QLabel>
    21 #include <QTextBrowser>
    21 #include <QList>
       
    22 #include <QUrl>
       
    23 #include <QRegExp>
       
    24 #include "hwconsts.h"
       
    25 #include "SDLInteraction.h"
       
    26 
    22 #include "about.h"
    27 #include "about.h"
    23 #include "hwconsts.h"
       
    24 
    28 
    25 About::About(QWidget * parent) :
    29 About::About(QWidget * parent) :
    26   QWidget(parent)
    30   QWidget(parent)
    27 {
    31 {
    28     QGridLayout *mainLayout = new QGridLayout(this);
    32     QGridLayout *mainLayout = new QGridLayout(this);
    52             "</div>"
    56             "</div>"
    53             );
    57             );
    54     lbl1->setWordWrap(true);
    58     lbl1->setWordWrap(true);
    55     mainLayout->addWidget(lbl1, 0, 1);
    59     mainLayout->addWidget(lbl1, 0, 1);
    56 
    60 
    57     QTextBrowser *lbl2 = new QTextBrowser(this);
    61     lbl2 = new QTextBrowser(this);
    58 
    62 
    59     lbl2->setOpenExternalLinks(true);
    63     lbl2->setOpenExternalLinks(true);
    60     lbl2->setText(
    64     lbl2->setText(
    61             "<style type=\"text/css\">"
    65             "<style type=\"text/css\">"
    62             "a { color: #ffcc00; }"
    66             "a { color: #ffcc00; }"
   141             "Natasha Korotaeva &lt;<a href=\"mailto:layout@pisem.net\">layout@pisem.net</a>&gt;<br>"
   145             "Natasha Korotaeva &lt;<a href=\"mailto:layout@pisem.net\">layout@pisem.net</a>&gt;<br>"
   142             "Adam Higerd (aka ahigerd at FreeNode)"
   146             "Adam Higerd (aka ahigerd at FreeNode)"
   143             "</p>"
   147             "</p>"
   144             );
   148             );
   145     mainLayout->addWidget(lbl2, 1, 1);
   149     mainLayout->addWidget(lbl2, 1, 1);
       
   150 
       
   151     setAcceptDrops(true);
   146 }
   152 }
       
   153 
       
   154 void About::dragEnterEvent(QDragEnterEvent * event)
       
   155 {
       
   156     if (event->mimeData()->hasUrls())
       
   157     {
       
   158         QList<QUrl> urls = event->mimeData()->urls();
       
   159         QString url = urls[0].toString();
       
   160         if (urls.count() == 1)
       
   161             if (url.contains(QRegExp("^file://.*\\.ogg$")))
       
   162                 event->acceptProposedAction();
       
   163     }
       
   164 }
       
   165 
       
   166 void About::dropEvent(QDropEvent * event)
       
   167 {
       
   168     QString file =
       
   169         event->mimeData()->urls()[0].toString().remove(QRegExp("^file://"));
       
   170 
       
   171     SDLInteraction::instance().setMusicTrack(file);
       
   172 
       
   173     event->acceptProposedAction();
       
   174 }