1*9949213aSStephan Aßmus /* 2*9949213aSStephan Aßmus * Copyright 2005, Axel Dörfler, axeld@pinc-software.de. All rights reserved. 3*9949213aSStephan Aßmus * Distributed under the terms of the MIT License. 4*9949213aSStephan Aßmus */ 5*9949213aSStephan Aßmus 6*9949213aSStephan Aßmus 7*9949213aSStephan Aßmus #include "ConfigView.h" 8*9949213aSStephan Aßmus #include "ICOTranslator.h" 9*9949213aSStephan Aßmus 10*9949213aSStephan Aßmus #include <StringView.h> 11*9949213aSStephan Aßmus #include <CheckBox.h> 12*9949213aSStephan Aßmus 13*9949213aSStephan Aßmus #include <stdio.h> 14*9949213aSStephan Aßmus #include <string.h> 15*9949213aSStephan Aßmus 16*9949213aSStephan Aßmus 17*9949213aSStephan Aßmus ConfigView::ConfigView(const BRect &frame, uint32 resize, uint32 flags) 18*9949213aSStephan Aßmus : BView(frame, "ICOTranslator Settings", resize, flags) 19*9949213aSStephan Aßmus { 20*9949213aSStephan Aßmus SetViewColor(ui_color(B_PANEL_BACKGROUND_COLOR)); 21*9949213aSStephan Aßmus 22*9949213aSStephan Aßmus font_height fontHeight; 23*9949213aSStephan Aßmus be_bold_font->GetHeight(&fontHeight); 24*9949213aSStephan Aßmus float height = fontHeight.descent + fontHeight.ascent + fontHeight.leading; 25*9949213aSStephan Aßmus 26*9949213aSStephan Aßmus BRect rect(10, 10, 200, 10 + height); 27*9949213aSStephan Aßmus BStringView *stringView = new BStringView(rect, "title", "Windows Icon Images"); 28*9949213aSStephan Aßmus stringView->SetFont(be_bold_font); 29*9949213aSStephan Aßmus stringView->ResizeToPreferred(); 30*9949213aSStephan Aßmus AddChild(stringView); 31*9949213aSStephan Aßmus 32*9949213aSStephan Aßmus rect.OffsetBy(0, height + 10); 33*9949213aSStephan Aßmus char version[256]; 34*9949213aSStephan Aßmus sprintf(version, "Version %d.%d.%d, %s", 35*9949213aSStephan Aßmus int(B_TRANSLATION_MAJOR_VERSION(ICO_TRANSLATOR_VERSION)), 36*9949213aSStephan Aßmus int(B_TRANSLATION_MINOR_VERSION(ICO_TRANSLATOR_VERSION)), 37*9949213aSStephan Aßmus int(B_TRANSLATION_REVISION_VERSION(ICO_TRANSLATOR_VERSION)), 38*9949213aSStephan Aßmus __DATE__); 39*9949213aSStephan Aßmus stringView = new BStringView(rect, "version", version); 40*9949213aSStephan Aßmus stringView->ResizeToPreferred(); 41*9949213aSStephan Aßmus AddChild(stringView); 42*9949213aSStephan Aßmus 43*9949213aSStephan Aßmus GetFontHeight(&fontHeight); 44*9949213aSStephan Aßmus height = fontHeight.descent + fontHeight.ascent + fontHeight.leading; 45*9949213aSStephan Aßmus 46*9949213aSStephan Aßmus rect.OffsetBy(0, height + 5); 47*9949213aSStephan Aßmus stringView = new BStringView(rect, "copyright", B_UTF8_COPYRIGHT "2005 Haiku Inc."); 48*9949213aSStephan Aßmus stringView->ResizeToPreferred(); 49*9949213aSStephan Aßmus AddChild(stringView); 50*9949213aSStephan Aßmus 51*9949213aSStephan Aßmus rect.OffsetBy(0, height + 20); 52*9949213aSStephan Aßmus BCheckBox *checkBox = new BCheckBox(rect, "color", "Write 32 bit images on true color input", NULL); 53*9949213aSStephan Aßmus checkBox->ResizeToPreferred(); 54*9949213aSStephan Aßmus AddChild(checkBox); 55*9949213aSStephan Aßmus 56*9949213aSStephan Aßmus rect.OffsetBy(0, height + 10); 57*9949213aSStephan Aßmus checkBox = new BCheckBox(rect, "size", "Enforce valid icon sizes", NULL); 58*9949213aSStephan Aßmus checkBox->ResizeToPreferred(); 59*9949213aSStephan Aßmus checkBox->SetValue(1); 60*9949213aSStephan Aßmus AddChild(checkBox); 61*9949213aSStephan Aßmus 62*9949213aSStephan Aßmus rect.OffsetBy(0, height + 15); 63*9949213aSStephan Aßmus stringView = new BStringView(rect, "valid1", "Valid icon sizes are 16, 32, or 48"); 64*9949213aSStephan Aßmus stringView->ResizeToPreferred(); 65*9949213aSStephan Aßmus AddChild(stringView); 66*9949213aSStephan Aßmus 67*9949213aSStephan Aßmus rect.OffsetBy(0, height + 5); 68*9949213aSStephan Aßmus stringView = new BStringView(rect, "valid2", "pixel in either direction."); 69*9949213aSStephan Aßmus stringView->ResizeToPreferred(); 70*9949213aSStephan Aßmus AddChild(stringView); 71*9949213aSStephan Aßmus } 72*9949213aSStephan Aßmus 73*9949213aSStephan Aßmus 74*9949213aSStephan Aßmus ConfigView::~ConfigView() 75*9949213aSStephan Aßmus { 76*9949213aSStephan Aßmus } 77*9949213aSStephan Aßmus 78