create separate library and designer plugin; refs #115

This commit is contained in:
Marc Wäckerlin
2012-02-08 12:04:51 +00:00
parent 5e1d9243c5
commit 2ca014b4c5
32 changed files with 1432 additions and 2081 deletions

94
src/designer/makefile.am Normal file
View File

@@ -0,0 +1,94 @@
## @file
##
## $Id: makefile.am 7 2010-03-01 14:55:44Z marc $
##
## 1 2 3 4 5 6 7 8
## 45678901234567890123456789012345678901234567890123456789012345678901234567890
include_HEADERS =
if !MINGW32
if MAC
AM_CPPFLAGS += -I/opt/local/include
# -I/Library/OpenSC/include
AM_LDFLAGS = -L/opt/local/lib
# -F/System/Library/Frameworks/PCSC.framework
else
# AM_CPPFLAGS += -I/usr/include/PCSC
endif
endif
EXTRA_DIST = @srcdir@/*.[ch]xx @srcdir@/*.qrc.in @srcdir@/*.png
# @srcdir@/*.ui
#LANGS = en de fr it
ALL_SRC = @srcdir@/*.[ch]xx \
*.qrc
# @srcdir@/*.ui
QMAKE_PROJECT = qmake.pro
QMAKE_MAKEFILE = makefile.qmake
QMAKE_TARGET = libqbrowserlib-plugin.so
TARGETS = ${QMAKE_TARGET}
all: ${TARGETS} $
#$(LANGS:%=@PACKAGENAME@_%.ts)
rebuild-ts: $(LANGS)
${LUPDATE} @LUPDATE_ARGS@ ${QMAKE_PROJECT}
# ${LANGS}: ${ALL_SRC}
# -rm @PACKAGENAME@_$@.qm
# svn revert @PACKAGENAME@_$@.ts
# mv @PACKAGENAME@_$@.ts translation.old
# ${LUPDATE} @LUPDATE_ARGS@ ${QMAKE_PROJECT}
# mv @PACKAGENAME@_$@.ts translation.new
# echo '<?xml version="1.0" encoding="utf-8"?>' > @PACKAGENAME@_$@.ts
# echo '<!DOCTYPE TS>' >> @PACKAGENAME@_$@.ts
# echo '<TS version="2.0" language="'$@'">' >> @PACKAGENAME@_$@.ts
# xqilla merge-translation.xquery >> @PACKAGENAME@_$@.ts
# echo '</TS>' >> @PACKAGENAME@_$@.ts
# rm translation.old translation.new
print:
@echo "LANGS=${LANGS}"
@echo "ALL_SRC=${ALL_SRC}"
@echo "QMAKE=${QMAKE}"
@echo "QMAKE_OPTIONS=${QMAKE_OPTIONS}"
@echo "QMAKE_MAKEFILE=${QMAKE_MAKEFILE}"
@echo "QMAKE_TARGET=${QMAKE_TARGET}"
@echo "TARGETS=${TARGETS}"
# @PACKAGENAME@_%.qm: @srcdir@/@PACKAGENAME@_%.ts
# ${LRELEASE} $< -qm $@
%.xpm: resources/%.png
convert $< $@ || cp $< $@
# %.ts: ${ALL_SRC}
# ${LUPDATE} @LUPDATE_ARGS@ ${QMAKE_PROJECT}
${QMAKE_MAKEFILE}: ${QMAKE_PROJECT} ${ALL_SRC}
${QMAKE} -o $@ $<
# $(LANGS:%=@PACKAGENAME@_%.qm)
${QMAKE_TARGET}: ${QMAKE_MAKEFILE} ${ALL_SRC}
make -f ${QMAKE_MAKEFILE}
install-data-local: ${QMAKE_MAKEFILE}
${mkinstalldirs} ${QT_INSTALL_PLUGINS}
${INSTALL} ${QMAKE_TARGET}* ${QT_INSTALL_PLUGINS}
uninstall-local:
rm -r ${DESTDIR}${libdir}/${QMAKE_TARGET}*
clean-local:
-rm -r ${QMAKE_TARGET}*
# $(LANGS:%=@PACKAGENAME@_%.qm)
CLEANFILES = ${TARGETS} ${TARGETS:%=%.exe} \
*.o *.obj qrc_*.cpp ui_*.h moc_*.cpp \
${QMAKE_TARGET}
MAINTAINERCLEANFILES = makefile.in ${QMAKE_MAKEFILE}

48
src/designer/qmake.pro.in Normal file
View File

@@ -0,0 +1,48 @@
QT += gui webkit network
CONFIG += designer plugin
QMAKE_LIBS += -lproxyface -lpcscxx -lssl -lcrypto
QMAKE_CXXFLAGS += -Wno-parentheses -Wno-unused-parameter -std=c++0x
QMAKE_INCDIR += @top_srcdir@/src
QMAKE_LIBDIR += @top_builddir@/src/qbrowserlib
QMAKE_LIBS += -lqbrowserlib
unix {
!macx {
CONFIG += debug
QMAKE_INCDIR += /usr/include/PCSC
QMAKE_INCDIR += /usr/local/include/PCSC
QMAKE_LIBS += -lpcsclite -lproxy
}
}
macx {
QMAKE_INCDIR += /opt/local/include
QMAKE_LIBDIR += /opt/local/lib
QMAKE_LFLAGS += -F/System/Library/Frameworks/PCSC.framework
LIBS += -framework PCSC
QMAKE_INCDIR += /System/Library/Frameworks/PCSC.framework/Headers
QMAKE_INFO_PLIST = Info.plist
CONFIG += x86
}
win32 {
QMAKE_LIBS += -lwinhttp -lgdi32 -lws2_32
QMAKE_LIBS += /opt/local/i586-mingw32msvc/lib/winscard.a
CONFIG += release
}
SOURCES = webviewwidgetifc.cxx
HEADERS = webviewwidgetifc.hxx
FORMS =
RESOURCES = resources.qrc.in
TEMPLATE = lib
TARGET = qbrowserlib-plugin
CODECFORSRC = UTF-8
CODECFORTR = UTF-8
DEFINES += VERSION=\'\"@VERSION@\"\' BUILDDATE=\'\"@BUILDDATE@\"\'
## DEBUG
# QMAKE_CXXFLAGS += -include iostream -D\"CRYPTOKI_LOG(X)=std::clog<<\\\"CRYPTOKI_\\\"<<X<<\\\"_@_\\\"<<__PRETTY_FUNCTION__<<std::endl\" -D\"PCSC_LOG(X)=std::clog<<\\\"PCSC_\\\"<<X<<\\\"_@_\\\"<<__PRETTY_FUNCTION__<<std::endl\" -D\"OPENSSL_LOG(X)=std::clog<<\\\"OPENSSL_\\\"<<X<<\\\"_@_\\\"<<__PRETTY_FUNCTION__<<std::endl'" @CPPFLAGS@ @CXXFLAGS@

View File

@@ -0,0 +1,5 @@
<RCC>
<qresource prefix="/icon">
<file>webview.png</file>
</qresource>
</RCC>

BIN
src/designer/webview.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 397 B

View File

@@ -0,0 +1,10 @@
/*! @file
@id $Id$
*/
// 1 2 3 4 5 6 7 8
// 45678901234567890123456789012345678901234567890123456789012345678901234567890
#include <webviewwidgetifc.hxx>
Q_EXPORT_PLUGIN2(webviewwidgetplugin, WebViewWidgetIfc);

View File

@@ -0,0 +1,65 @@
/*! @file
@id $Id$
*/
// 1 2 3 4 5 6 7 8
// 45678901234567890123456789012345678901234567890123456789012345678901234567890
#ifndef __WEBVIEWWIDGETIFC_HXX
#define __WEBVIEWWIDGETIFC_HXX
#include <qbrowserlib/webview.hxx>
#include <QtDesigner>
//! WebView widget for Qt Designer
class WebViewWidgetIfc: public QObject, public QDesignerCustomWidgetInterface {
Q_OBJECT;
Q_INTERFACES(QDesignerCustomWidgetInterface);
public:
bool isContainer() const {
return false;
}
bool isInitialized() const {
return _initialized;
}
QIcon icon() const {
return QIcon(QPixmap("qrc:/icons/webview.png"));
}
QString domXml() const {
return
" <property name=\"geometry\">\n"
" <rect>\n"
" <x>0</x>\n"
" <y>0</y>\n"
" <width>100</width>\n"
" <height>100</height>\n"
" </rect>\n"
" </property>\n";
}
QString group() const {
return "DisplayWidgets";
}
QString includeFile() const {
return "qbrowserlib/webview.hxx";
}
QString name() const {
return "SwissWebView";
}
QString toolTip() const {
return "SwissWebView";
}
QString whatsThis() const {
return "SwissWebView";
}
QWidget *createWidget(QWidget *parent) {
return new WebView(parent);
}
void initialize(QDesignerFormEditorInterface *core) {
_initialized = true;
}
private:
bool _initialized;
};
#endif