15fede72eSopenharmony_ci/*
25fede72eSopenharmony_ci * Copyright (c) 2020 Huawei Device Co., Ltd.
35fede72eSopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
45fede72eSopenharmony_ci * you may not use this file except in compliance with the License.
55fede72eSopenharmony_ci * You may obtain a copy of the License at
65fede72eSopenharmony_ci *
75fede72eSopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
85fede72eSopenharmony_ci *
95fede72eSopenharmony_ci * Unless required by applicable law or agreed to in writing, software
105fede72eSopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
115fede72eSopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
125fede72eSopenharmony_ci * See the License for the specific language governing permissions and
135fede72eSopenharmony_ci * limitations under the License.
145fede72eSopenharmony_ci */
155fede72eSopenharmony_ci
165fede72eSopenharmony_ci#ifndef OHOS_PICTURE_ABILITY_SLICE_H
175fede72eSopenharmony_ci#define OHOS_PICTURE_ABILITY_SLICE_H
185fede72eSopenharmony_ci
195fede72eSopenharmony_ci#include <ability_loader.h>
205fede72eSopenharmony_ci#include "components/ui_image_view.h"
215fede72eSopenharmony_ci#include "components/ui_view_group.h"
225fede72eSopenharmony_ci#include "event_listener.h"
235fede72eSopenharmony_ci#include "gallery_config.h"
245fede72eSopenharmony_ci
255fede72eSopenharmony_cinamespace OHOS {
265fede72eSopenharmony_ciclass PictureAbilitySlice : public AbilitySlice {
275fede72eSopenharmony_cipublic:
285fede72eSopenharmony_ci    ~PictureAbilitySlice() override;
295fede72eSopenharmony_ci
305fede72eSopenharmony_ciprotected:
315fede72eSopenharmony_ci    void OnStart(const Want &want) override;
325fede72eSopenharmony_ci    void OnInactive() override;
335fede72eSopenharmony_ci    void OnActive(const Want &want) override;
345fede72eSopenharmony_ci    void OnBackground() override;
355fede72eSopenharmony_ci    void OnStop() override;
365fede72eSopenharmony_ci
375fede72eSopenharmony_ciprivate:
385fede72eSopenharmony_ci    void Clear();
395fede72eSopenharmony_ci    void InitTitle();
405fede72eSopenharmony_ci    void InitPicture(const char* path);
415fede72eSopenharmony_ci
425fede72eSopenharmony_ci    RootView* rootView_ { nullptr };
435fede72eSopenharmony_ci    UIViewGroup* backArea_ { nullptr };
445fede72eSopenharmony_ci    UIImageView* backIcon_ { nullptr };
455fede72eSopenharmony_ci    EventListener* backIconListener_ { nullptr };
465fede72eSopenharmony_ci    UIImageView* picture_ { nullptr };
475fede72eSopenharmony_ci    char backIconAbsolutePath[MAX_PATH_LENGTH] = { 0 };
485fede72eSopenharmony_ci};
495fede72eSopenharmony_ci}
505fede72eSopenharmony_ci
515fede72eSopenharmony_ci#endif // OHOS_PICTURE_ABILITY_SLICE_H