This commit is contained in:
Luis Ángel San Martín
2017-05-25 18:04:29 +02:00
84 changed files with 11497 additions and 534 deletions

View File

@ -4,6 +4,9 @@
TEMPLATE = app
TARGET = YACReaderLibrary
QMAKE_TARGET_BUNDLE_PREFIX = "com.yacreader"
DEPENDPATH += .
INCLUDEPATH += .
INCLUDEPATH += ../common \
@ -17,6 +20,7 @@ DEFINES += SERVER_RELEASE NOMINMAX YACREADER_LIBRARY
QMAKE_MAC_SDK = macosx10.12
#load default build flags
include (../config.pri)
include (../dependencies/pdf_backend.pri)
CONFIG(legacy_gl_widget) {
INCLUDEPATH += ../common/gl_legacy \
@ -28,21 +32,13 @@ CONFIG(legacy_gl_widget) {
win32 {
CONFIG(force_angle) {
message("using ANGLE")
LIBS += -L../dependencies/poppler/lib -loleaut32 -lole32 -lshell32 -lopengl32 -lglu32 -luser32
LIBS += -loleaut32 -lole32 -lshell32 -lopengl32 -lglu32 -luser32
#linking extra libs are necesary for a successful compilation, a better approach should be
#to remove any OpenGL (desktop) dependencies
#the OpenGL stuff should be migrated to OpenGL ES
DEFINES += FORCE_ANGLE
} else {
LIBS += -L../dependencies/poppler/lib -loleaut32 -lole32 -lshell32 -lopengl32 -lglu32 -luser32
}
#TODO: pdfium for windows support
!CONFIG(no_pdf) {
LIBS += -lpoppler-qt5
INCLUDEPATH += ../dependencies/poppler/include/qt5
} else {
DEFINES += "NO_PDF"
LIBS += -loleaut32 -lole32 -lshell32 -lopengl32 -lglu32 -luser32
}
QMAKE_CXXFLAGS_RELEASE += /MP /Ob2 /Oi /Ot /GT /GL
@ -51,25 +47,9 @@ win32 {
}
unix:!macx{
!CONFIG(no_pdf){
!CONFIG(pdfium){
INCLUDEPATH += /usr/include/poppler/qt5
LIBS += -L/usr/lib -lpoppler-qt5
} else {
#static pdfium libraries have to be included *before* dynamic libraries
DEFINES += "USE_PDFIUM"
INCLUDEPATH += /usr/include/pdfium
LIBS += -L/usr/lib/pdfium -Wl,--start-group -lpdfium -lfpdfapi -lfxge -lfpdfdoc \
-lfxcrt -lfx_agg -lfxcodec -lfx_lpng -lfx_libopenjpeg -lfx_lcms2 -ljpeg \
-lfx_zlib -lfdrm -lfxedit -lformfiller -lpdfwindow -lpdfium -lbigint -ljavascript \
-lfxedit -Wl,--end-group -lfreetype
}
} else {
DEFINES += "NO_PDF"
}
!CONFIG(no_opengl) {
LIBS += -lGLU
LIBS += -lGLU
}
}
@ -85,16 +65,8 @@ macx{
#}
#QT += macextras
!CONFIG(no_pdf){
#TODO:support for pdfium on mac
DEFINES += "USE_PDFKIT"
} else {
DEFINES += "NO_PDF"
}
LIBS += -framework Foundation -framework ApplicationServices -framework AppKit
OBJECTIVE_SOURCES += $$PWD/../common/pdf_comic.mm
CONFIG += objective_c
QT += macextras gui-private
}
@ -227,7 +199,6 @@ SOURCES += comic_flow.cpp \
../common/yacreader_global_gui.cpp \
yacreader_libraries.cpp \
../common/exit_check.cpp \
../common/pdf_comic.cpp \
comics_view.cpp \
classic_comics_view.cpp \
empty_folder_widget.cpp \

View File

@ -49,7 +49,7 @@ ComicVineClient::ComicVineClient(QObject *parent) :
{
settings = new QSettings(YACReader::getSettingsPath()+"/YACReaderLibrary.ini",QSettings::IniFormat); //TODO unificar la creación del fichero de config con el servidor
settings->beginGroup("ComicVine");
baseURL = settings->value(COMIC_VINE_BASE_URL, "http://comicvine.gamespot.com/api").toString();
baseURL = settings->value(COMIC_VINE_BASE_URL, "https://comicvine.gamespot.com/api").toString();
}
ComicVineClient::~ComicVineClient()

View File

@ -52,35 +52,87 @@ GridComicsView::GridComicsView(QWidget *parent) :
QQmlContext *ctxt = view->rootContext();
LibraryUITheme theme;
#ifdef Q_OS_MAC
theme = Light;
#else
theme = Dark;
#endif
if(theme == Light)
{
ctxt->setContextProperty("backgroundColor", "#F6F6F6");
ctxt->setContextProperty("cellColor", "#FFFFFF");
ctxt->setContextProperty("selectedColor", "#FFFFFF");
ctxt->setContextProperty("selectedBorderColor", "#007AFF");
ctxt->setContextProperty("borderColor", "#DBDBDB");
ctxt->setContextProperty("titleColor", "#121212");
ctxt->setContextProperty("textColor", "#636363");
//fonts settings
ctxt->setContextProperty("fontSize", 11);
ctxt->setContextProperty("fontFamily", QApplication::font().family());
ctxt->setContextProperty("fontSpacing", 0.5);
//info - copy/pasted from info_comics_view TODO create helpers for setting the UI config
ctxt->setContextProperty("infoBackgroundColor", "#FFFFFF");
ctxt->setContextProperty("topShadow", QUrl());
ctxt->setContextProperty("infoShadow", "info-shadow-light.png");
ctxt->setContextProperty("infoIndicator", "info-indicator-light.png");
ctxt->setContextProperty("infoTextColor", "#404040");
ctxt->setContextProperty("infoTitleColor", "#2E2E2E");
ctxt->setContextProperty("ratingUnselectedColor", "#DEDEDE");
ctxt->setContextProperty("ratingSelectedColor", "#2B2B2B");
ctxt->setContextProperty("favUncheckedColor", "#DEDEDE");
ctxt->setContextProperty("favCheckedColor", "#E84852");
ctxt->setContextProperty("readTickUncheckedColor", "#DEDEDE");
ctxt->setContextProperty("readTickCheckedColor", "#E84852");
}
else
{
ctxt->setContextProperty("backgroundColor", "#2A2A2A");
ctxt->setContextProperty("cellColor", "#212121");
ctxt->setContextProperty("selectedColor", "#121212");
ctxt->setContextProperty("selectedBorderColor", "#121212");
ctxt->setContextProperty("borderColor", "#121212");
ctxt->setContextProperty("titleColor", "#FFFFFF");
ctxt->setContextProperty("textColor", "#A8A8A8");
ctxt->setContextProperty("dropShadow",false);
//fonts settings
int fontSize = QApplication::font().pointSize();
if(fontSize == -1)
fontSize = QApplication::font().pixelSize();
ctxt->setContextProperty("fontSize", fontSize);
ctxt->setContextProperty("fontFamily", QApplication::font().family());
ctxt->setContextProperty("fontSpacing", 0.5);
//info - copy/pasted from info_comics_view TODO create helpers for setting the UI config
ctxt->setContextProperty("infoBackgroundColor", "#2E2E2E");
ctxt->setContextProperty("topShadow", "info-top-shadow.png");
ctxt->setContextProperty("infoShadow", "info-shadow.png");
ctxt->setContextProperty("infoIndicator", "info-indicator.png");
ctxt->setContextProperty("infoTextColor", "#B0B0B0");
ctxt->setContextProperty("infoTitleColor", "#FFFFFF");
ctxt->setContextProperty("ratingUnselectedColor", "#1C1C1C");
ctxt->setContextProperty("ratingSelectedColor", "#FFFFFF");
ctxt->setContextProperty("favUncheckedColor", "#1C1C1C");
ctxt->setContextProperty("favCheckedColor", "#E84852");
ctxt->setContextProperty("readTickUncheckedColor", "#1C1C1C");
ctxt->setContextProperty("readTickCheckedColor", "#E84852");
}
#ifdef Q_OS_MAC
ctxt->setContextProperty("backgroundColor", "#F6F6F6");
ctxt->setContextProperty("cellColor", "#FFFFFF");
ctxt->setContextProperty("selectedColor", "#FFFFFF");
ctxt->setContextProperty("selectedBorderColor", "#007AFF");
ctxt->setContextProperty("borderColor", "#DBDBDB");
ctxt->setContextProperty("titleColor", "#121212");
ctxt->setContextProperty("textColor", "#636363");
//fonts settings
ctxt->setContextProperty("fontSize", 11);
ctxt->setContextProperty("fontFamily", QApplication::font().family());
ctxt->setContextProperty("fontSpacing", 0.5);
#else
ctxt->setContextProperty("backgroundColor", "#2A2A2A");
ctxt->setContextProperty("cellColor", "#212121");
ctxt->setContextProperty("selectedColor", "#121212");
ctxt->setContextProperty("selectedBorderColor", "#121212");
ctxt->setContextProperty("borderColor", "#121212");
ctxt->setContextProperty("titleColor", "#FFFFFF");
ctxt->setContextProperty("textColor", "#A8A8A8");
ctxt->setContextProperty("dropShadow",false);
//fonts settings
int fontSize = QApplication::font().pointSize();
if(fontSize == -1)
fontSize = QApplication::font().pixelSize();
ctxt->setContextProperty("fontSize", fontSize);
ctxt->setContextProperty("fontFamily", QApplication::font().family());
ctxt->setContextProperty("fontSpacing", 0.5);
#endif
ctxt->setContextProperty("backgroundImage", QUrl());

View File

@ -15,6 +15,8 @@
<file alias="images/main_toolbar/flow@2x.png">../images/main_toolbar/flow_osx@2x.png</file>
<file alias="images/main_toolbar/grid.png">../images/main_toolbar/grid_osx.png</file>
<file alias="images/main_toolbar/grid@2x.png">../images/main_toolbar/grid_osx@2x.png</file>
<file alias="images/main_toolbar/info.png">../images/main_toolbar/info_osx.png</file>
<file alias="images/main_toolbar/info@2x.png">../images/main_toolbar/info_osx@2x.png</file>
<file alias="images/empty_folder.png">../images/empty_folder_osx.png</file>
<file alias="images/empty_search.png">../images/empty_search_osx.png</file>
<file>../images/iconSearch.png</file>

View File

@ -23,8 +23,55 @@ InfoComicsView::InfoComicsView(QWidget *parent)
container->setFocusPolicy(Qt::StrongFocus);
view->setSource(QUrl("qrc:/qml/InfoComicsView.qml"));
QQmlContext *ctxt = view->rootContext();
LibraryUITheme theme;
#ifdef Q_OS_MAC
theme = Light;
#else
theme = Dark;
#endif
if(theme == Light)
{
ctxt->setContextProperty("infoBackgroundColor", "#FFFFFF");
ctxt->setContextProperty("topShadow", QUrl());
ctxt->setContextProperty("infoShadow", "info-shadow-light.png");
ctxt->setContextProperty("infoIndicator", "info-indicator-light.png");
ctxt->setContextProperty("infoTextColor", "#404040");
ctxt->setContextProperty("infoTitleColor", "#2E2E2E");
ctxt->setContextProperty("ratingUnselectedColor", "#DEDEDE");
ctxt->setContextProperty("ratingSelectedColor", "#2B2B2B");
ctxt->setContextProperty("favUncheckedColor", "#DEDEDE");
ctxt->setContextProperty("favCheckedColor", "#E84852");
ctxt->setContextProperty("readTickUncheckedColor", "#DEDEDE");
ctxt->setContextProperty("readTickCheckedColor", "#E84852");
}
else
{
ctxt->setContextProperty("infoBackgroundColor", "#2E2E2E");
ctxt->setContextProperty("topShadow", "info-top-shadow.png");
ctxt->setContextProperty("infoShadow", "info-shadow.png");
ctxt->setContextProperty("infoIndicator", "info-indicator.png");
ctxt->setContextProperty("infoTextColor", "#B0B0B0");
ctxt->setContextProperty("infoTitleColor", "#FFFFFF");
ctxt->setContextProperty("ratingUnselectedColor", "#1C1C1C");
ctxt->setContextProperty("ratingSelectedColor", "#FFFFFF");
ctxt->setContextProperty("favUncheckedColor", "#1C1C1C");
ctxt->setContextProperty("favCheckedColor", "#E84852");
ctxt->setContextProperty("readTickUncheckedColor", "#1C1C1C");
ctxt->setContextProperty("readTickCheckedColor", "#E84852");
}
view->setSource(QUrl("qrc:/qml/InfoComicsView.qml"));
QObject *rootObject = dynamic_cast<QObject*>(view->rootObject());
flow = rootObject->findChild<QObject*>("flow");

View File

@ -10,6 +10,10 @@
<file>qml/FlowView.qml</file>
<file>qml/info-indicator.png</file>
<file>qml/info-shadow.png</file>
<file>qml/info-indicator-light.png</file>
<file>qml/info-shadow-light.png</file>
<file>qml/info-indicator-light@2x.png</file>
<file>qml/info-shadow-light@2x.png</file>
<file>qml/info-top-shadow.png</file>
<file>qml/ComicInfo.qml</file>
<file>qml/info-favorites.png</file>

View File

@ -15,7 +15,7 @@ Rectangle {
height: info.height + 2 * topMargin
property string infoColor: "#b0b0b0"
property string infoColor: infoTextColor
property font infoFont: Qt.font({
family: "Arial",
@ -136,7 +136,7 @@ Rectangle {
id: title
color: "#ffffff"
color: infoTitleColor
font.family: "Arial"
font.bold: true
font.pixelSize: mainContainer.compact ? 18 : 21;
@ -232,7 +232,7 @@ Rectangle {
}
Text {
id: showInComicVinw
id: showInComicVine
font: mainContainer.infoFont
color: "#ffcc00"
text: "Show in Comic Vine"
@ -253,7 +253,7 @@ Rectangle {
Layout.fillWidth: true
id: sinopsis
color: "white"
color: infoTitleColor
font.family: "Arial"
font.pixelSize: 15
wrapMode: Text.WordWrap
@ -267,7 +267,7 @@ Rectangle {
Layout.bottomMargin: 5
id: authors_title
color: "white"
color: infoTitleColor
font.family: "Arial"
font.pixelSize: 18
font.bold: true
@ -290,7 +290,7 @@ Rectangle {
model: comicInfo.getWriters().length
Column{
Text {
color: "white"
color: infoTitleColor
font.family: "Arial"
font.pixelSize: 15
@ -298,7 +298,7 @@ Rectangle {
}
Text {
color: "#b0b0b0"
color: infoTextColor
font.family: "Arial"
font.pixelSize: 13
font.italic: true
@ -312,7 +312,7 @@ Rectangle {
model: comicInfo.getPencillers().length
Column{
Text {
color: "white"
color: infoTitleColor
font.family: "Arial"
font.pixelSize: 15
@ -320,7 +320,7 @@ Rectangle {
}
Text {
color: "#b0b0b0"
color: infoTextColor
font.family: "Arial"
font.pixelSize: 13
font.italic: true
@ -334,7 +334,7 @@ Rectangle {
model: comicInfo.getInkers().length
Column{
Text {
color: "white"
color: infoTitleColor
font.family: "Arial"
font.pixelSize: 15
@ -342,7 +342,7 @@ Rectangle {
}
Text {
color: "#b0b0b0"
color: infoTextColor
font.family: "Arial"
font.pixelSize: 13
font.italic: true
@ -356,7 +356,7 @@ Rectangle {
model: comicInfo.getColorists().length
Column{
Text {
color: "white"
color: infoTitleColor
font.family: "Arial"
font.pixelSize: 15
@ -364,7 +364,7 @@ Rectangle {
}
Text {
color: "#b0b0b0"
color: infoTextColor
font.family: "Arial"
font.pixelSize: 13
font.italic: true
@ -378,7 +378,7 @@ Rectangle {
model: comicInfo.getLetterers().length
Column{
Text {
color: "white"
color: infoTitleColor
font.family: "Arial"
font.pixelSize: 15
@ -386,7 +386,7 @@ Rectangle {
}
Text {
color: "#b0b0b0"
color: infoTextColor
font.family: "Arial"
font.pixelSize: 13
font.italic: true
@ -400,7 +400,7 @@ Rectangle {
model: comicInfo.getCoverArtists().length
Column{
Text {
color: "white"
color: infoTitleColor
font.family: "Arial"
font.pixelSize: 15
@ -408,7 +408,7 @@ Rectangle {
}
Text {
color: "#b0b0b0"
color: infoTextColor
font.family: "Arial"
font.pixelSize: 13
font.italic: true
@ -422,7 +422,7 @@ Rectangle {
Layout.topMargin: 25
id: publisher_title
color: "white"
color: infoTitleColor
font.family: "Arial"
font.pixelSize: 18
font.bold: true
@ -439,7 +439,7 @@ Rectangle {
Text {
id: publisher
color: "white"
color: infoTitleColor
font.family: "Arial"
font.pixelSize: 15
@ -451,7 +451,7 @@ Rectangle {
Text {
id: format
color: "white"
color: infoTitleColor
font.family: "Arial"
font.pixelSize: 15
@ -463,7 +463,7 @@ Rectangle {
Text {
id: color
color: "white"
color: infoTitleColor
font.family: "Arial"
font.pixelSize: 15
@ -475,7 +475,7 @@ Rectangle {
Text {
id: age_rating
color: "white"
color: infoTitleColor
font.family: "Arial"
font.pixelSize: 15
@ -490,7 +490,7 @@ Rectangle {
Layout.bottomMargin: 5
id: characters_title
color: "white"
color: infoTitleColor
font.family: "Arial"
font.pixelSize: 18
font.bold: true
@ -508,7 +508,7 @@ Rectangle {
model: comicInfo.getCharacters().length
Text {
color: "white"
color: infoTitleColor
font.family: "Arial"
font.pixelSize: 15

View File

@ -587,7 +587,7 @@ Rectangle {
Layout.maximumWidth: 960
height: parent.height
color: "#2e2e2e"
color: infoBackgroundColor
visible: showInfo

View File

@ -9,7 +9,7 @@ import com.yacreader.ComicModel 1.0
Rectangle {
id: main
color: "#2e2e2e"
color: infoBackgroundColor
width: parent.width
height: parent.height
@ -29,7 +29,7 @@ Rectangle {
Image {
id: top_shadow
source: "info-top-shadow.png"
source: topShadow
width: parent.width
fillMode: Image.TileHorizontally
}
@ -41,14 +41,14 @@ Rectangle {
Image {
id: indicator
source: "info-indicator.png"
source: infoIndicator
}
Image {
id: bottom_shadow
x: indicator.width
width: parent.width - indicator.width
source: "info-shadow.png"
source: infoShadow
fillMode: Image.TileHorizontally
}
}
@ -59,7 +59,7 @@ Rectangle {
y: flow.height + flow.additionalBottomSpace - 6
height: parent.height - y
color: "#2e2e2e"
color: infoBackgroundColor
ScrollView {
__wheelAreaScrollSpeed: 75

View File

@ -26,7 +26,7 @@ Item {
ColorOverlay {
anchors.fill: favorites_button_compact
source: favorites_button_compact
color: active ? "#e84852" : "#1c1c1c"
color: active ? favCheckedColor : favUncheckedColor
}
}

View File

@ -24,7 +24,7 @@ Row {
ColorOverlay {
anchors.fill: star
source: star
color: index < (mouseIndex > 0 ? mouseIndex : rating) ? "#ffffff" : "#1c1c1c"
color: index < (mouseIndex > 0 ? mouseIndex : rating) ? ratingSelectedColor : ratingUnselectedColor
}
MouseArea {

View File

@ -23,7 +23,7 @@ Item {
ColorOverlay {
anchors.fill: read_compact
source: read_compact
color: read ? "#e84852" : "#1c1c1c"
color: read ? readTickCheckedColor : readTickUncheckedColor
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 361 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 526 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 120 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 125 B