Fix typos in src/App
This commit is contained in:
@@ -141,14 +141,14 @@ public:
|
||||
/** Setup a pending application-wide active transaction
|
||||
*
|
||||
* @param name: new transaction name
|
||||
* @param persist: by default, if the calling code is inside any invokation
|
||||
* @param persist: by default, if the calling code is inside any invocation
|
||||
* of a command, it will be auto closed once all command within the current
|
||||
* stack exists. To disable auto closing, set persist=true
|
||||
*
|
||||
* @return The new transaction ID.
|
||||
*
|
||||
* Call this function to setup an application-wide transaction. All current
|
||||
* pending transactions of opening documents will be commited first.
|
||||
* pending transactions of opening documents will be committed first.
|
||||
* However, no new transaction is created by this call. Any subsequent
|
||||
* changes in any current opening document will auto create a transaction
|
||||
* with the given name and ID. If more than one document is changed, the
|
||||
@@ -163,7 +163,7 @@ public:
|
||||
*
|
||||
* Bsides calling this function directly, it will be called by automatically
|
||||
* if 1) any new transaction is created with a different ID, or 2) any
|
||||
* transaction with the current active transaction ID is either commited or
|
||||
* transaction with the current active transaction ID is either committed or
|
||||
* aborted
|
||||
*/
|
||||
void closeActiveTransaction(bool abort=false, int id=0);
|
||||
@@ -575,11 +575,11 @@ private:
|
||||
void* operator new(size_t size);
|
||||
|
||||
public:
|
||||
/** Construtor
|
||||
/** Constructor
|
||||
*
|
||||
* @param name: optional new transaction name on construction
|
||||
* @param tmpName: if true and a new transaction is setup, the name given is
|
||||
* considered as temperary, and subsequent construction of this class (or
|
||||
* considered as temporary, and subsequent construction of this class (or
|
||||
* calling Application::setActiveTransaction()) can override the transaction
|
||||
* name.
|
||||
*
|
||||
@@ -609,7 +609,7 @@ public:
|
||||
|
||||
/** Enable/Disable any AutoTransaction instance in the current stack
|
||||
*
|
||||
* Once disabled, any empty temperary named transaction is closed. If there
|
||||
* Once disabled, any empty temporary named transaction is closed. If there
|
||||
* are non-empty or non-temperary named active transaction, it will not be
|
||||
* auto closed.
|
||||
*
|
||||
|
||||
@@ -161,8 +161,8 @@ PyMethodDef Application::Methods[] = {
|
||||
{"setActiveTransaction", (PyCFunction) Application::sSetActiveTransaction, METH_VARARGS,
|
||||
"setActiveTransaction(name, persist=False) -- setup active transaction with the given name\n\n"
|
||||
"name: the transaction name\n"
|
||||
"persist(False): by default, if the calling code is inside any invokation of a command, it\n"
|
||||
" will be auto closed once all command within the current stack exists. To\n"
|
||||
"persist(False): by default, if the calling code is inside any invocation of a command, it\n"
|
||||
" will be auto closed once all commands within the current stack exists. To\n"
|
||||
" disable auto closing, set persist=True\n"
|
||||
"Returns the transaction ID for the active transaction. An application-wide\n"
|
||||
"active transaction causes any document changes to open a transaction with\n"
|
||||
|
||||
@@ -158,9 +158,9 @@ public:
|
||||
|
||||
/** @name Element name mapping */
|
||||
//@{
|
||||
/// Sepecial prefix to mark the begining of a mapped sub-element name
|
||||
/// Special prefix to mark the beginning of a mapped sub-element name
|
||||
static const std::string &elementMapPrefix();
|
||||
/// Sepecial postfix to mark the following tag
|
||||
/// Special postfix to mark the following tag
|
||||
static const std::string &tagPostfix();
|
||||
/// Speical postfix to mark the index of an array element
|
||||
static const std::string &indexPostfix();
|
||||
@@ -176,7 +176,7 @@ public:
|
||||
*/
|
||||
static const char *isMappedElement(const char *name);
|
||||
|
||||
/// Strip out the trailing element name if there is mapped element name preceeds it.
|
||||
/// Strip out the trailing element name if there is mapped element name precedes it.
|
||||
static std::string newElementName(const char *name);
|
||||
/// Strip out the mapped element name if there is one.
|
||||
static std::string oldElementName(const char *name);
|
||||
|
||||
@@ -191,7 +191,7 @@ struct DocumentP
|
||||
static std::random_device _RD;
|
||||
static std::mt19937 _RGEN(_RD());
|
||||
static std::uniform_int_distribution<> _RDIST(0,5000);
|
||||
// Set some random offset to reduce likelyhood of ID collison when
|
||||
// Set some random offset to reduce likelihood of ID collison when
|
||||
// copying shape from other document. It is probably better to randomize
|
||||
// on each object ID.
|
||||
lastObjectId = _RDIST(_RGEN);
|
||||
@@ -2131,7 +2131,7 @@ static std::string checkFileName(const char *file) {
|
||||
std::string fn(file);
|
||||
|
||||
// Append extension if missing. This option is added for security reason, so
|
||||
// that the user won't accidently overwrite other file that may be critical.
|
||||
// that the user won't accidentally overwrite other file that may be critical.
|
||||
if(App::GetApplication().GetParameterGroupByPath
|
||||
("User parameter:BaseApp/Preferences/Document")->GetBool("CheckExtension",true))
|
||||
{
|
||||
@@ -3990,7 +3990,7 @@ Document::importLinks(const std::vector<App::DocumentObject*> &objArray)
|
||||
|
||||
// Then change them in one go. Note that we don't make change in previous
|
||||
// loop, because a changed link property may break other depending link
|
||||
// properties, e.g. a link sub refering to some sub object of an xlink, If
|
||||
// properties, e.g. a link sub referring to some sub object of an xlink, If
|
||||
// that sub object is imported with a different name, and xlink is changed
|
||||
// before this link sub, it will break.
|
||||
for(auto &v : propMap)
|
||||
@@ -4029,7 +4029,7 @@ DocumentObject* Document::moveObject(DocumentObject* obj, bool recursive)
|
||||
if(objs.empty())
|
||||
return 0;
|
||||
// Some object may delete its children if deleted, so we collect the IDs
|
||||
// or all depdending objects for saftey reason.
|
||||
// or all depdending objects for safety reason.
|
||||
std::vector<int> ids;
|
||||
ids.reserve(deps.size());
|
||||
for(auto o : deps)
|
||||
|
||||
@@ -348,7 +348,7 @@ public:
|
||||
* transactions, meaning that there are other transactions before the given
|
||||
* ID. The Gui component shall ask user if he wants to undo multiple steps.
|
||||
* And if the user agrees, call undo(id) to unroll all transaction before
|
||||
* and including the the one with the give ID. Same apllies for redo.
|
||||
* and including the the one with the give ID. Same applies for redo.
|
||||
*
|
||||
* The new transaction ID describe here is fully backward compatible.
|
||||
* Calling the APIs with a default id=0 gives the original behavior.
|
||||
@@ -432,7 +432,7 @@ public:
|
||||
*
|
||||
* This function is defined as static because it accpets objects from
|
||||
* different documents, and the returned list will contain dependent
|
||||
* objects from all relavent documents
|
||||
* objects from all relevant documents
|
||||
*
|
||||
* @param objs: input objects to query for dependency.
|
||||
* @param options: See DependencyOption
|
||||
|
||||
@@ -407,7 +407,7 @@ void DocumentObject::getInListEx(std::set<App::DocumentObject*> &inSet,
|
||||
if(v.first == obj) continue;
|
||||
auto &outList = v.second;
|
||||
// Check the outList to see if the object is there, and pend the
|
||||
// object for recrusive check if it's not already in the inList
|
||||
// object for recursive check if it's not already in the inList
|
||||
if(outList.find(obj)!=outList.end() &&
|
||||
inSet.insert(v.first).second &&
|
||||
recursive)
|
||||
@@ -1016,7 +1016,7 @@ DocumentObject *DocumentObject::resolve(const char *subname,
|
||||
if(!parent && !subElement)
|
||||
return obj;
|
||||
|
||||
// NOTE, the convension of '.' separated SubName demands a mandatory ending
|
||||
// NOTE, the convention of '.' separated SubName demands a mandatory ending
|
||||
// '.' for each object name in SubName, even if there is no subelement
|
||||
// following it. So finding the last dot will give us the end of the last
|
||||
// object name.
|
||||
|
||||
@@ -175,14 +175,14 @@ public:
|
||||
* For performance reason, \c element must not contain any further
|
||||
* sub-elements, i.e. there should be no '.' inside \c element.
|
||||
*
|
||||
* @return -1 if element visiblity is not supported, 0 if element is not
|
||||
* @return -1 if element visibility is not supported, 0 if element is not
|
||||
* found, 1 if success
|
||||
*/
|
||||
virtual int setElementVisible(const char *element, bool visible);
|
||||
|
||||
/** Get sub-element visibility
|
||||
*
|
||||
* @return -1 if element visiblity is not supported or element not found, 0
|
||||
* @return -1 if element visibility is not supported or element not found, 0
|
||||
* if element is invisible, or else 1
|
||||
*/
|
||||
virtual int isElementVisible(const char *element) const;
|
||||
@@ -329,7 +329,7 @@ public:
|
||||
*
|
||||
* @param depth: depth limitation as hint for cyclic link detection
|
||||
*
|
||||
* @return The last document object refered in subname. If subname is empty,
|
||||
* @return The last document object referred in subname. If subname is empty,
|
||||
* then it shall return itself. If subname is invalid, then it shall return
|
||||
* zero.
|
||||
*/
|
||||
@@ -447,13 +447,13 @@ public:
|
||||
/** Resolve a link reference that is relative to this object reference
|
||||
*
|
||||
* @param subname: on input, this is the subname reference to the object
|
||||
* that is to be assigned a link. On output, the reference may be offseted
|
||||
* that is to be assigned a link. On output, the reference may be offsetted
|
||||
* to be rid off any common parent.
|
||||
* @param link: on input, this is the top parent of the link reference. On
|
||||
* output, it may be altered to one of its child to be rid off any common
|
||||
* parent.
|
||||
* @param linkSub: on input, this the subname of the link reference. On
|
||||
* output, it may be offseted to be rid off any common parent.
|
||||
* output, it may be offsetted to be rid off any common parent.
|
||||
*
|
||||
* @return The corrected top parent of the object that is to be assigned the
|
||||
* link. If the output 'subname' is empty, then return the object itself.
|
||||
@@ -534,7 +534,7 @@ public:
|
||||
virtual bool redirectSubName(std::ostringstream &ss,
|
||||
DocumentObject *topParent, DocumentObject *child) const;
|
||||
|
||||
/** Sepecial marker to mark the object as hidden
|
||||
/** Special marker to mark the object as hidden
|
||||
*
|
||||
* It is used by Gui::ViewProvider::getElementColors(), but exposed here
|
||||
* for convenience
|
||||
|
||||
@@ -71,7 +71,7 @@ referencing subobject.
|
||||
* retType: return type, 0=PyObject, 1=DocObject, 2=DocAndPyObject, 3=Placement
|
||||
|
||||
PyObject: return a python binding object for the (sub)object referenced in
|
||||
each 'subname' The actual type of 'PyObject' is impelementation dependent.
|
||||
each 'subname' The actual type of 'PyObject' is implementation dependent.
|
||||
For Part::Feature compatible objects, this will be of type TopoShapePy and
|
||||
pre-transformed by accumulated transformation matrix along the object path.
|
||||
|
||||
@@ -111,11 +111,11 @@ Return a list of objects referenced by a given subname including this object
|
||||
getLinkedObject(recursive=True, matrix=None, transform=True, depth=0)
|
||||
Returns the linked object if there is one, or else return itself
|
||||
|
||||
* recusive: whether to recursively resolve the links
|
||||
* recursive: whether to recursively resolve the links
|
||||
|
||||
* transform: whether to transform the sub object using this object's placement
|
||||
|
||||
* matrix: If not none, this sepcifies the initial transformation to be applied
|
||||
* matrix: If not none, this specifies the initial transformation to be applied
|
||||
to the sub object. And cause the method to return a tuple (object, matrix)
|
||||
containing the accumulated transformation matrix
|
||||
|
||||
@@ -181,7 +181,7 @@ non-object sub-element name if any.
|
||||
<UserDocu>
|
||||
resolveSubElement(subname,append,type) -- resolve both new and old style sub element
|
||||
|
||||
subname: subname reference contianing object hierarchy
|
||||
subname: subname reference containing object hierarchy
|
||||
append: Whether to append object hierarchy prefix inside subname to returned element name
|
||||
type: 0: normal, 1: for import, 2: for export
|
||||
|
||||
|
||||
@@ -697,7 +697,7 @@ PyObject* DocumentObjectPy::getPathsByOutList(PyObject *args)
|
||||
|
||||
PyObject *DocumentObjectPy::getCustomAttributes(const char* attr) const
|
||||
{
|
||||
// Dynamic proeprty is now directly supported in PropertyContainer. So we
|
||||
// Dynamic property is now directly supported in PropertyContainer. So we
|
||||
// can comment out here and let PropertyContainerPy handle it.
|
||||
#if 1
|
||||
(void)attr;
|
||||
@@ -714,7 +714,7 @@ PyObject *DocumentObjectPy::getCustomAttributes(const char* attr) const
|
||||
int DocumentObjectPy::setCustomAttributes(const char* attr, PyObject *obj)
|
||||
{
|
||||
// The following code is practically the same as in PropertyContainerPy,
|
||||
// especially since now dynamic proeprty is directly supported in
|
||||
// especially since now dynamic property is directly supported in
|
||||
// PropertyContainer. So we can comment out here and let PropertyContainerPy
|
||||
// handle it.
|
||||
#if 1
|
||||
|
||||
@@ -260,9 +260,9 @@ class FCADLogger(object):
|
||||
The default output format is:
|
||||
<timestamp> <tag> <source file>(line number): message
|
||||
|
||||
The message is formated using new style Python string formating, e.g.
|
||||
'test {}'.format(1). It is strongly recommanded to not directly use
|
||||
Python string formating, but pass additional argument indirectly through
|
||||
The message is formatted using new style Python string formatting, e.g.
|
||||
'test {}'.format(1). It is strongly recommended to not directly use
|
||||
Python string formatting, but pass additional argument indirectly through
|
||||
various logger print function, because the logger can skip string
|
||||
evaluation in case the logging level is disabled. For more options,
|
||||
please consult the docstring of __init__(), catch() and report().
|
||||
@@ -285,7 +285,7 @@ class FCADLogger(object):
|
||||
you to define your own levels. The level set is persisted to user
|
||||
configuration file.
|
||||
|
||||
By defult any tag has a log level of 2 for release, and 3 for debug
|
||||
By default any tag has a log level of 2 for release, and 3 for debug
|
||||
build.
|
||||
'''
|
||||
|
||||
@@ -325,7 +325,7 @@ class FCADLogger(object):
|
||||
|
||||
* lineno (True): whether to print source file and line number
|
||||
|
||||
* parent (None): provide a parent logger, so that the log printting will
|
||||
* parent (None): provide a parent logger, so that the log printing will
|
||||
check for parent's log level in addition of its own
|
||||
|
||||
* title ('FreeCAD'): message box title used by report()
|
||||
@@ -363,8 +363,8 @@ class FCADLogger(object):
|
||||
|
||||
This function accepts additional positional and keyword arguments,
|
||||
which are forward to string.format() to generate the logging
|
||||
message. It is strongly recommanded to not directly use Python
|
||||
string formating, but pass additional arguments here, because the
|
||||
message. It is strongly recommended to not directly use Python
|
||||
string formatting, but pass additional arguments here, because the
|
||||
printer can skip string evaluation in case the logging level is
|
||||
disabled.
|
||||
'''
|
||||
@@ -379,8 +379,8 @@ class FCADLogger(object):
|
||||
|
||||
This function accepts additional positional and keyword arguments,
|
||||
which are forward to string.format() to generate the logging
|
||||
message. It is strongly recommanded to not directly use Python
|
||||
string formating, but pass additional arguments here, because the
|
||||
message. It is strongly recommended to not directly use Python
|
||||
string formatting, but pass additional arguments here, because the
|
||||
printer can skip string evaluation in case the logging level is
|
||||
disabled.
|
||||
'''
|
||||
@@ -395,8 +395,8 @@ class FCADLogger(object):
|
||||
|
||||
This function accepts additional positional and keyword arguments,
|
||||
which are forward to string.format() to generate the logging
|
||||
message. It is strongly recommanded to not directly use Python
|
||||
string formating, but pass additional arguments here, because the
|
||||
message. It is strongly recommended to not directly use Python
|
||||
string formatting, but pass additional arguments here, because the
|
||||
printer can skip string evaluation in case the logging level is
|
||||
disabled.
|
||||
'''
|
||||
@@ -413,8 +413,8 @@ class FCADLogger(object):
|
||||
|
||||
This function accepts additional positional and keyword arguments,
|
||||
which are forward to string.format() to generate the logging
|
||||
message. It is strongly recommanded to not directly use Python
|
||||
string formating, but pass additional arguments here, because the
|
||||
message. It is strongly recommended to not directly use Python
|
||||
string formatting, but pass additional arguments here, because the
|
||||
printer can skip string evaluation in case the logging level is
|
||||
disabled.
|
||||
'''
|
||||
@@ -431,8 +431,8 @@ class FCADLogger(object):
|
||||
|
||||
This function accepts additional positional and keyword arguments,
|
||||
which are forward to string.format() to generate the logging
|
||||
message. It is strongly recommanded to not directly use Python
|
||||
string formating, but pass additional arguments here, because the
|
||||
message. It is strongly recommended to not directly use Python
|
||||
string formatting, but pass additional arguments here, because the
|
||||
printer can skip string evaluation in case the logging level is
|
||||
disabled.
|
||||
'''
|
||||
|
||||
@@ -35,7 +35,7 @@ depending on the actual extension object underlying this python
|
||||
object.
|
||||
|
||||
If 'val' is omitted, i.e. calling configLinkProperty(key,...), then
|
||||
it is assumed the the actualy property name is the same as 'key'
|
||||
it is assumed the the actually property name is the same as 'key'
|
||||
</UserDocu>
|
||||
</Documentation>
|
||||
</Methode>
|
||||
@@ -109,7 +109,7 @@ Return an expanded subname in case it references an object inside a linked plain
|
||||
<CustomAttributes />
|
||||
<Attribute Name="LinkedChildren" ReadOnly="true">
|
||||
<Documentation>
|
||||
<UserDocu>Return a flattend (in case grouped by plain group) list of linked children</UserDocu>
|
||||
<UserDocu>Return a flattened (in case grouped by plain group) list of linked children</UserDocu>
|
||||
</Documentation>
|
||||
<Parameter Name="LinkedChildren" Type="List"/>
|
||||
</Attribute>
|
||||
|
||||
@@ -560,7 +560,7 @@ std::string ObjectIdentifier::getSubPathStr(bool toPython) const {
|
||||
* @brief Construct a Component part
|
||||
* @param _name Name of component
|
||||
* @param _type Type; simple, array, range or map
|
||||
* @param _begin Array index or begining of a Range, or INT_MAX for other type.
|
||||
* @param _begin Array index or beginning of a Range, or INT_MAX for other type.
|
||||
* @param _end ending of a Range, or INT_MAX for other type.
|
||||
*/
|
||||
|
||||
@@ -723,7 +723,7 @@ ObjectIdentifier::Component ObjectIdentifier::Component::MapComponent(String &&_
|
||||
|
||||
/**
|
||||
* @brief Create a range component with given begin and end.
|
||||
* @param _begin begining index of the range
|
||||
* @param _begin beginning index of the range
|
||||
* @param _end ending index of the range
|
||||
* @return A new Component object.
|
||||
*/
|
||||
|
||||
@@ -230,7 +230,7 @@ void PropertyListsBase::_setPyObject(PyObject *value) {
|
||||
#else
|
||||
if(!PyLong_Check(key))
|
||||
#endif
|
||||
throw Base::TypeError("expect key type to be interger");
|
||||
throw Base::TypeError("expect key type to be integer");
|
||||
auto idx = PyLong_AsLong(key);
|
||||
if(idx<-1 || idx>listSize)
|
||||
throw Base::RuntimeError("index out of bound");
|
||||
|
||||
@@ -155,7 +155,7 @@ public:
|
||||
/// Get valid paths for this property; used by auto completer
|
||||
virtual void getPaths(std::vector<App::ObjectIdentifier> & paths) const;
|
||||
|
||||
/** Called at the begining of Document::afterRestore()
|
||||
/** Called at the beginning of Document::afterRestore()
|
||||
*
|
||||
* This function is called without dependency sorting, because some
|
||||
* types of link property can only reconstructs the linking information
|
||||
@@ -170,7 +170,7 @@ public:
|
||||
* restored expression in afterRestore(). The reason, in addition to
|
||||
* subname mapping like PropertyLinkSub, is that it can handle document
|
||||
* name adjustment as well. It internally relies on PropertyXLink to store
|
||||
* the external document path for external linking. When the extenal
|
||||
* the external document path for external linking. When the external
|
||||
* document is restored, its internal name may change due to name conflict
|
||||
* with existing documents. PropertyExpressionEngine can now auto adjust
|
||||
* external references without any problem.
|
||||
@@ -180,7 +180,7 @@ public:
|
||||
/** Called before calling DocumentObject::onDocumentRestored()
|
||||
*
|
||||
* This function is called after finished calling Property::afterRestore()
|
||||
* of all properies of objects. By then, the object dependency information
|
||||
* of all properties of objects. By then, the object dependency information
|
||||
* is assumed ready. So, unlike Property::afterRestore(), this function is
|
||||
* called on objects with dependency order.
|
||||
*/
|
||||
@@ -292,7 +292,7 @@ private:
|
||||
* AtomicPropertyChange::aboutToChange() before actual change, this enables you
|
||||
* to prevent unnecessary property copy for undo/redo where there is actual
|
||||
* changes. AtomicPropertyChange will guaranetee calling hasSetValue() when the
|
||||
* last instance in the current call stack is destroied.
|
||||
* last instance in the current call stack is destroyed.
|
||||
*
|
||||
* One thing to take note is that, because C++ does not allow throwing
|
||||
* exception in destructor, any exception thrown when calling property's
|
||||
@@ -358,7 +358,7 @@ public:
|
||||
|
||||
/** Check and invoke property's hasSetValue()
|
||||
*
|
||||
* Check if this is the last instance and the proeprty has been marked
|
||||
* Check if this is the last instance and the property has been marked
|
||||
* as changed. If so, invoke property's hasSetValue().
|
||||
*/
|
||||
// Destructor cannot throw. So we provide this function to allow error
|
||||
|
||||
@@ -344,7 +344,7 @@ void PropertyContainer::Restore(Base::XMLReader &reader)
|
||||
&& !status.test(Property::PropTransient)
|
||||
&& !(getPropertyType(prop) & Prop_Transient))
|
||||
{
|
||||
FC_TRACE("restore proeprty '" << prop->getName() << "'");
|
||||
FC_TRACE("restore property '" << prop->getName() << "'");
|
||||
prop->Restore(reader);
|
||||
}else
|
||||
FC_TRACE("skip transient '" << prop->getName() << "'");
|
||||
|
||||
@@ -726,7 +726,7 @@ void PropertyExpressionEngine::setPyObject(PyObject *)
|
||||
|
||||
/* The policy implemented in the following function is to auto erase binding in
|
||||
* case linked object is gone. I think it is better to cause error and get
|
||||
* user's attension
|
||||
* user's attention
|
||||
*
|
||||
void PropertyExpressionEngine::breakLink(App::DocumentObject *obj, bool clear) {
|
||||
auto owner = dynamic_cast<App::DocumentObject*>(getContainer());
|
||||
|
||||
@@ -137,7 +137,7 @@ std::string PropertyLinkBase::updateLabelReference(const App::DocumentObject *pa
|
||||
return std::string();
|
||||
|
||||
// Because the label is allowed to be the same across different
|
||||
// hierarchy, we have to search for all occurance, and make sure the
|
||||
// hierarchies, we have to search for all occurrences, and make sure the
|
||||
// referenced sub-object at the found hierarchy is actually the given
|
||||
// object.
|
||||
for(const char *pos=subname; ((pos=strstr(pos,ref.c_str()))!=0); pos+=ref.size()) {
|
||||
@@ -235,7 +235,7 @@ void PropertyLinkBase::restoreLabelReference(const DocumentObject *obj,
|
||||
StringGuard guard(dot-1);
|
||||
sobj = obj->getSubObject(subname.c_str());
|
||||
if(!sobj) {
|
||||
FC_ERR("Failed to restore lable reference " << obj->getFullName()
|
||||
FC_ERR("Failed to restore label reference " << obj->getFullName()
|
||||
<< '.' << ss.str());
|
||||
return;
|
||||
}
|
||||
@@ -797,7 +797,7 @@ Property *PropertyLinkList::CopyOnLinkReplace(const App::DocumentObject *parent,
|
||||
links.push_back(res.first);
|
||||
} else if(*it == newObj) {
|
||||
// in case newObj already exists here, we shall remove all existing
|
||||
// entry, and instert it to take over oldObj's position.
|
||||
// entry, and insert it to take over oldObj's position.
|
||||
if(!copied) {
|
||||
copied = true;
|
||||
links.insert(links.end(),_lValueList.begin(),it);
|
||||
@@ -1251,7 +1251,7 @@ std::string PropertyLinkBase::tryImportSubName(const App::DocumentObject *obj, c
|
||||
StringGuard guard(dot);
|
||||
auto sobj = obj->getSubObject(subname.c_str());
|
||||
if(!sobj) {
|
||||
FC_ERR("Failed to restore lable reference " << obj->getFullName() << '.' << subname);
|
||||
FC_ERR("Failed to restore label reference " << obj->getFullName() << '.' << subname);
|
||||
return std::string();
|
||||
}
|
||||
dot[0] = 0;
|
||||
@@ -1305,7 +1305,7 @@ void PropertyLinkSub::Save (Base::Writer &writer) const
|
||||
const auto &shadow = _ShadowSubList[i];
|
||||
// shadow.second stores the old style element name. For backward
|
||||
// compatibility reason, we shall store the old name into attribute
|
||||
// 'value' whenver possible.
|
||||
// 'value' whenever possible.
|
||||
const auto &sub = shadow.second.empty()?_cSubList[i]:shadow.second;
|
||||
writer.Stream() << writer.ind() << "<Sub value=\"";
|
||||
if(exporting) {
|
||||
@@ -2082,7 +2082,7 @@ void PropertyLinkSubList::Save (Base::Writer &writer) const
|
||||
const auto &shadow = _ShadowSubList[i];
|
||||
// shadow.second stores the old style element name. For backward
|
||||
// compatibility reason, we shall store the old name into attribute
|
||||
// 'value' whenver possible.
|
||||
// 'value' whenever possible.
|
||||
const auto &sub = shadow.second.empty()?_lSubList[i]:shadow.second;
|
||||
|
||||
writer.Stream() << writer.ind() << "<Link obj=\"" << obj->getExportName() << "\" sub=\"";
|
||||
@@ -2429,7 +2429,7 @@ bool PropertyLinkSubList::adjustLink(const std::set<App::DocumentObject*> &inLis
|
||||
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
// Key on aboslute path.
|
||||
// Becuase of possible symbolic links, multiple entry may refer to the same
|
||||
// Because of possible symbolic links, multiple entry may refer to the same
|
||||
// file. We use QFileInfo::canonicalPath to resolve that.
|
||||
typedef std::map<QString,DocInfoPtr> DocInfoMap;
|
||||
DocInfoMap _DocInfoMap;
|
||||
@@ -3154,7 +3154,7 @@ void PropertyXLink::Save (Base::Writer &writer) const {
|
||||
const auto &shadow = _ShadowSubList[i];
|
||||
// shadow.second stores the old style element name. For backward
|
||||
// compatibility reason, we shall store the old name into attribute
|
||||
// 'value' whenver possible.
|
||||
// 'value' whenever possible.
|
||||
const auto &sub = shadow.second.empty()?_SubList[i]:shadow.second;
|
||||
writer.Stream() << writer.ind() << "<Sub value=\"";
|
||||
if(exporting) {
|
||||
@@ -3342,7 +3342,7 @@ Property *PropertyXLink::Copy(void) const
|
||||
void PropertyXLink::Paste(const Property &from)
|
||||
{
|
||||
if(!from.isDerivedFrom(PropertyXLink::getClassTypeId()))
|
||||
throw Base::TypeError("Incompatible proeprty to paste to");
|
||||
throw Base::TypeError("Incompatible property to paste to");
|
||||
|
||||
const auto &other = static_cast<const PropertyXLink&>(from);
|
||||
if(other.docName.size()) {
|
||||
@@ -4077,7 +4077,7 @@ Property *PropertyXLinkSubList::Copy(void) const
|
||||
void PropertyXLinkSubList::Paste(const Property &from)
|
||||
{
|
||||
if(!from.isDerivedFrom(PropertyXLinkSubList::getClassTypeId()))
|
||||
throw Base::TypeError("Incompatible proeprty to paste to");
|
||||
throw Base::TypeError("Incompatible property to paste to");
|
||||
|
||||
aboutToSetValue();
|
||||
_Links.clear();
|
||||
@@ -4484,4 +4484,3 @@ void PropertyXLinkContainer::getLinks(std::vector<App::DocumentObject *> &objs,
|
||||
{
|
||||
objs.insert(objs.end(),_Deps.begin(),_Deps.end());
|
||||
}
|
||||
|
||||
|
||||
@@ -135,15 +135,15 @@ public:
|
||||
/** Register label reference for future object relabel update
|
||||
*
|
||||
* @param labels: labels to be registered
|
||||
* @param reset: if ture, then calls unregisterLabelReference() before
|
||||
* @param reset: if true, then calls unregisterLabelReference() before
|
||||
* registering
|
||||
*/
|
||||
void registerLabelReferences(std::vector<std::string> &&labels, bool reset=true);
|
||||
|
||||
/** Check subnames for label registeration
|
||||
/** Check subnames for label registration
|
||||
*
|
||||
* @param subs: subname references
|
||||
* @param reset: if ture, then calls unregisterLabelReference() before
|
||||
* @param reset: if true, then calls unregisterLabelReference() before
|
||||
* registering
|
||||
*
|
||||
* Check the give subname references and extract any label reference
|
||||
@@ -186,7 +186,7 @@ public:
|
||||
/** Called to reset this link property
|
||||
*
|
||||
* @param obj: reset link property if it is linked to this object
|
||||
* @param clear: if true, then also reset property if the owner of this proeprty is \a obj
|
||||
* @param clear: if true, then also reset property if the owner of this property is \a obj
|
||||
*
|
||||
* @sa breakLinks()
|
||||
*/
|
||||
@@ -324,7 +324,7 @@ public:
|
||||
const App::DocumentObject *parent, App::DocumentObject *oldObj,
|
||||
App::DocumentObject *newObj, const char *sub=0);
|
||||
|
||||
/** Helper function to check and replace a link with multiple subname refereces
|
||||
/** Helper function to check and replace a link with multiple subname references
|
||||
*
|
||||
* @param owner: the owner of the current property
|
||||
* @param obj: the current linked object
|
||||
@@ -385,7 +385,7 @@ public:
|
||||
*
|
||||
* @param link: reset link property if it is linked to this object
|
||||
* @param objs: the objects to check for the link properties
|
||||
* @param clear: if ture, then also reset property if the owner of the link property is \a link
|
||||
* @param clear: if true, then also reset property if the owner of the link property is \a link
|
||||
*
|
||||
* App::Document::breakDependency() calls this function to break the link property
|
||||
*/
|
||||
@@ -495,7 +495,7 @@ public:
|
||||
*
|
||||
* @sa registerLabelReferences()
|
||||
*
|
||||
* This function is used to extrac label from subname reference for
|
||||
* This function is used to extract label from subname reference for
|
||||
* registering of label changes.
|
||||
*/
|
||||
static void getLabelReferences(std::vector<std::string> &labels, const char *subname);
|
||||
|
||||
Reference in New Issue
Block a user