Geometrize  1.0
An application for geometrizing images into geometric primitives
bindingscreator.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <memory>
4 
5 namespace chaiscript
6 {
7 class Module;
8 }
9 
10 namespace geometrize
11 {
12 
13 namespace script
14 {
15 
16 namespace bindings
17 {
18 
23 std::shared_ptr<chaiscript::Module> createDefaultBindings();
24 
29 std::shared_ptr<chaiscript::Module> createQWidgetBindings();
30 
35 std::shared_ptr<chaiscript::Module> createLaunchWindowBindings();
36 
41 std::shared_ptr<chaiscript::Module> createImageTaskWindowBindings();
42 
47 std::shared_ptr<chaiscript::Module> createImageBindings();
48 
53 std::shared_ptr<chaiscript::Module> createSynchronousImageTaskBindings();
54 
59 std::shared_ptr<chaiscript::Module> createImageTaskBindings();
60 
65 std::shared_ptr<chaiscript::Module> createImageExportBindings();
66 
71 std::shared_ptr<chaiscript::Module> createAnimatedGifExportBindings();
72 
77 std::shared_ptr<chaiscript::Module> createGeometrizeLibraryBindings();
78 
83 std::shared_ptr<chaiscript::Module> createTabletEventBindings();
84 
89 std::shared_ptr<chaiscript::Module> createMathBindings();
90 
95 std::shared_ptr<chaiscript::Module> createUserInterfacePuppeteerBindings();
96 
101 std::shared_ptr<chaiscript::Module> createFunctionalTestHelperBindings();
102 
103 }
104 
105 }
106 
107 }
ADD_TYPE
#define ADD_TYPE(Class)
Definition: bindingshelpers.h:12
geometrize::image
Definition: imageloader.cpp:20
geometrize::script::bindings::getFilenameTimestamp
std::string getFilenameTimestamp()
Definition: bindingswrapper.cpp:403
geometrize::script::bindings::getFormattedTimestamp
std::string getFormattedTimestamp(const std::string &formatString)
Definition: bindingswrapper.cpp:398
geometrize::script::bindings::clearGlobalClipboard
void clearGlobalClipboard()
Definition: bindingswrapper.cpp:210
geometrize::script::bindings::clamp
T clamp(T value, U lower, V upper)
Definition: bindingswrapper.h:164
imageloader.h
geometrize::script::bindings::getAllNamedCommandHandlers
std::vector< std::string > getAllNamedCommandHandlers()
Definition: bindingswrapper.cpp:368
geometrize::script::bindings::getFilesWithExtensions
std::vector< std::string > getFilesWithExtensions(const std::string &, const std::vector< std::string > &)
Definition: bindingswrapper.cpp:145
geometrize::script::bindings::createDirectory
bool createDirectory(const std::string &dirPath)
Definition: bindingswrapper.cpp:110
geometrize::dialog::LaunchWindow
The LaunchWindow class models the UI for a launchpad for opening new task templates and recent tasks.
Definition: launchwindow.h:22
geometrize::script::bindings::createImageTaskWindowBindings
std::shared_ptr< chaiscript::Module > createImageTaskWindowBindings()
createImageTaskWindowBindings Creates the Chaiscript to C++ binding for the Geometrize image task win...
Definition: bindingscreator.cpp:251
geometrize::script::bindings::fitImageTaskWidgetsInGridOnMonitor
void fitImageTaskWidgetsInGridOnMonitor(int screenIdx)
Definition: bindingswrapper.cpp:458
geometrize::script::bindings::readFileAsString
std::string readFileAsString(const std::string &filePath)
Definition: bindingswrapper.cpp:115
geometrize::script::bindings::setTranslatorsForLocale
void setTranslatorsForLocale(const std::string &locale)
Definition: bindingswrapper.cpp:310
geometrize::image::loadImage
QImage loadImage(const std::string &filePath)
loadImage Loads an image from the image at the file path. Converts to RGBA8888 format.
Definition: imageloader.cpp:64
geometrize::scene::TabletEventData
The TabletEventData class represents data produced from a Wacom pen/tablet event (in the context of a...
Definition: customtabletevent.h:56
geometrize::script::sleep
void sleep(const std::size_t ms)
sleep Causes the calling thread to sleep for the given length of time.
Definition: scriptutil.cpp:43
imageexporter.h
geometrize::image::convertImageToRgba8888
QImage convertImageToRgba8888(const QImage &image)
convertImageToRgba8888 Returns a copy of the image in the RGBA8888 format.
Definition: imageloader.cpp:82
geometrize::script::bindings::createQWidgetBindings
std::shared_ptr< chaiscript::Module > createQWidgetBindings()
createQWidgetBindings Creates the Chaiscript to C++ bindings for the Qt QWidget class.
Definition: bindingscreator.cpp:193
launchwindow.h
ADD_MEMBER
#define ADD_MEMBER(Class, Name)
Definition: bindingshelpers.h:10
geometrize::script::bindings::createDefaultBindings
std::shared_ptr< chaiscript::Module > createDefaultBindings()
createDefaultBindings Creates the default Chaiscript to C++ bindings.
Definition: bindingscreator.cpp:82
synchronousimagetask.h
geometrize::preferences
Definition: globalpreferences.cpp:21
geometrize::script::bindings::sendCommandString
void sendCommandString(const std::string &target, const std::string &command)
Definition: bindingswrapper.cpp:378
geometrize::script::bindings::getSupportedLocaleCodes
std::vector< std::string > getSupportedLocaleCodes()
Definition: bindingswrapper.cpp:315
geometrize::script::bindings::printToAllScriptConsoleWidgets
void printToAllScriptConsoleWidgets(const std::string &str)
Definition: bindingswrapper.cpp:70
geometrize::script::bindings::printToConsole
void printToConsole(const std::string &str)
Definition: bindingswrapper.cpp:65
geometrize::script::bindings::broadcastCommandObject
void broadcastCommandObject(Command &command)
Definition: bindingswrapper.cpp:393
geometrize::script::bindings::getAllNamedWidgets
std::vector< std::string > getAllNamedWidgets()
Definition: bindingswrapper.cpp:353
geometrize::script::bindings::writeStringToFile
bool writeStringToFile(const std::string &str, const std::string &path)
Definition: bindingswrapper.cpp:255
uiactions.h
geometrize::script::bindings::debugBreak
void debugBreak()
Definition: bindingswrapper.cpp:80
geometrize::script::bindings::processApplicationEvents
void processApplicationEvents()
Definition: bindingswrapper.cpp:85
geometrize::script::bindings::createImageBindings
std::shared_ptr< chaiscript::Module > createImageBindings()
createImageBindings Creates the Chaiscript to C++ bindings for image manipulation.
Definition: bindingscreator.cpp:288
geometrize::script::bindings::fitWidgetsInGridOnMonitor
void fitWidgetsInGridOnMonitor(const std::vector< QWidget * > &widgets, int screenIdx)
Definition: bindingswrapper.cpp:453
geometrize::script::bindings::createUserInterfacePuppeteerBindings
std::shared_ptr< chaiscript::Module > createUserInterfacePuppeteerBindings()
createUserInterfacePuppeteerBindings Creates ChaiScript to C++ bindings for driving the user interfac...
Definition: bindingscreator.cpp:649
geometrize::script::Command
The Command class provides a convenient way for a script to tell an object about something For exampl...
Definition: command.h:17
geometrize::script::bindings::getCursorY
int getCursorY()
Definition: bindingswrapper.cpp:300
geometrize::common::ui
Definition: uiactions.cpp:28
ADD_FREE_FUN_TEMPLATE
#define ADD_FREE_FUN_TEMPLATE(Name, Params)
Definition: bindingshelpers.h:9
geometrize::script::bindings::messageBox
void messageBox(const std::string &str)
Definition: bindingswrapper.cpp:75
geometrize::script::bindings::getFilePathsForDirectory
std::vector< std::string > getFilePathsForDirectory(const std::string &dirPath)
Definition: bindingswrapper.cpp:120
geometrize::script::bindings::getImageTaskWindows
std::vector< geometrize::dialog::ImageTaskWindow * > getImageTaskWindows()
Definition: bindingswrapper.cpp:55
geometrize::script::bindings::arrangeWidgetsInGrid
void arrangeWidgetsInGrid(const std::vector< QWidget * > &widgets, int centerX, int centerY, int xDim, int yDim, int resizeX, int resizeY)
Definition: bindingswrapper.cpp:423
geometrize::script::bindings::exportGIF
bool exportGIF(const std::vector< geometrize::ShapeResult > &data, const std::uint32_t inputWidth, const std::uint32_t inputHeight, const std::uint32_t outputWidth, const std::uint32_t outputHeight, const std::size_t frameSkip, const std::string &filePath)
Definition: bindingswrapper.cpp:330
chaiscript
Definition: commandlineedit.h:11
geometrize::script::bindings::createImageTask
geometrize::task::ImageTask * createImageTask(geometrize::Bitmap &bitmap)
Definition: bindingswrapper.cpp:45
geometrize::script::bindings::getDesktopDirectoryLocation
std::string getDesktopDirectoryLocation()
Definition: bindingswrapper.cpp:250
geometrize::script::CommandHandler
The CommandHandler class provides an interface that all objects that can handle/process script comman...
Definition: commandhandler.h:19
geometrize::script::bindings::getHomeDirectoryLocation
std::string getHomeDirectoryLocation()
Definition: bindingswrapper.cpp:245
geometrize::script::bindings::setWidgetPosition
void setWidgetPosition(QWidget *widget, int x, int y)
Definition: bindingswrapper.cpp:418
geometrize::preferences::ImageTaskPreferences
The ImageTaskPreferences class models the preferences associated with an image task.
Definition: imagetaskpreferences.h:29
geometrize::script::bindings::getCursorX
int getCursorX()
Definition: bindingswrapper.cpp:295
geometrize::exporter
Definition: gifexporter.cpp:78
geometrize::script::bindings::arrangeImageTaskWidgetsInGrid
void arrangeImageTaskWidgetsInGrid(int centerX, int centerY, int xDim, int yDim, int resizeX, int resizeY)
Definition: bindingswrapper.cpp:428
geometrize::script::bindings::percentEncode
std::string percentEncode(const std::string &str)
Definition: bindingswrapper.cpp:260
geometrize::script::bindings::setCursorPos
void setCursorPos(const int x, const int y)
Definition: bindingswrapper.cpp:305
bindingswrapper.h
scriptutil.h
geometrize::script::bindings
Definition: bindingscreator.cpp:80
geometrize::script::bindings::getSupportedImageFileExtensions
std::vector< std::string > getSupportedImageFileExtensions()
Definition: bindingswrapper.cpp:161
geometrize::script::bindings::split
std::vector< std::string > split(const std::string &s, const char delimiter)
Definition: bindingswrapper.cpp:285
COMMA
#define COMMA
Definition: bindingshelpers.h:5
geometrize::script::bindings::arrangeImageTaskWidgetsInGridOnPrimaryMonitor
void arrangeImageTaskWidgetsInGridOnPrimaryMonitor(int resizeX, int resizeY)
Definition: bindingswrapper.cpp:448
geometrize::script::bindings::getUuidString
std::string getUuidString()
Definition: bindingswrapper.cpp:408
geometrize::script::bindings::getApplicationDirectoryPath
std::string getApplicationDirectoryPath()
Definition: bindingswrapper.cpp:60
geometrize::script::bindings::getCommandHandlerByName
CommandHandler * getCommandHandlerByName(const std::string &name)
Definition: bindingswrapper.cpp:373
geometrize::script::bindings::createFunctionalTestHelperBindings
std::shared_ptr< chaiscript::Module > createFunctionalTestHelperBindings()
createFunctionalTestHelperBindings Creates ChaiScript to C++ bindings for helper functions needed for...
Definition: bindingscreator.cpp:660
geometrize::script::bindings::directoriesExist
bool directoriesExist(const std::vector< std::string > &dirPaths)
Definition: bindingswrapper.cpp:100
geometrize::script::bindings::createImageTaskWindow
geometrize::dialog::ImageTaskWindow * createImageTaskWindow()
Definition: bindingswrapper.cpp:35
geometrize::script::bindings::getOperatingSystemProductType
std::string getOperatingSystemProductType()
Definition: bindingswrapper.cpp:290
geometrize::image::createBitmap
Bitmap createBitmap(const QImage &image)
createBitmap Creates a bitmap data object from the given image.
Definition: imageloader.cpp:22
geometrize::script::bindings::randomIntInRange
int randomIntInRange(const int lower, const int upper)
Definition: bindingswrapper.cpp:265
geometrize::task
Definition: imagetaskexportwidget.h:19
geometrize::script::bindings::directoryContainsFile
bool directoryContainsFile(const std::string &dirPath, const std::string &fileName)
Definition: bindingswrapper.cpp:105
geometrize::script::bindings::createTabletEventBindings
std::shared_ptr< chaiscript::Module > createTabletEventBindings()
createTabletEventBindings Creates the Chaiscript to C++ bindings for tablet events (e....
Definition: bindingscreator.cpp:600
geometrize::script::bindings::directoryExists
bool directoryExists(const std::string &dirPath)
Definition: bindingswrapper.cpp:95
geometrize
Definition: commandlineparser.cpp:73
geometrize::script::bindings::getLaunchWindows
std::vector< geometrize::dialog::LaunchWindow * > getLaunchWindows()
Definition: bindingswrapper.cpp:50
geometrize::script::bindings::createLaunchWindowBindings
std::shared_ptr< chaiscript::Module > createLaunchWindowBindings()
createLaunchWindowBindings Creates the Chaiscript to C++ bindings for the Geometrize launch window.
Definition: bindingscreator.cpp:220
imagetask.h
geometrize::script::bindings::getFirstFileWithExtensions
std::string getFirstFileWithExtensions(const std::string &dirPath, const std::vector< std::string > &extensions)
Definition: bindingswrapper.cpp:140
geometrize::script::bindings::createLaunchWindow
geometrize::dialog::LaunchWindow * createLaunchWindow()
Definition: bindingswrapper.cpp:40
geometrize::script::bindings::getTemplateSearchPaths
std::vector< std::string > getTemplateSearchPaths()
Definition: bindingswrapper.cpp:130
geometrize::script::bindings::getGlobalClipboardText
std::string getGlobalClipboardText()
Definition: bindingswrapper.cpp:215
geometrize::script::bindings::fitWidgetsInGridOnPrimaryMonitor
void fitWidgetsInGridOnPrimaryMonitor(const std::vector< QWidget * > &widgets)
Definition: bindingswrapper.cpp:463
geometrize::script::bindings::createImageTaskBindings
std::shared_ptr< chaiscript::Module > createImageTaskBindings()
createImageTaskBindings Creates the Chaiscript to C++ bindings for Geometrize image tasks.
Definition: bindingscreator.cpp:343
geometrize::script::bindings::saveWidgetScreenshot
bool saveWidgetScreenshot(const std::string &path, QWidget *widget)
Definition: bindingswrapper.cpp:343
geometrize::script::bindings::getApplicationDirectoryLocation
std::string getApplicationDirectoryLocation()
Definition: bindingswrapper.cpp:235
geometrize::script::bindings::stringEndsWith
bool stringEndsWith(const std::string &str, const std::string &suffix)
Definition: bindingswrapper.cpp:230
geometrize::script::bindings::getFirstFileWithExtension
std::string getFirstFileWithExtension(const std::string &dirPath, const std::string &extension)
Definition: bindingswrapper.cpp:135
geometrize::script::bindings::randomFloatInRange
float randomFloatInRange(const float lower, const float upper)
Definition: bindingswrapper.cpp:270
geometrize::script::bindings::arrangeWidgetsInGridOnPrimaryMonitor
void arrangeWidgetsInGridOnPrimaryMonitor(const std::vector< QWidget * > &widgets, int resizeX, int resizeY)
Definition: bindingswrapper.cpp:443
geometrize::script::bindings::randomInRange
T randomInRange(U lower, V upper)
Definition: bindingswrapper.h:148
geometrize::script::bindings::fileExists
bool fileExists(const std::string &filePath)
Definition: bindingswrapper.cpp:90
geometrize::script::bindings::getScriptSearchPaths
std::vector< std::string > getScriptSearchPaths()
Definition: bindingswrapper.cpp:125
geometrize::script::bindings::getWidgetByName
QWidget * getWidgetByName(const std::string &widgetName)
Definition: bindingswrapper.cpp:363
geometrize::script::bindings::createAnimatedGifExportBindings
std::shared_ptr< chaiscript::Module > createAnimatedGifExportBindings()
createGifExportBindings Creates the ChaiScript to C++ bindings for saving animated GIFs.
Definition: bindingscreator.cpp:415
geometrize::script::bindings::getFilesWithExtension
std::vector< std::string > getFilesWithExtension(const std::string &dirPath, const std::string &extension)
Definition: bindingswrapper.cpp:156
geometrize::script::bindings::customTabletEventDataToString
std::string customTabletEventDataToString(const geometrize::scene::TabletEventData &data)
Definition: bindingswrapper.cpp:348
geometrize::dialog
Definition: aboutdialog.cpp:14
geometrize::script::bindings::setGlobalClipboardText
void setGlobalClipboardText(const std::string &text)
Definition: bindingswrapper.cpp:220
ADD_BASE_CLASS
#define ADD_BASE_CLASS(Base, Derived)
Definition: bindingshelpers.h:13
chaiscriptmathextras.h
geometrize::script::bindings::arrangeWidgetsInGridOnMonitor
void arrangeWidgetsInGridOnMonitor(const std::vector< QWidget * > &widgets, int monitorId, int resizeX, int resizeY)
Definition: bindingswrapper.cpp:433
geometrize::exporter::exportImage
bool exportImage(const QImage &image, const std::string &filePath)
exportImage Exports the image data to an image format that Qt supports (depending on the file extensi...
Definition: imageexporter.cpp:30
bindingscreator.h
customtabletevent.h
geometrize::script::bindings::stringBeginsWith
bool stringBeginsWith(const std::string &str, const std::string &prefix)
Definition: bindingswrapper.cpp:225
geometrize::script::bindings::getAllNamedGeometrizeWidgets
std::vector< std::string > getAllNamedGeometrizeWidgets()
Definition: bindingswrapper.cpp:358
geometrize::script::bindings::getAppDataLocation
std::string getAppDataLocation()
Definition: bindingswrapper.cpp:240
geometrize::script::bindings::createMathBindings
std::shared_ptr< chaiscript::Module > createMathBindings()
createMathBindings Creates the Chaiscript to C++ bindings for common math functions.
Definition: bindingscreator.cpp:644
geometrize::script::bindings::broadcastCommandString
void broadcastCommandString(const std::string &command)
Definition: bindingswrapper.cpp:388
geometrize::script::bindings::getFileNameForFilePath
std::string getFileNameForFilePath(const std::string &filePath)
Definition: bindingswrapper.cpp:181
chaiscript::extras::math::bootstrap
ModulePtr bootstrap(ModulePtr m=std::make_shared< Module >())
Definition: chaiscriptmathextras.h:550
geometrize::script::bindings::fitImageTaskWidgetsInGridOnPrimaryMonitor
void fitImageTaskWidgetsInGridOnPrimaryMonitor()
Definition: bindingswrapper.cpp:468
geometrize::task::ImageTask
The ImageTask class transforms a source image into a collection of shapes approximating the source im...
Definition: imagetask.h:53
geometrize::script::bindings::clampInt
int clampInt(const int value, const int lower, const int upper)
Definition: bindingswrapper.cpp:275
geometrize::script::bindings::openTask
void openTask(const std::string &url, const bool addToRecents)
Definition: bindingswrapper.cpp:186
geometrize::exporter::exportRasterizedSvg
bool exportRasterizedSvg(const std::vector< geometrize::ShapeResult > &shapes, const std::uint32_t inputWidth, const std::uint32_t inputHeight, const std::uint32_t outputWidth, const std::uint32_t outputHeight, const std::string &filePath)
exportRasterizedSvg Exports the shape data as an image by rasterizing an SVG rendered from the shape ...
Definition: imageexporter.cpp:74
geometrize::script::bindings::arrangeImageTaskWidgetsInGridOnMonitor
void arrangeImageTaskWidgetsInGridOnMonitor(int monitorId, int resizeX, int resizeY)
Definition: bindingswrapper.cpp:438
geometrize::script::bindings::getScriptsForPath
std::vector< std::string > getScriptsForPath(const std::string &dirPath)
Definition: bindingswrapper.cpp:166
geometrize::script::bindings::openInDefaultApplication
bool openInDefaultApplication(const std::string &path)
Definition: bindingswrapper.cpp:200
geometrize::script::bindings::createGeometrizeLibraryBindings
std::shared_ptr< chaiscript::Module > createGeometrizeLibraryBindings()
createGeometrizeLibraryBindings Creates the Chaiscript to C++ bindings for all of the functionality i...
Definition: bindingscreator.cpp:426
geometrize::script::bindings::sendCommandObject
void sendCommandObject(const std::string &target, Command &command)
Definition: bindingswrapper.cpp:383
ADD_FREE_FUN
#define ADD_FREE_FUN(Name)
Definition: bindingshelpers.h:8
geometrize::image::convertImageToBitmapWithDownscaling
geometrize::Bitmap convertImageToBitmapWithDownscaling(const QImage &image)
imageToBitmapWithDownscaling Creates a bitmap data object from the given image, downscaling in the pr...
Definition: imageloader.cpp:32
geometrize::script::bindings::getScriptsForPaths
std::vector< std::string > getScriptsForPaths(const std::vector< std::string > &dirPaths)
Definition: bindingswrapper.cpp:171
geometrize::script::bindings::setLocaleAndUserInterfaceLanguage
void setLocaleAndUserInterfaceLanguage(const std::string &locale)
Definition: bindingswrapper.cpp:325
imagetaskwindow.h
geometrize::exporter::exportBitmap
bool exportBitmap(const geometrize::Bitmap &bitmap, const std::string &filePath)
exportBitmap Exports the Geometrize bitmap data to an image format that Qt supports (depending on the...
Definition: imageexporter.cpp:24
geometrize::script::bindings::revealInDefaultApplication
bool revealInDefaultApplication(const std::string &path)
Definition: bindingswrapper.cpp:205
ADD_CONSTRUCTOR
#define ADD_CONSTRUCTOR(Class, Signature)
Definition: bindingshelpers.h:14
geometrize::script::bindings::vectorContains
bool vectorContains(const std::vector< T > &v, const T &t)
Definition: bindingswrapper.h:181
geometrize::script::bindings::clampFloat
float clampFloat(const float value, const float lower, const float upper)
Definition: bindingswrapper.cpp:280
geometrize::dialog::ImageTaskWindow
The ImageTaskWindow class encapsulates the UI for manipiulating, running and viewing an image task th...
Definition: imagetaskwindow.h:31
geometrize::script::bindings::createSynchronousImageTaskBindings
std::shared_ptr< chaiscript::Module > createSynchronousImageTaskBindings()
createSynchronousImageTaskBindings Creates the Chaiscript to C++ bindings for synchronous Geometrize ...
Definition: bindingscreator.cpp:320
geometrize::scene
Definition: areaofinfluenceshapeitem.cpp:10
geometrize::script::bindings::randomInVector
T randomInVector(const std::vector< T > &v)
Definition: bindingswrapper.h:157
bindingshelpers.h
geometrize::script::bindings::setWidgetSize
void setWidgetSize(QWidget *widget, int width, int height)
Definition: bindingswrapper.cpp:413
geometrize::script::bindings::createImageExportBindings
std::shared_ptr< chaiscript::Module > createImageExportBindings()
createImageExportBindings Creates the Chaiscript to C++ bindings for saving images.
Definition: bindingscreator.cpp:402
geometrize::script::bindings::getDirectoryForFilePath
std::string getDirectoryForFilePath(const std::string &filePath)
Definition: bindingswrapper.cpp:176
geometrize::task::SynchronousImageTask
The SynchronousImageTask class transforms a source image into a collection of shapes approximating th...
Definition: synchronousimagetask.h:28