Quellcode durchsuchen

refactored, added first css style with scss compiler

Bachir Soussi Chiadmi vor 7 Jahren
Ursprung
Commit
502e7bf873
4 geänderte Dateien mit 60 neuen und 27 gelöschten Zeilen
  1. 1 0
      .gitignore
  2. 55 27
      app.py
  3. 3 0
      assets/scss/main.scss
  4. 1 0
      index.html

+ 1 - 0
.gitignore

@@ -0,0 +1 @@
+assets/scss/*.css

+ 55 - 27
app.py

@@ -9,40 +9,68 @@
 # @Last modified time: 21-04-2017
 # @Last modified time: 21-04-2017
 # @License: GPL-V3
 # @License: GPL-V3
 
 
-import sys
+import sys, os
 
 
 from socket import socket
 from socket import socket
 import socketserver
 import socketserver
 import http.server
 import http.server
 import threading
 import threading
 
 
-from PyQt5.QtCore import QFile, QIODevice, Qt, QTextStream, QUrl
+from PyQt5.QtCore import QFile, QIODevice, Qt, QTextStream, QUrl, QFileSystemWatcher
 from PyQt5.QtWidgets import (QAction, QApplication, QLineEdit, QMainWindow, QSizePolicy, QStyle, QTextEdit)
 from PyQt5.QtWidgets import (QAction, QApplication, QLineEdit, QMainWindow, QSizePolicy, QStyle, QTextEdit)
 from PyQt5.QtNetwork import QNetworkProxyFactory, QNetworkRequest
 from PyQt5.QtNetwork import QNetworkProxyFactory, QNetworkRequest
 from PyQt5.QtWebKitWidgets import QWebPage, QWebView
 from PyQt5.QtWebKitWidgets import QWebPage, QWebView
 
 
-# find free port
-sock = socket()
-sock.bind(('', 0))
-PORT = sock.getsockname()[1]
-sock.close()
-# PORT = 8000
-# web werver
-# Handler = http.server.SimpleHTTPRequestHandler
-# httpd = socketserver.TCPServer(("", PORT), Handler)
-# httpd.serve_forever()
-httpd = http.server.HTTPServer(('', PORT), http.server.SimpleHTTPRequestHandler)
-thread = threading.Thread(target=httpd.serve_forever)
-thread.start()
-print("serving at port", PORT)
-
-
-# QT webkit
-app = QApplication(sys.argv)
-
-browser = QWebView()
-# browser.settings().setAttribute(QWebSettings.PluginsEnabled, True)
-browser.load(QUrl('http://localhost:'+str(PORT)))
-browser.show()
-
-sys.exit(app.exec_())
+import sass
+
+_PORT=0
+
+def main():
+   server()
+   compiler()
+   app()
+
+def server():
+   # find free port
+   sock = socket()
+   sock.bind(('', 0))
+   global _PORT
+   _PORT = sock.getsockname()[1]
+   sock.close()
+   # PORT = 8000
+   # web werver
+   # Handler = http.server.SimpleHTTPRequestHandler
+   # httpd = socketserver.TCPServer(("", PORT), Handler)
+   # httpd.serve_forever()
+   httpd = http.server.HTTPServer(('', _PORT), http.server.SimpleHTTPRequestHandler)
+   thread = threading.Thread(target=httpd.serve_forever)
+   thread.start()
+   print("serving at port", _PORT)
+
+def compiler():
+   fs_watcher = QFileSystemWatcher(['assets/scss'])
+   fs_watcher.directoryChanged.connect(compile_scss)
+   compile_scss()
+
+def compile_scss():
+   # src = open( 'assets/scss/main.scss' ).read()
+   scss = sass.compile_file(b'assets/scss/main.scss')
+   with open('assets/scss/main.css', 'w') as fp:
+      fp.write(scss.decode('utf8'))
+
+
+def app():
+
+   # QT webkit
+   app = QApplication(sys.argv)
+
+   browser = QWebView()
+   # browser.settings().setAttribute(QWebSettings.PluginsEnabled, True)
+   global _PORT
+   browser.load(QUrl('http://localhost:'+str(_PORT)))
+   browser.show()
+
+   sys.exit(app.exec_())
+
+if __name__ == "__main__":
+   main()

+ 3 - 0
assets/scss/main.scss

@@ -0,0 +1,3 @@
+body{
+  background-color: white;
+}

+ 1 - 0
index.html

@@ -3,6 +3,7 @@
   <head>
   <head>
     <meta charset="utf-8">
     <meta charset="utf-8">
     <title>Cascade</title>
     <title>Cascade</title>
+    <link rel="stylesheet" href="assets/scss/main.css">
   </head>
   </head>
   <body>
   <body>
     <h1>Cascade</h1>
     <h1>Cascade</h1>