konaclient-qt/mainwindow.h

81 lines
1.4 KiB
C++
Executable File

#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include "konaclient.h"
#include "konasearch.h"
#include "konaimage.h"
#include "konatags.h"
#include "konatag.h"
#include "konarelatedtags.h"
#include <QStyle>
#include "flowlayout.h"
#include "imageviewer.h"
#define ITEMS_PER_SEARCH 50
#define RELATED_TAGS_AMOUNT 10
#define SEARCHTYPE_POSTS 0
#define SEARCHTYPE_POOLS 1
// SETTINGS
#define PRELOAD_AMOUNT 3 // TODO:
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
public slots:
// GUI Events
void onScroll(int value);
void searchPosts();
void searchPools();
void jumpToPage();
void tagClicked(QString link);
// Int
void searchFinished(KonaSearch *ks);
void tagsFinished(KonaTags *kt);
void relatedTagsFinished(KonaRelatedTags *krt);
void downloadImage(KonaImage *Ki);
void downloadImage(KonaImage *Ki, bool overwrite);
void showImage(KonaImage *Ki);
void jumpNext();
void jumpPrev();
private:
Ui::MainWindow *ui;
KonaClient *kc;
KonaSearch *search;
KonaTags *tags;
KonaRelatedTags *relatedTags;
FlowLayout *flowLayout;
ImageViewer *imageViewer;
bool insertAtBeginning;
void clearList();
int upperPage;
int bottomPage;
QString currentSearch;
};
#endif // MAINWINDOW_H