Generated reference › API — ICoreSDK/ICoreStudio/StudioObjects/Panels/CodeExportPanels
kind: generated#api#icoresdk-icorestudio-studioobjects-panels-codeexportpanels

API — ICoreSDK/ICoreStudio/StudioObjects/Panels/CodeExportPanels

The public contract of 8 header(s) under src/ICoreSDK/ICoreStudio/StudioObjects/Panels/CodeExportPanels — 8 class/struct definition(s), 40 declaration(s). Each section shows the header's banner and its public (and protected-virtual) surface exactly as the file writes it.

ICoreCodeEngineHost.h#

src/ICoreSDK/ICoreStudio/StudioObjects/Panels/CodeExportPanels/ICoreCodeEngineHost.h

ICoreCodeEngineHost#

ICoreCodeEngineHost.h:20 · class · 1 declaration(s)

ICoreCodeEngineHost -- the studio side of ICoreCodeEngine's host services.

class ICoreCodeEngineHost {
public:
    static void installEngineHostServices();
};
};

ICoreCodeExportTargetSection.h#

src/ICoreSDK/ICoreStudio/StudioObjects/Panels/CodeExportPanels/ICoreCodeExportTargetSection.h

ICoreCodeExportTargetSection#

ICoreCodeExportTargetSection.h:34 · class · final · bases public ICoreWidget · pImpl · 7 declaration(s)

One deploy target, as a collapsable section.

class ICoreCodeExportTargetSection final : public ICoreWidget {
public:
    // onDeployRequested fires when this one target's Deploy button is hit; the
    // panel owns the job gate and the progress reporting, so the section only
    // asks.
    explicit ICoreCodeExportTargetSection(ICoreWidget* parent, ICoreCodeExportTarget* target,
                                          std::function<void()> onToggled,
                                          std::function<void()> onDeployRequested);

    void setCollapsed(bool collapsed);
    [[nodiscard]] bool isCollapsed() const;

    // Re-reads the header strip (language icon, name, source -> path summary) and
    // the search key from the target, without touching a single widget's
    // lifetime. This is what a field edit calls: editing a field changes what a
    // section SAYS, never which sections exist, so it must not go through the
    // panel's full rebuild -- see ICoreDeployToHardwarePanel::clearSections().
    void refreshFromTarget();

    [[nodiscard]] ICoreCodeExportTarget* getTarget() const;

    // Lower cased name + language + source + path, for the panel's search bar.
    [[nodiscard]] ICoreString getSearchKey() const;

    ~ICoreCodeExportTargetSection() override;

private:
    class Impl;                    // the two-line residue; state lives here
    std::unique_ptr<Impl> impl;
};

ICoreCodeExportTargetViewElements.h#

src/ICoreSDK/ICoreStudio/StudioObjects/Panels/CodeExportPanels/ICoreCodeExportTargetViewElements.h

ICoreCodeExportTargetViewElements#

ICoreCodeExportTargetViewElements.h:19 · class · pImpl · 14 declaration(s)

The editable fields of one deploy target.

class ICoreCodeExportTargetViewElements {
public:
    explicit ICoreCodeExportTargetViewElements(ICoreCodeExportTarget* parentTarget);

    ICoreWidget* getDeleteButtonContainer() const;
    ICoreButton* getDeleteButton() const;
    ICoreWidget* getTargetNameContainer() const;
    ICoreLineEdit *getTargetNameLineEdit() const;
    ICoreWidget* getLanguageContainer() const;
    ICoreComboBox* getLanguageComboBox() const;
    ICoreWidget* getSourceSubsystemContainer() const;
    ICoreLineEdit* getSourceSubsystemLineEdit() const;
    ICoreWidget* getTargetPathContainer() const;
    ICoreLineEdit* getTargetPathLineEdit() const;
    ICoreWidget* getVerificationLevelContainer() const;
    ICoreComboBox* getVerificationLevelComboBox() const;

    ~ICoreCodeExportTargetViewElements();

private:
    class Impl;                    // the two-line residue; state lives here
    std::unique_ptr<Impl> impl;
};

ICoreCodeExportVerifierView.h#

src/ICoreSDK/ICoreStudio/StudioObjects/Panels/CodeExportPanels/ICoreCodeExportVerifierView.h

ICoreCodeExportVerifierView#

ICoreCodeExportVerifierView.h:18 · class · bases public ICoreWidget · pImpl · 5 declaration(s)

class ICoreCodeExportVerifierView : public ICoreWidget {
public:
    explicit ICoreCodeExportVerifierView(ICoreCodeExportVerifier* parentVerifier, ICoreWidget* parent = nullptr);
    ~ICoreCodeExportVerifierView() override;

    void reloadAllExportTargets();

    void addCodeExportTarget(ICoreCodeExportTarget *target);

    void verifyAllTargets();

private:
    class Impl;                    // the two-line residue; state lives here
    std::unique_ptr<Impl> impl;
};

ICoreCodeTypeIcons.h#

src/ICoreSDK/ICoreStudio/StudioObjects/Panels/CodeExportPanels/ICoreCodeTypeIcons.h

ICoreCodeTypeIcons#

ICoreCodeTypeIcons.h:19 · class · 1 declaration(s)

ICoreCodeTypeIcons -- the icon for each of ICoreCodeEngine's code types.

class ICoreCodeTypeIcons {
public:
    // A null icon (and a logged error) for an unrecognised code type, which is
    // what the engine's version returned.
    static ICoreIcon forCodeType(const std::string& codeType);
};
};

ICoreDeployToHardwarePanel.h#

src/ICoreSDK/ICoreStudio/StudioObjects/Panels/CodeExportPanels/ICoreDeployToHardwarePanel.h

Rebuilds the section list from scratch. For target creation/deletion only: it destroys every section widget, so it must never run from inside an event handler belonging to one of them.

ICoreDeployToHardwarePanel#

ICoreDeployToHardwarePanel.h:20 · class · final · bases public ICoreWidget · pImpl · 6 declaration(s)

class ICoreDeployToHardwarePanel final : public ICoreWidget {
public:
    explicit ICoreDeployToHardwarePanel(ICoreWidget* parent = nullptr);

    // Rebuilds the section list from scratch. For target creation/deletion only:
    // it destroys every section widget, so it must never run from inside an event
    // handler belonging to one of them.
    void refreshFromCodeEngineTargets();

    // The non-destructive refresh, for when a target's DATA changed but the set
    // of targets did not -- i.e. every field edit. Updates the header strips in
    // place and leaves widget lifetimes alone.
    void refreshTargetSummaries() const;

    // ====================[Live panels]======================
    // This registry used to live on ICoreCodeEngine, which meant the engine held
    // a list of widgets and called methods on them. It belongs here: the engine
    // now only announces that its targets changed (its TargetsChangedListener,
    // wired up in ICoreCodeEngineHost) and this class decides what that means
    // for the panels on screen.
    //
    // refreshAllPanels() rebuilds every section list, so it carries the same
    // warning as refreshFromCodeEngineTargets(): never call it from inside a
    // handler owned by one of the widgets it destroys. refreshAllSummaries() is
    // the safe-from-anywhere form, which is why field edits use it.
    static void refreshAllPanels();
    static void refreshAllSummaries();

    ~ICoreDeployToHardwarePanel() override;

private:
    class Impl;                    // the two-line residue; state lives here
    std::unique_ptr<Impl> impl;
};

ICoreEngineTemplatesEditor.h#

src/ICoreSDK/ICoreStudio/StudioObjects/Panels/CodeExportPanels/ICoreEngineTemplatesEditor.h

ICoreEngineTemplatesEditor#

ICoreEngineTemplatesEditor.h:10 · class · final · bases public ICoreDecoratedWindow · pImpl · 2 declaration(s)

class ICoreEngineTemplatesEditor final : public ICoreDecoratedWindow {
public:
    explicit ICoreEngineTemplatesEditor();

    ~ICoreEngineTemplatesEditor() override;

private:
    class Impl;                    // the two-line residue; state lives here
    std::unique_ptr<Impl> impl;
};

ICoreTargetVerificationView.h#

src/ICoreSDK/ICoreStudio/StudioObjects/Panels/CodeExportPanels/ICoreTargetVerificationView.h

ICoreTargetVerificationView#

ICoreTargetVerificationView.h:21 · class · bases public ICoreWidget · pImpl · 4 declaration(s)

class ICoreTargetVerificationView : public ICoreWidget {
public:
    explicit ICoreTargetVerificationView(ICoreCodeExportTarget* target,
                                         ICoreWidget* parent = nullptr);
    ~ICoreTargetVerificationView() override;

    void runVerification();                 // kick off async verification (returns immediately)
    ICoreButton* getVerifyButton() const;   // so the UI can drive "verify all"
    bool isBusy() const;

    // Outcome of the most recent completed run (cleared on cancel; unset before the first run).
    bool hasVerificationResult() const;   // a comparable result was produced
    bool metTolerance() const;           // passed AND within the % tolerance
    void resetVerificationOutcome();

    ICoreSignal<> verificationFinished;     // raised on the GUI thread when a run completes

private:
    class Impl;                    // the two-line residue; state lives here
    std::unique_ptr<Impl> impl;
};