Commit 0bf55a22 authored by Vibhoothi's avatar Vibhoothi

libraryView:Introduce a dataModel

This commits adds a new dataModel to the VLC which essentailly brings us the Model View
Controller concept ie. seperates dataModel from View and Controlle
The following are the changes introuduced with this commitr
  - Add Cocoa class VLCMainWindowDataModel which is the dataModel for us
  - Build the dataModel
  - Make changes to the VLC Xcode Project to adapt to the new change
parent 36cc211c
......@@ -7,6 +7,7 @@
objects = {
/* Begin PBXBuildFile section */
11CC2FBD21106C080091B834 /* VLCMainWindowDataModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 11CC2FBC21106C080091B834 /* VLCMainWindowDataModel.m */; };
11CE023120DBFE42008B0A7F /* VLCMainWindowCollectionViewItem.m in Sources */ = {isa = PBXBuildFile; fileRef = 11CE022F20DBFE41008B0A7F /* VLCMainWindowCollectionViewItem.m */; };
1C1C62011F8260A90052DD4F /* VLCWrappableTextField.m in Sources */ = {isa = PBXBuildFile; fileRef = 1C1C62001F8260A90052DD4F /* VLCWrappableTextField.m */; };
1C31138E1E508C6900D4DD76 /* VLCAboutWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = 1C67C8A71D58C0A40079E1C1 /* VLCAboutWindowController.m */; };
......@@ -138,6 +139,8 @@
089C1672FE841209C02AAC07 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
089C167FFE841241C02AAC07 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = "<absolute>"; };
1058C7ADFEA557BF11CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = "<absolute>"; };
11CC2FBB21106C080091B834 /* VLCMainWindowDataModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = VLCMainWindowDataModel.h; sourceTree = "<group>"; };
11CC2FBC21106C080091B834 /* VLCMainWindowDataModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = VLCMainWindowDataModel.m; sourceTree = "<group>"; };
11CE022E20DBFE41008B0A7F /* VLCMainWindowCollectionViewItem.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = VLCMainWindowCollectionViewItem.h; sourceTree = "<group>"; };
11CE022F20DBFE41008B0A7F /* VLCMainWindowCollectionViewItem.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = VLCMainWindowCollectionViewItem.m; sourceTree = "<group>"; };
11CE023020DBFE42008B0A7F /* VLCMainWindowCollectionViewItem.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = VLCMainWindowCollectionViewItem.xib; sourceTree = "<group>"; };
......@@ -632,6 +635,17 @@
name = "Other Frameworks";
sourceTree = "<group>";
};
11CC2FBA211068490091B834 /* LibraryView */ = {
isa = PBXGroup;
children = (
11CE022E20DBFE41008B0A7F /* VLCMainWindowCollectionViewItem.h */,
11CE022F20DBFE41008B0A7F /* VLCMainWindowCollectionViewItem.m */,
11CC2FBB21106C080091B834 /* VLCMainWindowDataModel.h */,
11CC2FBC21106C080091B834 /* VLCMainWindowDataModel.m */,
);
name = LibraryView;
sourceTree = "<group>";
};
19C28FB8FE9D52D311CA2CBB /* Products */ = {
isa = PBXGroup;
children = (
......@@ -1059,8 +1073,7 @@
7D349C9320CBC770003359A1 /* Main Window */ = {
isa = PBXGroup;
children = (
11CE022E20DBFE41008B0A7F /* VLCMainWindowCollectionViewItem.h */,
11CE022F20DBFE41008B0A7F /* VLCMainWindowCollectionViewItem.m */,
11CC2FBA211068490091B834 /* LibraryView */,
E0382C00160BA09E0031D7FF /* VLCControlsBarCommon.h */,
E0382C01160BA09E0031D7FF /* VLCControlsBarCommon.m */,
7D5678EE1D5BA397002698F3 /* VLCMainWindowControlsBar.h */,
......@@ -1588,6 +1601,7 @@
6BBB05DA1EEFEA29003A1019 /* VLCHUDOutlineView.m in Sources */,
1C3113CB1E508C6900D4DD76 /* VLCPLItem.m in Sources */,
1C3113CD1E508C6900D4DD76 /* VLCPLModel.m in Sources */,
11CC2FBD21106C080091B834 /* VLCMainWindowDataModel.m in Sources */,
1C3113CF1E508C6900D4DD76 /* prefs_widgets.m in Sources */,
1C3113D11E508C6900D4DD76 /* prefs.m in Sources */,
1C3113D31E508C6900D4DD76 /* VLCResumeDialogController.m in Sources */,
......
......@@ -95,7 +95,8 @@ libmacosx_plugin_la_SOURCES = \
gui/macosx/VLCVolumeSlider.h gui/macosx/VLCVolumeSlider.m \
gui/macosx/VLCVolumeSliderCell.h gui/macosx/VLCVolumeSliderCell.m \
gui/macosx/VLCWrappableTextField.h gui/macosx/VLCWrappableTextField.m \
gui/macosx/VLCMainWindowCollectionViewItem.h gui/macosx/VLCMainWindowCollectionViewItem.m
gui/macosx/VLCMainWindowCollectionViewItem.h gui/macosx/VLCMainWindowCollectionViewItem.m \
gui/macosx/VLCMainWindowDataModel.h gui/macosx/VLCMainWindowDataModel.m
# User interface compilation
......
/*****************************************************************************
* VLCMainWindowDataModel.h: MacOS X interface module
*****************************************************************************
* Copyright (C) 2018 VLC authors and VideoLAN
* $Id $
*
* Authors: Vibhoothi <vibhoothiiaanand -at- googlemail dot com>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
#import <Foundation/Foundation.h>
@interface VLCMainWindowDataModel : NSObject
@end
/*****************************************************************************
* VLCMainWindowDataModel.m: MacOS X interface module
*****************************************************************************
* Copyright (C) 2018 VLC authors and VideoLAN
* $Id $
*
* Authors: Vibhoothi <vibhoothiiaanand -at- googlemail dot com>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
#import "VLCMainWindowDataModel.h"
@implementation VLCMainWindowDataModel
@end
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment