added some todos

inversed main stacks f1:content, f2:design, f3:git
added toggle menubar actions but it's not working yet
This commit is contained in:
Bachir Soussi Chiadmi
2017-06-11 17:22:38 +02:00
parent 547be1b03e
commit ec654726e0
5 changed files with 66 additions and 18 deletions
+1 -1
View File
@@ -21,7 +21,7 @@ GNU General Public License for more details.
""" """
from libriis.main import main # pylint: disable=wrong-import-position from libriis.main import main
if __name__ == '__main__': if __name__ == '__main__':
sys.exit(main()) sys.exit(main())
+1
View File
@@ -147,6 +147,7 @@ class SummaryListWidgetItem(QListWidgetItem):
self.setText(data['title']) self.setText(data['title'])
self.setToolTip(data['file']) self.setToolTip(data['file'])
# self.setStyleSheet('padding:5px;')
class SummaryActions(QWidget): class SummaryActions(QWidget):
def __init__(self,parent): def __init__(self,parent):
+12 -3
View File
@@ -12,7 +12,7 @@
from __future__ import absolute_import, print_function, division, unicode_literals from __future__ import absolute_import, print_function, division, unicode_literals
import os, re import os, re
# sys,
from PyQt5 import QtCore from PyQt5 import QtCore
from PyQt5.QtCore import QUrl, QSettings, QSizeF, Qt from PyQt5.QtCore import QUrl, QSettings, QSizeF, Qt
from PyQt5.QtGui import QKeySequence, QFont from PyQt5.QtGui import QKeySequence, QFont
@@ -21,7 +21,12 @@ from PyQt5.QtWidgets import (QWidget, QTabWidget,
QPlainTextEdit, QShortcut, QPlainTextEdit, QShortcut,
QPushButton, QCheckBox, QSpinBox, QLabel) QPushButton, QCheckBox, QSpinBox, QLabel)
from PyQt5.QtWebKit import QWebSettings from PyQt5.QtWebKit import QWebSettings
# TODO import own custom build lib of QtWebKit with ctypes
# see aur package qt5-webkit-print for options
# https://stackoverflow.com/questions/5081875/ctypes-beginner
from PyQt5.QtWebKitWidgets import QWebView, QWebInspector from PyQt5.QtWebKitWidgets import QWebView, QWebInspector
from PyQt5.QtPrintSupport import QPrintPreviewDialog, QPrinter from PyQt5.QtPrintSupport import QPrintPreviewDialog, QPrinter
from . import highlighter from . import highlighter
@@ -53,15 +58,19 @@ class WebkitView(QWebView):
self.parent.webviewtoolbar.onRefresh() self.parent.webviewtoolbar.onRefresh()
def initPDF(self): def initPDF(self):
# from https://gist.github.com/gciotta/7766803
self.printer = QPrinter(QPrinter.HighResolution) self.printer = QPrinter(QPrinter.HighResolution)
self.printer.setFullPage(True) self.printer.setFullPage(True)
# self.printer.setPageMargins(0,0,0,0,QPrinter.Millimeter) self.printer.setPageMargins(0,0,0,0,QPrinter.Millimeter)
self.printer.setFontEmbeddingEnabled(True) self.printer.setFontEmbeddingEnabled(True)
self.printer.setColorMode(QPrinter.Color) self.printer.setColorMode(QPrinter.Color)
# TODO: set the page size and orientation from doc settings # TODO: set the page size and orientation from doc settings
# (need to do doc settings before that) # (need to do doc settings before that)
# self.printer.setPageSize(QPrinter.A4) # self.printer.setPageSize(QPrinter.A4)
self.printer.setPaperSize(QSizeF(210, 300), QPrinter.Millimeter) # self.printer.setResolution(96)
self.printer.setPaperSize(QSizeF(210, 298), QPrinter.Millimeter)
# TODO: change paper size from docsettings
# self.printer.setOrientation(QPrinter.Portrait) # self.printer.setOrientation(QPrinter.Portrait)
self.printer.setOutputFormat(QPrinter.PdfFormat) self.printer.setOutputFormat(QPrinter.PdfFormat)
self.printer.setCreator('Libriis') self.printer.setCreator('Libriis')
+49 -14
View File
@@ -48,6 +48,8 @@ class MainWindow(QMainWindow):
def initMenuBar(self): def initMenuBar(self):
# menu bar # menu bar
bar = self.menuBar() bar = self.menuBar()
# bar.setNativeMenuBar(False)
file = bar.addMenu("&File") file = bar.addMenu("&File")
new = QAction("&New Project",self) new = QAction("&New Project",self)
@@ -62,10 +64,6 @@ class MainWindow(QMainWindow):
self.save_action.setShortcut("Ctrl+Shift+s") self.save_action.setShortcut("Ctrl+Shift+s")
file.addAction(self.save_action) file.addAction(self.save_action)
self.save_action = QAction("&Save Project as",self)
self.save_action.setShortcut("Ctrl+Shift+s")
file.addAction(self.save_action)
self.docset_action = QAction("&Document Settings",self) self.docset_action = QAction("&Document Settings",self)
self.docset_action.setShortcut("Ctrl+d") self.docset_action.setShortcut("Ctrl+d")
file.addAction(self.docset_action) file.addAction(self.docset_action)
@@ -98,24 +96,38 @@ class MainWindow(QMainWindow):
# view menu # view menu
view = bar.addMenu("&View") view = bar.addMenu("&View")
designview = QAction("&Design",self)
designview.setShortcut("F1")
view.addAction(designview)
contentview = QAction("&Content",self) contentview = QAction("&Content",self)
contentview.setShortcut("F2") contentview.setShortcut("F1")
view.addAction(contentview) view.addAction(contentview)
versionview = QAction("&Version",self) designview = QAction("&Design",self)
designview.setShortcut("F2")
view.addAction(designview)
versionview = QAction("&Version")
versionview.setShortcut("F3") versionview.setShortcut("F3")
view.addAction(versionview) view.addAction(versionview)
self.menuview = QAction("&Show Menu", self)
self.menuview.setCheckable(True)
self.menuview.setShortcutContext(Qt.ApplicationShortcut)
self.menuview.setShortcut('F4')
view.addAction(self.menuview)
# self.menuview_shortcut = QShortcut(QKeySequence("F4"), self)
# self.menuview_shortcut.activated.connect(self.toggleMenu)
view.triggered[QAction].connect(self.onviewmenutrigger) view.triggered[QAction].connect(self.onviewmenutrigger)
# about menu # about menu
about = bar.addMenu("About") about = bar.addMenu("About")
about.addAction("&Website") about.addAction("&Website")
self.menuisvisible = True
# TODO: get menu visibility from settings
def onfilemenutrigger(self, q): def onfilemenutrigger(self, q):
print(q.text()+" is triggered") print(q.text()+" is triggered")
if q.text() == "&New Project": if q.text() == "&New Project":
@@ -186,6 +198,7 @@ class MainWindow(QMainWindow):
self, self,
'Save Project', 'Save Project',
self.core.dialog_path self.core.dialog_path
# TODO: if tempproject open in home
)[0] )[0]
# TODO: no file type # TODO: no file type
try: try:
@@ -246,12 +259,34 @@ class MainWindow(QMainWindow):
def onviewmenutrigger(self, q): def onviewmenutrigger(self, q):
print(q.text()+" is triggered") print(q.text()+" is triggered")
if q.text() == "&Design": if q.text() == "&Content":
self.mainstack.setCurrentIndex(0) self.mainstack.setCurrentIndex(0)
elif q.text() == "&Content": elif q.text() == "&Design":
self.mainstack.setCurrentIndex(1) self.mainstack.setCurrentIndex(1)
elif q.text() == "&Version": elif q.text() == "&Version":
self.mainstack.setCurrentIndex(2) self.mainstack.setCurrentIndex(2)
elif q.text() == "&Show Menu":
self.toggleMenu()
def toggleMenu(self):
self.menuisvisible = not self.menuisvisible
if self.menuisvisible:
print('show menu')
# self.menuBar().adjustSize()
# self.menuBar().show()
# .height(1)
#setVisible(True)
# .setStyleSheet("margin-top:0;")
self.menuview.setChecked(True)
else:
print('hide menu')
# self.menuBar()
# self.menuBar().hide()
# .height(25)
#setVisible(False)
# .setStyleSheet("margin-top:-10px;")
self.menuview.setChecked(False)
# __ ____ ______ __ # __ ____ ______ __
# / /_____ __ __/ __ \________ __________/ ____/ _____ ____ / /_ # / /_____ __ __/ __ \________ __________/ ____/ _____ ____ / /_
@@ -300,12 +335,12 @@ class MainWindow(QMainWindow):
def initMainStack(self): def initMainStack(self):
self.mainstack = QStackedWidget() self.mainstack = QStackedWidget()
self.designstack = design.DesignStack(self.core)
self.contentstack = content.ContentStack(self.core) self.contentstack = content.ContentStack(self.core)
self.designstack = design.DesignStack(self.core)
self.versionstack = QLabel("Version (git).") self.versionstack = QLabel("Version (git).")
self.mainstack.addWidget(self.designstack)
self.mainstack.addWidget(self.contentstack) self.mainstack.addWidget(self.contentstack)
self.mainstack.addWidget(self.designstack)
self.mainstack.addWidget(self.versionstack) self.mainstack.addWidget(self.versionstack)
self.mainstack.setCurrentIndex(self.core.mw_curstack) self.mainstack.setCurrentIndex(self.core.mw_curstack)
+3
View File
@@ -1,5 +1,8 @@
from setuptools import setup from setuptools import setup
# TODO: addd a makefile to compile our own qt5-webkit lib
# see aur package qt5-webkit-print for options andd build
setup( setup(
name="libriis", name="libriis",
version="0.1", version="0.1",