[ios] Using generic alert to modify bookmarks category.

This commit is contained in:
VladiMihaylenko 2018-04-16 17:27:16 +03:00 committed by Aleksandr Zatsepin
parent cd335cedc1
commit b2bba51859
11 changed files with 24 additions and 354 deletions

View file

@ -1,15 +0,0 @@
#import "MWMTableViewCell.h"
@protocol AddSetTableViewCellProtocol<NSObject>
- (void)onDone:(NSString *)text;
@end
@interface AddSetTableViewCell : MWMTableViewCell
@property(weak, nonatomic) IBOutlet UITextField * textField;
@property(weak, nonatomic) id<AddSetTableViewCellProtocol> delegate;
@end

View file

@ -1,29 +0,0 @@
#import "AddSetTableViewCell.h"
@interface AddSetTableViewCell ()<UITextFieldDelegate>
@end
@implementation AddSetTableViewCell
- (void)awakeFromNib
{
[super awakeFromNib];
self.textField.textColor = [UIColor blackPrimaryText];
self.textField.attributedPlaceholder = [[NSAttributedString alloc]
initWithString:L(@"bookmark_set_name")
attributes:@{NSForegroundColorAttributeName: [UIColor blackHintText]}];
}
#pragma mark - UITextFieldDelegate
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
if (textField.text.length == 0)
return YES;
[self.delegate onDone:textField.text];
return NO;
}
@end

View file

@ -1,50 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="13771" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<dependencies>
<deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13772"/>
<capability name="Constraints to layout margins" minToolsVersion="6.0"/>
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<customFonts key="customFonts">
<array key="HelveticaNeue.ttc">
<string>HelveticaNeue</string>
</array>
</customFonts>
<objects>
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
<tableViewCell contentMode="scaleToFill" selectionStyle="none" indentationWidth="10" id="KGk-i7-Jjw" customClass="AddSetTableViewCell" propertyAccessControl="all">
<rect key="frame" x="0.0" y="0.0" width="320" height="44"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="KGk-i7-Jjw" id="H2p-sc-9uM">
<rect key="frame" x="0.0" y="0.0" width="320" height="43.5"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<textField opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" textAlignment="natural" adjustsFontSizeToFit="NO" minimumFontSize="17" clearButtonMode="whileEditing" translatesAutoresizingMaskIntoConstraints="NO" id="rgz-7B-FIj">
<rect key="frame" x="16" y="11" width="288" height="22"/>
<fontDescription key="fontDescription" name="HelveticaNeue" family="Helvetica Neue" pointSize="14"/>
<textInputTraits key="textInputTraits" autocapitalizationType="words" autocorrectionType="no" returnKeyType="done"/>
<connections>
<outlet property="delegate" destination="KGk-i7-Jjw" id="qjj-RI-UGt"/>
</connections>
</textField>
</subviews>
<constraints>
<constraint firstAttribute="trailingMargin" secondItem="rgz-7B-FIj" secondAttribute="trailing" id="6hy-D9-SC5"/>
<constraint firstItem="rgz-7B-FIj" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leadingMargin" id="KII-fj-Fv3"/>
<constraint firstAttribute="bottomMargin" secondItem="rgz-7B-FIj" secondAttribute="bottom" id="UdJ-Us-cF1"/>
<constraint firstItem="rgz-7B-FIj" firstAttribute="top" secondItem="H2p-sc-9uM" secondAttribute="topMargin" id="iVt-Fo-l6M"/>
</constraints>
</tableViewCellContentView>
<viewLayoutGuide key="safeArea" id="x38-sL-Per"/>
<connections>
<outlet property="textField" destination="rgz-7B-FIj" id="k9Q-l0-2J0"/>
</connections>
</tableViewCell>
</objects>
</document>

View file

@ -1,16 +0,0 @@
#import "MWMTableViewController.h"
#include "kml/type_utils.hpp"
@class AddSetVC;
@protocol AddSetVCDelegate <NSObject>
- (void)addSetVC:(AddSetVC *)vc didAddSetWithCategoryId:(kml::MarkGroupId)categoryId;
@end
@interface AddSetVC : MWMTableViewController
@property (weak, nonatomic) id<AddSetVCDelegate> delegate;
@end

View file

@ -1,62 +0,0 @@
#import "AddSetVC.h"
#import "AddSetTableViewCell.h"
#import "SwiftBridge.h"
#include "Framework.h"
@interface AddSetVC () <AddSetTableViewCellProtocol>
@property (nonatomic) AddSetTableViewCell * cell;
@end
@implementation AddSetVC
- (instancetype)init
{
self = [super initWithStyle:UITableViewStyleGrouped];
return self;
}
- (void)viewDidLoad
{
[super viewDidLoad];
self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemSave target:self action:@selector(onSaveClicked)];
[(UIViewController *)self showBackButton];
self.title = L(@"add_new_set");
[self.tableView registerWithCellClass:[AddSetTableViewCell class]];
}
- (void)onSaveClicked
{
[self onDone:self.cell.textField.text];
}
- (void)onDone:(NSString *)text
{
if (text.length == 0)
return;
[self.delegate addSetVC:self
didAddSetWithCategoryId:(GetFramework().AddCategory(text.UTF8String))];
[self.navigationController popViewControllerAnimated:YES];
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return 1;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
self.cell = static_cast<AddSetTableViewCell *>(
[tableView dequeueReusableCellWithCellClass:[AddSetTableViewCell class] indexPath:indexPath]);
self.cell.delegate = self;
return self.cell;
}
- (void)tableView:(UITableView *)tableView willDisplayCell:(AddSetTableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
{
[cell.textField becomeFirstResponder];
}
@end

View file

@ -1,7 +1,6 @@
#import "BookmarksVC.h"
#import "CircleView.h"
#import "ColorPickerView.h"
#import "MWMBookmarkNameCell.h"
#import "MWMBookmarksManager.h"
#import "MWMLocationHelpers.h"
#import "MWMLocationObserver.h"
@ -64,12 +63,6 @@
return *it;
}
- (void)viewDidLoad
{
[super viewDidLoad];
[self.tableView registerWithCellClass:[MWMBookmarkNameCell class]];
}
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
return m_numberOfSections;
@ -78,7 +71,7 @@
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
if (section == 0)
return 2;
return 1;
else if (section == m_trackSection)
return GetFramework().GetBookmarkManager().GetTrackIds(m_categoryId).size();
else if (section == m_bookmarkSection)
@ -118,27 +111,18 @@
// First section, contains info about current set
if (indexPath.section == 0)
{
if (indexPath.row == 0)
cell = [tableView dequeueReusableCellWithIdentifier:@"BookmarksVCSetVisibilityCell"];
if (!cell)
{
cell = [tableView dequeueReusableCellWithCellClass:[MWMBookmarkNameCell class]
indexPath:indexPath];
[static_cast<MWMBookmarkNameCell *>(cell) configWithName:@(bmManager.GetCategoryName(m_categoryId).c_str()) delegate:self];
}
else
{
cell = [tableView dequeueReusableCellWithIdentifier:@"BookmarksVCSetVisibilityCell"];
if (!cell)
{
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:@"BookmarksVCSetVisibilityCell"];
cell.textLabel.text = L(@"visible");
cell.accessoryView = [[UISwitch alloc] init];
cell.selectionStyle = UITableViewCellSelectionStyleNone;
}
UISwitch * sw = (UISwitch *)cell.accessoryView;
sw.on = bmManager.IsVisible(m_categoryId);
sw.onTintColor = [UIColor linkBlue];
[sw addTarget:self action:@selector(onVisibilitySwitched:) forControlEvents:UIControlEventValueChanged];
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:@"BookmarksVCSetVisibilityCell"];
cell.textLabel.text = L(@"visible");
cell.accessoryView = [[UISwitch alloc] init];
cell.selectionStyle = UITableViewCellSelectionStyleNone;
}
UISwitch * sw = (UISwitch *)cell.accessoryView;
sw.on = bmManager.IsVisible(m_categoryId);
sw.onTintColor = [UIColor linkBlue];
[sw addTarget:self action:@selector(onVisibilitySwitched:) forControlEvents:UIControlEventValueChanged];
}
else if (indexPath.section == m_trackSection)
@ -375,43 +359,14 @@
[super viewWillAppear:animated];
}
- (void)renameBMCategoryIfChanged:(NSString *)newName
{
// Update edited category name
auto & bmManager = GetFramework().GetBookmarkManager();
char const * newCharName = newName.UTF8String;
if (bmManager.GetCategoryName(m_categoryId) != newCharName)
{
bmManager.GetEditSession().SetCategoryName(m_categoryId, newCharName);
self.navigationController.title = newName;
}
}
- (void)viewWillDisappear:(BOOL)animated
{
[MWMLocationManager removeObserver:self];
// Save possibly edited set name
UITableViewCell * cell = [self.tableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0]];
if ([cell isKindOfClass:[MWMBookmarkNameCell class]])
{
NSString * newName = static_cast<MWMBookmarkNameCell *>(cell).currentName;
if (newName)
[self renameBMCategoryIfChanged:newName];
}
[super viewWillDisappear:animated];
}
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
if (textField.text.length == 0)
return YES;
// Hide keyboard
[textField resignFirstResponder];
[self renameBMCategoryIfChanged:textField.text];
return NO;
}
- (void)sendBookmarksWithExtension:(NSString *)fileExtension andType:(NSString *)mimeType andFile:(NSString *)filePath andCategory:(NSString *)catName
{
MWMMailViewController * mailVC = [[MWMMailViewController alloc] init];

View file

@ -1,8 +0,0 @@
#import "MWMTableViewCell.h"
@interface MWMBookmarkNameCell : MWMTableViewCell
- (void)configWithName:(NSString *)name delegate:(id<UITextFieldDelegate>)delegate;
- (NSString *)currentName;
@end

View file

@ -1,19 +0,0 @@
#import "MWMBookmarkNameCell.h"
@interface MWMBookmarkNameCell ()
@property(weak, nonatomic) IBOutlet UITextField * nameField;
@end
@implementation MWMBookmarkNameCell
- (void)configWithName:(NSString *)name delegate:(id<UITextFieldDelegate>)delegate
{
self.nameField.text = name;
self.nameField.delegate = delegate;
}
- (NSString *)currentName { return self.nameField.text; }
@end

View file

@ -1,63 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="13771" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<dependencies>
<deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13772"/>
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<objects>
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
<tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" id="XcA-Lf-TNj" customClass="MWMBookmarkNameCell" propertyAccessControl="all">
<rect key="frame" x="0.0" y="0.0" width="320" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="XcA-Lf-TNj" id="JSP-hB-p5v">
<rect key="frame" x="0.0" y="0.0" width="320" height="43.5"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="501" verticalHuggingPriority="251" text="Label" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="y2T-Xq-sVO">
<rect key="frame" x="22" y="0.0" width="42" height="44"/>
<constraints>
<constraint firstAttribute="height" relation="greaterThanOrEqual" priority="999" constant="44" id="ZM5-mG-qDZ"/>
</constraints>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
<nil key="highlightedColor"/>
<userDefinedRuntimeAttributes>
<userDefinedRuntimeAttribute type="string" keyPath="fontName" value="regular17"/>
<userDefinedRuntimeAttribute type="string" keyPath="colorName" value="blackPrimaryText"/>
<userDefinedRuntimeAttribute type="string" keyPath="localizedText" value="name"/>
</userDefinedRuntimeAttributes>
</label>
<textField opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" horizontalCompressionResistancePriority="499" contentHorizontalAlignment="left" contentVerticalAlignment="center" textAlignment="right" minimumFontSize="17" clearButtonMode="whileEditing" translatesAutoresizingMaskIntoConstraints="NO" id="xxY-3p-j42">
<rect key="frame" x="74" y="0.0" width="224" height="43"/>
<fontDescription key="fontDescription" type="system" pointSize="14"/>
<textInputTraits key="textInputTraits" autocapitalizationType="words" autocorrectionType="no" returnKeyType="done" enablesReturnKeyAutomatically="YES"/>
<userDefinedRuntimeAttributes>
<userDefinedRuntimeAttribute type="string" keyPath="colorName" value="blackSecondaryText"/>
<userDefinedRuntimeAttribute type="string" keyPath="fontName" value="regular17"/>
</userDefinedRuntimeAttributes>
</textField>
</subviews>
<constraints>
<constraint firstItem="xxY-3p-j42" firstAttribute="top" secondItem="JSP-hB-p5v" secondAttribute="top" id="6fa-DN-Nt8"/>
<constraint firstAttribute="bottom" secondItem="y2T-Xq-sVO" secondAttribute="bottom" id="R50-3P-oI3"/>
<constraint firstAttribute="trailing" secondItem="xxY-3p-j42" secondAttribute="trailing" constant="22" id="YOB-YM-Gwe"/>
<constraint firstItem="y2T-Xq-sVO" firstAttribute="leading" secondItem="JSP-hB-p5v" secondAttribute="leading" constant="22" id="ck1-pn-8sB"/>
<constraint firstItem="xxY-3p-j42" firstAttribute="leading" secondItem="y2T-Xq-sVO" secondAttribute="trailing" constant="10" id="o7X-28-JJd"/>
<constraint firstAttribute="bottom" secondItem="xxY-3p-j42" secondAttribute="bottom" id="tlR-WZ-ZEy"/>
<constraint firstItem="y2T-Xq-sVO" firstAttribute="top" secondItem="JSP-hB-p5v" secondAttribute="top" id="uv3-ZQ-lXe"/>
</constraints>
</tableViewCellContentView>
<viewLayoutGuide key="safeArea" id="DYn-2n-Eth"/>
<connections>
<outlet property="nameField" destination="xxY-3p-j42" id="dtT-Hn-kcC"/>
</connections>
<point key="canvasLocation" x="288" y="287"/>
</tableViewCell>
</objects>
</document>

View file

@ -1,11 +1,10 @@
#import "SelectSetVC.h"
#import "AddSetVC.h"
#import "SwiftBridge.h"
#import "UIViewController+Navigation.h"
#include "Framework.h"
@interface SelectSetVC () <AddSetVCDelegate>
@interface SelectSetVC ()
{
kml::MarkGroupId m_categoryId;
}
@ -77,11 +76,6 @@
return cell;
}
- (void)addSetVC:(AddSetVC *)vc didAddSetWithCategoryId:(kml::MarkGroupId)categoryId
{
[self moveBookmarkToSetWithCategoryId:categoryId];
}
- (void)moveBookmarkToSetWithCategoryId:(kml::MarkGroupId)categoryId
{
m_categoryId = categoryId;
@ -95,9 +89,18 @@
[self.tableView deselectRowAtIndexPath:indexPath animated:YES];
if (indexPath.section == 0)
{
AddSetVC * asVC = [[AddSetVC alloc] init];
asVC.delegate = self;
[self.navigationController pushViewController:asVC animated:YES];
[self.alertController presentCreateBookmarkCategoryAlertWithMaxCharacterNum:60
minCharacterNum:0
isNewCategory:YES
callback:^BOOL (NSString * name)
{
if (![MWMBookmarksManager checkCategoryName:name])
return false;
auto const id = [MWMBookmarksManager createCategoryWithName:name];
[self moveBookmarkToSetWithCategoryId:id];
return true;
}];
}
else
{

View file

@ -37,10 +37,6 @@
340475771E081A4600C92850 /* MWMTrafficManager.mm in Sources */ = {isa = PBXBuildFile; fileRef = 340475471E081A4600C92850 /* MWMTrafficManager.mm */; };
3404757E1E081B3300C92850 /* iosOGLContext.mm in Sources */ = {isa = PBXBuildFile; fileRef = 3404757A1E081B3300C92850 /* iosOGLContext.mm */; };
340475811E081B3300C92850 /* iosOGLContextFactory.mm in Sources */ = {isa = PBXBuildFile; fileRef = 3404757C1E081B3300C92850 /* iosOGLContextFactory.mm */; };
3404F4832028908C0090E401 /* MWMBookmarkNameCell.mm in Sources */ = {isa = PBXBuildFile; fileRef = 3404F47D2028908B0090E401 /* MWMBookmarkNameCell.mm */; };
3404F4842028908C0090E401 /* AddSetTableViewCell.mm in Sources */ = {isa = PBXBuildFile; fileRef = 3404F47F2028908B0090E401 /* AddSetTableViewCell.mm */; };
3404F4852028908C0090E401 /* MWMBookmarkNameCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 3404F4802028908B0090E401 /* MWMBookmarkNameCell.xib */; };
3404F4862028908C0090E401 /* AddSetTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 3404F4822028908B0090E401 /* AddSetTableViewCell.xib */; };
3404F48B202894EA0090E401 /* BMCViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3404F489202894EA0090E401 /* BMCViewController.swift */; };
3404F48C202894EA0090E401 /* BMCViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 3404F48A202894EA0090E401 /* BMCViewController.xib */; };
3404F48E2028966C0090E401 /* BMCViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3404F48D2028966C0090E401 /* BMCViewModel.swift */; };
@ -416,7 +412,6 @@
6741A9EC1BF340DE002C974C /* MWMCircularProgress.mm in Sources */ = {isa = PBXBuildFile; fileRef = 349A35761B53D4C9009677EE /* MWMCircularProgress.mm */; };
6741A9F51BF340DE002C974C /* BookmarksVC.mm in Sources */ = {isa = PBXBuildFile; fileRef = FA36B80615403A4F004560CC /* BookmarksVC.mm */; };
6741A9FE1BF340DE002C974C /* SelectSetVC.mm in Sources */ = {isa = PBXBuildFile; fileRef = FA054611155C465E001F4E37 /* SelectSetVC.mm */; };
6741A9FF1BF340DE002C974C /* AddSetVC.mm in Sources */ = {isa = PBXBuildFile; fileRef = FAA614B7155F16950031C345 /* AddSetVC.mm */; };
6741AA031BF340DE002C974C /* MWMActivityViewController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 340837121B7243CE00B5C185 /* MWMActivityViewController.mm */; };
6741AA0B1BF340DE002C974C /* MWMMapViewControlsManager.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34BC72111B0DECAE0012A34B /* MWMMapViewControlsManager.mm */; };
6741AA141BF340DE002C974C /* MWMMultilineLabel.mm in Sources */ = {isa = PBXBuildFile; fileRef = 346EDADA1B9F0E35004F8DB5 /* MWMMultilineLabel.mm */; };
@ -767,12 +762,6 @@
3404757A1E081B3300C92850 /* iosOGLContext.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = iosOGLContext.mm; sourceTree = "<group>"; };
3404757B1E081B3300C92850 /* iosOGLContextFactory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = iosOGLContextFactory.h; sourceTree = "<group>"; };
3404757C1E081B3300C92850 /* iosOGLContextFactory.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = iosOGLContextFactory.mm; sourceTree = "<group>"; };
3404F47D2028908B0090E401 /* MWMBookmarkNameCell.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMBookmarkNameCell.mm; sourceTree = "<group>"; };
3404F47E2028908B0090E401 /* AddSetTableViewCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AddSetTableViewCell.h; sourceTree = "<group>"; };
3404F47F2028908B0090E401 /* AddSetTableViewCell.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AddSetTableViewCell.mm; sourceTree = "<group>"; };
3404F4802028908B0090E401 /* MWMBookmarkNameCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MWMBookmarkNameCell.xib; sourceTree = "<group>"; };
3404F4812028908B0090E401 /* MWMBookmarkNameCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMBookmarkNameCell.h; sourceTree = "<group>"; };
3404F4822028908B0090E401 /* AddSetTableViewCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = AddSetTableViewCell.xib; sourceTree = "<group>"; };
3404F489202894EA0090E401 /* BMCViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BMCViewController.swift; sourceTree = "<group>"; };
3404F48A202894EA0090E401 /* BMCViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = BMCViewController.xib; sourceTree = "<group>"; };
3404F48D2028966C0090E401 /* BMCViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BMCViewModel.swift; sourceTree = "<group>"; };
@ -1734,8 +1723,6 @@
FA46DA2B12D4166E00968C36 /* countries.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = countries.txt; path = ../../data/countries.txt; sourceTree = SOURCE_ROOT; };
FA64D9A813F975AD00350ECF /* types.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = types.txt; path = ../../data/types.txt; sourceTree = SOURCE_ROOT; };
FA85F632145DDDC20090E1A0 /* packed_polygons.bin */ = {isa = PBXFileReference; lastKnownFileType = archive.macbinary; name = packed_polygons.bin; path = ../../data/packed_polygons.bin; sourceTree = SOURCE_ROOT; };
FAA614B6155F16950031C345 /* AddSetVC.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AddSetVC.h; path = Bookmarks/AddSetVC.h; sourceTree = SOURCE_ROOT; };
FAA614B7155F16950031C345 /* AddSetVC.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; lineEnding = 0; name = AddSetVC.mm; path = Bookmarks/AddSetVC.mm; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; };
FAAEA7D0161BD26600CCD661 /* synonyms.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = synonyms.txt; path = ../../data/synonyms.txt; sourceTree = "<group>"; };
FAAFD696139D9BE2000AE70C /* categories.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = categories.txt; path = ../../data/categories.txt; sourceTree = SOURCE_ROOT; };
FAF30A94173AB23900818BF6 /* 07_roboto_medium.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = 07_roboto_medium.ttf; path = ../../data/07_roboto_medium.ttf; sourceTree = "<group>"; };
@ -3956,17 +3943,9 @@
FA36B8011540388B004560CC /* Bookmarks */ = {
isa = PBXGroup;
children = (
3404F47E2028908B0090E401 /* AddSetTableViewCell.h */,
3404F47F2028908B0090E401 /* AddSetTableViewCell.mm */,
3404F4822028908B0090E401 /* AddSetTableViewCell.xib */,
FAA614B6155F16950031C345 /* AddSetVC.h */,
FAA614B7155F16950031C345 /* AddSetVC.mm */,
FA36B80515403A4F004560CC /* BookmarksVC.h */,
FA36B80615403A4F004560CC /* BookmarksVC.mm */,
3404F4A02028A6C00090E401 /* Categories */,
3404F4812028908B0090E401 /* MWMBookmarkNameCell.h */,
3404F47D2028908B0090E401 /* MWMBookmarkNameCell.mm */,
3404F4802028908B0090E401 /* MWMBookmarkNameCell.xib */,
FA054610155C465E001F4E37 /* SelectSetVC.h */,
FA054611155C465E001F4E37 /* SelectSetVC.mm */,
);
@ -4128,7 +4107,6 @@
6B653B951C7F2DE4007BEFC5 /* cuisine-strings in Resources */,
347752931F7251C7000D46A3 /* UGCAddReviewTextCell.xib in Resources */,
6741A9871BF340DE002C974C /* drules_proto_clear.bin in Resources */,
3404F4852028908C0090E401 /* MWMBookmarkNameCell.xib in Resources */,
6741A97E1BF340DE002C974C /* drules_proto_dark.bin in Resources */,
6B9978361C89A316003B8AA0 /* editor.config in Resources */,
6741A9681BF340DE002C974C /* faq.html in Resources */,
@ -4228,7 +4206,6 @@
F6E2FEA61E097BA00083EBEC /* MWMPPView.xib in Resources */,
6741A9811BF340DE002C974C /* MWMRateAlert.xib in Resources */,
6741A9601BF340DE002C974C /* MWMRoutingDisclaimerAlert.xib in Resources */,
3404F4862028908C0090E401 /* AddSetTableViewCell.xib in Resources */,
F6E2FF001E097BA00083EBEC /* MWMSearchCategoryCell.xib in Resources */,
F6E2FF331E097BA00083EBEC /* MWMSearchCommonCell.xib in Resources */,
F6E2FF061E097BA00083EBEC /* MWMSearchHistoryClearCell.xib in Resources */,
@ -4543,7 +4520,6 @@
F6E2FD501E097BA00083EBEC /* MWMMapDownloaderAdsTableViewCell.mm in Sources */,
F6E2FE881E097BA00083EBEC /* MWMPlacePageRegularCell.mm in Sources */,
34AB66771FC5AA330078E451 /* TransportRoutePreviewStatus.swift in Sources */,
3404F4832028908C0090E401 /* MWMBookmarkNameCell.mm in Sources */,
F6E2FD801E097BA00083EBEC /* MWMMapDownloaderExtendedDataSourceWithAds.mm in Sources */,
34BBD6641F8270AC0070CA50 /* AuthorizationTransitioning.swift in Sources */,
34D3AFEA1E378AF1004100F9 /* UINib+Init.swift in Sources */,
@ -4585,7 +4561,6 @@
34D3B03C1E389D05004100F9 /* MWMEditorSwitchTableViewCell.mm in Sources */,
344532381F6FFE6A0059FBCC /* UGCRating.swift in Sources */,
34AB66411FC5AA330078E451 /* RouteManagerTransitioningManager.swift in Sources */,
6741A9FF1BF340DE002C974C /* AddSetVC.mm in Sources */,
3454D7CE1E07F045004AF2AD /* UIFont+MapsMeFonts.mm in Sources */,
F682249B1E5B104600BC1C18 /* PPHotelDescriptionCell.swift in Sources */,
F6E2FECA1E097BA00083EBEC /* MWMSearchFilterTransitioning.mm in Sources */,
@ -4698,7 +4673,6 @@
34EF94291C05A6F30050B714 /* MWMSegue.mm in Sources */,
3430291D1F87BF4400D0A07C /* ReviewsViewController.swift in Sources */,
F6E2FE731E097BA00083EBEC /* MWMOpeningHours.mm in Sources */,
3404F4842028908C0090E401 /* AddSetTableViewCell.mm in Sources */,
F6D67CDC2062B9C00032FD38 /* BCCreateCategoryAlert.swift in Sources */,
F6E2FF601E097BA00083EBEC /* MWMSettingsViewController.mm in Sources */,
F6E2FE2B1E097BA00083EBEC /* MWMStreetEditorEditTableViewCell.mm in Sources */,