${CMAKE_CURRENT_SOURCE_DIR}/nativeui/record/src/RecordGoingView.cpp
${CMAKE_CURRENT_SOURCE_DIR}/nativeui/record/src/RecordListPresenter.cpp
${CMAKE_CURRENT_SOURCE_DIR}/nativeui/record/src/RecordListView.cpp
- ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/record/src/RecordPlayPresenter.cpp
- ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/record/src/RecordPlayView.cpp
- ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/record/src/RecordPresenter.cpp
- ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/record/src/RecordView.cpp
+ ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/record/src/RecordingPlayerPresenter.cpp
+ ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/record/src/RecordingPlayerView.cpp
+ ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/record/src/RecordingPresenter.cpp
+ ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/record/src/RecordingView.cpp
+ ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/record/src/RecordingModel.cpp
${CMAKE_CURRENT_SOURCE_DIR}/nativeui/message/src/MessageAdapter.cpp
${CMAKE_CURRENT_SOURCE_DIR}/nativeui/message/src/MessageItemView.cpp
#include "classicbluetooth/include/ClassicBlueToothPresenter.h"
#include "classicbluetooth/include/ClassicBlueToothView.h"
-#include "record/include/RecordPresenter.h"
-#include "record/include/RecordView.h"
+#include "record/include/RecordingPresenter.h"
+#include "record/include/RecordingView.h"
#include "record/include/RecordListPresenter.h"
#include "record/include/RecordListView.h"
-#include "record/include/RecordPlayPresenter.h"
-#include "record/include/RecordPlayView.h"
+#include "record/include/RecordingPlayerPresenter.h"
+#include "record/include/RecordingPlayerView.h"
#include "record/include/RecordDeletePresenter.h"
#include "record/include/RecordDeleteView.h"
#include "record/include/RecordGoingPresenter.h"
void NativeLauncher::InitRecordingSlice(void) // 录音
{
- SliceProxy *record = new AbilitySliceProxy<RecordView, RecordPresenter>;
+ SliceProxy *record = new AbilitySliceProxy<RecordingView, RecordingPresenter>;
if (record == nullptr)
{
return;
void NativeLauncher::InitRecordingPlaySlice(void)
{
- SliceProxy *recordplay = new AbilitySliceProxy<RecordPlayView, RecordPlayPresenter>;
+ SliceProxy *recordplay = new AbilitySliceProxy<RecordingPlayerView, RecordingPlayerPresenter>;
if (recordplay == nullptr)
{
return;
--- /dev/null
+#ifndef RECORDING_MODEL_H
+#define RECORDING_MODEL_H
+
+#include "stdio.h"
+#include "gfx_utils/list.h"
+#include "UiServersMsg.h"
+#include "player.h"
+#include "source.h"
+#include "audio_manager.h"
+#include "audio_base_type.h"
+
+namespace OHOS
+{
+ using namespace OHOS::Media;
+ using OHOS::Media::Player;
+ using OHOS::Media::Source;
+
+// constexpr int ERR_RET = -1;
+// static constexpr int VOLUME_MAXIMUM = 100;
+// static constexpr int VOLUME_MINIMUM = 0;
+// static constexpr int VOLUME_PER_CHANGE = 10;
+// #define BUFFER_SIZE 15
+
+ // enum PlayerModelState : uint8_t
+ // {
+ // LOOP,
+ // SEQUENCE,
+ // REPEATS,
+ // RANDOM,
+ // };
+
+ // enum
+ // {
+ // NORMAL,
+ // NONE_SONG_PLAY,
+ // SONG_ALREADY_PLAY,
+ // SONG_ALREADY_PAUSE,
+ // SONG_ALREADY_STOP,
+ // EXECUTE_FUNC_FAILED,
+ // NO_SUPPORT_SCENE,
+ // PLAYER_RESPONESE_MAX
+ // };
+
+ // class PlayerInterruptListener;
+ // typedef struct
+ // {
+ // uint16 playerModel;
+ // uint32 value;
+ // } PlayersMsg;
+
+ class RecordingModel
+ {
+ public:
+ static RecordingModel *GetInstance(void);
+ std::string GetRecordingPlayerFilePath(void);
+ void SetRecordingPlayerFilePath(std::string src);
+ void SetRecordingPlayButtonState(bool state);
+
+ private:
+ RecordingModel();
+ RecordingModel(const RecordingModel &) = delete;
+ RecordingModel &operator=(const RecordingModel &) = delete;
+ virtual ~RecordingModel();
+
+ private:
+ std::string FilePath;
+ bool playButtonState{false};
+ };
+}
+
+#endif
\r
#include "Presenter.h"\r
\r
-#include "RecordPlayView.h"\r
+#include "RecordingPlayerView.h"\r
\r
namespace OHOS\r
{\r
- class RecordPlayView;\r
+ class RecordingPlayerView;\r
\r
- class RecordPlayPresenter : public Presenter<RecordPlayView>,\r
+ class RecordingPlayerPresenter : public Presenter<RecordingPlayerView>,\r
public UIView::OnClickListener,\r
public UIView::OnDragListener\r
{\r
public:\r
- RecordPlayPresenter();\r
- virtual ~RecordPlayPresenter();\r
+ RecordingPlayerPresenter();\r
+ virtual ~RecordingPlayerPresenter();\r
\r
void OnStart() override; \r
void OnPause() override; \r
void OnResume() override; \r
void OnStop() override; \r
\r
- static RecordPlayPresenter *GetInstance(); \r
+ static RecordingPlayerPresenter *GetInstance(); \r
\r
private:\r
//因为继承了OnClickListener,所以有OnClick属性,至于参数,原函数也这样直接继承;\r
static const char *RECORD_PLAY_DELETE_BUTTON_VIEWID = "RECORD_PLAY_DELETE_BUTTON"; // 删除按钮的视图id\r
static const char *RECORD_PLAY_VOLUME_BUTTON_VIEWID = "RECORD_PLAY_VOLUME_BUTTON"; // 音量按钮的视图id\r
\r
- class RecordPlayPresenter;\r
- class RecordPlayView : public View<RecordPlayPresenter>\r
+ class RecordingPlayerPresenter;\r
+ class RecordingPlayerView : public View<RecordingPlayerPresenter>\r
{\r
\r
public:\r
- RecordPlayView();\r
- virtual ~RecordPlayView();\r
- static RecordPlayView *GetInstance(void);\r
+ RecordingPlayerView();\r
+ virtual ~RecordingPlayerView();\r
+ static RecordingPlayerView *GetInstance(void);\r
\r
void OnStart() override;\r
void OnSetUpView() override;\r
\r
#include "Presenter.h"\r
\r
-#include "RecordView.h"\r
+#include "RecordingView.h"\r
\r
namespace OHOS\r
{\r
- class RecordView;\r
+ class RecordingView;\r
\r
- class RecordPresenter : public Presenter<RecordView>,\r
+ class RecordingPresenter : public Presenter<RecordingView>,\r
public UIView::OnClickListener,\r
public UIView::OnDragListener\r
{\r
public:\r
- RecordPresenter();\r
- virtual ~RecordPresenter();\r
+ RecordingPresenter();\r
+ virtual ~RecordingPresenter();\r
\r
void OnStart() override; \r
void OnPause() override; \r
void OnResume() override; \r
void OnStop() override; \r
\r
- static RecordPresenter *GetInstance(); \r
+ static RecordingPresenter *GetInstance(); \r
\r
private:\r
//因为继承了OnClickListener,所以有OnClick属性,至于参数,原函数也这样直接继承;\r
namespace OHOS\r
{\r
static const char *RECORD_BUTTON = "RecordButton"; //录音按钮\r
- class RecordPresenter;\r
- class RecordView : public View<RecordPresenter>\r
+ class RecordingPresenter;\r
+ class RecordingView : public View<RecordingPresenter>\r
{\r
\r
public:\r
- RecordView();\r
- virtual ~RecordView();\r
- static RecordView *GetInstance(void);\r
+ RecordingView();\r
+ virtual ~RecordingView();\r
+ static RecordingView *GetInstance(void);\r
\r
void OnStart() override;\r
void OnSetUpView() override;\r
--- /dev/null
+#include "record/include/RecordingModel.h"
+
+#include "thread_adapter.h"
+#include "UiConfig.h"
+#include "bts_a2dp_source.h"
+
+namespace OHOS
+{
+
+ static MutexId g_mutex;
+ RecordingModel::RecordingModel()
+ {
+ g_mutex = MUTEX_InitValue();
+ }
+
+ RecordingModel::~RecordingModel()
+ {
+ }
+
+ RecordingModel *RecordingModel::GetInstance(void)
+ {
+ static RecordingModel instance;
+ return &instance;
+ }
+
+ /// @brief 获取录音播放器文件路径
+ /// @param void
+ /// @return 文件路径
+ std::string RecordingModel::GetRecordingPlayerFilePath(void)
+ {
+ return FilePath;
+ }
+
+ /// @brief 设置录音播放器文件路径
+ /// @param src 文件路径
+ void RecordingModel::SetRecordingPlayerFilePath(std::string src)
+ {
+ FilePath = src;
+ }
+
+ /// @brief 设置录音播放按钮状态
+ /// @param state true
+ void RecordingModel::SetRecordingPlayButtonState(bool state)
+ {
+ playButtonState = state;
+ }
+
+}
\ No newline at end of file
#include "NativeAbility.h"\r
#include "graphic_math.h"\r
#include "string.h"\r
-#include "record/include/RecordPlayPresenter.h"\r
+#include "record/include/RecordingPlayerPresenter.h"\r
\r
namespace OHOS\r
{\r
\r
// 当前Presenter属性实例化的内存指针\r
- static RecordPlayPresenter *g_pRecordPlayPresenter = nullptr;\r
+ static RecordingPlayerPresenter *g_pRecordPlayPresenter = nullptr;\r
\r
- RecordPlayPresenter::RecordPlayPresenter()\r
+ RecordingPlayerPresenter::RecordingPlayerPresenter()\r
{\r
\r
g_pRecordPlayPresenter = this;\r
}\r
\r
- RecordPlayPresenter::~RecordPlayPresenter()\r
+ RecordingPlayerPresenter::~RecordingPlayerPresenter()\r
{\r
\r
g_pRecordPlayPresenter = nullptr;\r
}\r
\r
- RecordPlayPresenter *RecordPlayPresenter::GetInstance()\r
+ RecordingPlayerPresenter *RecordingPlayerPresenter::GetInstance()\r
{\r
\r
return g_pRecordPlayPresenter;\r
}\r
\r
- void RecordPlayPresenter::OnStart()\r
+ void RecordingPlayerPresenter::OnStart()\r
{\r
\r
- Presenter<RecordPlayView>::OnStart();\r
+ Presenter<RecordingPlayerView>::OnStart();\r
}\r
\r
- void RecordPlayPresenter::OnPause(void)\r
+ void RecordingPlayerPresenter::OnPause(void)\r
{\r
\r
- Presenter<RecordPlayView>::OnPause();\r
+ Presenter<RecordingPlayerView>::OnPause();\r
}\r
\r
- void RecordPlayPresenter::OnResume(void)\r
+ void RecordingPlayerPresenter::OnResume(void)\r
{\r
\r
- Presenter<RecordPlayView>::OnResume();\r
+ Presenter<RecordingPlayerView>::OnResume();\r
}\r
\r
- void RecordPlayPresenter::OnStop(void)\r
+ void RecordingPlayerPresenter::OnStop(void)\r
{\r
\r
- Presenter<RecordPlayView>::OnStop();\r
+ Presenter<RecordingPlayerView>::OnStop();\r
}\r
\r
- bool RecordPlayPresenter::OnDrag(UIView &view, const DragEvent &event)\r
+ bool RecordingPlayerPresenter::OnDrag(UIView &view, const DragEvent &event)\r
{\r
\r
if (event.GetDragDirection() == DragEvent::DIRECTION_LEFT_TO_RIGHT &&\r
}\r
}\r
\r
- bool RecordPlayPresenter::OnClick(UIView &view, const ClickEvent &event)\r
+ bool RecordingPlayerPresenter::OnClick(UIView &view, const ClickEvent &event)\r
{\r
\r
// 根据控件id查找是哪个控件触发了点击回调\r
-#include "record/include/RecordPlayView.h"\r
-#include "record/include/RecordPlayPresenter.h"\r
+#include "record/include/RecordingPlayerView.h"\r
+#include "record/include/RecordingPlayerPresenter.h"\r
\r
#include "UiConfig.h"\r
\r
namespace OHOS\r
{\r
\r
- static RecordPlayView *g_pRecordPlayView{nullptr};\r
+ static RecordingPlayerView *g_pRecordPlayView{nullptr};\r
\r
- RecordPlayView::RecordPlayView()\r
+ RecordingPlayerView::RecordingPlayerView()\r
{\r
\r
g_pRecordPlayView = this;\r
}\r
\r
- RecordPlayView::~RecordPlayView()\r
+ RecordingPlayerView::~RecordingPlayerView()\r
{\r
DeInitView();\r
g_pRecordPlayView = nullptr;\r
}\r
\r
- RecordPlayView *RecordPlayView::GetInstance()\r
+ RecordingPlayerView *RecordingPlayerView::GetInstance()\r
{\r
\r
return g_pRecordPlayView;\r
}\r
// 按钮初始化\r
- UIButton *RecordPlayView::CreateUIButton(int left, int top, int width, int height, const char *viewId,\r
+ UIButton *RecordingPlayerView::CreateUIButton(int left, int top, int width, int height, const char *viewId,\r
const char *defimagesrc, const char *toggleimagesrc, UIView::OnClickListener **buttonClick)\r
{\r
UIButton *button = new UIButton();\r
button->SetStyleForState(STYLE_BORDER_RADIUS, 0, UIButton::PRESSED);\r
\r
// Add the CallBack about events\r
- *buttonClick = static_cast<UIView::OnClickListener *>(RecordPlayPresenter::GetInstance());\r
+ *buttonClick = static_cast<UIView::OnClickListener *>(RecordingPlayerPresenter::GetInstance());\r
button->SetOnClickListener(*buttonClick);\r
return button;\r
}\r
\r
- void RecordPlayView::InitView()\r
+ void RecordingPlayerView::InitView()\r
{\r
if (container_ == nullptr)\r
{\r
container_ = new UIViewGroup();\r
container_->SetPosition(0, 0, 466, 466);\r
container_->SetStyle(STYLE_BACKGROUND_OPA, 0);\r
- draglistener = static_cast<UIView::OnDragListener *>(RecordPlayPresenter::GetInstance());\r
+ draglistener = static_cast<UIView::OnDragListener *>(RecordingPlayerPresenter::GetInstance());\r
if (draglistener == nullptr)\r
{\r
return;\r
RECORD_PLAY_PAUSE_CHECKBOX->SetImages(PNG_UNIVERSAL_PAUSE_IMAGE, PNG_UNIVERSAL_PLAY_IMAGE);\r
\r
// Add the CallBack about events\r
- UIView::OnClickListener *checkBoxClick = static_cast<UIView::OnClickListener *>(RecordPlayPresenter::GetInstance());\r
+ UIView::OnClickListener *checkBoxClick = static_cast<UIView::OnClickListener *>(RecordingPlayerPresenter::GetInstance());\r
RECORD_PLAY_PAUSE_CHECKBOX->SetOnClickListener(checkBoxClick);\r
// Add to rootView\r
container_->Add(RECORD_PLAY_PAUSE_CHECKBOX);\r
/********************************************************************************************************/\r
}\r
\r
- void RecordPlayView::DeInitView()\r
+ void RecordingPlayerView::DeInitView()\r
{\r
if (container_ != nullptr)\r
{\r
container_ = nullptr;\r
}\r
\r
- void RecordPlayView::OnStart()\r
+ void RecordingPlayerView::OnStart()\r
{\r
- View<RecordPlayPresenter>::OnStart();\r
+ View<RecordingPlayerPresenter>::OnStart();\r
InitView();\r
RootView::GetInstance()->Add(container_);\r
}\r
\r
- void RecordPlayView::OnSetUpView()\r
+ void RecordingPlayerView::OnSetUpView()\r
{\r
- View<RecordPlayPresenter>::OnSetUpView();\r
+ View<RecordingPlayerPresenter>::OnSetUpView();\r
Draw();\r
}\r
\r
- void RecordPlayView::OnTearDownView()\r
+ void RecordingPlayerView::OnTearDownView()\r
{\r
\r
- View<RecordPlayPresenter>::OnTearDownView();\r
+ View<RecordingPlayerPresenter>::OnTearDownView();\r
return;\r
}\r
\r
- void RecordPlayView::OnStop()\r
+ void RecordingPlayerView::OnStop()\r
{\r
\r
- View<RecordPlayPresenter>::OnStop();\r
+ View<RecordingPlayerPresenter>::OnStop();\r
RootView::GetInstance()->RemoveAll();\r
return;\r
}\r
#include "NativeAbility.h"\r
#include "graphic_math.h"\r
#include "string.h"\r
-#include "record/include/RecordPresenter.h"\r
+#include "record/include/RecordingPresenter.h"\r
namespace OHOS\r
{\r
\r
// 当前Presenter属性实例化的内存指针\r
- static RecordPresenter *g_pRecordPresenter = nullptr;\r
+ static RecordingPresenter *g_pRecordPresenter = nullptr;\r
\r
- RecordPresenter::RecordPresenter()\r
+ RecordingPresenter::RecordingPresenter()\r
{\r
\r
g_pRecordPresenter = this;\r
}\r
\r
- RecordPresenter::~RecordPresenter()\r
+ RecordingPresenter::~RecordingPresenter()\r
{\r
\r
g_pRecordPresenter = nullptr;\r
}\r
\r
- RecordPresenter *RecordPresenter::GetInstance()\r
+ RecordingPresenter *RecordingPresenter::GetInstance()\r
{\r
\r
return g_pRecordPresenter;\r
}\r
\r
- void RecordPresenter::OnStart()\r
+ void RecordingPresenter::OnStart()\r
{\r
\r
- Presenter<RecordView>::OnStart();\r
+ Presenter<RecordingView>::OnStart();\r
}\r
\r
- void RecordPresenter::OnPause(void)\r
+ void RecordingPresenter::OnPause(void)\r
{\r
\r
- Presenter<RecordView>::OnPause();\r
+ Presenter<RecordingView>::OnPause();\r
}\r
\r
- void RecordPresenter::OnResume(void)\r
+ void RecordingPresenter::OnResume(void)\r
{\r
\r
- Presenter<RecordView>::OnResume();\r
+ Presenter<RecordingView>::OnResume();\r
}\r
\r
- void RecordPresenter::OnStop(void)\r
+ void RecordingPresenter::OnStop(void)\r
{\r
\r
- Presenter<RecordView>::OnStop();\r
+ Presenter<RecordingView>::OnStop();\r
}\r
\r
- bool RecordPresenter::OnDrag(UIView &view, const DragEvent &event)\r
+ bool RecordingPresenter::OnDrag(UIView &view, const DragEvent &event)\r
{\r
\r
if (event.GetDragDirection() == DragEvent::DIRECTION_LEFT_TO_RIGHT &&\r
};\r
#endif\r
\r
- bool RecordPresenter::OnClick(UIView &view, const ClickEvent &event)\r
+ bool RecordingPresenter::OnClick(UIView &view, const ClickEvent &event)\r
{\r
\r
// 将参数保存到数组中\r
-#include "record/include/RecordView.h"\r
-#include "record/include/RecordPresenter.h"\r
+#include "record/include/RecordingView.h"\r
+#include "record/include/RecordingPresenter.h"\r
#include "UiConfig.h"\r
\r
namespace OHOS\r
{PNG_ANIMATOR2_IMAGE, {213, 400}, 40, 40, IMG_SRC_FILE_PATH},\r
};\r
\r
- static RecordView *g_pRecordView{nullptr};\r
+ static RecordingView *g_pRecordView{nullptr};\r
\r
- RecordView::RecordView()\r
+ RecordingView::RecordingView()\r
{\r
g_pRecordView = this;\r
}\r
\r
- RecordView::~RecordView()\r
+ RecordingView::~RecordingView()\r
{\r
DeInitView();\r
g_pRecordView = nullptr;\r
}\r
\r
- RecordView *RecordView::GetInstance()\r
+ RecordingView *RecordingView::GetInstance()\r
{\r
\r
return g_pRecordView;\r
}\r
- void RecordView::InitView(void)\r
+ void RecordingView::InitView(void)\r
{\r
// Add ScrollView to App\r
if (scrollView == nullptr)\r
scrollView->Resize(466, 466);\r
scrollView->SetViewId("ScrollView");\r
scrollView->SetStyle(STYLE_BACKGROUND_OPA, 0xff);\r
- UIView::OnDragListener *listener = static_cast< UIView::OnDragListener *>(RecordPresenter::GetInstance());\r
+ UIView::OnDragListener *listener = static_cast< UIView::OnDragListener *>(RecordingPresenter::GetInstance());\r
scrollView->SetOnDragListener(listener);\r
scrollView->SetTouchable(true);\r
scrollView->SetDraggable(true);\r
button->SetStyleForState(STYLE_BORDER_RADIUS, 100, UIButton::PRESSED);\r
\r
// Add the CallBack about events\r
- UIView::OnClickListener *buttonClick = static_cast<UIView::OnClickListener *>(RecordPresenter::GetInstance());\r
+ UIView::OnClickListener *buttonClick = static_cast<UIView::OnClickListener *>(RecordingPresenter::GetInstance());\r
button->SetOnClickListener(buttonClick);\r
// Add to scrollView1\r
scrollView->Add(button);\r
scrollView->Add(imageAnimator1_);\r
imageAnimator1_->SetVisible(true);\r
}\r
- void RecordView::DeInitView(void)\r
+ void RecordingView::DeInitView(void)\r
{\r
if (scrollView != nullptr)\r
{\r
delete scrollView;\r
scrollView = nullptr;\r
}\r
- void RecordView::OnStart()\r
+ void RecordingView::OnStart()\r
{\r
- View<RecordPresenter>::OnStart();\r
+ View<RecordingPresenter>::OnStart();\r
InitView();\r
}\r
\r
- void RecordView::OnSetUpView()\r
+ void RecordingView::OnSetUpView()\r
{\r
- View<RecordPresenter>::OnSetUpView();\r
+ View<RecordingPresenter>::OnSetUpView();\r
RootView::GetInstance()->Add(scrollView);\r
Draw();\r
}\r
\r
- void RecordView::OnTearDownView()\r
+ void RecordingView::OnTearDownView()\r
{\r
\r
- View<RecordPresenter>::OnTearDownView();\r
+ View<RecordingPresenter>::OnTearDownView();\r
return;\r
}\r
\r
- void RecordView::OnStop()\r
+ void RecordingView::OnStop()\r
{\r
\r
- View<RecordPresenter>::OnStop();\r
+ View<RecordingPresenter>::OnStop();\r
RootView::GetInstance()->RemoveAll();\r
return;\r
}\r