ドキュメント

View Categories

ScaleLayerComponent

1 min read

ScaleLayerComponentはScaleBgLayerComponentとScaleComponentを組み合わせたコンポーネントです。

scale_layer_component.hpp

class ScaleLayerComponent : public Component
{
public:
  using SCALE = ScaleComponent::SCALE;
  using CTL = ScaleComponent::CTL;
  using SCALE_BG_LAYER = spa::gui::ScaleBgLayer<>;
  using Update = ScaleComponent::Update;

public:
	ScaleLayerComponent(
		MOD mod,
		unsigned char scale_bg_layer_bg_color_R,
		unsigned char scale_bg_layer_bg_color_G,
		unsigned char scale_bg_layer_bg_color_B,
		unsigned char scale_bg_layer_bg_color_A,
		FcComponent component
	);

  ~ScaleLayerComponent() = default;

	ScaleLayerComponent(ScaleLayerComponent const&);
	ScaleLayerComponent& operator=(ScaleLayerComponent const&);

  SCALE* get();

  std::function<void(CTL*)> update();

  void configure();

private:
  std::unique_ptr<ScaleComponent> scale;
  std::unique_ptr<ScaleBgLayerComponent> scale_bg_layer;
  FcComponent component;
};


scaleとscale_bg_layerを指定します。スケールするコンポーネントを指定します。

scale_layer_component.cpp

void ScaleLayerComponent::configure()
{
  attach(scale_bg_layer.get());
  scale_bg_layer->attach(scale.get());
  scale->attach(component());
}


ScaleComponentとScaleBgLayerComponentの使い方の参考になります。

※2026/1/28 非推奨 ScrollBoxComponentを使うとCaptureComponentと組み合わせが容易になります。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です