accounts: cleanup UI
- add delete icon in account general details panel
- remove up and down buttons (not used/explained)
Tuleap: #335
Change-Id: Iee1efc57b0b93b3187696da61f244ca0a737f5e0
diff --git a/src/AccGeneralVC.mm b/src/AccGeneralVC.mm
index ecd3eed..d9d1472 100644
--- a/src/AccGeneralVC.mm
+++ b/src/AccGeneralVC.mm
@@ -80,6 +80,11 @@
AccountModel::instance().selectedAccount()->setHasCustomUserAgent([sender state] == NSOnState);
}
+- (IBAction)removeAccount:(id)sender {
+ AccountModel::instance().remove(AccountModel::instance().selectedAccount());
+ AccountModel::instance().save();
+}
+
- (void)loadAccount
{
auto account = AccountModel::instance().selectedAccount();
diff --git a/src/AccRingVC.mm b/src/AccRingVC.mm
index d7ed122..54339f2 100644
--- a/src/AccRingVC.mm
+++ b/src/AccRingVC.mm
@@ -16,12 +16,6 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
-#define ALIAS_TAG 0
-#define HOSTNAME_TAG 1
-#define USERNAME_TAG 2
-#define PASSWORD_TAG 3
-#define USERAGENT_TAG 4
-
#import "AccRingVC.h"
#import <accountmodel.h>
@@ -55,12 +49,18 @@
@synthesize userAgentTextField;
@synthesize allowContacts, allowHistory, allowUnknown;
+typedef NS_ENUM(NSInteger, TagViews) {
+ ALIAS = 0,
+ HOSTNAME,
+ USERAGENT,
+};
+
- (void)awakeFromNib
{
NSLog(@"INIT Ring VC");
- [aliasTextField setTag:ALIAS_TAG];
- [userAgentTextField setTag:USERAGENT_TAG];
- [bootstrapField setTag:HOSTNAME_TAG];
+ [aliasTextField setTag:TagViews::ALIAS];
+ [userAgentTextField setTag:TagViews::USERAGENT];
+ [bootstrapField setTag:TagViews::HOSTNAME];
QObject::connect(AccountModel::instance().selectionModel(),
&QItemSelectionModel::currentChanged,
@@ -71,15 +71,14 @@
});
}
-- (Account*) currentAccount
-{
- auto accIdx = AccountModel::instance().selectionModel()->currentIndex();
- return AccountModel::instance().getAccountByModelIndex(accIdx);
+- (IBAction)removeAccount:(id)sender {
+ AccountModel::instance().remove(AccountModel::instance().selectedAccount());
+ AccountModel::instance().save();
}
- (void)loadAccount
{
- auto account = [self currentAccount];
+ auto account = AccountModel::instance().selectedAccount();
[self.aliasTextField setStringValue:account->alias().toNSString()];
@@ -110,28 +109,28 @@
}
- (IBAction)toggleUpnp:(NSButton *)sender {
- [self currentAccount]->setUpnpEnabled([sender state] == NSOnState);
+ AccountModel::instance().selectedAccount()->setUpnpEnabled([sender state] == NSOnState);
}
- (IBAction)toggleAutoAnswer:(NSButton *)sender {
- [self currentAccount]->setAutoAnswer([sender state] == NSOnState);
+ AccountModel::instance().selectedAccount()->setAutoAnswer([sender state] == NSOnState);
}
- (IBAction)toggleCustomAgent:(NSButton *)sender {
[self.userAgentTextField setEnabled:[sender state] == NSOnState];
- [self currentAccount]->setHasCustomUserAgent([sender state] == NSOnState);
+ AccountModel::instance().selectedAccount()->setHasCustomUserAgent([sender state] == NSOnState);
}
- (IBAction)toggleAllowFromUnknown:(id)sender {
- [self currentAccount]->setAllowIncomingFromUnknown([sender state] == NSOnState);
+ AccountModel::instance().selectedAccount()->setAllowIncomingFromUnknown([sender state] == NSOnState);
[allowHistory setEnabled:![sender state] == NSOnState];
[allowContacts setEnabled:![sender state] == NSOnState];
}
- (IBAction)toggleAllowFromHistory:(id)sender {
- [self currentAccount]->setAllowIncomingFromHistory([sender state] == NSOnState);
+ AccountModel::instance().selectedAccount()->setAllowIncomingFromHistory([sender state] == NSOnState);
}
- (IBAction)toggleAllowFromContacts:(id)sender {
- [self currentAccount]->setAllowIncomingFromContact([sender state] == NSOnState);
+ AccountModel::instance().selectedAccount()->setAllowIncomingFromContact([sender state] == NSOnState);
}
#pragma mark - NSTextFieldDelegate methods
@@ -146,18 +145,15 @@
NSTextField *textField = [notif object];
switch ([textField tag]) {
- case ALIAS_TAG:
- [self currentAccount]->setAlias([[textField stringValue] UTF8String]);
- [self currentAccount]->setDisplayName([[textField stringValue] UTF8String]);
+ case TagViews::ALIAS:
+ AccountModel::instance().selectedAccount()->setAlias([[textField stringValue] UTF8String]);
+ AccountModel::instance().selectedAccount()->setDisplayName([[textField stringValue] UTF8String]);
break;
- case HOSTNAME_TAG:
- [self currentAccount]->setHostname([[textField stringValue] UTF8String]);
+ case TagViews::HOSTNAME:
+ AccountModel::instance().selectedAccount()->setHostname([[textField stringValue] UTF8String]);
break;
- case PASSWORD_TAG:
- [self currentAccount]->setPassword([[textField stringValue] UTF8String]);
- break;
- case USERAGENT_TAG:
- [self currentAccount]->setUserAgent([[textField stringValue] UTF8String]);
+ case TagViews::USERAGENT:
+ AccountModel::instance().selectedAccount()->setUserAgent([[textField stringValue] UTF8String]);
break;
default:
break;
diff --git a/src/AccountsVC.mm b/src/AccountsVC.mm
index a640261..29abd5f 100644
--- a/src/AccountsVC.mm
+++ b/src/AccountsVC.mm
@@ -172,22 +172,6 @@
delete proxyProtocolModel;
}
-- (IBAction)moveUp:(id)sender {
- AccountModel::instance().moveUp();
-}
-
-- (IBAction)moveDown:(id)sender {
- AccountModel::instance().moveDown();
-}
-
-- (IBAction)removeAccount:(id)sender {
-
- if(treeController.selectedNodes.count > 0) {
- QModelIndex qIdx = [treeController toQIdx:[treeController selectedNodes][0]];
- AccountModel::instance().remove(qIdx);
- AccountModel::instance().save();
- }
-}
- (IBAction)addAccount:(id)sender {
QModelIndex qIdx = AccountModel::instance().protocolModel()->selectionModel()->currentIndex();