Removed FloatSpinCtrl since it was unused and can be replaced by wxSpinCtrlDouble now that we have switched to wx2.9
Originally committed to SVN as r3232.
This commit is contained in:
parent
581b515f22
commit
6d82665116
4 changed files with 0 additions and 294 deletions
|
@ -655,14 +655,6 @@
|
||||||
RelativePath="..\..\src\colour_button.h"
|
RelativePath="..\..\src\colour_button.h"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\float_spin.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\float_spin.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\src\help_button.cpp"
|
RelativePath="..\..\src\help_button.cpp"
|
||||||
>
|
>
|
||||||
|
|
|
@ -1,186 +0,0 @@
|
||||||
// Copyright (c) 2007, Rodrigo Braz Monteiro
|
|
||||||
// All rights reserved.
|
|
||||||
//
|
|
||||||
// Redistribution and use in source and binary forms, with or without
|
|
||||||
// modification, are permitted provided that the following conditions are met:
|
|
||||||
//
|
|
||||||
// * Redistributions of source code must retain the above copyright notice,
|
|
||||||
// this list of conditions and the following disclaimer.
|
|
||||||
// * Redistributions in binary form must reproduce the above copyright notice,
|
|
||||||
// this list of conditions and the following disclaimer in the documentation
|
|
||||||
// and/or other materials provided with the distribution.
|
|
||||||
// * Neither the name of the Aegisub Group nor the names of its contributors
|
|
||||||
// may be used to endorse or promote products derived from this software
|
|
||||||
// without specific prior written permission.
|
|
||||||
//
|
|
||||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
|
||||||
// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
||||||
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
||||||
// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
|
|
||||||
// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
|
||||||
// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
|
||||||
// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
|
||||||
// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
|
||||||
// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
|
||||||
// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
||||||
// POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
//
|
|
||||||
// -----------------------------------------------------------------------------
|
|
||||||
//
|
|
||||||
// AEGISUB
|
|
||||||
//
|
|
||||||
// Website: http://aegisub.cellosoft.com
|
|
||||||
// Contact: mailto:zeratul@cellosoft.com
|
|
||||||
//
|
|
||||||
|
|
||||||
|
|
||||||
///////////
|
|
||||||
// Headers
|
|
||||||
#include "config.h"
|
|
||||||
|
|
||||||
#include <wx/wxprec.h>
|
|
||||||
#include <wx/sizer.h>
|
|
||||||
#include "float_spin.h"
|
|
||||||
#include "utils.h"
|
|
||||||
#include "validators.h"
|
|
||||||
|
|
||||||
|
|
||||||
///////
|
|
||||||
// IDs
|
|
||||||
enum {
|
|
||||||
SPIN_BUTTON = 1100,
|
|
||||||
TEXT_EDIT
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
///////////////
|
|
||||||
// Constructor
|
|
||||||
FloatSpinCtrl::FloatSpinCtrl(wxWindow* parent,wxWindowID id,const wxPoint& pos,const wxSize& size,
|
|
||||||
long style, double _min, double _max, double initial, double _step, const wxString& name)
|
|
||||||
: wxPanel(parent,id,pos,size,style,name)
|
|
||||||
{
|
|
||||||
// Set data
|
|
||||||
value = initial;
|
|
||||||
|
|
||||||
// Create sub-controls
|
|
||||||
text = new FloatSpinText(this,TEXT_EDIT);
|
|
||||||
button = new wxSpinButton(this,SPIN_BUTTON,wxDefaultPosition,wxSize(-1,20),wxSP_VERTICAL);
|
|
||||||
SetRange(_min,_max,_step);
|
|
||||||
|
|
||||||
// Set sizer
|
|
||||||
wxSizer *sizer = new wxBoxSizer(wxHORIZONTAL);
|
|
||||||
sizer->Add(text,1,wxEXPAND,0);
|
|
||||||
sizer->Add(button,0,wxEXPAND,0);
|
|
||||||
SetSizer(sizer);
|
|
||||||
//sizer->SetSizeHints(this);
|
|
||||||
|
|
||||||
// Update text
|
|
||||||
UpdateText();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/////////////
|
|
||||||
// Set value
|
|
||||||
void FloatSpinCtrl::SetValue(double _value) {
|
|
||||||
value = _value;
|
|
||||||
button->SetValue(int(value/step));
|
|
||||||
text->SetValue(PrettyFloatD(value));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/////////////
|
|
||||||
// Set range
|
|
||||||
void FloatSpinCtrl::SetRange(double _min,double _max,double _step) {
|
|
||||||
min = _min;
|
|
||||||
max = _max;
|
|
||||||
step = _step;
|
|
||||||
button->SetRange(int(min/step),int(max/step));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
///////////////
|
|
||||||
// Update text
|
|
||||||
void FloatSpinCtrl::UpdateText() {
|
|
||||||
text->SetValue(PrettyFloatD(value));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
///////////////
|
|
||||||
// Event table
|
|
||||||
BEGIN_EVENT_TABLE(FloatSpinCtrl,wxPanel)
|
|
||||||
EVT_SPIN(SPIN_BUTTON, FloatSpinCtrl::OnSpin)
|
|
||||||
END_EVENT_TABLE()
|
|
||||||
|
|
||||||
|
|
||||||
///////////
|
|
||||||
// On spin
|
|
||||||
void FloatSpinCtrl::OnSpin(wxSpinEvent &event) {
|
|
||||||
value = double(event.GetPosition())*step;
|
|
||||||
UpdateText();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
////////////////////////// EDIT BOX ////////////////////////////
|
|
||||||
|
|
||||||
///////////////
|
|
||||||
// Constructor
|
|
||||||
FloatSpinText::FloatSpinText(FloatSpinCtrl *_parent,int id)
|
|
||||||
: wxTextCtrl(_parent,id,_T(""),wxDefaultPosition,wxDefaultSize,0,NumValidator(NULL,true,true))
|
|
||||||
{
|
|
||||||
parent = _parent;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
//////////////
|
|
||||||
// Focus lost
|
|
||||||
void FloatSpinText::OnKillFocus(wxFocusEvent &event) {
|
|
||||||
SendValue();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
///////////////
|
|
||||||
// Key pressed
|
|
||||||
void FloatSpinText::OnKeyPress(wxKeyEvent &event) {
|
|
||||||
int code = event.GetKeyCode();
|
|
||||||
if (code == WXK_UP || code == WXK_DOWN) {
|
|
||||||
// Update first
|
|
||||||
SendValue();
|
|
||||||
|
|
||||||
// Get delta
|
|
||||||
int sign = -1;
|
|
||||||
if (code == WXK_UP) sign = 1;
|
|
||||||
|
|
||||||
// Change value
|
|
||||||
int value = parent->button->GetValue()+sign;
|
|
||||||
parent->button->SetValue(value);
|
|
||||||
parent->value = parent->button->GetValue()*parent->step;
|
|
||||||
parent->UpdateText();
|
|
||||||
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
event.Skip();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
//////////////
|
|
||||||
// Send value
|
|
||||||
void FloatSpinText::SendValue() {
|
|
||||||
try {
|
|
||||||
double value = 0.0;
|
|
||||||
GetValue().ToDouble(&value);
|
|
||||||
int pos = int(value/parent->step);
|
|
||||||
parent->button->SetValue(pos);
|
|
||||||
parent->UpdateText();
|
|
||||||
}
|
|
||||||
catch (...) {
|
|
||||||
parent->UpdateText();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
///////////////
|
|
||||||
// Event table
|
|
||||||
BEGIN_EVENT_TABLE(FloatSpinText,wxTextCtrl)
|
|
||||||
EVT_KEY_DOWN(FloatSpinText::OnKeyPress)
|
|
||||||
EVT_KILL_FOCUS(FloatSpinText::OnKillFocus)
|
|
||||||
END_EVENT_TABLE()
|
|
|
@ -1,98 +0,0 @@
|
||||||
// Copyright (c) 2007, Rodrigo Braz Monteiro
|
|
||||||
// All rights reserved.
|
|
||||||
//
|
|
||||||
// Redistribution and use in source and binary forms, with or without
|
|
||||||
// modification, are permitted provided that the following conditions are met:
|
|
||||||
//
|
|
||||||
// * Redistributions of source code must retain the above copyright notice,
|
|
||||||
// this list of conditions and the following disclaimer.
|
|
||||||
// * Redistributions in binary form must reproduce the above copyright notice,
|
|
||||||
// this list of conditions and the following disclaimer in the documentation
|
|
||||||
// and/or other materials provided with the distribution.
|
|
||||||
// * Neither the name of the Aegisub Group nor the names of its contributors
|
|
||||||
// may be used to endorse or promote products derived from this software
|
|
||||||
// without specific prior written permission.
|
|
||||||
//
|
|
||||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
|
||||||
// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
||||||
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
||||||
// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
|
|
||||||
// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
|
||||||
// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
|
||||||
// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
|
||||||
// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
|
||||||
// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
|
||||||
// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
||||||
// POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
//
|
|
||||||
// -----------------------------------------------------------------------------
|
|
||||||
//
|
|
||||||
// AEGISUB
|
|
||||||
//
|
|
||||||
// Website: http://aegisub.cellosoft.com
|
|
||||||
// Contact: mailto:zeratul@cellosoft.com
|
|
||||||
//
|
|
||||||
|
|
||||||
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
|
|
||||||
///////////
|
|
||||||
// Headers
|
|
||||||
#include <wx/wxprec.h>
|
|
||||||
#include <wx/textctrl.h>
|
|
||||||
#include <wx/panel.h>
|
|
||||||
#include <wx/spinbutt.h>
|
|
||||||
|
|
||||||
|
|
||||||
//////////////
|
|
||||||
// Prototypes
|
|
||||||
class FloatSpinCtrl;
|
|
||||||
|
|
||||||
|
|
||||||
///////////////////
|
|
||||||
// Float spin text
|
|
||||||
class FloatSpinText : public wxTextCtrl {
|
|
||||||
friend class FloatSpinCtrl;
|
|
||||||
private:
|
|
||||||
FloatSpinCtrl *parent;
|
|
||||||
|
|
||||||
FloatSpinText(FloatSpinCtrl *parent,int id);
|
|
||||||
|
|
||||||
void OnKillFocus(wxFocusEvent &event);
|
|
||||||
void OnKeyPress(wxKeyEvent &event);
|
|
||||||
void SendValue();
|
|
||||||
|
|
||||||
DECLARE_EVENT_TABLE()
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
//////////////////////
|
|
||||||
// Float spin control
|
|
||||||
class FloatSpinCtrl : public wxPanel {
|
|
||||||
friend class FloatSpinText;
|
|
||||||
private:
|
|
||||||
wxTextCtrl *text;
|
|
||||||
wxSpinButton *button;
|
|
||||||
|
|
||||||
double min;
|
|
||||||
double max;
|
|
||||||
double step;
|
|
||||||
double value;
|
|
||||||
|
|
||||||
void UpdateText();
|
|
||||||
|
|
||||||
void OnSpin(wxSpinEvent &event);
|
|
||||||
|
|
||||||
public:
|
|
||||||
FloatSpinCtrl(wxWindow* parent,wxWindowID id=-1,const wxPoint& pos=wxDefaultPosition,const wxSize& size = wxDefaultSize, long style = wxSP_ARROW_KEYS, double min = 0.0, double max = 100.0, double initial = 0.0, double step = 1.0, const wxString& name = _T("wxSpinCtrl"));
|
|
||||||
|
|
||||||
void SetValue(double value);
|
|
||||||
void SetRange(double min,double max,double step);
|
|
||||||
|
|
||||||
double GetValue() { return value; }
|
|
||||||
double GetMin() { return min; }
|
|
||||||
double GetMax() { return max; }
|
|
||||||
|
|
||||||
DECLARE_EVENT_TABLE()
|
|
||||||
};
|
|
|
@ -60,7 +60,6 @@
|
||||||
#include "utils.h"
|
#include "utils.h"
|
||||||
#include "dialog_search_replace.h"
|
#include "dialog_search_replace.h"
|
||||||
#include "idle_field_event.h"
|
#include "idle_field_event.h"
|
||||||
#include "float_spin.h"
|
|
||||||
#include "tooltip_manager.h"
|
#include "tooltip_manager.h"
|
||||||
#include "osx_bevelButton.h"
|
#include "osx_bevelButton.h"
|
||||||
|
|
||||||
|
@ -148,7 +147,6 @@ SubsEditBox::SubsEditBox (wxWindow *parent,SubtitlesGrid *gridp) : wxPanel(paren
|
||||||
|
|
||||||
// Top sizer
|
// Top sizer
|
||||||
TopSizer = new wxBoxSizer(wxHORIZONTAL);
|
TopSizer = new wxBoxSizer(wxHORIZONTAL);
|
||||||
//TopSizer->Add(new FloatSpinCtrl(this,-1,wxDefaultPosition,wxSize(40,20),0,-20.0,50.0,0.0,0.5));
|
|
||||||
TopSizer->Add(CommentBox,0,wxRIGHT | wxALIGN_CENTER,5);
|
TopSizer->Add(CommentBox,0,wxRIGHT | wxALIGN_CENTER,5);
|
||||||
TopSizer->Add(StyleBox,2,wxRIGHT|wxALIGN_CENTER,5);
|
TopSizer->Add(StyleBox,2,wxRIGHT|wxALIGN_CENTER,5);
|
||||||
TopSizer->Add(ActorBox,2,wxRIGHT|wxALIGN_CENTER,5);
|
TopSizer->Add(ActorBox,2,wxRIGHT|wxALIGN_CENTER,5);
|
||||||
|
|
Loading…
Reference in a new issue