qtie

package
v1.8.12 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 29, 2021 License: GPL-3.0 Imports: 8 Imported by: 0

README

ProtonMail Import-Export Qt interface

Import-Export uses Qt framework for creating appealing graphical user interface. Package therecipe/qt is used to implement Qt into Go.

For developers

The GUI is designed inside QML files. Communication with backend is done via frontend.go. The API documentation is done via go-doc.

Setup

  • if you don't have the system wide go-1.8.1 download, install localy (e.g. ~/build/go-1.8.1) and setup:

      export GOROOT=~/build/go-1.8.1/go
      export PATH=$GOROOT/bin:$PATH
    
  • go to your working directory and export $GOPATH

      export GOPATH=`Pwd`
      mkdir -p $GOPATH/bin
      export PATH=$PATH:$GOPATH/bin
    
  • if you dont have system wide Qt-5.8.0 download, install locally (e.g. ~/build/qt/qt-5.8.0) and setup:

      export QT_DIR=~/build/qt/qt-5.8.0
      export PATH=$QT_DIR/5.8/gcc_64/bin:$PATH
    
  • Go-Qt setup (installation is system dependent see therecipe/qt/README for details)

      go get -u -v github.com/therecipe/qt/cmd/...
      $GOPATH/bin/qtsetup
    

Compile

  • it is necessary to compile the Qt-C++ with go for resources and meta-objects

      make -f Makefile.local
    
  • FIXME the rcc file is implicitly generated with package main. This needs to be changed to package qtie manually

  • check that user interface is working

      make -f Makefile.local test
    

Test

    make -f Makefile.local qmlpreview

Deploy

  • before compilation of Import-Export it is necessary to run compilation of Qt-C++ part (done in makefile)

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type FrontendHeadless added in v1.7.0

type FrontendHeadless struct{}

func New

func New(
	version, buildVersion, appName string,
	panicHandler types.PanicHandler,
	locations *locations.Locations,
	settings *settings.Settings,
	eventListener listener.Listener,
	updater types.Updater,
	ie types.ImportExporter,
	restarter types.Restarter,
) *FrontendHeadless

func (*FrontendHeadless) Loop added in v1.7.0

func (s *FrontendHeadless) Loop() error

func (*FrontendHeadless) NotifyManualUpdate added in v1.7.0

func (s *FrontendHeadless) NotifyManualUpdate(update updater.VersionInfo, canInstall bool)

func (*FrontendHeadless) NotifySilentUpdateError added in v1.7.0

func (s *FrontendHeadless) NotifySilentUpdateError(err error)

func (*FrontendHeadless) NotifySilentUpdateInstalled added in v1.7.0

func (s *FrontendHeadless) NotifySilentUpdateInstalled()

func (*FrontendHeadless) SetVersion added in v1.7.0

func (s *FrontendHeadless) SetVersion(update updater.VersionInfo)

func (*FrontendHeadless) WaitUntilFrontendIsReady added in v1.7.0

func (s *FrontendHeadless) WaitUntilFrontendIsReady()

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL