Hello Kay,
I know the difference between 4.x and 6.x
(http://forum.typo3.org/index.php/t/194848/). I successively xclassed
those classes:
<?php
$extPath = t3lib_extMgm::extPath('imagickimg');
return array(
'ux_GraphicalFunctions' => $extPath .
'Classes/Xclass/GraphicalFunctions.php',
'ux_GifBuilder' => $extPath . 'Classes/Xclass/GifBuilder.php',
'ux_ThumbnailView' => $extPath . 'Classes/Xclass/ThumbnailView.php',
'ux_LocalPreviewHelper' => $extPath .
'Classes/Xclass/LocalPreviewHelper.php',
'ux_ContentObjectRenderer' => $extPath .
'Classes/Xclass/ContentObjectRenderer.php',
'ux_ElementInformationController' => $extPath .
'Classes/Xclass/ElementInformationController.php'
);
?>
But I have problem with LocalPreviewHelper class. This class is
instanitated in LocalImageProcessor::getHelperByTaskName by makeInstance
with "$this" as second parameter.
My ux_LocalPreviewHelper has devLog entries inside but I don't see this
in the "Developer Log" browser.
I also tried to overload the constructor and invoke parent constructor
but this leads to an Exception: "#1: PHP Catchable Fatal Error: Argument
1 passed to ux_LocalPreviewHelper::__construct() must be an instance of
LocalImageProcessor, instance of
TYPO3\CMS\Core\Resource\Processing\LocalImageProcessor given in
D:\wamp\www\mysite.local\typo3conf\ext\imagickimg\Classes\Xclass\LocalPreviewHelper.php
line 37 "
This is how beginning of my ux_LocalPreviewHelper looks:
<?php
use \TYPO3\CMS\Core\Resource, \TYPO3\CMS\Core\Utility;
class ux_LocalPreviewHelper extends
\TYPO3\CMS\Core\Resource\Processing\LocalPreviewHelper {
private $extKey = 'imagickimg';
public function __construct(LocalImageProcessor $processor) {
parent::__construct($processor);
}
public function process(TaskInterface $task) {
if (TYPO3_DLOG)
\TYPO3\CMS\Core\Utility\GeneralUtility::devLog(__METHOD__,
$this->extKey);
$targetFile = $task->getTargetFile();
If I comment out the constructor then I see no exceptions but there are
also no devLog entries and no images too.
I'm checking if my XClasses are loaded in ADMIN TOOLS -> Configuration
-> $TYPO3_CONF_VARS->SYS->Objects.
Any ideas appreciated.
cheers
Tomasz
W dniu 2013-03-29 09:38, Kay Strobach pisze:
Hello Tomasz,
there is a different between TYPO3 4.5 and 6.0!
http://wiki.typo3.org/Xclass
It's important, that prior 6.0 each class needs the xclass loop. In 6.0
you may use the autoloading mechanism for xclassing ;)
Xclassing is only working if you use t3lib_div::makeInstance.
Xclasses are ignored by "new".
In the reports module you should find a list of your defined xclasses.
Ensure a proper ext_autoload file!
Regards
Kay
Am 28.03.13 20:49, schrieb Tomasz Krawczyk:
is it possible to XClass a class which takes some parameters in its
constructor?
Most times, yes, but the interface must be equal!
_______________________________________________
TYPO3-english mailing list
TYPO3-english@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-english