├── .gitignore ├── App.pro ├── AppRun ├── FlatSiteBuilder.pro ├── README.md ├── Widgets ├── Widgets.pro ├── animateableeditor.h ├── column.cpp ├── column.h ├── content.cpp ├── content.h ├── flatbutton.cpp ├── flatbutton.h ├── generator.cpp ├── generator.h ├── images.qrc ├── imageselector.cpp ├── imageselector.h ├── interfaces.h ├── menu.cpp ├── menu.h ├── menuitem.cpp ├── menuitem.h ├── plugins.cpp ├── plugins.h ├── rowpropertyeditor.cpp ├── rowpropertyeditor.h ├── sectionpropertyeditor.cpp ├── sectionpropertyeditor.h ├── site.cpp ├── site.h ├── tablecellbuttons.cpp ├── tablecellbuttons.h ├── undoableeditor.cpp ├── undoableeditor.h ├── widgets_global.h ├── xmlhighlighter.cpp └── xmlhighlighter.h ├── build.txt ├── buildAppImage.sh ├── changelog.txt ├── columneditor.cpp ├── columneditor.h ├── columnsdialog.cpp ├── columnsdialog.h ├── commands.cpp ├── commands.h ├── contenteditor.cpp ├── contenteditor.h ├── contentlist.cpp ├── contentlist.h ├── dashboard.cpp ├── dashboard.h ├── default.desktop ├── default.svg ├── dropzone.cpp ├── dropzone.h ├── elementeditor.cpp ├── elementeditor.h ├── expander.cpp ├── expander.h ├── flatsitebuilder.qrc ├── hyperlink.cpp ├── hyperlink.h ├── images ├── appearance_hover.png ├── appearance_normal.png ├── appearance_selected.png ├── background.png ├── bigButton.png ├── build_hover.png ├── build_normal.png ├── build_pressed.png ├── close_hover.png ├── close_hover_red.png ├── close_normal.png ├── columns1.png ├── columns10.png ├── columns10_hover.png ├── columns11.png ├── columns11_hover.png ├── columns1_hover.png ├── columns2.png ├── columns2_hover.png ├── columns3.png ├── columns3_hover.png ├── columns4.png ├── columns4_hover.png ├── columns5.png ├── columns5_hover.png ├── columns6.png ├── columns6_hover.png ├── columns7.png ├── columns7_hover.png ├── columns8.png ├── columns8_hover.png ├── columns9.png ├── columns9_hover.png ├── copy_hover.png ├── copy_normal.png ├── create_hover.png ├── create_normal.png ├── create_pressed.png ├── dashboard_hover.png ├── dashboard_normal.png ├── dashboard_selected.png ├── down_disabled.png ├── down_hover.png ├── down_normal.png ├── edit_hover.png ├── edit_normal.png ├── icon.svg ├── icon64.png ├── icon_128.png ├── image.png ├── image_placeholder.png ├── left_disabled.png ├── left_hover.png ├── left_normal.png ├── load_hover.png ├── load_normal.png ├── load_pressed.png ├── media_hover.png ├── media_normal.png ├── media_selected.png ├── module_hover.png ├── module_normal.png ├── pages_hover.png ├── pages_normal.png ├── pages_selected.png ├── plugin_hover.png ├── plugin_normal.png ├── plugin_selected.png ├── post_hover.png ├── post_normal.png ├── post_selected.png ├── preview_hover.png ├── preview_normal.png ├── preview_pressed.png ├── publish_hover.png ├── publish_normal.png ├── publish_pressed.png ├── redo_disabled.png ├── redo_hover.png ├── redo_normal.png ├── right_disabled.png ├── right_hover.png ├── right_normal.png ├── settings_hover.png ├── settings_normal.png ├── settings_selected.png ├── text.png ├── theme.png ├── trash_hover.png ├── trash_normal.png ├── undo_disabled.png ├── undo_hover.png ├── undo_normal.png ├── up_disabled.png ├── up_hover.png ├── up_normal.png └── wizard.png ├── installdialog.cpp ├── installdialog.h ├── main.cpp ├── mainwindow.cpp ├── mainwindow.h ├── menueditor.cpp ├── menueditor.h ├── menulist.cpp ├── menulist.h ├── moduldialog.cpp ├── moduldialog.h ├── pageeditor.cpp ├── pageeditor.h ├── plugins ├── DefaultThemeEditor │ ├── DefaultThemeEditor.pro │ ├── defaultthemeeditor.cpp │ └── defaultthemeeditor.h ├── ImageEditor │ ├── ImageEditor.pro │ ├── image.png │ ├── imageeditor.cpp │ ├── imageeditor.h │ └── resources.qrc ├── NoPublisher │ ├── NoPublisher.pro │ ├── html.qrc │ ├── nopublisher.cpp │ ├── nopublisher.h │ └── publish.html ├── SampleEditor │ ├── SampleEditor.pro │ ├── images.qrc │ ├── sample.png │ ├── sampleeditor.cpp │ └── sampleeditor.h ├── SliderEditor │ ├── SliderEditor.pro │ ├── images.qrc │ ├── slideeditor.cpp │ ├── slideeditor.h │ ├── slider.png │ ├── slidereditor.cpp │ └── slidereditor.h └── TextEditor │ ├── TextEditor.pro │ ├── images.qrc │ ├── text.png │ ├── texteditor.cpp │ └── texteditor.h ├── qrc_flatsitebuilder.cpp ├── roweditor.cpp ├── roweditor.h ├── sectioneditor.cpp ├── sectioneditor.h ├── sitesettingseditor.cpp ├── sitesettingseditor.h ├── sitewizard.cpp ├── sitewizard.h ├── test ├── Test.pro ├── includes │ ├── de.html │ └── en.html ├── pages │ └── test.xml ├── testgenerator.cpp └── themes │ └── testSiteTheme │ ├── includes │ └── nav.html │ └── layouts │ └── testPageLayout.html ├── testsite ├── Menus.xml ├── Site.xml ├── assets │ └── images │ │ ├── slide1.jpg │ │ ├── slide2.jpg │ │ └── slide3.jpg └── pages │ └── index.xml ├── texteditor.json ├── themechooser.cpp ├── themechooser.h ├── themes ├── default │ ├── assets │ │ ├── css │ │ │ ├── bootstrap-theme.min.css │ │ │ ├── bootstrap.min.css │ │ │ ├── font-awesome.min.css │ │ │ └── theme.css │ │ ├── fonts │ │ │ ├── FontAwesome.otf │ │ │ ├── fontawesome-webfont.svg │ │ │ ├── fontawesome-webfont.woff │ │ │ ├── glyphicons-halflings-regular.eot │ │ │ ├── glyphicons-halflings-regular.svg │ │ │ ├── glyphicons-halflings-regular.ttf │ │ │ ├── glyphicons-halflings-regular.woff │ │ │ └── glyphicons-halflings-regular.woff2 │ │ ├── images │ │ │ └── favicon.ico │ │ └── js │ │ │ ├── bootstrap.min.js │ │ │ └── jquery.js │ ├── includes │ │ ├── footer.html │ │ ├── head.html │ │ ├── nav.html │ │ ├── postheader.html │ │ ├── postnav.html │ │ └── scripts.html │ ├── layouts │ │ ├── default.html │ │ └── post.html │ ├── sample.html │ └── sample.png ├── himu │ ├── assets │ │ ├── css │ │ │ ├── animate.css │ │ │ ├── bootstrap.min.css │ │ │ ├── font-awesome.min.css │ │ │ ├── jquery.sidr.dark.css │ │ │ ├── main.css │ │ │ ├── prettyPhoto.css │ │ │ ├── reset.css │ │ │ └── responsive.css │ │ ├── fonts │ │ │ ├── FontAwesome.otf │ │ │ ├── fontawesome-webfont.svg │ │ │ ├── fontawesome-webfont.woff │ │ │ ├── glyphicons-halflings-regular.svg │ │ │ └── glyphicons-halflings-regular.woff │ │ ├── images │ │ │ ├── about-us │ │ │ │ ├── about.jpg │ │ │ │ ├── community.jpg │ │ │ │ └── mission.jpg │ │ │ ├── blog │ │ │ │ ├── 1.jpg │ │ │ │ ├── 2.jpg │ │ │ │ └── 3.jpg │ │ │ ├── clients │ │ │ │ ├── client-bg.jpg │ │ │ │ ├── client1.jpg │ │ │ │ ├── client2.jpg │ │ │ │ └── client3.jpg │ │ │ ├── home-pattern.png │ │ │ ├── ico │ │ │ │ ├── apple-touch-icon-114-precomposed.png │ │ │ │ ├── apple-touch-icon-144-precomposed.png │ │ │ │ ├── apple-touch-icon-57-precomposed.png │ │ │ │ ├── apple-touch-icon-72-precomposed.png │ │ │ │ └── favicon.png │ │ │ ├── logo.png │ │ │ ├── our-team │ │ │ │ ├── member1.jpg │ │ │ │ ├── member2.jpg │ │ │ │ ├── member3.jpg │ │ │ │ └── member4.jpg │ │ │ ├── pattern.png │ │ │ ├── portfolio │ │ │ │ ├── 1.jpg │ │ │ │ ├── 10.jpg │ │ │ │ ├── 11.jpg │ │ │ │ ├── 12.jpg │ │ │ │ ├── 2.jpg │ │ │ │ ├── 3.jpg │ │ │ │ ├── 4.jpg │ │ │ │ ├── 5.jpg │ │ │ │ ├── 6.jpg │ │ │ │ ├── 7.jpg │ │ │ │ ├── 8.jpg │ │ │ │ ├── 9.jpg │ │ │ │ ├── big-item.jpg │ │ │ │ ├── big-item2.jpg │ │ │ │ ├── big-item3.jpg │ │ │ │ └── big-item4.jpg │ │ │ ├── prettyPhoto │ │ │ │ ├── dark_rounded │ │ │ │ │ ├── btnNext.png │ │ │ │ │ ├── btnPrevious.png │ │ │ │ │ ├── contentPattern.png │ │ │ │ │ ├── default_thumbnail.gif │ │ │ │ │ ├── loader.gif │ │ │ │ │ └── sprite.png │ │ │ │ ├── dark_square │ │ │ │ │ ├── btnNext.png │ │ │ │ │ ├── btnPrevious.png │ │ │ │ │ ├── contentPattern.png │ │ │ │ │ ├── default_thumbnail.gif │ │ │ │ │ ├── loader.gif │ │ │ │ │ └── sprite.png │ │ │ │ ├── default │ │ │ │ │ ├── default_thumb.png │ │ │ │ │ ├── loader.gif │ │ │ │ │ ├── sprite.png │ │ │ │ │ ├── sprite_next.png │ │ │ │ │ ├── sprite_prev.png │ │ │ │ │ ├── sprite_x.png │ │ │ │ │ └── sprite_y.png │ │ │ │ ├── facebook │ │ │ │ │ ├── btnNext.png │ │ │ │ │ ├── btnPrevious.png │ │ │ │ │ ├── contentPatternBottom.png │ │ │ │ │ ├── contentPatternLeft.png │ │ │ │ │ ├── contentPatternRight.png │ │ │ │ │ ├── contentPatternTop.png │ │ │ │ │ ├── default_thumbnail.gif │ │ │ │ │ ├── loader.gif │ │ │ │ │ └── sprite.png │ │ │ │ ├── light_rounded │ │ │ │ │ ├── btnNext.png │ │ │ │ │ ├── btnPrevious.png │ │ │ │ │ ├── default_thumbnail.gif │ │ │ │ │ ├── loader.gif │ │ │ │ │ └── sprite.png │ │ │ │ └── light_square │ │ │ │ │ ├── btnNext.png │ │ │ │ │ ├── btnPrevious.png │ │ │ │ │ ├── default_thumbnail.gif │ │ │ │ │ ├── loader.gif │ │ │ │ │ └── sprite.png │ │ │ ├── services │ │ │ │ └── service-bg.jpg │ │ │ └── slider │ │ │ │ ├── slide1.jpg │ │ │ │ ├── slide2.jpg │ │ │ │ └── slide3.jpg │ │ └── js │ │ │ ├── bootstrap.min.js │ │ │ ├── html5shiv.js │ │ │ ├── jquery.isotope.min.js │ │ │ ├── jquery.js │ │ │ ├── jquery.parallax.js │ │ │ ├── jquery.prettyPhoto.js │ │ │ ├── main.js │ │ │ ├── respond.min.js │ │ │ └── smoothscroll.js │ ├── includes │ │ └── nav.html │ ├── layouts │ │ └── default.html │ ├── sample.html │ └── sample.png └── slate │ ├── assets │ ├── css │ │ ├── bootstrap.min.css │ │ ├── font-awesome.min.css │ │ └── usebootstrap.css │ ├── fonts │ │ ├── FontAwesome.otf │ │ ├── fontawesome-webfont.svg │ │ ├── fontawesome-webfont.woff │ │ ├── glyphicons-halflings-regular.eot │ │ ├── glyphicons-halflings-regular.svg │ │ ├── glyphicons-halflings-regular.ttf │ │ ├── glyphicons-halflings-regular.woff │ │ └── glyphicons-halflings-regular.woff2 │ ├── images │ │ └── favicon.ico │ └── js │ │ ├── bootstrap.min.js │ │ ├── jquery.js │ │ └── usebootstrap.js │ ├── includes │ ├── footer.html │ ├── head.html │ ├── nav.html │ ├── postheader.html │ ├── postnav.html │ └── scripts.html │ ├── layouts │ ├── default.html │ └── post.html │ ├── sample.html │ └── sample.png ├── todo.txt ├── web ├── AtroposTheme.xml ├── Menus.xml ├── Site.xml ├── assets │ ├── css │ │ └── style.css │ └── images │ │ ├── Columns.png │ │ ├── Dashboard.png │ │ ├── Editor.png │ │ ├── Layout.png │ │ ├── Modules.png │ │ ├── animationmaker.png │ │ ├── artananda.png │ │ ├── campaign.png │ │ ├── crowdware.png │ │ ├── download.png │ │ ├── logo.png │ │ ├── logo_footer.png │ │ ├── nrg.png │ │ ├── olaf winter.jpg │ │ ├── olaf.jpg │ │ └── tagcloud.png ├── content │ └── google76ff8a4d9d4988a1.html ├── includes │ ├── analytics.html │ └── footercontent.html ├── layouts │ └── simple.html ├── pages │ ├── blog.xml │ ├── index.xml │ ├── intro.xml │ ├── news.xml │ └── notimpl.xml └── posts │ ├── crowdfunding.xml │ ├── release_1.5.2_for_linux.xml │ ├── release_1.5.4_for_linux.xml │ └── release_1.5_for_linux.xml ├── webview.cpp ├── webview.h ├── widgetmimedata.cpp └── widgetmimedata.h /.gitignore: -------------------------------------------------------------------------------- 1 | App.pro.user 2 | FlatSiteBuilder.pro.user -------------------------------------------------------------------------------- /AppRun: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | HERE="$(dirname "$(readlink -f "${0}")")" 3 | export LD_LIBRARY_PATH=${HERE}/usr/lib:$LD_LIBRARY_PATH 4 | exec "${HERE}/usr/bin/FlatSiteBuilder" "$@" 5 | -------------------------------------------------------------------------------- /FlatSiteBuilder.pro: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2017 Olaf Japp 2 | # https://facebook.com/artanidos 3 | # 4 | # This file is part of FlatSiteBuilder. 5 | # 6 | # FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | # it under the terms of the GNU General Public License as published by 8 | # the Free Software Foundation, either version 3 of the License, or 9 | # (at your option) any later version. 10 | # 11 | # FlatSiteBuilder is distributed in the hope that it will be useful, 12 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | # GNU General Public License for more details. 15 | # 16 | # You should have received a copy of the GNU General Public License 17 | # along with FlatSiteBuilder. If not, see . 18 | 19 | TEMPLATE = subdirs 20 | 21 | SUBDIRS += \ 22 | Widgets \ 23 | plugins/TextEditor \ 24 | plugins/ImageEditor \ 25 | plugins/SliderEditor \ 26 | plugins/SampleEditor \ 27 | plugins/DefaultThemeEditor \ 28 | plugins/NoPublisher \ 29 | test/Test.pro \ 30 | App.pro \ 31 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # FlatSiteBuilder 2 | 3 | This desktop app is working as a content mangement system and is producing a flat file web content to use with github pages. 4 | 5 | This project has been ported to Python have a look https://github.com/CrowdWare/FlatSiteBuilder and is not maintained any more. 6 | 7 | -------------------------------------------------------------------------------- /Widgets/Widgets.pro: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2017 Olaf Japp 2 | # https://facebook.com/artanidos 3 | # 4 | # This file is part of FlatSiteBuilder. 5 | # 6 | # FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | # it under the terms of the GNU General Public License as published by 8 | # the Free Software Foundation, either version 3 of the License, or 9 | # (at your option) any later version. 10 | # 11 | # FlatSiteBuilder is distributed in the hope that it will be useful, 12 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | # GNU General Public License for more details. 15 | # 16 | # You should have received a copy of the GNU General Public License 17 | # along with FlatSiteBuilder. If not, see . 18 | 19 | QT += widgets testlib 20 | 21 | TARGET = Widgets 22 | TEMPLATE = lib 23 | 24 | DEFINES += WIDGETS_LIBRARY 25 | DEFINES += QT_DEPRECATED_WARNINGS 26 | 27 | SOURCES += \ 28 | flatbutton.cpp \ 29 | imageselector.cpp \ 30 | tablecellbuttons.cpp \ 31 | undoableeditor.cpp \ 32 | xmlhighlighter.cpp \ 33 | site.cpp \ 34 | generator.cpp \ 35 | content.cpp \ 36 | menu.cpp \ 37 | menuitem.cpp \ 38 | plugins.cpp \ 39 | sectionpropertyeditor.cpp \ 40 | rowpropertyeditor.cpp \ 41 | column.cpp 42 | 43 | HEADERS +=\ 44 | flatbutton.h \ 45 | imageselector.h \ 46 | widgets_global.h \ 47 | tablecellbuttons.h \ 48 | undoableeditor.h \ 49 | animateableeditor.h \ 50 | xmlhighlighter.h \ 51 | site.h \ 52 | generator.h \ 53 | content.h \ 54 | interfaces.h \ 55 | menu.h \ 56 | menuitem.h \ 57 | plugins.h \ 58 | sectionpropertyeditor.h \ 59 | rowpropertyeditor.h \ 60 | column.h 61 | 62 | unix { 63 | target.path = /usr/lib 64 | INSTALLS += target 65 | } 66 | -------------------------------------------------------------------------------- /Widgets/animateableeditor.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef ANIMATEABLEEDITOR_H 22 | #define ANIMATEABLEEDITOR_H 23 | 24 | #include 25 | 26 | class Site; 27 | class AnimateableEditor : public QWidget 28 | { 29 | Q_OBJECT 30 | Q_PROPERTY(int x READ x WRITE setX) 31 | Q_PROPERTY(int y READ y WRITE setY) 32 | Q_PROPERTY(int width READ width WRITE setWidth) 33 | Q_PROPERTY(int height READ height WRITE setHeight) 34 | 35 | public: 36 | void setX(int x) {move(x, y());} 37 | void setY(int y) {move(x(), y);} 38 | void setWidth(int w) {resize(w, height());} 39 | void setHeight(int h) {resize(width(), h);} 40 | void setSite(Site *site) {m_site = site;} 41 | bool changed() {return m_changed;} 42 | QString content() {return m_content;} 43 | virtual void setContent(QString) = 0; 44 | 45 | signals: 46 | void close(); 47 | 48 | public slots: 49 | void contentChanged() {m_changed = true;} 50 | virtual void closeEditor() = 0; 51 | 52 | protected: 53 | bool m_changed; 54 | Site *m_site; 55 | QString m_content; 56 | }; 57 | 58 | #endif // ANIMATEABLEEDITOR_H 59 | -------------------------------------------------------------------------------- /Widgets/column.cpp: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #include "column.h" 22 | #include "plugins.h" 23 | #include "interfaces.h" 24 | #include 25 | #include 26 | 27 | QString Column::getHtml(QXmlStreamReader *xml, QString filename) 28 | { 29 | QString span = xml->attributes().value("span").toString(); 30 | QString html = "
\n"; 31 | QString tag = ""; 32 | while(xml->readNext()) 33 | { 34 | if(xml->isStartElement()) 35 | { 36 | tag = xml->name().toString(); 37 | QString pluginName = tag + "Editor"; 38 | if(Plugins::hasElementPlugin(pluginName)) 39 | { 40 | html += Plugins::getElementPlugin(pluginName)->getHtml(xml); 41 | Plugins::addUsedPlugin(pluginName); 42 | } 43 | else 44 | qWarning() << "Undefined tag " + tag + " in line " + QString::number(xml->lineNumber()) + " in file " + filename; 45 | } 46 | else if(xml->isEndElement()) 47 | { 48 | if(xml->name() != tag) 49 | break; 50 | } 51 | else if(xml->atEnd()) 52 | break; 53 | } 54 | return html + "\n
\n"; 55 | } 56 | -------------------------------------------------------------------------------- /Widgets/column.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef COLUMN_H 22 | #define COLUMN_H 23 | 24 | #include 25 | 26 | class QXmlStreamReader; 27 | class Column : public QObject 28 | { 29 | Q_OBJECT 30 | 31 | public: 32 | Column() {} 33 | 34 | QString getHtml(QXmlStreamReader *xml, QString filename); 35 | }; 36 | 37 | #endif // COLUMN_H 38 | -------------------------------------------------------------------------------- /Widgets/content.cpp: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #include "content.h" 22 | 23 | Content::Content(ContentType type) 24 | { 25 | m_type = type; 26 | } 27 | -------------------------------------------------------------------------------- /Widgets/flatbutton.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef FLATBUTTON_H 22 | #define FLATBUTTON_H 23 | 24 | #include 25 | #include "widgets_global.h" 26 | 27 | class WIDGETSSHARED_EXPORT FlatButton : public QLabel 28 | { 29 | Q_OBJECT 30 | 31 | public: 32 | FlatButton(); 33 | FlatButton(QString normal, QString hover, QString pressed = "", QString disabled = ""); 34 | 35 | void mousePressEvent(QMouseEvent *event) override; 36 | void mouseReleaseEvent(QMouseEvent *event) override; 37 | void enterEvent(QEvent * event); 38 | void leaveEvent(QEvent * event); 39 | void setEnabled(bool enabled); 40 | void setReturnCode(QString rc) {m_returncode = rc;} 41 | void setNormalPixmap(QPixmap pm) 42 | { 43 | m_normalIcon = pm; 44 | if(m_disabledIcon.isNull()) 45 | m_disabledIcon = pm; 46 | if(m_pressedIcon.isNull()) 47 | m_pressedIcon = pm; 48 | if(m_hoverIcon.isNull()) 49 | m_hoverIcon = pm; 50 | setPixmap(m_normalIcon); 51 | } 52 | void setHoverPixmap(QPixmap pm) 53 | { 54 | m_hoverIcon = pm; 55 | if(m_pressedIcon.isNull()) 56 | m_pressedIcon = pm; 57 | } 58 | 59 | signals: 60 | void clicked(); 61 | void clicked(QString rc); 62 | 63 | private: 64 | QPixmap m_normalIcon; 65 | QPixmap m_hoverIcon; 66 | QPixmap m_pressedIcon; 67 | QPixmap m_disabledIcon; 68 | bool m_enabled; 69 | QString m_returncode; 70 | }; 71 | 72 | #endif // FLATBUTTON_H 73 | -------------------------------------------------------------------------------- /Widgets/images.qrc: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Widgets/imageselector.cpp: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #include "imageselector.h" 22 | #include 23 | #include 24 | #include 25 | 26 | ImageSelector::ImageSelector() 27 | { 28 | setCursor(Qt::PointingHandCursor); 29 | m_item = NULL; 30 | } 31 | 32 | void ImageSelector::setImage(QImage image) 33 | { 34 | m_image = image; 35 | update(); 36 | } 37 | 38 | void ImageSelector::mousePressEvent(QMouseEvent *event) 39 | { 40 | event->accept(); 41 | } 42 | 43 | void ImageSelector::mouseReleaseEvent(QMouseEvent *event) 44 | { 45 | event->accept(); 46 | if(m_item) 47 | emit clicked(this, event->button()); 48 | else 49 | emit clicked(); 50 | } 51 | 52 | void ImageSelector::paintEvent(QPaintEvent *event) 53 | { 54 | QPainter painter(this); 55 | painter.setRenderHint(QPainter::Antialiasing); 56 | QSize pixSize = m_image.size(); 57 | pixSize.scale(event->rect().size(), Qt::KeepAspectRatio); 58 | QImage scaledImage = m_image.scaled(pixSize, Qt::KeepAspectRatio, Qt::SmoothTransformation); 59 | qreal x = (event->rect().size().width() - scaledImage.size().width()) / 2.0; 60 | qreal y = (event->rect().size().height() - scaledImage.size().height()) / 2.0; 61 | painter.drawImage(x, y, scaledImage); 62 | } 63 | -------------------------------------------------------------------------------- /Widgets/imageselector.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef IMAGESELECTOR_H 22 | #define IMAGESELECTOR_H 23 | 24 | #include 25 | #include "widgets_global.h" 26 | 27 | class WIDGETSSHARED_EXPORT ImageSelector : public QWidget 28 | { 29 | Q_OBJECT 30 | 31 | public: 32 | ImageSelector(); 33 | 34 | void paintEvent(QPaintEvent *ev); 35 | void mousePressEvent(QMouseEvent *event) override; 36 | void mouseReleaseEvent(QMouseEvent *event) override; 37 | void setImage(QImage image); 38 | void setItem(QObject *item) {m_item = item;} 39 | QObject *item() {return m_item;} 40 | 41 | signals: 42 | void clicked(ImageSelector *, Qt::MouseButton); 43 | void clicked(); 44 | 45 | private: 46 | QImage m_image; 47 | qreal m_width; 48 | qreal m_height; 49 | QObject *m_item; 50 | }; 51 | 52 | #endif // IMAGESELECTOR_H 53 | -------------------------------------------------------------------------------- /Widgets/menu.cpp: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #include "menu.h" 22 | 23 | Menu::Menu() 24 | { 25 | 26 | } 27 | -------------------------------------------------------------------------------- /Widgets/menu.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef MENU_H 22 | #define MENU_H 23 | 24 | #include 25 | #include "menuitem.h" 26 | 27 | class Menu : public QObject 28 | { 29 | Q_OBJECT 30 | 31 | public: 32 | Menu(); 33 | 34 | void setName(QString name) {m_name = name;} 35 | QString name() {return m_name;} 36 | void addMenuitem(MenuItem *item) {m_items.append(item);} 37 | QList items() {return m_items;} 38 | void removeItem(MenuItem *item) {m_items.removeOne(item);} 39 | int id() {return m_id;} 40 | void setId(int id) {m_id = id;} 41 | 42 | private: 43 | QString m_name; 44 | QList m_items; 45 | int m_id; 46 | }; 47 | 48 | #endif // MENU_H 49 | -------------------------------------------------------------------------------- /Widgets/menuitem.cpp: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #include "menuitem.h" 22 | 23 | MenuItem::MenuItem() 24 | { 25 | m_isSubitem = false; 26 | m_parentItem = NULL; 27 | } 28 | -------------------------------------------------------------------------------- /Widgets/menuitem.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef MENUITEM_H 22 | #define MENUITEM_H 23 | 24 | #include 25 | #include 26 | 27 | class MenuItem : public QObject 28 | { 29 | Q_OBJECT 30 | 31 | public: 32 | MenuItem(); 33 | 34 | void setTitle(QString title) {m_title = title;} 35 | void setUrl(QString url) {m_url = url;} 36 | void setIcon(QString icon) {m_icon = icon;} 37 | QString title() {return m_title;} 38 | QString url() {return m_url;} 39 | QString icon() {return m_icon;} 40 | MenuItem *parentItem() {return m_parentItem;} 41 | void setParentItem(MenuItem *parent) {m_parentItem = parent;} 42 | bool isSubitem() {return m_isSubitem;} 43 | void setSubitem(bool sub) {m_isSubitem = sub;} 44 | void addMenuitem(MenuItem *item) {m_items.append(item); item->setParentItem(this);} 45 | void removeMenuitem(MenuItem *item) {m_items.removeOne(item); item->setParentItem(NULL);} 46 | QList items() {return m_items;} 47 | void addAttribute(QString attName, QString value) {m_attributes.insert(attName, value);} 48 | QHash attributes() {return m_attributes;} 49 | 50 | private: 51 | QString m_title; 52 | QString m_url; 53 | QString m_icon; 54 | QList m_items; 55 | bool m_isSubitem; 56 | MenuItem *m_parentItem; 57 | QHash m_attributes; 58 | }; 59 | 60 | #endif // MENUITEM_H 61 | -------------------------------------------------------------------------------- /Widgets/plugins.cpp: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #include "plugins.h" 22 | 23 | QMap Plugins::elementPlugins; 24 | QMap Plugins::themePlugins; 25 | QMap Plugins::publishPlugins; 26 | QStringList Plugins::usedPlugins; 27 | QString Plugins::_actualThemeEditorPlugin; 28 | QString Plugins::_actualPublishPlugin; 29 | 30 | ElementEditorInterface *Plugins::getElementPlugin(QString name) 31 | { 32 | return elementPlugins[name]; 33 | } 34 | 35 | ThemeEditorInterface *Plugins::getThemePlugin(QString name) 36 | { 37 | return themePlugins[name]; 38 | } 39 | 40 | PublisherInterface *Plugins::getPublishPlugin(QString name) 41 | { 42 | return publishPlugins[name]; 43 | } 44 | 45 | bool Plugins::hasElementPlugin(QString name) 46 | { 47 | return elementPlugins.contains(name); 48 | } 49 | 50 | bool Plugins::hasThemePlugin(QString name) 51 | { 52 | return themePlugins.contains(name); 53 | } 54 | 55 | bool Plugins::hasPublishPlugin(QString name) 56 | { 57 | return publishPlugins.contains(name); 58 | } 59 | 60 | QList Plugins::elementPluginNames() 61 | { 62 | return elementPlugins.keys(); 63 | } 64 | 65 | QList Plugins::themePluginNames() 66 | { 67 | return themePlugins.keys(); 68 | } 69 | 70 | QList Plugins::publishPluginNames() 71 | { 72 | return publishPlugins.keys(); 73 | } 74 | 75 | void Plugins::insert(QString name, ElementEditorInterface* plugin) 76 | { 77 | elementPlugins.insert(name, plugin); 78 | } 79 | 80 | void Plugins::insert(QString name, ThemeEditorInterface *plugin) 81 | { 82 | themePlugins.insert(name, plugin); 83 | } 84 | 85 | void Plugins::insert(QString name, PublisherInterface *plugin) 86 | { 87 | publishPlugins.insert(name, plugin); 88 | } 89 | -------------------------------------------------------------------------------- /Widgets/plugins.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef PLUGINS_H 22 | #define PLUGINS_H 23 | 24 | #include 25 | #include "interfaces.h" 26 | 27 | class Plugins 28 | { 29 | public: 30 | static ElementEditorInterface *getElementPlugin(QString name); 31 | static ThemeEditorInterface *getThemePlugin(QString name); 32 | static PublisherInterface *getPublishPlugin(QString name); 33 | static bool hasElementPlugin(QString name); 34 | static bool hasThemePlugin(QString name); 35 | static bool hasPublishPlugin(QString name); 36 | static QList elementPluginNames(); 37 | static QList themePluginNames(); 38 | static QList publishPluginNames(); 39 | static void insert(QString name, ElementEditorInterface* plugin); 40 | static void insert(QString name, ThemeEditorInterface* plugin); 41 | static void insert(QString name, PublisherInterface* plugin); 42 | 43 | static void clearUsedPlugins() {usedPlugins.clear();} 44 | static void addUsedPlugin(QString plugin) {usedPlugins.append(plugin);} 45 | static bool isPluginUsed(QString plugin) {return usedPlugins.contains(plugin);} 46 | static void setActualThemeEditorPlugin(QString tep) {_actualThemeEditorPlugin = tep;} 47 | static QString actualThemeEditorPlugin() {return _actualThemeEditorPlugin;} 48 | static void setActualPublishPlugin(QString pp) {_actualPublishPlugin = pp;} 49 | static QString actualPublishPlugin() {return _actualPublishPlugin;} 50 | 51 | private: 52 | static QMap elementPlugins; 53 | static QMap themePlugins; 54 | static QMap publishPlugins; 55 | static QStringList usedPlugins; 56 | static QString _actualThemeEditorPlugin; 57 | static QString _actualPublishPlugin; 58 | }; 59 | 60 | #endif // PLUGINS_H 61 | -------------------------------------------------------------------------------- /Widgets/rowpropertyeditor.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef ROWPROPERTYEDITOR_H 22 | #define ROWPROPERTYEDITOR_H 23 | 24 | #include 25 | #include 26 | #include "interfaces.h" 27 | #include "animateableeditor.h" 28 | 29 | class QXmlStreamReader; 30 | class RowPropertyEditor : public AnimateableEditor 31 | { 32 | Q_OBJECT 33 | 34 | public: 35 | RowPropertyEditor(); 36 | 37 | void setContent(QString ele); 38 | static QString getHtml(QXmlStreamReader *xml, QString filename); 39 | 40 | public slots: 41 | void closeEditor() override; 42 | 43 | private: 44 | QLineEdit *m_cssclass; 45 | QGridLayout *m_grid; 46 | }; 47 | 48 | #endif // ROWPROPERTYEDITOR_H 49 | -------------------------------------------------------------------------------- /Widgets/sectionpropertyeditor.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef SECTIONPROPERTYEDITOR_H 22 | #define SECTIONPROPERTYEDITOR_H 23 | 24 | #include 25 | #include 26 | #include 27 | #include "interfaces.h" 28 | #include "animateableeditor.h" 29 | 30 | class QXmlStreamReader; 31 | class SectionPropertyEditor : public AnimateableEditor 32 | { 33 | Q_OBJECT 34 | 35 | public: 36 | SectionPropertyEditor(); 37 | 38 | void setContent(QString content); 39 | static QString getHtml(QXmlStreamReader *xml, QString filename); 40 | 41 | public slots: 42 | void closeEditor() override; 43 | 44 | private: 45 | QLineEdit *m_cssclass; 46 | QLineEdit *m_style; 47 | QLineEdit *m_attributes; 48 | QLineEdit *m_id; 49 | QGridLayout *m_grid; 50 | bool m_fullwidth; 51 | }; 52 | 53 | #endif // SECTIONPROPERTYEDITOR_H 54 | -------------------------------------------------------------------------------- /Widgets/tablecellbuttons.cpp: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #include "tablecellbuttons.h" 22 | #include "flatbutton.h" 23 | #include 24 | 25 | TableCellButtons::TableCellButtons() 26 | { 27 | m_delete = new FlatButton(":/images/trash_normal.png", ":/images/trash_hover.png"); 28 | m_edit = new FlatButton(":/images/edit_normal.png", ":/images/edit_hover.png"); 29 | m_edit->setToolTip("Edit Item"); 30 | m_delete->setToolTip("Delete Item"); 31 | 32 | QHBoxLayout *hbox = new QHBoxLayout; 33 | hbox->addWidget(m_edit); 34 | hbox->addWidget(m_delete); 35 | setLayout(hbox); 36 | 37 | connect(m_delete, SIGNAL(clicked()), this, SLOT(deleteItemClicked())); 38 | connect(m_edit, SIGNAL(clicked()), this, SLOT(editItemClicked())); 39 | } 40 | 41 | void TableCellButtons::deleteItemClicked() 42 | { 43 | emit deleteItem(m_item); 44 | } 45 | 46 | void TableCellButtons::editItemClicked() 47 | { 48 | emit editItem(m_item); 49 | } 50 | -------------------------------------------------------------------------------- /Widgets/tablecellbuttons.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef TABLECELLBUTTONS_H 22 | #define TABLECELLBUTTONS_H 23 | 24 | #include 25 | 26 | class FlatButton; 27 | class TableCellButtons : public QWidget 28 | { 29 | Q_OBJECT 30 | 31 | public: 32 | TableCellButtons(); 33 | 34 | void setItem(QObject *item) {m_item = item;} 35 | 36 | private slots: 37 | void deleteItemClicked(); 38 | void editItemClicked(); 39 | 40 | signals: 41 | void deleteItem(QObject *); 42 | void editItem(QObject *); 43 | 44 | private: 45 | FlatButton *m_delete; 46 | FlatButton *m_edit; 47 | QObject *m_item; 48 | }; 49 | 50 | #endif // TABLECELLBUTTONS_H 51 | -------------------------------------------------------------------------------- /Widgets/undoableeditor.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef UNDOABLEEDITOR_H 22 | #define UNDOABLEEDITOR_H 23 | 24 | #include 25 | #include "flatbutton.h" 26 | #include 27 | 28 | extern int fileVersionNumber; 29 | 30 | class QGridLayout; 31 | class QMainWindow; 32 | class UndoableEditor : public QWidget 33 | { 34 | Q_OBJECT 35 | 36 | public: 37 | UndoableEditor(); 38 | ~UndoableEditor(); 39 | 40 | virtual void load() = 0; 41 | virtual void save() = 0; 42 | 43 | void setWindow(QMainWindow *win) {m_win = win;} 44 | 45 | protected: 46 | void contentChanged(QString text); 47 | 48 | private slots: 49 | void canUndoChanged(bool can) {m_undo->setEnabled(can);} 50 | void canRedoChanged(bool can) {m_redo->setEnabled(can);} 51 | void undoTextChanged(QString text) {m_undo->setToolTip("Undo " + text);} 52 | void redoTextChanged(QString text) {m_redo->setToolTip("Redo " + text);} 53 | void undo() {m_undoStack->undo();} 54 | void redo() {m_undoStack->redo();} 55 | 56 | protected: 57 | QGridLayout *m_layout; 58 | QUndoStack *m_undoStack; 59 | QString m_filename; 60 | QMainWindow *m_win; 61 | QLabel *m_titleLabel; 62 | 63 | private: 64 | FlatButton *m_undo; 65 | FlatButton *m_redo; 66 | }; 67 | 68 | class ChangeFileCommand : public QUndoCommand 69 | { 70 | public: 71 | ChangeFileCommand(UndoableEditor *editor, QString filename, QString text, QUndoCommand *parent = 0); 72 | void undo() override; 73 | void redo() override; 74 | 75 | private: 76 | QString m_undoFilename; 77 | QString m_redoFilename; 78 | QString m_filename; 79 | UndoableEditor *m_editor; 80 | }; 81 | 82 | #endif // UNDOABLEEDITOR_H 83 | -------------------------------------------------------------------------------- /Widgets/widgets_global.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef WIDGETS_GLOBAL_H 22 | #define WIDGETS_GLOBAL_H 23 | 24 | #include 25 | 26 | #if defined(WIDGETS_LIBRARY) 27 | # define WIDGETSSHARED_EXPORT Q_DECL_EXPORT 28 | #else 29 | # define WIDGETSSHARED_EXPORT Q_DECL_IMPORT 30 | #endif 31 | 32 | #endif // WIDGETS_GLOBAL_H 33 | -------------------------------------------------------------------------------- /Widgets/xmlhighlighter.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef XMLHIGHLIGHTER_H 22 | #define XMLHIGHLIGHTER_H 23 | 24 | #include 25 | #include 26 | 27 | QT_BEGIN_NAMESPACE 28 | class QTextDocument; 29 | QT_END_NAMESPACE 30 | 31 | class XmlHighlighter : public QSyntaxHighlighter 32 | { 33 | Q_OBJECT 34 | 35 | public: 36 | enum Construct 37 | { 38 | Entity, 39 | Tag, 40 | Code, 41 | Comment, 42 | LastConstruct = Comment 43 | }; 44 | 45 | XmlHighlighter(QTextDocument *document); 46 | 47 | void setFormatFor(Construct construct, const QTextCharFormat &format); 48 | QTextCharFormat formatFor(Construct construct) const 49 | { 50 | return m_formats[construct]; 51 | } 52 | 53 | protected: 54 | enum State 55 | { 56 | NormalState = -1, 57 | InComment, 58 | InTag, 59 | InVar, 60 | InLoop 61 | }; 62 | 63 | void highlightBlock(const QString &text); 64 | 65 | private: 66 | QTextCharFormat m_formats[LastConstruct + 1]; 67 | }; 68 | 69 | #endif // XMLHIGHLIGHTER_H 70 | -------------------------------------------------------------------------------- /build.txt: -------------------------------------------------------------------------------- 1 | Create an AppImage 2 | ----------------- 3 | - build FlatSiteBuilder in release mode 4 | - update all plugins in the plugins directory so that they were linked into the resource file 5 | - run buildAppImage.sh 6 | 7 | -------------------------------------------------------------------------------- /buildAppImage.sh: -------------------------------------------------------------------------------- 1 | mkdir -p AppImage/usr/lib 2 | mkdir -p AppImage/usr/bin 3 | mkdir -p AppImage/usr/share/applications 4 | mkdir -p AppImage/usr/share/icons/hicolor 5 | mkdir -p AppImage/plugins 6 | mkdir -p AppImage/themes/default 7 | mkdir -p AppImage/themes/himu 8 | mkdir -p AppImage/testsite 9 | 10 | # App 11 | cp ../build-FlatSiteBuilder-Desktop_Qt_5_9_1_GCC_64bit-Release/FlatSiteBuilder AppImage/usr/bin 12 | # Lib 13 | cp ../build-FlatSiteBuilder-Desktop_Qt_5_9_1_GCC_64bit-Release/Widgets/libWidgets.so* AppImage/usr/lib 14 | # Desktop, #Icon 15 | cp default.desktop AppImage/usr/share/applications 16 | cp default.svg AppImage/usr/share/icons/hicolor 17 | # Plugins 18 | cp ../build-FlatSiteBuilder-Desktop_Qt_5_9_1_GCC_64bit-Release/plugins/DefaultThemeEditor/libDefaultThemeEditor.so AppImage/plugins 19 | cp ../build-FlatSiteBuilder-Desktop_Qt_5_9_1_GCC_64bit-Release/plugins/TextEditor/libTextEditor.so AppImage/plugins 20 | cp ../build-FlatSiteBuilder-Desktop_Qt_5_9_1_GCC_64bit-Release/plugins/DefaultThemeEditor/libDefaultThemeEditor.so AppImage/plugins 21 | cp ../build-FlatSiteBuilder-Desktop_Qt_5_9_1_GCC_64bit-Release/plugins/NoPublisher/libNoPublisher.so AppImage/plugins 22 | cp ../build-FlatSiteBuilder-Desktop_Qt_5_9_1_GCC_64bit-Release/plugins/ImageEditor/libImageEditor.so AppImage/plugins 23 | cp ../build-FlatSiteBuilder-Desktop_Qt_5_9_1_GCC_64bit-Release/plugins/SliderEditor/libSliderEditor.so AppImage/plugins 24 | #Themes 25 | cp --parents -r themes/default/* AppImage 26 | cp --parents -r themes/himu/* AppImage 27 | cp --parents -r themes/slate/* AppImage 28 | #Testsite 29 | cp --parents -r testsite/* AppImage 30 | 31 | export LD_LIBRARY_PATH=~/SourceCode/FlatSiteBuilder/AppImage/usr/lib:~/Qt/5.9.1/gcc_64/lib 32 | # has to run twice (OpenGL problem) 33 | /home/olaf/linuxdeployqt/linuxdeployqt-continuous-x86_64.AppImage AppImage/usr/share/applications/*.desktop 34 | /home/olaf/linuxdeployqt/linuxdeployqt-continuous-x86_64.AppImage AppImage/usr/share/applications/*.desktop 35 | rm AppImage/AppRun 36 | cp AppRun AppImage 37 | /home/olaf/appimagetool/appimagetool-x86_64.AppImage AppImage 38 | mv FlatSiteBuilder-x86_64.AppImage FlatSiteBuilder-Linux-x86_64-1.5.4.AppImage 39 | 40 | # Clean up 41 | rm -r AppImage/* 42 | -------------------------------------------------------------------------------- /columneditor.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef COLUMNEDITOR_H 22 | #define COLUMNEDITOR_H 23 | 24 | #include 25 | #include 26 | 27 | class ElementEditor; 28 | class ContentEditor; 29 | class QXmlStreamWriter; 30 | class ColumnEditor : public QWidget 31 | { 32 | Q_OBJECT 33 | 34 | public: 35 | ColumnEditor(); 36 | 37 | ColumnEditor* clone(); 38 | void addElement(ElementEditor *); 39 | void save(QXmlStreamWriter *); 40 | void setSpan(int s) {m_span = s;} 41 | int span() {return m_span;} 42 | 43 | protected: 44 | void dragEnterEvent(QDragEnterEvent *event) override; 45 | void dragLeaveEvent(QDragLeaveEvent *event) override; 46 | void dragMoveEvent(QDragMoveEvent *event) override; 47 | void dropEvent(QDropEvent *event) override; 48 | 49 | public slots: 50 | void addElement(); 51 | void copyElement(ElementEditor*); 52 | 53 | private: 54 | QVBoxLayout *m_layout; 55 | int m_span; 56 | 57 | ContentEditor* getContentEditor(); 58 | }; 59 | 60 | #endif // COLUMNEDITOR_H 61 | -------------------------------------------------------------------------------- /columnsdialog.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef COLUMNSDIALOG_H 22 | #define COLUMNSDIALOG_H 23 | 24 | #include 25 | 26 | class ColumnsDialog : public QDialog 27 | { 28 | Q_OBJECT 29 | 30 | public: 31 | ColumnsDialog(); 32 | 33 | int result() {return m_result;} 34 | void setResult(int res) {m_result = res;} 35 | 36 | private slots: 37 | void close1(); 38 | void close2(); 39 | void close3(); 40 | void close4(); 41 | void close5(); 42 | void close6(); 43 | void close7(); 44 | void close8(); 45 | void close9(); 46 | void close10(); 47 | void close11(); 48 | 49 | private: 50 | int m_result; 51 | }; 52 | 53 | #endif // COLUMNSDIALOG_H 54 | -------------------------------------------------------------------------------- /commands.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef COMMANDS_H 22 | #define COMMANDS_H 23 | 24 | #include 25 | 26 | extern int fileVersionNumber; 27 | 28 | class ContentList; 29 | class ContentEditor; 30 | class QMainWindow; 31 | class Site; 32 | class ChangeContentCommand : public QUndoCommand 33 | { 34 | public: 35 | ChangeContentCommand(QMainWindow *win, ContentEditor *ce, QString text, QUndoCommand *parent = 0); 36 | void undo() override; 37 | void redo() override; 38 | 39 | private: 40 | ContentEditor *m_contentEditor; 41 | QString m_tempFilename; 42 | QString m_redoFilename; 43 | QMainWindow *m_win; 44 | }; 45 | 46 | class DeleteContentCommand : public QUndoCommand 47 | { 48 | public: 49 | DeleteContentCommand(ContentList *cl, QString filename, QString text, QUndoCommand *parent = 0); 50 | void undo() override; 51 | void redo() override; 52 | 53 | private: 54 | ContentList *m_contentList; 55 | QString m_filename; 56 | QString m_undoFilename; 57 | }; 58 | 59 | class RenameContentCommand : public QUndoCommand 60 | { 61 | public: 62 | RenameContentCommand(ContentEditor *ce, QString oldname, QString newname, QString text, QUndoCommand *parent = 0); 63 | void undo() override; 64 | void redo() override; 65 | 66 | private: 67 | ContentEditor *m_contentEditor; 68 | QString m_oldname; 69 | QString m_newname; 70 | }; 71 | 72 | #endif // COMMANDS_H 73 | -------------------------------------------------------------------------------- /contentlist.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef CONTENTLIST_H 22 | #define CONTENTLIST_H 23 | 24 | #include 25 | #include 26 | #include 27 | #include "site.h" 28 | 29 | class QUndoStack; 30 | class FlatButton; 31 | class ContentList : public QWidget 32 | { 33 | Q_OBJECT 34 | 35 | public: 36 | ContentList(Site *site, ContentType type); 37 | ~ContentList(); 38 | 39 | QTableWidget *list() {return m_list;} 40 | Site *site() {return m_site;} 41 | ContentType type() {return m_type;} 42 | void reload(); 43 | 44 | private slots: 45 | void buttonClicked(); 46 | void tableDoubleClicked(int, int); 47 | void deleteContent(QObject *content); 48 | void editContent(QObject *content); 49 | void redo(); 50 | void undo(); 51 | void canUndoChanged(bool can); 52 | void canRedoChanged(bool can); 53 | void undoTextChanged(QString text); 54 | void redoTextChanged(QString text); 55 | 56 | signals: 57 | void addContent(); 58 | void editContent(QTableWidgetItem *item); 59 | 60 | private: 61 | Site *m_site; 62 | ContentType m_type; 63 | QTableWidget *m_list; 64 | QUndoStack *m_undoStack; 65 | FlatButton *m_undo; 66 | FlatButton *m_redo; 67 | QString m_addedContentName; 68 | 69 | void addListItem(Content *content); 70 | }; 71 | 72 | #endif // CONTENTLIST_H 73 | -------------------------------------------------------------------------------- /dashboard.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef DASHBOARD_H 22 | #define DASHBOARD_H 23 | 24 | #include 25 | #include 26 | #include 27 | #include 28 | #include "site.h" 29 | 30 | class FlatButton; 31 | class QTextBrowser; 32 | class QNetworkReply; 33 | class Dashboard : public QWidget 34 | { 35 | Q_OBJECT 36 | 37 | public: 38 | Dashboard(Site *site, QString defaultPath); 39 | 40 | signals: 41 | void loadSite(QString filename); 42 | void createSite(); 43 | void previewSite(Content *); 44 | void publishSite(); 45 | void buildSite(); 46 | 47 | private slots: 48 | void buildClicked(); 49 | void loadClicked(); 50 | void createClicked(); 51 | void publishClicked(); 52 | void previewClicked(); 53 | void siteLoaded(Site *site); 54 | void anchorClicked(QUrl url); 55 | void fileIsReady( QNetworkReply *reply); 56 | 57 | private: 58 | FlatButton *m_loadButton; 59 | FlatButton *m_createButton; 60 | FlatButton *m_publishButton; 61 | FlatButton *m_previewButton; 62 | FlatButton *m_buildButton; 63 | QLabel *m_info; 64 | Site *m_site; 65 | QString m_defaultPath; 66 | QTextBrowser *m_browser; 67 | }; 68 | 69 | #endif // DASHBOARD_H 70 | -------------------------------------------------------------------------------- /default.desktop: -------------------------------------------------------------------------------- 1 | [Desktop Entry] 2 | Type=Application 3 | Name=FlatSiteBuilder 4 | Exec=usr/bin/FlatSiteBuilder 5 | Icon=default 6 | Categories=Development;WebDevelopment; 7 | Comment=FlatSiteBuilder 8 | Terminal=true 9 | -------------------------------------------------------------------------------- /dropzone.cpp: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #include "dropzone.h" 22 | #include 23 | #include 24 | 25 | DropZone::DropZone(int w, int h) 26 | { 27 | QPalette pal = palette(); 28 | pal.setColor(QPalette::Background, QColor(palette().base().color().name()).lighter().lighter()); 29 | setPalette(pal); 30 | setAutoFillBackground(true); 31 | setMinimumWidth(w); 32 | setMaximumWidth(w); 33 | setMinimumHeight(h); 34 | setMaximumHeight(h); 35 | QHBoxLayout *hbox = new QHBoxLayout; 36 | hbox->addStretch(1); 37 | hbox->addWidget(new QLabel("Drop Here")); 38 | hbox->addStretch(1); 39 | setLayout(hbox); 40 | } 41 | -------------------------------------------------------------------------------- /dropzone.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef DROPZONE_H 22 | #define DROPZONE_H 23 | 24 | #include 25 | 26 | class DropZone : public QWidget 27 | { 28 | Q_OBJECT 29 | 30 | public: 31 | DropZone(int w, int h); 32 | }; 33 | 34 | #endif // DROPZONE_H 35 | -------------------------------------------------------------------------------- /elementeditor.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef ELEMENTEDITOR_H 22 | #define ELEMENTEDITOR_H 23 | 24 | #include 25 | #include 26 | #include "columneditor.h" 27 | #include "hyperlink.h" 28 | #include "flatbutton.h" 29 | 30 | class ContentEditor; 31 | class SectionEditor; 32 | class QXmlStreamWriter; 33 | class QXmlStreamReader; 34 | class ElementEditor : public QWidget 35 | { 36 | Q_OBJECT 37 | 38 | public: 39 | ElementEditor(); 40 | 41 | void mousePressEvent(QMouseEvent *event) override; 42 | 43 | ElementEditor *clone(); 44 | void setContent(QString content); 45 | QString content() {return m_content;} 46 | enum Mode {Empty, Enabled, Dropzone}; 47 | void setMode(Mode mode); 48 | Mode mode() {return m_mode;} 49 | QString type() {return m_type;} 50 | void save(QXmlStreamWriter *); 51 | void load(QXmlStreamReader *); 52 | 53 | public slots: 54 | void dropped(); 55 | 56 | private slots: 57 | void enable(); 58 | void close(); 59 | void edit(); 60 | void copy(); 61 | 62 | signals: 63 | void elementEnabled(); 64 | void elementDragged(); 65 | void elementCopied(ElementEditor*); 66 | 67 | private: 68 | Hyperlink *m_link; 69 | FlatButton *m_editButton; 70 | FlatButton *m_copyButton; 71 | FlatButton *m_closeButton; 72 | QLabel *m_text; 73 | QString m_normalColor; 74 | QString m_enabledColor; 75 | QString m_dropColor; 76 | QString m_content; 77 | Mode m_mode; 78 | QString m_type; 79 | bool m_zoom; 80 | 81 | void setColor(QString name); 82 | ContentEditor* getContentEditor(); 83 | SectionEditor *getSectionEditor(); 84 | void setText(QString text) {m_text->setText(text);} 85 | }; 86 | 87 | #endif // ELEMENTEDITOR_H 88 | -------------------------------------------------------------------------------- /expander.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef EXPANDER_H 22 | #define EXPANDER_H 23 | 24 | #include 25 | #include 26 | #include 27 | #include 28 | #include 29 | #include 30 | #include "hyperlink.h" 31 | 32 | class Expander : public QWidget 33 | { 34 | Q_OBJECT 35 | Q_PROPERTY(QColor color READ color WRITE setColor) 36 | 37 | public: 38 | Expander(QString header, QString normalIcon = "", QString hoveredIcon = "", QString selectedIcon = ""); 39 | 40 | void addLayout(QLayout *l); 41 | void enterEvent(QEvent * event); 42 | void leaveEvent(QEvent * event); 43 | void setExpanded(bool value); 44 | void setColor(QColor color); 45 | QColor color() {return Qt::black;} // not really needed now, 46 | 47 | protected: 48 | virtual void mouseReleaseEvent(QMouseEvent *event); 49 | 50 | public slots: 51 | void buttonClicked(); 52 | 53 | signals: 54 | void expanded(bool value); 55 | void clicked(); 56 | 57 | private: 58 | QWidget *m_content; 59 | QLabel *m_icon; 60 | QLabel *m_hyper; 61 | QString m_labelNormalColor; 62 | QString m_labelHoveredColor; 63 | QString m_labelSelectedColor; 64 | QImage m_normalIcon; 65 | QImage m_hoveredIcon; 66 | QImage m_selectedIcon; 67 | QString m_text; 68 | QPropertyAnimation *heightAnim; 69 | QPropertyAnimation *colorAnim; 70 | QParallelAnimationGroup *anim; 71 | QColor m_normalColor; 72 | QColor m_selectedColor; 73 | QColor m_hoveredColor; 74 | bool m_isExpanded; 75 | 76 | void expandContent(); 77 | void collapseContent(); 78 | }; 79 | 80 | #endif // EXPANDER_H 81 | -------------------------------------------------------------------------------- /hyperlink.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef HYPERLINK_H 22 | #define HYPERLINK_H 23 | 24 | #include 25 | #include 26 | 27 | class Hyperlink : public QLabel 28 | { 29 | Q_OBJECT 30 | public: 31 | Hyperlink(QString text); 32 | 33 | void mousePressEvent(QMouseEvent *event) override; 34 | void mouseReleaseEvent(QMouseEvent *event) override; 35 | void enterEvent (QEvent *event); 36 | void leaveEvent (QEvent *event); 37 | 38 | void setColor(QString color); 39 | void setHovered(bool value); 40 | void setAutohover(bool value); 41 | 42 | signals: 43 | void clicked(); 44 | 45 | private slots: 46 | void linkActivated(); 47 | 48 | private: 49 | QString m_text; 50 | QString m_color; 51 | QString m_hover; 52 | bool m_autohover; 53 | }; 54 | 55 | #endif // HYPERLINK_H 56 | -------------------------------------------------------------------------------- /images/appearance_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/appearance_hover.png -------------------------------------------------------------------------------- /images/appearance_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/appearance_normal.png -------------------------------------------------------------------------------- /images/appearance_selected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/appearance_selected.png -------------------------------------------------------------------------------- /images/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/background.png -------------------------------------------------------------------------------- /images/bigButton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/bigButton.png -------------------------------------------------------------------------------- /images/build_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/build_hover.png -------------------------------------------------------------------------------- /images/build_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/build_normal.png -------------------------------------------------------------------------------- /images/build_pressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/build_pressed.png -------------------------------------------------------------------------------- /images/close_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/close_hover.png -------------------------------------------------------------------------------- /images/close_hover_red.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/close_hover_red.png -------------------------------------------------------------------------------- /images/close_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/close_normal.png -------------------------------------------------------------------------------- /images/columns1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/columns1.png -------------------------------------------------------------------------------- /images/columns10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/columns10.png -------------------------------------------------------------------------------- /images/columns10_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/columns10_hover.png -------------------------------------------------------------------------------- /images/columns11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/columns11.png -------------------------------------------------------------------------------- /images/columns11_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/columns11_hover.png -------------------------------------------------------------------------------- /images/columns1_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/columns1_hover.png -------------------------------------------------------------------------------- /images/columns2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/columns2.png -------------------------------------------------------------------------------- /images/columns2_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/columns2_hover.png -------------------------------------------------------------------------------- /images/columns3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/columns3.png -------------------------------------------------------------------------------- /images/columns3_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/columns3_hover.png -------------------------------------------------------------------------------- /images/columns4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/columns4.png -------------------------------------------------------------------------------- /images/columns4_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/columns4_hover.png -------------------------------------------------------------------------------- /images/columns5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/columns5.png -------------------------------------------------------------------------------- /images/columns5_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/columns5_hover.png -------------------------------------------------------------------------------- /images/columns6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/columns6.png -------------------------------------------------------------------------------- /images/columns6_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/columns6_hover.png -------------------------------------------------------------------------------- /images/columns7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/columns7.png -------------------------------------------------------------------------------- /images/columns7_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/columns7_hover.png -------------------------------------------------------------------------------- /images/columns8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/columns8.png -------------------------------------------------------------------------------- /images/columns8_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/columns8_hover.png -------------------------------------------------------------------------------- /images/columns9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/columns9.png -------------------------------------------------------------------------------- /images/columns9_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/columns9_hover.png -------------------------------------------------------------------------------- /images/copy_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/copy_hover.png -------------------------------------------------------------------------------- /images/copy_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/copy_normal.png -------------------------------------------------------------------------------- /images/create_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/create_hover.png -------------------------------------------------------------------------------- /images/create_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/create_normal.png -------------------------------------------------------------------------------- /images/create_pressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/create_pressed.png -------------------------------------------------------------------------------- /images/dashboard_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/dashboard_hover.png -------------------------------------------------------------------------------- /images/dashboard_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/dashboard_normal.png -------------------------------------------------------------------------------- /images/dashboard_selected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/dashboard_selected.png -------------------------------------------------------------------------------- /images/down_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/down_disabled.png -------------------------------------------------------------------------------- /images/down_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/down_hover.png -------------------------------------------------------------------------------- /images/down_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/down_normal.png -------------------------------------------------------------------------------- /images/edit_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/edit_hover.png -------------------------------------------------------------------------------- /images/edit_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/edit_normal.png -------------------------------------------------------------------------------- /images/icon64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/icon64.png -------------------------------------------------------------------------------- /images/icon_128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/icon_128.png -------------------------------------------------------------------------------- /images/image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/image.png -------------------------------------------------------------------------------- /images/image_placeholder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/image_placeholder.png -------------------------------------------------------------------------------- /images/left_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/left_disabled.png -------------------------------------------------------------------------------- /images/left_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/left_hover.png -------------------------------------------------------------------------------- /images/left_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/left_normal.png -------------------------------------------------------------------------------- /images/load_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/load_hover.png -------------------------------------------------------------------------------- /images/load_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/load_normal.png -------------------------------------------------------------------------------- /images/load_pressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/load_pressed.png -------------------------------------------------------------------------------- /images/media_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/media_hover.png -------------------------------------------------------------------------------- /images/media_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/media_normal.png -------------------------------------------------------------------------------- /images/media_selected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/media_selected.png -------------------------------------------------------------------------------- /images/module_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/module_hover.png -------------------------------------------------------------------------------- /images/module_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/module_normal.png -------------------------------------------------------------------------------- /images/pages_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/pages_hover.png -------------------------------------------------------------------------------- /images/pages_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/pages_normal.png -------------------------------------------------------------------------------- /images/pages_selected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/pages_selected.png -------------------------------------------------------------------------------- /images/plugin_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/plugin_hover.png -------------------------------------------------------------------------------- /images/plugin_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/plugin_normal.png -------------------------------------------------------------------------------- /images/plugin_selected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/plugin_selected.png -------------------------------------------------------------------------------- /images/post_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/post_hover.png -------------------------------------------------------------------------------- /images/post_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/post_normal.png -------------------------------------------------------------------------------- /images/post_selected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/post_selected.png -------------------------------------------------------------------------------- /images/preview_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/preview_hover.png -------------------------------------------------------------------------------- /images/preview_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/preview_normal.png -------------------------------------------------------------------------------- /images/preview_pressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/preview_pressed.png -------------------------------------------------------------------------------- /images/publish_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/publish_hover.png -------------------------------------------------------------------------------- /images/publish_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/publish_normal.png -------------------------------------------------------------------------------- /images/publish_pressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/publish_pressed.png -------------------------------------------------------------------------------- /images/redo_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/redo_disabled.png -------------------------------------------------------------------------------- /images/redo_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/redo_hover.png -------------------------------------------------------------------------------- /images/redo_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/redo_normal.png -------------------------------------------------------------------------------- /images/right_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/right_disabled.png -------------------------------------------------------------------------------- /images/right_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/right_hover.png -------------------------------------------------------------------------------- /images/right_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/right_normal.png -------------------------------------------------------------------------------- /images/settings_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/settings_hover.png -------------------------------------------------------------------------------- /images/settings_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/settings_normal.png -------------------------------------------------------------------------------- /images/settings_selected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/settings_selected.png -------------------------------------------------------------------------------- /images/text.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/text.png -------------------------------------------------------------------------------- /images/theme.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/theme.png -------------------------------------------------------------------------------- /images/trash_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/trash_hover.png -------------------------------------------------------------------------------- /images/trash_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/trash_normal.png -------------------------------------------------------------------------------- /images/undo_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/undo_disabled.png -------------------------------------------------------------------------------- /images/undo_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/undo_hover.png -------------------------------------------------------------------------------- /images/undo_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/undo_normal.png -------------------------------------------------------------------------------- /images/up_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/up_disabled.png -------------------------------------------------------------------------------- /images/up_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/up_hover.png -------------------------------------------------------------------------------- /images/up_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/up_normal.png -------------------------------------------------------------------------------- /images/wizard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/images/wizard.png -------------------------------------------------------------------------------- /installdialog.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef INSTALLDIALOG_H 22 | #define INSTALLDIALOG_H 23 | 24 | #include 25 | 26 | class QLineEdit; 27 | class InstallDialog : public QDialog 28 | { 29 | Q_OBJECT 30 | 31 | public: 32 | InstallDialog(); 33 | 34 | QString installDirectory() {return m_installDirectory;} 35 | 36 | private slots: 37 | void installClicked(); 38 | void cancelClicked(); 39 | void chooseClicked(); 40 | 41 | private: 42 | QString m_installDirectory; 43 | QLineEdit *m_path; 44 | }; 45 | 46 | #endif // INSTALLDIALOG_H 47 | -------------------------------------------------------------------------------- /menulist.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef MENUELIST_H 22 | #define MENUELIST_H 23 | 24 | #include 25 | #include 26 | #include 27 | #include "site.h" 28 | #include "undoableeditor.h" 29 | 30 | class QUndoStack; 31 | class MainWindow; 32 | class MenuEditor; 33 | class FlatButton; 34 | class MenuList : public UndoableEditor 35 | { 36 | Q_OBJECT 37 | 38 | public: 39 | MenuList(MainWindow *win, Site *site); 40 | 41 | void load() override; 42 | void save() override; 43 | 44 | void registerMenuEditor(MenuEditor *editor); 45 | void unregisterMenuEditor(); 46 | 47 | private slots: 48 | void buttonClicked(); 49 | void tableDoubleClicked(int, int); 50 | void deleteMenu(QObject *menu); 51 | void editMenu(QObject *menu); 52 | void menuChanged(QString text); 53 | 54 | signals: 55 | void editContent(QTableWidgetItem *item); 56 | void editedItemChanged(QTableWidgetItem *item); 57 | 58 | private: 59 | Site *m_site; 60 | QTableWidget *m_list; 61 | MainWindow *m_win; 62 | MenuEditor *m_editor; 63 | Menu *m_menuInEditor; 64 | 65 | QTableWidgetItem *addListItem(Menu *menu); 66 | }; 67 | 68 | #endif // MENUELIST_H 69 | -------------------------------------------------------------------------------- /moduldialog.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef MODULDIALOG_H 22 | #define MODULDIALOG_H 23 | 24 | #include 25 | #include 26 | #include "interfaces.h" 27 | 28 | class FlatButton; 29 | class ModulDialog : public QDialog 30 | { 31 | Q_OBJECT 32 | 33 | public: 34 | ModulDialog(); 35 | QString result() {return m_result;} 36 | void setResult(QString res) {m_result = res;} 37 | 38 | private slots: 39 | void close1(); 40 | void close2(QString); 41 | 42 | private: 43 | QString m_result; 44 | QGridLayout *m_grid; 45 | FlatButton *createButton(QImage icon, QString text); 46 | }; 47 | 48 | #endif // MODULDIALOG_H 49 | -------------------------------------------------------------------------------- /pageeditor.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef PAGEEDITOR_H 22 | #define PAGEEDITOR_H 23 | 24 | #include 25 | #include 26 | #include "sectioneditor.h" 27 | 28 | class PageEditor : public QWidget 29 | { 30 | Q_OBJECT 31 | 32 | public: 33 | PageEditor(); 34 | 35 | void addSection(SectionEditor *se); 36 | void removeSection(SectionEditor *se); 37 | void enableColumnAcceptDrop(bool mode); 38 | void enableSectionAcceptDrop(bool mode); 39 | QList sections(); 40 | 41 | protected: 42 | void dragEnterEvent(QDragEnterEvent *event) override; 43 | void dragLeaveEvent(QDragLeaveEvent *event) override; 44 | void dragMoveEvent(QDragMoveEvent *event) override; 45 | void dropEvent(QDropEvent *event) override; 46 | 47 | private slots: 48 | void addSection(); 49 | void addFullSection(); 50 | void copySection(SectionEditor *); 51 | 52 | private: 53 | QVBoxLayout *m_layout; 54 | 55 | ContentEditor* getContentEditor(); 56 | }; 57 | 58 | #endif // PAGEEDITOR_H 59 | -------------------------------------------------------------------------------- /plugins/DefaultThemeEditor/DefaultThemeEditor.pro: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2017 Olaf Japp 2 | # https://facebook.com/artanidos 3 | # 4 | # This file is part of FlatSiteBuilder. 5 | # 6 | # FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | # it under the terms of the GNU General Public License as published by 8 | # the Free Software Foundation, either version 3 of the License, or 9 | # (at your option) any later version. 10 | # 11 | # FlatSiteBuilder is distributed in the hope that it will be useful, 12 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | # GNU General Public License for more details. 15 | # 16 | # You should have received a copy of the GNU General Public License 17 | # along with FlatSiteBuilder. If not, see . 18 | 19 | QT += widgets gui core 20 | TEMPLATE = lib 21 | CONFIG += plugin 22 | TARGET = DefaultThemeEditor 23 | INCLUDEPATH += ../../ 24 | SOURCES += defaultthemeeditor.cpp 25 | HEADERS += defaultthemeeditor.h 26 | 27 | CONFIG(debug, debug|release) { 28 | DESTDIR = ~/FlatSiteBuilder/plugins 29 | } 30 | 31 | LIBS += -L$$OUT_PWD/../../Widgets/ -lWidgets 32 | INCLUDEPATH += $$PWD/../../Widgets 33 | DEPENDPATH += $$PWD/../../Widgets 34 | -------------------------------------------------------------------------------- /plugins/DefaultThemeEditor/defaultthemeeditor.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef DEFAULTTHEMEEDITOR_H 22 | #define DEFAULTTHEMEEDITOR_H 23 | 24 | #include 25 | #include 26 | #include 27 | #include 28 | #include "interfaces.h" 29 | #include "undoableeditor.h" 30 | 31 | class DefaultThemeEditor : public ThemeEditorInterface 32 | { 33 | Q_OBJECT 34 | Q_PLUGIN_METADATA(IID "com.github.Artanidos.FlatSiteBuilder.ThemeEditorInterface") 35 | Q_INTERFACES(ThemeEditorInterface) 36 | 37 | public: 38 | DefaultThemeEditor(); 39 | QString className() override {return "DefaultThemeEditor";} 40 | QString displayName() override {return "Default Theme Editor";} 41 | QString themeName() override {return "default";} 42 | QString version() override {return "1.5.4";} 43 | void setSourcePath(QString path) override {m_filename = path + "/DefaultTheme.xml"; load();} 44 | QVariantMap themeVars(); 45 | void load() override; 46 | void save() override; 47 | 48 | private slots: 49 | void showPoweredChanged(); 50 | 51 | private: 52 | QCheckBox *m_hidePoweredBy; 53 | bool m_isHidePoweredByEnabled; 54 | }; 55 | 56 | #endif // DEFAULTTHEMEEDITOR_H 57 | -------------------------------------------------------------------------------- /plugins/ImageEditor/ImageEditor.pro: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2017 Olaf Japp 2 | # https://facebook.com/artanidos 3 | # 4 | # This file is part of FlatSiteBuilder. 5 | # 6 | # FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | # it under the terms of the GNU General Public License as published by 8 | # the Free Software Foundation, either version 3 of the License, or 9 | # (at your option) any later version. 10 | # 11 | # FlatSiteBuilder is distributed in the hope that it will be useful, 12 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | # GNU General Public License for more details. 15 | # 16 | # You should have received a copy of the GNU General Public License 17 | # along with FlatSiteBuilder. If not, see . 18 | 19 | QT += widgets gui core 20 | TEMPLATE = lib 21 | CONFIG += plugin 22 | TARGET = ImageEditor 23 | INCLUDEPATH += ../../ 24 | SOURCES += imageeditor.cpp 25 | HEADERS += imageeditor.h 26 | 27 | CONFIG(debug, debug|release) { 28 | DESTDIR = ~/FlatSiteBuilder/plugins 29 | } 30 | 31 | LIBS += -L$$OUT_PWD/../../Widgets/ -lWidgets 32 | INCLUDEPATH += $$PWD/../../Widgets 33 | DEPENDPATH += $$PWD/../../Widgets 34 | 35 | 36 | RESOURCES += \ 37 | resources.qrc 38 | -------------------------------------------------------------------------------- /plugins/ImageEditor/image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/plugins/ImageEditor/image.png -------------------------------------------------------------------------------- /plugins/ImageEditor/imageeditor.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef IMAGEEDITOR_H 22 | #define IMAGEEDITOR_H 23 | 24 | #include 25 | #include 26 | #include "interfaces.h" 27 | #include "imageselector.h" 28 | 29 | class QLineEdit; 30 | class ImageEditor : public ElementEditorInterface 31 | { 32 | Q_OBJECT 33 | Q_PLUGIN_METADATA(IID "com.github.Artanidos.FlatSiteBuilder.EditorInterface") 34 | Q_INTERFACES(ElementEditorInterface) 35 | 36 | public: 37 | ImageEditor(); 38 | 39 | QString className() {return "ImageEditor";} 40 | QString displayName() {return "Image";} 41 | QString tagName() {return "Image";} 42 | QImage icon() {return QImage(":/image.png");} 43 | QString version() override {return "1.5.4";} 44 | QString getHtml(QXmlStreamReader *xml); 45 | void setContent(QString content); 46 | QString load(QXmlStreamReader *xml) override; 47 | 48 | private slots: 49 | void seek(); 50 | void closeEditor(); 51 | 52 | private: 53 | QString m_animation; 54 | ImageSelector *m_image; 55 | QLineEdit *m_source; 56 | QLineEdit *m_alt; 57 | QLineEdit *m_title; 58 | QLineEdit *m_adminlabel; 59 | QHash m_attributes; 60 | 61 | void toString(); 62 | }; 63 | 64 | #endif // IMAGEEDITOR_H 65 | -------------------------------------------------------------------------------- /plugins/ImageEditor/resources.qrc: -------------------------------------------------------------------------------- 1 | 2 | 3 | image.png 4 | 5 | 6 | -------------------------------------------------------------------------------- /plugins/NoPublisher/NoPublisher.pro: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2017 Olaf Japp 2 | # https://facebook.com/artanidos 3 | # 4 | # This file is part of FlatSiteBuilder. 5 | # 6 | # FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | # it under the terms of the GNU General Public License as published by 8 | # the Free Software Foundation, either version 3 of the License, or 9 | # (at your option) any later version. 10 | # 11 | # FlatSiteBuilder is distributed in the hope that it will be useful, 12 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | # GNU General Public License for more details. 15 | # 16 | # You should have received a copy of the GNU General Public License 17 | # along with FlatSiteBuilder. If not, see . 18 | 19 | QT += widgets gui core 20 | TEMPLATE = lib 21 | CONFIG += plugin 22 | TARGET = NoPublisher 23 | INCLUDEPATH += ../../ 24 | SOURCES += nopublisher.cpp 25 | HEADERS += nopublisher.h 26 | 27 | CONFIG(debug, debug|release) { 28 | DESTDIR = ~/FlatSiteBuilder/plugins 29 | } 30 | 31 | LIBS += -L$$OUT_PWD/../../Widgets/ -lWidgets 32 | INCLUDEPATH += $$PWD/../../Widgets 33 | DEPENDPATH += $$PWD/../../Widgets 34 | 35 | RESOURCES += \ 36 | html.qrc 37 | -------------------------------------------------------------------------------- /plugins/NoPublisher/html.qrc: -------------------------------------------------------------------------------- 1 | 2 | 3 | publish.html 4 | 5 | 6 | -------------------------------------------------------------------------------- /plugins/NoPublisher/nopublisher.cpp: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #include "nopublisher.h" 22 | #include 23 | #include 24 | #include 25 | 26 | /* 27 | * Just a sample plugin to demonstrate how to build a publishing plugin 28 | * Normally you should build a user interface with fields for some properties 29 | * and a publish button which triggers the process to deploy the html files 30 | * and assets to the server 31 | */ 32 | NoPublisher::NoPublisher() 33 | { 34 | QString html = ""; 35 | QFile htmlFile(":/publish.html"); 36 | if(!htmlFile.open(QFile::ReadOnly)) 37 | { 38 | html = "Unable to open file publish.html"; 39 | } 40 | html = QString::fromUtf8(htmlFile.readAll()); 41 | htmlFile.close(); 42 | 43 | m_browser = new QTextBrowser; 44 | m_browser->setHtml(html); 45 | QVBoxLayout *layout = new QVBoxLayout(); 46 | layout->addWidget(m_browser); 47 | setLayout(layout); 48 | } 49 | 50 | void NoPublisher::setSitePath(QString path) 51 | { 52 | Q_UNUSED(path) 53 | // all html files and assets have been copied to this (path) directory 54 | // normally ~/FlatSiteBuilder/YourSiteName 55 | // you should copy them to your desired location or push them to github or whereever 56 | } 57 | -------------------------------------------------------------------------------- /plugins/NoPublisher/nopublisher.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef NOPUBLISHER_H 22 | #define NOPUBLISHER_H 23 | 24 | #include 25 | #include 26 | #include "interfaces.h" 27 | 28 | class QNetworkReply; 29 | class QTextBrowser; 30 | class NoPublisher : public PublisherInterface 31 | { 32 | Q_OBJECT 33 | Q_PLUGIN_METADATA(IID "com.github.Artanidos.FlatSiteBuilder.PublisherInterface") 34 | Q_INTERFACES(PublisherInterface) 35 | 36 | public: 37 | NoPublisher(); 38 | QString className() override {return "NoPublisher";} 39 | QString displayName() override {return "Not really a publisher but a description";} 40 | QString version() override {return "1.5.4";} 41 | void setSitePath(QString path) override; 42 | 43 | private: 44 | QTextBrowser *m_browser; 45 | }; 46 | 47 | #endif // NOPUBLISHER_H 48 | -------------------------------------------------------------------------------- /plugins/NoPublisher/publish.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 |
6 |
7 |
8 |

No Publisher

9 |

This plugin is only here to demonstrate the possibility of a publisher plugin.

10 |

But you can publish your website manually using git with the following commands.

11 |

 

12 |

Your content is stored at ~/FlatSiteBuilder/MyProject

13 |

Please exchange MyProject with the project title and mycompany and myproject with the appropriate values.

14 |

We assume that you already have a github repository for your project. If not you should create a repo prior to push content.

15 |

Publish site source

16 |

17 |

    18 |
  • cd ~/FlatSiteBuilder
  • 19 |
  • cd sources
  • 20 |
  • cd myproject
  • 21 |
  • git init
  • 22 |
  • git add .
  • 23 |
  • git commit -m "first commit"
  • 24 |
  • git remote add origin https://github.com/mycompany/myproject.git
  • 25 |
  • git push -u origin master
  • 26 |
27 |

28 |

Publish site content

29 |

30 |

    31 |
  • cd ~/FlatSiteBuilder
  • 32 |
  • cd sites
  • 33 |
  • cd MyProject
  • 34 |
  • git init
  • 35 |
  • git checkout --orphan gh-pages
  • 36 |
  • git add .
  • 37 |
  • git commit -m "first commit"
  • 38 |
  • git remote add origin https://github.com/mycompany/myproject.git
  • 39 |
  • git push origin gh-pages
  • 40 |
      41 |

      42 | 43 |

      Clone a website

      44 |

      If you already have published your website and want to download it from github use the following.

      45 |

      46 |

        47 |
      • cd ~/FlatSiteBuilder
      • 48 |
      • cd sites
      • 49 |
      • git clone -b gh-pages https://github.com/mycompany/myproject.git MyProject
      • 50 |
          51 |

          52 |
53 |
54 |
55 | 56 | 57 | -------------------------------------------------------------------------------- /plugins/SampleEditor/SampleEditor.pro: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2017 Olaf Japp 2 | # https://facebook.com/artanidos 3 | # 4 | # This file is part of FlatSiteBuilder. 5 | # 6 | # FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | # it under the terms of the GNU General Public License as published by 8 | # the Free Software Foundation, either version 3 of the License, or 9 | # (at your option) any later version. 10 | # 11 | # FlatSiteBuilder is distributed in the hope that it will be useful, 12 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | # GNU General Public License for more details. 15 | # 16 | # You should have received a copy of the GNU General Public License 17 | # along with FlatSiteBuilder. If not, see . 18 | 19 | QT += widgets gui core 20 | TEMPLATE = lib 21 | CONFIG += plugin 22 | TARGET = SampleEditor 23 | INCLUDEPATH += ../../ 24 | SOURCES += sampleeditor.cpp 25 | HEADERS += sampleeditor.h 26 | 27 | CONFIG(debug, debug|release) { 28 | DESTDIR = ~/FlatSiteBuilder/plugins 29 | } 30 | 31 | LIBS += -L$$OUT_PWD/../../Widgets/ -lWidgets 32 | INCLUDEPATH += $$PWD/../../Widgets 33 | DEPENDPATH += $$PWD/../../Widgets 34 | 35 | RESOURCES += \ 36 | images.qrc 37 | -------------------------------------------------------------------------------- /plugins/SampleEditor/images.qrc: -------------------------------------------------------------------------------- 1 | 2 | 3 | sample.png 4 | 5 | 6 | -------------------------------------------------------------------------------- /plugins/SampleEditor/sample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/plugins/SampleEditor/sample.png -------------------------------------------------------------------------------- /plugins/SampleEditor/sampleeditor.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef SAMPLEEDITOR_H 22 | #define SAMPLEEDITOR_H 23 | 24 | #include 25 | #include 26 | #include 27 | #include "interfaces.h" 28 | 29 | class SampleEditor : public ElementEditorInterface 30 | { 31 | Q_OBJECT 32 | Q_PLUGIN_METADATA(IID "com.github.Artanidos.FlatSiteBuilder.ElementEditorInterface") 33 | Q_INTERFACES(ElementEditorInterface) 34 | 35 | public: 36 | SampleEditor(); 37 | QString className() {return "SampleEditor";} 38 | QString displayName() {return "Sample";} 39 | QString tagName() {return "Sample";} 40 | QImage icon() {return QImage(":/sample.png");} 41 | QString version() override {return "1.5.4";} 42 | QString getHtml(QXmlStreamReader *xml); 43 | void setContent(QString content); 44 | QString load(QXmlStreamReader *xml) override; 45 | 46 | private slots: 47 | void closeEditor(); 48 | 49 | private: 50 | QLineEdit *m_sampleproperty; 51 | QLineEdit *m_adminlabel; 52 | }; 53 | 54 | #endif // SAMPLEEDITOR_H 55 | -------------------------------------------------------------------------------- /plugins/SliderEditor/SliderEditor.pro: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2017 Olaf Japp 2 | # https://facebook.com/artanidos 3 | # 4 | # This file is part of FlatSiteBuilder. 5 | # 6 | # FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | # it under the terms of the GNU General Public License as published by 8 | # the Free Software Foundation, either version 3 of the License, or 9 | # (at your option) any later version. 10 | # 11 | # FlatSiteBuilder is distributed in the hope that it will be useful, 12 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | # GNU General Public License for more details. 15 | # 16 | # You should have received a copy of the GNU General Public License 17 | # along with FlatSiteBuilder. If not, see . 18 | 19 | QT += widgets gui core testlib 20 | TEMPLATE = lib 21 | CONFIG += plugin 22 | TARGET = SliderEditor 23 | INCLUDEPATH += ../../ 24 | SOURCES += slidereditor.cpp \ 25 | slideeditor.cpp 26 | HEADERS += slidereditor.h \ 27 | slideeditor.h 28 | 29 | CONFIG(debug, debug|release) { 30 | DESTDIR = ~/FlatSiteBuilder/plugins 31 | } 32 | 33 | LIBS += -L$$OUT_PWD/../../Widgets/ -lWidgets 34 | INCLUDEPATH += $$PWD/../../Widgets 35 | DEPENDPATH += $$PWD/../../Widgets 36 | 37 | RESOURCES += \ 38 | images.qrc 39 | -------------------------------------------------------------------------------- /plugins/SliderEditor/images.qrc: -------------------------------------------------------------------------------- 1 | 2 | 3 | slider.png 4 | 5 | 6 | -------------------------------------------------------------------------------- /plugins/SliderEditor/slideeditor.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef SLIDEEDITOR_H 22 | #define SLIDEEDITOR_H 23 | 24 | #include "interfaces.h" 25 | #include "animateableeditor.h" 26 | 27 | class Slide; 28 | class ImageSelector; 29 | class QLineEdit; 30 | class QTextEdit; 31 | class SlideEditor : public AnimateableEditor 32 | { 33 | Q_OBJECT 34 | 35 | public: 36 | SlideEditor(); 37 | 38 | void setContent(QString) {/* unused */} 39 | void setSlide(Slide *slide); 40 | Slide *slide() {return m_slide;} 41 | 42 | public slots: 43 | void closeEditor() override; 44 | 45 | signals: 46 | void close(); 47 | 48 | private slots: 49 | void seek(); 50 | 51 | private: 52 | QLineEdit *m_adminlabel; 53 | QLineEdit *m_source; 54 | ImageSelector *m_image; 55 | Slide *m_slide; 56 | QTextEdit *m_innerHtml; 57 | }; 58 | 59 | #endif // SLIDEEDITOR_H 60 | -------------------------------------------------------------------------------- /plugins/SliderEditor/slider.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/plugins/SliderEditor/slider.png -------------------------------------------------------------------------------- /plugins/TextEditor/TextEditor.pro: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2017 Olaf Japp 2 | # https://facebook.com/artanidos 3 | # 4 | # This file is part of FlatSiteBuilder. 5 | # 6 | # FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | # it under the terms of the GNU General Public License as published by 8 | # the Free Software Foundation, either version 3 of the License, or 9 | # (at your option) any later version. 10 | # 11 | # FlatSiteBuilder is distributed in the hope that it will be useful, 12 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | # GNU General Public License for more details. 15 | # 16 | # You should have received a copy of the GNU General Public License 17 | # along with FlatSiteBuilder. If not, see . 18 | 19 | QT += widgets gui core 20 | TEMPLATE = lib 21 | CONFIG += plugin 22 | TARGET = TextEditor 23 | INCLUDEPATH += ../../ 24 | SOURCES += texteditor.cpp 25 | HEADERS += texteditor.h 26 | 27 | CONFIG(debug, debug|release) { 28 | DESTDIR = ~/FlatSiteBuilder/plugins 29 | } 30 | 31 | LIBS += -L$$OUT_PWD/../../Widgets/ -lWidgets 32 | INCLUDEPATH += $$PWD/../../Widgets 33 | DEPENDPATH += $$PWD/../../Widgets 34 | 35 | RESOURCES += \ 36 | images.qrc 37 | -------------------------------------------------------------------------------- /plugins/TextEditor/images.qrc: -------------------------------------------------------------------------------- 1 | 2 | 3 | text.png 4 | 5 | 6 | -------------------------------------------------------------------------------- /plugins/TextEditor/text.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/plugins/TextEditor/text.png -------------------------------------------------------------------------------- /plugins/TextEditor/texteditor.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef TEXTEDITOR_H 22 | #define TEXTEDITOR_H 23 | 24 | #include "interfaces.h" 25 | #include 26 | #include 27 | #include 28 | #include 29 | 30 | class TextEditor : public ElementEditorInterface 31 | { 32 | Q_OBJECT 33 | Q_PLUGIN_METADATA(IID "com.github.Artanidos.FlatSiteBuilder.ElementEditorInterface") 34 | Q_INTERFACES(ElementEditorInterface) 35 | 36 | public: 37 | TextEditor(); 38 | 39 | void setContent(QString content) override; 40 | QString className() override {return "TextEditor";} 41 | QString displayName() override {return "Text";} 42 | QString tagName() override {return "Text";} 43 | QString version() override {return "1.5.4";} 44 | QImage icon() override {return QImage(":/images/text.png");} 45 | QString getHtml(QXmlStreamReader *xml) override; 46 | QString load(QXmlStreamReader *xml) override; 47 | 48 | public slots: 49 | void closeEditor() override; 50 | 51 | signals: 52 | void close(); 53 | 54 | private: 55 | QTextEdit *m_html; 56 | QLineEdit *m_adminlabel; 57 | }; 58 | 59 | #endif // TEXTEDITOR_H 60 | -------------------------------------------------------------------------------- /roweditor.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef ROWEDITOR_H 22 | #define ROWEDITOR_H 23 | 24 | #include 25 | #include 26 | #include "elementeditor.h" 27 | #include "flatbutton.h" 28 | 29 | class QXmlStreamWriter; 30 | class RowEditor : public QWidget 31 | { 32 | Q_OBJECT 33 | 34 | public: 35 | RowEditor(bool clone = false); 36 | 37 | void mousePressEvent(QMouseEvent *event); 38 | void enableColumnAcceptDrop(bool mode); 39 | void addColumn(ColumnEditor *, int column); 40 | RowEditor* clone(); 41 | void save(QXmlStreamWriter*); 42 | void setContent(QString content); 43 | void setCssClass(QString cls) {m_cssclass = cls;} 44 | QString content(); 45 | 46 | signals: 47 | void beginDrag(); 48 | void rowEditorCopied(RowEditor*); 49 | 50 | private slots: 51 | void close(); 52 | void copy(); 53 | void edit(); 54 | void addColumns(); 55 | 56 | private: 57 | QGridLayout *m_layout; 58 | QRect m_highlightedRect; 59 | FlatButton *m_editButton; 60 | FlatButton *m_copyButton; 61 | FlatButton *m_closeButton; 62 | Hyperlink *m_addColumns; 63 | QString m_cssclass; 64 | 65 | ContentEditor* getContentEditor(); 66 | }; 67 | 68 | #endif // ROWEDITOR_H 69 | -------------------------------------------------------------------------------- /sitesettingseditor.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef SITESETTINGSEDITOR_H 22 | #define SITESETTINGSEDITOR_H 23 | 24 | #include 25 | #include "undoableeditor.h" 26 | 27 | class MainWindow; 28 | class Site; 29 | class QGridLayout; 30 | class QLineEdit; 31 | class QComboBox; 32 | class SiteSettingsEditor : public UndoableEditor 33 | { 34 | Q_OBJECT 35 | 36 | public: 37 | SiteSettingsEditor(MainWindow *win, Site *site); 38 | 39 | void load() override; 40 | void save() override; 41 | 42 | private slots: 43 | void titleChanged(); 44 | void authorChanged(); 45 | void descriptionChanged(); 46 | void keywordsChanged(); 47 | void copyrightChanged(); 48 | void publisherChanged(QString publisher); 49 | 50 | private: 51 | MainWindow *m_win; 52 | Site *m_site; 53 | QLineEdit *m_title; 54 | QLineEdit *m_description; 55 | QLineEdit *m_copyright; 56 | QLineEdit *m_keywords; 57 | QLineEdit *m_author; 58 | QComboBox *m_publisher; 59 | }; 60 | 61 | #endif // SITESETTINGSEDITOR_H 62 | -------------------------------------------------------------------------------- /sitewizard.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef SITEWIZARD_H 22 | #define SITEWIZARD_H 23 | 24 | #include 25 | 26 | class QLabel; 27 | class QLineEdit; 28 | class QComboBox; 29 | class SiteWizard : public QWizard 30 | { 31 | Q_OBJECT 32 | 33 | public: 34 | SiteWizard(QString installDirectory); 35 | 36 | void accept() override; 37 | 38 | signals: 39 | void loadSite(QString file); 40 | void buildSite(); 41 | 42 | private: 43 | QString m_installDirectory; 44 | }; 45 | 46 | class IntroPage : public QWizardPage 47 | { 48 | Q_OBJECT 49 | 50 | public: 51 | IntroPage(QWidget *parent = 0); 52 | 53 | private: 54 | QLabel *label; 55 | }; 56 | 57 | class SiteInfoPage : public QWizardPage 58 | { 59 | Q_OBJECT 60 | 61 | public: 62 | SiteInfoPage(QString installDirectory, QWidget *parent = 0); 63 | 64 | private: 65 | QLabel *m_siteNameLabel; 66 | QLineEdit *m_siteNameLineEdit; 67 | QLabel *m_copyrightLabel; 68 | QLineEdit *m_copyrightLineEdit; 69 | QLabel *m_descriptionLabel; 70 | QLineEdit *m_descriptionLineEdit; 71 | QLabel *m_themeLabel; 72 | QComboBox *m_theme; 73 | QLabel *m_warning; 74 | QString m_installDirectory; 75 | 76 | private slots: 77 | void siteNameChanged(QString name); 78 | }; 79 | 80 | class ConclusionPage : public QWizardPage 81 | { 82 | Q_OBJECT 83 | 84 | public: 85 | ConclusionPage(QWidget *parent = 0); 86 | 87 | protected: 88 | void initializePage() override; 89 | 90 | private: 91 | QLabel *label; 92 | }; 93 | 94 | #endif // SITEWIZARD_H 95 | -------------------------------------------------------------------------------- /test/Test.pro: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2017 Olaf Japp 2 | # https://facebook.com/artanidos 3 | # 4 | # This file is part of FlatSiteBuilder. 5 | # 6 | # FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | # it under the terms of the GNU General Public License as published by 8 | # the Free Software Foundation, either version 3 of the License, or 9 | # (at your option) any later version. 10 | # 11 | # FlatSiteBuilder is distributed in the hope that it will be useful, 12 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | # GNU General Public License for more details. 15 | # 16 | # You should have received a copy of the GNU General Public License 17 | # along with FlatSiteBuilder. If not, see . 18 | 19 | QT += widgets testlib xml network 20 | SOURCES = testgenerator.cpp 21 | DEFINES += TEST 22 | DISTFILES += \ 23 | pages/test.xml \ 24 | themes/testSiteTheme/includes/nav.html \ 25 | themes/testSiteTheme/layouts/testPageLayout.html \ 26 | includes/de.html \ 27 | includes/en.html 28 | 29 | 30 | LIBS += -L$$OUT_PWD/../Widgets/ -lWidgets 31 | INCLUDEPATH += $$PWD/../Widgets 32 | DEPENDPATH += $$PWD/../Widgets 33 | -------------------------------------------------------------------------------- /test/includes/de.html: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/includes/en.html: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/pages/test.xml: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 | 5 | {{ page.title }}]]> 6 | 7 | 8 |
9 |
10 | -------------------------------------------------------------------------------- /test/themes/testSiteTheme/includes/nav.html: -------------------------------------------------------------------------------- 1 | 21 | 22 | {% if page.language == "en" %} 23 | {% include en.html %} 24 | {% else %} 25 | {% include de.html %} 26 | {% endif %} 27 | {% if page.language == "de" %} 28 | {% include de.html %} 29 | {% else %} 30 | {% include en.html %} 31 | {% endif %} 32 | 33 | -------------------------------------------------------------------------------- /test/themes/testSiteTheme/layouts/testPageLayout.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | {{ site.title }} 7 | 8 | 9 | {% include nav.html %} 10 | {{ content }} 11 | 12 | 13 | -------------------------------------------------------------------------------- /testsite/Menus.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /testsite/Site.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /testsite/assets/images/slide1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/testsite/assets/images/slide1.jpg -------------------------------------------------------------------------------- /testsite/assets/images/slide2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/testsite/assets/images/slide2.jpg -------------------------------------------------------------------------------- /testsite/assets/images/slide3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/testsite/assets/images/slide3.jpg -------------------------------------------------------------------------------- /texteditor.json: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /themechooser.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef THEMECHOOSER_H 22 | #define THEMECHOOSER_H 23 | 24 | #include 25 | #include "undoableeditor.h" 26 | 27 | class Site; 28 | class QGridLayout; 29 | class MainWindow; 30 | class Theme 31 | { 32 | public: 33 | QString name; 34 | QString samplePic; 35 | QString sampleUrl; 36 | bool aktiv; 37 | }; 38 | 39 | class ThemeWidget : public QWidget 40 | { 41 | Q_OBJECT 42 | public: 43 | ThemeWidget(Theme *theme); 44 | 45 | signals: 46 | void themeChanged(QString theme); 47 | 48 | private slots: 49 | void clicked(); 50 | void activate(); 51 | 52 | private: 53 | QString m_url; 54 | QString m_themename; 55 | }; 56 | 57 | class ThemeChooser : public UndoableEditor 58 | { 59 | Q_OBJECT 60 | 61 | public: 62 | ThemeChooser(MainWindow *win, Site *site); 63 | 64 | void save() override; 65 | void load() override; 66 | 67 | private slots: 68 | void themeChanged(QString themename); 69 | 70 | private: 71 | QList m_themes; 72 | Site *m_site; 73 | MainWindow *m_win; 74 | QString m_themename; 75 | QGridLayout *m_themeLayout; 76 | }; 77 | 78 | #endif // THEMECHOOSER_H 79 | -------------------------------------------------------------------------------- /themes/default/assets/css/theme.css: -------------------------------------------------------------------------------- 1 | body { 2 | padding-top: 50px; 3 | padding-bottom: 30px; 4 | } 5 | 6 | .theme-dropdown .dropdown-menu { 7 | position: static; 8 | display: block; 9 | margin-bottom: 20px; 10 | } 11 | 12 | .theme-showcase > p > .btn { 13 | margin: 5px 0; 14 | } 15 | 16 | .theme-showcase .navbar .container { 17 | width: auto; 18 | } 19 | -------------------------------------------------------------------------------- /themes/default/assets/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/default/assets/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /themes/default/assets/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/default/assets/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /themes/default/assets/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/default/assets/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /themes/default/assets/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/default/assets/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /themes/default/assets/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/default/assets/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /themes/default/assets/fonts/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/default/assets/fonts/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /themes/default/assets/images/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/default/assets/images/favicon.ico -------------------------------------------------------------------------------- /themes/default/includes/footer.html: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 | 5 | {% if theme.hidePoweredBy == false %} 6 |

Powered by FlatSiteBuilder

7 | {% endif %} 8 |
9 |
10 | -------------------------------------------------------------------------------- /themes/default/includes/head.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | {{ site.title }} 7 | 8 | 9 | 10 | 11 | {{ plugin.styles }} 12 | 13 | -------------------------------------------------------------------------------- /themes/default/includes/nav.html: -------------------------------------------------------------------------------- 1 | 2 | 36 | -------------------------------------------------------------------------------- /themes/default/includes/postheader.html: -------------------------------------------------------------------------------- 1 |
2 |
3 | 6 |
7 | 8 |

{{ site.title }}

9 |

{{ site.description }}

10 | 11 |
12 | -------------------------------------------------------------------------------- /themes/default/includes/postnav.html: -------------------------------------------------------------------------------- 1 | 10 | -------------------------------------------------------------------------------- /themes/default/includes/scripts.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | {{ plugin.scripts }} 4 | -------------------------------------------------------------------------------- /themes/default/layouts/default.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | {% include head.html %} 4 | 5 | {% include nav.html %} 6 | {{ content }} 7 | {% include footer.html %} 8 | {% include scripts.html %} 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /themes/default/layouts/post.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | {% include head.html %} 4 | 5 | {% include nav.html %} 6 | 7 |
8 |
9 |

{{ page.title }}

10 |
posted {{ page.date }} by {{ page.author }}
11 |
{{ content }}
12 |
13 |
14 | {% include footer.html %} 15 | {% include scripts.html %} 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /themes/default/sample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/default/sample.png -------------------------------------------------------------------------------- /themes/himu/assets/css/reset.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/css/reset.css -------------------------------------------------------------------------------- /themes/himu/assets/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /themes/himu/assets/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /themes/himu/assets/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /themes/himu/assets/images/about-us/about.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/about-us/about.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/about-us/community.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/about-us/community.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/about-us/mission.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/about-us/mission.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/blog/1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/blog/1.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/blog/2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/blog/2.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/blog/3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/blog/3.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/clients/client-bg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/clients/client-bg.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/clients/client1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/clients/client1.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/clients/client2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/clients/client2.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/clients/client3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/clients/client3.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/home-pattern.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/home-pattern.png -------------------------------------------------------------------------------- /themes/himu/assets/images/ico/apple-touch-icon-114-precomposed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/ico/apple-touch-icon-114-precomposed.png -------------------------------------------------------------------------------- /themes/himu/assets/images/ico/apple-touch-icon-144-precomposed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/ico/apple-touch-icon-144-precomposed.png -------------------------------------------------------------------------------- /themes/himu/assets/images/ico/apple-touch-icon-57-precomposed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/ico/apple-touch-icon-57-precomposed.png -------------------------------------------------------------------------------- /themes/himu/assets/images/ico/apple-touch-icon-72-precomposed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/ico/apple-touch-icon-72-precomposed.png -------------------------------------------------------------------------------- /themes/himu/assets/images/ico/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/ico/favicon.png -------------------------------------------------------------------------------- /themes/himu/assets/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/logo.png -------------------------------------------------------------------------------- /themes/himu/assets/images/our-team/member1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/our-team/member1.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/our-team/member2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/our-team/member2.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/our-team/member3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/our-team/member3.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/our-team/member4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/our-team/member4.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/pattern.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/pattern.png -------------------------------------------------------------------------------- /themes/himu/assets/images/portfolio/1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/portfolio/1.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/portfolio/10.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/portfolio/10.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/portfolio/11.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/portfolio/11.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/portfolio/12.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/portfolio/12.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/portfolio/2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/portfolio/2.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/portfolio/3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/portfolio/3.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/portfolio/4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/portfolio/4.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/portfolio/5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/portfolio/5.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/portfolio/6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/portfolio/6.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/portfolio/7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/portfolio/7.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/portfolio/8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/portfolio/8.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/portfolio/9.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/portfolio/9.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/portfolio/big-item.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/portfolio/big-item.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/portfolio/big-item2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/portfolio/big-item2.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/portfolio/big-item3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/portfolio/big-item3.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/portfolio/big-item4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/portfolio/big-item4.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/dark_rounded/btnNext.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/dark_rounded/btnNext.png -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/dark_rounded/btnPrevious.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/dark_rounded/btnPrevious.png -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/dark_rounded/contentPattern.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/dark_rounded/contentPattern.png -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/dark_rounded/default_thumbnail.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/dark_rounded/default_thumbnail.gif -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/dark_rounded/loader.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/dark_rounded/loader.gif -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/dark_rounded/sprite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/dark_rounded/sprite.png -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/dark_square/btnNext.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/dark_square/btnNext.png -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/dark_square/btnPrevious.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/dark_square/btnPrevious.png -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/dark_square/contentPattern.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/dark_square/contentPattern.png -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/dark_square/default_thumbnail.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/dark_square/default_thumbnail.gif -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/dark_square/loader.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/dark_square/loader.gif -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/dark_square/sprite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/dark_square/sprite.png -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/default/default_thumb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/default/default_thumb.png -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/default/loader.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/default/loader.gif -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/default/sprite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/default/sprite.png -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/default/sprite_next.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/default/sprite_next.png -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/default/sprite_prev.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/default/sprite_prev.png -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/default/sprite_x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/default/sprite_x.png -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/default/sprite_y.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/default/sprite_y.png -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/facebook/btnNext.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/facebook/btnNext.png -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/facebook/btnPrevious.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/facebook/btnPrevious.png -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/facebook/contentPatternBottom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/facebook/contentPatternBottom.png -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/facebook/contentPatternLeft.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/facebook/contentPatternLeft.png -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/facebook/contentPatternRight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/facebook/contentPatternRight.png -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/facebook/contentPatternTop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/facebook/contentPatternTop.png -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/facebook/default_thumbnail.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/facebook/default_thumbnail.gif -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/facebook/loader.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/facebook/loader.gif -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/facebook/sprite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/facebook/sprite.png -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/light_rounded/btnNext.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/light_rounded/btnNext.png -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/light_rounded/btnPrevious.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/light_rounded/btnPrevious.png -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/light_rounded/default_thumbnail.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/light_rounded/default_thumbnail.gif -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/light_rounded/loader.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/light_rounded/loader.gif -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/light_rounded/sprite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/light_rounded/sprite.png -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/light_square/btnNext.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/light_square/btnNext.png -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/light_square/btnPrevious.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/light_square/btnPrevious.png -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/light_square/default_thumbnail.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/light_square/default_thumbnail.gif -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/light_square/loader.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/light_square/loader.gif -------------------------------------------------------------------------------- /themes/himu/assets/images/prettyPhoto/light_square/sprite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/prettyPhoto/light_square/sprite.png -------------------------------------------------------------------------------- /themes/himu/assets/images/services/service-bg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/services/service-bg.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/slider/slide1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/slider/slide1.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/slider/slide2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/slider/slide2.jpg -------------------------------------------------------------------------------- /themes/himu/assets/images/slider/slide3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/assets/images/slider/slide3.jpg -------------------------------------------------------------------------------- /themes/himu/assets/js/html5shiv.js: -------------------------------------------------------------------------------- 1 | /* 2 | HTML5 Shiv v3.6.2pre | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed 3 | */ 4 | (function(l,f){function m(){var a=e.elements;return"string"==typeof a?a.split(" "):a}function i(a){var b=n[a[o]];b||(b={},h++,a[o]=h,n[h]=b);return b}function p(a,b,c){b||(b=f);if(g)return b.createElement(a);c||(c=i(b));b=c.cache[a]?c.cache[a].cloneNode():r.test(a)?(c.cache[a]=c.createElem(a)).cloneNode():c.createElem(a);return b.canHaveChildren&&!s.test(a)?c.frag.appendChild(b):b}function t(a,b){if(!b.cache)b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag(); 5 | a.createElement=function(c){return!e.shivMethods?b.createElem(c):p(c,a,b)};a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+m().join().replace(/\w+/g,function(a){b.createElem(a);b.frag.createElement(a);return'c("'+a+'")'})+");return n}")(e,b.frag)}function q(a){a||(a=f);var b=i(a);if(e.shivCSS&&!j&&!b.hasCSS){var c,d=a;c=d.createElement("p");d=d.getElementsByTagName("head")[0]||d.documentElement;c.innerHTML="x"; 6 | c=d.insertBefore(c.lastChild,d.firstChild);b.hasCSS=!!c}g||t(a,b);return a}var k=l.html5||{},s=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,r=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,j,o="_html5shiv",h=0,n={},g;(function(){try{var a=f.createElement("a");a.innerHTML="";j="hidden"in a;var b;if(!(b=1==a.childNodes.length)){f.createElement("a");var c=f.createDocumentFragment();b="undefined"==typeof c.cloneNode|| 7 | "undefined"==typeof c.createDocumentFragment||"undefined"==typeof c.createElement}g=b}catch(d){g=j=!0}})();var e={elements:k.elements||"abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video",version:"3.6.2pre",shivCSS:!1!==k.shivCSS,supportsUnknownElements:g,shivMethods:!1!==k.shivMethods,type:"default",shivDocument:q,createElement:p,createDocumentFragment:function(a,b){a||(a=f);if(g)return a.createDocumentFragment(); 8 | for(var b=b||i(a),c=b.frag.cloneNode(),d=0,e=m(),h=e.length;d pos + windowHeight) { 59 | return; 60 | } 61 | 62 | $this.css('backgroundPosition', xpos + " " + Math.round((firstTop - pos) * speedFactor) + "px"); 63 | }); 64 | } 65 | 66 | $window.bind('scroll', update).resize(update); 67 | update(); 68 | }; 69 | })(jQuery); -------------------------------------------------------------------------------- /themes/himu/includes/nav.html: -------------------------------------------------------------------------------- 1 | 20 | -------------------------------------------------------------------------------- /themes/himu/sample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/himu/sample.png -------------------------------------------------------------------------------- /themes/slate/assets/css/usebootstrap.css: -------------------------------------------------------------------------------- 1 | body{padding-top:50px}#banner{border-bottom:none}.page-header h1{font-size:4em}.bs-docs-section{margin-top:8em}.bs-component{position:relative}.bs-component .modal{position:relative;top:auto;right:auto;left:auto;bottom:auto;z-index:1;display:block}.bs-component .modal-dialog{width:90%}.bs-component .popover{position:relative;display:inline-block;width:220px;margin:20px}#source-button{position:absolute;top:0;right:0;z-index:100;font-weight:bold}.progress{margin-bottom:10px}footer{margin:5em 0}footer li{float:left;margin-right:1.5em;margin-bottom:1.5em}footer p{clear:left;margin-bottom:0}.splash{padding:4em 0 2em;background-color:#1c2533;background:-webkit-linear-gradient(70deg, #080f1f 30%, #2b4b5a 87%, #435e67 100%);background:-o-linear-gradient(70deg, #080f1f 30%, #2b4b5a 87%, #435e67 100%);background:-ms-linear-gradient(70deg, #080f1f 30%, #2b4b5a 87%, #435e67 100%);background:-moz-linear-gradient(70deg, #080f1f 30%, #2b4b5a 87%, #435e67 100%);background:linear-gradient(20deg, #080f1f 30%, #2b4b5a 87%, #435e67 100%);background-attachment:fixed;color:#fff;text-align:center}.splash h1{font-size:4em}.splash #social{margin:2em 0}.splash .alert{margin:2em 0}.splash .bsa{max-width:350px;margin:0 auto;background:none}.splash .bsa .one .bsa_it_ad{border:1px solid #3e4653 !important;border-color:rgba(255,255,255,0.2) !important}.splash .bsa a{color:#fff}.section-tout{padding:4em 0 3em;border-top:1px solid rgba(255,255,255,0.1);border-bottom:1px solid rgba(0,0,0,0.1);background-color:#eaf1f1}.section-tout .fa{margin-right:.5em}.section-tout p{margin-bottom:3em}.section-preview{padding:4em 0 4em}.section-preview .preview{margin-bottom:4em;background-color:#eaf1f1;border:1px solid rgba(0,0,0,0.1);border-radius:6px}.section-preview .preview .image{padding:5px}.section-preview .preview .image img{border:1px solid rgba(0,0,0,0.1)}.section-preview .preview .options{text-align:center;padding:0 2em 2em}.section-preview .preview .options p{margin-bottom:2em}.section-preview .dropdown-menu{text-align:left}.section-preview .lead{margin-bottom:2em}@media (max-width:767px){.section-preview .image img{width:100%}}.sponsor img{border:1px solid rgba(0,0,0,0.1);border-radius:4px}.sponsor a:hover{text-decoration:none}.bsa{padding:0}.bsa .one .bsa_it_ad{border:none !important;background-color:transparent !important}.bsa .one .bsa_it_ad .bsa_it_t,.bsa .one .bsa_it_ad .bsa_it_d{color:inherit !important}.bsa .one .bsa_it_ad .bsa_it_i{margin-bottom:0 !important}.bsa .one .bsa_it_p{display:none} -------------------------------------------------------------------------------- /themes/slate/assets/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/slate/assets/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /themes/slate/assets/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/slate/assets/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /themes/slate/assets/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/slate/assets/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /themes/slate/assets/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/slate/assets/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /themes/slate/assets/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/slate/assets/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /themes/slate/assets/fonts/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/slate/assets/fonts/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /themes/slate/assets/images/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/slate/assets/images/favicon.ico -------------------------------------------------------------------------------- /themes/slate/assets/js/usebootstrap.js: -------------------------------------------------------------------------------- 1 | (function(){ 2 | 3 | var $button = $("
< >
").click(function(){ 4 | var html = $(this).parent().html(); 5 | html = cleanSource(html); 6 | $("#source-modal pre").text(html); 7 | $("#source-modal").modal(); 8 | }); 9 | 10 | $('.bs-component [data-toggle="popover"]').popover(); 11 | $('.bs-component [data-toggle="tooltip"]').tooltip(); 12 | 13 | $(".bs-component").hover(function(){ 14 | $(this).append($button); 15 | $button.show(); 16 | }, function(){ 17 | $button.hide(); 18 | }); 19 | 20 | function cleanSource(html) { 21 | var lines = html.split(/\n/); 22 | 23 | lines.shift(); 24 | lines.splice(-1, 1); 25 | 26 | var indentSize = lines[0].length - lines[0].trim().length, 27 | re = new RegExp(" {" + indentSize + "}"); 28 | 29 | lines = lines.map(function(line){ 30 | if (line.match(re)) { 31 | line = line.substring(indentSize); 32 | } 33 | 34 | return line; 35 | }); 36 | 37 | lines = lines.join("\n"); 38 | 39 | return lines; 40 | } 41 | 42 | })(); 43 | -------------------------------------------------------------------------------- /themes/slate/includes/footer.html: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 | 5 | {% if theme.hidePoweredBy == false %} 6 |

Powered by FlatSiteBuilder

7 | {% endif %} 8 |
9 |
10 | -------------------------------------------------------------------------------- /themes/slate/includes/head.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | {{ site.title }} 7 | 8 | 9 | 10 | {{ plugin.styles }} 11 | 12 | -------------------------------------------------------------------------------- /themes/slate/includes/nav.html: -------------------------------------------------------------------------------- 1 | 2 | 36 | -------------------------------------------------------------------------------- /themes/slate/includes/postheader.html: -------------------------------------------------------------------------------- 1 |
2 |
3 | 6 |
7 | 8 |

{{ site.title }}

9 |

{{ site.description }}

10 | 11 |
12 | -------------------------------------------------------------------------------- /themes/slate/includes/postnav.html: -------------------------------------------------------------------------------- 1 | 10 | -------------------------------------------------------------------------------- /themes/slate/includes/scripts.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | {{ plugin.scripts }} 4 | -------------------------------------------------------------------------------- /themes/slate/layouts/default.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | {% include head.html %} 4 | 5 | {% include nav.html %} 6 | {{ content }} 7 | {% include footer.html %} 8 | {% include scripts.html %} 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /themes/slate/layouts/post.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | {% include head.html %} 4 | 5 | {% include nav.html %} 6 | 7 |
8 |
9 |

{{ page.title }}

10 |
posted {{ page.date }} by {{ page.author }}
11 |
{{ content }}
12 |
13 |
14 | {% include footer.html %} 15 | {% include scripts.html %} 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /themes/slate/sample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/themes/slate/sample.png -------------------------------------------------------------------------------- /todo.txt: -------------------------------------------------------------------------------- 1 | Features 2 | -------- 3 | - edit button on preview 4 | - after editing content in gedit, FSB does not reload it instead it overrides the content file with older content 5 | or FSB should lock the content file so that it can not be edited 6 | or FSB should make it possible to edit the file directly inside 7 | - edit footer content 8 | - edit google analytics 9 | - edit theme (local overrides) 10 | - warning if expression does not end like: "{% else", atm the content will be cutted if included 11 | - how to 12 | - sitemap generieren 13 | - theme builder 14 | 15 | Postponend 16 | ---------- 17 | - bootstrap 4 support ? 18 | - support all 12 columns from bootstrap 19 | maybe resize column 20 | editor where the columns can be selected 21 | - cascading rows / columns 22 | - support for cssgrid ? 23 | - other modules (plugins) 24 | - media page (crop, alt, rename, resize, scale) 25 | - widget system ala wordpress 26 | - test and approve gitting (use oAuth with gitlib to be mentioned by WorksWithGithub) 27 | - library to save pages, sections and rows as templates 28 | - image chooser instead of file dialog 29 | - sample for dynamic content a la DISQUS incl. Plugin 30 | - direct access to github 31 | 32 | -------------------------------------------------------------------------------- /web/AtroposTheme.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /web/Menus.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /web/Site.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /web/assets/css/style.css: -------------------------------------------------------------------------------- 1 | .tooltip { 2 | font-size: 15px; 3 | } 4 | -------------------------------------------------------------------------------- /web/assets/images/Columns.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/web/assets/images/Columns.png -------------------------------------------------------------------------------- /web/assets/images/Dashboard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/web/assets/images/Dashboard.png -------------------------------------------------------------------------------- /web/assets/images/Editor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/web/assets/images/Editor.png -------------------------------------------------------------------------------- /web/assets/images/Layout.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/web/assets/images/Layout.png -------------------------------------------------------------------------------- /web/assets/images/Modules.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/web/assets/images/Modules.png -------------------------------------------------------------------------------- /web/assets/images/animationmaker.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/web/assets/images/animationmaker.png -------------------------------------------------------------------------------- /web/assets/images/artananda.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/web/assets/images/artananda.png -------------------------------------------------------------------------------- /web/assets/images/campaign.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/web/assets/images/campaign.png -------------------------------------------------------------------------------- /web/assets/images/crowdware.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/web/assets/images/crowdware.png -------------------------------------------------------------------------------- /web/assets/images/download.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/web/assets/images/download.png -------------------------------------------------------------------------------- /web/assets/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/web/assets/images/logo.png -------------------------------------------------------------------------------- /web/assets/images/logo_footer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/web/assets/images/logo_footer.png -------------------------------------------------------------------------------- /web/assets/images/nrg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/web/assets/images/nrg.png -------------------------------------------------------------------------------- /web/assets/images/olaf winter.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/web/assets/images/olaf winter.jpg -------------------------------------------------------------------------------- /web/assets/images/olaf.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/web/assets/images/olaf.jpg -------------------------------------------------------------------------------- /web/assets/images/tagcloud.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Artanidos/FlatSiteBuilder/de3378a933b10ece492d77daa644e2c731e6da2e/web/assets/images/tagcloud.png -------------------------------------------------------------------------------- /web/content/google76ff8a4d9d4988a1.html: -------------------------------------------------------------------------------- 1 | google-site-verification: google76ff8a4d9d4988a1.html -------------------------------------------------------------------------------- /web/includes/analytics.html: -------------------------------------------------------------------------------- 1 | 11 | -------------------------------------------------------------------------------- /web/includes/footercontent.html: -------------------------------------------------------------------------------- 1 |
2 |

CONTACT

3 | 4 |

5 | Do you want to know more about FlatSiteBuilder or do you have feature requests don't hesitate to contact us. 6 |

7 |
8 | 17 |
18 |
19 | 20 | 26 | 27 |
28 |

POWERED BY

29 |

30 | This website has been builded using the following tools. 31 |

32 | 40 |
41 | -------------------------------------------------------------------------------- /web/layouts/simple.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 16 | 19 | 20 | 21 | 22 | {{ content }} 23 | 24 | {% include analytics.html %} 25 | 26 | 27 | -------------------------------------------------------------------------------- /web/pages/blog.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | 6 |
7 | 8 |
9 |

{{ post.title }}

10 | {{ post.author() }} 11 | {{ post.date }} 12 |
13 | 14 | 15 |

16 | {{ post.excerpt }}. 17 |

18 | 19 | 20 | READ MORE 21 |
22 | 23 | {% endfor %} 24 | ]]>
25 |
26 |
27 |
28 | -------------------------------------------------------------------------------- /web/pages/intro.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | 5 | Introduction 6 |

This version of FlatSiteBuilder is a preview to show possibilities.
7 | It is not meant to be a ready made product.
8 | There are still some features not implemented yet.

9 |

If you for example want to change site properties like the menus just edit the Site.xml associated with the website and reload it.
10 | Also if you want to change a theme or want to override theme assets or includes you have to do it by hand.
11 | Have a look at ~/FlatSiteBuilder/

12 |

Website

13 |

Find additional information on our website.

14 |

Wiki

15 |

Also have a look at our wiki.

16 |

Feature Requests

17 |

If you have any ideas or feature requests let us know. Just send an email to artanidos@gmail.com

18 | ]]>
19 |
20 |
21 |
22 | -------------------------------------------------------------------------------- /web/pages/news.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | News 5 | 11 | 12 |

Feature Requests

13 |

14 | If you have any feature request or questions don't hasitate to contact me at artanidos@gmail.com. 15 |

]]>
16 |
17 |
18 |
19 | -------------------------------------------------------------------------------- /web/pages/notimpl.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | 5 | Not Implemented Yet 6 |

We are sorry, but this feature is not implemented in this preview version.

7 |

Feature List

8 |

Here is a list of features which will be implemented in the following months.

9 |
    10 |
  • Publishing to github
  • 11 |
  • Media administration
  • 12 |
  • Categories, Tags administration
  • 13 |
  • Generell site settings
  • 14 |
  • Additional editors
  • 15 |
  • Theme settings
  • 16 |
  • Widget settings
  • 17 |
  • Menu editor
  • 18 |
  • Plugin administration
  • 19 |
  • Theme appearence editor
  • 20 |
21 |

Website

22 |

Find additional information on our website.

23 |

Wiki

24 |

Also have a look at our wiki.

25 |

Feature Requests

26 |

If you have any ideas or feature requests let us know. Just send an email to artanidos@gmail.com

]]>
27 |
28 |
29 |
30 | -------------------------------------------------------------------------------- /web/posts/crowdfunding.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | 5 | My newly created company CrowdWare is collecting funds 6 |

I want to create a company to support the FlatSiteBuilder and I need a small budget to make this happen.

7 |

Here is a list of things I need money for.

8 |
    9 |
  • Registering a non profit company
  • 10 |
  • Buying hardware to also port FlatSiteBuilder to MacOS and Windows
  • 11 |
  • Pay for Qt licenses
  • 12 |
  • Pay for Appstore fees
  • 13 |
  • Buy the Atropos theme license to be able to package it with FlatSiteBuilder (commercial)
  • 14 |
  • Buy a license for revolution slider to package it with the new SliderEditorPlugin (commercial)
  • 15 |
16 | ]]>
17 |
18 | 19 | 20 | To be able to support the FlatSiteBuilder and to develop it further I need a budget, so I decided to also release 21 | commercial licenses for Windows and MacOS. 22 | And therefore I have to register my company and I also need a small budget to survive. 23 |

24 |

25 | There will be a few aditional plugins available in the commercial license. 26 |

27 |
    28 |
  • Wysiwyg text editor
  • 29 |
  • Enhanced version of the image editor. (Support for animations)
  • 30 |
  • Enhanced version of the slider editor. (Support for revolution slider)
  • 31 |
  • ...and more to come
  • 32 |
]]>
33 |
34 | 35 | 36 |
37 |

Do you like to support my company.IndieGoGo

38 |
39 | ]]>
40 |
41 |
42 |
43 | -------------------------------------------------------------------------------- /web/posts/release_1.5.2_for_linux.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | FlatSiteBuilder 1.5.2 for Linux has been released 5 |

6 | Here are the changes we made the last weeks. 7 |

8 |
    9 |
  • SliderEditor has been converted to bootstrap 3 carousel because of license issues.
  • 10 |
  • News will be displayed on the dashboard now.
  • 11 |
  • Additional files and folders under /content/* will also be copied to the deploy directory while building the site. 12 | This makes it possible to deploy for example robots.txt, google.html and other files.
  • 13 |
  • The install directory can now be choosen prior to install FlatSiteBuilder
  • 14 |
  • Added a warning when SiteWizard will override an already existing site
  • 15 |
16 | ]]>
17 |
18 |
19 |
20 | -------------------------------------------------------------------------------- /web/posts/release_1.5.4_for_linux.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | FlatSiteBuilder 1.5.4 for Linux has been released 5 |

6 | Here are the changes we made the last weeks. 7 |

8 |
    9 |
  • Preview is now shown in the embedded webview
  • 10 |
  • Added a button showing after closing the navigation to reopen it
  • 11 |
  • Plugins do have a version now which will be displayed after loading the plugin
  • 12 |
  • Default theme enhanced
  • 13 |
  • Slate theme added
  • 14 |
]]>
15 |
16 |
17 |
18 | -------------------------------------------------------------------------------- /web/posts/release_1.5_for_linux.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | FlatSiteBuilder 1.5 for Linux has been released 5 |

6 | Here are the changes we made the last weeks. 7 |

8 |
    9 |
  • Added the ability to add site variables in the site.xml file directly
  • 10 |
  • Added the ability to add page variables in the xml files. For example <Content language="en">
  • 11 |
  • Slider editor now renders additional attributes like ("data-transition") which are not editable in plugin editor yet
  • 12 |
  • Menuitems now supports additional attributes which are not editable in menu editor yet like class="scrollTo" 13 | which can be used as <a {{ item.attributes }} href=... in a theme
  • 14 |
  • ImageEditor now supports additional attributes which are not editable in the plugin editor yet like data-animation="fadeIn" 15 | If an attribute with the class name is provided the original class will be overriden
  • 16 |
  • Create wizard does now list all available themes
  • 17 |
18 | ]]>
19 |
20 |
21 |
22 | -------------------------------------------------------------------------------- /webview.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef WEBVIEW_H 22 | #define WEBVIEW_H 23 | 24 | #include 25 | #include 26 | 27 | class WebPage : public QWebEnginePage 28 | { 29 | Q_OBJECT 30 | 31 | public: 32 | WebPage(QWebEngineProfile *profile, QObject *parent = nullptr); 33 | }; 34 | 35 | class WebView : public QWebEngineView 36 | { 37 | Q_OBJECT 38 | 39 | public: 40 | WebView(QWidget *parent = nullptr); 41 | void setPage(WebPage *page); 42 | }; 43 | 44 | #endif // WEBVIEW_H 45 | -------------------------------------------------------------------------------- /widgetmimedata.cpp: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #include "widgetmimedata.h" 22 | 23 | WidgetMimeData::WidgetMimeData() 24 | { 25 | 26 | } 27 | 28 | void WidgetMimeData::setData(QWidget *ce) 29 | { 30 | m_data = ce; 31 | } 32 | 33 | QWidget *WidgetMimeData::getData() const 34 | { 35 | return m_data; 36 | } 37 | -------------------------------------------------------------------------------- /widgetmimedata.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Copyright (C) 2017 Olaf Japp 3 | ** 4 | ** This file is part of FlatSiteBuilder. 5 | ** 6 | ** FlatSiteBuilder is free software: you can redistribute it and/or modify 7 | ** it under the terms of the GNU General Public License as published by 8 | ** the Free Software Foundation, either version 3 of the License, or 9 | ** (at your option) any later version. 10 | ** 11 | ** FlatSiteBuilder is distributed in the hope that it will be useful, 12 | ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ** GNU General Public License for more details. 15 | ** 16 | ** You should have received a copy of the GNU General Public License 17 | ** along with FlatSiteBuilder. If not, see . 18 | ** 19 | ****************************************************************************/ 20 | 21 | #ifndef WIDGETMIMEDATA_H 22 | #define WIDGETMIMEDATA_H 23 | 24 | #include 25 | #include "elementeditor.h" 26 | 27 | class WidgetMimeData : public QMimeData 28 | { 29 | Q_OBJECT 30 | public: 31 | WidgetMimeData(); 32 | 33 | void setData(QWidget *); 34 | QWidget *getData() const; 35 | 36 | void setSize(int w, int h) {m_width = w; m_height = h;} 37 | int width() const {return m_width;} 38 | int height() const {return m_height;} 39 | 40 | private: 41 | QWidget *m_data; 42 | int m_width; 43 | int m_height; 44 | }; 45 | 46 | #endif // WIDGETMIMEDATA_H 47 | --------------------------------------------------------------------------------