Chat-O-Matic/application/windows/TemplateWindow.h
Jaidyn Ann 0ffe3e5ce8 Replace CreateAccountMenu() with dedicated class
CreateAccountMenu() is used to populate a BMenu with items corresponding
to the map of accounts provided to it― but when an account is disabled
or enabled, it can't update automatically.

A dedicated class, fAccountsMenu, now replaces it― it'll automatically
repopulate the list whenever the active accounts update.
2021-07-21 12:14:25 -05:00

59 lines
1.3 KiB
C++

/*
* Copyright 2009-2010, Pier Luigi Fiorini. All rights reserved.
* Copyright 2021, Jaidyn Levesque. All rights reserved.
* Distributed under the terms of the MIT License.
*/
#ifndef _TEMPLATE_WINDOW_H
#define _TEMPLATE_WINDOW_H
#include <String.h>
#include <Window.h>
#include "ProtocolTemplate.h"
#include "Server.h"
class BAlert;
class BMenu;
class BMenuField;
class BTextControl;
class ProtocolSettings;
class TemplateView;
class TemplateWindow : public BWindow {
public:
/*! Get template from selected account's protocol
* via ChatProtocol::SettingsTemplate() */
TemplateWindow(const char* title,
const char* templateType, BMessage* msg,
Server* server, bigtime_t instance = -1);
/*! Use only the given template. */
TemplateWindow(const char* title,
ProtocolTemplate* temp, BMessage* msg,
Server* server, bigtime_t instance = -1);
virtual void MessageReceived(BMessage* msg);
void SetTarget(BHandler* target);
private:
void _InitInterface(bigtime_t instance);
void _LoadTemplate();
Server* fServer;
int32 fSelectedAcc;
BMenuField* fMenuField;
ProtocolTemplate* fTemplate;
BString fTemplateType;
TemplateView* fTemplateView;
BButton* fOkButton;
BMessage* fMessage;
BHandler* fTarget;
};
#endif // _TEMPLATE_WINDOW_H