File: ObjectPreview.h

package info (click to toggle)
codelite 14.0%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 112,816 kB
  • sloc: cpp: 483,662; ansic: 150,144; php: 9,569; lex: 4,186; python: 3,417; yacc: 2,820; sh: 1,147; makefile: 52; xml: 13
file content (41 lines) | stat: -rw-r--r-- 1,392 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#ifndef OBJECTPREVIEW_H
#define OBJECTPREVIEW_H

#include "nSerializableObject.h"
#include <vector>

class PropertyPreview;
class ObjectPreview : public nSerializableObject
{
    wxString m_type;
    wxString m_subtype;
    wxString m_description;
    bool m_overflow = false;
    std::vector<PropertyPreview*> m_properties;

protected:
    void DeleteProperties();

public:
    virtual void FromJSON(const JSONItem& json);
    virtual JSONItem ToJSON(const wxString& name) const;

    ObjectPreview();
    virtual ~ObjectPreview();
    
    bool IsEmpty() const { return m_type.IsEmpty(); }
    
    void SetDescription(const wxString& description) { this->m_description = description; }
    void SetOverflow(bool overflow) { this->m_overflow = overflow; }
    void SetProperties(const std::vector<PropertyPreview*>& properties) { this->m_properties = properties; }
    void SetSubtype(const wxString& subtype) { this->m_subtype = subtype; }
    void SetType(const wxString& type) { this->m_type = type; }
    const wxString& GetDescription() const { return m_description; }
    bool IsOverflow() const { return m_overflow; }
    const std::vector<PropertyPreview*>& GetProperties() const { return m_properties; }
    const wxString& GetSubtype() const { return m_subtype; }
    const wxString& GetType() const { return m_type; }
    wxString ToString() const;
};

#endif // OBJECTPREVIEW_H