diff options
author | Thomas Arnhold <thomas@arnhold.org> | 2013-11-05 12:04:51 +0100 |
---|---|---|
committer | Thomas Arnhold <thomas@arnhold.org> | 2013-11-05 18:00:15 +0100 |
commit | e9a7ff1a5ba9d5ba34eeca9d622d8a3a9c68ade8 (patch) | |
tree | 82e706f837ca0d827dc5a9ae979ae3d15ec86e47 /starmath | |
parent | 01f6f620395a86abe1e7f503ae4b3b5f7124e144 (diff) |
fdo#67862: Add greek symbols to docking window
Those were already present at starmath/source/symbol.src and are
merged to the docking window now.
Also make use of SAL_N_ELEMENTS.
Change-Id: I3e1f082082763168e731c3771c0b71467d095eba
Diffstat (limited to 'starmath')
-rw-r--r-- | starmath/inc/ElementsDockingWindow.hxx | 2 | ||||
-rw-r--r-- | starmath/inc/starmath.hrc | 87 | ||||
-rw-r--r-- | starmath/source/ElementsDockingWindow.cxx | 64 | ||||
-rw-r--r-- | starmath/source/commands.src | 90 |
4 files changed, 231 insertions, 12 deletions
diff --git a/starmath/inc/ElementsDockingWindow.hxx b/starmath/inc/ElementsDockingWindow.hxx index 2cc13e75f06e..ce17664b921f 100644 --- a/starmath/inc/ElementsDockingWindow.hxx +++ b/starmath/inc/ElementsDockingWindow.hxx @@ -76,6 +76,8 @@ class SmElementsControl : public Control static const sal_uInt16 aAttributes[][2]; static const sal_uInt16 aBrackets[][2]; static const sal_uInt16 aFormats[][2]; + static const sal_uInt16 aGreek[][2]; + static const sal_uInt16 aSymbols[][2]; static const sal_uInt16 aOthers[][2]; Link aSelectHdlLink; diff --git a/starmath/inc/starmath.hrc b/starmath/inc/starmath.hrc index 6a731e491238..fbc354139a2a 100644 --- a/starmath/inc/starmath.hrc +++ b/starmath/inc/starmath.hrc @@ -484,6 +484,7 @@ #define RID_CATEGORY_FORMATS (RID_APP_START + 4008) #define RID_CATEGORY_OTHERS (RID_APP_START + 4009) #define RID_CATEGORY_EXAMPLES (RID_APP_START + 4010) +#define RID_CATEGORY_SYMBOLS (RID_APP_START + 2173) // more tooptips help texts #define RID_XEQY_HELP (RID_APP_START + 4011) @@ -666,6 +667,92 @@ #define RID_LLINT_FROMTOX_HELP (RID_APP_START + 4189) #define RID_LLLINT_FROMTOX_HELP (RID_APP_START + 4190) +#define RID_GRC_ALPHA (RID_APP_START + 4191) +#define RID_GRC_ALPHA_HELP (RID_APP_START + 4192) +#define RID_GRC_BETA (RID_APP_START + 4193) +#define RID_GRC_BETA_HELP (RID_APP_START + 4194) +#define RID_GRC_CHI (RID_APP_START + 4195) +#define RID_GRC_CHI_HELP (RID_APP_START + 4196) +#define RID_GRC_DELTA (RID_APP_START + 4197) +#define RID_GRC_DELTA_HELP (RID_APP_START + 4198) +#define RID_GRC_EPSILON (RID_APP_START + 4199) +#define RID_GRC_EPSILON_HELP (RID_APP_START + 4200) +#define RID_GRC_ETA (RID_APP_START + 4201) +#define RID_GRC_ETA_HELP (RID_APP_START + 4202) +#define RID_GRC_GAMMA (RID_APP_START + 4203) +#define RID_GRC_GAMMA_HELP (RID_APP_START + 4204) +#define RID_GRC_IOTA (RID_APP_START + 4205) +#define RID_GRC_IOTA_HELP (RID_APP_START + 4206) +#define RID_GRC_KAPPA (RID_APP_START + 4207) +#define RID_GRC_KAPPA_HELP (RID_APP_START + 4208) +#define RID_GRC_LAMBDA (RID_APP_START + 4209) +#define RID_GRC_LAMBDA_HELP (RID_APP_START + 4210) +#define RID_GRC_MU (RID_APP_START + 4211) +#define RID_GRC_MU_HELP (RID_APP_START + 4212) +#define RID_GRC_NU (RID_APP_START + 4213) +#define RID_GRC_NU_HELP (RID_APP_START + 4214) +#define RID_GRC_OMEGA (RID_APP_START + 4215) +#define RID_GRC_OMEGA_HELP (RID_APP_START + 4216) +#define RID_GRC_OMICRON (RID_APP_START + 4217) +#define RID_GRC_OMICRON_HELP (RID_APP_START + 4218) +#define RID_GRC_PHI (RID_APP_START + 4219) +#define RID_GRC_PHI_HELP (RID_APP_START + 4220) +#define RID_GRC_PI (RID_APP_START + 4221) +#define RID_GRC_PI_HELP (RID_APP_START + 4222) +#define RID_GRC_PSI (RID_APP_START + 4223) +#define RID_GRC_PSI_HELP (RID_APP_START + 4224) +#define RID_GRC_RHO (RID_APP_START + 4225) +#define RID_GRC_RHO_HELP (RID_APP_START + 4226) +#define RID_GRC_SIGMA (RID_APP_START + 4227) +#define RID_GRC_SIGMA_HELP (RID_APP_START + 4228) +#define RID_GRC_TAU (RID_APP_START + 4229) +#define RID_GRC_TAU_HELP (RID_APP_START + 4230) +#define RID_GRC_THETA (RID_APP_START + 4231) +#define RID_GRC_THETA_HELP (RID_APP_START + 4232) +#define RID_GRC_UPSILON (RID_APP_START + 4233) +#define RID_GRC_UPSILON_HELP (RID_APP_START + 4234) +#define RID_GRC_XI (RID_APP_START + 4235) +#define RID_GRC_XI_HELP (RID_APP_START + 4236) +#define RID_GRC_ZETA (RID_APP_START + 4237) +#define RID_GRC_ZETA_HELP (RID_APP_START + 4238) + +#define RID_SYM_VAREPSILON (RID_APP_START + 4239) +#define RID_SYM_VAREPSILON_HELP (RID_APP_START + 4240) +#define RID_SYM_VARTHETA (RID_APP_START + 4241) +#define RID_SYM_VARTHETA_HELP (RID_APP_START + 4242) +#define RID_SYM_VARPI (RID_APP_START + 4243) +#define RID_SYM_VARPI_HELP (RID_APP_START + 4244) +#define RID_SYM_VARRHO (RID_APP_START + 4245) +#define RID_SYM_VARRHO_HELP (RID_APP_START + 4246) +#define RID_SYM_VARSIGMA (RID_APP_START + 4247) +#define RID_SYM_VARSIGMA_HELP (RID_APP_START + 4248) +#define RID_SYM_VARPHI (RID_APP_START + 4249) +#define RID_SYM_VARPHI_HELP (RID_APP_START + 4250) +#define RID_SYM_ELEMENT (RID_APP_START + 4251) +#define RID_SYM_ELEMENT_HELP (RID_APP_START + 4252) +#define RID_SYM_NOELEMENT (RID_APP_START + 4253) +#define RID_SYM_NOELEMENT_HELP (RID_APP_START + 4254) +#define RID_SYM_STRICTLYLESSTHAN (RID_APP_START + 4255) +#define RID_SYM_STRICTLYLESSTHAN_HELP (RID_APP_START + 4256) +#define RID_SYM_STRICTLYGREATERTHAN (RID_APP_START + 4257) +#define RID_SYM_STRICTLYGREATERTHAN_HELP (RID_APP_START + 4258) +#define RID_SYM_NOTEQUAL (RID_APP_START + 4259) +#define RID_SYM_NOTEQUAL_HELP (RID_APP_START + 4260) +#define RID_SYM_IDENTICAL (RID_APP_START + 4261) +#define RID_SYM_IDENTICAL_HELP (RID_APP_START + 4262) +#define RID_SYM_TENDTO (RID_APP_START + 4263) +#define RID_SYM_TENDTO_HELP (RID_APP_START + 4264) +#define RID_SYM_INFINITE (RID_APP_START + 4265) +#define RID_SYM_INFINITE_HELP (RID_APP_START + 4266) +#define RID_SYM_ANGLE (RID_APP_START + 4267) +#define RID_SYM_ANGLE_HELP (RID_APP_START + 4268) +#define RID_SYM_PERTHOUSAND (RID_APP_START + 4269) +#define RID_SYM_PERTHOUSAND_HELP (RID_APP_START + 4270) +#define RID_SYM_AND (RID_APP_START + 4271) +#define RID_SYM_AND_HELP (RID_APP_START + 4272) +#define RID_SYM_OR (RID_APP_START + 4273) +#define RID_SYM_OR_HELP (RID_APP_START + 4274) + #define BMP_ARROW_RIGHT 1 #define MN_WIN 60 diff --git a/starmath/source/ElementsDockingWindow.cxx b/starmath/source/ElementsDockingWindow.cxx index 4f9ac914bd63..89ef87dcff27 100644 --- a/starmath/source/ElementsDockingWindow.cxx +++ b/starmath/source/ElementsDockingWindow.cxx @@ -186,6 +186,34 @@ const sal_uInt16 SmElementsControl::aFormats[][2] = {RID_MATRIX, RID_MATRIX_HELP}, }; +const sal_uInt16 SmElementsControl::aGreek[][2] = +{ + {RID_GRC_ALPHA, RID_GRC_ALPHA_HELP}, {RID_GRC_BETA, RID_GRC_BETA_HELP}, + {RID_GRC_GAMMA, RID_GRC_GAMMA_HELP}, {RID_GRC_DELTA, RID_GRC_DELTA_HELP}, + {RID_GRC_EPSILON, RID_GRC_EPSILON_HELP}, {RID_GRC_ZETA, RID_GRC_ZETA_HELP}, + {RID_GRC_ETA, RID_GRC_ETA_HELP}, {RID_GRC_THETA, RID_GRC_THETA_HELP}, + {RID_GRC_IOTA, RID_GRC_IOTA_HELP}, {RID_GRC_KAPPA, RID_GRC_KAPPA_HELP}, + {RID_GRC_LAMBDA, RID_GRC_LAMBDA_HELP}, {RID_GRC_MU, RID_GRC_MU_HELP}, + {RID_GRC_NU, RID_GRC_NU_HELP}, {RID_GRC_XI, RID_GRC_XI_HELP}, + {RID_GRC_OMICRON, RID_GRC_OMICRON_HELP}, {RID_GRC_PI, RID_GRC_PI_HELP}, + {RID_GRC_RHO, RID_GRC_RHO_HELP}, {RID_GRC_SIGMA, RID_GRC_SIGMA_HELP}, + {RID_GRC_TAU, RID_GRC_TAU_HELP}, {RID_GRC_UPSILON, RID_GRC_UPSILON_HELP}, + {RID_GRC_PHI, RID_GRC_PHI_HELP}, {RID_GRC_CHI, RID_GRC_CHI_HELP}, + {RID_GRC_PSI, RID_GRC_PSI_HELP}, {RID_GRC_OMEGA, RID_GRC_OMEGA_HELP} +}; + +const sal_uInt16 SmElementsControl::aSymbols[][2] = +{ + {RID_SYM_VAREPSILON, RID_SYM_VAREPSILON_HELP}, {RID_SYM_VARTHETA, RID_SYM_VARTHETA_HELP}, + {RID_SYM_VARPI, RID_SYM_VARPI_HELP}, {RID_SYM_VARRHO, RID_SYM_VARRHO_HELP}, + {RID_SYM_VARSIGMA, RID_SYM_VARSIGMA_HELP}, {RID_SYM_VARPHI, RID_SYM_VARPHI_HELP}, + {RID_SYM_ELEMENT, RID_SYM_ELEMENT_HELP}, {RID_SYM_NOELEMENT, RID_SYM_NOELEMENT_HELP}, + {RID_SYM_STRICTLYLESSTHAN, RID_SYM_STRICTLYLESSTHAN_HELP}, {RID_SYM_STRICTLYGREATERTHAN, RID_SYM_STRICTLYGREATERTHAN_HELP}, + {RID_SYM_NOTEQUAL, RID_SYM_NOTEQUAL_HELP}, {RID_SYM_IDENTICAL, RID_SYM_IDENTICAL_HELP}, + {RID_SYM_TENDTO, RID_SYM_TENDTO_HELP}, {RID_SYM_INFINITE, RID_SYM_INFINITE_HELP}, {RID_SYM_ANGLE, RID_SYM_ANGLE_HELP}, + {RID_SYM_PERTHOUSAND, RID_SYM_PERTHOUSAND_HELP}, {RID_SYM_AND, RID_SYM_AND_HELP}, {RID_SYM_OR, RID_SYM_OR_HELP} +}; + const sal_uInt16 SmElementsControl::aOthers[][2] = { {RID_INFINITY, RID_INFINITY_HELP}, {RID_PARTIAL, RID_PARTIAL_HELP}, {RID_NABLA, RID_NABLA_HELP}, @@ -465,31 +493,42 @@ void SmElementsControl::build() { // we need to divide by 2 because of the matrix of two dimensions case RID_CATEGORY_UNARY_BINARY_OPERATORS: - addElements(aUnaryBinaryOperatorsList, (sizeof(aUnaryBinaryOperatorsList) / 2) / sizeof(sal_uInt16)); + addElements(aUnaryBinaryOperatorsList, SAL_N_ELEMENTS(aUnaryBinaryOperatorsList)); break; case RID_CATEGORY_RELATIONS: - addElements(aRelationsList, (sizeof(aRelationsList) / 2) / sizeof(sal_uInt16)); + addElements(aRelationsList, SAL_N_ELEMENTS(aRelationsList)); break; case RID_CATEGORY_SET_OPERATIONS: - addElements(aSetOperations, (sizeof(aSetOperations) / 2) / sizeof(sal_uInt16)); + addElements(aSetOperations, SAL_N_ELEMENTS(aSetOperations)); break; case RID_CATEGORY_FUNCTIONS: - addElements(aFunctions, (sizeof(aFunctions) / 2 ) / sizeof(sal_uInt16)); + addElements(aFunctions, SAL_N_ELEMENTS(aFunctions)); break; case RID_CATEGORY_OPERATORS: - addElements(aOperators, (sizeof(aOperators) / 2) / sizeof(sal_uInt16)); + addElements(aOperators, SAL_N_ELEMENTS(aOperators)); break; case RID_CATEGORY_ATTRIBUTES: - addElements(aAttributes, (sizeof(aAttributes) / 2 ) / sizeof(sal_uInt16)); + addElements(aAttributes, SAL_N_ELEMENTS(aAttributes)); break; case RID_CATEGORY_BRACKETS: - addElements(aBrackets, (sizeof(aBrackets) / 2) / sizeof(sal_uInt16)); + addElements(aBrackets, SAL_N_ELEMENTS(aBrackets)); break; case RID_CATEGORY_FORMATS: - addElements(aFormats, (sizeof(aFormats) / 2) / sizeof(sal_uInt16)); + addElements(aFormats, SAL_N_ELEMENTS(aFormats)); + break; + case RID_CATEGORY_SYMBOLS: + // upper case Greek symbols get generated from the lowercase ones + for ( sal_uInt16 i = 0; i < SAL_N_ELEMENTS(aGreek); i++) + addElement(SM_RESSTR(aGreek[i][0]).toAsciiUpperCase(), SM_RESSTR(aGreek[i][0]).toAsciiUpperCase(), SM_RESSTR(aGreek[i][1])); + + addSeparator(); + // lower case Greek symbols + addElements(aGreek, SAL_N_ELEMENTS(aGreek)); + addSeparator(); + addElements(aSymbols, SAL_N_ELEMENTS(aSymbols)); break; case RID_CATEGORY_OTHERS: - addElements(aOthers, (sizeof(aOthers) / 2) / sizeof(sal_uInt16)); + addElements(aOthers, SAL_N_ELEMENTS(aOthers)); break; case RID_CATEGORY_EXAMPLES: { @@ -518,6 +557,7 @@ const sal_uInt16 SmElementsDockingWindow::aCategories[] = { RID_CATEGORY_ATTRIBUTES, RID_CATEGORY_BRACKETS, RID_CATEGORY_FORMATS, + RID_CATEGORY_SYMBOLS, RID_CATEGORY_OTHERS, RID_CATEGORY_EXAMPLES }; @@ -540,9 +580,9 @@ SmElementsDockingWindow::SmElementsDockingWindow(SfxBindings* pInputBindings, Sf maElementsControl.setStringSize(SmResId(STR_SIZE)); maElementsControl.setStringFont(SmResId(STR_FONT)); - maElementListBox.SetDropDownLineCount( 10 ); + maElementListBox.SetDropDownLineCount( 11 ); - for (sal_uInt16 i = 0; i < sizeof(aCategories) / sizeof(sal_uInt16) ; i++) + for (sal_uInt16 i = 0; i < SAL_N_ELEMENTS(aCategories) ; i++) { maElementListBox.InsertEntry(SM_RESSTR(aCategories[i])); } @@ -587,7 +627,7 @@ IMPL_LINK( SmElementsDockingWindow, SelectClickHdl, SmElement*, pElement) IMPL_LINK( SmElementsDockingWindow, ElementSelectedHandle, ListBox*, pList) { - for (sal_uInt16 i = 0; i < sizeof(aCategories) / sizeof(sal_uInt16) ; i++) + for (sal_uInt16 i = 0; i < SAL_N_ELEMENTS(aCategories) ; i++) { sal_uInt16 aCurrentCategory = aCategories[i]; OUString aCurrentCategoryString = SM_RESSTR(aCurrentCategory); diff --git a/starmath/source/commands.src b/starmath/source/commands.src index 758dc7cb687c..848464dca7dc 100644 --- a/starmath/source/commands.src +++ b/starmath/source/commands.src @@ -481,6 +481,92 @@ String RID_XNOTPRECEDESY_HELP { Text = "Not precedes" ; }; String RID_XNOTSUCCEEDSY { Text = "<?> nsucc <?> " ; }; String RID_XNOTSUCCEEDSY_HELP { Text = "Not succeeds" ; }; +String RID_GRC_ALPHA { Text = "%alpha" ; }; +String RID_GRC_ALPHA_HELP { Text = "Alpha" ; }; +String RID_GRC_BETA { Text = "%beta" ; }; +String RID_GRC_BETA_HELP { Text = "Beta" ; }; +String RID_GRC_CHI { Text = "%chi" ; }; +String RID_GRC_CHI_HELP { Text = "Chi" ; }; +String RID_GRC_DELTA { Text = "%delta" ; }; +String RID_GRC_DELTA_HELP { Text = "Delta" ; }; +String RID_GRC_EPSILON { Text = "%epsilon" ; }; +String RID_GRC_EPSILON_HELP { Text = "Epsilon" ; }; +String RID_GRC_ETA { Text = "%eta" ; }; +String RID_GRC_ETA_HELP { Text = "Eta" ; }; +String RID_GRC_GAMMA { Text = "%gamma" ; }; +String RID_GRC_GAMMA_HELP { Text = "Gamma" ; }; +String RID_GRC_IOTA { Text = "%iota" ; }; +String RID_GRC_IOTA_HELP { Text = "Iota" ; }; +String RID_GRC_KAPPA { Text = "%kappa" ; }; +String RID_GRC_KAPPA_HELP { Text = "Kappa" ; }; +String RID_GRC_LAMBDA { Text = "%lambda" ; }; +String RID_GRC_LAMBDA_HELP { Text = "Lambda" ; }; +String RID_GRC_MU { Text = "%mu" ; }; +String RID_GRC_MU_HELP { Text = "Mu" ; }; +String RID_GRC_NU { Text = "%nu" ; }; +String RID_GRC_NU_HELP { Text = "Nu" ; }; +String RID_GRC_OMEGA { Text = "%omega" ; }; +String RID_GRC_OMEGA_HELP { Text = "Omega" ; }; +String RID_GRC_OMICRON { Text = "%omicron" ; }; +String RID_GRC_OMICRON_HELP { Text = "Omicron" ; }; +String RID_GRC_PHI { Text = "%phi" ; }; +String RID_GRC_PHI_HELP { Text = "Phi" ; }; +String RID_GRC_PI { Text = "%pi" ; }; +String RID_GRC_PI_HELP { Text = "Pi" ; }; +String RID_GRC_PSI { Text = "%psi" ; }; +String RID_GRC_PSI_HELP { Text = "Psi" ; }; +String RID_GRC_RHO { Text = "%rho" ; }; +String RID_GRC_RHO_HELP { Text = "Rho" ; }; +String RID_GRC_SIGMA { Text = "%sigma" ; }; +String RID_GRC_SIGMA_HELP { Text = "Sigma" ; }; +String RID_GRC_TAU { Text = "%tau" ; }; +String RID_GRC_TAU_HELP { Text = "Tau" ; }; +String RID_GRC_THETA { Text = "%theta" ; }; +String RID_GRC_THETA_HELP { Text = "Theta" ; }; +String RID_GRC_UPSILON { Text = "%upsilon" ; }; +String RID_GRC_UPSILON_HELP { Text = "Upsilon" ; }; +String RID_GRC_XI { Text = "%xi" ; }; +String RID_GRC_XI_HELP { Text = "Xi" ; }; +String RID_GRC_ZETA { Text = "%zeta" ; }; +String RID_GRC_ZETA_HELP { Text = "Zeta" ; }; + +String RID_SYM_VAREPSILON { Text = "%varepsilon" ; }; +String RID_SYM_VAREPSILON_HELP { Text = "Varepsilon" ; }; +String RID_SYM_VARTHETA { Text = "%vartheta" ; }; +String RID_SYM_VARTHETA_HELP { Text = "Vartheta" ; }; +String RID_SYM_VARPI { Text = "%varpi" ; }; +String RID_SYM_VARPI_HELP { Text = "Varpi" ; }; +String RID_SYM_VARRHO { Text = "%varrho" ; }; +String RID_SYM_VARRHO_HELP { Text = "Varrho" ; }; +String RID_SYM_VARSIGMA { Text = "%varsigma" ; }; +String RID_SYM_VARSIGMA_HELP { Text = "Varsigma" ; }; +String RID_SYM_VARPHI { Text = "%varphi" ; }; +String RID_SYM_VARPHI_HELP { Text = "Varphi" ; }; +String RID_SYM_ELEMENT { Text = "%element" ; }; +String RID_SYM_ELEMENT_HELP { Text = "Element" ; }; +String RID_SYM_NOELEMENT { Text = "%noelement" ; }; +String RID_SYM_NOELEMENT_HELP { Text = "No element" ; }; +String RID_SYM_STRICTLYLESSTHAN { Text = "%strictlylessthan" ; }; +String RID_SYM_STRICTLYLESSTHAN_HELP { Text = "Strictly less than" ; }; +String RID_SYM_STRICTLYGREATERTHAN { Text = "%strictlygreaterthan" ; }; +String RID_SYM_STRICTLYGREATERTHAN_HELP { Text = "Strictly greater than" ; }; +String RID_SYM_NOTEQUAL { Text = "%notequal" ; }; +String RID_SYM_NOTEQUAL_HELP { Text = "Not equal" ; }; +String RID_SYM_IDENTICAL { Text = "%identical" ; }; +String RID_SYM_IDENTICAL_HELP { Text = "Identical" ; }; +String RID_SYM_TENDTO { Text = "%tendto" ; }; +String RID_SYM_TENDTO_HELP { Text = "Tend to" ; }; +String RID_SYM_INFINITE { Text = "%infinite" ; }; +String RID_SYM_INFINITE_HELP { Text = "Infinite" ; }; +String RID_SYM_ANGLE { Text = "%angle" ; }; +String RID_SYM_ANGLE_HELP { Text = "Angle" ; }; +String RID_SYM_PERTHOUSAND { Text = "%perthousand" ; }; +String RID_SYM_PERTHOUSAND_HELP { Text = "Per thousand" ; }; +String RID_SYM_AND { Text = "%and" ; }; +String RID_SYM_AND_HELP { Text = "And" ; }; +String RID_SYM_OR { Text = "%or" ; }; +String RID_SYM_OR_HELP { Text = "Or" ; }; + String RID_CATEGORY_UNARY_BINARY_OPERATORS { Text [ en-US ] = "Unary/Binary Operators" ; @@ -513,6 +599,10 @@ String RID_CATEGORY_FORMATS { Text [ en-US ] = "Formats" ; }; +String RID_CATEGORY_SYMBOLS +{ + Text [ en-US ] = "Symbols" ; +}; String RID_CATEGORY_OTHERS { Text [ en-US ] = "Others" ; |