Commit graph

271 commits

Author SHA1 Message Date
Teo Mrnjavac
aad1c536d1 New PythonQtJob class. 2016-12-16 17:03:00 +01:00
Teo Mrnjavac
f3fa124f8d Set configuration map in PythonQt module. 2016-12-16 17:03:00 +01:00
Teo Mrnjavac
a3887d268a Expose global_storage and utils as objects in PythonQt.calamares. 2016-12-16 17:03:00 +01:00
Teo Mrnjavac
864109fd4e Build them. 2016-12-16 17:03:00 +01:00
Teo Mrnjavac
4648f5e8e0 Utils wrapper class, to expose libcalamares.utils under PythonQt. 2016-12-16 17:03:00 +01:00
Teo Mrnjavac
7791307e1e Wrapper for GlobalStorage, to make it available through PythonQt. 2016-12-16 17:03:00 +01:00
Teo Mrnjavac
25613d1bef Fix _calamares_module_basewidget check and improve readability. 2016-12-16 17:03:00 +01:00
Teo Mrnjavac
0f0a6ab18d PythonQtViewStep has no decorator. 2016-12-16 17:03:00 +01:00
Teo Mrnjavac
9aefeed648 Expose PythonQt.calamares.global_storage. 2016-12-16 17:03:00 +01:00
Teo Mrnjavac
a54f217173 Use CalamaresUtils::lookupAndCall in PythonQtViewStep.
This is done to support both Pythonic and Qt style method names, i.e.
both "isNextEnabled" and "is_next_enabled" is ok in a Python module.
Also better documentation in PythonQtViewStep, and stub for
setConfigurationMap.
Finally, proper handling of PythonQtViewStep Python-facing basewidget:
with this change, a call to PQVS::widget() only triggers a widget
relayout if it's necessary, and leaves it alone otherwise.
2016-12-16 17:03:00 +01:00
Teo Mrnjavac
fb9d1fa339 Add PythonQtUtils.{h,cpp} with CalamaresUtils::lookupAndCall. 2016-12-16 17:03:00 +01:00
Teo Mrnjavac
9570bd94e8 Nor this. 2016-12-16 17:03:00 +01:00
Teo Mrnjavac
53f687587b Add support for attaching a Python console in DebugWindow.
Also add support for showing module type/interface.
Also minor layout improvements.
2016-12-16 17:03:00 +01:00
Teo Mrnjavac
c618999418 Properly load new PythonQtViewModule.
Only initialize Python if it's not initialized yet.
Inject @calamares_module decorator to fetch the entry class.
2016-12-16 17:03:00 +01:00
Teo Mrnjavac
2736ad6e09 User-visible Type and Interface strings in Module. 2016-12-16 17:03:00 +01:00
Teo Mrnjavac
d526935001 Remove PythonQtConsoleViewStep, which was only there for testing. 2016-12-16 17:03:00 +01:00
Teo Mrnjavac
b4002a716a New PythonQtViewStep. 2016-12-16 17:03:00 +01:00
Teo Mrnjavac
553062fc11 Fix build. 2016-12-16 17:03:00 +01:00
Teo Mrnjavac
8a90b89d25 Headers. 2016-12-16 17:03:00 +01:00
Teo Mrnjavac
0a5faa4888 PythonQtConsoleViewStep for testing purposes. 2016-12-16 17:03:00 +01:00
Teo Mrnjavac
2c3b56c803 Link against PythonQt; new PythonQtViewModule stub. 2016-12-16 17:03:00 +01:00
Teo Mrnjavac
e2b2d761c2 Do not LINK_PUBLIC by default. 2016-12-07 16:37:29 +01:00
Kevin Kofler
00d9f211f5 Add support for C++/Qt batch job plugins
These job plugins work similarly to view modules, with the following
differences:

* These jobs need to link only libcalamares, not libcalamaresui. For
  this reason, PluginFactory was moved from libcalamaresui to
  libcalamares. (It depends only on QtCore.)

* Instead of deriving from ViewModule, derive from CppJob (which is a
  subclass of Job).

* Like process and Python jobs, a job plugin is a single job, whereas a
  ViewModule can generate a whole list of jobs.

The CppJob and CppJobModule classes are new. In Module::fromDescriptor,
the combination type=job, intf=qtplugin is now supported and mapped to
CppJobModule.
2016-09-27 17:25:09 +02:00
Teo Mrnjavac
4662c9c877 Remove irrelevant debug output. 2016-09-19 12:34:45 +02:00
Andrius Štikonas
9f0ca042fe Port away from most cases of Q_FOREACH to C++11 ranged for loop.
In order to avoid deep copies, Qt containers over which we iterate must be const
The remaining unported cases require qAsConst (Qt 5.7) or std::as_const (C++17)
2016-09-01 16:46:14 +01:00
Teo Mrnjavac
9d61420e4f Added toolbox page to Debug interface, with deliberate crash feature. 2016-03-23 18:48:08 +01:00
Teo Mrnjavac
9928124195 Added toolbox page to Debug interface, with deliberate crash feature. 2016-03-16 11:44:20 +01:00
Teo Mrnjavac
1d8330f1eb Handle missing setting gracefully. 2016-03-01 15:10:19 +01:00
Teo Mrnjavac
c1d1e7cb5a Prevent memory leak on bad module dir (fix Coverity defect 114172). 2016-02-26 13:22:03 +01:00
Teo Mrnjavac
27b27644c4 Initialize all members (fix Coverity defect 114173). 2016-02-26 13:19:47 +01:00
Mingcong Bai
2d64110150 calamares: sidebarTextHighlight for branding
This commit adds support for distribution to define sidebarTextHighlight to their
branding.desc file, to control the left panel (sidebar) with highlight behind the
current step (isCurrent) text label.
2016-01-06 20:02:56 -07:00
Teo Mrnjavac
25e388aa29 Add CalamaresUtils::defaultFont() 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
17f1f5f61f Load those icons. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
d4117b333c New icons for DeviceInfoWidget. 2015-12-30 17:27:13 +01:00
Teo Mrnjavac
351c69c300 Remove obsolete code.
CAL-340 #close
2015-12-30 17:27:02 +01:00
Teo Mrnjavac
0fa19cca68 Fix the last page fix. 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
51d0d9f9b4 Disable next on last page. 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
6de8158bec It is a good idea to initialize pointer members in the ctor. 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
5e87e01374 Refactor view module workflow in ViewManager. 2015-09-15 16:48:42 +02:00
Teo Mrnjavac
2a0eb9e481 Fix debug window. 2015-09-15 16:48:42 +02:00
Teo Mrnjavac
461ef79170 ViewStep should know their own instance keys. 2015-09-15 16:48:42 +02:00
Teo Mrnjavac
fb44fb97b6 Massive refactor of module loading, configuration, startup, management. 2015-09-15 16:48:42 +02:00
Teo Mrnjavac
c74c67805e Remember to update CMakeLists. 2015-09-15 16:48:42 +02:00
Teo Mrnjavac
9042616a8a Refactor configuration file loading to allow multiple instances. 2015-09-15 16:48:42 +02:00
Teo Mrnjavac
4f84e9ad14 InstallationViewStep is now ExecutionViewStep.
It also uses JobQueue directly.
2015-09-15 16:48:42 +02:00
Teo Mrnjavac
f836019f49 Add Calamares::PluginFactory to allow multiple instances of a Qt Plugin. 2015-09-15 16:48:41 +02:00
Teo Mrnjavac
3b56c5c9e8 Use safe QTimer::singleShot connection. 2015-09-15 16:48:41 +02:00
Teo Mrnjavac
42e465aa10 CalamaresUtils::System is now a class. 2015-09-15 16:48:41 +02:00
Teo Mrnjavac
2e3751ffa7 If dont-chroot is set, don't chroot target env calls. 2015-09-15 16:48:41 +02:00
Teo Mrnjavac
8064736580 Add clearLayout to CalamaresUtilsGui. 2015-09-14 16:51:04 +02:00