123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 |
- //
- // ProjectListWC.m
- // UUTUtils
- //
- // Created by zhuge on 2017/12/22.
- // Copyright © 2017年 zhuge. All rights reserved.
- //
- #import "ProjectListWC.h"
- #import "ProjectInfo.h"
- #import "DataUtils.h"
- #import "ZGAlert.h"
- #import "ZGCommonUtils.h"
- #import "ZGFileUtils.h"
- #import "AddProjectWC.h"
- #import "EditProjectWC.h"
- #import "EcpmConfigInitWC.h"
- #import "AdWorthJsonGenerator.h"
- #define KEY_LAST_SELECT_PROJECT_INDEX @"key_last_select_project"
- @interface ProjectListWC ()
- @property (strong) AddProjectWC *AddProjectWC;
- @property (strong) EditProjectWC *EditProjectWC;
- @property (strong) EcpmConfigInitWC *EcpmConfigInitWC;
- @end
- @implementation ProjectListWC
- - (void)windowDidLoad {
- [super windowDidLoad];
- self.window.delegate = self;
- }
- #pragma mark window delegate
- - (void)windowDidBecomeMain:(NSNotification *)notification {
- [self initBeans];
- [self refreshUI_Beans];
- }
- #pragma mark init & refresh
- - (void) initBeans {
- _maBeans = [DataUtils getAllProjects];
- }
- - (void) refreshUI_Beans {
- [self willChangeValueForKey:@"acBeans"];
- _acBeans = [[NSArrayController alloc] initWithContent:_maBeans];
- [self didChangeValueForKey:@"acBeans"];
-
- [self.acBeans setSelectionIndex:[[NSUserDefaults standardUserDefaults] integerForKey:KEY_LAST_SELECT_PROJECT_INDEX]];
- }
- #pragma mark btn
- - (IBAction)onSaveBtn:(id)sender {
- for (ProjectInfo *bean in self.maBeans) {
- [bean save];
- }
- }
- - (IBAction)onEditBtn:(id)sender {
- ProjectInfo *projectInfo = [self.acBeans.selectedObjects firstObject];
- if (projectInfo) {
- self.EditProjectWC = [[EditProjectWC alloc] initWithWindowNibName:@"EditProjectWC"];
- self.EditProjectWC.projectInfo = projectInfo;
- [self.EditProjectWC setHttpState:YES];
- [self.EditProjectWC showWindow:self.window];
- [self.EditProjectWC.window makeMainWindow];
- [[NSUserDefaults standardUserDefaults] setInteger:self.acBeans.selectionIndex forKey:KEY_LAST_SELECT_PROJECT_INDEX];
- } else {
- [ZGAlert alertWithError:@"未选择项目" window:self.window];
- }
- }
- - (IBAction)onNativeEditBtn:(id)sender {
- ProjectInfo *projectInfo = [self.acBeans.selectedObjects firstObject];
- if (projectInfo) {
- self.EditProjectWC = [[EditProjectWC alloc] initWithWindowNibName:@"EditProjectWC"];
- self.EditProjectWC.projectInfo = projectInfo;
- [self.EditProjectWC setHttpState:NO];
- [self.EditProjectWC showWindow:self.window];
- [self.EditProjectWC.window makeMainWindow];
- [[NSUserDefaults standardUserDefaults] setInteger:self.acBeans.selectionIndex forKey:KEY_LAST_SELECT_PROJECT_INDEX];
- } else {
- [ZGAlert alertWithError:@"未选择项目" window:self.window];
- }
- }
- - (IBAction)onAddProjectBtn:(id)sender {
- self.AddProjectWC = [[AddProjectWC alloc] initWithWindowNibName:@"AddProjectWC"];
- [self.AddProjectWC showWindow:self.window];
- [self.AddProjectWC.window makeMainWindow];
- }
- - (IBAction)onBtnEcpmConfigInit:(id)sender {
- ProjectInfo *projectInfo = [self.acBeans.selectedObjects firstObject];
- self.EcpmConfigInitWC = [[EcpmConfigInitWC alloc] initWithWindowNibName:@"EcpmConfigInitWC"];
- self.EcpmConfigInitWC.projectInfo = projectInfo;
- [self.EcpmConfigInitWC showWindow:self.window];
- [self.EcpmConfigInitWC.window makeMainWindow];
- [[NSUserDefaults standardUserDefaults] setInteger:self.acBeans.selectionIndex forKey:KEY_LAST_SELECT_PROJECT_INDEX];
- }
- - (IBAction)onExportEcpmAdWorthBtn:(id)sender {
- ProjectInfo *projectInfo = [self.acBeans.selectedObjects firstObject];
- [ZGFileUtils deleteFileOrDirectoryAtPath:projectInfo.path.adWorthJsonPath];
- AdWorthJsonGenerator *gen = [[AdWorthJsonGenerator alloc] init];
- gen.projectInfo = projectInfo;
- [gen start];
- [[NSUserDefaults standardUserDefaults] setInteger:self.acBeans.selectionIndex forKey:KEY_LAST_SELECT_PROJECT_INDEX];
- [ZGCommonUtils openFinder:[gen.projectInfo.path.adWorthJsonPath stringByDeletingLastPathComponent]];
- }
- @end
|