84 lines
2.4 KiB
C++
84 lines
2.4 KiB
C++
/* PoorManLoggingView.cpp
|
|
*
|
|
* Philip Harrison
|
|
* Started: 5/12/2004
|
|
* Version: 0.1
|
|
*/
|
|
|
|
#include <Box.h>
|
|
#include <Catalog.h>
|
|
#include <LayoutBuilder.h>
|
|
#include <Locale.h>
|
|
|
|
#include "constants.h"
|
|
#include "PoorManWindow.h"
|
|
#include "PoorManApplication.h"
|
|
#include "PoorManLoggingView.h"
|
|
|
|
|
|
#undef B_TRANSLATION_CONTEXT
|
|
#define B_TRANSLATION_CONTEXT "PoorMan"
|
|
|
|
|
|
PoorManLoggingView::PoorManLoggingView(const char* name)
|
|
:
|
|
BView(name, B_WILL_DRAW, NULL)
|
|
{
|
|
PoorManWindow* win;
|
|
win = ((PoorManApplication*)be_app)->GetPoorManWindow();
|
|
|
|
BBox* consoleLogging = new BBox(B_TRANSLATE("Console Logging"));
|
|
consoleLogging->SetLabel(STR_BBX_CONSOLE_LOGGING);
|
|
|
|
// File Logging BBox
|
|
BBox* fileLogging = new BBox(B_TRANSLATE("File Logging"));
|
|
fileLogging->SetLabel(STR_BBX_FILE_LOGGING);
|
|
|
|
// Console Logging
|
|
fLogConsole = new BCheckBox(B_TRANSLATE("Log To Console"),
|
|
STR_CBX_LOG_CONSOLE, new BMessage(MSG_PREF_LOG_CBX_CONSOLE));
|
|
// set the checkbox to the value the program has
|
|
SetLogConsoleValue(win->LogConsoleFlag());
|
|
|
|
// File Logging
|
|
fLogFile = new BCheckBox(B_TRANSLATE("Log To File"), STR_CBX_LOG_FILE,
|
|
new BMessage(MSG_PREF_LOG_CBX_FILE));
|
|
// set the checkbox to the value the program has
|
|
SetLogFileValue(win->LogFileFlag());
|
|
|
|
// File Name
|
|
fLogFileName = new BTextControl(B_TRANSLATE("File Name"),
|
|
STR_TXT_LOG_FILE_NAME, NULL, NULL);
|
|
SetLogFileName(win->LogPath());
|
|
|
|
// Create Log File
|
|
fCreateLogFile = new BButton(B_TRANSLATE("Create Log File"),
|
|
STR_BTN_CREATE_LOG_FILE, new BMessage(MSG_PREF_LOG_BTN_CREATE_FILE));
|
|
|
|
BGroupLayout* consoleLoggingLayout = new BGroupLayout(B_VERTICAL, 0);
|
|
consoleLogging->SetLayout(consoleLoggingLayout);
|
|
|
|
BGroupLayout* fileLoggingLayout = new BGroupLayout(B_VERTICAL,
|
|
B_USE_SMALL_SPACING);
|
|
fileLogging->SetLayout(fileLoggingLayout);
|
|
|
|
BLayoutBuilder::Group<>(this, B_VERTICAL)
|
|
.SetInsets(B_USE_WINDOW_SPACING, B_USE_WINDOW_SPACING,
|
|
B_USE_WINDOW_SPACING, B_USE_DEFAULT_SPACING)
|
|
.AddGroup(consoleLoggingLayout)
|
|
.SetInsets(B_USE_ITEM_INSETS)
|
|
.AddGroup(B_HORIZONTAL)
|
|
.SetInsets(0, B_USE_ITEM_INSETS, 0, 0)
|
|
.Add(fLogConsole)
|
|
.AddGlue()
|
|
.End()
|
|
.End()
|
|
.AddGroup(fileLoggingLayout)
|
|
.SetInsets(B_USE_ITEM_INSETS)
|
|
.AddGrid(B_USE_SMALL_SPACING, B_USE_SMALL_SPACING)
|
|
.SetInsets(0, B_USE_ITEM_INSETS, 0, 0)
|
|
.Add(fLogFile, 0, 0)
|
|
.AddTextControl(fLogFileName, 0, 1, B_ALIGN_LEFT, 1, 2)
|
|
.Add(fCreateLogFile, 2, 2);
|
|
}
|