mirror of
https://github.com/TES3MP/openmw-tes3mp.git
synced 2025-04-01 20:36:42 +00:00
Add Cell Id completion to ReferenceCreator
This commit is contained in:
parent
36271f25ec
commit
a6734a0ea4
3 changed files with 31 additions and 4 deletions
|
@ -4,10 +4,13 @@
|
||||||
#include <QLabel>
|
#include <QLabel>
|
||||||
#include <QLineEdit>
|
#include <QLineEdit>
|
||||||
|
|
||||||
|
#include "../../model/doc/document.hpp"
|
||||||
|
|
||||||
#include "../../model/world/data.hpp"
|
#include "../../model/world/data.hpp"
|
||||||
#include "../../model/world/commands.hpp"
|
#include "../../model/world/commands.hpp"
|
||||||
#include "../../model/world/columns.hpp"
|
#include "../../model/world/columns.hpp"
|
||||||
#include "../../model/world/idtable.hpp"
|
#include "../../model/world/idtable.hpp"
|
||||||
|
#include "../../model/world/idcompletionmanager.hpp"
|
||||||
|
|
||||||
std::string CSVWorld::ReferenceCreator::getId() const
|
std::string CSVWorld::ReferenceCreator::getId() const
|
||||||
{
|
{
|
||||||
|
@ -71,13 +74,14 @@ int CSVWorld::ReferenceCreator::getRefNumCount() const
|
||||||
}
|
}
|
||||||
|
|
||||||
CSVWorld::ReferenceCreator::ReferenceCreator (CSMWorld::Data& data, QUndoStack& undoStack,
|
CSVWorld::ReferenceCreator::ReferenceCreator (CSMWorld::Data& data, QUndoStack& undoStack,
|
||||||
const CSMWorld::UniversalId& id)
|
const CSMWorld::UniversalId& id, CSMWorld::IdCompletionManager &completionManager)
|
||||||
: GenericCreator (data, undoStack, id)
|
: GenericCreator (data, undoStack, id)
|
||||||
{
|
{
|
||||||
QLabel *label = new QLabel ("Cell", this);
|
QLabel *label = new QLabel ("Cell", this);
|
||||||
insertBeforeButtons (label, false);
|
insertBeforeButtons (label, false);
|
||||||
|
|
||||||
mCell = new QLineEdit (this);
|
mCell = new QLineEdit (this);
|
||||||
|
mCell->setCompleter(completionManager.getCompleter(CSMWorld::ColumnBase::Display_Cell).get());
|
||||||
insertBeforeButtons (mCell, true);
|
insertBeforeButtons (mCell, true);
|
||||||
|
|
||||||
setManualEditing (false);
|
setManualEditing (false);
|
||||||
|
@ -142,3 +146,12 @@ void CSVWorld::ReferenceCreator::cloneMode(const std::string& originId,
|
||||||
CSVWorld::GenericCreator::cloneMode(originId, type);
|
CSVWorld::GenericCreator::cloneMode(originId, type);
|
||||||
cellChanged(); //otherwise ok button will remain disabled
|
cellChanged(); //otherwise ok button will remain disabled
|
||||||
}
|
}
|
||||||
|
|
||||||
|
CSVWorld::Creator *CSVWorld::ReferenceCreatorFactory::makeCreator (CSMDoc::Document& document,
|
||||||
|
const CSMWorld::UniversalId& id) const
|
||||||
|
{
|
||||||
|
return new ReferenceCreator(document.getData(),
|
||||||
|
document.getUndoStack(),
|
||||||
|
id,
|
||||||
|
document.getIdCompletionManager());
|
||||||
|
}
|
||||||
|
|
|
@ -5,8 +5,14 @@
|
||||||
|
|
||||||
class QLineEdit;
|
class QLineEdit;
|
||||||
|
|
||||||
|
namespace CSMWorld
|
||||||
|
{
|
||||||
|
class IdCompletionManager;
|
||||||
|
}
|
||||||
|
|
||||||
namespace CSVWorld
|
namespace CSVWorld
|
||||||
{
|
{
|
||||||
|
|
||||||
class ReferenceCreator : public GenericCreator
|
class ReferenceCreator : public GenericCreator
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
@ -28,7 +34,7 @@ namespace CSVWorld
|
||||||
public:
|
public:
|
||||||
|
|
||||||
ReferenceCreator (CSMWorld::Data& data, QUndoStack& undoStack,
|
ReferenceCreator (CSMWorld::Data& data, QUndoStack& undoStack,
|
||||||
const CSMWorld::UniversalId& id);
|
const CSMWorld::UniversalId& id, CSMWorld::IdCompletionManager &completionManager);
|
||||||
|
|
||||||
virtual void cloneMode(const std::string& originId,
|
virtual void cloneMode(const std::string& originId,
|
||||||
const CSMWorld::UniversalId::Type type);
|
const CSMWorld::UniversalId::Type type);
|
||||||
|
@ -46,6 +52,14 @@ namespace CSVWorld
|
||||||
|
|
||||||
void cellChanged();
|
void cellChanged();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
class ReferenceCreatorFactory : public CreatorFactoryBase
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
|
||||||
|
virtual Creator *makeCreator (CSMDoc::Document& document, const CSMWorld::UniversalId& id) const;
|
||||||
|
///< The ownership of the returned Creator is transferred to the caller.
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -59,7 +59,7 @@ void CSVWorld::addSubViewFactories (CSVDoc::SubViewFactoryManager& manager)
|
||||||
new CSVDoc::SubViewFactoryWithCreator<TableSubView, CreatorFactory<ReferenceableCreator> >);
|
new CSVDoc::SubViewFactoryWithCreator<TableSubView, CreatorFactory<ReferenceableCreator> >);
|
||||||
|
|
||||||
manager.add (CSMWorld::UniversalId::Type_References,
|
manager.add (CSMWorld::UniversalId::Type_References,
|
||||||
new CSVDoc::SubViewFactoryWithCreator<TableSubView, CreatorFactory<ReferenceCreator> >);
|
new CSVDoc::SubViewFactoryWithCreator<TableSubView, ReferenceCreatorFactory>);
|
||||||
|
|
||||||
manager.add (CSMWorld::UniversalId::Type_Topics,
|
manager.add (CSMWorld::UniversalId::Type_Topics,
|
||||||
new CSVDoc::SubViewFactoryWithCreator<TableSubView, TopicCreatorFactory>);
|
new CSVDoc::SubViewFactoryWithCreator<TableSubView, TopicCreatorFactory>);
|
||||||
|
@ -147,7 +147,7 @@ void CSVWorld::addSubViewFactories (CSVDoc::SubViewFactoryManager& manager)
|
||||||
new CSVDoc::SubViewFactoryWithCreator<DialogueSubView, CreatorFactory<ReferenceableCreator> > (false));
|
new CSVDoc::SubViewFactoryWithCreator<DialogueSubView, CreatorFactory<ReferenceableCreator> > (false));
|
||||||
|
|
||||||
manager.add (CSMWorld::UniversalId::Type_Reference,
|
manager.add (CSMWorld::UniversalId::Type_Reference,
|
||||||
new CSVDoc::SubViewFactoryWithCreator<DialogueSubView, CreatorFactory<ReferenceCreator> > (false));
|
new CSVDoc::SubViewFactoryWithCreator<DialogueSubView, ReferenceCreatorFactory> (false));
|
||||||
|
|
||||||
manager.add (CSMWorld::UniversalId::Type_Cell,
|
manager.add (CSMWorld::UniversalId::Type_Cell,
|
||||||
new CSVDoc::SubViewFactoryWithCreator<DialogueSubView, CreatorFactory<CellCreator> > (false));
|
new CSVDoc::SubViewFactoryWithCreator<DialogueSubView, CreatorFactory<CellCreator> > (false));
|
||||||
|
|
Loading…
Reference in a new issue