fixed: calculating the size of the main window
now it looks good on MS Vista and when a user changes size of some widgets such as a border, font size, etc. added: spanish language to the setup (installer) added: the setup will remove mingwm10.dll if it exists in the program directory added: on display tab: we can select 'deg' 'rad' or 'grad' for calculating in such functions: sin,cos,tan,cot,asin,acos,atan,acot added: macro TTCALC_CONVERT if not defined there will not be a convert tab (the convert tab is not finished) added: a new icon with following dimensions: '48x48' '32x32' '16x16' removed: parameter for gcc: -mthreads with -mthreads it is possible (on windows) to release some kind of 'destructors' belonging to a thread when the specific thread exists (it prevents some kind of memory leaks) in the TTCalc when the second thread exists then there is the end of the program and we can not use '-mthreads' removed: file TODO (I didn't use the file) git-svn-id: svn://ttmath.org/publicrep/ttcalc/trunk@114 e52654a7-88a9-db11-a3e9-0013d4bc506e
This commit is contained in:
parent
2ff2aebbee
commit
ff62d833c9
63
CHANGELOG
63
CHANGELOG
|
@ -1,3 +1,43 @@
|
||||||
|
Version 0.8.3 prerelease
|
||||||
|
* fixed: calculating the size of the main window
|
||||||
|
now it looks good on MS Vista and when a user changes size of some
|
||||||
|
widgets such as a border, font size, etc.
|
||||||
|
* changed: variables and functions are case-sensitive now, e.g.
|
||||||
|
'x' is not the same as 'X'
|
||||||
|
* changed: precision:
|
||||||
|
small - the same as previous
|
||||||
|
medium - 288 bits for the mantissa, 64 bits for the exponent
|
||||||
|
big - 864 bits for the mantissa, 128 bits for the exponent
|
||||||
|
previous were:
|
||||||
|
medium - 192 bits for the mantissa, 64 bits for the exponent
|
||||||
|
big - 288 bits for the mantissa, 96 bits for the exponent
|
||||||
|
* added: when a user presses CTRL+C then the result will be
|
||||||
|
copied into the clipboard (if the current control which
|
||||||
|
has a focus is not an edit control, or if it is an edit
|
||||||
|
but has no selection)
|
||||||
|
* added: when a user presses CTRL+V then the text from the clipboard
|
||||||
|
will be copied into the edit control
|
||||||
|
(the focus can be anywhere but it cannot be on another edit control)
|
||||||
|
* added: 'decimal point' option on the display tab
|
||||||
|
* added: variables and functions can have underline characters
|
||||||
|
in their names
|
||||||
|
* added: from TTMath 0.8.3: a short form of multiplication
|
||||||
|
(without the '*' character) e.g. '5y'
|
||||||
|
(it's used only if the second parameter is a variable
|
||||||
|
or function)
|
||||||
|
* added: 'remove trailing zeroes' option on 'display' tab
|
||||||
|
* added: new language: spanish
|
||||||
|
translation made by Alejandro S. Valdezate
|
||||||
|
alesanval at gmail dot com
|
||||||
|
* added: spanish language to the setup (installer)
|
||||||
|
* added: the setup will remove mingwm10.dll if it exists in the program
|
||||||
|
directory
|
||||||
|
* added: on display tab: we can select 'deg' 'rad' or 'grad' for calculating
|
||||||
|
in such functions: sin,cos,tan,cot,asin,acos,atan,acot
|
||||||
|
* removed: 'cut off last non valid digits' on 'rounding' option
|
||||||
|
on 'display' tab
|
||||||
|
|
||||||
|
|
||||||
Version 0.8.2 portable (2007.07.01):
|
Version 0.8.2 portable (2007.07.01):
|
||||||
* added: the portable version of the program TTCalc
|
* added: the portable version of the program TTCalc
|
||||||
it uses *.ini config file from the same folder where
|
it uses *.ini config file from the same folder where
|
||||||
|
@ -7,6 +47,7 @@ Version 0.8.2 portable (2007.07.01):
|
||||||
the Ultimate Packer for eXecutables)
|
the Ultimate Packer for eXecutables)
|
||||||
there are no other differences between version 0.8.1 and this one
|
there are no other differences between version 0.8.1 and this one
|
||||||
|
|
||||||
|
|
||||||
Version 0.8.1 (2007.04.17):
|
Version 0.8.1 (2007.04.17):
|
||||||
* changed: on win9x the configuration file is in a folder like:
|
* changed: on win9x the configuration file is in a folder like:
|
||||||
"c:\windows\data application\ttcalc\" now
|
"c:\windows\data application\ttcalc\" now
|
||||||
|
@ -19,6 +60,7 @@ Version 0.8.1 (2007.04.17):
|
||||||
especially the factorial() function
|
especially the factorial() function
|
||||||
* changed: from TTMath 0.8.1: the way of parsing operators
|
* changed: from TTMath 0.8.1: the way of parsing operators
|
||||||
|
|
||||||
|
|
||||||
Version 0.8.0 (2007.04.02):
|
Version 0.8.0 (2007.04.02):
|
||||||
* added: the del key deletes a variable or a function now
|
* added: the del key deletes a variable or a function now
|
||||||
(if the focus is on the list)
|
(if the focus is on the list)
|
||||||
|
@ -28,7 +70,7 @@ Version 0.8.0 (2007.04.02):
|
||||||
DegToDeg(deg, min, sec), DegToRad(deg), DegToRad(deg, min, sec),
|
DegToDeg(deg, min, sec), DegToRad(deg), DegToRad(deg, min, sec),
|
||||||
RadToDeg(rad), Ceil(x), Floor(x), Sqrt(x), Sinh(x), Cosh(x),
|
RadToDeg(rad), Ceil(x), Floor(x), Sqrt(x), Sinh(x), Cosh(x),
|
||||||
Tanh(x) /Tgh(x)/, Coth(x) /Ctgh(x)/
|
Tanh(x) /Tgh(x)/, Coth(x) /Ctgh(x)/
|
||||||
* added: a help
|
* added: help
|
||||||
* changed: from TTMath 0.8.0:
|
* changed: from TTMath 0.8.0:
|
||||||
renamed: CTan() into Cot() or Ctg()
|
renamed: CTan() into Cot() or Ctg()
|
||||||
renamed: ACTan() into ACot() or ACtg()
|
renamed: ACTan() into ACot() or ACtg()
|
||||||
|
@ -41,6 +83,7 @@ Version 0.8.0 (2007.04.02):
|
||||||
* fixed: when a user started navigating from the keyboard the program showed
|
* fixed: when a user started navigating from the keyboard the program showed
|
||||||
a wrong variable or a funtion in the edit dialog
|
a wrong variable or a funtion in the edit dialog
|
||||||
|
|
||||||
|
|
||||||
Version 0.7.3 (2007.03.08):
|
Version 0.7.3 (2007.03.08):
|
||||||
* added: the program shows some kind of errors itself
|
* added: the program shows some kind of errors itself
|
||||||
* added: checking whether an user has inserted a correct value of a variable
|
* added: checking whether an user has inserted a correct value of a variable
|
||||||
|
@ -52,18 +95,20 @@ Version 0.7.3 (2007.03.08):
|
||||||
example when someone took his configuration file into a new computer and
|
example when someone took his configuration file into a new computer and
|
||||||
the new computer has a smaller screen)
|
the new computer has a smaller screen)
|
||||||
|
|
||||||
|
|
||||||
Version 0.7.2 (2007.02.28):
|
Version 0.7.2 (2007.02.28):
|
||||||
* added buttons Sgn and Mod
|
* added: buttons Sgn and Mod
|
||||||
* the button 'err' is active when there's actually an error now
|
* changed: the button 'err' is active when there's actually an error now
|
||||||
* added buttons: ASin, ACos, ATan, ACTan
|
* added: buttons: ASin, ACos, ATan, ACTan
|
||||||
* fixed: the program didn't save the current language into the configuration file
|
* fixed: the program didn't save the current language into the configuration file
|
||||||
* fixed: the second thread didn't read the main window correctly and it caused
|
* fixed: the second thread didn't read the main window correctly and it caused
|
||||||
small problems when an user was typing into the first edit control
|
small problems when an user was typing into the first edit control
|
||||||
|
|
||||||
|
|
||||||
Version 0.7.1 (2007.02.08):
|
Version 0.7.1 (2007.02.08):
|
||||||
* added a button 'err' (error) on the first tab
|
* added: button 'err' (error) on the first tab
|
||||||
* the input edit can have 2048 characters now
|
* changed: the input edit can have 2048 characters now
|
||||||
* added remembering the vertical size into the config file
|
* added: remembering the vertical size into the config file
|
||||||
* fixed a problem with the 'tab' key
|
* fixed: a problem with the 'tab' key
|
||||||
* added a message 'Calculating...' when an user clicks on the 'err' button
|
* added: a message 'Calculating...' when an user clicks on the 'err' button
|
||||||
during calculating something
|
during calculating something
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
Copyright (c) 2006-2007, Tomasz Sowa
|
Copyright (c) 2006-2009, Tomasz Sowa
|
||||||
All rights reserved.
|
All rights reserved.
|
||||||
|
|
||||||
Redistribution and use in source and binary forms, with or without
|
Redistribution and use in source and binary forms, with or without
|
||||||
|
|
28
README
28
README
|
@ -1,19 +1,19 @@
|
||||||
TTCalc
|
TTCalc
|
||||||
|
|
||||||
TTCalc is a mathematical calculator. It has a nice user interface,
|
TTCalc is an open source mathematical calculator. It features arithmetical
|
||||||
formulas for calculating can be inserted by using a keyboard or a mouse.
|
functions, trigonometric functions, inverse trigonometric functions,
|
||||||
The result is automatically shown in a second window without using any
|
hyperbolic functions, inverse hyperbolic functions, logical operators,
|
||||||
additional keys such as 'equal'. The program possess trigonometric
|
logarithms, functions for converting between degrees and radians and
|
||||||
functions, inverse trigonometric functions, hyperbolic functions,
|
so on. Additionally the program allows a user to define his own
|
||||||
logical operators, logarithms, functions for converting between degrees
|
variables and functions.
|
||||||
and radians and so on. Additionally the program allows the user to
|
|
||||||
define his own variables and functions. Calculations are performed by
|
The program possess an easy to use interface. Calculations are performed
|
||||||
using floating point numbers with three kind of precision, the biggest
|
by using floating point numbers with three kind of precision, the biggest
|
||||||
has 288 bits for its mantissa and 96 bits for its exponent that is
|
has 864 bits for its mantissa and 128 bits for its exponent that is about
|
||||||
about 2.551...e+11925026709067095507636213441 with 85 valid decimal
|
6.7....e+51217599719369681875006054625051616609 with 258 valid decimal digits.
|
||||||
digits. The program independently allows to insert and display values
|
TTCalc independently allows to insert and display values with the base
|
||||||
with the base (radix) from two to sixteen.
|
(radix) from two to sixteen.
|
||||||
|
|
||||||
Author: Tomasz Sowa <t.sowa AnTispam slimaczek.pl>
|
Author: Tomasz Sowa <t.sowa AnTispam slimaczek.pl>
|
||||||
Project page: http://sourceforge.net/projects/ttcalc
|
Project page: http://ttcalc.sourceforge.net/
|
||||||
Licence: BSD (open source)
|
Licence: BSD (open source)
|
||||||
|
|
Binary file not shown.
After Width: | Height: | Size: 7.2 KiB |
|
@ -1,4 +1,4 @@
|
||||||
Copyright (c) 2006-2007, Tomasz Sowa
|
Copyright (c) 2006-2009, Tomasz Sowa
|
||||||
All rights reserved.
|
All rights reserved.
|
||||||
|
|
||||||
Redistribution and use in source and binary forms, with or without
|
Redistribution and use in source and binary forms, with or without
|
||||||
|
|
|
@ -3,34 +3,39 @@
|
||||||
|
|
||||||
[Setup]
|
[Setup]
|
||||||
AppName=TTCalc
|
AppName=TTCalc
|
||||||
AppVerName=TTCalc 0.8.1
|
AppVerName=TTCalc 0.8.3
|
||||||
AppPublisher=Tomasz Sowa
|
AppPublisher=Tomasz Sowa
|
||||||
AppPublisherURL=http://sourceforge.net/projects/ttcalc
|
AppPublisherURL=http://ttcalc.sourceforge.net
|
||||||
AppSupportURL=http://sourceforge.net/projects/ttcalc
|
AppSupportURL=http://ttcalc.sourceforge.net
|
||||||
AppUpdatesURL=http://sourceforge.net/projects/ttcalc
|
AppUpdatesURL=http://ttcalc.sourceforge.net
|
||||||
DefaultDirName={pf}\TTCalc
|
DefaultDirName={pf}\TTCalc
|
||||||
DefaultGroupName=TTCalc
|
DefaultGroupName=TTCalc
|
||||||
AllowNoIcons=yes
|
AllowNoIcons=yes
|
||||||
|
; special COPYRIGHT version (without a new line characters in the clause -- it is better displayed in the setup window)
|
||||||
LicenseFile=COPYRIGHT
|
LicenseFile=COPYRIGHT
|
||||||
OutputDir=..\..\output
|
OutputDir=..\..\output
|
||||||
OutputBaseFilename=ttcalc-setup
|
OutputBaseFilename=ttcalc-setup
|
||||||
Compression=lzma
|
Compression=lzma
|
||||||
SolidCompression=yes
|
SolidCompression=yes
|
||||||
|
ShowUndisplayableLanguages=yes
|
||||||
|
|
||||||
[Languages]
|
[Languages]
|
||||||
Name: "english"; MessagesFile: "compiler:Default.isl"
|
Name: "english"; MessagesFile: "compiler:Default.isl"
|
||||||
Name: "polish"; MessagesFile: "compiler:Languages\Polish.isl"
|
Name: "polish"; MessagesFile: "compiler:Languages\Polish.isl"
|
||||||
|
Name: "spanish"; MessagesFile: "compiler:Languages\Spanish.isl"
|
||||||
|
|
||||||
|
[InstallDelete]
|
||||||
|
; prior to 0.8.3 we were using mingwm10.dll (now it is not needed and will be deleted if exists)
|
||||||
|
Type: files; Name: "{app}\mingwm10.dll"
|
||||||
|
|
||||||
[Tasks]
|
[Tasks]
|
||||||
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
|
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
|
||||||
|
|
||||||
[Files]
|
[Files]
|
||||||
Source: "..\..\output\ttcalc.exe"; DestDir: "{app}"; Flags: ignoreversion
|
Source: "..\..\output\ttcalc.exe"; DestDir: "{app}"; Flags: ignoreversion
|
||||||
Source: "..\..\output\mingwm10.dll"; DestDir: "{app}"; Flags: ignoreversion
|
|
||||||
Source: "..\..\output\ttcalc.chm"; DestDir: "{app}"; Flags: ignoreversion
|
Source: "..\..\output\ttcalc.chm"; DestDir: "{app}"; Flags: ignoreversion
|
||||||
Source: "..\COPYRIGHT"; DestDir: "{app}"; Flags: ignoreversion
|
Source: "..\COPYRIGHT"; DestDir: "{app}"; Flags: ignoreversion
|
||||||
Source: "ttcalc.ini"; DestDir: "{userappdata}\TTCalc"; Flags: onlyifdoesntexist
|
; now we do not use *.ini file in the installer
|
||||||
; NOTE: Don't use "Flags: ignoreversion" on any shared system files
|
; NOTE: Don't use "Flags: ignoreversion" on any shared system files
|
||||||
|
|
||||||
[Icons]
|
[Icons]
|
||||||
|
|
|
@ -1,21 +0,0 @@
|
||||||
# the configuration file of the program ttcalc
|
|
||||||
|
|
||||||
[GLOBAL]
|
|
||||||
always.on.top = 0
|
|
||||||
view = 0
|
|
||||||
maximized = 0
|
|
||||||
x = 0
|
|
||||||
y = 0
|
|
||||||
size.x = 402
|
|
||||||
size.y = 288
|
|
||||||
precision = 0
|
|
||||||
disp.input = 10
|
|
||||||
disp.output = 10
|
|
||||||
language = 0
|
|
||||||
disp.alw.scientific = 0
|
|
||||||
disp.when.scientific = 15
|
|
||||||
disp.rounding = -2
|
|
||||||
|
|
||||||
[variables]
|
|
||||||
|
|
||||||
[functions]
|
|
|
@ -1,5 +1,6 @@
|
||||||
CC = g++
|
CC = g++
|
||||||
CFLAGS = -Wall -pedantic -s -O2 -mwindows -mthreads -I../../../ttmath
|
#CFLAGS = -Wall -pedantic -s -O2 -mwindows -I../../../ttmath -DTTCALC_CONVERT
|
||||||
|
CFLAGS = -Wall -pedantic -s -O2 -mwindows -I../../../ttmath
|
||||||
name = ttcalc.exe
|
name = ttcalc.exe
|
||||||
|
|
||||||
# the name of the help is also set in the html help workshop project file
|
# the name of the help is also set in the html help workshop project file
|
||||||
|
@ -21,6 +22,7 @@ $(dir_output)/$(name): $(o)
|
||||||
ttcalc: $(dir_output)/$(name)
|
ttcalc: $(dir_output)/$(name)
|
||||||
|
|
||||||
resource.o: resource.rc
|
resource.o: resource.rc
|
||||||
|
#windres -DTTCALC_CONVERT resource.rc resource.o
|
||||||
windres resource.rc resource.o
|
windres resource.rc resource.o
|
||||||
|
|
||||||
$(dir_output)/$(helpname): $(helpdep)
|
$(dir_output)/$(helpname): $(helpdep)
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
o = resource.o calculation.o convert.o functions.o iniparser.o languages.o mainwindow.o parsermanager.o programresources.o tabs.o variables.o winmain.o
|
o = resource.o calculation.o convert.o functions.o iniparser.o languages.o mainwindow.o parsermanager.o programresources.o tabs.o variables.o winmain.o
|
||||||
|
|
||||||
|
|
||||||
calculation.o: calculation.cpp compileconfig.h parsermanager.h resource.h programresources.h iniparser.h languages.h bigtypes.h threadcontroller.h stopcalculating.h convert.h tabs.h messages.h
|
calculation.o: calculation.cpp compileconfig.h parsermanager.h resource.h programresources.h iniparser.h languages.h bigtypes.h threadcontroller.h stopcalculating.h convert.h tabs.h messages.h
|
||||||
convert.o: convert.cpp convert.h compileconfig.h bigtypes.h
|
convert.o: convert.cpp convert.h compileconfig.h bigtypes.h
|
||||||
functions.o: functions.cpp compileconfig.h tabs.h resource.h messages.h programresources.h iniparser.h languages.h bigtypes.h threadcontroller.h stopcalculating.h convert.h
|
functions.o: functions.cpp compileconfig.h tabs.h resource.h messages.h programresources.h iniparser.h languages.h bigtypes.h threadcontroller.h stopcalculating.h convert.h
|
||||||
|
@ -32,4 +33,4 @@ helpdep = ../help/arithmetic_functions.html \
|
||||||
../help/toc.hhc \
|
../help/toc.hhc \
|
||||||
../help/help.hhp
|
../help/help.hhp
|
||||||
|
|
||||||
setupdep = ttcalc help ../setup/innosetup.iss ../setup/COPYRIGHT ../setup/ttcalc.ini
|
setupdep = ttcalc help ../setup/innosetup.iss ../setup/COPYRIGHT
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
CC = g++
|
CC = g++
|
||||||
CFLAGS = -Wall -pedantic -s -Os -fno-default-inline -mwindows -mthreads -I../../../ttmath -DTTCALC_PORTABLE
|
CFLAGS = -Wall -pedantic -s -Os -fno-default-inline -mwindows -I../../../ttmath -DTTCALC_PORTABLE
|
||||||
name = ttcalcp.exe
|
name = ttcalcp.exe
|
||||||
dir_output = ../../output
|
dir_output = ../../output
|
||||||
compressor = upx
|
compressor = upx
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2006-2008, Tomasz Sowa
|
* Copyright (c) 2006-2009, Tomasz Sowa
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* Redistribution and use in source and binary forms, with or without
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
|
|
@ -274,7 +274,7 @@ void Languages::InitGuiMessagesTab()
|
||||||
InsertGuiPair(combo_rounding_integer,"to integer");
|
InsertGuiPair(combo_rounding_integer,"to integer");
|
||||||
InsertGuiPair(combo_rounding_to_number,"to");
|
InsertGuiPair(combo_rounding_to_number,"to");
|
||||||
InsertGuiPair(combo_rounding_after_comma,"digit(s)");
|
InsertGuiPair(combo_rounding_after_comma,"digit(s)");
|
||||||
InsertGuiPair(check_remove_zeroes,"Remove trailing zeroes");
|
InsertGuiPair(check_remove_zeroes,"Remove last trailing zeroes");
|
||||||
|
|
||||||
InsertGuiPair(display_input, "Input");
|
InsertGuiPair(display_input, "Input");
|
||||||
InsertGuiPair(display_output, "Output");
|
InsertGuiPair(display_output, "Output");
|
||||||
|
@ -283,6 +283,7 @@ void Languages::InitGuiMessagesTab()
|
||||||
InsertGuiPair(display_not_always_scientific,"When the exponent is greater than:");
|
InsertGuiPair(display_not_always_scientific,"When the exponent is greater than:");
|
||||||
InsertGuiPair(display_group_scientific, "Print the result as the scientific value");
|
InsertGuiPair(display_group_scientific, "Print the result as the scientific value");
|
||||||
InsertGuiPair(display_decimal_point, "Decimal point");
|
InsertGuiPair(display_decimal_point, "Decimal point");
|
||||||
|
InsertGuiPair(display_deg_red_grad, "sin/cos asin/acos");
|
||||||
InsertGuiPair(convert_type, "Type");
|
InsertGuiPair(convert_type, "Type");
|
||||||
InsertGuiPair(convert_input, "Input");
|
InsertGuiPair(convert_input, "Input");
|
||||||
InsertGuiPair(convert_output, "Output");
|
InsertGuiPair(convert_output, "Output");
|
||||||
|
@ -407,6 +408,7 @@ void Languages::InitGuiMessagesTab()
|
||||||
InsertGuiPair(display_not_always_scientific,"Jeœli eksponent jest wiêkszy ni¿:");
|
InsertGuiPair(display_not_always_scientific,"Jeœli eksponent jest wiêkszy ni¿:");
|
||||||
InsertGuiPair(display_group_scientific, "Wyœwietl wynik w postaci naukowej");
|
InsertGuiPair(display_group_scientific, "Wyœwietl wynik w postaci naukowej");
|
||||||
InsertGuiPair(display_decimal_point, "Przecinek dziesiêtny");
|
InsertGuiPair(display_decimal_point, "Przecinek dziesiêtny");
|
||||||
|
InsertGuiPair(display_deg_red_grad, "sin/cos asin/acos");
|
||||||
InsertGuiPair(convert_type, "Typ");
|
InsertGuiPair(convert_type, "Typ");
|
||||||
InsertGuiPair(convert_input, "Wejœcie");
|
InsertGuiPair(convert_input, "Wejœcie");
|
||||||
InsertGuiPair(convert_output, "Wyjœcie");
|
InsertGuiPair(convert_output, "Wyjœcie");
|
||||||
|
@ -522,7 +524,9 @@ void Languages::InitGuiMessagesTab()
|
||||||
|
|
||||||
InsertGuiPair(combo_rounding_none,"Ninguno");
|
InsertGuiPair(combo_rounding_none,"Ninguno");
|
||||||
InsertGuiPair(combo_rounding_integer,"a entero");
|
InsertGuiPair(combo_rounding_integer,"a entero");
|
||||||
InsertGuiPair(combo_rounding_to_number,"a numero");
|
//InsertGuiPair(combo_rounding_to_number,"a numero");
|
||||||
|
// this text was too long (the combobox is shorter now) -- I'm not sure whether this is correct now... (I don't know spanish at all)
|
||||||
|
InsertGuiPair(combo_rounding_to_number,"a");
|
||||||
InsertGuiPair(combo_rounding_after_comma,"digito(s)");
|
InsertGuiPair(combo_rounding_after_comma,"digito(s)");
|
||||||
InsertGuiPair(check_remove_zeroes,"Eliminar ceros no-significativos");
|
InsertGuiPair(check_remove_zeroes,"Eliminar ceros no-significativos");
|
||||||
|
|
||||||
|
@ -533,6 +537,7 @@ void Languages::InitGuiMessagesTab()
|
||||||
InsertGuiPair(display_not_always_scientific,"Cuando el exponente es mas grande que:");
|
InsertGuiPair(display_not_always_scientific,"Cuando el exponente es mas grande que:");
|
||||||
InsertGuiPair(display_group_scientific, "Imprimir el resultado como valor cientifico");
|
InsertGuiPair(display_group_scientific, "Imprimir el resultado como valor cientifico");
|
||||||
InsertGuiPair(display_decimal_point, "Decimal point");
|
InsertGuiPair(display_decimal_point, "Decimal point");
|
||||||
|
InsertGuiPair(display_deg_red_grad, "sin/cos asin/acos");
|
||||||
InsertGuiPair(convert_type, "Tipo");
|
InsertGuiPair(convert_type, "Tipo");
|
||||||
InsertGuiPair(convert_input, "Entrada");
|
InsertGuiPair(convert_input, "Entrada");
|
||||||
InsertGuiPair(convert_output, "Salida");
|
InsertGuiPair(convert_output, "Salida");
|
||||||
|
|
|
@ -102,6 +102,7 @@ public:
|
||||||
display_always_scientific,
|
display_always_scientific,
|
||||||
display_not_always_scientific,
|
display_not_always_scientific,
|
||||||
display_decimal_point,
|
display_decimal_point,
|
||||||
|
display_deg_red_grad,
|
||||||
convert_type,
|
convert_type,
|
||||||
convert_input,
|
convert_input,
|
||||||
convert_output,
|
convert_output,
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2006-2008, Tomasz Sowa
|
* Copyright (c) 2006-2009, Tomasz Sowa
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* Redistribution and use in source and binary forms, with or without
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
@ -419,21 +419,23 @@ HMENU menu = GetMenu(hWnd);
|
||||||
|
|
||||||
void WmInitDialogCalculateMainWindowSize(HWND hTab)
|
void WmInitDialogCalculateMainWindowSize(HWND hTab)
|
||||||
{
|
{
|
||||||
RECT r;
|
RECT r_tab, r_main, r_edit2;
|
||||||
|
|
||||||
GetWindowRect(hTab, &r);
|
GetWindowRect(hTab, &r_tab);
|
||||||
|
|
||||||
int cy_caption = GetSystemMetrics(SM_CYCAPTION);
|
HWND main = GetPrgRes()->GetMainWindow();
|
||||||
|
GetWindowRect(main, &r_main);
|
||||||
|
|
||||||
int cy_add = 2 * GetSystemMetrics(SM_CYDLGFRAME) +
|
HWND output_edit = GetDlgItem(main, IDC_OUTPUT_EDIT);
|
||||||
GetSystemMetrics(SM_CYMENU);
|
GetWindowRect(output_edit, &r_edit2);
|
||||||
|
|
||||||
int cx_add = 2 * GetSystemMetrics(SM_CXDLGFRAME) +
|
int cy_compact = (r_edit2.bottom - r_main.top) + GetSystemMetrics(SM_CYSIZEFRAME);
|
||||||
r.right - r.left;
|
int cy_normal = (r_tab.bottom - r_tab.top) + (r_tab.top - r_main.top) + GetSystemMetrics(SM_CYSIZEFRAME) + 8;
|
||||||
|
int cx = r_tab.right - r_tab.left + 2 * GetSystemMetrics(SM_CXSIZEFRAME);
|
||||||
|
|
||||||
GetPrgRes()->SetYSizeNormal ( 225 + cy_add + cy_caption * 2);
|
GetPrgRes()->SetYSizeNormal ( cy_normal );
|
||||||
GetPrgRes()->SetYSizeCompact( 59 + cy_add + cy_caption );
|
GetPrgRes()->SetYSizeCompact( cy_compact );
|
||||||
GetPrgRes()->SetXSizeMin ( 4 + cx_add );
|
GetPrgRes()->SetXSizeMin ( cx );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -456,14 +458,18 @@ DLGTEMPLATE * tab1template = (DLGTEMPLATE*)LockResource(tab1global);
|
||||||
|
|
||||||
int frame_cx = GetSystemMetrics(SM_CXEDGE);
|
int frame_cx = GetSystemMetrics(SM_CXEDGE);
|
||||||
int frame_cy = GetSystemMetrics(SM_CYEDGE);
|
int frame_cy = GetSystemMetrics(SM_CYEDGE);
|
||||||
int caption_cy = GetSystemMetrics(SM_CYCAPTION)+10; // the caption plus some white space
|
int space = 10; // some more space between the tab items and child tabs
|
||||||
|
|
||||||
|
RECT tab_item_r;
|
||||||
|
TabCtrl_GetItemRect(hTab, 0, &tab_item_r);
|
||||||
|
int tab_item = tab_item_r.bottom;
|
||||||
|
|
||||||
RECT r;
|
RECT r;
|
||||||
GetWindowRect(hTab, &r);
|
GetWindowRect(hTab, &r);
|
||||||
|
|
||||||
SetWindowPos(hDialog, HWND_TOP, frame_cx, frame_cy + caption_cy,
|
SetWindowPos(hDialog, HWND_TOP, frame_cx, frame_cy + tab_item + space,
|
||||||
r.right-r.left- 2*frame_cx,
|
r.right-r.left- 2*frame_cx,
|
||||||
r.bottom-r.top- 2*frame_cy - caption_cy, 0);
|
r.bottom-r.top- 2*frame_cy - tab_item - space, 0);
|
||||||
|
|
||||||
return hDialog;
|
return hDialog;
|
||||||
}
|
}
|
||||||
|
@ -492,18 +498,24 @@ TCITEM tab_item;
|
||||||
// the name of a tab we'll set when we call the 'SetLanguage()' function
|
// the name of a tab we'll set when we call the 'SetLanguage()' function
|
||||||
tab_item.mask = 0;
|
tab_item.mask = 0;
|
||||||
|
|
||||||
tab_standard = 0;
|
int tab_inc = 0;
|
||||||
tab_variables = 1;
|
|
||||||
tab_functions = 2;
|
tab_standard = tab_inc++;
|
||||||
|
tab_variables = tab_inc++;
|
||||||
|
tab_functions = tab_inc++;
|
||||||
|
|
||||||
#ifndef TTCALC_PORTABLE
|
#ifndef TTCALC_PORTABLE
|
||||||
tab_precision = 3;
|
tab_precision = tab_inc++;
|
||||||
tab_display = 4;
|
|
||||||
tab_convert = 5;
|
|
||||||
#else
|
#else
|
||||||
tab_precision = -1; // this one will not be used
|
tab_precision = -1; // this one will not be used
|
||||||
tab_display = 3;
|
#endif
|
||||||
tab_convert = 4;
|
|
||||||
|
tab_display = tab_inc++;
|
||||||
|
|
||||||
|
#ifdef TTCALC_CONVERT
|
||||||
|
tab_convert = tab_inc++;
|
||||||
|
#else
|
||||||
|
tab_convert = -1;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// this insertion must be in the ascending order
|
// this insertion must be in the ascending order
|
||||||
|
@ -517,7 +529,10 @@ TCITEM tab_item;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
TabCtrl_InsertItem(hTab, tab_display, &tab_item);
|
TabCtrl_InsertItem(hTab, tab_display, &tab_item);
|
||||||
|
|
||||||
|
#ifdef TTCALC_CONVERT
|
||||||
TabCtrl_InsertItem(hTab, tab_convert, &tab_item);
|
TabCtrl_InsertItem(hTab, tab_convert, &tab_item);
|
||||||
|
#endif
|
||||||
|
|
||||||
WmInitDialogCreateTab(hTab, tab_standard, IDD_DIALOG_STANDARD, TabWindowProc);
|
WmInitDialogCreateTab(hTab, tab_standard, IDD_DIALOG_STANDARD, TabWindowProc);
|
||||||
WmInitDialogCreateTab(hTab, tab_variables, IDD_DIALOG_VARIABLES, TabWindowProc);
|
WmInitDialogCreateTab(hTab, tab_variables, IDD_DIALOG_VARIABLES, TabWindowProc);
|
||||||
|
@ -528,7 +543,10 @@ TCITEM tab_item;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
WmInitDialogCreateTab(hTab, tab_display, IDD_DIALOG_DISPLAY, TabWindowProc);
|
WmInitDialogCreateTab(hTab, tab_display, IDD_DIALOG_DISPLAY, TabWindowProc);
|
||||||
|
|
||||||
|
#ifdef TTCALC_CONVERT
|
||||||
WmInitDialogCreateTab(hTab, tab_convert, IDD_DIALOG_CONVERT, TabWindowProc);
|
WmInitDialogCreateTab(hTab, tab_convert, IDD_DIALOG_CONVERT, TabWindowProc);
|
||||||
|
#endif
|
||||||
|
|
||||||
SetSizeOfDialogs();
|
SetSizeOfDialogs();
|
||||||
|
|
||||||
|
@ -540,7 +558,10 @@ TCITEM tab_item;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
SendMessage(GetPrgRes()->GetTabWindow(tab_display), WM_INIT_TAB_DISPLAY, 0,0);
|
SendMessage(GetPrgRes()->GetTabWindow(tab_display), WM_INIT_TAB_DISPLAY, 0,0);
|
||||||
|
|
||||||
|
#ifdef TTCALC_CONVERT
|
||||||
SendMessage(GetPrgRes()->GetTabWindow(tab_convert), WM_INIT_TAB_CONVERT, 0,0);
|
SendMessage(GetPrgRes()->GetTabWindow(tab_convert), WM_INIT_TAB_CONVERT, 0,0);
|
||||||
|
#endif
|
||||||
|
|
||||||
TabWindowFunctions::SetLanguage(hTab);
|
TabWindowFunctions::SetLanguage(hTab);
|
||||||
|
|
||||||
|
@ -559,7 +580,7 @@ HWND hTab = GetDlgItem(hWnd,IDC_TAB);
|
||||||
WmInitDialogCalculateMainWindowSize(hTab);
|
WmInitDialogCalculateMainWindowSize(hTab);
|
||||||
WmInitDialogCreateAndInitTabs(hTab);
|
WmInitDialogCreateAndInitTabs(hTab);
|
||||||
|
|
||||||
HICON program_icon = LoadIcon(GetPrgRes()->GetInstance(),MAKEINTRESOURCE(IDI_ICON1));
|
HICON program_icon = LoadIcon(GetPrgRes()->GetInstance(),MAKEINTRESOURCE(IDI_ICON2));
|
||||||
if( program_icon )
|
if( program_icon )
|
||||||
SendMessage(hWnd,WM_SETICON,ICON_BIG,(LPARAM)program_icon);
|
SendMessage(hWnd,WM_SETICON,ICON_BIG,(LPARAM)program_icon);
|
||||||
|
|
||||||
|
@ -616,7 +637,6 @@ MINMAXINFO * lpmmi = (LPMINMAXINFO) lParam;
|
||||||
if( GetPrgRes()->GetView() == ProgramResources::view_normal )
|
if( GetPrgRes()->GetView() == ProgramResources::view_normal )
|
||||||
{
|
{
|
||||||
lpmmi->ptMinTrackSize.y = GetPrgRes()->GetYSizeNormal();
|
lpmmi->ptMinTrackSize.y = GetPrgRes()->GetYSizeNormal();
|
||||||
//lpmmi->ptMaxTrackSize.y = cy_normalny;
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{// kompaktowy
|
{// kompaktowy
|
||||||
|
|
|
@ -95,16 +95,19 @@ ttmath::ErrorCode ParserManager::Parse()
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
parser1.SetBase(base_input);
|
parser1.SetBase(base_input);
|
||||||
|
parser1.SetDegRadGrad(angle_deg_rad_grad);
|
||||||
code = parser1.Parse(buffer);
|
code = parser1.Parse(buffer);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 1:
|
case 1:
|
||||||
parser2.SetBase(base_input);
|
parser2.SetBase(base_input);
|
||||||
|
parser2.SetDegRadGrad(angle_deg_rad_grad);
|
||||||
code = parser2.Parse(buffer);
|
code = parser2.Parse(buffer);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
parser3.SetBase(base_input);
|
parser3.SetBase(base_input);
|
||||||
|
parser3.SetDegRadGrad(angle_deg_rad_grad);
|
||||||
code = parser3.Parse(buffer);
|
code = parser3.Parse(buffer);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -112,6 +115,7 @@ ttmath::ErrorCode ParserManager::Parse()
|
||||||
#else
|
#else
|
||||||
|
|
||||||
parser1.SetBase(base_input);
|
parser1.SetBase(base_input);
|
||||||
|
parser1.SetDegRadGrad(angle_deg_rad_grad);
|
||||||
code = parser1.Parse(buffer);
|
code = parser1.Parse(buffer);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -150,6 +154,7 @@ unsigned int i;
|
||||||
rounding = GetPrgRes()->GetDisplayRounding();
|
rounding = GetPrgRes()->GetDisplayRounding();
|
||||||
precision = GetPrgRes()->GetPrecision();
|
precision = GetPrgRes()->GetPrecision();
|
||||||
remove_zeroes = GetPrgRes()->GetRemovingZeroes();
|
remove_zeroes = GetPrgRes()->GetRemovingZeroes();
|
||||||
|
angle_deg_rad_grad = GetPrgRes()->GetDegRadGrad();
|
||||||
country = GetPrgRes()->GetLanguages()->GetCurrentLanguage();
|
country = GetPrgRes()->GetLanguages()->GetCurrentLanguage();
|
||||||
|
|
||||||
conv_type = GetPrgRes()->GetConvert()->GetCurrentType();
|
conv_type = GetPrgRes()->GetConvert()->GetCurrentType();
|
||||||
|
|
|
@ -136,7 +136,7 @@ private:
|
||||||
Languages::Country country;
|
Languages::Country country;
|
||||||
ttmath::ErrorCode code;
|
ttmath::ErrorCode code;
|
||||||
char decimal_point;
|
char decimal_point;
|
||||||
|
int angle_deg_rad_grad;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
some buffers which we use in some method in the second thread,
|
some buffers which we use in some method in the second thread,
|
||||||
|
|
|
@ -208,6 +208,25 @@ bool ProgramResources::GetRemovingZeroes()
|
||||||
return remove_zeroes;
|
return remove_zeroes;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void ProgramResources::SetDegRadGrad(int angle)
|
||||||
|
{
|
||||||
|
if( angle < 0 || angle > 2 )
|
||||||
|
angle = 1;
|
||||||
|
|
||||||
|
angle_deg_rad_grad = angle;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int ProgramResources::GetDegRadGrad()
|
||||||
|
{
|
||||||
|
return angle_deg_rad_grad;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
void ProgramResources::SetDisplayAlwaysScientific(bool a)
|
void ProgramResources::SetDisplayAlwaysScientific(bool a)
|
||||||
{
|
{
|
||||||
display_always_scientific = a;
|
display_always_scientific = a;
|
||||||
|
@ -426,13 +445,14 @@ ProgramResources::ProgramResources()
|
||||||
y_size_compact = 0;
|
y_size_compact = 0;
|
||||||
x_size_min = 0;
|
x_size_min = 0;
|
||||||
|
|
||||||
// !!! wrzucic do kontruktora Convert
|
// !!! put into Convert constructor
|
||||||
|
#ifdef TTCALC_CONVERT
|
||||||
convert.Init();
|
convert.Init();
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
decimal_point = 0;
|
decimal_point = 0;
|
||||||
|
angle_deg_rad_grad = 1; // rad is default
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -649,6 +669,7 @@ std::string ini_value[20];
|
||||||
iparser.Associate( "global|language", &ini_value[13] );
|
iparser.Associate( "global|language", &ini_value[13] );
|
||||||
iparser.Associate( "global|disp.dec.point", &ini_value[14] );
|
iparser.Associate( "global|disp.dec.point", &ini_value[14] );
|
||||||
iparser.Associate( "global|disp.remove.zeroes", &ini_value[15] );
|
iparser.Associate( "global|disp.remove.zeroes", &ini_value[15] );
|
||||||
|
iparser.Associate( "global|disp.deg_rad_grad", &ini_value[16] );
|
||||||
|
|
||||||
iparser.Associate( "variables", &temp_variables );
|
iparser.Associate( "variables", &temp_variables );
|
||||||
iparser.Associate( "functions", &temp_functions );
|
iparser.Associate( "functions", &temp_functions );
|
||||||
|
@ -704,7 +725,7 @@ std::string ini_value[20];
|
||||||
languages.SetCurrentLanguage(Languages::en);
|
languages.SetCurrentLanguage(Languages::en);
|
||||||
|
|
||||||
SetDecimalPoint( atoi(ini_value[14].c_str()) );
|
SetDecimalPoint( atoi(ini_value[14].c_str()) );
|
||||||
|
SetDegRadGrad( atoi(ini_value[16].c_str()) );
|
||||||
|
|
||||||
if( err != IniParser::err_ok )
|
if( err != IniParser::err_ok )
|
||||||
bad_line = iparser.GetBadLine();
|
bad_line = iparser.GetBadLine();
|
||||||
|
@ -742,6 +763,8 @@ std::ofstream file( configuration_file.c_str() );
|
||||||
file << "disp.rounding = " << display_rounding << std::endl;
|
file << "disp.rounding = " << display_rounding << std::endl;
|
||||||
file << "disp.remove.zeroes = " << (int)remove_zeroes << std::endl;
|
file << "disp.remove.zeroes = " << (int)remove_zeroes << std::endl;
|
||||||
file << "disp.dec.point = " << decimal_point << std::endl;
|
file << "disp.dec.point = " << decimal_point << std::endl;
|
||||||
|
file << "disp.deg_rad_grad = " << angle_deg_rad_grad << std::endl;
|
||||||
|
|
||||||
|
|
||||||
file << "\n[variables]\n";
|
file << "\n[variables]\n";
|
||||||
|
|
||||||
|
|
|
@ -293,6 +293,14 @@ public:
|
||||||
bool GetRemovingZeroes();
|
bool GetRemovingZeroes();
|
||||||
|
|
||||||
|
|
||||||
|
/*!
|
||||||
|
setting and returning the unit of angle in which sin/cos/tan/ctg (arc sin...) operate
|
||||||
|
0 - deg
|
||||||
|
1 - red
|
||||||
|
2 - grad
|
||||||
|
*/
|
||||||
|
void SetDegRadGrad(int angle);
|
||||||
|
int GetDegRadGrad();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
||||||
|
@ -340,6 +348,7 @@ private:
|
||||||
int display_when_scientific;
|
int display_when_scientific;
|
||||||
int display_rounding;
|
int display_rounding;
|
||||||
bool remove_zeroes;
|
bool remove_zeroes;
|
||||||
|
int angle_deg_rad_grad;
|
||||||
|
|
||||||
int bad_line;
|
int bad_line;
|
||||||
|
|
||||||
|
|
|
@ -62,7 +62,8 @@
|
||||||
|
|
||||||
#define IDR_MENU 200
|
#define IDR_MENU 200
|
||||||
#define IDC_TAB 1010
|
#define IDC_TAB 1010
|
||||||
#define IDI_ICON1 104
|
#define IDI_ICON2 104
|
||||||
|
#define IDI_ICON1 105
|
||||||
#define IDC_INPUT_EDIT 1000
|
#define IDC_INPUT_EDIT 1000
|
||||||
#define IDC_OUTPUT_EDIT 1001
|
#define IDC_OUTPUT_EDIT 1001
|
||||||
|
|
||||||
|
@ -165,6 +166,8 @@
|
||||||
#define IDC_LABEL_DECIMAL_POINT 1169
|
#define IDC_LABEL_DECIMAL_POINT 1169
|
||||||
#define IDC_COMBO_DECIMAL_POINT 1170
|
#define IDC_COMBO_DECIMAL_POINT 1170
|
||||||
#define IDC_CHECK_REMOVE_ZEROES 1171
|
#define IDC_CHECK_REMOVE_ZEROES 1171
|
||||||
|
#define IDC_LABEL_DISPLAY_DEG_RAD_GRAD 1172
|
||||||
|
#define IDC_COMBO_DEG_RAD_GRAD 1173
|
||||||
|
|
||||||
|
|
||||||
// convert tab
|
// convert tab
|
||||||
|
|
|
@ -4,7 +4,10 @@
|
||||||
|
|
||||||
|
|
||||||
LANGUAGE LANG_POLISH, 1
|
LANGUAGE LANG_POLISH, 1
|
||||||
104 ICON "..\\res\\icon01.ico"
|
104 ICON "..\\res\\icon02.ico"
|
||||||
|
|
||||||
|
LANGUAGE LANG_POLISH, 2
|
||||||
|
105 ICON "..\\res\\icon01.ico"
|
||||||
|
|
||||||
#include "resource.h"
|
#include "resource.h"
|
||||||
|
|
||||||
|
@ -56,10 +59,11 @@ FONT 8, "Ms Shell Dlg"
|
||||||
BEGIN
|
BEGIN
|
||||||
CONTROL "",1000,"EDIT",ES_AUTOHSCROLL |ES_LEFT |WS_CHILD |WS_BORDER |WS_TABSTOP |WS_VISIBLE ,0,6,260,14
|
CONTROL "",1000,"EDIT",ES_AUTOHSCROLL |ES_LEFT |WS_CHILD |WS_BORDER |WS_TABSTOP |WS_VISIBLE ,0,6,260,14
|
||||||
CONTROL "",1001,"EDIT",ES_READONLY |ES_AUTOHSCROLL |ES_LEFT |WS_CHILD |WS_BORDER |WS_TABSTOP |WS_VISIBLE ,0,21,260,14
|
CONTROL "",1001,"EDIT",ES_READONLY |ES_AUTOHSCROLL |ES_LEFT |WS_CHILD |WS_BORDER |WS_TABSTOP |WS_VISIBLE ,0,21,260,14
|
||||||
CONTROL "",1010,"SysTabControl32",WS_CHILD |WS_TABSTOP |WS_GROUP| WS_VISIBLE ,0,39,261,110, WS_EX_CONTROLPARENT
|
CONTROL "",1010,"SysTabControl32",WS_CHILD |WS_TABSTOP |WS_GROUP| WS_VISIBLE ,0,39,261,106, WS_EX_CONTROLPARENT
|
||||||
END
|
END
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
102 DIALOG DISCARDABLE 0, 0, 358, 61
|
102 DIALOG DISCARDABLE 0, 0, 358, 61
|
||||||
STYLE DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_VISIBLE |
|
STYLE DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_VISIBLE |
|
||||||
WS_CAPTION | WS_SYSMENU
|
WS_CAPTION | WS_SYSMENU
|
||||||
|
@ -181,22 +185,29 @@ STYLE DS_3DLOOK | DS_FIXEDSYS | WS_CHILD | WS_CAPTION | WS_GROUP |
|
||||||
CAPTION "tab5"
|
CAPTION "tab5"
|
||||||
FONT 8, "Ms Shell Dlg"
|
FONT 8, "Ms Shell Dlg"
|
||||||
BEGIN
|
BEGIN
|
||||||
COMBOBOX 1156,58,5,69,200,CBS_DROPDOWNLIST | WS_GROUP |
|
COMBOBOX 1156,58,5,58,200,CBS_DROPDOWNLIST | WS_GROUP |
|
||||||
WS_TABSTOP
|
WS_TABSTOP
|
||||||
COMBOBOX 1157,58,19,69,200,CBS_DROPDOWNLIST | WS_TABSTOP
|
COMBOBOX 1157,58,19,58,200,CBS_DROPDOWNLIST | WS_TABSTOP
|
||||||
LTEXT "Input",1162,11,7,27,8
|
CONTROL "Input",1162,"Static",SS_LEFTNOWORDWRAP | WS_GROUP,11,7,
|
||||||
LTEXT "Output",1163,11,22,29,8
|
43,8
|
||||||
LTEXT "Rounding",1164,11,36,43,8
|
CONTROL "Output",1163,"Static",SS_LEFTNOWORDWRAP | WS_GROUP,11,
|
||||||
LTEXT "Decimal point",1169,178,21,68,8
|
22,43,8
|
||||||
COMBOBOX 1170,143,19,29,62,CBS_DROPDOWNLIST | WS_TABSTOP
|
COMBOBOX 1159,58,33,58,200,CBS_DROPDOWNLIST | WS_TABSTOP
|
||||||
|
CONTROL "Rounding",1164,"Static",SS_LEFTNOWORDWRAP | WS_GROUP,11,
|
||||||
|
36,43,8
|
||||||
|
COMBOBOX 1173,213,5,38,54,CBS_DROPDOWNLIST | WS_TABSTOP
|
||||||
|
CONTROL "sin/cos asin/acos",1172,"Static",SS_LEFTNOWORDWRAP |
|
||||||
|
WS_GROUP,137,7,73,8
|
||||||
|
COMBOBOX 1170,213,19,38,62,CBS_DROPDOWNLIST | WS_TABSTOP
|
||||||
|
CONTROL "Decimal point",1169,"Static",SS_LEFTNOWORDWRAP |
|
||||||
|
WS_GROUP,137,22,73,8
|
||||||
CONTROL "remove trailing zeroes",1171,"Button",BS_AUTOCHECKBOX |
|
CONTROL "remove trailing zeroes",1171,"Button",BS_AUTOCHECKBOX |
|
||||||
WS_TABSTOP,143,35,111,10
|
BS_LEFTTEXT | BS_LEFT | WS_TABSTOP,136,36,115,10
|
||||||
COMBOBOX 1159,58,33,69,200,CBS_DROPDOWNLIST | WS_TABSTOP
|
|
||||||
CONTROL "Always",1160,"Button",BS_AUTORADIOBUTTON | BS_LEFT |
|
CONTROL "Always",1160,"Button",BS_AUTORADIOBUTTON | BS_LEFT |
|
||||||
WS_GROUP | WS_TABSTOP,19,65,44,10
|
WS_GROUP | WS_TABSTOP,19,65,54,10
|
||||||
CONTROL "When the exponent is greater than:",1161,"Button",
|
CONTROL "When the exponent is greater than:",1161,"Button",
|
||||||
BS_AUTORADIOBUTTON | BS_LEFT,77,65,130,10
|
BS_AUTORADIOBUTTON | BS_LEFT,77,65,138,10
|
||||||
EDITTEXT 1166,211,63,29,14,ES_NUMBER | WS_GROUP
|
EDITTEXT 1166,217,63,29,14,ES_NUMBER | WS_GROUP
|
||||||
CONTROL "",1165,"msctls_updown32",UDS_SETBUDDYINT |
|
CONTROL "",1165,"msctls_updown32",UDS_SETBUDDYINT |
|
||||||
UDS_ALIGNRIGHT | UDS_ARROWKEYS,201,73,11,14
|
UDS_ALIGNRIGHT | UDS_ARROWKEYS,201,73,11,14
|
||||||
GROUPBOX "Print scientific value",1168,11,51,240,31
|
GROUPBOX "Print scientific value",1168,11,51,240,31
|
||||||
|
@ -204,6 +215,9 @@ END
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef TTCALC_CONVERT
|
||||||
|
|
||||||
115 DIALOG DISCARDABLE 0, 0, 260, 90
|
115 DIALOG DISCARDABLE 0, 0, 260, 90
|
||||||
STYLE DS_3DLOOK | DS_FIXEDSYS | WS_CHILD | WS_CAPTION | WS_GROUP |
|
STYLE DS_3DLOOK | DS_FIXEDSYS | WS_CHILD | WS_CAPTION | WS_GROUP |
|
||||||
WS_TABSTOP
|
WS_TABSTOP
|
||||||
|
@ -234,6 +248,8 @@ BEGIN
|
||||||
BS_AUTOCHECKBOX | WS_TABSTOP,162,74,88,10
|
BS_AUTOCHECKBOX | WS_TABSTOP,162,74,88,10
|
||||||
END
|
END
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifndef TTCALC_PORTABLE
|
#ifndef TTCALC_PORTABLE
|
||||||
200 DIALOG DISCARDABLE 0, 0, 349, 202
|
200 DIALOG DISCARDABLE 0, 0, 349, 202
|
||||||
STYLE DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_CAPTION |
|
STYLE DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_CAPTION |
|
||||||
|
|
48
src/tabs.cpp
48
src/tabs.cpp
|
@ -413,7 +413,6 @@ int i;
|
||||||
|
|
||||||
SendDlgItemMessage(hWnd, IDC_COMBO_DISPLAY_ROUNDING, CB_RESETCONTENT, 0, 0);
|
SendDlgItemMessage(hWnd, IDC_COMBO_DISPLAY_ROUNDING, CB_RESETCONTENT, 0, 0);
|
||||||
|
|
||||||
// SendDlgItemMessage(hWnd, IDC_COMBO_DISPLAY_ROUNDING, CB_ADDSTRING, 0, (LPARAM)GetPrgRes()->GetLanguages()->GuiMessage(Languages::combo_rounding_cut_last_digits) );
|
|
||||||
SendDlgItemMessage(hWnd, IDC_COMBO_DISPLAY_ROUNDING, CB_ADDSTRING, 0, (LPARAM)GetPrgRes()->GetLanguages()->GuiMessage(Languages::combo_rounding_none) );
|
SendDlgItemMessage(hWnd, IDC_COMBO_DISPLAY_ROUNDING, CB_ADDSTRING, 0, (LPARAM)GetPrgRes()->GetLanguages()->GuiMessage(Languages::combo_rounding_none) );
|
||||||
SendDlgItemMessage(hWnd, IDC_COMBO_DISPLAY_ROUNDING, CB_ADDSTRING, 0, (LPARAM)GetPrgRes()->GetLanguages()->GuiMessage(Languages::combo_rounding_integer) );
|
SendDlgItemMessage(hWnd, IDC_COMBO_DISPLAY_ROUNDING, CB_ADDSTRING, 0, (LPARAM)GetPrgRes()->GetLanguages()->GuiMessage(Languages::combo_rounding_integer) );
|
||||||
|
|
||||||
|
@ -447,6 +446,8 @@ int i;
|
||||||
SetDlgItemText(hWnd, IDC_LABEL_DECIMAL_POINT, GetPrgRes()->GetLanguages()->GuiMessage(Languages::display_decimal_point));
|
SetDlgItemText(hWnd, IDC_LABEL_DECIMAL_POINT, GetPrgRes()->GetLanguages()->GuiMessage(Languages::display_decimal_point));
|
||||||
|
|
||||||
SetDlgItemText(hWnd, IDC_CHECK_REMOVE_ZEROES, GetPrgRes()->GetLanguages()->GuiMessage(Languages::check_remove_zeroes));
|
SetDlgItemText(hWnd, IDC_CHECK_REMOVE_ZEROES, GetPrgRes()->GetLanguages()->GuiMessage(Languages::check_remove_zeroes));
|
||||||
|
|
||||||
|
SetDlgItemText(hWnd, IDC_LABEL_DISPLAY_DEG_RAD_GRAD, GetPrgRes()->GetLanguages()->GuiMessage(Languages::display_deg_red_grad));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -669,17 +670,17 @@ TCITEM tab;
|
||||||
TabCtrl_SetItem(hTab,tab_functions, &tab);
|
TabCtrl_SetItem(hTab,tab_functions, &tab);
|
||||||
|
|
||||||
#ifndef TTCALC_PORTABLE
|
#ifndef TTCALC_PORTABLE
|
||||||
|
|
||||||
tab.pszText = const_cast<char*>( GetPrgRes()->GetLanguages()->GuiMessage(Languages::tab_precision) );
|
tab.pszText = const_cast<char*>( GetPrgRes()->GetLanguages()->GuiMessage(Languages::tab_precision) );
|
||||||
TabCtrl_SetItem(hTab,tab_precision, &tab);
|
TabCtrl_SetItem(hTab,tab_precision, &tab);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
tab.pszText = const_cast<char*>( GetPrgRes()->GetLanguages()->GuiMessage(Languages::tab_display) );
|
tab.pszText = const_cast<char*>( GetPrgRes()->GetLanguages()->GuiMessage(Languages::tab_display) );
|
||||||
TabCtrl_SetItem(hTab,tab_display, &tab);
|
TabCtrl_SetItem(hTab,tab_display, &tab);
|
||||||
|
|
||||||
|
#ifdef TTCALC_CONVERT
|
||||||
tab.pszText = const_cast<char*>( GetPrgRes()->GetLanguages()->GuiMessage(Languages::tab_convert) );
|
tab.pszText = const_cast<char*>( GetPrgRes()->GetLanguages()->GuiMessage(Languages::tab_convert) );
|
||||||
TabCtrl_SetItem(hTab,tab_convert, &tab);
|
TabCtrl_SetItem(hTab,tab_convert, &tab);
|
||||||
|
#endif
|
||||||
|
|
||||||
SetLanguageTabStandard( GetPrgRes()->GetTabWindow(tab_standard) );
|
SetLanguageTabStandard( GetPrgRes()->GetTabWindow(tab_standard) );
|
||||||
SetLanguageTabVariables( GetPrgRes()->GetTabWindow(tab_variables) );
|
SetLanguageTabVariables( GetPrgRes()->GetTabWindow(tab_variables) );
|
||||||
|
@ -690,7 +691,10 @@ TCITEM tab;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
SetLanguageTabDisplay( GetPrgRes()->GetTabWindow(tab_display) );
|
SetLanguageTabDisplay( GetPrgRes()->GetTabWindow(tab_display) );
|
||||||
|
|
||||||
|
#ifdef TTCALC_CONVERT
|
||||||
SetLanguageTabConvert( GetPrgRes()->GetTabWindow(tab_convert) );
|
SetLanguageTabConvert( GetPrgRes()->GetTabWindow(tab_convert) );
|
||||||
|
#endif
|
||||||
|
|
||||||
InvalidateRect(hTab, 0, false);
|
InvalidateRect(hTab, 0, false);
|
||||||
}
|
}
|
||||||
|
@ -818,6 +822,18 @@ BOOL WmTabCommand_RemoveZeroesChanged(HWND hWnd, UINT message, WPARAM wParam, LP
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
BOOL WmTabCommand_DisplayDegRadGradChanged(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
|
||||||
|
{
|
||||||
|
if( HIWORD(wParam) != CBN_SELCHANGE )
|
||||||
|
return false;
|
||||||
|
|
||||||
|
GetPrgRes()->GetThreadController()->StopCalculating();
|
||||||
|
GetPrgRes()->SetDegRadGrad( (int)SendDlgItemMessage(hWnd, IDC_COMBO_DEG_RAD_GRAD, CB_GETCURSEL, 0, 0) );
|
||||||
|
GetPrgRes()->GetThreadController()->StartCalculating();
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void SetDisablingDisplayWhenScientific(HWND hWnd)
|
void SetDisablingDisplayWhenScientific(HWND hWnd)
|
||||||
{
|
{
|
||||||
|
@ -981,8 +997,7 @@ void CreateTabCommandMessagesTable(Messages & cmessages)
|
||||||
cmessages.Associate(IDC_RADIO_DISPLAY_NOT_ALWAYS_SCIENTIFIC, WmTabCommand_SetDisplayNotAlwaysScientific);
|
cmessages.Associate(IDC_RADIO_DISPLAY_NOT_ALWAYS_SCIENTIFIC, WmTabCommand_SetDisplayNotAlwaysScientific);
|
||||||
cmessages.Associate(IDC_EDIT_DISPLAY_WHEN_SCIENTIFIC, WmTabCommand_SetDisplayWhenScientific);
|
cmessages.Associate(IDC_EDIT_DISPLAY_WHEN_SCIENTIFIC, WmTabCommand_SetDisplayWhenScientific);
|
||||||
cmessages.Associate(IDC_COMBO_DECIMAL_POINT, WmTabCommand_DisplayDecimalPointChanged);
|
cmessages.Associate(IDC_COMBO_DECIMAL_POINT, WmTabCommand_DisplayDecimalPointChanged);
|
||||||
|
cmessages.Associate(IDC_COMBO_DEG_RAD_GRAD, WmTabCommand_DisplayDegRadGradChanged);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1245,6 +1260,15 @@ char buffer[20];
|
||||||
if( GetPrgRes()->GetRemovingZeroes() )
|
if( GetPrgRes()->GetRemovingZeroes() )
|
||||||
CheckDlgButton(hWnd, IDC_CHECK_REMOVE_ZEROES, BST_CHECKED);
|
CheckDlgButton(hWnd, IDC_CHECK_REMOVE_ZEROES, BST_CHECKED);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
SendDlgItemMessage(hWnd, IDC_COMBO_DEG_RAD_GRAD, CB_ADDSTRING, 0, (LPARAM)"deg");
|
||||||
|
SendDlgItemMessage(hWnd, IDC_COMBO_DEG_RAD_GRAD, CB_ADDSTRING, 0, (LPARAM)"rad");
|
||||||
|
SendDlgItemMessage(hWnd, IDC_COMBO_DEG_RAD_GRAD, CB_ADDSTRING, 0, (LPARAM)"grad");
|
||||||
|
|
||||||
|
SendDlgItemMessage(hWnd, IDC_COMBO_DEG_RAD_GRAD, CB_SETCURSEL, GetPrgRes()->GetDegRadGrad(), 0);
|
||||||
|
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1283,10 +1307,6 @@ BOOL WmNotify(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
|
||||||
NMHDR * pnmh = (LPNMHDR) lParam;
|
NMHDR * pnmh = (LPNMHDR) lParam;
|
||||||
HWND var_list = GetDlgItem(hWnd,IDC_VARIABLES_LIST);
|
HWND var_list = GetDlgItem(hWnd,IDC_VARIABLES_LIST);
|
||||||
HWND fun_list = GetDlgItem(hWnd,IDC_FUNCTIONS_LIST);
|
HWND fun_list = GetDlgItem(hWnd,IDC_FUNCTIONS_LIST);
|
||||||
HWND conv_list1 = GetDlgItem(hWnd,IDC_LIST_UNIT_TYPE);
|
|
||||||
HWND conv_list2b = GetDlgItem(hWnd,IDC_LIST_UNIT_INPUT2);
|
|
||||||
HWND conv_list3b = GetDlgItem(hWnd,IDC_LIST_UNIT_OUTPUT2);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if( pnmh->hwndFrom == var_list )
|
if( pnmh->hwndFrom == var_list )
|
||||||
|
@ -1337,6 +1357,11 @@ HWND conv_list3b = GetDlgItem(hWnd,IDC_LIST_UNIT_OUTPUT2);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef TTCALC_CONVERT
|
||||||
|
HWND conv_list1 = GetDlgItem(hWnd,IDC_LIST_UNIT_TYPE);
|
||||||
|
HWND conv_list2b = GetDlgItem(hWnd,IDC_LIST_UNIT_INPUT2);
|
||||||
|
HWND conv_list3b = GetDlgItem(hWnd,IDC_LIST_UNIT_OUTPUT2);
|
||||||
|
|
||||||
if( pnmh->hwndFrom==conv_list1 || pnmh->hwndFrom==conv_list2b || pnmh->hwndFrom==conv_list3b )
|
if( pnmh->hwndFrom==conv_list1 || pnmh->hwndFrom==conv_list2b || pnmh->hwndFrom==conv_list3b )
|
||||||
{
|
{
|
||||||
if( pnmh->code == LVN_ITEMCHANGED )
|
if( pnmh->code == LVN_ITEMCHANGED )
|
||||||
|
@ -1355,7 +1380,7 @@ HWND conv_list3b = GetDlgItem(hWnd,IDC_LIST_UNIT_OUTPUT2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -1375,7 +1400,10 @@ void CreateTabMessagesTable(Messages & messages)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
messages.Associate(WM_INIT_TAB_DISPLAY, WmInitTabDisplay);
|
messages.Associate(WM_INIT_TAB_DISPLAY, WmInitTabDisplay);
|
||||||
|
|
||||||
|
#ifdef TTCALC_CONVERT
|
||||||
messages.Associate(WM_INIT_TAB_CONVERT, WmInitTabConvert);
|
messages.Associate(WM_INIT_TAB_CONVERT, WmInitTabConvert);
|
||||||
|
#endif
|
||||||
|
|
||||||
messages.Associate(WM_NOTIFY, WmNotify);
|
messages.Associate(WM_NOTIFY, WmNotify);
|
||||||
}
|
}
|
||||||
|
|
|
@ -46,7 +46,6 @@
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
the application starts here
|
the application starts here
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Reference in New Issue