Warning, file /utilities/okteta/kasten/gui/view/bytearrayviewfactory.cpp was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 /*
0002     This file is part of the Okteta Kasten module, made within the KDE community.
0003 
0004     SPDX-FileCopyrightText: 2006, 2009 Friedrich W. H. Kossebau <kossebau@kde.org>
0005 
0006     SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
0007 */
0008 
0009 #include "bytearrayviewfactory.hpp"
0010 
0011 // lib
0012 #include "bytearrayview.hpp"
0013 #include <bytearrayviewprofilemanager.hpp>
0014 #include <bytearrayviewprofilesynchronizer.hpp>
0015 // Okteta Kasten core
0016 #include <Kasten/Okteta/ByteArrayDocument>
0017 
0018 namespace Kasten {
0019 
0020 ByteArrayViewFactory::ByteArrayViewFactory(ByteArrayViewProfileManager* byteArrayViewProfileManager)
0021     : mByteArrayViewProfileManager(byteArrayViewProfileManager)
0022 {
0023 }
0024 
0025 AbstractView* ByteArrayViewFactory::createViewFor(AbstractDocument* _document)
0026 {
0027     ByteArrayView* result = nullptr;
0028 
0029     auto* document = static_cast<ByteArrayDocument*>(_document);
0030     if (document) {
0031         auto* synchronizer = new ByteArrayViewProfileSynchronizer(mByteArrayViewProfileManager);
0032 
0033         synchronizer->setViewProfileId(mByteArrayViewProfileManager->defaultViewProfileId());
0034 
0035         result = new ByteArrayView(document, synchronizer);
0036     }
0037 
0038     return result;
0039 }
0040 
0041 AbstractView* ByteArrayViewFactory::createCopyOfView(AbstractView* _view, Qt::Alignment alignment)
0042 {
0043     ByteArrayView* result = nullptr;
0044 
0045     auto* view = qobject_cast<ByteArrayView*>(_view);
0046     if (view) {
0047         auto* synchronizer = new ByteArrayViewProfileSynchronizer(mByteArrayViewProfileManager);
0048 
0049         synchronizer->setViewProfileId(view->synchronizer()->viewProfileId());
0050 
0051         result = new ByteArrayView(view, synchronizer, alignment);
0052     }
0053 
0054     return result;
0055 }
0056 
0057 }